@charset "UTF-8";
/* ==========================================================================
	CSS Reset - Core Reset Styles Only
   ========================================================================== */
/* CSS Reset & Box Sizing */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
/* Remove default margins/paddings */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
dl,
dd,
ol,
ul,
figure,
hr,
fieldset,
legend {
  margin: 0;
  padding: 0;
}
/* Remove list styles */
ol,
ul {
  list-style: none;
}
/* Remove quote marks */
blockquote,
q {
  quotes: none;
}
blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}
/* Table reset */
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* Form elements - inherit and reset (scoped to theme) */
.ek-site-main input,
.ek-site-main button,
.ek-site-main select,
.ek-site-main optgroup,
.ek-site-main textarea,
.ek-content-area input,
.ek-content-area button,
.ek-content-area select,
.ek-content-area optgroup,
.ek-content-area textarea,
.entry-content input,
.entry-content button,
.entry-content select,
.entry-content optgroup,
.entry-content textarea,
.ek-site-header input,
.ek-site-header button,
.ek-site-header select,
.ek-site-header optgroup,
.ek-site-header textarea,
.ek-site-footer input,
.ek-site-footer button,
.ek-site-footer select,
.ek-site-footer optgroup,
.ek-site-footer textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}
.ek-site-main,
.ek-content-area,
.entry-content,
.ek-site-header,
.ek-site-footer {
  /* Remove default button styles */
}
.ek-site-main button,
.ek-content-area button,
.entry-content button,
.ek-site-header button,
.ek-site-footer button {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  font: inherit;
}
.ek-site-main,
.ek-content-area,
.entry-content,
.ek-site-header,
.ek-site-footer {
  /* Focus management - keyboard navigation */
}
.ek-site-main input:focus,
.ek-site-main button:focus,
.ek-site-main select:focus,
.ek-site-main textarea:focus,
.ek-content-area input:focus,
.ek-content-area button:focus,
.ek-content-area select:focus,
.ek-content-area textarea:focus,
.entry-content input:focus,
.entry-content button:focus,
.entry-content select:focus,
.entry-content textarea:focus,
.ek-site-header input:focus,
.ek-site-header button:focus,
.ek-site-header select:focus,
.ek-site-header textarea:focus,
.ek-site-footer input:focus,
.ek-site-footer button:focus,
.ek-site-footer select:focus,
.ek-site-footer textarea:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
/* Global focus management - keyboard navigation */
*:focus {
  scroll-margin-top: var(--scroll-margin-top, 1rem);
}
/* Images - Scoped to theme content areas */
.ek-site-main img,
.ek-content-area img,
.entry-content img {
  max-width: 100%;
  height: auto;
  display: block;
}
/* Focus management */
.ek-skip-link {
  position: absolute;
  left: -9999px;
  z-index: var(--z-index-tooltip);
}
.ek-skip-link:focus {
  left: 6px;
  top: 7px;
  padding: 8px;
  background: var(--color-bg-surface);
  border: 2px solid var(--color-primary);
  text-decoration: none;
}
/* Screen reader only content */
.ek-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* Container utility */
.ek-container {
  width: 100%;
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}
/* Utility classes */
.ek-visually-hidden {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
/* Admin bar spacing */
.ek-admin-bar .ek-fixed-header {
  top: 32px;
}
@media (max-width: 782px) {
  .ek-admin-bar .ek-fixed-header {
    top: 46px;
  }
}
/* Print styles */
@media print {
  *,
  *::before,
  *::after {
    background: transparent !important;
    color: #000 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
/* ==========================================================================
   Typography Styles - Scoped to Theme Context
   ========================================================================== */
/* Base typography - Scoped to body for global styles */
body {
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  line-height: var(--line-height-relaxed);
  color: var(--color-text-main);
  background-color: var(--color-bg-body);
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--letter-spacing-normal);
}
/* Typography scoped to theme content areas */
.ek-site-main,
.ek-content-area,
.entry-content,
.wp-block-post-content {
  /* Headings - Editorial Hierarchy */
}
.ek-site-main h1,
.ek-site-main h2,
.ek-site-main h3,
.ek-site-main h4,
.ek-site-main h5,
.ek-site-main h6,
.ek-content-area h1,
.ek-content-area h2,
.ek-content-area h3,
.ek-content-area h4,
.ek-content-area h5,
.ek-content-area h6,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.wp-block-post-content h1,
.wp-block-post-content h2,
.wp-block-post-content h3,
.wp-block-post-content h4,
.wp-block-post-content h5,
.wp-block-post-content h6 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tight);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-sm);
  margin-top: 0;
}
.ek-site-main h1,
.ek-content-area h1,
.entry-content h1,
.wp-block-post-content h1 {
  font-size: var(--font-size-h1);
}
.ek-site-main h2,
.ek-content-area h2,
.entry-content h2,
.wp-block-post-content h2 {
  font-size: var(--font-size-h2);
}
.ek-site-main h3,
.ek-content-area h3,
.entry-content h3,
.wp-block-post-content h3 {
  font-size: var(--font-size-h3);
}
.ek-site-main h4,
.ek-content-area h4,
.entry-content h4,
.wp-block-post-content h4 {
  font-size: var(--font-size-h4);
}
.ek-site-main h5,
.ek-content-area h5,
.entry-content h5,
.wp-block-post-content h5 {
  font-size: var(--font-size-h5);
}
.ek-site-main h6,
.ek-content-area h6,
.entry-content h6,
.wp-block-post-content h6 {
  font-size: var(--font-size-h6);
}
.ek-site-main,
.ek-content-area,
.entry-content,
.wp-block-post-content {
  /* Links - Scoped to content areas */
}
.ek-site-main a,
.ek-content-area a,
.entry-content a,
.wp-block-post-content a {
  color: var(--color-link);
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-site-main a:hover, .ek-site-main a:focus,
.ek-content-area a:hover,
.ek-content-area a:focus,
.entry-content a:hover,
.entry-content a:focus,
.wp-block-post-content a:hover,
.wp-block-post-content a:focus {
  color: var(--color-link-hover);
  text-decoration: underline;
}
.ek-site-main,
.ek-content-area,
.entry-content,
.wp-block-post-content {
  /* Text elements */
}
.ek-site-main p,
.ek-content-area p,
.entry-content p,
.wp-block-post-content p {
  margin-bottom: var(--spacing-md);
  line-height: var(--line-height-relaxed);
}
.ek-site-main strong,
.ek-site-main b,
.ek-content-area strong,
.ek-content-area b,
.entry-content strong,
.entry-content b,
.wp-block-post-content strong,
.wp-block-post-content b {
  font-weight: var(--font-weight-bold);
}
.ek-site-main em,
.ek-site-main i,
.ek-content-area em,
.ek-content-area i,
.entry-content em,
.entry-content i,
.wp-block-post-content em,
.wp-block-post-content i {
  font-style: italic;
}
.ek-site-main,
.ek-content-area,
.entry-content,
.wp-block-post-content {
  /* Lists */
}
.ek-site-main ul,
.ek-site-main ol,
.ek-content-area ul,
.ek-content-area ol,
.entry-content ul,
.entry-content ol,
.wp-block-post-content ul,
.wp-block-post-content ol {
  margin-bottom: var(--spacing-md);
  padding-left: var(--spacing-lg);
}
.ek-site-main ul,
.ek-content-area ul,
.entry-content ul,
.wp-block-post-content ul {
  list-style: disc;
}
.ek-site-main ol,
.ek-content-area ol,
.entry-content ol,
.wp-block-post-content ol {
  list-style: decimal;
}
.ek-site-main,
.ek-content-area,
.entry-content,
.wp-block-post-content {
  /* Blockquotes */
}
.ek-site-main blockquote,
.ek-content-area blockquote,
.entry-content blockquote,
.wp-block-post-content blockquote {
  margin: var(--spacing-lg) 0;
  padding: var(--spacing-md);
  padding-left: var(--spacing-lg);
  border-left: 4px solid var(--color-border);
  font-style: italic;
  background-color: var(--color-bg-hover);
}
.ek-site-main,
.ek-content-area,
.entry-content,
.wp-block-post-content {
  /* Code */
}
.ek-site-main code,
.ek-site-main kbd,
.ek-site-main pre,
.ek-site-main samp,
.ek-content-area code,
.ek-content-area kbd,
.ek-content-area pre,
.ek-content-area samp,
.entry-content code,
.entry-content kbd,
.entry-content pre,
.entry-content samp,
.wp-block-post-content code,
.wp-block-post-content kbd,
.wp-block-post-content pre,
.wp-block-post-content samp {
  font-family: var(--font-mono);
  font-size: var(--font-size-sm);
  background-color: var(--color-bg-hover);
  padding: 2px 4px;
  border-radius: 3px;
}
.ek-site-main pre,
.ek-content-area pre,
.entry-content pre,
.wp-block-post-content pre {
  padding: var(--spacing-md);
  overflow-x: auto;
  margin-bottom: var(--spacing-md);
  border: 1px solid var(--color-border);
}
.ek-site-main code,
.ek-content-area code,
.entry-content code,
.wp-block-post-content code {
  background-color: var(--color-bg-hover);
  padding: 1px 3px;
  border-radius: 2px;
}
.ek-site-main,
.ek-content-area,
.entry-content,
.wp-block-post-content {
  /* Horizontal rules */
}
.ek-site-main hr,
.ek-content-area hr,
.entry-content hr,
.wp-block-post-content hr {
  border: 0;
  border-top: 1px solid var(--color-border);
  margin: var(--spacing-xl) 0;
}
.ek-row {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}
.ek-col,
.ek-col-1,
.ek-col-10,
.ek-col-11,
.ek-col-12,
.ek-col-2,
.ek-col-3,
.ek-col-4,
.ek-col-5,
.ek-col-6,
.ek-col-7,
.ek-col-8,
.ek-col-9,
.ek-col-lg,
.ek-col-lg-1,
.ek-col-lg-10,
.ek-col-lg-11,
.ek-col-lg-12,
.ek-col-lg-2,
.ek-col-lg-3,
.ek-col-lg-4,
.ek-col-lg-5,
.ek-col-lg-6,
.ek-col-lg-7,
.ek-col-lg-8,
.ek-col-lg-9,
.ek-col-md,
.ek-col-md-1,
.ek-col-md-10,
.ek-col-md-11,
.ek-col-md-12,
.ek-col-md-2,
.ek-col-md-3,
.ek-col-md-4,
.ek-col-md-5,
.ek-col-md-6,
.ek-col-md-7,
.ek-col-md-8,
.ek-col-md-9,
.ek-col-sm,
.ek-col-sm-1,
.ek-col-sm-10,
.ek-col-sm-11,
.ek-col-sm-12,
.ek-col-sm-2,
.ek-col-sm-3,
.ek-col-sm-4,
.ek-col-sm-5,
.ek-col-sm-6,
.ek-col-sm-7,
.ek-col-sm-8,
.ek-col-sm-9,
.ek-col-xl,
.ek-col-xl-1,
.ek-col-xl-10,
.ek-col-xl-11,
.ek-col-xl-12,
.ek-col-xl-2,
.ek-col-xl-3,
.ek-col-xl-4,
.ek-col-xl-5,
.ek-col-xl-6,
.ek-col-xl-7,
.ek-col-xl-8,
.ek-col-xl-9 {
  padding-right: 15px;
  padding-left: 15px;
}
.ek-col-sm-9 {
  -webkit-box-flex: 0;
          flex: 0 0 75%;
  max-width: 75%;
}
.ek-col-sm-3 {
  -webkit-box-flex: 0;
          flex: 0 0 25%;
  max-width: 25%;
}
.ek-col-md-6 {
  -webkit-box-flex: 0;
  flex: 0 0 50%;
  max-width: 50%;
}
.ek-col-md-10 {
  -webkit-box-flex: 0;
          flex: 0 0 83.333333%;
  max-width: 83.333333%;
}
.ek-col-md-12 {
  -webkit-box-flex: 0;
  flex: 0 0 100%;
  max-width: 100%;
}
.ek-no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.ek-site-main {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: var(--spacing-4);
}
.page-wrapper {
  padding: var(--spacing-2xl) 0;
}
.page-header {
  text-align: center;
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
}
@media (min-width: 768px) {
  .page-header {
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
.page-header .page-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-4) 0;
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .page-header .page-title {
    font-size: var(--font-size-4xl);
  }
}
.page-header .ek-archive-description {
  max-width: 37.5rem; /* 600px */
  margin: 0 auto var(--spacing-6) auto;
  font-size: var(--font-size-lg);
  line-height: var(--line-height-loose);
  color: var(--color-text-light);
}
.ek-category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(21.875rem, 1fr)); /* 350px */
  gap: var(--spacing-6);
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
}
@media (min-width: 768px) {
  .ek-category-grid {
    grid-template-columns: repeat(auto-fit, minmax(18.75rem, 1fr)); /* 300px */
    gap: var(--spacing-6);
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
@media (min-width: 1024px) {
  .ek-category-grid {
    gap: var(--spacing-8);
  }
}
.ek-category-masonry {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(21.875rem, 1fr)); /* 350px */
  gap: var(--spacing-6);
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
  -webkit-box-align: start;
          align-items: start;
}
@media (min-width: 768px) {
  .ek-category-masonry {
    grid-template-columns: repeat(auto-fill, minmax(18.75rem, 1fr)); /* 300px */
    gap: var(--spacing-6);
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
@media (min-width: 1024px) {
  .ek-category-masonry {
    grid-template-columns: repeat(auto-fill, minmax(16.25rem, 1fr)); /* 260px */
    gap: var(--spacing-8);
  }
}
@supports (grid-template-rows: masonry) {
  .ek-category-masonry {
    grid-template-rows: masonry;
  }
}
@supports not (grid-template-rows: masonry) {
  .ek-category-masonry {
    grid-auto-rows: -webkit-min-content;
    grid-auto-rows: min-content;
  }
}
.ek-tag-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-4);
  margin-bottom: var(--spacing-12);
}
@media (min-width: 768px) {
  .ek-tag-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-5);
  }
}
@media (min-width: 1024px) {
  .ek-tag-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: var(--spacing-6);
  }
}
.ek-tag-loading-indicator {
  display: none;
  text-align: center;
  padding: var(--spacing-8) 0;
  margin: var(--spacing-6) 0;
}
.ek-tag-loading-indicator.loading {
  display: block;
}
.ek-tag-load-more-container {
  text-align: center;
  margin-top: var(--spacing-8);
  margin-bottom: var(--spacing-12);
}
.ek-tag-no-more-posts {
  text-align: center;
  padding: var(--spacing-8) 0;
  color: var(--color-text-light);
  font-size: var(--font-size-sm);
}
.ek-loading-indicator {
  display: none;
  text-align: center;
  padding: var(--spacing-8) 0;
  margin: var(--spacing-6) 0;
}
.ek-loading-indicator.loading {
  display: block;
}
.ek-loading-spinner {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  border: 3px solid var(--color-border);
  border-radius: 50%;
  border-top-color: var(--color-primary);
  -webkit-animation: ek-spin 1s ease-in-out infinite;
          animation: ek-spin 1s ease-in-out infinite;
  margin-bottom: var(--spacing-3);
}
@-webkit-keyframes ek-spin {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes ek-spin {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.ek-loading-text {
  color: var(--color-text-light);
  font-size: var(--font-size-sm);
  margin: 0;
}
.ek-load-more-container {
  text-align: center;
  margin-top: var(--spacing-8);
  margin-bottom: var(--spacing-12);
}
.ek-load-more-btn {
  position: relative;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-load-more-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.ek-load-more-btn[data-loading=true]::after {
  content: "";
  position: absolute;
  right: var(--spacing-3);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border: 2px solid transparent;
  border-top-color: currentcolor;
  border-radius: 50%;
  -webkit-animation: ek-spin 1s linear infinite;
          animation: ek-spin 1s linear infinite;
}
.ek-no-more-posts {
  text-align: center;
  padding: var(--spacing-6) 0;
  margin-top: var(--spacing-4);
}
.ek-no-more-posts p {
  color: var(--color-text-light);
  font-style: italic;
  margin: 0;
}
.ek-category-pagination {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-4);
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
}
@media (min-width: 768px) {
  .ek-category-pagination {
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
.ek-category-pagination .page-numbers {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-width: 2.5rem; /* 40px */
  height: 2.5rem; /* 40px */
  padding: var(--spacing-2) var(--spacing-3);
  background-color: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  color: var(--color-text-main);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-category-pagination .page-numbers:hover, .ek-category-pagination .page-numbers:focus, .ek-category-pagination .page-numbers:not(.dots):not(.prev):not(.next) {
  background-color: var(--color-link);
  border-color: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
}
.ek-category-pagination .ek-prev,
.ek-category-pagination .ek-next {
  font-weight: var(--font-weight-semibold);
  padding: var(--spacing-2) var(--spacing-4);
}
.ek-single-layout .entry-header {
  margin-bottom: var(--spacing-xl);
}
.ek-single-layout .entry-header .entry-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  line-height: var(--line-height-tight);
  margin-bottom: var(--spacing-4);
}
@media (min-width: 768px) {
  .ek-single-layout .entry-header .entry-title {
    font-size: var(--font-size-3xl);
  }
}
.ek-single-layout .entry-header .entry-meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-4);
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  margin-bottom: var(--spacing-6);
}
.ek-single-layout .entry-header .entry-meta * {
  margin: 0;
}
.ek-single-layout .entry-content {
  font-size: var(--font-size-lg);
  line-height: var(--line-height-loose);
  color: var(--color-text-main);
}
@media (min-width: 768px) {
  .ek-single-layout .entry-content {
    font-size: var(--font-size-base);
  }
}
.ek-single-layout .entry-content p {
  margin-bottom: var(--spacing-6);
}
.ek-single-layout .entry-content h2,
.ek-single-layout .entry-content h3,
.ek-single-layout .entry-content h4 {
  margin: var(--spacing-12) 0 var(--spacing-6) 0;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}
.ek-single-layout .entry-content h2 {
  font-size: var(--font-size-3xl);
}
.ek-single-layout .entry-content h3 {
  font-size: var(--font-size-2xl);
}
.ek-single-layout .entry-content h4 {
  font-size: var(--font-size-xl);
}
.ek-single-layout .entry-content ul,
.ek-single-layout .entry-content ol {
  margin-bottom: var(--spacing-6);
  padding-left: var(--spacing-8);
}
.ek-single-layout .entry-content blockquote {
  margin: var(--spacing-8) 0;
  padding: var(--spacing-6);
  padding-left: var(--spacing-8);
  border-left: var(--spacing-1) solid var(--color-link);
  background-color: var(--color-bg-hover);
  font-style: italic;
  font-size: var(--font-size-xl);
  border-radius: var(--border-radius);
}
.ek-single-layout .entry-footer {
  margin-top: var(--spacing-2xl);
  padding-top: var(--spacing-xl);
  border-top: 1px solid var(--color-border);
}
.search-results-page {
  padding-top: var(--spacing-8);
  padding-bottom: var(--spacing-16);
}
.search-results-header {
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-border);
  padding: var(--spacing-8);
  margin-bottom: var(--spacing-8);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
@media (min-width: 768px) {
  .search-results-header {
    padding: var(--spacing-10);
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
            align-items: flex-start;
    gap: var(--spacing-8);
  }
}
.search-results-intro {
  margin-bottom: var(--spacing-6);
}
@media (min-width: 768px) {
  .search-results-intro {
    margin-bottom: 0;
    -webkit-box-flex: 1;
            flex: 1;
  }
}
.search-results-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-forest-green);
  margin-bottom: var(--spacing-4);
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .search-results-title {
    font-size: var(--font-size-4xl);
  }
}
.search-query {
  color: var(--color-link);
  position: relative;
}
.search-query::before, .search-query::after {
  content: '"';
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}
.search-results-meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: var(--spacing-1);
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
@media (min-width: 768px) {
  .search-results-meta {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-align: center;
            align-items: center;
    gap: var(--spacing-4);
  }
}
.results-count {
  font-weight: var(--font-weight-medium);
  color: var(--color-text-main);
}
.results-range {
  font-style: italic;
}
@media (min-width: 768px) {
  .search-results-refine {
    flex-shrink: 0;
    min-width: 25rem; /* 400px */
  }
}
.search-refine-form {
  position: relative;
  max-width: 100%;
}
@media (min-width: 768px) {
  .search-refine-form {
    max-width: 25rem; /* 400px */
  }
}
.search-refine-input {
  width: 100%;
  padding: var(--spacing-3) var(--spacing-12) var(--spacing-3) var(--spacing-4);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  font-size: var(--font-size-base);
  background: var(--color-white);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.search-refine-input:focus {
  outline: none;
  border-color: var(--color-link);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
}
.search-refine-input::-webkit-input-placeholder {
  color: var(--color-text-muted);
  font-style: italic;
}
.search-refine-input::-moz-placeholder {
  color: var(--color-text-muted);
  font-style: italic;
}
.search-refine-input::placeholder {
  color: var(--color-text-muted);
  font-style: italic;
}
.search-refine-submit {
  position: absolute;
  right: var(--spacing-2);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: var(--color-link);
  color: var(--color-white);
  border: none;
  border-radius: var(--border-radius-md);
  padding: var(--spacing-2) var(--spacing-3);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-1_5);
}
.search-refine-submit:hover {
  background: var(--color-link-hover);
  -webkit-transform: translateY(-50%) scale(1.02);
          transform: translateY(-50%) scale(1.02);
}
.search-refine-submit:active {
  -webkit-transform: translateY(-50%) scale(0.98);
          transform: translateY(-50%) scale(0.98);
}
.search-icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.search-filters-wrapper {
  background: var(--color-gray-50);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-6);
  margin-bottom: var(--spacing-8);
  border: 1px solid var(--color-border-light);
}
@media (min-width: 768px) {
  .search-filters-wrapper {
    padding: var(--spacing-8);
  }
}
.search-filters-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  color: var(--color-forest-green);
  margin-bottom: var(--spacing-6);
  text-align: center;
}
@media (min-width: 768px) {
  .search-filters-title {
    text-align: left;
  }
}
.filter-group {
  margin-bottom: var(--spacing-6);
}
.filter-group:last-child {
  margin-bottom: 0;
}
.filter-group-title {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-3);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
}
.filter-group-title::before {
  content: "";
  width: 0.25rem;
  height: 1rem;
  background: var(--color-link);
  border-radius: var(--border-radius-sm);
  flex-shrink: 0;
}
.filter-buttons {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2);
}
@media (max-width: 767px) {
  .filter-buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
  .filter-buttons .filter-btn {
    text-align: center;
  }
}
.filter-btn {
  display: inline-block;
  padding: var(--spacing-2) var(--spacing-4);
  background: var(--color-white);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-md);
  color: var(--color-text-main);
  text-decoration: none;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  position: relative;
}
.filter-btn:hover {
  background: var(--color-link);
  border-color: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.filter-btn.active {
  background: var(--color-forest-green);
  border-color: var(--color-forest-green);
  color: var(--color-white);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
  font-weight: var(--font-weight-semibold);
}
.filter-btn.active::after {
  content: "✓";
  margin-left: var(--spacing-1_5);
  font-weight: var(--font-weight-bold);
}
.search-results-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-6);
  margin-bottom: var(--spacing-12);
}
@media (min-width: 768px) {
  .search-results-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-8);
  }
}
@media (min-width: 1024px) {
  .search-results-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.search-pagination {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  margin-top: var(--spacing-12);
  padding-top: var(--spacing-8);
  border-top: 1px solid var(--color-border);
}
.search-pagination .page-numbers {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: var(--spacing-2) var(--spacing-3);
  background: var(--color-white);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-md);
  color: var(--color-text-main);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.search-pagination .page-numbers:hover, .search-pagination .page-numbers:focus {
  background: var(--color-link);
  border-color: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.search-pagination .page-numbers.current {
  background: var(--color-forest-green);
  border-color: var(--color-forest-green);
  color: var(--color-white);
  font-weight: var(--font-weight-bold);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.search-pagination .page-numbers.prev, .search-pagination .page-numbers.next {
  font-weight: var(--font-weight-semibold);
  padding: var(--spacing-2) var(--spacing-4);
  min-width: auto;
}
.search-pagination .pagination-arrow {
  font-size: var(--font-size-lg);
  line-height: 1;
}
.search-pagination .pagination-text {
  margin: 0 var(--spacing-1);
}
.search-no-results {
  text-align: center;
  padding: var(--spacing-12) var(--spacing-4);
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-border);
  margin-top: var(--spacing-8);
}
.no-results-header {
  margin-bottom: var(--spacing-8);
}
.no-results-icon {
  color: var(--color-text-muted);
  margin-bottom: var(--spacing-4);
  opacity: 0.6;
}
.no-results-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-forest-green);
  margin-bottom: var(--spacing-2);
}
@media (min-width: 768px) {
  .no-results-title {
    font-size: var(--font-size-3xl);
  }
}
.no-results-subtitle {
  font-size: var(--font-size-lg);
  color: var(--color-text-light);
  margin-bottom: var(--spacing-8);
  line-height: var(--line-height-relaxed);
}
.no-results-content {
  max-width: 50rem; /* 800px */
  margin: 0 auto;
}
.search-suggestions,
.alternative-search,
.popular-searches,
.browse-categories {
  margin-bottom: var(--spacing-8);
}
.search-suggestions h3,
.alternative-search h3,
.popular-searches h3,
.browse-categories h3 {
  font-family: var(--font-heading);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-forest-green);
  margin-bottom: var(--spacing-4);
  text-align: center;
}
@media (min-width: 768px) {
  .search-suggestions h3,
  .alternative-search h3,
  .popular-searches h3,
  .browse-categories h3 {
    text-align: left;
  }
}
.suggestions-list {
  list-style: none;
  padding: 0;
  margin: 0;
  background: var(--color-gray-50);
  border-radius: var(--border-radius-md);
  border: 1px solid var(--color-border-light);
}
.suggestions-list li {
  padding: var(--spacing-3) var(--spacing-4);
  border-bottom: 1px solid var(--color-border-light);
  font-size: var(--font-size-base);
}
.suggestions-list li:last-child {
  border-bottom: none;
}
.suggestions-list li::before {
  content: "💡";
  margin-right: var(--spacing-2);
}
.search-form-alternative {
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-2);
  max-width: 31.25rem; /* 500px */
  margin: 0 auto;
}
@media (max-width: 767px) {
  .search-form-alternative {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
}
.search-alternative-input {
  -webkit-box-flex: 1;
          flex: 1;
  padding: var(--spacing-3) var(--spacing-4);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  font-size: var(--font-size-base);
}
.search-alternative-input:focus {
  outline: none;
  border-color: var(--color-link);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
}
.search-alternative-submit {
  padding: var(--spacing-3) var(--spacing-6);
  background: var(--color-link);
  color: var(--color-white);
  border: none;
  border-radius: var(--border-radius-lg);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
  -webkit-transition: background var(--transition-fast);
  transition: background var(--transition-fast);
}
.search-alternative-submit:hover {
  background: var(--color-link-hover);
}
@media (max-width: 767px) {
  .search-alternative-submit {
    width: 100%;
  }
}
.popular-searches-tags {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2);
  -webkit-box-pack: center;
          justify-content: center;
}
@media (min-width: 768px) {
  .popular-searches-tags {
    -webkit-box-pack: start;
            justify-content: flex-start;
  }
}
.popular-search-tag {
  display: inline-block;
  padding: var(--spacing-2) var(--spacing-3);
  background: var(--color-bg-hover);
  border: 1px solid var(--color-border-light);
  border-radius: var(--border-radius-full);
  color: var(--color-text-main);
  text-decoration: none;
  font-size: var(--font-size-sm);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.popular-search-tag:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.categories-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12.5rem, 1fr)); /* 200px */
  gap: var(--spacing-3);
  margin-top: var(--spacing-4);
}
.category-link {
  display: block;
  padding: var(--spacing-4);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-md);
  text-decoration: none;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  text-align: center;
}
.category-link:hover {
  background: var(--color-bg-hover);
  border-color: var(--color-link);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.category-name {
  display: block;
  font-weight: var(--font-weight-semibold);
  color: var(--color-forest-green);
  margin-bottom: var(--spacing-1);
  font-size: var(--font-size-base);
}
.category-count {
  display: block;
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
@media (max-width: 767px) {
  .search-results-header {
    padding: var(--spacing-6);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: stretch;
            align-items: stretch;
  }
  .search-filters-wrapper {
    padding: var(--spacing-4);
  }
  .search-results-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-6);
  }
  .no-results-content {
    text-align: left;
  }
}
.ek-error-404 {
  text-align: center;
  padding: var(--spacing-20) var(--spacing-4);
}
.ek-error-404 .ek-error-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-forest-green);
  margin-bottom: var(--spacing-6);
}
@media (min-width: 768px) {
  .ek-error-404 .ek-error-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-error-404 .ek-error-message {
  font-size: var(--font-size-xl);
  color: var(--color-text-light);
  margin-bottom: var(--spacing-8);
  max-width: 37.5rem; /* 600px */
  margin-left: auto;
  margin-right: auto;
  line-height: var(--line-height-loose);
}
.ek-error-404 .ek-error-actions {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  gap: var(--spacing-6);
  flex-wrap: wrap;
}
.ek-single-post .post-navigation,
.ek-content-area .post-navigation,
.ek-post-navigation {
  margin: var(--spacing-16) 0 var(--spacing-12) 0;
  padding: var(--spacing-6) 0;
}
.ek-single-post .post-navigation .ek-nav-links,
.ek-content-area .post-navigation .ek-nav-links,
.ek-post-navigation .ek-nav-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-6);
  -webkit-box-align: stretch;
          align-items: stretch;
}
@media (min-width: 768px) {
  .ek-single-post .post-navigation .ek-nav-links,
  .ek-content-area .post-navigation .ek-nav-links,
  .ek-post-navigation .ek-nav-links {
    grid-template-columns: 1fr;
    gap: var(--spacing-4);
  }
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next,
.ek-post-navigation .ek-nav-links .ek-nav-previous,
.ek-post-navigation .ek-nav-links .ek-nav-next {
  position: relative;
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a,
.ek-post-navigation .ek-nav-links .ek-nav-previous a,
.ek-post-navigation .ek-nav-links .ek-nav-next a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  min-height: 8rem; /* 128px */
  background: var(--color-bg-surface);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  text-decoration: none;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  overflow: hidden;
  position: relative;
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
  gap: var(--spacing-4);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:hover, .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:focus,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:hover,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:focus,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:hover,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:focus,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:hover,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:focus,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:hover,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:focus,
.ek-post-navigation .ek-nav-links .ek-nav-next a:hover,
.ek-post-navigation .ek-nav-links .ek-nav-next a:focus {
  -webkit-transform: translateY(-6px);
          transform: translateY(-6px);
  border-color: var(--color-link);
  -webkit-box-shadow: var(--box-shadow-xl);
          box-shadow: var(--box-shadow-xl);
  background: var(--color-bg-surface);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-arrow svg, .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-arrow svg,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-arrow svg,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-arrow svg,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-arrow svg,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-arrow svg,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-arrow svg,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-arrow svg,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-arrow svg,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-arrow svg,
.ek-post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-arrow svg,
.ek-post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-arrow svg {
  -webkit-transform: translateX(-4px);
          transform: translateX(-4px);
  color: var(--color-link);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-label, .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-label,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-label,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-label,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-label,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-label,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-label,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-label,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-label,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-label,
.ek-post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-label,
.ek-post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-label {
  color: var(--color-link);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-title, .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-title,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-title,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-title,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-title,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-title,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-title,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-title,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-content .ek-nav-title,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-content .ek-nav-title,
.ek-post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-title,
.ek-post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-content .ek-nav-title {
  color: var(--color-link);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-thumbnail .ek-nav-overlay, .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-thumbnail .ek-nav-overlay,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-thumbnail .ek-nav-overlay,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-thumbnail .ek-nav-overlay,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-thumbnail .ek-nav-overlay,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-thumbnail .ek-nav-overlay,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-thumbnail .ek-nav-overlay,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-thumbnail .ek-nav-overlay,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-thumbnail .ek-nav-overlay,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-thumbnail .ek-nav-overlay,
.ek-post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-thumbnail .ek-nav-overlay,
.ek-post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-thumbnail .ek-nav-overlay {
  opacity: 0.2;
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-thumbnail img, .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-thumbnail img,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-thumbnail img,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-thumbnail img,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-thumbnail img,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-thumbnail img,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-thumbnail img,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-thumbnail img,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:hover .ek-nav-thumbnail img,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:focus .ek-nav-thumbnail img,
.ek-post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-thumbnail img,
.ek-post-navigation .ek-nav-links .ek-nav-next a:focus .ek-nav-thumbnail img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:focus, .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a:focus-visible,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:focus,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:focus-visible,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:focus,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a:focus-visible,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:focus,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:focus-visible,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:focus,
.ek-post-navigation .ek-nav-links .ek-nav-previous a:focus-visible,
.ek-post-navigation .ek-nav-links .ek-nav-next a:focus,
.ek-post-navigation .ek-nav-links .ek-nav-next a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  -webkit-box-shadow: 0 0 0 3px var(--color-focus-ring), var(--box-shadow-lg);
          box-shadow: 0 0 0 3px var(--color-focus-ring), var(--box-shadow-lg);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-content {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  padding: var(--spacing-5);
  -webkit-box-flex: 1;
          flex: 1;
  position: relative;
  z-index: 2;
  min-width: 0; /* Prevent text overflow */
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  gap: var(--spacing-1);
  margin-right: var(--spacing-4);
  flex-shrink: 0;
  width: 3rem; /* 48px */
  height: 3rem; /* 48px */
  background: var(--color-bg-hover);
  border-radius: var(--border-radius-full);
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow svg,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow svg,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow svg,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow svg,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow svg,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow svg {
  width: 1.5rem; /* 24px */
  height: 1.5rem; /* 24px */
  color: var(--color-text-main);
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow .ek-nav-label,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow .ek-nav-label,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow .ek-nav-label,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow .ek-nav-label,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-arrow .ek-nav-label,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-arrow .ek-nav-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  -webkit-transition: color var(--transition-base);
  transition: color var(--transition-base);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text {
  -webkit-box-flex: 1;
          flex: 1;
  min-width: 0; /* Prevent text overflow */
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text .ek-nav-subtitle,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text .ek-nav-subtitle,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text .ek-nav-subtitle,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text .ek-nav-subtitle,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text .ek-nav-subtitle,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text .ek-nav-subtitle {
  display: block;
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: var(--font-weight-medium);
  margin-bottom: var(--spacing-2);
  -webkit-transition: color var(--transition-base);
  transition: color var(--transition-base);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text .ek-nav-title,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text .ek-nav-title,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text .ek-nav-title,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text .ek-nav-title,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-content .ek-nav-text .ek-nav-title,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-content .ek-nav-text .ek-nav-title {
  display: block;
  font-family: var(--font-heading);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  line-height: var(--line-height-tight);
  -webkit-transition: color var(--transition-base);
  transition: color var(--transition-base);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail {
  position: relative;
  width: 8rem; /* 128px */
  height: 100%;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 0 var(--border-radius-lg) var(--border-radius-lg) 0;
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail img,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail img,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail img,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail img,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail img,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-slow);
  transition: -webkit-transform var(--transition-slow);
  transition: transform var(--transition-slow);
  transition: transform var(--transition-slow), -webkit-transform var(--transition-slow);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail .ek-nav-overlay,
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail .ek-nav-overlay,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail .ek-nav-overlay,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail .ek-nav-overlay,
.ek-post-navigation .ek-nav-links .ek-nav-previous .ek-nav-thumbnail .ek-nav-overlay,
.ek-post-navigation .ek-nav-links .ek-nav-next .ek-nav-thumbnail .ek-nav-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.8)), color-stop(50%, rgba(0, 0, 0, 0.4)), to(transparent));
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.4) 50%, transparent 100%);
  opacity: 0.5;
  -webkit-transition: opacity var(--transition-base);
  transition: opacity var(--transition-base);
  pointer-events: none;
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content,
.ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
          flex-direction: row-reverse;
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow,
.ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow {
  margin-right: 0;
  margin-left: var(--spacing-4);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow svg,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow svg,
.ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow svg {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text,
.ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text {
  text-align: right;
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-arrow svg,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-arrow svg,
.ek-post-navigation .ek-nav-links .ek-nav-next a:hover .ek-nav-content .ek-nav-arrow svg {
  -webkit-transform: translateX(4px) rotate(180deg);
          transform: translateX(4px) rotate(180deg);
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail,
.ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail {
  border-radius: var(--border-radius-lg) 0 0 var(--border-radius-lg);
  -webkit-box-ordinal-group: 0;
          order: -1;
}
.ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail .ek-nav-overlay,
.ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail .ek-nav-overlay,
.ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail .ek-nav-overlay {
  background: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.8)), color-stop(50%, rgba(0, 0, 0, 0.4)), to(transparent));
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.4) 50%, transparent 100%);
}
@media (max-width: 767px) {
  .ek-single-post .post-navigation,
  .ek-content-area .post-navigation,
  .ek-post-navigation {
    margin: var(--spacing-12) 0 var(--spacing-8) 0;
  }
  .ek-single-post .post-navigation .ek-nav-links,
  .ek-content-area .post-navigation .ek-nav-links,
  .ek-post-navigation .ek-nav-links {
    gap: var(--spacing-4);
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a,
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a,
  .ek-post-navigation .ek-nav-links .ek-nav-previous a,
  .ek-post-navigation .ek-nav-links .ek-nav-next a {
    min-height: 7rem; /* 112px */
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: stretch;
            align-items: stretch;
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content,
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content,
  .ek-post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content {
    padding: var(--spacing-4);
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    width: 100%;
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow,
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow,
  .ek-post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow {
    margin-right: var(--spacing-3);
    margin-left: 0;
    width: 2.5rem; /* 40px */
    height: 2.5rem; /* 40px */
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow .ek-nav-label,
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow .ek-nav-label,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow .ek-nav-label,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow .ek-nav-label,
  .ek-post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow .ek-nav-label,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow .ek-nav-label {
    display: none;
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow svg,
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow svg,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow svg,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow svg,
  .ek-post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-arrow svg,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow svg {
    width: 1.25rem; /* 20px */
    height: 1.25rem; /* 20px */
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-text .ek-nav-subtitle,
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text .ek-nav-subtitle,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-text .ek-nav-subtitle,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text .ek-nav-subtitle,
  .ek-post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-text .ek-nav-subtitle,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text .ek-nav-subtitle {
    font-size: 0.625rem; /* 10px */
    margin-bottom: var(--spacing-1);
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-text .ek-nav-title,
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text .ek-nav-title,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-text .ek-nav-title,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text .ek-nav-title,
  .ek-post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-content .ek-nav-text .ek-nav-title,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text .ek-nav-title {
    font-size: var(--font-size-base);
    -webkit-line-clamp: 2;
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-thumbnail,
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-thumbnail,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail,
  .ek-post-navigation .ek-nav-links .ek-nav-previous a .ek-nav-thumbnail,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail {
    width: 100%;
    height: 6rem; /* 96px */
    border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
    -webkit-box-ordinal-group: 0;
            order: -1;
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse;
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-arrow {
    margin-right: 0;
    margin-left: var(--spacing-3);
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-content .ek-nav-text {
    text-align: right;
  }
  .ek-single-post .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail,
  .ek-content-area .post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail,
  .ek-post-navigation .ek-nav-links .ek-nav-next a .ek-nav-thumbnail {
    border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  }
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .page-header .page-title {
    color: var(--color-link);
  }
  :root:not([data-theme=light]) .ek-archive-description {
    color: var(--color-gray-300);
  }
  :root:not([data-theme=light]) .ek-single-layout .entry-title {
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .ek-single-layout .entry-meta {
    color: var(--color-gray-400);
  }
  :root:not([data-theme=light]) .ek-single-layout .entry-content {
    color: var(--color-gray-100);
  }
  :root:not([data-theme=light]) .ek-search-results .ek-search-title {
    color: var(--color-link);
  }
  :root:not([data-theme=light]) .ek-search-results .ek-search-stats {
    color: var(--color-gray-300);
  }
  :root:not([data-theme=light]) .ek-error-404 .ek-error-title {
    color: var(--color-link);
  }
  :root:not([data-theme=light]) .ek-error-404 .ek-error-message {
    color: var(--color-gray-300);
  }
  :root:not([data-theme=light]) .ek-category-pagination .page-numbers {
    background-color: var(--color-gray-800);
    border-color: var(--color-gray-700);
    color: var(--color-gray-200);
  }
  :root:not([data-theme=light]) .ek-category-pagination .page-numbers:hover, :root:not([data-theme=light]) .ek-category-pagination .page-numbers:focus, :root:not([data-theme=light]) .ek-category-pagination .page-numbers.ek-current {
    background-color: var(--color-link);
    border-color: var(--color-link);
    color: var(--color-white);
  }
}
[data-theme=dark] .page-header .page-title {
  color: var(--color-link);
}
[data-theme=dark] .ek-archive-description {
  color: var(--color-gray-300);
}
[data-theme=dark] .ek-single-layout .entry-title {
  color: var(--color-white);
}
[data-theme=dark] .ek-single-layout .entry-meta {
  color: var(--color-gray-400);
}
[data-theme=dark] .ek-single-layout .entry-content {
  color: var(--color-gray-100);
}
[data-theme=dark] .ek-search-results .ek-search-title {
  color: var(--color-link);
}
[data-theme=dark] .ek-search-results .ek-search-stats {
  color: var(--color-gray-300);
}
[data-theme=dark] .ek-error-404 .ek-error-title {
  color: var(--color-link);
}
[data-theme=dark] .ek-error-404 .ek-error-message {
  color: var(--color-gray-300);
}
[data-theme=dark] .ek-category-pagination .page-numbers {
  background-color: var(--color-gray-800);
  border-color: var(--color-gray-700);
  color: var(--color-gray-200);
}
[data-theme=dark] .ek-category-pagination .page-numbers:hover, [data-theme=dark] .ek-category-pagination .page-numbers:focus, [data-theme=dark] .ek-category-pagination .page-numbers.ek-current {
  background-color: var(--color-link);
  border-color: var(--color-link);
  color: var(--color-white);
}
/**
 * Navigation Styles - Mobile First
 * Main entry point for all navigation-related styles
 */
/**
 * Header Structure & Branding
 * Basic header layout, containers, and site branding
 */
.ek-site-header {
  --header-bg: var(--customizer-header-bg, var(--color-bg-surface));
  --header-border: var(--color-border);
  --header-shadow: var(--box-shadow-sm);
  --header-shadow-hover: var(--box-shadow-md);
  --header-shadow-scrolled: var(--box-shadow-lg);
  background-color: var(--header-bg);
  border-bottom: 1px solid var(--header-border);
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 20;
  -webkit-box-shadow: var(--header-shadow);
          box-shadow: var(--header-shadow);
  -webkit-transition: background-color var(--transition-fast), -webkit-box-shadow var(--transition-fast), -webkit-transform var(--transition-base);
  transition: background-color var(--transition-fast), -webkit-box-shadow var(--transition-fast), -webkit-transform var(--transition-base);
  transition: box-shadow var(--transition-fast), transform var(--transition-base), background-color var(--transition-fast);
  transition: box-shadow var(--transition-fast), transform var(--transition-base), background-color var(--transition-fast), -webkit-box-shadow var(--transition-fast), -webkit-transform var(--transition-base);
  backdrop-filter: var(--backdrop-blur);
  -webkit-backdrop-filter: var(--backdrop-blur);
  will-change: transform;
  isolation: isolate;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}
.ek-site-header:hover {
  -webkit-box-shadow: var(--header-shadow-hover);
          box-shadow: var(--header-shadow-hover);
}
.ek-site-header.ek-header-scrolled {
  min-height: 64px;
  -webkit-box-shadow: var(--header-shadow-scrolled);
          box-shadow: var(--header-shadow-scrolled);
  -webkit-animation: ek-header-shrink var(--transition-base) ease-out;
          animation: ek-header-shrink var(--transition-base) ease-out;
}
@-webkit-keyframes ek-header-shrink {
  0% {
    min-height: var(--header-height-mobile);
    -webkit-box-shadow: var(--header-shadow);
            box-shadow: var(--header-shadow);
  }
  100% {
    min-height: 64px;
    -webkit-box-shadow: var(--header-shadow-scrolled);
            box-shadow: var(--header-shadow-scrolled);
  }
}
@keyframes ek-header-shrink {
  0% {
    min-height: var(--header-height-mobile);
    -webkit-box-shadow: var(--header-shadow);
            box-shadow: var(--header-shadow);
  }
  100% {
    min-height: 64px;
    -webkit-box-shadow: var(--header-shadow-scrolled);
            box-shadow: var(--header-shadow-scrolled);
  }
}
.ek-header-container {
  position: relative;
}
.ek-header-content {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  min-height: var(--header-height-mobile);
  padding: var(--spacing-3) var(--spacing-4);
  gap: var(--spacing-4);
  -webkit-transition: min-height var(--transition-base), padding var(--transition-base), gap var(--transition-base);
  transition: min-height var(--transition-base), padding var(--transition-base), gap var(--transition-base);
}
.ek-site-header.ek-header-scrolled .ek-header-content {
  min-height: 64px;
  padding: var(--spacing-2) var(--spacing-4);
  gap: var(--spacing-3);
}
@media (min-width: 768px) {
  .ek-site-header.ek-header-scrolled .ek-header-content {
    padding: var(--spacing-2) var(--spacing-6);
    gap: var(--spacing-4);
  }
}
@media (min-width: 1024px) {
  .ek-site-header.ek-header-scrolled .ek-header-content {
    padding: var(--spacing-2) var(--spacing-8);
  }
}
@media (min-width: 768px) {
  .ek-header-content {
    min-height: var(--header-height-tablet);
    padding: var(--spacing-3) var(--spacing-6);
    gap: var(--spacing-6);
  }
}
@media (min-width: 1024px) {
  .ek-header-content {
    min-height: var(--header-height-desktop);
    padding: var(--spacing-4) var(--spacing-8);
  }
}
.ek-site-branding {
  flex-shrink: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: var(--spacing-2);
}
.ek-site-branding .custom-logo,
.ek-site-branding .ek-custom-logo,
.ek-site-branding .ek-site-logo {
  max-height: var(--logo-height-mobile);
  width: auto;
  background: transparent !important; /* Force transparent background - override any dynamic colors */
  -webkit-transition: opacity var(--transition-fast), max-height var(--transition-base);
  transition: opacity var(--transition-fast), max-height var(--transition-base);
}
.ek-site-branding .custom-logo:hover,
.ek-site-branding .ek-custom-logo:hover,
.ek-site-branding .ek-site-logo:hover {
  opacity: var(--opacity-hover);
}
.ek-site-header.ek-header-scrolled .ek-site-branding .custom-logo,
.ek-site-header.ek-header-scrolled .ek-site-branding .ek-custom-logo,
.ek-site-header.ek-header-scrolled .ek-site-branding .ek-site-logo {
  max-height: 40px;
}
.ek-site-branding .ek-site-title a {
  color: var(--color-heading);
  text-decoration: none;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-xl);
  line-height: var(--line-height-tight);
  -webkit-transition: color var(--transition-fast), font-size var(--transition-base);
  transition: color var(--transition-fast), font-size var(--transition-base);
}
.ek-site-branding .ek-site-title a:hover, .ek-site-branding .ek-site-title a:focus {
  color: var(--color-primary);
}
.ek-site-branding .ek-site-title a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.ek-site-header.ek-header-scrolled .ek-site-branding .ek-site-title a {
  font-size: var(--font-size-sm);
}
.ek-menu-toggle {
  display: none;
}
/**
 * Main Navigation Styles
 * Desktop navigation, dropdown menus, and standard navigation behavior
 */
.ek-main-navigation {
  -webkit-box-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  padding: 0 var(--spacing-5);
}
.ek-main-navigation ul {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-8);
}
.ek-main-navigation li {
  position: relative;
}
.ek-main-navigation a {
  color: var(--customizer-nav-link-color, var(--color-text-main));
  text-decoration: none;
  font-weight: var(--font-weight-semibold);
  padding: var(--spacing-2_5) var(--spacing-4);
  display: block;
  font-size: var(--font-size-lg);
  letter-spacing: var(--letter-spacing-tight);
  border-radius: var(--border-radius);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  position: relative;
  margin: 0 var(--spacing-1);
}
.ek-main-navigation a::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 2px;
  background: var(--customizer-nav-link-hover-color, var(--color-link));
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border-radius: 1px;
}
.ek-main-navigation a:hover {
  color: var(--customizer-nav-link-hover-color, var(--color-link));
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.ek-main-navigation a:hover::before {
  width: 100%;
}
.ek-main-navigation a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  color: var(--customizer-nav-link-hover-color, var(--color-link));
  background: var(--color-bg-hover);
}
.ek-main-navigation a:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.ek-main-navigation .current-menu-item > a,
.ek-main-navigation .current-menu-ancestor > a,
.ek-main-navigation .current_page_item > a,
.ek-main-navigation .current_page_ancestor > a {
  color: var(--customizer-nav-active-color, var(--color-link));
  font-weight: var(--font-weight-bold);
}
.ek-main-navigation .current-menu-item > a::before,
.ek-main-navigation .current-menu-ancestor > a::before,
.ek-main-navigation .current_page_item > a::before,
.ek-main-navigation .current_page_ancestor > a::before {
  width: 100%;
  background: var(--customizer-nav-active-color, var(--color-link));
}
.ek-main-navigation ul ul {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: 0;
  margin-top: 0;
}
.ek-main-navigation ul ul li {
  margin: 0;
  display: block;
  width: 100%;
  position: relative;
}
.ek-main-navigation ul ul a {
  padding: var(--spacing-2_5) var(--spacing-5);
  font-size: var(--font-size-sm);
  color: var(--color-text-main);
  white-space: normal;
  display: block;
}
.ek-main-navigation .menu-item-has-children > a::after {
  content: "";
  display: inline-block;
  margin-left: 6px;
  vertical-align: middle;
  border-top: 4px solid currentcolor;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
  -webkit-transform: translateY(1px);
          transform: translateY(1px);
  opacity: 0.7;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.ek-main-navigation .menu-item-has-children:hover > a::after,
.ek-main-navigation .menu-item-has-children:focus-within > a::after {
  -webkit-transform: translateY(1px) rotate(180deg);
          transform: translateY(1px) rotate(180deg);
}
.ek-main-navigation .sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-top: none;
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
  min-width: 200px;
  z-index: 35;
  padding: var(--spacing-2_5) 0;
}
.ek-main-navigation .sub-menu li {
  display: block;
  position: static;
}
.ek-main-navigation .sub-menu li a {
  display: block;
  padding: var(--spacing-2) var(--spacing-5);
  white-space: nowrap;
  border-bottom: 1px solid var(--color-border-light);
  -webkit-transition: background-color 0.2s ease, color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.ek-main-navigation .sub-menu li a:hover, .ek-main-navigation .sub-menu li a:focus {
  background: var(--color-bg-surface);
  color: var(--color-link);
}
.ek-main-navigation .sub-menu li:last-child a {
  border-bottom: none;
}
.ek-main-navigation li:not(.ek-mega-menu-item):hover > .sub-menu,
.ek-main-navigation li:not(.ek-mega-menu-item):focus-within > .sub-menu,
.ek-main-navigation li:not(.ek-mega-menu-item):focus > .sub-menu {
  display: block;
  -webkit-animation: fadeIn 0.2s ease-out;
          animation: fadeIn 0.2s ease-out;
}
.ek-menu,
#primary-menu,
#mobile-primary-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ek-menu li,
#primary-menu li,
#mobile-primary-menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ek-menu-primary-container {
  overflow: visible;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}
.ek-mobile-navigation .menu-item-has-children > a::after {
  content: "";
  display: inline-block;
  margin-left: 6px;
  vertical-align: middle;
  border-top: 4px solid currentcolor;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
  -webkit-transform: translateY(1px);
          transform: translateY(1px);
  opacity: 0.7;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.ek-mobile-navigation .menu-item-has-children:hover > a::after,
.ek-mobile-navigation .menu-item-has-children:focus-within > a::after {
  -webkit-transform: translateY(1px) rotate(180deg);
          transform: translateY(1px) rotate(180deg);
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
/**
 * Mobile Menu System
 * Responsive mobile navigation with overlay and slide-out panel
 */
/* Enhanced Mobile Menu Overlay */
.ek-mobile-menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 55;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all var(--transition-base) cubic-bezier(0.4, 0, 0.2, 1);
  transition: all var(--transition-base) cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}
.ek-mobile-menu-overlay.ek-active {
  opacity: 1;
  visibility: visible;
}
/* Enhanced Mobile Menu Panel */
.ek-mobile-menu-panel {
  position: fixed;
  top: 0;
  right: -300px;
  width: 300px;
  height: 100vh;
  background: var(--color-bg-surface);
  -webkit-box-shadow: var(--box-shadow-2xl);
          box-shadow: var(--box-shadow-2xl);
  z-index: 60;
  -webkit-transition: right var(--transition-base) cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: right var(--transition-base) cubic-bezier(0.25, 0.46, 0.45, 0.94);
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  border-left: 2px solid var(--color-border);
  backdrop-filter: var(--backdrop-blur-strong);
  -webkit-backdrop-filter: var(--backdrop-blur-strong);
  border-radius: var(--border-radius-xl) 0 0 var(--border-radius-xl);
  isolation: isolate;
  will-change: right;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  visibility: hidden;
  -webkit-safe-area-inset-top: env(safe-area-inset-top);
  -webkit-safe-area-inset-right: env(safe-area-inset-right);
  /* Subtle slide-in animation */
  -webkit-animation: ek-slide-in-panel var(--transition-base) cubic-bezier(0.25, 0.46, 0.45, 0.94);
          animation: ek-slide-in-panel var(--transition-base) cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
@-webkit-keyframes ek-slide-in-panel {
  0% {
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
    opacity: 0.8;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes ek-slide-in-panel {
  0% {
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
    opacity: 0.8;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
.ek-mobile-menu-panel.ek-active {
  right: 0;
  visibility: visible;
  -webkit-animation: ek-slide-in-panel var(--transition-base) cubic-bezier(0.25, 0.46, 0.45, 0.94);
          animation: ek-slide-in-panel var(--transition-base) cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
/* Enhanced Mobile Menu Header */
.ek-mobile-menu-header {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  padding: var(--spacing-4) var(--spacing-5);
  border-bottom: 1px solid var(--color-border-light);
  background: var(--color-bg-surface);
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 65;
  min-height: var(--header-height-mobile);
  padding-top: max(var(--spacing-4), env(safe-area-inset-top, 0) + var(--spacing-4));
  /* Enhanced backdrop for better separation */
  backdrop-filter: var(--backdrop-blur);
  -webkit-backdrop-filter: var(--backdrop-blur);
}
.ek-mobile-menu-title,
.ek-mobile-menu-description {
  display: none; /* Screen reader only */
}
/* Mobile Menu Content */
.ek-mobile-menu-content {
  -webkit-box-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  min-height: 0;
  overflow-y: auto;
}
/* Mobile Menu Footer */
.ek-mobile-menu-footer {
  border-top: 1px solid var(--color-border-light);
  background: var(--color-bg-surface);
  padding: var(--spacing-4) var(--spacing-5);
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: var(--spacing-3);
  /* Safe area support for iOS */
  padding-bottom: max(var(--spacing-4), env(safe-area-inset-bottom, 0) + var(--spacing-4));
}
/* Mobile Menu Language Switcher */
.ek-mobile-menu-lang-switcher {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  padding: var(--spacing-2) 0;
  border-bottom: 1px solid var(--color-border-light);
  margin-bottom: var(--spacing-2);
  /* Only show on mobile - desktop version is in header */
}
@media (min-width: 1024px) {
  .ek-mobile-menu-lang-switcher {
    display: none;
  }
}
@media (min-width: 768px) {
  .ek-mobile-menu-lang-switcher {
    display: none;
  }
}
.ek-mobile-menu-lang-switcher .wpml-ls-legacy-dropdown {
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  font-size: var(--font-size-sm);
}
.ek-mobile-menu-lang-switcher .wpml-ls-legacy-dropdown a {
  color: var(--color-text-main);
  text-decoration: none;
  padding: var(--spacing-2) var(--spacing-3);
  border-radius: var(--border-radius);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-mobile-menu-lang-switcher .wpml-ls-legacy-dropdown a:hover {
  background: var(--color-bg-hover);
  color: var(--color-link);
}
.ek-mobile-menu-lang-switcher .wpml-ls-legacy-dropdown a.wpml-ls-current-language {
  font-weight: var(--font-weight-semibold);
  background: var(--color-bg-active);
}
.ek-mobile-menu-lang-switcher .language-selector,
.ek-mobile-menu-lang-switcher .lang-switcher {
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-2);
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  flex-wrap: wrap;
}
.ek-mobile-menu-lang-switcher .language-selector a,
.ek-mobile-menu-lang-switcher .lang-switcher a {
  color: var(--color-text-main);
  text-decoration: none;
  font-size: var(--font-size-sm);
  padding: var(--spacing-1_5) var(--spacing-2_5);
  border-radius: var(--border-radius);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  border: 1px solid var(--color-border-light);
}
.ek-mobile-menu-lang-switcher .language-selector a:hover,
.ek-mobile-menu-lang-switcher .lang-switcher a:hover {
  background: var(--color-bg-hover);
  border-color: var(--color-link);
  color: var(--color-link);
}
.ek-mobile-menu-lang-switcher .language-selector a.active, .ek-mobile-menu-lang-switcher .language-selector a.current,
.ek-mobile-menu-lang-switcher .lang-switcher a.active,
.ek-mobile-menu-lang-switcher .lang-switcher a.current {
  font-weight: var(--font-weight-semibold);
  background: var(--color-bg-active);
  border-color: var(--color-link);
}
.ek-mobile-menu-branding {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}
.ek-mobile-menu-logo-link {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  text-decoration: none;
  color: var(--color-text-main);
  font-weight: 600;
  font-size: var(--font-size-lg);
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-mobile-menu-logo-link:hover,
.ek-mobile-menu-logo-link:focus {
  color: var(--color-link);
}
.ek-mobile-menu-site-title {
  font-family: var(--font-heading);
  letter-spacing: -0.01em;
}
.ek-mobile-menu-panel .ek-mobile-menu {
  list-style: none;
  margin: 0;
  padding: var(--spacing-4) 0;
  -webkit-box-flex: 1;
          flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */
  scroll-behavior: smooth; /* Smooth scrolling behavior */
  scrollbar-width: thin; /* Firefox scrollbar */
  scrollbar-color: var(--color-border) transparent;
  /* Custom scrollbar styling */
}
.ek-mobile-menu-panel .ek-mobile-menu::-webkit-scrollbar {
  width: 6px;
}
.ek-mobile-menu-panel .ek-mobile-menu::-webkit-scrollbar-track {
  background: transparent;
}
.ek-mobile-menu-panel .ek-mobile-menu::-webkit-scrollbar-thumb {
  background: var(--color-border);
  border-radius: 3px;
  -webkit-transition: background-color var(--transition-fast);
  transition: background-color var(--transition-fast);
}
.ek-mobile-menu-panel .ek-mobile-menu::-webkit-scrollbar-thumb:hover {
  background: var(--color-border-light);
}
.ek-mobile-menu-panel .ek-mobile-menu li {
  border-bottom: 1px solid var(--color-border-light);
  position: relative;
}
.ek-mobile-menu-panel .ek-mobile-menu li:last-child {
  border-bottom: none;
}
.ek-mobile-menu-panel .ek-mobile-menu li a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: start;
          justify-content: start;
  text-align: left;
  padding: var(--spacing-4) var(--spacing-5);
  color: var(--color-text-main);
  text-decoration: none;
  font-weight: 500;
  font-size: var(--font-size-base);
  line-height: 1.4;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  min-height: 48px; /* WCAG touch target minimum */
  position: relative;
  border-radius: var(--border-radius);
  /* Better focus management */
}
.ek-mobile-menu-panel .ek-mobile-menu li a:focus {
  outline: none;
  background: var(--color-bg-hover);
  color: var(--color-link);
}
.ek-mobile-menu-panel .ek-mobile-menu li a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: -2px;
}
.ek-mobile-menu-panel .ek-mobile-menu li a:hover {
  background: var(--color-bg-hover);
  color: var(--color-link);
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.ek-mobile-menu-panel .ek-mobile-menu li a:active {
  background: var(--color-border-light);
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
/* Sub-menu items - expanded by default on mobile */
.ek-mobile-menu-panel .ek-mobile-menu .sub-menu {
  display: block; /* Visible by default */
  border-left: 3px solid var(--color-border);
  margin-left: var(--spacing-4);
  padding-left: var(--spacing-2);
  list-style: none;
  -webkit-animation: slideDown 0.2s ease-out;
          animation: slideDown 0.2s ease-out;
}
/* Sub-menu links - also centered */
.ek-mobile-menu-panel .ek-mobile-menu .sub-menu li a {
  padding: var(--spacing-3) var(--spacing-4);
  font-size: var(--font-size-sm);
  font-weight: 400;
  min-height: 44px;
}
/* Collapsed sub-menu state */
.ek-mobile-menu-panel .ek-mobile-menu .sub-menu.ek-collapsed {
  display: none;
  -webkit-animation: slideUp 0.2s ease-out;
          animation: slideUp 0.2s ease-out;
}
.ek-mobile-menu-panel .ek-mobile-menu li.current-menu-item a {
  color: var(--color-link);
  font-weight: 600;
  background: rgba(193, 25, 36, 0.05);
  border-left: 3px solid var(--color-link);
  /* Active state indicator */
}
.ek-mobile-menu-panel .ek-mobile-menu li.current-menu-item a::before {
  content: "";
  position: absolute;
  right: var(--spacing-4);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 6px;
  height: 6px;
  background: var(--color-link);
  border-radius: 50%;
}
.ek-mobile-menu-close {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 44px; /* WCAG touch target minimum */
  height: 44px; /* WCAG touch target minimum */
  background: var(--color-bg-hover);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  cursor: pointer;
  color: var(--color-text-main);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  position: relative;
  overflow: hidden;
  /* Focus ring for accessibility */
}
.ek-mobile-menu-close:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  -webkit-box-shadow: 0 0 0 4px rgba(193, 25, 36, 0.1);
          box-shadow: 0 0 0 4px rgba(193, 25, 36, 0.1);
}
.ek-mobile-menu-close {
  /* Subtle background animation */
}
.ek-mobile-menu-close::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(255, 255, 255, 0.1)), to(transparent));
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
  -webkit-transition: left 0.5s ease;
  transition: left 0.5s ease;
}
.ek-mobile-menu-close:hover {
  background: var(--color-bg-surface);
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  border-color: var(--color-border-light);
}
.ek-mobile-menu-close:hover::before {
  left: 100%;
}
.ek-mobile-menu-close:active {
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
  background: var(--color-border-light);
}
.ek-mobile-menu-close {
  /* Better icon sizing and positioning */
}
.ek-mobile-menu-close svg {
  width: 20px;
  height: 20px;
  stroke-width: 2.5;
  flex-shrink: 0;
}
/* ==========================================================================
	MEGA MENU POPUP (Full-Screen Mobile)
   ========================================================================== */
.ek-mega-menu-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 70;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  pointer-events: none;
}
.ek-mega-menu-popup.ek-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.ek-mega-menu-popup-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--color-overlay-darker);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.ek-mega-menu-popup-content {
  position: relative;
  width: 100%;
  height: 100%;
  background: var(--color-bg-surface);
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-shadow: var(--box-shadow-xl);
          box-shadow: var(--box-shadow-xl);
  /* Safe area support for iOS */
  padding-top: max(0px, env(safe-area-inset-top, 0));
  padding-bottom: max(0px, env(safe-area-inset-bottom, 0));
  padding-left: max(0px, env(safe-area-inset-left, 0));
  padding-right: max(0px, env(safe-area-inset-right, 0));
}
.ek-mega-menu-popup-header {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: end;
          justify-content: flex-end;
  padding: var(--spacing-4) var(--spacing-5);
  border-bottom: 1px solid var(--color-border-light);
  background: var(--color-bg-surface);
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 75;
  min-height: 60px;
  /* Safe area support */
  padding-top: max(var(--spacing-4), env(safe-area-inset-top, 0) + var(--spacing-4));
}
.ek-mega-menu-popup-title {
  display: none; /* Screen reader only */
}
.ek-mega-menu-popup-close {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 44px;
  height: 44px;
  background: var(--color-bg-hover);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  cursor: pointer;
  color: var(--color-text-main);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  position: relative;
  overflow: hidden;
}
.ek-mega-menu-popup-close:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  -webkit-box-shadow: 0 0 0 4px rgba(193, 25, 36, 0.1);
          box-shadow: 0 0 0 4px rgba(193, 25, 36, 0.1);
}
.ek-mega-menu-popup-close::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(255, 255, 255, 0.1)), to(transparent));
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
  -webkit-transition: left 0.5s ease;
  transition: left 0.5s ease;
}
.ek-mega-menu-popup-close:hover {
  background: var(--color-bg-surface);
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  border-color: var(--color-border-light);
}
.ek-mega-menu-popup-close:hover::before {
  left: 100%;
}
.ek-mega-menu-popup-close:active {
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
  background: var(--color-border-light);
}
.ek-mega-menu-popup-close svg {
  width: 20px;
  height: 20px;
  stroke-width: 2.5;
  flex-shrink: 0;
}
.ek-mega-menu-popup-body {
  -webkit-box-flex: 1;
          flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: var(--spacing-6) 0;
  /* Custom scrollbar */
}
.ek-mega-menu-popup-body::-webkit-scrollbar {
  width: 6px;
}
.ek-mega-menu-popup-body::-webkit-scrollbar-track {
  background: transparent;
}
.ek-mega-menu-popup-body::-webkit-scrollbar-thumb {
  background: var(--color-border);
  border-radius: 3px;
  -webkit-transition: background-color var(--transition-fast);
  transition: background-color var(--transition-fast);
}
.ek-mega-menu-popup-body::-webkit-scrollbar-thumb:hover {
  background: var(--color-border-light);
}
.ek-mega-menu-popup-body {
  scrollbar-width: thin;
  scrollbar-color: var(--color-border) transparent;
}
/* Mobile-optimized mega menu content */
.ek-mega-menu-popup-body .ek-mega-menu-popup-content {
  display: block !important;
  max-height: none !important;
  overflow: visible !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border-radius: 0 !important;
  -webkit-animation: slideUp 0.3s ease-out !important;
          animation: slideUp 0.3s ease-out !important;
}
.ek-mega-menu-popup-body .ek-mega-grid {
  grid-template-columns: 1fr !important;
  gap: var(--spacing-6) !important;
  padding: 0 var(--spacing-4) !important;
  min-height: 0 !important;
}
.ek-mega-menu-popup-body .ek-mega-col {
  padding: var(--spacing-4) !important;
  border-radius: var(--border-radius-lg) !important;
  background: var(--color-bg-hover) !important;
  margin-bottom: var(--spacing-4) !important;
}
.ek-mega-menu-popup-body .ek-mega-col:last-child {
  margin-bottom: 0 !important;
}
.ek-mega-menu-popup-body .ek-mega-col h3 {
  font-size: var(--font-size-lg) !important;
  margin: 0 0 var(--spacing-3) 0 !important;
  padding: var(--spacing-3) !important;
  border-bottom: 2px solid var(--color-link) !important;
  background: -webkit-gradient(linear, left top, right top, from(var(--color-bg-surface)), color-stop(70%, transparent)) !important;
  background: linear-gradient(90deg, var(--color-bg-surface) 0%, transparent 70%) !important;
}
.ek-mega-menu-popup-body .ek-mega-col ul li {
  margin-bottom: var(--spacing-2) !important;
}
.ek-mega-menu-popup-body .ek-mega-col ul li a {
  padding: var(--spacing-2_5) var(--spacing-3) !important;
  font-size: var(--font-size-base) !important;
  min-height: 44px !important;
  display: -webkit-box !important;
  display: flex !important;
  -webkit-box-align: center !important;
          align-items: center !important;
  border-radius: var(--border-radius) !important;
  -webkit-transition: all var(--transition-fast) !important;
  transition: all var(--transition-fast) !important;
}
/* Simplified regions list styling */
#wilayah-regions-list {
  padding: var(--spacing-4) !important;
}
#wilayah-regions-list ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: -webkit-box !important;
  display: flex !important;
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
          flex-direction: column !important;
  gap: var(--spacing-2) !important;
}
#wilayah-regions-list li {
  margin: 0 !important;
}
#wilayah-regions-list li a {
  display: block !important;
  padding: var(--spacing-3) var(--spacing-4) !important;
  color: var(--color-text-main) !important;
  text-decoration: none !important;
  border-radius: var(--border-radius) !important;
  -webkit-transition: all var(--transition-fast) !important;
  transition: all var(--transition-fast) !important;
  border: 1px solid var(--color-border-light) !important;
  background: var(--color-bg-surface) !important;
}
#wilayah-regions-list li a:hover {
  background: var(--color-bg-hover) !important;
  border-color: var(--color-link) !important;
  color: var(--color-link) !important;
}
/* Error state styling for dynamic regions */
#wilayah-regions-list p {
  margin: 0 !important;
  padding: var(--spacing-4) !important;
  text-align: center !important;
  color: var(--color-text-muted) !important;
  font-style: italic !important;
  border: 1px solid var(--color-border-light) !important;
  border-radius: var(--border-radius) !important;
  background: var(--color-bg-surface) !important;
}
/**
 * Mega Menu Functionality
 * Large dropdown menus with grid layouts and interactive content
 */
@-webkit-keyframes megaMenuFadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(-8px) scale(0.98);
            transform: translateX(-50%) translateY(-8px) scale(0.98);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(-50%) translateY(0) scale(1);
            transform: translateX(-50%) translateY(0) scale(1);
  }
}
@keyframes megaMenuFadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(-8px) scale(0.98);
            transform: translateX(-50%) translateY(-8px) scale(0.98);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(-50%) translateY(0) scale(1);
            transform: translateX(-50%) translateY(0) scale(1);
  }
}
/* Mega Menu Dropdown */
.ek-main-navigation .ek-mega-menu-item {
  position: static;
  /* Allows full-width dropdown */
}
/* Mega menu content hidden by default on all screen sizes */
.ek-mega-menu-content {
  display: none; /* Hidden by default, shown when .ek-visible class is added */
  position: absolute;
  top: 100%;
  /* Position below the navigation bar */
  left: 50%;
  /* Center horizontally */
  /* Center the menu */
  width: 100%;
  /* Use header width instead of viewport width */
  max-width: var(--container-width, 1200px);
  /* Match configured container width from customizer */
  background: -webkit-gradient(linear, left top, left bottom, from(var(--color-bg-surface)), to(var(--color-bg-alt)));
  background: linear-gradient(to bottom, var(--color-bg-surface) 0%, var(--color-bg-alt) 100%);
  border-top: 2px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  color: var(--color-text-main);
  -webkit-box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04), 0 0 0 1px var(--color-border);
          box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04), 0 0 0 1px var(--color-border);
  padding: var(--spacing-10) var(--spacing-8) var(--spacing-10) var(--spacing-8);
  z-index: 9999;
  /* Higher z-index for proper layering */
  max-height: 80vh;
  /* Limit height to 80% of viewport */
  overflow-y: auto;
  /* Enable vertical scrolling */
  overflow-x: hidden;
  /* Prevent horizontal scrolling */
  scroll-behavior: smooth;
  /* Smooth scrolling */
  -webkit-animation: megaMenuFadeIn 0.35s cubic-bezier(0.4, 0, 0.2, 1);
          animation: megaMenuFadeIn 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0;
  -webkit-transform: translateX(-50%) translateY(-12px);
          transform: translateX(-50%) translateY(-12px);
  /* Show mega menu when .ek-visible class is added (via JavaScript) */
}
.ek-mega-menu-content.ek-visible {
  display: block;
  opacity: 1;
  -webkit-transform: translateX(-50%) translateY(0);
          transform: translateX(-50%) translateY(0);
}
.ek-mega-menu-content {
  /* Custom scrollbar styling */
}
.ek-mega-menu-content::-webkit-scrollbar {
  width: var(--spacing-1_5);
}
.ek-mega-menu-content::-webkit-scrollbar-track {
  background: var(--color-bg-hover);
  border-radius: 3px;
}
.ek-mega-menu-content::-webkit-scrollbar-thumb {
  background: var(--color-border);
  border-radius: 3px;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
.ek-mega-menu-content::-webkit-scrollbar-thumb:hover {
  background: var(--color-text-light);
}
.ek-mega-menu-content {
  /* Firefox scrollbar styling */
  scrollbar-width: thin;
  scrollbar-color: var(--color-border) var(--color-bg-hover);
}
/* Mobile-first: Single column grid by default */
.ek-mega-menu-item.ek-mega-region .ek-mega-grid {
  display: grid;
  grid-template-columns: 1fr; /* Mobile: single column */
  gap: var(--spacing-4);
  width: 100%;
  margin: 0 auto;
  padding: 0 var(--spacing-3);
  min-height: 0;
  /* Allow grid items to shrink within scrollable container */
  -webkit-box-align: start;
          align-items: start;
}
/* Tablet and larger: Two-column grid */
@media (min-width: 768px) {
  .ek-mega-menu-item.ek-mega-region .ek-mega-grid {
    grid-template-columns: minmax(320px, 1.1fr) minmax(400px, 1.9fr);
    gap: clamp(3rem, 6vw, 5rem);
    padding: 0;
    max-width: 1400px;
  }
}
/* Mobile-first: Single column grid by default */
.ek-mega-menu-item.ek-mega-partner .ek-mega-grid {
  display: grid;
  grid-template-columns: 1fr; /* Mobile: single column */
  gap: var(--spacing-4);
  width: 100%;
  margin: 0 auto;
  padding: 0 var(--spacing-3);
  min-height: 0;
  /* Allow grid items to shrink within scrollable container */
}
/* Tablet and larger: Improved 3-column layout for partner menu */
@media (min-width: 768px) {
  .ek-mega-menu-item.ek-mega-partner .ek-mega-grid {
    grid-template-columns: minmax(260px, 1fr) minmax(300px, 1.3fr) minmax(300px, 1.3fr);
    gap: clamp(2.5rem, 4vw, 3.5rem);
    padding: 0 clamp(2rem, 3vw, 3rem);
    max-width: 1400px;
    -webkit-box-align: start;
            align-items: start;
  }
}
.ek-mega-col {
  position: relative;
}
.ek-mega-col h3 {
  font-family: var(--font-heading);
  color: var(--color-text-main);
  font-size: clamp(1.15rem, 2.5vw, 1.35rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
  position: relative;
  margin: 0 0 var(--spacing-6) 0;
  padding: 0 0 var(--spacing-3) 0;
  border-bottom: 2px solid var(--color-border);
}
.ek-mega-col h3::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 60px;
  height: 2px;
  background: var(--color-link);
  border-radius: 1px;
}
/* Base list item styles */
.ek-mega-col ul li {
  margin-bottom: var(--spacing-1);
}
.ek-mega-col ul li a {
  padding: var(--spacing-1_25) 0;
  font-size: var(--font-size-sm);
  cursor: pointer;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.ek-mega-col ul li a:hover {
  color: var(--color-link);
  padding-left: var(--spacing-1_25);
  background-color: var(--color-bg-hover);
}
/* Partner mega menu column - simple, no card styling */
.ek-mega-menu-item.ek-mega-partner .ek-mega-col {
  position: relative;
}
/* Partner logos section - simple grid */
.ek-partner-logos {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-3);
  margin-top: var(--spacing-4);
}
.ek-partner-logo-link {
  display: block;
  padding: var(--spacing-2) 0;
  text-decoration: none;
  color: var(--color-text-main);
  font-size: var(--font-size-sm);
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.ek-partner-logo-link:hover {
  color: var(--color-link);
}
.ek-partner-logo-link:focus-visible {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
}
/* Network news items - simple style */
.network-news-item {
  margin-bottom: var(--spacing-2);
}
.network-news-item:last-child {
  margin-bottom: 0;
}
.network-news-item a {
  display: block;
  color: var(--color-text-main);
  text-decoration: none;
  font-size: var(--font-size-sm);
  line-height: 1.6;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.network-news-item a:hover {
  color: var(--color-link);
}
.network-news-item {
  /* Add date or meta info if available */
}
.network-news-item .network-news-meta {
  display: block;
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
  margin-top: var(--spacing-1);
}
/* Partner menu links - simple style */
.ek-mega-menu-item.ek-mega-partner .ek-mega-col ul li {
  margin-bottom: var(--spacing-1);
}
.ek-mega-menu-item.ek-mega-partner .ek-mega-col ul li a {
  display: block;
  padding: var(--spacing-1_25) 0;
  color: var(--color-text-main);
  text-decoration: none;
  font-size: var(--font-size-sm);
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.ek-mega-menu-item.ek-mega-partner .ek-mega-col ul li a:hover {
  color: var(--color-link);
}
.ek-mega-menu-item.ek-mega-partner .ek-mega-col ul li a:focus-visible {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
}
/* Menu item wrapper for icon + text layout */
.ek-menu-item-wrapper {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-3);
  min-height: 56px;
  padding: var(--spacing-3_5) var(--spacing-4);
  margin-bottom: var(--spacing-2_5);
  border: 1px solid transparent;
  -webkit-transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s ease, -webkit-transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s ease, -webkit-transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s ease;
  transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s ease, -webkit-transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.ek-menu-item-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(var(--color-bg-hover)), to(transparent));
  background: linear-gradient(90deg, transparent, var(--color-bg-hover), transparent);
  -webkit-transition: left 0.4s ease;
  transition: left 0.4s ease;
}
.ek-menu-item-wrapper:hover {
  background: var(--color-bg-hover);
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
  border-color: var(--color-border);
}
.ek-menu-item-wrapper:hover::before {
  left: 100%;
}
.ek-menu-item-wrapper:focus-within {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
  border-radius: var(--border-radius-md);
}
/* Menu icon (external link) */
.ek-menu-icon {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 38px;
  height: 38px;
  color: var(--color-text-muted);
  text-decoration: none;
  border-radius: var(--border-radius-md);
  -webkit-transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  flex-shrink: 0;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  background: var(--color-bg-hover);
  border: 1px solid var(--color-border);
}
.ek-menu-icon::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(var(--color-bg-alt)), to(transparent));
  background: linear-gradient(90deg, transparent, var(--color-bg-alt), transparent);
  -webkit-transition: left 0.5s ease;
  transition: left 0.5s ease;
}
.ek-menu-icon:hover::before {
  left: 100%;
}
.ek-menu-icon:hover {
  color: var(--color-link);
  background: var(--color-bg-alt);
  -webkit-transform: translateX(2px) scale(1.05);
          transform: translateX(2px) scale(1.05);
  border-color: var(--color-link);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-menu-icon .ek-fas {
  font-size: var(--font-size-sm);
  font-weight: 600;
}
/* Menu text (clickable for content loading) */
.ek-menu-text {
  cursor: pointer;
  color: var(--color-text-main);
  text-decoration: none;
  -webkit-transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1), font-weight 0.2s ease;
  transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1), font-weight 0.2s ease;
  border-radius: var(--border-radius-sm);
  -webkit-box-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  min-height: 24px;
  line-height: 1.5;
  font-size: clamp(0.95rem, 2vw, 1.05rem);
  font-weight: 500;
  letter-spacing: -0.01em;
  position: relative;
  padding: 0;
  margin: 0;
}
.ek-menu-text:focus {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
  background-color: var(--color-bg-hover);
}
.ek-menu-text::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--color-link);
  border-radius: 1px;
  -webkit-transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.ek-menu-text:hover {
  color: var(--color-link);
  font-weight: 600;
}
.ek-menu-text:hover::after {
  width: 100%;
}
.ek-menu-text.ek-active {
  color: var(--color-link);
  font-weight: 700;
}
.ek-menu-text.ek-active::after {
  width: 100%;
  height: 2px;
}
.ek-mega-menu-item.ek-is-open .ek-mega-menu-content {
  visibility: visible;
}
/* Enhanced Skeleton Loading for Mega Menu */
.ek-mega-menu-loading {
  padding: var(--spacing-4);
  min-height: 250px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}
.skeleton-item {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: var(--spacing-3);
  margin-bottom: var(--spacing-4);
  padding: var(--spacing-3);
  border-radius: var(--border-radius-lg);
  background: var(--color-bg-hover);
  -webkit-animation: skeleton-pulse 2s ease-in-out infinite;
          animation: skeleton-pulse 2s ease-in-out infinite;
}
.skeleton-item:last-child {
  margin-bottom: 0;
}
.skeleton-image {
  width: 100%;
  height: 140px;
  background: -webkit-gradient(linear, left top, right top, color-stop(25%, var(--color-bg-surface)), color-stop(50%, var(--color-border-light)), color-stop(75%, var(--color-bg-surface)));
  background: linear-gradient(90deg, var(--color-bg-surface) 25%, var(--color-border-light) 50%, var(--color-bg-surface) 75%);
  background-size: 200% 100%;
  -webkit-animation: skeleton-loading 1.5s infinite, skeleton-shimmer 2.5s ease-in-out infinite;
          animation: skeleton-loading 1.5s infinite, skeleton-shimmer 2.5s ease-in-out infinite;
  border-radius: var(--border-radius-lg);
  position: relative;
  overflow: hidden;
}
.skeleton-image::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(var(--color-bg-surface)), to(transparent));
  background: linear-gradient(90deg, transparent, var(--color-bg-surface), transparent);
  opacity: 0.4;
  -webkit-animation: skeleton-shimmer 2.5s ease-in-out infinite;
          animation: skeleton-shimmer 2.5s ease-in-out infinite;
}
.skeleton-title {
  height: 16px;
  background: -webkit-gradient(linear, left top, right top, color-stop(25%, var(--color-bg-surface)), color-stop(50%, var(--color-border-light)), color-stop(75%, var(--color-bg-surface)));
  background: linear-gradient(90deg, var(--color-bg-surface) 25%, var(--color-border-light) 50%, var(--color-bg-surface) 75%);
  background-size: 200% 100%;
  -webkit-animation: skeleton-loading 1.5s infinite;
          animation: skeleton-loading 1.5s infinite;
  border-radius: var(--border-radius);
  margin-bottom: var(--spacing-2);
}
.skeleton-title:last-child {
  margin-bottom: 0;
  width: 70%;
}
.skeleton-title:nth-child(2) {
  width: 85%;
  height: 18px;
}
.skeleton-title:nth-child(3) {
  width: 60%;
  height: 14px;
}
.skeleton-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-3);
  width: 100%;
}
.skeleton-grid .skeleton-item {
  margin-bottom: 0;
  padding: var(--spacing-3);
}
/* Error states for mega menu */
.ek-mega-menu-error {
  padding: var(--spacing-6);
  text-align: center;
  min-height: 200px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  background: var(--color-bg-hover);
  border-radius: var(--border-radius-lg);
  margin: var(--spacing-4);
}
.ek-mega-menu-error .ek-error-icon {
  font-size: var(--font-size-3xl);
  margin-bottom: var(--spacing-3);
  opacity: 0.6;
  -webkit-animation: error-pulse 2s ease-in-out infinite;
          animation: error-pulse 2s ease-in-out infinite;
}
.ek-mega-menu-error .ek-error-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-2);
}
.ek-mega-menu-error .ek-error-message {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: 1.5;
  margin-bottom: var(--spacing-4);
  max-width: 300px;
}
.ek-mega-menu-error .ek-error-retry {
  background: var(--color-link);
  color: var(--color-white);
  border: none;
  padding: var(--spacing-2) var(--spacing-4);
  border-radius: var(--border-radius);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  cursor: pointer;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-mega-menu-error .ek-error-retry:hover {
  background: var(--color-link-hover);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-mega-menu-error .ek-error-retry:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@-webkit-keyframes error-pulse {
  0%, 100% {
    opacity: 0.6;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    opacity: 0.4;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}
@keyframes error-pulse {
  0%, 100% {
    opacity: 0.6;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    opacity: 0.4;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}
/* Success states */
.ek-mega-menu-success {
  padding: var(--spacing-4);
  text-align: center;
  background: var(--color-success-light);
  border: 1px solid var(--color-success);
  border-radius: var(--border-radius-lg);
  margin: var(--spacing-4);
}
.ek-mega-menu-success .ek-success-icon {
  font-size: var(--font-size-2xl);
  color: var(--color-success);
  margin-bottom: var(--spacing-2);
  -webkit-animation: success-check 0.6s ease-out;
          animation: success-check 0.6s ease-out;
}
.ek-mega-menu-success .ek-success-message {
  color: var(--color-success);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
}
@-webkit-keyframes success-check {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) rotate(-45deg);
            transform: scale(0.5) rotate(-45deg);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1) rotate(-5deg);
            transform: scale(1.1) rotate(-5deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0deg);
            transform: scale(1) rotate(0deg);
  }
}
@keyframes success-check {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5) rotate(-45deg);
            transform: scale(0.5) rotate(-45deg);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1) rotate(-5deg);
            transform: scale(1.1) rotate(-5deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0deg);
            transform: scale(1) rotate(0deg);
  }
}
@-webkit-keyframes skeleton-loading {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
@keyframes skeleton-loading {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
@-webkit-keyframes skeleton-shimmer {
  0% {
    left: -100%;
  }
  100% {
    left: 100%;
  }
}
@keyframes skeleton-shimmer {
  0% {
    left: -100%;
  }
  100% {
    left: 100%;
  }
}
@-webkit-keyframes skeleton-pulse {
  0%, 100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    opacity: 0.8;
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
  }
}
@keyframes skeleton-pulse {
  0%, 100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    opacity: 0.8;
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
  }
}
/* Featured Stories Grid - Regular 2-column grid layout */
.ek-featured-stories-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-row-gap: var(--spacing-4);
  grid-column-gap: var(--spacing-4);
  position: relative;
  min-height: 300px;
  /* Minimum height to show content */
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: var(--spacing-2);
  /* Space for scrollbar */
  /* Custom scrollbar styling */
}
.ek-featured-stories-grid::-webkit-scrollbar {
  width: 6px;
}
.ek-featured-stories-grid::-webkit-scrollbar-track {
  background: var(--color-bg-hover);
  border-radius: 3px;
}
.ek-featured-stories-grid::-webkit-scrollbar-thumb {
  background: var(--color-border);
  border-radius: 3px;
  -webkit-transition: background 0.2s ease;
  transition: background 0.2s ease;
}
.ek-featured-stories-grid::-webkit-scrollbar-thumb:hover {
  background: var(--color-text-light);
}
.ek-featured-stories-grid.ek-is-loading {
  opacity: 0.5;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.ek-featured-stories-grid .empty-state {
  grid-column: 1/-1;
}
.ek-featured-stories-grid .empty-state .empty-content {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  padding: var(--spacing-8) var(--spacing-4);
  text-align: center;
  min-height: 250px;
  background: var(--color-bg-hover);
  border-radius: var(--border-radius-md);
  border: 1px dashed var(--color-border);
}
.ek-featured-stories-grid .empty-state .empty-icon {
  font-size: var(--font-size-3xl);
  margin-bottom: var(--spacing-3);
  opacity: 0.5;
  color: var(--color-text-muted);
}
.ek-featured-stories-grid .empty-state p {
  color: var(--color-text-muted);
  margin: 0;
  font-size: var(--font-size-sm);
  line-height: 1.5;
}
.ek-grid-item {
  -webkit-column-break-inside: avoid;
     -moz-column-break-inside: avoid;
          break-inside: avoid;
}
.ek-story-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.grid-item {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: -webkit-transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.grid-item:hover {
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}
.story-link {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: var(--border-radius-md);
  overflow: hidden;
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  -webkit-transition: -webkit-box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: -webkit-box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  transition: box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.story-link:hover {
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
}
.story-image {
  width: 100%;
  height: 140px;
  overflow: hidden;
  position: relative;
  background: linear-gradient(135deg, var(--color-bg-alt) 0%, var(--color-bg-hover) 100%);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.story-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.story-link:hover .story-image {
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}
.story-link:hover .story-image img {
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}
.story-title {
  font-size: 0.9rem;
  line-height: 1.4;
  font-weight: 600;
  color: var(--color-text-main);
  padding: var(--spacing-3) var(--spacing-3) var(--spacing-2_5);
  margin: 0;
  min-height: 48px;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  letter-spacing: -0.01em;
}
.story-link:hover .story-title {
  color: var(--color-link);
}
/**
 * Header Actions
 * Search functionality, theme toggle, and mobile menu toggle
 */
.ek-header-actions {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  flex-shrink: 0;
  position: relative;
  gap: var(--spacing-1);
  z-index: 5;
}
@media (max-width: 767px) {
  .ek-header-actions {
    gap: var(--spacing-2);
  }
}
.ek-header-action-btn {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-text-main);
  padding: var(--spacing-2);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  border-radius: var(--border-radius-lg);
  position: relative;
  min-width: 2.75rem; /* 44px - Touch target */
  min-height: 2.75rem; /* 44px - Touch target */
}
.ek-header-action-btn:hover {
  color: var(--color-link);
  background-color: var(--color-bg-hover);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-header-action-btn:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-box-shadow: var(--box-shadow-xs);
          box-shadow: var(--box-shadow-xs);
}
.ek-header-action-btn:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.ek-header-action-btn[aria-expanded=true] {
  color: var(--color-link);
  background-color: var(--color-bg-active);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-mobile-menu-toggle .ek-mobile-menu-icon {
  position: relative;
  width: 1.25rem;
  height: 1.125rem;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: justify;
          justify-content: space-between;
}
.ek-mobile-menu-toggle .ek-mobile-menu-icon .ek-mobile-menu-bar {
  width: 100%;
  height: 2px;
  background-color: currentcolor;
  border-radius: 1px;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  -webkit-transform-origin: center;
          transform-origin: center;
}
.ek-mobile-menu-toggle[aria-expanded=true] .ek-mobile-menu-bar:nth-child(1) {
  -webkit-transform: rotate(45deg) translate(0.3125rem, 0.3125rem);
          transform: rotate(45deg) translate(0.3125rem, 0.3125rem);
}
.ek-mobile-menu-toggle[aria-expanded=true] .ek-mobile-menu-bar:nth-child(2) {
  opacity: 0;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
}
.ek-mobile-menu-toggle[aria-expanded=true] .ek-mobile-menu-bar:nth-child(3) {
  -webkit-transform: rotate(-45deg) translate(0.3125rem, -0.3125rem);
          transform: rotate(-45deg) translate(0.3125rem, -0.3125rem);
}
.ek-theme-toggle .ek-theme-toggle-icons {
  position: relative;
  width: 1.25rem;
  height: 1.25rem;
  overflow: hidden;
}
.ek-theme-toggle .ek-theme-toggle-icons svg {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
}
.ek-theme-toggle .ek-theme-toggle-icons .ek-icon-sun {
  opacity: 1;
  -webkit-transform: rotate(90deg) scale(0.8);
          transform: rotate(90deg) scale(0.8);
}
.ek-theme-toggle[aria-pressed=true] .ek-theme-toggle-icons .ek-icon-moon {
  opacity: 0;
  -webkit-transform: rotate(-90deg) scale(0.8);
          transform: rotate(-90deg) scale(0.8);
}
.ek-theme-toggle[aria-pressed=true] .ek-theme-toggle-icons .ek-icon-sun {
  opacity: 1;
  -webkit-transform: rotate(0deg) scale(1);
          transform: rotate(0deg) scale(1);
}
.ek-search-toggle {
  position: relative;
}
.ek-search-toggle[aria-expanded=true] {
  background-color: var(--color-bg-active);
  color: var(--color-link);
}
.ek-header-lang-switcher {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  padding: var(--spacing-2);
  border-radius: var(--border-radius);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  /* WPML Language Switcher styling */
}
.ek-header-lang-switcher .wpml-ls-legacy-dropdown {
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  font-size: var(--font-size-sm);
}
.ek-header-lang-switcher .wpml-ls-legacy-dropdown a {
  color: var(--color-text-main);
  text-decoration: none;
  padding: var(--spacing-2) var(--spacing-3);
  border-radius: var(--border-radius);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-1_5);
}
.ek-header-lang-switcher .wpml-ls-legacy-dropdown a:hover {
  background: var(--color-bg-hover);
  color: var(--color-link);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.ek-header-lang-switcher .wpml-ls-legacy-dropdown a.wpml-ls-current-language {
  font-weight: var(--font-weight-semibold);
  background: var(--color-bg-active);
  color: var(--color-link);
}
.ek-header-lang-switcher {
  /* Alternative styling for other language switcher formats */
}
.ek-header-lang-switcher .language-selector,
.ek-header-lang-switcher .lang-switcher {
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-2);
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}
.ek-header-lang-switcher .language-selector a,
.ek-header-lang-switcher .lang-switcher a {
  color: var(--color-text-main);
  text-decoration: none;
  font-size: var(--font-size-sm);
  padding: var(--spacing-1_5) var(--spacing-2_5);
  border-radius: var(--border-radius);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  border: 1px solid var(--color-border-light);
}
.ek-header-lang-switcher .language-selector a:hover,
.ek-header-lang-switcher .lang-switcher a:hover {
  background: var(--color-bg-hover);
  border-color: var(--color-link);
  color: var(--color-link);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.ek-header-lang-switcher .language-selector a.active, .ek-header-lang-switcher .language-selector a.current,
.ek-header-lang-switcher .lang-switcher a.active,
.ek-header-lang-switcher .lang-switcher a.current {
  font-weight: var(--font-weight-semibold);
  background: var(--color-bg-active);
  border-color: var(--color-link);
  color: var(--color-link);
}
.ek-header-lang-switcher {
  /* Hide language switcher on mobile - shown in mobile menu instead */
}
@media (max-width: 767px) {
  .ek-header-lang-switcher {
    display: none;
  }
}
/* Enhanced Header Search Container - Responsive Overlay */
.ek-header-search-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: var(--color-bg-surface);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  z-index: 1000;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  backdrop-filter: var(--backdrop-blur-strong);
  -webkit-backdrop-filter: var(--backdrop-blur-strong);
}
.ek-header-search-container[hidden] {
  display: none !important;
}
.ek-header-search-container:not([hidden]) {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@media (min-width: 1024px) {
  .ek-header-search-container {
    top: var(--header-height-desktop);
    height: calc(100vh - var(--header-height-desktop));
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    backdrop-filter: var(--backdrop-blur);
    -webkit-backdrop-filter: var(--backdrop-blur);
    padding: var(--spacing-6);
  }
}
@media (min-width: 768px) {
  .ek-header-search-container {
    top: var(--header-height-tablet);
    height: calc(100vh - var(--header-height-tablet));
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    backdrop-filter: var(--backdrop-blur);
    -webkit-backdrop-filter: var(--backdrop-blur);
    padding: var(--spacing-5);
  }
}
@media (max-width: 767px) {
  .ek-header-search-container {
    top: var(--header-height-mobile);
    height: calc(100vh - var(--header-height-mobile) - var(--bottom-bar-height));
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    padding: var(--spacing-4);
  }
}
/* Simple Search Modal Styling */
.ek-simple-search-modal {
  max-width: 500px;
  width: 100%;
  margin: 0 auto;
  padding: var(--spacing-6);
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-xl);
  -webkit-box-shadow: var(--box-shadow-xl);
          box-shadow: var(--box-shadow-xl);
  border: 1px solid var(--color-border);
}
.ek-search-modal-header {
  text-align: center;
  margin-bottom: var(--spacing-5);
  padding-bottom: var(--spacing-4);
  border-bottom: 1px solid var(--color-border-light);
}
.ek-search-modal-title {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0;
}
.ek-search-modal-form {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: var(--spacing-4);
}
.ek-search-modal-label {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-2);
  display: block;
}
.ek-search-modal-field {
  padding: var(--spacing-4) var(--spacing-5);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  font-size: var(--font-size-lg);
  background: var(--color-bg-body);
  color: var(--color-text-main);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  width: 100%;
}
.ek-search-modal-field::-webkit-input-placeholder {
  color: var(--color-text-light);
  opacity: 0.7;
}
.ek-search-modal-field::-moz-placeholder {
  color: var(--color-text-light);
  opacity: 0.7;
}
.ek-search-modal-field::placeholder {
  color: var(--color-text-light);
  opacity: 0.7;
}
.ek-search-modal-field:focus {
  outline: none;
  border-color: var(--color-focus);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-focus-rgb), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-focus-rgb), 0.1);
  background: var(--color-bg-surface);
}
.ek-search-modal-field[aria-invalid=true] {
  border-color: var(--color-error);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-error-rgb), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-error-rgb), 0.1);
}
.ek-search-modal-submit {
  background: var(--color-link);
  color: var(--color-sand);
  border: none;
  padding: var(--spacing-4) var(--spacing-5);
  border-radius: var(--border-radius-lg);
  cursor: pointer;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 100%;
  margin-top: var(--spacing-2);
}
.ek-search-modal-submit:hover {
  background: var(--color-link-hover);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
}
.ek-search-modal-submit:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-box-shadow: var(--box-shadow-xs);
          box-shadow: var(--box-shadow-xs);
}
.ek-search-modal-submit:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.ek-search-modal-submit[disabled] {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
  background: var(--color-text-light);
  -webkit-transform: none;
          transform: none;
}
/* Search Loading State */
.ek-header-search-container .ek-search-form.ek-loading .ek-search-field {
  background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(var(--color-link-rgb), 0.1)), to(transparent));
  background-image: linear-gradient(90deg, transparent, rgba(var(--color-link-rgb), 0.1), transparent);
  background-size: 200% 100%;
  -webkit-animation: ek-shimmer 1.5s infinite;
          animation: ek-shimmer 1.5s infinite;
}
@-webkit-keyframes ek-shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
@keyframes ek-shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
@media (max-width: 767px) {
  .ek-simple-search-modal {
    max-width: 90vw;
    padding: var(--spacing-4);
    margin: var(--spacing-2) auto;
  }
  .ek-search-modal-title {
    font-size: var(--font-size-lg);
  }
  .ek-search-modal-field {
    padding: var(--spacing-3) var(--spacing-4);
    font-size: var(--font-size-base);
  }
  .ek-search-modal-field::-webkit-input-placeholder {
    font-size: var(--font-size-sm);
  }
  .ek-search-modal-field::-moz-placeholder {
    font-size: var(--font-size-sm);
  }
  .ek-search-modal-field::placeholder {
    font-size: var(--font-size-sm);
  }
  .ek-search-modal-submit {
    padding: var(--spacing-3) var(--spacing-4);
    font-size: var(--font-size-base);
  }
}
@media (min-width: 768px) {
  .ek-simple-search-modal {
    max-width: 450px;
    padding: var(--spacing-5);
    margin: var(--spacing-4) auto;
  }
  .ek-search-modal-title {
    font-size: var(--font-size-xl);
  }
  .ek-search-modal-field {
    padding: var(--spacing-4) var(--spacing-5);
    font-size: var(--font-size-lg);
  }
  .ek-search-modal-submit {
    padding: var(--spacing-4) var(--spacing-5);
    font-size: var(--font-size-lg);
  }
}
@media (min-width: 1024px) {
  .ek-simple-search-modal {
    max-width: 500px;
    padding: var(--spacing-6);
    margin: var(--spacing-6) auto;
  }
}
/**
 * Navigation Responsive Styles
 * All responsive breakpoints and media queries for navigation components
 */
/* Mobile styles are base styles above - Hide desktop navigation on mobile */
.ek-main-navigation {
  display: none;
}
/* Tablet and larger */
@media (min-width: 768px) {
  .ek-site-header .container {
    padding: 0 var(--spacing-4);
    min-height: var(--header-height-tablet);
  }
  .ek-main-navigation a {
    font-size: var(--font-size-base);
    padding: var(--spacing-2) 0;
  }
  .ek-site-branding .custom-logo,
  .ek-site-branding .ek-custom-logo,
  .ek-site-branding .ek-site-logo {
    max-height: var(--logo-height-tablet);
    background: transparent !important; /* Force transparent background - override any dynamic colors */
  }
  .ek-site-branding .ek-site-title a {
    font-size: var(--font-size-lg);
  }
  /* Show desktop navigation on tablet+ */
  .ek-main-navigation {
    display: -webkit-box;
    display: flex;
  }
  .ek-header-actions {
    gap: var(--spacing-2);
  }
  /* Hide mobile bottom bar on tablet */
  .ek-mobile-bottom-bar {
    display: none;
  }
}
/* Desktop and larger */
@media (min-width: 1024px) {
  .ek-site-header .container {
    min-height: var(--header-height-desktop);
    padding: 0 var(--spacing-5);
  }
  .ek-main-navigation a {
    font-size: var(--font-size-lg);
    padding: var(--spacing-3) 0;
  }
  .ek-site-branding .custom-logo,
  .ek-site-branding .ek-custom-logo,
  .ek-site-branding .ek-site-logo {
    max-height: var(--logo-height-desktop);
    background: transparent !important; /* Force transparent background - override any dynamic colors */
  }
  .ek-site-branding .ek-site-title a {
    font-size: var(--font-size-xl);
  }
  /* Hide mobile elements on desktop */
  .ek-menu-toggle,
  .ek-mobile-menu-toggle {
    display: none;
  }
  .ek-mobile-menu-overlay {
    display: none !important;
  }
  .ek-mobile-menu-panel {
    display: none !important;
  }
  /* Hide mobile bottom bar on desktop */
  .ek-mobile-bottom-bar {
    display: none;
  }
}
/* Mobile-first: Stack mega menu grid columns by default */
.ek-mega-menu-item.ek-mega-region .ek-mega-grid {
  grid-template-columns: 1fr;
  gap: var(--spacing-4);
  padding: 0 var(--spacing-3);
}
/* Tablet and larger - use two-column grid */
@media (min-width: 768px) {
  /* Use two-column grid on tablets */
  .ek-mega-menu-item.ek-mega-region .ek-mega-grid {
    grid-template-columns: minmax(320px, 1.1fr) minmax(400px, 1.9fr);
    gap: clamp(3rem, 6vw, 5rem);
    padding: 0;
  }
}
/* Mobile-specific styles (max-width: 768px) - only for mobile popup */
@media (max-width: 767px) {
  /* Mobile mega menu popup styles */
  .ek-mega-menu-popup {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100vw;
    max-height: 80vh;
    background: var(--color-bg-surface);
    border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
    -webkit-box-shadow: var(--box-shadow-lg);
            box-shadow: var(--box-shadow-lg);
    z-index: 10000;
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .ek-mega-menu-popup.ek-active {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .ek-mega-menu-popup .ek-mega-menu-popup-header {
    padding: var(--spacing-4) var(--spacing-4) var(--spacing-2);
    border-bottom: 1px solid var(--color-border);
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    background: var(--color-bg-surface);
    border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  }
  .ek-mega-menu-popup .ek-mega-menu-popup-header .ek-mega-menu-popup-title {
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-bold);
    margin: 0;
    color: var(--color-text-main);
  }
  .ek-mega-menu-popup .ek-mega-menu-popup-header .ek-mega-menu-popup-close {
    position: absolute;
    top: var(--spacing-3);
    right: var(--spacing-3);
    background: none;
    border: none;
    width: 32px;
    height: 32px;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-pack: center;
            justify-content: center;
    color: var(--color-text-muted);
    cursor: pointer;
    border-radius: var(--border-radius);
    -webkit-transition: all var(--transition-fast);
    transition: all var(--transition-fast);
  }
  .ek-mega-menu-popup .ek-mega-menu-popup-header .ek-mega-menu-popup-close:hover {
    background: var(--color-bg-hover);
    color: var(--color-link);
  }
  .ek-mega-menu-popup .ek-mega-menu-popup-body {
    padding: var(--spacing-4);
    min-height: 200px;
  }
  .ek-mega-menu-popup {
    /* Mobile mega menu grid adjustments */
  }
  .ek-mega-menu-popup .ek-mega-grid {
    grid-template-columns: 1fr !important;
    gap: var(--spacing-4) !important;
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
  }
  .ek-mega-menu-popup .ek-mega-col {
    padding: var(--spacing-3);
    border-radius: var(--border-radius-lg);
    background: var(--color-bg-hover);
  }
  .ek-mega-menu-popup .ek-mega-col h3 {
    font-size: var(--font-size-base);
    padding: var(--spacing-2) 0;
    margin-bottom: var(--spacing-3);
    border-bottom: 2px solid var(--color-link);
  }
  .ek-mega-menu-popup .ek-mega-col ul li {
    margin-bottom: var(--spacing-2);
  }
  .ek-mega-menu-popup .ek-mega-col ul li a {
    padding: var(--spacing-2);
    min-height: 44px;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    border-radius: var(--border-radius);
    -webkit-transition: all var(--transition-fast);
    transition: all var(--transition-fast);
  }
  .ek-mega-menu-popup .ek-mega-col ul li a:hover {
    background: var(--color-bg-surface);
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
  }
  .ek-mega-menu-popup {
    /* Featured stories grid on mobile popup */
  }
  .ek-mega-menu-popup .ek-featured-stories-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-3);
    padding-right: 0;
  }
  /* Mobile menu panel adjustments for smaller screens */
  .ek-mobile-menu-panel {
    width: 280px; /* Slightly narrower on smaller screens */
    right: -280px;
  }
  .ek-mobile-menu-panel.ek-active {
    right: 0;
  }
  .ek-mobile-menu-header,
  .ek-mobile-menu-footer {
    padding-left: var(--spacing-4);
    padding-right: var(--spacing-4);
  }
  .ek-mobile-menu-lang-switcher {
    padding: var(--spacing-1_5) 0;
    margin-bottom: var(--spacing-2);
  }
  .ek-mobile-menu-lang-switcher .language-selector,
  .ek-mobile-menu-lang-switcher .lang-switcher {
    gap: var(--spacing-1_5);
  }
  .ek-mobile-menu-lang-switcher .language-selector a,
  .ek-mobile-menu-lang-switcher .lang-switcher a {
    font-size: var(--font-size-xs);
    padding: var(--spacing-1) var(--spacing-2);
  }
  .ek-mobile-menu-panel .ek-mobile-menu li a {
    padding-left: var(--spacing-4);
    padding-right: var(--spacing-4);
    font-size: var(--font-size-sm); /* Slightly smaller on mobile */
  }
  /* Close mega menu when clicking outside on mobile */
  .ek-site-header {
    position: fixed;
    z-index: 1000;
  }
  /* Add overlay for mobile mega menu */
  .ek-mega-menu-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 50;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
  .ek-mega-menu-overlay.ek-active {
    display: block;
    opacity: 1;
  }
}
/* Very small screens (480px and below) - Mobile First */
@media (max-width: 480px) {
  .ek-mega-menu-content {
    max-height: 50vh; /* Further reduce on very small screens */
    padding: 15px 0;
  }
  .ek-mega-menu-item.ek-mega-region .ek-mega-grid {
    padding: 0 var(--spacing-1_5);
  }
  .ek-mobile-menu-panel {
    width: 260px;
    right: -260px;
  }
  .ek-mobile-menu-panel.ek-active {
    right: 0;
  }
  .ek-mobile-menu-header,
  .ek-mobile-menu-footer {
    padding: var(--spacing-3);
  }
  .ek-mobile-menu-panel .ek-mobile-menu li a {
    padding: var(--spacing-3);
    min-height: 44px;
    font-size: var(--font-size-sm);
  }
  /* Add padding to body so content isn't hidden behind fixed header and bottom bar */
  body {
    padding-bottom: calc(var(--bottom-bar-height) + 20px);
  }
}
/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  .ek-mobile-menu-panel {
    -webkit-transition: right 0.1s ease;
    transition: right 0.1s ease;
  }
  .ek-mobile-menu-panel .ek-mobile-menu li a {
    -webkit-transition: none;
    transition: none;
  }
  .ek-mobile-menu-panel .ek-mobile-menu li a:hover {
    -webkit-transform: none;
            transform: none;
  }
  .ek-mobile-menu-panel .ek-mobile-menu li a:active {
    -webkit-transform: none;
            transform: none;
  }
  .ek-mobile-menu-panel .ek-mobile-menu .sub-menu {
    -webkit-animation: none;
            animation: none;
  }
  .ek-mobile-menu-panel .ek-mobile-menu .sub-menu.ek-collapsed {
    -webkit-animation: none;
            animation: none;
  }
  .ek-mobile-menu-close {
    -webkit-transition: none;
    transition: none;
  }
  .ek-mobile-menu-close:hover {
    -webkit-transform: none;
            transform: none;
  }
  .ek-mobile-menu-close:active {
    -webkit-transform: none;
            transform: none;
  }
  .ek-mobile-menu-close::before {
    display: none;
  }
}
/* High contrast mode support */
@media (prefers-contrast: high) {
  .ek-mobile-menu-panel {
    border-left: 2px solid;
  }
  .ek-mobile-menu-header,
  .ek-mobile-menu-footer {
    border-color: currentcolor;
  }
  .ek-mobile-menu-panel .ek-mobile-menu li {
    border-bottom-color: currentcolor;
  }
}
.ek-mobile-bottom-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: var(--bottom-bar-height);
  background: var(--color-bg-surface);
  border-top: 2px solid var(--color-border);
  z-index: 25;
  padding-bottom: max(env(safe-area-inset-bottom), 0px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  pointer-events: auto;
  -webkit-box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
          box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
  backdrop-filter: var(--backdrop-blur-strong);
  -webkit-backdrop-filter: var(--backdrop-blur-strong);
  -webkit-safe-area-inset-bottom: env(safe-area-inset-bottom);
}
.ek-mobile-bottom-menu {
  display: -webkit-box;
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
  height: 100%;
}
.ek-mobile-bottom-menu li {
  -webkit-box-flex: 1;
          flex: 1;
  text-align: center;
}
.ek-mobile-nav-item {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  text-align: center;
  text-decoration: none;
  color: var(--color-text-light);
  font-size: var(--font-size-xs);
  padding: var(--spacing-2) var(--spacing-1);
  min-height: 56px;
  gap: var(--spacing-1);
  border-radius: 8px;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  position: relative;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.ek-mobile-nav-item:focus-visible {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
  background: var(--color-bg-hover);
}
.ek-mobile-nav-item:hover, .ek-mobile-nav-item.ek-active {
  color: var(--color-primary-red);
  background: var(--color-bg-hover);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}
.ek-mobile-nav-item:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background: var(--color-border-light);
}
.ek-mobile-nav-item svg {
  width: 24px;
  height: 24px;
  fill: currentcolor;
}
@-webkit-keyframes slideDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
    max-height: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    max-height: 500px; /* Reasonable max height */
  }
}
@keyframes slideDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
    max-height: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    max-height: 500px; /* Reasonable max height */
  }
}
@-webkit-keyframes slideUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    max-height: 500px;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
    max-height: 0;
  }
}
@keyframes slideUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    max-height: 500px;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
    max-height: 0;
  }
}
/* Sidebar Layout */
/* Content area wrapper for sidebar layout */
.ek-content-area-wrapper {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-10);
  margin-top: 0;
  margin-bottom: var(--spacing-15);
}
/* Main content area that takes available space */
.ek-site-main {
  -webkit-box-flex: 1;
          flex: 1; /* Takes available space */
  min-width: 0; /* Prevents overflow issues */
}
/* When sidebar is empty/hidden, make main content full width */
/* Fallback for browsers without :has() support */
.ek-content-area-wrapper .ek-site-main:only-child {
  -webkit-box-flex: 1;
          flex: 1 1 100%; /* Full width when no sidebar */
  max-width: 100%;
}
/* Modern browsers with :has() support */
@supports selector(:has(*)) {
  .ek-content-area-wrapper:not(:has(.ek-widget-area)) .ek-site-main {
    -webkit-box-flex: 1;
            flex: 1 1 100%; /* Full width when no sidebar */
    max-width: 100%;
  }
}
/* Mobile sidebar handling - stack below content */
@media (max-width: 767px) {
  .ek-content-area-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    gap: var(--spacing-8);
  }
  .ek-widget-area {
    -webkit-box-ordinal-group: 3;
            order: 2; /* Show sidebar after main content on mobile */
    margin-top: var(--spacing-6);
    margin-bottom: 0;
    padding: var(--spacing-5);
    border-radius: var(--border-radius-md);
  }
}
/* Sidebar container styling */
.ek-widget-area {
  width: 100%;
  flex-shrink: 0;
  margin-top: var(--spacing-8);
  padding: var(--spacing-6);
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
/* Desktop responsive sidebar */
@media (min-width: 768px) {
  .ek-content-area-wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    gap: var(--spacing-6);
  }
  .ek-site-main {
    -webkit-box-flex: 1;
            flex: 1;
    min-width: 0;
  }
  .ek-widget-area {
    width: 280px; /* Smaller sidebar on tablet */
    padding-left: var(--spacing-5);
    margin-top: 0;
    flex-shrink: 0;
  }
}
@media (min-width: 1024px) {
  .ek-widget-area {
    width: var(--sidebar-width);
    padding-left: var(--spacing-7_5);
  }
}
/* Footer Styles */
.ek-site-footer {
  background-color: var(--color-bg-surface); /* Updated to surface */
  border-top: var(--spacing-1) solid var(--color-forest-green);
  padding: var(--spacing-15) 0 var(--spacing-20); /* Extra bottom padding for mobile sticky bar */
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
.ek-footer-widgets {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-10);
  margin-bottom: var(--spacing-10);
}
@media (min-width: 768px) {
  .ek-footer-widgets {
    grid-template-columns: 1.5fr 1fr 1fr 1.5fr; /* Asymmetrical grid */
  }
}
.ek-footer-widget-area h2.ek-widget-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-lg);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-5);
  border-bottom: var(--spacing-0_5) solid var(--color-border);
  padding-bottom: var(--spacing-2_5);
  display: inline-block;
}
.ek-footer-widget-area ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ek-footer-widget-area ul li {
  margin-bottom: var(--spacing-2_5);
}
/* Footer Nested Menu Indentation */
.ek-footer-widget-area ul ul,
.ek-footer-widget-area .sub-menu {
  padding-left: var(--spacing-3_75);
  margin-top: var(--spacing-1_25);
  margin-bottom: var(--spacing-1_25);
  border-left: var(--spacing-0_5) solid var(--color-border);
}
.ek-footer-widget-area a {
  color: var(--color-text-light);
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-footer-widget-area a:hover {
  color: var(--color-link);
}
/* Specific Areas */
.ek-footer-1 .ek-widget_text img {
  max-width: var(--footer-logo-width);
  margin-bottom: var(--spacing-3_75);
}
.ek-footer-4 input[type=email] {
  width: 100%;
  padding: var(--spacing-2_5);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  background: var(--color-white);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-2_5);
}
.ek-footer-4 input[type=submit] {
  background: var(--color-link);
  color: var(--color-sand);
  border: none;
  padding: var(--spacing-2_5) var(--spacing-5);
  border-radius: var(--border-radius);
  cursor: pointer;
  font-weight: var(--font-weight-bold);
}
.ek-footer-4 input[type=submit]:hover {
  background: var(--color-link-hover);
}
.ek-site-info-row {
  border-top: 1px solid var(--color-border);
  padding-top: var(--spacing-5);
  text-align: center;
  font-size: var(--font-size-xs);
}
/* Site Branding & Logo */
.ek-site-branding {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
}
.ek-site-branding .ek-custom-logo-link,
.ek-site-branding a {
  display: block;
  line-height: 0; /* Removes extra space under image */
  background: transparent !important; /* Force transparent background - override any dynamic colors */
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.ek-site-branding .ek-custom-logo-link:hover,
.ek-site-branding a:hover {
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}
.ek-site-branding .ek-custom-logo-link:active,
.ek-site-branding a:active {
  -webkit-transform: scale(0.98);
          transform: scale(0.98);
}
.ek-site-branding img,
.ek-custom-logo,
.ek-site-logo {
  max-height: 3rem; /* 48px - Optimized for modern headers */
  width: auto; /* Maintain aspect ratio */
  -o-object-fit: contain;
     object-fit: contain; /* Ensure logo fits inside without stretching */
  background: transparent !important; /* Force transparent background - override any dynamic colors */
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
@media (min-width: 768px) {
  .ek-site-branding img,
  .ek-custom-logo,
  .ek-site-logo {
    max-height: 3.5rem; /* 56px */
  }
}
@media (min-width: 1024px) {
  .ek-site-branding img,
  .ek-custom-logo,
  .ek-site-logo {
    max-height: 4rem; /* 64px */
  }
}
/* Dark Mode: Enhanced styling for logo */
[data-theme=dark] .ek-site-branding img,
[data-theme=dark] .ek-custom-logo,
[data-theme=dark] .ek-site-logo {
  border-radius: var(--border-radius-lg);
  -webkit-filter: brightness(1.1) contrast(1.05);
          filter: brightness(1.1) contrast(1.05);
  background: transparent !important; /* Force transparent background in dark mode */
}
/* Theme Toggle Icons */
.ek-icon-moon,
.ek-icon-sun {
  -webkit-transition: opacity var(--transition-base), -webkit-transform var(--transition-base);
  transition: opacity var(--transition-base), -webkit-transform var(--transition-base);
  transition: opacity var(--transition-base), transform var(--transition-base);
  transition: opacity var(--transition-base), transform var(--transition-base), -webkit-transform var(--transition-base);
}
.ek-icon-sun {
  display: none; /* Hidden by default, shown in dark mode */
  opacity: 0;
  -webkit-transform: scale(var(--opacity-80));
          transform: scale(var(--opacity-80));
}
[data-theme=dark] .ek-icon-moon {
  display: none;
  opacity: 0;
  -webkit-transform: scale(var(--opacity-80));
          transform: scale(var(--opacity-80));
}
[data-theme=dark] .ek-icon-sun {
  display: block;
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.ek-content-area .entry-header,
.ek-single-post .entry-header,
.ek-page-content .entry-header {
  margin-bottom: var(--spacing-6);
  text-align: left;
}
@media (min-width: 768px) {
  .ek-content-area .entry-header,
  .ek-single-post .entry-header,
  .ek-page-content .entry-header {
    margin-bottom: var(--spacing-8);
  }
}
.ek-content-area .entry-header .entry-title,
.ek-single-post .entry-header .entry-title,
.ek-page-content .entry-header .entry-title {
  font-size: var(--font-size-2xl);
  margin-bottom: var(--spacing-2);
  color: var(--color-text-main);
  line-height: var(--line-height-tight);
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .ek-content-area .entry-header .entry-title,
  .ek-single-post .entry-header .entry-title,
  .ek-page-content .entry-header .entry-title {
    font-size: var(--font-size-3xl);
  }
}
.ek-content-area .entry-header .entry-title a,
.ek-single-post .entry-header .entry-title a,
.ek-page-content .entry-header .entry-title a {
  color: inherit;
  text-decoration: none;
}
.ek-content-area .entry-header .entry-title a:hover,
.ek-single-post .entry-header .entry-title a:hover,
.ek-page-content .entry-header .entry-title a:hover {
  color: var(--color-link);
}
.ek-content-area .entry-header.page-header,
.ek-single-post .entry-header.page-header,
.ek-page-content .entry-header.page-header {
  text-align: center;
  margin-bottom: var(--spacing-10);
  max-width: 50rem; /* 800px */
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .ek-content-area .entry-header.page-header,
  .ek-single-post .entry-header.page-header,
  .ek-page-content .entry-header.page-header {
    margin-bottom: var(--spacing-12);
  }
}
.ek-content-area .entry-header.page-header .page-title,
.ek-single-post .entry-header.page-header .page-title,
.ek-page-content .entry-header.page-header .page-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-3xl);
  color: var(--color-forest-green);
  margin-bottom: var(--spacing-4);
}
@media (min-width: 768px) {
  .ek-content-area .entry-header.page-header .page-title,
  .ek-single-post .entry-header.page-header .page-title,
  .ek-page-content .entry-header.page-header .page-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-content-area .entry-header.ek-archive-header,
.ek-single-post .entry-header.ek-archive-header,
.ek-page-content .entry-header.ek-archive-header {
  text-align: center;
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
  padding-bottom: var(--spacing-6);
  border-bottom: 1px solid var(--color-border);
}
@media (min-width: 768px) {
  .ek-content-area .entry-header.ek-archive-header,
  .ek-single-post .entry-header.ek-archive-header,
  .ek-page-content .entry-header.ek-archive-header {
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
.ek-content-area .entry-header.ek-archive-header .ek-archive-title,
.ek-single-post .entry-header.ek-archive-header .ek-archive-title,
.ek-page-content .entry-header.ek-archive-header .ek-archive-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-4) 0;
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .ek-content-area .entry-header.ek-archive-header .ek-archive-title,
  .ek-single-post .entry-header.ek-archive-header .ek-archive-title,
  .ek-page-content .entry-header.ek-archive-header .ek-archive-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-content-area .entry-header.ek-archive-header .ek-archive-description,
.ek-single-post .entry-header.ek-archive-header .ek-archive-description,
.ek-page-content .entry-header.ek-archive-header .ek-archive-description {
  font-size: var(--font-size-lg);
  color: var(--color-text-light);
  line-height: var(--line-height-loose);
}
.ek-content-area .entry-meta,
.ek-single-post .entry-meta,
.ek-page-content .entry-meta {
  color: var(--color-text-light);
  font-size: var(--font-size-sm);
  padding-bottom: var(--spacing-5);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  gap: var(--spacing-4);
  flex-wrap: wrap;
  -webkit-box-align: center;
          align-items: center;
}
.ek-content-area .entry-meta .ek-tags-links, .ek-content-area .entry-meta .ek-cat-links, .ek-content-area .entry-meta .ek-byline, .ek-content-area .entry-meta .ek-posted-on,
.ek-single-post .entry-meta .ek-tags-links,
.ek-single-post .entry-meta .ek-cat-links,
.ek-single-post .entry-meta .ek-byline,
.ek-single-post .entry-meta .ek-posted-on,
.ek-page-content .entry-meta .ek-tags-links,
.ek-page-content .entry-meta .ek-cat-links,
.ek-page-content .entry-meta .ek-byline,
.ek-page-content .entry-meta .ek-posted-on {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  color: inherit;
}
.ek-content-area .entry-meta .ek-tags-links .ek-dashicons, .ek-content-area .entry-meta .ek-cat-links .ek-dashicons, .ek-content-area .entry-meta .ek-byline .ek-dashicons, .ek-content-area .entry-meta .ek-posted-on .ek-dashicons,
.ek-single-post .entry-meta .ek-tags-links .ek-dashicons,
.ek-single-post .entry-meta .ek-cat-links .ek-dashicons,
.ek-single-post .entry-meta .ek-byline .ek-dashicons,
.ek-single-post .entry-meta .ek-posted-on .ek-dashicons,
.ek-page-content .entry-meta .ek-tags-links .ek-dashicons,
.ek-page-content .entry-meta .ek-cat-links .ek-dashicons,
.ek-page-content .entry-meta .ek-byline .ek-dashicons,
.ek-page-content .entry-meta .ek-posted-on .ek-dashicons {
  font-size: var(--font-size-base);
  width: var(--font-size-base);
  height: var(--font-size-base);
  vertical-align: middle;
  flex-shrink: 0;
}
.ek-content-area .entry-meta .ek-tags-links a, .ek-content-area .entry-meta .ek-cat-links a, .ek-content-area .entry-meta .ek-byline a, .ek-content-area .entry-meta .ek-posted-on a,
.ek-single-post .entry-meta .ek-tags-links a,
.ek-single-post .entry-meta .ek-cat-links a,
.ek-single-post .entry-meta .ek-byline a,
.ek-single-post .entry-meta .ek-posted-on a,
.ek-page-content .entry-meta .ek-tags-links a,
.ek-page-content .entry-meta .ek-cat-links a,
.ek-page-content .entry-meta .ek-byline a,
.ek-page-content .entry-meta .ek-posted-on a {
  color: inherit;
  text-decoration: none;
}
.ek-content-area .entry-meta .ek-tags-links a:hover, .ek-content-area .entry-meta .ek-cat-links a:hover, .ek-content-area .entry-meta .ek-byline a:hover, .ek-content-area .entry-meta .ek-posted-on a:hover,
.ek-single-post .entry-meta .ek-tags-links a:hover,
.ek-single-post .entry-meta .ek-cat-links a:hover,
.ek-single-post .entry-meta .ek-byline a:hover,
.ek-single-post .entry-meta .ek-posted-on a:hover,
.ek-page-content .entry-meta .ek-tags-links a:hover,
.ek-page-content .entry-meta .ek-cat-links a:hover,
.ek-page-content .entry-meta .ek-byline a:hover,
.ek-page-content .entry-meta .ek-posted-on a:hover {
  color: var(--color-link);
}
.ek-content-area .entry-meta .ek-cat-links::before,
.ek-single-post .entry-meta .ek-cat-links::before,
.ek-page-content .entry-meta .ek-cat-links::before {
  content: "📁";
  margin-right: var(--spacing-1);
}
.ek-content-area .entry-meta .ek-tags-links::before,
.ek-single-post .entry-meta .ek-tags-links::before,
.ek-page-content .entry-meta .ek-tags-links::before {
  content: "🏷️";
  margin-right: var(--spacing-1);
}
@media (max-width: 767px) {
  .ek-content-area .entry-meta,
  .ek-single-post .entry-meta,
  .ek-page-content .entry-meta {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: flex-start;
    gap: var(--spacing-2);
    padding-bottom: var(--spacing-4);
  }
}
.ek-content-area .entry-content,
.ek-single-post .entry-content,
.ek-page-content .entry-content {
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--color-text-main);
}
.ek-content-area .entry-content > * + *,
.ek-single-post .entry-content > * + *,
.ek-page-content .entry-content > * + * {
  margin-top: var(--spacing-4);
}
.ek-content-area .entry-content p:not([class*=ekuatorial]),
.ek-content-area .entry-content .wp-block-paragraph:not([class*=ekuatorial]),
.ek-single-post .entry-content p:not([class*=ekuatorial]),
.ek-single-post .entry-content .wp-block-paragraph:not([class*=ekuatorial]),
.ek-page-content .entry-content p:not([class*=ekuatorial]),
.ek-page-content .entry-content .wp-block-paragraph:not([class*=ekuatorial]) {
  margin-bottom: var(--spacing-4);
}
.ek-content-area .entry-content p:not([class*=ekuatorial]):last-child,
.ek-content-area .entry-content .wp-block-paragraph:not([class*=ekuatorial]):last-child,
.ek-single-post .entry-content p:not([class*=ekuatorial]):last-child,
.ek-single-post .entry-content .wp-block-paragraph:not([class*=ekuatorial]):last-child,
.ek-page-content .entry-content p:not([class*=ekuatorial]):last-child,
.ek-page-content .entry-content .wp-block-paragraph:not([class*=ekuatorial]):last-child {
  margin-bottom: 0;
}
.ek-content-area .entry-content ul,
.ek-content-area .entry-content ol,
.ek-single-post .entry-content ul,
.ek-single-post .entry-content ol,
.ek-page-content .entry-content ul,
.ek-page-content .entry-content ol {
  margin-bottom: var(--spacing-4);
  padding-left: var(--spacing-6);
}
.ek-content-area .entry-content ul li,
.ek-content-area .entry-content ol li,
.ek-single-post .entry-content ul li,
.ek-single-post .entry-content ol li,
.ek-page-content .entry-content ul li,
.ek-page-content .entry-content ol li {
  margin-bottom: var(--spacing-1);
}
.ek-content-area .entry-content ul li:last-child,
.ek-content-area .entry-content ol li:last-child,
.ek-single-post .entry-content ul li:last-child,
.ek-single-post .entry-content ol li:last-child,
.ek-page-content .entry-content ul li:last-child,
.ek-page-content .entry-content ol li:last-child {
  margin-bottom: 0;
}
.ek-content-area .entry-content ul,
.ek-single-post .entry-content ul,
.ek-page-content .entry-content ul {
  list-style: disc;
}
.ek-content-area .entry-content ol,
.ek-single-post .entry-content ol,
.ek-page-content .entry-content ol {
  list-style: decimal;
}
.ek-content-area .entry-content blockquote,
.ek-single-post .entry-content blockquote,
.ek-page-content .entry-content blockquote {
  margin: var(--spacing-6) 0;
  padding: var(--spacing-4) var(--spacing-6);
  padding-left: var(--spacing-8);
  border-left: var(--spacing-2_5) solid var(--color-forest-green); /* 10px */
  font-style: italic;
  background: var(--color-bg-hover);
  border-radius: var(--border-radius);
  position: relative;
}
.ek-content-area .entry-content blockquote::before,
.ek-single-post .entry-content blockquote::before,
.ek-page-content .entry-content blockquote::before {
  content: '"';
  font-size: var(--font-size-4xl);
  color: var(--color-forest-green);
  position: absolute;
  top: var(--spacing-2);
  left: var(--spacing-2);
  opacity: 0.3;
}
.ek-content-area .entry-content blockquote p,
.ek-single-post .entry-content blockquote p,
.ek-page-content .entry-content blockquote p {
  margin-bottom: 0;
  font-size: var(--font-size-lg);
  line-height: var(--line-height-loose);
}
.ek-content-area .entry-content blockquote cite,
.ek-single-post .entry-content blockquote cite,
.ek-page-content .entry-content blockquote cite {
  display: block;
  margin-top: var(--spacing-2);
  font-style: normal;
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  text-align: right;
}
.ek-content-area .entry-content code,
.ek-single-post .entry-content code,
.ek-page-content .entry-content code {
  font-family: var(--font-mono);
  font-size: var(--font-size-sm);
  background: var(--color-bg-hover);
  padding: var(--spacing-0_5) var(--spacing-1);
  border-radius: var(--border-radius-sm);
  border: 1px solid var(--color-border);
}
.ek-content-area .entry-content pre,
.ek-single-post .entry-content pre,
.ek-page-content .entry-content pre {
  background: var(--color-bg-hover);
  padding: var(--spacing-4);
  border-radius: var(--border-radius);
  border: 1px solid var(--color-border);
  overflow-x: auto;
  margin-bottom: var(--spacing-4);
}
.ek-content-area .entry-content pre code,
.ek-single-post .entry-content pre code,
.ek-page-content .entry-content pre code {
  background: transparent;
  padding: 0;
  border: none;
  border-radius: 0;
}
.ek-content-area .entry-content table,
.ek-single-post .entry-content table,
.ek-page-content .entry-content table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: var(--spacing-4);
  background: var(--color-bg-surface);
  border-radius: var(--border-radius);
  overflow: hidden;
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
}
.ek-content-area .entry-content table th,
.ek-content-area .entry-content table td,
.ek-single-post .entry-content table th,
.ek-single-post .entry-content table td,
.ek-page-content .entry-content table th,
.ek-page-content .entry-content table td {
  padding: var(--spacing-3) var(--spacing-4);
  text-align: left;
  border-bottom: 1px solid var(--color-border);
}
.ek-content-area .entry-content table th,
.ek-single-post .entry-content table th,
.ek-page-content .entry-content table th {
  background: var(--color-bg-hover);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
}
.ek-content-area .entry-content table tr:last-child td,
.ek-single-post .entry-content table tr:last-child td,
.ek-page-content .entry-content table tr:last-child td {
  border-bottom: none;
}
.ek-content-area .entry-footer,
.ek-single-post .entry-footer,
.ek-page-content .entry-footer {
  margin-top: var(--spacing-8);
  padding-top: var(--spacing-6);
  border-top: 1px solid var(--color-border);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--spacing-4);
}
@media (max-width: 767px) {
  .ek-content-area .entry-footer,
  .ek-single-post .entry-footer,
  .ek-page-content .entry-footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: flex-start;
  }
}
.ek-content-area .entry-footer .ek-tags-links,
.ek-single-post .entry-footer .ek-tags-links,
.ek-page-content .entry-footer .ek-tags-links {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  flex-wrap: wrap;
  gap: var(--spacing-2);
}
.ek-content-area .entry-footer .ek-tags-links .ek-tag-link,
.ek-single-post .entry-footer .ek-tags-links .ek-tag-link,
.ek-page-content .entry-footer .ek-tags-links .ek-tag-link {
  display: inline-block;
  padding: var(--spacing-1) var(--spacing-3);
  background: var(--color-bg-hover);
  color: var(--color-text-light);
  text-decoration: none;
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-sm);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-content-area .entry-footer .ek-tags-links .ek-tag-link:hover,
.ek-single-post .entry-footer .ek-tags-links .ek-tag-link:hover,
.ek-page-content .entry-footer .ek-tags-links .ek-tag-link:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
}
.ek-content-area .entry-footer .ek-share-buttons,
.ek-single-post .entry-footer .ek-share-buttons,
.ek-page-content .entry-footer .ek-share-buttons {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  gap: var(--spacing-2);
}
.ek-content-area .entry-footer .ek-share-buttons .ek-share-button,
.ek-single-post .entry-footer .ek-share-buttons .ek-share-button,
.ek-page-content .entry-footer .ek-share-buttons .ek-share-button {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  font-family: var(--font-body);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-tight);
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid transparent;
  border-radius: var(--border-radius);
  padding: var(--spacing-2) var(--spacing-4);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  cursor: pointer;
}
.ek-content-area .entry-footer .ek-share-buttons .ek-share-button:disabled,
.ek-single-post .entry-footer .ek-share-buttons .ek-share-button:disabled,
.ek-page-content .entry-footer .ek-share-buttons .ek-share-button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.ek-content-area .entry-footer .ek-share-buttons .ek-share-button,
.ek-single-post .entry-footer .ek-share-buttons .ek-share-button,
.ek-page-content .entry-footer .ek-share-buttons .ek-share-button {
  padding: var(--spacing-2);
  background: var(--color-bg-hover);
  border: 1px solid var(--color-border);
  color: var(--color-text-light);
  width: 2.5rem; /* 40px */
  height: 2.5rem; /* 40px */
}
.ek-content-area .entry-footer .ek-share-buttons .ek-share-button:hover,
.ek-single-post .entry-footer .ek-share-buttons .ek-share-button:hover,
.ek-page-content .entry-footer .ek-share-buttons .ek-share-button:hover {
  background: var(--color-link);
  color: var(--color-white);
  border-color: var(--color-link);
}
.ek-content-area .entry-footer .ek-share-buttons .ek-share-button .ek-dashicons,
.ek-single-post .entry-footer .ek-share-buttons .ek-share-button .ek-dashicons,
.ek-page-content .entry-footer .ek-share-buttons .ek-share-button .ek-dashicons {
  font-size: var(--font-size-base);
  width: var(--font-size-base);
  height: var(--font-size-base);
}
.ek-author-bio {
  margin-top: var(--spacing-8);
  padding: var(--spacing-6);
  background: var(--color-bg-hover);
  border-radius: var(--border-radius-lg);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  gap: var(--spacing-4);
}
@media (max-width: 767px) {
  .ek-author-bio {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    text-align: center;
  }
}
.ek-author-bio .ek-author-avatar {
  flex-shrink: 0;
}
.ek-author-bio .ek-author-avatar img {
  width: 5rem; /* 80px */
  height: 5rem; /* 80px */
  border-radius: var(--border-radius-full);
  border: var(--spacing-0_5) solid var(--color-white); /* 2px */
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
}
@media (max-width: 767px) {
  .ek-author-bio .ek-author-avatar img {
    width: 3.75rem; /* 60px */
    height: 3.75rem; /* 60px */
  }
}
.ek-author-bio .ek-author-info {
  -webkit-box-flex: 1;
          flex: 1;
}
.ek-author-bio .ek-author-info .ek-author-name {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-1);
}
.ek-author-bio .ek-author-info .ek-author-description {
  color: var(--color-text-light);
  line-height: var(--line-height-loose);
  margin-bottom: var(--spacing-3);
}
.ek-author-bio .ek-author-info .ek-author-links {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  gap: var(--spacing-3);
  flex-wrap: wrap;
}
.ek-author-bio .ek-author-info .ek-author-links a {
  color: var(--color-link);
  text-decoration: none;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
}
.ek-author-bio .ek-author-info .ek-author-links a:hover {
  text-decoration: underline;
}
.ek-related-content-section {
  margin: var(--spacing-16) 0 var(--spacing-12) 0;
  padding: var(--spacing-12) 0;
  background: var(--color-bg-surface);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}
.ek-related-content-section .ek-related-content-header {
  text-align: center;
  margin-bottom: var(--spacing-10);
}
.ek-related-content-section .ek-related-content-header .ek-related-content-title {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-2) 0;
  position: relative;
}
.ek-related-content-section .ek-related-content-header .ek-related-content-title::after {
  content: "";
  position: absolute;
  bottom: calc(var(--spacing-1) * -1); /* -4px */
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 3.75rem; /* 60px */
  height: var(--spacing-0_5); /* 2px */
  background: -webkit-gradient(linear, left top, right top, from(var(--color-link)), to(var(--color-accent)));
  background: linear-gradient(90deg, var(--color-link), var(--color-accent));
  border-radius: var(--border-radius-full);
}
@media (min-width: 768px) {
  .ek-related-content-section .ek-related-content-header .ek-related-content-title {
    font-size: var(--font-size-3xl);
  }
}
.ek-related-content-section .ek-related-content-header .ek-related-content-subtitle {
  font-size: var(--font-size-base);
  color: var(--color-text-light);
  margin: 0;
  font-weight: var(--font-weight-normal);
}
.ek-related-content-section .ek-related-content-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); /* 320px */
  gap: var(--spacing-6);
}
@media (min-width: 768px) {
  .ek-related-content-section .ek-related-content-grid {
    grid-template-columns: repeat(auto-fit, minmax(17.5rem, 1fr)); /* 280px */
    gap: var(--spacing-5);
  }
}
@media (max-width: 767px) {
  .ek-related-content-section .ek-related-content-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-4);
  }
}
.ek-related-content-card {
  position: relative;
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-related-content-card:hover {
  -webkit-transform: translateY(calc(var(--spacing-2_5) * -1));
          transform: translateY(calc(var(--spacing-2_5) * -1)); /* -10px */
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
  border-color: var(--color-link);
}
.ek-related-content-card .ek-related-content-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.ek-related-content-card .ek-related-content-link:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25));
          box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25)); /* 2px */
  border-radius: var(--border-radius-lg);
}
.ek-related-content-card .ek-related-content-image {
  position: relative;
  width: 100%;
  height: 12.5rem; /* 200px */
  overflow: hidden;
}
.ek-related-content-card .ek-related-content-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
}
.ek-related-content-card .ek-related-content-image .ek-related-content-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.2);
  opacity: 0;
  -webkit-transition: opacity var(--transition-fast);
  transition: opacity var(--transition-fast);
}
.ek-related-content-card .ek-related-content-image .ek-related-content-type-badge {
  position: absolute;
  top: var(--spacing-3);
  right: var(--spacing-3);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-1);
  padding: var(--spacing-1) var(--spacing-2);
  background: rgba(255, 255, 255, 0.95);
  border-radius: var(--border-radius);
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.ek-related-content-card .ek-related-content-image .ek-related-content-type-badge .ek-type-icon {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 1.25rem; /* 20px */
  height: 1.25rem; /* 20px */
  color: var(--color-link);
}
.ek-related-content-card .ek-related-content-image .ek-related-content-type-badge .ek-type-icon svg {
  width: var(--font-size-base);
  height: var(--font-size-base);
}
.ek-related-content-card .ek-related-content-image .ek-related-content-type-badge .ek-type-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.ek-related-content-card .ek-related-content-image:hover img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-related-content-card .ek-related-content-image:hover .ek-related-content-overlay {
  opacity: 1;
}
.ek-related-content-card .ek-related-content-no-image {
  background: linear-gradient(135deg, var(--color-bg-hover), var(--color-bg-surface));
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}
.ek-related-content-card .ek-related-content-no-image .ek-no-image-placeholder {
  color: var(--color-text-muted);
  opacity: 0.6;
}
.ek-related-content-card .ek-related-content-body {
  padding: var(--spacing-4);
}
.ek-related-content-card .ek-related-content-body .ek-related-content-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-2) 0;
  line-height: 1.3;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-related-content-card .ek-related-content-body .ek-related-content-title:hover {
  color: var(--color-link);
}
.ek-related-content-card .ek-related-content-body .ek-related-content-excerpt {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  line-height: 1.5;
  margin: 0 0 var(--spacing-3) 0;
  display: -webkit-box;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ek-related-content-card .ek-related-content-body .ek-related-content-meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-3);
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
}
.ek-related-content-card .ek-related-content-body .ek-related-content-meta .ek-related-content-date,
.ek-related-content-card .ek-related-content-body .ek-related-content-meta .ek-related-content-reading-time {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-1);
}
.ek-related-content-card .ek-related-content-body .ek-related-content-meta .ek-related-content-reading-time::before {
  content: "•";
  margin-right: var(--spacing-1);
}
.ek-related-content-card .ek-related-content-type-badge .ek-type-icon {
  color: var(--color-link);
}
.ek-related-content-card {
  -webkit-animation: fadeInUp 0.4s ease-out;
          animation: fadeInUp 0.4s ease-out;
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(var(--spacing-5));
            transform: translateY(var(--spacing-5)); /* 20px */
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(var(--spacing-5));
            transform: translateY(var(--spacing-5)); /* 20px */
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .ek-related-content-section {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
  }
  :root:not([data-theme=light]) .ek-related-content-card {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
  }
  :root:not([data-theme=light]) .ek-related-content-card:hover {
    border-color: var(--color-link);
  }
  :root:not([data-theme=light]) .ek-related-content-card .ek-related-content-image .ek-related-content-type-badge {
    background: rgba(0, 0, 0, 0.8);
  }
  :root:not([data-theme=light]) .ek-related-content-card .ek-related-content-title {
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .ek-related-content-card .ek-related-content-excerpt {
    color: var(--color-gray-300);
  }
}
[data-theme=dark] .ek-related-content-section {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
}
[data-theme=dark] .ek-related-content-card {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
}
[data-theme=dark] .ek-related-content-card:hover {
  border-color: var(--color-link);
}
[data-theme=dark] .ek-related-content-card .ek-related-content-image .ek-related-content-type-badge {
  background: rgba(0, 0, 0, 0.8);
}
[data-theme=dark] .ek-related-content-card .ek-related-content-title {
  color: var(--color-white);
}
[data-theme=dark] .ek-related-content-card .ek-related-content-excerpt {
  color: var(--color-gray-300);
}
.ek-content-navigation {
  margin-top: var(--spacing-8);
  padding-top: var(--spacing-6);
  border-top: 1px solid var(--color-border);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  gap: var(--spacing-4);
}
@media (max-width: 767px) {
  .ek-content-navigation {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
}
.ek-content-navigation .ek-nav-link {
  -webkit-box-flex: 1;
          flex: 1;
  padding: var(--spacing-4);
  background: var(--color-bg-hover);
  border-radius: var(--border-radius);
  text-decoration: none;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  text-align: center;
}
.ek-content-navigation .ek-nav-link:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(calc(var(--spacing-1_5) * -1));
          transform: translateY(calc(var(--spacing-1_5) * -1)); /* -6px */
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
}
.ek-content-navigation .ek-nav-link.ek-nav-previous {
  text-align: left;
}
@media (max-width: 767px) {
  .ek-content-navigation .ek-nav-link.ek-nav-previous {
    text-align: center;
  }
}
.ek-content-navigation .ek-nav-link.ek-nav-next {
  text-align: right;
}
@media (max-width: 767px) {
  .ek-content-navigation .ek-nav-link.ek-nav-next {
    text-align: center;
  }
}
.ek-content-navigation .ek-nav-link .ek-nav-label {
  display: block;
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  margin-bottom: var(--spacing-1);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.ek-content-navigation .ek-nav-link .ek-nav-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ek-content-navigation .ek-nav-link:hover .ek-nav-title {
  color: inherit;
}
@media (max-width: 767px) {
  .entry-header {
    margin-bottom: var(--spacing-4);
  }
  .entry-header .entry-title {
    font-size: var(--font-size-xl);
  }
  .entry-content > * + * {
    margin-top: var(--spacing-3);
  }
  .entry-content p {
    margin-bottom: var(--spacing-3);
  }
  .entry-content blockquote {
    margin: var(--spacing-4) 0;
    padding: var(--spacing-3) var(--spacing-4);
  }
  .ek-author-bio {
    padding: var(--spacing-4);
  }
  .ek-author-bio .ek-author-info .ek-author-description {
    font-size: var(--font-size-sm);
  }
}
@media print {
  .entry-header,
  .entry-meta,
  .entry-footer,
  .ek-author-bio,
  .ek-related-content,
  .ek-content-navigation {
    display: none;
  }
  .entry-content {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-base);
  }
  .entry-content h1,
  .entry-content h2,
  .entry-content h3,
  .entry-content h4,
  .entry-content h5,
  .entry-content h6 {
    page-break-after: avoid;
  }
  .entry-content p,
  .entry-content ul,
  .entry-content ol,
  .entry-content blockquote {
    orphans: 3;
    widows: 3;
  }
  .entry-content pre,
  .entry-content code {
    background: var(--color-gray-50);
    border: 1px solid var(--color-gray-200);
  }
}
.post-thumbnail {
  border-radius: var(--border-radius);
  overflow: hidden;
}
.post-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.post-thumbnail img:hover {
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}
.ek-single-post .post-hero {
  position: relative;
  width: 100vw;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  height: 60vh;
  min-height: 25rem; /* 400px - Reduced for better balance */
  max-height: 40rem; /* 640px - Reduced from 900px */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: end;
          align-items: end;
  -webkit-box-pack: center;
          justify-content: center;
  overflow: hidden;
  -webkit-animation: heroFadeIn 1.5s ease-out;
          animation: heroFadeIn 1.5s ease-out;
}
.ek-single-post .post-hero .post-hero-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  z-index: 1;
}
.ek-single-post .post-hero .hero-content {
  position: relative;
  z-index: 3;
  width: 100%;
  max-width: var(--container-width);
  margin: 0 auto;
  padding: var(--spacing-6) var(--spacing-4);
}
.ek-single-post .post-hero .ek-hero-meta-bottom {
  position: absolute;
  bottom: var(--spacing-6);
  left: var(--spacing-6);
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: var(--spacing-3);
  -webkit-box-align: start;
          align-items: flex-start;
  z-index: 4;
}
.ek-single-post .post-hero .ek-hero-meta-bottom .post-categories,
.ek-single-post .post-hero .ek-hero-meta-bottom .post-tags {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2);
  -webkit-box-align: center;
          align-items: center;
}
.ek-single-post .post-hero .ek-hero-meta-bottom .post-categories a {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  padding: var(--spacing-0_5) var(--spacing-3);
  background: rgba(193, 25, 36, var(--opacity-90)); /* Primary red with opacity */
  -webkit-backdrop-filter: blur(var(--blur-amount));
          backdrop-filter: blur(var(--blur-amount)); /* 8px */
  color: var(--color-white);
  text-decoration: none;
  border-radius: var(--border-radius);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  border: var(--spacing-0_5) solid rgba(255, 255, 255, var(--opacity-30)); /* 2px */
  -webkit-box-shadow: 0 var(--spacing-1) var(--spacing-4) rgba(0, 0, 0, var(--opacity-30));
          box-shadow: 0 var(--spacing-1) var(--spacing-4) rgba(0, 0, 0, var(--opacity-30)); /* 8px */
}
.ek-single-post .post-hero .ek-hero-meta-bottom .post-categories a:hover {
  background: rgb(193, 25, 36);
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
  -webkit-box-shadow: 0 var(--spacing-2_5) var(--spacing-6) rgba(0, 0, 0, var(--opacity-40));
          box-shadow: 0 var(--spacing-2_5) var(--spacing-6) rgba(0, 0, 0, var(--opacity-40)); /* 12px */
}
.ek-single-post .post-hero .ek-hero-meta-bottom .post-categories a:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.ek-single-post .post-hero .ek-hero-meta-bottom .post-tags a {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  padding: var(--spacing-0_5) var(--spacing-3);
  background: rgba(255, 255, 255, var(--opacity-15)); /* 0.15 */
  -webkit-backdrop-filter: blur(var(--blur-amount));
          backdrop-filter: blur(var(--blur-amount)); /* 8px */
  color: var(--color-white);
  text-decoration: none;
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-normal);
  text-transform: lowercase;
  letter-spacing: 0.02em;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  border: var(--spacing-0_5) solid rgba(255, 255, 255, var(--opacity-20)); /* 2px */
  -webkit-box-shadow: 0 var(--spacing-1) var(--spacing-4) rgba(0, 0, 0, var(--opacity-20));
          box-shadow: 0 var(--spacing-1) var(--spacing-4) rgba(0, 0, 0, var(--opacity-20)); /* 8px */
}
.ek-single-post .post-hero .ek-hero-meta-bottom .post-tags a:hover {
  background: rgba(255, 255, 255, var(--opacity-25)); /* 0.25 */
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
  -webkit-box-shadow: 0 var(--spacing-2_5) var(--spacing-6) rgba(0, 0, 0, var(--opacity-30));
          box-shadow: 0 var(--spacing-2_5) var(--spacing-6) rgba(0, 0, 0, var(--opacity-30)); /* 12px */
  border-color: rgba(255, 255, 255, var(--opacity-40)); /* 0.4 */
}
.ek-single-post .post-hero .ek-hero-meta-bottom .post-tags a:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.ek-single-post .post-title-meta {
  padding: var(--spacing-10) 0 var(--spacing-8) 0;
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
  border-bottom: 1px solid var(--color-border);
  background: var(--color-bg-surface);
}
@media (min-width: 768px) {
  .ek-single-post .post-title-meta {
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
.ek-single-post .post-title-meta .ek-container {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--spacing-4);
}
.ek-single-post .post-title-meta .entry-title-below-hero {
  font-family: var(--font-heading);
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-6) 0;
  text-align: left;
  max-width: 50rem; /* 800px */
}
@media (min-width: 768px) {
  .ek-single-post .post-title-meta .entry-title-below-hero {
    margin-bottom: var(--spacing-8);
  }
}
.ek-single-post .post-title-meta .entry-meta-below-hero {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-6);
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: start;
          justify-content: start;
  max-width: 62.5rem; /* 1000px */
  margin: 0;
}
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author .meta-label,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date .meta-label,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time .meta-label,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified .meta-label {
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: var(--font-weight-medium);
  margin-right: var(--spacing-1);
}
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author .author a,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author .entry-date,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author .reading-time,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date .author a,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date .entry-date,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date .reading-time,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time .author a,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time .entry-date,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time .reading-time,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified .author a,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified .entry-date,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified .reading-time {
  color: var(--color-text-main);
  font-weight: var(--font-weight-semibold);
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author .author a:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author .entry-date:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author .reading-time:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date .author a:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date .entry-date:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date .reading-time:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time .author a:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time .entry-date:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time .reading-time:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified .author a:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified .entry-date:hover,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified .reading-time:hover {
  color: var(--color-link);
}
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author .entry-date,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date .entry-date,
.ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time .entry-date,
.ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified .entry-date {
  font-weight: var(--font-weight-medium);
}
.ek-single-post .post-header-no-image {
  padding: var(--spacing-10) 0 var(--spacing-8) 0;
  background: var(--color-bg-surface);
  border-bottom: 1px solid var(--color-border);
}
.ek-single-post .post-header-no-image .ek-container {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--spacing-4);
}
.ek-single-post .post-header-no-image .header-meta-top {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-3);
  margin-bottom: var(--spacing-6);
}
.ek-single-post .post-header-no-image .header-meta-top .post-categories,
.ek-single-post .post-header-no-image .header-meta-top .post-tags {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2);
}
.ek-single-post .post-header-no-image .header-meta-top .post-categories a,
.ek-single-post .post-header-no-image .header-meta-top .post-tags a {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  padding: var(--spacing-1) var(--spacing-3);
  background: var(--color-bg-surface);
  color: var(--color-text-main);
  text-decoration: none;
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  border: 1px solid var(--color-border);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-single-post .post-header-no-image .header-meta-top .post-categories a:hover,
.ek-single-post .post-header-no-image .header-meta-top .post-tags a:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
}
.ek-single-post .post-header-no-image .entry-title-standard {
  font-family: var(--font-heading);
  font-size: clamp(1.75rem, 3.5vw, 2.75rem);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-6) 0;
  max-width: 50rem; /* 800px */
}
@media (min-width: 768px) {
  .ek-single-post .post-header-no-image .entry-title-standard {
    margin-bottom: var(--spacing-8);
  }
}
.ek-single-post .post-header-no-image .entry-meta-standard {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-5);
  -webkit-box-align: center;
          align-items: center;
  max-width: 50rem; /* 800px */
}
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author .meta-label,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date .meta-label,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time .meta-label {
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: var(--font-weight-medium);
  margin-right: var(--spacing-1);
}
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author .author a,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author .entry-date,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author .reading-time,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date .author a,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date .entry-date,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date .reading-time,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time .author a,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time .entry-date,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time .reading-time {
  color: var(--color-text-main);
  font-weight: var(--font-weight-semibold);
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author .author a:hover,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author .entry-date:hover,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author .reading-time:hover,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date .author a:hover,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date .entry-date:hover,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date .reading-time:hover,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time .author a:hover,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time .entry-date:hover,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time .reading-time:hover {
  color: var(--color-link);
}
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author .entry-date,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date .entry-date,
.ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time .entry-date {
  font-weight: var(--font-weight-medium);
}
.ek-single-post .post-header-no-image .entry-meta-standard .meta-separator {
  color: var(--color-text-muted);
  margin: 0 var(--spacing-2);
}
.ek-single-post .post-content .entry-content {
  padding: var(--spacing-10) 0 var(--spacing-8) 0;
  max-width: 50rem; /* 800px - Optimal reading width */
  margin: 0 auto;
}
.ek-single-post .post-content .entry-content h2:not([class*=ekuatorial]),
.ek-single-post .post-content .entry-content h3:not([class*=ekuatorial]),
.ek-single-post .post-content .entry-content h4:not([class*=ekuatorial]),
.ek-single-post .post-content .entry-content h5:not([class*=ekuatorial]),
.ek-single-post .post-content .entry-content h6:not([class*=ekuatorial]),
.ek-single-post .post-content .entry-content .wp-block-heading:not([class*=ekuatorial]) {
  margin-top: var(--spacing-8);
  margin-bottom: var(--spacing-4);
  line-height: var(--line-height-heading);
}
.ek-single-post .post-content .entry-content h2:not([class*=ekuatorial]) {
  font-size: var(--font-size-2xl);
}
.ek-single-post .post-content .entry-content h3:not([class*=ekuatorial]) {
  font-size: var(--font-size-xl);
}
.ek-single-post .post-content .entry-content h4:not([class*=ekuatorial]) {
  font-size: var(--font-size-lg);
}
.ek-single-post .post-content .entry-content h5:not([class*=ekuatorial]) {
  font-size: var(--font-size-base);
}
.ek-single-post .post-content .entry-content h6:not([class*=ekuatorial]) {
  font-size: var(--font-size-sm);
}
.ek-single-post .post-content .entry-content p:not([class*=ekuatorial]),
.ek-single-post .post-content .entry-content .wp-block-paragraph:not([class*=ekuatorial]) {
  margin-bottom: var(--spacing-4);
  line-height: var(--line-height-base);
}
.ek-single-post .post-content .entry-content blockquote {
  margin: var(--spacing-6) 0;
  padding: var(--spacing-4) var(--spacing-6);
  border-left: var(--spacing-2_5) solid var(--color-link); /* 10px */
  background: var(--color-bg-hover);
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
  font-style: italic;
}
.ek-single-post .post-content .entry-content blockquote p:last-child {
  margin-bottom: 0;
}
.ek-single-post .post-content .entry-content ul,
.ek-single-post .post-content .entry-content ol {
  margin-bottom: var(--spacing-4);
  padding-left: var(--spacing-6);
}
.ek-single-post .post-content .entry-content li {
  margin-bottom: var(--spacing-2);
  line-height: var(--line-height-base);
}
.ek-single-post .post-content .entry-content img {
  max-width: 100%;
  height: auto;
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-single-post .post-content .entry-content a {
  color: var(--color-link);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-single-post .post-content .entry-content a:hover {
  color: var(--color-link-hover);
  border-bottom-color: var(--color-link-hover);
}
@media (min-width: 768px) {
  .ek-single-post .post-hero {
    height: 50vh;
    min-height: 20rem; /* 320px - Reduced */
    max-height: 32rem; /* 512px - Reduced */
    background-attachment: scroll;
  }
  .ek-single-post .post-title-meta {
    padding: var(--spacing-8) 0 var(--spacing-6) 0;
  }
  .ek-single-post .post-title-meta .entry-title-below-hero {
    font-size: clamp(1.75rem, 3.5vw, 3rem);
  }
  .ek-single-post .post-title-meta .entry-meta-below-hero {
    gap: var(--spacing-5);
  }
  .ek-single-post .post-header-no-image {
    padding: var(--spacing-8) 0 var(--spacing-6) 0;
  }
  .ek-single-post .post-header-no-image .entry-title-standard {
    font-size: clamp(1.5rem, 3vw, 2.25rem);
  }
  .ek-single-post .post-content .entry-content {
    padding: var(--spacing-8) 0 var(--spacing-6) 0;
  }
}
@media (max-width: 767px) {
  .ek-single-post .post-hero {
    height: 40vh;
    min-height: 18.75rem; /* 300px - Reduced */
    max-height: 25rem; /* 400px - Reduced */
    background-attachment: scroll;
  }
  .ek-single-post .post-hero .hero-content {
    padding: var(--spacing-4) var(--spacing-3);
  }
  .ek-single-post .post-hero .ek-hero-meta-bottom {
    bottom: var(--spacing-4);
    left: var(--spacing-4);
    gap: var(--spacing-2);
  }
  .ek-single-post .post-hero .ek-hero-meta-bottom .post-categories,
  .ek-single-post .post-hero .ek-hero-meta-bottom .post-tags {
    gap: var(--spacing-1_5);
  }
  .ek-single-post .post-title-meta {
    padding: var(--spacing-6) 0 var(--spacing-4) 0;
  }
  .ek-single-post .post-title-meta .entry-title-below-hero {
    font-size: clamp(1.5rem, 5vw, 2.25rem);
    margin-bottom: var(--spacing-5);
  }
  .ek-single-post .post-title-meta .entry-meta-below-hero {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: flex-start;
    gap: var(--spacing-3);
  }
  .ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-author,
  .ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-date,
  .ek-single-post .post-title-meta .entry-meta-below-hero .ek-meta-reading-time,
  .ek-single-post .post-title-meta .entry-meta-below-hero .meta-modified {
    width: 100%;
    -webkit-box-pack: start;
            justify-content: flex-start;
  }
  .ek-single-post .post-header-no-image {
    padding: var(--spacing-6) 0 var(--spacing-4) 0;
  }
  .ek-single-post .post-header-no-image .header-meta-top {
    margin-bottom: var(--spacing-4);
  }
  .ek-single-post .post-header-no-image .entry-title-standard {
    font-size: clamp(1.25rem, 4.5vw, 1.75rem);
    margin-bottom: var(--spacing-5);
  }
  .ek-single-post .post-header-no-image .entry-meta-standard {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: flex-start;
    gap: var(--spacing-3);
  }
  .ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-author,
  .ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-date,
  .ek-single-post .post-header-no-image .entry-meta-standard .ek-meta-reading-time {
    width: 100%;
  }
  .ek-single-post .post-content .entry-content {
    padding: var(--spacing-6) 0 var(--spacing-4) 0;
  }
  .ek-single-post .post-content .entry-content h2,
  .ek-single-post .post-content .entry-content h3,
  .ek-single-post .post-content .entry-content h4,
  .ek-single-post .post-content .entry-content h5,
  .ek-single-post .post-content .entry-content h6 {
    margin-top: var(--spacing-6);
  }
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .ek-single-post .post-title-meta {
    background: var(--color-gray-800);
    border-bottom-color: var(--color-gray-700);
  }
  :root:not([data-theme=light]) .ek-single-post .post-header-no-image {
    background: linear-gradient(135deg, var(--color-bg-body) 0%, var(--color-gray-800) 100%);
  }
}
[data-theme=dark] .ek-single-post .post-title-meta {
  background: var(--color-gray-800);
  border-bottom-color: var(--color-gray-700);
}
[data-theme=dark] .ek-single-post .post-header-no-image {
  background: linear-gradient(135deg, var(--color-bg-body) 0%, var(--color-gray-800) 100%);
}
@-webkit-keyframes heroFadeIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes heroFadeIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .ek-single-post .post-hero {
    -webkit-animation: none;
            animation: none;
    background-attachment: scroll;
  }
  .ek-single-post .post-hero::before {
    -webkit-transform: none;
            transform: none;
  }
}
/**
 * Page Template Styles
 *
 * Optimized styles for page templates to display Gutenberg blocks properly.
 *
 * @package Ekuatorial
 */
.ek-page-main {
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
}
.ek-page-main.ek-site-main {
  max-width: 100%;
}
.ek-page-article {
  width: 100%;
  margin: 0;
  padding: 0;
}
.ek-page-header {
  padding: var(--spacing-8) 0 var(--spacing-6) 0;
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
  background: var(--color-bg-surface);
  border-bottom: 1px solid var(--color-border);
}
@media (min-width: 768px) {
  .ek-page-header {
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
.ek-page-header .ek-container {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--spacing-4);
}
.ek-page-header .ek-page-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  line-height: var(--line-height-tight);
  margin: 0 0 var(--spacing-4) 0;
}
@media (min-width: 768px) {
  .ek-page-header .ek-page-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-page-content {
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
}
.ek-page-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
  max-width: calc(var(--container-width) * 0.65);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--spacing-4);
  padding-right: var(--spacing-4);
}
@media (min-width: 768px) {
  .ek-page-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
    padding-left: var(--spacing-6);
    padding-right: var(--spacing-6);
  }
}
.ek-page-content .wp-block-group,
.ek-page-content .wp-block-columns,
.ek-page-content .wp-block-cover,
.ek-page-content .wp-block-media-text {
  margin-top: var(--spacing-6);
  margin-bottom: var(--spacing-6);
}
.ek-page-content .wp-block-group:first-child,
.ek-page-content .wp-block-columns:first-child,
.ek-page-content .wp-block-cover:first-child,
.ek-page-content .wp-block-media-text:first-child {
  margin-top: 0;
}
.ek-page-content .wp-block-group:last-child,
.ek-page-content .wp-block-columns:last-child,
.ek-page-content .wp-block-cover:last-child,
.ek-page-content .wp-block-media-text:last-child {
  margin-bottom: 0;
}
.ek-page-content .alignwide {
  max-width: var(--container-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--spacing-4);
  padding-right: var(--spacing-4);
}
@media (min-width: 768px) {
  .ek-page-content .alignwide {
    padding-left: var(--spacing-6);
    padding-right: var(--spacing-6);
  }
}
.ek-page-content .alignfull {
  max-width: 100%;
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  padding-left: var(--spacing-4);
  padding-right: var(--spacing-4);
}
@media (min-width: 768px) {
  .ek-page-content .alignfull {
    padding-left: var(--spacing-6);
    padding-right: var(--spacing-6);
  }
}
.ek-page-content .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.ek-page-content .alignleft {
  float: left;
  margin-right: var(--spacing-6);
  margin-bottom: var(--spacing-4);
  margin-top: var(--spacing-2);
}
.ek-page-content .alignright {
  float: right;
  margin-left: var(--spacing-6);
  margin-bottom: var(--spacing-4);
  margin-top: var(--spacing-2);
}
.ek-page-content::after {
  content: "";
  display: table;
  clear: both;
}
.ek-page-content > *:not([class*=ekuatorial]) {
  margin-top: var(--spacing-6);
  margin-bottom: var(--spacing-6);
}
.ek-page-content > *:not([class*=ekuatorial]):first-child {
  margin-top: 0;
}
.ek-page-content > *:not([class*=ekuatorial]):last-child {
  margin-bottom: 0;
}
.ek-page-content > p:not([class*=ekuatorial]),
.ek-page-content > .wp-block-paragraph:not([class*=ekuatorial]) {
  margin-bottom: var(--spacing-4);
  line-height: var(--line-height-base);
}
.ek-page-content > p:not([class*=ekuatorial]):last-child,
.ek-page-content > .wp-block-paragraph:not([class*=ekuatorial]):last-child {
  margin-bottom: 0;
}
.ek-page-content > h2:not([class*=ekuatorial]),
.ek-page-content > h3:not([class*=ekuatorial]),
.ek-page-content > h4:not([class*=ekuatorial]),
.ek-page-content > h5:not([class*=ekuatorial]),
.ek-page-content > h6:not([class*=ekuatorial]),
.ek-page-content > .wp-block-heading:not([class*=ekuatorial]) {
  margin-top: var(--spacing-8);
  margin-bottom: var(--spacing-4);
  line-height: var(--line-height-tight);
  font-weight: var(--font-weight-semibold);
}
.ek-page-content > h2:not([class*=ekuatorial]):first-child,
.ek-page-content > h3:not([class*=ekuatorial]):first-child,
.ek-page-content > h4:not([class*=ekuatorial]):first-child,
.ek-page-content > h5:not([class*=ekuatorial]):first-child,
.ek-page-content > h6:not([class*=ekuatorial]):first-child,
.ek-page-content > .wp-block-heading:not([class*=ekuatorial]):first-child {
  margin-top: 0;
}
.ek-page-content > h2:not([class*=ekuatorial]) {
  font-size: var(--font-size-2xl);
}
.ek-page-content > h3:not([class*=ekuatorial]) {
  font-size: var(--font-size-xl);
}
.ek-page-content > h4:not([class*=ekuatorial]) {
  font-size: var(--font-size-lg);
}
.ek-page-content > .wp-block-image:not([class*=ekuatorial]) {
  margin: var(--spacing-6) 0;
}
.ek-page-content > .wp-block-image:not([class*=ekuatorial]) img {
  height: auto;
  max-width: 100%;
}
.ek-page-content > .wp-block-image:not([class*=ekuatorial]) figcaption {
  margin-top: var(--spacing-2);
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  text-align: center;
  font-style: italic;
}
.ek-page-content .wp-block-gallery {
  margin: var(--spacing-8) 0;
}
.ek-page-content .wp-block-quote {
  margin: var(--spacing-6) 0;
  padding: var(--spacing-4) var(--spacing-6);
  border-left: var(--spacing-1) solid var(--color-link);
  background: var(--color-bg-hover);
  font-style: italic;
}
.ek-page-content .wp-block-quote p {
  margin-bottom: var(--spacing-2);
}
.ek-page-content .wp-block-quote cite {
  display: block;
  margin-top: var(--spacing-2);
  font-style: normal;
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
.ek-page-content .wp-block-code {
  margin: var(--spacing-6) 0;
  padding: var(--spacing-4);
  background: var(--color-bg-hover);
  border-radius: var(--border-radius);
  overflow-x: auto;
}
.ek-page-content .wp-block-code code {
  font-family: var(--font-mono);
  font-size: var(--font-size-sm);
}
.ek-page-content .wp-block-table {
  margin: var(--spacing-6) 0;
  overflow-x: auto;
}
.ek-page-content .wp-block-table table {
  width: 100%;
  border-collapse: collapse;
}
.ek-page-content .wp-block-table th,
.ek-page-content .wp-block-table td {
  padding: var(--spacing-3) var(--spacing-4);
  border: 1px solid var(--color-border);
}
.ek-page-content .wp-block-table th {
  background: var(--color-bg-hover);
  font-weight: var(--font-weight-semibold);
}
.ek-page-content .wp-block-list {
  margin: var(--spacing-6) 0;
  padding-left: var(--spacing-6);
}
.ek-page-content .wp-block-list li {
  margin-bottom: var(--spacing-2);
}
.ek-page-content .wp-block-separator {
  margin: var(--spacing-8) auto;
  border: none;
  border-top: 1px solid var(--color-border);
  max-width: 6.25rem; /* 100px */
}
.ek-page-content .wp-block-separator.is-style-wide {
  max-width: 100%;
}
.ek-page-content .wp-block-separator.is-style-dots {
  border: none;
  text-align: center;
}
.ek-page-content .wp-block-separator.is-style-dots::before {
  content: "···";
  color: var(--color-text-muted);
  font-size: var(--font-size-2xl);
  letter-spacing: var(--spacing-2);
}
.ek-page-content .wp-block-spacer {
  clear: both;
}
.ek-page-footer {
  padding: var(--spacing-6) 0;
  margin-top: var(--spacing-8);
  border-top: 1px solid var(--color-border);
}
.ek-page-footer .ek-container {
  max-width: var(--container-width);
  margin: 0 auto;
  padding: 0 var(--spacing-4);
}
.ek-page-footer .ek-edit-link {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
.ek-page-footer .ek-edit-link a {
  color: var(--color-link);
  text-decoration: none;
}
.ek-page-footer .ek-edit-link a:hover {
  text-decoration: underline;
}
@media (max-width: 767px) {
  .ek-page-header {
    padding: var(--spacing-6) 0 var(--spacing-4) 0;
    margin-bottom: var(--spacing-6);
  }
  .ek-page-header .ek-page-title {
    font-size: var(--font-size-2xl);
  }
  .ek-page-content > * {
    margin-top: var(--spacing-4);
    margin-bottom: var(--spacing-4);
  }
  .ek-page-content .alignleft,
  .ek-page-content .alignright {
    float: none;
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
  .ek-page-content .alignfull {
    width: 100%;
    left: 0;
    right: 0;
    margin-left: 0;
    margin-right: 0;
    padding-left: var(--spacing-4);
    padding-right: var(--spacing-4);
  }
}
.ek-comments-area,
.ek-comments-section,
#comments,
.comments-area {
  display: none !important;
}
.ek-comments-area {
  margin: var(--spacing-16) 0 var(--spacing-12) 0;
  padding: var(--spacing-12) 0;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-bg-surface);
}
.ek-comments-area .ek-comments-title {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-8) 0;
  text-align: center;
  position: relative;
}
.ek-comments-area .ek-comments-title::after {
  content: "";
  position: absolute;
  bottom: calc(var(--spacing-1) * -1); /* -4px */
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 3.75rem; /* 60px */
  height: var(--spacing-0_5); /* 2px */
  background: -webkit-gradient(linear, left top, right top, from(var(--color-link)), to(var(--color-accent)));
  background: linear-gradient(90deg, var(--color-link), var(--color-accent));
  border-radius: var(--border-radius-full);
}
@media (min-width: 768px) {
  .ek-comments-area .ek-comments-title {
    font-size: var(--font-size-3xl);
  }
}
.ek-comments-area .ek-no-comments {
  text-align: center;
  font-style: italic;
  color: var(--color-text-muted);
  padding: var(--spacing-8);
  background: var(--color-bg-hover);
  border-radius: var(--border-radius);
  margin: var(--spacing-6) 0;
}
.ek-comments-area .comment-list,
.ek-single-post .comment-list {
  list-style: none;
  padding: 0;
  margin: var(--spacing-8) 0;
}
.ek-comments-area .comment-list .ek-children,
.ek-single-post .comment-list .ek-children {
  margin-left: var(--spacing-8);
  padding-left: var(--spacing-4);
  border-left: var(--spacing-1) solid var(--color-border-light); /* 2px */
}
@media (max-width: 767px) {
  .ek-comments-area .comment-list .ek-children,
  .ek-single-post .comment-list .ek-children {
    margin-left: var(--spacing-4);
    padding-left: var(--spacing-2);
  }
}
.ek-comment {
  margin-bottom: var(--spacing-6);
  padding: var(--spacing-6);
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-comment:hover {
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
  border-color: var(--color-link);
}
.ek-comment:last-child {
  margin-bottom: 0;
}
.ek-comment .comment-body {
  position: relative;
}
.ek-comment .comment-author {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  gap: var(--spacing-3);
  margin-bottom: var(--spacing-3);
}
.ek-comment .comment-author .ek-avatar {
  flex-shrink: 0;
  width: 3rem; /* 48px */
  height: 3rem; /* 48px */
  border-radius: var(--border-radius-full);
  border: var(--spacing-1) solid var(--color-border); /* 2px */
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.ek-comment .comment-author .ek-avatar:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-comment .comment-author .ek-fn {
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  text-decoration: none;
  font-size: var(--font-size-base);
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-comment .comment-author .ek-fn:hover {
  color: var(--color-link);
}
.ek-comment .comment-author .ek-says {
  display: none;
}
.ek-comment .comment-meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-4);
  margin-bottom: var(--spacing-3);
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}
.ek-comment .comment-meta .comment-date {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-1);
}
.ek-comment .comment-meta .comment-date a {
  color: var(--color-text-muted);
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-comment .comment-meta .comment-date a:hover {
  color: var(--color-link);
}
.ek-comment .comment-meta .comment-date::before {
  content: "";
  display: inline-block;
  width: var(--font-size-base);
  height: var(--font-size-base);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.ek-w3.ek-org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12,6 12,12 16,14'%3E%3C/polyline%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
  opacity: var(--opacity-60); /* 0.6 */
}
.ek-comment .comment-meta .ek-edit-link {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-1);
  color: var(--color-text-muted);
  text-decoration: none;
  font-size: var(--font-size-xs);
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-comment .comment-meta .ek-edit-link:hover {
  color: var(--color-warning);
}
.ek-comment .comment-meta .ek-edit-link::before {
  content: "";
  display: inline-block;
  width: var(--font-size-sm);
  height: var(--font-size-sm);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.ek-w3.ek-org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'%3E%3C/path%3E%3Cpath d='M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z'%3E%3C/path%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
}
.ek-comment .comment-meta .comment-awaiting-moderation {
  background: var(--color-warning-light);
  color: var(--color-warning);
  padding: var(--spacing-1) var(--spacing-2);
  border-radius: var(--border-radius);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  margin-left: var(--spacing-2);
}
.ek-comment .comment-content {
  font-size: var(--font-size-base);
  line-height: 1.7;
  color: var(--color-text-main);
  margin-bottom: var(--spacing-4);
}
.ek-comment .comment-content p {
  margin-bottom: var(--spacing-3);
}
.ek-comment .comment-content p:last-child {
  margin-bottom: 0;
}
.ek-comment .comment-content a {
  color: var(--color-link);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  -webkit-transition: border-color var(--transition-fast);
  transition: border-color var(--transition-fast);
}
.ek-comment .comment-content a:hover {
  border-bottom-color: var(--color-link);
}
.ek-comment .comment-content code {
  background: var(--color-bg-hover);
  padding: var(--spacing-0_5) var(--spacing-1);
  border-radius: var(--border-radius);
  font-family: var(--font-mono);
  font-size: var(--font-size-sm);
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
}
.ek-comment .comment-content blockquote {
  margin: var(--spacing-4) 0;
  padding: var(--spacing-3) var(--spacing-4);
  border-left: var(--spacing-2_5) solid var(--color-link); /* 10px */
  background: var(--color-bg-hover);
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
  font-style: italic;
}
.ek-comment .comment-content blockquote p:last-child {
  margin-bottom: 0;
}
.ek-comment .ek-reply {
  margin-top: var(--spacing-3);
}
.ek-comment .ek-reply .comment-reply-link {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-1);
  padding: var(--spacing-1_5) var(--spacing-3);
  background: var(--color-bg-hover);
  color: var(--color-text-main);
  text-decoration: none;
  border-radius: var(--border-radius);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
}
.ek-comment .ek-reply .comment-reply-link:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
}
.ek-comment .ek-reply .comment-reply-link::before {
  content: "";
  display: inline-block;
  width: var(--font-size-base);
  height: var(--font-size-base);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.ek-w3.ek-org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.5 12c0 6.5-5.5 11.5-11.5 11.5S-1.5 18.5-1.5 12 4 0.5 10.5 0.5 21.5 5.5 21.5 12z'/%3E%3Cpath d='M8.5 12h3l-3-3v3z'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
}
.ek-comment.ek-bypostauthor {
  border-color: var(--color-link);
  background: rgba(193, 25, 36, var(--opacity-20)); /* 0.02 */
}
.ek-comment.ek-bypostauthor .comment-author .ek-fn::after {
  content: " (Author)";
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-sm);
  color: var(--color-link);
  opacity: 0.8;
}
.ek-comment {
  -webkit-animation: commentSlideIn 0.5s ease-out;
          animation: commentSlideIn 0.5s ease-out;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}
.ek-comment:nth-child(1) {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}
.ek-comment:nth-child(2) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.ek-comment:nth-child(3) {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.ek-comment:nth-child(4) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.ek-comment:nth-child(5) {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.ek-comment:nth-child(6) {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}
.ek-comment:nth-child(7) {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
.ek-comment:nth-child(8) {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}
.ek-comment:nth-child(9) {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}
.ek-comment:nth-child(10) {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
.comment-navigation {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  gap: var(--spacing-4);
  margin: var(--spacing-6) 0;
  padding: var(--spacing-4) 0;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}
@media (max-width: 767px) {
  .comment-navigation {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: center;
            align-items: center;
    text-align: center;
  }
}
.comment-navigation .ek-nav-previous,
.comment-navigation .ek-nav-next {
  -webkit-box-flex: 1;
          flex: 1;
}
.comment-navigation .ek-nav-previous a,
.comment-navigation .ek-nav-next a {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  padding: var(--spacing-2) var(--spacing-4);
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  color: var(--color-text-main);
  text-decoration: none;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.comment-navigation .ek-nav-previous a:hover,
.comment-navigation .ek-nav-next a:hover {
  background: var(--color-bg-hover);
  border-color: var(--color-link);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.comment-navigation .ek-nav-previous a::before, .comment-navigation .ek-nav-previous a::after,
.comment-navigation .ek-nav-next a::before,
.comment-navigation .ek-nav-next a::after {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 1.25rem; /* 20px */
  height: 1.25rem; /* 20px */
  font-size: var(--font-size-base);
}
.comment-navigation .ek-nav-previous a::before {
  content: "←";
  margin-right: var(--spacing-1);
}
.comment-navigation .ek-nav-next a::after {
  content: "→";
  margin-left: var(--spacing-1);
}
.comment-respond {
  margin: var(--spacing-8) 0 0 0;
}
.comment-respond .comment-reply-title {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-6) 0;
}
.comment-respond .comment-reply-title::after {
  content: "";
  display: block;
  width: 3.125rem; /* 50px */
  height: var(--spacing-0_5); /* 2px */
  background: -webkit-gradient(linear, left top, right top, from(var(--color-link)), to(var(--color-accent)));
  background: linear-gradient(90deg, var(--color-link), var(--color-accent));
  border-radius: var(--border-radius-full);
  margin-top: var(--spacing-2);
}
@media (min-width: 768px) {
  .comment-respond .comment-reply-title {
    font-size: var(--font-size-2xl);
  }
}
.comment-respond .comment-reply-title#reply-title {
  display: none;
}
.comment-respond .comment-form {
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-6);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
@media (max-width: 767px) {
  .comment-respond .comment-form {
    padding: var(--spacing-4);
  }
}
.comment-respond .comment-form .comment-form-comment,
.comment-respond .comment-form .comment-form-author,
.comment-respond .comment-form .comment-form-email,
.comment-respond .comment-form .comment-form-url {
  margin-bottom: var(--spacing-4);
}
.comment-respond .comment-form .comment-form-comment label,
.comment-respond .comment-form .comment-form-author label,
.comment-respond .comment-form .comment-form-email label,
.comment-respond .comment-form .comment-form-url label {
  display: block;
  font-weight: var(--font-weight-medium);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-2);
  font-size: var(--font-size-sm);
}
.comment-respond .comment-form .comment-form-comment input[type=text],
.comment-respond .comment-form .comment-form-comment input[type=email],
.comment-respond .comment-form .comment-form-comment input[type=url],
.comment-respond .comment-form .comment-form-comment textarea,
.comment-respond .comment-form .comment-form-author input[type=text],
.comment-respond .comment-form .comment-form-author input[type=email],
.comment-respond .comment-form .comment-form-author input[type=url],
.comment-respond .comment-form .comment-form-author textarea,
.comment-respond .comment-form .comment-form-email input[type=text],
.comment-respond .comment-form .comment-form-email input[type=email],
.comment-respond .comment-form .comment-form-email input[type=url],
.comment-respond .comment-form .comment-form-email textarea,
.comment-respond .comment-form .comment-form-url input[type=text],
.comment-respond .comment-form .comment-form-url input[type=email],
.comment-respond .comment-form .comment-form-url input[type=url],
.comment-respond .comment-form .comment-form-url textarea {
  width: 100%;
  padding: var(--spacing-3) var(--spacing-4);
  border: var(--spacing-1) solid var(--color-border); /* 2px */
  border-radius: var(--border-radius);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  background: var(--color-bg-surface);
  color: var(--color-text-main);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.comment-respond .comment-form .comment-form-comment input[type=text]:focus,
.comment-respond .comment-form .comment-form-comment input[type=email]:focus,
.comment-respond .comment-form .comment-form-comment input[type=url]:focus,
.comment-respond .comment-form .comment-form-comment textarea:focus,
.comment-respond .comment-form .comment-form-author input[type=text]:focus,
.comment-respond .comment-form .comment-form-author input[type=email]:focus,
.comment-respond .comment-form .comment-form-author input[type=url]:focus,
.comment-respond .comment-form .comment-form-author textarea:focus,
.comment-respond .comment-form .comment-form-email input[type=text]:focus,
.comment-respond .comment-form .comment-form-email input[type=email]:focus,
.comment-respond .comment-form .comment-form-email input[type=url]:focus,
.comment-respond .comment-form .comment-form-email textarea:focus,
.comment-respond .comment-form .comment-form-url input[type=text]:focus,
.comment-respond .comment-form .comment-form-url input[type=email]:focus,
.comment-respond .comment-form .comment-form-url input[type=url]:focus,
.comment-respond .comment-form .comment-form-url textarea:focus {
  outline: none;
  border-color: var(--color-link);
  -webkit-box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25));
          box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25)); /* 2px */
}
.comment-respond .comment-form .comment-form-comment input[type=text]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-comment input[type=email]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-comment input[type=url]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-comment textarea::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-author input[type=text]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-author input[type=email]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-author input[type=url]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-author textarea::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-email input[type=text]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-email input[type=email]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-email input[type=url]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-email textarea::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-url input[type=text]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-url input[type=email]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-url input[type=url]::-webkit-input-placeholder, .comment-respond .comment-form .comment-form-url textarea::-webkit-input-placeholder {
  color: var(--color-text-muted);
}
.comment-respond .comment-form .comment-form-comment input[type=text]::-moz-placeholder, .comment-respond .comment-form .comment-form-comment input[type=email]::-moz-placeholder, .comment-respond .comment-form .comment-form-comment input[type=url]::-moz-placeholder, .comment-respond .comment-form .comment-form-comment textarea::-moz-placeholder, .comment-respond .comment-form .comment-form-author input[type=text]::-moz-placeholder, .comment-respond .comment-form .comment-form-author input[type=email]::-moz-placeholder, .comment-respond .comment-form .comment-form-author input[type=url]::-moz-placeholder, .comment-respond .comment-form .comment-form-author textarea::-moz-placeholder, .comment-respond .comment-form .comment-form-email input[type=text]::-moz-placeholder, .comment-respond .comment-form .comment-form-email input[type=email]::-moz-placeholder, .comment-respond .comment-form .comment-form-email input[type=url]::-moz-placeholder, .comment-respond .comment-form .comment-form-email textarea::-moz-placeholder, .comment-respond .comment-form .comment-form-url input[type=text]::-moz-placeholder, .comment-respond .comment-form .comment-form-url input[type=email]::-moz-placeholder, .comment-respond .comment-form .comment-form-url input[type=url]::-moz-placeholder, .comment-respond .comment-form .comment-form-url textarea::-moz-placeholder {
  color: var(--color-text-muted);
}
.comment-respond .comment-form .comment-form-comment input[type=text]::placeholder,
.comment-respond .comment-form .comment-form-comment input[type=email]::placeholder,
.comment-respond .comment-form .comment-form-comment input[type=url]::placeholder,
.comment-respond .comment-form .comment-form-comment textarea::placeholder,
.comment-respond .comment-form .comment-form-author input[type=text]::placeholder,
.comment-respond .comment-form .comment-form-author input[type=email]::placeholder,
.comment-respond .comment-form .comment-form-author input[type=url]::placeholder,
.comment-respond .comment-form .comment-form-author textarea::placeholder,
.comment-respond .comment-form .comment-form-email input[type=text]::placeholder,
.comment-respond .comment-form .comment-form-email input[type=email]::placeholder,
.comment-respond .comment-form .comment-form-email input[type=url]::placeholder,
.comment-respond .comment-form .comment-form-email textarea::placeholder,
.comment-respond .comment-form .comment-form-url input[type=text]::placeholder,
.comment-respond .comment-form .comment-form-url input[type=email]::placeholder,
.comment-respond .comment-form .comment-form-url input[type=url]::placeholder,
.comment-respond .comment-form .comment-form-url textarea::placeholder {
  color: var(--color-text-muted);
}
.comment-respond .comment-form .comment-form-comment textarea,
.comment-respond .comment-form .comment-form-author textarea,
.comment-respond .comment-form .comment-form-email textarea,
.comment-respond .comment-form .comment-form-url textarea {
  min-height: 7.5rem; /* 120px */
  resize: vertical;
  line-height: var(--line-height-base);
}
.comment-respond .comment-form .comment-form-comment {
  margin-bottom: var(--spacing-6);
}
.comment-respond .comment-form .comment-form-comment textarea {
  min-height: 9.375rem; /* 150px */
}
.comment-respond .comment-form .ek-form-submit {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-4);
}
@media (max-width: 767px) {
  .comment-respond .comment-form .ek-form-submit {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: stretch;
            align-items: stretch;
  }
}
.comment-respond .comment-form .ek-form-submit .ek-submit {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  gap: var(--spacing-2);
  padding: var(--spacing-3) var(--spacing-6);
  background: var(--color-link);
  color: var(--color-white);
  border: var(--spacing-1) solid var(--color-link); /* 2px */
  border-radius: var(--border-radius);
  font-family: var(--font-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-base);
  cursor: pointer;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  text-decoration: none;
  min-height: 3rem; /* 48px */
}
.comment-respond .comment-form .ek-form-submit .ek-submit:hover, .comment-respond .comment-form .ek-form-submit .ek-submit:focus {
  background: var(--color-link-hover);
  border-color: var(--color-link-hover);
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
}
.comment-respond .comment-form .ek-form-submit .ek-submit:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25));
          box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25)); /* 2px */
}
.comment-respond .comment-form .ek-form-submit .ek-submit:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.comment-respond .comment-form .ek-form-submit .ek-submit::after {
  content: "";
  display: inline-block;
  width: var(--font-size-base);
  height: var(--font-size-base);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.ek-w3.ek-org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 2L11 13'/%3E%3Cpath d='M22 2L15 22 11 13 2 9 22 2z'/%3E%3C/svg%3E") no-repeat center;
  background-size: contain;
}
.comment-respond .comment-form .ek-logged-in-as {
  background: var(--color-bg-hover);
  padding: var(--spacing-3) var(--spacing-4);
  border-radius: var(--border-radius);
  margin-bottom: var(--spacing-4);
  font-size: var(--font-size-sm);
  color: var(--color-text-main);
}
.comment-respond .comment-form .ek-logged-in-as a {
  color: var(--color-link);
  text-decoration: none;
}
.comment-respond .comment-form .ek-logged-in-as a:hover {
  text-decoration: underline;
}
.comment-respond .comment-form .comment-notes {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
  margin-bottom: var(--spacing-4);
  font-style: italic;
}
.comment-respond .comment-form .ek-required {
  color: var(--color-error);
  font-weight: var(--font-weight-bold);
}
.comment-respond.comment-respond .comment-form {
  border-left: var(--spacing-2_5) solid var(--color-link); /* 10px */
  position: relative;
}
.comment-respond.comment-respond .comment-form::before {
  content: "💬";
  position: absolute;
  top: calc(var(--spacing-3) * -1); /* -12px */
  left: calc(var(--spacing-5) * -1); /* -20px */
  background: var(--color-bg-surface);
  width: 2rem; /* 32px */
  height: 2rem; /* 32px */
  border-radius: var(--border-radius-full);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  font-size: var(--font-size-base);
  border: var(--spacing-1) solid var(--color-border); /* 2px */
}
@-webkit-keyframes commentSlideIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(var(--spacing-5));
            transform: translateY(var(--spacing-5)); /* 20px */
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes commentSlideIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(var(--spacing-5));
            transform: translateY(var(--spacing-5)); /* 20px */
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .ek-comments-area {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
  }
  :root:not([data-theme=light]) .ek-comment {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
  }
  :root:not([data-theme=light]) .ek-comment:hover {
    border-color: var(--color-link);
  }
  :root:not([data-theme=light]) .ek-comment .comment-content {
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .ek-comment .comment-meta {
    color: var(--color-gray-300);
  }
  :root:not([data-theme=light]) .comment-respond .comment-form {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
  }
  :root:not([data-theme=light]) .comment-respond .comment-form input,
  :root:not([data-theme=light]) .comment-respond .comment-form textarea {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .comment-respond .comment-form input:focus,
  :root:not([data-theme=light]) .comment-respond .comment-form textarea:focus {
    border-color: var(--color-link);
  }
  :root:not([data-theme=light]) .comment-respond .comment-form input::-webkit-input-placeholder, :root:not([data-theme=light]) .comment-respond .comment-form textarea::-webkit-input-placeholder {
    color: var(--color-gray-500);
  }
  :root:not([data-theme=light]) .comment-respond .comment-form input::-moz-placeholder, :root:not([data-theme=light]) .comment-respond .comment-form textarea::-moz-placeholder {
    color: var(--color-gray-500);
  }
  :root:not([data-theme=light]) .comment-respond .comment-form input::placeholder,
  :root:not([data-theme=light]) .comment-respond .comment-form textarea::placeholder {
    color: var(--color-gray-500);
  }
  :root:not([data-theme=light]) .comment-respond .comment-form .ek-logged-in-as {
    background: var(--color-gray-700);
    color: var(--color-white);
  }
}
[data-theme=dark] .ek-comments-area {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
}
[data-theme=dark] .ek-comment {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
}
[data-theme=dark] .ek-comment:hover {
  border-color: var(--color-link);
}
[data-theme=dark] .ek-comment .comment-content {
  color: var(--color-white);
}
[data-theme=dark] .ek-comment .comment-meta {
  color: var(--color-gray-300);
}
[data-theme=dark] .comment-respond .comment-form {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
}
[data-theme=dark] .comment-respond .comment-form input,
[data-theme=dark] .comment-respond .comment-form textarea {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
  color: var(--color-white);
}
[data-theme=dark] .comment-respond .comment-form input:focus,
[data-theme=dark] .comment-respond .comment-form textarea:focus {
  border-color: var(--color-link);
}
[data-theme=dark] .comment-respond .comment-form input::-webkit-input-placeholder, [data-theme=dark] .comment-respond .comment-form textarea::-webkit-input-placeholder {
  color: var(--color-gray-500);
}
[data-theme=dark] .comment-respond .comment-form input::-moz-placeholder, [data-theme=dark] .comment-respond .comment-form textarea::-moz-placeholder {
  color: var(--color-gray-500);
}
[data-theme=dark] .comment-respond .comment-form input::placeholder,
[data-theme=dark] .comment-respond .comment-form textarea::placeholder {
  color: var(--color-gray-500);
}
[data-theme=dark] .comment-respond .comment-form .ek-logged-in-as {
  background: var(--color-gray-700);
  color: var(--color-white);
}
@media (prefers-reduced-motion: reduce) {
  .ek-comment {
    -webkit-animation: none;
            animation: none;
  }
  .ek-comment .ek-avatar:hover {
    -webkit-transform: none;
            transform: none;
  }
  .ek-comment .comment-reply-link:hover,
  .comment-form .ek-submit:hover {
    -webkit-transform: none;
            transform: none;
  }
}
.ek-comment a:focus,
.comment-form input:focus,
.comment-form textarea:focus,
.comment-form .ek-submit:focus {
  -webkit-box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25));
          box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25)); /* 2px */
}
.ek-search-form {
  position: relative;
  max-width: 37.5rem; /* 600px */
  margin: 0 auto;
}
@media (min-width: 768px) {
  .ek-search-form {
    max-width: 43.75rem; /* 700px */
  }
}
.ek-search-form .ek-search-field {
  width: 100%;
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--color-text-main);
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  padding: var(--spacing-2) var(--spacing-3);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-search-form .ek-search-field:focus {
  outline: none;
  border-color: var(--color-link);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
}
.ek-search-form .ek-search-field::-webkit-input-placeholder {
  color: var(--color-text-muted);
}
.ek-search-form .ek-search-field::-moz-placeholder {
  color: var(--color-text-muted);
}
.ek-search-form .ek-search-field::placeholder {
  color: var(--color-text-muted);
}
.ek-search-form .ek-search-field {
  padding: var(--spacing-4) var(--spacing-12) var(--spacing-4) var(--spacing-4);
  font-size: var(--font-size-base);
  border-radius: var(--border-radius-lg);
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
}
.ek-search-form .ek-search-field:focus {
  -webkit-box-shadow: var(--box-shadow-md), 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25));
          box-shadow: var(--box-shadow-md), 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-25)); /* 2px */
  border-color: var(--color-link);
}
.ek-search-form .ek-search-field::-webkit-input-placeholder {
  color: var(--color-text-muted);
  font-style: italic;
}
.ek-search-form .ek-search-field::-moz-placeholder {
  color: var(--color-text-muted);
  font-style: italic;
}
.ek-search-form .ek-search-field::placeholder {
  color: var(--color-text-muted);
  font-style: italic;
}
.ek-search-form .ek-search-submit {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  font-family: var(--font-body);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-tight);
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid transparent;
  border-radius: var(--border-radius);
  padding: var(--spacing-2) var(--spacing-4);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  cursor: pointer;
}
.ek-search-form .ek-search-submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.ek-search-form .ek-search-submit {
  position: absolute;
  right: var(--spacing-2);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding: var(--spacing-2) var(--spacing-4);
  background: var(--color-link);
  color: var(--color-white);
  border: none;
  border-radius: var(--border-radius-md);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  min-width: auto;
  height: auto;
}
.ek-search-form .ek-search-submit:hover {
  background: var(--color-link-hover);
  -webkit-transform: translateY(-50%) scale(1.05);
          transform: translateY(-50%) scale(1.05);
}
.ek-search-form .ek-search-submit .ek-dashicons {
  font-size: var(--font-size-base);
  width: var(--font-size-base);
  height: var(--font-size-base);
}
@media (max-width: 767px) {
  .ek-search-form .ek-search-submit .ek-search-submit-text {
    display: none;
  }
}
.ek-search-form.ek-search-form-header {
  max-width: none;
  margin: 0;
}
.ek-search-form.ek-search-form-header .ek-search-field {
  padding: var(--spacing-3) var(--spacing-10) var(--spacing-3) var(--spacing-4);
  font-size: var(--font-size-sm);
}
.ek-search-form.ek-search-form-header .ek-search-submit {
  right: var(--spacing-1_5);
  padding: var(--spacing-1_5) var(--spacing-3);
}
.ek-search-form.ek-search-form-widget {
  max-width: none;
  margin: 0;
}
.ek-search-form.ek-search-form-widget .ek-search-field {
  border-radius: var(--border-radius);
  -webkit-box-shadow: none;
          box-shadow: none;
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
}
.ek-search-form.ek-search-form-widget .ek-search-submit {
  background: var(--color-forest-green);
  border-radius: var(--border-radius);
}
.ek-search-form.ek-search-form-widget .ek-search-submit:hover {
  background: var(--color-forest-green-dark);
}
.ek-advanced-search-options {
  display: none;
  margin-top: var(--spacing-4);
  padding: var(--spacing-6);
  background: var(--color-gray-50);
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-border);
}
.ek-advanced-search-options.ek-is-visible {
  display: block;
}
.ek-advanced-search-options .ek-advanced-filters {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12.5rem, 1fr)); /* 200px */
  gap: var(--spacing-4);
}
@media (max-width: 767px) {
  .ek-advanced-search-options .ek-advanced-filters {
    grid-template-columns: 1fr;
  }
}
.ek-advanced-search-options .ek-filter-group label {
  display: block;
  margin-bottom: var(--spacing-2);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-dark);
}
.ek-advanced-search-options .ek-filter-group select,
.ek-advanced-search-options .ek-filter-group input[type=text] {
  width: 100%;
  padding: var(--spacing-3);
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
  border-radius: var(--border-radius-sm);
  background: var(--color-white);
  font-size: var(--font-size-base);
}
.ek-advanced-search-options .ek-filter-group select:focus,
.ek-advanced-search-options .ek-filter-group input[type=text]:focus {
  outline: none;
  border-color: var(--color-focus);
  -webkit-box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-focus), var(--opacity-25));
          box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-focus), var(--opacity-25)); /* 2px */
}
.ek-advanced-search-options .ek-advanced-submit {
  margin-top: var(--spacing-4);
  padding: var(--spacing-3) var(--spacing-6);
  background: var(--color-forest-green);
  color: var(--color-white);
  border: none;
  border-radius: var(--border-radius-sm);
  font-weight: var(--font-weight-semibold);
  cursor: pointer;
  -webkit-transition: background var(--transition-fast);
  transition: background var(--transition-fast);
}
.ek-advanced-search-options .ek-advanced-submit:hover {
  background: var(--color-forest-green-dark);
}
.ek-search-results .ek-search-highlight {
  background: rgba(var(--color-link), var(--opacity-10));
  padding: var(--spacing-0_5) var(--spacing-1); /* 2px 4px */
  border-radius: var(--border-radius-sm);
  font-weight: var(--font-weight-semibold);
}
.ek-filter-group {
  margin-bottom: var(--spacing-6);
}
.ek-filter-group .ek-filter-label {
  display: block;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-3);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.ek-filter-group .ek-filter-controls {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  flex-wrap: wrap;
  gap: var(--spacing-2);
}
.ek-filter-group .ek-filter-controls .ek-filter-control {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  font-family: var(--font-body);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-tight);
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid transparent;
  border-radius: var(--border-radius);
  padding: var(--spacing-2) var(--spacing-4);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  cursor: pointer;
}
.ek-filter-group .ek-filter-controls .ek-filter-control:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.ek-filter-group .ek-filter-controls .ek-filter-control {
  padding: var(--spacing-2) var(--spacing-4);
  background: var(--color-bg-surface);
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
  color: var(--color-text-main);
  font-size: var(--font-size-sm);
  border-radius: var(--border-radius-md);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-filter-group .ek-filter-controls .ek-filter-control:hover {
  background: var(--color-link);
  color: var(--color-white);
  border-color: var(--color-link);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.ek-filter-group .ek-filter-controls .ek-filter-control.ek-active {
  background: var(--color-forest-green);
  color: var(--color-white);
  border-color: var(--color-forest-green);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-filter-group .ek-filter-controls .ek-filter-control[type=checkbox], .ek-filter-group .ek-filter-controls .ek-filter-control[type=radio] {
  width: auto;
  padding: var(--spacing-2);
  margin-right: var(--spacing-2);
}
.ek-filter-group .ek-filter-controls .ek-filter-control[type=checkbox] + label, .ek-filter-group .ek-filter-controls .ek-filter-control[type=radio] + label {
  margin-left: var(--spacing-2);
  margin-bottom: 0;
  font-weight: 400;
  cursor: pointer;
}
.ek-form-group {
  margin-bottom: var(--spacing-6);
}
.ek-form-group .ek-form-label {
  display: block;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-2);
}
.ek-form-group .ek-form-label.ek-required::after {
  content: " *";
  color: var(--color-link);
}
.ek-form-group .ek-form-field {
  position: relative;
}
.ek-form-group .ek-form-field .ek-form-input,
.ek-form-group .ek-form-field .ek-form-textarea,
.ek-form-group .ek-form-field .ek-form-select {
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--color-text-main);
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  padding: var(--spacing-2) var(--spacing-3);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-form-group .ek-form-field .ek-form-input:focus,
.ek-form-group .ek-form-field .ek-form-textarea:focus,
.ek-form-group .ek-form-field .ek-form-select:focus {
  outline: none;
  border-color: var(--color-link);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
}
.ek-form-group .ek-form-field .ek-form-input::-webkit-input-placeholder, .ek-form-group .ek-form-field .ek-form-textarea::-webkit-input-placeholder, .ek-form-group .ek-form-field .ek-form-select::-webkit-input-placeholder {
  color: var(--color-text-muted);
}
.ek-form-group .ek-form-field .ek-form-input::-moz-placeholder, .ek-form-group .ek-form-field .ek-form-textarea::-moz-placeholder, .ek-form-group .ek-form-field .ek-form-select::-moz-placeholder {
  color: var(--color-text-muted);
}
.ek-form-group .ek-form-field .ek-form-input::placeholder,
.ek-form-group .ek-form-field .ek-form-textarea::placeholder,
.ek-form-group .ek-form-field .ek-form-select::placeholder {
  color: var(--color-text-muted);
}
.ek-form-group .ek-form-field .ek-form-input,
.ek-form-group .ek-form-field .ek-form-textarea,
.ek-form-group .ek-form-field .ek-form-select {
  width: 100%;
}
.ek-form-group .ek-form-field .ek-form-textarea {
  min-height: 7.5rem; /* 120px */
  resize: vertical;
  padding: var(--spacing-3);
}
.ek-form-group .ek-form-field .ek-form-select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.ek-w3.ek-org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right var(--spacing-3) center;
  background-repeat: no-repeat;
  background-size: 1.5em 1.5em;
  padding-right: var(--spacing-10);
}
.ek-form-group .ek-form-field .ek-form-help {
  display: block;
  font-size: var(--font-size-xs);
  color: var(--color-text-light);
  margin-top: var(--spacing-1);
  line-height: var(--line-height-base);
}
.ek-form-group .ek-form-field .ek-form-error {
  display: block;
  font-size: var(--font-size-xs);
  color: var(--color-error);
  margin-top: var(--spacing-1);
  font-weight: var(--font-weight-medium);
}
.ek-form-group.ek-form-group-inline {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  align-items: flex-start;
  gap: var(--spacing-4);
}
.ek-form-group.ek-form-group-inline .ek-form-label {
  flex-shrink: 0;
  width: 7.5rem; /* 120px */
  margin-bottom: 0;
  padding-top: var(--spacing-3);
}
.ek-form-group.ek-form-group-inline .ek-form-field {
  -webkit-box-flex: 1;
          flex: 1;
}
@media (max-width: 767px) {
  .ek-form-group.ek-form-group-inline {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
  .ek-form-group.ek-form-group-inline .ek-form-label {
    width: auto;
    margin-bottom: var(--spacing-2);
  }
}
.ek-form-group.ek-form-group-floating .ek-form-field {
  position: relative;
}
.ek-form-group.ek-form-group-floating .ek-form-field .ek-form-label {
  position: absolute;
  top: var(--spacing-3);
  left: var(--spacing-3);
  font-size: var(--font-size-base);
  color: var(--color-text-muted);
  pointer-events: none;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  background: var(--color-bg-surface);
  padding: 0 var(--spacing-1);
  z-index: 1;
}
.ek-form-group.ek-form-group-floating .ek-form-field .ek-form-input:not(:-moz-placeholder) + .ek-form-label {
  top: calc(var(--spacing-3) * -1);
  font-size: var(--font-size-xs);
  color: var(--color-link);
}
.ek-form-group.ek-form-group-floating .ek-form-field .ek-form-input:focus + .ek-form-label,
.ek-form-group.ek-form-group-floating .ek-form-field .ek-form-input:not(:placeholder-shown) + .ek-form-label {
  top: calc(var(--spacing-3) * -1);
  font-size: var(--font-size-xs);
  color: var(--color-link);
}
.ek-form-actions {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--spacing-3);
  margin-top: var(--spacing-8);
  padding-top: var(--spacing-6);
  border-top: 1px solid var(--color-border);
}
@media (max-width: 767px) {
  .ek-form-actions {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
  .ek-form-actions .ek-btn {
    width: 100%;
    -webkit-box-pack: center;
            justify-content: center;
  }
}
.ek-form-actions .ek-form-actions-primary {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  gap: var(--spacing-3);
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .ek-form-actions .ek-form-actions-primary {
    -webkit-box-ordinal-group: 3;
            order: 2;
  }
}
.ek-form-actions .ek-form-actions-secondary {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  gap: var(--spacing-3);
  flex-wrap: wrap;
}
.ek-form-actions .ek-form-actions-secondary .ek-btn {
  background: transparent;
  border-color: var(--color-border);
  color: var(--color-text-light);
}
.ek-form-actions .ek-form-actions-secondary .ek-btn:hover {
  background: var(--color-bg-hover);
  border-color: var(--color-border);
  color: var(--color-text-main);
}
@media (max-width: 767px) {
  .ek-form-actions .ek-form-actions-secondary {
    -webkit-box-ordinal-group: 2;
            order: 1;
    margin-bottom: var(--spacing-3);
  }
}
.ek-multi-select {
  position: relative;
}
.ek-multi-select .ek-multi-select-trigger {
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--color-text-main);
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  padding: var(--spacing-2) var(--spacing-3);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-multi-select .ek-multi-select-trigger:focus {
  outline: none;
  border-color: var(--color-link);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-link), 0.1);
}
.ek-multi-select .ek-multi-select-trigger::-webkit-input-placeholder {
  color: var(--color-text-muted);
}
.ek-multi-select .ek-multi-select-trigger::-moz-placeholder {
  color: var(--color-text-muted);
}
.ek-multi-select .ek-multi-select-trigger::placeholder {
  color: var(--color-text-muted);
}
.ek-multi-select .ek-multi-select-trigger {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  cursor: pointer;
  padding: var(--spacing-3);
}
.ek-multi-select .ek-multi-select-trigger::after {
  content: "";
  width: 0;
  height: 0;
  border-left: var(--spacing-2_5) solid transparent; /* 10px */
  border-right: var(--spacing-2_5) solid transparent; /* 10px */
  border-top: var(--spacing-2_5) solid var(--color-text-light); /* 10px */
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.ek-multi-select .ek-multi-select-trigger.ek-open::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.ek-multi-select .ek-multi-select-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
  z-index: var(--z-index-dropdown);
  max-height: 12.5rem; /* 200px */
  overflow-y: auto;
  margin-top: var(--spacing-1);
}
.ek-multi-select .ek-multi-select-dropdown .ek-multi-select-option {
  padding: var(--spacing-3);
  cursor: pointer;
  -webkit-transition: background var(--transition-fast);
  transition: background var(--transition-fast);
}
.ek-multi-select .ek-multi-select-dropdown .ek-multi-select-option:hover {
  background: var(--color-bg-hover);
}
.ek-multi-select .ek-multi-select-dropdown .ek-multi-select-option.ek-selected {
  background: rgba(var(--color-link), var(--opacity-10));
  color: var(--color-link);
  font-weight: var(--font-weight-medium);
}
.ek-multi-select .ek-multi-select-dropdown .ek-multi-select-option input[type=checkbox] {
  margin-right: var(--spacing-2);
}
.ek-multi-select.ek-has-error .ek-form-field .ek-form-input,
.ek-multi-select.ek-has-error .ek-form-field .ek-form-textarea,
.ek-multi-select.ek-has-error .ek-form-field .ek-form-select {
  border-color: var(--color-error);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-error), var(--opacity-25));
          box-shadow: 0 0 0 3px rgba(var(--color-error), var(--opacity-25));
}
.ek-multi-select.ek-has-success .ek-form-field .ek-form-input,
.ek-multi-select.ek-has-success .ek-form-field .ek-form-textarea,
.ek-multi-select.ek-has-success .ek-form-field .ek-form-select {
  border-color: var(--color-success);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-success), var(--opacity-25));
          box-shadow: 0 0 0 3px rgba(var(--color-success), var(--opacity-25));
}
.ek-multi-select.ek-has-warning .ek-form-field .ek-form-input,
.ek-multi-select.ek-has-warning .ek-form-field .ek-form-textarea,
.ek-multi-select.ek-has-warning .ek-form-field .ek-form-select {
  border-color: var(--color-warning);
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-warning), var(--opacity-25));
          box-shadow: 0 0 0 3px rgba(var(--color-warning), var(--opacity-25));
}
@media (max-width: 767px) {
  .ek-search-form .ek-search-field {
    font-size: var(--font-size-base);
    padding: var(--spacing-3) var(--spacing-10) var(--spacing-3) var(--spacing-3);
  }
  .ek-search-form .ek-search-submit {
    right: var(--spacing-1_5);
    padding: var(--spacing-2);
  }
  .ek-form-group {
    margin-bottom: var(--spacing-4);
  }
  .ek-form-group.ek-form-group-inline .ek-form-label {
    width: auto;
    margin-bottom: var(--spacing-2);
  }
  .ek-filter-controls .ek-filter-control {
    -webkit-box-flex: 1;
            flex: 1 1 100%;
    text-align: center;
  }
}
.ek-is-valid {
  border-color: var(--color-success);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.ek-w3.ek-org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='m2.3 6.73 4.47-4.47c.2-.2.51-.2.71 0 .2.2.2.51 0 .71L2.71 7.77c-.2.2-.51.2-.71 0L1.23 6.44c-.2-.2-.2-.51 0-.71.2-.2.51-.2.71 0z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.ek-is-valid:focus {
  border-color: var(--color-success);
  -webkit-box-shadow: 0 0 0 0.2rem rgba(var(--color-success), var(--opacity-25));
          box-shadow: 0 0 0 0.2rem rgba(var(--color-success), var(--opacity-25));
}
.ek-is-invalid {
  border-color: var(--color-error);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.ek-w3.ek-org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath d='m5.8 4.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.ek-is-invalid:focus {
  border-color: var(--color-error);
  -webkit-box-shadow: 0 0 0 0.2rem rgba(var(--color-error), var(--opacity-25));
          box-shadow: 0 0 0 0.2rem rgba(var(--color-error), var(--opacity-25));
}
.ek-valid-feedback {
  display: block;
  width: 100%;
  margin-top: var(--spacing-2);
  font-size: var(--font-size-sm);
  color: var(--color-success);
}
.ek-invalid-feedback {
  display: block;
  width: 100%;
  margin-top: var(--spacing-2);
  font-size: var(--font-size-sm);
  color: var(--color-error);
}
.ek-form-label {
  margin-bottom: var(--spacing-2);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-main);
}
.ek-form-text {
  margin-top: var(--spacing-2);
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
/* Widgets Component */
/* =============================================================================
   WIDGETS - Core Widget Styling
   =============================================================================
   Comprehensive styling for all WordPress widgets adapted to Ekuatorial theme.
   Includes sidebar, footer, and any custom widget areas with theme integration.
   ============================================================================= */
.ek-widget {
  margin-bottom: var(--spacing-8);
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-6);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid var(--color-border-light);
  position: relative;
}
.ek-widget::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: -webkit-gradient(linear, left top, right top, from(var(--color-primary)), to(var(--color-secondary)));
  background: linear-gradient(90deg, var(--color-primary), var(--color-secondary));
  border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  opacity: 0.1;
}
.ek-widget:hover {
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  border-color: var(--color-border);
}
.ek-widget:hover::before {
  opacity: 0.2;
}
.ek-widget:focus-within {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.ek-widget .ek-widget-title {
  margin-bottom: var(--spacing-5);
  position: relative;
  font-family: var(--font-heading);
  font-size: var(--font-size-xl);
  font-weight: 700;
  color: var(--color-text);
  letter-spacing: -0.025em;
}
.ek-widget .ek-widget-title::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 50px;
  height: 3px;
  background: -webkit-gradient(linear, left top, right top, from(var(--color-primary)), to(var(--color-link)));
  background: linear-gradient(90deg, var(--color-primary), var(--color-link));
  border-radius: var(--border-radius-sm);
  -webkit-transition: width 0.3s ease;
  transition: width 0.3s ease;
}
.ek-widget .ek-widget-title:focus {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  border-radius: var(--border-radius-sm);
}
.ek-widget-loading {
  position: relative;
}
.ek-widget-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 24px;
  margin: -12px 0 0 -12px;
  border: 2px solid var(--color-border);
  border-top: 2px solid var(--color-primary);
  border-radius: 50%;
  -webkit-animation: widget-spin 1s linear infinite;
          animation: widget-spin 1s linear infinite;
}
@-webkit-keyframes widget-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes widget-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.widget_categories {
  position: relative;
}
.widget_categories::before {
  content: "🏷️";
  position: absolute;
  top: var(--spacing-2);
  right: var(--spacing-2);
  font-size: var(--font-size-lg);
  opacity: 0.3;
  z-index: 1;
}
.widget_categories nav {
  margin-top: var(--spacing-4);
}
.widget_categories ul {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}
.widget_categories li {
  list-style: none;
}
.widget_categories .cat-item {
  margin-bottom: var(--spacing-2);
  padding: var(--spacing-3) var(--spacing-2);
  border-bottom: 1px solid var(--color-border-light);
  border-radius: var(--border-radius);
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.widget_categories .cat-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_categories .cat-item:hover {
  background: linear-gradient(135deg, var(--color-bg-hover) 0%, rgba(var(--color-primary-rgb, 193, 25, 36), 0.05) 100%);
  padding-left: var(--spacing-4);
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.widget_categories .cat-item:hover::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: -webkit-gradient(linear, left top, left bottom, from(var(--color-primary)), to(var(--color-secondary)));
  background: linear-gradient(180deg, var(--color-primary), var(--color-secondary));
  border-radius: 0 var(--border-radius-sm) var(--border-radius-sm) 0;
}
.widget_categories .cat-item:focus-within {
  outline: 2px solid var(--color-focus);
  outline-offset: -2px;
}
.widget_categories .cat-item a {
  display: inline;
  text-decoration: none;
  color: var(--color-text);
  font-weight: 500;
  font-size: var(--font-size-base);
  line-height: 1.4;
  position: relative;
  z-index: 2;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.widget_categories .cat-item a:hover {
  color: var(--color-link);
  text-decoration: none;
}
.widget_categories .cat-item a::after {
  content: "→";
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 20px;
  height: 20px;
  background: var(--color-link);
  color: var(--color-white);
  border-radius: 50%;
  font-size: var(--font-size-sm);
  font-weight: 700;
  margin-left: var(--spacing-2);
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  opacity: 0;
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.widget_categories .cat-item:hover a::after {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}
.widget_categories .cat-item.current-cat, .widget_categories .cat-item.current-cat-parent {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
  color: var(--color-white);
}
.widget_categories .cat-item.current-cat a, .widget_categories .cat-item.current-cat-parent a {
  color: var(--color-white);
}
.widget_categories .cat-item.current-cat a::after, .widget_categories .cat-item.current-cat-parent a::after {
  background: var(--color-white);
  color: var(--color-primary);
}
.widget_categories .cat-item.current-cat .cat-item-count, .widget_categories .cat-item.current-cat-parent .cat-item-count {
  background: rgba(255, 255, 255, 0.2);
  color: var(--color-white);
}
.widget_categories {
  /* Enhanced post count styling with Ekuatorial branding */
  /* Note: WordPress Categories widget outputs count as plain text "(9)" after links */
  /* We need to modify the template output to add proper styling */
  /* Add custom count styling using JavaScript data attributes */
}
.widget_categories .cat-item[data-count]::after {
  content: attr(data-count);
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-width: 28px;
  height: 24px;
  padding: 0 var(--spacing-2);
  background: linear-gradient(135deg, var(--color-bg-hover) 0%, var(--color-bg-secondary) 100%);
  color: var(--color-text-light);
  font-size: var(--font-size-sm);
  font-weight: 700;
  border-radius: var(--border-radius-full);
  border: 1px solid var(--color-border);
  float: right;
  margin-left: var(--spacing-2);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.widget_categories .cat-item[data-count]::after::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(var(--color-primary-rgb, 193, 25, 36), 0.1)), to(transparent));
  background: linear-gradient(90deg, transparent, rgba(var(--color-primary-rgb, 193, 25, 36), 0.1), transparent);
  -webkit-transition: left 0.5s ease;
  transition: left 0.5s ease;
}
.widget_categories .cat-item:hover[data-count]::after {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-link) 100%);
  color: var(--color-charcoal);
  font-weight: 900;
  border-color: var(--color-primary);
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.widget_categories .cat-item:hover[data-count]::after::before {
  left: 100%;
}
.widget_categories {
  /* Hide default WordPress count text for uncategorized */
}
.widget_categories .cat-item:has(a[href*=tidak-berkategori])::after {
  display: none;
}
.widget_categories {
  /* Special styling for empty categories */
}
.widget_categories .cat-item:has(a[href*=tidak-berkategori]) {
  opacity: 0.6;
  font-style: italic;
}
.widget_categories .cat-item:has(a[href*=tidak-berkategori])::before {
  content: "📁";
  position: absolute;
  right: var(--spacing-2);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0.4;
}
.widget_recent_entries {
  position: relative;
}
.widget_recent_entries::before {
  content: "📰";
  position: absolute;
  top: var(--spacing-2);
  right: var(--spacing-2);
  font-size: var(--font-size-lg);
  opacity: 0.3;
  z-index: 1;
}
.widget_recent_entries ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.widget_recent_entries li {
  margin-bottom: var(--spacing-4);
  padding: var(--spacing-3);
  border-bottom: 1px solid var(--color-border-light);
  border-radius: var(--border-radius);
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  background: var(--color-bg-surface);
}
.widget_recent_entries li:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.widget_recent_entries li:hover {
  background: linear-gradient(135deg, var(--color-bg-hover) 0%, rgba(var(--color-secondary-rgb, 46, 93, 56), 0.05) 100%);
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
  -webkit-box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
          box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}
.widget_recent_entries li:hover::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: -webkit-gradient(linear, left top, left bottom, from(var(--color-secondary)), to(var(--color-primary)));
  background: linear-gradient(180deg, var(--color-secondary), var(--color-primary));
  border-radius: 0 var(--border-radius-sm) var(--border-radius-sm) 0;
}
.widget_recent_entries li a {
  text-decoration: none;
  color: var(--color-text);
  font-weight: 600;
  font-size: var(--font-size-base);
  line-height: 1.4;
  display: block;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  position: relative;
  z-index: 2;
}
.widget_recent_entries li a:hover {
  color: var(--color-link);
  text-decoration: none;
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.widget_recent_entries li .post-date {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  color: var(--color-text-light);
  font-size: var(--font-size-sm);
  font-weight: 500;
  margin-top: var(--spacing-2);
  padding: var(--spacing-1) var(--spacing-2);
  background: var(--color-bg-secondary);
  border-radius: var(--border-radius-full);
  border: 1px solid var(--color-border-light);
}
.widget_recent_entries li .post-date::before {
  content: "📅";
  margin-right: var(--spacing-1);
  font-size: var(--font-size-xs);
}
.widget_tag_cloud .tagcloud {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2);
  margin-top: var(--spacing-3);
}
.widget_tag_cloud .tagcloud a {
  display: inline-block;
  padding: var(--spacing-1_5) var(--spacing-3);
  background: linear-gradient(135deg, var(--color-bg-hover) 0%, var(--color-bg-secondary) 100%);
  color: var(--color-text);
  text-decoration: none;
  border-radius: var(--border-radius-full);
  border: 1px solid var(--color-border-light);
  font-size: var(--font-size-sm) !important;
  font-weight: 500;
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.widget_tag_cloud .tagcloud a:hover {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-link) 100%);
  color: var(--color-white);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-box-shadow: 0 4px 12px rgba(var(--color-primary-rgb, 193, 25, 36), 0.3);
          box-shadow: 0 4px 12px rgba(var(--color-primary-rgb, 193, 25, 36), 0.3);
}
.widget_tag_cloud .tagcloud a::before {
  content: "#";
  margin-right: var(--spacing-1);
  opacity: 0.7;
}
.widget_calendar #calendar_wrap {
  margin-top: var(--spacing-3);
}
.widget_calendar table {
  width: 100%;
  border-collapse: collapse;
  background: var(--color-bg-surface);
  border-radius: var(--border-radius);
  overflow: hidden;
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.widget_calendar table caption {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
  color: var(--color-white);
  padding: var(--spacing-3);
  font-weight: 700;
  text-align: center;
  font-size: var(--font-size-lg);
}
.widget_calendar table thead th {
  background: var(--color-bg-hover);
  color: var(--color-text);
  padding: var(--spacing-2);
  font-weight: 600;
  text-align: center;
  border-bottom: 2px solid var(--color-border);
}
.widget_calendar table tbody td {
  padding: var(--spacing-2);
  text-align: center;
  border-bottom: 1px solid var(--color-border-light);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.widget_calendar table tbody td:hover {
  background: var(--color-bg-hover);
}
.widget_calendar table tbody td.pad {
  background: var(--color-bg-secondary);
}
.widget_calendar table tbody td a {
  display: block;
  color: var(--color-link);
  font-weight: 600;
  text-decoration: none;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  margin: 0 auto;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.widget_calendar table tbody td a:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.widget_calendar #next,
.widget_calendar #prev {
  display: inline-block;
  padding: var(--spacing-1) var(--spacing-2);
  background: var(--color-bg-hover);
  color: var(--color-text);
  text-decoration: none;
  border-radius: var(--border-radius);
  font-weight: 600;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  margin: 0 var(--spacing-1);
}
.widget_calendar #next:hover,
.widget_calendar #prev:hover {
  background: var(--color-primary);
  color: var(--color-white);
}
.widget_meta ul {
  list-style: none;
  margin: var(--spacing-3) 0 0 0;
  padding: 0;
}
.widget_meta ul li {
  margin-bottom: var(--spacing-2);
}
.widget_meta ul li a {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  padding: var(--spacing-2) var(--spacing-3);
  background: var(--color-bg-hover);
  color: var(--color-text);
  text-decoration: none;
  border-radius: var(--border-radius);
  font-weight: 500;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.widget_meta ul li a:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
}
.widget_meta ul li a::before {
  content: "🔗";
  margin-right: var(--spacing-2);
  font-size: var(--font-size-sm);
}
.widget_rss ul {
  list-style: none;
  margin: var(--spacing-3) 0 0 0;
  padding: 0;
}
.widget_rss li {
  margin-bottom: var(--spacing-4);
  padding: var(--spacing-3);
  border: 1px solid var(--color-border-light);
  border-radius: var(--border-radius);
  background: var(--color-bg-surface);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.widget_rss li:last-child {
  margin-bottom: 0;
}
.widget_rss li:hover {
  border-color: var(--color-link);
  -webkit-box-shadow: 0 2px 8px rgba(var(--color-primary-rgb, 193, 25, 36), 0.1);
          box-shadow: 0 2px 8px rgba(var(--color-primary-rgb, 193, 25, 36), 0.1);
}
.widget_rss li a {
  display: block;
  color: var(--color-text);
  font-weight: 600;
  text-decoration: none;
  margin-bottom: var(--spacing-1);
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.widget_rss li a:hover {
  color: var(--color-link);
}
.widget_rss li .rss-date,
.widget_rss li .rssSummary {
  color: var(--color-text-light);
  font-size: var(--font-size-sm);
  line-height: 1.5;
}
.widget_rss li .rss-date {
  margin-bottom: var(--spacing-2);
  padding: var(--spacing-1) var(--spacing-2);
  background: var(--color-bg-secondary);
  border-radius: var(--border-radius-full);
  display: inline-block;
  font-weight: 500;
}
.widget_rss li .rss-date::before {
  content: "🕒";
  margin-right: var(--spacing-1);
}
.widget_rss .rss-widget-icon {
  display: inline-block;
  margin-right: var(--spacing-2);
  opacity: 0.7;
}
.widget_archive {
  position: relative;
}
.widget_archive::before {
  content: "📚";
  position: absolute;
  top: var(--spacing-2);
  right: var(--spacing-2);
  font-size: var(--font-size-lg);
  opacity: 0.3;
  z-index: 1;
}
.widget_archive select {
  width: 100%;
  padding: var(--spacing-3);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  background: var(--color-bg-surface);
  color: var(--color-text);
  font-size: var(--font-size-base);
  margin-top: var(--spacing-3);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  cursor: pointer;
}
.widget_archive select:focus {
  border-color: var(--color-link);
  outline: none;
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-focus-rgb, 193, 25, 36), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-focus-rgb, 193, 25, 36), 0.1);
}
.widget_archive select:hover {
  border-color: var(--color-link);
}
.widget_archive ul {
  list-style: none;
  margin: var(--spacing-3) 0 0 0;
  padding: 0;
  position: relative;
}
.widget_archive ul::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: -webkit-gradient(linear, left top, left bottom, from(var(--color-primary)), to(var(--color-secondary)));
  background: linear-gradient(to bottom, var(--color-primary), var(--color-secondary));
  border-radius: var(--border-radius-sm);
  opacity: 0.3;
}
.widget_archive ul li {
  margin-bottom: var(--spacing-3);
  position: relative;
}
.widget_archive ul li a {
  display: block;
  padding: var(--spacing-2) var(--spacing-3) var(--spacing-2) var(--spacing-7);
  background: linear-gradient(135deg, var(--color-bg-hover) 0%, var(--color-bg-secondary) 100%);
  color: var(--color-text);
  text-decoration: none;
  border-radius: var(--border-radius);
  font-weight: 600;
  border: 1px solid var(--color-border-light);
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  z-index: 1;
}
.widget_archive ul li a:hover {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-link) 100%);
  color: var(--color-white);
  -webkit-transform: translateX(8px) translateY(-2px);
          transform: translateX(8px) translateY(-2px);
  -webkit-box-shadow: 0 6px 20px rgba(var(--color-primary-rgb, 193, 25, 36), 0.2);
          box-shadow: 0 6px 20px rgba(var(--color-primary-rgb, 193, 25, 36), 0.2);
  border-color: var(--color-primary);
}
.widget_archive ul li a::before {
  content: "📅";
  margin-right: var(--spacing-2);
  opacity: 0.7;
}
.widget_text {
  position: relative;
}
.widget_text::before {
  content: "📄";
  position: absolute;
  top: var(--spacing-2);
  right: var(--spacing-2);
  font-size: var(--font-size-lg);
  opacity: 0.3;
  z-index: 1;
}
.widget_text .textwidget {
  line-height: 1.7;
  position: relative;
  z-index: 2;
}
.widget_text .textwidget p {
  margin-bottom: var(--spacing-4);
  color: var(--color-text);
}
.widget_text .textwidget p:last-child {
  margin-bottom: 0;
}
.widget_text .textwidget p:first-child {
  font-size: var(--font-size-lg);
  font-weight: 500;
  color: var(--color-text);
}
.widget_text .textwidget h1, .widget_text .textwidget h2, .widget_text .textwidget h3, .widget_text .textwidget h4, .widget_text .textwidget h5, .widget_text .textwidget h6 {
  margin-top: var(--spacing-6);
  margin-bottom: var(--spacing-3);
  color: var(--color-text);
  font-family: var(--font-heading);
  font-weight: 700;
}
.widget_text .textwidget h1:first-child, .widget_text .textwidget h2:first-child, .widget_text .textwidget h3:first-child, .widget_text .textwidget h4:first-child, .widget_text .textwidget h5:first-child, .widget_text .textwidget h6:first-child {
  margin-top: 0;
}
.widget_text .textwidget h1 {
  font-size: var(--font-size-2xl);
}
.widget_text .textwidget h2 {
  font-size: var(--font-size-xl);
}
.widget_text .textwidget h3 {
  font-size: var(--font-size-lg);
}
.widget_text .textwidget h4 {
  font-size: var(--font-size-base);
}
.widget_text .textwidget h5 {
  font-size: var(--font-size-sm);
}
.widget_text .textwidget h6 {
  font-size: var(--font-size-xs);
}
.widget_text .textwidget ul, .widget_text .textwidget ol {
  margin: var(--spacing-4) 0;
  padding-left: var(--spacing-6);
}
.widget_text .textwidget ul li, .widget_text .textwidget ol li {
  margin-bottom: var(--spacing-2);
  line-height: 1.6;
}
.widget_text .textwidget blockquote {
  margin: var(--spacing-4) 0;
  padding: var(--spacing-4);
  border-left: 4px solid var(--color-primary);
  background: var(--color-bg-hover);
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
  font-style: italic;
  color: var(--color-text-light);
}
.widget_text .textwidget blockquote::before {
  content: '"';
  font-size: var(--font-size-3xl);
  color: var(--color-primary);
  position: absolute;
  margin-top: -8px;
  margin-left: -20px;
}
.widget_text .textwidget a {
  color: var(--color-link);
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px solid transparent;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.widget_text .textwidget a:hover {
  color: var(--color-link-hover);
  border-bottom-color: var(--color-link);
  text-decoration: none;
}
.widget_text .textwidget img {
  max-width: 100%;
  height: auto;
  border-radius: var(--border-radius);
  margin: var(--spacing-4) 0;
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.widget_search .ek-simple-search-modal {
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border: none !important;
}
.widget_search .ek-simple-search-modal .ek-search-modal-header,
.widget_search .ek-simple-search-modal .ek-search-modal-title,
.widget_search .ek-simple-search-modal .ek-search-modal-label {
  display: none !important;
}
.widget_search .ek-search-modal-form {
  display: -webkit-box !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: var(--spacing-3);
  margin-top: 0;
  padding: var(--spacing-4);
  background: var(--color-bg-secondary);
  border-radius: var(--border-radius-lg);
  border: 2px solid var(--color-border-light);
}
.widget_search .ek-search-modal-form .ek-search-modal-field {
  width: 100%;
  padding: var(--spacing-4);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  background: var(--color-white);
  color: var(--color-text);
  font-size: var(--font-size-lg);
  font-weight: 500;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.widget_search .ek-search-modal-form .ek-search-modal-field::-webkit-input-placeholder {
  color: var(--color-text-light);
  font-weight: 400;
}
.widget_search .ek-search-modal-form .ek-search-modal-field::-moz-placeholder {
  color: var(--color-text-light);
  font-weight: 400;
}
.widget_search .ek-search-modal-form .ek-search-modal-field::placeholder {
  color: var(--color-text-light);
  font-weight: 400;
}
.widget_search .ek-search-modal-form .ek-search-modal-field:focus {
  border-color: var(--color-link);
  outline: none;
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link-rgb, 193, 25, 36), 0.1);
          box-shadow: 0 0 0 3px rgba(var(--color-link-rgb, 193, 25, 36), 0.1);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.widget_search .ek-search-modal-form .ek-search-modal-field:hover {
  border-color: var(--color-link);
}
.widget_search .ek-search-modal-form .ek-search-modal-submit {
  align-self: flex-start;
  padding: var(--spacing-3) var(--spacing-6);
  background: linear-gradient(135deg, var(--color-primary), var(--color-link));
  color: var(--color-white);
  border: none;
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-base);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-box-shadow: 0 2px 4px rgba(var(--color-primary-rgb, 193, 25, 36), 0.2);
          box-shadow: 0 2px 4px rgba(var(--color-primary-rgb, 193, 25, 36), 0.2);
}
.widget_search .ek-search-modal-form .ek-search-modal-submit:hover {
  background: linear-gradient(135deg, var(--color-link), var(--color-primary));
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-box-shadow: 0 4px 8px rgba(var(--color-primary-rgb, 193, 25, 36), 0.3);
          box-shadow: 0 4px 8px rgba(var(--color-primary-rgb, 193, 25, 36), 0.3);
}
.widget_search .ek-search-modal-form .ek-search-modal-submit:active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-box-shadow: 0 1px 2px rgba(var(--color-primary-rgb, 193, 25, 36), 0.2);
          box-shadow: 0 1px 2px rgba(var(--color-primary-rgb, 193, 25, 36), 0.2);
}
.widget_search .ek-search-modal-form .ek-search-modal-submit:focus {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
}
.widget_search .search-form {
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-2);
  margin-top: var(--spacing-3);
}
.widget_search .search-form input[type=search] {
  -webkit-box-flex: 1;
          flex: 1;
  padding: var(--spacing-3);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  background: var(--color-bg-surface);
  color: var(--color-text);
  font-size: var(--font-size-base);
}
.widget_search .search-form input[type=search]::-webkit-input-placeholder {
  color: var(--color-text-light);
}
.widget_search .search-form input[type=search]::-moz-placeholder {
  color: var(--color-text-light);
}
.widget_search .search-form input[type=search]::placeholder {
  color: var(--color-text-light);
}
.widget_search .search-form input[type=search]:focus {
  outline: 2px solid var(--color-link);
  outline-offset: -2px;
}
.widget_search .search-form input[type=submit] {
  padding: var(--spacing-3) var(--spacing-4);
  background: var(--color-link);
  color: var(--color-white);
  border: 1px solid var(--color-link);
  border-radius: var(--border-radius);
  font-size: var(--font-size-base);
  font-weight: 500;
  cursor: pointer;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
.widget_search .search-form input[type=submit]:hover {
  background: var(--color-link-hover);
}
.widget_search .search-form input[type=submit]:focus {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
}
.ek-footer-widget-area .ek-widget {
  background: transparent;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0;
  margin-bottom: var(--spacing-8);
}
.ek-footer-widget-area .ek-widget:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
  background: transparent;
}
.ek-footer-widget-area .ek-widget .ek-widget-title {
  color: var(--color-text-main);
  border-bottom-color: var(--color-border);
  font-size: var(--font-size-lg);
}
.ek-footer-widget-area .ek-widget .ek-widget-title::after {
  background: -webkit-gradient(linear, left top, right top, from(var(--color-text-light)), to(var(--color-border)));
  background: linear-gradient(90deg, var(--color-text-light), var(--color-border));
}
.ek-footer-widget-area .widget_categories .cat-item {
  margin-bottom: var(--spacing-2);
  padding: var(--spacing-1) 0;
}
.ek-footer-widget-area .widget_categories .cat-item:hover {
  background: rgba(var(--color-link-rgb, 193, 25, 36), 0.05);
  padding-left: var(--spacing-2);
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.ek-footer-widget-area .widget_categories .cat-item a::after {
  display: none;
}
.ek-footer-widget-area .widget_categories .cat-item-count {
  background: var(--color-bg-secondary);
  color: var(--color-text-light);
}
.ek-footer-widget-area .widget_recent_entries li {
  margin-bottom: var(--spacing-2);
  padding: var(--spacing-2) 0;
  border-bottom: 1px solid rgba(var(--color-border-rgb, 224, 224, 224), 0.3);
}
.ek-footer-widget-area .widget_recent_entries li:hover {
  background: rgba(var(--color-link-rgb, 193, 25, 36), 0.05);
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.ek-footer-widget-area .widget_archive ul li a {
  padding: var(--spacing-1_5) var(--spacing-2);
  font-size: var(--font-size-sm);
}
.ek-footer-widget-area .widget_text .textwidget {
  font-size: var(--font-size-sm);
  line-height: 1.6;
}
@media (min-width: 768px) {
  .ek-widget {
    padding: var(--spacing-5);
    margin-bottom: var(--spacing-6);
  }
  .widget_categories .cat-item {
    margin-bottom: var(--spacing-2_5);
  }
  .widget_categories .cat-item:hover {
    padding-left: var(--spacing-3);
    -webkit-transform: translateX(3px);
            transform: translateX(3px);
  }
  .widget_recent_entries li {
    margin-bottom: var(--spacing-3);
    padding: var(--spacing-2_5);
  }
  .widget_archive ul li a {
    padding: var(--spacing-2) var(--spacing-2_5);
  }
  .ek-footer-widget-area .ek-widget {
    margin-bottom: var(--spacing-6);
  }
}
@media (min-width: 1024px) {
  /* Enhanced desktop styling for all widgets */
  .ek-widget {
    padding: var(--spacing-8);
    margin-bottom: var(--spacing-10);
    max-width: 100%;
  }
  .widget_categories .cat-item {
    margin-bottom: var(--spacing-3);
  }
  .widget_categories .cat-item:hover {
    padding-left: var(--spacing-4);
    -webkit-transform: translateX(6px);
            transform: translateX(6px);
  }
  .widget_categories .cat-item:hover .cat-item-count {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  .widget_recent_entries li {
    margin-bottom: var(--spacing-5);
    padding: var(--spacing-4);
  }
  .widget_recent_entries li:hover {
    -webkit-transform: translateX(6px);
            transform: translateX(6px);
  }
  .widget_recent_entries li:hover .post-date {
    -webkit-transform: translateX(2px);
            transform: translateX(2px);
  }
  .widget_archive ul li a:hover {
    -webkit-transform: translateX(6px) translateY(-3px);
            transform: translateX(6px) translateY(-3px);
  }
  .widget_tag_cloud .tagcloud a:hover {
    -webkit-transform: translateY(-3px) scale(1.05);
            transform: translateY(-3px) scale(1.05);
  }
  .widget_search .search-form input[type=submit]:hover {
    -webkit-transform: translateY(-50%) scale(1.1);
            transform: translateY(-50%) scale(1.1);
  }
  .ek-footer-widget-area .ek-widget {
    margin-bottom: var(--spacing-10);
  }
}
@media (prefers-color-scheme: dark) {
  .ek-widget::before {
    opacity: 0.2;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ek-widget {
    -webkit-transition: none;
    transition: none;
  }
  .ek-widget * {
    -webkit-transition: none;
    transition: none;
    -webkit-animation: none;
            animation: none;
  }
  .widget_categories .cat-item:hover {
    -webkit-transform: none;
            transform: none;
  }
  .widget_recent_entries li:hover {
    -webkit-transform: none;
            transform: none;
  }
  .widget_archive ul li a:hover {
    -webkit-transform: none;
            transform: none;
  }
  .widget_search .search-form input[type=submit]:hover {
    -webkit-transform: none;
            transform: none;
  }
}
@media (prefers-contrast: high) {
  .ek-widget {
    border: 2px solid var(--color-border);
  }
  .ek-widget .ek-widget-title::after {
    background: var(--color-text);
  }
  .widget_categories .cat-item {
    border-bottom: 2px solid var(--color-border);
  }
  .widget_categories .cat-item:hover {
    background: var(--color-bg-surface);
  }
  .widget_categories .cat-item a::after {
    background: var(--color-text);
  }
}
@media print {
  .ek-widget {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid;
    border: 1px solid #000;
    background: #fff !important;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .ek-widget .ek-widget-title {
    color: #000;
    border-bottom: 2px solid #000;
  }
  .ek-widget .ek-widget-title::after {
    display: none;
  }
  .widget_categories ul,
  .widget_recent_entries ul,
  .widget_archive ul {
    list-style: disc inside;
  }
  .widget_categories a,
  .widget_recent_entries a,
  .widget_archive a {
    color: #000 !important;
    text-decoration: underline;
  }
}
.search-result-item {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.search-result-item:hover {
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
  border-color: var(--color-border-light);
}
@media (min-width: 768px) {
  .search-result-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
  }
}
.search-result-content {
  -webkit-box-flex: 1;
          flex: 1;
  padding: var(--spacing-6);
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
}
@media (min-width: 768px) {
  .search-result-content {
    padding: var(--spacing-8);
  }
}
.search-result-header {
  margin-bottom: var(--spacing-4);
}
.search-result-meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-3);
  margin-bottom: var(--spacing-3);
  flex-wrap: wrap;
}
.result-category-pill {
  display: inline-block;
  padding: var(--spacing-1) var(--spacing-3);
  background: var(--color-link);
  color: var(--color-white);
  text-decoration: none;
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.result-category-pill:hover {
  background: var(--color-link-hover);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.result-date {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  font-style: italic;
}
.search-result-title {
  margin: 0;
  font-size: var(--font-size-xl);
  line-height: var(--line-height-tight);
}
.search-result-title a {
  color: var(--color-forest-green);
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.search-result-title a:hover {
  color: var(--color-link);
}
.search-result-excerpt {
  -webkit-box-flex: 1;
          flex: 1;
  margin-bottom: var(--spacing-4);
}
.search-result-excerpt p {
  margin: 0;
  font-size: var(--font-size-base);
  line-height: var(--line-height-relaxed);
  color: var(--color-text-main);
}
.search-result-footer {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  padding-top: var(--spacing-4);
  border-top: 1px solid var(--color-border-light);
  flex-wrap: wrap;
  gap: var(--spacing-2);
}
@media (max-width: 767px) {
  .search-result-footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: flex-start;
    gap: var(--spacing-3);
  }
}
.read-more-link {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-1_5);
  color: var(--color-link);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.read-more-link:hover {
  color: var(--color-link-hover);
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.read-more-link .read-more-arrow {
  width: 1rem;
  height: 1rem;
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.read-more-link:hover .read-more-arrow {
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.result-author {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
}
.result-author a {
  color: var(--color-forest-green);
  text-decoration: none;
}
.result-author a:hover {
  color: var(--color-link);
}
.search-result-thumbnail {
  position: relative;
  background: var(--color-bg-hover);
}
.search-result-thumbnail .thumbnail-link {
  display: block;
  position: relative;
  overflow: hidden;
}
.search-result-thumbnail img {
  width: 100%;
  height: 12.5rem; /* 200px */
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
}
@media (min-width: 768px) {
  .search-result-thumbnail img {
    height: 100%;
    min-height: 15rem; /* 240px */
  }
}
.search-result-thumbnail .thumbnail-placeholder {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  height: 12.5rem; /* 200px */
  color: var(--color-text-muted);
  background: linear-gradient(135deg, var(--color-bg-hover) 0%, var(--color-gray-100) 100%);
}
@media (min-width: 768px) {
  .search-result-thumbnail .thumbnail-placeholder {
    height: 100%;
    min-height: 15rem; /* 240px */
  }
}
.search-result-thumbnail .thumbnail-placeholder svg {
  width: 3rem;
  height: 3rem;
  opacity: 0.5;
}
.search-result-item:hover .search-result-thumbnail img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.search-highlight {
  background: rgba(var(--color-link), 0.15);
  padding: 0.125rem 0.25rem;
  border-radius: 0.125rem;
  font-weight: var(--font-weight-semibold);
  color: var(--color-link);
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
@media (min-width: 768px) {
  .search-result-content {
    -webkit-box-ordinal-group: 2;
            order: 1;
  }
  .search-result-thumbnail {
    -webkit-box-ordinal-group: 3;
            order: 2;
    -webkit-box-flex: 0;
            flex: 0 0 40%;
    max-width: 18.75rem; /* 300px */
  }
}
@media (max-width: 767px) {
  .search-result-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
  .search-result-content {
    padding: var(--spacing-4);
  }
  .search-result-thumbnail {
    -webkit-box-ordinal-group: 0;
            order: -1;
  }
  .search-result-thumbnail img,
  .thumbnail-placeholder {
    height: 10rem; /* 160px */
  }
}
.ek-posts-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-6);
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
}
@media (min-width: 768px) {
  .ek-posts-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-6);
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
@media (min-width: 1024px) {
  .ek-posts-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-8);
  }
}
.ek-post-card {
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-border);
  overflow: hidden;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-post-card:hover {
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
  border-color: var(--color-border-light);
}
@media (min-width: 768px) {
  .ek-post-card--featured {
    grid-column: 1/-1;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-align: stretch;
            align-items: stretch;
  }
}
@media (min-width: 1024px) {
  .ek-post-card--featured {
    grid-column: 1/-1;
  }
}
@media (min-width: 768px) {
  .ek-post-card--large {
    grid-column: span 1;
  }
}
.ek-post-card__image {
  position: relative;
  overflow: hidden;
  background: var(--color-bg-hover);
}
.ek-post-card--featured .ek-post-card__image {
  -webkit-box-flex: 0;
          flex: 0 0 50%;
}
@media (min-width: 768px) {
  .ek-post-card--featured .ek-post-card__image {
    min-height: 25rem; /* 400px */
  }
}
@media (min-width: 1024px) {
  .ek-post-card--featured .ek-post-card__image {
    min-height: 31.25rem; /* 500px */
  }
}
.ek-post-card__image:not(.ek-post-card--featured .ek-post-card__image) {
  height: 13.75rem; /* 220px */
}
@media (min-width: 768px) {
  .ek-post-card__image:not(.ek-post-card--featured .ek-post-card__image) {
    height: 11.25rem; /* 180px */
  }
}
@media (min-width: 1024px) {
  .ek-post-card__image:not(.ek-post-card--featured .ek-post-card__image) {
    height: 12.5rem; /* 200px */
  }
}
.ek-post-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
  display: block;
}
.ek-post-card__image:hover img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-post-card__image .post-format-badge {
  position: absolute;
  top: var(--spacing-3);
  right: var(--spacing-3);
  background: rgba(255, 255, 255, var(--opacity-95));
  -webkit-backdrop-filter: blur(var(--blur-amount));
          backdrop-filter: blur(var(--blur-amount));
  border-radius: var(--border-radius);
  padding: var(--spacing-1) var(--spacing-2);
  -webkit-box-shadow: 0 var(--spacing-1) var(--spacing-4) rgba(0, 0, 0, var(--opacity-10));
          box-shadow: 0 var(--spacing-1) var(--spacing-4) rgba(0, 0, 0, var(--opacity-10)); /* 8px */
}
.ek-post-card__image .post-format-badge .post-format-label {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  text-transform: uppercase;
  letter-spacing: 0.025em;
}
.ek-post-card__content {
  padding: var(--spacing-4);
}
.ek-post-card--featured .ek-post-card__content {
  -webkit-box-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  padding: var(--spacing-6);
}
@media (min-width: 768px) {
  .ek-post-card--featured .ek-post-card__content {
    padding: var(--spacing-8);
  }
}
.ek-post-categories {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2);
  margin-bottom: var(--spacing-3);
}
.ek-post-category {
  display: inline-block;
  background: var(--color-link);
  color: #ffffff !important;
  padding: var(--spacing-1) var(--spacing-3);
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.025em;
  text-decoration: none;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-post-category:hover {
  background: var(--color-link-hover);
  color: #ffffff !important;
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
}
.ek-post-card__header {
  margin-bottom: var(--spacing-3);
}
.ek-post-card--featured .ek-post-card__header .post-title {
  font-size: var(--font-size-3xl);
  line-height: 1.2;
  margin-bottom: var(--spacing-4);
}
@media (min-width: 768px) {
  .ek-post-card--featured .ek-post-card__header .post-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-post-card__header .post-title,
.ek-post-card__header .ek-post-title {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  margin: 0 0 var(--spacing-2) 0;
  color: var(--color-text-main);
}
.ek-post-card__header .post-title a,
.ek-post-card__header .ek-post-title a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
  display: block;
}
.ek-post-card__header .post-title a:hover, .ek-post-card__header .post-title a:focus,
.ek-post-card__header .ek-post-title a:hover,
.ek-post-card__header .ek-post-title a:focus {
  color: var(--color-link);
  text-decoration: underline;
}
@media (min-width: 768px) {
  .ek-post-card__header .post-title,
  .ek-post-card__header .ek-post-title {
    font-size: var(--font-size-lg);
  }
}
@media (min-width: 1024px) {
  .ek-post-card__header .post-title,
  .ek-post-card__header .ek-post-title {
    font-size: var(--font-size-xl);
  }
}
.ek-post-excerpt {
  color: var(--color-text-light);
  line-height: 1.6;
  margin-bottom: var(--spacing-4);
}
.ek-post-card--featured .ek-post-excerpt {
  font-size: var(--font-size-lg);
  margin-bottom: var(--spacing-5);
}
.ek-post-card__meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
          align-items: flex-end;
  flex-wrap: wrap;
  gap: var(--spacing-3);
}
.ek-post-card--featured .ek-post-card__meta {
  margin-top: auto;
}
.ek-post-meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  flex-wrap: wrap;
  gap: var(--spacing-3);
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}
@media (max-width: 767px) {
  .ek-post-meta {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: flex-start;
    gap: var(--spacing-2);
  }
}
.ek-post-date {
  color: var(--color-text-light);
  font-weight: var(--font-weight-medium);
}
.ek-meta-separator {
  color: var(--color-border);
  font-weight: 400;
}
.ek-post-author {
  color: var(--color-text-light);
}
.ek-post-author a {
  color: var(--color-link);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
}
.ek-post-author a:hover {
  color: var(--color-link-hover);
  text-decoration: underline;
}
.ek-reading-time {
  color: var(--color-text-muted);
  font-weight: var(--font-weight-medium);
}
.ek-read-more-link {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  color: var(--color-link);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  margin-left: auto;
}
.ek-read-more-link:hover {
  color: var(--color-link-hover);
  -webkit-transform: translateX(var(--spacing-2_5));
          transform: translateX(var(--spacing-2_5)); /* 10px */
}
.ek-read-more-link .ek-read-more-arrow {
  font-size: var(--font-size-base);
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.ek-read-more-link:hover .ek-read-more-arrow {
  -webkit-transform: translateX(var(--spacing-1));
          transform: translateX(var(--spacing-1)); /* 4px */
}
.ek-posts-pagination,
.category-pagination,
.resources-pagination,
.maps-pagination,
.partner-pagination {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
  padding: var(--spacing-6) 0;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .ek-posts-pagination,
  .category-pagination,
  .resources-pagination,
  .maps-pagination,
  .partner-pagination {
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
.ek-posts-pagination .page-numbers,
.category-pagination .page-numbers,
.resources-pagination .page-numbers,
.maps-pagination .page-numbers,
.partner-pagination .page-numbers {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-width: 2.75rem; /* 44px - accessibility minimum */
  height: 2.75rem; /* 44px - accessibility minimum */
  padding: var(--spacing-2) var(--spacing-3);
  background: var(--color-bg-surface);
  border: 2px solid var(--color-border);
  border-radius: var(--border-radius-md);
  color: var(--color-text-main);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-base);
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  position: relative;
}
.ek-posts-pagination .page-numbers:hover,
.category-pagination .page-numbers:hover,
.resources-pagination .page-numbers:hover,
.maps-pagination .page-numbers:hover,
.partner-pagination .page-numbers:hover {
  background: var(--color-bg-hover);
  border-color: var(--color-link);
  color: var(--color-link);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
}
.ek-posts-pagination .page-numbers:focus, .ek-posts-pagination .page-numbers:focus-visible,
.category-pagination .page-numbers:focus,
.category-pagination .page-numbers:focus-visible,
.resources-pagination .page-numbers:focus,
.resources-pagination .page-numbers:focus-visible,
.maps-pagination .page-numbers:focus,
.maps-pagination .page-numbers:focus-visible,
.partner-pagination .page-numbers:focus,
.partner-pagination .page-numbers:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  -webkit-box-shadow: 0 0 0 3px var(--color-focus-ring), var(--box-shadow-md);
          box-shadow: 0 0 0 3px var(--color-focus-ring), var(--box-shadow-md);
}
.ek-posts-pagination .page-numbers.current,
.category-pagination .page-numbers.current,
.resources-pagination .page-numbers.current,
.maps-pagination .page-numbers.current,
.partner-pagination .page-numbers.current {
  background: var(--color-link);
  border-color: var(--color-link);
  color: var(--color-white);
  font-weight: var(--font-weight-semibold);
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
  cursor: default;
}
.ek-posts-pagination .page-numbers.current:hover,
.category-pagination .page-numbers.current:hover,
.resources-pagination .page-numbers.current:hover,
.maps-pagination .page-numbers.current:hover,
.partner-pagination .page-numbers.current:hover {
  -webkit-transform: none;
          transform: none;
  background: var(--color-link);
  color: var(--color-white);
}
.ek-posts-pagination .page-numbers.prev, .ek-posts-pagination .page-numbers.next,
.category-pagination .page-numbers.prev,
.category-pagination .page-numbers.next,
.resources-pagination .page-numbers.prev,
.resources-pagination .page-numbers.next,
.maps-pagination .page-numbers.prev,
.maps-pagination .page-numbers.next,
.partner-pagination .page-numbers.prev,
.partner-pagination .page-numbers.next {
  font-weight: var(--font-weight-semibold);
  padding: var(--spacing-2) var(--spacing-5);
  min-width: auto;
  background: var(--color-bg-hover);
  border-color: var(--color-border);
}
.ek-posts-pagination .page-numbers.prev:hover, .ek-posts-pagination .page-numbers.next:hover,
.category-pagination .page-numbers.prev:hover,
.category-pagination .page-numbers.next:hover,
.resources-pagination .page-numbers.prev:hover,
.resources-pagination .page-numbers.next:hover,
.maps-pagination .page-numbers.prev:hover,
.maps-pagination .page-numbers.next:hover,
.partner-pagination .page-numbers.prev:hover,
.partner-pagination .page-numbers.next:hover {
  background: var(--color-link);
  border-color: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateX(-2px);
          transform: translateX(-2px);
}
.ek-posts-pagination .page-numbers.prev.next:hover, .ek-posts-pagination .page-numbers.next.next:hover,
.category-pagination .page-numbers.prev.next:hover,
.category-pagination .page-numbers.next.next:hover,
.resources-pagination .page-numbers.prev.next:hover,
.resources-pagination .page-numbers.next.next:hover,
.maps-pagination .page-numbers.prev.next:hover,
.maps-pagination .page-numbers.next.next:hover,
.partner-pagination .page-numbers.prev.next:hover,
.partner-pagination .page-numbers.next.next:hover {
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.ek-posts-pagination .page-numbers.dots,
.category-pagination .page-numbers.dots,
.resources-pagination .page-numbers.dots,
.maps-pagination .page-numbers.dots,
.partner-pagination .page-numbers.dots {
  border: none;
  background: transparent;
  color: var(--color-text-muted);
  cursor: default;
  min-width: auto;
  padding: var(--spacing-2);
}
.ek-posts-pagination .page-numbers.dots:hover,
.category-pagination .page-numbers.dots:hover,
.resources-pagination .page-numbers.dots:hover,
.maps-pagination .page-numbers.dots:hover,
.partner-pagination .page-numbers.dots:hover {
  background: transparent;
  color: var(--color-text-muted);
  -webkit-transform: none;
          transform: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
@media (max-width: 767px) {
  .ek-posts-pagination,
  .category-pagination,
  .resources-pagination,
  .maps-pagination,
  .partner-pagination {
    -webkit-box-pack: center;
            justify-content: center;
    gap: var(--spacing-1);
  }
  .ek-posts-pagination .page-numbers,
  .category-pagination .page-numbers,
  .resources-pagination .page-numbers,
  .maps-pagination .page-numbers,
  .partner-pagination .page-numbers {
    min-width: 2.75rem; /* 44px - maintain accessibility */
    height: 2.75rem; /* 44px - maintain accessibility */
    font-size: var(--font-size-sm);
    padding: var(--spacing-2);
  }
  .ek-posts-pagination .page-numbers.prev, .ek-posts-pagination .page-numbers.next,
  .category-pagination .page-numbers.prev,
  .category-pagination .page-numbers.next,
  .resources-pagination .page-numbers.prev,
  .resources-pagination .page-numbers.next,
  .maps-pagination .page-numbers.prev,
  .maps-pagination .page-numbers.next,
  .partner-pagination .page-numbers.prev,
  .partner-pagination .page-numbers.next {
    padding: var(--spacing-2) var(--spacing-3);
    font-size: var(--font-size-xs);
  }
}
.ek-no-posts-found {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-height: 25rem; /* 400px */
  padding: var(--spacing-12) var(--spacing-6);
  text-align: center;
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-border);
}
.ek-no-posts-found .ek-no-posts-content {
  max-width: 31.25rem; /* 500px */
}
.ek-no-posts-found .ek-no-posts-title {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-4) 0;
}
.ek-no-posts-found .ek-no-posts-message {
  font-size: var(--font-size-lg);
  color: var(--color-text-light);
  line-height: 1.6;
  margin: 0 0 var(--spacing-6) 0;
}
.ek-no-posts-found .ek-search-form {
  max-width: 18.75rem; /* 300px */
  margin: 0 auto;
}
@media (max-width: 767px) {
  .ek-no-posts-found {
    padding: var(--spacing-8) var(--spacing-4);
    min-height: 18.75rem; /* 300px */
  }
  .ek-no-posts-found .ek-no-posts-title {
    font-size: var(--font-size-xl);
  }
  .ek-no-posts-found .ek-no-posts-message {
    font-size: var(--font-size-base);
  }
}
.ek-archive-header {
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
}
@media (min-width: 768px) {
  .ek-archive-header {
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
.ek-archive-header .ek-page-header {
  text-align: center;
  padding: var(--spacing-8) 0;
  border-bottom: 1px solid var(--color-border);
  margin-bottom: var(--spacing-8);
}
@media (min-width: 768px) {
  .ek-archive-header .ek-page-header {
    padding: var(--spacing-12) 0;
    margin-bottom: var(--spacing-10);
  }
}
.ek-archive-header .ek-archive-header-content {
  max-width: 50rem; /* 800px */
  margin: 0 auto;
}
.ek-archive-header .ek-archive-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-4) 0;
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .ek-archive-header .ek-archive-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-archive-header .ek-page-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-4) 0;
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .ek-archive-header .ek-page-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-archive-header .ek-archive-description {
  font-size: var(--font-size-lg);
  color: var(--color-text-light);
  line-height: 1.6;
}
.ek-archive-header .ek-archive-description p {
  margin-bottom: var(--spacing-4);
}
.ek-archive-header .ek-archive-description p:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ek-archive-header {
    margin: var(--spacing-12) 0 var(--spacing-8) 0;
  }
  .ek-archive-header .ek-archive-title,
  .ek-archive-header .ek-page-title {
    font-size: var(--font-size-2xl);
  }
  .ek-archive-header .ek-archive-description {
    font-size: var(--font-size-base);
  }
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .ek-post-card {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
  }
  :root:not([data-theme=light]) .ek-post-card:hover {
    border-color: var(--color-gray-600);
  }
  :root:not([data-theme=light]) .ek-post-categories .ek-post-category {
    background: var(--color-link);
    color: #ffffff !important;
  }
  :root:not([data-theme=light]) .ek-post-categories .ek-post-category:hover {
    background: var(--color-link-hover);
    color: #ffffff !important;
  }
  :root:not([data-theme=light]) .post-title a {
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .post-title a:hover {
    color: var(--color-link);
  }
  :root:not([data-theme=light]) .ek-post-excerpt {
    color: var(--color-gray-300);
  }
  :root:not([data-theme=light]) .ek-post-meta {
    color: var(--color-gray-400);
  }
  :root:not([data-theme=light]) .ek-post-date,
  :root:not([data-theme=light]) .ek-post-author {
    color: var(--color-gray-400);
  }
  :root:not([data-theme=light]) .ek-posts-pagination .ek-page-numbers {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
    color: var(--color-gray-200);
  }
  :root:not([data-theme=light]) .ek-posts-pagination .ek-page-numbers:hover, :root:not([data-theme=light]) .ek-posts-pagination .ek-page-numbers.ek-current {
    background: var(--color-link);
    border-color: var(--color-link);
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .ek-no-posts-found {
    background: var(--color-gray-800);
    border-color: var(--color-gray-700);
  }
  :root:not([data-theme=light]) .ek-no-posts-title {
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .ek-no-posts-message {
    color: var(--color-gray-300);
  }
  :root:not([data-theme=light]) .ek-archive-header .ek-archive-title,
  :root:not([data-theme=light]) .ek-archive-header .ek-page-title {
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .ek-archive-description {
    color: var(--color-gray-300);
  }
}
[data-theme=dark] .ek-post-card {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
}
[data-theme=dark] .ek-post-card:hover {
  border-color: var(--color-gray-600);
}
[data-theme=dark] .ek-post-categories .ek-post-category {
  background: var(--color-link);
  color: #ffffff !important;
}
[data-theme=dark] .ek-post-categories .ek-post-category:hover {
  background: var(--color-link-hover);
  color: #ffffff !important;
}
[data-theme=dark] .post-title a {
  color: var(--color-white);
}
[data-theme=dark] .post-title a:hover {
  color: var(--color-link);
}
[data-theme=dark] .ek-post-excerpt {
  color: var(--color-gray-300);
}
[data-theme=dark] .ek-post-meta {
  color: var(--color-gray-400);
}
[data-theme=dark] .ek-post-date,
[data-theme=dark] .ek-post-author {
  color: var(--color-gray-400);
}
[data-theme=dark] .ek-posts-pagination .ek-page-numbers {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
  color: var(--color-gray-200);
}
[data-theme=dark] .ek-posts-pagination .ek-page-numbers:hover, [data-theme=dark] .ek-posts-pagination .ek-page-numbers.ek-current {
  background: var(--color-link);
  border-color: var(--color-link);
  color: var(--color-white);
}
[data-theme=dark] .ek-no-posts-found {
  background: var(--color-gray-800);
  border-color: var(--color-gray-700);
}
[data-theme=dark] .ek-no-posts-title {
  color: var(--color-white);
}
[data-theme=dark] .ek-no-posts-message {
  color: var(--color-gray-300);
}
[data-theme=dark] .ek-archive-header .ek-archive-title,
[data-theme=dark] .ek-archive-header .ek-page-title {
  color: var(--color-white);
}
[data-theme=dark] .ek-archive-description {
  color: var(--color-gray-300);
}
.tag-post-item {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  background: transparent;
  border: none;
  border-radius: 0;
  overflow: visible;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  position: relative;
}
.tag-post-item:hover {
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
}
.tag-post-thumb {
  position: relative;
  margin-bottom: var(--spacing-4);
  overflow: hidden;
  border-radius: var(--border-radius-lg);
}
.tag-post-thumb a {
  display: block;
  text-decoration: none;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
}
.tag-post-thumb a:focus {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.tag-post-thumb img {
  width: 100%;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
}
.tag-post-thumb img:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.tag-no-image-placeholder {
  width: 100%;
  height: 200px;
  background: linear-gradient(135deg, var(--color-border-light) 0%, var(--color-border) 100%);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  color: var(--color-text-light);
  font-size: var(--font-size-lg);
}
.tag-no-image-placeholder::before {
  content: "📷";
  font-size: var(--font-size-2xl);
}
.tag-topic-pill {
  position: absolute;
  top: var(--spacing-3);
  right: var(--spacing-3);
  display: inline-block;
  padding: var(--spacing-1) var(--spacing-3);
  background: rgba(0, 0, 0, 0.7);
  color: var(--color-white);
  text-decoration: none;
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}
.tag-topic-pill:hover {
  background: rgba(0, 0, 0, 0.9);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.tag-post-content {
  -webkit-box-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
}
.tag-post-meta {
  margin-bottom: var(--spacing-2);
}
.tag-post-meta .result-date,
.tag-post-meta .tag-post-date {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  font-style: italic;
}
.tag-post-title {
  margin: 0 0 var(--spacing-3) 0;
  font-size: var(--font-size-lg);
  line-height: var(--line-height-tight);
  font-weight: var(--font-weight-semibold);
}
.tag-post-title a {
  color: var(--color-text-main);
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.tag-post-title a:hover {
  color: var(--color-link);
}
.tag-post-title a:focus {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.tag-post-excerpt {
  -webkit-box-flex: 1;
          flex: 1;
  color: var(--color-text-light);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-relaxed);
}
.tag-post-excerpt p:last-child {
  margin-bottom: 0;
}
.ek-category-masonry {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-6);
  margin-bottom: var(--spacing-12);
}
@media (min-width: 768px) {
  .ek-category-masonry {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-5);
  }
}
@media (min-width: 1024px) {
  .ek-category-masonry {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-6);
  }
}
@supports (grid-template-rows: masonry) {
  .ek-category-masonry {
    grid-template-rows: masonry;
  }
}
@supports not (grid-template-rows: masonry) {
  .ek-category-masonry {
    grid-auto-rows: -webkit-min-content;
    grid-auto-rows: min-content;
  }
}
.ek-category-masonry.masonry-loaded {
  -webkit-animation: fadeInUp 0.6s ease-out;
          animation: fadeInUp 0.6s ease-out;
}
.ek-category-masonry.masonry-updated {
  -webkit-animation: masonryUpdate 0.3s ease-out;
          animation: masonryUpdate 0.3s ease-out;
}
.ek-category-masonry.masonry-updating {
  -webkit-transition: -webkit-transform 0.1s ease-out;
  transition: -webkit-transform 0.1s ease-out;
  transition: transform 0.1s ease-out;
  transition: transform 0.1s ease-out, -webkit-transform 0.1s ease-out;
}
.category-card {
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
}
.category-card.new-post {
  -webkit-animation: postEntrance 0.4s ease-out;
          animation: postEntrance 0.4s ease-out;
}
.category-card {
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.category-card:hover {
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
  border-color: var(--color-border-light);
}
.category-card-thumb {
  position: relative;
  background: var(--color-bg-hover);
  height: 12.5rem; /* 200px */
}
@media (min-width: 768px) {
  .category-card-thumb {
    height: 10rem; /* 160px */
  }
}
@media (min-width: 1024px) {
  .category-card-thumb {
    height: 11.25rem; /* 180px */
  }
}
.category-card-thumb a {
  display: block;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.category-card-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
  display: block;
}
.category-card:hover .category-card-thumb img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.category-card-thumb .topic-pill {
  position: absolute;
  top: var(--spacing-3);
  right: var(--spacing-3);
  height: auto;
  background: rgba(255, 255, 255, var(--opacity-95));
  -webkit-backdrop-filter: blur(var(--blur-amount));
          backdrop-filter: blur(var(--blur-amount));
  border-radius: var(--border-radius);
  padding: var(--spacing-1) var(--spacing-2);
  -webkit-box-shadow: 0 var(--spacing-1) var(--spacing-4) rgba(0, 0, 0, var(--opacity-10));
          box-shadow: 0 var(--spacing-1) var(--spacing-4) rgba(0, 0, 0, var(--opacity-10)); /* 8px */
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  color: var(--color-white);
  text-transform: uppercase;
  letter-spacing: 0.025em;
  text-decoration: none;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.category-card-thumb .topic-pill:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
}
.category-card-thumb .no-image-placeholder {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  height: 100%;
  color: var(--color-text-muted);
  background: linear-gradient(135deg, var(--color-bg-hover) 0%, var(--color-gray-100) 100%);
}
.category-card-thumb .no-image-placeholder::before {
  content: "";
  width: 3rem;
  height: 3rem;
  background: currentcolor;
  opacity: 0.3;
  border-radius: 50%;
  display: block;
}
.category-card-content {
  padding: var(--spacing-4);
}
@media (min-width: 768px) {
  .category-card-content {
    padding: var(--spacing-3);
  }
}
.category-card-meta {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  font-style: italic;
  margin-bottom: var(--spacing-2);
}
.category-card-title {
  margin: 0 0 var(--spacing-3) 0;
}
.category-card-title h2 {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  margin: 0 0 var(--spacing-2) 0;
  color: var(--color-text-main);
}
@media (min-width: 768px) {
  .category-card-title h2 {
    font-size: var(--font-size-lg);
  }
}
@media (min-width: 1024px) {
  .category-card-title h2 {
    font-size: var(--font-size-xl);
  }
}
.category-card-title h2 a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
  display: block;
}
.category-card-title h2 a:hover, .category-card-title h2 a:focus {
  color: var(--color-link);
  text-decoration: underline;
}
.category-card-excerpt {
  color: var(--color-text-light);
  line-height: 1.6;
  margin-bottom: var(--spacing-3);
}
.category-card-excerpt p {
  margin: 0;
  font-size: var(--font-size-sm);
}
@media (min-width: 768px) {
  .category-card-excerpt p {
    font-size: var(--font-size-base);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes masonryUpdate {
  0% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
    opacity: 0.95;
  }
  50% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes masonryUpdate {
  0% {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
    opacity: 0.95;
  }
  50% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes postEntrance {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px) scale(0.95);
            transform: translateY(20px) scale(0.95);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
}
@keyframes postEntrance {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px) scale(0.95);
            transform: translateY(20px) scale(0.95);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
}
.ek-visual-essay .ek-visual-essay-header {
  text-align: center;
  margin-bottom: var(--spacing-16);
  max-width: 50rem; /* 800px */
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .ek-visual-essay .ek-visual-essay-header {
    margin-bottom: var(--spacing-20);
  }
}
.ek-visual-essay .ek-visual-essay-header .entry-meta {
  margin-bottom: var(--spacing-5);
  color: var(--color-forest-green);
  text-transform: uppercase;
  font-size: var(--font-size-xs);
  letter-spacing: 0.1em;
  font-weight: var(--font-weight-medium);
}
.ek-visual-essay .ek-visual-essay-header .entry-title {
  font-size: var(--font-size-3xl);
  margin-bottom: var(--spacing-5);
  color: var(--color-text-main);
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .ek-visual-essay .ek-visual-essay-header .entry-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-visual-essay .ek-visual-essay-header .entry-intro {
  font-size: var(--font-size-lg);
  color: var(--color-text-light);
  line-height: var(--line-height-loose);
}
.ek-visual-essay-item {
  margin: 0 0 var(--spacing-20) 0;
}
@media (min-width: 768px) {
  .ek-visual-essay-item {
    margin: 0 0 var(--spacing-24) 0;
  }
}
.ek-gallery-image-wrapper {
  position: relative;
  text-decoration: none;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
  display: block;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
}
.ek-gallery-image-wrapper:hover {
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}
.ek-gallery-image-wrapper:hover .ek-gallery-image-container img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-gallery-image-wrapper .ek-gallery-image-container {
  -webkit-box-shadow: var(--box-shadow-xl);
          box-shadow: var(--box-shadow-xl);
  overflow: hidden;
  border-radius: var(--border-radius-lg);
}
.ek-gallery-image-wrapper .ek-gallery-image-container img {
  width: 100%;
  height: auto;
  max-height: 90vh;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
  margin: 0 auto;
  background: var(--color-bg-surface);
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
}
.ek-gallery-image-wrapper:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-30));
          box-shadow: 0 0 0 var(--spacing-0_5) rgba(var(--color-link), var(--opacity-30)); /* 2px */
  border-radius: var(--border-radius);
}
.ek-fullscreen-btn {
  position: absolute;
  bottom: var(--spacing-5);
  right: var(--spacing-5);
  z-index: var(--z-index-dropdown);
  background: var(--color-bg-overlay);
  color: var(--color-white);
  width: 2.75rem; /* 44px */
  height: 2.75rem; /* 44px */
  border-radius: var(--border-radius-full);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  -webkit-backdrop-filter: blur(var(--blur-amount));
          backdrop-filter: blur(var(--blur-amount));
  border: var(--spacing-0_5) solid rgba(255, 255, 255, var(--opacity-10)); /* 2px */
}
@media (max-width: 767px) {
  .ek-fullscreen-btn {
    width: 2.5rem; /* 40px */
    height: 2.5rem; /* 40px */
    bottom: var(--spacing-3);
    right: var(--spacing-3);
  }
}
.ek-fullscreen-btn:hover {
  background: rgba(0, 0, 0, var(--opacity-80));
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
}
.ek-fullscreen-btn .ek-dashicons {
  font-size: var(--font-size-base);
  width: var(--font-size-base);
  height: var(--font-size-base);
}
@media (max-width: 767px) {
  .ek-fullscreen-btn .ek-dashicons {
    font-size: var(--font-size-sm);
    width: var(--font-size-sm);
    height: var(--font-size-sm);
  }
}
.ek-fullscreen-btn:focus:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link), 0.25);
          box-shadow: 0 0 0 3px rgba(var(--color-link), 0.25);
}
.ek-gallery-item-title {
  margin-top: 0;
  margin-bottom: var(--spacing-2_5);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
  font-family: var(--font-heading);
  color: var(--color-text-main);
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .ek-gallery-item-title {
    font-size: var(--font-size-2xl);
  }
}
.ek-gallery-item-caption {
  font-style: italic;
  color: var(--color-text-light);
  margin-bottom: var(--spacing-4);
  line-height: var(--line-height-loose);
  background: var(--color-bg-hover);
  padding: var(--spacing-3) var(--spacing-4) var(--spacing-3) calc(var(--spacing-4) + var(--spacing-2_5)); /* 16px + 10px */
  border-radius: var(--border-radius);
  border-left: var(--spacing-2_5) solid var(--color-forest-green); /* 10px */
}
.ek-gallery-item-description {
  font-size: var(--font-size-base);
  line-height: var(--line-height-loose);
  color: var(--color-text-main);
  margin-bottom: var(--spacing-6);
}
.ek-gallery-meta-author {
  margin-bottom: var(--spacing-5);
}
.ek-gallery-meta-author .ek-author-name {
  margin-top: var(--spacing-2_5);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-lg);
  color: var(--color-text-main);
}
@media (max-width: 767px) {
  .ek-visual-essay .ek-visual-essay-header {
    margin-bottom: var(--spacing-12);
  }
  .ek-visual-essay .ek-visual-essay-header .entry-title {
    font-size: var(--font-size-2xl);
  }
  .ek-visual-essay .ek-visual-essay-header .entry-intro {
    font-size: var(--font-size-base);
  }
  .ek-visual-essay-item {
    margin: 0 0 var(--spacing-16) 0;
  }
  .ek-gallery-image-container img {
    max-height: 70vh;
  }
  .ek-gallery-item-title {
    font-size: var(--font-size-lg);
  }
  .ek-gallery-item-caption {
    padding: var(--spacing-2) var(--spacing-3);
    font-size: var(--font-size-sm);
  }
  .ek-gallery-item-description {
    font-size: var(--font-size-sm);
    margin-bottom: var(--spacing-4);
  }
}
@media (min-width: 768px) {
  .ek-gallery-image-container img {
    max-height: 80vh;
  }
}
.ek-gallery-image-loading .ek-gallery-image-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-height: 18.75rem; /* 300px */
  background: var(--color-bg-hover);
}
.ek-gallery-image-loading .ek-gallery-image-container::after {
  content: "";
  width: 2.5rem; /* 40px */
  height: 2.5rem; /* 40px */
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
  border-top: var(--spacing-0_5) solid var(--color-link); /* 2px */
  border-radius: 50%;
  -webkit-animation: gallery-spin 1s linear infinite;
          animation: gallery-spin 1s linear infinite;
}
@-webkit-keyframes gallery-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes gallery-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.ek-gallery-image-error .ek-gallery-image-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  min-height: 18.75rem; /* 300px */
  background: var(--color-bg-hover);
  color: var(--color-text-light);
}
.ek-gallery-image-error .ek-gallery-image-container .ek-dashicons {
  font-size: var(--font-size-3xl);
  width: var(--font-size-3xl);
  height: var(--font-size-3xl);
  margin-bottom: var(--spacing-3);
  opacity: var(--opacity-60);
}
.ek-gallery-image-error .ek-gallery-image-container p {
  margin: 0;
  text-align: center;
  font-size: var(--font-size-sm);
}
.ek-custom-image-gallery,
.wp-block-jeo-theme-custom-image-gallery-block.ek-image-gallery {
  position: relative;
  margin: var(--gallery-margin) 0;
}
/* Support for old jeo-theme structure */
.wp-block-jeo-theme-custom-image-gallery-block.ek-image-gallery .image-gallery-wrapper {
  background: var(--color-charcoal);
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
}
.wp-block-jeo-theme-custom-image-gallery-block.ek-image-gallery .ek-actions {
  position: absolute;
  top: var(--spacing-2_5); /* 10px */
  right: var(--spacing-2_5); /* 10px */
  z-index: 30;
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-2_5); /* 10px */
}
.wp-block-jeo-theme-custom-image-gallery-block.ek-image-gallery .ek-actions button {
  background: rgba(0, 0, 0, var(--opacity-70));
  color: var(--color-sand);
  border: none;
  border-radius: var(--border-radius);
  padding: var(--spacing-2) var(--spacing-3); /* 8px 12px */
  cursor: pointer;
  font-size: var(--font-size-sm);
  -webkit-transition: background var(--transition-base);
  transition: background var(--transition-base);
}
.wp-block-jeo-theme-custom-image-gallery-block.ek-image-gallery .ek-actions button:hover {
  background: rgba(0, 0, 0, var(--opacity-90));
}
.wp-block-jeo-theme-custom-image-gallery-block.ek-image-gallery .ek-actions button i {
  margin-right: var(--spacing-2_5); /* 10px */
}
/* Gallery Container - Simple-Slider requires relative positioning */
.ek-gallery-container,
.wp-block-jeo-theme-custom-image-gallery-block.ek-image-gallery .ek-gallery-grid {
  position: relative;
  overflow: hidden;
}
/* Simple-Slider Container - Must be positioned for slides to work */
.ek-gallery-slides {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  /* Simple-slider manipulates left/top properties of children */
}
/* Individual Slides - Simple-slider positions these absolutely */
.ek-gallery-slide,
.ek-gallery-item-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: block;
}
.ek-slide-image {
  position: relative;
  width: 100%;
  height: auto;
}
.ek-slide-image img {
  width: 100%;
  height: auto;
  display: block;
  max-height: 70vh;
  -o-object-fit: cover;
     object-fit: cover;
}
/* Slide Info Overlay */
.ek-slide-info {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, var(--opacity-80))), to(transparent));
  background: linear-gradient(to top, rgba(0, 0, 0, var(--opacity-80)), transparent);
  color: var(--color-sand);
  padding: var(--spacing-8) var(--spacing-6) var(--spacing-4); /* 2rem 1.5rem 1rem */
}
.ek-slide-title {
  margin: 0 0 var(--spacing-2) 0;
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  text-shadow: 0 var(--spacing-0_5) var(--spacing-2_5) rgba(0, 0, 0, var(--opacity-50)); /* 0 2px 4px */
}
.ek-slide-description {
  margin: 0;
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  opacity: var(--opacity-90);
}
.ek-gallery-nav-prev,
.ek-gallery-nav-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: var(--nav-button-size);
  height: var(--nav-button-size);
  background: var(--nav-button-overlay);
  border: none;
  border-radius: 50%;
  color: var(--color-white);
  cursor: pointer;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
}
.ek-gallery-nav-prev:hover,
.ek-gallery-nav-next:hover {
  background: var(--nav-button-overlay-hover);
  -webkit-transform: translateY(-50%) scale(1.1);
          transform: translateY(-50%) scale(1.1);
}
.ek-gallery-nav-prev {
  left: var(--spacing-5); /* 20px */
}
.ek-gallery-nav-next {
  right: var(--spacing-5); /* 20px */
}
/* Hide navigation if disabled */
[data-show-navigation=false] .ek-gallery-nav-prev,
[data-show-navigation=false] .ek-gallery-nav-next {
  display: none !important;
}
.ek-gallery-dots {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2); /* 8px */
  margin-top: var(--spacing-4); /* 1rem */
  padding: 0;
}
.ek-gallery-dot {
  width: var(--dot-size);
  height: var(--dot-size);
  border-radius: 50%;
  background: var(--dot-overlay);
  border: var(--spacing-0_5) solid var(--color-overlay-light); /* 2px */
  cursor: pointer;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
}
.ek-gallery-dot:hover {
  background: rgba(0, 0, 0, var(--opacity-50));
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
.ek-gallery-dot.ek-active {
  background: var(--dot-active);
  border-color: var(--dot-active);
}
/* Hide dots if disabled */
[data-show-dots=false] .ek-gallery-dots {
  display: none !important;
}
/* Gallery Title */
.ek-gallery-title {
  margin: 0 0 var(--spacing-6) 0;
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  text-align: center;
}
/* Responsive Design */
@media (max-width: 768px) {
  .ek-slide-info {
    padding: var(--spacing-6) var(--spacing-4) var(--spacing-3); /* 1.5rem 1rem 0.75rem */
  }
  .ek-slide-title {
    font-size: var(--font-size-xl);
  }
  .ek-slide-description {
    font-size: var(--font-size-sm);
  }
  .ek-gallery-nav-prev,
  .ek-gallery-nav-next {
    width: 2.5rem; /* 40px */
    height: 2.5rem; /* 40px */
  }
  .ek-gallery-title {
    font-size: var(--font-size-2xl);
  }
}
@media (max-width: 480px) {
  .ek-slide-info {
    padding: var(--spacing-4) var(--spacing-3) var(--spacing-2); /* 1rem 0.75rem 0.5rem */
  }
  .ek-slide-title {
    font-size: var(--font-size-lg);
  }
  .ek-slide-description {
    font-size: var(--font-size-xs);
  }
  .ek-gallery-nav-prev,
  .ek-gallery-nav-next {
    width: 2.1875rem; /* 35px */
    height: 2.1875rem; /* 35px */
  }
}
/* Simple-Slider Base Styles */
/* Simple-slider handles positioning automatically, but we ensure proper setup */
.ek-gallery-slides > * {
  /* Ensure all direct children can be positioned by simple-slider */
  -webkit-transition: left var(--transition-base), top var(--transition-base);
  transition: left var(--transition-base), top var(--transition-base);
}
.ek-video-theater-mode .ek-video-stage {
  background: var(--color-bg-overlay);
  width: 100%;
  padding: var(--spacing-10) 0;
  margin-bottom: var(--spacing-10);
}
@media (min-width: 768px) {
  .ek-video-theater-mode .ek-video-stage {
    padding: var(--spacing-12) 0;
    margin-bottom: var(--spacing-12);
  }
}
.ek-video-theater-mode .video-container {
  aspect-ratio: 16/9;
}
@supports not (aspect-ratio: 1) {
  .ek-video-theater-mode .video-container {
    position: relative;
    padding-bottom: 56.25%;
  }
  .ek-video-theater-mode .video-container > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.ek-video-theater-mode .video-container {
  overflow: hidden;
  background: var(--color-gray-900);
  -webkit-box-shadow: var(--box-shadow-2xl);
          box-shadow: var(--box-shadow-2xl);
  border-radius: var(--border-radius-lg);
}
.ek-video-theater-mode .video-container iframe,
.ek-video-theater-mode .video-container video,
.ek-video-theater-mode .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: var(--border-radius-lg);
}
@media (min-width: 768px) {
  .ek-video-theater-mode .video-container {
    -webkit-box-shadow: var(--box-shadow-2xl);
            box-shadow: var(--box-shadow-2xl);
  }
}
.ek-video-theater-mode .ek-video-fallback {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  color: var(--color-white);
  text-align: center;
  padding: var(--spacing-8);
}
.ek-video-theater-mode .ek-video-fallback .ek-dashicons {
  font-size: var(--font-size-4xl);
  width: var(--font-size-4xl);
  height: var(--font-size-4xl);
  margin-bottom: var(--spacing-4);
  opacity: var(--opacity-70);
}
@media (min-width: 768px) {
  .ek-video-theater-mode .ek-video-fallback .ek-dashicons {
    font-size: var(--font-size-5xl);
    width: var(--font-size-5xl);
    height: var(--font-size-5xl);
  }
}
.ek-video-theater-mode .ek-video-fallback p {
  font-size: var(--font-size-lg);
  margin: 0;
  opacity: 0.9;
}
.video-entry-header {
  margin-bottom: var(--spacing-6);
  text-align: left;
}
@media (min-width: 768px) {
  .video-entry-header {
    margin-bottom: var(--spacing-8);
  }
}
.video-entry-header .entry-title {
  font-size: var(--font-size-3xl);
  margin-bottom: var(--spacing-2);
  color: var(--color-text-main);
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .video-entry-header .entry-title {
    font-size: var(--font-size-4xl);
  }
}
.video-entry-meta {
  color: var(--color-text-light);
  font-size: var(--font-size-sm);
  border-bottom: var(--spacing-0_5) solid var(--color-border); /* 2px */
  padding-bottom: var(--spacing-5);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  gap: var(--spacing-4);
  flex-wrap: wrap;
  -webkit-box-align: center;
          align-items: center;
}
.video-entry-meta .ek-posted-on,
.video-entry-meta .ek-byline {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  color: inherit;
}
.video-entry-meta .ek-posted-on .ek-dashicons,
.video-entry-meta .ek-byline .ek-dashicons {
  font-size: var(--font-size-base);
  width: var(--font-size-base);
  height: var(--font-size-base);
  vertical-align: middle;
  flex-shrink: 0;
}
.video-entry-meta .ek-posted-on a,
.video-entry-meta .ek-byline a {
  color: inherit;
  text-decoration: none;
}
.video-entry-meta .ek-posted-on a:hover,
.video-entry-meta .ek-byline a:hover {
  color: var(--color-link);
}
@media (max-width: 767px) {
  .video-entry-meta {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: flex-start;
    gap: var(--spacing-2);
  }
}
.ek-related-videos {
  margin-top: var(--spacing-16);
  padding-top: var(--spacing-10);
  border-top: 1px solid var(--color-border);
}
.ek-related-videos .ek-related-videos-title {
  margin-bottom: var(--spacing-5);
  border-left: var(--spacing-2_5) solid var(--color-forest-green); /* 10px */
  padding-left: var(--spacing-4);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
}
.ek-video-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(13.75rem, 1fr));
  gap: var(--spacing-5);
  /* 220px */
}
@media (max-width: 767px) {
  .ek-video-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(11.25rem, 1fr));
    gap: var(--spacing-4);
    /* 180px */
  }
}
.ek-video-item {
  text-decoration: none;
  color: inherit;
  display: block;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
}
.ek-video-item:hover {
  -webkit-transform: translateY(calc(var(--spacing-0_5) * -1));
          transform: translateY(calc(var(--spacing-0_5) * -1)); /* -2px */
}
.ek-video-item:hover .ek-video-thumbnail {
  -webkit-box-shadow: var(--box-shadow-xl);
          box-shadow: var(--box-shadow-xl);
}
.ek-video-item .ek-video-thumbnail {
  position: relative;
  aspect-ratio: 16/9;
}
@supports not (aspect-ratio: 1) {
  .ek-video-item .ek-video-thumbnail {
    position: relative;
    padding-bottom: 56.25%;
  }
  .ek-video-item .ek-video-thumbnail > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.ek-video-item .ek-video-thumbnail {
  overflow: hidden;
  border-radius: var(--border-radius);
  margin-bottom: var(--spacing-2_5);
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
  -webkit-transition: -webkit-box-shadow var(--transition-base);
  transition: -webkit-box-shadow var(--transition-base);
  transition: box-shadow var(--transition-base);
  transition: box-shadow var(--transition-base), -webkit-box-shadow var(--transition-base);
}
.ek-video-item .ek-video-thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
}
.ek-video-item .ek-video-thumbnail .ek-video-thumbnail-fallback {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  background: var(--color-gray-700);
  color: var(--color-gray-300);
}
.ek-video-item .ek-video-play-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: var(--color-bg-overlay);
  border-radius: var(--border-radius-full);
  width: 2.5rem; /* 40px */
  height: 2.5rem; /* 40px */
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
@media (min-width: 768px) {
  .ek-video-item .ek-video-play-overlay {
    width: 3.125rem; /* 50px */
    height: 3.125rem; /* 50px */
  }
}
.ek-video-item .ek-video-play-overlay:hover {
  background: rgba(0, 0, 0, var(--opacity-80));
  -webkit-transform: translate(-50%, -50%) scale(1.1);
          transform: translate(-50%, -50%) scale(1.1);
}
.ek-video-item .ek-video-play-overlay .ek-dashicons {
  color: var(--color-white);
  font-size: var(--font-size-xl);
  width: var(--font-size-xl);
  height: var(--font-size-xl);
  margin-left: var(--spacing-0_5); /* 2px */
}
@media (min-width: 768px) {
  .ek-video-item .ek-video-play-overlay .ek-dashicons {
    font-size: var(--font-size-2xl);
    width: var(--font-size-2xl);
    height: var(--font-size-2xl);
  }
}
.ek-video-item .ek-video-title {
  font-size: var(--font-size-base);
  margin: 0;
  line-height: var(--line-height-tight);
  color: var(--color-text-main);
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (min-width: 768px) {
  .ek-video-item .ek-video-title {
    font-size: var(--font-size-lg);
  }
}
.ek-video-item .ek-video-title:hover {
  color: var(--color-link);
}
.ek-video-loading .video-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  background: var(--color-bg-surface);
}
.ek-video-loading .video-container::after {
  content: "";
  width: 2.5rem; /* 40px */
  height: 2.5rem; /* 40px */
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
  border-top: var(--spacing-0_5) solid var(--color-link); /* 2px */
  border-radius: 50%;
  -webkit-animation: spin 1s linear infinite;
          animation: spin 1s linear infinite;
}
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@media (max-width: 767px) {
  .ek-video-theater-mode .ek-video-stage {
    padding: var(--spacing-6) 0;
    margin-bottom: var(--spacing-6);
  }
  .ek-video-theater-mode .video-container {
    border-radius: var(--border-radius);
  }
  .ek-video-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
    gap: var(--spacing-3);
    /* 160px */
  }
  .ek-video-item .ek-video-title {
    font-size: var(--font-size-sm);
  }
}
.ek-partners-directory {
  margin-top: var(--spacing-10);
  margin-bottom: var(--spacing-16);
}
.ek-partners-stats {
  margin-bottom: var(--spacing-10);
  padding: var(--spacing-8);
  background: linear-gradient(135deg, var(--color-forest-green), var(--color-forest-green-darker));
  color: var(--color-white);
  border-radius: var(--border-radius-xl);
  text-align: center;
  -webkit-box-shadow: var(--box-shadow-xl);
          box-shadow: var(--box-shadow-xl);
}
@media (min-width: 768px) {
  .ek-partners-stats {
    padding: var(--spacing-10);
  }
}
.ek-partners-stats .ek-partners-stats-title {
  margin-bottom: var(--spacing-5);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .ek-partners-stats .ek-partners-stats-title {
    font-size: var(--font-size-2xl);
  }
}
.ek-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(9.375rem, 1fr));
  gap: var(--spacing-5);
  /* 150px */
}
@media (max-width: 767px) {
  .ek-stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(7.5rem, 1fr));
    gap: var(--spacing-3);
    /* 120px */
  }
}
.ek-stat-item {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  text-align: center;
  padding: var(--spacing-3);
}
.ek-stat-item .ek-stat-icon {
  font-size: var(--font-size-4xl);
  margin-bottom: var(--spacing-2_5);
  opacity: 0.9;
}
.ek-stat-item .ek-stat-value {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  margin-bottom: var(--spacing-1);
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .ek-stat-item .ek-stat-value {
    font-size: var(--font-size-3xl);
  }
}
.ek-stat-item .ek-stat-label {
  font-size: var(--font-size-sm);
  opacity: 0.9;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: var(--font-weight-medium);
}
@media (max-width: 767px) {
  .ek-stat-item .ek-stat-icon {
    font-size: var(--font-size-3xl);
  }
  .ek-stat-item .ek-stat-value {
    font-size: var(--font-size-xl);
  }
  .ek-stat-item .ek-stat-label {
    font-size: var(--font-size-xs);
  }
}
.ek-partner-filters {
  margin-bottom: var(--spacing-6);
  text-align: center;
}
.ek-filter-buttons {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  gap: var(--spacing-2_5);
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .ek-filter-buttons {
    gap: var(--spacing-2);
  }
}
.ek-filter-btn {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  font-family: var(--font-body);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-tight);
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid transparent;
  border-radius: var(--border-radius);
  padding: var(--spacing-2) var(--spacing-4);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  cursor: pointer;
}
.ek-filter-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.ek-filter-btn {
  padding: var(--spacing-2_5) var(--spacing-5);
  background: var(--color-bg-hover);
  color: var(--color-text-main);
  text-decoration: none;
  border-radius: var(--border-radius-md);
  font-weight: var(--font-weight-medium);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
}
.ek-filter-btn:hover, .ek-filter-btn.ek-active {
  background: var(--color-forest-green);
  color: var(--color-white);
  border-color: var(--color-forest-green);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
}
@media (max-width: 767px) {
  .ek-filter-btn {
    padding: var(--spacing-2) var(--spacing-4);
    font-size: var(--font-size-sm);
  }
}
.ek-partners-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(18.75rem, 1fr));
  gap: var(--spacing-8);
  /* 300px */
}
@media (min-width: 768px) {
  .ek-partners-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(17.5rem, 1fr));
    gap: var(--spacing-6);
    /* 280px */
  }
}
@media (max-width: 767px) {
  .ek-partners-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(17.5rem, 1fr));
    gap: var(--spacing-4);
    /* 280px */
  }
}
.ek-partner-card {
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-border);
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
  overflow: hidden;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  overflow: visible;
  transition: all var(--transition-base);
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
  position: relative;
}
.ek-partner-card:hover {
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
  -webkit-box-shadow: var(--box-shadow-xl);
          box-shadow: var(--box-shadow-xl);
  border-color: var(--color-forest-green);
}
.ek-partner-card .ek-partner-status {
  position: absolute;
  top: var(--spacing-3);
  right: var(--spacing-3);
  z-index: var(--z-index-fixed);
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  padding: var(--spacing-1) var(--spacing-2);
  background: var(--color-forest-green);
  color: white;
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.025em;
}
.ek-partner-card .ek-partner-status[data-status=inactive] {
  background: var(--color-gray-400);
}
.ek-partner-card .ek-partner-logo-section {
  padding: var(--spacing-8) var(--spacing-5);
  background: linear-gradient(135deg, var(--color-bg-hover), var(--color-gray-100));
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-height: 8.75rem; /* 140px */
}
@media (min-width: 768px) {
  .ek-partner-card .ek-partner-logo-section {
    padding: var(--spacing-10) var(--spacing-6);
    min-height: 10rem; /* 160px */
  }
}
.ek-partner-card .ek-partner-logo-section .partner-logo-link {
  display: block;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}
.ek-partner-card .ek-partner-logo-section .partner-logo-link .ek-partner-logo-placeholder, .ek-partner-card .ek-partner-logo-section .partner-logo-link .ek-partner-logo {
  width: 5rem; /* 80px */
  height: 5rem; /* 80px */
  border-radius: var(--border-radius-full);
  background: var(--color-forest-green);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  color: var(--color-white);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-2xl);
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
@media (min-width: 768px) {
  .ek-partner-card .ek-partner-logo-section .partner-logo-link .ek-partner-logo-placeholder, .ek-partner-card .ek-partner-logo-section .partner-logo-link .ek-partner-logo {
    width: 6.25rem; /* 100px */
    height: 6.25rem; /* 100px */
    font-size: var(--font-size-3xl);
  }
}
.ek-partner-card .ek-partner-logo-section .partner-logo-link .ek-partner-logo-placeholder:hover, .ek-partner-card .ek-partner-logo-section .partner-logo-link .ek-partner-logo:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-partner-card .ek-partner-logo-section .partner-logo-link .ek-partner-logo-placeholder {
  background: var(--color-gray-300);
  color: var(--color-gray-600);
}
.ek-partner-card .ek-partner-content {
  padding: var(--spacing-5);
}
@media (min-width: 768px) {
  .ek-partner-card .ek-partner-content {
    padding: var(--spacing-6);
  }
}
.ek-partner-card .ek-partner-content .ek-partner-title {
  margin: 0 0 var(--spacing-2_5) 0;
  font-size: var(--font-size-xl);
  text-align: center;
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-main);
  line-height: var(--line-height-tight);
}
.ek-partner-card .ek-partner-content .ek-partner-title .ek-partner-link {
  text-decoration: none;
  color: inherit;
}
.ek-partner-card .ek-partner-content .ek-partner-title .ek-partner-link:hover {
  color: var(--color-link);
}
@media (min-width: 768px) {
  .ek-partner-card .ek-partner-content .ek-partner-title {
    font-size: var(--font-size-2xl);
  }
}
.ek-partner-card .ek-partner-content .ek-partner-description {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  margin-bottom: var(--spacing-4);
  text-align: center;
  line-height: var(--line-height-loose);
}
.ek-partner-stats-mini {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-bottom: var(--spacing-4);
  padding: var(--spacing-2_5);
  background: var(--color-bg-hover);
  border-radius: var(--border-radius-md);
}
.ek-partner-stats-mini .ek-stat {
  text-align: center;
  -webkit-box-flex: 1;
          flex: 1;
}
.ek-partner-stats-mini .ek-stat .ek-stat-value {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-forest-green);
  margin-bottom: var(--spacing-0_5);
  display: block;
}
.ek-partner-stats-mini .ek-stat .ek-stat-label {
  font-size: var(--font-size-xs);
  color: var(--color-text-light);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.ek-partner-stats-mini[data-partner-status=inactive] {
  opacity: 0.7;
}
.ek-partner-stats-mini[data-partner-status=inactive] .ek-partner-logo-section {
  background: linear-gradient(135deg, var(--color-gray-100), var(--color-gray-200));
}
.ek-partner-stats-mini[data-partner-status=inactive] .ek-partner-status {
  background: var(--color-gray-500);
}
.ek-partner-stats-mini[data-partner-status=active] .ek-partner-status {
  background: var(--color-forest-green);
}
@media (max-width: 767px) {
  .ek-partners-directory {
    margin-top: var(--spacing-6);
    margin-bottom: var(--spacing-10);
  }
  .ek-partners-stats {
    margin-bottom: var(--spacing-6);
    padding: var(--spacing-6);
    border-radius: var(--border-radius-lg);
  }
  .ek-partners-stats .ek-partners-stats-title {
    font-size: var(--font-size-lg);
  }
  .ek-partners-grid {
    gap: var(--spacing-4);
  }
  .ek-partner-card .ek-partner-logo-section {
    padding: var(--spacing-6) var(--spacing-4);
    min-height: 7.5rem; /* 120px */
  }
  .ek-partner-card .ek-partner-logo-section .ek-partner-logo,
  .ek-partner-card .ek-partner-logo-section .ek-partner-logo-placeholder {
    width: 4.375rem; /* 70px */
    height: 4.375rem; /* 70px */
    font-size: var(--font-size-xl);
  }
  .ek-partner-card .ek-partner-content {
    padding: var(--spacing-4);
  }
  .ek-partner-card .ek-partner-content .ek-partner-title {
    font-size: var(--font-size-lg);
  }
  .ek-partner-card .ek-partner-content .ek-partner-description {
    font-size: var(--font-size-xs);
    margin-bottom: var(--spacing-3);
  }
  .ek-partner-stats-mini {
    padding: var(--spacing-2);
    margin-bottom: var(--spacing-3);
  }
  .ek-partner-stats-mini .ek-stat .ek-stat-value {
    font-size: var(--font-size-base);
  }
}
.ek-partners-loading .ek-partners-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(18.75rem, 1fr));
  gap: var(--spacing-8);
  /* 300px */
}
.ek-partners-loading .ek-partners-grid .ek-partner-card {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-height: 18.75rem; /* 300px */
  background: var(--color-bg-hover);
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
  border-radius: var(--border-radius-lg);
}
.ek-partners-loading .ek-partners-grid .ek-partner-card::after {
  content: "";
  width: 2.5rem; /* 40px */
  height: 2.5rem; /* 40px */
  border: var(--spacing-0_5) solid var(--color-border); /* 2px */
  border-top: var(--spacing-0_5) solid var(--color-link); /* 2px */
  border-radius: 50%;
  -webkit-animation: partners-spin 1s linear infinite;
          animation: partners-spin 1s linear infinite;
}
.ek-partners-empty {
  text-align: center;
  padding: var(--spacing-16) var(--spacing-4);
  color: var(--color-text-light);
}
.ek-partners-empty .ek-empty-icon {
  font-size: var(--font-size-4xl);
  margin-bottom: var(--spacing-4);
  opacity: 0.5;
}
.ek-partners-empty .ek-empty-title {
  font-size: var(--font-size-xl);
  margin-bottom: var(--spacing-2);
  color: var(--color-text-main);
}
.ek-partners-empty .ek-empty-description {
  font-size: var(--font-size-base);
  max-width: 31.25rem; /* 500px */
  margin: 0 auto;
  line-height: var(--line-height-loose);
}
@-webkit-keyframes partners-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes partners-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.ek-filter-btn:focus:focus,
.ek-partner-link:focus:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link), 0.25);
          box-shadow: 0 0 0 3px rgba(var(--color-link), 0.25);
}
@media (prefers-contrast: high) {
  .ek-partner-card {
    border: var(--spacing-0_5) solid var(--color-border); /* 2px */
  }
  .ek-partner-card:hover {
    border-color: var(--color-forest-green);
  }
  .ek-filter-btn.ek-active {
    outline: var(--spacing-0_5) solid var(--color-white); /* 2px */
    outline-offset: var(--spacing-0_5); /* 2px */
  }
  .ek-partner-actions {
    display: -webkit-box;
    display: flex;
    gap: var(--spacing-2);
  }
  .ek-partner-actions .ek-partner-btn.ek-primary {
    -webkit-box-flex: 1;
            flex: 1;
    text-align: center;
    padding: var(--spacing-3);
    background: var(--color-forest-green);
    color: var(--color-white);
    text-decoration: none;
    border-radius: var(--border-radius-md);
    font-size: var(--font-size-sm);
    font-weight: 500;
    -webkit-transition: background var(--transition-fast);
    transition: background var(--transition-fast);
  }
  .ek-partner-actions .ek-partner-btn.ek-primary:hover {
    background: var(--color-forest-green-dark);
  }
  .ek-partner-actions .ek-partner-btn.ek-secondary {
    padding: var(--spacing-3) var(--spacing-4);
    background: var(--color-gray-100);
    color: var(--color-text);
    text-decoration: none;
    border-radius: var(--border-radius-md);
    font-size: var(--font-size-sm);
    -webkit-transition: background var(--transition-fast);
    transition: background var(--transition-fast);
  }
  .ek-partner-actions .ek-partner-btn.ek-secondary:hover {
    background: var(--color-gray-200);
  }
  .ek-no-partners {
    grid-column: 1/-1;
    text-align: center;
    padding: var(--spacing-16) var(--spacing-6);
  }
  .ek-no-partners .ek-no-partners-icon {
    font-size: var(--font-size-4xl);
    margin-bottom: var(--spacing-6);
  }
  .ek-no-partners h3 {
    color: var(--color-text-light);
    margin-bottom: var(--spacing-4);
  }
  .ek-no-partners p {
    color: var(--color-text-light);
    margin-bottom: var(--spacing-6);
  }
  .ek-no-partners a {
    display: inline-block;
    margin-top: var(--spacing-6);
    padding: var(--spacing-4) var(--spacing-8);
    background: var(--color-forest-green);
    color: var(--color-white);
    text-decoration: none;
    border-radius: var(--border-radius-sm);
    -webkit-transition: background var(--transition-fast);
    transition: background var(--transition-fast);
  }
  .ek-no-partners a:hover {
    background: var(--color-forest-green-dark);
  }
}
.ek-partners-cta {
  margin-top: var(--spacing-16);
  padding: var(--spacing-10);
  background: linear-gradient(135deg, var(--color-gray-100), var(--color-gray-200));
  border-radius: var(--border-radius-xl);
  text-align: center;
}
.ek-partners-cta h3 {
  margin-bottom: var(--spacing-4);
  color: var(--color-forest-green);
  font-size: var(--font-size-xl);
}
.ek-partners-cta p {
  margin-bottom: var(--spacing-6);
  color: var(--color-text-light);
  max-width: 37.5rem; /* 600px */
  margin-left: auto;
  margin-right: auto;
  font-size: var(--font-size-lg);
  line-height: var(--line-height-base);
}
.ek-partners-cta a {
  display: inline-block;
  padding: var(--spacing-4) var(--spacing-8);
  background: var(--color-forest-green);
  color: var(--color-white);
  text-decoration: none;
  border-radius: var(--border-radius-md);
  font-weight: 500;
  -webkit-transition: background var(--transition-fast);
  transition: background var(--transition-fast);
}
.ek-partners-cta a:hover {
  background: var(--color-forest-green-dark);
}
@media (max-width: 767px) {
  .ek-partners-cta {
    padding: var(--spacing-8);
  }
  .ek-partners-cta h3 {
    font-size: var(--font-size-lg);
  }
  .ek-partners-cta p {
    font-size: var(--font-size-base);
  }
}
ek-social-share {
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-2);
  margin: var(--spacing-6) 0;
  flex-wrap: wrap;
}
ek-social-share--floating {
  position: -webkit-sticky;
  position: sticky;
  top: 100px;
  left: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  width: 40px;
  z-index: var(--z-index-sticky);
  margin: 0;
  display: none;
}
@media (min-width: 1024px) {
  ek-social-share--floating {
    display: -webkit-box;
    display: flex;
  }
}
ek-social-share--inline {
  padding: var(--spacing-4) 0;
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
}
ek-social-share ek-social-share__button {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: var(--border-radius-full);
  color: var(--color-white);
  -webkit-transition: -webkit-transform var(--transition-fast), -webkit-filter var(--transition-fast);
  transition: -webkit-transform var(--transition-fast), -webkit-filter var(--transition-fast);
  transition: transform var(--transition-fast), filter var(--transition-fast);
  transition: transform var(--transition-fast), filter var(--transition-fast), -webkit-transform var(--transition-fast), -webkit-filter var(--transition-fast);
  text-decoration: none;
  cursor: pointer;
}
ek-social-share ek-social-share__button i {
  font-size: var(--font-size-lg);
}
ek-social-share ek-social-share__button:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-filter: brightness(1.1);
          filter: brightness(1.1);
  color: var(--color-white);
}
ek-social-share ek-social-share__button:active {
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
}
ek-social-share ek-social-share__button.share-facebook {
  background-color: #1877f2;
}
ek-social-share ek-social-share__button.share-twitter {
  background-color: #1da1f2;
}
ek-social-share ek-social-share__button.share-linkedin {
  background-color: #0077b5;
}
ek-social-share ek-social-share__button.share-whatsapp {
  background-color: #25d366;
}
ek-social-share ek-social-share__button.share-copy {
  background-color: var(--color-charcoal);
}
ek-social-share ek-social-share__label {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-sm);
  margin-right: var(--spacing-3);
  align-self: center;
}
.entry-share-wrapper {
  position: relative;
}
@media (min-width: 1024px) {
  .entry-share-wrapper {
    padding-left: calc(40px + var(--spacing-8));
  }
}
/**
 * Floating Action Button (FAB) - Scroll to Top
 * Modern floating action button with smooth animations
 */
.ek-fab {
  --fab-size: 56px;
  --fab-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  --fab-shadow-hover: 0 6px 20px rgba(0, 0, 0, 0.25);
  --fab-transition: all var(--transition-base) var(--easing-standard);
  position: fixed;
  bottom: var(--spacing-6);
  right: var(--spacing-6);
  width: var(--fab-size);
  height: var(--fab-size);
  border-radius: 50%;
  background: var(--color-primary);
  color: var(--color-white, #fff);
  border: none;
  cursor: pointer;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-shadow: var(--fab-shadow);
          box-shadow: var(--fab-shadow);
  -webkit-transition: var(--fab-transition);
  transition: var(--fab-transition);
  z-index: var(--z-index-sticky);
  outline: none;
  opacity: 0;
  -webkit-transform: scale(0.8) translateY(20px);
          transform: scale(0.8) translateY(20px);
  pointer-events: none;
}
.ek-fab.ek-fab-visible {
  opacity: 1;
  -webkit-transform: scale(1) translateY(0);
          transform: scale(1) translateY(0);
  pointer-events: auto;
}
.ek-fab:hover, .ek-fab:focus {
  background: var(--color-primary-hover, color-mix(in srgb, var(--color-primary) 90%, var(--color-black, #000)));
  -webkit-box-shadow: var(--fab-shadow-hover);
          box-shadow: var(--fab-shadow-hover);
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-fab:hover.ek-fab-visible, .ek-fab:focus.ek-fab-visible {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-fab:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.ek-fab:active {
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
}
.ek-fab:active.ek-fab-visible {
  -webkit-transform: scale(0.95);
          transform: scale(0.95);
}
.ek-fab svg {
  width: 24px;
  height: 24px;
  stroke-width: 2.5;
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.ek-fab:hover svg, .ek-fab:focus svg {
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.ek-fab .ek-screen-reader-text {
  display: none;
}
@media (min-width: 768px) {
  .ek-scroll-to-top {
    bottom: var(--spacing-8);
    right: var(--spacing-8);
  }
}
@media (min-width: 1024px) {
  .ek-scroll-to-top {
    bottom: var(--spacing-10);
    right: var(--spacing-10);
  }
}
.ek-scroll-to-top[hidden] {
  display: none !important;
}
@media (prefers-reduced-motion: reduce) {
  .ek-fab {
    -webkit-transition: none;
    transition: none;
  }
  .ek-fab.ek-fab-visible {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
  .ek-fab:hover, .ek-fab:focus, .ek-fab:active {
    -webkit-transform: none;
            transform: none;
  }
  .ek-fab svg {
    -webkit-transition: none;
    transition: none;
  }
  .ek-fab:hover svg, .ek-fab:focus svg {
    -webkit-transform: none;
            transform: none;
  }
}
@media (prefers-contrast: high) {
  .ek-fab {
    border: 2px solid;
    background: var(--color-white, #fff);
    color: var(--color-black, #000);
  }
  .ek-fab:hover, .ek-fab:focus {
    background: var(--color-black, #000);
    color: var(--color-white, #fff);
  }
}
@media print {
  .ek-fab {
    display: none !important;
  }
}
*:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  border-radius: var(--border-radius-sm);
}
.skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  background: var(--color-primary);
  color: var(--color-white);
  padding: var(--spacing-2) var(--spacing-4);
  text-decoration: none;
  z-index: var(--z-index-tooltip);
  border-radius: 0 0 var(--border-radius-md) 0;
  font-weight: var(--font-weight-semibold);
  -webkit-transition: top var(--transition-fast);
  transition: top var(--transition-fast);
}
.skip-link:focus {
  top: 0;
  outline: 2px solid var(--color-white);
  outline-offset: 2px;
}
.ek-site-main button:focus-visible,
.ek-site-main .button:focus-visible,
.ek-site-main .wp-block-button__link:focus-visible,
.ek-content-area button:focus-visible,
.ek-content-area .button:focus-visible,
.ek-content-area .wp-block-button__link:focus-visible,
.entry-content button:focus-visible,
.entry-content .button:focus-visible,
.entry-content .wp-block-button__link:focus-visible,
.ek-site-header button:focus-visible,
.ek-site-header .button:focus-visible,
.ek-site-header .wp-block-button__link:focus-visible,
.ek-site-footer button:focus-visible,
.ek-site-footer .button:focus-visible,
.ek-site-footer .wp-block-button__link:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
  -webkit-box-shadow: 0 0 0 3px var(--color-focus-ring);
          box-shadow: 0 0 0 3px var(--color-focus-ring);
}
.ek-site-main a:focus-visible,
.ek-content-area a:focus-visible,
.entry-content a:focus-visible,
.ek-site-header a:focus-visible,
.ek-site-footer a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  border-radius: var(--border-radius-sm);
  text-decoration: underline;
}
.ek-site-main input:focus-visible,
.ek-site-main textarea:focus-visible,
.ek-site-main select:focus-visible,
.ek-content-area input:focus-visible,
.ek-content-area textarea:focus-visible,
.ek-content-area select:focus-visible,
.entry-content input:focus-visible,
.entry-content textarea:focus-visible,
.entry-content select:focus-visible,
.ek-site-header input:focus-visible,
.ek-site-header textarea:focus-visible,
.ek-site-header select:focus-visible,
.ek-site-footer input:focus-visible,
.ek-site-footer textarea:focus-visible,
.ek-site-footer select:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
  -webkit-box-shadow: 0 0 0 3px var(--color-focus-ring);
          box-shadow: 0 0 0 3px var(--color-focus-ring);
  border-color: var(--color-focus);
}
.js-focus-visible :focus:not(.focus-visible) {
  outline: none;
}
[role=button],
[role=menu],
[role=menuitem] {
  cursor: pointer;
}
[role=button]:focus,
[role=menu]:focus,
[role=menuitem]:focus {
  outline: 2px solid var(--color-focus);
  outline-offset: 2px;
}
.ekuatorial-block-interactive:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
  -webkit-box-shadow: 0 0 0 3px var(--color-focus-ring);
          box-shadow: 0 0 0 3px var(--color-focus-ring);
}
.screen-reader-text,
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.screen-reader-text:focus,
.sr-only:focus {
  position: static;
  width: auto;
  height: auto;
  padding: var(--spacing-2) var(--spacing-4);
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
  background: var(--color-bg-surface);
  color: var(--color-text-main);
  border: 2px solid var(--color-focus);
  border-radius: var(--border-radius-md);
  z-index: var(--z-index-tooltip);
}
.ek-site-main h1[aria-hidden=true], .ek-site-main h2[aria-hidden=true], .ek-site-main h3[aria-hidden=true], .ek-site-main h4[aria-hidden=true], .ek-site-main h5[aria-hidden=true], .ek-site-main h6[aria-hidden=true],
.ek-content-area h1[aria-hidden=true],
.ek-content-area h2[aria-hidden=true],
.ek-content-area h3[aria-hidden=true],
.ek-content-area h4[aria-hidden=true],
.ek-content-area h5[aria-hidden=true],
.ek-content-area h6[aria-hidden=true],
.entry-content h1[aria-hidden=true],
.entry-content h2[aria-hidden=true],
.entry-content h3[aria-hidden=true],
.entry-content h4[aria-hidden=true],
.entry-content h5[aria-hidden=true],
.entry-content h6[aria-hidden=true] {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
[role=banner]:focus,
[role=navigation]:focus,
[role=main]:focus,
[role=complementary]:focus,
[role=contentinfo]:focus {
  outline: 2px dashed var(--color-focus);
  outline-offset: 4px;
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  *:hover {
    -webkit-transform: none !important;
            transform: none !important;
  }
}
@media (prefers-contrast: high) {
  :root {
    --color-border: #000;
    --color-text-main: #000;
    --color-bg-surface: #fff;
    --color-focus: #00f;
  }
  button,
  .button,
  .wp-block-button__link {
    border: 2px solid currentcolor;
  }
}
.status-indicator::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-right: var(--spacing-2);
  vertical-align: middle;
}
.status-indicator.status-success::before {
  background-color: var(--color-success);
}
.status-indicator.status-error::before {
  background-color: var(--color-error);
  content: "⚠";
}
.status-indicator.status-warning::before {
  background-color: var(--color-warning);
  content: "!";
}
[role=status],
[role=alert],
[aria-live] {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
[aria-live=polite] {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}
.required-field::after {
  content: " *";
  color: var(--color-error);
  font-weight: var(--font-weight-bold);
}
.error-message,
.form-error {
  color: var(--color-error);
  font-size: var(--font-size-sm);
  margin-top: var(--spacing-1);
  display: block;
}
.error-message::before,
.form-error::before {
  content: "⚠ ";
  margin-right: var(--spacing-1);
}
.success-message,
.form-success {
  color: var(--color-success);
  font-size: var(--font-size-sm);
  margin-top: var(--spacing-1);
  display: block;
}
.success-message::before,
.form-success::before {
  content: "✓ ";
  margin-right: var(--spacing-1);
}
.field-description {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  margin-top: var(--spacing-1);
  display: block;
}
.ek-english-stories-callout {
  background: linear-gradient(135deg, var(--color-link) 0%, var(--color-ocean-blue) 100%);
  color: var(--color-white);
  padding: var(--spacing-20) 0;
  margin: var(--spacing-20) 0 var(--spacing-16) 0;
  text-align: center;
}
.ek-english-stories-callout__content {
  max-width: 62.5rem; /* 1000px */
  margin: 0 auto;
  padding: 0 var(--spacing-8);
}
@media (min-width: 768px) {
  .ek-english-stories-callout__content {
    padding: 0 var(--spacing-10);
  }
}
.ek-english-stories-callout__content h2 {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  margin: 0 0 var(--spacing-6) 0;
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-widest);
}
@media (min-width: 768px) {
  .ek-english-stories-callout__content h2 {
    font-size: var(--font-size-4xl);
  }
}
.ek-english-stories-callout__content p {
  font-size: var(--font-size-xl);
  line-height: var(--line-height-loose);
  margin: 0 0 var(--spacing-6) 0;
}
.ek-english-stories-callout__content p strong {
  font-weight: var(--font-weight-bold);
}
@media (min-width: 768px) {
  .ek-english-stories-callout__content p {
    font-size: var(--font-size-2xl);
  }
}
.ek-read-more-articles {
  text-align: center;
  margin-top: var(--spacing-10);
}
.ek-read-more-articles__link {
  display: inline-block;
  color: var(--color-link);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: var(--spacing-4) var(--spacing-8);
  border: var(--spacing-0_5) solid var(--color-link); /* 2px */
  border-radius: var(--border-radius-full);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
}
.ek-read-more-articles__link:hover {
  background: var(--color-link);
  color: var(--color-white);
  -webkit-transform: translateY(calc(var(--spacing-0_5) * -1));
          transform: translateY(calc(var(--spacing-0_5) * -1)); /* -2px */
  -webkit-box-shadow: var(--box-shadow-md);
          box-shadow: var(--box-shadow-md);
}
.ek-featured-photos {
  padding: var(--spacing-20) 0;
  background: var(--color-bg-hover);
}
.ek-featured-photos__title {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  text-align: center;
  margin: 0 0 var(--spacing-12) 0;
  color: var(--color-text-main);
}
@media (min-width: 768px) {
  .ek-featured-photos__title {
    font-size: var(--font-size-4xl);
  }
}
.ek-featured-photos__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  gap: var(--spacing-6);
  /* 320px */
}
@media (min-width: 768px) {
  .ek-featured-photos__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(17.5rem, 1fr));
    gap: var(--spacing-5);
    /* 280px */
  }
}
@media (min-width: 1024px) {
  .ek-featured-photos__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(21.875rem, 1fr));
    gap: var(--spacing-8);
    /* 350px */
    max-width: var(--container-max-width);
    margin: 0 auto;
  }
}
.ek-featured-photo {
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-border);
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
  overflow: hidden;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.ek-featured-photo:hover {
  -webkit-transform: translateY(calc(var(--spacing-2_5) * -1));
          transform: translateY(calc(var(--spacing-2_5) * -1)); /* -10px */
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
}
.ek-featured-photo__link {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.ek-featured-photo__image {
  width: 100%;
  height: 12.5rem; /* 200px */
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
@media (min-width: 768px) {
  .ek-featured-photo__image {
    height: 9.375rem; /* 150px */
  }
}
.ek-featured-photo__link:hover .ek-featured-photo__image {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-featured-photo__caption {
  padding: var(--spacing-4);
}
.ek-featured-photo__caption p {
  margin: 0 0 var(--spacing-2) 0;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-base);
  color: var(--color-text-light);
}
.ek-featured-photo__caption time {
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
  font-style: normal;
}
.ek-featured-photo--placeholder {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-height: 12.5rem; /* 200px */
  background: var(--color-bg-hover);
  border: var(--spacing-0_5) dashed var(--color-border); /* 2px */
  border-radius: var(--border-radius-lg);
}
.ek-featured-photo--placeholder .ek-featured-photo__placeholder-content {
  text-align: center;
  color: var(--color-text-light);
}
.ek-featured-photo--placeholder .ek-featured-photo__placeholder-content p {
  margin: 0;
  font-size: var(--font-size-base);
}
.home__newsletter-bkg {
  --newsletter-text-color: var(--color-primary-red);
  --newsletter-secondary-color: var(--color-secondary);
  --newsletter-focus-ring: var(--color-focus-ring);
  border-radius: var(--border-radius-3xl);
  padding: var(--spacing-20) var(--spacing-12);
  margin: var(--spacing-4);
  min-height: auto;
}
@media (min-width: 768px) {
  .home__newsletter-bkg {
    padding: var(--spacing-16) var(--spacing-12);
    margin: var(--spacing-8);
  }
}
@media (max-width: 767px) {
  .home__newsletter-bkg {
    padding: var(--spacing-16) var(--spacing-4) var(--spacing-2);
    margin: var(--spacing-6);
  }
}
.home__newsletter-bkg .ek-mc4wp-response p {
  font-family: var(--font-body), sans-serif;
  color: var(--color-primary-red);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-base);
  margin: 0;
  text-align: center;
}
.home__newsletter-bkg .wp-block-columns {
  margin-bottom: 0;
}
.home__newsletter-bkg.wp-block-cover.ek-has-background-dim:not(.ek-has-background-gradient)::before {
  border-radius: var(--border-radius-3xl);
}
.home__newsletter-bkg h2 {
  font-size: var(--font-size-3xl);
  margin: var(--spacing-4) 0;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
}
@media (min-width: 768px) {
  .home__newsletter-bkg h2 {
    font-size: var(--font-size-4xl);
  }
}
.home__newsletter-bkg h3 {
  margin-bottom: 0;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-semibold);
  color: var(--newsletter-text-color);
}
.home__newsletter-bkg .wp-block-cover__inner-container p.ek-has-secondary-color,
.home__newsletter-bkg p.ek-has-secondary-color {
  color: var(--newsletter-secondary-color);
}
.home__newsletter-bkg .wp-block-cover__inner-container h3,
.home__newsletter-bkg h3[id],
.home__newsletter-bkg .wp-block-heading {
  color: var(--newsletter-text-color);
}
.home__newsletter-bkg .has-text-color {
  color: var(--color-charcoal);
}
.home__newsletter-bkg a {
  color: var(--newsletter-text-color);
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.home__newsletter-bkg a:hover {
  color: var(--color-link-hover);
}
.home__newsletter-bkg input[type=email],
.home__newsletter-bkg form input {
  padding: var(--spacing-3) var(--spacing-4);
  font-size: var(--font-size-base);
  font-family: var(--font-body);
  color: var(--color-text-main);
  -webkit-transition: border-color var(--transition-fast);
  transition: border-color var(--transition-fast);
}
.home__newsletter-bkg input[type=email]:focus,
.home__newsletter-bkg form input:focus {
  outline: none;
}
.home__newsletter-bkg input[type=email] {
  background: rgba(255, 255, 255, var(--opacity-0));
  border: var(--spacing-0_5) solid var(--color-border);
  border-radius: var(--border-radius);
}
.home__newsletter-bkg input[type=email]:focus {
  border-color: var(--color-focus);
  -webkit-box-shadow: 0 0 0 var(--spacing-0_5) var(--newsletter-focus-ring);
          box-shadow: 0 0 0 var(--spacing-0_5) var(--newsletter-focus-ring);
}
.home__newsletter-bkg form input {
  border: none;
  background: transparent;
  width: calc(100% - 4.8125rem); /* 77px button width */
}
.home__newsletter-bkg form button {
  background-color: var(--color-primary-red);
  border: 1px solid var(--color-primary-red);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  color: var(--color-white);
  text-transform: uppercase;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--letter-spacing-normal);
  line-height: var(--line-height-base);
  padding: var(--spacing-4);
  cursor: pointer;
  -webkit-transition: background-color var(--transition-fast);
  transition: background-color var(--transition-fast);
}
@media (min-width: 768px) {
  .home__newsletter-bkg form button {
    font-size: var(--font-size-xl);
  }
}
.home__newsletter-bkg form button span::before {
  content: "\f0e0";
  font-family: "Font Awesome 5 Free", sans-serif;
  font-weight: 600;
  padding-right: var(--spacing-2);
}
.home__newsletter-bkg form button:hover {
  background-color: var(--color-link-hover);
  border-color: var(--color-link-hover);
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.home__newsletter-bkg form button:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 var(--spacing-0_5) var(--newsletter-focus-ring);
          box-shadow: 0 0 0 var(--spacing-0_5) var(--newsletter-focus-ring);
}
.home__newsletter-bkg form.ek-mc4wp-form {
  margin-bottom: var(--spacing-2);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  background: var(--color-bg-surface);
  border: var(--spacing-0_5) solid var(--color-primary-red);
  border-radius: var(--border-radius-xl);
  overflow: hidden;
  max-width: 100%;
}
.home__newsletter-bkg form.ek-mc4wp-form .ek-mc4wp-form-fields {
  display: -webkit-box;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
          align-items: center;
}
.home__newsletter-bkg form.ek-mc4wp-form .ek-mc4wp-form-fields .ek-input-group {
  border: none;
  margin-bottom: 0;
  width: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}
.home__newsletter-bkg p.ek-link {
  font-size: var(--font-size-sm);
  color: var(--color-text-light);
  text-align: right;
  margin: var(--spacing-2) 0 0 0;
  font-family: var(--font-body);
}
.home__newsletter-bkg p.ek-link a {
  color: var(--newsletter-text-color);
  font-weight: var(--font-weight-semibold);
  text-decoration: underline;
}
.home__newsletter-bkg p.ek-link a:hover {
  color: var(--color-link-hover);
}
.home__newsletter-link {
  color: var(--newsletter-text-color);
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.home__newsletter-link:hover {
  color: var(--color-link-hover);
}
.home__newsletter-icon {
  color: var(--newsletter-text-color);
  font-size: var(--font-size-4xl);
  line-height: 1;
  margin-bottom: 0;
  display: block;
  text-align: center;
  width: 1em;
  height: 1em;
}
.ek-dark-theme .wp-block-cover.ek-has-background-dim.home__newsletter-bkg {
  background-color: rgba(var(--color-primary-red), var(--opacity-10));
}
.ek-dark-theme .wp-block-cover.ek-has-background-dim.home__newsletter-bkg p.has-text-color.has-secondary-color {
  color: var(--color-charcoal);
}
.ek-dark-theme .home__newsletter-bkg input[type=email],
.ek-dark-theme .home__newsletter-bkg form input {
  background: rgba(255, 255, 255, var(--opacity-10));
  color: var(--color-white);
  border-color: var(--color-border);
}
.ek-dark-theme .home__newsletter-bkg input[type=email]::-webkit-input-placeholder, .ek-dark-theme .home__newsletter-bkg form input::-webkit-input-placeholder {
  color: var(--color-text-light);
}
.ek-dark-theme .home__newsletter-bkg input[type=email]::-moz-placeholder, .ek-dark-theme .home__newsletter-bkg form input::-moz-placeholder {
  color: var(--color-text-light);
}
.ek-dark-theme .home__newsletter-bkg input[type=email]::placeholder,
.ek-dark-theme .home__newsletter-bkg form input::placeholder {
  color: var(--color-text-light);
}
.ek-dark-theme .home__newsletter-bkg p.ek-link {
  color: var(--color-text-light);
}
.ek-latest-posts {
  margin: var(--spacing-12) 0 var(--spacing-8) 0;
}
@media (min-width: 768px) {
  .ek-latest-posts {
    margin: var(--spacing-16) 0 var(--spacing-10) 0;
  }
}
.ek-latest-posts .ek-latest-posts-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-6);
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-posts-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-6);
  }
}
@media (min-width: 1024px) {
  .ek-latest-posts .ek-latest-posts-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-8);
  }
}
.ek-latest-posts .ek-latest-post-card {
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  border: none;
  overflow: hidden;
  -webkit-transition: all var(--transition-base);
  transition: all var(--transition-base);
  -webkit-box-shadow: none;
          box-shadow: none;
}
.ek-latest-posts .ek-latest-post-card:hover {
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-post-card--featured {
    grid-column: 1/-1;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-align: stretch;
            align-items: stretch;
  }
}
@media (min-width: 1024px) {
  .ek-latest-posts .ek-latest-post-card--featured {
    grid-column: 1/-1;
  }
}
.ek-latest-posts .ek-latest-post-card__image {
  position: relative;
  overflow: hidden;
  background: var(--color-bg-hover);
}
.ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-card__image {
  -webkit-box-flex: 0;
          flex: 0 0 50%;
}
@media (min-width: 768px) {
  .ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-card__image {
    min-height: 25rem; /* 400px */
  }
}
@media (min-width: 1024px) {
  .ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-card__image {
    min-height: 31.25rem; /* 500px */
  }
}
.ek-latest-posts .ek-latest-post-card__image:not(.ek-latest-post-card--featured .ek-latest-post-card__image) {
  height: 12rem; /* 192px - Better proportion with content */
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-post-card__image:not(.ek-latest-post-card--featured .ek-latest-post-card__image) {
    height: 10rem; /* 160px - Maintains aspect ratio */
  }
}
@media (min-width: 1024px) {
  .ek-latest-posts .ek-latest-post-card__image:not(.ek-latest-post-card--featured .ek-latest-post-card__image) {
    height: 11rem; /* 176px - Balanced with card content */
  }
}
.ek-latest-posts .ek-latest-post-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: -webkit-transform var(--transition-base);
  transition: -webkit-transform var(--transition-base);
  transition: transform var(--transition-base);
  transition: transform var(--transition-base), -webkit-transform var(--transition-base);
  display: block;
}
.ek-latest-posts .ek-latest-post-card__image:hover img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.ek-latest-posts .ek-latest-post-card__content {
  padding: var(--spacing-4);
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  height: 100%;
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-post-card__content {
    padding: var(--spacing-5);
  }
}
@media (min-width: 1024px) {
  .ek-latest-posts .ek-latest-post-card__content {
    padding: var(--spacing-6);
  }
}
.ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-card__content {
  -webkit-box-flex: 1;
          flex: 1;
  -webkit-box-pack: center;
          justify-content: center;
  padding: var(--spacing-6);
}
@media (min-width: 768px) {
  .ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-card__content {
    padding: var(--spacing-8);
  }
}
.ek-latest-posts .ek-latest-post-categories {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-2);
  margin-bottom: var(--spacing-4);
}
.ek-latest-posts .ek-latest-post-category {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  background: var(--color-link);
  color: #ffffff !important;
  padding: var(--spacing-1) var(--spacing-3);
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-decoration: none;
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  line-height: 1.4;
}
.ek-latest-posts .ek-latest-post-category:hover, .ek-latest-posts .ek-latest-post-category:focus {
  background: var(--color-link-hover);
  color: #ffffff !important;
  -webkit-transform: translateY(calc(var(--spacing-1) * -1));
          transform: translateY(calc(var(--spacing-1) * -1)); /* -4px */
  -webkit-box-shadow: var(--box-shadow-sm);
          box-shadow: var(--box-shadow-sm);
}
.ek-latest-posts .ek-latest-post-card__header {
  margin-bottom: var(--spacing-3);
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-post-card__header {
    margin-bottom: var(--spacing-4);
  }
}
.ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-card__header .latest-post-title {
  font-size: var(--font-size-3xl);
  line-height: 1.2;
  margin-bottom: var(--spacing-4);
}
@media (min-width: 768px) {
  .ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-card__header .latest-post-title {
    font-size: var(--font-size-4xl);
  }
}
.ek-latest-posts .ek-latest-post-card__header .entry-title.latest-post-title {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  margin: 0 0 var(--spacing-2) 0;
  color: var(--color-text-main);
}
.ek-latest-posts .ek-latest-post-card__header .entry-title.latest-post-title a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
  display: block;
}
.ek-latest-posts .ek-latest-post-card__header .entry-title.latest-post-title a:hover, .ek-latest-posts .ek-latest-post-card__header .entry-title.latest-post-title a:focus {
  color: var(--color-link);
  text-decoration: underline;
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-post-card__header .entry-title.latest-post-title {
    font-size: var(--font-size-lg);
  }
}
@media (min-width: 1024px) {
  .ek-latest-posts .ek-latest-post-card__header .entry-title.latest-post-title {
    font-size: var(--font-size-xl);
  }
}
.ek-latest-posts .ek-latest-post-excerpt {
  color: var(--color-text-light);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--spacing-4);
  font-size: var(--font-size-sm);
  -webkit-box-flex: 1;
          flex: 1;
}
.ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-excerpt {
  font-size: var(--font-size-base);
  margin-bottom: var(--spacing-6);
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-post-excerpt {
    font-size: var(--font-size-sm);
    margin-bottom: var(--spacing-5);
  }
}
@media (min-width: 1024px) {
  .ek-latest-posts .ek-latest-post-excerpt {
    font-size: var(--font-size-base);
  }
}
.ek-latest-posts .ek-latest-post-card__meta {
  margin-top: auto;
  padding-top: var(--spacing-3);
  border-top: 1px solid var(--color-border);
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-post-card__meta {
    padding-top: var(--spacing-4);
  }
}
.ek-latest-post-card--featured .ek-latest-posts .ek-latest-post-card__meta {
  margin-top: auto;
}
.ek-latest-posts .ek-latest-post-meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  flex-wrap: wrap;
  gap: var(--spacing-3);
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
  line-height: 1.5;
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-post-meta {
    font-size: var(--font-size-sm);
  }
}
@media (max-width: 767px) {
  .ek-latest-posts .ek-latest-post-meta {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: start;
            align-items: flex-start;
    gap: var(--spacing-2);
  }
}
.ek-latest-posts .ek-latest-post-date {
  color: var(--color-text-light);
  font-weight: var(--font-weight-medium);
  white-space: nowrap;
}
.ek-latest-posts .ek-meta-separator {
  color: var(--color-border);
  font-weight: 400;
  margin: 0 var(--spacing-1);
}
.ek-latest-posts .ek-latest-post-author {
  color: var(--color-text-light);
}
.ek-latest-posts .ek-latest-post-author a {
  color: var(--color-link);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  -webkit-transition: color var(--transition-fast);
  transition: color var(--transition-fast);
}
.ek-latest-posts .ek-latest-post-author a:hover, .ek-latest-posts .ek-latest-post-author a:focus {
  color: var(--color-link-hover);
  text-decoration: underline;
}
.ek-latest-posts .ek-latest-reading-time {
  color: var(--color-text-muted);
  font-weight: var(--font-weight-medium);
  white-space: nowrap;
}
.ek-latest-posts .ek-latest-read-more-link {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  gap: var(--spacing-2);
  color: var(--color-link);
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  -webkit-transition: all var(--transition-fast);
  transition: all var(--transition-fast);
  margin-left: auto;
}
.ek-latest-posts .ek-latest-read-more-link:hover {
  color: var(--color-link-hover);
  -webkit-transform: translateX(var(--spacing-2_5));
          transform: translateX(var(--spacing-2_5)); /* 10px */
}
.ek-latest-posts .ek-latest-read-more-link .ek-latest-read-more-arrow {
  font-size: var(--font-size-base);
  -webkit-transition: -webkit-transform var(--transition-fast);
  transition: -webkit-transform var(--transition-fast);
  transition: transform var(--transition-fast);
  transition: transform var(--transition-fast), -webkit-transform var(--transition-fast);
}
.ek-latest-posts .ek-latest-read-more-link:hover .ek-latest-read-more-arrow {
  -webkit-transform: translateX(var(--spacing-1));
          transform: translateX(var(--spacing-1)); /* 4px */
}
.ek-latest-posts .ek-latest-posts-title {
  font-family: var(--font-heading);
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-main);
  margin: 0 0 var(--spacing-8) 0;
  text-align: center;
  line-height: var(--line-height-tight);
}
@media (min-width: 768px) {
  .ek-latest-posts .ek-latest-posts-title {
    font-size: var(--font-size-3xl);
    margin-bottom: var(--spacing-10);
  }
}
@media (min-width: 1024px) {
  .ek-latest-posts .ek-latest-posts-title {
    margin-bottom: var(--spacing-12);
  }
}
@media (max-width: 767px) {
  .ek-latest-posts {
    margin: var(--spacing-8) 0 var(--spacing-6) 0;
  }
  .ek-latest-posts .ek-latest-posts-grid {
    gap: var(--spacing-5);
  }
  .ek-latest-posts .ek-latest-post-card__content {
    padding: var(--spacing-4);
  }
  .ek-latest-posts .ek-latest-posts-title {
    font-size: var(--font-size-xl);
    margin-bottom: var(--spacing-6);
  }
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-post-card {
    background: var(--color-gray-800);
  }
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-post-card:hover {
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
  }
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-post-categories .ek-latest-post-category {
    background: var(--color-link);
    color: #ffffff !important;
  }
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-post-categories .ek-latest-post-category:hover {
    background: var(--color-link-hover);
    color: #ffffff !important;
  }
  :root:not([data-theme=light]) .ek-latest-posts .latest-post-title a {
    color: var(--color-white);
  }
  :root:not([data-theme=light]) .ek-latest-posts .latest-post-title a:hover {
    color: var(--color-link);
  }
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-post-excerpt {
    color: var(--color-gray-300);
  }
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-post-meta {
    color: var(--color-gray-400);
  }
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-post-date,
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-post-author {
    color: var(--color-gray-400);
  }
  :root:not([data-theme=light]) .ek-latest-posts .ek-latest-posts-title {
    color: var(--color-white);
  }
}
[data-theme=dark] .ek-latest-posts .ek-latest-post-card {
  background: var(--color-gray-800);
}
[data-theme=dark] .ek-latest-posts .ek-latest-post-card:hover {
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
}
[data-theme=dark] .ek-latest-posts .ek-latest-post-categories .ek-latest-post-category {
  background: var(--color-link);
  color: #ffffff !important;
}
[data-theme=dark] .ek-latest-posts .ek-latest-post-categories .ek-latest-post-category:hover {
  background: var(--color-link-hover);
  color: #ffffff !important;
}
[data-theme=dark] .ek-latest-posts .latest-post-title a {
  color: var(--color-white);
}
[data-theme=dark] .ek-latest-posts .latest-post-title a:hover {
  color: var(--color-link);
}
[data-theme=dark] .ek-latest-posts .ek-latest-post-excerpt {
  color: var(--color-gray-300);
}
[data-theme=dark] .ek-latest-posts .ek-latest-post-meta {
  color: var(--color-gray-400);
}
[data-theme=dark] .ek-latest-posts .ek-latest-post-date,
[data-theme=dark] .ek-latest-posts .ek-latest-post-author {
  color: var(--color-gray-400);
}
[data-theme=dark] .ek-latest-posts .ek-latest-posts-title {
  color: var(--color-white);
}
/* Geo-Journalism Embed Wrappers */
/* Generic Embed Container */
.ek-geo-embed-container {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: var(--border-radius-lg);
  background: var(--color-bg-hover);
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-height: 18.75rem; /* 300px */
}
/* Datawrapper Responsive Embed */
.ek-dw-chart {
  width: 100%;
  margin-bottom: 1.875rem; /* 30px */
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
}
.ek-dw-chart iframe {
  width: 100% !important;
  height: 100% !important;
  border: none;
  border-radius: var(--border-radius-lg);
}
/* Flourish Responsive Embed */
.ek-flourish-embed {
  width: 100%;
  margin-bottom: 1.875rem; /* 30px */
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
}
.ek-flourish-embed iframe {
  width: 100% !important;
  border: none;
  border-radius: var(--border-radius-lg);
}
/* Google Maps Embed */
.ek-google-maps-embed {
  width: 100%;
  margin-bottom: 1.875rem; /* 30px */
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
}
.ek-google-maps-embed iframe {
  width: 100% !important;
  border: none;
  border-radius: var(--border-radius-lg);
}
/* Scrollytelling Container */
.ek-scrolly-container {
  position: relative;
  margin-bottom: 100vh; /* Ensure space for scroll */
}
.ek-scrolly-visual {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  height: 100vh;
  width: 100%;
  background: var(--color-gray-100); /* Fallback */
  z-index: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}
.ek-scrolly-content {
  position: relative;
  z-index: 2;
  padding: 0 var(--spacing-5); /* 20px */
  pointer-events: none; /* Let clicks pass through to map if needed */
}
.ek-scrolly-card {
  background: rgba(255, 255, 255, var(--opacity-95));
  padding: 1.875rem; /* 30px */
  margin-bottom: 60vh; /* Spacing between cards */
  max-width: 31.25rem; /* 500px */
  margin-left: auto; /* Right aligned cards default */
  margin-right: var(--spacing-5); /* 20px */
  border-radius: var(--border-radius-lg);
  -webkit-box-shadow: var(--box-shadow-xl);
          box-shadow: var(--box-shadow-xl);
  pointer-events: auto;
  -webkit-transition: opacity var(--transition-base);
  transition: opacity var(--transition-base);
}
.ek-scrolly-card.ek-active {
  opacity: 1;
  border-left: var(--spacing-2_5) solid var(--color-forest-green); /* 10px */
}
/* Only stretch the main content area, keep header container normal */
.page-template-scrollytelling #scrolly-main.ek-container,
.page-template-scrollytelling main#scrolly-main {
  max-width: 100%;
  padding: 0;
  margin: 0;
}
/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */
.fa-solid,
.fa-regular,
.fa-brands,
.fa-classic,
.fas,
.far,
.fab,
.fa {
  --_fa-family: var(--fa-family, var(--fa-style-family, 'Font Awesome 7 Free'));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: var(--fa-display, inline-block);
  font-family: var(--_fa-family);
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  font-style: normal;
  font-synthesis: none;
  font-variant: normal;
  font-weight: var(--fa-style, 900);
  line-height: 1;
  text-align: center;
  text-rendering: auto;
  width: var(--fa-width, 1.25em);
}
:is(.fas,
.far,
.fab,
.fa-solid,
.fa-regular,
.fa-brands,
.fa-classic,
.fa)::before {
  content: var(--fa)/"";
}
@supports not (content: ""/"") {
  :is(.fas,
  .far,
  .fab,
  .fa-solid,
  .fa-regular,
  .fa-brands,
  .fa-classic,
  .fa)::before {
    content: var(--fa);
  }
}
.fa-1x {
  font-size: 1em;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-6x {
  font-size: 6em;
}
.fa-7x {
  font-size: 7em;
}
.fa-8x {
  font-size: 8em;
}
.fa-9x {
  font-size: 9em;
}
.fa-10x {
  font-size: 10em;
}
.fa-2xs {
  font-size: calc(10 / 16 * 1em); /* converts a 10px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 10 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 10 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}
.fa-xs {
  font-size: calc(12 / 16 * 1em); /* converts a 12px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 12 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 12 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}
.fa-sm {
  font-size: calc(14 / 16 * 1em); /* converts a 14px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 14 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 14 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}
.fa-lg {
  font-size: calc(20 / 16 * 1em); /* converts a 20px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 20 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 20 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}
.fa-xl {
  font-size: calc(24 / 16 * 1em); /* converts a 24px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 24 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 24 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}
.fa-2xl {
  font-size: calc(32 / 16 * 1em); /* converts a 32px size into an em-based value that's relative to the scale's 16px base */
  line-height: calc(1 / 32 * 1em); /* sets the line-height of the icon back to that of it's parent */
  vertical-align: calc((6 / 32 - 0.375) * 1em); /* vertically centers the icon taking into account the surrounding text's descender */
}
.fa-width-auto {
  --fa-width: auto;
}
.fa-fw,
.fa-width-fixed {
  --fa-width: 1.25em;
}
.fa-ul {
  list-style-type: none;
  -webkit-margin-start: var(--fa-li-margin, 2.5em);
          margin-inline-start: var(--fa-li-margin, 2.5em);
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  inset-inline-start: calc(-1 * var(--fa-li-width, 2em));
  position: absolute;
  text-align: center;
  width: var(--fa-li-width, 2em);
  line-height: inherit;
}
/* Heads Up: Bordered Icons will not be supported in the future!
  - This feature will be deprecated in the next major release of Font Awesome (v8)!
  - You may continue to use it in this version *v7), but it will not be supported in Font Awesome v8.
*/
/* Notes:
* --@{v.$css-prefix}-border-width = 1/16 by default (to render as ~1px based on a 16px default font-size)
* --@{v.$css-prefix}-border-padding =
  ** 3/16 for vertical padding (to give ~2px of vertical whitespace around an icon considering it's vertical alignment)
  ** 4/16 for horizontal padding (to give ~4px of horizontal whitespace around an icon)
*/
.fa-border {
  border-color: var(--fa-border-color, #eee);
  border-radius: var(--fa-border-radius, 0.1em);
  border-style: var(--fa-border-style, solid);
  border-width: var(--fa-border-width, 0.0625em);
  -webkit-box-sizing: var(--fa-border-box-sizing, content-box);
          box-sizing: var(--fa-border-box-sizing, content-box);
  padding: var(--fa-border-padding, 0.1875em 0.25em);
}
.fa-pull-left,
.fa-pull-start {
  float: inline-start;
  -webkit-margin-end: var(--fa-pull-margin, 0.3em);
          margin-inline-end: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right,
.fa-pull-end {
  float: inline-end;
  -webkit-margin-start: var(--fa-pull-margin, 0.3em);
          margin-inline-start: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
  -webkit-animation-name: fa-beat;
          animation-name: fa-beat;
  -webkit-animation-delay: var(--fa-animation-delay, 0s);
          animation-delay: var(--fa-animation-delay, 0s);
  -webkit-animation-direction: var(--fa-animation-direction, normal);
          animation-direction: var(--fa-animation-direction, normal);
  -webkit-animation-duration: var(--fa-animation-duration, 1s);
          animation-duration: var(--fa-animation-duration, 1s);
  -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
          animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);
          animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
  -webkit-animation-name: fa-bounce;
          animation-name: fa-bounce;
  -webkit-animation-delay: var(--fa-animation-delay, 0s);
          animation-delay: var(--fa-animation-delay, 0s);
  -webkit-animation-direction: var(--fa-animation-direction, normal);
          animation-direction: var(--fa-animation-direction, normal);
  -webkit-animation-duration: var(--fa-animation-duration, 1s);
          animation-duration: var(--fa-animation-duration, 1s);
  -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
          animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
          animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
  -webkit-animation-name: fa-fade;
          animation-name: fa-fade;
  -webkit-animation-delay: var(--fa-animation-delay, 0s);
          animation-delay: var(--fa-animation-delay, 0s);
  -webkit-animation-direction: var(--fa-animation-direction, normal);
          animation-direction: var(--fa-animation-direction, normal);
  -webkit-animation-duration: var(--fa-animation-duration, 1s);
          animation-duration: var(--fa-animation-duration, 1s);
  -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
          animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
          animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
  -webkit-animation-name: fa-beat-fade;
          animation-name: fa-beat-fade;
  -webkit-animation-delay: var(--fa-animation-delay, 0s);
          animation-delay: var(--fa-animation-delay, 0s);
  -webkit-animation-direction: var(--fa-animation-direction, normal);
          animation-direction: var(--fa-animation-direction, normal);
  -webkit-animation-duration: var(--fa-animation-duration, 1s);
          animation-duration: var(--fa-animation-duration, 1s);
  -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
          animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
          animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
  -webkit-animation-name: fa-flip;
          animation-name: fa-flip;
  -webkit-animation-delay: var(--fa-animation-delay, 0s);
          animation-delay: var(--fa-animation-delay, 0s);
  -webkit-animation-direction: var(--fa-animation-direction, normal);
          animation-direction: var(--fa-animation-direction, normal);
  -webkit-animation-duration: var(--fa-animation-duration, 1s);
          animation-duration: var(--fa-animation-duration, 1s);
  -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
          animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);
          animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
  -webkit-animation-name: fa-shake;
          animation-name: fa-shake;
  -webkit-animation-delay: var(--fa-animation-delay, 0s);
          animation-delay: var(--fa-animation-delay, 0s);
  -webkit-animation-direction: var(--fa-animation-direction, normal);
          animation-direction: var(--fa-animation-direction, normal);
  -webkit-animation-duration: var(--fa-animation-duration, 1s);
          animation-duration: var(--fa-animation-duration, 1s);
  -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
          animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  -webkit-animation-timing-function: var(--fa-animation-timing, linear);
          animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
  -webkit-animation-name: fa-spin;
          animation-name: fa-spin;
  -webkit-animation-delay: var(--fa-animation-delay, 0s);
          animation-delay: var(--fa-animation-delay, 0s);
  -webkit-animation-direction: var(--fa-animation-direction, normal);
          animation-direction: var(--fa-animation-direction, normal);
  -webkit-animation-duration: var(--fa-animation-duration, 2s);
          animation-duration: var(--fa-animation-duration, 2s);
  -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
          animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  -webkit-animation-timing-function: var(--fa-animation-timing, linear);
          animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
  --fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
  -webkit-animation-name: fa-spin;
          animation-name: fa-spin;
  -webkit-animation-direction: var(--fa-animation-direction, normal);
          animation-direction: var(--fa-animation-direction, normal);
  -webkit-animation-duration: var(--fa-animation-duration, 1s);
          animation-duration: var(--fa-animation-duration, 1s);
  -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
          animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  -webkit-animation-timing-function: var(--fa-animation-timing, steps(8));
          animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
  .fa-beat,
  .fa-bounce,
  .fa-fade,
  .fa-beat-fade,
  .fa-flip,
  .fa-pulse,
  .fa-shake,
  .fa-spin,
  .fa-spin-pulse {
    -webkit-animation: none !important;
            animation: none !important;
    -webkit-transition: none !important;
    transition: none !important;
  }
}
@-webkit-keyframes fa-beat {
  0%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  45% {
    -webkit-transform: scale(var(--fa-beat-scale, 1.25));
            transform: scale(var(--fa-beat-scale, 1.25));
  }
}
@keyframes fa-beat {
  0%, 90% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  45% {
    -webkit-transform: scale(var(--fa-beat-scale, 1.25));
            transform: scale(var(--fa-beat-scale, 1.25));
  }
}
@-webkit-keyframes fa-bounce {
  0% {
    -webkit-transform: scale(1, 1) translateY(0);
            transform: scale(1, 1) translateY(0);
  }
  10% {
    -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
            transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
  }
  30% {
    -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
            transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
  }
  50% {
    -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
            transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
  }
  57% {
    -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
            transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
  }
  64% {
    -webkit-transform: scale(1, 1) translateY(0);
            transform: scale(1, 1) translateY(0);
  }
  100% {
    -webkit-transform: scale(1, 1) translateY(0);
            transform: scale(1, 1) translateY(0);
  }
}
@keyframes fa-bounce {
  0% {
    -webkit-transform: scale(1, 1) translateY(0);
            transform: scale(1, 1) translateY(0);
  }
  10% {
    -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
            transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
  }
  30% {
    -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
            transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
  }
  50% {
    -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
            transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
  }
  57% {
    -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
            transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
  }
  64% {
    -webkit-transform: scale(1, 1) translateY(0);
            transform: scale(1, 1) translateY(0);
  }
  100% {
    -webkit-transform: scale(1, 1) translateY(0);
            transform: scale(1, 1) translateY(0);
  }
}
@-webkit-keyframes fa-fade {
  50% {
    opacity: var(--fa-fade-opacity, 0.4);
  }
}
@keyframes fa-fade {
  50% {
    opacity: var(--fa-fade-opacity, 0.4);
  }
}
@-webkit-keyframes fa-beat-fade {
  0%, 100% {
    opacity: var(--fa-beat-fade-opacity, 0.4);
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));
            transform: scale(var(--fa-beat-fade-scale, 1.125));
  }
}
@keyframes fa-beat-fade {
  0%, 100% {
    opacity: var(--fa-beat-fade-opacity, 0.4);
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));
            transform: scale(var(--fa-beat-fade-scale, 1.125));
  }
}
@-webkit-keyframes fa-flip {
  50% {
    -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
            transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
  }
}
@keyframes fa-flip {
  50% {
    -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
            transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
  }
}
@-webkit-keyframes fa-shake {
  0% {
    -webkit-transform: rotate(-15deg);
            transform: rotate(-15deg);
  }
  4% {
    -webkit-transform: rotate(15deg);
            transform: rotate(15deg);
  }
  8%, 24% {
    -webkit-transform: rotate(-18deg);
            transform: rotate(-18deg);
  }
  12%, 28% {
    -webkit-transform: rotate(18deg);
            transform: rotate(18deg);
  }
  16% {
    -webkit-transform: rotate(-22deg);
            transform: rotate(-22deg);
  }
  20% {
    -webkit-transform: rotate(22deg);
            transform: rotate(22deg);
  }
  32% {
    -webkit-transform: rotate(-12deg);
            transform: rotate(-12deg);
  }
  36% {
    -webkit-transform: rotate(12deg);
            transform: rotate(12deg);
  }
  40%, 100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@keyframes fa-shake {
  0% {
    -webkit-transform: rotate(-15deg);
            transform: rotate(-15deg);
  }
  4% {
    -webkit-transform: rotate(15deg);
            transform: rotate(15deg);
  }
  8%, 24% {
    -webkit-transform: rotate(-18deg);
            transform: rotate(-18deg);
  }
  12%, 28% {
    -webkit-transform: rotate(18deg);
            transform: rotate(18deg);
  }
  16% {
    -webkit-transform: rotate(-22deg);
            transform: rotate(-22deg);
  }
  20% {
    -webkit-transform: rotate(22deg);
            transform: rotate(22deg);
  }
  32% {
    -webkit-transform: rotate(-12deg);
            transform: rotate(-12deg);
  }
  36% {
    -webkit-transform: rotate(12deg);
            transform: rotate(12deg);
  }
  40%, 100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.fa-rotate-90 {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.fa-rotate-180 {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.fa-rotate-270 {
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg);
}
.fa-flip-horizontal {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.fa-flip-vertical {
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
  -webkit-transform: scale(-1, -1);
          transform: scale(-1, -1);
}
.fa-rotate-by {
  -webkit-transform: rotate(var(--fa-rotate-angle, 0));
          transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
  --fa-width: 100%;
  inset: 0;
  position: absolute;
  text-align: center;
  width: var(--fa-width);
  z-index: var(--fa-stack-z-index, auto);
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: var(--fa-inverse, #fff);
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-0 {
  --fa: "\30 ";
}
.fa-1 {
  --fa: "\31 ";
}
.fa-2 {
  --fa: "\32 ";
}
.fa-3 {
  --fa: "\33 ";
}
.fa-4 {
  --fa: "\34 ";
}
.fa-5 {
  --fa: "\35 ";
}
.fa-6 {
  --fa: "\36 ";
}
.fa-7 {
  --fa: "\37 ";
}
.fa-8 {
  --fa: "\38 ";
}
.fa-9 {
  --fa: "\39 ";
}
.fa-exclamation {
  --fa: "\!";
}
.fa-hashtag {
  --fa: "\#";
}
.fa-dollar-sign {
  --fa: "\$";
}
.fa-dollar {
  --fa: "\$";
}
.fa-usd {
  --fa: "\$";
}
.fa-percent {
  --fa: "\%";
}
.fa-percentage {
  --fa: "\%";
}
.fa-asterisk {
  --fa: "\*";
}
.fa-plus {
  --fa: "\+";
}
.fa-add {
  --fa: "\+";
}
.fa-less-than {
  --fa: "\<";
}
.fa-equals {
  --fa: "\=";
}
.fa-greater-than {
  --fa: "\>";
}
.fa-question {
  --fa: "\?";
}
.fa-at {
  --fa: "\@";
}
.fa-a {
  --fa: "A";
}
.fa-b {
  --fa: "B";
}
.fa-c {
  --fa: "C";
}
.fa-d {
  --fa: "D";
}
.fa-e {
  --fa: "E";
}
.fa-f {
  --fa: "F";
}
.fa-g {
  --fa: "G";
}
.fa-h {
  --fa: "H";
}
.fa-i {
  --fa: "I";
}
.fa-j {
  --fa: "J";
}
.fa-k {
  --fa: "K";
}
.fa-l {
  --fa: "L";
}
.fa-m {
  --fa: "M";
}
.fa-n {
  --fa: "N";
}
.fa-o {
  --fa: "O";
}
.fa-p {
  --fa: "P";
}
.fa-q {
  --fa: "Q";
}
.fa-r {
  --fa: "R";
}
.fa-s {
  --fa: "S";
}
.fa-t {
  --fa: "T";
}
.fa-u {
  --fa: "U";
}
.fa-v {
  --fa: "V";
}
.fa-w {
  --fa: "W";
}
.fa-x {
  --fa: "X";
}
.fa-y {
  --fa: "Y";
}
.fa-z {
  --fa: "Z";
}
.fa-faucet {
  --fa: "\e005";
}
.fa-faucet-drip {
  --fa: "\e006";
}
.fa-house-chimney-window {
  --fa: "\e00d";
}
.fa-house-signal {
  --fa: "\e012";
}
.fa-temperature-arrow-down {
  --fa: "\e03f";
}
.fa-temperature-down {
  --fa: "\e03f";
}
.fa-temperature-arrow-up {
  --fa: "\e040";
}
.fa-temperature-up {
  --fa: "\e040";
}
.fa-trailer {
  --fa: "\e041";
}
.fa-bacteria {
  --fa: "\e059";
}
.fa-bacterium {
  --fa: "\e05a";
}
.fa-box-tissue {
  --fa: "\e05b";
}
.fa-hand-holding-medical {
  --fa: "\e05c";
}
.fa-hand-sparkles {
  --fa: "\e05d";
}
.fa-hands-bubbles {
  --fa: "\e05e";
}
.fa-hands-wash {
  --fa: "\e05e";
}
.fa-handshake-slash {
  --fa: "\e060";
}
.fa-handshake-alt-slash {
  --fa: "\e060";
}
.fa-handshake-simple-slash {
  --fa: "\e060";
}
.fa-head-side-cough {
  --fa: "\e061";
}
.fa-head-side-cough-slash {
  --fa: "\e062";
}
.fa-head-side-mask {
  --fa: "\e063";
}
.fa-head-side-virus {
  --fa: "\e064";
}
.fa-house-chimney-user {
  --fa: "\e065";
}
.fa-house-laptop {
  --fa: "\e066";
}
.fa-laptop-house {
  --fa: "\e066";
}
.fa-lungs-virus {
  --fa: "\e067";
}
.fa-people-arrows {
  --fa: "\e068";
}
.fa-people-arrows-left-right {
  --fa: "\e068";
}
.fa-plane-slash {
  --fa: "\e069";
}
.fa-pump-medical {
  --fa: "\e06a";
}
.fa-pump-soap {
  --fa: "\e06b";
}
.fa-shield-virus {
  --fa: "\e06c";
}
.fa-sink {
  --fa: "\e06d";
}
.fa-soap {
  --fa: "\e06e";
}
.fa-stopwatch-20 {
  --fa: "\e06f";
}
.fa-shop-slash {
  --fa: "\e070";
}
.fa-store-alt-slash {
  --fa: "\e070";
}
.fa-store-slash {
  --fa: "\e071";
}
.fa-toilet-paper-slash {
  --fa: "\e072";
}
.fa-users-slash {
  --fa: "\e073";
}
.fa-virus {
  --fa: "\e074";
}
.fa-virus-slash {
  --fa: "\e075";
}
.fa-viruses {
  --fa: "\e076";
}
.fa-vest {
  --fa: "\e085";
}
.fa-vest-patches {
  --fa: "\e086";
}
.fa-arrow-trend-down {
  --fa: "\e097";
}
.fa-arrow-trend-up {
  --fa: "\e098";
}
.fa-arrow-up-from-bracket {
  --fa: "\e09a";
}
.fa-austral-sign {
  --fa: "\e0a9";
}
.fa-baht-sign {
  --fa: "\e0ac";
}
.fa-bitcoin-sign {
  --fa: "\e0b4";
}
.fa-bolt-lightning {
  --fa: "\e0b7";
}
.fa-book-bookmark {
  --fa: "\e0bb";
}
.fa-camera-rotate {
  --fa: "\e0d8";
}
.fa-cedi-sign {
  --fa: "\e0df";
}
.fa-chart-column {
  --fa: "\e0e3";
}
.fa-chart-gantt {
  --fa: "\e0e4";
}
.fa-clapperboard {
  --fa: "\e131";
}
.fa-clover {
  --fa: "\e139";
}
.fa-code-compare {
  --fa: "\e13a";
}
.fa-code-fork {
  --fa: "\e13b";
}
.fa-code-pull-request {
  --fa: "\e13c";
}
.fa-colon-sign {
  --fa: "\e140";
}
.fa-cruzeiro-sign {
  --fa: "\e152";
}
.fa-display {
  --fa: "\e163";
}
.fa-dong-sign {
  --fa: "\e169";
}
.fa-elevator {
  --fa: "\e16d";
}
.fa-filter-circle-xmark {
  --fa: "\e17b";
}
.fa-florin-sign {
  --fa: "\e184";
}
.fa-folder-closed {
  --fa: "\e185";
}
.fa-franc-sign {
  --fa: "\e18f";
}
.fa-guarani-sign {
  --fa: "\e19a";
}
.fa-gun {
  --fa: "\e19b";
}
.fa-hands-clapping {
  --fa: "\e1a8";
}
.fa-house-user {
  --fa: "\e1b0";
}
.fa-home-user {
  --fa: "\e1b0";
}
.fa-indian-rupee-sign {
  --fa: "\e1bc";
}
.fa-indian-rupee {
  --fa: "\e1bc";
}
.fa-inr {
  --fa: "\e1bc";
}
.fa-kip-sign {
  --fa: "\e1c4";
}
.fa-lari-sign {
  --fa: "\e1c8";
}
.fa-litecoin-sign {
  --fa: "\e1d3";
}
.fa-manat-sign {
  --fa: "\e1d5";
}
.fa-mask-face {
  --fa: "\e1d7";
}
.fa-mill-sign {
  --fa: "\e1ed";
}
.fa-money-bills {
  --fa: "\e1f3";
}
.fa-naira-sign {
  --fa: "\e1f6";
}
.fa-notdef {
  --fa: "\e1fe";
}
.fa-panorama {
  --fa: "\e209";
}
.fa-peseta-sign {
  --fa: "\e221";
}
.fa-peso-sign {
  --fa: "\e222";
}
.fa-plane-up {
  --fa: "\e22d";
}
.fa-rupiah-sign {
  --fa: "\e23d";
}
.fa-stairs {
  --fa: "\e289";
}
.fa-timeline {
  --fa: "\e29c";
}
.fa-truck-front {
  --fa: "\e2b7";
}
.fa-turkish-lira-sign {
  --fa: "\e2bb";
}
.fa-try {
  --fa: "\e2bb";
}
.fa-turkish-lira {
  --fa: "\e2bb";
}
.fa-vault {
  --fa: "\e2c5";
}
.fa-wand-magic-sparkles {
  --fa: "\e2ca";
}
.fa-magic-wand-sparkles {
  --fa: "\e2ca";
}
.fa-wheat-awn {
  --fa: "\e2cd";
}
.fa-wheat-alt {
  --fa: "\e2cd";
}
.fa-wheelchair-move {
  --fa: "\e2ce";
}
.fa-wheelchair-alt {
  --fa: "\e2ce";
}
.fa-bangladeshi-taka-sign {
  --fa: "\e2e6";
}
.fa-bowl-rice {
  --fa: "\e2eb";
}
.fa-person-pregnant {
  --fa: "\e31e";
}
.fa-house-chimney {
  --fa: "\e3af";
}
.fa-home-lg {
  --fa: "\e3af";
}
.fa-house-crack {
  --fa: "\e3b1";
}
.fa-house-medical {
  --fa: "\e3b2";
}
.fa-cent-sign {
  --fa: "\e3f5";
}
.fa-plus-minus {
  --fa: "\e43c";
}
.fa-sailboat {
  --fa: "\e445";
}
.fa-section {
  --fa: "\e447";
}
.fa-shrimp {
  --fa: "\e448";
}
.fa-brazilian-real-sign {
  --fa: "\e46c";
}
.fa-chart-simple {
  --fa: "\e473";
}
.fa-diagram-next {
  --fa: "\e476";
}
.fa-diagram-predecessor {
  --fa: "\e477";
}
.fa-diagram-successor {
  --fa: "\e47a";
}
.fa-earth-oceania {
  --fa: "\e47b";
}
.fa-globe-oceania {
  --fa: "\e47b";
}
.fa-bug-slash {
  --fa: "\e490";
}
.fa-file-circle-plus {
  --fa: "\e494";
}
.fa-shop-lock {
  --fa: "\e4a5";
}
.fa-virus-covid {
  --fa: "\e4a8";
}
.fa-virus-covid-slash {
  --fa: "\e4a9";
}
.fa-anchor-circle-check {
  --fa: "\e4aa";
}
.fa-anchor-circle-exclamation {
  --fa: "\e4ab";
}
.fa-anchor-circle-xmark {
  --fa: "\e4ac";
}
.fa-anchor-lock {
  --fa: "\e4ad";
}
.fa-arrow-down-up-across-line {
  --fa: "\e4af";
}
.fa-arrow-down-up-lock {
  --fa: "\e4b0";
}
.fa-arrow-right-to-city {
  --fa: "\e4b3";
}
.fa-arrow-up-from-ground-water {
  --fa: "\e4b5";
}
.fa-arrow-up-from-water-pump {
  --fa: "\e4b6";
}
.fa-arrow-up-right-dots {
  --fa: "\e4b7";
}
.fa-arrows-down-to-line {
  --fa: "\e4b8";
}
.fa-arrows-down-to-people {
  --fa: "\e4b9";
}
.fa-arrows-left-right-to-line {
  --fa: "\e4ba";
}
.fa-arrows-spin {
  --fa: "\e4bb";
}
.fa-arrows-split-up-and-left {
  --fa: "\e4bc";
}
.fa-arrows-to-circle {
  --fa: "\e4bd";
}
.fa-arrows-to-dot {
  --fa: "\e4be";
}
.fa-arrows-to-eye {
  --fa: "\e4bf";
}
.fa-arrows-turn-right {
  --fa: "\e4c0";
}
.fa-arrows-turn-to-dots {
  --fa: "\e4c1";
}
.fa-arrows-up-to-line {
  --fa: "\e4c2";
}
.fa-bore-hole {
  --fa: "\e4c3";
}
.fa-bottle-droplet {
  --fa: "\e4c4";
}
.fa-bottle-water {
  --fa: "\e4c5";
}
.fa-bowl-food {
  --fa: "\e4c6";
}
.fa-boxes-packing {
  --fa: "\e4c7";
}
.fa-bridge {
  --fa: "\e4c8";
}
.fa-bridge-circle-check {
  --fa: "\e4c9";
}
.fa-bridge-circle-exclamation {
  --fa: "\e4ca";
}
.fa-bridge-circle-xmark {
  --fa: "\e4cb";
}
.fa-bridge-lock {
  --fa: "\e4cc";
}
.fa-bridge-water {
  --fa: "\e4ce";
}
.fa-bucket {
  --fa: "\e4cf";
}
.fa-bugs {
  --fa: "\e4d0";
}
.fa-building-circle-arrow-right {
  --fa: "\e4d1";
}
.fa-building-circle-check {
  --fa: "\e4d2";
}
.fa-building-circle-exclamation {
  --fa: "\e4d3";
}
.fa-building-circle-xmark {
  --fa: "\e4d4";
}
.fa-building-flag {
  --fa: "\e4d5";
}
.fa-building-lock {
  --fa: "\e4d6";
}
.fa-building-ngo {
  --fa: "\e4d7";
}
.fa-building-shield {
  --fa: "\e4d8";
}
.fa-building-un {
  --fa: "\e4d9";
}
.fa-building-user {
  --fa: "\e4da";
}
.fa-building-wheat {
  --fa: "\e4db";
}
.fa-burst {
  --fa: "\e4dc";
}
.fa-car-on {
  --fa: "\e4dd";
}
.fa-car-tunnel {
  --fa: "\e4de";
}
.fa-child-combatant {
  --fa: "\e4e0";
}
.fa-child-rifle {
  --fa: "\e4e0";
}
.fa-children {
  --fa: "\e4e1";
}
.fa-circle-nodes {
  --fa: "\e4e2";
}
.fa-clipboard-question {
  --fa: "\e4e3";
}
.fa-cloud-showers-water {
  --fa: "\e4e4";
}
.fa-computer {
  --fa: "\e4e5";
}
.fa-cubes-stacked {
  --fa: "\e4e6";
}
.fa-envelope-circle-check {
  --fa: "\e4e8";
}
.fa-explosion {
  --fa: "\e4e9";
}
.fa-ferry {
  --fa: "\e4ea";
}
.fa-file-circle-exclamation {
  --fa: "\e4eb";
}
.fa-file-circle-minus {
  --fa: "\e4ed";
}
.fa-file-circle-question {
  --fa: "\e4ef";
}
.fa-file-shield {
  --fa: "\e4f0";
}
.fa-fire-burner {
  --fa: "\e4f1";
}
.fa-fish-fins {
  --fa: "\e4f2";
}
.fa-flask-vial {
  --fa: "\e4f3";
}
.fa-glass-water {
  --fa: "\e4f4";
}
.fa-glass-water-droplet {
  --fa: "\e4f5";
}
.fa-group-arrows-rotate {
  --fa: "\e4f6";
}
.fa-hand-holding-hand {
  --fa: "\e4f7";
}
.fa-handcuffs {
  --fa: "\e4f8";
}
.fa-hands-bound {
  --fa: "\e4f9";
}
.fa-hands-holding-child {
  --fa: "\e4fa";
}
.fa-hands-holding-circle {
  --fa: "\e4fb";
}
.fa-heart-circle-bolt {
  --fa: "\e4fc";
}
.fa-heart-circle-check {
  --fa: "\e4fd";
}
.fa-heart-circle-exclamation {
  --fa: "\e4fe";
}
.fa-heart-circle-minus {
  --fa: "\e4ff";
}
.fa-heart-circle-plus {
  --fa: "\e500";
}
.fa-heart-circle-xmark {
  --fa: "\e501";
}
.fa-helicopter-symbol {
  --fa: "\e502";
}
.fa-helmet-un {
  --fa: "\e503";
}
.fa-hill-avalanche {
  --fa: "\e507";
}
.fa-hill-rockslide {
  --fa: "\e508";
}
.fa-house-circle-check {
  --fa: "\e509";
}
.fa-house-circle-exclamation {
  --fa: "\e50a";
}
.fa-house-circle-xmark {
  --fa: "\e50b";
}
.fa-house-fire {
  --fa: "\e50c";
}
.fa-house-flag {
  --fa: "\e50d";
}
.fa-house-flood-water {
  --fa: "\e50e";
}
.fa-house-flood-water-circle-arrow-right {
  --fa: "\e50f";
}
.fa-house-lock {
  --fa: "\e510";
}
.fa-house-medical-circle-check {
  --fa: "\e511";
}
.fa-house-medical-circle-exclamation {
  --fa: "\e512";
}
.fa-house-medical-circle-xmark {
  --fa: "\e513";
}
.fa-house-medical-flag {
  --fa: "\e514";
}
.fa-house-tsunami {
  --fa: "\e515";
}
.fa-jar {
  --fa: "\e516";
}
.fa-jar-wheat {
  --fa: "\e517";
}
.fa-jet-fighter-up {
  --fa: "\e518";
}
.fa-jug-detergent {
  --fa: "\e519";
}
.fa-kitchen-set {
  --fa: "\e51a";
}
.fa-land-mine-on {
  --fa: "\e51b";
}
.fa-landmark-flag {
  --fa: "\e51c";
}
.fa-laptop-file {
  --fa: "\e51d";
}
.fa-lines-leaning {
  --fa: "\e51e";
}
.fa-location-pin-lock {
  --fa: "\e51f";
}
.fa-locust {
  --fa: "\e520";
}
.fa-magnifying-glass-arrow-right {
  --fa: "\e521";
}
.fa-magnifying-glass-chart {
  --fa: "\e522";
}
.fa-mars-and-venus-burst {
  --fa: "\e523";
}
.fa-mask-ventilator {
  --fa: "\e524";
}
.fa-mattress-pillow {
  --fa: "\e525";
}
.fa-mobile-retro {
  --fa: "\e527";
}
.fa-money-bill-transfer {
  --fa: "\e528";
}
.fa-money-bill-trend-up {
  --fa: "\e529";
}
.fa-money-bill-wheat {
  --fa: "\e52a";
}
.fa-mosquito {
  --fa: "\e52b";
}
.fa-mosquito-net {
  --fa: "\e52c";
}
.fa-mound {
  --fa: "\e52d";
}
.fa-mountain-city {
  --fa: "\e52e";
}
.fa-mountain-sun {
  --fa: "\e52f";
}
.fa-oil-well {
  --fa: "\e532";
}
.fa-people-group {
  --fa: "\e533";
}
.fa-people-line {
  --fa: "\e534";
}
.fa-people-pulling {
  --fa: "\e535";
}
.fa-people-robbery {
  --fa: "\e536";
}
.fa-people-roof {
  --fa: "\e537";
}
.fa-person-arrow-down-to-line {
  --fa: "\e538";
}
.fa-person-arrow-up-from-line {
  --fa: "\e539";
}
.fa-person-breastfeeding {
  --fa: "\e53a";
}
.fa-person-burst {
  --fa: "\e53b";
}
.fa-person-cane {
  --fa: "\e53c";
}
.fa-person-chalkboard {
  --fa: "\e53d";
}
.fa-person-circle-check {
  --fa: "\e53e";
}
.fa-person-circle-exclamation {
  --fa: "\e53f";
}
.fa-person-circle-minus {
  --fa: "\e540";
}
.fa-person-circle-plus {
  --fa: "\e541";
}
.fa-person-circle-question {
  --fa: "\e542";
}
.fa-person-circle-xmark {
  --fa: "\e543";
}
.fa-person-dress-burst {
  --fa: "\e544";
}
.fa-person-drowning {
  --fa: "\e545";
}
.fa-person-falling {
  --fa: "\e546";
}
.fa-person-falling-burst {
  --fa: "\e547";
}
.fa-person-half-dress {
  --fa: "\e548";
}
.fa-person-harassing {
  --fa: "\e549";
}
.fa-person-military-pointing {
  --fa: "\e54a";
}
.fa-person-military-rifle {
  --fa: "\e54b";
}
.fa-person-military-to-person {
  --fa: "\e54c";
}
.fa-person-rays {
  --fa: "\e54d";
}
.fa-person-rifle {
  --fa: "\e54e";
}
.fa-person-shelter {
  --fa: "\e54f";
}
.fa-person-walking-arrow-loop-left {
  --fa: "\e551";
}
.fa-person-walking-arrow-right {
  --fa: "\e552";
}
.fa-person-walking-dashed-line-arrow-right {
  --fa: "\e553";
}
.fa-person-walking-luggage {
  --fa: "\e554";
}
.fa-plane-circle-check {
  --fa: "\e555";
}
.fa-plane-circle-exclamation {
  --fa: "\e556";
}
.fa-plane-circle-xmark {
  --fa: "\e557";
}
.fa-plane-lock {
  --fa: "\e558";
}
.fa-plate-wheat {
  --fa: "\e55a";
}
.fa-plug-circle-bolt {
  --fa: "\e55b";
}
.fa-plug-circle-check {
  --fa: "\e55c";
}
.fa-plug-circle-exclamation {
  --fa: "\e55d";
}
.fa-plug-circle-minus {
  --fa: "\e55e";
}
.fa-plug-circle-plus {
  --fa: "\e55f";
}
.fa-plug-circle-xmark {
  --fa: "\e560";
}
.fa-ranking-star {
  --fa: "\e561";
}
.fa-road-barrier {
  --fa: "\e562";
}
.fa-road-bridge {
  --fa: "\e563";
}
.fa-road-circle-check {
  --fa: "\e564";
}
.fa-road-circle-exclamation {
  --fa: "\e565";
}
.fa-road-circle-xmark {
  --fa: "\e566";
}
.fa-road-lock {
  --fa: "\e567";
}
.fa-road-spikes {
  --fa: "\e568";
}
.fa-rug {
  --fa: "\e569";
}
.fa-sack-xmark {
  --fa: "\e56a";
}
.fa-school-circle-check {
  --fa: "\e56b";
}
.fa-school-circle-exclamation {
  --fa: "\e56c";
}
.fa-school-circle-xmark {
  --fa: "\e56d";
}
.fa-school-flag {
  --fa: "\e56e";
}
.fa-school-lock {
  --fa: "\e56f";
}
.fa-sheet-plastic {
  --fa: "\e571";
}
.fa-shield-cat {
  --fa: "\e572";
}
.fa-shield-dog {
  --fa: "\e573";
}
.fa-shield-heart {
  --fa: "\e574";
}
.fa-square-nfi {
  --fa: "\e576";
}
.fa-square-person-confined {
  --fa: "\e577";
}
.fa-square-virus {
  --fa: "\e578";
}
.fa-staff-snake {
  --fa: "\e579";
}
.fa-rod-asclepius {
  --fa: "\e579";
}
.fa-rod-snake {
  --fa: "\e579";
}
.fa-staff-aesculapius {
  --fa: "\e579";
}
.fa-sun-plant-wilt {
  --fa: "\e57a";
}
.fa-tarp {
  --fa: "\e57b";
}
.fa-tarp-droplet {
  --fa: "\e57c";
}
.fa-tent {
  --fa: "\e57d";
}
.fa-tent-arrow-down-to-line {
  --fa: "\e57e";
}
.fa-tent-arrow-left-right {
  --fa: "\e57f";
}
.fa-tent-arrow-turn-left {
  --fa: "\e580";
}
.fa-tent-arrows-down {
  --fa: "\e581";
}
.fa-tents {
  --fa: "\e582";
}
.fa-toilet-portable {
  --fa: "\e583";
}
.fa-toilets-portable {
  --fa: "\e584";
}
.fa-tower-cell {
  --fa: "\e585";
}
.fa-tower-observation {
  --fa: "\e586";
}
.fa-tree-city {
  --fa: "\e587";
}
.fa-trowel {
  --fa: "\e589";
}
.fa-trowel-bricks {
  --fa: "\e58a";
}
.fa-truck-arrow-right {
  --fa: "\e58b";
}
.fa-truck-droplet {
  --fa: "\e58c";
}
.fa-truck-field {
  --fa: "\e58d";
}
.fa-truck-field-un {
  --fa: "\e58e";
}
.fa-truck-plane {
  --fa: "\e58f";
}
.fa-users-between-lines {
  --fa: "\e591";
}
.fa-users-line {
  --fa: "\e592";
}
.fa-users-rays {
  --fa: "\e593";
}
.fa-users-rectangle {
  --fa: "\e594";
}
.fa-users-viewfinder {
  --fa: "\e595";
}
.fa-vial-circle-check {
  --fa: "\e596";
}
.fa-vial-virus {
  --fa: "\e597";
}
.fa-wheat-awn-circle-exclamation {
  --fa: "\e598";
}
.fa-worm {
  --fa: "\e599";
}
.fa-xmarks-lines {
  --fa: "\e59a";
}
.fa-child-dress {
  --fa: "\e59c";
}
.fa-child-reaching {
  --fa: "\e59d";
}
.fa-file-circle-check {
  --fa: "\e5a0";
}
.fa-file-circle-xmark {
  --fa: "\e5a1";
}
.fa-person-through-window {
  --fa: "\e5a9";
}
.fa-plant-wilt {
  --fa: "\e5aa";
}
.fa-stapler {
  --fa: "\e5af";
}
.fa-train-tram {
  --fa: "\e5b4";
}
.fa-table-cells-column-lock {
  --fa: "\e678";
}
.fa-table-cells-row-lock {
  --fa: "\e67a";
}
.fa-web-awesome {
  --fa: "\e682";
}
.fa-thumbtack-slash {
  --fa: "\e68f";
}
.fa-thumb-tack-slash {
  --fa: "\e68f";
}
.fa-table-cells-row-unlock {
  --fa: "\e691";
}
.fa-chart-diagram {
  --fa: "\e695";
}
.fa-comment-nodes {
  --fa: "\e696";
}
.fa-file-fragment {
  --fa: "\e697";
}
.fa-file-half-dashed {
  --fa: "\e698";
}
.fa-hexagon-nodes {
  --fa: "\e699";
}
.fa-hexagon-nodes-bolt {
  --fa: "\e69a";
}
.fa-square-binary {
  --fa: "\e69b";
}
.fa-pentagon {
  --fa: "\e790";
}
.fa-non-binary {
  --fa: "\e807";
}
.fa-spiral {
  --fa: "\e80a";
}
.fa-mobile-vibrate {
  --fa: "\e816";
}
.fa-single-quote-left {
  --fa: "\e81b";
}
.fa-single-quote-right {
  --fa: "\e81c";
}
.fa-bus-side {
  --fa: "\e81d";
}
.fa-septagon {
  --fa: "\e820";
}
.fa-heptagon {
  --fa: "\e820";
}
.fa-martini-glass-empty {
  --fa: "\f000";
}
.fa-glass-martini {
  --fa: "\f000";
}
.fa-music {
  --fa: "\f001";
}
.fa-magnifying-glass {
  --fa: "\f002";
}
.fa-search {
  --fa: "\f002";
}
.fa-heart {
  --fa: "\f004";
}
.fa-star {
  --fa: "\f005";
}
.fa-user {
  --fa: "\f007";
}
.fa-user-alt {
  --fa: "\f007";
}
.fa-user-large {
  --fa: "\f007";
}
.fa-film {
  --fa: "\f008";
}
.fa-film-alt {
  --fa: "\f008";
}
.fa-film-simple {
  --fa: "\f008";
}
.fa-table-cells-large {
  --fa: "\f009";
}
.fa-th-large {
  --fa: "\f009";
}
.fa-table-cells {
  --fa: "\f00a";
}
.fa-th {
  --fa: "\f00a";
}
.fa-table-list {
  --fa: "\f00b";
}
.fa-th-list {
  --fa: "\f00b";
}
.fa-check {
  --fa: "\f00c";
}
.fa-xmark {
  --fa: "\f00d";
}
.fa-close {
  --fa: "\f00d";
}
.fa-multiply {
  --fa: "\f00d";
}
.fa-remove {
  --fa: "\f00d";
}
.fa-times {
  --fa: "\f00d";
}
.fa-magnifying-glass-plus {
  --fa: "\f00e";
}
.fa-search-plus {
  --fa: "\f00e";
}
.fa-magnifying-glass-minus {
  --fa: "\f010";
}
.fa-search-minus {
  --fa: "\f010";
}
.fa-power-off {
  --fa: "\f011";
}
.fa-signal {
  --fa: "\f012";
}
.fa-signal-5 {
  --fa: "\f012";
}
.fa-signal-perfect {
  --fa: "\f012";
}
.fa-gear {
  --fa: "\f013";
}
.fa-cog {
  --fa: "\f013";
}
.fa-house {
  --fa: "\f015";
}
.fa-home {
  --fa: "\f015";
}
.fa-home-alt {
  --fa: "\f015";
}
.fa-home-lg-alt {
  --fa: "\f015";
}
.fa-clock {
  --fa: "\f017";
}
.fa-clock-four {
  --fa: "\f017";
}
.fa-road {
  --fa: "\f018";
}
.fa-download {
  --fa: "\f019";
}
.fa-inbox {
  --fa: "\f01c";
}
.fa-arrow-rotate-right {
  --fa: "\f01e";
}
.fa-arrow-right-rotate {
  --fa: "\f01e";
}
.fa-arrow-rotate-forward {
  --fa: "\f01e";
}
.fa-redo {
  --fa: "\f01e";
}
.fa-arrows-rotate {
  --fa: "\f021";
}
.fa-refresh {
  --fa: "\f021";
}
.fa-sync {
  --fa: "\f021";
}
.fa-rectangle-list {
  --fa: "\f022";
}
.fa-list-alt {
  --fa: "\f022";
}
.fa-lock {
  --fa: "\f023";
}
.fa-flag {
  --fa: "\f024";
}
.fa-headphones {
  --fa: "\f025";
}
.fa-headphones-alt {
  --fa: "\f025";
}
.fa-headphones-simple {
  --fa: "\f025";
}
.fa-volume-off {
  --fa: "\f026";
}
.fa-volume-low {
  --fa: "\f027";
}
.fa-volume-down {
  --fa: "\f027";
}
.fa-volume-high {
  --fa: "\f028";
}
.fa-volume-up {
  --fa: "\f028";
}
.fa-qrcode {
  --fa: "\f029";
}
.fa-barcode {
  --fa: "\f02a";
}
.fa-tag {
  --fa: "\f02b";
}
.fa-tags {
  --fa: "\f02c";
}
.fa-book {
  --fa: "\f02d";
}
.fa-bookmark {
  --fa: "\f02e";
}
.fa-print {
  --fa: "\f02f";
}
.fa-camera {
  --fa: "\f030";
}
.fa-camera-alt {
  --fa: "\f030";
}
.fa-font {
  --fa: "\f031";
}
.fa-bold {
  --fa: "\f032";
}
.fa-italic {
  --fa: "\f033";
}
.fa-text-height {
  --fa: "\f034";
}
.fa-text-width {
  --fa: "\f035";
}
.fa-align-left {
  --fa: "\f036";
}
.fa-align-center {
  --fa: "\f037";
}
.fa-align-right {
  --fa: "\f038";
}
.fa-align-justify {
  --fa: "\f039";
}
.fa-list {
  --fa: "\f03a";
}
.fa-list-squares {
  --fa: "\f03a";
}
.fa-outdent {
  --fa: "\f03b";
}
.fa-dedent {
  --fa: "\f03b";
}
.fa-indent {
  --fa: "\f03c";
}
.fa-video {
  --fa: "\f03d";
}
.fa-video-camera {
  --fa: "\f03d";
}
.fa-image {
  --fa: "\f03e";
}
.fa-location-pin {
  --fa: "\f041";
}
.fa-map-marker {
  --fa: "\f041";
}
.fa-circle-half-stroke {
  --fa: "\f042";
}
.fa-adjust {
  --fa: "\f042";
}
.fa-droplet {
  --fa: "\f043";
}
.fa-tint {
  --fa: "\f043";
}
.fa-pen-to-square {
  --fa: "\f044";
}
.fa-edit {
  --fa: "\f044";
}
.fa-arrows-up-down-left-right {
  --fa: "\f047";
}
.fa-arrows {
  --fa: "\f047";
}
.fa-backward-step {
  --fa: "\f048";
}
.fa-step-backward {
  --fa: "\f048";
}
.fa-backward-fast {
  --fa: "\f049";
}
.fa-fast-backward {
  --fa: "\f049";
}
.fa-backward {
  --fa: "\f04a";
}
.fa-play {
  --fa: "\f04b";
}
.fa-pause {
  --fa: "\f04c";
}
.fa-stop {
  --fa: "\f04d";
}
.fa-forward {
  --fa: "\f04e";
}
.fa-forward-fast {
  --fa: "\f050";
}
.fa-fast-forward {
  --fa: "\f050";
}
.fa-forward-step {
  --fa: "\f051";
}
.fa-step-forward {
  --fa: "\f051";
}
.fa-eject {
  --fa: "\f052";
}
.fa-chevron-left {
  --fa: "\f053";
}
.fa-chevron-right {
  --fa: "\f054";
}
.fa-circle-plus {
  --fa: "\f055";
}
.fa-plus-circle {
  --fa: "\f055";
}
.fa-circle-minus {
  --fa: "\f056";
}
.fa-minus-circle {
  --fa: "\f056";
}
.fa-circle-xmark {
  --fa: "\f057";
}
.fa-times-circle {
  --fa: "\f057";
}
.fa-xmark-circle {
  --fa: "\f057";
}
.fa-circle-check {
  --fa: "\f058";
}
.fa-check-circle {
  --fa: "\f058";
}
.fa-circle-question {
  --fa: "\f059";
}
.fa-question-circle {
  --fa: "\f059";
}
.fa-circle-info {
  --fa: "\f05a";
}
.fa-info-circle {
  --fa: "\f05a";
}
.fa-crosshairs {
  --fa: "\f05b";
}
.fa-ban {
  --fa: "\f05e";
}
.fa-cancel {
  --fa: "\f05e";
}
.fa-arrow-left {
  --fa: "\f060";
}
.fa-arrow-right {
  --fa: "\f061";
}
.fa-arrow-up {
  --fa: "\f062";
}
.fa-arrow-down {
  --fa: "\f063";
}
.fa-share {
  --fa: "\f064";
}
.fa-mail-forward {
  --fa: "\f064";
}
.fa-expand {
  --fa: "\f065";
}
.fa-compress {
  --fa: "\f066";
}
.fa-minus {
  --fa: "\f068";
}
.fa-subtract {
  --fa: "\f068";
}
.fa-circle-exclamation {
  --fa: "\f06a";
}
.fa-exclamation-circle {
  --fa: "\f06a";
}
.fa-gift {
  --fa: "\f06b";
}
.fa-leaf {
  --fa: "\f06c";
}
.fa-fire {
  --fa: "\f06d";
}
.fa-eye {
  --fa: "\f06e";
}
.fa-eye-slash {
  --fa: "\f070";
}
.fa-triangle-exclamation {
  --fa: "\f071";
}
.fa-exclamation-triangle {
  --fa: "\f071";
}
.fa-warning {
  --fa: "\f071";
}
.fa-plane {
  --fa: "\f072";
}
.fa-calendar-days {
  --fa: "\f073";
}
.fa-calendar-alt {
  --fa: "\f073";
}
.fa-shuffle {
  --fa: "\f074";
}
.fa-random {
  --fa: "\f074";
}
.fa-comment {
  --fa: "\f075";
}
.fa-magnet {
  --fa: "\f076";
}
.fa-chevron-up {
  --fa: "\f077";
}
.fa-chevron-down {
  --fa: "\f078";
}
.fa-retweet {
  --fa: "\f079";
}
.fa-cart-shopping {
  --fa: "\f07a";
}
.fa-shopping-cart {
  --fa: "\f07a";
}
.fa-folder {
  --fa: "\f07b";
}
.fa-folder-blank {
  --fa: "\f07b";
}
.fa-folder-open {
  --fa: "\f07c";
}
.fa-arrows-up-down {
  --fa: "\f07d";
}
.fa-arrows-v {
  --fa: "\f07d";
}
.fa-arrows-left-right {
  --fa: "\f07e";
}
.fa-arrows-h {
  --fa: "\f07e";
}
.fa-chart-bar {
  --fa: "\f080";
}
.fa-bar-chart {
  --fa: "\f080";
}
.fa-camera-retro {
  --fa: "\f083";
}
.fa-key {
  --fa: "\f084";
}
.fa-gears {
  --fa: "\f085";
}
.fa-cogs {
  --fa: "\f085";
}
.fa-comments {
  --fa: "\f086";
}
.fa-star-half {
  --fa: "\f089";
}
.fa-arrow-right-from-bracket {
  --fa: "\f08b";
}
.fa-sign-out {
  --fa: "\f08b";
}
.fa-thumbtack {
  --fa: "\f08d";
}
.fa-thumb-tack {
  --fa: "\f08d";
}
.fa-arrow-up-right-from-square {
  --fa: "\f08e";
}
.fa-external-link {
  --fa: "\f08e";
}
.fa-arrow-right-to-bracket {
  --fa: "\f090";
}
.fa-sign-in {
  --fa: "\f090";
}
.fa-trophy {
  --fa: "\f091";
}
.fa-upload {
  --fa: "\f093";
}
.fa-lemon {
  --fa: "\f094";
}
.fa-phone {
  --fa: "\f095";
}
.fa-square-phone {
  --fa: "\f098";
}
.fa-phone-square {
  --fa: "\f098";
}
.fa-unlock {
  --fa: "\f09c";
}
.fa-credit-card {
  --fa: "\f09d";
}
.fa-credit-card-alt {
  --fa: "\f09d";
}
.fa-rss {
  --fa: "\f09e";
}
.fa-feed {
  --fa: "\f09e";
}
.fa-hard-drive {
  --fa: "\f0a0";
}
.fa-hdd {
  --fa: "\f0a0";
}
.fa-bullhorn {
  --fa: "\f0a1";
}
.fa-certificate {
  --fa: "\f0a3";
}
.fa-hand-point-right {
  --fa: "\f0a4";
}
.fa-hand-point-left {
  --fa: "\f0a5";
}
.fa-hand-point-up {
  --fa: "\f0a6";
}
.fa-hand-point-down {
  --fa: "\f0a7";
}
.fa-circle-arrow-left {
  --fa: "\f0a8";
}
.fa-arrow-circle-left {
  --fa: "\f0a8";
}
.fa-circle-arrow-right {
  --fa: "\f0a9";
}
.fa-arrow-circle-right {
  --fa: "\f0a9";
}
.fa-circle-arrow-up {
  --fa: "\f0aa";
}
.fa-arrow-circle-up {
  --fa: "\f0aa";
}
.fa-circle-arrow-down {
  --fa: "\f0ab";
}
.fa-arrow-circle-down {
  --fa: "\f0ab";
}
.fa-globe {
  --fa: "\f0ac";
}
.fa-wrench {
  --fa: "\f0ad";
}
.fa-list-check {
  --fa: "\f0ae";
}
.fa-tasks {
  --fa: "\f0ae";
}
.fa-filter {
  --fa: "\f0b0";
}
.fa-briefcase {
  --fa: "\f0b1";
}
.fa-up-down-left-right {
  --fa: "\f0b2";
}
.fa-arrows-alt {
  --fa: "\f0b2";
}
.fa-users {
  --fa: "\f0c0";
}
.fa-link {
  --fa: "\f0c1";
}
.fa-chain {
  --fa: "\f0c1";
}
.fa-cloud {
  --fa: "\f0c2";
}
.fa-flask {
  --fa: "\f0c3";
}
.fa-scissors {
  --fa: "\f0c4";
}
.fa-cut {
  --fa: "\f0c4";
}
.fa-copy {
  --fa: "\f0c5";
}
.fa-paperclip {
  --fa: "\f0c6";
}
.fa-floppy-disk {
  --fa: "\f0c7";
}
.fa-save {
  --fa: "\f0c7";
}
.fa-square {
  --fa: "\f0c8";
}
.fa-bars {
  --fa: "\f0c9";
}
.fa-navicon {
  --fa: "\f0c9";
}
.fa-list-ul {
  --fa: "\f0ca";
}
.fa-list-dots {
  --fa: "\f0ca";
}
.fa-list-ol {
  --fa: "\f0cb";
}
.fa-list-1-2 {
  --fa: "\f0cb";
}
.fa-list-numeric {
  --fa: "\f0cb";
}
.fa-strikethrough {
  --fa: "\f0cc";
}
.fa-underline {
  --fa: "\f0cd";
}
.fa-table {
  --fa: "\f0ce";
}
.fa-wand-magic {
  --fa: "\f0d0";
}
.fa-magic {
  --fa: "\f0d0";
}
.fa-truck {
  --fa: "\f0d1";
}
.fa-money-bill {
  --fa: "\f0d6";
}
.fa-caret-down {
  --fa: "\f0d7";
}
.fa-caret-up {
  --fa: "\f0d8";
}
.fa-caret-left {
  --fa: "\f0d9";
}
.fa-caret-right {
  --fa: "\f0da";
}
.fa-table-columns {
  --fa: "\f0db";
}
.fa-columns {
  --fa: "\f0db";
}
.fa-sort {
  --fa: "\f0dc";
}
.fa-unsorted {
  --fa: "\f0dc";
}
.fa-sort-down {
  --fa: "\f0dd";
}
.fa-sort-desc {
  --fa: "\f0dd";
}
.fa-sort-up {
  --fa: "\f0de";
}
.fa-sort-asc {
  --fa: "\f0de";
}
.fa-envelope {
  --fa: "\f0e0";
}
.fa-arrow-rotate-left {
  --fa: "\f0e2";
}
.fa-arrow-left-rotate {
  --fa: "\f0e2";
}
.fa-arrow-rotate-back {
  --fa: "\f0e2";
}
.fa-arrow-rotate-backward {
  --fa: "\f0e2";
}
.fa-undo {
  --fa: "\f0e2";
}
.fa-gavel {
  --fa: "\f0e3";
}
.fa-legal {
  --fa: "\f0e3";
}
.fa-bolt {
  --fa: "\f0e7";
}
.fa-zap {
  --fa: "\f0e7";
}
.fa-sitemap {
  --fa: "\f0e8";
}
.fa-umbrella {
  --fa: "\f0e9";
}
.fa-paste {
  --fa: "\f0ea";
}
.fa-file-clipboard {
  --fa: "\f0ea";
}
.fa-lightbulb {
  --fa: "\f0eb";
}
.fa-arrow-right-arrow-left {
  --fa: "\f0ec";
}
.fa-exchange {
  --fa: "\f0ec";
}
.fa-cloud-arrow-down {
  --fa: "\f0ed";
}
.fa-cloud-download {
  --fa: "\f0ed";
}
.fa-cloud-download-alt {
  --fa: "\f0ed";
}
.fa-cloud-arrow-up {
  --fa: "\f0ee";
}
.fa-cloud-upload {
  --fa: "\f0ee";
}
.fa-cloud-upload-alt {
  --fa: "\f0ee";
}
.fa-user-doctor {
  --fa: "\f0f0";
}
.fa-user-md {
  --fa: "\f0f0";
}
.fa-stethoscope {
  --fa: "\f0f1";
}
.fa-suitcase {
  --fa: "\f0f2";
}
.fa-bell {
  --fa: "\f0f3";
}
.fa-mug-saucer {
  --fa: "\f0f4";
}
.fa-coffee {
  --fa: "\f0f4";
}
.fa-hospital {
  --fa: "\f0f8";
}
.fa-hospital-alt {
  --fa: "\f0f8";
}
.fa-hospital-wide {
  --fa: "\f0f8";
}
.fa-truck-medical {
  --fa: "\f0f9";
}
.fa-ambulance {
  --fa: "\f0f9";
}
.fa-suitcase-medical {
  --fa: "\f0fa";
}
.fa-medkit {
  --fa: "\f0fa";
}
.fa-jet-fighter {
  --fa: "\f0fb";
}
.fa-fighter-jet {
  --fa: "\f0fb";
}
.fa-beer-mug-empty {
  --fa: "\f0fc";
}
.fa-beer {
  --fa: "\f0fc";
}
.fa-square-h {
  --fa: "\f0fd";
}
.fa-h-square {
  --fa: "\f0fd";
}
.fa-square-plus {
  --fa: "\f0fe";
}
.fa-plus-square {
  --fa: "\f0fe";
}
.fa-angles-left {
  --fa: "\f100";
}
.fa-angle-double-left {
  --fa: "\f100";
}
.fa-angles-right {
  --fa: "\f101";
}
.fa-angle-double-right {
  --fa: "\f101";
}
.fa-angles-up {
  --fa: "\f102";
}
.fa-angle-double-up {
  --fa: "\f102";
}
.fa-angles-down {
  --fa: "\f103";
}
.fa-angle-double-down {
  --fa: "\f103";
}
.fa-angle-left {
  --fa: "\f104";
}
.fa-angle-right {
  --fa: "\f105";
}
.fa-angle-up {
  --fa: "\f106";
}
.fa-angle-down {
  --fa: "\f107";
}
.fa-laptop {
  --fa: "\f109";
}
.fa-tablet-button {
  --fa: "\f10a";
}
.fa-mobile-button {
  --fa: "\f10b";
}
.fa-quote-left {
  --fa: "\f10d";
}
.fa-quote-left-alt {
  --fa: "\f10d";
}
.fa-quote-right {
  --fa: "\f10e";
}
.fa-quote-right-alt {
  --fa: "\f10e";
}
.fa-spinner {
  --fa: "\f110";
}
.fa-circle {
  --fa: "\f111";
}
.fa-face-smile {
  --fa: "\f118";
}
.fa-smile {
  --fa: "\f118";
}
.fa-face-frown {
  --fa: "\f119";
}
.fa-frown {
  --fa: "\f119";
}
.fa-face-meh {
  --fa: "\f11a";
}
.fa-meh {
  --fa: "\f11a";
}
.fa-gamepad {
  --fa: "\f11b";
}
.fa-keyboard {
  --fa: "\f11c";
}
.fa-flag-checkered {
  --fa: "\f11e";
}
.fa-terminal {
  --fa: "\f120";
}
.fa-code {
  --fa: "\f121";
}
.fa-reply-all {
  --fa: "\f122";
}
.fa-mail-reply-all {
  --fa: "\f122";
}
.fa-location-arrow {
  --fa: "\f124";
}
.fa-crop {
  --fa: "\f125";
}
.fa-code-branch {
  --fa: "\f126";
}
.fa-link-slash {
  --fa: "\f127";
}
.fa-chain-broken {
  --fa: "\f127";
}
.fa-chain-slash {
  --fa: "\f127";
}
.fa-unlink {
  --fa: "\f127";
}
.fa-info {
  --fa: "\f129";
}
.fa-superscript {
  --fa: "\f12b";
}
.fa-subscript {
  --fa: "\f12c";
}
.fa-eraser {
  --fa: "\f12d";
}
.fa-puzzle-piece {
  --fa: "\f12e";
}
.fa-microphone {
  --fa: "\f130";
}
.fa-microphone-slash {
  --fa: "\f131";
}
.fa-shield {
  --fa: "\f132";
}
.fa-shield-blank {
  --fa: "\f132";
}
.fa-calendar {
  --fa: "\f133";
}
.fa-fire-extinguisher {
  --fa: "\f134";
}
.fa-rocket {
  --fa: "\f135";
}
.fa-circle-chevron-left {
  --fa: "\f137";
}
.fa-chevron-circle-left {
  --fa: "\f137";
}
.fa-circle-chevron-right {
  --fa: "\f138";
}
.fa-chevron-circle-right {
  --fa: "\f138";
}
.fa-circle-chevron-up {
  --fa: "\f139";
}
.fa-chevron-circle-up {
  --fa: "\f139";
}
.fa-circle-chevron-down {
  --fa: "\f13a";
}
.fa-chevron-circle-down {
  --fa: "\f13a";
}
.fa-anchor {
  --fa: "\f13d";
}
.fa-unlock-keyhole {
  --fa: "\f13e";
}
.fa-unlock-alt {
  --fa: "\f13e";
}
.fa-bullseye {
  --fa: "\f140";
}
.fa-ellipsis {
  --fa: "\f141";
}
.fa-ellipsis-h {
  --fa: "\f141";
}
.fa-ellipsis-vertical {
  --fa: "\f142";
}
.fa-ellipsis-v {
  --fa: "\f142";
}
.fa-square-rss {
  --fa: "\f143";
}
.fa-rss-square {
  --fa: "\f143";
}
.fa-circle-play {
  --fa: "\f144";
}
.fa-play-circle {
  --fa: "\f144";
}
.fa-ticket {
  --fa: "\f145";
}
.fa-square-minus {
  --fa: "\f146";
}
.fa-minus-square {
  --fa: "\f146";
}
.fa-arrow-turn-up {
  --fa: "\f148";
}
.fa-level-up {
  --fa: "\f148";
}
.fa-arrow-turn-down {
  --fa: "\f149";
}
.fa-level-down {
  --fa: "\f149";
}
.fa-square-check {
  --fa: "\f14a";
}
.fa-check-square {
  --fa: "\f14a";
}
.fa-square-pen {
  --fa: "\f14b";
}
.fa-pen-square {
  --fa: "\f14b";
}
.fa-pencil-square {
  --fa: "\f14b";
}
.fa-square-arrow-up-right {
  --fa: "\f14c";
}
.fa-external-link-square {
  --fa: "\f14c";
}
.fa-share-from-square {
  --fa: "\f14d";
}
.fa-share-square {
  --fa: "\f14d";
}
.fa-compass {
  --fa: "\f14e";
}
.fa-square-caret-down {
  --fa: "\f150";
}
.fa-caret-square-down {
  --fa: "\f150";
}
.fa-square-caret-up {
  --fa: "\f151";
}
.fa-caret-square-up {
  --fa: "\f151";
}
.fa-square-caret-right {
  --fa: "\f152";
}
.fa-caret-square-right {
  --fa: "\f152";
}
.fa-euro-sign {
  --fa: "\f153";
}
.fa-eur {
  --fa: "\f153";
}
.fa-euro {
  --fa: "\f153";
}
.fa-sterling-sign {
  --fa: "\f154";
}
.fa-gbp {
  --fa: "\f154";
}
.fa-pound-sign {
  --fa: "\f154";
}
.fa-rupee-sign {
  --fa: "\f156";
}
.fa-rupee {
  --fa: "\f156";
}
.fa-yen-sign {
  --fa: "\f157";
}
.fa-cny {
  --fa: "\f157";
}
.fa-jpy {
  --fa: "\f157";
}
.fa-rmb {
  --fa: "\f157";
}
.fa-yen {
  --fa: "\f157";
}
.fa-ruble-sign {
  --fa: "\f158";
}
.fa-rouble {
  --fa: "\f158";
}
.fa-rub {
  --fa: "\f158";
}
.fa-ruble {
  --fa: "\f158";
}
.fa-won-sign {
  --fa: "\f159";
}
.fa-krw {
  --fa: "\f159";
}
.fa-won {
  --fa: "\f159";
}
.fa-file {
  --fa: "\f15b";
}
.fa-file-lines {
  --fa: "\f15c";
}
.fa-file-alt {
  --fa: "\f15c";
}
.fa-file-text {
  --fa: "\f15c";
}
.fa-arrow-down-a-z {
  --fa: "\f15d";
}
.fa-sort-alpha-asc {
  --fa: "\f15d";
}
.fa-sort-alpha-down {
  --fa: "\f15d";
}
.fa-arrow-up-a-z {
  --fa: "\f15e";
}
.fa-sort-alpha-up {
  --fa: "\f15e";
}
.fa-arrow-down-wide-short {
  --fa: "\f160";
}
.fa-sort-amount-asc {
  --fa: "\f160";
}
.fa-sort-amount-down {
  --fa: "\f160";
}
.fa-arrow-up-wide-short {
  --fa: "\f161";
}
.fa-sort-amount-up {
  --fa: "\f161";
}
.fa-arrow-down-1-9 {
  --fa: "\f162";
}
.fa-sort-numeric-asc {
  --fa: "\f162";
}
.fa-sort-numeric-down {
  --fa: "\f162";
}
.fa-arrow-up-1-9 {
  --fa: "\f163";
}
.fa-sort-numeric-up {
  --fa: "\f163";
}
.fa-thumbs-up {
  --fa: "\f164";
}
.fa-thumbs-down {
  --fa: "\f165";
}
.fa-arrow-down-long {
  --fa: "\f175";
}
.fa-long-arrow-down {
  --fa: "\f175";
}
.fa-arrow-up-long {
  --fa: "\f176";
}
.fa-long-arrow-up {
  --fa: "\f176";
}
.fa-arrow-left-long {
  --fa: "\f177";
}
.fa-long-arrow-left {
  --fa: "\f177";
}
.fa-arrow-right-long {
  --fa: "\f178";
}
.fa-long-arrow-right {
  --fa: "\f178";
}
.fa-person-dress {
  --fa: "\f182";
}
.fa-female {
  --fa: "\f182";
}
.fa-person {
  --fa: "\f183";
}
.fa-male {
  --fa: "\f183";
}
.fa-sun {
  --fa: "\f185";
}
.fa-moon {
  --fa: "\f186";
}
.fa-box-archive {
  --fa: "\f187";
}
.fa-archive {
  --fa: "\f187";
}
.fa-bug {
  --fa: "\f188";
}
.fa-square-caret-left {
  --fa: "\f191";
}
.fa-caret-square-left {
  --fa: "\f191";
}
.fa-circle-dot {
  --fa: "\f192";
}
.fa-dot-circle {
  --fa: "\f192";
}
.fa-wheelchair {
  --fa: "\f193";
}
.fa-lira-sign {
  --fa: "\f195";
}
.fa-shuttle-space {
  --fa: "\f197";
}
.fa-space-shuttle {
  --fa: "\f197";
}
.fa-square-envelope {
  --fa: "\f199";
}
.fa-envelope-square {
  --fa: "\f199";
}
.fa-building-columns {
  --fa: "\f19c";
}
.fa-bank {
  --fa: "\f19c";
}
.fa-institution {
  --fa: "\f19c";
}
.fa-museum {
  --fa: "\f19c";
}
.fa-university {
  --fa: "\f19c";
}
.fa-graduation-cap {
  --fa: "\f19d";
}
.fa-mortar-board {
  --fa: "\f19d";
}
.fa-language {
  --fa: "\f1ab";
}
.fa-fax {
  --fa: "\f1ac";
}
.fa-building {
  --fa: "\f1ad";
}
.fa-child {
  --fa: "\f1ae";
}
.fa-paw {
  --fa: "\f1b0";
}
.fa-cube {
  --fa: "\f1b2";
}
.fa-cubes {
  --fa: "\f1b3";
}
.fa-recycle {
  --fa: "\f1b8";
}
.fa-car {
  --fa: "\f1b9";
}
.fa-automobile {
  --fa: "\f1b9";
}
.fa-taxi {
  --fa: "\f1ba";
}
.fa-cab {
  --fa: "\f1ba";
}
.fa-tree {
  --fa: "\f1bb";
}
.fa-database {
  --fa: "\f1c0";
}
.fa-file-pdf {
  --fa: "\f1c1";
}
.fa-file-word {
  --fa: "\f1c2";
}
.fa-file-excel {
  --fa: "\f1c3";
}
.fa-file-powerpoint {
  --fa: "\f1c4";
}
.fa-file-image {
  --fa: "\f1c5";
}
.fa-file-zipper {
  --fa: "\f1c6";
}
.fa-file-archive {
  --fa: "\f1c6";
}
.fa-file-audio {
  --fa: "\f1c7";
}
.fa-file-video {
  --fa: "\f1c8";
}
.fa-file-code {
  --fa: "\f1c9";
}
.fa-life-ring {
  --fa: "\f1cd";
}
.fa-circle-notch {
  --fa: "\f1ce";
}
.fa-paper-plane {
  --fa: "\f1d8";
}
.fa-clock-rotate-left {
  --fa: "\f1da";
}
.fa-history {
  --fa: "\f1da";
}
.fa-heading {
  --fa: "\f1dc";
}
.fa-header {
  --fa: "\f1dc";
}
.fa-paragraph {
  --fa: "\f1dd";
}
.fa-sliders {
  --fa: "\f1de";
}
.fa-sliders-h {
  --fa: "\f1de";
}
.fa-share-nodes {
  --fa: "\f1e0";
}
.fa-share-alt {
  --fa: "\f1e0";
}
.fa-square-share-nodes {
  --fa: "\f1e1";
}
.fa-share-alt-square {
  --fa: "\f1e1";
}
.fa-bomb {
  --fa: "\f1e2";
}
.fa-futbol {
  --fa: "\f1e3";
}
.fa-futbol-ball {
  --fa: "\f1e3";
}
.fa-soccer-ball {
  --fa: "\f1e3";
}
.fa-tty {
  --fa: "\f1e4";
}
.fa-teletype {
  --fa: "\f1e4";
}
.fa-binoculars {
  --fa: "\f1e5";
}
.fa-plug {
  --fa: "\f1e6";
}
.fa-newspaper {
  --fa: "\f1ea";
}
.fa-wifi {
  --fa: "\f1eb";
}
.fa-wifi-3 {
  --fa: "\f1eb";
}
.fa-wifi-strong {
  --fa: "\f1eb";
}
.fa-calculator {
  --fa: "\f1ec";
}
.fa-bell-slash {
  --fa: "\f1f6";
}
.fa-trash {
  --fa: "\f1f8";
}
.fa-copyright {
  --fa: "\f1f9";
}
.fa-eye-dropper {
  --fa: "\f1fb";
}
.fa-eye-dropper-empty {
  --fa: "\f1fb";
}
.fa-eyedropper {
  --fa: "\f1fb";
}
.fa-paintbrush {
  --fa: "\f1fc";
}
.fa-paint-brush {
  --fa: "\f1fc";
}
.fa-cake-candles {
  --fa: "\f1fd";
}
.fa-birthday-cake {
  --fa: "\f1fd";
}
.fa-cake {
  --fa: "\f1fd";
}
.fa-chart-area {
  --fa: "\f1fe";
}
.fa-area-chart {
  --fa: "\f1fe";
}
.fa-chart-pie {
  --fa: "\f200";
}
.fa-pie-chart {
  --fa: "\f200";
}
.fa-chart-line {
  --fa: "\f201";
}
.fa-line-chart {
  --fa: "\f201";
}
.fa-toggle-off {
  --fa: "\f204";
}
.fa-toggle-on {
  --fa: "\f205";
}
.fa-bicycle {
  --fa: "\f206";
}
.fa-bus {
  --fa: "\f207";
}
.fa-closed-captioning {
  --fa: "\f20a";
}
.fa-shekel-sign {
  --fa: "\f20b";
}
.fa-ils {
  --fa: "\f20b";
}
.fa-shekel {
  --fa: "\f20b";
}
.fa-sheqel {
  --fa: "\f20b";
}
.fa-sheqel-sign {
  --fa: "\f20b";
}
.fa-cart-plus {
  --fa: "\f217";
}
.fa-cart-arrow-down {
  --fa: "\f218";
}
.fa-diamond {
  --fa: "\f219";
}
.fa-ship {
  --fa: "\f21a";
}
.fa-user-secret {
  --fa: "\f21b";
}
.fa-motorcycle {
  --fa: "\f21c";
}
.fa-street-view {
  --fa: "\f21d";
}
.fa-heart-pulse {
  --fa: "\f21e";
}
.fa-heartbeat {
  --fa: "\f21e";
}
.fa-venus {
  --fa: "\f221";
}
.fa-mars {
  --fa: "\f222";
}
.fa-mercury {
  --fa: "\f223";
}
.fa-mars-and-venus {
  --fa: "\f224";
}
.fa-transgender {
  --fa: "\f225";
}
.fa-transgender-alt {
  --fa: "\f225";
}
.fa-venus-double {
  --fa: "\f226";
}
.fa-mars-double {
  --fa: "\f227";
}
.fa-venus-mars {
  --fa: "\f228";
}
.fa-mars-stroke {
  --fa: "\f229";
}
.fa-mars-stroke-up {
  --fa: "\f22a";
}
.fa-mars-stroke-v {
  --fa: "\f22a";
}
.fa-mars-stroke-right {
  --fa: "\f22b";
}
.fa-mars-stroke-h {
  --fa: "\f22b";
}
.fa-neuter {
  --fa: "\f22c";
}
.fa-genderless {
  --fa: "\f22d";
}
.fa-server {
  --fa: "\f233";
}
.fa-user-plus {
  --fa: "\f234";
}
.fa-user-xmark {
  --fa: "\f235";
}
.fa-user-times {
  --fa: "\f235";
}
.fa-bed {
  --fa: "\f236";
}
.fa-train {
  --fa: "\f238";
}
.fa-train-subway {
  --fa: "\f239";
}
.fa-subway {
  --fa: "\f239";
}
.fa-battery-full {
  --fa: "\f240";
}
.fa-battery {
  --fa: "\f240";
}
.fa-battery-5 {
  --fa: "\f240";
}
.fa-battery-three-quarters {
  --fa: "\f241";
}
.fa-battery-4 {
  --fa: "\f241";
}
.fa-battery-half {
  --fa: "\f242";
}
.fa-battery-3 {
  --fa: "\f242";
}
.fa-battery-quarter {
  --fa: "\f243";
}
.fa-battery-2 {
  --fa: "\f243";
}
.fa-battery-empty {
  --fa: "\f244";
}
.fa-battery-0 {
  --fa: "\f244";
}
.fa-arrow-pointer {
  --fa: "\f245";
}
.fa-mouse-pointer {
  --fa: "\f245";
}
.fa-i-cursor {
  --fa: "\f246";
}
.fa-object-group {
  --fa: "\f247";
}
.fa-object-ungroup {
  --fa: "\f248";
}
.fa-note-sticky {
  --fa: "\f249";
}
.fa-sticky-note {
  --fa: "\f249";
}
.fa-clone {
  --fa: "\f24d";
}
.fa-scale-balanced {
  --fa: "\f24e";
}
.fa-balance-scale {
  --fa: "\f24e";
}
.fa-hourglass-start {
  --fa: "\f251";
}
.fa-hourglass-1 {
  --fa: "\f251";
}
.fa-hourglass-half {
  --fa: "\f252";
}
.fa-hourglass-2 {
  --fa: "\f252";
}
.fa-hourglass-end {
  --fa: "\f253";
}
.fa-hourglass-3 {
  --fa: "\f253";
}
.fa-hourglass {
  --fa: "\f254";
}
.fa-hourglass-empty {
  --fa: "\f254";
}
.fa-hand-back-fist {
  --fa: "\f255";
}
.fa-hand-rock {
  --fa: "\f255";
}
.fa-hand {
  --fa: "\f256";
}
.fa-hand-paper {
  --fa: "\f256";
}
.fa-hand-scissors {
  --fa: "\f257";
}
.fa-hand-lizard {
  --fa: "\f258";
}
.fa-hand-spock {
  --fa: "\f259";
}
.fa-hand-pointer {
  --fa: "\f25a";
}
.fa-hand-peace {
  --fa: "\f25b";
}
.fa-trademark {
  --fa: "\f25c";
}
.fa-registered {
  --fa: "\f25d";
}
.fa-tv {
  --fa: "\f26c";
}
.fa-television {
  --fa: "\f26c";
}
.fa-tv-alt {
  --fa: "\f26c";
}
.fa-calendar-plus {
  --fa: "\f271";
}
.fa-calendar-minus {
  --fa: "\f272";
}
.fa-calendar-xmark {
  --fa: "\f273";
}
.fa-calendar-times {
  --fa: "\f273";
}
.fa-calendar-check {
  --fa: "\f274";
}
.fa-industry {
  --fa: "\f275";
}
.fa-map-pin {
  --fa: "\f276";
}
.fa-signs-post {
  --fa: "\f277";
}
.fa-map-signs {
  --fa: "\f277";
}
.fa-map {
  --fa: "\f279";
}
.fa-message {
  --fa: "\f27a";
}
.fa-comment-alt {
  --fa: "\f27a";
}
.fa-circle-pause {
  --fa: "\f28b";
}
.fa-pause-circle {
  --fa: "\f28b";
}
.fa-circle-stop {
  --fa: "\f28d";
}
.fa-stop-circle {
  --fa: "\f28d";
}
.fa-bag-shopping {
  --fa: "\f290";
}
.fa-shopping-bag {
  --fa: "\f290";
}
.fa-basket-shopping {
  --fa: "\f291";
}
.fa-shopping-basket {
  --fa: "\f291";
}
.fa-universal-access {
  --fa: "\f29a";
}
.fa-person-walking-with-cane {
  --fa: "\f29d";
}
.fa-blind {
  --fa: "\f29d";
}
.fa-audio-description {
  --fa: "\f29e";
}
.fa-phone-volume {
  --fa: "\f2a0";
}
.fa-volume-control-phone {
  --fa: "\f2a0";
}
.fa-braille {
  --fa: "\f2a1";
}
.fa-ear-listen {
  --fa: "\f2a2";
}
.fa-assistive-listening-systems {
  --fa: "\f2a2";
}
.fa-hands-asl-interpreting {
  --fa: "\f2a3";
}
.fa-american-sign-language-interpreting {
  --fa: "\f2a3";
}
.fa-asl-interpreting {
  --fa: "\f2a3";
}
.fa-hands-american-sign-language-interpreting {
  --fa: "\f2a3";
}
.fa-ear-deaf {
  --fa: "\f2a4";
}
.fa-deaf {
  --fa: "\f2a4";
}
.fa-deafness {
  --fa: "\f2a4";
}
.fa-hard-of-hearing {
  --fa: "\f2a4";
}
.fa-hands {
  --fa: "\f2a7";
}
.fa-sign-language {
  --fa: "\f2a7";
}
.fa-signing {
  --fa: "\f2a7";
}
.fa-eye-low-vision {
  --fa: "\f2a8";
}
.fa-low-vision {
  --fa: "\f2a8";
}
.fa-font-awesome {
  --fa: "\f2b4";
}
.fa-font-awesome-flag {
  --fa: "\f2b4";
}
.fa-font-awesome-logo-full {
  --fa: "\f2b4";
}
.fa-handshake {
  --fa: "\f2b5";
}
.fa-handshake-alt {
  --fa: "\f2b5";
}
.fa-handshake-simple {
  --fa: "\f2b5";
}
.fa-envelope-open {
  --fa: "\f2b6";
}
.fa-address-book {
  --fa: "\f2b9";
}
.fa-contact-book {
  --fa: "\f2b9";
}
.fa-address-card {
  --fa: "\f2bb";
}
.fa-contact-card {
  --fa: "\f2bb";
}
.fa-vcard {
  --fa: "\f2bb";
}
.fa-circle-user {
  --fa: "\f2bd";
}
.fa-user-circle {
  --fa: "\f2bd";
}
.fa-id-badge {
  --fa: "\f2c1";
}
.fa-id-card {
  --fa: "\f2c2";
}
.fa-drivers-license {
  --fa: "\f2c2";
}
.fa-temperature-full {
  --fa: "\f2c7";
}
.fa-temperature-4 {
  --fa: "\f2c7";
}
.fa-thermometer-4 {
  --fa: "\f2c7";
}
.fa-thermometer-full {
  --fa: "\f2c7";
}
.fa-temperature-three-quarters {
  --fa: "\f2c8";
}
.fa-temperature-3 {
  --fa: "\f2c8";
}
.fa-thermometer-3 {
  --fa: "\f2c8";
}
.fa-thermometer-three-quarters {
  --fa: "\f2c8";
}
.fa-temperature-half {
  --fa: "\f2c9";
}
.fa-temperature-2 {
  --fa: "\f2c9";
}
.fa-thermometer-2 {
  --fa: "\f2c9";
}
.fa-thermometer-half {
  --fa: "\f2c9";
}
.fa-temperature-quarter {
  --fa: "\f2ca";
}
.fa-temperature-1 {
  --fa: "\f2ca";
}
.fa-thermometer-1 {
  --fa: "\f2ca";
}
.fa-thermometer-quarter {
  --fa: "\f2ca";
}
.fa-temperature-empty {
  --fa: "\f2cb";
}
.fa-temperature-0 {
  --fa: "\f2cb";
}
.fa-thermometer-0 {
  --fa: "\f2cb";
}
.fa-thermometer-empty {
  --fa: "\f2cb";
}
.fa-shower {
  --fa: "\f2cc";
}
.fa-bath {
  --fa: "\f2cd";
}
.fa-bathtub {
  --fa: "\f2cd";
}
.fa-podcast {
  --fa: "\f2ce";
}
.fa-window-maximize {
  --fa: "\f2d0";
}
.fa-window-minimize {
  --fa: "\f2d1";
}
.fa-window-restore {
  --fa: "\f2d2";
}
.fa-square-xmark {
  --fa: "\f2d3";
}
.fa-times-square {
  --fa: "\f2d3";
}
.fa-xmark-square {
  --fa: "\f2d3";
}
.fa-microchip {
  --fa: "\f2db";
}
.fa-snowflake {
  --fa: "\f2dc";
}
.fa-spoon {
  --fa: "\f2e5";
}
.fa-utensil-spoon {
  --fa: "\f2e5";
}
.fa-utensils {
  --fa: "\f2e7";
}
.fa-cutlery {
  --fa: "\f2e7";
}
.fa-rotate-left {
  --fa: "\f2ea";
}
.fa-rotate-back {
  --fa: "\f2ea";
}
.fa-rotate-backward {
  --fa: "\f2ea";
}
.fa-undo-alt {
  --fa: "\f2ea";
}
.fa-trash-can {
  --fa: "\f2ed";
}
.fa-trash-alt {
  --fa: "\f2ed";
}
.fa-rotate {
  --fa: "\f2f1";
}
.fa-sync-alt {
  --fa: "\f2f1";
}
.fa-stopwatch {
  --fa: "\f2f2";
}
.fa-right-from-bracket {
  --fa: "\f2f5";
}
.fa-sign-out-alt {
  --fa: "\f2f5";
}
.fa-right-to-bracket {
  --fa: "\f2f6";
}
.fa-sign-in-alt {
  --fa: "\f2f6";
}
.fa-rotate-right {
  --fa: "\f2f9";
}
.fa-redo-alt {
  --fa: "\f2f9";
}
.fa-rotate-forward {
  --fa: "\f2f9";
}
.fa-poo {
  --fa: "\f2fe";
}
.fa-images {
  --fa: "\f302";
}
.fa-pencil {
  --fa: "\f303";
}
.fa-pencil-alt {
  --fa: "\f303";
}
.fa-pen {
  --fa: "\f304";
}
.fa-pen-clip {
  --fa: "\f305";
}
.fa-pen-alt {
  --fa: "\f305";
}
.fa-octagon {
  --fa: "\f306";
}
.fa-down-long {
  --fa: "\f309";
}
.fa-long-arrow-alt-down {
  --fa: "\f309";
}
.fa-left-long {
  --fa: "\f30a";
}
.fa-long-arrow-alt-left {
  --fa: "\f30a";
}
.fa-right-long {
  --fa: "\f30b";
}
.fa-long-arrow-alt-right {
  --fa: "\f30b";
}
.fa-up-long {
  --fa: "\f30c";
}
.fa-long-arrow-alt-up {
  --fa: "\f30c";
}
.fa-hexagon {
  --fa: "\f312";
}
.fa-file-pen {
  --fa: "\f31c";
}
.fa-file-edit {
  --fa: "\f31c";
}
.fa-maximize {
  --fa: "\f31e";
}
.fa-expand-arrows-alt {
  --fa: "\f31e";
}
.fa-clipboard {
  --fa: "\f328";
}
.fa-left-right {
  --fa: "\f337";
}
.fa-arrows-alt-h {
  --fa: "\f337";
}
.fa-up-down {
  --fa: "\f338";
}
.fa-arrows-alt-v {
  --fa: "\f338";
}
.fa-alarm-clock {
  --fa: "\f34e";
}
.fa-circle-down {
  --fa: "\f358";
}
.fa-arrow-alt-circle-down {
  --fa: "\f358";
}
.fa-circle-left {
  --fa: "\f359";
}
.fa-arrow-alt-circle-left {
  --fa: "\f359";
}
.fa-circle-right {
  --fa: "\f35a";
}
.fa-arrow-alt-circle-right {
  --fa: "\f35a";
}
.fa-circle-up {
  --fa: "\f35b";
}
.fa-arrow-alt-circle-up {
  --fa: "\f35b";
}
.fa-up-right-from-square {
  --fa: "\f35d";
}
.fa-external-link-alt {
  --fa: "\f35d";
}
.fa-square-up-right {
  --fa: "\f360";
}
.fa-external-link-square-alt {
  --fa: "\f360";
}
.fa-right-left {
  --fa: "\f362";
}
.fa-exchange-alt {
  --fa: "\f362";
}
.fa-repeat {
  --fa: "\f363";
}
.fa-code-commit {
  --fa: "\f386";
}
.fa-code-merge {
  --fa: "\f387";
}
.fa-desktop {
  --fa: "\f390";
}
.fa-desktop-alt {
  --fa: "\f390";
}
.fa-gem {
  --fa: "\f3a5";
}
.fa-turn-down {
  --fa: "\f3be";
}
.fa-level-down-alt {
  --fa: "\f3be";
}
.fa-turn-up {
  --fa: "\f3bf";
}
.fa-level-up-alt {
  --fa: "\f3bf";
}
.fa-lock-open {
  --fa: "\f3c1";
}
.fa-location-dot {
  --fa: "\f3c5";
}
.fa-map-marker-alt {
  --fa: "\f3c5";
}
.fa-microphone-lines {
  --fa: "\f3c9";
}
.fa-microphone-alt {
  --fa: "\f3c9";
}
.fa-mobile-screen-button {
  --fa: "\f3cd";
}
.fa-mobile-alt {
  --fa: "\f3cd";
}
.fa-mobile {
  --fa: "\f3ce";
}
.fa-mobile-android {
  --fa: "\f3ce";
}
.fa-mobile-phone {
  --fa: "\f3ce";
}
.fa-mobile-screen {
  --fa: "\f3cf";
}
.fa-mobile-android-alt {
  --fa: "\f3cf";
}
.fa-money-bill-1 {
  --fa: "\f3d1";
}
.fa-money-bill-alt {
  --fa: "\f3d1";
}
.fa-phone-slash {
  --fa: "\f3dd";
}
.fa-image-portrait {
  --fa: "\f3e0";
}
.fa-portrait {
  --fa: "\f3e0";
}
.fa-reply {
  --fa: "\f3e5";
}
.fa-mail-reply {
  --fa: "\f3e5";
}
.fa-shield-halved {
  --fa: "\f3ed";
}
.fa-shield-alt {
  --fa: "\f3ed";
}
.fa-tablet-screen-button {
  --fa: "\f3fa";
}
.fa-tablet-alt {
  --fa: "\f3fa";
}
.fa-tablet {
  --fa: "\f3fb";
}
.fa-tablet-android {
  --fa: "\f3fb";
}
.fa-ticket-simple {
  --fa: "\f3ff";
}
.fa-ticket-alt {
  --fa: "\f3ff";
}
.fa-rectangle-xmark {
  --fa: "\f410";
}
.fa-rectangle-times {
  --fa: "\f410";
}
.fa-times-rectangle {
  --fa: "\f410";
}
.fa-window-close {
  --fa: "\f410";
}
.fa-down-left-and-up-right-to-center {
  --fa: "\f422";
}
.fa-compress-alt {
  --fa: "\f422";
}
.fa-up-right-and-down-left-from-center {
  --fa: "\f424";
}
.fa-expand-alt {
  --fa: "\f424";
}
.fa-baseball-bat-ball {
  --fa: "\f432";
}
.fa-baseball {
  --fa: "\f433";
}
.fa-baseball-ball {
  --fa: "\f433";
}
.fa-basketball {
  --fa: "\f434";
}
.fa-basketball-ball {
  --fa: "\f434";
}
.fa-bowling-ball {
  --fa: "\f436";
}
.fa-chess {
  --fa: "\f439";
}
.fa-chess-bishop {
  --fa: "\f43a";
}
.fa-chess-board {
  --fa: "\f43c";
}
.fa-chess-king {
  --fa: "\f43f";
}
.fa-chess-knight {
  --fa: "\f441";
}
.fa-chess-pawn {
  --fa: "\f443";
}
.fa-chess-queen {
  --fa: "\f445";
}
.fa-chess-rook {
  --fa: "\f447";
}
.fa-dumbbell {
  --fa: "\f44b";
}
.fa-football {
  --fa: "\f44e";
}
.fa-football-ball {
  --fa: "\f44e";
}
.fa-golf-ball-tee {
  --fa: "\f450";
}
.fa-golf-ball {
  --fa: "\f450";
}
.fa-hockey-puck {
  --fa: "\f453";
}
.fa-broom-ball {
  --fa: "\f458";
}
.fa-quidditch {
  --fa: "\f458";
}
.fa-quidditch-broom-ball {
  --fa: "\f458";
}
.fa-square-full {
  --fa: "\f45c";
}
.fa-table-tennis-paddle-ball {
  --fa: "\f45d";
}
.fa-ping-pong-paddle-ball {
  --fa: "\f45d";
}
.fa-table-tennis {
  --fa: "\f45d";
}
.fa-volleyball {
  --fa: "\f45f";
}
.fa-volleyball-ball {
  --fa: "\f45f";
}
.fa-hand-dots {
  --fa: "\f461";
}
.fa-allergies {
  --fa: "\f461";
}
.fa-bandage {
  --fa: "\f462";
}
.fa-band-aid {
  --fa: "\f462";
}
.fa-box {
  --fa: "\f466";
}
.fa-boxes-stacked {
  --fa: "\f468";
}
.fa-boxes {
  --fa: "\f468";
}
.fa-boxes-alt {
  --fa: "\f468";
}
.fa-briefcase-medical {
  --fa: "\f469";
}
.fa-fire-flame-simple {
  --fa: "\f46a";
}
.fa-burn {
  --fa: "\f46a";
}
.fa-capsules {
  --fa: "\f46b";
}
.fa-clipboard-check {
  --fa: "\f46c";
}
.fa-clipboard-list {
  --fa: "\f46d";
}
.fa-person-dots-from-line {
  --fa: "\f470";
}
.fa-diagnoses {
  --fa: "\f470";
}
.fa-dna {
  --fa: "\f471";
}
.fa-dolly {
  --fa: "\f472";
}
.fa-dolly-box {
  --fa: "\f472";
}
.fa-cart-flatbed {
  --fa: "\f474";
}
.fa-dolly-flatbed {
  --fa: "\f474";
}
.fa-file-medical {
  --fa: "\f477";
}
.fa-file-waveform {
  --fa: "\f478";
}
.fa-file-medical-alt {
  --fa: "\f478";
}
.fa-kit-medical {
  --fa: "\f479";
}
.fa-first-aid {
  --fa: "\f479";
}
.fa-circle-h {
  --fa: "\f47e";
}
.fa-hospital-symbol {
  --fa: "\f47e";
}
.fa-id-card-clip {
  --fa: "\f47f";
}
.fa-id-card-alt {
  --fa: "\f47f";
}
.fa-notes-medical {
  --fa: "\f481";
}
.fa-pallet {
  --fa: "\f482";
}
.fa-pills {
  --fa: "\f484";
}
.fa-prescription-bottle {
  --fa: "\f485";
}
.fa-prescription-bottle-medical {
  --fa: "\f486";
}
.fa-prescription-bottle-alt {
  --fa: "\f486";
}
.fa-bed-pulse {
  --fa: "\f487";
}
.fa-procedures {
  --fa: "\f487";
}
.fa-truck-fast {
  --fa: "\f48b";
}
.fa-shipping-fast {
  --fa: "\f48b";
}
.fa-smoking {
  --fa: "\f48d";
}
.fa-syringe {
  --fa: "\f48e";
}
.fa-tablets {
  --fa: "\f490";
}
.fa-thermometer {
  --fa: "\f491";
}
.fa-vial {
  --fa: "\f492";
}
.fa-vials {
  --fa: "\f493";
}
.fa-warehouse {
  --fa: "\f494";
}
.fa-weight-scale {
  --fa: "\f496";
}
.fa-weight {
  --fa: "\f496";
}
.fa-x-ray {
  --fa: "\f497";
}
.fa-box-open {
  --fa: "\f49e";
}
.fa-comment-dots {
  --fa: "\f4ad";
}
.fa-commenting {
  --fa: "\f4ad";
}
.fa-comment-slash {
  --fa: "\f4b3";
}
.fa-couch {
  --fa: "\f4b8";
}
.fa-circle-dollar-to-slot {
  --fa: "\f4b9";
}
.fa-donate {
  --fa: "\f4b9";
}
.fa-dove {
  --fa: "\f4ba";
}
.fa-hand-holding {
  --fa: "\f4bd";
}
.fa-hand-holding-heart {
  --fa: "\f4be";
}
.fa-hand-holding-dollar {
  --fa: "\f4c0";
}
.fa-hand-holding-usd {
  --fa: "\f4c0";
}
.fa-hand-holding-droplet {
  --fa: "\f4c1";
}
.fa-hand-holding-water {
  --fa: "\f4c1";
}
.fa-hands-holding {
  --fa: "\f4c2";
}
.fa-handshake-angle {
  --fa: "\f4c4";
}
.fa-hands-helping {
  --fa: "\f4c4";
}
.fa-parachute-box {
  --fa: "\f4cd";
}
.fa-people-carry-box {
  --fa: "\f4ce";
}
.fa-people-carry {
  --fa: "\f4ce";
}
.fa-piggy-bank {
  --fa: "\f4d3";
}
.fa-ribbon {
  --fa: "\f4d6";
}
.fa-route {
  --fa: "\f4d7";
}
.fa-seedling {
  --fa: "\f4d8";
}
.fa-sprout {
  --fa: "\f4d8";
}
.fa-sign-hanging {
  --fa: "\f4d9";
}
.fa-sign {
  --fa: "\f4d9";
}
.fa-face-smile-wink {
  --fa: "\f4da";
}
.fa-smile-wink {
  --fa: "\f4da";
}
.fa-tape {
  --fa: "\f4db";
}
.fa-truck-ramp-box {
  --fa: "\f4de";
}
.fa-truck-loading {
  --fa: "\f4de";
}
.fa-truck-moving {
  --fa: "\f4df";
}
.fa-video-slash {
  --fa: "\f4e2";
}
.fa-wine-glass {
  --fa: "\f4e3";
}
.fa-user-astronaut {
  --fa: "\f4fb";
}
.fa-user-check {
  --fa: "\f4fc";
}
.fa-user-clock {
  --fa: "\f4fd";
}
.fa-user-gear {
  --fa: "\f4fe";
}
.fa-user-cog {
  --fa: "\f4fe";
}
.fa-user-pen {
  --fa: "\f4ff";
}
.fa-user-edit {
  --fa: "\f4ff";
}
.fa-user-group {
  --fa: "\f500";
}
.fa-user-friends {
  --fa: "\f500";
}
.fa-user-graduate {
  --fa: "\f501";
}
.fa-user-lock {
  --fa: "\f502";
}
.fa-user-minus {
  --fa: "\f503";
}
.fa-user-ninja {
  --fa: "\f504";
}
.fa-user-shield {
  --fa: "\f505";
}
.fa-user-slash {
  --fa: "\f506";
}
.fa-user-alt-slash {
  --fa: "\f506";
}
.fa-user-large-slash {
  --fa: "\f506";
}
.fa-user-tag {
  --fa: "\f507";
}
.fa-user-tie {
  --fa: "\f508";
}
.fa-users-gear {
  --fa: "\f509";
}
.fa-users-cog {
  --fa: "\f509";
}
.fa-scale-unbalanced {
  --fa: "\f515";
}
.fa-balance-scale-left {
  --fa: "\f515";
}
.fa-scale-unbalanced-flip {
  --fa: "\f516";
}
.fa-balance-scale-right {
  --fa: "\f516";
}
.fa-blender {
  --fa: "\f517";
}
.fa-book-open {
  --fa: "\f518";
}
.fa-tower-broadcast {
  --fa: "\f519";
}
.fa-broadcast-tower {
  --fa: "\f519";
}
.fa-broom {
  --fa: "\f51a";
}
.fa-chalkboard {
  --fa: "\f51b";
}
.fa-blackboard {
  --fa: "\f51b";
}
.fa-chalkboard-user {
  --fa: "\f51c";
}
.fa-chalkboard-teacher {
  --fa: "\f51c";
}
.fa-church {
  --fa: "\f51d";
}
.fa-coins {
  --fa: "\f51e";
}
.fa-compact-disc {
  --fa: "\f51f";
}
.fa-crow {
  --fa: "\f520";
}
.fa-crown {
  --fa: "\f521";
}
.fa-dice {
  --fa: "\f522";
}
.fa-dice-five {
  --fa: "\f523";
}
.fa-dice-four {
  --fa: "\f524";
}
.fa-dice-one {
  --fa: "\f525";
}
.fa-dice-six {
  --fa: "\f526";
}
.fa-dice-three {
  --fa: "\f527";
}
.fa-dice-two {
  --fa: "\f528";
}
.fa-divide {
  --fa: "\f529";
}
.fa-door-closed {
  --fa: "\f52a";
}
.fa-door-open {
  --fa: "\f52b";
}
.fa-feather {
  --fa: "\f52d";
}
.fa-frog {
  --fa: "\f52e";
}
.fa-gas-pump {
  --fa: "\f52f";
}
.fa-glasses {
  --fa: "\f530";
}
.fa-greater-than-equal {
  --fa: "\f532";
}
.fa-helicopter {
  --fa: "\f533";
}
.fa-infinity {
  --fa: "\f534";
}
.fa-kiwi-bird {
  --fa: "\f535";
}
.fa-less-than-equal {
  --fa: "\f537";
}
.fa-memory {
  --fa: "\f538";
}
.fa-microphone-lines-slash {
  --fa: "\f539";
}
.fa-microphone-alt-slash {
  --fa: "\f539";
}
.fa-money-bill-wave {
  --fa: "\f53a";
}
.fa-money-bill-1-wave {
  --fa: "\f53b";
}
.fa-money-bill-wave-alt {
  --fa: "\f53b";
}
.fa-money-check {
  --fa: "\f53c";
}
.fa-money-check-dollar {
  --fa: "\f53d";
}
.fa-money-check-alt {
  --fa: "\f53d";
}
.fa-not-equal {
  --fa: "\f53e";
}
.fa-palette {
  --fa: "\f53f";
}
.fa-square-parking {
  --fa: "\f540";
}
.fa-parking {
  --fa: "\f540";
}
.fa-diagram-project {
  --fa: "\f542";
}
.fa-project-diagram {
  --fa: "\f542";
}
.fa-receipt {
  --fa: "\f543";
}
.fa-robot {
  --fa: "\f544";
}
.fa-ruler {
  --fa: "\f545";
}
.fa-ruler-combined {
  --fa: "\f546";
}
.fa-ruler-horizontal {
  --fa: "\f547";
}
.fa-ruler-vertical {
  --fa: "\f548";
}
.fa-school {
  --fa: "\f549";
}
.fa-screwdriver {
  --fa: "\f54a";
}
.fa-shoe-prints {
  --fa: "\f54b";
}
.fa-skull {
  --fa: "\f54c";
}
.fa-ban-smoking {
  --fa: "\f54d";
}
.fa-smoking-ban {
  --fa: "\f54d";
}
.fa-store {
  --fa: "\f54e";
}
.fa-shop {
  --fa: "\f54f";
}
.fa-store-alt {
  --fa: "\f54f";
}
.fa-bars-staggered {
  --fa: "\f550";
}
.fa-reorder {
  --fa: "\f550";
}
.fa-stream {
  --fa: "\f550";
}
.fa-stroopwafel {
  --fa: "\f551";
}
.fa-toolbox {
  --fa: "\f552";
}
.fa-shirt {
  --fa: "\f553";
}
.fa-t-shirt {
  --fa: "\f553";
}
.fa-tshirt {
  --fa: "\f553";
}
.fa-person-walking {
  --fa: "\f554";
}
.fa-walking {
  --fa: "\f554";
}
.fa-wallet {
  --fa: "\f555";
}
.fa-face-angry {
  --fa: "\f556";
}
.fa-angry {
  --fa: "\f556";
}
.fa-archway {
  --fa: "\f557";
}
.fa-book-atlas {
  --fa: "\f558";
}
.fa-atlas {
  --fa: "\f558";
}
.fa-award {
  --fa: "\f559";
}
.fa-delete-left {
  --fa: "\f55a";
}
.fa-backspace {
  --fa: "\f55a";
}
.fa-bezier-curve {
  --fa: "\f55b";
}
.fa-bong {
  --fa: "\f55c";
}
.fa-brush {
  --fa: "\f55d";
}
.fa-bus-simple {
  --fa: "\f55e";
}
.fa-bus-alt {
  --fa: "\f55e";
}
.fa-cannabis {
  --fa: "\f55f";
}
.fa-check-double {
  --fa: "\f560";
}
.fa-martini-glass-citrus {
  --fa: "\f561";
}
.fa-cocktail {
  --fa: "\f561";
}
.fa-bell-concierge {
  --fa: "\f562";
}
.fa-concierge-bell {
  --fa: "\f562";
}
.fa-cookie {
  --fa: "\f563";
}
.fa-cookie-bite {
  --fa: "\f564";
}
.fa-crop-simple {
  --fa: "\f565";
}
.fa-crop-alt {
  --fa: "\f565";
}
.fa-tachograph-digital {
  --fa: "\f566";
}
.fa-digital-tachograph {
  --fa: "\f566";
}
.fa-face-dizzy {
  --fa: "\f567";
}
.fa-dizzy {
  --fa: "\f567";
}
.fa-compass-drafting {
  --fa: "\f568";
}
.fa-drafting-compass {
  --fa: "\f568";
}
.fa-drum {
  --fa: "\f569";
}
.fa-drum-steelpan {
  --fa: "\f56a";
}
.fa-feather-pointed {
  --fa: "\f56b";
}
.fa-feather-alt {
  --fa: "\f56b";
}
.fa-file-contract {
  --fa: "\f56c";
}
.fa-file-arrow-down {
  --fa: "\f56d";
}
.fa-file-download {
  --fa: "\f56d";
}
.fa-file-export {
  --fa: "\f56e";
}
.fa-arrow-right-from-file {
  --fa: "\f56e";
}
.fa-file-import {
  --fa: "\f56f";
}
.fa-arrow-right-to-file {
  --fa: "\f56f";
}
.fa-file-invoice {
  --fa: "\f570";
}
.fa-file-invoice-dollar {
  --fa: "\f571";
}
.fa-file-prescription {
  --fa: "\f572";
}
.fa-file-signature {
  --fa: "\f573";
}
.fa-file-arrow-up {
  --fa: "\f574";
}
.fa-file-upload {
  --fa: "\f574";
}
.fa-fill {
  --fa: "\f575";
}
.fa-fill-drip {
  --fa: "\f576";
}
.fa-fingerprint {
  --fa: "\f577";
}
.fa-fish {
  --fa: "\f578";
}
.fa-face-flushed {
  --fa: "\f579";
}
.fa-flushed {
  --fa: "\f579";
}
.fa-face-frown-open {
  --fa: "\f57a";
}
.fa-frown-open {
  --fa: "\f57a";
}
.fa-martini-glass {
  --fa: "\f57b";
}
.fa-glass-martini-alt {
  --fa: "\f57b";
}
.fa-earth-africa {
  --fa: "\f57c";
}
.fa-globe-africa {
  --fa: "\f57c";
}
.fa-earth-americas {
  --fa: "\f57d";
}
.fa-earth {
  --fa: "\f57d";
}
.fa-earth-america {
  --fa: "\f57d";
}
.fa-globe-americas {
  --fa: "\f57d";
}
.fa-earth-asia {
  --fa: "\f57e";
}
.fa-globe-asia {
  --fa: "\f57e";
}
.fa-face-grimace {
  --fa: "\f57f";
}
.fa-grimace {
  --fa: "\f57f";
}
.fa-face-grin {
  --fa: "\f580";
}
.fa-grin {
  --fa: "\f580";
}
.fa-face-grin-wide {
  --fa: "\f581";
}
.fa-grin-alt {
  --fa: "\f581";
}
.fa-face-grin-beam {
  --fa: "\f582";
}
.fa-grin-beam {
  --fa: "\f582";
}
.fa-face-grin-beam-sweat {
  --fa: "\f583";
}
.fa-grin-beam-sweat {
  --fa: "\f583";
}
.fa-face-grin-hearts {
  --fa: "\f584";
}
.fa-grin-hearts {
  --fa: "\f584";
}
.fa-face-grin-squint {
  --fa: "\f585";
}
.fa-grin-squint {
  --fa: "\f585";
}
.fa-face-grin-squint-tears {
  --fa: "\f586";
}
.fa-grin-squint-tears {
  --fa: "\f586";
}
.fa-face-grin-stars {
  --fa: "\f587";
}
.fa-grin-stars {
  --fa: "\f587";
}
.fa-face-grin-tears {
  --fa: "\f588";
}
.fa-grin-tears {
  --fa: "\f588";
}
.fa-face-grin-tongue {
  --fa: "\f589";
}
.fa-grin-tongue {
  --fa: "\f589";
}
.fa-face-grin-tongue-squint {
  --fa: "\f58a";
}
.fa-grin-tongue-squint {
  --fa: "\f58a";
}
.fa-face-grin-tongue-wink {
  --fa: "\f58b";
}
.fa-grin-tongue-wink {
  --fa: "\f58b";
}
.fa-face-grin-wink {
  --fa: "\f58c";
}
.fa-grin-wink {
  --fa: "\f58c";
}
.fa-grip {
  --fa: "\f58d";
}
.fa-grid-horizontal {
  --fa: "\f58d";
}
.fa-grip-horizontal {
  --fa: "\f58d";
}
.fa-grip-vertical {
  --fa: "\f58e";
}
.fa-grid-vertical {
  --fa: "\f58e";
}
.fa-headset {
  --fa: "\f590";
}
.fa-highlighter {
  --fa: "\f591";
}
.fa-hot-tub-person {
  --fa: "\f593";
}
.fa-hot-tub {
  --fa: "\f593";
}
.fa-hotel {
  --fa: "\f594";
}
.fa-joint {
  --fa: "\f595";
}
.fa-face-kiss {
  --fa: "\f596";
}
.fa-kiss {
  --fa: "\f596";
}
.fa-face-kiss-beam {
  --fa: "\f597";
}
.fa-kiss-beam {
  --fa: "\f597";
}
.fa-face-kiss-wink-heart {
  --fa: "\f598";
}
.fa-kiss-wink-heart {
  --fa: "\f598";
}
.fa-face-laugh {
  --fa: "\f599";
}
.fa-laugh {
  --fa: "\f599";
}
.fa-face-laugh-beam {
  --fa: "\f59a";
}
.fa-laugh-beam {
  --fa: "\f59a";
}
.fa-face-laugh-squint {
  --fa: "\f59b";
}
.fa-laugh-squint {
  --fa: "\f59b";
}
.fa-face-laugh-wink {
  --fa: "\f59c";
}
.fa-laugh-wink {
  --fa: "\f59c";
}
.fa-cart-flatbed-suitcase {
  --fa: "\f59d";
}
.fa-luggage-cart {
  --fa: "\f59d";
}
.fa-map-location {
  --fa: "\f59f";
}
.fa-map-marked {
  --fa: "\f59f";
}
.fa-map-location-dot {
  --fa: "\f5a0";
}
.fa-map-marked-alt {
  --fa: "\f5a0";
}
.fa-marker {
  --fa: "\f5a1";
}
.fa-medal {
  --fa: "\f5a2";
}
.fa-face-meh-blank {
  --fa: "\f5a4";
}
.fa-meh-blank {
  --fa: "\f5a4";
}
.fa-face-rolling-eyes {
  --fa: "\f5a5";
}
.fa-meh-rolling-eyes {
  --fa: "\f5a5";
}
.fa-monument {
  --fa: "\f5a6";
}
.fa-mortar-pestle {
  --fa: "\f5a7";
}
.fa-paint-roller {
  --fa: "\f5aa";
}
.fa-passport {
  --fa: "\f5ab";
}
.fa-pen-fancy {
  --fa: "\f5ac";
}
.fa-pen-nib {
  --fa: "\f5ad";
}
.fa-pen-ruler {
  --fa: "\f5ae";
}
.fa-pencil-ruler {
  --fa: "\f5ae";
}
.fa-plane-arrival {
  --fa: "\f5af";
}
.fa-plane-departure {
  --fa: "\f5b0";
}
.fa-prescription {
  --fa: "\f5b1";
}
.fa-face-sad-cry {
  --fa: "\f5b3";
}
.fa-sad-cry {
  --fa: "\f5b3";
}
.fa-face-sad-tear {
  --fa: "\f5b4";
}
.fa-sad-tear {
  --fa: "\f5b4";
}
.fa-van-shuttle {
  --fa: "\f5b6";
}
.fa-shuttle-van {
  --fa: "\f5b6";
}
.fa-signature {
  --fa: "\f5b7";
}
.fa-face-smile-beam {
  --fa: "\f5b8";
}
.fa-smile-beam {
  --fa: "\f5b8";
}
.fa-solar-panel {
  --fa: "\f5ba";
}
.fa-spa {
  --fa: "\f5bb";
}
.fa-splotch {
  --fa: "\f5bc";
}
.fa-spray-can {
  --fa: "\f5bd";
}
.fa-stamp {
  --fa: "\f5bf";
}
.fa-star-half-stroke {
  --fa: "\f5c0";
}
.fa-star-half-alt {
  --fa: "\f5c0";
}
.fa-suitcase-rolling {
  --fa: "\f5c1";
}
.fa-face-surprise {
  --fa: "\f5c2";
}
.fa-surprise {
  --fa: "\f5c2";
}
.fa-swatchbook {
  --fa: "\f5c3";
}
.fa-person-swimming {
  --fa: "\f5c4";
}
.fa-swimmer {
  --fa: "\f5c4";
}
.fa-water-ladder {
  --fa: "\f5c5";
}
.fa-ladder-water {
  --fa: "\f5c5";
}
.fa-swimming-pool {
  --fa: "\f5c5";
}
.fa-droplet-slash {
  --fa: "\f5c7";
}
.fa-tint-slash {
  --fa: "\f5c7";
}
.fa-face-tired {
  --fa: "\f5c8";
}
.fa-tired {
  --fa: "\f5c8";
}
.fa-tooth {
  --fa: "\f5c9";
}
.fa-umbrella-beach {
  --fa: "\f5ca";
}
.fa-weight-hanging {
  --fa: "\f5cd";
}
.fa-wine-glass-empty {
  --fa: "\f5ce";
}
.fa-wine-glass-alt {
  --fa: "\f5ce";
}
.fa-spray-can-sparkles {
  --fa: "\f5d0";
}
.fa-air-freshener {
  --fa: "\f5d0";
}
.fa-apple-whole {
  --fa: "\f5d1";
}
.fa-apple-alt {
  --fa: "\f5d1";
}
.fa-atom {
  --fa: "\f5d2";
}
.fa-bone {
  --fa: "\f5d7";
}
.fa-book-open-reader {
  --fa: "\f5da";
}
.fa-book-reader {
  --fa: "\f5da";
}
.fa-brain {
  --fa: "\f5dc";
}
.fa-car-rear {
  --fa: "\f5de";
}
.fa-car-alt {
  --fa: "\f5de";
}
.fa-car-battery {
  --fa: "\f5df";
}
.fa-battery-car {
  --fa: "\f5df";
}
.fa-car-burst {
  --fa: "\f5e1";
}
.fa-car-crash {
  --fa: "\f5e1";
}
.fa-car-side {
  --fa: "\f5e4";
}
.fa-charging-station {
  --fa: "\f5e7";
}
.fa-diamond-turn-right {
  --fa: "\f5eb";
}
.fa-directions {
  --fa: "\f5eb";
}
.fa-draw-polygon {
  --fa: "\f5ee";
}
.fa-vector-polygon {
  --fa: "\f5ee";
}
.fa-laptop-code {
  --fa: "\f5fc";
}
.fa-layer-group {
  --fa: "\f5fd";
}
.fa-location-crosshairs {
  --fa: "\f601";
}
.fa-location {
  --fa: "\f601";
}
.fa-lungs {
  --fa: "\f604";
}
.fa-microscope {
  --fa: "\f610";
}
.fa-oil-can {
  --fa: "\f613";
}
.fa-poop {
  --fa: "\f619";
}
.fa-shapes {
  --fa: "\f61f";
}
.fa-triangle-circle-square {
  --fa: "\f61f";
}
.fa-star-of-life {
  --fa: "\f621";
}
.fa-gauge {
  --fa: "\f624";
}
.fa-dashboard {
  --fa: "\f624";
}
.fa-gauge-med {
  --fa: "\f624";
}
.fa-tachometer-alt-average {
  --fa: "\f624";
}
.fa-gauge-high {
  --fa: "\f625";
}
.fa-tachometer-alt {
  --fa: "\f625";
}
.fa-tachometer-alt-fast {
  --fa: "\f625";
}
.fa-gauge-simple {
  --fa: "\f629";
}
.fa-gauge-simple-med {
  --fa: "\f629";
}
.fa-tachometer-average {
  --fa: "\f629";
}
.fa-gauge-simple-high {
  --fa: "\f62a";
}
.fa-tachometer {
  --fa: "\f62a";
}
.fa-tachometer-fast {
  --fa: "\f62a";
}
.fa-teeth {
  --fa: "\f62e";
}
.fa-teeth-open {
  --fa: "\f62f";
}
.fa-masks-theater {
  --fa: "\f630";
}
.fa-theater-masks {
  --fa: "\f630";
}
.fa-traffic-light {
  --fa: "\f637";
}
.fa-truck-monster {
  --fa: "\f63b";
}
.fa-truck-pickup {
  --fa: "\f63c";
}
.fa-rectangle-ad {
  --fa: "\f641";
}
.fa-ad {
  --fa: "\f641";
}
.fa-ankh {
  --fa: "\f644";
}
.fa-book-bible {
  --fa: "\f647";
}
.fa-bible {
  --fa: "\f647";
}
.fa-business-time {
  --fa: "\f64a";
}
.fa-briefcase-clock {
  --fa: "\f64a";
}
.fa-city {
  --fa: "\f64f";
}
.fa-comment-dollar {
  --fa: "\f651";
}
.fa-comments-dollar {
  --fa: "\f653";
}
.fa-cross {
  --fa: "\f654";
}
.fa-dharmachakra {
  --fa: "\f655";
}
.fa-envelope-open-text {
  --fa: "\f658";
}
.fa-folder-minus {
  --fa: "\f65d";
}
.fa-folder-plus {
  --fa: "\f65e";
}
.fa-filter-circle-dollar {
  --fa: "\f662";
}
.fa-funnel-dollar {
  --fa: "\f662";
}
.fa-gopuram {
  --fa: "\f664";
}
.fa-hamsa {
  --fa: "\f665";
}
.fa-bahai {
  --fa: "\f666";
}
.fa-haykal {
  --fa: "\f666";
}
.fa-jedi {
  --fa: "\f669";
}
.fa-book-journal-whills {
  --fa: "\f66a";
}
.fa-journal-whills {
  --fa: "\f66a";
}
.fa-kaaba {
  --fa: "\f66b";
}
.fa-khanda {
  --fa: "\f66d";
}
.fa-landmark {
  --fa: "\f66f";
}
.fa-envelopes-bulk {
  --fa: "\f674";
}
.fa-mail-bulk {
  --fa: "\f674";
}
.fa-menorah {
  --fa: "\f676";
}
.fa-mosque {
  --fa: "\f678";
}
.fa-om {
  --fa: "\f679";
}
.fa-spaghetti-monster-flying {
  --fa: "\f67b";
}
.fa-pastafarianism {
  --fa: "\f67b";
}
.fa-peace {
  --fa: "\f67c";
}
.fa-place-of-worship {
  --fa: "\f67f";
}
.fa-square-poll-vertical {
  --fa: "\f681";
}
.fa-poll {
  --fa: "\f681";
}
.fa-square-poll-horizontal {
  --fa: "\f682";
}
.fa-poll-h {
  --fa: "\f682";
}
.fa-person-praying {
  --fa: "\f683";
}
.fa-pray {
  --fa: "\f683";
}
.fa-hands-praying {
  --fa: "\f684";
}
.fa-praying-hands {
  --fa: "\f684";
}
.fa-book-quran {
  --fa: "\f687";
}
.fa-quran {
  --fa: "\f687";
}
.fa-magnifying-glass-dollar {
  --fa: "\f688";
}
.fa-search-dollar {
  --fa: "\f688";
}
.fa-magnifying-glass-location {
  --fa: "\f689";
}
.fa-search-location {
  --fa: "\f689";
}
.fa-socks {
  --fa: "\f696";
}
.fa-square-root-variable {
  --fa: "\f698";
}
.fa-square-root-alt {
  --fa: "\f698";
}
.fa-star-and-crescent {
  --fa: "\f699";
}
.fa-star-of-david {
  --fa: "\f69a";
}
.fa-synagogue {
  --fa: "\f69b";
}
.fa-scroll-torah {
  --fa: "\f6a0";
}
.fa-torah {
  --fa: "\f6a0";
}
.fa-torii-gate {
  --fa: "\f6a1";
}
.fa-vihara {
  --fa: "\f6a7";
}
.fa-volume-xmark {
  --fa: "\f6a9";
}
.fa-volume-mute {
  --fa: "\f6a9";
}
.fa-volume-times {
  --fa: "\f6a9";
}
.fa-yin-yang {
  --fa: "\f6ad";
}
.fa-blender-phone {
  --fa: "\f6b6";
}
.fa-book-skull {
  --fa: "\f6b7";
}
.fa-book-dead {
  --fa: "\f6b7";
}
.fa-campground {
  --fa: "\f6bb";
}
.fa-cat {
  --fa: "\f6be";
}
.fa-chair {
  --fa: "\f6c0";
}
.fa-cloud-moon {
  --fa: "\f6c3";
}
.fa-cloud-sun {
  --fa: "\f6c4";
}
.fa-cow {
  --fa: "\f6c8";
}
.fa-dice-d20 {
  --fa: "\f6cf";
}
.fa-dice-d6 {
  --fa: "\f6d1";
}
.fa-dog {
  --fa: "\f6d3";
}
.fa-dragon {
  --fa: "\f6d5";
}
.fa-drumstick-bite {
  --fa: "\f6d7";
}
.fa-dungeon {
  --fa: "\f6d9";
}
.fa-file-csv {
  --fa: "\f6dd";
}
.fa-hand-fist {
  --fa: "\f6de";
}
.fa-fist-raised {
  --fa: "\f6de";
}
.fa-ghost {
  --fa: "\f6e2";
}
.fa-hammer {
  --fa: "\f6e3";
}
.fa-hanukiah {
  --fa: "\f6e6";
}
.fa-hat-wizard {
  --fa: "\f6e8";
}
.fa-person-hiking {
  --fa: "\f6ec";
}
.fa-hiking {
  --fa: "\f6ec";
}
.fa-hippo {
  --fa: "\f6ed";
}
.fa-horse {
  --fa: "\f6f0";
}
.fa-house-chimney-crack {
  --fa: "\f6f1";
}
.fa-house-damage {
  --fa: "\f6f1";
}
.fa-hryvnia-sign {
  --fa: "\f6f2";
}
.fa-hryvnia {
  --fa: "\f6f2";
}
.fa-mask {
  --fa: "\f6fa";
}
.fa-mountain {
  --fa: "\f6fc";
}
.fa-network-wired {
  --fa: "\f6ff";
}
.fa-otter {
  --fa: "\f700";
}
.fa-ring {
  --fa: "\f70b";
}
.fa-person-running {
  --fa: "\f70c";
}
.fa-running {
  --fa: "\f70c";
}
.fa-scroll {
  --fa: "\f70e";
}
.fa-skull-crossbones {
  --fa: "\f714";
}
.fa-slash {
  --fa: "\f715";
}
.fa-spider {
  --fa: "\f717";
}
.fa-toilet-paper {
  --fa: "\f71e";
}
.fa-toilet-paper-alt {
  --fa: "\f71e";
}
.fa-toilet-paper-blank {
  --fa: "\f71e";
}
.fa-tractor {
  --fa: "\f722";
}
.fa-user-injured {
  --fa: "\f728";
}
.fa-vr-cardboard {
  --fa: "\f729";
}
.fa-wand-sparkles {
  --fa: "\f72b";
}
.fa-wind {
  --fa: "\f72e";
}
.fa-wine-bottle {
  --fa: "\f72f";
}
.fa-cloud-meatball {
  --fa: "\f73b";
}
.fa-cloud-moon-rain {
  --fa: "\f73c";
}
.fa-cloud-rain {
  --fa: "\f73d";
}
.fa-cloud-showers-heavy {
  --fa: "\f740";
}
.fa-cloud-sun-rain {
  --fa: "\f743";
}
.fa-democrat {
  --fa: "\f747";
}
.fa-flag-usa {
  --fa: "\f74d";
}
.fa-hurricane {
  --fa: "\f751";
}
.fa-landmark-dome {
  --fa: "\f752";
}
.fa-landmark-alt {
  --fa: "\f752";
}
.fa-meteor {
  --fa: "\f753";
}
.fa-person-booth {
  --fa: "\f756";
}
.fa-poo-storm {
  --fa: "\f75a";
}
.fa-poo-bolt {
  --fa: "\f75a";
}
.fa-rainbow {
  --fa: "\f75b";
}
.fa-republican {
  --fa: "\f75e";
}
.fa-smog {
  --fa: "\f75f";
}
.fa-temperature-high {
  --fa: "\f769";
}
.fa-temperature-low {
  --fa: "\f76b";
}
.fa-cloud-bolt {
  --fa: "\f76c";
}
.fa-thunderstorm {
  --fa: "\f76c";
}
.fa-tornado {
  --fa: "\f76f";
}
.fa-volcano {
  --fa: "\f770";
}
.fa-check-to-slot {
  --fa: "\f772";
}
.fa-vote-yea {
  --fa: "\f772";
}
.fa-water {
  --fa: "\f773";
}
.fa-baby {
  --fa: "\f77c";
}
.fa-baby-carriage {
  --fa: "\f77d";
}
.fa-carriage-baby {
  --fa: "\f77d";
}
.fa-biohazard {
  --fa: "\f780";
}
.fa-blog {
  --fa: "\f781";
}
.fa-calendar-day {
  --fa: "\f783";
}
.fa-calendar-week {
  --fa: "\f784";
}
.fa-candy-cane {
  --fa: "\f786";
}
.fa-carrot {
  --fa: "\f787";
}
.fa-cash-register {
  --fa: "\f788";
}
.fa-minimize {
  --fa: "\f78c";
}
.fa-compress-arrows-alt {
  --fa: "\f78c";
}
.fa-dumpster {
  --fa: "\f793";
}
.fa-dumpster-fire {
  --fa: "\f794";
}
.fa-ethernet {
  --fa: "\f796";
}
.fa-gifts {
  --fa: "\f79c";
}
.fa-champagne-glasses {
  --fa: "\f79f";
}
.fa-glass-cheers {
  --fa: "\f79f";
}
.fa-whiskey-glass {
  --fa: "\f7a0";
}
.fa-glass-whiskey {
  --fa: "\f7a0";
}
.fa-earth-europe {
  --fa: "\f7a2";
}
.fa-globe-europe {
  --fa: "\f7a2";
}
.fa-grip-lines {
  --fa: "\f7a4";
}
.fa-grip-lines-vertical {
  --fa: "\f7a5";
}
.fa-guitar {
  --fa: "\f7a6";
}
.fa-heart-crack {
  --fa: "\f7a9";
}
.fa-heart-broken {
  --fa: "\f7a9";
}
.fa-holly-berry {
  --fa: "\f7aa";
}
.fa-horse-head {
  --fa: "\f7ab";
}
.fa-icicles {
  --fa: "\f7ad";
}
.fa-igloo {
  --fa: "\f7ae";
}
.fa-mitten {
  --fa: "\f7b5";
}
.fa-mug-hot {
  --fa: "\f7b6";
}
.fa-radiation {
  --fa: "\f7b9";
}
.fa-circle-radiation {
  --fa: "\f7ba";
}
.fa-radiation-alt {
  --fa: "\f7ba";
}
.fa-restroom {
  --fa: "\f7bd";
}
.fa-satellite {
  --fa: "\f7bf";
}
.fa-satellite-dish {
  --fa: "\f7c0";
}
.fa-sd-card {
  --fa: "\f7c2";
}
.fa-sim-card {
  --fa: "\f7c4";
}
.fa-person-skating {
  --fa: "\f7c5";
}
.fa-skating {
  --fa: "\f7c5";
}
.fa-person-skiing {
  --fa: "\f7c9";
}
.fa-skiing {
  --fa: "\f7c9";
}
.fa-person-skiing-nordic {
  --fa: "\f7ca";
}
.fa-skiing-nordic {
  --fa: "\f7ca";
}
.fa-sleigh {
  --fa: "\f7cc";
}
.fa-comment-sms {
  --fa: "\f7cd";
}
.fa-sms {
  --fa: "\f7cd";
}
.fa-person-snowboarding {
  --fa: "\f7ce";
}
.fa-snowboarding {
  --fa: "\f7ce";
}
.fa-snowman {
  --fa: "\f7d0";
}
.fa-snowplow {
  --fa: "\f7d2";
}
.fa-tenge-sign {
  --fa: "\f7d7";
}
.fa-tenge {
  --fa: "\f7d7";
}
.fa-toilet {
  --fa: "\f7d8";
}
.fa-screwdriver-wrench {
  --fa: "\f7d9";
}
.fa-tools {
  --fa: "\f7d9";
}
.fa-cable-car {
  --fa: "\f7da";
}
.fa-tram {
  --fa: "\f7da";
}
.fa-fire-flame-curved {
  --fa: "\f7e4";
}
.fa-fire-alt {
  --fa: "\f7e4";
}
.fa-bacon {
  --fa: "\f7e5";
}
.fa-book-medical {
  --fa: "\f7e6";
}
.fa-bread-slice {
  --fa: "\f7ec";
}
.fa-cheese {
  --fa: "\f7ef";
}
.fa-house-chimney-medical {
  --fa: "\f7f2";
}
.fa-clinic-medical {
  --fa: "\f7f2";
}
.fa-clipboard-user {
  --fa: "\f7f3";
}
.fa-comment-medical {
  --fa: "\f7f5";
}
.fa-crutch {
  --fa: "\f7f7";
}
.fa-disease {
  --fa: "\f7fa";
}
.fa-egg {
  --fa: "\f7fb";
}
.fa-folder-tree {
  --fa: "\f802";
}
.fa-burger {
  --fa: "\f805";
}
.fa-hamburger {
  --fa: "\f805";
}
.fa-hand-middle-finger {
  --fa: "\f806";
}
.fa-helmet-safety {
  --fa: "\f807";
}
.fa-hard-hat {
  --fa: "\f807";
}
.fa-hat-hard {
  --fa: "\f807";
}
.fa-hospital-user {
  --fa: "\f80d";
}
.fa-hotdog {
  --fa: "\f80f";
}
.fa-ice-cream {
  --fa: "\f810";
}
.fa-laptop-medical {
  --fa: "\f812";
}
.fa-pager {
  --fa: "\f815";
}
.fa-pepper-hot {
  --fa: "\f816";
}
.fa-pizza-slice {
  --fa: "\f818";
}
.fa-sack-dollar {
  --fa: "\f81d";
}
.fa-book-tanakh {
  --fa: "\f827";
}
.fa-tanakh {
  --fa: "\f827";
}
.fa-bars-progress {
  --fa: "\f828";
}
.fa-tasks-alt {
  --fa: "\f828";
}
.fa-trash-arrow-up {
  --fa: "\f829";
}
.fa-trash-restore {
  --fa: "\f829";
}
.fa-trash-can-arrow-up {
  --fa: "\f82a";
}
.fa-trash-restore-alt {
  --fa: "\f82a";
}
.fa-user-nurse {
  --fa: "\f82f";
}
.fa-wave-square {
  --fa: "\f83e";
}
.fa-person-biking {
  --fa: "\f84a";
}
.fa-biking {
  --fa: "\f84a";
}
.fa-border-all {
  --fa: "\f84c";
}
.fa-border-none {
  --fa: "\f850";
}
.fa-border-top-left {
  --fa: "\f853";
}
.fa-border-style {
  --fa: "\f853";
}
.fa-person-digging {
  --fa: "\f85e";
}
.fa-digging {
  --fa: "\f85e";
}
.fa-fan {
  --fa: "\f863";
}
.fa-icons {
  --fa: "\f86d";
}
.fa-heart-music-camera-bolt {
  --fa: "\f86d";
}
.fa-phone-flip {
  --fa: "\f879";
}
.fa-phone-alt {
  --fa: "\f879";
}
.fa-square-phone-flip {
  --fa: "\f87b";
}
.fa-phone-square-alt {
  --fa: "\f87b";
}
.fa-photo-film {
  --fa: "\f87c";
}
.fa-photo-video {
  --fa: "\f87c";
}
.fa-text-slash {
  --fa: "\f87d";
}
.fa-remove-format {
  --fa: "\f87d";
}
.fa-arrow-down-z-a {
  --fa: "\f881";
}
.fa-sort-alpha-desc {
  --fa: "\f881";
}
.fa-sort-alpha-down-alt {
  --fa: "\f881";
}
.fa-arrow-up-z-a {
  --fa: "\f882";
}
.fa-sort-alpha-up-alt {
  --fa: "\f882";
}
.fa-arrow-down-short-wide {
  --fa: "\f884";
}
.fa-sort-amount-desc {
  --fa: "\f884";
}
.fa-sort-amount-down-alt {
  --fa: "\f884";
}
.fa-arrow-up-short-wide {
  --fa: "\f885";
}
.fa-sort-amount-up-alt {
  --fa: "\f885";
}
.fa-arrow-down-9-1 {
  --fa: "\f886";
}
.fa-sort-numeric-desc {
  --fa: "\f886";
}
.fa-sort-numeric-down-alt {
  --fa: "\f886";
}
.fa-arrow-up-9-1 {
  --fa: "\f887";
}
.fa-sort-numeric-up-alt {
  --fa: "\f887";
}
.fa-spell-check {
  --fa: "\f891";
}
.fa-voicemail {
  --fa: "\f897";
}
.fa-hat-cowboy {
  --fa: "\f8c0";
}
.fa-hat-cowboy-side {
  --fa: "\f8c1";
}
.fa-computer-mouse {
  --fa: "\f8cc";
}
.fa-mouse {
  --fa: "\f8cc";
}
.fa-radio {
  --fa: "\f8d7";
}
.fa-record-vinyl {
  --fa: "\f8d9";
}
.fa-walkie-talkie {
  --fa: "\f8ef";
}
.fa-caravan {
  --fa: "\f8ff";
}
/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */
:root, :host {
  --fa-family-classic: 'Font Awesome 7 Free';
  --fa-font-solid: normal 900 1em/1 var(--fa-family-classic);
  /* deprecated: this older custom property will be removed next major release */
  --fa-style-family-classic: var(--fa-family-classic);
}
@font-face {
  font-family: "Font Awesome 7 Free";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../webfonts/fa-solid-900.woff2");
}
.fas {
  --fa-family: var(--fa-family-classic);
  --fa-style: 900;
}
.fa-classic {
  --fa-family: var(--fa-family-classic);
}
.fa-solid {
  --fa-style: 900;
}
/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */
:root, :host {
  --fa-family-classic: 'Font Awesome 7 Free';
  --fa-font-regular: normal 400 1em/1 var(--fa-family-classic);
  /* deprecated: this older custom property will be removed next major release */
  --fa-style-family-classic: var(--fa-family-classic);
}
@font-face {
  font-family: "Font Awesome 7 Free";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-regular-400.woff2");
}
.far {
  --fa-family: var(--fa-family-classic);
  --fa-style: 400;
}
.fa-classic {
  --fa-family: var(--fa-family-classic);
}
.fa-regular {
  --fa-style: 400;
}
/*!
 * Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2025 Fonticons, Inc.
 */
:root, :host {
  --fa-family-brands: 'Font Awesome 7 Brands';
  --fa-font-brands: normal 400 1em/1 var(--fa-family-brands);
}
@font-face {
  font-family: "Font Awesome 7 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-brands-400.woff2");
}
.fab,
.fa-brands,
.fa-classic.fa-brands {
  --fa-family: var(--fa-family-brands);
  --fa-style: 400;
}
.fa-firefox-browser {
  --fa: "\e007";
}
.fa-ideal {
  --fa: "\e013";
}
.fa-microblog {
  --fa: "\e01a";
}
.fa-square-pied-piper {
  --fa: "\e01e";
}
.fa-pied-piper-square {
  --fa: "\e01e";
}
.fa-unity {
  --fa: "\e049";
}
.fa-dailymotion {
  --fa: "\e052";
}
.fa-square-instagram {
  --fa: "\e055";
}
.fa-instagram-square {
  --fa: "\e055";
}
.fa-mixer {
  --fa: "\e056";
}
.fa-shopify {
  --fa: "\e057";
}
.fa-deezer {
  --fa: "\e077";
}
.fa-edge-legacy {
  --fa: "\e078";
}
.fa-google-pay {
  --fa: "\e079";
}
.fa-rust {
  --fa: "\e07a";
}
.fa-tiktok {
  --fa: "\e07b";
}
.fa-unsplash {
  --fa: "\e07c";
}
.fa-cloudflare {
  --fa: "\e07d";
}
.fa-guilded {
  --fa: "\e07e";
}
.fa-hive {
  --fa: "\e07f";
}
.fa-42-group {
  --fa: "\e080";
}
.fa-innosoft {
  --fa: "\e080";
}
.fa-instalod {
  --fa: "\e081";
}
.fa-octopus-deploy {
  --fa: "\e082";
}
.fa-perbyte {
  --fa: "\e083";
}
.fa-uncharted {
  --fa: "\e084";
}
.fa-watchman-monitoring {
  --fa: "\e087";
}
.fa-wodu {
  --fa: "\e088";
}
.fa-wirsindhandwerk {
  --fa: "\e2d0";
}
.fa-wsh {
  --fa: "\e2d0";
}
.fa-bots {
  --fa: "\e340";
}
.fa-cmplid {
  --fa: "\e360";
}
.fa-bilibili {
  --fa: "\e3d9";
}
.fa-golang {
  --fa: "\e40f";
}
.fa-pix {
  --fa: "\e43a";
}
.fa-sitrox {
  --fa: "\e44a";
}
.fa-hashnode {
  --fa: "\e499";
}
.fa-meta {
  --fa: "\e49b";
}
.fa-padlet {
  --fa: "\e4a0";
}
.fa-nfc-directional {
  --fa: "\e530";
}
.fa-nfc-symbol {
  --fa: "\e531";
}
.fa-screenpal {
  --fa: "\e570";
}
.fa-space-awesome {
  --fa: "\e5ac";
}
.fa-square-font-awesome {
  --fa: "\e5ad";
}
.fa-square-gitlab {
  --fa: "\e5ae";
}
.fa-gitlab-square {
  --fa: "\e5ae";
}
.fa-odysee {
  --fa: "\e5c6";
}
.fa-stubber {
  --fa: "\e5c7";
}
.fa-debian {
  --fa: "\e60b";
}
.fa-shoelace {
  --fa: "\e60c";
}
.fa-threads {
  --fa: "\e618";
}
.fa-square-threads {
  --fa: "\e619";
}
.fa-square-x-twitter {
  --fa: "\e61a";
}
.fa-x-twitter {
  --fa: "\e61b";
}
.fa-opensuse {
  --fa: "\e62b";
}
.fa-letterboxd {
  --fa: "\e62d";
}
.fa-square-letterboxd {
  --fa: "\e62e";
}
.fa-mintbit {
  --fa: "\e62f";
}
.fa-google-scholar {
  --fa: "\e63b";
}
.fa-brave {
  --fa: "\e63c";
}
.fa-brave-reverse {
  --fa: "\e63d";
}
.fa-pixiv {
  --fa: "\e640";
}
.fa-upwork {
  --fa: "\e641";
}
.fa-webflow {
  --fa: "\e65c";
}
.fa-signal-messenger {
  --fa: "\e663";
}
.fa-bluesky {
  --fa: "\e671";
}
.fa-jxl {
  --fa: "\e67b";
}
.fa-square-upwork {
  --fa: "\e67c";
}
.fa-web-awesome {
  --fa: "\e682";
}
.fa-square-web-awesome {
  --fa: "\e683";
}
.fa-square-web-awesome-stroke {
  --fa: "\e684";
}
.fa-dart-lang {
  --fa: "\e693";
}
.fa-flutter {
  --fa: "\e694";
}
.fa-files-pinwheel {
  --fa: "\e69f";
}
.fa-css {
  --fa: "\e6a2";
}
.fa-square-bluesky {
  --fa: "\e6a3";
}
.fa-openai {
  --fa: "\e7cf";
}
.fa-square-linkedin {
  --fa: "\e7d0";
}
.fa-cash-app {
  --fa: "\e7d4";
}
.fa-disqus {
  --fa: "\e7d5";
}
.fa-eleventy {
  --fa: "\e7d6";
}
.fa-11ty {
  --fa: "\e7d6";
}
.fa-kakao-talk {
  --fa: "\e7d7";
}
.fa-linktree {
  --fa: "\e7d8";
}
.fa-notion {
  --fa: "\e7d9";
}
.fa-pandora {
  --fa: "\e7da";
}
.fa-pixelfed {
  --fa: "\e7db";
}
.fa-tidal {
  --fa: "\e7dc";
}
.fa-vsco {
  --fa: "\e7dd";
}
.fa-w3c {
  --fa: "\e7de";
}
.fa-lumon {
  --fa: "\e7e2";
}
.fa-lumon-drop {
  --fa: "\e7e3";
}
.fa-square-figma {
  --fa: "\e7e4";
}
.fa-tex {
  --fa: "\e7ff";
}
.fa-duolingo {
  --fa: "\e812";
}
.fa-square-twitter {
  --fa: "\f081";
}
.fa-twitter-square {
  --fa: "\f081";
}
.fa-square-facebook {
  --fa: "\f082";
}
.fa-facebook-square {
  --fa: "\f082";
}
.fa-linkedin {
  --fa: "\f08c";
}
.fa-square-github {
  --fa: "\f092";
}
.fa-github-square {
  --fa: "\f092";
}
.fa-twitter {
  --fa: "\f099";
}
.fa-facebook {
  --fa: "\f09a";
}
.fa-github {
  --fa: "\f09b";
}
.fa-pinterest {
  --fa: "\f0d2";
}
.fa-square-pinterest {
  --fa: "\f0d3";
}
.fa-pinterest-square {
  --fa: "\f0d3";
}
.fa-square-google-plus {
  --fa: "\f0d4";
}
.fa-google-plus-square {
  --fa: "\f0d4";
}
.fa-google-plus-g {
  --fa: "\f0d5";
}
.fa-linkedin-in {
  --fa: "\f0e1";
}
.fa-github-alt {
  --fa: "\f113";
}
.fa-maxcdn {
  --fa: "\f136";
}
.fa-html5 {
  --fa: "\f13b";
}
.fa-css3 {
  --fa: "\f13c";
}
.fa-btc {
  --fa: "\f15a";
}
.fa-youtube {
  --fa: "\f167";
}
.fa-xing {
  --fa: "\f168";
}
.fa-square-xing {
  --fa: "\f169";
}
.fa-xing-square {
  --fa: "\f169";
}
.fa-dropbox {
  --fa: "\f16b";
}
.fa-stack-overflow {
  --fa: "\f16c";
}
.fa-instagram {
  --fa: "\f16d";
}
.fa-flickr {
  --fa: "\f16e";
}
.fa-adn {
  --fa: "\f170";
}
.fa-bitbucket {
  --fa: "\f171";
}
.fa-tumblr {
  --fa: "\f173";
}
.fa-square-tumblr {
  --fa: "\f174";
}
.fa-tumblr-square {
  --fa: "\f174";
}
.fa-apple {
  --fa: "\f179";
}
.fa-windows {
  --fa: "\f17a";
}
.fa-android {
  --fa: "\f17b";
}
.fa-linux {
  --fa: "\f17c";
}
.fa-dribbble {
  --fa: "\f17d";
}
.fa-skype {
  --fa: "\f17e";
}
.fa-foursquare {
  --fa: "\f180";
}
.fa-trello {
  --fa: "\f181";
}
.fa-gratipay {
  --fa: "\f184";
}
.fa-vk {
  --fa: "\f189";
}
.fa-weibo {
  --fa: "\f18a";
}
.fa-renren {
  --fa: "\f18b";
}
.fa-pagelines {
  --fa: "\f18c";
}
.fa-stack-exchange {
  --fa: "\f18d";
}
.fa-square-vimeo {
  --fa: "\f194";
}
.fa-vimeo-square {
  --fa: "\f194";
}
.fa-slack {
  --fa: "\f198";
}
.fa-slack-hash {
  --fa: "\f198";
}
.fa-wordpress {
  --fa: "\f19a";
}
.fa-openid {
  --fa: "\f19b";
}
.fa-yahoo {
  --fa: "\f19e";
}
.fa-google {
  --fa: "\f1a0";
}
.fa-reddit {
  --fa: "\f1a1";
}
.fa-square-reddit {
  --fa: "\f1a2";
}
.fa-reddit-square {
  --fa: "\f1a2";
}
.fa-stumbleupon-circle {
  --fa: "\f1a3";
}
.fa-stumbleupon {
  --fa: "\f1a4";
}
.fa-delicious {
  --fa: "\f1a5";
}
.fa-digg {
  --fa: "\f1a6";
}
.fa-pied-piper-pp {
  --fa: "\f1a7";
}
.fa-pied-piper-alt {
  --fa: "\f1a8";
}
.fa-drupal {
  --fa: "\f1a9";
}
.fa-joomla {
  --fa: "\f1aa";
}
.fa-behance {
  --fa: "\f1b4";
}
.fa-square-behance {
  --fa: "\f1b5";
}
.fa-behance-square {
  --fa: "\f1b5";
}
.fa-steam {
  --fa: "\f1b6";
}
.fa-square-steam {
  --fa: "\f1b7";
}
.fa-steam-square {
  --fa: "\f1b7";
}
.fa-spotify {
  --fa: "\f1bc";
}
.fa-deviantart {
  --fa: "\f1bd";
}
.fa-soundcloud {
  --fa: "\f1be";
}
.fa-vine {
  --fa: "\f1ca";
}
.fa-codepen {
  --fa: "\f1cb";
}
.fa-jsfiddle {
  --fa: "\f1cc";
}
.fa-rebel {
  --fa: "\f1d0";
}
.fa-empire {
  --fa: "\f1d1";
}
.fa-square-git {
  --fa: "\f1d2";
}
.fa-git-square {
  --fa: "\f1d2";
}
.fa-git {
  --fa: "\f1d3";
}
.fa-hacker-news {
  --fa: "\f1d4";
}
.fa-tencent-weibo {
  --fa: "\f1d5";
}
.fa-qq {
  --fa: "\f1d6";
}
.fa-weixin {
  --fa: "\f1d7";
}
.fa-slideshare {
  --fa: "\f1e7";
}
.fa-twitch {
  --fa: "\f1e8";
}
.fa-yelp {
  --fa: "\f1e9";
}
.fa-paypal {
  --fa: "\f1ed";
}
.fa-google-wallet {
  --fa: "\f1ee";
}
.fa-cc-visa {
  --fa: "\f1f0";
}
.fa-cc-mastercard {
  --fa: "\f1f1";
}
.fa-cc-discover {
  --fa: "\f1f2";
}
.fa-cc-amex {
  --fa: "\f1f3";
}
.fa-cc-paypal {
  --fa: "\f1f4";
}
.fa-cc-stripe {
  --fa: "\f1f5";
}
.fa-lastfm {
  --fa: "\f202";
}
.fa-square-lastfm {
  --fa: "\f203";
}
.fa-lastfm-square {
  --fa: "\f203";
}
.fa-ioxhost {
  --fa: "\f208";
}
.fa-angellist {
  --fa: "\f209";
}
.fa-buysellads {
  --fa: "\f20d";
}
.fa-connectdevelop {
  --fa: "\f20e";
}
.fa-dashcube {
  --fa: "\f210";
}
.fa-forumbee {
  --fa: "\f211";
}
.fa-leanpub {
  --fa: "\f212";
}
.fa-sellsy {
  --fa: "\f213";
}
.fa-shirtsinbulk {
  --fa: "\f214";
}
.fa-simplybuilt {
  --fa: "\f215";
}
.fa-skyatlas {
  --fa: "\f216";
}
.fa-pinterest-p {
  --fa: "\f231";
}
.fa-whatsapp {
  --fa: "\f232";
}
.fa-viacoin {
  --fa: "\f237";
}
.fa-medium {
  --fa: "\f23a";
}
.fa-medium-m {
  --fa: "\f23a";
}
.fa-y-combinator {
  --fa: "\f23b";
}
.fa-optin-monster {
  --fa: "\f23c";
}
.fa-opencart {
  --fa: "\f23d";
}
.fa-expeditedssl {
  --fa: "\f23e";
}
.fa-cc-jcb {
  --fa: "\f24b";
}
.fa-cc-diners-club {
  --fa: "\f24c";
}
.fa-creative-commons {
  --fa: "\f25e";
}
.fa-gg {
  --fa: "\f260";
}
.fa-gg-circle {
  --fa: "\f261";
}
.fa-odnoklassniki {
  --fa: "\f263";
}
.fa-square-odnoklassniki {
  --fa: "\f264";
}
.fa-odnoklassniki-square {
  --fa: "\f264";
}
.fa-get-pocket {
  --fa: "\f265";
}
.fa-wikipedia-w {
  --fa: "\f266";
}
.fa-safari {
  --fa: "\f267";
}
.fa-chrome {
  --fa: "\f268";
}
.fa-firefox {
  --fa: "\f269";
}
.fa-opera {
  --fa: "\f26a";
}
.fa-internet-explorer {
  --fa: "\f26b";
}
.fa-contao {
  --fa: "\f26d";
}
.fa-500px {
  --fa: "\f26e";
}
.fa-amazon {
  --fa: "\f270";
}
.fa-houzz {
  --fa: "\f27c";
}
.fa-vimeo-v {
  --fa: "\f27d";
}
.fa-black-tie {
  --fa: "\f27e";
}
.fa-fonticons {
  --fa: "\f280";
}
.fa-reddit-alien {
  --fa: "\f281";
}
.fa-edge {
  --fa: "\f282";
}
.fa-codiepie {
  --fa: "\f284";
}
.fa-modx {
  --fa: "\f285";
}
.fa-fort-awesome {
  --fa: "\f286";
}
.fa-usb {
  --fa: "\f287";
}
.fa-product-hunt {
  --fa: "\f288";
}
.fa-mixcloud {
  --fa: "\f289";
}
.fa-scribd {
  --fa: "\f28a";
}
.fa-bluetooth {
  --fa: "\f293";
}
.fa-bluetooth-b {
  --fa: "\f294";
}
.fa-gitlab {
  --fa: "\f296";
}
.fa-wpbeginner {
  --fa: "\f297";
}
.fa-wpforms {
  --fa: "\f298";
}
.fa-envira {
  --fa: "\f299";
}
.fa-glide {
  --fa: "\f2a5";
}
.fa-glide-g {
  --fa: "\f2a6";
}
.fa-viadeo {
  --fa: "\f2a9";
}
.fa-square-viadeo {
  --fa: "\f2aa";
}
.fa-viadeo-square {
  --fa: "\f2aa";
}
.fa-snapchat {
  --fa: "\f2ab";
}
.fa-snapchat-ghost {
  --fa: "\f2ab";
}
.fa-square-snapchat {
  --fa: "\f2ad";
}
.fa-snapchat-square {
  --fa: "\f2ad";
}
.fa-pied-piper {
  --fa: "\f2ae";
}
.fa-first-order {
  --fa: "\f2b0";
}
.fa-yoast {
  --fa: "\f2b1";
}
.fa-themeisle {
  --fa: "\f2b2";
}
.fa-google-plus {
  --fa: "\f2b3";
}
.fa-font-awesome {
  --fa: "\f2b4";
}
.fa-font-awesome-flag {
  --fa: "\f2b4";
}
.fa-font-awesome-logo-full {
  --fa: "\f2b4";
}
.fa-linode {
  --fa: "\f2b8";
}
.fa-quora {
  --fa: "\f2c4";
}
.fa-free-code-camp {
  --fa: "\f2c5";
}
.fa-telegram {
  --fa: "\f2c6";
}
.fa-telegram-plane {
  --fa: "\f2c6";
}
.fa-bandcamp {
  --fa: "\f2d5";
}
.fa-grav {
  --fa: "\f2d6";
}
.fa-etsy {
  --fa: "\f2d7";
}
.fa-imdb {
  --fa: "\f2d8";
}
.fa-ravelry {
  --fa: "\f2d9";
}
.fa-sellcast {
  --fa: "\f2da";
}
.fa-superpowers {
  --fa: "\f2dd";
}
.fa-wpexplorer {
  --fa: "\f2de";
}
.fa-meetup {
  --fa: "\f2e0";
}
.fa-square-font-awesome-stroke {
  --fa: "\f35c";
}
.fa-font-awesome-alt {
  --fa: "\f35c";
}
.fa-accessible-icon {
  --fa: "\f368";
}
.fa-accusoft {
  --fa: "\f369";
}
.fa-adversal {
  --fa: "\f36a";
}
.fa-affiliatetheme {
  --fa: "\f36b";
}
.fa-algolia {
  --fa: "\f36c";
}
.fa-amilia {
  --fa: "\f36d";
}
.fa-angrycreative {
  --fa: "\f36e";
}
.fa-app-store {
  --fa: "\f36f";
}
.fa-app-store-ios {
  --fa: "\f370";
}
.fa-apper {
  --fa: "\f371";
}
.fa-asymmetrik {
  --fa: "\f372";
}
.fa-audible {
  --fa: "\f373";
}
.fa-avianex {
  --fa: "\f374";
}
.fa-aws {
  --fa: "\f375";
}
.fa-bimobject {
  --fa: "\f378";
}
.fa-bitcoin {
  --fa: "\f379";
}
.fa-bity {
  --fa: "\f37a";
}
.fa-blackberry {
  --fa: "\f37b";
}
.fa-blogger {
  --fa: "\f37c";
}
.fa-blogger-b {
  --fa: "\f37d";
}
.fa-buromobelexperte {
  --fa: "\f37f";
}
.fa-centercode {
  --fa: "\f380";
}
.fa-cloudscale {
  --fa: "\f383";
}
.fa-cloudsmith {
  --fa: "\f384";
}
.fa-cloudversify {
  --fa: "\f385";
}
.fa-cpanel {
  --fa: "\f388";
}
.fa-css3-alt {
  --fa: "\f38b";
}
.fa-cuttlefish {
  --fa: "\f38c";
}
.fa-d-and-d {
  --fa: "\f38d";
}
.fa-deploydog {
  --fa: "\f38e";
}
.fa-deskpro {
  --fa: "\f38f";
}
.fa-digital-ocean {
  --fa: "\f391";
}
.fa-discord {
  --fa: "\f392";
}
.fa-discourse {
  --fa: "\f393";
}
.fa-dochub {
  --fa: "\f394";
}
.fa-docker {
  --fa: "\f395";
}
.fa-draft2digital {
  --fa: "\f396";
}
.fa-square-dribbble {
  --fa: "\f397";
}
.fa-dribbble-square {
  --fa: "\f397";
}
.fa-dyalog {
  --fa: "\f399";
}
.fa-earlybirds {
  --fa: "\f39a";
}
.fa-erlang {
  --fa: "\f39d";
}
.fa-facebook-f {
  --fa: "\f39e";
}
.fa-facebook-messenger {
  --fa: "\f39f";
}
.fa-firstdraft {
  --fa: "\f3a1";
}
.fa-fonticons-fi {
  --fa: "\f3a2";
}
.fa-fort-awesome-alt {
  --fa: "\f3a3";
}
.fa-freebsd {
  --fa: "\f3a4";
}
.fa-gitkraken {
  --fa: "\f3a6";
}
.fa-gofore {
  --fa: "\f3a7";
}
.fa-goodreads {
  --fa: "\f3a8";
}
.fa-goodreads-g {
  --fa: "\f3a9";
}
.fa-google-drive {
  --fa: "\f3aa";
}
.fa-google-play {
  --fa: "\f3ab";
}
.fa-gripfire {
  --fa: "\f3ac";
}
.fa-grunt {
  --fa: "\f3ad";
}
.fa-gulp {
  --fa: "\f3ae";
}
.fa-square-hacker-news {
  --fa: "\f3af";
}
.fa-hacker-news-square {
  --fa: "\f3af";
}
.fa-hire-a-helper {
  --fa: "\f3b0";
}
.fa-hotjar {
  --fa: "\f3b1";
}
.fa-hubspot {
  --fa: "\f3b2";
}
.fa-itunes {
  --fa: "\f3b4";
}
.fa-itunes-note {
  --fa: "\f3b5";
}
.fa-jenkins {
  --fa: "\f3b6";
}
.fa-joget {
  --fa: "\f3b7";
}
.fa-js {
  --fa: "\f3b8";
}
.fa-square-js {
  --fa: "\f3b9";
}
.fa-js-square {
  --fa: "\f3b9";
}
.fa-keycdn {
  --fa: "\f3ba";
}
.fa-kickstarter {
  --fa: "\f3bb";
}
.fa-square-kickstarter {
  --fa: "\f3bb";
}
.fa-kickstarter-k {
  --fa: "\f3bc";
}
.fa-laravel {
  --fa: "\f3bd";
}
.fa-line {
  --fa: "\f3c0";
}
.fa-lyft {
  --fa: "\f3c3";
}
.fa-magento {
  --fa: "\f3c4";
}
.fa-medapps {
  --fa: "\f3c6";
}
.fa-medrt {
  --fa: "\f3c8";
}
.fa-microsoft {
  --fa: "\f3ca";
}
.fa-mix {
  --fa: "\f3cb";
}
.fa-mizuni {
  --fa: "\f3cc";
}
.fa-monero {
  --fa: "\f3d0";
}
.fa-napster {
  --fa: "\f3d2";
}
.fa-node-js {
  --fa: "\f3d3";
}
.fa-npm {
  --fa: "\f3d4";
}
.fa-ns8 {
  --fa: "\f3d5";
}
.fa-nutritionix {
  --fa: "\f3d6";
}
.fa-page4 {
  --fa: "\f3d7";
}
.fa-palfed {
  --fa: "\f3d8";
}
.fa-patreon {
  --fa: "\f3d9";
}
.fa-periscope {
  --fa: "\f3da";
}
.fa-phabricator {
  --fa: "\f3db";
}
.fa-phoenix-framework {
  --fa: "\f3dc";
}
.fa-playstation {
  --fa: "\f3df";
}
.fa-pushed {
  --fa: "\f3e1";
}
.fa-python {
  --fa: "\f3e2";
}
.fa-red-river {
  --fa: "\f3e3";
}
.fa-wpressr {
  --fa: "\f3e4";
}
.fa-rendact {
  --fa: "\f3e4";
}
.fa-replyd {
  --fa: "\f3e6";
}
.fa-resolving {
  --fa: "\f3e7";
}
.fa-rocketchat {
  --fa: "\f3e8";
}
.fa-rockrms {
  --fa: "\f3e9";
}
.fa-schlix {
  --fa: "\f3ea";
}
.fa-searchengin {
  --fa: "\f3eb";
}
.fa-servicestack {
  --fa: "\f3ec";
}
.fa-sistrix {
  --fa: "\f3ee";
}
.fa-speakap {
  --fa: "\f3f3";
}
.fa-staylinked {
  --fa: "\f3f5";
}
.fa-steam-symbol {
  --fa: "\f3f6";
}
.fa-sticker-mule {
  --fa: "\f3f7";
}
.fa-studiovinari {
  --fa: "\f3f8";
}
.fa-supple {
  --fa: "\f3f9";
}
.fa-uber {
  --fa: "\f402";
}
.fa-uikit {
  --fa: "\f403";
}
.fa-uniregistry {
  --fa: "\f404";
}
.fa-untappd {
  --fa: "\f405";
}
.fa-ussunnah {
  --fa: "\f407";
}
.fa-vaadin {
  --fa: "\f408";
}
.fa-viber {
  --fa: "\f409";
}
.fa-vimeo {
  --fa: "\f40a";
}
.fa-vnv {
  --fa: "\f40b";
}
.fa-square-whatsapp {
  --fa: "\f40c";
}
.fa-whatsapp-square {
  --fa: "\f40c";
}
.fa-whmcs {
  --fa: "\f40d";
}
.fa-wordpress-simple {
  --fa: "\f411";
}
.fa-xbox {
  --fa: "\f412";
}
.fa-yandex {
  --fa: "\f413";
}
.fa-yandex-international {
  --fa: "\f414";
}
.fa-apple-pay {
  --fa: "\f415";
}
.fa-cc-apple-pay {
  --fa: "\f416";
}
.fa-fly {
  --fa: "\f417";
}
.fa-node {
  --fa: "\f419";
}
.fa-osi {
  --fa: "\f41a";
}
.fa-react {
  --fa: "\f41b";
}
.fa-autoprefixer {
  --fa: "\f41c";
}
.fa-less {
  --fa: "\f41d";
}
.fa-sass {
  --fa: "\f41e";
}
.fa-vuejs {
  --fa: "\f41f";
}
.fa-angular {
  --fa: "\f420";
}
.fa-aviato {
  --fa: "\f421";
}
.fa-ember {
  --fa: "\f423";
}
.fa-gitter {
  --fa: "\f426";
}
.fa-hooli {
  --fa: "\f427";
}
.fa-strava {
  --fa: "\f428";
}
.fa-stripe {
  --fa: "\f429";
}
.fa-stripe-s {
  --fa: "\f42a";
}
.fa-typo3 {
  --fa: "\f42b";
}
.fa-amazon-pay {
  --fa: "\f42c";
}
.fa-cc-amazon-pay {
  --fa: "\f42d";
}
.fa-ethereum {
  --fa: "\f42e";
}
.fa-korvue {
  --fa: "\f42f";
}
.fa-elementor {
  --fa: "\f430";
}
.fa-square-youtube {
  --fa: "\f431";
}
.fa-youtube-square {
  --fa: "\f431";
}
.fa-flipboard {
  --fa: "\f44d";
}
.fa-hips {
  --fa: "\f452";
}
.fa-php {
  --fa: "\f457";
}
.fa-quinscape {
  --fa: "\f459";
}
.fa-readme {
  --fa: "\f4d5";
}
.fa-java {
  --fa: "\f4e4";
}
.fa-pied-piper-hat {
  --fa: "\f4e5";
}
.fa-creative-commons-by {
  --fa: "\f4e7";
}
.fa-creative-commons-nc {
  --fa: "\f4e8";
}
.fa-creative-commons-nc-eu {
  --fa: "\f4e9";
}
.fa-creative-commons-nc-jp {
  --fa: "\f4ea";
}
.fa-creative-commons-nd {
  --fa: "\f4eb";
}
.fa-creative-commons-pd {
  --fa: "\f4ec";
}
.fa-creative-commons-pd-alt {
  --fa: "\f4ed";
}
.fa-creative-commons-remix {
  --fa: "\f4ee";
}
.fa-creative-commons-sa {
  --fa: "\f4ef";
}
.fa-creative-commons-sampling {
  --fa: "\f4f0";
}
.fa-creative-commons-sampling-plus {
  --fa: "\f4f1";
}
.fa-creative-commons-share {
  --fa: "\f4f2";
}
.fa-creative-commons-zero {
  --fa: "\f4f3";
}
.fa-ebay {
  --fa: "\f4f4";
}
.fa-keybase {
  --fa: "\f4f5";
}
.fa-mastodon {
  --fa: "\f4f6";
}
.fa-r-project {
  --fa: "\f4f7";
}
.fa-researchgate {
  --fa: "\f4f8";
}
.fa-teamspeak {
  --fa: "\f4f9";
}
.fa-first-order-alt {
  --fa: "\f50a";
}
.fa-fulcrum {
  --fa: "\f50b";
}
.fa-galactic-republic {
  --fa: "\f50c";
}
.fa-galactic-senate {
  --fa: "\f50d";
}
.fa-jedi-order {
  --fa: "\f50e";
}
.fa-mandalorian {
  --fa: "\f50f";
}
.fa-old-republic {
  --fa: "\f510";
}
.fa-phoenix-squadron {
  --fa: "\f511";
}
.fa-sith {
  --fa: "\f512";
}
.fa-trade-federation {
  --fa: "\f513";
}
.fa-wolf-pack-battalion {
  --fa: "\f514";
}
.fa-hornbill {
  --fa: "\f592";
}
.fa-mailchimp {
  --fa: "\f59e";
}
.fa-megaport {
  --fa: "\f5a3";
}
.fa-nimblr {
  --fa: "\f5a8";
}
.fa-rev {
  --fa: "\f5b2";
}
.fa-shopware {
  --fa: "\f5b5";
}
.fa-squarespace {
  --fa: "\f5be";
}
.fa-themeco {
  --fa: "\f5c6";
}
.fa-weebly {
  --fa: "\f5cc";
}
.fa-wix {
  --fa: "\f5cf";
}
.fa-ello {
  --fa: "\f5f1";
}
.fa-hackerrank {
  --fa: "\f5f7";
}
.fa-kaggle {
  --fa: "\f5fa";
}
.fa-markdown {
  --fa: "\f60f";
}
.fa-neos {
  --fa: "\f612";
}
.fa-zhihu {
  --fa: "\f63f";
}
.fa-alipay {
  --fa: "\f642";
}
.fa-the-red-yeti {
  --fa: "\f69d";
}
.fa-critical-role {
  --fa: "\f6c9";
}
.fa-d-and-d-beyond {
  --fa: "\f6ca";
}
.fa-dev {
  --fa: "\f6cc";
}
.fa-fantasy-flight-games {
  --fa: "\f6dc";
}
.fa-wizards-of-the-coast {
  --fa: "\f730";
}
.fa-think-peaks {
  --fa: "\f731";
}
.fa-reacteurope {
  --fa: "\f75d";
}
.fa-artstation {
  --fa: "\f77a";
}
.fa-atlassian {
  --fa: "\f77b";
}
.fa-canadian-maple-leaf {
  --fa: "\f785";
}
.fa-centos {
  --fa: "\f789";
}
.fa-confluence {
  --fa: "\f78d";
}
.fa-dhl {
  --fa: "\f790";
}
.fa-diaspora {
  --fa: "\f791";
}
.fa-fedex {
  --fa: "\f797";
}
.fa-fedora {
  --fa: "\f798";
}
.fa-figma {
  --fa: "\f799";
}
.fa-intercom {
  --fa: "\f7af";
}
.fa-invision {
  --fa: "\f7b0";
}
.fa-jira {
  --fa: "\f7b1";
}
.fa-mendeley {
  --fa: "\f7b3";
}
.fa-raspberry-pi {
  --fa: "\f7bb";
}
.fa-redhat {
  --fa: "\f7bc";
}
.fa-sketch {
  --fa: "\f7c6";
}
.fa-sourcetree {
  --fa: "\f7d3";
}
.fa-suse {
  --fa: "\f7d6";
}
.fa-ubuntu {
  --fa: "\f7df";
}
.fa-ups {
  --fa: "\f7e0";
}
.fa-usps {
  --fa: "\f7e1";
}
.fa-yarn {
  --fa: "\f7e3";
}
.fa-airbnb {
  --fa: "\f834";
}
.fa-battle-net {
  --fa: "\f835";
}
.fa-bootstrap {
  --fa: "\f836";
}
.fa-buffer {
  --fa: "\f837";
}
.fa-chromecast {
  --fa: "\f838";
}
.fa-evernote {
  --fa: "\f839";
}
.fa-itch-io {
  --fa: "\f83a";
}
.fa-salesforce {
  --fa: "\f83b";
}
.fa-speaker-deck {
  --fa: "\f83c";
}
.fa-symfony {
  --fa: "\f83d";
}
.fa-waze {
  --fa: "\f83f";
}
.fa-yammer {
  --fa: "\f840";
}
.fa-git-alt {
  --fa: "\f841";
}
.fa-stackpath {
  --fa: "\f842";
}
.fa-cotton-bureau {
  --fa: "\f89e";
}
.fa-buy-n-large {
  --fa: "\f8a6";
}
.fa-mdb {
  --fa: "\f8ca";
}
.fa-orcid {
  --fa: "\f8d2";
}
.fa-swift {
  --fa: "\f8e1";
}
.fa-umbraco {
  --fa: "\f8e8";
}
/* ==========================================================================
   UTILITY CLASSES - Scoped Reusable Utility Patterns

   SCOPING CONVENTIONS:
   - .ek-u-* : Global utilities (use sparingly, high specificity)
   - .ek-c-* : Component utilities (scoped to specific components)
   - .ek-is-* / .ek-has-* : State utilities (JavaScript-driven states)

   IMPORTANT: Only use !important for:
   - Critical accessibility overrides (screen reader text)
   - Print styles
   - Responsive display utilities (when specificity conflicts occur)
   ========================================================================== */
/* Spacing utilities - Scoped with .ek-u- prefix */
.ek-u-m-0 {
  margin: 0;
}
.ek-u-mt-1 {
  margin-top: var(--spacing-1);
}
.ek-u-mt-2 {
  margin-top: var(--spacing-2);
}
.ek-u-mt-3 {
  margin-top: var(--spacing-3);
}
.ek-u-mt-4 {
  margin-top: var(--spacing-4);
}
.ek-u-mt-5 {
  margin-top: var(--spacing-5);
}
.ek-u-mt-6 {
  margin-top: var(--spacing-6);
}
.ek-u-mb-1 {
  margin-bottom: var(--spacing-1);
}
.ek-u-mb-2 {
  margin-bottom: var(--spacing-2);
}
.ek-u-mb-3 {
  margin-bottom: var(--spacing-3);
}
.ek-u-mb-4 {
  margin-bottom: var(--spacing-4);
}
.ek-u-mb-5 {
  margin-bottom: var(--spacing-5);
}
.ek-u-mb-6 {
  margin-bottom: var(--spacing-6);
}
.ek-u-p-1 {
  padding: var(--spacing-1);
}
.ek-u-p-2 {
  padding: var(--spacing-2);
}
.ek-u-p-3 {
  padding: var(--spacing-3);
}
.ek-u-p-4 {
  padding: var(--spacing-4);
}
.ek-u-p-5 {
  padding: var(--spacing-5);
}
.ek-u-p-6 {
  padding: var(--spacing-6);
}
/* Flexbox utilities - Scoped with .ek-u- prefix */
.ek-u-d-flex {
  display: -webkit-box;
  display: flex;
}
.ek-u-d-inline-flex {
  display: -webkit-inline-box;
  display: inline-flex;
}
.ek-u-flex-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
}
.ek-u-flex-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
}
.ek-u-justify-center {
  -webkit-box-pack: center;
          justify-content: center;
}
.ek-u-justify-between {
  -webkit-box-pack: justify;
          justify-content: space-between;
}
.ek-u-justify-around {
  justify-content: space-around;
}
.ek-u-align-center {
  -webkit-box-align: center;
          align-items: center;
}
.ek-u-align-start {
  -webkit-box-align: start;
          align-items: flex-start;
}
.ek-u-align-end {
  -webkit-box-align: end;
          align-items: flex-end;
}
/* Display utilities - Scoped with .ek-u- prefix */
.ek-u-d-block {
  display: block;
}
.ek-u-d-inline {
  display: inline;
}
.ek-u-d-inline-block {
  display: inline-block;
}
.ek-u-sr-only,
.ek-u-d-none {
  display: none !important;
}
/* Position utilities - Scoped with .ek-u- prefix */
.ek-u-position-relative {
  position: relative;
}
.ek-u-position-absolute {
  position: absolute;
}
.ek-u-position-fixed {
  position: fixed;
}
.ek-u-position-sticky {
  position: -webkit-sticky;
  position: sticky;
}
/* Width/Height utilities - Scoped with .ek-u- prefix */
.ek-u-w-100 {
  width: 100%;
}
.ek-u-h-100 {
  height: 100%;
}
/* Text utilities - Scoped with .ek-u- prefix */
.ek-u-text-center {
  text-align: center;
}
.ek-u-text-left {
  text-align: left;
}
.ek-u-text-right {
  text-align: right;
}
.ek-u-text-uppercase {
  text-transform: uppercase;
}
.ek-u-text-lowercase {
  text-transform: lowercase;
}
.ek-u-text-capitalize {
  text-transform: capitalize;
}
.ek-u-font-weight-normal {
  font-weight: 400;
}
.ek-u-font-weight-bold {
  font-weight: 700;
}
/* Color utilities - Scoped with .ek-u- prefix */
.ek-u-text-primary {
  color: var(--color-primary);
}
.ek-u-text-secondary {
  color: var(--color-secondary);
}
.ek-u-text-muted {
  color: var(--color-text-light);
}
.ek-u-bg-primary {
  background-color: var(--color-primary);
}
.ek-u-bg-secondary {
  background-color: var(--color-secondary);
}
.ek-u-bg-light {
  background-color: var(--color-background-alt);
}
/* Border utilities - Scoped with .ek-u- prefix */
.ek-u-border {
  border: 1px solid var(--color-border);
}
.ek-u-border-top {
  border-top: 1px solid var(--color-border);
}
.ek-u-border-bottom {
  border-bottom: 1px solid var(--color-border);
}
.ek-u-border-left {
  border-left: 1px solid var(--color-border);
}
.ek-u-border-right {
  border-right: 1px solid var(--color-border);
}
.ek-u-border-0 {
  border: 0;
}
/* Border radius utilities - Scoped with .ek-u- prefix */
.ek-u-rounded {
  border-radius: var(--border-radius);
}
.ek-u-rounded-lg {
  border-radius: var(--border-radius-lg);
}
.ek-u-rounded-circle {
  border-radius: 50%;
}
/* Shadow utilities - Scoped with .ek-u- prefix */
.ek-u-shadow {
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
}
.ek-u-shadow-lg {
  -webkit-box-shadow: var(--box-shadow-lg);
          box-shadow: var(--box-shadow-lg);
}
/* Overflow utilities - Scoped with .ek-u- prefix */
.ek-u-overflow-hidden {
  overflow: hidden;
}
.ek-u-overflow-auto {
  overflow: auto;
}
.ek-u-overflow-scroll {
  overflow: scroll;
}
/* Z-index utilities - Scoped with .ek-u- prefix */
.ek-u-z-dropdown {
  z-index: var(--z-index-dropdown);
}
.ek-u-z-sticky {
  z-index: var(--z-index-sticky);
}
.ek-u-z-modal {
  z-index: var(--z-index-modal);
}
.ek-u-z-tooltip {
  z-index: var(--z-index-tooltip);
}
/* Responsive display utilities - Scoped with .ek-u- prefix and consolidated */
@media (max-width: 575.98px) {
  .ek-u-d-sm-none {
    display: none !important;
  }
}
@media (min-width: 576px) {
  .ek-u-d-sm-block {
    display: block;
  }
  .ek-u-d-sm-inline {
    display: inline;
  }
  .ek-u-d-sm-inline-block {
    display: inline-block;
  }
  .ek-u-d-sm-flex {
    display: -webkit-box;
    display: flex;
  }
}
@media (min-width: 768px) {
  .ek-u-d-md-block {
    display: block;
  }
  .ek-u-d-md-inline {
    display: inline;
  }
  .ek-u-d-md-inline-block {
    display: inline-block;
  }
  .ek-u-d-md-flex {
    display: -webkit-box;
    display: flex;
  }
}
@media (min-width: 992px) {
  .ek-u-d-lg-block {
    display: block;
  }
  .ek-u-d-lg-inline {
    display: inline;
  }
  .ek-u-d-lg-inline-block {
    display: inline-block;
  }
  .ek-u-d-lg-flex {
    display: -webkit-box;
    display: flex;
  }
}
@media (min-width: 1200px) {
  .ek-u-d-xl-block {
    display: block;
  }
  .ek-u-d-xl-inline {
    display: inline;
  }
  .ek-u-d-xl-inline-block {
    display: inline-block;
  }
  .ek-u-d-xl-flex {
    display: -webkit-box;
    display: flex;
  }
}
/* Focus utilities - Scoped with .ek-u- prefix */
.ek-u-focus-ring:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
/* Animation utilities - Scoped with .ek-u- prefix */
.ek-u-animate-fade-in {
  -webkit-animation: u-fadeIn var(--transition-base) ease-in-out;
          animation: u-fadeIn var(--transition-base) ease-in-out;
}
.ek-u-animate-slide-up {
  -webkit-animation: u-slideUp var(--transition-base) ease-out;
          animation: u-slideUp var(--transition-base) ease-out;
}
@-webkit-keyframes u-fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes u-fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes u-slideUp {
  from {
    -webkit-transform: translateY(var(--spacing-5));
            transform: translateY(var(--spacing-5));
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
@keyframes u-slideUp {
  from {
    -webkit-transform: translateY(var(--spacing-5));
            transform: translateY(var(--spacing-5));
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}
/* Focus and accessibility utilities - Scoped and consolidated */
.ek-button:focus,
button:focus,
input[type=button]:focus,
input[type=reset]:focus,
input[type=submit]:focus, input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  outline: none;
  -webkit-box-shadow: 0 0 0 3px rgba(var(--color-link), var(--opacity-25));
          box-shadow: 0 0 0 3px rgba(var(--color-link), var(--opacity-25));
}
/* Additional utilities - Scoped with .ek-u- prefix */
.ek-u-margin-auto {
  margin-left: auto;
  margin-right: auto;
}
.ek-u-opacity-50 {
  opacity: 0.5;
}
/* Admin utilities - Scoped with .ek-u- prefix */
.ek-u-admin-card {
  background: var(--color-bg-surface);
  border-radius: var(--border-radius-lg);
  border: 1px solid var(--color-border);
  -webkit-box-shadow: var(--box-shadow);
          box-shadow: var(--box-shadow);
  padding: var(--spacing-6);
  margin-bottom: var(--spacing-6);
}
/* Flexbox order utilities - Scoped with .ek-u- prefix and reduced !important usage */
.ek-u-order-0 {
  -webkit-box-ordinal-group: 1;
          order: 0;
}
.ek-u-order-1 {
  -webkit-box-ordinal-group: 2;
          order: 1;
}
.ek-u-order-2 {
  -webkit-box-ordinal-group: 3;
          order: 2;
}
@media (min-width: 768px) {
  .ek-u-sm-order-0 {
    -webkit-box-ordinal-group: 1;
            order: 0;
  }
  .ek-u-sm-order-1 {
    -webkit-box-ordinal-group: 2;
            order: 1;
  }
  .ek-u-sm-order-2 {
    -webkit-box-ordinal-group: 3;
            order: 2;
  }
}
/* Responsive visibility utilities - Scoped with .ek-u- prefix */
@media (min-width: 768px) {
  .ek-u-hide-tablet-down {
    display: none;
  }
}
/* ==========================================================================
   COMPONENT UTILITIES - Scoped and Minimal
   ========================================================================== */
/* Print utilities - Scoped with .ek-u- prefix */
@media print {
  .ek-u-d-print-none {
    display: none !important;
  }
  .ek-u-d-print-block {
    display: block !important;
  }
  .ek-u-d-print-inline {
    display: inline !important;
  }
  .ek-u-d-print-inline-block {
    display: inline-block !important;
  }
}
/* ==========================================================================
   COMPONENT UTILITIES - Scoped Utilities for Specific Components

   These utilities are designed to work within component contexts and
   have lower specificity to avoid conflicts with component styles.
   ========================================================================== */
.ek-c-spacing-tight > * + * {
  margin-top: var(--spacing-2);
}
.ek-c-spacing-normal > * + * {
  margin-top: var(--spacing-4);
}
.ek-c-spacing-loose > * + * {
  margin-top: var(--spacing-6);
}
.ek-c-flex-center {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}
.ek-c-flex-between {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
}
.ek-c-flex-start {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
          justify-content: flex-start;
}
.ek-is-hidden {
  display: none !important;
}
.ek-is-visible {
  display: block !important;
}
.ek-is-loading {
  position: relative;
}
.ek-is-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.25rem; /* 20px */
  height: 1.25rem; /* 20px */
  margin: -0.625rem 0 0 -0.625rem; /* -10px */
  border: 2px solid var(--color-border);
  border-top: 2px solid var(--color-link);
  border-radius: 50%;
  -webkit-animation: c-spin 1s linear infinite;
          animation: c-spin 1s linear infinite;
}
@-webkit-keyframes c-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes c-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.ek-has-focus {
  outline: 2px solid var(--color-link);
  outline-offset: 2px;
}
.ek-has-error {
  border-color: var(--color-error);
  background-color: var(--color-error-light);
}
.ek-has-success {
  border-color: var(--color-success);
  background-color: var(--color-success-light);
}
@media (max-width: 767px) {
  .ek-c-mobile-hidden {
    display: none;
  }
  .ek-c-mobile-full {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .ek-c-tablet-flex {
    display: -webkit-box;
    display: flex;
  }
  .ek-c-tablet-hidden {
    display: none;
  }
}
@media (min-width: 1024px) {
  .ek-c-desktop-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(18.75rem, 1fr)); /* 300px */
    gap: var(--spacing-6);
  }
}
@font-face {
  font-family: "Font Awesome 7 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(webfonts/fa-brands-400.woff2) format("woff2");
}
@font-face {
  font-family: "Font Awesome 7 Free";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(webfonts/fa-regular-400.woff2) format("woff2");
}
@font-face {
  font-family: "Font Awesome 7 Free";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url(webfonts/fa-solid-900.woff2) format("woff2");
}
@font-face {
  font-family: "Font Awesome 5 Brands";
  font-display: block;
  font-weight: 400;
  src: url(webfonts/fa-brands-400.woff2) format("woff2");
}
@font-face {
  font-family: "Font Awesome 5 Free";
  font-display: block;
  font-weight: 400;
  src: url(webfonts/fa-regular-400.woff2) format("woff2");
}
@font-face {
  font-family: "Font Awesome 5 Free";
  font-display: block;
  font-weight: 900;
  src: url(webfonts/fa-solid-900.woff2) format("woff2");
}
@font-face {
  font-family: FontAwesome;
  font-display: block;
  src: url(webfonts/fa-solid-900.woff2) format("woff2");
}
@font-face {
  font-family: FontAwesome;
  font-display: block;
  src: url(webfonts/fa-brands-400.woff2) format("woff2");
}
@font-face {
  font-family: FontAwesome;
  font-display: block;
  src: url(webfonts/fa-regular-400.woff2) format("woff2");
  unicode-range: U+F003, U+F006, U+F014, U+F016-F017, U+F01A-F01B, U+F01D, U+F022, U+F03E, U+F044, U+F046-F047, U+F05C-F05D, U+F06E, U+F070, U+F087-F088, U+F08A, U+F094, U+F096-F097, U+F09D, U+F0A0, U+F0A2, U+F0A4-F0A7, U+F0C5, U+F0C7, U+F0E5-F0E6, U+F0EB, U+F0F6-F0F8, U+F10C, U+F114-F115, U+F118-F11A, U+F11C-F11D, U+F133, U+F147, U+F14E, U+F150-F152, U+F185-F186, U+F18E, U+F190-F192, U+F196, U+F1C1-F1C9, U+F1D9, U+F1DB, U+F1E3, U+F1EA, U+F1F7, U+F1F9, U+F20A, U+F247-F248, U+F24A, U+F24D, U+F255-F25B, U+F25D, U+F271-F274, U+F278, U+F27B, U+F28C, U+F28E, U+F29C, U+F2B5, U+F2B7, U+F2BA, U+F2BC, U+F2BE, U+F2C0-F2C1, U+F2C3, U+F2D0, U+F2D2, U+F2D4, U+F2DC;
}
:root {
  --customizer-primary-color: #6b8e7a;
  --customizer-secondary-color: #7ba3c2;
  --customizer-text-color: #2c3e3f;
  --customizer-bg-color: #fafbfc;
  --customizer-link-color: #6b8e7a;
  --customizer-link-hover-color: #5a7d6a;
  --customizer-accent-color: #b8a082;
  --customizer-container-width: 1200px;
  --customizer-header-bg: var(--color-bg-surface);
  --header-bg-theme: var(--color-bg-surface);
  --customizer-footer-bg: #191e23;
  --customizer-footer-text: #fff;
  --color-primary-red: var(--customizer-primary-color, #6b8e7a);
  --color-primary: var(--color-primary-red);
  --color-deep-forest: var(--customizer-secondary-color, #7ba3c2);
  --color-ocean-blue: var(--customizer-accent-color, #b8a082);
  --color-charcoal: var(--customizer-text-color, #2c3e3f);
  --color-white: #fff;
  --color-black: #000;
  --color-sand: #fff;
  --color-primary-forest: var(--customizer-forest-color, #2e5d38);
  --color-primary-forest-light: var(--customizer-forest-light-color, #4a7c59);
  --color-primary-forest-dark: var(--customizer-forest-dark-color, #1e3d26);
  --color-primary-ocean: var(--customizer-ocean-color, #1e88e5);
  --color-primary-ocean-light: var(--customizer-ocean-light-color, #64b5f6);
  --color-primary-ocean-dark: var(--customizer-ocean-dark-color, #1565c0);
  --color-primary-earth: var(--customizer-earth-color, #8d6e63);
  --color-primary-earth-light: var(--customizer-earth-light-color, #a1887f);
  --color-primary-earth-dark: var(--customizer-earth-dark-color, #5d4037);
  --color-gray-50: #f5f5f5;
  --color-gray-100: #e0e0e0;
  --color-gray-200: #ccc;
  --color-gray-300: #b3b3b3;
  --color-gray-400: #999;
  --color-gray-500: #666;
  --color-gray-600: #4d4d4d;
  --color-gray-700: #333;
  --color-gray-800: #23282d;
  --color-gray-900: #191e23;
  --color-bg-body: var(--customizer-bg-color, #f0f2f5);
  --color-bg-surface: #fff;
  --color-bg-alt: #f0f2f5;
  --color-bg-hover: #f8f9fa;
  --color-bg-overlay: rgba(0, 0, 0, 0.7);
  --color-text-main: var(--color-charcoal);
  --color-text-primary: #191e23;
  --color-text-secondary: #646970;
  --color-text-light: #8c8f94;
  --color-text-muted: #999;
  --color-border: #dcdcde;
  --color-border-light: #f5f5f5;
  --color-link: var(--customizer-link-color, #6b8e7a);
  --color-link-hover: var(--customizer-link-hover-color, #5a7d6a);
  --color-secondary: var(--color-charcoal);
  --color-success: #28a745;
  --color-success-light: #d4edda;
  --color-error: #dc3545;
  --color-error-light: #f8d7da;
  --color-warning: #ffc107;
  --color-warning-light: #fff3cd;
  --color-info: #17a2b8;
  --color-info-light: #d1ecf1;
  --color-focus: var(--color-link);
  --color-focus-ring-light: rgba(193, 25, 36, 0.15);
  --color-focus-ring-dark: rgba(255, 77, 88, 0.25);
  --color-focus-ring: var(--color-focus-ring-light);
  --color-forest-green: var(--color-deep-forest);
  --color-forest-green-dark: #1e4d2b;
  --color-forest-green-darker: #2d5a3d;
  --color-accent: var(--color-ocean-blue);
  --font-heading: "Georgia", "Times New Roman", "Times", serif;
  --font-body: system-ui, -apple-system, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;
  --font-mono: "SF Mono", "Monaco", "Consolas", "Courier New", monospace;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-size-base-multiplier: var(--customizer-base-font-size, 1rem);
  --font-size-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --font-size-sm: clamp(0.875rem, 0.8rem + 0.375vw, 1rem);
  --font-size-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --font-size-lg: clamp(1.125rem, 1rem + 0.625vw, 1.5rem);
  --font-size-xl: clamp(1.5rem, 1.25rem + 1.25vw, 1.75rem);
  --font-size-2xl: clamp(1.5rem, 1.25rem + 1.25vw, 1.8rem);
  --font-size-3xl: clamp(1.5rem, 1.25rem + 1.25vw, 1.8rem);
  --font-size-4xl: clamp(1.5rem, 1.25rem + 1.25vw, 1.8rem);
  --font-size-h1: var(--font-size-3xl);
  --font-size-h2: var(--font-size-2xl);
  --font-size-h3: var(--font-size-xl);
  --font-size-h4: var(--font-size-lg);
  --font-size-h5: var(--font-size-base);
  --font-size-h6: var(--font-size-sm);
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-base: 1.6;
  --line-height-relaxed: 1.6;
  --line-height-heading: 1.3;
  --line-height-loose: 1.8;
  --letter-spacing-tight: -0.02em;
  --letter-spacing-normal: 0;
  --letter-spacing-wide: 0.05em;
  --letter-spacing-wider: 0.05em;
  --letter-spacing-widest: 0.1em;
  --spacing-0: 0;
  --spacing-px: 1px;
  --spacing-0_5: 0.125rem;
  --spacing-1: 0.25rem;
  --spacing-1_5: 0.375rem;
  --spacing-2: 0.5rem;
  --spacing-2_5: 0.625rem;
  --spacing-3: 0.75rem;
  --spacing-4: 1rem;
  --spacing-5: 1.25rem;
  --spacing-6: 1.5rem;
  --spacing-8: 2rem;
  --spacing-10: 2.5rem;
  --spacing-12: 3rem;
  --spacing-14: 3.5rem;
  --spacing-16: 4rem;
  --spacing-18: 4.5rem;
  --spacing-20: 5rem;
  --ek-spacing-xs: var(--spacing-1);
  --ek-spacing-sm: var(--spacing-2);
  --ek-spacing-md: var(--spacing-4);
  --ek-spacing-lg: var(--spacing-6);
  --ek-spacing-xl: var(--spacing-8);
  --ek-spacing-2xl: var(--spacing-12);
  --ek-color-primary: var(--color-link);
  --ek-color-secondary: var(--color-secondary);
  --ek-color-text-primary: var(--color-text-main);
  --ek-color-text-secondary: var(--color-text-light);
  --ek-color-bg-surface: var(--color-bg-surface);
  --ek-color-bg-secondary: var(--color-bg-hover);
  --ek-color-border: var(--color-border);
  --ek-color-border-light: var(--color-border-light);
  --ek-color-error: var(--color-error);
  --ek-color-error-bg: var(--color-error-light);
  --ek-font-family-primary: var(--font-body);
  --ek-font-size-base: var(--font-size-base);
  --ek-font-size-sm: var(--font-size-sm);
  --ek-font-size-lg: var(--font-size-lg);
  --ek-font-size-xl: var(--font-size-xl);
  --container-width: var(--customizer-container-width, 1200px);
  --container-max-width: 1600px;
  --bottom-bar-height: 60px;
  --logo-height-mobile: var(--customizer-logo-height, 48px);
  --logo-height-tablet: var(--customizer-logo-height, 53px);
  --logo-height-desktop: var(--customizer-logo-height, 60px);
  --header-height-mobile: calc(var(--logo-height-mobile) + var(--spacing-3) + var(--spacing-3));
  --header-height-tablet: calc(var(--logo-height-tablet) + var(--spacing-3) + var(--spacing-3));
  --header-height-desktop: calc(var(--logo-height-desktop) + var(--spacing-4) + var(--spacing-4));
  --sidebar-width: 18.75rem;
  /* 300px - Standard sidebar width */
  --footer-logo-width: 9.375rem;
  /* 150px - Footer logo maximum width */
  --border-radius-sm: 0.125rem;
  --border-radius: 0.25rem;
  --border-radius-md: 0.375rem;
  --border-radius-lg: 0.5rem;
  --border-radius-xl: 0.625rem;
  --border-radius-2xl: 0.75rem;
  --border-radius-3xl: 2.5rem;
  --border-radius-full: 9999px;
  --box-shadow-none: none;
  --box-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
  --box-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --box-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --box-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  --box-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  --transition-fast: 150ms ease;
  --transition-base: 300ms ease;
  --transition-slow: 500ms ease;
  --blur-amount: 8px;
  --z-index-dropdown: 50;
  --z-index-sticky: 60;
  --z-index-fixed: 70;
  --z-index-modal-backdrop: 80;
  --z-index-modal: 90;
  --z-index-popover: 100;
  --z-index-tooltip: 110;
  --aspect-ratio-video-reverse: 0.5625;
  --opacity-0: 0;
  --opacity-25: 0.25;
  --opacity-50: 0.5;
  --opacity-75: 0.75;
  --opacity-100: 1;
  --motion-duration-fast: 150ms;
  --motion-duration-base: 300ms;
  --motion-duration-slow: 500ms;
  --motion-easing: cubic-bezier(0.4, 0, 0.2, 1);
  --aspect-ratio-square: 1;
  --aspect-ratio-video: 1.7777777778;
  --aspect-ratio-video-vertical: 0.5625;
  --aspect-ratio-card: 1.25;
  --aspect-ratio-hero: 2.5;
  --color-overlay-light: rgba(255, 255, 255, 0.8);
  --color-overlay-dark: rgba(0, 0, 0, 0.5);
  --color-overlay-darker: rgba(0, 0, 0, 0.7);
  --color-overlay-darkest: rgba(0, 0, 0, 0.9);
  --gallery-margin: var(--spacing-4);
  --nav-button-size: 48px;
  --nav-button-overlay: rgba(0, 0, 0, 0.3);
  --nav-button-overlay-hover: rgba(0, 0, 0, 0.5);
  --dot-size: 12px;
  --dot-overlay: rgba(255, 255, 255, 0.3);
  --dot-active: var(--color-white);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) {
    --color-bg-body: var(--color-gray-900);
    --color-bg-surface: var(--color-gray-800);
    --color-bg-alt: var(--color-gray-800);
    --color-bg-hover: var(--color-gray-700);
    --color-bg-overlay: rgba(0, 0, 0, 0.8);
    --color-text-main: #e0e0e0;
    --color-text-primary: #e0e0e0;
    --color-text-secondary: #a0a0a0;
    --color-text-light: #a0a0a0;
    --color-text-muted: #666;
    --color-border: var(--color-gray-700);
    --color-border-light: var(--color-gray-800);
    --color-link: #ff4d58;
    --color-link-hover: #ff757e;
    --color-focus-ring: var(--color-focus-ring-dark);
    --color-forest-green: #66bb6a;
    --color-accent: #4a90e2;
  }
}
[data-theme=dark] {
  --color-bg-body: var(--color-gray-900);
  --color-bg-surface: var(--color-gray-800);
  --color-bg-alt: var(--color-gray-800);
  --color-bg-hover: var(--color-gray-700);
  --color-bg-overlay: rgba(0, 0, 0, 0.8);
  --color-text-main: #e0e0e0;
  --color-text-primary: #e0e0e0;
  --color-text-secondary: #a0a0a0;
  --color-text-light: #a0a0a0;
  --color-text-muted: #666;
  --color-border: var(--color-gray-700);
  --color-border-light: var(--color-gray-800);
  --color-link: #ff4d58;
  --color-link-hover: #ff757e;
  --color-focus-ring: var(--color-focus-ring-dark);
  --color-secondary: var(--color-charcoal);
  --color-forest-green: #66bb6a;
  --color-accent: #4a90e2;
}
[data-theme=light] {
  --color-bg-body: #f0f2f5;
  --color-bg-surface: #fff;
  --color-bg-alt: #f0f2f5;
  --color-bg-hover: #f8f9fa;
  --color-bg-overlay: rgba(0, 0, 0, 0.7);
  --color-text-main: var(--color-charcoal);
  --color-text-primary: #191e23;
  --color-text-secondary: #646970;
  --color-text-light: #8c8f94;
  --color-text-muted: #999;
  --color-border: #dcdcde;
  --color-border-light: #f5f5f5;
  --color-link: var(--color-primary-red);
  --color-link-hover: #a0151e;
  --color-focus-ring: var(--color-focus-ring-light);
  --color-secondary: var(--color-charcoal);
  --color-forest-green: var(--color-deep-forest);
  --color-accent: var(--color-ocean-blue);
}
.ek-site-header {
  background-color: var(--customizer-header-bg, var(--color-bg-surface));
}
.ek-site-footer {
  background-color: var(--customizer-footer-bg, #191e23);
  color: var(--customizer-footer-text, #fff);
}
.ek-site-footer a {
  color: var(--customizer-footer-text, #fff);
}
.ek-site-footer a:hover, .ek-site-footer a:focus {
  color: var(--customizer-link-hover-color, #a0151e);
}
.ekuatorial-social-icons {
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-4);
  -webkit-box-align: center;
          align-items: center;
}
.ekuatorial-social-icons a {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-transition: var(--transition-base);
  transition: var(--transition-base);
  text-decoration: none;
  border-radius: var(--border-radius);
}
.ekuatorial-social-icons a i {
  font-size: var(--font-size-lg);
}
.ekuatorial-social-icons a:hover, .ekuatorial-social-icons a:focus {
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}
.ekuatorial-social-icons.social-style-minimal a {
  color: var(--customizer-footer-text, var(--color-text-main));
  background: transparent;
  padding: var(--spacing-2);
}
.ekuatorial-social-icons.social-style-colored a {
  padding: var(--spacing-2);
  border-radius: 50%;
}
.ekuatorial-social-icons.social-style-colored a[href*=facebook] {
  background: #1877f2;
  color: #fff;
}
.ekuatorial-social-icons.social-style-colored a[href*=twitter], .ekuatorial-social-icons.social-style-colored a[href*="x.com"] {
  background: #000;
  color: #fff;
}
.ekuatorial-social-icons.social-style-colored a[href*=instagram] {
  background: #e4405f;
  color: #fff;
}
.ekuatorial-social-icons.social-style-colored a[href*=linkedin] {
  background: #0077b5;
  color: #fff;
}
.ekuatorial-social-icons.social-style-colored a[href*=youtube] {
  background: #f00;
  color: #fff;
}
.ekuatorial-social-icons.social-style-colored a[href*=github] {
  background: #333;
  color: #fff;
}
.ekuatorial-social-icons.social-style-colored a[href*=tiktok] {
  background: #000;
  color: #fff;
}
.ekuatorial-social-icons.social-style-rounded a {
  color: var(--customizer-footer-text, var(--color-text-main));
  background: rgba(255, 255, 255, 0.1);
  padding: var(--spacing-3);
  border-radius: 50%;
}
.ekuatorial-social-icons.social-style-square a {
  color: var(--customizer-footer-text, var(--color-text-main));
  background: rgba(255, 255, 255, 0.1);
  padding: var(--spacing-3);
  border-radius: var(--border-radius);
}
@media (prefers-reduced-motion: reduce) {
  :root {
    --motion-duration-fast: 0.01ms;
    --motion-duration-base: 0.01ms;
    --motion-duration-slow: 0.01ms;
    --motion-easing: linear;
  }
  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.ek-reading-progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: var(--color-gray-200);
  z-index: var(--z-index-fixed);
}
.ek-reading-progress-bar .ek-reading-progress-fill {
  height: 100%;
  background-color: var(--customizer-primary-color, var(--color-primary-red));
  width: 0%;
  -webkit-transition: width 0.2s ease;
  transition: width 0.2s ease;
}
.ek-author-box {
  display: -webkit-box;
  display: flex;
  gap: var(--spacing-4);
  padding: var(--spacing-6);
  background-color: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius-lg);
  margin-top: var(--spacing-8);
}
.ek-author-box .ek-author-avatar {
  flex-shrink: 0;
}
.ek-author-box .ek-author-avatar img {
  border-radius: 50%;
  width: 80px;
  height: 80px;
}
.ek-author-box .ek-author-info {
  -webkit-box-flex: 1;
          flex: 1;
}
.ek-author-box .ek-author-info .ek-author-name {
  margin: 0 0 var(--spacing-2) 0;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
}
.ek-author-box .ek-author-info .ek-author-name a {
  color: var(--customizer-text-color, var(--color-text-main));
  text-decoration: none;
}
.ek-author-box .ek-author-info .ek-author-name a:hover, .ek-author-box .ek-author-info .ek-author-name a:focus {
  color: var(--customizer-link-color, var(--color-link));
}
.ek-author-box .ek-author-info .ek-author-bio {
  margin: 0 0 var(--spacing-3) 0;
  color: var(--color-text-light);
  line-height: var(--line-height-base);
}
.ek-author-box .ek-author-info .ek-author-link {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  color: var(--customizer-link-color, var(--color-link));
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
}
.ek-author-box .ek-author-info .ek-author-link:hover, .ek-author-box .ek-author-info .ek-author-link:focus {
  color: var(--customizer-link-hover-color, var(--color-link-hover));
}
/*# sourceMappingURL=style.css.map */