/* Raw site header + footer, and full-width Raw pages. */
:is(body.rpt-rawpage, body:has(.rawp)) { background: #0B0B0C; }
body.rpt-chrome, :is(body.rpt-rawpage, body:has(.rawp)) { overflow-x: clip; }

/* Hide the theme's own header, footer and skip-link target wrappers when the Raw header is on. */
body.rpt-chrome #site-header, body.rpt-chrome .site-header, body.rpt-chrome #masthead,
body.rpt-chrome #site-footer, body.rpt-chrome .site-footer, body.rpt-chrome #colophon,
body.rpt-chrome .wp-site-blocks > header.wp-block-template-part, body.rpt-chrome .wp-site-blocks > footer.wp-block-template-part,
body.rpt-chrome .ast-above-header-wrap, body.rpt-chrome .ast-primary-header-bar,
body.rpt-chrome [role="banner"]:not(.rpt-hdr), body.rpt-chrome [role="contentinfo"]:not(.rpt-ftr),
body.rpt-chrome header:not(.rpt-hdr):not(.rawp header):not(article header):not(.rpt-q header),
body.rpt-chrome footer:not(.rpt-ftr):not(.rawp footer):not(article footer),
body.rpt-chrome .site-branding, body.rpt-chrome .wp-block-site-title, body.rpt-chrome .site-info, body.rpt-chrome .powered-by-wordpress { display: none !important; }
body.rpt-chrome, :is(body.rpt-rawpage, body:has(.rawp)) { margin: 0 !important; padding-top: 0 !important; }
body.rpt-chrome #page, body.rpt-chrome .site { padding-top: 0 !important; margin-top: 0 !important; }

/* Raw pages: no theme page title, no theme content width or padding. */
:is(body.rpt-rawpage, body:has(.rawp)) .page-header, :is(body.rpt-rawpage, body:has(.rawp)) .entry-header, :is(body.rpt-rawpage, body:has(.rawp)) .wp-block-post-title, :is(body.rpt-rawpage, body:has(.rawp)) h1.entry-title,
:is(body.rpt-rawpage, body:has(.rawp)) .elementor-page-title, :is(body.rpt-rawpage, body:has(.rawp)) .page-title, :is(body.rpt-rawpage, body:has(.rawp)) .entry-title,
:is(body.rpt-rawpage, body:has(.rawp)) h1:not(.rawp h1):not(.rpt-hdr h1),
:is(body.rpt-rawpage, body:has(.rawp)) :is(div, header, section):has(> h1:not(.rawp h1)):not(:has(.rawp)) { display: none !important; }
:is(body.rpt-rawpage, body:has(.rawp)) .site-main, :is(body.rpt-rawpage, body:has(.rawp)) .page-content, :is(body.rpt-rawpage, body:has(.rawp)) .entry-content, :is(body.rpt-rawpage, body:has(.rawp)) main, :is(body.rpt-rawpage, body:has(.rawp)) article,
:is(body.rpt-rawpage, body:has(.rawp)) .site-content, :is(body.rpt-rawpage, body:has(.rawp)) .content-area, :is(body.rpt-rawpage, body:has(.rawp)) .ast-container, :is(body.rpt-rawpage, body:has(.rawp)) .wp-block-post-content {
  max-width: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
:is(body.rpt-rawpage, body:has(.rawp)) .wp-block-post-content > *, :is(body.rpt-rawpage, body:has(.rawp)) .entry-content > * { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
:is(body.rpt-rawpage, body:has(.rawp)) .wp-site-blocks { padding: 0 !important; }
:is(body.rpt-rawpage, body:has(.rawp)) .wp-site-blocks .alignfull, :is(body.rpt-rawpage, body:has(.rawp)) .has-global-padding { margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
html:has(body.rpt-chrome), html:has(:is(body.rpt-rawpage, body:has(.rawp))), html:has(.rawp) { overflow-x: clip; }
.rawp { position: relative; width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; }

/* Raw page content basics */
.rawp { font-family: 'Archivo', system-ui, sans-serif; color: #F2F0EC; background: #0B0B0C; -webkit-font-smoothing: antialiased; line-height: 1.4; }
.rawp *, .rawp *::before, .rawp *::after { box-sizing: border-box; }
.rawp a { color: #F2F0EC; } .rawp a:hover { color: #FF4A4F; }
.rawp img { max-width: 100%; height: auto; }
.rawp h1, .rawp h2, .rawp h3 { color: inherit; letter-spacing: normal; }
.rawp table { border: 0; margin: 0; } .rawp table td, .rawp table th { background: transparent; }
.rawp p:empty { display: none; }
@keyframes rpbob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(6px); } }
.rawp .rp-bob { animation: rpbob 1.8s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) { .rawp .rp-bob { animation: none; } }
.rawp .cmp th, .rawp .cmp td { text-align: left; padding: 18px 16px; border-bottom: 1px solid #2A2A2D; vertical-align: top; line-height: 1.5; }
@media (max-width: 640px) { .rawp .cmp thead { display: none; } .rawp .cmp tr { display: block; padding: 14px 0; border-bottom: 1px solid #2A2A2D; } .rawp .cmp th, .rawp .cmp td { display: block; border: 0; padding: 4px 0; } }
.rawp .res th, .rawp .res td { text-align: left; padding: 16px 14px; border-bottom: 1px solid #2A2A2D; }
@media (max-width: 640px) { .rawp section > div { padding-left: 16px !important; padding-right: 16px !important; } }

/* Header */
.rpt-hdr { position: relative; z-index: 60; background: #0B0B0C; border-bottom: 1px solid #222224; font-family: 'Archivo', system-ui, sans-serif; }
.rpt-hdr__in { max-width: 1280px; margin: 0 auto; padding: 16px 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.rpt-hdr__brand { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.rpt-hdr__brand img { width: 52px; height: 52px; object-fit: contain; }
.rpt-hdr__brand span { font-family: var(--rpt-display); font-size: 22px; letter-spacing: .04em; line-height: 1; color: #F2F0EC; white-space: nowrap; }
.rpt-hdr__desk { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 22px; }
.rpt-hdr__link, .rpt-hdr__mlink, .rpt-hdr__join { font-size: 14px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; text-decoration: none; color: #F2F0EC; }
.rpt-hdr__link:hover, .rpt-hdr__link.is-current, .rpt-hdr__mlink.is-current { color: #FF4A4F; }
.rpt-hdr__join { background: #D7262B; color: #fff !important; padding: 12px 20px; border-radius: 2px; }
.rpt-hdr__join:hover { background: #B91C1C; }
.rpt-hdr__burger { display: none; width: 48px; height: 48px; align-items: center; justify-content: center; background: transparent; border: 1px solid #3A3A3E; border-radius: 2px; cursor: pointer; padding: 0; color: #F2F0EC; }
.rpt-hdr__burger:focus-visible, .rpt-hdr a:focus-visible { outline: 2px solid #FF4A4F; outline-offset: 2px; }
.rpt-hdr__i-close, .rpt-hdr.is-open .rpt-hdr__i-open { display: none; }
.rpt-hdr.is-open .rpt-hdr__i-close { display: block; }
.rpt-hdr__mob { border-top: 1px solid #222224; background: #0B0B0C; }
.rpt-hdr__mob[hidden] { display: none; }
.rpt-hdr__mlink { display: block; padding: 18px 24px; border-bottom: 1px solid #222224; font-size: 18px; font-weight: 700; }
.rpt-hdr__mjoin { padding: 20px 24px 24px; }
.rpt-hdr__mjoin .rpt-hdr__join { display: block; text-align: center; padding: 18px 20px; font-size: 16px; }
@media (max-width: 1100px) { .rpt-hdr__desk { display: none; } .rpt-hdr__burger { display: flex; } }
@media (max-width: 400px) { .rpt-hdr__brand span { font-size: 19px; } .rpt-hdr__brand img { width: 44px; height: 44px; } }

/* Footer */
.rpt-ftr { background: #0B0B0C; border-top: 1px solid #222224; font-family: 'Archivo', system-ui, sans-serif; color: #B8B6B1; font-size: 15px; line-height: 1.6; }
.rpt-ftr a { color: #B8B6B1; text-decoration: none; } .rpt-ftr a:hover { color: #FF4A4F; }
.rpt-ftr__in { max-width: 1280px; margin: 0 auto; padding: 56px 24px 40px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 40px; }
.rpt-ftr__col { flex: 1 1 220px; display: flex; flex-direction: column; gap: 8px; }
.rpt-ftr__brand { flex-basis: 280px; gap: 16px; }
.rpt-ftr__brand img { height: 56px; width: auto; align-self: flex-start; }
.rpt-ftr__brand strong, .rpt-ftr__col > strong { color: #F2F0EC; }
.rpt-ftr__col > strong { text-transform: uppercase; letter-spacing: .12em; font-size: 13px; }
.rpt-ftr__legal { max-width: 1280px; margin: 0 auto; padding: 20px 24px 40px; border-top: 1px solid #222224; font-size: 13px; color: #9A9893; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.rpt-ftr__legal a { color: #9A9893; }
body.rpt-has-mobilebar .rpt-ftr__legal { padding-bottom: 96px; }
