/* ==========================================================================
   Info Plena — folha de estilo do tema
   Identidade canônica: placa azul, PLENA em Anton.
   O verde (#277539) é reservado exclusivamente ao CTA do Canal do WhatsApp.
   ========================================================================== */

:root {
  --ip-azul: var(--wp--preset--color--azul-plena, #0047A2);
  --ip-noite: var(--wp--preset--color--azul-noite, #0C2C5A);
  --ip-verde: var(--wp--preset--color--verde-canal, #277539);
  --ip-placa-claro: var(--wp--preset--color--placa-claro, #BFD9FF);
  --ip-superficie: var(--wp--preset--color--superficie, #FFFFFF);
  --ip-borda: var(--wp--preset--color--borda, #DBDEE3);
  --ip-meta: var(--wp--preset--color--meta, #767B80);
  --ip-tinta: var(--wp--preset--color--tinta, #10161F);
}

/* --------------------------------------------------------------------------
   1. Marca — a placa. Reprodução em CSS do cabeçalho canônico.
   Uso: <a class="ip-marca" href="/"><span>Info</span><strong>PLENA</strong></a>
   -------------------------------------------------------------------------- */

.ip-marca {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  background: var(--ip-azul);
  padding: 0.5rem 1rem 0.4rem 0.85rem;
  text-decoration: none;
  line-height: 1;
}

.ip-marca:hover,
.ip-marca:focus {
  background: var(--ip-noite);
  text-decoration: none;
}

.ip-marca > span {
  font-family: var(--wp--preset--font-family--archivo);
  font-weight: 400;
  font-size: clamp(0.6875rem, 0.6rem + 0.4vw, 0.875rem);
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--ip-placa-claro);
}

.ip-marca > strong {
  font-family: var(--wp--preset--font-family--anton);
  font-weight: 400;
  font-size: clamp(2.25rem, 1.6rem + 3vw, 3.5rem);
  line-height: 0.9;
  letter-spacing: 0;
  color: #FAFCFE;
}

/* Variante para fundo escuro: sem placa */
.ip-marca--sem-placa {
  background: none;
  padding: 0;
}

.ip-marca--sem-placa:hover,
.ip-marca--sem-placa:focus {
  background: none;
}

.ip-marca--sem-placa > strong {
  color: var(--ip-superficie);
}

/* --------------------------------------------------------------------------
   2. Lema e assinatura da regional
   -------------------------------------------------------------------------- */

.ip-lema {
  font-family: var(--wp--preset--font-family--archivo-narrow);
  font-weight: 700;
  font-style: italic;
  font-size: clamp(1rem, 0.9rem + 0.4vw, 1.125rem);
  color: var(--ip-noite);
}

.ip-regional {
  font-family: var(--wp--preset--font-family--archivo-narrow);
  font-weight: 700;
  font-size: 0.75rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--ip-noite);
}

.ip-dado {
  font-family: var(--wp--preset--font-family--mono);
  font-size: 0.625rem;
  color: var(--ip-meta);
}

/* --------------------------------------------------------------------------
   3. CTA do Canal do WhatsApp — o único elemento verde do site.
   Uso: <a class="ip-cta-canal" href="LINK-DO-CANAL">Receber no WhatsApp</a>
   -------------------------------------------------------------------------- */

.ip-cta-canal {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--ip-verde);
  color: #FFFFFF;
  font-family: var(--wp--preset--font-family--archivo);
  font-weight: 700;
  font-size: 0.9375rem;
  letter-spacing: 0.02em;
  text-decoration: none;
  padding: 0.8rem 1.5rem;
  border-radius: 2px;
  transition: background-color 0.15s ease;
}

.ip-cta-canal:hover,
.ip-cta-canal:focus {
  background: #1D5A2B;
  color: #FFFFFF;
  text-decoration: none;
}

.ip-cta-canal::before {
  content: "";
  width: 1.125rem;
  height: 1.125rem;
  flex: none;
  background-color: currentColor;
  -webkit-mask: var(--ip-icone-whatsapp) center / contain no-repeat;
  mask: var(--ip-icone-whatsapp) center / contain no-repeat;
}

:root {
  --ip-icone-whatsapp: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.04 2C6.58 2 2.13 6.45 2.13 11.91c0 1.75.46 3.45 1.32 4.95L2 22l5.25-1.38a9.87 9.87 0 0 0 4.79 1.22h.01c5.46 0 9.91-4.45 9.91-9.91S17.5 2 12.04 2Zm5.8 14.14c-.24.68-1.42 1.31-1.95 1.36-.5.05-.96.24-3.24-.68-2.73-1.08-4.46-3.85-4.6-4.03-.13-.18-1.1-1.46-1.1-2.78s.7-1.98.94-2.25c.25-.27.54-.34.72-.34h.52c.17 0 .39-.6.6.46.24.55.8 1.92.87 2.06.07.14.12.3.02.48-.09.18-.14.29-.28.45-.14.16-.29.35-.41.47-.14.14-.28.28-.12.55.16.27.71 1.17 1.53 1.9 1.05.93 1.93 1.22 2.2 1.36.27.14.43.12.59-.07.16-.18.68-.79.86-1.07.18-.27.36-.22.6-.13.25.09 1.6.75 1.87.89.27.13.45.2.52.31.06.11.06.64-.18 1.32Z'/%3E%3C/svg%3E");
}

/* Barra fixa de conversão no rodapé, apenas no celular */
.ip-barra-canal {
  display: none;
}

@media (max-width: 781px) {
  .ip-barra-canal {
    display: block;
    position: sticky;
    bottom: 0;
    z-index: 30;
    background: var(--ip-verde);
    padding: 0.75rem var(--wp--preset--spacing--30, 1.5rem);
    text-align: center;
  }

  .ip-barra-canal a {
    color: #FFFFFF;
    font-family: var(--wp--preset--font-family--archivo);
    font-weight: 700;
    font-size: 0.9375rem;
    text-decoration: none;
  }
}

/* --------------------------------------------------------------------------
   4. Selo de informe publicitário — regra 6 do Guia de Governança
   Aplicado automaticamente em posts da categoria "Informe Publicitário".
   -------------------------------------------------------------------------- */

.ip-selo-informe {
  display: block;
  border-top: 3px solid var(--ip-azul);
  border-bottom: 1px solid var(--ip-borda);
  background: var(--wp--preset--color--azul-papel, #E0E9F6);
  padding: 0.6rem 1rem;
  margin-bottom: var(--wp--preset--spacing--30, 1.5rem);
  font-family: var(--wp--preset--font-family--mono);
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ip-noite);
}

/* --------------------------------------------------------------------------
   5. Etiqueta de editoria
   -------------------------------------------------------------------------- */

.ip-editoria,
.wp-block-post-terms a {
  font-family: var(--wp--preset--font-family--archivo);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ip-azul);
  text-decoration: none;
}

.wp-block-post-terms a:hover {
  color: var(--ip-noite);
  text-decoration: underline;
}

/* --------------------------------------------------------------------------
   6. Legibilidade do corpo de texto
   -------------------------------------------------------------------------- */

.entry-content p,
.wp-block-post-content p {
  max-width: 40rem;
  text-wrap: pretty;
}

.wp-block-post-content > * + * {
  margin-block-start: 1.35em;
}

.wp-block-post-content h2,
.wp-block-post-content h3 {
  margin-block-start: 2em;
}

/* Primeira linha do lide sem recuo, tipo jornal */
.wp-block-post-content > p:first-of-type {
  font-size: 1.125rem;
  line-height: 1.55;
  color: var(--ip-tinta);
}

/* --------------------------------------------------------------------------
   7. Piso de qualidade — foco visível, movimento reduzido, imagens fluidas
   -------------------------------------------------------------------------- */

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.wp-block-button__link:focus-visible {
  outline: 3px solid var(--ip-azul);
  outline-offset: 2px;
  border-radius: 1px;
}

img,
figure img {
  max-width: 100%;
  height: auto;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Impressão: sem placa colorida, economiza tinta do leitor */
@media print {
  .ip-barra-canal,
  .ip-cta-canal {
    display: none !important;
  }

  .ip-marca {
    background: none;
    padding: 0;
  }

  .ip-marca > span,
  .ip-marca > strong {
    color: #000;
  }
}

/* --------------------------------------------------------------------------
   8. Grade de capa - home. Primeiro post em destaque, os demais em grade.
   Placeholder "Aguardando imagem" via CSS puro para posts sem foto.
   -------------------------------------------------------------------------- */

.ip-grid .wp-block-post-template {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--40, 2.5rem);
  list-style: none;
  margin: 0;
  padding: 0;
}

.ip-grid .wp-block-post-template > li:first-child {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: var(--wp--preset--spacing--40, 2.5rem);
  align-items: center;
  padding-bottom: var(--wp--preset--spacing--40, 2.5rem);
  border-bottom: 1px solid var(--ip-borda);
  margin-bottom: var(--wp--preset--spacing--10, 0.5rem);
}

.ip-grid .wp-block-post-template > li:first-child .ip-card-media {
  order: 2;
}

.ip-grid .wp-block-post-template > li:first-child .ip-card-title a {
  font-family: var(--wp--preset--font-family--anton);
  font-weight: 400;
  font-size: clamp(1.75rem, 1.4rem + 1.6vw, 2.75rem);
  line-height: 1.05;
}

.ip-grid .wp-block-post-template > li:first-child .ip-card-excerpt {
  display: block;
}

@media (max-width: 900px) {
  .ip-grid .wp-block-post-template {
    grid-template-columns: 1fr;
  }
  .ip-grid .wp-block-post-template > li:first-child {
    grid-template-columns: 1fr;
  }
  .ip-grid .wp-block-post-template > li:first-child .ip-card-media {
    order: 0;
  }
}

.ip-card {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.ip-card-media {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: linear-gradient(135deg, var(--ip-azul) 0%, var(--ip-noite) 100%);
}

.ip-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ip-card:not(:has(.ip-card-media)) {
  position: relative;
}

.ip-card:not(:has(.ip-card-media))::before {
  content: "";
  display: block;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, var(--ip-azul) 0%, var(--ip-noite) 100%);
}

.ip-card:not(:has(.ip-card-media))::after {
  content: "Info Plena";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 16 / 9;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--wp--preset--font-family--archivo);
  font-weight: 400;
  font-size: 0.75rem;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--ip-placa-claro);
}

.ip-card-eyebrow {
  font-family: var(--wp--preset--font-family--archivo);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.ip-card-eyebrow a {
  color: var(--ip-azul);
  text-decoration: none;
}

.ip-card-title {
  margin: 0;
}

.ip-card-title a {
  color: var(--ip-tinta);
  text-decoration: none;
  font-family: var(--wp--preset--font-family--archivo);
  font-weight: 800;
  font-size: 1.1875rem;
  line-height: 1.3;
}

.ip-card-title a:hover {
  color: var(--ip-azul);
}

.ip-card-excerpt {
  display: none;
  color: var(--ip-noite);
  font-family: var(--wp--preset--font-family--archivo-narrow);
  font-style: italic;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.4;
}

.ip-card-excerpt p {
  margin: 0;
}

.ip-card-date {
  font-family: var(--wp--preset--font-family--mono);
  font-size: 0.6875rem;
  color: var(--ip-meta);
}

/* ============================================================
   9. Portal — navegacao, rodape e comunidade (producao)
   ============================================================ */
.ip-nav{ gap:clamp(.5rem,1.6vw,1.35rem)!important; align-items:center!important; row-gap:.25rem!important; }
.ip-nav a{ font-weight:600; font-size:.95rem; color:var(--ip-tinta); padding:.3rem 0; border-bottom:2px solid transparent; text-decoration:none; transition:color .15s,border-color .15s; }
.ip-nav a:hover{ color:var(--ip-azul); border-bottom-color:var(--ip-azul); }
@media(min-width:1000px){ .ip-nav{ flex-wrap:nowrap!important; white-space:nowrap; } }

.ip-footer{ background:var(--ip-noite,#0f1b3d); color:#fff; padding:2.5rem 1.25rem; margin-top:3rem; }
.ip-footer a{ color:#fff; text-decoration:none; }
.ip-footer__top{ display:flex; flex-wrap:wrap; gap:1.25rem 2.5rem; align-items:center; justify-content:space-between; max-width:1200px; margin:0 auto; }
.ip-footer__tag{ color:rgba(255,255,255,.7); margin:.4rem 0 0; font-size:.9rem; }
.ip-footer__nav{ display:flex; flex-wrap:wrap; gap:.6rem 1.25rem; }
.ip-footer__nav a{ font-weight:600; font-size:.9rem; opacity:.9; }
.ip-footer__nav a:hover{ opacity:1; text-decoration:underline; }
.ip-footer__bar{ max-width:1200px; margin:1.5rem auto 0; padding-top:1.1rem; border-top:1px solid rgba(255,255,255,.15); display:flex; flex-wrap:wrap; gap:.4rem 1.5rem; justify-content:space-between; color:rgba(255,255,255,.65); font-size:.82rem; }
.ip-footer__bar p{ margin:0; }

.ip-hp{ position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; opacity:0!important; }
.ip-comunidade{ background:var(--ip-verde,#277539); color:#fff; padding:2.75rem 1.25rem; margin:3rem 0 0; }
.ip-comunidade__inner{ max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1.05fr 1fr; gap:2rem 3rem; align-items:center; }
.ip-comunidade__eyebrow{ text-transform:uppercase; letter-spacing:.08em; font-size:.8rem; font-weight:700; opacity:.9; margin:0 0 .4rem; }
.ip-comunidade__title{ color:#fff; font-size:clamp(1.5rem,3vw,2.2rem); line-height:1.08; margin:0 0 .6rem; }
.ip-comunidade__sub{ margin:0; opacity:.92; font-size:1rem; }
.ip-comunidade__form{ display:grid; gap:.6rem; background:rgba(255,255,255,.14); padding:1.25rem; border-radius:14px; }
.ip-comunidade__form input[type=text],.ip-comunidade__form input[type=email],.ip-comunidade__form input[type=tel]{ width:100%; box-sizing:border-box; padding:.7rem .85rem; border:0; border-radius:8px; font-size:1rem; color:#111; }
.ip-comunidade__consent{ display:flex; gap:.5rem; align-items:flex-start; font-size:.85rem; line-height:1.35; }
.ip-comunidade__consent input{ margin-top:.2rem; flex:0 0 auto; }
.ip-comunidade__form button{ background:var(--ip-noite,#0f1b3d); color:#fff; border:0; padding:.8rem 1rem; border-radius:8px; font-weight:700; font-size:1rem; cursor:pointer; }
.ip-comunidade__form button:hover{ filter:brightness(1.12); }
.ip-comunidade__form button:disabled{ opacity:.6; cursor:default; }
.ip-comunidade__msg{ margin:.2rem 0 0; font-size:.9rem; min-height:1.2em; }
.ip-comunidade__msg.is-ok{ color:#eafff0; font-weight:600; }
.ip-comunidade__msg.is-err{ color:#ffe1e1; font-weight:600; }
@media(max-width:781px){ .ip-comunidade__inner{ grid-template-columns:1fr; } }

/* ============================================================
   10. Header (masthead) + Hero de destaque
   ============================================================ */
.ip-header{ max-width:1200px; margin:0 auto; padding:1rem 1.25rem 0; }
.ip-masthead{ display:flex; align-items:center; gap:.6rem 1.5rem; flex-wrap:wrap; }
.ip-masthead .ip-marca{ flex:0 0 auto; }
.ip-masthead__id{ display:flex; flex-direction:column; gap:.08rem; }
.ip-masthead__id > *{ margin:0 !important; }
.ip-anuncie{ margin-left:auto; align-self:center; display:inline-block; background:var(--ip-azul,#1b3a8f); color:#fff !important; text-decoration:none !important; font-weight:700; font-size:.9rem; padding:.6rem 1.15rem; border-radius:999px; white-space:nowrap; transition:filter .15s; }
.ip-anuncie:hover{ filter:brightness(1.15); }
.ip-header .ip-nav{ margin-top:.85rem; padding-top:.55rem; border-top:3px solid var(--ip-azul,#1b3a8f); }
@media(max-width:720px){
  .ip-anuncie{ margin-left:0; order:3; }
  .ip-header .ip-nav{ flex-wrap:nowrap !important; white-space:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; }
}

/* Hero: 1a noticia ocupa a largura toda */
.ip-grid .wp-block-post-template > li:first-child .ip-card{ max-width:none !important; width:100%; }
.ip-grid .wp-block-post-template > li:first-child .ip-card::before,
.ip-grid .wp-block-post-template > li:first-child .ip-card::after{ width:100% !important; height:clamp(320px,40vw,480px) !important; }
.ip-grid .wp-block-post-template > li:first-child .ip-card-title{ font-size:clamp(2rem,4.4vw,3.2rem) !important; line-height:1.03; }
.ip-grid .wp-block-post-template > li:first-child .ip-card-excerpt{ font-size:1.08rem; }

/* 10.1 correcoes: menu flex + hero largura total */
.ip-nav{ display:flex !important; flex-wrap:wrap !important; align-items:center; }
.ip-grid .wp-block-post-template > li:first-child{ display:block !important; }
.ip-grid .wp-block-post-template > li:first-child .ip-card{ width:100% !important; max-width:none !important; }

/* ============================================================
   11. Hero overlay + Menu mobile + Anunciantes
   ============================================================ */
/* Hero: titulo sobreposto na imagem */
.ip-grid .wp-block-post-template > li:first-child .ip-card{ position:relative; min-height:clamp(360px,46vw,560px); display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; border-radius:14px; padding:1.75rem !important; isolation:isolate; }
.ip-grid .wp-block-post-template > li:first-child .ip-card::before{ content:"" !important; position:absolute; inset:0; width:100% !important; height:100% !important; margin:0 !important; z-index:0; }
.ip-grid .wp-block-post-template > li:first-child .ip-card::after{ position:absolute; inset:0; width:100% !important; height:100% !important; margin:0 !important; z-index:1; background:linear-gradient(to top, rgba(8,15,40,.88) 0%, rgba(8,15,40,.4) 45%, rgba(8,15,40,0) 78%) !important; color:transparent !important; font-size:0 !important; }
.ip-grid .wp-block-post-template > li:first-child .ip-card > *{ position:relative; z-index:2; }
.ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-eyebrow, .ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-title, .ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-title a, .ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-excerpt, .ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-date{ color:#fff !important; }
.ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-title{ font-size:clamp(2rem,4.4vw,3.4rem) !important; line-height:1.04; margin:.35rem 0 !important; text-shadow:0 1px 12px rgba(0,0,0,.35); }
.ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-excerpt{ font-size:1.05rem; opacity:.95; max-width:60ch; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-eyebrow{ background:var(--ip-verde,#277539); color:#fff !important; display:inline-block; padding:.2rem .6rem; border-radius:4px; font-weight:700; }

/* Menu mobile full-screen */
.ip-nav-toggle, .ip-nav-close{ display:none; }
@media(max-width:820px){
  .ip-masthead__id{ display:none; }
  .ip-anuncie{ margin-left:auto; font-size:.8rem; padding:.45rem .8rem; }
  .ip-nav-toggle{ display:inline-flex; flex-direction:column; justify-content:center; gap:5px; width:44px; height:44px; margin-left:.5rem; padding:9px; background:transparent; border:0; cursor:pointer; }
  .ip-nav-toggle span{ display:block; height:3px; width:100%; background:var(--ip-azul,#1b3a8f); border-radius:2px; }
  .ip-header .ip-nav{ position:fixed; inset:0; z-index:99999; margin:0; padding:2rem; border-top:0 !important; background:var(--ip-azul,#1b3a8f); flex-direction:column; justify-content:center; align-items:center; gap:1.4rem; transform:translateX(100%); transition:transform .28s ease; overflow-y:auto; }
  .ip-header .ip-nav.is-open{ transform:none; }
  .ip-header .ip-nav a{ color:#fff !important; font-size:1.45rem; font-weight:700; border-bottom:0 !important; }
  .ip-nav-close{ display:block; position:absolute; top:.75rem; right:1.1rem; background:transparent; border:0; color:#fff; font-size:2.6rem; line-height:1; cursor:pointer; }
}

/* Anunciantes */
.ip-ads{ max-width:1200px; margin:3rem auto 0; padding:0 1.25rem; }
.ip-ads__head{ display:flex; align-items:baseline; justify-content:space-between; gap:1rem; margin-bottom:1rem; border-bottom:2px solid var(--ip-borda,#e5e7eb); padding-bottom:.5rem; }
.ip-ads__title{ font-size:1rem; text-transform:uppercase; letter-spacing:.08em; margin:0; color:var(--ip-meta,#6b7280); }
.ip-ads__cta{ font-weight:700; color:var(--ip-azul,#1b3a8f) !important; text-decoration:none !important; font-size:.9rem; white-space:nowrap; }
.ip-ads__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:1rem; }
.ip-ads__slot{ aspect-ratio:3/2; display:flex; align-items:center; justify-content:center; background:var(--ip-superficie,#f3f5f9); border:1px solid var(--ip-borda,#e5e7eb); border-radius:8px; overflow:hidden; text-decoration:none; padding:.5rem; }
.ip-ads__slot img{ width:100%; height:100%; object-fit:contain; }
.ip-ads__slot--empty{ border-style:dashed; }
.ip-ads__ph{ color:var(--ip-meta,#9aa3b0); font-size:.78rem; text-align:center; }
@media(max-width:600px){ .ip-ads__grid{ grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); } }

/* 11.1 eyebrow do hero (respeita verde reservado) */
.ip-grid .wp-block-post-template > li:first-child .ip-card-eyebrow{ background:#fff !important; color:var(--ip-azul,#1b3a8f) !important; }

/* 11.2 alinhamento hero: tudo a esquerda */
.ip-grid .wp-block-post-template > li:first-child .ip-card{ align-items:flex-start !important; text-align:left !important; }
.ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-eyebrow, .ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-title, .ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-excerpt, .ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-date{ text-align:left !important; align-self:flex-start !important; margin-left:0 !important; margin-right:0 !important; }
.ip-grid .wp-block-post-template > li:first-child .ip-card .ip-card-excerpt{ max-width:60ch; }

