.md-cookie-banner[hidden] { display: none; }
.md-cookie-banner, .md-cookie-dialog { box-sizing: border-box; color: #180d35; background: #fff; border: 1px solid #d8cdea; border-radius: 20px; padding: 24px; font: 400 16px/1.6 var(--body, sans-serif); box-shadow: 0 12px 50px #180d3526; }
.md-cookie-banner { position: fixed; z-index: 10000; bottom: 20px; left: 50%; transform: translateX(-50%); width: min(1100px, calc(100% - 32px)); display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center; max-height: calc(100dvh - 40px); overflow: auto; }
.md-cookie-banner h2, .md-cookie-dialog h2 { color: #180d35; margin: 0 0 8px; font: 750 22px/1.3 var(--body, sans-serif); letter-spacing: normal; }
.md-cookie-banner p, .md-cookie-dialog p { color: #51485e; margin: 0; font-size: 15px; line-height: 1.6; }
.md-cookie-banner a, .md-cookie-dialog a { color: #5a00c9; text-decoration: underline; text-underline-offset: 3px; }
.md-cookie-actions { display: flex; gap: 10px; }
.md-cookie-actions button { color: #fff; background: #251044; border: 1px solid #251044; border-radius: 999px; padding: 12px 18px; font: 700 14px/1.3 var(--body, sans-serif); cursor: pointer; min-height: 44px; }
.md-cookie-actions button:hover { background: #4a187b; }
.md-cookie-actions button:focus-visible, .md-cookie-close:focus-visible, .md-cookie-manage:focus-visible { outline: 3px solid #b197fc; outline-offset: 4px; }
.md-cookie-dialog { width: min(600px, calc(100% - 32px)); max-height: calc(100dvh - 32px); }
.md-cookie-dialog::backdrop { background: #160b32a6; }
.md-cookie-dialog .md-cookie-actions { margin-top: 22px; }
.md-cookie-dialog .md-cookie-state { margin-top: 18px; font-weight: 700; }
.md-cookie-close { display: block; margin: 20px 0 0 auto; border: 0; padding: 8px; background: transparent; color: #251044; font: 650 15px var(--body, sans-serif); cursor: pointer; }
.md-cookie-manage { background: transparent; border: 0; color: inherit; padding: 0; font: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; min-height: 30px; }
.c-demo-note { padding: 12px 16px; margin: 0 0 20px; background: #f4efff; border-radius: 12px; color: #472b6a; font-size: 15px; }
.c-card, .c-consent { min-width: 0; }
.c-consent .c-note { display: block; overflow-wrap: anywhere; }
.c-consent .c-check { grid-template-columns: 24px minmax(0, 1fr); }
.immersif-v2 .scene-stat strong { font-size: clamp(2rem, 4vw, 3.6rem); letter-spacing: -.04em; }
.immersif-v2 .scene-stat > span { max-width: 220px; }
.visibility-faq { background: #10072c; color: #fff; padding: 80px 0; }
.visibility-faq .faq-heading h2, .visibility-faq .faq-list summary { color: #fff; }
.visibility-faq .faq-heading p, .visibility-faq .faq-list details p { color: #c9bedb; }
.visibility-faq .faq-list, .visibility-faq .faq-list details { border-color: #ffffff30; }
.visibility-faq .faq-list details p { font-size: 16px; }
.gt-bar .a, .gt-bar .b { flex: 1; width: 50%; }
.gt-gain p { margin: 0; padding-top: 12px; border-top: 1px solid #e4dcf0; color: #605773; font-size: 14px; }
@media (max-width: 900px) { .md-cookie-banner { grid-template-columns: 1fr; gap: 14px; } }
@media (max-width: 480px) { .md-cookie-banner, .md-cookie-dialog { padding: 18px; } .md-cookie-banner { bottom: 12px; } .md-cookie-actions { width: 100%; } .md-cookie-actions button { flex: 1; padding: 12px 10px; } }
