:root {
  --bsm-black: #050507;
  --bsm-surface: #0b0b10;
  --bsm-surface-2: #111119;
  --bsm-white: #f7f5ff;
  --bsm-muted: #aaa6b5;
  --bsm-purple: #8c5eff;
  --bsm-violet: #5c1eff;
  --bsm-pink: #ff3f91;
  --bsm-cyan: #00d5e8;
  --bsm-line: rgba(255,255,255,.12);
  --bsm-radius: 28px;
  --bsm-shadow: 0 30px 80px rgba(0,0,0,.42);

  /* Material 3: escala espacial baseada em 4dp/8dp. */
  --m3-space-1: 4px;
  --m3-space-2: 8px;
  --m3-space-3: 12px;
  --m3-space-4: 16px;
  --m3-space-5: 20px;
  --m3-space-6: 24px;
  --m3-space-8: 32px;
  --m3-space-10: 40px;
  --m3-space-12: 48px;
  --m3-space-16: 64px;
  --m3-space-20: 80px;
  --m3-space-24: 96px;
  --m3-space-30: 120px;
  --m3-space-40: 160px;
  --m3-section-y: clamp(var(--m3-space-24),10vw,var(--m3-space-40));
  --m3-section-y-compact: clamp(var(--m3-space-16),7vw,var(--m3-space-24));
  --m3-layout-gap: clamp(var(--m3-space-8),6vw,var(--m3-space-20));
  --m3-control-height: 56px;
  --m3-control-padding-x: 24px;
  --m3-shape-full: 999px;
  --m3-shape-extra-large: 28px;
  --m3-elevation-2: 0 2px 6px rgba(0,0,0,.28),0 6px 18px rgba(0,0,0,.18);
  --m3-elevation-3: 0 4px 10px rgba(0,0,0,.3),0 12px 32px rgba(0,0,0,.24);
}

[hidden] { display: none !important; }
body { overflow-x: hidden; color: var(--bsm-white); background: var(--bsm-black); }
body::selection { color: #fff; background: var(--bsm-violet); }
a,a:hover,a:focus,a:active { text-decoration: none !important; }
.site-main h1,.site-main h2,.site-main h3,.site-main h4,.site-main h5,.site-main h6,
.footer-cta h2,.page-footer h4 { letter-spacing: 0 !important; }
.reveal { opacity: 0; transform: translateY(38px); transition: opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1); }
.reveal.is-visible { opacity: 1; transform: none; }
.site-main { overflow: hidden; }
.site-main > section[id] { scroll-margin-top: 145px; }
.container { width: min(calc(100% - 2 * clamp(1.25rem,4vw,4.5rem)), 1480px); margin-inline: auto; }
.section-kicker { display: inline-flex; align-items: center; gap: var(--m3-space-3); margin-bottom: var(--m3-space-4); color: var(--bsm-cyan); font: 600 .72rem/1 var(--font-sans); letter-spacing: .18em; text-transform: uppercase; }
.section-kicker::before { content: ''; width: 1.5rem; height: 1px; background: currentColor; }
.corporate-heading .section-kicker,
.corporate-cta .section-kicker,
.home-corporativo__content > .section-kicker,
.footer-cta__inner > .section-kicker {
  flex-direction: column;
  justify-content: center;
}
.corporate-heading .section-kicker::before,
.corporate-cta .section-kicker::before,
.home-corporativo__content > .section-kicker::before,
.footer-cta__inner > .section-kicker::before {
  order: 2;
}
em { color: var(--bsm-purple); font-style: normal; }
.btn,.nav-cta { display: inline-flex; align-items: center; justify-content: center; gap: var(--m3-space-3); min-height: var(--m3-control-height); padding: 0 var(--m3-control-padding-x); border: 1px solid rgba(255,255,255,.18); border-radius: var(--m3-shape-full); color: #fff; background: linear-gradient(110deg,#a77bff 0%,#8A5CF9 42%,#6d35ef 100%); box-shadow: 0 0 20px rgba(138,92,249,.36),var(--m3-elevation-2),inset 0 1px rgba(255,255,255,.25); font: 700 15px/1 var(--font-sans); letter-spacing: 0; text-transform: uppercase; text-decoration: none; transition: transform 200ms ease,box-shadow 200ms ease,filter 200ms ease; }
.btn:hover { color: #fff; transform: translateY(-3px); }
.btn:focus-visible,.nav-cta:focus-visible,.nav-toggle:focus-visible,.hero-arrow:focus-visible,.hero-dots button:focus-visible { outline: 3px solid rgba(191,249,255,.88); outline-offset: 3px; }
.btn:active,.nav-cta:active { transform: translateY(0) scale(.98); box-shadow: var(--m3-elevation-2); }
.btn--primary { background: linear-gradient(110deg,#a77bff 0%,#8A5CF9 42%,#6d35ef 100%); }
.btn--primary:hover,.nav-cta:hover { color: #fff; filter: brightness(1.08); box-shadow: 0 0 30px rgba(138,92,249,.62),0 18px 42px rgba(92,30,255,.38),inset 0 1px rgba(255,255,255,.3); }
.text-link { display: inline-flex; gap: .75rem; align-items: center; padding-bottom: .35rem; border-bottom: 1px solid var(--bsm-line); color: #fff; font-size: .82rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.text-link span { color: var(--bsm-cyan); transition: transform .25s ease; }
.text-link:hover span { transform: translate(3px,-3px); }

/* Navegação */
.site-header { position: fixed; inset: 0 0 auto; z-index: 1000; opacity: 1; transition: background .35s ease,backdrop-filter .35s ease,border-color .35s ease; border-bottom: 1px solid transparent; }
.site-header.nav-scroll { width: 100% !important; height: auto !important; padding: 0 !important; line-height: normal !important; background: transparent; border-color: var(--bsm-line); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.main-navigation { width: 100%; height: auto !important; min-height: 112px; padding: 18px 0 !important; line-height: normal !important; background: transparent !important; }
.nav-inner { display: flex; align-items: center; gap: clamp(1rem,2vw,2.5rem); min-height: 76px; }
.main-navigation .brand-logo { position: static !important; flex: 0 0 auto; height: auto !important; margin: 0 !important; line-height: 0 !important; transform: none !important; }
.main-navigation .brand-logo img { width: 150px; filter: drop-shadow(0 8px 24px rgba(0,0,0,.25)); }
.nav-links { margin-left: auto; }
.nav-links .menu,.nav-drawer .menu { margin: 0; padding: 0; list-style: none; }
.nav-links .menu { display: flex; align-items: center; gap: .2rem; }
.nav-links li,.nav-drawer li { height: auto; margin: 0; padding: 0; line-height: normal; list-style: none !important; }
.nav-links a { position: relative; padding: .8rem 1rem; color: rgba(255,255,255,.82); font-size: 15px; font-weight: 600; letter-spacing: 0; text-transform: uppercase; text-decoration: none; }
.nav-links a::after { display: none; }
.nav-links a:hover,.nav-links .current-menu-item > a { color: #fff; background: transparent; }
.nav-links a:hover::after,.nav-links .current-menu-item > a::after { display: none; }
.nav-actions { flex: 0 0 auto; }
.site-header.nav-scroll .main-navigation { min-height: 112px; padding: 18px 0 !important; }
.site-header.nav-scroll .nav-inner { min-height: 76px; }
.site-header.nav-scroll .brand-logo img { width: 150px; }
.nav-toggle { display: none; }

/* Hero */
.section.home-slider { position: relative; height: 100svh; min-height: 720px; margin: 0; background: #030305; }
.home-slider .slider,.home-slider .slides { height: 100% !important; }
.home-slider .slides { position: relative; margin: 0; padding: 0; overflow: hidden; list-style: none; }
.home-slider .slides > li { position: absolute; inset: 0; margin: 0; padding: 0; overflow: hidden; list-style: none; opacity: 1; }
.home-slider__slide::before { content: ''; position: absolute; inset: 0; z-index: 1; opacity: .8; background: linear-gradient(90deg,rgba(4,4,8,.656) 0%,rgba(4,4,8,.272) 56%,rgba(4,4,8,.144)),linear-gradient(0deg,rgba(5,5,7,.8) 0%,transparent 48%); }
.home-slider__slide::after { content: ''; position: absolute; inset: 0; z-index: 1; opacity: .176; background-image: repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),rgba(255,255,255,.12) 25%); pointer-events: none; }
.home-slider__video { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; pointer-events: none; }
.section.home-slider .slider .slides li .home-slider__content { position: absolute; top: 0 !important; right: 0 !important; bottom: 0 !important; left: 0 !important; z-index: 3; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; width: 100% !important; max-width: none; margin: 0; padding: 8rem max(var(--gap-x),calc((100vw - 1480px)/2 + var(--gap-x))) 3rem; background: none; }
.section.home-slider .slider .slides li .home-slider__content .HTitulo { width: min(900px,78vw); margin: 0; padding: 0; color: #fff; font-size: clamp(3.648rem,6.912vw,7.488rem); font-weight: 650; line-height: .9; letter-spacing: 0; text-wrap: balance; }
.section.home-slider .slider .slides li .home-slider__content .HDescricao { display: flex; align-items: center; gap: 1rem; width: auto; max-width: min(720px,76vw); margin: 0 0 1.6rem; padding: .8rem 1.2rem .8rem 1rem; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: #fff; background: transparent; font: 600 clamp(1rem,1.35vw,1.35rem)/1.35 var(--font-sans); }
.section.home-slider .slider .slides li .home-slider__content .HDescricao::before { content: ''; flex: 0 0 auto; width: 8px; height: 8px; border-radius: 50%; background: var(--bsm-cyan); box-shadow: 0 0 14px rgba(0,213,232,.9); }
.HDescricao strong,.HDescricao b { color: #fff; font-weight: 700; }
.section.home-slider .home-slider__content .home-slider__subtitle { max-width: 680px; margin: 1.25rem 0 0; color: #fff; font-size: clamp(1.2rem,2.2vw,2rem); font-weight: 400; line-height: 1.35; }
.section.home-slider .slider .slides li .home-slider__content .btn { margin: 2rem 0 0; }
.hero-controls { position: absolute; right: max(var(--gap-x),calc((100vw - 1480px)/2 + var(--gap-x))); bottom: 3rem; z-index: 5; display: flex; align-items: center; gap: .85rem; }
.hero-arrow { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--bsm-line); border-radius: 50%; color: #fff; background: rgba(5,5,7,.3); cursor: pointer; transition: .25s ease; }
.hero-arrow:hover { border-color: var(--bsm-cyan); color: var(--bsm-cyan); }
.hero-dots { display: flex; gap: .5rem; }
.hero-dots button { width: 24px; height: 2px; padding: 0; border: 0; background: rgba(255,255,255,.28); cursor: pointer; transition: .35s ease; }
.hero-dots button.is-active { width: 54px; background: var(--bsm-cyan); }
.hero-scroll { position: absolute; bottom: 3.7rem; left: max(var(--gap-x),calc((100vw - 1480px)/2 + var(--gap-x))); z-index: 5; display: flex; align-items: center; gap: .75rem; color: rgba(255,255,255,.5); font-size: .64rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.hero-scroll span { position: relative; width: 1px; height: 38px; overflow: hidden; background: rgba(255,255,255,.22); }
.hero-scroll span::after { content: ''; position: absolute; inset: -100% 0 auto; height: 100%; background: var(--bsm-cyan); animation: bsmScroll 2s ease-in-out infinite; }

/* Portfólio */
.section-heading { position: relative; z-index: 2; }
.section-heading--split { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(280px,.6fr); gap: var(--m3-layout-gap); align-items: end; }
.section-heading h2,.home-sobre h2,.marcas h2,.home-corporativo h2,.footer-cta h2 { margin: 0; color: #fff; font-size: clamp(2.56rem,4.64vw,5.28rem); line-height: .94; letter-spacing: 0; text-wrap: balance; }
.section-heading--split > p { max-width: 480px; margin: 0 0 var(--m3-space-2); color: var(--bsm-muted); font-size: 1.05rem; line-height: 1.75; }
.section.home-produtos { position: relative; padding: var(--m3-section-y) 0; background: radial-gradient(circle at 15% 10%,rgba(110,45,255,.28),transparent 36%),linear-gradient(145deg,#030306 0%,#0d0820 58%,#050507 100%); }
.section.home-produtos::before { display: none; content: none; }
.carousel-slider { margin-top: var(--m3-section-y-compact); }
.swiper-container { overflow: visible; padding: 0 max(var(--gap-x),calc((100vw - 1480px)/2 + var(--gap-x))); }
.carousel-slider .swiper-wrapper { padding: 0; }
.carousel-slider .swiper-slide.home-product { position: relative; min-height: min(64vh,690px); border: 1px solid rgba(255,255,255,.1); border-radius: var(--m3-shape-extra-large); overflow: hidden; background-repeat: no-repeat; background-position: center; background-size: cover; box-shadow: var(--m3-elevation-3); transition: transform 300ms cubic-bezier(.2,.8,.2,1),border-color 200ms ease,box-shadow 200ms ease; }
.carousel-slider .swiper-slide.home-product:hover { z-index: 3; border-color: rgba(255,255,255,.3); transform: translateY(-12px); }
.home-product > .home-product__photo { position: absolute; inset: 0; display: block; color: #fff; }
.carousel-slider .swiper-slide a .gradiente { position: absolute; inset: 0; display: block; padding: 0; border-radius: 26px; background: linear-gradient(0deg,rgba(4,4,8,.95),rgba(4,4,8,.03) 70%); }
.carousel-slider .swiper-button-next,
.carousel-slider .swiper-button-prev {
  box-sizing: border-box;
  display: inline-grid;
  place-items: center;
  top: 50%;
  width: 52px;
  height: 52px;
  min-width: 52px;
  min-height: 52px;
  margin-top: -26px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: rgba(20,14,35,.72);
  box-shadow: 0 12px 30px rgba(0,0,0,.3),0 0 22px rgba(138,92,249,.1);
  line-height: 1;
  appearance: none;
  -webkit-appearance: none;
  backdrop-filter: blur(10px);
}
.carousel-slider .swiper-button-next::after,
.carousel-slider .swiper-container-rtl .swiper-button-prev::after,
.carousel-slider .swiper-button-prev::after,
.carousel-slider .swiper-container-rtl .swiper-button-next::after {
  display: block;
  width: auto;
  height: auto;
  font-family: Arial,sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}
.carousel-slider .swiper-button-next::after,
.carousel-slider .swiper-container-rtl .swiper-button-prev::after { content: '\2192'; }
.carousel-slider .swiper-button-prev::after,
.carousel-slider .swiper-container-rtl .swiper-button-next::after { content: '\2190'; }
.carousel-slider .swiper-button-next { right: clamp(12px,2vw,28px); left: auto; }
.carousel-slider .swiper-button-prev { right: auto; left: clamp(12px,2vw,28px); }
.carousel-slider .swiper-container-rtl .swiper-button-next { right: auto; left: clamp(12px,2vw,28px); }
.carousel-slider .swiper-container-rtl .swiper-button-prev { right: clamp(12px,2vw,28px); left: auto; }
.carousel-slider .swiper-button-disabled { opacity: .3; box-shadow: none; }

/* Banda */
.section.home-sobre { position: relative; min-height: 82svh; padding: var(--m3-section-y) 0; overflow: hidden; background-color: #07070b; background-image: linear-gradient(90deg,rgba(5,5,7,.97) 0%,rgba(5,5,7,.86) 42%,rgba(5,5,7,.26) 72%,rgba(5,5,7,.12) 100%),linear-gradient(0deg,rgba(5,5,7,.7),transparent 38%),url('../../image/00---HOME----CHAMADA-CORPORATIVO.jpg'); background-position: center,center,center; background-size: cover; background-repeat: no-repeat; background-attachment: scroll,scroll,fixed; }
.section.home-sobre::after { content: ''; position: absolute; inset: 0; z-index: 0; background: radial-gradient(circle at 18% 52%,rgba(92,30,255,.16),transparent 34%); pointer-events: none; }
.home-sobre__grid { position: relative; z-index: 1; display: flex; align-items: center; min-height: calc(82svh - 2 * var(--m3-section-y)); }
.home-sobre__content { width: max(50vw,620px); max-width: 100%; }
.section.home-sobre .home-sobre__content h2 { margin: 0; color: #fff; }
.section.home-sobre .home-sobre__content p { max-width: 530px; margin: var(--m3-space-6) 0; color: var(--bsm-muted); font-size: 1.08rem; line-height: 1.75; }
.section.home-sobre .home-sobre__content .btn { background: linear-gradient(110deg,#a77bff 0%,#8A5CF9 42%,#6d35ef 100%); }
.home-sobre__facts { display: flex; gap: 3rem; margin: 2.5rem 0; padding: 2rem 0; border-block: 1px solid var(--bsm-line); }
.home-sobre__facts div { display: grid; gap: .35rem; }
.home-sobre__facts strong { color: #fff; font: 650 clamp(2rem,3vw,3.2rem)/1 var(--font-display); letter-spacing: -.04em; }
.home-sobre__facts span { color: var(--bsm-muted); font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; }
.home-sobre__visual { position: relative; min-height: 680px; margin: 0; }
.home-sobre__visual::before { content: ''; position: absolute; inset: -2rem 2rem 2rem -2rem; border: 1px solid rgba(140,94,255,.34); border-radius: var(--bsm-radius); }
.home-sobre__visual img { position: absolute; inset: 0; width: 100%; height: 100%; border-radius: var(--bsm-radius); object-fit: cover; box-shadow: var(--bsm-shadow); }
.home-sobre__visual figcaption { position: absolute; right: -1rem; bottom: -1rem; padding: 1.4rem 1.7rem; border: 1px solid var(--bsm-line); border-radius: 18px; color: #fff; background: rgba(11,11,16,.86); font: 550 1.15rem/1.25 var(--font-display); backdrop-filter: blur(16px); }
.home-sobre__visual figcaption span { display: block; margin-bottom: .45rem; color: var(--bsm-cyan); font: 700 .62rem/1 var(--font-sans); letter-spacing: .15em; }

/* Marcas */
.section.marcas { position: relative; z-index: 4; width: 100%; margin: 0; padding: var(--m3-section-y-compact) 0; border-block: 1px solid var(--bsm-line); border-radius: 0; background: radial-gradient(circle at 15% 50%,rgba(121,52,255,.25),transparent 34%),linear-gradient(115deg,#05050a 0%,#100824 48%,#06070d 100%); box-shadow: none; }
.marcas__inner { display: block; width: min(calc(100% - 2 * clamp(1.25rem,4vw,4.5rem)),1480px); max-width: 1480px; }
.marcas__inner > .section-kicker { margin-bottom: var(--m3-space-3); }
.section.marcas .marcas__title { max-width: 760px; margin: 0; padding: 0; color: #fff; font: 600 clamp(1.5rem,2.4vw,2rem)/1.2 var(--font-display); text-align: left; letter-spacing: 0; }
.marcas__slider { position: relative; left: 50%; width: 100vw; min-width: 0; margin-top: var(--m3-space-10); margin-left: -50vw; overflow: hidden; filter: none; opacity: 1; }
.marcas__slider::before,.marcas__slider::after { display: none; }
.marcas__track { display: flex; width: max-content; min-width: 100vw; will-change: transform; animation: bsmClientMarquee 136s linear infinite; }
.marcas__group { display: flex; flex: 0 0 auto; align-items: center; gap: clamp(.75rem,1.5vw,1.5rem); padding-right: clamp(.75rem,1.5vw,1.5rem); }
.marcas__item { display: grid; flex: 0 0 clamp(260px,28vw,400px); place-items: center; width: clamp(260px,28vw,400px); height: clamp(195px,21vw,300px); margin: 0; border-radius: 20px; background: rgba(0,0,0,.05); }
.marcas__item img { display: block; width: 100% !important; height: 100% !important; max-width: 400px !important; max-height: 300px !important; object-fit: contain; filter: none !important; opacity: 1; transition: transform 350ms cubic-bezier(.2,.8,.2,1); }
.marcas__item:hover img { transform: scale(1.06); }
.marcas__slider:hover .marcas__track,.marcas__slider:focus-within .marcas__track { animation-play-state: paused; }
.marcas__description { max-width: 760px; margin: var(--m3-space-4) 0 0; color: var(--bsm-muted); font-size: 1rem; line-height: 1.7; }

/* Página Corporativos */
.corporate-hero { position: relative; min-height: 88svh; display: flex; align-items: center; padding: calc(112px + var(--m3-space-16)) 0 var(--m3-space-20); overflow: hidden; background: linear-gradient(90deg,rgba(5,5,7,.96),rgba(5,5,7,.65) 52%,rgba(5,5,7,.18)),linear-gradient(0deg,#050507,transparent 48%),var(--corporate-hero-image) center/cover no-repeat; }
.corporate-hero::after { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 18% 54%,rgba(92,30,255,.2),transparent 33%); pointer-events: none; }
.corporate-hero__content { position: relative; z-index: 1; }
.corporate-hero h1 { max-width: 950px; margin: 0; color: #fff; font-size: clamp(3.2rem,6.2vw,6.5rem); line-height: .95; letter-spacing: 0; }
.corporate-hero p { max-width: 680px; margin: var(--m3-space-6) 0 var(--m3-space-8); color: rgba(255,255,255,.78); font-size: clamp(1rem,1.5vw,1.25rem); line-height: 1.7; }
.corporate-types { position: relative; padding: var(--m3-section-y) 0; background: radial-gradient(circle at 15% 10%,rgba(110,45,255,.28),transparent 36%),linear-gradient(145deg,#030306 0%,#0d0820 58%,#050507 100%); }
.corporate-heading { max-width: 780px; margin: 0 auto var(--m3-space-16); text-align: center; }
.corporate-heading .section-kicker { justify-content: center; }
.corporate-heading h2 { margin: 0; color: #fff; font-size: clamp(2.4rem,4.4vw,4.6rem); line-height: 1; letter-spacing: 0; }
.corporate-heading > p { margin: var(--m3-space-4) auto 0; color: var(--bsm-muted); }
.formats-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--m3-space-6); }
.format-card { display: grid; place-items: center; min-height: 275px; padding: var(--m3-space-8); border: 0; border-radius: var(--m3-shape-extra-large); background: linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018)); box-shadow: 0 24px 64px rgba(0,0,0,.3); text-align: center; transition: transform 420ms cubic-bezier(.2,.8,.2,1),background 420ms ease,box-shadow 420ms ease; }
.corporate-type-card:hover { border-color: var(--bsm-purple); transform: translateY(-6px); box-shadow: 0 0 30px rgba(138,92,249,.16),var(--m3-elevation-2); }
.format-card__icon { display: grid; place-items: center; width: 120px; height: 120px; margin-bottom: var(--m3-space-5); color: #fff; filter: drop-shadow(0 0 12px rgba(255,255,255,.3)); transition: color 420ms ease,filter 420ms ease; }
.format-card__icon svg { width: 120px; height: 120px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.format-card h3 { margin: 0; color: #fff; font: 600 clamp(1.05rem,1.45vw,1.3rem)/1.25 var(--font-display); letter-spacing: 0; }
.formats-grid .format-card:hover { transform: translateY(-6px); background: linear-gradient(145deg,rgba(138,92,249,.14),rgba(255,255,255,.025)); box-shadow: inset 0 0 0 2px #9c63ff,0 28px 72px rgba(0,0,0,.4),0 0 38px rgba(138,92,249,.3); }
.formats-grid .format-card:hover .format-card__icon { color: #d7c4ff; filter: drop-shadow(0 0 18px rgba(168,105,255,.6)); }

/* Página Eventos */
.events-hero h1 { max-width: 1100px; font-size: clamp(2.7rem,5.2vw,5.5rem); line-height: 1.02; text-wrap: balance; }
.events-types .corporate-heading { max-width: 960px; }
.events-types .corporate-heading > p { max-width: 900px; line-height: 1.75; }
.events-gallery { position: relative; padding: var(--m3-section-y) 0; background: radial-gradient(circle at 90% 12%,rgba(0,213,232,.16),transparent 30%),linear-gradient(145deg,#04050a 0%,#07131c 48%,#0d071c 100%); }
.events-gallery__heading { max-width: 1100px; margin: 0 auto var(--m3-space-16); text-align: center; }
.events-gallery__heading h2 { margin: 0; color: #fff; font-size: clamp(2.4rem,4.4vw,4.7rem); line-height: 1.08; letter-spacing: 0; text-wrap: balance; }
.events-gallery__grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: var(--m3-space-5); }
.events-gallery__item { grid-column: span 4; height: clamp(280px,30vw,440px); margin: 0; overflow: hidden; border-radius: 26px; background: #08080d; box-shadow: 0 24px 64px rgba(0,0,0,.3); }
.events-gallery__item:nth-child(5n+1) { grid-column: span 7; }
.events-gallery__item:nth-child(5n+2) { grid-column: span 5; }
.events-gallery__item a { display: block; width: 100%; height: 100%; }
.events-gallery__item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 650ms cubic-bezier(.2,.8,.2,1),filter 650ms ease; }
.events-gallery__item:hover img { filter: saturate(1.12) brightness(1.05); transform: scale(1.045); }
.events-gallery__acf { color: #fff; }
.events-gallery__acf .gallery { --events-gallery-columns: 3; display: grid !important; grid-template-columns: repeat(var(--events-gallery-columns),minmax(0,1fr)); gap: var(--m3-space-5); }
.events-gallery__acf .gallery-columns-1 { --events-gallery-columns: 1; }
.events-gallery__acf .gallery-columns-2 { --events-gallery-columns: 2; }
.events-gallery__acf .gallery-columns-3 { --events-gallery-columns: 3; }
.events-gallery__acf .gallery-columns-4 { --events-gallery-columns: 4; }
.events-gallery__acf .gallery-columns-5 { --events-gallery-columns: 5; }
.events-gallery__acf .gallery-columns-6 { --events-gallery-columns: 6; }
.events-gallery__acf .gallery-columns-7 { --events-gallery-columns: 7; }
.events-gallery__acf .gallery-columns-8 { --events-gallery-columns: 8; }
.events-gallery__acf .gallery-columns-9 { --events-gallery-columns: 9; }
.events-gallery__acf .gallery-item { width: auto !important; margin: 0 !important; }
.events-gallery__acf img { width: 100%; height: clamp(260px,28vw,420px); border: 0 !important; border-radius: 26px; object-fit: cover; }

/* Página Sobre */
.about-hero h1 { max-width: 1080px; }
.about-numbers { position: relative; padding: var(--m3-section-y) 0; background: radial-gradient(circle at 12% 12%,rgba(110,45,255,.27),transparent 34%),linear-gradient(145deg,#030306 0%,#0d0820 58%,#050507 100%); }
.about-numbers__heading { max-width: 900px; margin-bottom: var(--m3-space-16); }
.about-numbers__heading h2 { margin: 0; color: #fff; font-size: clamp(2.4rem,4.4vw,4.7rem); line-height: 1; letter-spacing: 0; text-wrap: balance; }
.about-numbers__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: var(--m3-space-5); }
.about-number-card { display: flex; flex-direction: column; justify-content: flex-end; min-height: 275px; padding: clamp(1.75rem,3vw,2.5rem); border-radius: var(--m3-shape-extra-large); background: linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018)); box-shadow: 0 24px 64px rgba(0,0,0,.3); transition: transform 420ms cubic-bezier(.2,.8,.2,1),background 420ms ease,box-shadow 420ms ease; }
.about-number-card:hover { transform: translateY(-6px); background: linear-gradient(145deg,rgba(138,92,249,.15),rgba(255,255,255,.025)); box-shadow: inset 0 0 0 2px #9c63ff,0 28px 72px rgba(0,0,0,.4),0 0 38px rgba(138,92,249,.28); }
.about-number-card strong { color: #fff; font: 650 clamp(2.2rem,3.5vw,4rem)/.95 var(--font-display); letter-spacing: 0; }
.about-number-card span { max-width: 220px; margin-top: var(--m3-space-4); color: rgba(255,255,255,.7); font-size: .9rem; line-height: 1.5; }
.about-history { position: relative; min-height: 100svh; padding: var(--m3-section-y) 0; background-image: linear-gradient(90deg,rgba(4,4,8,.98) 0%,rgba(4,4,8,.9) 44%,rgba(4,4,8,.38) 72%,rgba(4,4,8,.14) 100%),linear-gradient(0deg,rgba(4,4,8,.76),transparent 44%),var(--about-history-image); background-position: center,center,center; background-size: cover; background-repeat: no-repeat; background-attachment: scroll,scroll,fixed; }
.about-history::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 18% 50%,rgba(104,43,255,.2),transparent 36%); }
.about-history__inner { position: relative; z-index: 1; display: flex; align-items: center; min-height: calc(100svh - 2 * var(--m3-section-y)); }
.about-history__content { width: min(58%,780px); }
.about-history__content h2 { margin: 0; color: #fff; font-size: clamp(2.8rem,5vw,5.3rem); line-height: .96; letter-spacing: 0; }
.about-history__content p { max-width: 720px; margin: var(--m3-space-5) 0 0; color: rgba(255,255,255,.76); font-size: clamp(.98rem,1.15vw,1.08rem); line-height: 1.78; }
.about-television { position: relative; padding: var(--m3-section-y) 0; background: radial-gradient(circle at 88% 12%,rgba(0,215,255,.24),transparent 34%),radial-gradient(circle at 10% 88%,rgba(142,65,255,.3),transparent 36%),linear-gradient(135deg,#03101d 0%,#112d5d 48%,#442084 100%); }
.about-television__heading { max-width: 920px; }
.about-television__heading h2,.about-artists__heading h2,.about-trajectory__heading h2 { margin: 0; color: #fff; font-size: clamp(2.5rem,4.7vw,5rem); line-height: .98; letter-spacing: 0; text-wrap: balance; }
.about-television__heading > p,.about-artists__heading > p { max-width: 820px; margin: var(--m3-space-6) 0 0; color: rgba(255,255,255,.78); font-size: clamp(1rem,1.25vw,1.1rem); line-height: 1.75; }
.about-television__logos { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: var(--m3-space-4); margin: var(--m3-space-16) 0; }
.about-television__logo { display: grid; place-items: center; min-height: 170px; padding: var(--m3-space-5); border-radius: 26px; background: rgba(4,10,32,.32); box-shadow: 0 20px 54px rgba(5,9,44,.2); backdrop-filter: blur(10px); }
.about-television__logo img { width: 100%; height: 130px; object-fit: contain; filter: none; }
.about-television__logo strong { color: #fff; font: 650 clamp(1.4rem,2.2vw,2.25rem)/1 var(--font-display); text-align: center; text-shadow: 0 0 24px rgba(255,255,255,.24); }
.about-television__story { display: grid; grid-template-columns: .8fr 1.2fr; gap: var(--m3-layout-gap); align-items: center; margin-top: var(--m3-space-10); }
.about-television__copy p { margin: 0 0 var(--m3-space-6); color: rgba(255,255,255,.84); font-size: clamp(1rem,1.25vw,1.12rem); line-height: 1.78; }
.about-television__copy strong { color: #fff; }
.about-television__copy em { color: #d6c4ff; font-style: italic; }
.about-television__video { position: relative; aspect-ratio: 16/9; overflow: hidden; border-radius: 30px; background: rgba(3,7,24,.5); box-shadow: 0 30px 80px rgba(6,8,48,.36),0 0 42px rgba(92,52,214,.2); }
.about-television__video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.about-television__video-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--m3-space-4); width: 100%; height: 100%; color: rgba(255,255,255,.68); }
.about-television__video-placeholder span { display: grid; place-items: center; width: 76px; height: 76px; border-radius: 50%; color: #fff; background: linear-gradient(135deg,#8a5cf9,#5b28dc); box-shadow: 0 0 38px rgba(138,92,249,.48); font-size: 1.35rem; }
.about-television__video-placeholder strong { font-size: .78rem; text-transform: uppercase; }
.about-artists { padding: var(--m3-section-y) 0; background: radial-gradient(circle at 50% 5%,rgba(115,46,255,.2),transparent 34%),#050507; }
.about-artists__heading { max-width: 980px; margin: 0 auto var(--m3-space-16); text-align: center; }
.about-artists__heading .section-kicker { flex-direction: column; justify-content: center; }
.about-artists__heading .section-kicker::before { order: 2; }
.about-artists__heading > p { margin-inline: auto; }
.about-artists__gallery,.about-artists__acf .gallery { display: grid !important; grid-template-columns: repeat(12,minmax(0,1fr)); gap: var(--m3-space-5); }
.about-artists__gallery figure,.about-artists__acf .gallery-item { grid-column: span 4; width: auto !important; height: clamp(300px,31vw,460px); margin: 0 !important; overflow: hidden; border-radius: 26px; }
.about-artists__gallery figure:nth-child(5n+1),.about-artists__acf .gallery-item:nth-child(5n+1) { grid-column: span 7; }
.about-artists__gallery figure:nth-child(5n+2),.about-artists__acf .gallery-item:nth-child(5n+2) { grid-column: span 5; }
.about-artists__gallery img,.about-artists__acf img { width: 100%; height: 100%; border: 0 !important; object-fit: cover; transition: transform 650ms cubic-bezier(.2,.8,.2,1),filter 650ms ease; }
.about-artists__gallery figure:hover img,.about-artists__acf .gallery-item:hover img { filter: saturate(1.12) brightness(1.05); transform: scale(1.045); }
.about-trajectory { padding: var(--m3-section-y) 0; overflow: hidden; background: linear-gradient(145deg,#030306,#0d0820 58%,#050507); }
.about-trajectory__heading { margin-bottom: var(--m3-space-12); }
.about-trajectory__slider { position: relative; width: min(calc(100% - 2 * clamp(1.25rem,4vw,4.5rem)),1600px); min-height: min(78svh,820px); margin-inline: auto; overflow: hidden; border-radius: 34px; background: #08080d; box-shadow: 0 34px 90px rgba(0,0,0,.42); }
.about-trajectory__slide { position: absolute; inset: 0; }
.about-trajectory__slide img { width: 100%; height: 100%; object-fit: cover; }
.about-trajectory__slide::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(3,3,7,.15),rgba(3,3,7,.02) 55%),linear-gradient(0deg,rgba(3,3,7,.7),transparent 55%); }
.about-trajectory__panel { position: absolute; right: clamp(1.5rem,4vw,4rem); bottom: clamp(5.5rem,8vw,7rem); z-index: 2; width: min(520px,calc(100% - 3rem)); padding: clamp(1.75rem,3vw,3rem); border-radius: 26px; color: #fff; background: rgba(8,7,20,.76); box-shadow: 0 24px 72px rgba(0,0,0,.4),0 0 34px rgba(138,92,249,.14); backdrop-filter: blur(18px); }
.about-trajectory__panel > span { color: #ba8cff; font-size: .76rem; font-weight: 700; text-transform: uppercase; }
.about-trajectory__panel h3 { margin: var(--m3-space-3) 0; color: #fff; font: 600 clamp(1.7rem,2.7vw,2.8rem)/1.05 var(--font-display); letter-spacing: 0; }
.about-trajectory__panel p { margin: 0; color: rgba(255,255,255,.74); line-height: 1.7; }
.about-trajectory__controls { position: absolute; right: clamp(1.5rem,4vw,4rem); bottom: clamp(1.5rem,3vw,2.5rem); left: clamp(1.5rem,4vw,4rem); z-index: 3; display: flex; align-items: center; justify-content: space-between; }
.about-trajectory__controls > button { display: grid; place-items: center; width: 52px; height: 52px; padding: 0; border: 0; border-radius: 50%; color: #fff; background: rgba(20,14,35,.76); box-shadow: 0 12px 30px rgba(0,0,0,.3); cursor: pointer; }
.about-trajectory__dots { display: flex; gap: .65rem; }
.about-trajectory__dots button { width: 28px; height: 3px; padding: 0; border: 0; background: rgba(255,255,255,.3); cursor: pointer; transition: width .35s ease,background .35s ease; }
.about-trajectory__dots button.is-active { width: 54px; background: #a765ff; box-shadow: 0 0 12px rgba(167,101,255,.7); }

/* Blog, categorias e artigos */
.blog-hero h1 { max-width: 1100px; }
.blog-archive-hero { min-height: 72svh; }
.blog-single-hero { min-height: 82svh; align-items: flex-end; }
.blog-single-hero h1 { max-width: 1180px; font-size: clamp(3rem,5.4vw,5.8rem); }
.blog-single-hero__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--m3-space-3); }
.blog-listing { padding: var(--m3-section-y) 0; background: radial-gradient(circle at 12% 8%,rgba(110,45,255,.25),transparent 34%),linear-gradient(145deg,#030306 0%,#0d0820 58%,#050507 100%); }
.blog-listing__heading,.blog-related__heading { max-width: 900px; margin-bottom: var(--m3-space-16); }
.blog-listing__heading h2,.blog-related__heading h2 { margin: 0; color: #fff; font-size: clamp(2.5rem,4.6vw,4.8rem); line-height: 1; letter-spacing: 0; }
.blog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--m3-space-6); }
.blog-card > a { display: block; height: 100%; }
.blog-card figure { height: clamp(240px,22vw,330px); }
.blog-card__content { display: flex; flex-direction: column; min-height: 300px; }
.blog-card__meta { display: flex; justify-content: space-between; gap: var(--m3-space-4); margin-bottom: var(--m3-space-5); color: rgba(255,255,255,.5); font-size: .7rem; font-weight: 700; text-transform: uppercase; }
.blog-card__meta span { color: #b789ff; }
.blog-card__content h3 { font-size: clamp(1.3rem,1.7vw,1.7rem); }
.blog-card__content p { min-height: 5em; }
.blog-card__link { margin-top: auto; }
.blog-listing__empty { color: rgba(255,255,255,.7); }
.blog-pagination { margin-top: var(--m3-space-16); }
.blog-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--m3-space-2); }
.blog-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 48px; min-height: 48px; padding: 0 var(--m3-space-4); border-radius: 999px; color: rgba(255,255,255,.72); background: rgba(255,255,255,.055); font-size: .78rem; font-weight: 700; text-decoration: none; transition: color .3s ease,background .3s ease,box-shadow .3s ease,transform .3s ease; }
.blog-pagination a.page-numbers:hover { color: #fff; background: rgba(138,92,249,.22); box-shadow: 0 0 24px rgba(138,92,249,.22); transform: translateY(-2px); }
.blog-pagination .page-numbers.current { color: #fff; background: linear-gradient(110deg,#9f70ff,#7339ef); box-shadow: 0 0 26px rgba(138,92,249,.42); }
.blog-article { padding: var(--m3-section-y) 0; background: #08080d; }
.blog-article__container { max-width: 980px; }
.blog-article__content { color: rgba(255,255,255,.78); font-size: clamp(1.04rem,1.3vw,1.16rem); line-height: 1.86; }
/* O artigo deve permanecer legível, inclusive com versões anteriores do JS em cache. */
.blog-article__content.reveal { opacity: 1; transform: none; transition: none; }
.blog-article__content > *:first-child { margin-top: 0; }
.blog-article__content h2,.blog-article__content h3,.blog-article__content h4 { margin: 1.6em 0 .6em; color: #fff; font-family: var(--font-display); line-height: 1.12; letter-spacing: 0; }
.blog-article__content h2 { font-size: clamp(2rem,3.5vw,3.4rem); }
.blog-article__content h3 { font-size: clamp(1.55rem,2.5vw,2.35rem); }
.blog-article__content a { color: #b98cff; text-decoration: underline; text-underline-offset: .22em; }
.blog-article__content img { height: auto; margin-block: var(--m3-space-8); border-radius: 26px; box-shadow: 0 24px 64px rgba(0,0,0,.32); }
/* Colunas nativas: preserva larguras e alinhamentos definidos no editor. */
.blog-article__content .wp-block-columns { display: flex; flex-wrap: nowrap; align-items: stretch; gap: 2rem; margin-block: var(--m3-space-8); }
.blog-article__content .wp-block-columns > .wp-block-column { flex-grow: 1; flex-basis: 0; min-width: 0; overflow-wrap: break-word; }
.blog-article__content .wp-block-columns > .wp-block-column[style*="flex-basis"] { flex-grow: 0; }
.blog-article__content .wp-block-columns.are-vertically-aligned-top { align-items: flex-start; }
.blog-article__content .wp-block-columns.are-vertically-aligned-center { align-items: center; }
.blog-article__content .wp-block-columns.are-vertically-aligned-bottom { align-items: flex-end; }
.blog-article__content .wp-block-column.is-vertically-aligned-top { align-self: flex-start; }
.blog-article__content .wp-block-column.is-vertically-aligned-center { align-self: center; }
.blog-article__content .wp-block-column.is-vertically-aligned-bottom { align-self: flex-end; }
.blog-article__content .wp-block-column > :first-child { margin-top: 0; }
.blog-article__content .wp-block-column > :last-child { margin-bottom: 0; }
@media (max-width: 781px) {
  .blog-article__content .wp-block-columns:not(.is-not-stacked-on-mobile) { flex-wrap: wrap; }
  .blog-article__content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 100% !important; }
}
/* Vídeos inseridos pelo editor ocupam toda a largura do conteúdo. */
.blog-article__content .wp-block-embed.is-type-video { --post-video-ratio: 16 / 9; width: 100%; max-width: 100%; margin: var(--m3-space-8) 0; }
.blog-article__content .wp-block-embed.wp-embed-aspect-4-3 { --post-video-ratio: 4 / 3; }
.blog-article__content .wp-block-embed.wp-embed-aspect-1-1 { --post-video-ratio: 1; }
.blog-article__content .wp-block-embed.wp-embed-aspect-9-16 { --post-video-ratio: 9 / 16; }
.blog-article__content .wp-block-embed.wp-embed-aspect-21-9 { --post-video-ratio: 21 / 9; }
.blog-article__content .wp-block-embed.wp-embed-aspect-18-9 { --post-video-ratio: 18 / 9; }
.blog-article__content .wp-block-embed.wp-embed-aspect-1-2 { --post-video-ratio: 1 / 2; }
.blog-article__content .wp-block-embed.is-type-video .wp-block-embed__wrapper { position: relative; width: 100%; aspect-ratio: var(--post-video-ratio); }
.blog-article__content .wp-block-embed.is-type-video .wp-block-embed__wrapper::before { display: none; padding: 0; }
.blog-article__content .wp-block-embed.is-type-video iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: 100%; border: 0; }
.blog-article__content .wp-block-video { margin: var(--m3-space-8) 0; }
.blog-article__content .wp-block-video video { display: block; width: 100%; height: auto; }
/* O espaçamento pertence à galeria, não a cada foto dentro dela. */
.blog-article__content :is(.wp-block-gallery, .gallery) { margin-block: var(--m3-space-8); }
.blog-article__content :is(.wp-block-gallery, .gallery) img { margin-block: 0; box-shadow: none; }
/* Respeita as colunas das galerias nativas, em blocos e no editor clássico. */
.blog-article__content :is(.wp-block-gallery, .gallery) { --post-gallery-columns: 3; display: grid; grid-template-columns: repeat(var(--post-gallery-columns),minmax(0,1fr)); gap: var(--wp--style--unstable-gallery-gap,16px); }
.blog-article__content :is(.wp-block-gallery.columns-1, .gallery-columns-1) { --post-gallery-columns: 1; }
.blog-article__content :is(.wp-block-gallery.columns-2, .gallery-columns-2) { --post-gallery-columns: 2; }
.blog-article__content :is(.wp-block-gallery.columns-3, .gallery-columns-3) { --post-gallery-columns: 3; }
.blog-article__content :is(.wp-block-gallery.columns-4, .gallery-columns-4) { --post-gallery-columns: 4; }
.blog-article__content :is(.wp-block-gallery.columns-5, .gallery-columns-5) { --post-gallery-columns: 5; }
.blog-article__content :is(.wp-block-gallery.columns-6, .gallery-columns-6) { --post-gallery-columns: 6; }
.blog-article__content :is(.wp-block-gallery.columns-7, .gallery-columns-7) { --post-gallery-columns: 7; }
.blog-article__content :is(.wp-block-gallery.columns-8, .gallery-columns-8) { --post-gallery-columns: 8; }
.blog-article__content :is(.wp-block-gallery.columns-9, .gallery-columns-9) { --post-gallery-columns: 9; }
.blog-article__content .wp-block-gallery > .blocks-gallery-grid { display: contents; }
.blog-article__content :is(.wp-block-gallery, .gallery) :is(figure.wp-block-image, .blocks-gallery-item, .gallery-item) { float: none !important; width: auto !important; min-width: 0; margin: 0 !important; }
.blog-article__content :is(.wp-block-gallery, .gallery) :is(.gallery-icon, .blocks-gallery-item > figure) { margin: 0; }
.blog-article__content :is(.wp-block-gallery, .gallery) img { display: block; width: 100%; max-width: 100%; margin: 0; border: 0; }
.blog-article__content .wp-block-gallery.is-cropped :is(figure.wp-block-image, .blocks-gallery-item) img { height: 100%; object-fit: cover; }
.blog-article__content .gallery > br,
.blog-article__content .gallery::before,
.blog-article__content .gallery::after { display: none; }
.blog-article__content .wp-block-gallery > :is(figcaption, .blocks-gallery-caption) { grid-column: 1 / -1; }
.blog-article__content blockquote { margin: var(--m3-space-10) 0; padding: var(--m3-space-6) 0 var(--m3-space-6) var(--m3-space-8); color: #fff; border-left: 3px solid #955cff; font: 500 clamp(1.3rem,2.2vw,1.8rem)/1.5 var(--font-display); }
.blog-article__footer { margin-top: var(--m3-space-14); padding-top: var(--m3-space-8); }
.blog-article__categories { display: flex; flex-wrap: wrap; gap: var(--m3-space-2); margin-bottom: var(--m3-space-10); }
.blog-article__categories a { padding: .7rem 1rem; border-radius: 999px; color: #d6c5ff; background: rgba(138,92,249,.12); font-size: .75rem; font-weight: 700; text-decoration: none; text-transform: uppercase; }
.blog-article .post-navigation .nav-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--m3-space-5); }
.blog-article .post-navigation a { display: flex; flex-direction: column; min-height: 140px; padding: var(--m3-space-6); border-radius: 24px; color: #fff; background: rgba(255,255,255,.045); text-decoration: none; text-transform: none; transition: background .35s ease,transform .35s ease,box-shadow .35s ease; }
.blog-article .post-navigation a:hover { background: rgba(138,92,249,.13); box-shadow: 0 18px 46px rgba(0,0,0,.24); transform: translateY(-3px); }
.blog-article .post-navigation span { color: #a978ff; font-size: .7rem; font-weight: 700; text-transform: uppercase; }
.blog-article .post-navigation strong { margin-top: auto; font: 600 1.05rem/1.35 var(--font-display); }
.blog-related { padding: var(--m3-section-y) 0; background: radial-gradient(circle at 88% 10%,rgba(0,213,232,.14),transparent 30%),#050507; }

/* Página de contato */
.contact-hero h1 { max-width: 980px; }
.contact-channels { padding: var(--m3-section-y) 0; background: radial-gradient(circle at 10% 10%,rgba(113,43,255,.25),transparent 34%),linear-gradient(145deg,#030306 0%,#0e0822 56%,#050507 100%); }
.contact-channels__heading { max-width: 920px; margin-bottom: var(--m3-space-16); }
.contact-channels__heading h2,.contact-form-section__intro h2 { margin: 0; color: #fff; font-size: clamp(2.5rem,4.6vw,4.8rem); line-height: .98; letter-spacing: 0; text-wrap: balance; }
.contact-channels__heading > p,.contact-form-section__intro > p { max-width: 720px; margin: var(--m3-space-6) 0 0; color: rgba(255,255,255,.72); font-size: 1.06rem; line-height: 1.75; }
.contact-channels__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--m3-space-6); }
.contact-channel { display: flex; flex-direction: column; align-items: flex-start; min-height: 440px; padding: clamp(1.75rem,3vw,2.75rem); border-radius: 30px; background: linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018)); box-shadow: 0 26px 68px rgba(0,0,0,.3); transition: transform 420ms cubic-bezier(.2,.8,.2,1),background 420ms ease,box-shadow 420ms ease; }
.contact-channel:hover { transform: translateY(-6px); background: linear-gradient(145deg,rgba(138,92,249,.14),rgba(255,255,255,.025)); box-shadow: inset 0 0 0 2px rgba(156,99,255,.78),0 30px 76px rgba(0,0,0,.4),0 0 38px rgba(138,92,249,.24); }
.contact-channel__icon { display: grid; place-items: center; width: 92px; height: 92px; margin-bottom: var(--m3-space-8); border-radius: 28px; color: #fff; background: rgba(138,92,249,.16); box-shadow: 0 0 30px rgba(138,92,249,.15); }
.contact-channel__icon svg { width: 58px; height: 58px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.contact-channel .section-kicker { margin-bottom: var(--m3-space-3); }
.contact-channel h3 { margin: 0; color: #fff; font: 620 clamp(2rem,2.8vw,2.8rem)/1 var(--font-display); letter-spacing: 0; }
.contact-channel > p { margin: var(--m3-space-5) 0 var(--m3-space-8); color: rgba(255,255,255,.7); line-height: 1.7; }
.contact-channel__cta { width: 100%; margin-top: auto; }
.contact-channel--whatsapp .contact-channel__icon { background: rgba(37,211,102,.16); box-shadow: 0 0 30px rgba(37,211,102,.16); }
.contact-channel--whatsapp .contact-channel__cta { background: linear-gradient(110deg,#25b85d,#22d66c); box-shadow: 0 12px 34px rgba(28,174,85,.28),0 0 24px rgba(37,211,102,.2); }
.contact-channel--email .contact-channel__cta { background: linear-gradient(110deg,#a77bff,#7139ec); }
.contact-channel--form .contact-channel__icon { background: rgba(0,213,232,.14); box-shadow: 0 0 30px rgba(0,213,232,.14); }
.contact-channel--form .contact-channel__cta { background: linear-gradient(110deg,#087fbd,#00b9d0); box-shadow: 0 12px 34px rgba(0,148,190,.26),0 0 24px rgba(0,213,232,.18); }
.contact-form-section { padding: var(--m3-section-y) 0; background: radial-gradient(circle at 85% 20%,rgba(0,213,232,.13),transparent 30%),#07080d; }
.contact-form-section__grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(480px,1.2fr); gap: var(--m3-layout-gap); align-items: start; }
.contact-form-section__intro { position: sticky; top: 150px; }
.contact-form-section__content { margin-top: var(--m3-space-8); color: rgba(255,255,255,.68); line-height: 1.75; }
.contact-form-shell { padding: clamp(1.75rem,4vw,3.5rem); border-radius: 32px; background: linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025)); box-shadow: 0 30px 80px rgba(0,0,0,.34); }
.contact-form-shell h3 { margin: 0; color: #fff; font: 600 clamp(1.8rem,2.8vw,2.7rem)/1 var(--font-display); letter-spacing: 0; }
.contact-form-shell__privacy { margin: var(--m3-space-4) 0 var(--m3-space-8); color: rgba(255,255,255,.58); font-size: .78rem; line-height: 1.6; }
.contact-form-shell__privacy a { color: #ba8cff; text-decoration: none; }
.contact-form-shell .wpcf7-form { display: grid; gap: var(--m3-space-5); }
.contact-form-shell .wpcf7-form p { margin: 0; color: rgba(255,255,255,.8); font-size: .82rem; font-weight: 600; line-height: 1.5; }
.contact-form-shell .wpcf7-form-control-wrap { display: block; margin-top: var(--m3-space-2); }
.contact-form-shell input:not([type='submit']):not([type='checkbox']):not([type='radio']),.contact-form-shell textarea,.contact-form-shell select { box-sizing: border-box; width: 100%; min-height: 56px; padding: .9rem 1rem; border: 0; border-radius: 16px; color: #fff; background: rgba(0,0,0,.24); box-shadow: inset 0 0 0 1px transparent; font: 500 1rem/1.4 var(--font-sans); outline: 0; transition: background .3s ease,box-shadow .3s ease; }
.contact-form-shell textarea { min-height: 170px; resize: vertical; }
.contact-form-shell input:focus,.contact-form-shell textarea:focus,.contact-form-shell select:focus { background: rgba(0,0,0,.34); box-shadow: inset 0 0 0 2px #9660ff,0 0 24px rgba(138,92,249,.18); }
.contact-form-shell .wpcf7-submit { min-height: var(--m3-control-height); padding: 0 var(--m3-control-padding-x); border: 0; border-radius: 999px; color: #fff; background: linear-gradient(110deg,#a77bff,#7139ec); box-shadow: 0 14px 38px rgba(92,30,255,.34),0 0 24px rgba(138,92,249,.3); font: 700 15px/1 var(--font-sans); text-transform: uppercase; cursor: pointer; transition: transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease; }
.contact-form-shell .wpcf7-submit:hover { transform: translateY(-2px); box-shadow: 0 18px 46px rgba(92,30,255,.44),0 0 34px rgba(138,92,249,.5); }
.contact-form-shell .wpcf7-not-valid-tip { margin-top: .4rem; color: #ff9ca9; font-size: .75rem; }
.contact-form-shell .wpcf7-response-output { margin: var(--m3-space-5) 0 0 !important; padding: var(--m3-space-4) !important; border: 0 !important; border-radius: 14px; color: #fff; background: rgba(138,92,249,.14); }
.corporate-showcase { padding: var(--m3-section-y) 0; background: #050507; }
.corporate-showcase__panel { display: grid; grid-template-columns: 1.15fr .85fr; min-height: 610px; padding: var(--m3-space-6); border-radius: 36px; overflow: hidden; background: linear-gradient(135deg,#5524ca,#8a5cf9 62%,#6c42d4); box-shadow: 0 34px 90px rgba(49,15,134,.32); }
.corporate-gallery { position: relative; min-height: 560px; overflow: hidden; border-radius: 24px; background: #08080d; }
.corporate-gallery__slide { position: absolute; inset: 0; margin: 0; }
.corporate-gallery__slide img { width: 100%; height: 100%; object-fit: cover; }
.corporate-gallery__controls { position: absolute; right: var(--m3-space-5); bottom: var(--m3-space-5); left: var(--m3-space-5); z-index: 2; display: flex; align-items: center; justify-content: space-between; }
.corporate-gallery__controls button { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; color: #fff; background: rgba(5,5,7,.62); cursor: pointer; backdrop-filter: blur(10px); }
.corporate-gallery__controls > span { padding: .6rem .9rem; border-radius: 999px; color: rgba(255,255,255,.72); background: rgba(5,5,7,.62); font-size: .72rem; backdrop-filter: blur(10px); }
.corporate-gallery__controls strong { color: #fff; }
.corporate-showcase__content { display: flex; flex-direction: column; justify-content: center; padding: clamp(var(--m3-space-8),5vw,var(--m3-space-16)); }
.corporate-showcase__content .section-kicker { color: #fff; }
.corporate-showcase__content h2 { margin: 0; color: #fff; font-size: clamp(2.2rem,3.6vw,4rem); line-height: 1; letter-spacing: 0; }
.corporate-showcase__content p { margin: var(--m3-space-6) 0 0; color: rgba(255,255,255,.82); font-size: 1.2rem; line-height: 1.7; }
.corporate-cases { position: relative; padding: var(--m3-section-y) 0; background: radial-gradient(circle at 88% 12%,rgba(105,44,255,.3),transparent 34%),radial-gradient(circle at 8% 88%,rgba(0,190,230,.14),transparent 30%),linear-gradient(135deg,#030307 0%,#100827 52%,#07040f 100%); }
.corporate-cases__heading { max-width: 900px; margin-bottom: var(--m3-space-16); }
.corporate-cases__heading h2 { margin: 0; color: #fff; font-size: clamp(2.3rem,4.2vw,4.4rem); line-height: 1.05; letter-spacing: 0; }
.corporate-cases__heading > p { max-width: 680px; margin: var(--m3-space-5) 0 0; color: rgba(255,255,255,.82); font-size: clamp(1rem,1.35vw,1.15rem); font-weight: 600; line-height: 1.6; }
.corporate-cases__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--m3-space-6); }
.corporate-cases__grid:has(> .corporate-case-card:only-child) { grid-template-columns: minmax(0,520px); }
.corporate-case-card { min-width: 0; border: 1px solid var(--bsm-line); border-radius: var(--m3-shape-extra-large); overflow: hidden; background: var(--bsm-surface-2); transition: transform 200ms ease,border-color 200ms ease,box-shadow 200ms ease; }
.corporate-case-card:hover { border-color: var(--bsm-purple); transform: translateY(-6px); box-shadow: var(--m3-elevation-3); }
.corporate-case-card > a { display: block; height: 100%; color: #fff; }
.corporate-case-card figure { height: 250px; margin: 0; overflow: hidden; }
.corporate-case-card figure img { width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease; }
.corporate-case-card:hover figure img { transform: scale(1.04); }
.corporate-case-card__content { padding: var(--m3-space-6); }
.corporate-case-card h3 { margin: 0; color: #fff; font-size: 1.35rem; line-height: 1.2; letter-spacing: 0; }
.corporate-case-card p { min-height: 4.8em; margin: var(--m3-space-4) 0 var(--m3-space-6); color: var(--bsm-muted); font-size: .92rem; line-height: 1.6; }
.corporate-case-card__content > span { display: flex; justify-content: space-between; padding-top: var(--m3-space-4); border-top: 1px solid var(--bsm-line); color: #a977ff; font-size: .82rem; font-weight: 700; }
.corporate-case-card__content i { font-style: normal; }
.corporate-cases__empty { grid-column: 1/-1; color: var(--bsm-muted); }
.corporate-cta { padding: var(--m3-section-y) 0; background: radial-gradient(circle at 88% 20%,rgba(91,198,255,.28),transparent 32%),linear-gradient(125deg,#081b42 0%,#0b3f8c 48%,#347ed0 100%); }
.corporate-cta__inner { max-width: 1000px; text-align: center; }
.corporate-cta .section-kicker { justify-content: center; color: #bff9ff; }
.corporate-cta h2 { margin: 0; color: #fff; font-size: clamp(2.4rem,4.5vw,4.8rem); line-height: 1; letter-spacing: 0; }
.corporate-cta p { max-width: 720px; margin: var(--m3-space-6) auto; color: rgba(255,255,255,.8); font-size: 1.05rem; line-height: 1.7; }
.corporate-cta__formats { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--m3-space-3); margin-bottom: var(--m3-space-8); }
.corporate-cta__formats span { padding: .7rem 1rem; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; color: #fff; background: rgba(255,255,255,.08); font-size: .78rem; font-weight: 600; }

/* Showreel */
.section.home-corporativo { position: relative; padding: var(--m3-section-y) 0; background: radial-gradient(circle at 80% 30%,rgba(0,226,255,.24),transparent 34%),radial-gradient(circle at 12% 82%,rgba(120,45,255,.2),transparent 32%),linear-gradient(135deg,#020408,#07131d 52%,#080511 100%); }
.home-corporativo__content { max-width: 1250px; text-align: center; }
.section.home-corporativo .home-corporativo__content h2 { margin: 0 auto; color: #fff; }
.section.home-corporativo .home-corporativo__content p { max-width: 800px; margin: var(--m3-space-6) auto var(--m3-space-16); color: var(--bsm-muted); font-size: 1.08rem; line-height: 1.75; }
.video-shell { padding: .75rem; border: 1px solid var(--bsm-line); border-radius: calc(var(--bsm-radius) + 12px); background: linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.015)); box-shadow: var(--bsm-shadow); }
.video-shell__meta { display: flex; justify-content: space-between; padding: .75rem .75rem 1.25rem; color: var(--bsm-muted); font-size: .65rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.video-shell__meta span:first-child { color: var(--bsm-cyan); }
.video-container { position: relative; width: 100%; padding-top: 56.25%; overflow: hidden; border-radius: var(--bsm-radius); background: #000; }
.video-container iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* Fechamento comercial da home */
.home-final-cta { position: relative; isolation: isolate; padding: clamp(7rem,11vw,11rem) 0; overflow: hidden; background: radial-gradient(circle at 12% 18%,rgba(75,222,255,.55),transparent 34%),radial-gradient(circle at 88% 82%,rgba(218,118,255,.62),transparent 40%),linear-gradient(125deg,#03418f 0%,#195bd2 34%,#6435dc 68%,#b13ff0 100%); }
.home-final-cta::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(115deg,rgba(3,24,74,.16) 0%,transparent 38%,rgba(255,255,255,.08) 58%,rgba(65,15,112,.16) 100%); }
.home-final-cta__inner { max-width: 1120px; text-align: center; }
.home-final-cta .section-kicker { flex-direction: column; justify-content: center; color: rgba(255,255,255,.88); text-shadow: 0 2px 14px rgba(17,20,75,.28); }
.home-final-cta .section-kicker::before { order: 2; }
.home-final-cta h2 { max-width: 980px; margin: 0 auto; color: #fff; font-size: clamp(2.5rem,4.7vw,5rem); line-height: .98; letter-spacing: 0; text-shadow: 0 6px 28px rgba(21,18,86,.3); text-wrap: balance; }
.home-final-cta__inner > p { max-width: 760px; margin: var(--m3-space-6) auto 0; color: rgba(255,255,255,.86); font-size: clamp(1rem,1.35vw,1.12rem); line-height: 1.75; text-shadow: 0 2px 16px rgba(16,20,77,.24); }
.home-final-cta__formats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--m3-space-5); margin: var(--m3-space-16) 0 var(--m3-space-10); }
.home-final-cta__formats div { min-height: 275px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--m3-space-4); padding: var(--m3-space-6); border-radius: var(--m3-shape-extra-large); background: linear-gradient(145deg,rgba(8,18,62,.48),rgba(37,17,84,.3)); box-shadow: 0 24px 64px rgba(12,13,68,.24); backdrop-filter: blur(12px); transition: transform 420ms cubic-bezier(.2,.8,.2,1),background 420ms ease,box-shadow 420ms ease; }
.home-final-cta__formats div:hover { transform: translateY(-5px); background: linear-gradient(145deg,rgba(10,22,76,.62),rgba(47,19,103,.42)); box-shadow: 0 30px 74px rgba(15,10,75,.34),0 12px 38px rgba(226,202,255,.14); }
.home-final-cta__formats .home-final-cta__icon { display: grid; place-items: center; width: 120px; height: 120px; color: #fff; filter: drop-shadow(0 0 12px rgba(255,255,255,.3)); }
.home-final-cta__icon svg { width: 120px; height: 120px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.home-final-cta__formats strong { color: #fff; font: 600 clamp(1.05rem,1.45vw,1.3rem)/1.25 var(--font-display); }
.home-final-cta .btn { color: #32137e; background: #fff; box-shadow: 0 16px 42px rgba(25,14,91,.3),0 0 30px rgba(255,255,255,.28); }
.home-final-cta .btn:hover { color: #32137e; background: #fff; box-shadow: 0 20px 52px rgba(25,14,91,.4),0 0 38px rgba(255,255,255,.52); }

/* CTA e footer */
.footer-cta { position: relative; padding: clamp(7rem,11vw,11rem) 0; overflow: hidden; background: radial-gradient(circle at 82% 18%,rgba(224,121,255,.42),transparent 30%),linear-gradient(130deg,#2407a2 0%,#6713f4 52%,#bd2cff 100%); }
.footer-cta::before { content: ''; position: absolute; inset: 0; opacity: .18; background: radial-gradient(circle at 15% 20%,#fff,transparent 25%),repeating-linear-gradient(105deg,transparent 0,transparent 90px,rgba(255,255,255,.14) 91px); }
.footer-cta__inner { position: relative; max-width: 1000px; text-align: center; }
.footer-cta .section-kicker { color: #fff; }
.footer-cta h2 { color: #fff; }
.footer-cta h2 em { color: #bff9ff; }
.footer-cta p { max-width: 680px; margin: 2rem auto; color: rgba(255,255,255,.8); font-size: 1.08rem; line-height: 1.7; }
.footer-cta__formats { display: flex; flex-wrap: wrap; justify-content: center; gap: .65rem; margin: 0 auto 2rem; }
.footer-cta__formats span { padding: .65rem 1rem; border: 1px solid rgba(255,255,255,.24); border-radius: 999px; color: #fff; background: rgba(255,255,255,.08); font: 600 .78rem/1 var(--font-sans); }
.footer-cta .btn--primary { color: #fff; background: linear-gradient(110deg,#a77bff 0%,#8A5CF9 42%,#6d35ef 100%); box-shadow: 0 0 24px rgba(138,92,249,.48),0 16px 38px rgba(40,14,103,.32),inset 0 1px rgba(255,255,255,.3); }
.page-footer { margin: 0; padding: 0; background: #050507; }
.footer-grid { display: grid; grid-template-columns: 1.2fr .8fr .8fr; gap: clamp(2rem,6vw,7rem); padding-top: 5rem; text-align: left; }
.footer-brand img { width: 150px; }
.footer-brand p { max-width: 300px; color: var(--bsm-muted); font-size: .9rem; line-height: 1.6; }
.footer-grid h4 { margin: 0 0 1.3rem; color: #fff; font-size: .72rem; letter-spacing: .15em; text-transform: uppercase; }
.footer-menu ul { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem 1.5rem; margin: 0; padding: 0; list-style: none; }
.footer-menu li { margin: 0; padding: 0; list-style: none; }
.footer-menu a { color: var(--bsm-muted); font-size: .82rem; }
.footer-social .social { display: flex; gap: .6rem; margin: 0; }
.footer-social .social a { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--bsm-line); border-radius: 50%; }
.footer-social .social img { width: 20px; margin: 0; }
.footer-legal { grid-column: 1/-1; display: flex; justify-content: space-between; gap: 2rem; margin-top: 1rem; padding: 1.5rem 0 2rem; border-top: 1px solid var(--bsm-line); }
.footer-legal .copy { margin: 0; color: #6e6a77; font-size: .68rem; letter-spacing: .05em; }

/* Rodapé editorial inspirado no palco */
.site-footer { position: relative; color: #fff; background: #02030b; }
.footer-stage { position: relative; min-height: 620px; padding: clamp(7rem,12vw,11rem) 0 3.5rem; overflow: hidden; background: url('../../image/BANDA-SANTA-MARIA-01.jpg') center 18%/cover no-repeat; }
.footer-stage::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(2,3,11,.04) 0%,rgba(2,3,11,.7) 40%,#02030b 70%),linear-gradient(90deg,#02030b 0%,rgba(2,3,11,.2) 48%,rgba(2,3,11,.46) 100%); }
.footer-stage__grid { position: relative; display: grid; grid-template-columns: .95fr 1.15fr 1fr; gap: clamp(2.5rem,6vw,6rem); align-items: end; }
.footer-stage__brand,.footer-stage__contact { min-height: 260px; padding-right: clamp(1.5rem,3vw,3rem); border-right: 1px solid rgba(255,255,255,.28); }
.footer-stage__logo { width: clamp(150px,15vw,220px); margin-bottom: 2rem; }
.footer-stage__brand > p { max-width: 260px; margin: 0; color: rgba(255,255,255,.82); font-size: .92rem; line-height: 1.7; }
.footer-stage__brand > p strong { color: #b66cff; font-weight: 600; }
.footer-stage__accent { display: block; width: 30px; height: 2px; margin: 1rem 0 2rem; background: #a852ff; box-shadow: 0 0 10px rgba(168,82,255,.55); }
.footer-stage__social { display: flex; gap: .5rem; }
.footer-stage__social a { display: grid; place-items: center; width: 58px; height: 58px; border: 0; border-radius: 18px; color: #c886ff; background: rgba(153,62,255,.13); box-shadow: 0 10px 28px rgba(0,0,0,.22),0 0 22px rgba(168,82,255,.18); transition: color .35s ease,background .35s ease,transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease; }
.footer-stage__social a:hover { color: #fff; background: rgba(153,62,255,.3); transform: translateY(-4px) scale(1.04); box-shadow: 0 14px 34px rgba(0,0,0,.3),0 0 32px rgba(168,82,255,.58); }
.footer-stage__social svg { width: 30px; height: 30px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 8px rgba(168,82,255,.34)); }
.footer-stage__social svg .is-filled { fill: currentColor; stroke: none; }
.footer-stage__brand small { display: block; margin-top: .65rem; color: rgba(255,255,255,.55); font-size: .68rem; }
.footer-stage__contact h2,.footer-stage__action > h2 { margin: 0; color: #c477ff; font: 650 clamp(1.2rem,1.6vw,1.5rem)/1 var(--font-display); text-transform: uppercase; }
.footer-stage__contact address { display: grid; gap: .5rem; margin-top: 1.4rem; font-style: normal; }
.footer-stage__contact address a,.footer-stage__contact address p { display: flex; align-items: center; gap: 1rem; margin: 0; color: rgba(255,255,255,.94); font: 500 clamp(.98rem,1.2vw,1.2rem)/1.35 var(--font-display); overflow-wrap: anywhere; text-decoration: none; }
.footer-stage__contact address a:hover { color: #c886ff; }
.footer-stage__contact address span { display: grid; flex: 0 0 44px; place-items: center; width: 44px; height: 44px; color: #b96cff; background: rgba(168,82,255,.12); border-radius: 14px; box-shadow: 0 0 22px rgba(168,82,255,.16); }
.footer-stage__contact address svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.footer-stage__action { display: flex; flex-direction: column; align-items: flex-start; min-height: 260px; justify-content: flex-start; }
.footer-stage__action h3 { margin: auto 0 1.5rem; color: #fff; font: 500 clamp(1.4rem,2vw,2rem)/1.12 var(--font-display); letter-spacing: 0; }
.footer-stage__action .btn { width: 100%; margin-top: 20px; }
.footer-bottom { border-top: 1px solid rgba(168,82,255,.55); background: #02030b; }
.footer-bottom__inner { display: grid; grid-template-columns: 1fr auto; gap: 2rem; align-items: center; min-height: 110px; }
.footer-bottom p { margin: 0; color: rgba(255,255,255,.65); font-size: .72rem; line-height: 1.6; }
.footer-bottom__credit { display: flex; align-items: center; gap: .8rem; text-align: right; white-space: nowrap; }
.footer-bottom__credit a { color: #a852ff; }
.footer-bottom__credit .footer-bottom__legal { color: rgba(255,255,255,.7); }
.footer-bottom__credit .footer-bottom__legal:hover { color: #fff; }

@keyframes bsmKenBurns { to { transform: scale(1); } }
@keyframes bsmScroll { 0% { transform: translateY(0); } 100% { transform: translateY(200%); } }
@keyframes bsmClientMarquee { to { transform: translateX(-50%); } }

@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
@media (prefers-reduced-motion: reduce) { .marcas__track { animation: none !important; } }

@media (max-width: 992px) {
  .main-navigation,.site-header.nav-scroll .main-navigation { min-height: 84px; padding: 8px 0 !important; }
  .main-navigation .brand-logo { left: auto !important; }
  .main-navigation .brand-logo img { width: 120px; }
  .nav-links,.nav-actions { display: none; }
  .nav-toggle { display: inline-grid; gap: 5px; width: 46px; height: 46px; margin-left: auto; padding: 12px; border: 1px solid var(--bsm-line); border-radius: 50%; background: rgba(5,5,7,.28); }
  .nav-toggle span[aria-hidden] { display: block; height: 1px; background: #fff; transition: .25s ease; }
  .nav-is-open .nav-toggle span[aria-hidden]:nth-of-type(2) { transform: translateY(6px) rotate(45deg); }
  .nav-is-open .nav-toggle span[aria-hidden]:nth-of-type(3) { opacity: 0; }
  .nav-is-open .nav-toggle span[aria-hidden]:nth-of-type(4) { transform: translateY(-6px) rotate(-45deg); }
  .nav-drawer { position: fixed; inset: 84px 0 auto; max-height: calc(100svh - 84px); padding: 1.5rem var(--gap-x) 2rem; overflow-y: auto; border-top: 1px solid var(--bsm-line); background: rgba(5,5,7,.96); backdrop-filter: blur(20px); }
  .nav-drawer .menu { display: grid; gap: .2rem; margin-bottom: 1.5rem; }
  .nav-drawer a { display: block; padding: .85rem 0; color: #fff; font: 600 1.1rem/1.2 var(--font-display); }
  .nav-drawer .nav-cta { display: inline-flex; padding-inline: 26px; font: 700 15px/1 var(--font-sans); }
  .section.home-slider { min-height: 680px; }
  .section.home-slider .slider .slides li .home-slider__content { padding-top: 7rem; }
  .section-heading--split { grid-template-columns: 1fr; gap: 2rem; }
  .section.home-sobre { min-height: 76svh; background-position: center,center,62% center; background-attachment: scroll; }
  .home-sobre__grid { min-height: calc(76svh - 2 * var(--m3-section-y)); }
  .home-sobre__content { width: min(72%,680px); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1/-1; }
  .footer-stage { padding-top: 9rem; }
  .footer-stage__grid { grid-template-columns: 1fr 1fr; }
  .footer-stage__action { grid-column: 1/-1; min-height: auto; }
  .footer-stage__contact { border-right: 0; }
  .footer-bottom__inner { grid-template-columns: 1fr auto; padding-block: 1.5rem; }
  .corporate-hero { min-height: 760px; }
  .corporate-types__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .corporate-showcase__panel { grid-template-columns: 1fr; }
  .corporate-gallery { min-height: 520px; }
  .corporate-cases__grid { grid-template-columns: 1fr; }
  .corporate-case-card > a { display: grid; grid-template-columns: minmax(260px,.8fr) 1.2fr; }
  .corporate-case-card figure { height: 100%; min-height: 300px; }
  .events-gallery__item { grid-column: span 6 !important; }
  .events-gallery__acf .gallery { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .about-numbers__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .about-history { background-position: center,center,62% center; background-attachment: scroll; }
  .about-history__content { width: min(76%,720px); }
  .about-television__logos { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .about-television__story { grid-template-columns: 1fr; }
  .about-artists__gallery figure,.about-artists__acf .gallery-item { grid-column: span 6 !important; }
  .about-trajectory__slider { min-height: 720px; }
  .blog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .contact-channels__grid { grid-template-columns: 1fr; }
  .contact-channel { min-height: 360px; }
  .contact-form-section__grid { grid-template-columns: 1fr; }
  .contact-form-section__intro { position: static; }
}

@media (max-width: 600px) {
  .container { width: min(calc(100% - 2.5rem),1480px); }
  .section-kicker { font-size: .62rem; }
  .section.home-slider { height: 92svh; min-height: 620px; }
  .home-slider__slide::after { display: none; }
  .section.home-slider .slider .slides li .home-slider__content { justify-content: flex-end; width: 100%; padding: 7rem 1.25rem 8rem; }
  .section.home-slider .slider .slides li .home-slider__content .HTitulo { width: 100%; font-size: clamp(2.304rem,10.752vw,3.5328rem); }
  .section.home-slider .slider .slides li .home-slider__content .HDescricao { width: auto; max-width: 100%; margin: 0 0 1.25rem; padding: .75rem .9rem; border-radius: 16px; font-size: .95rem; }
  .hero-controls { right: 1.25rem; bottom: 2rem; }
  .hero-arrow { display: none; }
  .hero-scroll { display: none; }
  .section-heading h2,.home-sobre h2,.marcas h2,.home-corporativo h2,.footer-cta h2 { font-size: clamp(1.792rem,8.32vw,2.688rem); }
  .section-heading--split > p { font-size: .95rem; }
  .section.home-produtos { padding-block: 6rem; }
  .carousel-slider .swiper-slide.home-product { min-height: 520px; }
  .swiper-container { padding-inline: 1.25rem; }
  .home-sobre__facts { gap: 1.5rem; }
  .section.home-sobre { min-height: 720px; background-image: linear-gradient(90deg,rgba(5,5,7,.96),rgba(5,5,7,.68)),linear-gradient(0deg,rgba(5,5,7,.72),transparent 38%),url('../../image/00---HOME----CHAMADA-CORPORATIVO.jpg'); background-position: center,center,64% center; }
  .home-sobre__grid { min-height: calc(720px - 2 * var(--m3-section-y)); }
  .home-sobre__content { width: 100%; max-width: none; }
  .home-sobre__visual { min-height: 480px; }
  .home-sobre__visual::before { inset: -1rem 1rem 1rem -1rem; }
  .home-sobre__visual figcaption { right: .75rem; bottom: .75rem; }
  .marcas__inner { gap: 3rem; }
  .section.marcas { width: 100%; margin: 0; border-radius: 0; }
  .marcas__inner { width: calc(100% - 2.5rem); }
  .section.marcas .marcas__title { max-width: 320px; font-size: 1.45rem; }
  .marcas__slider { margin-top: var(--m3-space-8); }
  .marcas__group { gap: 1rem; padding-right: 1rem; }
  .marcas__item { flex-basis: 260px; width: 260px; height: 195px; }
  .marcas__item img { max-width: 260px !important; max-height: 195px !important; }
  .video-shell { padding: .45rem; border-radius: 20px; }
  .video-container { border-radius: 16px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
  .footer-legal { grid-column: auto; flex-direction: column; gap: .5rem; }
  .footer-stage { min-height: auto; padding: 8rem 0 3rem; background-position: 58% top; }
  .footer-stage__grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .footer-stage__brand,.footer-stage__contact { min-height: auto; padding: 0 0 2.5rem; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.22); }
  .footer-stage__action { grid-column: auto; }
  .footer-stage__logo { width: 150px; }
  .footer-bottom__inner { grid-template-columns: 1fr; gap: 1rem; text-align: center; }
  .footer-bottom__credit { flex-wrap: wrap; justify-content: center; text-align: center; white-space: normal; }
  .corporate-hero { min-height: 400px; padding: 120px 0 48px; background-position: 58% center; }
  .corporate-hero h1 { font-size: clamp(2.16rem,9.6vw,3.2rem); }
  .corporate-types__grid { grid-template-columns: 1fr; gap: var(--m3-space-4); }
  .corporate-type-card { min-height: 275px; }
  .corporate-showcase__panel { width: calc(100% - 1.5rem); padding: var(--m3-space-3); border-radius: 24px; }
  .corporate-gallery { min-height: 390px; border-radius: 18px; }
  .corporate-showcase__content { padding: var(--m3-space-8) var(--m3-space-4); }
  .corporate-case-card > a { display: block; }
  .corporate-case-card figure { height: 230px; min-height: 0; }
  .corporate-case-card p { min-height: 0; }
  .home-final-cta__formats { grid-template-columns: 1fr; gap: var(--m3-space-4); margin-block: var(--m3-space-10) var(--m3-space-8); }
  .home-final-cta__formats div { min-height: 275px; }
  .events-gallery__grid { grid-template-columns: 1fr; }
  .events-gallery__item { grid-column: auto !important; height: 320px; }
  .events-gallery__acf .gallery { grid-template-columns: 1fr; }
  .about-numbers__grid { grid-template-columns: 1fr; }
  .about-number-card { min-height: 230px; }
  .about-history { min-height: auto; background-image: linear-gradient(90deg,rgba(4,4,8,.97),rgba(4,4,8,.72)),linear-gradient(0deg,rgba(4,4,8,.84),transparent 36%),var(--about-history-image); background-position: center,center,68% center; }
  .about-history__inner { min-height: auto; }
  .about-history__content { width: 100%; }
  .about-television__logos { grid-template-columns: repeat(2,minmax(0,1fr)); margin-block: var(--m3-space-10); }
  .about-television__logo { min-height: 140px; }
  .about-television__logo img { height: 105px; }
  .about-television__story { gap: var(--m3-space-8); }
  .about-artists__gallery,.about-artists__acf .gallery { grid-template-columns: 1fr; }
  .about-artists__gallery figure,.about-artists__acf .gallery-item { grid-column: auto !important; height: 340px; }
  .about-trajectory__slider { width: calc(100% - 1.5rem); min-height: 700px; border-radius: 24px; }
  .about-trajectory__panel { right: 1rem; bottom: 6rem; width: calc(100% - 2rem); }
  .about-trajectory__controls { right: 1rem; bottom: 1.25rem; left: 1rem; }
  .about-trajectory__controls > button { width: 46px; height: 46px; }
  .about-trajectory__dots { gap: .4rem; }
  .about-trajectory__dots button { width: 18px; }
  .about-trajectory__dots button.is-active { width: 34px; }
  .blog-grid { grid-template-columns: 1fr; }
  .blog-card__content { min-height: 260px; }
  .blog-article .post-navigation .nav-links { grid-template-columns: 1fr; }
  .blog-pagination .page-numbers { min-width: 44px; min-height: 44px; }
}

/* Refinamento editorial: superfícies sem contornos e CTAs luminosos */
.site-header,
.site-header.nav-scroll,
.text-link,
.section.home-slider .slider .slides li .home-slider__content .HDescricao,
.hero-arrow,
.carousel-slider .swiper-slide.home-product,
.swiper-button-next,
.swiper-button-prev,
.home-sobre__facts,
.home-sobre__visual::before,
.home-sobre__visual figcaption,
.section.marcas,
.video-shell,
.corporate-type-card,
.corporate-gallery__controls button,
.corporate-case-card,
.corporate-case-card__content > span,
.corporate-cta__formats span,
.footer-cta__formats span,
.footer-social .social a,
.footer-legal,
.footer-stage__brand,
.footer-stage__contact,
.footer-stage__social a,
.footer-bottom,
.nav-toggle,
.nav-drawer {
  border: 0;
}

.site-header.nav-scroll {
  box-shadow: none;
}

.home-sobre__visual::before {
  background: linear-gradient(135deg,rgba(138,92,249,.18),transparent 64%);
  box-shadow: 0 22px 70px rgba(71,24,172,.14);
}

.home-sobre__visual figcaption {
  box-shadow: 0 18px 44px rgba(0,0,0,.34);
}

.carousel-slider .swiper-slide.home-product,
.corporate-type-card,
.corporate-case-card,
.video-shell {
  box-shadow: 0 24px 64px rgba(0,0,0,.3);
}

.corporate-type-card,
.corporate-case-card {
  transition: transform 420ms cubic-bezier(.2,.8,.2,1),box-shadow 420ms cubic-bezier(.2,.8,.2,1),background 420ms ease;
}

.corporate-type-card:hover,
.corporate-case-card:hover {
  transform: translateY(-5px);
  background-color: rgba(255,255,255,.055);
  box-shadow: 0 28px 72px rgba(0,0,0,.4),0 14px 42px rgba(138,92,249,.13);
}

.hero-arrow,
.swiper-button-next,
.swiper-button-prev,
.corporate-gallery__controls button,
.nav-toggle {
  background: rgba(20,14,35,.72);
  box-shadow: 0 12px 30px rgba(0,0,0,.3),0 0 22px rgba(138,92,249,.1);
  transition: color 350ms ease,background 350ms ease,transform 350ms cubic-bezier(.2,.8,.2,1),box-shadow 350ms ease;
}

.hero-arrow:hover,
.swiper-button-next:hover,
.swiper-button-prev:hover,
.corporate-gallery__controls button:hover,
.nav-toggle:hover {
  color: #fff;
  background: rgba(138,92,249,.82);
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(0,0,0,.34),0 0 30px rgba(138,92,249,.42);
}

.corporate-cta__formats span,
.footer-cta__formats span {
  background: rgba(255,255,255,.09);
  box-shadow: 0 8px 24px rgba(0,0,0,.1);
}

.footer-social .social a {
  background: rgba(168,82,255,.12);
  box-shadow: 0 8px 24px rgba(0,0,0,.2);
}

.footer-social .social a:hover {
  background: rgba(168,82,255,.25);
  box-shadow: 0 10px 30px rgba(168,82,255,.32);
}

.footer-bottom {
  background: linear-gradient(180deg,#05040d,#02030b);
  box-shadow: 0 -24px 60px rgba(35,12,84,.13);
}

.btn,
.nav-cta {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 0;
  box-shadow: 0 12px 32px rgba(92,30,255,.3),0 0 22px rgba(138,92,249,.3);
  transition: transform 440ms cubic-bezier(.2,.8,.2,1),box-shadow 440ms cubic-bezier(.2,.8,.2,1),filter 440ms ease;
}

.btn::before,
.nav-cta::before {
  content: '';
  position: absolute;
  inset: -70% auto -70% -45%;
  z-index: 1;
  width: 28%;
  pointer-events: none;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  filter: blur(2px);
  transform: skewX(-20deg) translateX(-280%);
  transition: transform 850ms cubic-bezier(.16,1,.3,1);
}

.btn:hover,
.nav-cta:hover {
  color: #fff;
  filter: brightness(1.08) saturate(1.08);
  transform: translateY(-2px) scale(1.012);
  box-shadow: 0 18px 44px rgba(72,22,186,.42),0 0 24px rgba(138,92,249,.72),0 0 54px rgba(138,92,249,.3);
}

.btn:hover::before,
.nav-cta:hover::before {
  transform: skewX(-20deg) translateX(650%);
}

.btn:active,
.nav-cta:active {
  transform: translateY(0) scale(.99);
  transition-duration: 140ms;
}

@media (max-width: 600px) {
  .footer-stage__brand,
  .footer-stage__contact {
    border: 0;
    background: linear-gradient(180deg,transparent,rgba(255,255,255,.035));
  }
}

/* Hero e descrições da página de eventos corporativos. */
.corporate-hero--zoom { isolation: isolate; background: #050507; }
.corporate-hero--zoom::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(5,5,7,.96),rgba(5,5,7,.65) 52%,rgba(5,5,7,.18)),linear-gradient(0deg,#050507,transparent 48%),var(--corporate-hero-image) center/cover no-repeat; transform: scale(1.045); animation: bsmKenBurns 7s ease-out forwards; pointer-events: none; }
.corporate-type-card__toggle { padding: .25rem; border: 0; color: inherit; background: transparent; font: inherit; cursor: pointer; }
.corporate-type-card__toggle:focus-visible { outline: 2px solid #d7c4ff; outline-offset: 6px; border-radius: 4px; }
.corporate-type-card__description { display: grid; grid-template-rows: 0fr; opacity: 0; visibility: hidden; transform: translateY(8px); color: rgba(255,255,255,.82); font-size: .96rem; line-height: 1.65; transition: grid-template-rows 420ms cubic-bezier(.2,.8,.2,1),opacity 320ms ease,transform 420ms ease,visibility 0s 420ms; }
.corporate-type-card__description-inner { min-height: 0; overflow: hidden; }
.corporate-type-card__description-inner p { margin: 0; padding-top: 1rem; }
.corporate-type-card.is-description-open .corporate-type-card__description { grid-template-rows: 1fr; opacity: 1; visibility: visible; transform: translateY(0); transition-delay: 0s; }
@media (prefers-reduced-motion: reduce) {
  .corporate-type-card__description { transition: none; transform: none; }
}

@media (max-width: 700px) {
  .corporate-hero--zoom::before { background-position: 58% center; }
}
@media (prefers-reduced-motion: reduce) {
  .corporate-hero--zoom::before { animation: none; transform: none; }
}
/* Grade de clientes da página corporativa. */
.marcas__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: clamp(.75rem,2vw,1.5rem); margin-top: var(--m3-space-10); }
.marcas__grid-item { display: grid; place-items: center; min-width: 0; height: clamp(150px,16vw,210px); margin: 0; padding: 1rem; overflow: hidden; border-radius: 20px; background: rgba(255,255,255,.035); }
.marcas__grid-item img { display: block; width: 100%; height: 100%; max-width: 250px; max-height: 180px; object-fit: contain; filter: grayscale(1) brightness(0) invert(1); opacity: .9; }
.marcas__grid-item--legacy img { max-width: 230px; max-height: 155px; filter: grayscale(1) invert(1) contrast(2); mix-blend-mode: screen; }
@media (max-width: 700px) {
  .marcas__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .marcas__grid-item { height: 140px; padding: .6rem; border-radius: 14px; }
}
/* Completa a última linha do mosaico sem alterar a ordem das imagens. */
@media (min-width: 993px) {
  .events-gallery__item:nth-child(5n+1):last-child,
  .events-gallery__item:nth-child(5n+3):last-child { grid-column: span 12; }
  .events-gallery__item:nth-child(5n+3):nth-last-child(2),
  .events-gallery__item:nth-child(5n+4):last-child { grid-column: span 6; }
}
@media (min-width: 601px) and (max-width: 992px) {
  .events-gallery__item:last-child:nth-child(odd) { grid-column: span 12 !important; }
}
/* O shortcode clássico insere quebras que não podem ocupar células do grid. */
.events-gallery__acf .gallery > br { display: none; }
.events-gallery__acf .gallery::before,
.events-gallery__acf .gallery::after { display: none; }
.events-gallery__acf .gallery-item { min-width: 0; float: none !important; }
.events-gallery__acf .gallery-icon a,
.events-gallery__acf .gallery-icon img { display: block; }
/* Acervo por décadas e mural de artistas. */
.about-trajectory--decades { background: #f4f2f7; }
.about-trajectory--decades .about-trajectory__heading h2 { color: #19151e; }
.about-decades { display: flex; gap: clamp(1rem,3vw,3rem); margin-bottom: 2rem; overflow-x: auto; }
.about-decades [role="tab"] { flex-shrink: 0; padding: .8rem 0; border: 0; border-bottom: 2px solid transparent; background: transparent; color: #49434f; font: 600 .9rem/1.3 var(--font-sans); cursor: pointer; }
.about-decades [aria-selected="true"] { color: #7139d5; border-bottom-color: #7139d5; }
.about-decades [role="tab"]:focus-visible { outline: 2px solid #7139d5; outline-offset: 4px; }
.about-decades__photos { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1.25rem; }
.about-decades__photos a { display: block; overflow: hidden; border-radius: 12px; aspect-ratio: 3/4; }
.about-decades__photos img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 350ms ease; }
.about-decades__photos a:hover img { transform: scale(1.035); }
.about-photo-dialog { width: min(1100px,94vw); max-width: 94vw; padding: 2.75rem .75rem .75rem; border: 0; border-radius: 12px; background: #111; }
.about-photo-dialog::backdrop { background: rgba(0,0,0,.85); }
.about-photo-dialog img { display: block; max-width: 100%; max-height: 80svh; margin: auto; object-fit: contain; }
.about-photo-dialog button { position: absolute; top: 0; right: .5rem; width: 44px; height: 44px; border: 0; background: transparent; color: #fff; font-size: 2rem; cursor: pointer; }
.about-television__logo small { display: block; margin-top: .5rem; color: rgba(255,255,255,.8); font-size: .78rem; text-align: center; }
.about-television__media { min-width: 0; }
.about-television__media > h3 { margin: 0 0 1rem; color: #fff; font: 500 1.25rem/1.4 var(--font-display); }
.about-artists { background: #f5f3f7; }
.about-artists__heading h2 { color: #17141c; }
.about-artists__heading > p { color: #433d49; }
.about-artists__mural { --artist-gap: 2rem; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: 1rem var(--artist-gap); margin: 0; padding: 0; list-style: none; }
.about-artists__mural li { position: relative; color: #242027; font: 560 clamp(1.5rem,3vw,3.2rem)/1.2 var(--font-display); }
.about-artists__mural li:nth-child(5n+2) { font-size: clamp(1.65rem,3.3vw,3.5rem); font-weight: 600; color: #151217; }
.about-artists__mural li:nth-child(7n+3) { font-size: clamp(1.55rem,3.15vw,3.35rem); font-weight: 500; color: #49414d; }
.about-artists__mural li:nth-child(4n+1) { font-weight: 620; color: #37313b; }
@media (max-width: 600px) {
  .about-decades__photos { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 1rem; }
  .about-decades__photos a { flex: 0 0 82%; scroll-snap-align: start; }
  .about-artists__mural { --artist-gap: 1.25rem; gap: 1rem var(--artist-gap); }
}
/* Solicitação de proposta: abertura e formulário em uma única composição. */
.proposal-page { padding: 160px 0 80px; background: #08080d; }
.proposal-layout { display: grid; grid-template-columns: 43fr 57fr; gap: clamp(2rem,4vw,4rem); align-items: start; }
.proposal-photo { position: sticky; top: 140px; margin: 0; height: min(760px,78svh); overflow: hidden; border-radius: 24px; }
.proposal-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.proposal-content { min-width: 0; color: rgba(255,255,255,.78); }
.proposal-content h1 { margin: 0 0 1.25rem; font: 600 clamp(2.2rem,4vw,4rem)/1.05 var(--font-display); color: #fff; }
.proposal-content > p { margin: .5rem 0; line-height: 1.6; }
.proposal-lead { font-size: 1.2rem; color: #fff; }
.proposal-form { margin-top: 2rem; }
.proposal-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.15rem; }
.proposal-field { min-width: 0; }
.proposal-field--wide { grid-column: 1/-1; }
.proposal-field label { display: block; margin: 0 0 .5rem; color: #fff; font-size: .88rem; line-height: 1.4; }
.proposal-field label small { color: #aaa5b3; font-size: .73rem; }
.proposal-field input,.proposal-field select,.proposal-field textarea { box-sizing: border-box; display: block; width: 100%; min-height: 48px; height: auto; margin: 0; padding: .8rem .9rem; border: 1px solid #49414f; border-radius: 9px; background: #17131e; color: #fff; font: 400 1rem/1.4 var(--font-sans); box-shadow: none; color-scheme: dark; }
.proposal-field textarea { resize: vertical; }
.proposal-field :is(input,select,textarea):focus { outline: 2px solid #a979ff; outline-offset: 2px; }
.proposal-field :is(input,textarea)::placeholder { color: #aaa5b3; opacity: 1; }
.proposal-field [aria-invalid="true"] { border-color: #ffb1b1; }
.proposal-error { display: block; color: #ffb1b1; font-size: .88rem; margin-top: .5rem; }
.proposal-submit { width: 100%; margin-top: 1.5rem; cursor: pointer; }
.proposal-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.proposal-alternatives { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.15); }
.proposal-alternatives p { margin: 0 0 .8rem; font-size: .95rem; }
.proposal-alternatives a { display: block; width: fit-content; max-width: 100%; margin: .5rem 0; color: #c4b5dc; overflow-wrap: anywhere; font-size: .9rem; }
.proposal-secondary-link { display: inline-block; margin-top: 1rem; color: #c4b5dc; }
@media (max-width: 800px) {
  .proposal-page { padding-top: 120px; }
  .proposal-layout { grid-template-columns: 1fr; }
  .proposal-photo { position: static; height: 260px; }
  .proposal-fields { grid-template-columns: 1fr; }
}

/* Transições independentes e discretas no mural de artistas. */
.about-artists__bullet { position: absolute; left: calc(100% + var(--artist-gap) / 2); top: 50%; transform: translate(-50%,-50%); color: #8c759d; font: 500 1rem/1 var(--font-sans); }
.about-artists__name { animation: bsmArtistColor var(--artist-duration,18s) ease-in-out var(--artist-delay,0s) infinite; }
@keyframes bsmArtistColor {
  0%,100% { color: #242027; }
  33% { color: var(--artist-color-one,#68408b); }
  66% { color: var(--artist-color-two,#28676d); }
}
@media (prefers-reduced-motion: reduce) {
  .about-artists__name { animation: none; }
}
/* Ajustes de leitura e navegação em telas pequenas. */
@media (max-width: 600px) {
  body.nav-is-open { overflow: hidden; }
  .nav-is-open .site-header { background: #050507; }
  .nav-drawer { bottom: 0; background: #050507; }
  .corporate-heading h2 { font-size: clamp(1.92rem,3.52vw,3.68rem); }
  .proposal-content h1 { font-size: clamp(1.76rem,3.2vw,3.2rem); }
  .about-television__heading h2,.about-artists__heading h2,.about-trajectory__heading h2,
  .home-final-cta h2,.blog-listing__heading h2,.blog-related__heading h2,
  .contact-channels__heading h2,.contact-form-section__intro h2 { font-size: clamp(2rem,3.76vw,4rem); }
  .events-gallery__heading h2,.about-numbers__heading h2,.corporate-cta h2 { font-size: clamp(1.92rem,3.52vw,3.76rem); }
  .about-history__content h2 { font-size: clamp(2.24rem,4vw,4.24rem); }
  .corporate-showcase__content h2 { font-size: clamp(1.76rem,2.88vw,3.2rem); }
  .corporate-cases__heading h2 { font-size: clamp(1.84rem,3.36vw,3.52rem); }
  .blog-article__content h2 { font-size: clamp(1.6rem,2.8vw,2.72rem); }
  .blog-article__content h3 { font-size: clamp(1.24rem,2vw,1.88rem); }
  .corporate-case-card h3 { font-size: 1.08rem; }
  .about-television__media > h3 { font-size: 1rem; }
  .section.marcas .marcas__title { font-size: 1.16rem; }
}
/* Ampliação das galerias nativas dos posts. */
body.post-gallery-is-open { overflow: hidden; }
.blog-article__content .post-gallery-open { display: block; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; border-radius: 26px; background: transparent; cursor: zoom-in; }
.blog-article__content .post-gallery-open:focus-visible { outline: 3px solid #b98cff; outline-offset: 4px; }
.post-gallery-lightbox { position: fixed; inset: 0; width: 100%; height: 100%; max-width: 100vw; max-height: 100svh; margin: 0; padding: 64px 16px 80px; border: 0; background: rgba(5,5,7,.97); color: #fff; }
.post-gallery-lightbox::backdrop { background: #050507; }
.post-gallery-lightbox[open] { display: flex; align-items: center; justify-content: center; }
.post-gallery-lightbox > img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; }
.post-gallery-lightbox button { width: 48px; height: 48px; padding: 0; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; background: #242027; color: #fff; font-size: 1.6rem; cursor: pointer; }
.post-gallery-lightbox button:focus-visible { outline: 3px solid #b98cff; outline-offset: 3px; }
.post-gallery-lightbox button:disabled { opacity: .35; cursor: default; }
.post-gallery-lightbox__close { position: absolute; top: max(8px,env(safe-area-inset-top)); right: 16px; }
.post-gallery-lightbox__controls { position: absolute; bottom: max(16px,env(safe-area-inset-bottom)); left: 0; right: 0; display: flex; align-items: center; justify-content: center; gap: 24px; }