/*
Theme Name: Target Malaria 2.3
URI:  targtemalaria.org
Author: Target Malaria
Text Domain: target-malaria
Author URI: https://targtemalaria.org
Version: 2.3
*/

/* =============================================
   REBOOT
   ============================================= */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  background-color: var(--wp--preset--color--white);
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, .1);
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol, ul, dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol, ul ul, ol ul, ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b, strong {
  font-weight: 600;
}

small {
  font-size: 80%;
}

sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub { bottom: -.25em; }
sup { top: -.5em; }

pre, code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  font-size: 87.5%;
  color: #212529;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input, button, select, optgroup, textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

select {
  word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template,
[hidden] {
  display: none !important;
}


/* =============================================
   TYPOGRAPHY UTILITIES
   ============================================= */

.small, small { font-size: 80%; font-weight: 400; }
.mark, mark   { padding: .2em; background-color: #fcf8e3; }

.list-unstyled { padding-left: 0; list-style: none; }

code { font-size: 87.5%; color: #e83e8c; word-wrap: break-word; }
a > code { color: inherit; }
kbd { padding: .2rem .4rem; font-size: 87.5%; color: var(--wp--preset--color--white); background-color: #212529; border-radius: .2rem; }
kbd kbd { padding: 0; font-size: 100%; font-weight: 700; }

.strong, .bold { font-weight: 600; }


/* =============================================
   LAYOUT — CONTAINER
   ============================================= */

.container,
.container-fluid{
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 992px) {
  .container{ max-width: 960px; }
}
@media (min-width: 1200px) {
  .container { max-width: 1140px; }
}
@media (min-width: 576px) { 
  .container { max-width: none; }
}
@media (min-width: 768px) { 
  .container { max-width: none; }
}


/* =============================================
   LAYOUT — GRID
   ============================================= */

.row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

/* =============================================
   CSS VARIABLES & BASE
   ============================================= */

:root {
  --gutter: 15px;
  --headerHeight: 80px;
}

@media screen and (min-width: 576px) { :root { --gutter: 30px; } }
@media (min-width: 769px)            { :root { --gutter: 45px; } }
@media (min-width: 992px)            { :root { --gutter: calc((100vw - 960px) / 2); } }
@media (min-width: 1200px)           { :root { --gutter: calc((100vw - 1140px) / 2); } }

html, body {
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
  overflow-x: hidden;
}

/* =============================================
   LINK UTILITIES
   ============================================= */

a.no-underline       { text-decoration: none; }
a.no-hover-underline { text-decoration: none; }
a.no-hover-underline:hover { text-decoration: none; opacity: 0.9; }

a.no-underline-hover       { text-decoration: none; color: inherit; }
a.no-underline-hover:hover { text-decoration: none; opacity: 0.9; }


/* =============================================
   ANIMATIONS
   ============================================= */

.fade { opacity: 0; transition: opacity ease-out 2.2s; }
.fade.in { opacity: 1; }
.fade + .fade { transition-delay: 0.6s; }
.fade + .fade + .fade { transition-delay: 0.9s; }
.fade.wait { transition-delay: 0.25s; }


/* =============================================
   HEADER
   ============================================= */

header {
  box-sizing: border-box;
  height: var(--headerHeight);
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0 var(--gutter);
  position: fixed;
  top: 0;
  gap: 2rem;
  z-index: 11;
}

@media (min-width: 992px) and (max-width: 1199px) {
  header { padding: 10px 0; font-size: 88%; }
}

@media (min-width: 992px) {
  body.fullHeader.light_mode::before {
	content: "";
	width: 100%;
	height: 30vh;
	position: absolute;
	left: 0;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), transparent);
	z-index: 2;
  }
}

@media (max-width: 991px) {
  header,
  body.fullHeader.visible_logo header,
  body.fullHeader header.scrolling,
  body.fullHeader.menuOpen header { background-color: var(--wp--preset--color--white); }
  
  body.fullHeader header { background-color: transparent; }
}

header.scrolling {
  top: 0;
  background: var(--wp--preset--color--white);
  transition: all linear 0.1s;
}

.admin-bar header,
.admin-bar header.scrolling { top: 32px; }


/* =============================================
   NAVIGATION
   ============================================= */

#menu__btn {
  color: var(--wp--preset--color--dark-green);
  display: none;
  position: absolute;
  right: var(--gutter);
  top: 15px;
  font-size: 200%;
  cursor: pointer;
}

@media (max-width: 991px) {
  #menu__btn { display: block; }
}

.fullHeader.light_mode #menu__btn { color: var(--wp--preset--color--white); }

.fullHeader.visible_logo #menu__btn { color: var(--wp--preset--color--dark-green); }

.fullHeader.visible_logo #menu__btn,
.fullHeader header.scrolling #menu__btn,
.scrolling #menu__btn { color: var(--wp--preset--color--dark-green); }

.fullHeader.light_mode .scrolling nav.main__navigation ul:not(.main__navigation__submenu) li,
.fullHeader.light_mode .scrolling nav.main__navigation ul:not(.main__navigation__submenu) #search_btn {
  color: var(--wp--preset--color--dark-green);
}

nav.main__navigation {
  height: 100%;
  flex-direction: row !important;
  display: flex;
}

nav.main__navigation ul:not(.main__navigation__submenu) {
  list-style: none;
  margin-bottom: 0;
  font-size: 110%;
  padding: 0;
}

@media (min-width: 992px) {
  nav.main__navigation ul:not(.main__navigation__submenu) {
	display: flex;
	flex-direction: row;
	align-items: stretch;
  }
}

nav.main__navigation ul:not(.main__navigation__submenu) li {
  margin: 0;
  padding: 0 10px;
  font-weight: 600;
  font-size: 90%;
  letter-spacing: 1px;
  position: relative;
}

@media (min-width: 992px) {
  nav.main__navigation ul:not(.main__navigation__submenu) li {
	align-items: center;
	display: flex;
  }
}

nav.main__navigation ul:not(.main__navigation__submenu) li a          { color: inherit; text-decoration: none; }
nav.main__navigation ul:not(.main__navigation__submenu) li a:hover    { color: var(--wp--preset--color--dark-green); }
nav.main__navigation ul:not(.main__navigation__submenu) li.lang       { font-size: 60%; color: var(--wp--preset--color--light-blue); }
nav.main__navigation ul:not(.main__navigation__submenu) li.social__icons { font-size: 70%; }
nav.main__navigation ul:not(.main__navigation__submenu) li.social__icons a { margin: 0 3px; }

.fullHeader.light_mode nav.main__navigation ul:not(.main__navigation__submenu) li,
.fullHeader.light_mode nav.main__navigation ul:not(.main__navigation__submenu) li #search_btn {
  color: var(--wp--preset--color--white);
  background-color: transparent;
}

.fullHeader.light_mode nav.main__navigation ul:not(.main__navigation__submenu) li a {
  background-color: transparent;
}

nav.main__navigation ul.main__navigation__submenu {
  list-style: none;
  margin-bottom: 0;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  font-size: 70%;
  padding: 0;
  height: 0;
  overflow: hidden;
}

nav.main__navigation ul ul.sub-menu { margin: 0; padding: 0; }
nav.main__navigation ul.main__navigation__submenu li { position: initial; }

@media (min-width: 992px) {
  nav.main__navigation li.about_us ul.main__navigation__submenu { overflow: visible; }

  nav.main__navigation ul.main__navigation__submenu {
	font-size: 110%;
	position: absolute;
	top: 100%;
	height: auto;
	display: none;
	background: var(--wp--preset--color--white);
	list-style-type: none;
	min-width: 350px;
	left: -5px;
	box-shadow: 5px 4px 7px -2px rgba(0, 0, 0, 0.05);
  }

  nav.main__navigation ul.main__navigation__submenu.vis { display: block; }

  nav.main__navigation ul.main__navigation__submenu li {
	font-weight: normal;
	color: var(--wp--preset--color--dark-green);
	padding: 15px;
	letter-spacing: 0;
	transition: opacity cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
  }

  nav.main__navigation ul.main__navigation__submenu li:hover { background-color: #fafafa; }
  nav.main__navigation ul.main__navigation__submenu li.menu-item-has-children { width: 600px; }

  .fullHeader.light_mode nav.main__navigation ul.main__navigation__submenu li {
	color: var(--wp--preset--color--dark-green);
  }
}

@media (max-width: 991px) {
  nav.main__navigation ul.main__navigation__submenu.vis { height: auto; padding-top: 15px; }
  nav.main__navigation ul.main__navigation__submenu li { font-weight: normal; }
  nav.main__navigation ul.main__navigation__submenu li ul li { font-size: 90%; }
  nav.main__navigation { display: none; }
}

nav.main__navigation ul.main__navigation__submenu.sub_sub {
  left: auto;
  right: 0;
  top: 0%;
  background: var(--wp--preset--color--white);
  padding: 0;
  z-index: 2;
  box-shadow: none;
}

.menuOpen nav.main__navigation {
  width: 100%;
  display: flex;
  position: absolute;
  left: 0;
  top: var(--headerHeight);
  padding-bottom: 15px;
}

.menuOpen nav.main__navigation ul {
  flex-direction: column;
  width: 100%;
  padding: 0;
  margin: 0;
  overflow-y: scroll;
  background: var(--wp--preset--color--white);
  text-align: center;
  display: flex;
  justify-content: center;
  font-size: 100%;
}

.menuOpen nav.main__navigation ul.main__navigation__submenu { 
  padding: 0;
  align-items: center;
}

@media (max-width: 991px) {
  .menuOpen nav.main__navigation ul.main__navigation__submenu.vis { 
    padding-top: 10px;
  }
}

.menuOpen nav.main__navigation ul.menu > li { 
  padding-bottom: 15px;
  font-size: 100%;
}

.menuOpen nav.main__navigation ul li .main__navigation__submenu li{
  padding-bottom: 10px;
}
.menuOpen nav.main__navigation ul li .main__navigation__submenu li:last-child{
  padding-bottom: 0;
}

@media (max-width: 991px) {
  .menuOpen nav.main__navigation ul li,
  .menuOpen nav.main__navigation ul li a { 
    color: var(--wp--preset--color--dark-green) !important;
    justify-content: center;
  }

  .menuOpen nav.main__navigation { height: calc(100vh - var(--headerHeight)); padding-bottom: 0; }
}

.menuOpen nav.main__navigation ul li.social__icons a { margin: 0 7px; }

/* Logo */
.navigation__logo {
  height: var(--headerHeight);
  width: 150px;
  background-image: url("assets/css/img/logo.png");
  background-size: 100%;
  background-position: center left;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
}

.navigation__logo a {
  height: 100%;
  display: flex;
  align-items: center;
}

.fullHeader.light_mode .navigation__logo { background-image: url("assets/css/img/logo_white.png"); }

.fullHeader.light_mode .scrolling .navigation__logo { background-image: url("assets/css/img/logo.png"); }

.fullHeader.visible_logo .navigation__logo { background-image: url("assets/css/img/logo.png"); }


/* =============================================
   FOOTER
   ============================================= */

footer.container-fluid {
  background-color: var(--wp--preset--color--dark-green);
  padding: 45px var(--gutter) 15px;
  color: var(--wp--preset--color--white);
  position: relative;
}

@media (max-width: 991px) {
  footer.container-fluid { height: auto; margin-top: 0; }
}

footer ul { column-count: 3; list-style: none; padding: 0; }
footer ul .new_column { break-after: column; }
footer ul li a { color: inherit; }
footer ul li a:hover { color: var(--wp--preset--color--light-blue); text-decoration: none; }

@media (max-width: 768px) {
  footer ul { column-count: 1; }
  footer ul .new_column { break-after: initial; padding-top: 1rem; }
  .footer__details { order: 0; }
  .footer__links   { order: -1; }
}

.footer__description  { font-size: 80%; margin-bottom: 30px; }
.footer__copyright    { font-size: 80%; margin-top: 3rem; margin-bottom: 3rem; }
.footer__inner        { padding-top: 30px; }
.footer__logo         { width: 180px; max-width: 100%; }

.social_media   { margin-bottom: 2rem; }
.social_media i { width: 1.3rem; text-align: center; }

.footer_description,
.footer_extra_links {
  display: flex;
  gap: 5rem;
  justify-content: space-between;
}

.footer__details { flex: 1; }
.footer__links   { flex: 2; }

.footer_social_links a     { margin-right: 1rem; }
.footer_membership_links a { margin-right: 1.5rem; }

/* =============================================
   PAGE LAYOUT
   ============================================= */

#page-wrap {
  background-image: url("assets/css/img/mosquitos_bg.jpg");
  background-size: 100%;
  background-position: top left;
  background-repeat: no-repeat;
  min-height: 100vh;
  height: auto;
  padding: var(--headerHeight) var(--gutter) 0;
}

@media (max-width: 768px) {
  #page-wrap {
	background-size: 200%;
	background-position: top center;
	padding-top: var(--headerHeight);
  }
}

@media (max-width: 991px) {
  .fullHeader #page-wrap { padding-top: var(--headerHeight); }
}

.fullHeader #page-wrap { padding-top: 0; }

.page-content__inner { padding-top: 30px; }
.fullHeader .page-content__inner { padding-top: 0; }

/* =============================================
   ARTICLE / CONTENT
   ============================================= */

.article__content {
  padding-top: 15px;
}

.fullHeader .article__content { padding-top: 0; }

.article__title {
  font-size: 3.2rem;
  line-height: 1.4;
  margin-bottom: 1rem;
}

@media (max-width: 991px) {
  .article__title { font-size: 2.5rem; }
}

@media (min-width: 992px) {
  .article__title__container { order: -1; }
}

.fullHeader .article__title__container { display: none; }

.article__content > .alignfull {
  width: 100vw;
  left: calc(-1 * var(--gutter));
  position: relative;
}

.alignfull > img { width: 100vw; }
.alignleft { float: left; padding: 15px 20px 15px 0; }
.alignright { float: right; padding: 15px 0 15px 20px; }

/* =============================================
   BREADCRUMBS
   ============================================= */

#breadcrumbs,
ol.breadcrumb {
  background-color: var(--wp--preset--color--white);
  font-size: 80%;
  padding: .75rem 0;
}

#breadcrumbs,
ol.breadcrumb li { color: var(--wp--preset--color--light-blue); }

#breadcrumbs a,
ol.breadcrumb li a { color: var(--wp--preset--color--light-blue); }

ol.breadcrumb li.active { color: var(--wp--preset--color--light-blue); }

ol.breadcrumb li.breadcrumb-item + .breadcrumb-item::before {
  color: var(--wp--preset--color--light-blue);
  content: "\203A";
}

.breadcrumb_sep { padding: 0 0.5rem; }


/* =============================================
   BUTTONS
   ============================================= */

button, .btn, *[role="button"] { border-radius: 3px; }

.btn-primary {
  background-color: var(--wp--preset--color--light-blue);
  padding: 8px 30px;
  border: 0;
  border-radius: 0;
  line-height: 1.5;
}

.btn-primary:hover,
.btn-primary:focus { background-color: #7db0e1; }

.btn-primary.hasArrow { padding-right: 70px; position: relative; }

.btn-primary.hasArrow::after {
  width: 40px;
  height: 100%;
  background-color: #79ade0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  top: 0;
  content: "\f105";
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  padding-left: 0;
  transition: padding-left cubic-bezier(0.19, 1, 0.22, 1) 1s;
}

.btn-primary.hasArrow:hover::after { padding-left: 10px; }


/* =============================================
   IMAGES / BLOBS / FEATURED
   ============================================= */

img[usemap], map area { outline: none; }

.wp-block-image img { height: auto; }



/* =============================================
   GALLERY
   ============================================= */

#gallery { z-index: 1; min-height: 500px; }

@media (min-width: 1200px) { #gallery { min-height: 500px; } }

@media (max-width: 767px) {
  .is-style-gallery_carousel .swiper-slide { width: 100% !important; }
}


/* =============================================
   PRESS RELEASE
   ============================================= */

section.press-release { margin-bottom: 4rem; }
.press_release_header { margin-bottom: 2rem; }

.download_press_release::after {
  content: "";
  height: 0.5rem;
  width: 4rem;
  background-color: var(--wp--preset--color--dark-green);
  display: block;
  margin: 2rem 0;
}

.press-release h1 { color: var(--wp--preset--color--light-blue); line-height: 1.2; }
.press-release h3 { color: var(--wp--preset--color--dark-green); }
.press-release h2 {
  color: var(--wp--preset--color--light-blue);
  font-weight: bold;
  border-bottom: 2px solid var(--wp--preset--color--light-blue);
  padding-bottom: 5px;
  margin-bottom: 1rem;
}

.press_release_footer {
  margin-top: 4rem;
  padding: 2rem;
  background-color: var(--wp--preset--color--light-grey);
}

.social_icons { 
  color: var(--wp--preset--color--light-blue);
  padding-bottom: 1rem;
  display: flex;
  gap: 0.5rem;
}


/* =============================================
   BLOCKQUOTE
   ============================================= */

blockquote.wp-block-quote > h2 {
  position: relative;
  line-height: 1.5;
  margin-bottom: 0;
  padding-bottom: 0;
}

blockquote.wp-block-quote > h2::before,
blockquote.wp-block-quote > h2::after {
  color: var(--wp--preset--color--light-blue);
  font-size: 4rem;
}

blockquote.wp-block-quote > h2::before {
  content: '\201C';
  left: -1.9rem;
  top: -1rem;
  position: absolute;
}

blockquote.wp-block-quote > h2::after {
  content: '\201D';
  bottom: -1.3rem;
  left: 0.2rem;
  position: relative;
  line-height: 0;
}


/* =============================================
   WP BLOCKS
   ============================================= */

.wp-block-cover,
.wp-block-cover-image {
  height: auto;
  background-position: center center;
  min-height: 430px;
}

@media (max-width: 768px) {
  .wp-block-cover,
  .wp-block-cover-image { min-height: 80vw; }
}

.library .wp-block-group {
  padding: 2rem 3rem;
  margin-bottom: 2rem;
  box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.08);
}

/* =============================================
   RESOURCE CAROUSEL
   ============================================= */

.resource_page_logo { height: 1.5rem; }
.resource_page_logo.target_malaria {
  background-image: url("assets/css/img/logo.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.resource_page_container {
  background-color: var(--wp--preset--color--light-grey);
  border: 2px solid var(--wp--preset--color--dark-green);
  border-radius: 15px;
  padding: 15px;
  height: auto;
  aspect-ratio: 3/4;
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.resource_page_container .resource_page_date {
  display: inline-flex;
  flex-grow: 1;
  align-items: flex-end;
  color: var(--wp--preset--color--sandy-beige);
}

.resource_page_container::before {
  content: "";
  position: absolute;
  top: -2px;
  right: -2px;
  width: 35px;
  height: 35px;
  border: 2px solid var(--wp--preset--color--dark-green);
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-left-radius: 15px;
}

.resource_page_container::after {
  content: "";
  background-color: var(--wp--preset--color--white);
  width: 35px;
  height: 49px;
  position: absolute;
  top: -16px;
  right: -36px;
  border-left: 2px solid var(--wp--preset--color--dark-green);
  transform-origin: bottom left;
  transform: rotate(-45deg);
}



/* =============================================
   MAILCHIMP FORM
   ============================================= */

.mc_form .mc-field-maingroup { display: flex; flex-wrap: wrap; gap: 10px; }
.mc_form_popup { margin-bottom: 2rem; }
.mc_form_popup .mc-field-maingroup { justify-content: center; align-items: center; }
.mc_form_popup .mc-field-group { width: 80%; }

.mc_form .response,
.mc_form div.mce_inline_error { font-size: 0.8rem; color: var(--wp--preset--color--light-blue); margin-top: 0.5rem; }

.mc_form .submit_btn { margin-top: 1rem; }

.mc_form .select-wrapper,
#filter_fiche .facetwp-type-dropdown { position: relative; }

.mc_form .select-wrapper::after,
#filter_fiche .facetwp-type-dropdown::after {
  color:var(--wp--preset--color--black);
  content: "▾";
  pointer-events: none;
  position: absolute;
  right: 9px;
  top: 3px;
}

#filter_fiche .facetwp-type-dropdown::after { color: var(--wp--preset--color--white); }

.mc_form .select,
#filter_fiche .facetwp-dropdown {
  -moz-appearance: none;
  -webkit-appearance: none;
  background: var(--wp--preset--color--white);
  color: var(--wp--preset--color--black);
  border: none;
  border-radius: 3px;
  cursor: pointer;
  padding: 3px 30px 3px 10px;
  width: 100%;
}

#filter_fiche .facetwp-dropdown {
  color: var(--wp--preset--color--white);
  background-color: var(--wp--preset--color--light-blue);
}

.mc_form .select:focus { color:var(--wp--preset--color--black); }

#filter_fiche .facetwp-dropdown:focus { color: var(--wp--preset--color--white); border: none; }

.mc_form .select:focus-visible,
#filter_fiche .facetwp-dropdown:focus-visible,
#filter_fiche .facetwp-facet-search input:focus-visible { outline-style: none; }

.mc_form .select::-ms-expand,
#filter_fiche .facetwp-dropdown::-ms-expand { display: none; }

.mc_form [type="submit"],
.contact_form .button,
button.facetwp-reset {
  color: var(--wp--preset--color--white);
  background-color: var(--wp--preset--color--light-blue);
  -webkit-appearance: none;
  border: none;
  border-radius: 3px;
  padding: 0.3rem 0.6rem;
}

button.facetwp-reset{
  background-color: var(--wp--preset--color--dark-green);
  line-height: 1.3;
}

.contact_form .acf-fields > .acf-field { padding: 0 12px 10px 0; }
.contact_form .acf-field-acfe-column + .acf-field-acfe-column .acf-fields > .acf-field { padding: 0 0 10px 12px; }
.contact_form .acf-field .acf-label { margin: 0; }
.contact_form .acf-form-submit { display: flex; justify-content: end; padding: 15px 0; }


/* =============================================
   POPUP / MODAL
   ============================================= */

dialog {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100vh;
  background: var(--wp--preset--color--white);
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  opacity: 1;
  transition: opacity ease 0.6s;
}

dialog div { opacity: 0.05; }

#once-popup {
  position: fixed;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.65);
  text-align: center;
  z-index: 10000;
}

#once-popup .inner {
  background: #404a29;
  padding: 20px;
  width: 90%;
  max-width: 450px;
  margin: 50px auto;
}

#once-popup #popup-close {
  float: right;
  font-size: 30px;
  line-height: 10px;
  padding: 5px;
  cursor: pointer;
  color: var(--wp--preset--color--white);
}

#once-popup input:not([type="submit"], [type="checkbox"]) {
  padding: 5px 15px !important;
  width: 100% !important;
}

#once-popup input[type="submit"] {
  padding: 10px 30px !important;
  margin-top: 1rem;
  background-color: var(--wp--preset--color--light-blue) !important;
  color: var(--wp--preset--color--white) !important;
  border: 0 !important;
  border-radius: 0 !important;
}

#once-popup form > p {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
}

#once-popup h2 {
  color: var(--wp--preset--color--white);
  padding: 1rem 0 !important;
  text-align: center !important;
}

/* =============================================
   SEARCH
   ============================================= */

@media (max-width: 767px) {
  #filter_fiche{
    margin-bottom: 1rem;
  }
  #filter_fiche .facetwp-type-dropdown{
    width: 100%;
    margin-bottom: 0; 
  }
  #filter_fiche .facetwp-facet-search { 
    margin: 0;
    width: 100%;
  }
  #filter_fiche .facetwp-facet-search .facetwp-input-wrap{
    width: 100%;
  }
  #filter_fiche .facetwp-facet-search input { border: 0; 
    padding: 3px 6px; 
    background-color: var(--wp--preset--color--light-grey);
    min-width: initial;
  }
  .facetwp-facet.facetwp-facet-reset{
    margin-bottom: 0;
  }
}


/* =============================================
   PERSON / AUTHOR
   ============================================= */

@media (max-width: 767px) {
  .breads,
  #breadcrumbs { font-size: 80%; }

  .article__title,
  .single_result_content a { color: var(--wp--preset--color--light-blue); }

  #page-wrap .search_results_page h1.article__title { font-size: 2.5rem; margin-bottom: 20px !important; }

  .entry-content { width: 100%; }

  .related_content { margin-top: 4rem; }

  .search_result_single figure {
	aspect-ratio: 16 / 9;
	width: 100%;
	overflow: hidden;
	margin: 0;
  }

  .search_result_single figure img,
  .search_result_single figure iframe {
	height: 100%;
	width: 100%;
	object-fit: cover;
	padding: 0;
  }

  .search_placeholder {
	height: 100%;
	width: 100%;
	object-fit: cover;
	padding: 0;
	background-color: var(--wp--preset--color--light-grey);
	background-image: url("assets/css/img/logo.png");
	background-repeat: no-repeat;
	background-size: 50% auto;
	background-position: center;
  }

  .search_result_single .single_result_content { padding: 20px; }

  .single_result_content h4 {
	font-size: 1rem;
	color: var(--wp--preset--color--black);
	font-weight: 400;
	text-transform: uppercase;
	margin: 0;
  }

  .single_result_content h5 {
	font-size: 1.25rem;
	color: var(--wp--preset--color--black);
	font-weight: 700;
	line-height: 1.4;
  }

  .related_content { margin-bottom: 4rem; }
  .related_content ul li { line-height: 1.2; margin-bottom: 0.6rem; }
}


/* =============================================
   MISC
   ============================================= */

.angle-down {
  transform: translateY(2px);
  display: inline-block;
  padding-left: 5px;
  font-size: 90%;
}

@media (max-width: 991px) {
  .angle-down { transform: rotate(-90deg) translate(-4px, 14px); }
}

.angle-right {
  transform: translateY(2px);
  display: inline-block;
  padding-left: 10px;
  font-size: 90%;
}

.frame_heading_section  { margin: 2rem auto 4rem; }
.frame_heading_heading  { margin-bottom: 1rem; }

nav.page__links {
  display: flex;
  justify-content: center;
  width: 100%;
  padding-bottom: 3rem;
}

nav.page__links .page-numbers {
  padding: 8px 5px;
  margin: 0 3px;
  background-color: rgba(255, 255, 255, 0.5);
  border: 1px solid #eee;
}

body:not(.logged-in) .broken_link,
body:not(.logged-in) a.broken_link { text-decoration: underline; }
