/*
Theme Name: EAC Bootstrap Child Theme
Theme URI: https://them.es/starter
Description: A child theme for Bootstrap-based WordPress theme
Author: Techlink
Author URI: https://techlink.com.cy
Template: starter-bootstrap-main
Version: 1.0.0
Text Domain: eac-child-theme
*/

/* Import Bootstrap Parent Theme CSS */
@import url("../starter-bootstrap-main/style.css");

/* Custom Link Underline Effect  */

body a:not(header a):not(footer a):not(.breadcrumbs-container a) {
  color: #007aad;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  position: relative;
  text-decoration: none;
}

/*
body a:not(header a):not(footer a):not(.breadcrumbs-container a)::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px; 
  width: 0;
  height: 2px;
  background-color: currentColor;
  transition: width 0.3s ease;
}

body a:not(header a):not(footer a):not(.breadcrumbs-container a):hover::after {
  width: 100%;
}
*/

/* Import Fonts*/
/* ========== Variable Inter ========== */
@font-face {
  font-family: "Inter";
  src: url("./includes/fonts/InterFont/Inter-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("./includes/fonts/InterFont/Inter-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("./includes/fonts/InterFont/Inter-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("./includes/fonts/InterFont/Inter-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ==========================================================
   SF Pro Display – Local font faces
   ========================================================== */

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYREGULAR.OTF")
    format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYMEDIUM.OTF")
    format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYBOLD.OTF")
    format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* -------------------- Italic -------------------- */

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYULTRALIGHTITALIC.OTF")
    format("opentype");
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYTHINITALIC.OTF")
    format("opentype");
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYLIGHTITALIC.OTF")
    format("opentype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYSEMIBOLDITALIC.OTF")
    format("opentype");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYHEAVYITALIC.OTF")
    format("opentype");
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "SF Pro Display";
  src: url("includes/fonts/sf-pro-display/SFPRODISPLAYBLACKITALIC.OTF")
    format("opentype");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

.landing-page-wrapper .block-editor h1,
.landing-page-wrapper .block-editor h2,
.landing-page-wrapper .block-editor h3,
.landing-page-wrapper .block-editor h4,
.landing-page-wrapper .block-editor h5,
.landing-page-wrapper .block-editor h6 {
  font-family: "SF Pro Display";
  color: #444748;
  margin: 40px 0;
}

.landing-page-wrapper .block-editor h2 {
  font-weight: 400;
  font-size: 28px;
  line-height: 34px;
  letter-spacing: 0.38px;
}

.landing-page-wrapper .block-editor p {
  font-size: 16px;
  font-weight: 400;
  line-height: 27px;
  margin-bottom: 24px;
}

.landing-page-wrapper .block-editor a {
  font-size: 16px;
  line-height: 27px;
}

.link-with-icon {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.link-with-icon::before {
  content: "";
  width: 16px;
  height: 20px;
  display: inline-block;

  background: url("data:image/svg+xml;utf8,<svg width='16' height='20' viewBox='0 0 16 20' xmlns='http://www.w3.org/2000/svg'><path d='M10 0H2C0.9 0 0.0100002 0.9 0.0100002 2L0 18C0 19.1 0.89 20 1.99 20H14C15.1 20 16 19.1 16 18V6L10 0ZM2 18V2H9V7H14V18H2Z' fill='%23007AAD'/></svg>")
    no-repeat center;
  background-size: contain;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  margin-top: 0.75em;
  margin-bottom: 0.75em;
  font-weight: 500;
  line-height: 1.2;
}

/* Individual sizes */
body h1 {
  font-size: 48px;
}

body h2 {
  font-size: 40px;
}

body h3 {
  font-size: 36px;
}

body h4 {
  font-size: 30px;
}

body h5 {
  font-size: 26px;
}

body h6 {
  font-size: 22px;
}

@media (max-width: 767px) {
  body h1 {
    font-size: 36px;
  }

  body h2 {
    font-size: 32px;
  }

  body h3 {
    font-size: 24px;
  }

  body h4 {
    font-size: 30px;
  }

  body h5 {
    font-size: 26px;
  }

  body h6 {
    font-size: 22px;
  }
}

body,
p,
div {
  font-family: "Inter", sans-serif !important;
  font-weight: 400;
  /* will use the variable or static fallback */
}

body .landing-page-wrapper p,
body .landing-page-wrapper li {
  color: #444748;
}

body .landing-page-wrapper h1,
body .landing-page-wrapper h2,
body .landing-page-wrapper h3,
body .landing-page-wrapper h4,
body .landing-page-wrapper h5,
body .landing-page-wrapper h6 {
  color: #181a1b;
}

/* =========================
   HEADER CSS
   ========================= */
.top-bar {
  background-color: #fafafa;
}

.top-bar .lang-dropdown .dropdown-item.active {
  background-color: #eaf7fc;
}

.top-bar .lang-dropdown .dropdown-item {
  color: #181a1b;
  font-weight: 400;
  font-size: 14px;
  line-height: 21px;
  padding: 10px;
}

#header,
#header .navbar-brand {
  padding: 0;
}

#header .navbar-brand img {
  height: 72px;
}

/* Show dropdown on hover */
.navbar-nav .dropdown-menu {
  display: block;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.25s ease;
  pointer-events: none;
}

/* Show dropdown on hover */
.navbar-nav .dropdown:hover > .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

/* Ensure position for submenus */
.dropdown-submenu {
  position: relative;
}

.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-left: 0.1rem;
  display: none;
}

.dropdown-submenu:hover > .dropdown-menu {
  display: block;
}

#navbarNav > .navbar-nav > li > a {
  margin-bottom: 20px;
  margin-top: 20px;
  padding-bottom: 3px;
  padding-top: 3px;
}

#navbarNav > .navbar-nav > li > a:hover {
  background: #fafafa;
  border-radius: 8px;
}

#userMenuDropdown.dropdown-toggle::after {
  content: none !important;
}

#userMenuDropdown {
  background: #fff;
  color: #181a1b;
  border: 1px solid #e1e2e2;
  min-width: 177px;
}

.user-icon {
  display: flex;
}

.user-name {
  font-size: 14px;
  font-weight: 500;
  color: #181a1b;
  line-height: 21px;

  max-width: 180px; /* adjust based on your header */
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}

.user-dropdown .dropdown-item {
  font-size: 14px;
  font-weight: 400;
  color: #181a1b;
  line-height: 21px;
}

#navbarNav .navbar-nav .dropdown-toggle::after {
  content: "";
  display: inline-block;
  width: 0.4em;
  /* size of your caret */
  height: 0.4em;
  border-right: 0.1em solid currentColor;
  border-bottom: 0.1em solid currentColor;
  border-left: unset;
  border-top: unset;
  transform: rotate(45deg);
  /* rotate the “L” into a “V” */
  transform-origin: center;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  transition: transform 0.25s ease;
}

/* hover effect */
#navbarNav .navbar-nav .dropdown-toggle:hover::after {
  transform: rotate(225deg); /* arrow up */
  vertical-align: 0;
}

/* =========================
   FOOTER CSS
   ========================= */
:root {
  --footer-bg: #002636;
  /* dark blue */
  --footer-text: #e2eef1;
  /* body text */
  --footer-head: #ffffff;
  /* column titles */
  --footer-link: #b3b6b7;
  /* links */
  --footer-link-hover: #9fd6ff;
  /* hover accent */
  --footer-sep: rgba(255, 255, 255, 0.18);
  --footer-gap: 2.2rem;
  --footer-font-size: 15px;
  --footer-small: 13px;
}

/* wrapper */
#footer {
  background: var(--footer-bg) !important;
  color: var(--footer-text);
  font-size: var(--footer-font-size);
  padding: 3.5rem 0 2.5rem;
  line-height: 1.45;
}

/* general link styling */
#footer a {
  color: var(--footer-link);
  text-decoration: none;
  transition:
    color 0.15s ease,
    opacity 0.15s ease;
}

#footer a:hover,
#footer a:focus {
  color: var(--footer-link-hover);
  text-decoration: underline;
}

.footer-contact-text {
  font-size: 14px;
  line-height: 21px;
  color: #c7c7cc;
  font-weight: 400;
}

#footer .footer-contact-value {
  color: #e5e5ea;
}

/* brand + socials */
.footer-brand-social {
  color: var(--footer-head);
}

.footer-brand-social .footer-logo img,
.footer-brand-social .footer-logo svg {
  max-width: 70px;
  height: auto;
  display: block;
}

/* social list */
.footer-social {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 1.1rem;
}

.footer-social li a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  opacity: 0.9;
}

.footer-social li a:hover {
  opacity: 1;
}

.footer-social svg,
.footer-social i {
  width: 20px;
  height: 20px;
}

/* columns block */
.footer-nav .row {
  row-gap: var(--footer-gap);
}

.footer-col h3 {
  color: var(--footer-head);
  margin: 0 0 0.75rem;
  font-size: 18px;
  font-weight: 600;
}

.footer-nav .col-title {
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0%;
  vertical-align: middle;
  color: #fafafa;
}

.footer-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-menu li + li {
  margin-top: 0.4rem;
}

.footer-menu li {
  font-weight: 400;
  font-size: 14px;
  line-height: 21px;
  letter-spacing: 1%;
  margin-bottom: 15px;
}

/* divider */
#footer hr,
.footer-sep {
  border: 0;
  border-top: 1px solid var(--footer-sep);
  margin: 2.2rem 0 1.8rem;
}

/* bottom bar */
.footer-bottom {
  font-size: var(--footer-small);
}

.footer-bottom p {
  margin: 0;
}

.footer-legal-nav .menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.footer-legal-nav .menu li {
  margin: 0;
}

/* widget area (optional) */
#footer .widget {
  color: var(--footer-text);
}

#footer .widget a {
  color: var(--footer-link);
}

#footer .widget-title {
  color: var(--footer-head);
  font-size: 17px;
  margin-bottom: 0.6rem;
}

/* responsive tweaks */
@media (max-width: 991.98px) {
  .footer-brand-social {
    margin-bottom: 2rem;
  }

  .footer-legal-nav .menu {
    justify-content: flex-start !important;
  }
}

@media (max-width: 575.98px) {
  #footer {
    padding: 2.5rem 0 2rem;
  }

  .footer-col h3 {
    font-size: 16px;
  }

  .footer-social {
    gap: 0.9rem;
  }

  .footer-social svg,
  .footer-social i {
    width: 18px;
    height: 18px;
  }

  .footer-legal-nav .menu {
    gap: 1rem;
  }
}

/* =========================
   FOOTER MOBILE ACCORDION
   ========================= */
@media (max-width: 767.98px) {
  /* stack columns */
  .footer-nav .col-6,
  .footer-nav .col-lg-3 {
    width: 100%;
    max-width: 100%;
  }

  .footer-nav .row {
    row-gap: 5px !important;
  }

  #footer .footer-nav .mb-4 {
    margin-bottom: 0 !important;
  }

  #footer .footer-nav .mb-3 {
    margin-bottom: 0 !important;
  }

  /* stack bottom legal links vertically */
  #footer .footer-bottom ul {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start !important;
    gap: 12px;
  }

  /* override Bootstrap justify-content-end */
  #footer .footer-bottom .justify-content-end {
    justify-content: flex-start !important;
  }

  /* ensure full width so it doesn't try to float right */
  #footer .footer-bottom .col-md-6 {
    width: 100%;
    max-width: 100%;
  }

  /* title as accordion button */
  .footer-nav .col-title {
    position: relative;
    padding: 14px 36px 14px 0;
    margin-bottom: 0;
    cursor: pointer;
    font-size: 15px;
    line-height: 24px;
    font-weight: 500;
  }

  /* chevron */
  .footer-nav .col-title::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 20px;
    height: 20px;
    transform: translateY(-50%) rotate(0deg);
    transition: transform 0.25s ease;
    opacity: 0.9;

    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  }

  /* collapsed by default */
  .footer-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease;
    padding-top: 0;
  }

  /* active state */
  .footer-nav .footer-col-active + .footer-menu {
    max-height: 500px; /* safe large value */
    padding-top: 12px;
  }

  .footer-nav .footer-col-active.col-title::after {
    transform: translateY(-50%) rotate(180deg);
  }

  /* spacing */
  .footer-menu li {
    margin-bottom: 12px;
  }

  .copyright_text {
    margin-top: 15px !important;
    margin-bottom: 24px;
  }
  .copyright_text p {
    color: #edeeee;
    font-size: 12px;
    line-height: 18px;
    font-weight: 400;
  }

  .other-links a {
    color: #e5e5ea;
    font-size: 12px;
    line-height: 18px;
    font-weight: 400;
  }
}

/*FROM CUSTOMIZER*/

.landing-page-wrapper > section {
  padding: 70px 0;
}

body #main {
  margin-top: 0;
}

.home .page-title-area,
.home .breadcrumbs-container,
.home .breadcrumbs {
  display: none;
}

div.breadcrumbs-container {
  background-color: #fafafa !important;
}

.nav-item > a.nav-link {
  color: #181a1b;
  padding-left: 10px !important;
  padding-right: 10px !important;
  font-weight: 500;
}

#langToggle svg {
  margin-top: -2px;
}

a.top-color-link {
  color: #444748 !important;
  font-weight: 500 !important;
  letter-spacing: 0.14px;
  font-size: 14px;
}

/* =========================
   JOBS PORTAL CSS
   ========================= */

/* Full-bleed filter bar even if inside a narrow parent */
.jp-filters-wrapper {
  /* position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    width: 100vw;*/
  background: #fff;
  padding: 12px 0;
  z-index: 1;
}

/* Inner container to constrain controls */
.jp-filters-inner {
  /*max-width: 1200px;*/
  margin: 0 auto;
  /*padding: 0 16px;*/
  display: flex;
  width: 100%;
}

/* Reuse existing row styling within form */
.jp-filters {
  flex: 1;
}

.jp-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: flex-start;
  row-gap: 0.75rem;
  width: 100%;
}

.jp-filter-item {
  display: flex;
}

.jp-filter-item input,
.jp-filter-item select {
  padding: 10px 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  font-size: 0.95rem;
  min-width: 160px;
  width: 100%;
  height: 44px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.03);
  color: #6d7274;
}

.jp-filter-item.jp-search {
  flex: 1 1 220px;
  min-width: 180px;
}

.jp-actions {
  display: flex;
  /*flex-direction: column;*/
  gap: 4px;
}

.jp-filter-apply {
  background: #1f2d3d;
  color: #fff;
  border: none;
  padding: 10px 30px 10px 18px;
  border-radius: 8px;
  cursor: pointer;
  font-size: 0.95rem;
  font-weight: 600;
}

.jp-filter-clear {
  font-size: 0.85rem;
  color: #0d6efd;
  text-decoration: none;
  margin-top: 2px;
  align-self: flex-start;
}

/* Optional: ensure job list below doesn't get overlapped */
.jp-job-list-wrapper {
  padding-top: 4px;
  /* adjust if needed to give breathing room under filter bar */
}

.jp-jobs-container {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 10px;
}

.jp-job-card {
  display: flex;
  justify-content: space-between;
  padding: 18px 24px;
  border: 1px solid #e6e8ed;
  border-radius: 12px;
  background: #fff;
  align-items: center;
  gap: 16px;
  flex-wrap: nowrap;
}

.jp-job-card:hover {
  background: #fafafa;
}

.jp-card-left {
  flex: 1;
  min-width: 0;
}

.jp-ref {
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #6b6f82;
  margin-bottom: 4px;
}
.jp-jobs-container .jp-job-card .jp-title {
  margin: 0;
}

.jp-jobs-container .jp-job-card .jp-title a {
  margin: 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  margin: 10px 0;
  color: #181a1b;
}

.jp-title a {
  color: #1f2d3d;
  text-decoration: none;
}

.jp-meta {
  margin-top: 4px;
  font-size: 0.85rem;
  color: #6b6f82;
  display: flex;
  align-items: center;
  gap: 6px;
}

.jp-meta > * {
  font-size: 14px;
}

.jp-meta-sep {
  margin: 0 6px;
}

.jp-card-right {
  flex-shrink: 0;
}

.jp-badge {
  display: inline-block;
  padding: 6px 14px;
  border-radius: 8px;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: none;
  white-space: nowrap;
}

.status-new {
  background: #d1fadf;
  color: #05603a;
}

.status-in_progress {
  background: #fef0c7;
  color: #93370d;
}

.status-results {
  background: #c1e7f5;
  color: #005c82;
}

.jp-pagination {
  margin-top: 16px;
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: space-between;
}

.jp-nav {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid #e6e8ed;
  border-radius: 9999px;
  color: #1f2d3d;
  text-decoration: none;
  background: #fff;
}

.jp-nav.is-disabled {
  opacity: 0.45;
  pointer-events: none;
  line-height: 26px;
  font-size: 14px;
}

.jp-pagination .jp-page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  color: #6d7274;
  text-decoration: none;
  font-size: 14px;
  line-height: 21px;
  font-weight: 400;
}

.jp-pagination .jp-page-link.current {
  background: #eaf7fc;
  color: #181a1b;
  font-size: 14px;
  border: 1px solid #eaf7fc;
  font-weight: 500;
  line-height: 21px;
}

/* Search input: magnifying glass on the RIGHT */
.jp-filter-item.jp-search input[type="text"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b6f82' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  /* ⇦ right side */
  background-size: 18px 18px;
  padding-right: 42px;
  /* room for icon */
  padding-left: 14px;
}

/* "Filter" button: funnel icon on the RIGHT */
.jp-filter-apply {
  position: relative;
  padding-right: 40px;
  /* room for icon */
}

.jp-filter-apply::after {
  content: "";
  position: absolute;
  right: 10px;
  /* ⇦ right side */
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background: no-repeat center/18px 18px
    url("data:image/svg+xml;utf8,<svg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'><g clip-path='url(%23clip0_11_2607)'><path d='M3.86274 0.0410156C3.92459 0.046008 3.98546 0.0598128 4.0434 0.0820312C4.10017 0.107037 4.15366 0.141128 4.20063 0.181641H4.24164L13.2016 9.03418C13.3172 9.14997 13.3823 9.30711 13.3823 9.4707C13.3822 9.63431 13.3172 9.79145 13.2016 9.90723C13.1449 9.96534 13.0764 10.0109 13.0014 10.042C12.9265 10.0731 12.8462 10.0887 12.7651 10.0879C12.6841 10.0883 12.6036 10.073 12.5288 10.042C12.4539 10.0109 12.3855 9.96488 12.3286 9.90723L9.31391 6.92578L9.26508 7V13.3828C9.26283 13.5457 9.19668 13.7012 9.08149 13.8164C8.96611 13.9318 8.81006 13.9979 8.64692 14H5.35297C5.18987 13.9978 5.03375 13.9318 4.9184 13.8164C4.80333 13.7012 4.73803 13.5456 4.73578 13.3828V7L0.329533 1.02148C0.259897 0.930951 0.217672 0.821768 0.207463 0.708008C0.197334 0.59439 0.219592 0.480271 0.271916 0.378906C0.324398 0.277745 0.403236 0.192315 0.500432 0.132812C0.597672 0.0733075 0.709674 0.0417084 0.823674 0.0410156H3.86274ZM2.05903 1.23535L5.84711 6.43164C5.92775 6.5351 5.97175 6.66278 5.97113 6.79395V12.7646H8.02973V6.79395C8.02911 6.66281 8.07218 6.53508 8.15278 6.43164L8.42524 6.05273L3.55805 1.23535H2.05903ZM13.1762 0C13.2902 0.000692459 13.4022 0.0323407 13.4995 0.0917969C13.5967 0.151302 13.6755 0.236696 13.728 0.337891C13.7803 0.439295 13.8036 0.553326 13.7934 0.666992C13.7832 0.780752 13.74 0.889935 13.6704 0.980469L11.4057 4.06836C11.3096 4.19922 11.1657 4.28678 11.0053 4.31152C10.8447 4.33623 10.6803 4.2963 10.5493 4.2002C10.4183 4.10409 10.3308 3.95941 10.3061 3.79883C10.2815 3.63842 10.3215 3.47468 10.4174 3.34375L11.9409 1.23535H7.41156C7.24792 1.23526 7.09078 1.17038 6.97504 1.05469C6.85921 0.938856 6.79438 0.780998 6.79438 0.617188C6.7945 0.453543 6.85932 0.296387 6.97504 0.180664C7.09079 0.0649503 7.2479 8.92946e-05 7.41156 0H13.1762Z' fill='white'/></g><defs><clipPath id='clip0_11_2607'><rect width='14' height='14' fill='white'/></clipPath></defs></svg>");
}

/* --- Mobile trigger button --- */
.jp-filters-trigger {
  display: none;
  /* hidden on desktop */
  width: 100%;
  height: 44px;
  border-radius: 999px;
  border: 0;
  background: #181a1b;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  position: relative;
}

.jp-filters-trigger::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background: no-repeat center/18px 18px
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23ffffff' stroke-width='2' viewBox='0 0 24 24'><line x1='4' y1='6' x2='20' y2='6'/><line x1='7' y1='12' x2='17' y2='12'/><line x1='10' y1='18' x2='14' y2='18'/></svg>");
}

/* --- Modal shell --- */
.jp-filters-modal[aria-hidden="true"] {
  display: none;
}

.jp-filters-modal.is-open {
  display: block;
}

#jp-filters-modal .jp-filter-clear {
  display: none;
}
#jp-filters-modal .jp-filters {
  padding-top: 30px;
  padding-bottom: 30px;
}
#jp-filters-modal .jp-sheet-close {
  background: transparent;
}

#jp-filters-modal .jp-filter-apply::after {
  display: none;
}

#jp-filters-modal .jp-filter-item {
  flex-direction: column;
}

#jp-filters-modal .jp-filter-label {
  width: 100%;
  padding: 0 0 10px 0;
  color: #444748;
  font-size: 14px;
  line-height: 21px;
}

#jp-filters-modal .jp-filter-apply {
  border-radius: 50px;
}

.jp-filters-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  z-index: 10000;
}

.jp-filters-sheet {
  position: fixed;
  left: 50%;
  top: 40%;
  transform: translate(-50%, -50%);
  width: calc(100% - 32px);
  max-width: 520px;
  background: #fff;
  border-radius: 16px;
  padding: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
  z-index: 10001;
}

.jp-sheet-title {
  margin: 4px 0 12px;
  font-size: 1.25rem;
  font-weight: 700;
}

.jp-sheet-close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 0;
  background: #f3f4f6;
  cursor: pointer;
  font-size: 22px;
}

/* Forms inside modal: full-width stacked */
/*.jp-filters.is-modal .jp-filter-row {
  flex-direction: column;
}*/
.jp-filters.is-modal .jp-filter-item {
  width: 100%;
}

.jp-filters.is-modal .jp-actions {
  flex-direction: column;
  gap: 6px;
  margin-top: 10px;
}

.jp-filters.is-modal .jp-filter-apply {
  width: 100%;
}

.jp-filters.is-modal .jp-filter-clear {
  align-self: center;
}

/* Desktop shows inline bar; Mobile shows trigger + modal */
@media (max-width: 768px) {
  .landing-page-wrapper > section {
    padding: 15px;
  }

  .jp-filters-inner {
    display: none;
  }

  /* hide inline bar */
  .jp-filters-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .jp-filters-trigger::after {
    position: static;
    transform: none;
  }

  .jp-title {
    margin-bottom: 15px;
  }
}

/* Card layout tweaks for mobile (badge below) */
@media (max-width: 640px) {
  .jp-job-card {
    flex-direction: column;
    align-items: flex-start;
  }

  .jp-meta {
    flex-wrap: wrap;
  }

  .jp-meta-category,
  .jp-meta-deadline {
    width: 100%;
  }

  .jp-meta-sep {
    display: none;
  }
}

/* Make whole card tappable (visual) */
.jp-job-card {
  cursor: pointer;
}

.jp-job-card a {
  pointer-events: none;
}

/* prevent double focus; JS will navigate */

/* --- Clear button: pill with × icon --- */
.jp-filter-clear {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  /* space between × and text */
  padding: 8px 14px;
  height: 42px;
  border-radius: 9999px;
  /* full pill */
  background: #f3f4f6;
  /* light grey */
  border: 1px solid #e6e8ed;
  color: #1f2d3d;
  /* dark text */
  text-decoration: none;
  /* remove underline */
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  margin-top: 0;
}

.jp-filter-clear::before {
  content: "\00D7";
  /* × */
  font-size: 16px;
  line-height: 1;
  opacity: 0.75;
  transform: translateY(-1px);
  /* tiny optical alignment */
}

.jp-filter-clear:hover {
  background: #eceff3;
  border-color: #dfe3e8;
  color: #111827;
}

.jp-filter-clear:active {
  background: #e8ebf0;
}

.jp-filter-clear:focus-visible {
  outline: 2px solid #0d6efd33;
  outline-offset: 2px;
}

/* =========================
   PROCUREMENT LIST (desktop + mobile)
   ========================= */

/* --- Filters: desktop inline + mobile modal --- */
.pr-filters-wrapper {
  margin-bottom: 20px;
}

.pr-filters-inner {
  width: 100%;
}

.pr-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  row-gap: 0.75rem;
  align-items: flex-start;
}

.pr-filter-item.pr-search {
  flex: 1 1 320px;
}

/* Inputs */
.pr-filter-item input,
.pr-filter-item select {
  padding: 10px 14px;
  height: 44px;
  border: 1px solid #d1d7e0;
  border-radius: 8px;
  background: #fff;
  font-size: 0.95rem;
  width: 100%;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.03);
  color: #6b7274;
}

.pr-filter-item input:focus,
.pr-filter-item select:focus {
  outline: 0;
  border-color: #8fb4ff;
  box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.12);
}

/* Right-side icons inside inputs */
/*.pr-filter-item.pr-search input[type="text"] {
  background: no-repeat right 12px center / 18px 18px
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%236b6f82' stroke-width='2' viewBox='0 0 24 24'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");
  padding-right: 42px;
}
.pr-filter-item input[type="date"] {
  background: no-repeat right 12px center / 18px 18px
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%236b6f82' stroke-width='2' viewBox='0 0 24 24'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");
  padding-right: 42px;
  min-width: 180px;
}*/

/* Actions */
.pr-actions {
  display: flex;
  gap: 6px;
  /*flex-direction: column;*/
  align-items: center;
}

.pr-filter-apply {
  position: relative;
  background: #1f2d3d;
  color: #fff;
  border: 0;
  border-radius: 8px;
  padding: 10px 40px 10px 18px;
  cursor: pointer;
  font-weight: 600;
  font-size: 0.95rem;
}

.pr-filter-apply::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  background: no-repeat center/18px 18px
    url("data:image/svg+xml;utf8,<svg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'><g clip-path='url(%23clip0_11_2607)'><path d='M3.86274 0.0410156C3.92459 0.046008 3.98546 0.0598128 4.0434 0.0820312C4.10017 0.107037 4.15366 0.141128 4.20063 0.181641H4.24164L13.2016 9.03418C13.3172 9.14997 13.3823 9.30711 13.3823 9.4707C13.3822 9.63431 13.3172 9.79145 13.2016 9.90723C13.1449 9.96534 13.0764 10.0109 13.0014 10.042C12.9265 10.0731 12.8462 10.0887 12.7651 10.0879C12.6841 10.0883 12.6036 10.073 12.5288 10.042C12.4539 10.0109 12.3855 9.96488 12.3286 9.90723L9.31391 6.92578L9.26508 7V13.3828C9.26283 13.5457 9.19668 13.7012 9.08149 13.8164C8.96611 13.9318 8.81006 13.9979 8.64692 14H5.35297C5.18987 13.9978 5.03375 13.9318 4.9184 13.8164C4.80333 13.7012 4.73803 13.5456 4.73578 13.3828V7L0.329533 1.02148C0.259897 0.930951 0.217672 0.821768 0.207463 0.708008C0.197334 0.59439 0.219592 0.480271 0.271916 0.378906C0.324398 0.277745 0.403236 0.192315 0.500432 0.132812C0.597672 0.0733075 0.709674 0.0417084 0.823674 0.0410156H3.86274ZM2.05903 1.23535L5.84711 6.43164C5.92775 6.5351 5.97175 6.66278 5.97113 6.79395V12.7646H8.02973V6.79395C8.02911 6.66281 8.07218 6.53508 8.15278 6.43164L8.42524 6.05273L3.55805 1.23535H2.05903ZM13.1762 0C13.2902 0.000692459 13.4022 0.0323407 13.4995 0.0917969C13.5967 0.151302 13.6755 0.236696 13.728 0.337891C13.7803 0.439295 13.8036 0.553326 13.7934 0.666992C13.7832 0.780752 13.74 0.889935 13.6704 0.980469L11.4057 4.06836C11.3096 4.19922 11.1657 4.28678 11.0053 4.31152C10.8447 4.33623 10.6803 4.2963 10.5493 4.2002C10.4183 4.10409 10.3308 3.95941 10.3061 3.79883C10.2815 3.63842 10.3215 3.47468 10.4174 3.34375L11.9409 1.23535H7.41156C7.24792 1.23526 7.09078 1.17038 6.97504 1.05469C6.85921 0.938856 6.79438 0.780998 6.79438 0.617188C6.7945 0.453543 6.85932 0.296387 6.97504 0.180664C7.09079 0.0649503 7.2479 8.92946e-05 7.41156 0H13.1762Z' fill='white'/></g><defs><clipPath id='clip0_11_2607'><rect width='14' height='14' fill='white'/></clipPath></defs></svg>");
}

.pr-filter-apply:hover {
  opacity: 0.95;
}

/* Clear = pill with × */
.pr-filter-clear {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  height: 36px;
  border-radius: 9999px;
  background: #f3f4f6;
  border: 1px solid #e6e8ed;
  color: #1f2d3d;
  text-decoration: none;
  font-size: 0.95rem;
  font-weight: 600;
  white-space: nowrap;
}

.pr-filter-clear::before {
  content: "\00D7";
  font-size: 16px;
  opacity: 0.75;
  transform: translateY(-1px);
}

.pr-filter-clear:hover {
  background: #eceff3;
  border-color: #dfe3e8;
  color: #111827;
}

/* Mobile trigger: centered text + icon */
.pr-filters-trigger {
  display: none;
  margin: 0;
  width: 100%;
  height: 44px;
  border-radius: 999px;
  border: 0;
  background: #181a1b;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.pr-filters-trigger::after {
  content: "";
  width: 18px;
  height: 18px;
  background: no-repeat center/18px 18px
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23ffffff' stroke-width='2' viewBox='0 0 24 24'><line x1='4' y1='6' x2='20' y2='6'/><line x1='7' y1='12' x2='17' y2='12'/><line x1='10' y1='18' x2='14' y2='18'/></svg>");
}

#pr-filters-modal .pr-filters {
  padding-top: 30px;
  padding-bottom: 30px;
}

/* Modal shell */
.pr-filters-modal[aria-hidden="true"] {
  display: none;
}

.pr-filters-modal.is-open {
  display: block;
}

.pr-filters-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  z-index: 10000;
}

.pr-filters-sheet {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 32px);
  max-width: 520px;
  background: #fff;
  border-radius: 16px;
  padding: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
  z-index: 10;
  z-index: 10001;
}

.pr-sheet-title {
  margin: 4px 0 12px;
  font-size: 1.25rem;
  font-weight: 700;
}

.pr-sheet-close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 22px;
}

#pr-filters-modal .pr-filter-item {
  flex-direction: column;
}

.pr-filter-label {
  width: 100%;
  padding: 0 0 10px 0;
  color: #444748;
  font-size: 14px;
  line-height: 21px;
}

/* Modal form = stacked */
/*.pr-filters.is-modal .pr-filter-row {
  flex-direction: column;
}*/
.pr-filters.is-modal .pr-actions {
  gap: 6px;
}

.pr-filters.is-modal .pr-filter-apply {
  width: 100%;
}

.pr-filters.is-modal .pr-filter-clear {
  align-self: center;
}

/* Show trigger on small screens, hide inline form */
@media (max-width: 768px) {
  .pr-filters-inner {
    display: none;
  }

  .pr-filters-trigger {
    display: inline-flex;
  }

  .pr-filter-item {
    width: 100%;
  }

  .p-supply .site-main,
  .p-procurement .site-main {
    display: none;
  }

  .home-slider .slider-content__btn {
    margin-bottom: 10px !important;
  }

  #pr-filters-modal .pr-filter-apply {
    border-radius: 50px;
  }
  #pr-filters-modal .pr-filter-apply::after {
    display: none;
  }
  .pr-actions {
    width: 100%;
    margin-top: 10px;
  }
}

/* --- Table-like grid (desktop) --- */
.pr-head {
  display: grid;
  grid-template-columns: 120px 1fr 130px 140px 140px 120px 100px;
  column-gap: 14px;
  padding: 10px 12px;
  color: #6b6f82;
  font-weight: 600;
  border-bottom: 1px solid #e6e8ed;
}

.pr-head .col {
  white-space: nowrap;
  font-size: 14px;
  font-weight: 400;
  line-height: 21px;
}

.pr-list {
  margin-top: 6px;
}

.pr-item {
  display: grid;
  grid-template-columns: 120px 1fr 130px 140px 140px 120px 100px;
  column-gap: 14px;
  align-items: center;
  padding: 14px 12px;
  border-bottom: 1px solid #eef1f6;
  background: #fff;
}

.pr-item .col a {
  color: #1f2d3d;
  text-decoration: none;
}

/*.pr-item .col a:hover {
  text-decoration: underline;
}*/

.pr-badge {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 600;
  background: #c1e7f5;
  color: #005c82;
}

.pr-status-open .pr-badge {
  background: #d1fadf;
  color: #05603a;
}

.pr-status-evaluating .pr-badge {
  background: #fef0c7;
  color: #93370d;
}

.pr-status-awarded .pr-badge {
  background: #c1e7f5;
  color: #005c82;
}

.pr-status-cancelled .pr-badge {
  background: #f4d7d7;
  color: #7a1b1b;
}

.pr-filters select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
}

.pr-filters select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236B7280' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 12px 8px;

  padding-right: 40px;
  /* space for arrow */
}

.col-deadline .pr-m-label {
  display: none;
  margin-right: 6px;
  color: #6b6f82;
}

.col-type,
.col-lang,
.col-fee {
  color: #3d4755;
}

.pr-item[data-href] {
  cursor: pointer;
}

.pr-item[data-href]:hover {
  background: #fafafa; /* optional */
}

/* --- Cards (mobile) --- */
@media (max-width: 860px) {
  .pr-head {
    display: none;
  }

  .pr-item {
    grid-template-columns: 1fr;
    row-gap: 8px;
    padding: 12px 14px;
    margin: 8px 0;
    border: 1px solid #e6e8ed;
    border-radius: 12px;
  }

  .col-ref {
    order: 1;
  }

  .col-title {
    order: 2;
  }

  .col-title a {
    font-weight: 600;
  }

  .col-deadline {
    order: 3;
    color: #6b6f82;
  }

  .col-deadline .pr-m-label {
    display: inline;
  }

  .col-type {
    order: 4;
    color: #6b6f82;
  }

  .col-lang,
  .col-fee {
    order: 5;
    color: #6b6f82;
  }

  .col-status {
    order: 6;
  }
}

/* --- Pagination (previous/next + numbers + ellipses) --- */
.pr-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 16px 0;
  flex-wrap: wrap;
}

body .pr-pagination a.pr-nav {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid #e6e8ed;
  border-radius: 9999px;
  color: #1f2d3d;
  text-decoration: none;
  background: #fff;
}

.pr-nav.is-disabled {
  opacity: 0.45;
  pointer-events: none;
  line-height: 40px;
  font-size: 14px;
}

.pr-arrow {
  font-weight: 700;
}

.pr-pages {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.pr-page {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  color: #6d7274;
  text-decoration: none;
  font-size: 14px;
  line-height: 21px;
  background: #fff;
  font-weight: 400;
}

.pr-page.current {
  background: #eaf7fc;
  color: #181a1b;
  border: 1px solid #eaf7fc;
  font-weight: 500;
}

.pr-ellipsis {
  color: #6b6f82;
  padding: 0 4px;
}

/* --- MOBILE: line up meta inline as in the design --- */
@media (max-width: 860px) {
  /* turn the card into a 2-col grid */
  .pr-item {
    display: grid;
    grid-template-columns: auto 1fr;
    row-gap: 6px;
    column-gap: 10px;
    padding: 14px 16px;
    margin: 8px 0;
    border: 1px solid #e6e8ed;
    border-radius: 12px;
    background: #fff;
  }

  /* top bits */
  .pr-item .col-ref {
    grid-column: 1 / -1;
    grid-row: 1;
    font-size: 0.9rem;
    color: #9aa3af;
  }

  .pr-item .col-title {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .pr-item .col-title a {
    font-weight: 700;
    font-size: 1.05rem;
    line-height: 1.35;
    color: #0f172a;
    text-decoration: none;
  }

  /* Row 1: deadline + type */
  .pr-item .col-deadline {
    grid-column: 1;
    grid-row: 3;
    color: #6b6f82;
    white-space: nowrap;
  }

  .pr-item .col-deadline .pr-m-label {
    display: inline;
    margin-right: 6px;
  }

  .pr-item .col-type {
    grid-column: 2;
    grid-row: 3;
    color: #6b6f82;
    justify-self: start;
    white-space: nowrap;
  }

  .pr-item .col-deadline::after {
    content: " •";
    color: #b3bac6;
    margin-left: 8px;
  }

  /* Row 2: language + fee */
  .pr-item .col-lang {
    grid-column: 1;
    grid-row: 4;
    color: #6b6f82;
    white-space: nowrap;
  }

  .pr-item .col-fee {
    grid-column: 2;
    grid-row: 4;
    color: #6b6f82;
    white-space: nowrap;
  }

  .pr-item .col-lang::after {
    content: " •";
    color: #b3bac6;
    margin-left: 8px;
  }

  /* badge bottom-left */
  .pr-item .col-status {
    grid-column: 1;
    grid-row: 5;
    margin-top: 6px;
  }

  .pr-badge {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 700;
    background: #fff4dc;
    color: #7a4b00;
  }
}
@media (max-width: 768px) {
  body .pr-pagination .pr-nav {
    font-size: 0;
    gap: 0 !important;
  }
  body .pr-pagination .pr-nav .pr-arrow {
    font-size: 14px;
  }

  body .jp-pagination .jp-nav {
    font-size: 0;
    gap: 0 !important;
    line-height: 20px !important;
  }
  body .jp-pagination .jp-nav .jp-arrow {
    font-size: 14px;
  }
}

/* MOBILE: make meta inline so "Greek • Fee text" are close together */
@media (max-width: 860px) {
  .pr-item {
    display: flex;
    /* override grid */
    flex-wrap: wrap;
    gap: 6px 12px;
    /* row gap | column gap */
    padding: 14px 16px;
    margin: 8px 0;
    border: 1px solid #e6e8ed;
    border-radius: 12px;
    background: #fff;
  }

  /* full-width lines */
  .pr-item .col-ref,
  .pr-item .col-title,
  .pr-item .col-status {
    flex: 1 1 100%;
  }

  /* inline meta chips */
  .pr-item .col-deadline,
  .pr-item .col-type,
  .pr-item .col-lang,
  .pr-item .col-fee {
    flex: 0 0 auto;
    white-space: nowrap;
    color: #6b6f82;
    font-size: 0.95rem;
  }

  /* order: ref → title → (deadline • type) → (lang • fee) → badge */
  .pr-item .col-ref {
    order: 1;
    color: #9aa3af;
  }

  .pr-item .col-title {
    order: 2;
  }

  .pr-item .col-deadline {
    order: 3;
  }

  .pr-item .col-type {
    order: 4;
  }

  .pr-item .col-lang {
    order: 5;
  }

  .pr-item .col-fee {
    order: 6;
  }

  .pr-item .col-status {
    order: 7;
    margin-top: 6px;
  }

  /* mid-dots between pairs */
  .pr-item .col-deadline::after,
  .pr-item .col-lang::after {
    content: " •";
    color: #b3bac6;
    margin-left: 8px;
  }
}

/* =========================
   POSTS CSS
   ========================= */

.single #comments-title,
.single .entry-content,
.single .post-navigation {
  margin: 2rem 0;
}

.post-article__content p {
  margin: 0 0 2rem;
}

.post-article__date,
.post-article__channel,
.post-article__channel a {
  color: #444748;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
}

.post-article__meta .post-article__channel a {
  color: #444748;
  font-weight: 600;
}

.post-article__title {
  font-weight: 500;
  color: #181a1b;
  font-size: 26px;
  line-height: 32px;
}

.post-article__content {
  color: #444748;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
}

.pl-filter-apply::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  background-repeat: no-repeat;
  background-size: 18px 18px;
  /* funnel icon */
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><line x1='4' y1='6' x2='20' y2='6'/><line x1='7' y1='12' x2='17' y2='12'/><line x1='10' y1='18' x2='14' y2='18'/></svg>");
}

/* calendar icon on the RIGHT for date */
/*.pl-filter-item input[type="date"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b6f82' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 18px 18px;
  padding-right: 42px;
  min-width: 180px;
}*/

/* search icon on the RIGHT */
.pl-filter-item.pl-search input[type="text"] {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b6f82' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 18px 18px;
  padding-right: 42px;
}

/* ---------- base ---------- */
.pl-list-wrapper {
  font-family:
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Segoe UI,
    Roboto,
    Helvetica,
    Arial,
    sans-serif;
  color: #1f2d3d;
}

.pl-filters-wrapper {
  margin-bottom: 12px;
}

.pl-filters-inner {
  width: 100%;
}

.pl-filter-row {
  display: flex;
  gap: 0.5rem;
  row-gap: 0.75rem;
  flex-wrap: wrap;
  align-items: flex-start;
}

.pl-filter-item.pl-search {
  flex: 1 1 320px;
}

/* inputs */
.pl-filter-item input[type="text"],
.pl-filter-item input[type="date"] {
  width: 100%;
  min-width: 220px;
  padding: 12px 14px;
  border: 1px solid #d1d7e0;
  border-radius: 10px;
  background: #fff;
  font-size: 0.95rem;
  line-height: 1.2;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

.pl-filter-item input:focus {
  outline: 0;
  border-color: #8fb4ff;
  box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.12);
}

/* actions */
.pl-actions {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  /*flex-direction: column;*/
}

.pl-filter-item select {
  padding: 10px 14px;
  height: 44px;
  border: 1px solid #b3b6b7;
  border-radius: 8px;
  background: #fff;
  font-size: 0.95rem;
  width: 100%;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.03);
  color: #919597;
}

/* ---------- rows ---------- */

.pl-row {
  display: grid;
  /*grid-template-columns: 210px 1fr auto;*/
  grid-template-columns: 10% 86% 4%;
  align-items: center;
  gap: 14px;
  padding: 16px;
  border-bottom: 1px solid #eef1f6;
  transition: background-color 0.15s ease;
}

.pl-title,
.pl-date {
  transition: font-weight 0.15s ease;
}

.pl-row:hover {
  background: #e1e2e2;
}

.pl-row:hover .pl-title,
.pl-row:hover .pl-date {
  font-weight: 600;
}

.pl-row:hover .pl-col-more a {
  color: #fff;
  background-color: #000;
  border-radius: 50%;
}

.pl-col-more a {
  margin-top: auto;
  width: fit-content;
  padding: 8px;
  text-align: center;
  height: 30px;
  width: 30px;
  display: flex;
  align-items: center;
  line-height: 24px;
}

.pl-col-date {
  color: #6b6f82;
  font-size: 0.95rem;
}

.pl-weekday {
  color: #181a1b;
  font-weight: 400;
  font-size: 14px;
  line-height: 21px;
  display: block;
}

.pl-date {
  font-weight: 400;
  color: #181a1b;
  font-size: 16px;
  line-height: 24px;
  display: block;
}

.pl-list-wrapper a.pl-title {
  color: #181a1b;
  text-decoration: none;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
}

.pl-list-wrapper .pl-col-more a {
  color: #181a1b;
}

.pl-more {
  text-decoration: none;
  color: #0d6efd;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.pl-more span {
  display: inline-block;
}

/* empty */
.pl-empty {
  padding: 24px 0;
  color: #6b6f82;
}

/* ---------- pagination ---------- */
.pl-pagination {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-top: 20px;
  flex-wrap: wrap;
}

.pl-pagination a.pl-page {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  color: #6d7274;
  text-decoration: none;
  font-size: 14px;
  line-height: 21px;
  font-weight: 400;
}

.pl-pagination .pl-page.current {
  background: #eaf7fc;
  color: #181a1b;
  font-size: 14px;
  border: 1px solid #eaf7fc;
  font-weight: 500;
  line-height: 21px;
}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .pl-row {
    grid-template-columns: 1fr auto;
    /* date above title on small? keep beside */
    row-gap: 6px;
  }

  .pl-col-date {
    grid-column: 1 / -1;
  }
}

/* ====== Filters: desktop inline + mobile modal ====== */

.pl-filters-wrapper {
  margin-bottom: 12px;
}

.pl-filters-inner {
  width: 100%;
}

.pl-filter-row {
  display: flex;
  gap: 16px;
  row-gap: 0.75rem;
  flex-wrap: wrap;
  align-items: flex-start;
}

.pl-filter-item.pl-search {
  flex: 1 1 320px;
}

/* Inputs */
.pl-filter-item input[type="text"],
.pl-filter-item input[type="date"] {
  width: 100%;
  min-width: 220px;
  padding: 12px 14px;
  border: 1px solid #b3b6b7;
  border-radius: 10px;
  background: #fff;
  font-size: 0.95rem;
  line-height: 1.2;
  color: #919597;
  transition:
    border-color 0.15s,
    box-shadow 0.15s;
}

.pl-filter-item input:focus {
  outline: 0;
  border-color: #8fb4ff;
  box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.12);
}

/* Icons inside inputs */
.pl-filter-item.pl-search input[type="text"] {
  background: no-repeat right 12px center / 18px 18px
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b6f82' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");
  padding-right: 42px;
}

/*.pl-filter-item input[type="date"] {
  background: no-repeat right 12px center / 18px 18px
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b6f82' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2' ry='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");
  padding-right: 42px;
  min-width: 180px;
}*/

/* Actions */
.pl-actions {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  /*flex-direction: column;*/
}

.pl-filter-apply {
  position: relative;
  background: #1f2d3d;
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: 10px 44px 10px 16px;
  cursor: pointer;
  font-weight: 500;
  font-size: 16px;
}

.pl-filter-apply::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  background: no-repeat center/18px 18px
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23ffffff' stroke-width='2' viewBox='0 0 24 24'><line x1='4' y1='6' x2='20' y2='6'/><line x1='7' y1='12' x2='17' y2='12'/><line x1='10' y1='18' x2='14' y2='18'/></svg>");
}

.pl-filter-apply:hover {
  opacity: 0.95;
}

/* Clear = rounded pill with × */
.pl-filter-row a.pl-filter-clear {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 16px;
  border-radius: 9999px;
  background: #f3f4f6;
  border: 1px solid #e6e8ed;
  color: #181a1b;
  text-decoration: none;
  font-size: 16px;
  font-weight: 500;
  white-space: nowrap;
}

.pl-filter-clear::after {
  content: "\00D7";
  font-size: 16px;
  opacity: 0.75;
  transform: translateY(-1px);
  color: #6d7274;
}

.pl-filter-clear:hover {
  background: #eceff3;
  border-color: #dfe3e8;
  color: #111827;
}

/* Mobile trigger button (centered label + icon) */
.pl-filters-trigger {
  display: none;
  margin: 0 16px 8px;
  width: calc(100% - 32px);
  height: 44px;
  border-radius: 999px;
  border: 0;
  background: #1f2d3d;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.pl-filters-trigger::after {
  content: "";
  width: 18px;
  height: 18px;
  background: no-repeat center/18px 18px
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23ffffff' stroke-width='2' viewBox='0 0 24 24'><line x1='4' y1='6' x2='20' y2='6'/><line x1='7' y1='12' x2='17' y2='12'/><line x1='10' y1='18' x2='14' y2='18'/></svg>");
}

/* Modal shell */
.pl-filters-modal[aria-hidden="true"] {
  display: none;
}

.pl-filters-modal.is-open {
  display: block;
}

.pl-filters-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
}

.pl-filters-sheet {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 32px);
  max-width: 520px;
  background: #fff;
  border-radius: 16px;
  padding: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
  z-index: 10;
}

.pl-sheet-title {
  margin: 4px 0 12px;
  font-size: 1.25rem;
  font-weight: 700;
}

.pl-sheet-close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 0;
  background: #f3f4f6;
  cursor: pointer;
  font-size: 22px;
}

/* Modal form: stacked */
/*.pl-filters.is-modal .pl-filter-row {
  flex-direction: column;
}*/
.pl-filters.is-modal .pl-filter-item {
  width: 100%;
}

.pl-filters.is-modal .pl-actions {
  /*flex-direction: column;*/
  gap: 6px;
}

.pl-filters.is-modal .pl-filter-apply {
  width: 100%;
}

.pl-filters.is-modal .pl-filter-clear {
  align-self: center;
}

/* Show trigger on small screens, hide inline form */
@media (max-width: 768px) {
  .top-bar .top-color-link {
    font-size: 0;
  }
  .top-bar .top-color-link i,
  .top-bar .top-color-link svg {
    font-size: 14px;
  }
  #langToggle {
    font-size: 14px;
  }
  .top-bar .phone-icon {
    margin-top: 3px;
    padding-left: 1px;
  }
  .top-bar .search-icon {
    margin-top: -4px;
  }

  .pl-filters-inner {
    display: none;
  }

  .pl-filters-trigger {
    display: inline-flex;
  }

  .pl-col-date {
    display: flex;
    /* lay items horizontally */
    align-items: baseline;
    /* align text nicely */
    gap: 8px;
    /* space between weekday and date */
    white-space: nowrap;
    /* keep them together */
  }

  .pl-col-date .pl-weekday,
  .pl-col-date .pl-date {
    display: inline;
    /* override previous block rules */
    margin: 0;
    /* remove vertical spacing */
  }

  .pl-excerpt {
    display: none;
  }
}

/* ====== Rows ====== */
.pl-col-date {
  color: #6b6f82;
  font-size: 0.95rem;
}

.pl-excerpt {
  margin-top: 4px;
  color: #6b6f82;
  font-size: 0.95rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.pl-more {
  text-decoration: none;
  color: #0d6efd;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.pl-row {
  cursor: pointer;
}

.pl-row a {
  pointer-events: auto;
}

/* keep links active */

/* ====== Pagination ====== */

body .pl-pagination a.pl-nav {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid #e6e8ed;
  border-radius: 9999px;
  color: #181a1b;
  text-decoration: none;
  background: #fff;
}

.pl-nav.is-disabled {
  opacity: 0.45;
  pointer-events: none;
  line-height: 40px;
  font-size: 14px;
}

.pl-arrow {
  font-weight: 700;
}

.pl-pages {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.pl-ellipsis {
  color: #6b6f82;
  padding: 0 4px;
}

/* ====== Responsive rows ====== */
@media (max-width: 860px) {
  .pl-row {
    grid-template-columns: 1fr auto;
    row-gap: 6px;
  }

  .pl-col-date {
    grid-column: 1 / -1;
  }
}

/* Mobile: move the arrow link to the LEFT bottom */
@media (max-width: 860px) {
  /* make the row single-column */
  .pl-row {
    grid-template-columns: 240px 1fr 50px;
    /* was: 1fr auto */
  }

  /* keep date above title (already in DOM order) */
  .pl-col-date {
    grid-column: 1;
  }

  .pl-col-title {
    grid-column: 1;
  }

  /* arrow goes under the title, left aligned */
  .pl-col-more {
    grid-column: 1;
    justify-self: flex-start;
    /* align left */
    margin-top: 6px;
    /* small breathing room */
  }
}

/* =========================
   EVENTS CSS
   ========================= */

.ev-list {
  font-family:
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    Segoe UI,
    Roboto,
    Helvetica,
    Arial,
    sans-serif;
}

.ev-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr;
}

.ev-grid .ev-card__main h3.ev-card__title {
  margin: 10px 0;
}
@media (min-width: 768px) {
  .hideDesktop {
    display: none;
  }
}

@media (min-width: 820px) {
  .ev-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1200px) {
  .ev-grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* keep 2 columns like mock */

.ev-card {
  border: 1px solid #e6e8ed;
  border-radius: 12px;
  background: #fff;
  padding: 32px;
}

/*.ev-card.is-featured {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.05);
}*/

.ev-card__head {
  margin-bottom: 10px;
}

.ev-card__date {
  font-size: 18px;
  line-height: 28px;
  font-weight: 400;
  color: #444748;
  margin-bottom: 4px;
}

.ev-card__main h3.ev-card__title {
  font-size: 30px;
  color: #181a1b;
  font-weight: 500;
  line-height: 38px;
}

.ev-grid .ev-card__main .ev-card__excerpt {
  color: #6d7274;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  margin: 20px 0;
}

.ev-card__foot {
  margin-top: 14px;
}

.ev-card__foot .ev-card__more {
  color: #007aad;
  text-decoration: none;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  line-height: 22px;
}

.ev-empty {
  padding: 24px;
  color: #6b6f82;
  text-align: center;
}

.ev-pagination {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-top: 20px;
  flex-wrap: wrap;
}

body .ev-pagination a.ev-nav {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid #e6e8ed;
  border-radius: 9999px;
  color: #1f2d3d;
  text-decoration: none;
  background: #fff;
}

.ev-nav.is-disabled {
  opacity: 0.45;
  pointer-events: none;
  line-height: 40px;
  font-size: 14px;
}

.ev-pagination .ev-page {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  color: #6d7274;
  text-decoration: none;
  font-size: 14px;
  line-height: 21px;
}

.ev-pagination .ev-page.current {
  background: #eaf7fc;
  color: #181a1b;
  font-size: 14px;
  border: 1px solid #eaf7fc;
  font-weight: 500;
  line-height: 21px;
}

.ev-badge {
  display: inline-block;
  padding: 4px 15px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 500;
  line-height: 21px;
  margin-bottom: 8px;
}

.ev-badge--upcoming {
  color: #0a4;
  background: #d7f7e6;
}

.ev-badge--past {
  color: #6b6f82;
  background: #eceff5;
}

/* Make every event card a vertical flex box */
.ev-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  /* helps when grid stretches items */
}

/* Body expands to fill available space */
.ev-card__body {
  flex: 1 1 auto;
}

/* Footer is pushed to the bottom of the card */
.ev-card__foot {
  margin-top: auto;
  padding-top: 12px;
  /* keep some space from the excerpt */
}

/* Keep excerpt from adding extra bottom spacing */
.ev-card__excerpt {
  margin-bottom: 0;
}

.download-file {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border: 1px solid #e1e2e2;
  border-radius: 20px;
  background: #fff;
  margin-bottom: 15px;
}

.download-file::before {
  content: "";
  width: 11px;
  height: 14px;
  display: inline-block;
  background-color: #181a1b;

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath d='M6.66667 0H1.33333C0.6 0 0.00666682 0.6 0.00666682 1.33333L0 12C0 12.7333 0.593333 13.3333 1.32667 13.3333H9.33333C10.0667 13.3333 10.6667 12.7333 10.6667 12V4L6.66667 0ZM1.33333 12V1.33333H6V4.66667H9.33333V12H1.33333Z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-position: center;

  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath d='M6.66667 0H1.33333C0.6 0 0.00666682 0.6 0.00666682 1.33333L0 12C0 12.7333 0.593333 13.3333 1.32667 13.3333H9.33333C10.0667 13.3333 10.6667 12.7333 10.6667 12V4L6.66667 0ZM1.33333 12V1.33333H6V4.66667H9.33333V12H1.33333Z'/%3E%3C/svg%3E");
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
}

.download-file a {
  font-weight: 500;
  text-decoration: none;
  padding: 5px 0;
}

.download-file .dashicons {
  font-size: 16px;
}

.download-file a {
  color: #181a1b !important;
}

.download-file a:hover {
  color: #181a1b !important;
}

a.pr-filter-clear:after {
  content: none !important;
}

.pr-wrap a:after {
  content: none !important;
}

.hero-button:after {
  content: none !important;
}

.hero-button {
  color: #181a1b !important;
}

/* Checkout */
.woocommerce-billing-fields input,
.woocommerce-billing-fields .select2-selection,
.woocommerce-additional-fields textarea {
  border: 1px solid #b3b6b7 !important;
  border-radius: 6px !important;
}

button#place_order {
  background-color: #181a1b !important;
  color: white !important;
  border-radius: 50px !important;
  outline: none;
  padding: 5px;
  padding-left: 15px;
  font-size: 15px !important;
  padding-right: 15px;
  height: 42px;
  border: none;
  margin-top: 20px;
}

/* Mobile Application/Portal Version of Supply Subscription Form */
.page-id-1661 .top-bar,
.page-id-1473 .top-bar,
.page-id-1650 .top-bar,
.page-id-227 .top-bar,
.page-id-1671 .top-bar,
.page-id-3527 .top-bar,
.page-id-3590 .top-bar,
.page-id-1911 .top-bar,
.mobile-echarge-form .top-bar,
.mobile-echarge-termination-form .top-bar,
body.mobile-registration-page .top-bar,
.page-id-1661 header,
.page-id-1473 header,
.page-id-1650 header,
.page-id-227 header,
.page-id-1671 header,
.page-id-3527 header,
.page-id-3590 header,
.page-id-1911 header,
.mobile-echarge-form header,
.mobile-echarge-termination-form header,
body.mobile-registration-page header,
.page-id-1661 footer,
.page-id-1473 footer,
.page-id-1650 footer,
.page-id-227 footer,
.page-id-1671 footer,
.page-id-3527 footer,
.page-id-3590 footer,
.page-id-1911 footer,
.mobile-echarge-form footer,
.mobile-echarge-termination-form footer,
body.mobile-registration-page footer,
.page-id-1661 .otgs-development-site-front-end,
.page-id-1473 .otgs-development-site-front-end,
.page-id-1650 .otgs-development-site-front-end,
.page-id-227 .otgs-development-site-front-end,
.page-id-1671 .otgs-development-site-front-end,
.page-id-3527 .otgs-development-site-front-end,
.page-id-3590 .otgs-development-site-front-end,
.page-id-1911 .otgs-development-site-front-end,
.mobile-echarge-form .otgs-development-site-front-end,
.mobile-echarge-termination-form .otgs-development-site-front-end,
body.mobile-registration-page .otgs-development-site-front-end,
.page-id-1661 .wpml-ls-statics-footer,
.page-id-1473 .wpml-ls-statics-footer,
.page-id-1650 .wpml-ls-statics-footer,
.page-id-227 .wpml-ls-statics-footer,
.page-id-1671 .wpml-ls-statics-footer,
.page-id-3527 .wpml-ls-statics-footer,
.page-id-3590 .wpml-ls-statics-footer,
.page-id-1911 .wpml-ls-statics-footer,
.mobile-echarge-form .wpml-ls-statics-footer,
.mobile-echarge-termination-form .wpml-ls-statics-footer,
body.mobile-registration-page .wpml-ls-statics-footer,
.page-id-1698.webView .page-title,
.page-id-1724.webView .page-title,
.page-id-6565.webView .page-title,
.page-id-6563.webView .page-title,
.page-id-1191.webView .page-title,
.page-id-999.webView .page-title,
.page-id-525.webView .page-title,
.page-id-525.webView #section-1-editor,
.page-id-525.webView .otgs-development-site-front-end,
.page-id-525.webView .wpml-ls-statics-footer,
.page-id-525.webView .gform_title,
.page-id-1056.webView .page-title,
.page-id-1056.webView #section-1-editor,
.page-id-1056.webView .otgs-development-site-front-end,
.page-id-1056.webView .wpml-ls-statics-footer,
.page-id-1056.webView .gform_title,
.webView .top-bar,
.webView .cky-consent-container,
.webView-forms .cky-consent-container,
.webView .cky-btn-revisit-wrapper,
.webView-forms .cky-btn-revisit-wrapper,
.webView header,
.webView footer,
.webView .breadcrumbs-container,
.webView-forms .page-hero,
.webView-forms .page-hero__title,
.webView-forms .sidebar-item.wysiwyg,
.webView-forms .sidebar-item #field_9_12,
.webView-forms .sidebar-item #field_6_8,
.webView-forms .page-title-area,
.webView-forms
  .landing-page-wrapper
  > *:not(.gravity-form-main-wrapper):not(.block-bill_legend) {
  display: none;
}

.webView-forms
  .landing-page-wrapper
  .gravity-form-main-wrapper
  .col-12.col-md-4 {
  display: none;
}

.webView-forms
  .landing-page-wrapper
  .block-editor:has(.gravity-form-main-wrapper) {
  display: block;
}

.webView-forms
  .landing-page-wrapper
  .gravity-form-main-wrapper
  .col-12.col-md-8 {
  width: 100%;
}

.gravity-form-main-wrapper .gform_not_found {
  text-align: center;
  margin-top: 20px;
}

/* Mega menu wrapper */
.mega-menu {
  width: 100%;
  padding: 2rem 0;
  border-radius: 0;
  border: none;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
  margin-top: 0;
  background: #fff;
}

/* Bootstrap already handles layout */
.mega-col {
  margin-bottom: 2rem;
}

/* Link groups */
.mega-group-title {
  font-weight: 600;
  margin-bottom: 0.75rem;
}

.color-green {
  color: #7ab800;
}

.color-blue {
  color: #0071ce;
}

.color-orange {
  color: #cc9b0b;
}

.mega-links-list {
  padding-left: 0;
  list-style: none;
}

.mega-links-list li a {
  color: #6d7274;
  text-decoration: none;
  display: block;
  padding: 7px 0;
  font-size: 14px;
  line-height: 21px;
}

.mega-links-list li a:hover {
  text-decoration: none;
  color: #181a1b;
}

/* Contact cards */
.mega-contact-card {
  background: #f1faff;
  padding: 1rem;
  border-radius: 0.75rem;
  margin-bottom: 1rem;
}

.mega-contact-card .icon i {
  font-size: 1.5rem;
}

.mega-contact-card .title {
  font-weight: 700;
  font-size: 1.25rem;
}

.mega-banner {
  margin-bottom: 15px;
  display: block;
}

/* Promo banner */
.mega-banner img {
  border-radius: 0.75rem;
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* Make sure mega-menu behaves as full-width dropdown */
.nav-item.mega-parent {
  position: static;
  /* allows full-width dropdown */
}

.nav-item .mega-menu.dropdown-menu {
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  padding: 2rem 0;
  margin-top: 0;
  border: none;
  border-radius: 0;
  background: #fff;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

/* hidden state */
.nav-item .mega-menu {
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition:
    opacity 0.45s ease,
    transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    visibility 0s linear 0.45s;
  /* delay visibility hide */
}

/* Reset Bootstrap dropdown positioning */
.navbar-nav .dropdown-menu[data-bs-popper] {
  top: auto !important;
  left: auto !important;
  margin-top: 0 !important;
}

/* visible state */
.nav-item.show .mega-menu,
.nav-item:hover .mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
}

.mega-menu .mega-col {
  padding: 0 1.5rem;
}

.mega-links-group {
  margin-bottom: 1rem;
}

.mega-group-title {
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
}

/* Colors (ACF field color classes) */
.mega-group-title.color-green,
.mobile-group-title.color-green,
.color-green a {
  color: #819707;
}

.mega-group-title.color-blue,
.mobile-group-title.color-blue,
.color-blue a {
  color: #007aad;
}

.mega-group-title.color-orange,
.mobile-group-title.color-orange,
.color-orange a {
  color: #cc6300;
}

.mega-group-title.color-yellow,
.mobile-group-title.color-yellow,
.color-yellow a {
  color: #cc9b0b;
}

/* Contact card */
.mega-contact-card {
  background: #f7f7f7;
  padding: 1rem;
  border-radius: 8px;
  margin-bottom: 1.25rem;
  position: relative;
}

.mega-contact-card .icon {
  font-size: 22px;
  margin-bottom: 0.5rem;
}

.mega-contact-card .title {
  font-weight: 600;
  margin-bottom: 0.25rem;
}

.mega-contact-card .desc {
  font-size: 0.9rem;
}

/* Banner */
.mega-banner img {
  border-radius: 8px;
  width: 100%;
  height: auto;
}

.navbar {
  position: relative;
  z-index: 1030;
}

.mega-menu {
  z-index: 1020;
}

/* =========================
   MOBILE MENU CSS
   ========================= */
#mobile-menu-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  visibility: hidden;
  transition: 0.2s;
  z-index: 990;
}

#mobile-menu-overlay.show {
  opacity: 1;
  visibility: visible;
}

.eac-mobile-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 520px;
  height: 100%;
  background: #fff;
  z-index: 1031;
  transform: translateX(-100%);
  transition: 0.3s ease;
  overflow-y: auto;
}

.eac-mobile-menu.open {
  transform: translateX(0);
}

.eac-mobile-header {
  display: flex;
  justify-content: space-between;
  padding: 18px 22px;
  border-bottom: 1px solid #eee;
}

#mobile-menu-close {
  margin-left: auto;
}

.mobile-item {
  padding: 16px 22px;
  border-bottom: 1px solid #f0f0f0;
  font-size: 16px;
}

.mobile-item a {
  text-decoration: none;
  color: #222;
}

.mobile-item .arrow {
  float: right;
  font-size: 20px;
}

.eac-mobile-panel {
  display: none;
}

.eac-mobile-panel.active {
  display: block;
}

.eac-mobile-panel h4 {
  font-size: 20px;
  margin: 18px 22px;
  font-weight: 600;
}

.mobile-group-title {
  padding: 18px 22px 6px;
  font-weight: 700;
  font-size: 16px;
}

@media (max-width: 991px) {
  #navbarNav {
    display: none !important;
  }

  .navbar-collapse.collapse.show {
    display: none !important;
  }

  #eac-mobile-toggle {
    border: 0 !important;
    outline: none !important;
  }
  #eac-mobile-toggle:focus {
    box-shadow: none !important;
  }

  #eac-mobile-toggle .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2218%22%20height%3D%2212%22%20viewBox%3D%220%200%2018%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M1%2012H17C17.55%2012%2018%2011.55%2018%2011C18%2010.45%2017.55%2010%2017%2010H1C0.45%2010%200%2010.45%200%2011C0%2011.55%200.45%2012%201%2012ZM1%207H17C17.55%207%2018%206.55%2018%206C18%205.45%2017.55%205%2017%205H1C0.45%205%200%205.45%200%206C0%206.55%200.45%207%201%207ZM0%201C0%201.55%200.45%202%201%202H17C17.55%202%2018%201.55%2018%201C18%200.45%2017.55%200%2017%200H1C0.45%200%200%200.45%200%201Z%22%20fill%3D%22%23181A1B%22/%3E%3C/svg%3E") !important;

    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }
}

/* MOBILE MENU HEADER */
.eac-mobile-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 20px;
  border-bottom: 1px solid #e5e5e5;
  background: #fff;
  position: relative;
}

/* --- BACK BUTTON --- */
.eac-mobile-header .back-btn {
  background: transparent;
  border: none;
  font-size: 15px;
  color: #333;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
}

.eac-mobile-header .back-btn::before {
  content: "‹";
  font-size: 22px;
  line-height: 1;
  margin-right: 4px;
  display: inline-block;
}

.eac-mobile-header .back-btn.d-none {
  display: none !important;
}

/* --- CLOSE BUTTON --- */
.eac-mobile-header .close-btn {
  background: transparent;
  border: none;
  font-size: 22px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  margin-left: auto;
  /* always stays right */
  color: #333;
}

.eac-mobile-header .close-btn:hover,
.eac-mobile-header .back-btn:hover {
  opacity: 0.6;
}

/* Ensure close button is always on far right */
.eac-mobile-header {
  grid-template-columns: auto 1fr auto;
}

/*****************************/
/*** Payment Complete Page ***/
/*****************************/
.woocommerce-order-received .woocommerce-thank-you-success {
  background-color: #027a48;
  height: 75px;
  color: white;
  font-size: 18px;
  padding-top: 23px;
  text-align: center;
  margin-top: 40px;
}
.woocommerce-order-received .woocommerce-thank-you-failure {
  background-color: #f97066;
  height: 75px;
  color: black;
  font-size: 18px;
  padding-top: 23px;
  font-weight: 600;
  text-align: center;
  margin-top: 40px;
  margin-bottom: 200px;
}
.woocommerce-order-received .back-to-portal-button {
  padding: 15px 20px !important;
  font-weight: 300 !important;
  color: #fff !important;
  border-radius: 50px !important;
  background: #181a1b !important;
  font-size: 16px !important;
  letter-spacing: 0.16px !important;
  line-height: 24px !important;
}
.woocommerce-order-received .woocommerce-thank-you-receipt {
  margin-top: 40px;
  margin-bottom: 130px;
  font-size: 16px;
  color: #444748;
}

.woocommerce-order-received .woocommerce-thank-you-receipt a {
  margin-left: 4px;
}

.dropdown-menu.show {
  z-index: 2000;
}

.mobileLoginBtn-wrapper a.dropdown-item {
  color: #181a1b;
  padding: 10px;
  font-weight: 400;
  line-height: 21px;
  font-size: 14px;
}

.mobileLoginBtn-wrapper a.dropdown-item.logout-btn {
  background-color: #eaf7fc;
}

.loginBtn-wrapper a {
  /*background-color: #edeeee;*/
  border-radius: 50px;
  border-color: #edeeee;
  color: #181a1b;
  padding: 7px 15px;
}
.loginBtn-wrapper a:hover {
  background-color: #e1e2e2;
  border-color: #e1e2e2;
  color: #181a1b;
}

.loginBtn-wrapper .user-dropdown li a {
  border-radius: 0;
}

.user-dropdown .dropdown-toggle {
  border-radius: 999px;
  padding: 6px 14px;
}

.user-dropdown .dropdown-menu {
  min-width: 177px;
  border-radius: 6px;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
}

.user-dropdown .dropdown-item {
  padding: 10px 16px;
}

.user-dropdown .dropdown-item:hover {
  background-color: #f5f7f9;
}

.user-dropdown .logout-btn {
  background: #eaf7fc;
}

.gform_fields input[type="text"],
.gform_fields input[type="email"],
.gform_fields textarea {
  color: #919597 !important;
  border-color: #b3b6b7 !important;
  line-height: 40px !important;
  height: 40px !important;
  border-radius: 6px !important;
}

#gform_fields_16 {
  max-width: 324px;
}

.gform_body .gfield--input-type-html h5 {
  font-size: 26px;
  font-weight: 500;
}

.page-hero__overlay {
  background: linear-gradient(
    258.59deg,
    rgba(16, 22, 36, 0) 31.25%,
    rgba(16, 22, 36, 0.72) 64.9%,
    #111827 98.55%
  );
}

.page-hero__title,
.page-title {
  font-size: 48px;
  line-height: 60px;
  font-weight: 600;
}

.page-hero .hero-button {
  color: #222 !important;
  line-height: 20px;
  font-weight: 500;
}

.page-excerpt,
.page-hero__excerpt {
  font-size: 18px;
  line-height: 28px;
  font-weight: 400;
}

.page-hero__excerpt {
  color: #ffffff;
}

.page-excerpt {
  color: #1f2937;
}

.post-back {
  margin: 30px 0 30px 0;
}

.post-back a.post-back__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 400;
  color: #6b7280;
  /* subtle gray */
  text-decoration: none;
}

.post-back__link:hover {
  color: #111827;
  text-decoration: underline;
}

/* Base state */
.link-slide .arrow {
  display: inline-block;
  transition: transform 0.25s ease;
}

/* Hover state */
.link-slide:hover .arrow {
  transform: translateX(4px);
}

@media (max-width: 768px) {
  header #header {
    padding: 0 10px;
  }
  .breadcrumbs-container .breadcrumbs {
    padding: 0 10px;
  }
  .page-title-area.py-5 {
    padding-bottom: 1.5rem !important;
    padding-top: 1.5rem !important;
  }

  .page-title-area.py-5 h1 {
    margin-bottom: 0px;
    padding: 0px 15px;
  }
  .page-excerpt {
    padding: 0px 15px;
  }

  .page-hero .hero-button {
    background-color: #181a1b !important;
    width: 100% !important;
    color: white !important;
  }
  .page-hero__title,
  .page-title {
    font-size: 26px;
    line-height: 48px;
  }

  .landing-page-wrapper .block-editor h1,
  .landing-page-wrapper .block-editor h2,
  .landing-page-wrapper .block-editor h3,
  .landing-page-wrapper .block-editor h4,
  .landing-page-wrapper .block-editor h5,
  .landing-page-wrapper .block-editor h6 {
    margin: 20px 0;
  }
}
.page-hero {
  background-image: var(--hero-bg);
  background-size: cover;
  background-position: center;
  height: 450px;
}
@media screen and (max-width: 767.98px) {
  .page-hero {
    background-image: none;
    height: auto;
    padding: 0;
    color: #181a1b;
  }

  .page-hero__overlay.h-100 {
    height: 150px !important;
  }

  .page-hero::before {
    content: "";
    display: block;
    width: 100%;
    height: 150px;
    background-image: var(--hero-bg);
    background-size: cover;
    background-position: center;
  }

  .page-hero .row {
    padding: 2rem 1rem;
  }

  .page-hero__title {
    color: #181a1b;
  }

  .page-hero__excerpt {
    color: #444748;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 0;
  }
}

/* =========================
   SEARCH RESULTS – CARDS
   ========================= */

.sr-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 32px;
  background: #fff;
  border: 1px solid #e6e8ed;
  border-radius: 12px;
}

/* Header */
.sr-card__head {
  margin-bottom: 10px;
}

/* Optional post-type badge */
.sr-badge {
  display: inline-block;
  padding: 4px 15px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 500;
  line-height: 21px;
  background: #eceff5;
  color: #6b6f82;
}

/* Body grows */
.sr-card__body {
  flex: 1 1 auto;
}

/* Title */
.sr-card__title {
  font-size: 30px;
  line-height: 38px;
  font-weight: 500;
  margin: 10px 0;
  color: #181a1b;
}

.sr-card__body .sr-card__title a {
  text-decoration: none;
  color: inherit;
  font-size: 30px;
  line-height: 38px;
  font-weight: 500;
  color: #181a1b;
}

/* Meta */
.sr-card__meta {
  font-size: 18px;
  line-height: 28px;
  font-weight: 400;
  color: #444748;
  margin-bottom: 4px;
}

/* Excerpt */
.sr-card__excerpt {
  margin: 20px 0 0;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  color: #6d7274;
}

/* Footer pinned */
.sr-card__foot {
  margin-top: auto;
  padding-top: 12px;
}

/* Read more link */
.sr-card__more {
  color: #007aad;
  text-decoration: none;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  line-height: 22px;
}

/* =========================
   SEARCH RESULT CLAMPING
   ========================= */

/* Title: max 2 lines */
.sr-card__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Excerpt: max 4 lines */
.sr-card__excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.search-pagination {
  display: flex;
  justify-content: center;
}

.search-pagination .page-numbers {
  width: 40px;
  height: 40px;
  margin: 0 6px;
  border-radius: 10px;
  border: 1px solid #e1e2e2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.search-pagination .page-numbers.current {
  background: #e9f4fb;
  border-color: #cfe6f4;
  font-weight: 600;
}

.jp-filter-item select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.jp-filter-item select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  padding-right: 40px; /* space for arrow */

  background-image: url("data:image/svg+xml;utf8,<svg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M6.01744 6.79598C5.91269 6.79647 5.8089 6.77604 5.71215 6.73588C5.61541 6.69573 5.52766 6.63665 5.45405 6.56212L0.139066 1.24714C0.0330583 1.09205 -0.0147788 0.904508 0.00399088 0.717591C0.0227606 0.530675 0.106932 0.35639 0.241659 0.225476C0.376386 0.094562 0.553015 0.015428 0.740393 0.00203091C0.92777 -0.0113662 1.11386 0.0418346 1.26584 0.15225L6.01744 4.87195L10.769 0.15225C10.9189 0.0551017 11.097 0.0110713 11.2748 0.0272156C11.4527 0.0433598 11.6199 0.118744 11.7498 0.241286C11.8797 0.363827 11.9647 0.52643 11.9912 0.703032C12.0177 0.879634 11.9841 1.06001 11.8958 1.21525L6.58083 6.53023C6.50996 6.61055 6.42344 6.67555 6.32656 6.72125C6.22968 6.76695 6.12449 6.79238 6.01744 6.79598Z' fill='%236D7274'/></svg>");

  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 12px; /* 👈 increase size here */
}

/* =========================
   404 PAGE
   ========================= */

.error-404 {
  max-width: 720px;
  margin: 120px auto 120px;
  padding: 0 16px;
}

/* Big 404 */
.error-404__code {
  font-size: 128px;
  font-weight: 700;
  color: #919597;
  line-height: 116px;
  margin-bottom: 20px;
}

/* Title */
.error-404__title {
  font-size: 36px;
  line-height: 44px;
  font-weight: 600;
  color: #181a1b;
  margin-bottom: 20px;
}

/* Description */
.error-404__text {
  font-size: 22px;
  line-height: 28px;
  color: #444748;
  margin-bottom: 40px;
}

/* Button spacing */
.error-404__actions {
  margin-bottom: 40px;
}

.error-404__actions a.btn.btn-primary {
  background-color: #181a1b;
  border: none;
  border-radius: 50px;
  color: #ffffff;
  font-size: 16px;
  line-height: 24px;
  padding: 10px 20px;
}

/* Search block */
.error-404__search {
  margin-top: 20px;
}

/* Improve search input */
.error-404__search input[type="search"],
.error-404__search input[type="text"] {
  font-size: 16px;
  padding: 12px 14px;
}

.error-404__search .btn {
  padding: 12px 18px;
  font-size: 16px;
}

body.p-user-registration {
  height: 100%;
  margin: 0;
}

.p-user-registration #wrapper {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.p-user-registration #main {
  flex: 1;
}

.p-user-registration #footer {
  margin-top: auto;
}
