/* Ajustes da revisão de computador e celular. */
.product-video { padding-block: 42px 90px; scroll-margin-top: 84px; }
.product-video__heading { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 50px; margin-bottom: 32px; }
.product-video__heading .section-label { display: block; margin-bottom: 18px; }
.product-video__heading h2 { font-size: clamp(38px,4.3vw,62px); }
.product-video__heading > p { max-width: 440px; justify-self: end; color: #b6c7e0; font-size: 16px; line-height: 1.8; }
.product-video__frame { position: relative; width: 100%; min-width: 0; aspect-ratio: 16/9; min-height: 200px; border: 1px solid #7998c35c; border-radius: 28px; overflow: hidden; background: #070b17; box-shadow: 0 3px 8px #0205164d,0 22px 55px #02051666; }
.product-video__frame video { display: block; width: 100%; height: 100%; position: absolute; inset: 0; border: 0; object-fit: contain; }
.product-video__footer { display: flex; justify-content: space-between; gap: 20px; padding-top: 18px; font-size: 12px; color: #a9bbd7; }
.product-video__footer a { color: #d1e5ff; text-decoration: underline; text-underline-offset: 5px; text-decoration-color: #7f9bc466; transition: color .2s,text-decoration-color .2s; }
.product-video__footer a:hover { color: #fff; text-decoration-color: #b3d5ff; }
@media (max-width: 760px) {
 .product-video { padding-block: 34px 58px; scroll-margin-top: 84px; }
 .product-video__heading { grid-template-columns: 1fr; gap: 18px; margin-bottom: 24px; }
 .product-video__heading > p { justify-self: start; font-size: 14px; }
 .product-video__frame { border-radius: 18px; }
 .product-video__footer { flex-direction: column; align-items: flex-start; gap: 8px; font-size: 11px; }
 .product-video__footer a { display: inline-flex; align-items: center; min-height: 44px; }
}
/* Acabamento: controles em texto, relevo e respostas ao movimento. */
.header-cta,.button,.contact-secondary,.motion-preference,.egp-film__btn {
  box-shadow: 0 2px 2px #00000010,0 9px 24px #02071826;
  transition: background .24s,border-color .24s,box-shadow .24s,transform .24s;
}
.header-cta { border:1px solid #7585a84d; border-radius:14px; padding:12px 18px; background:#1b233c; }
.resource-explorer,.tailored-diagram,.egp-film__player {
  box-shadow: 0 1px 0 #ffffff20 inset,0 12px 24px #02051628,0 34px 72px #02051638;
}
.teaser-card,.post-card,.game-shell { box-shadow:0 2px 4px #13274414,0 15px 32px #1327441c,0 30px 65px #13274412; }
.resource-arrow,.down-arrow,.direction-mark,.tiny-square,.report-check,.report-alert { display:none; }
.resource-panel ul li::before,.article-check li::before { content:none; }
.resource-panel ul li,.article-check li { padding-left:0; border-bottom:1px solid #b5c6e31f; padding-bottom:10px; }
.faq-list summary { justify-content:space-between; }
.faq-list summary::after { content:'Ler';font-size:11px;letter-spacing:.03em;color:#a8bddb;flex-shrink:0; }
.faq-list details[open] summary::after { content:'Fechar'; }
.dialog-close { width:auto;min-width:64px;font-size:12px;border-radius:10px;padding:8px 12px; }
.mini-docs span { gap:0; }
.site-header .menu-toggle { font-size:12px;font-weight:650;color:#d9e7ff;border:1px solid #7c97c74f;border-radius:12px;background:#19233c; }
.site-header .menu-toggle span { display:none; }
@media (hover:hover) {
  .button:hover,.header-cta:hover,.contact-secondary:hover { transform:translateY(-3px);box-shadow:0 3px 6px #00000018,0 16px 36px #040c244d;border-color:#9acaff; }
  .button-blue:hover { background:#3c69d7;box-shadow:0 4px 8px #14296233,0 16px 32px #315dce55; }
  .button-white:hover { background:#e2efff;color:#112442; }
  .resource-tabs button:hover { background:#263856;border-radius:14px;box-shadow:0 5px 16px #02071726; }
  .faq-list details:hover { border-color:#819ac1;background:#1a274133; }
  .teaser-card:hover,.post-card:hover { transform:translateY(-7px);box-shadow:0 5px 10px #13274418,0 24px 44px #1327442e;border-color:#7c9bc5; }
  .egp-film__btn:hover { transform:translateY(-2px);border-color:#7398c7;box-shadow:0 8px 20px #163e711f; }
}
@media (prefers-reduced-motion:reduce) {
  .button:hover,.header-cta:hover,.contact-secondary:hover,.teaser-card:hover,.post-card:hover,.egp-film__btn:hover { transform:none; }
}
@media (max-width:1050px) {
  .site-header .menu-toggle { flex-basis:62px;width:62px;justify-content:center; }
}
@media (max-width:540px) {
  .hero-topline>span:first-child { font-size:9px;letter-spacing:.08em; }
  .site-header .menu-toggle { flex-basis:58px;width:58px; }
  .header-cta { font-size:10px;padding-inline:10px; }
  .resource-explorer,.tailored-diagram,.egp-film__player { box-shadow:0 1px 0 #ffffff24 inset,0 12px 24px #02051644; }
}
html[data-motion="reduced"] { scroll-behavior: auto; }
.manifesto { padding-block: 100px; }
.manifesto-inner { padding-block: 0; align-items: center; }
.section-label { font-size: 11px; color: #aebed7; }
.manifesto .section-label { color: #60748f; }
.manifesto-copy { color: #61718b; }
.hero-bottom p { font-size: 14px; color: #bccae0; }
.hero-aside p { font-size: 17px; }
.scope-note { font-size: 12px; line-height: 1.75; color: #acbdd7; }
.resource-explorer > * { min-width: 0; }
.resource-tabs { padding: 18px; }
.resource-tabs button { padding: 18px 14px; min-height: 64px; gap: 14px; }
.resource-tabs button::before { display: none; }
.resource-index { flex-shrink: 0; color: #9eb5d5; }
.resource-tabs button[aria-selected="true"] .resource-index { color: #bfdcff; }
.resource-panel-copy p, .workflow-line p, .tailored-layout > div > p { font-size: 15px; }
.resource-panel ul { font-size: 14px; line-height: 1.8; }
.faq-list summary { min-height: 64px; align-items: center; font-size: 16px; color: #e1eafa; }
.faq-list details p { font-size: 15px; line-height: 1.8; }
.faq-list summary svg { flex-shrink: 0; }
.email-link { font-size: 13px; line-height: 1.65; min-height: 32px; display: flex; align-items: center; overflow-wrap: anywhere; }
.contact-ribbon { flex-wrap: wrap; justify-content: center; gap: 16px 48px; padding: 24px; }
.contact-ribbon span:last-child { display: none; }
.site-footer { flex-wrap: wrap; }
.site-footer > div { row-gap: 10px; }
.site-footer > div > a { font-size: 12px; min-height: 36px; display: inline-flex; align-items: center; }
.site-footer > p { font-size: 12px; }
.site-footer > span { font-size: 11px; color: #93a8c6; }
.motion-preference { min-height: 44px; }
.hero, #recursos, #seu-jeito, #desafio, #demonstracao { scroll-margin-top: 28px; }
[data-game-question], [data-game-result] { scroll-margin-top: 130px; }
.game-option { line-height: 1.65; }
.game-note { font-size: 12px; line-height: 1.7; color: #526985; }
dialog label { font-size: 13px; }
dialog > p, .form-note { font-size: 12px; line-height: 1.7; }
.dialog-close { width: 44px; height: 44px; top: 8px; right: 8px; }
.field-error { font-size: 12px; line-height: 1.5; }
#form-status { font-size: 13px; line-height: 1.7; }
#whatsapp-fallback { min-height: 44px; }
.egp-film__btn, .egp-film__tab { min-height: 44px; }
.egp-film__tab { color: #516d94; }
.egp-film__foot { color: #637998; font-size: 10px; line-height: 1.6; }
.egp-film__hint { color: #637998; opacity: 1; }
.blog-filters button { font-size: 12px; min-height: 44px; }
.blog-toolbar > span, .post-read { font-size: 12px; }
.post-category { font-size: 12px; }
.post-card p { font-size: 15px; }
.article-meta { font-size: 12px; }
.article-toc nav a { min-height: 44px; display: flex; align-items: center; font-size: 13px; }
.article-source, .article-editorial { font-size: 13px; }
.related-articles a > span { font-size: 12px; }
.blog-body .section-label { color: #526e92; }
.blog-body .site-footer .motion-preference { color: #d4e5ff; }

@media (max-width: 1050px) {
  .menu-toggle { flex: 0 0 44px; width: 44px; height: 44px; align-items: center; }
  .resource-tabs { padding: 14px; }
  .resource-tabs button { gap: 9px; }
}
@media (max-width: 800px) {
  .manifesto { padding-block: 70px; }
  .manifesto-inner { padding-block: 0; }
  .hero-aside p { font-size: 14px; }
  .resource-tabs button { padding: 14px 10px; font-size: 13px; }
  .resource-panel-copy p, .workflow-line p, .tailored-layout > div > p { font-size: 14px; }
  .resource-panel ul { font-size: 13px; }
}
@media (max-width: 760px) {
  /* Mesmo tamanho em todas as cenas: a página não salta durante a reprodução. */
  .egp-film[data-film-scene] .egp-film__stage { height: 760px; }
  .egp-film .s4 { grid-template-rows: auto 15px auto 15px auto 15px minmax(0, 1fr); }
  .egp-film .s4-log li:not(.s4-new) { display: none; }
  .egp-film .s4-diary { justify-content: flex-start; }
  .egp-film .s4-log .s4-new { padding-bottom: 0; }
  .egp-film__ctrl .egp-film__btn { min-height: 44px; }
  .egp-film__tab { min-height: 46px; }
  .egp-film__hint { display: none; }
  dialog input, dialog textarea, .blog-toolbar input { font-size: 16px !important; }
  .blog-body .header-cta { font-size: 10px; }
}
@media (max-width: 540px) {
  .header-inner { gap: 12px; }
  .header-cta { font-size: 10.5px; padding: 8px 12px; min-height: 44px; gap: 8px; white-space: nowrap; }
  .header-cta svg { width: 12px; height: 12px; }
  .menu-toggle { flex: 0 0 44px; width: 44px; height: 44px; align-items: center; }
  .mobile-nav a { min-height: 44px; display: flex; align-items: center; }
  .mobile-nav:not([hidden]) { gap: 5px; padding-block: 14px; max-height: calc(100dvh - 76px); overflow-y: auto; }
  .hero-aside p { font-size: 13px; }
  .hero-aside .button { font-size: 12px; min-height: 44px; gap: 12px; }
  .hero-bottom p { font-size: 12px; max-width: 245px; line-height: 1.8; }
  .hero-bottom .down-arrow { width: 44px; height: 44px; }
  .section-label, .tailored > .section-label, .manifesto .section-label, .section-heading > .section-label { font-size: 10px; }
  .sector-strip { gap: 18px; }
  .sector-strip p { font-size: 11px; line-height: 1.7; }
  .sector-strip > div { gap: 8px; }
  .sector-strip > div > span { font-size: 12px; padding: 7px 12px; }
  .manifesto { padding-block: 55px; }
  .resource-tabs { gap: 0 10px; padding: 12px; }
  .resource-tabs button { font-size: 13px; min-height: 68px; padding: 12px 10px; }
  .resource-tabs .resource-index { display: none; }
  .resource-tabs button > span { min-width: 0; }
  .resource-panel { padding: 22px 20px 28px; }
  .scope-note { font-size: 11px; }
  .tailored .text-link { font-size: 13px; line-height: 1.7; gap: 15px; }
  .faq-list summary { font-size: 15px; gap: 16px; }
  .faq-list details p { font-size: 14px; }
  .contact-main .button { min-height: 48px; }
  .email-link { font-size: 13px; min-height: 38px; }
  .contact-secondary { min-height: 44px; }
  .site-footer > div { gap: 8px 20px; }
  .site-footer > p { font-size: 11px; }
  .site-footer > span { font-size: 10px; }
  .game-option { font-size: 14px; padding: 13px 12px; }
  .game-option[aria-pressed="true"] { padding: 12px 11px; }
  .game-feedback { font-size: 14px; line-height: 1.75; }
  .game-note { font-size: 11px; }
  .blog-filters button { font-size: 12px; padding-inline: 13px; }
  .blog-toolbar label { font-size: 13px; }
  .post-card p { font-size: 14px; }
  .article-meta { font-size: 11px; }
  .article-toc nav a { font-size: 13px; }
  .blog-body .header-cta { font-size: 10px; min-height: 44px; padding: 8px 10px; }
}
@media (max-width: 380px) {
  .hero-aside { display: grid; grid-template-columns: 1fr; gap: 17px; }
  .hero-aside p { max-width: none; font-size: 14px; }
  .hero-aside .button { justify-self: start; padding-inline: 18px; }
  .resource-tabs button { font-size: 12px; }
  .egp-film[data-film-scene] .egp-film__stage { height: 820px; }
  .blog-body .brand img { width: 78px; }
  .blog-body .header-inner { gap: 9px; }
}

/* Native Wix contact form */
#native-fields{display:grid;gap:16px}#contact-form[hidden],#contact-success[hidden]{display:none}#contact-form button[disabled]{cursor:wait;opacity:.65}#form-status:not(:empty){margin:12px 0;color:#8c3441}.form-direct-contact{display:block;margin-top:22px;font-size:13px;text-decoration:underline;text-underline-offset:4px}.contact-success{padding:24px;border:1px solid #ccd7ec;border-radius:18px;background:#f1f5fb;color:#152643;margin-top:24px;box-shadow:0 10px 30px #1327490a}.contact-success h3{font-size:25px;margin-bottom:12px}.contact-success p{font-size:15px;line-height:1.65}#native-fields label{margin:0}#native-fields input,#native-fields textarea,#native-fields select{width:100%;min-width:0;font-size:16px}#native-fields [aria-invalid=true]{border-color:#ab4553}#contact-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}#native-fields .field-error:empty{display:none}

@media(min-width:640px){#contact-dialog{width:min(640px,calc(100vw - 48px))}#native-fields{grid-template-columns:1fr 1fr}#native-fields>label:first-child,#native-fields>label:has(textarea){grid-column:1/-1}}
