/* Standard gbprof per accessibilità, privacy e contenuti esterni. */

.gbprof-skip-link {
  position: fixed;
  z-index: 2147483647;
  top: .75rem;
  left: .75rem;
  max-width: calc(100vw - 1.5rem);
  padding: .75rem 1rem;
  color: #111 !important;
  background: #fff !important;
  border: 3px solid #111 !important;
  border-radius: .45rem;
  font: 700 1rem/1.25 system-ui, sans-serif;
  text-decoration: none;
  transform: translateY(-160%);
  transition: transform .15s ease;
}

.gbprof-skip-link:focus {
  transform: translateY(0);
}

:where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
  outline: 3px solid #ffbf47 !important;
  outline-offset: 3px !important;
}

:where(main, [role="main"], section, article, h1, h2, h3, [id]) {
  scroll-margin-top: 6rem;
}

:where(p, li, dd, dt, blockquote, figcaption, th, td) {
  overflow-wrap: anywhere;
}

.gbprof-external-video {
  display: grid;
  place-items: center;
  min-height: min(24rem, 56.25vw);
  padding: clamp(1rem, 4vw, 2rem);
  color: #f8f4e9;
  text-align: center;
  background: linear-gradient(145deg, #172431, #263d4d);
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: .75rem;
}

.gbprof-external-video__content {
  width: min(34rem, 100%);
}

.gbprof-external-video strong,
.gbprof-external-video span {
  display: block;
}

.gbprof-external-video span {
  margin: .65rem 0 1rem;
  color: #e5e9ec;
  font-size: .95rem;
  line-height: 1.55;
}

.gbprof-external-video button,
.gbprof-data-reset {
  min-width: 44px;
  min-height: 44px;
  padding: .7rem 1rem;
  color: #111;
  background: #ffcf70;
  border: 2px solid currentColor;
  border-radius: .5rem;
  font: 700 .95rem/1.2 system-ui, sans-serif;
  cursor: pointer;
}

.gbprof-compliance-footer {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: .65rem 1rem;
  width: 100%;
  margin: 0;
  padding: 1.1rem max(1rem, env(safe-area-inset-right)) calc(1.1rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
  color: #f5f5f5;
  background: #172431;
  border-top: 1px solid rgba(255, 255, 255, .24);
  font: 500 .9rem/1.45 system-ui, sans-serif;
}

.gbprof-compliance-footer a {
  color: #fff !important;
  text-decoration: underline;
  text-underline-offset: .2em;
}

.gbprof-compliance-footer--embedded {
  margin-top: 1rem;
  padding: .75rem 0 0;
  background: transparent;
  border-top-color: rgba(255, 255, 255, .22);
}

.gbprof-compliance-footer .gbprof-data-reset {
  color: #fff;
  background: transparent;
  border-color: rgba(255, 255, 255, .65);
  font-size: .85rem;
}

.gbprof-reset-status {
  flex-basis: 100%;
  margin: 0;
  text-align: center;
}

@media (pointer: coarse) {
  :where(button, input, select, summary, [role="button"]) {
    min-height: 44px;
  }
}

@media (max-width: 36rem) {
  .gbprof-compliance-footer {
    align-items: stretch;
    flex-direction: column;
    text-align: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto !important;
  }

  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

@media print {
  .gbprof-skip-link,
  .gbprof-compliance-footer,
  .gbprof-external-video button {
    display: none !important;
  }
}
