.analytics-notice { position: fixed; z-index: 30; right: 18px; bottom: max(18px, env(safe-area-inset-bottom)); width: min(350px, calc(100vw - 36px)); max-height: calc(100dvh - 36px - env(safe-area-inset-bottom)); overflow: auto; padding: 20px; background: #fff; border: 1px solid #d7dbd2; border-radius: 12px; box-shadow: 0 16px 40px rgba(21, 23, 19, .2); color: #151713; }
.analytics-notice[hidden], .analytics-choice-pill[hidden] { display: none; }
.analytics-notice__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.analytics-notice h2 { margin: 0; font-size: 20px; line-height: 1.15; letter-spacing: -.03em; }
.analytics-notice p { margin: 10px 0 0; font-size: 14px; line-height: 1.5; }
.analytics-notice a { color: #203fa8; text-decoration: underline; text-underline-offset: 2px; }
.analytics-notice__close { flex: 0 0 44px; width: 44px; min-height: 44px; margin: -10px -10px 0 0; padding: 0; border: 0; background: transparent; color: #151713; font: inherit; font-size: 25px; line-height: 1; cursor: pointer; }
.analytics-notice__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 16px; }
.analytics-notice__actions button, [data-analytics-preferences], .analytics-choice-pill { min-height: 44px; border: 1px solid currentColor; padding: 9px 13px; background: #fff; color: #151713; font: inherit; font-weight: 800; cursor: pointer; }
.analytics-notice__actions button:first-child { background: #315CFF; border-color: #315CFF; color: #fff; }
.analytics-choice-pill { position: fixed; z-index: 30; left: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: 80px; padding: 6px 8px; border-color: #315CFF; border-radius: 999px; box-shadow: 0 8px 22px rgba(21, 23, 19, .18); font-size: 12px; line-height: 1.1; }

footer [data-analytics-preferences] { min-height: 44px; background: transparent; color: inherit; }

.mobile-opportunities.is-cookie-suppressed { visibility: hidden; opacity: 0; pointer-events: none; }

.privacy-page { max-width: 780px; margin: 0 auto; padding: 88px 32px; }
.privacy-page h1 { margin: 0 0 28px; font-size: clamp(46px, 7vw, 82px); line-height: .95; letter-spacing: -.06em; text-transform: uppercase; }
.privacy-page h2 { margin: 42px 0 12px; font-size: 24px; }
.privacy-page p { max-width: 65ch; }

@media (max-width: 760px) {
  .analytics-notice { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: calc(100vw - 24px); padding: 18px; }
  .privacy-page { padding: 62px 18px; }
}
