/*
 * srv-archive.css — Design das pages de arquivo (categoria/tag)
 *
 * Aplicado em is_category() via functions.php do child theme.
 * Migrado do snippet WPCode 43609 "srv-archive-style v2".
 * Versão: 1.0 (2026-04-26)
 */

/* === RESET DO TEMA E DO MASONRY === */
body.srv-archive-page .site.grid-container,
body.srv-archive-page .site-content,
body.srv-archive-page .content-area,
body.srv-archive-page .site-main,
body.srv-archive-page #main,
body.srv-archive-page .inside-article{padding:0 !important;margin:0 !important;max-width:100% !important;background:transparent !important}
body.srv-archive-page #content.site-content{display:block !important;padding:0 !important;background:#fafaf7 !important}

/* esconde sidebar do tema em archives — deixa full width pro hero + grid */
body.srv-archive-page #right-sidebar,
body.srv-archive-page #left-sidebar{display:none !important}
body.srv-archive-page .content-area{width:100% !important;max-width:100% !important;float:none !important}

/* desabilita o sistema grid-* / masonry do GP */
body.srv-archive-page article.post.grid-50,
body.srv-archive-page article.post.grid-100,
body.srv-archive-page article.post.grid-33,
body.srv-archive-page article.post.tablet-grid-50,
body.srv-archive-page article.post.mobile-grid-100,
body.srv-archive-page article.post.grid-parent,
body.srv-archive-page article.post.featured-column,
body.srv-archive-page article.masonry-post{
  width:auto !important;
  max-width:100% !important;
  float:none !important;
  position:static !important;
  margin:0 !important;
  padding:0 !important;
  top:auto !important;
  left:auto !important;
}

/* === HERO da categoria === */
body.srv-archive-page header.page-header{
  margin:0 !important;
  padding:7rem 2rem 5.5rem !important;
  background:linear-gradient(135deg,rgba(9,49,69,.96) 0%,rgba(13,65,92,.92) 50%,rgba(9,49,69,.96) 100%) !important;
  border:0 !important;
  text-align:left !important;
  width:100% !important;
  max-width:100% !important;
  position:relative;
}
body.srv-archive-page header.page-header > *{max-width:1100px;margin:0 auto !important;color:#fff !important}
body.srv-archive-page header.page-header::before{
  content:"Biblioteca temática";
  display:block;
  color:#c8472a;
  font-size:.78rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  font-weight:700;
  margin:0 auto 1.5rem !important;
  max-width:1100px;
}
body.srv-archive-page header.page-header h1.page-title,
body.srv-archive-page header.page-header h1{
  font-family:'Cormorant Garamond',Georgia,serif !important;
  font-size:3.6rem !important;
  line-height:1.1 !important;
  font-weight:500 !important;
  color:#fff !important;
  margin:0 auto 1.25rem !important;
  letter-spacing:-0.01em;
  text-align:left !important;
  border:0 !important;
  padding:0 !important;
  max-width:1100px;
}
body.srv-archive-page header.page-header .taxonomy-description{
  max-width:1100px;
  margin:0 auto !important;
  padding:0 !important;
  color:rgba(255,255,255,.88) !important;
  font-size:1.1rem !important;
  line-height:1.65 !important;
  font-style:normal !important;
}
body.srv-archive-page header.page-header .taxonomy-description p,
body.srv-archive-page header.page-header .taxonomy-description a{
  color:rgba(255,255,255,.88) !important;
  font-size:1.1rem !important;
  line-height:1.65 !important;
  margin:0 !important;
}
body.srv-archive-page header.page-header .taxonomy-description a{
  color:#c8472a !important;
  text-decoration:underline !important;
}

/* === MAIN: bloco com background bege, full width === */
body.srv-archive-page main#main{
  display:block !important;
  padding:0 !important;
  background:#fafaf7 !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
}

/* === COLUMNS CONTAINER: grid 2 cols centralizado em 1100px === */
body.srv-archive-page main#main .generate-columns-container{
  display:grid !important;
  grid-template-columns:repeat(2,1fr) !important;
  gap:1.5rem !important;
  max-width:1100px !important;
  margin:0 auto !important;
  padding:0 2rem 5rem !important; /* sem padding-top — header colado ao menu */
  width:auto !important;
  flex:none !important;
}

/* Espaço entre hero (page-header) e primeira row de cards */
body.srv-archive-page main#main .generate-columns-container > header.page-header{
  margin-bottom:4rem !important;
}

/* Header e nav ocupam a row inteira do grid */
body.srv-archive-page main#main .generate-columns-container > header.page-header{
  grid-column:1 / -1 !important;
}
body.srv-archive-page main#main .generate-columns-container > nav.paging-navigation,
body.srv-archive-page main#main .generate-columns-container > nav{
  grid-column:1 / -1 !important;
}

/* === ARTICLES (cards) === */
body.srv-archive-page main#main .generate-columns-container > article,
body.srv-archive-page main#main article.post{
  background:#fff !important;
  border:1px solid rgba(9,49,69,.1) !important;
  border-top:3px solid #c8472a !important;
  padding:0 !important;
  margin:0 !important;
  box-shadow:none !important;
  transition:transform .2s,box-shadow .3s,border-color .2s;
  display:flex !important;
  flex-direction:column;
  overflow:hidden;
  width:auto !important;
  max-width:none !important;
}
body.srv-archive-page main#main article.post:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 12px 28px -20px rgba(9,49,69,.25) !important;
}
body.srv-archive-page main#main article.post .inside-article{
  padding:0 !important;
  background:transparent !important;
  display:flex;
  flex-direction:column;
  flex:1;
}

/* === IMAGEM DESTACADA NO CARD === */
body.srv-archive-page article.post .post-image,
body.srv-archive-page article.post .featured-image{
  margin:0 !important;
  padding:0 !important;
  display:block !important;
  overflow:hidden;
  background:#f0f0f0;
}
body.srv-archive-page article.post .post-image a,
body.srv-archive-page article.post .featured-image a{display:block;line-height:0}
body.srv-archive-page article.post .post-image img,
body.srv-archive-page article.post .featured-image img,
body.srv-archive-page article.post .wp-post-image{
  width:100% !important;
  height:auto !important;
  aspect-ratio:16/9;
  object-fit:cover;
  display:block;
  transition:transform .3s;
  margin:0 !important;
  border-radius:0 !important;
}
body.srv-archive-page article.post:hover .wp-post-image{transform:scale(1.04)}

/* === HEADER + TÍTULO + META === */
body.srv-archive-page article.post header.entry-header{
  padding:1.75rem 1.75rem 0 !important;
  margin:0 !important;
  background:transparent !important;
}
body.srv-archive-page article.post h2.entry-title{
  font-family:'Cormorant Garamond',Georgia,serif !important;
  font-size:1.5rem !important;
  line-height:1.25 !important;
  color:#093145 !important;
  font-weight:600 !important;
  margin:0 0 .75rem !important;
  padding:0 !important;
}
body.srv-archive-page article.post h2.entry-title a{
  color:#093145 !important;
  text-decoration:none !important;
  border:0 !important;
}
body.srv-archive-page article.post h2.entry-title a:hover{color:#c8472a !important}

/* entry-meta no topo (autor) — esconde, é redundante (todo post tem o mesmo autor) */
body.srv-archive-page article.post header .entry-meta{display:none !important}

/* === SUMMARY + READ MORE === */
body.srv-archive-page article.post .entry-summary,
body.srv-archive-page article.post .entry-content{
  padding:0 1.75rem !important;
  margin:0 !important;
  font-size:.95rem !important;
  line-height:1.6 !important;
  color:#555 !important;
  flex:1;
}
body.srv-archive-page article.post .entry-summary > p,
body.srv-archive-page article.post .entry-content > p{
  margin:0 0 1rem !important;
  color:#555 !important;
  font-size:.95rem !important;
  line-height:1.6 !important;
}
body.srv-archive-page article.post .read-more-container{margin:0 0 1.5rem !important;padding:0 !important}
body.srv-archive-page article.post a.read-more,
body.srv-archive-page article.post a.read-more.button{
  display:inline-block !important;
  background:transparent !important;
  color:#c8472a !important;
  font-size:.78rem !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  font-weight:700 !important;
  text-decoration:none !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body.srv-archive-page article.post a.read-more::after,
body.srv-archive-page article.post a.read-more.button::after{content:" →"}
body.srv-archive-page article.post a.read-more:hover{color:#093145 !important;background:transparent !important}

/* === FOOTER do card — esconde poluição (cat-links, tags-links, ícones SVG) === */
body.srv-archive-page article.post footer.entry-meta{
  padding:1rem 1.75rem 1.5rem !important;
  margin:0 !important;
  border-top:1px solid rgba(9,49,69,.06) !important;
  background:#fafaf7 !important;
}
body.srv-archive-page article.post footer.entry-meta .gp-icon,
body.srv-archive-page article.post footer.entry-meta .screen-reader-text{display:none !important}
body.srv-archive-page article.post footer.entry-meta .cat-links{
  display:block;
  font-size:.7rem !important;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#777 !important;
  font-weight:600;
  margin:0 0 .35rem !important;
}
body.srv-archive-page article.post footer.entry-meta .tags-links{display:none !important}
body.srv-archive-page article.post footer.entry-meta .cat-links a{
  color:#093145 !important;
  text-decoration:none !important;
  font-weight:700 !important;
  border:0 !important;
}
body.srv-archive-page article.post footer.entry-meta .cat-links a:hover{color:#c8472a !important}

/* === PAGINAÇÃO === */
body.srv-archive-page nav.paging-navigation,
body.srv-archive-page nav.pagination{
  margin:3rem auto 0 !important;
  text-align:center;
}
body.srv-archive-page .nav-links{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}
body.srv-archive-page .nav-links a,
body.srv-archive-page .nav-links .current{
  display:inline-block;
  padding:.65rem 1.1rem;
  border:1px solid rgba(9,49,69,.2);
  background:#fff;
  color:#093145;
  font-size:.85rem;
  font-weight:600;
  text-decoration:none;
  transition:all .2s;
}
body.srv-archive-page .nav-links a:hover{border-color:#c8472a;background:#c8472a;color:#fff}
body.srv-archive-page .nav-links .current{background:#093145;color:#fff;border-color:#093145}

/* === RESPONSIVE === */
@media (max-width:1024px){
  body.srv-archive-page header.page-header{padding:4rem 1.5rem 3.5rem !important}
  body.srv-archive-page header.page-header h1.page-title,
  body.srv-archive-page header.page-header h1{font-size:2.4rem !important}
  body.srv-archive-page header.page-header .taxonomy-description,
  body.srv-archive-page header.page-header .taxonomy-description p{font-size:1rem !important}
  body.srv-archive-page main#main .generate-columns-container{padding:3rem 1.5rem !important;grid-template-columns:1fr !important;gap:1rem !important}
}
@media (max-width:600px){
  body.srv-archive-page header.page-header{padding:3rem 1.25rem !important}
  body.srv-archive-page header.page-header h1.page-title,
  body.srv-archive-page header.page-header h1{font-size:1.9rem !important}
  body.srv-archive-page main#main .generate-columns-container{padding:2.5rem 1rem !important;grid-template-columns:1fr !important}
  body.srv-archive-page article.post header.entry-header{padding:1.25rem 1.25rem 0 !important}
  body.srv-archive-page article.post .entry-summary{padding:0 1.25rem !important}
  body.srv-archive-page article.post footer.entry-meta{padding:1rem 1.25rem 1.25rem !important}
  body.srv-archive-page article.post h2.entry-title{font-size:1.25rem !important}
}

/* ════════════════════════════════════════════════════════════════════════════
   ARCHIVE TERM DESCRIPTION — CONTEÚDO RICO (h2/h3/listas/quickstart)
   Adicionado em 2026-04-29 — estiliza as descriptions ricas das categorias.
   Aparece dentro de header.page-header > .taxonomy-description.
   ══════════════════════════════════════════════════════════════════════════ */

/* Container da description rica */
body.srv-archive-page header.page-header .taxonomy-description{
  max-width:920px;
  margin:1.5rem auto 0;
  text-align:left;
  font-size:1.05rem;
  line-height:1.75;
  color:rgba(255,255,255,.92);
}

/* Lead — primeiro <p> com classe srv-archive-lead OU primeiro <p> da description */
body.srv-archive-page header.page-header .taxonomy-description .srv-archive-lead,
body.srv-archive-page header.page-header .taxonomy-description > p:first-of-type{
  font-size:1.18rem;
  line-height:1.6;
  font-weight:400;
  color:#fff;
  margin:0 0 1.5rem;
  padding-left:1rem;
  border-left:3px solid #c8472a;
  letter-spacing:.005em;
}

/* Headings dentro da description */
body.srv-archive-page header.page-header .taxonomy-description h2{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.85rem;
  color:#fff;
  margin:2.5rem 0 1rem;
  font-weight:700;
  letter-spacing:-.01em;
  border-bottom:2px solid #c8472a;
  padding-bottom:.4rem;
  display:inline-block;
}
body.srv-archive-page header.page-header .taxonomy-description h3{
  font-size:1.25rem;
  color:#fff;
  margin:1.75rem 0 .65rem;
  font-weight:600;
  letter-spacing:.005em;
}
body.srv-archive-page header.page-header .taxonomy-description h4{
  font-size:1.08rem;color:#fff;margin:1.25rem 0 .5rem;font-weight:600;
}

/* Parágrafos */
body.srv-archive-page header.page-header .taxonomy-description p{
  margin:.75rem 0 1rem;
  color:rgba(255,255,255,.86);
}
body.srv-archive-page header.page-header .taxonomy-description strong{color:#fff;font-weight:700}

/* Links contextuais */
body.srv-archive-page header.page-header .taxonomy-description a{
  color:#ffb999;
  text-decoration:underline;
  text-decoration-color:rgba(200,71,42,.55);
  text-underline-offset:2px;
  transition:color .15s ease;
}
body.srv-archive-page header.page-header .taxonomy-description a:hover{
  color:#fff;text-decoration-color:#fff;
}

/* Listas comuns */
body.srv-archive-page header.page-header .taxonomy-description ul,
body.srv-archive-page header.page-header .taxonomy-description ol{
  margin:1rem 0 1.5rem;
  padding-left:1.5rem;
  color:rgba(255,255,255,.86);
}
body.srv-archive-page header.page-header .taxonomy-description ul li,
body.srv-archive-page header.page-header .taxonomy-description ol li{
  margin-bottom:.5rem;line-height:1.65;
}

/* Quickstart — cards "Comece por aqui" com efeito lente branca */
body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-quickstart{
  list-style:none;
  padding:0;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:1rem;
  margin:1.75rem 0 2rem;
}
body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-quickstart li{
  background:rgba(255,255,255,.10);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.18);
  border-top:1px solid rgba(255,255,255,.32);
  padding:1.15rem 1.25rem;
  border-radius:8px;
  font-size:.97rem;
  margin:0;
  color:rgba(255,255,255,.92) !important;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-quickstart li:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.32);
}
body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-quickstart li strong{
  display:block;margin-bottom:.4rem;color:#fff;font-weight:600;
}
/* Links dentro dos cards quickstart — branco em vez de laranja */
body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-quickstart li a{
  color:#fff !important;
  text-decoration:underline !important;
  text-decoration-color:rgba(255,255,255,.45) !important;
  text-underline-offset:3px !important;
  transition:text-decoration-color .15s ease;
}
body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-quickstart li a:hover{
  text-decoration-color:#fff !important;
}

/* Decisões — lista com fundo destacado */
body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-decisions{
  background:rgba(255,255,255,.06);
  border-left:3px solid #fff;
  padding:1rem 1.5rem 1rem 2.4rem;
  list-style:square;
  border-radius:0 6px 6px 0;
}
body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-decisions li strong{color:#ffb999}

/* Wrapper srv-archive-intro (fallback se vier) */
body.srv-archive-page header.page-header .taxonomy-description .srv-archive-intro{
  max-width:none;margin:0;padding:0;
}

/* === RESPONSIVO === */
@media (max-width:1024px){
  body.srv-archive-page header.page-header .taxonomy-description{font-size:1rem;line-height:1.7}
  body.srv-archive-page header.page-header .taxonomy-description h2{font-size:1.55rem;margin:2rem 0 .85rem}
  body.srv-archive-page header.page-header .taxonomy-description h3{font-size:1.15rem;margin:1.4rem 0 .5rem}
  body.srv-archive-page header.page-header .taxonomy-description .srv-archive-lead,
  body.srv-archive-page header.page-header .taxonomy-description > p:first-of-type{font-size:1.05rem}
}
@media (max-width:600px){
  body.srv-archive-page header.page-header .taxonomy-description{font-size:.95rem}
  body.srv-archive-page header.page-header .taxonomy-description h2{font-size:1.4rem}
  body.srv-archive-page header.page-header .taxonomy-description h3{font-size:1.1rem}
  body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-quickstart{grid-template-columns:1fr;gap:.75rem}
  body.srv-archive-page header.page-header .taxonomy-description ul.srv-archive-decisions{padding:1rem 1.25rem 1rem 2rem}
}


/* ════════════════════════════════════════════════════════════════════════════
   FIX MASONRY — header.page-header full width
   (Adicionado em 2026-04-29 — quando o Masonry do GP está parcialmente ativo,
    ele aplica grid-50/grid-33 no header. Estas regras forçam full width.)
   ══════════════════════════════════════════════════════════════════════════ */

body.srv-archive-page .generate-columns-container.masonry-container,
body.srv-archive-page .generate-columns-container{
  display:block !important;
  position:relative !important;
}
body.srv-archive-page .grid-sizer{display:none !important}
body.srv-archive-page header.page-header{
  position:relative !important;
  width:100% !important;
  max-width:100% !important;
  left:0 !important;
  top:0 !important;
  transform:none !important;
  margin:0 0 0 0 !important;
  float:none !important;
  display:block !important;
  box-sizing:border-box !important;
}
/* Inline style do Masonry override */
body.srv-archive-page header.page-header[style*="position"]{
  position:relative !important;
  left:0 !important;
  top:0 !important;
  width:100% !important;
}


/* Hero full-bleed (rompe o container do tema) — ocupa 100vw, conteúdo interno em 1100px */
body.srv-archive-page header.page-header{
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  width:100vw !important;
  max-width:100vw !important;
  padding-top:5rem !important;
  padding-bottom:4rem !important;
  padding-left:max(2rem, calc((100vw - 1200px) / 2 + 2rem)) !important;
  padding-right:max(2rem, calc((100vw - 1200px) / 2 + 2rem)) !important;
  box-sizing:border-box !important;
}
@media (max-width: 1024px){
  body.srv-archive-page header.page-header{
    padding-left:1.5rem !important;
    padding-right:1.5rem !important;
    padding-top:4rem !important;
    padding-bottom:3.5rem !important;
  }
}
@media (max-width: 600px){
  body.srv-archive-page header.page-header{
    padding-left:1.25rem !important;
    padding-right:1.25rem !important;
  }
}
