/* Codigoro Presse-Archiv – theme-friendly editorial layouts */
.codigoro-presse-archiv {
  --cpa-line: color-mix(in srgb, currentColor 16%, transparent);
  --cpa-soft: color-mix(in srgb, currentColor 4%, transparent);
  --cpa-muted: color-mix(in srgb, currentColor 68%, transparent);
  color: inherit;
  font: inherit;
  width: 100%;
  margin-block: 1.25rem;
}
.codigoro-presse-archiv,
.codigoro-presse-archiv * { box-sizing: border-box; }
.codigoro-presse-archiv .codigoro-presse-years {
  display:flex; flex-wrap:wrap; align-items:center; gap:.55rem;
  margin:0 0 1.6rem; padding:0;
}
.codigoro-presse-archiv .codigoro-presse-years a {
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid #dce5d8; background:#fff; padding:9px 16px;
  border-radius:30px; color:inherit; font:inherit; cursor:pointer;
  line-height:1.2; text-decoration:none;
  transition:background .2s,border-color .2s,color .2s;
}
.codigoro-presse-archiv .codigoro-presse-years a:hover,
.codigoro-presse-archiv .codigoro-presse-years a:focus-visible,
.codigoro-presse-archiv .codigoro-presse-years a.is-active {
  background:#399118; border-color:#399118; color:#fff;
  text-decoration:none;
}
.codigoro-presse-archiv .codigoro-presse-years a:not(.is-active):not(:hover):not(:focus-visible) { color:inherit; }
.codigoro-presse-archiv .codigoro-presse-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.4rem;
}
.codigoro-presse-archiv .codigoro-presse-card {
  display:flex; flex-direction:column; min-width:0; overflow:hidden;
  color:inherit; font:inherit; background:var(--cpa-soft);
  border:1px solid var(--cpa-line); border-radius:12px;
  box-shadow:0 3px 14px rgba(0,0,0,.045);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.codigoro-presse-archiv .codigoro-presse-card:hover {
  transform:translateY(-4px); border-color:color-mix(in srgb,currentColor 30%,transparent);
  box-shadow:0 12px 30px rgba(0,0,0,.10);
}
.codigoro-presse-archiv .codigoro-presse-image {
  display:block; position:relative; width:100%; aspect-ratio:16/9; overflow:hidden;
  background:color-mix(in srgb,currentColor 8%,transparent);
}
.codigoro-presse-archiv .codigoro-presse-image img {
  display:block; width:100%; height:100%; object-fit:cover;
  transition:transform .45s ease;
}
.codigoro-presse-archiv .codigoro-presse-card:hover .codigoro-presse-image img { transform:scale(1.035); }
.codigoro-presse-archiv .codigoro-presse-no-image {
  display:flex; align-items:center; justify-content:center; color:var(--cpa-muted);
  background:linear-gradient(135deg,var(--cpa-soft),color-mix(in srgb,currentColor 10%,transparent));
}
.codigoro-presse-archiv .codigoro-presse-no-image .dashicons { width:48px;height:48px;font-size:48px; }
.codigoro-presse-archiv .codigoro-presse-card-content {
  display:flex; flex:1; flex-direction:column; align-items:flex-start; gap:.85rem;
  min-width:0; padding:1.25rem 1.35rem 1.4rem;
}
.codigoro-presse-archiv .codigoro-presse-title {
  margin:0; padding:0; color:inherit; font:inherit; font-weight:700;
  font-size:1.12em; line-height:1.35; letter-spacing:-.01em;
}
.codigoro-presse-archiv .codigoro-presse-description {
  margin:0; padding:0; color:inherit; font:inherit; line-height:1.58;
  opacity:.82; font-size:.96em;
}
.codigoro-presse-archiv .codigoro-presse-meta {
  display:flex; flex-wrap:wrap; align-items:center; gap:.55rem .9rem;
  width:100%; margin-top:auto; padding-top:.8rem;
  border-top:1px solid var(--cpa-line); color:var(--cpa-muted); font:inherit; font-size:.86em;
}
.codigoro-presse-archiv .codigoro-presse-publisher {
  display:inline-flex; align-items:center; flex-wrap:wrap; gap:.45rem;
  color:inherit; font-weight:600;
}
.codigoro-presse-archiv .codigoro-presse-publisher-logo {
  display:block; width:auto; height:auto; max-width:100px; max-height:28px;
  object-fit:contain; padding:2px 4px; border:1px solid rgba(0,0,0,.10);
  border-radius:4px; background:#fff;
}
.codigoro-presse-archiv .codigoro-presse-published-date {
  display:inline-flex; align-items:center; gap:.4rem; color:inherit;
  font-weight:600; white-space:nowrap;
}
.codigoro-presse-archiv .codigoro-presse-published-date span { font-size:.65em; opacity:.65; }
.codigoro-presse-archiv .codigoro-presse-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.55rem; margin-top:.15rem; }
.codigoro-presse-archiv .codigoro-presse-pdf-link {
  display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box;
  min-height:0; height:auto; width:auto; min-width:0; padding:.68rem 1rem;
  border:1px solid var(--cpa-pdf-border,#c83b35); border-radius:6px;
  color:var(--cpa-pdf-text,#c83b35); background:var(--cpa-pdf-bg,transparent);
  font:inherit; font-size:.91em; font-weight:600; line-height:1.25;
  text-decoration:none; transition:background .2s ease,color .2s ease,transform .2s ease;
}
.codigoro-presse-archiv .codigoro-presse-pdf-link:hover,
.codigoro-presse-archiv .codigoro-presse-pdf-link:focus-visible {
  color:var(--cpa-pdf-hover-text,#fff); background:var(--cpa-pdf-hover-bg,#c83b35); transform:translateY(-1px);
}
.codigoro-presse-archiv .codigoro-presse-pdf-label { font-size:inherit; font-weight:800; letter-spacing:-.03em; line-height:inherit; }
 .codigoro-presse-archiv .codigoro-presse-button {
  display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
  margin-top:.15rem; padding:.68rem 1rem;
  color:var(--cpa-original-text,inherit); background:var(--cpa-original-bg,transparent);
  border:1px solid var(--cpa-original-border,currentColor); border-radius:6px;
  font:inherit; font-size:.91em; font-weight:600; line-height:1.25; text-decoration:none;
  transition:background .2s ease,color .2s ease,transform .2s ease,opacity .2s ease;
}
.codigoro-presse-archiv .codigoro-presse-button:hover,
.codigoro-presse-archiv .codigoro-presse-button:focus-visible {
  color:var(--cpa-original-hover-text,var(--cpa-original-text,inherit)); text-decoration:none; transform:translateY(-1px);
  background:var(--cpa-original-hover-bg,color-mix(in srgb,currentColor 9%,transparent));
}
.codigoro-presse-archiv .codigoro-presse-empty { padding:1rem 1.2rem; border:1px dashed var(--cpa-line); border-radius:8px; }

/* List: editorial row with image, headline, metadata and action */
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-grid { display:flex; flex-direction:column; gap:1.1rem; }
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card {
  display:grid; grid-template-columns:minmax(220px,30%) minmax(0,1fr);
  min-height:205px; border-radius:12px;
}
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-image { height:100%; min-height:205px; aspect-ratio:auto; }
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card-content {
  justify-content:center; gap:.8rem; padding:1.45rem 1.7rem;
}
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-title { font-size:clamp(1.08rem,1.55vw,1.35rem); }
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-meta { margin-top:.15rem; }
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-description-list {
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:5;
  height:7.9em; min-height:7.9em; overflow:hidden; line-height:1.58;
}


/* Magazine: one lead story followed by compact supporting cards */
.codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child .codigoro-presse-image { height:100%; min-height:300px; aspect-ratio:auto; }
.codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child .codigoro-presse-card-content { justify-content:center; padding:clamp(1.4rem,3vw,2.4rem); }
.codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child .codigoro-presse-title { font-size:clamp(1.25rem,2vw,1.8rem); }

@media (max-width: 980px) {
  .codigoro-presse-archiv:not(.codigoro-presse-list) .codigoro-presse-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card { grid-template-columns:minmax(180px,32%) minmax(0,1fr); }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card-content { padding:1.2rem 1.35rem; }
}
@media (max-width: 680px) {
  .codigoro-presse-archiv:not(.codigoro-presse-list) .codigoro-presse-grid,
  .codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-grid { grid-template-columns:1fr; }
  .codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child { display:flex; grid-column:auto; }
  .codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child .codigoro-presse-image { min-height:0; height:auto; aspect-ratio:16/9; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card { grid-template-columns:132px minmax(0,1fr); min-height:0; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-image { min-height:100%; height:100%; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card-content { gap:.6rem; padding:.95rem 1rem; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-title { font-size:1.02em; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-description { font-size:.9em; line-height:1.45; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-meta { gap:.4rem .65rem; padding-top:.55rem; font-size:.78em; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-publisher-logo { max-width:76px; max-height:23px; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-button { padding:.5rem .7rem; font-size:.82em; }
}
@media (max-width: 440px) {
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card { grid-template-columns:1fr; }
  .codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-image { width:100%; height:auto; min-height:0; aspect-ratio:16/8; }
  .codigoro-presse-archiv .codigoro-presse-card-content { padding:1rem 1.05rem 1.15rem; }
}
@media (prefers-reduced-motion: reduce) {
  .codigoro-presse-archiv *, .codigoro-presse-archiv *::before, .codigoro-presse-archiv *::after { transition:none !important; transform:none !important; }
}


/* Defensive visibility rules: themes/builders sometimes apply global article/card
   visibility or display rules that inadvertently hide shortcode output. */
.codigoro-presse-archiv { display:block !important; visibility:visible !important; opacity:1 !important; }
.codigoro-presse-archiv .codigoro-presse-grid { display:grid !important; visibility:visible !important; opacity:1 !important; }
.codigoro-presse-archiv .codigoro-presse-card { display:flex !important; visibility:visible !important; opacity:1 !important; }
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-grid { display:flex !important; flex-direction:column !important; }
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card { display:grid !important; }
.codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-grid { display:grid !important; }
.codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child { display:grid !important; }
.codigoro-presse-archiv .codigoro-presse-card-content { display:flex !important; visibility:visible !important; opacity:1 !important; }


/* Typography: use Elementor Site Settings global typography variables when present.
   Elementor's text font is the site-wide body font; headings use the global primary font.
   Fall back to the surrounding theme/widget typography if those variables are unavailable. */
.codigoro-presse-archiv {
  font-family: var(--e-global-typography-text-font-family, var(--e-global-typography-primary-font-family, inherit)) !important;
}
.codigoro-presse-archiv,
.codigoro-presse-archiv p,
.codigoro-presse-archiv a,
.codigoro-presse-archiv button,
.codigoro-presse-archiv span,
.codigoro-presse-archiv time,
.codigoro-presse-archiv .codigoro-presse-description,
.codigoro-presse-archiv .codigoro-presse-meta {
  font-family: var(--e-global-typography-text-font-family, inherit) !important;
}
.codigoro-presse-archiv h1,
.codigoro-presse-archiv h2,
.codigoro-presse-archiv h3,
.codigoro-presse-archiv h4 {
  font-family: var(--e-global-typography-primary-font-family, var(--e-global-typography-text-font-family, inherit)) !important;
  font-weight: var(--e-global-typography-primary-font-weight, inherit) !important;
  line-height: var(--e-global-typography-primary-line-height, inherit) !important;
}
.codigoro-presse-archiv .codigoro-presse-description,
.codigoro-presse-archiv .codigoro-presse-meta,
.codigoro-presse-archiv .codigoro-presse-button,
.codigoro-presse-archiv .codigoro-presse-years a {
  font-size: var(--e-global-typography-text-font-size, inherit) !important;
  font-weight: var(--e-global-typography-text-font-weight, inherit) !important;
  line-height: var(--e-global-typography-text-line-height, inherit) !important;
}


/* v1.0.24 – Typography is inherited from the actual Elementor/theme widget context.
   Elementor's global variables are used when available; otherwise the theme's
   computed parent typography is retained. Avoid imposing plugin font sizes. */
.codigoro-presse-archiv,
.codigoro-presse-archiv * {
  font-family: var(--e-global-typography-text-font-family, inherit) !important;
}
.codigoro-presse-archiv .codigoro-presse-title {
  font-family: var(--e-global-typography-primary-font-family, var(--e-global-typography-text-font-family, inherit)) !important;
}
.codigoro-presse-archiv .codigoro-presse-description,
.codigoro-presse-archiv .codigoro-presse-meta,
.codigoro-presse-archiv .codigoro-presse-button,
.codigoro-presse-archiv .codigoro-presse-years a {
  font-size: var(--e-global-typography-text-font-size, inherit) !important;
  font-weight: var(--e-global-typography-text-font-weight, inherit) !important;
  line-height: var(--e-global-typography-text-line-height, inherit) !important;
}
.codigoro-presse-archiv .codigoro-presse-description,
.codigoro-presse-archiv .codigoro-presse-meta,
.codigoro-presse-archiv .codigoro-presse-button,
.codigoro-presse-archiv .codigoro-presse-years a {
  font-size: inherit;
  letter-spacing: inherit;
}
/* The list description must use its natural content height. The previous fixed
   five-line reservation created a large blank area for short descriptions. */
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-description-list {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  line-height: 1.5;
  margin-block: 0;
}
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card {
  height: auto;
  min-height: 0;
  align-items: stretch;
}
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-card-content {
  justify-content: flex-start;
  min-height: 0;
}
.codigoro-presse-archiv.codigoro-presse-list .codigoro-presse-meta {
  margin-top: auto;
}


/* v1.0.29 – Enlarge only the headlines inside the archive cards on mobile. */
@media (max-width: 680px) {
  .codigoro-presse-archiv .codigoro-presse-card .codigoro-presse-title {
    font-size: 1.35rem !important;
    line-height: 1.3 !important;
  }
  .codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child .codigoro-presse-title {
    font-size: 1.55rem !important;
  }
}
@media (max-width: 440px) {
  .codigoro-presse-archiv .codigoro-presse-card .codigoro-presse-title {
    font-size: 1.3rem !important;
    line-height: 1.3 !important;
  }
  .codigoro-presse-archiv.codigoro-presse-magazine .codigoro-presse-card:first-child .codigoro-presse-title {
    font-size: 1.45rem !important;
  }
}


/* v1.0.30 – Compact responsive year navigation. Desktop keeps the pill links,
   tablets use tighter wrapping pills, and phones get a native select control. */
.codigoro-presse-archiv .codigoro-presse-year-select-wrap { display:none; }
.codigoro-presse-archiv .codigoro-presse-year-select {
  width:100%; min-height:46px; padding:10px 42px 10px 14px;
  border:1px solid #dce5d8; border-radius:10px; background-color:#fff;
  color:inherit; font:inherit; line-height:1.3; cursor:pointer;
}
.codigoro-presse-archiv .codigoro-presse-year-select:focus {
  outline:2px solid #399118; outline-offset:2px; border-color:#399118;
}
@media (min-width:768px) and (max-width:1024px) {
  .codigoro-presse-archiv .codigoro-presse-years { gap:.4rem; margin-bottom:1.35rem; }
  .codigoro-presse-archiv .codigoro-presse-years a { padding:8px 13px; }
}
@media (max-width:767px) {
  .codigoro-presse-archiv .codigoro-presse-years { display:none !important; }
  .codigoro-presse-archiv .codigoro-presse-year-select-wrap { display:block; margin:0 0 1.25rem; }
}


/* v1.0.43 – Force identical button geometry, independent of theme/Elementor rules. */
.codigoro-presse-archiv .codigoro-presse-actions .codigoro-presse-button,
.codigoro-presse-archiv .codigoro-presse-actions .codigoro-presse-pdf-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 1rem !important;
  margin-top: .15rem !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-radius: 6px !important;
  font-size: .91em !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}
.codigoro-presse-archiv .codigoro-presse-actions .codigoro-presse-button {
  border-color: currentColor !important;
}
.codigoro-presse-archiv .codigoro-presse-actions .codigoro-presse-pdf-link {
  border-color: var(--cpa-pdf-border,#c83b35) !important;
}
.codigoro-presse-archiv .codigoro-presse-actions .codigoro-presse-pdf-label {
  display: inline-block !important; line-height: 1 !important;
}


/* v1.0.46 – Compact PDF icon button; keep it visually subordinate to the original-report action. */
.codigoro-presse-archiv .codigoro-presse-actions .codigoro-presse-pdf-link {
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  padding: 0 !important;
  font-size: .78em !important;
  line-height: 1 !important;
}
.codigoro-presse-archiv .codigoro-presse-actions .codigoro-presse-pdf-label {
  font-size: inherit !important;
  line-height: 1 !important;
}
