/*
 * Componente: iconițe, meniul suplimentar (limbă, căutare live), banda de titlu, breadcrumbs, hero,
 * articole din loop, paginare, butoane, back-to-top, widget-uri, share, rezultatele căutării, 404,
 * animații, stări setate de site.js.
 */

/* ── Iconițe ──────────────────────────────────────────────────
   Glifele de iconuri ca SVG inline, fără fonturi:
   - SVG inline (dragne_icon()): caseta glifului din font — lățimea lui (W/1792 em, din markup) × 1em,
     coborâtă cu descent-ul fontului (256/1792 em), deci pe aceeași linie de bază ca un <span class="fa">;
   - pseudo-elemente: mask-image pe currentColor, cu datele din tools/icon-mask.php.
     Lățimea = avansul glifului (+ padding); +0.015px reproduce rotunjirea în sus a avansului de text. */

:root {
  --dragne-icon-angle-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1152 1792'%3E%3Cpath transform='matrix(1 0 0 -1 0 1536)' d='M1075 800q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23z'/%3E%3C/svg%3E"); /* 1152 / 1792 */
  --dragne-icon-angle-left: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 1792'%3E%3Cpath transform='matrix(1 0 0 -1 0 1536)' d='M627 992q0 -13 -10 -23l-393 -393l393 -393q10 -10 10 -23t-10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23z'/%3E%3C/svg%3E"); /* 640 / 1792 */
  --dragne-icon-angle-up: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1152 1792'%3E%3Cpath transform='matrix(1 0 0 -1 0 1536)' d='M1075 352q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23z'/%3E%3C/svg%3E"); /* 1152 / 1792 */
  --dragne-icon-caret-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1792'%3E%3Cpath transform='matrix(1 0 0 -1 0 1536)' d='M1024 832q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45z'/%3E%3C/svg%3E"); /* 1024 / 1792 */
  --dragne-icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1664 1792'%3E%3Cpath transform='matrix(1 0 0 -1 0 1536)' d='M1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -52 -38 -90t-90 -38q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5 t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z'/%3E%3C/svg%3E"); /* 1664 / 1792 */
  --dragne-icon-clock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath transform='matrix(1 0 0 -1 0 480)' d='M256 480c-141.385 0-256-114.615-256-256s114.615-256 256-256 256 114.615 256 256-114.615 256-256 256zM329.372 105.372l-105.372 105.373v141.255h64v-114.745l86.628-86.627-45.256-45.256z'/%3E%3C/svg%3E"); /* ceas, viewBox 512 / 512 */
}

.dragne-icon {
  height: 1em;
  vertical-align: -0.142857em;
}

/* Butoane 40×40 centrate pe line-height (fost <a class="fa">): glif în mijlocul liniei */
.dragne-search-toggle .dragne-icon,
#mobile-menu-button .dragne-icon {
  vertical-align: top;
  margin-top: calc((1lh - 1em) / 2);
}

/* Barele meniului: fontul le prindea de pixeli (hinting) */
.dragne-icon--bars {
  shape-rendering: crispEdges;
}

/* [download]text[/download] */
.dragne-download .dragne-icon {
  margin-right: 6px;
  color: var(--dragne-navy);
}

#header ul.menu > li.menu-item-has-children > a::after,
.mobile-menu-content ul.menu li.menu-item.menu-item-has-children > a::after,
.mobile-menu-content .back-site-content a::before,
.back-site-top::before,
.widget_search .search-submit::before,
.entry-meta .entry-date::before {
  content: "";
  display: inline-block;
  height: 1em;
  line-height: 1;
  vertical-align: -0.142857em;
  background-color: currentColor;
  -webkit-mask: var(--dragne-mask) center / contain no-repeat content-box;
          mask: var(--dragne-mask) center / contain no-repeat content-box;
}

#header ul.menu > li.menu-item-has-children > a::after {
  --dragne-mask: var(--dragne-icon-caret-down);
  width: calc(1024em / 1792 + 5.015px);
  padding-left: 5px;
}

.mobile-menu-content ul.menu li.menu-item.menu-item-has-children > a::after {
  --dragne-mask: var(--dragne-icon-angle-down);
  width: calc(1152em / 1792 + 0.015px);
}

.mobile-menu-content ul.menu li.menu-item.active-sub-menu > a::after {
  --dragne-mask: var(--dragne-icon-angle-up);
}

.mobile-menu-content .back-site-content a::before {
  --dragne-mask: var(--dragne-icon-angle-left);
  width: calc(640em / 1792 + 5.015px);
}

.back-site-top::before {
  --dragne-mask: var(--dragne-icon-angle-up);
  width: calc(1152em / 1792 + 0.015px);
}

/* Lupa din widget-ul de căutare: caseta veche avea line-height 24px, gliful centrat în ea */
.widget_search .search-submit::before {
  --dragne-mask: var(--dragne-icon-search);
  position: absolute;
  top: 0;
  left: 0;
  width: calc(1664em / 1792 + 0.015px);
  height: 24px;
  font-size: 16px;
  line-height: 24px;
  text-indent: 0;
  color: var(--dragne-grey);
}

/* Ceasul (SVG 512/512) de lângă dată, aliniat la mijloc */
.entry-meta .entry-date::before {
  --dragne-mask: var(--dragne-icon-clock);
  width: calc(1em + 3px);
  padding-right: 3px;
  font-size: 14px;
  color: #cdcdcd;
  vertical-align: middle;
}

/* ── Meniul suplimentar din bara de sus: limbă + căutare ──── */

.menu-additional {
  margin-left: 15px;
}

.menu-additional > ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

.menu-additional > ul > li {
  position: relative;
  float: left;
}

.menu-additional > ul > li > a {
  display: block;
  width: 40px;
  height: 40px;
  border: 0 solid var(--dragne-navy);
  border-left-width: 1px;
  font-size: 16px;
  line-height: 40px;
  text-align: center;
  transition: all 0.3s ease;
}

.menu-additional > ul > li:last-child > a {
  border-right: 1px solid var(--dragne-navy);
}

.menu-additional-btn:hover > a,
.menu-additional-btn.active-menu-content > a {
  border-color: var(--dragne-navy);
  background-color: var(--dragne-navy);
}

.menu-additional > ul > li .wpml-lang {
  font-size: 12px;
  font-weight: normal;
  line-height: 40px;
  text-transform: uppercase;
}

/* Panoul deschis sub buton */
.menu-additional > ul > li .menu-content {
  position: absolute;
  z-index: 13;
  top: 40px;
  display: none;
  border: 4px solid var(--dragne-navy);
  border-width: 4px 0 0;
  border-radius: 0 0 2px 2px;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  animation-name: fadeOutDown;
  animation-duration: 0.2s;
  animation-fill-mode: both;
  transition: all 0.3s ease;
}

.menu-additional > ul > li.active-menu-content .menu-content {
  display: block;
  animation-name: fadeInDown;
}

.menu-additional.pull-right .menu-content {
  right: 0;
}

.sticky-menu-additional .menu-content {
  right: 0;
  left: auto;
}

/* Limbă */
.lang-content {
  min-width: 150px;
  max-width: 300px;
}

.lang-content ul {
  padding-left: 0;
  padding-right: 0;
  list-style: none;
}

.lang-content ul li {
  text-align: left;
}

.lang-content ul li a {
  display: block;
  padding: 10px 15px;
  border-bottom: 1px solid #f6f3f3;
  font-size: 12px;
  line-height: 1.6em;
}

.lang-content ul li a:hover {
  color: #fff;
}

.lang-content > ul > li:hover > a {
  background-color: var(--dragne-navy);
}

.lang-content ul li a img {
  margin-right: 10px;
  vertical-align: middle;
}

.lang-content ul li:last-child a {
  border-bottom-width: 0;
}

/* Ca la căutare: în bara de sus „#top-bar a” e alb; pe panoul alb, limbile primesc culoarea de text a temei. */
#top-bar .lang-content a {
  color: var(--dragne-ink);
}

#top-bar .lang-content > ul > li:hover > a {
  color: #fff;
}

/* Căutare live */
.search-content {
  font-size: 12px;
  line-height: 1.6em;
}

.search-content input[type="search"] {
  width: 300px;
  padding: 15px;
  border: 0;
  -webkit-appearance: none;
}

.search-content button {
  display: none;
}

.search-content .search-results {
  display: none;
  border-top: 1px solid #f6f3f3;
}

.search-content .search-results ul {
  padding-left: 0;
  list-style: none;
}

.search-content .search-results ul li {
  text-align: left;
}

.search-content .search-results ul li a {
  display: block;
  padding: 10px 15px;
  border-bottom: 1px solid #f6f3f3;
  font-size: 12px;
  line-height: 1.6em;
}

.search-content .search-results ul li a:hover {
  color: #fff;
}

.search-results > ul > li:hover > a {
  border-color: var(--dragne-navy);
  background-color: var(--dragne-navy);
}

.search-content .search-results ul li.total-results {
  background-color: #f2f2f2;
}

.search-content .search-results ul li.total-results a {
  border-bottom: 0;
  border-radius: 0 0 2px 2px;
  font-weight: normal;
  color: #adaeb1;
}

.search-content .search-results ul li.total-results a span {
  float: right;
}

.search-content .search-results ul li.total-results a:hover {
  color: #fff;
}

.menu-content .total-results {
  border-radius: 0 0 2px 2px;
}

/* Panoul stă în bara de sus, unde „#top-bar a” e alb (pentru fundalul navy): rezultatele primesc
   culorile de text ale temei, ca să se vadă pe fundalul alb al panoului. */
#top-bar .search-results a {
  color: var(--dragne-ink);
}

#top-bar .search-results li.total-results a {
  color: var(--dragne-muted);
}

#top-bar .search-results > ul > li:hover > a {
  color: #fff;
}

@media (max-width: 991px) {
  .menu-additional.sticky-menu-additional {
    position: relative;
  }
}

@media (max-width: 767px) {
  #top-bar .menu-additional {
    margin-top: 10px;
    margin-bottom: 10px;
  }

  #top-bar .menu-additional > ul > li a {
    border-top-width: 1px;
    border-bottom-width: 1px;
  }
}

@media (max-width: 479px) {
  .menu-additional > ul > li .menu-content,
  .menu-additional.pull-right > ul > li .menu-content {
    position: fixed;
    top: auto;
    right: 15px;
    max-width: 90%;
  }

  .menu-additional .menu-content .lang-content {
    min-width: 320px;
  }
}

/* ── Banda de titlu (#page-header) și breadcrumbs ─────────── */

#page-header {
  position: relative;
  margin-top: 0;
  border-bottom: 1px solid var(--dragne-rule);
  background-color: #fff;
}

#page-header > .container {
  padding-top: 56px;
  padding-bottom: 40px;
}

/* Doar titlul + breadcrumbs, nu harta (container-fluid) */
#page-header > .container > .row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}

#page-header .page-header-title {
  margin: 0;
  font-family: var(--dragne-font);
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 300;
  line-height: 1.15;
  letter-spacing: -0.015em;
  text-transform: none;
  color: var(--dragne-navy);
}

#page-header .page-header-desc {
  padding-top: 0;
  font-family: var(--dragne-font);
  font-size: 13px;
  line-height: 1em;
  letter-spacing: 1px;
  color: var(--dragne-muted);
}

.breadcrumbs .trail-browse,
.breadcrumbs .trail-items,
.breadcrumbs .trail-items li {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  text-indent: 0;
}

.breadcrumbs .trail-browse {
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  color: inherit;
}

.breadcrumbs .trail-items {
  list-style: none;
}

.trail-items li::after {
  content: "\002F";
  padding: 0 0.5em;
}

.trail-items li:last-of-type::after {
  display: none;
}

#page-header .breadcrumbs,
#page-header .breadcrumbs .trail-browse {
  font-family: var(--dragne-font);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  color: var(--dragne-slate);
}

#page-header .breadcrumbs {
  margin: 0 0 6px;
  line-height: 1.6em;
  text-align: right;
}

#page-header .breadcrumbs .trail-browse {
  margin-right: 5px;
}

#page-header .with-desc .breadcrumbs {
  margin-top: 18px;
}

#page-header .breadcrumbs a {
  font-weight: 300;
  color: var(--dragne-slate);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

#page-header .breadcrumbs a:hover {
  color: var(--dragne-navy);
}

@media (max-width: 767px) {
  #page-header > .container {
    padding-top: 40px;
    padding-bottom: 28px;
  }

  #page-header .breadcrumbs {
    margin-top: 12px;
    text-align: left;
  }
}

/* ── Hero navy (homepage + pagini statice + articole) ─────── */

.dh-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 450px; /* ca hero-ul din tema veche (Slider Revolution, 450px) */
  overflow: hidden;
  color: #fff;
  background-color: var(--dragne-navy);
  font-family: var(--dragne-font);
  isolation: isolate;
}

/* Poza (--dh-hero-img, din PHP) la dreapta, topită spre stânga */
.dh-hero::before {
  content: "";
  position: absolute;
  top: -9%;
  bottom: -9%;
  right: 0;
  z-index: -1;
  aspect-ratio: 3 / 2;
  background: var(--dh-hero-img, none) center 30% / cover no-repeat;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.08) 12%, rgba(0, 0, 0, 0.25) 24%, rgba(0, 0, 0, 0.5) 36%, rgba(0, 0, 0, 0.75) 48%, rgba(0, 0, 0, 0.92) 60%, #000 72%);
          mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.08) 12%, rgba(0, 0, 0, 0.25) 24%, rgba(0, 0, 0, 0.5) 36%, rgba(0, 0, 0, 0.75) 48%, rgba(0, 0, 0, 0.92) 60%, #000 72%);
}

.dh-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(14, 25, 47, 0.85) 0%, rgba(14, 25, 47, 0.6) 30%, rgba(14, 25, 47, 0.25) 50%, rgba(14, 25, 47, 0) 65%);
}

.dh-hero .dh-wrap {
  width: min(1170px, 100% - 32px);
  margin-inline: auto;
  padding-block: 64px 80px; /* împreună cu textul de 48px: hero-ul rămâne la 450 și cu 4 rânduri */
}

/* Varianta scundă (paginile legale) */
.dh-hero--compact {
  min-height: 0;
}

.dh-hero--compact::before,
.dh-hero--compact::after {
  display: none;
}

.dh-hero--compact .dh-wrap {
  padding-block: 64px 48px;
}

.dh-hero__quote {
  margin: 0;
  padding: 0;
  border: 0;
  opacity: 1;
}

.dh-hero .dh-hero__text {
  max-width: 15em;
  margin: 0;
  font-family: var(--dragne-font);
  font-size: clamp(34px, 3.75vw, 48px);
  font-style: normal;
  font-weight: 200;
  line-height: 1.08;
  letter-spacing: -0.02em;
  text-transform: none;
  color: #fff;
}

.dh-hero--compact .dh-hero__text {
  font-size: clamp(30px, 3.4vw, 44px);
}

.dh-hero .dh-hero__label {
  margin: 0 0 20px;
  font-family: var(--dragne-font);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.75);
}

.dh-hero__quote cite {
  display: block;
  margin-top: 32px;
  font-size: 16px;
  font-style: normal;
  color: rgba(255, 255, 255, 0.8);
}

.dh-hero .dh-link {
  display: inline-block;
  margin-top: 40px;
  font-family: var(--dragne-font);
  font-size: 15px;
  font-weight: 500;
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-thickness: 1px;
}

.dh-hero .dh-link:hover {
  text-decoration-thickness: 2px;
}

.dh-hero a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}

.dh-hero__crumbs {
  margin-bottom: 28px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
}

.dh-hero__crumbs .breadcrumbs,
.dh-hero__crumbs .trail-items,
.dh-hero__crumbs .trail-items li {
  margin: 0;
  padding: 0;
  font-family: var(--dragne-font);
  font-size: 13px;
  letter-spacing: 0;
  text-align: left;
  text-transform: none;
  color: rgba(255, 255, 255, 0.6);
}

.dh-hero__crumbs .trail-items {
  list-style: none;
}

.dh-hero__crumbs a {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

.dh-hero__crumbs a:hover {
  color: #fff;
}

@media (max-width: 860px) {
  /* Aceeași înălțime minimă pe toate paginile (reper: articolul); doar un text lung o depășește */
  .dh-hero {
    min-height: 260px;
    background:
      linear-gradient(0deg, var(--dragne-navy) 0%, rgba(14, 25, 47, 0.85) 45%, rgba(14, 25, 47, 0.2) 100%),
      var(--dh-hero-img, none) 72% 40% / cover no-repeat,
      var(--dragne-navy);
  }

  .dh-hero::before,
  .dh-hero::after {
    display: none;
  }

  .dh-hero--compact { min-height: 0; }

  .dh-hero .dh-wrap { padding-block: 96px 40px; } /* banda de sus arată poza */
  .dh-hero--compact .dh-wrap { padding-block: 48px 40px; }

  .dh-hero .dh-hero__text { font-size: clamp(28px, 8vw, 34px); }

  .dh-hero__crumbs { display: none; }
}

/* ── Articole în loop (căutare) și conținutul paginilor ── */

.type-post,
.page-search-results article {
  margin-bottom: 30px;
  border-radius: 2px;
}

.single-post .type-post {
  margin-bottom: 15px;
}

.entry-content {
  padding: 20px;
  border: 1px solid var(--dragne-line);
  border-bottom: 0;
  background-color: #fff;
}

.single-post .entry-content {
  border-left-width: 0;
  border-right-width: 0;
}

.entry-content > blockquote {
  margin: 0 0 20px;
  font-family: 'Georgia', sans-serif;
  font-size: 16px;
  font-style: italic;
}

.entry-content p:last-child {
  margin-bottom: 0;
}

.entry-meta {
  padding: 5px 20px;
  border-top: 1px solid var(--dragne-line);
  font-size: 14px;
  line-height: 1.6em;
  color: #afafaf;
}

.entry-meta > span {
  float: left;
}

.highlight-text {
  margin: 0 2px;
  padding: 2px 5px;
  border-radius: 2px;
  color: #fff;
  background-color: var(--dragne-navy);
}

.wp-block-quote {
  margin: 0 0 30px;
  padding: 30px;
  border-width: 0 0 0 4px;
  border-style: solid;
  background-color: #fff;
}

/* ── Paginare (căutare) ───────────────────────────────────── */

.navigation {
  padding-top: 20px;
  margin-bottom: 20px;
}

.navigation.pagenumbers {
  float: right;
}

.navigation.pagenumbers .page-numbers {
  display: block;
  float: left;
  min-width: 32px;
  min-height: 32px;
  border-left: 1px solid var(--dragne-line);
  line-height: 32px;
  text-align: center;
  background-color: #fff;
}

.navigation.pagenumbers .pagination .page-numbers:first-child {
  border-left-width: 0;
  border-radius: 2px 0 0 2px;
}

.navigation.pagenumbers .pagination .page-numbers:last-child {
  border-radius: 0 2px 2px 0;
}

.navigation.pagenumbers .page-numbers.next {
  font-size: 18px;
}

.navigation.pagenumbers a.page-numbers {
  font-weight: normal;
  transition: all 0.3s ease;
}

.navigation.pagenumbers .page-numbers.current,
.navigation.pagenumbers a.page-numbers:hover {
  border-color: var(--dragne-navy);
  color: #fff;
  background-color: var(--dragne-navy);
}

@media (max-width: 767px) {
  .navigation.pagenumbers {
    padding-top: 0;
  }
}

/* ── Butoane ──────────────────────────────────────────────── */

button {
  position: relative;
  display: inline-block;
  padding: 9px 15px;
  border: 0;
  border-radius: 2px;
  font-family: var(--dragne-font-text);
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  color: #fff;
  background-color: var(--dragne-navy);
  cursor: pointer;
  transition: background-color 0.3s ease;
}

button:hover {
  background-color: #0c1528;
}

/* ── Back-to-top (vizibil cu .is-visible, pus de site.js) ──── */

.back-site-top {
  position: fixed;
  z-index: 999;
  right: 10px;
  bottom: 10px;
  display: none;
  width: 32px;
  height: 32px;
  border-radius: 2px;
  font-size: 22px;
  line-height: 28px;
  text-align: center;
  background-color: #fff;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.back-site-top:hover {
  color: #fff;
  background-color: var(--dragne-navy);
}

.back-site-top.is-visible {
  display: block;
}

/* ── Widget-uri (sidebar) ─────────────────────────────────── */

.slupy-widget {
  margin-bottom: 15px;
}

.slupy-widget ul li {
  position: relative;
}

.slupy-widget ul li a {
  transition-property: padding-left, color;
  transition-duration: 0.3s;
}

.slupy-widget .widget-title {
  position: relative;
  margin-bottom: 0;
  padding: 10px 15px;
  border-bottom: 1px solid var(--dragne-line);
  border-radius: 2px 2px 0 0;
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
  background-color: #fff;
}

.widget_nav_menu ul {
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.widget_nav_menu ul li a {
  display: block;
  padding: 10px 35px 10px 15px;
  border-bottom: 1px solid var(--dragne-line);
  font-weight: normal;
  background-color: #fff;
}

.widget_nav_menu ul li a:hover {
  padding-left: 20px;
}

.widget_nav_menu .menu > li:last-child > a {
  border-bottom: 0;
}

.slupy-widget.widget_nav_menu ul li:last-child a,
.slupy-widget > ul > li:last-child a {
  border-radius: 0 0 2px 2px;
}

.widget_recent_entries ul {
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.widget_recent_entries ul li {
  position: relative;
  padding: 5px 15px;
  border-bottom: 1px solid var(--dragne-line);
  background-color: #fff;
}

.widget_recent_entries ul li:last-child {
  border-bottom: 0;
  border-radius: 0 0 2px 2px;
}

.widget_recent_entries ul li a,
.widget_recent_entries ul li a:hover {
  padding: 0;
  border-bottom: 0;
  font-weight: normal;
}

.widget_recent_entries ul li .post-date {
  display: block;
  font-size: 12px;
  color: #bac3c8;
}

.widget_search {
  overflow: hidden;
  border-radius: 2px;
}

.widget_search.page-404 {
  position: relative;
  z-index: 1;
}

.widget_search form {
  position: relative;
  display: block;
  padding: 15px;
  border-radius: 0 0 2px 2px;
  background-color: #fff;
}

.widget_search input[name="s"] {
  width: 100%;
  padding: 10px 5px;
  border: 1px solid #e9eaed;
  border-radius: 2px;
  box-sizing: border-box;
  font-size: 12px;
  line-height: 1em;
  -webkit-appearance: none;
  transition: border-color 0.3s ease;
}

.widget_search input[name="s"]:focus {
  border-color: #c9c9c9;
}

.widget_search input[name="s"]::-webkit-input-placeholder {
  line-height: 1.6em;
}

.widget_search .search-submit {
  position: absolute;
  top: 50%;
  right: 16px;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  border: 0;
  background: #fff;
  text-indent: -1000em;
  cursor: pointer;
}

/* ── 404 ──────────────────────────────────────────────────── */

.page404 {
  width: 100%;
  overflow: clip;
  font-size: clamp(80px, 25vw, 180px);
  line-height: 1em;
  text-align: center;
  color: #ddd;
  opacity: 0.3;
  text-shadow: 0 0 1px rgba(77, 77, 77, 0.4);
  cursor: default;
  -webkit-user-select: none;
          user-select: none;
}

/* ── Share ────────────────────────────────────────────────── */

.dragne-share {
  display: flex;
  align-items: center;
  gap: 0.6em;
  margin-left: auto;
  padding-right: 20px;
}

.dragne-share__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  font-size: 13px;
  color: #b0babe;
  text-decoration: none;
  transition: color 0.2s ease;
}

.dragne-share__btn:hover {
  color: var(--dragne-navy);
}

/* ── Rezultatele căutării (search.php) ────────────────────── */

.search-section {
  margin-bottom: 2.5rem;
}

.search-section__title {
  margin-bottom: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--dragne-line);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--dragne-label);
}

.search-lawyers-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.search-lawyer-card,
.search-post-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.search-lawyer-card__thumb {
  flex-shrink: 0;
  width: 72px;
}

.search-lawyer-card__thumb img {
  display: block;
  width: 72px;
  height: 90px;
  object-fit: cover;
}

.search-lawyer-card__name {
  margin: 0 0 0.2rem;
  font-size: 1rem;
}

.search-lawyer-card__name a,
.search-post-item__title a {
  color: inherit;
  text-decoration: none;
}

.search-lawyer-card__name a:hover,
.search-post-item__title a:hover {
  text-decoration: underline;
}

.search-lawyer-card__position {
  margin: 0 0 0.4rem;
  font-size: 0.8125rem;
  color: #6b7280;
}

.search-lawyer-card__excerpt p {
  margin: 0;
  font-size: 0.875rem;
  color: #4b5563;
}

.search-posts-list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.search-post-item__thumb {
  flex-shrink: 0;
  width: 100px;
}

.search-post-item__thumb img {
  display: block;
  width: 100px;
  height: 68px;
  object-fit: cover;
}

.search-post-item__title {
  margin: 0 0 0.25rem;
  font-size: 1rem;
}

.search-post-item__excerpt p {
  margin: 0.4rem 0 0;
  font-size: 0.875rem;
  color: #4b5563;
}

@media (max-width: 480px) {
  .search-lawyer-card,
  .search-post-item {
    flex-direction: column;
  }

  .search-lawyer-card__thumb,
  .search-post-item__thumb {
    width: 100%;
  }

  .search-lawyer-card__thumb img {
    width: 100%;
    height: auto;
  }

  .search-post-item__thumb img {
    width: 100%;
    height: 160px;
  }
}

/* ── Animații: sub-meniuri și panourile din bara de sus (site.js) ── */

@keyframes fadeInDown {
  from { opacity: 0; transform: translateY(-20px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes fadeOutDown {
  from { opacity: 1; transform: translateY(0); }
  to   { opacity: 0; transform: translateY(20px); }
}

.fadeInDown { animation-name: fadeInDown; }
.fadeOutDown { animation-name: fadeOutDown; }

/* Header-ul sticky intră de sus (fost jQuery animate) */
@keyframes dragne-sticky-in {
  from { transform: translateY(-40px); }
  to   { transform: translateY(0); }
}

#header.sticky-header {
  animation: dragne-sticky-in 0.3s ease-out;
}

@media (prefers-reduced-motion: reduce) {
  #header.sticky-header { animation: none !important; }
}
