/* License: See ./LICENSE.md */
/*
Theme Name: RDA Theme
Description: Accessible block theme for the official RDA website.
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: rda-theme
*/

@font-face { font-display: swap; font-family: "e-Ukraine"; font-style: normal; font-weight: 300; src: url("assets/fonts/e-Ukraine-Light.otf") format("opentype"); }
@font-face { font-display: swap; font-family: "e-Ukraine"; font-style: normal; font-weight: 400; src: url("assets/fonts/e-Ukraine-Regular.otf") format("opentype"); }
@font-face { font-display: swap; font-family: "e-Ukraine"; font-style: normal; font-weight: 500; src: url("assets/fonts/e-Ukraine-Medium.otf") format("opentype"); }
@font-face { font-display: swap; font-family: "e-Ukraine"; font-style: normal; font-weight: 700; src: url("assets/fonts/e-Ukraine-Bold.otf") format("opentype"); }
@font-face { font-display: swap; font-family: "e-Ukraine Head"; font-style: normal; font-weight: 400; src: url("assets/fonts/e-UkraineHead-Regular.otf") format("opentype"); }

:root { --rda-focus: #0057b8; --rda-touch-target: 2.75rem; --rda-header-background: #d8f5f0; --rda-header-text: #000; --rda-header-emblem: #000; }
html { scroll-behavior: smooth; }
body { min-width: 0; }
/* Gutenberg's relative `bolder` can resolve from the 300 body face to 400. */
b, strong { font-weight: 700 !important; }
/* Keep editor-created lists readable without the large inherited block gap. */
ol.wp-block-list, ul.wp-block-list { line-height: 1.5; margin-block: 1rem; padding-left: 1.5em; }
.wp-block-list > li { margin-block: .5rem; }
.wp-block-list > li > p { margin-block: 0; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
a { text-decoration-thickness: .08em; text-underline-offset: .18em; }
:where(a, button, input, select, textarea, [tabindex]):focus-visible { outline: .1875rem solid var(--rda-focus); outline-offset: .1875rem; }
.screen-reader-text { border: 0; clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; width: 1px; }
html.rda-accessible { font-size: 125% !important; }
html.rda-accessible body { background: #fff; color: #000; font-weight: 500; }
html.rda-accessible a { text-decoration-thickness: .12em; text-underline-offset: .22em; }
#wp-skip-link { background: #000; color: #fff; left: .75rem; padding: .75rem 1rem; position: fixed; text-decoration: none; top: .75rem; transform: translateY(-200%); z-index: 1000; }
#wp-skip-link:focus { transform: translateY(0); }
#main-content:focus { outline: none; }

/* Header: utility, brand, navigation. */
.rda-site-header { background: var(--rda-header-background); color: var(--rda-header-text); position: relative; }
.wp-site-blocks { padding-inline: 0 !important; }
.rda-header-container { box-sizing: border-box; margin-inline: auto; max-width: none; padding-inline: clamp(1rem, 5vw, 7rem); width: 100%; }
.rda-state-band { display: flex; height: .375rem; }
.rda-state-band span:first-child { background: #0057b8; flex: 1; }
.rda-state-band span:last-child { background: #ffb800; flex: 1; }
.rda-header-utility { background: transparent; border: 0; }
.rda-header-utility__inner { align-items: center; display: grid; gap: .25rem .75rem; grid-template-columns: 1fr auto; min-height: 2.75rem; padding-block: 0; }
.rda-header-utility__actions { align-items: center; display: contents; }
.rda-diia-link, .rda-accessibility-link { align-items: center; display: inline-flex; font-size: .8125rem; gap: .35rem; min-height: var(--rda-touch-target); text-decoration: none; }
.rda-diia-link { flex: 0 0 var(--rda-touch-target); height: var(--rda-touch-target); justify-content: center; width: var(--rda-touch-target); }
.rda-diia-link img { display: block; height: 100%; width: 100%; }
.rda-accessibility-link { align-items: center; background: transparent !important; border: 0 !important; box-shadow: none !important; color: inherit !important; cursor: pointer; font: inherit; justify-self: end; line-height: 1.1; padding: .25rem !important; text-align: left; }
.rda-accessibility-link svg { flex: 0 0 auto; height: 1.35rem; width: 1.35rem; }
.rda-accessibility-link__sizes { align-items: baseline; display: inline-flex; gap: .2rem; margin-left: .15rem; }
.rda-accessibility-link__sizes b:first-child { font-size: .8rem; }
.rda-accessibility-link__sizes b:last-child { font-size: 1.1rem; }
.rda-accessibility-link:focus-visible { outline: .1875rem solid #0057b8 !important; outline-offset: .25rem; text-decoration: none; }
.rda-search { grid-column: 1 / -1; max-width: 24rem; }
.rda-search .wp-block-search__inside-wrapper { background: transparent; border: 0; border-bottom: 1px solid color-mix(in srgb, var(--rda-header-text) 45%, transparent); box-sizing: border-box; height: 2.75rem; }
.rda-search .wp-block-search__input { background: transparent; border: 0; box-sizing: border-box; color: var(--rda-header-text); min-height: 0; min-width: 0; padding-inline: .75rem; }
.rda-search .wp-block-search__input::placeholder { color: var(--rda-header-text); opacity: 1; }
.rda-search .wp-block-search__button { align-items: center; background: #000; border: 0; border-radius: .75rem; box-sizing: border-box; color: #fff; display: inline-flex; flex: 0 0 var(--rda-touch-target); height: var(--rda-touch-target); justify-content: center; margin: 0; min-height: 0; padding: 0; width: var(--rda-touch-target); }
.rda-search .wp-block-search__input:focus, .rda-search .wp-block-search__input:focus-visible { box-shadow: none; outline: 0; }
.rda-search .wp-block-search__inside-wrapper:focus-within { border-bottom: 2px solid #0057b8; }
.rda-brand-row { height: 7.75rem; }
.rda-brand-row .rda-header-container { align-items: center; display: flex; height: 7.75rem; }
.rda-brand { align-items: center; color: inherit; display: inline-flex; gap: 1.25rem; text-decoration: none; }
.rda-brand__emblem { background: var(--rda-header-emblem); display: block; flex: 0 0 auto; height: 56px; mask: url("assets/branding/ukraine-small-coat-of-arms.svg") center / contain no-repeat; -webkit-mask: url("assets/branding/ukraine-small-coat-of-arms.svg") center / contain no-repeat; width: 44px; }
.rda-brand__text { display: grid; gap: .2rem; }
.rda-brand__name { font-family: "e-Ukraine Head", "e-Ukraine", system-ui, sans-serif; font-size: clamp(1.5rem, 2.4vw, 2.25rem); font-weight: 400; letter-spacing: -.025em; line-height: 1.04; }
.rda-navigation-row { border: 0; }
.rda-primary-navigation { margin-block: 0 !important; min-height: 3.25rem; padding-block: 0; }
.rda-primary-navigation .wp-block-navigation__container { min-height: 3.25rem; }
.rda-primary-navigation .wp-block-navigation-item__content { align-items: center; box-sizing: border-box; display: inline-flex; font-size: .9375rem; min-height: 3.25rem; padding-inline: .7rem; text-decoration: none; }
.rda-primary-navigation .wp-block-navigation-item__content:hover { background: rgba(255, 255, 255, .35); color: inherit; }
.rda-primary-navigation .current-menu-item > .wp-block-navigation-item__content, .rda-primary-navigation .current-menu-item > .wp-block-navigation-item__content:hover { border-bottom: .1875rem solid #0057b8; }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--rda-header-background); color: var(--rda-header-text); padding: 1.25rem; }

@media (min-width: 48rem) {
  /* WordPress renders a submenu as a button plus a sibling arrow. Make that
     pair one padded hit area, matching the text-only navigation links. */
  .rda-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child { padding-inline: .7rem; }
  .rda-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-item__content { padding-inline: 0; }
  .rda-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation__submenu-icon { margin-left: .5rem; margin-right: 0; }
  .rda-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child:hover { background: rgba(255, 255, 255, .35); }
  .rda-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item.has-child > .wp-block-navigation-item__content:hover { background: transparent; }
  .rda-header-utility { left: 0; position: absolute; right: 0; top: .25rem; z-index: 2; }
  .rda-header-utility__inner { display: flex; gap: 1.25rem; justify-content: flex-end; min-height: 0; padding-top: 1.25rem; }
  .rda-header-utility__actions { align-items: center; display: flex; gap: 1.25rem; }
  .rda-diia-link { order: 2; }
  .rda-search { max-width: 17.5rem; order: -1; position: absolute; right: 1.5rem; top: 5rem; width: 17.5rem; }
  .rda-search .wp-block-search__inside-wrapper { background: transparent; }
  .rda-search .wp-block-search__input { background: transparent; font-size: .9375rem; min-width: 0; }
  .rda-accessibility-link { order: 1; white-space: nowrap; }
  .rda-accessibility-link::before { content: none; }
  .rda-brand-row, .rda-brand-row .rda-header-container { height: 7.75rem; }
  .rda-brand__text { max-width: min(44vw, 42rem); }
  /* Enlarged accessible text needs a real utility row, not an overlay. */
  html.rda-accessible .rda-header-utility { position: static; }
  html.rda-accessible .rda-header-utility__inner { flex-wrap: wrap; min-height: 3.5rem; padding-top: .5rem; }
  html.rda-accessible .rda-brand-row, html.rda-accessible .rda-brand-row .rda-header-container { height: auto; min-height: 8.5rem; }
  html.rda-accessible .rda-search { max-width: 18rem; position: absolute; right: 1.5rem; top: 6.8rem; width: 18rem; }
  html.rda-accessible .rda-search .wp-block-search__inside-wrapper { background: transparent; border-bottom: 1px solid var(--rda-header-text); }
}

@media (max-width: 47.999rem) {
  /* The global styles padding makes mobile sections look artificially narrow. */
  html, body { max-width: 100%; overflow-x: clip; }
  body { padding-inline: 0 !important; }
  .wp-site-blocks { max-width: 100vw; width: 100vw; }
  .rda-site-header { margin-inline: 0; max-width: none; width: 100%; }
  .rda-header-container, .rda-breadcrumbs, .wp-site-blocks > main { padding-inline: 1rem; }
  /* Keep Diia aligned above the search control, at the right edge of the utility area. */
  .rda-diia-link { grid-column: 2; grid-row: 1; justify-self: end; }
  /* Keep the icon, wrapping label and arrow in predictable columns on phones. */
  .rda-quick-links-navigation .wp-block-navigation-item__content { column-gap: .625rem; display: grid; grid-template-columns: 2.5rem minmax(0, 1fr) auto; justify-content: initial; min-width: 0; overflow-wrap: anywhere; padding: .75rem; }
  .rda-quick-links-navigation .wp-block-navigation-item__content::before { flex-basis: auto; height: 2.5rem; margin-right: 0; width: 2.5rem; }
  .rda-quick-links-navigation .wp-block-navigation-item__content::after { justify-self: end; margin-left: 0; }
  .rda-brand-row, .rda-brand-row .rda-header-container { height: auto; min-height: 6.25rem; }
  .rda-brand-row .rda-header-container { padding-block: .625rem; }
  .rda-brand { gap: .75rem; }
  .rda-brand__emblem { height: 46px; width: 36px; }
  .rda-brand__name { font-size: 25px; line-height: 1.1; }
  .rda-primary-navigation .wp-block-navigation__responsive-container-open { align-items: center; justify-content: center; min-height: 2.75rem; min-width: 2.75rem; padding: .5rem; }
  .rda-home, .rda-page { padding-top: .5rem; }
  .rda-home-introduction { padding-block: 1.5rem; }
  .rda-home-introduction h1 { font-size: 30px !important; line-height: 1.12; margin-block: 1rem; }
  .rda-home-introduction .has-large-font-size { font-size: 19px !important; line-height: 1.45; margin-top: 1rem; }
  .rda-home-section, .rda-home-next-step { padding-block: 1.75rem; }
  .rda-section-heading { padding-bottom: .5rem; }
  .rda-section-heading h2 { font-size: 30px; }
}

/* A phone in landscape is wide enough for the desktop breakpoint, but not
   tall enough for its overlaid utility controls. Keep the mobile hierarchy. */
@media (orientation: landscape) and (max-height: 32rem) and (max-width: 63.999rem) {
  .rda-header-utility { position: static; }
  .rda-header-utility__inner { align-items: center; display: grid; gap: .25rem .75rem; grid-template-columns: minmax(0, 1fr) var(--rda-touch-target); min-height: 2.75rem; padding-block: .5rem; }
  .rda-header-utility__actions { display: contents; }
  .rda-diia-link { grid-column: 2; grid-row: 1; justify-self: end; }
  .rda-accessibility-link { grid-column: 1; grid-row: 1; justify-self: start; white-space: normal; }
  .rda-search { grid-column: 1 / -1; grid-row: 2; max-width: none; order: initial; position: static; right: auto; top: auto; width: 100%; }
  .rda-brand-row, .rda-brand-row .rda-header-container { height: auto; min-height: 5rem; }
  .rda-brand-row .rda-header-container { padding-block: .5rem; }
  .rda-brand { gap: .75rem; }
  .rda-brand__emblem { height: 46px; width: 36px; }
  .rda-brand__name { font-size: clamp(1.35rem, 4vw, 2rem); line-height: 1.08; }
}

/* Prevent the utility controls from forcing horizontal scrolling at high text sizes. */
@media (max-width: 23rem) {
  .rda-header-utility__inner { grid-template-columns: minmax(0, 1fr) var(--rda-touch-target); }
  .rda-accessibility-link { justify-self: start; max-width: 100%; min-width: 0; }
}

/* Breadcrumbs. */
.rda-breadcrumbs { box-sizing: border-box; margin: 0 auto; max-width: none; padding: .625rem clamp(1rem, 5vw, 7rem); width: 100%; }
.rda-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .35rem; list-style: none; margin: 0; padding: 0; }
.rda-breadcrumbs li { color: #5e646a; font-size: .8125rem; }
.rda-breadcrumbs li + li::before { color: #5e646a; content: "/"; margin-right: .35rem; }
.rda-breadcrumbs [aria-current="page"] { color: #000; }

/* Homepage. */
.wp-site-blocks > main { box-sizing: border-box; max-width: none !important; padding-inline: clamp(1rem, 5vw, 7rem); width: 100%; }
.wp-site-blocks > main.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) { max-width: none !important; }
.rda-home, .rda-page { padding-block: 1rem 0; }
.rda-home { max-width: none !important; width: 100%; }
.rda-home > .wp-block-group, .rda-home > .rda-home-editorial { box-sizing: border-box; max-width: none !important; width: 100%; }
.rda-home-introduction { background: #e7eef3 url("assets/images/hero-backgrounds/hero-care-native-wide.jpg") center / 100% 100% no-repeat; border-left: .375rem solid #ffb800; padding-block: 2.5rem; }
.rda-eyebrow { font-size: .8125rem; letter-spacing: .06em; margin: 0 0 .75rem; text-transform: uppercase; }
.rda-home-introduction .wp-block-heading { max-width: 18ch; }
.rda-home-introduction .has-large-font-size { font-size: 1.125rem !important; line-height: 1.5; margin-bottom: 0; max-width: 52ch; }
.rda-home-section, .rda-home-next-step { padding-block: 2.5rem; }
.rda-section-heading { align-items: baseline; border-bottom: 1px solid #000; gap: .75rem; padding-bottom: .75rem; }
.rda-section-heading h2, .rda-section-heading p { margin: 0; }
.rda-section-heading p a { align-items: center; display: inline-flex; font-size: .8125rem; min-height: var(--rda-touch-target); }
.rda-quick-links { border-block: 1px solid #b8c2cc; }
.rda-quick-links-navigation { margin-top: 1rem; }
.rda-quick-links-navigation .wp-block-navigation__container { display: grid; gap: .75rem; width: 100%; }
.rda-quick-links-navigation .wp-block-navigation-item { width: 100%; }
.rda-quick-links-navigation .wp-block-navigation-item__content { align-items: center; background: #f2f2f2; border: 1px solid #b8c2cc; box-sizing: border-box; display: flex; font-size: 1.125rem; justify-content: space-between; min-height: 5.5rem; padding: 1rem; text-decoration: none; width: 100%; }
.rda-quick-links-navigation .wp-block-navigation-item__content::before { background: center / contain no-repeat; content: ""; flex: 0 0 4rem; height: 4rem; margin-right: 1rem; }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(1) .wp-block-navigation-item__content::before { background-image: url("assets/icons/quick-access/01-zahyst-prav-ditey.svg"); }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(2) .wp-block-navigation-item__content::before { background-image: url("assets/icons/quick-access/02-usynovlennia.svg"); }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(3) .wp-block-navigation-item__content::before { background-image: url("assets/icons/quick-access/03-opika-pikluvannia.svg"); }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(4) .wp-block-navigation-item__content::before { background-image: url("assets/icons/quick-access/04-simeyni-formy-vykhovannia.svg"); }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(5) .wp-block-navigation-item__content::before { background-image: url("assets/icons/quick-access/05-novyny.svg"); }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(6) .wp-block-navigation-item__content::before { background-image: url("assets/icons/quick-access/06-dokumenty.svg"); }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(7) .wp-block-navigation-item__content::before { background-image: url("assets/icons/quick-access/07-kontakty.svg"); }
.rda-quick-links-navigation .wp-block-navigation-item__content::after { content: "→"; font-size: 1.5rem; margin-left: auto; }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(1) .wp-block-navigation-item__content { background-color: #eaf6ff; }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(2) .wp-block-navigation-item__content { background-color: #effcf4; }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(3) .wp-block-navigation-item__content { background-color: #fff1e8; }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(4) .wp-block-navigation-item__content { background-color: #f3efff; }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(5) .wp-block-navigation-item__content { background-color: #fff1f4; }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(6) .wp-block-navigation-item__content { background-color: #edf7ff; }
.rda-quick-links-navigation .wp-block-navigation-item:nth-child(7) .wp-block-navigation-item__content { background-color: #effcf4; }
.rda-quick-links-navigation .wp-block-navigation-item__content:hover { border-color: #000; filter: brightness(.98); }
.rda-home-editorial { display: grid; gap: 1.5rem; }
.rda-editorial-section { min-width: 0; }
.rda-content-list .wp-block-post-template { display: grid; gap: 0; margin: 0; }
.rda-list-item { border-bottom: 1px solid #b8c2cc; padding: 1rem 0; }
.rda-list-item > * { margin-block: 0; }
.rda-list-item > * + * { margin-top: .35rem; }
.rda-list-item .wp-block-post-title { font-size: 1.25rem; line-height: 1.25; }
.rda-entry-date { color: #5e646a; font-size: .8125rem; }
.rda-home-editorial .rda-editorial-section:first-child .rda-list-item:first-child { background: #e7eef3; border-top: .25rem solid #ffb800; margin-top: 1rem; padding: 1.25rem; }
.rda-home-editorial .rda-editorial-section:last-child { background: transparent; border: 0; color: #000; padding-block: 2.5rem; }
.rda-home-editorial .rda-editorial-section:last-child .rda-section-heading { border-color: #000; }
.rda-home-editorial .rda-editorial-section:last-child a { color: #000; }
.rda-home-editorial .rda-editorial-section:last-child .wp-block-post-template { gap: .75rem; margin-top: 1rem; }
.rda-home-editorial .rda-editorial-section:last-child .rda-list-item { background: #eaf7f5; border-bottom: 1px solid #b7d8d3; border-top: .375rem solid #71bcb2; padding: 1.25rem; }
.rda-home-editorial .rda-editorial-section:last-child .rda-entry-date { color: #496865; }
.rda-home-empty-state { background: #f2f2f2; margin: 1rem 0 0; padding: 1rem; }
.rda-home-editorial .rda-editorial-section:last-child .rda-home-empty-state { background: #eaf7f5; color: #000; }
.rda-document-entry { background: #e7eef3; border-left: .375rem solid #0057b8; margin-top: 2.5rem; padding: 1.5rem; }
.rda-document-entry > :last-child, .rda-home-next-step > :last-child { margin-bottom: 0; }
.rda-home-next-step { border-top: 1px solid #b8c2cc; padding-bottom: 2.5rem; }
.rda-page { max-width: none; padding-bottom: 3rem; }
.rda-page > .wp-block-post-title { margin-bottom: 1.5rem; }
.rda-page .wp-block-post-content > :first-child { margin-top: 0; }
.is-style-rda-first-line-indent { text-indent: 1.25em; }
.rda-not-found .wp-block-search { max-width: 28rem; }

/* Shared archive and single presentation. */
.rda-news-archive, .rda-announcement-archive, .rda-document-archive, .rda-department-archive, .rda-official-archive, .rda-single-news, .rda-single-announcement, .rda-single-document, .rda-single-department, .rda-single-official { padding-block: 1.5rem 0; }
.rda-back-link { font-size: .8125rem; margin: 0 0 1rem; }
.rda-news-list, .rda-announcement-list, .rda-document-list, .rda-department-list, .rda-official-list { margin-top: 1.5rem; }
.rda-news-list .wp-block-post-template, .rda-announcement-list .wp-block-post-template, .rda-document-list .wp-block-post-template, .rda-department-list .wp-block-post-template, .rda-official-list .wp-block-post-template { display: grid; gap: 0; margin: 0; }
.rda-news-list-item, .rda-announcement-list-item, .rda-document-list-item, .rda-department-list-item, .rda-official-list-item { border-top: 1px solid #b8c2cc; padding-block: 1.25rem; }
.rda-news-list-item > *, .rda-announcement-list-item > *, .rda-document-list-item > *, .rda-department-list-item > *, .rda-official-list-item > * { margin-block: 0; }
.rda-news-list-item > * + *, .rda-announcement-list-item > * + *, .rda-document-list-item > * + *, .rda-department-list-item > * + *, .rda-official-list-item > * + * { margin-top: .65rem; }
.rda-news-list-item .wp-block-post-title, .rda-announcement-list-item .wp-block-post-title, .rda-document-list-item .wp-block-post-title, .rda-department-list-item .wp-block-post-title, .rda-official-list-item .wp-block-post-title { font-size: clamp(1.25rem, 2.5vw, 1.75rem); line-height: 1.2; }
.rda-news-list .wp-block-query-pagination, .rda-announcement-list .wp-block-query-pagination, .rda-document-list .wp-block-query-pagination, .rda-department-list .wp-block-query-pagination, .rda-official-list .wp-block-query-pagination { border-top: 1px solid #b8c2cc; gap: .75rem; padding-top: 1rem; }
.rda-document-filters { background: #f2f2f2; margin-block: 1.5rem; padding: 0; }
.rda-document-filters > summary { align-items: center; cursor: pointer; display: flex; font-size: 1.125rem; font-weight: 700; gap: .75rem; list-style: none; min-height: var(--rda-touch-target); padding: 1rem; }
.rda-document-filters > summary::-webkit-details-marker { display: none; }
.rda-document-filters > summary::after { content: "⌄"; font-size: 1.25rem; line-height: 1; margin-left: auto; transition: transform .15s ease; }
.rda-document-filters[open] > summary { border-bottom: 1px solid #b8c2cc; }
.rda-document-filters[open] > summary::after { transform: rotate(180deg); }
.rda-document-filters > form { padding: 1rem 1.25rem 1.25rem; }
.rda-document-filters fieldset { border: 0; margin: 0; padding: 0; }
.rda-document-filters legend, .rda-document-filters label { font-weight: 500; }
.rda-document-filters__grid { column-gap: .75rem; display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 1rem; }
.rda-document-filters__grid > p { margin: 0; min-width: 0; }
.rda-document-filters input, .rda-document-filters select { background: #fff; border: 1px solid #7d858c; box-sizing: border-box; display: block; font: inherit; height: var(--rda-touch-target); inline-size: 100%; line-height: 1.25; max-inline-size: 100%; min-inline-size: 0; padding-inline: .75rem; width: 100%; }
.rda-document-filters input[type="date"] { -webkit-min-logical-width: 0; min-width: 0; }
/* iOS Safari keeps an intrinsic width for native date controls unless its chrome is reset. */
@supports (-webkit-touch-callout: none) {
  .rda-document-filters input[type="date"] { -webkit-appearance: none !important; appearance: none !important; box-sizing: border-box !important; inline-size: 100% !important; max-inline-size: 100% !important; max-width: 100% !important; min-inline-size: 0 !important; min-width: 0 !important; width: 100% !important; }
  .rda-document-filters input[type="date"]::-webkit-date-and-time-value { min-width: 0; text-align: left; }
  .rda-document-filters input[type="date"]::-webkit-calendar-picker-indicator { display: block; opacity: 1; }
}
.rda-document-filters select { -webkit-appearance: none; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E"); background-position: right .875rem center; background-repeat: no-repeat; background-size: .875rem; height: 3rem !important; min-height: 3rem !important; padding-right: 2.75rem !important; }
.rda-document-filters button { appearance: none; background: #000; border: 1px solid #000; border-radius: 0; box-sizing: border-box; color: #fff; font: inherit; font-weight: 500; height: 3rem !important; line-height: 1.25; min-height: 3rem !important; padding-inline: 1rem; }
.rda-document-filters button:hover { background: #0057b8; border-color: #0057b8; }
.rda-document-filters .rda-date-format { color: #5e646a; display: block; font-size: .75rem; margin-top: .35rem; }
.rda-document-filters__actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 1rem !important; }
.rda-document-meta, .rda-department-contacts, .rda-official-meta { border-left: .25rem solid #ffb800; display: grid; gap: .65rem; margin: 1.25rem 0; padding-left: 1rem; }
.rda-document-meta__item, .rda-department-contacts__item, .rda-official-meta__item { display: grid; gap: .125rem; }
.rda-document-meta dt, .rda-department-contacts dt, .rda-official-meta dt { color: #5e646a; font-size: .8125rem; }
.rda-document-meta dd, .rda-department-contacts dd, .rda-official-meta dd { margin: 0; }
.rda-document-article, .rda-department-article, .rda-official-article, .rda-news-article, .rda-announcement-article { padding-bottom: 3rem; }
.rda-news-featured-image img, .rda-announcement-featured-image img, .rda-official-featured-image img { height: auto; max-width: 100%; }
.rda-document-terms, .rda-official-terms, .rda-document-file, .rda-department-short-name, .rda-official-summary { margin-block: .75rem; }
.rda-document-files { border-top: 1px solid #b8c2cc; margin-top: 1.5rem; padding-top: 1rem; }
.rda-document-files h2 { font-size: 1.25rem; margin: 0 0 .75rem; }
.rda-document-files ul { display: grid; gap: .5rem; list-style: none; margin: 0; padding: 0; }
.rda-document-files li { align-items: baseline; display: flex; flex-wrap: wrap; gap: .25rem; }
.rda-document-file__name { color: #5e646a; font-size: .875rem; }
.rda-document-pdf { border-top: 1px solid #b8c2cc; margin-top: 1.5rem; padding-top: 1rem; }
.rda-document-pdf a { align-items: center; background: #000; color: #fff; display: inline-flex; min-height: 2.75rem; padding-inline: 1rem; text-decoration: none; }
.rda-document-pdf small { color: #5e646a; display: block; margin-top: .5rem; }

.rda-site-footer { background: #000; color: #fff; margin-top: 4rem; }
.rda-site-footer a { color: #fff; }
.rda-footer-inner { display: grid; gap: 2rem; margin-inline: auto; max-width: none; padding: 2.5rem clamp(1rem, 5vw, 7rem) 1.5rem; }
.rda-footer-inner p { margin: 0; }
.rda-footer-heading { font-size: .8125rem; margin-bottom: .75rem !important; }
.rda-footer-brand__link { align-items: flex-start; display: flex; font-size: .9375rem; gap: .75rem; line-height: 1.35; text-decoration: none; }
.rda-footer-brand__link img { border: 2px solid currentColor; border-radius: .75rem; box-sizing: content-box; filter: invert(1); height: 2.875rem; object-fit: contain; padding: .35rem; width: 2.25rem; }
.rda-footer-brand__link small { color: #aeb7bd; display: block; font-size: .75rem; margin-top: .35rem; }
.rda-footer-brand > p { font-size: .8125rem; margin-top: 1.5rem; }
.rda-footer-nav nav { display: grid; gap: .5rem; }
.rda-footer-nav a { font-size: .875rem; text-decoration-thickness: .06em; }
.rda-footer-accessibility { color: #d6dfe3; font-size: .8125rem; max-width: 24rem; }
.rda-footer-social { color: #d6dfe3; font-size: .8125rem; }
.rda-footer-social nav { display: grid; gap: .5rem; }
.rda-cookie-notice { align-items: center; background: #102d42; border: 1px solid #5b94b8; bottom: 1rem; box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .25); color: #fff; display: flex; gap: 1rem; left: 1rem; max-width: 38rem; padding: 1rem; position: fixed; right: 1rem; z-index: 1000; }
.rda-cookie-notice[hidden] { display: none; }
.rda-cookie-notice p { font-size: .8125rem; line-height: 1.45; margin: 0; }
.rda-cookie-notice a { color: #fff; }
.rda-cookie-notice__accept { background: #fff; border: 0; color: #102d42; cursor: pointer; flex: 0 0 auto; font: inherit; font-weight: 700; padding: .625rem .875rem; }
.rda-footer-legal { border-top: 1px solid #3a4348; color: #aeb7bd; font-size: .6875rem; grid-column: 1 / -1; padding-top: 1rem; }

@media (min-width: 48rem) {
  .rda-header-container, .rda-breadcrumbs { padding-inline: 1.5rem; }
  .rda-header-utility__inner { grid-template-columns: 1fr auto; }
  .rda-header-utility__actions { align-items: center; display: flex; gap: 1rem; }
  .rda-search { grid-column: auto; max-width: 17.5rem; }
  .rda-quick-links-navigation .wp-block-navigation__container { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rda-home-editorial { column-gap: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); position: relative; }
  .rda-home-editorial::after { background: #b8c2cc; content: ""; inset-block: 3rem; left: 50%; pointer-events: none; position: absolute; transform: translateX(-.5px); width: 1px; }
  .rda-home-editorial > .rda-editorial-section { align-self: start; }
  .rda-home-editorial > .rda-editorial-section:first-child { padding-right: clamp(1.5rem, 3vw, 3rem); }
  .rda-home-editorial > .rda-editorial-section:last-child { padding-left: clamp(1.5rem, 3vw, 3rem); }
  .rda-home-editorial .rda-section-heading { align-items: flex-start; flex-direction: column; gap: .5rem; justify-content: flex-start; min-height: 0; }
  .rda-home-editorial .rda-section-heading h2 { font-size: clamp(2.5rem, 4.25vw, 4.5rem); line-height: 1; }
  .rda-home-editorial .rda-list-item { box-sizing: border-box; height: auto; min-height: 0; padding: 1.25rem 1.25rem .75rem; }
  .rda-home-editorial .rda-editorial-section:first-child .rda-list-item:first-child,
  .rda-home-editorial .rda-editorial-section:last-child .rda-list-item { padding: 1.25rem 1.25rem .75rem; }
  .rda-document-filters__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rda-footer-inner { grid-template-columns: minmax(16rem, 1.4fr) minmax(12rem, .8fr) minmax(14rem, .8fr); padding-block: 2.75rem 1.5rem; }
}
@media (min-width: 64rem) { .rda-quick-links-navigation .wp-block-navigation__container { grid-template-columns: repeat(3, minmax(0, 1fr)); } .rda-home { padding-top: 1.5rem; } .rda-home-introduction { padding: 2.5rem; } .rda-home-section, .rda-home-next-step { padding-block: 3rem; } .rda-home-editorial .rda-editorial-section:last-child { padding-block: 3rem; } }

/* Keep the narrow layout compact after the general homepage rules above. */
@media (max-width: 47.999rem) {
  .rda-home-introduction { background-image: none; padding-block: 1.5rem; padding-left: 1.25rem; }
  .rda-home-introduction h1 { font-size: 30px !important; line-height: 1.12; margin-block: 1rem; }
  .rda-home-introduction .has-large-font-size { font-size: 19px !important; line-height: 1.45; margin-top: 1rem; }
  .rda-home-section, .rda-home-next-step { padding-block: 1.75rem; }
  .rda-section-heading { padding-bottom: .5rem; }
  .rda-section-heading h2 { font-size: 30px; }
}

@media (max-width: 47.999rem) {
  /* Compact the WordPress navigation overlay without reducing touch targets. */
  .rda-primary-navigation .wp-block-navigation__responsive-container.is-menu-open { padding: 1rem; }
  .rda-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { gap: 0; padding: 3.25rem 0 0 !important; }
  .rda-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 0; width: 100%; }
  .rda-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 1rem; min-height: 48px; padding-inline: 0; }
  .rda-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { gap: 0; padding: .125rem 0 .5rem .75rem !important; }
  .rda-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { min-height: 44px; padding: .25rem .5rem; }
}

/* This comes after the general navigation styles so the compact-card grid wins. */
@media (max-width: 47.999rem) {
  .rda-quick-links-navigation .wp-block-navigation__container { grid-template-columns: minmax(0, 1fr); }
  .rda-quick-links-navigation .wp-block-navigation-item { box-sizing: border-box; min-width: 0; }
  .rda-quick-links-navigation .wp-block-navigation-item__content { box-sizing: border-box; column-gap: .625rem; display: grid; grid-template-columns: 2.5rem minmax(0, 1fr) auto; justify-content: initial; max-width: 100%; min-width: 0; overflow-wrap: anywhere; padding: .75rem; }
  .rda-quick-links-navigation .wp-block-navigation-item__content::before { flex-basis: auto; height: 2.5rem; margin-right: 0; width: 2.5rem; }
  .rda-quick-links-navigation .wp-block-navigation-item__content::after { justify-self: end; margin-left: 0; }
  /* These standalone home-page headings are not inside .rda-section-heading. */
  .rda-document-entry .wp-block-heading, .rda-home-next-step .wp-block-heading { font-size: 30px !important; line-height: 1.12; max-width: 100%; overflow-wrap: anywhere; }
}
