.elementor-kit-5{--e-global-color-primary:#D9A441;--e-global-color-secondary:#E4677E;--e-global-color-text:#B7BECB;--e-global-color-accent:#F2954B;--e-global-color-rhbg:#0D1117;--e-global-color-rhsurf:#161C26;--e-global-color-rhsurf2:#1E2633;--e-global-color-rhhead:#ECE7DE;--e-global-color-rhmuted:#838D9C;--e-global-color-rhline:#232C39;--e-global-typography-primary-font-family:"Fraunces";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Fraunces";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Plus Jakarta Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Plus Jakarta Sans";--e-global-typography-accent-font-weight:700;color:#B7BECB;font-family:"Plus Jakarta Sans", Sans-serif;font-size:16px;line-height:1.75em;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#D9A441;}.elementor-kit-5 a:hover{color:#F0BE63;}.elementor-kit-5 h1{color:#ECE7DE;font-family:"Fraunces", Sans-serif;font-weight:600;}.elementor-kit-5 h2{color:#ECE7DE;font-family:"Fraunces", Sans-serif;font-weight:600;}.elementor-kit-5 h3{color:#ECE7DE;font-family:"Fraunces", Sans-serif;font-weight:600;}.elementor-kit-5 h4{color:#ECE7DE;font-family:"Fraunces", Sans-serif;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */body, body.elementor-kit-5 { background-color:#0D1117; }

/* ============================================================ post cards
   Elementor's cards skin ships a white card, a fixed 0.66 crop on every
   thumbnail, and an author avatar stamped over the image. Book covers are 2:3
   and need to be seen whole, so all three are undone here.

   This is done in CSS rather than through the widget's own controls because
   the skin namespaces its control ids and the style ones do not respond to
   either naming, while the layout ones (cards_columns) do. CSS reaches every
   card on every template in one place.
   ============================================================ */

/* the card itself */
.elementor-post__card {
  background-color:#161C26 !important;
  border:1px solid #232C39 !important;
  border-radius:16px !important;
  overflow:hidden;
  box-shadow:0 1px 2px rgba(0,0,0,.4), 0 6px 20px rgba(0,0,0,.28);
  transition:border-color .25s ease, transform .25s ease;
}
.elementor-post__card:hover {
  border-color:rgba(217,164,65,.35) !important;
  transform:translateY(-3px);
}

/* full cover, no crop */
.elementor-posts .elementor-post__thumbnail {
  padding-bottom:0 !important;
  height:auto !important;
  overflow:visible !important;
}
.elementor-posts .elementor-post__thumbnail img {
  position:static !important;
  transform:none !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block;
  aspect-ratio:2/3;
  object-position:center;
}
.elementor-posts .elementor-post__thumbnail__link { padding-bottom:0 !important; }

/* avatar and badge off: both sat on top of the cover */
.elementor-post__avatar,
.elementor-post__badge { display:none !important; }

/* text block */
.elementor-post__text { padding:16px 18px 4px !important; }
.elementor-post__card .elementor-post__title,
.elementor-post__card .elementor-post__title a {
  color:#ECE7DE !important;
  font-family:"Fraunces", Georgia, serif !important;
  font-weight:600 !important;
  line-height:1.3 !important;
}
.elementor-post__card .elementor-post__title a:hover { color:#D9A441 !important; }
.elementor-post__card .elementor-post__excerpt,
.elementor-post__card .elementor-post__excerpt p {
  color:#B7BECB !important;
  font-size:14px !important;
  line-height:1.7 !important;
}
.elementor-post__card .elementor-post__meta-data {
  color:#838D9C !important;
  border-top:1px solid #232C39 !important;
  padding:12px 18px !important;
  margin-top:6px;
}
.elementor-post__card .elementor-post__read-more {
  color:#D9A441 !important;
  font-weight:700 !important;
  font-size:13px !important;
  letter-spacing:.02em;
  text-transform:none !important;
  padding:0 18px 16px !important;
  display:inline-block;
}
.elementor-post__card .elementor-post__read-more:hover { color:#F0BE63 !important; }

/* classic skin, used in the sidebar: plain rows, no card chrome */
.elementor-posts--skin-classic .elementor-post {
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid #232C39 !important;
  border-radius:0 !important;
  padding-bottom:14px;
}
.elementor-posts--skin-classic .elementor-post:last-child { border-bottom:0 !important; }
.elementor-posts--skin-classic .elementor-post__title,
.elementor-posts--skin-classic .elementor-post__title a {
  color:#ECE7DE !important;
  font-family:"Fraunces", Georgia, serif !important;
}
.elementor-posts--skin-classic .elementor-post__title a:hover { color:#D9A441 !important; }
.elementor-posts--skin-classic .elementor-post__meta-data { color:#838D9C !important; }

/* pagination */
.elementor-pagination { margin-top:34px; }
.elementor-pagination .page-numbers {
  color:#B7BECB !important;
  border:1px solid #232C39;
  border-radius:8px;
  padding:8px 13px;
  margin:0 3px;
  text-decoration:none;
}
.elementor-pagination .page-numbers.current,
.elementor-pagination .page-numbers:hover {
  color:#14181F !important;
  background:#D9A441;
  border-color:#D9A441;
}

/* Elementor's own grid stays: it already sets the column count per widget and
   handles the responsive steps. Overriding it with CSS columns broke that,
   because the count is not exposed as a class. Every cover is 2:3, so once the
   crop is gone the rows line up on their own and masonry buys nothing.
   The one thing the grid needs is for cards to stretch to equal height. */
.elementor-posts--skin-cards.elementor-grid > .elementor-post { display:flex; }
.elementor-post__card { display:flex; flex-direction:column; width:100%; }
.elementor-post__card .elementor-post__text { flex:1 1 auto; }

/* ==================================================== WP core sidebar widgets */
.elementor-widget-wp-widget-categories h5,
.elementor-widget-wp-widget-tag_cloud h5 { display:none; }

.elementor-widget-wp-widget-categories ul { margin:0; padding:0; list-style:none; }
.elementor-widget-wp-widget-categories li {
  list-style:none; border-bottom:1px solid #232C39; padding:10px 0;
  display:flex; justify-content:space-between; align-items:center; gap:10px;
  font-size:12px; color:#6E7889;
}
.elementor-widget-wp-widget-categories li:last-child { border-bottom:0; padding-bottom:0; }
.elementor-widget-wp-widget-categories a { color:#B7BECB; font-size:14px; font-weight:500; text-decoration:none; }
.elementor-widget-wp-widget-categories a:hover { color:#D9A441; }

.elementor-widget-wp-widget-tag_cloud .tagcloud { display:flex; flex-wrap:wrap; gap:8px; }
.elementor-widget-wp-widget-tag_cloud .tagcloud a {
  font-size:12.5px !important; color:#B7BECB; background:#1E2633;
  border:1px solid #2F3A4A; border-radius:999px; padding:6px 13px;
  line-height:1.4; text-decoration:none; transition:all .2s ease;
}
.elementor-widget-wp-widget-tag_cloud .tagcloud a:hover { color:#14181F; background:#D9A441; border-color:#D9A441; }/* End custom CSS */