/*
  Round 3 — Acessibilidade, estados de interação e UX mobile
  Isaias Churrasco Kosher · M.Hojo Consulting
*/

:root {
  --ik-focus: #E2B23C;
  --ik-focus-soft: rgba(226, 178, 60, .35);
  --ik-navy: #0A1628;
  --ik-blue: #173BA6;
  --ik-gold: #A68C5B;
  --ik-cream: #F5F3EE;
}

/* Skip link */
.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 99999;
  transform: translateY(-180%);
  background: var(--ik-gold);
  color: var(--ik-navy);
  padding: 12px 16px;
  border-radius: 10px;
  font: 700 13px/1.2 "DM Sans", system-ui, sans-serif;
  text-decoration: none;
  box-shadow: 0 18px 40px rgba(0,0,0,.25);
  transition: transform .18s ease;
}

.skip-link:focus,
.skip-link:focus-visible {
  transform: translateY(0);
  outline: 3px solid #fff;
  outline-offset: 3px;
}

/* Focus visível consistente */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible,
.cfg-opt:focus-visible,
.faq-q:focus-visible {
  outline: 3px solid var(--ik-focus);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px var(--ik-focus-soft);
}

.nav a:focus-visible,
.nav button:focus-visible,
.mobile-menu:focus-visible,
.drawer-close:focus-visible {
  outline-color: #fff;
  box-shadow: 0 0 0 4px rgba(166,140,91,.55);
}

/* Alvos de toque mínimos */
button,
.btn,
.nav-cta,
.btn-submit,
.btn-nxt,
.btn-back,
.mobile-nav-quote,
.drawer-close,
.faq-q,
.whatsapp-float,
.footer-social a {
  min-height: 44px;
  min-width: 44px;
}

/* Inputs e campos */
input,
textarea,
select {
  font-size: 16px; /* evita zoom agressivo no iOS */
}

.f-field input:focus,
.f-field textarea:focus,
.date-mock input:focus {
  border-color: var(--ik-gold) !important;
  box-shadow: 0 0 0 4px rgba(166,140,91,.16) !important;
}

.f-field label {
  cursor: pointer;
}

/* Cards: hover/focus mais premium sem exagero */
.service-card,
.guide-card,
.cred-box,
.pillar,
.process-card,
.faq-item,
.contact-card,
.portrait-card,
.ac-card,
.partner-card,
.event-card,
.anchor-card,
.exp-card {
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}

@media (hover: hover) {
  .service-card:hover,
  .guide-card:hover,
  .cred-box:hover,
  .pillar:hover,
  .process-card:hover,
  .faq-item:hover,
  .contact-card:hover,
  .portrait-card:hover,
  .ac-card:hover,
  .partner-card:hover,
  .event-card:hover,
  .anchor-card:hover,
  .exp-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 24px 60px rgba(10,22,40,.12);
    border-color: rgba(166,140,91,.42);
  }
}

.service-card:focus-within,
.guide-card:focus-within,
.cred-box:focus-within,
.pillar:focus-within,
.process-card:focus-within,
.faq-item:focus-within,
.contact-card:focus-within,
.portrait-card:focus-within,
.ac-card:focus-within,
.partner-card:focus-within,
.event-card:focus-within,
.anchor-card:focus-within,
.exp-card:focus-within {
  border-color: rgba(166,140,91,.56);
  box-shadow: 0 0 0 4px rgba(166,140,91,.14);
}

/* Opções do configurador: deixam claro que são clicáveis também por teclado */
.cfg-opt {
  cursor: pointer;
}

.cfg-opt[role="button"] {
  user-select: none;
}

.cfg-opt:focus-visible {
  border-color: var(--ik-gold) !important;
}

/* Drawer: melhora leitura e uso em mobile */
.overlay-bd {
  overscroll-behavior: contain;
}

.drawer {
  max-height: 100dvh;
}

.drawer-body {
  scroll-behavior: smooth;
}

.drawer-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.privacy-note {
  font-size: 12px;
  line-height: 1.55;
}

.submit-status {
  min-height: 1.2em;
}

/* Feedback B2B */
.b2b-success-note {
  border-left: 3px solid #2D6A11;
  padding-left: 12px;
}

/* WhatsApp flutuante: evita colisão visual e preserva foco */
.whatsapp-float {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Mobile refinado */
@media (max-width: 768px) {
  .nav-cta {
    display: none;
  }

  .mobile-nav-panel.active {
    max-height: calc(100dvh - 72px);
    overflow-y: auto;
  }

  .drawer {
    width: 100vw;
    max-width: 100vw;
    border-radius: 0;
  }

  .drawer-hdr {
    position: sticky;
    top: 0;
    z-index: 3;
  }

  .val-bar {
    position: sticky;
    bottom: 0;
    z-index: 3;
    gap: 14px;
  }

  .drw-nav {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }

  .btn-back,
  .btn-nxt {
    flex: 1 1 130px;
  }

  .cfg-opt {
    padding: 16px;
  }

  .cfg-q {
    line-height: 1.16;
  }
}

/* Menos movimento para usuários que preferem redução */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
  }

  .float-leaf,
  .rosemary-flying,
  .accent-leaf {
    animation: none !important;
    transform: none !important;
  }
}

/* Impressão / leitura limpa */
@media print {
  .nav,
  .topbar,
  .mobile-nav-panel,
  .whatsapp-float,
  .overlay-bd,
  .skip-link {
    display: none !important;
  }
}


/* Round 3.1 — Refinamento visual do FAQ
   Mais respiro, melhor hierarquia e contraste mais premium.
*/

.faq-list,
.faqs-list,
.faq-wrap,
.faq-container {
  gap: 14px;
}

.faq-item {
  background: rgba(255,255,255,.62);
  border: 1px solid rgba(166,140,91,.18);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 12px 36px rgba(10,22,40,.045);
}

.faq-item.open {
  background: rgba(255,255,255,.86);
  border-color: rgba(166,140,91,.34);
  box-shadow: 0 22px 58px rgba(10,22,40,.08);
}

.faq-q {
  width: 100%;
  padding: 24px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  color: #0D1F52;
  text-align: left;
  line-height: 1.35;
}

.faq-item.open .faq-q {
  padding-bottom: 16px;
  color: #BA8400;
}

.faq-a {
  padding: 0 32px 30px;
  max-width: 900px;
  color: #33425F;
  line-height: 1.78;
  font-size: 1.02rem;
}

.faq-a p,
.faq-a li {
  color: #33425F;
  line-height: 1.78;
}

.faq-q .faq-icon,
.faq-q span:last-child,
.faq-toggle {
  flex: 0 0 auto;
}

@media (max-width: 768px) {
  .faq-q {
    padding: 20px 22px;
    gap: 16px;
  }

  .faq-item.open .faq-q {
    padding-bottom: 12px;
  }

  .faq-a {
    padding: 0 22px 24px;
    font-size: .98rem;
    line-height: 1.72;
  }

  .faq-item {
    border-radius: 15px;
  }
}


/* Round 3.2 — FAQ premium + CTA mobile + menu com fechamento
   Patch mais específico para vencer estilos anteriores do site.
*/

/* FAQ: transforma o item aberto em box premium com borda dourada e respiro real */
.faq-section .faq-inner {
  scroll-margin-top: 120px;
}

.faq-section .faq-item {
  border: 1px solid transparent !important;
  border-bottom: 1px solid rgba(13,31,82,.10) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  margin: 0 !important;
}

.faq-section .faq-item.open {
  margin: 16px 0 18px !important;
  padding: 0 !important;
  border: 1px solid rgba(166,140,91,.58) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: 0 22px 60px rgba(10,22,40,.09) !important;
  overflow: hidden !important;
}

.faq-section .faq-q {
  min-height: 72px !important;
  width: 100% !important;
  padding: 24px 34px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  text-align: left !important;
  color: #0D1F52 !important;
  line-height: 1.35 !important;
}

.faq-section .faq-item.open .faq-q {
  padding: 26px 34px 18px !important;
  color: #BA8400 !important;
}

.faq-section .faq-q span:first-child {
  display: block !important;
  padding-right: 12px !important;
}

.faq-section .faq-icon {
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
}

.faq-section .faq-a {
  display: block !important;
  padding: 0 34px 32px !important;
  margin: 0 !important;
  color: #4B5870 !important;
  line-height: 1.78 !important;
  font-size: 1.02rem !important;
  max-width: none !important;
}

.faq-section .faq-item.open .faq-a {
  border-top: 1px solid rgba(166,140,91,.18) !important;
  padding-top: 20px !important;
}

.faq-section .faq-a p,
.faq-section .faq-a li {
  color: #4B5870 !important;
  line-height: 1.78 !important;
}

/* Foco do FAQ sem “moldura grossa” grudada no texto */
.faq-section .faq-q:focus-visible {
  outline: 2px solid #E2B23C !important;
  outline-offset: -6px !important;
  box-shadow: inset 0 0 0 1px rgba(226,178,60,.45) !important;
  border-radius: 16px !important;
}

/* CTA mobile/header: centraliza texto e remove sobra inferior */
.nav .nav-cta,
.nav-cta,
.mobile-nav-quote,
.contact-card .btn,
.btn.primary,
.btn-nxt,
.btn-back {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.1 !important;
}

@media (max-width: 768px) {
  .nav .nav-cta,
  .nav-cta {
    min-height: 58px !important;
    height: auto !important;
    padding: 0 22px !important;
    line-height: 1.05 !important;
    white-space: normal !important;
  }

  .mobile-nav-quote {
    min-height: 58px !important;
    padding: 0 22px !important;
    line-height: 1.05 !important;
  }

  .faq-section .faq-item.open {
    border-radius: 16px !important;
    margin: 14px 0 16px !important;
  }

  .faq-section .faq-q {
    min-height: 66px !important;
    padding: 20px 22px !important;
    gap: 16px !important;
  }

  .faq-section .faq-item.open .faq-q {
    padding: 22px 22px 14px !important;
  }

  .faq-section .faq-a {
    padding: 0 22px 24px !important;
    font-size: .98rem !important;
    line-height: 1.72 !important;
  }

  .faq-section .faq-item.open .faq-a {
    padding-top: 16px !important;
  }
}

/* Menu mobile: botão de fechar dentro do painel */
.mobile-nav-panel {
  position: relative !important;
}

.mobile-nav-close {
  position: absolute;
  top: 22px;
  right: 24px;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.28);
  background: rgba(255,255,255,.08);
  color: #fff;
  display: none;
  align-items: center;
  justify-content: center;
  font: 400 28px/1 "DM Sans", system-ui, sans-serif;
  cursor: pointer;
}

.mobile-nav-panel.active .mobile-nav-close {
  display: inline-flex;
}

.mobile-nav-close:focus-visible {
  outline: 3px solid #E2B23C;
  outline-offset: 3px;
}

@media (max-width: 768px) {
  .mobile-nav-panel.active {
    padding-top: 92px !important;
  }
}

/* Evita que o WhatsApp cubra muito conteúdo em telas estreitas */
@media (max-width: 480px) {
  .whatsapp-float {
    width: 66px !important;
    height: 66px !important;
    left: 20px !important;
    bottom: 22px !important;
  }
}


/* Round 3.3 HOTFIX — Mobile nav não deve entrar no fluxo do desktop
   Corrige painel azul aparecendo aberto e empurrando o layout em desktop.
*/

/* Desktop/tablet: painel mobile sempre fora do fluxo e invisível */
@media (min-width: 769px) {
  .mobile-nav-panel,
  .mobile-nav-panel.active {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    position: fixed !important;
    inset: auto !important;
    width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transform: none !important;
  }

  .mobile-nav-close {
    display: none !important;
  }
}

/* Mobile: painel vira drawer fixo, sem ocupar espaço no documento */
@media (max-width: 768px) {
  .mobile-nav-panel {
    display: flex !important;
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: min(84vw, 360px) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    z-index: 9998 !important;
    transform: translateX(110%) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    overflow-y: auto !important;
    padding: 92px 26px 32px !important;
    background: #162D73 !important;
    box-shadow: -22px 0 60px rgba(10,22,40,.36) !important;
    transition: transform .26s ease, opacity .2s ease, visibility .2s ease !important;
  }

  .mobile-nav-panel.active {
    transform: translateX(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  .mobile-nav-close {
    display: inline-flex !important;
  }

  body.mobile-nav-open {
    overflow: hidden !important;
  }
}


/* Editorial guides — Design System refinement */
.guides-hub,
.article-page {
  background: #F5F3EE;
}

.guides-hero,
.article-hero {
  padding: clamp(96px, 13vw, 150px) 24px clamp(56px, 8vw, 92px);
  background:
    linear-gradient(180deg, rgba(10,22,40,.92), rgba(10,22,40,.82)),
    url("../hero.jpg") center/cover no-repeat;
  color: #fff;
  text-align: center;
}

.guides-hero .kicker,
.article-hero .kicker {
  color: #C7A24D;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-size: .75rem;
  font-weight: 700;
  margin-bottom: 18px;
}

.guides-hero h1,
.article-hero h1 {
  max-width: 860px;
  margin: 0 auto 18px;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.4rem, 5vw, 4.8rem);
  line-height: .98;
  font-weight: 500;
}

.guides-hero p,
.article-hero p {
  max-width: 760px;
  margin: 0 auto;
  color: rgba(255,255,255,.86);
  font-size: clamp(1rem, 1.8vw, 1.22rem);
  line-height: 1.65;
}

.guides-grid-section {
  padding: clamp(56px, 8vw, 96px) 24px;
}

.guides-grid {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.guide-article-card {
  display: flex;
  flex-direction: column;
  min-height: 320px;
  padding: 30px;
  border: 1px solid rgba(166,140,91,.28);
  border-radius: 22px;
  background: rgba(255,255,255,.76);
  color: #0D1F52;
  text-decoration: none;
  box-shadow: 0 20px 54px rgba(10,22,40,.07);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.guide-article-card:hover,
.guide-article-card:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(166,140,91,.62);
  box-shadow: 0 28px 70px rgba(10,22,40,.11);
}

.guide-article-card small {
  color: #BA8400;
  font: 700 .72rem/1.2 "DM Sans", system-ui, sans-serif;
  letter-spacing: .15em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.guide-article-card h2,
.guide-article-card h3 {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.55rem, 2.4vw, 2.15rem);
  line-height: 1.08;
  font-weight: 500;
  margin: 0 0 16px;
}

.guide-article-card p {
  color: #536078;
  line-height: 1.7;
  margin: 0 0 24px;
}

.guide-article-card span {
  margin-top: auto;
  color: #0D1F52;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .78rem;
}

.article-shell {
  max-width: 980px;
  margin: 0 auto;
  padding: clamp(48px, 7vw, 84px) 24px;
}

.article-meta {
  max-width: 760px;
  margin: 0 auto 28px;
  color: #7A8192;
  font-size: .9rem;
  line-height: 1.6;
  text-align: center;
}

.article-content {
  max-width: 760px;
  margin: 0 auto;
  padding: clamp(30px, 5vw, 54px);
  border: 1px solid rgba(166,140,91,.24);
  border-radius: 24px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 64px rgba(10,22,40,.07);
}

.article-content h2 {
  font-family: "Playfair Display", Georgia, serif;
  color: #0D1F52;
  font-size: clamp(1.7rem, 3vw, 2.35rem);
  line-height: 1.12;
  font-weight: 500;
  margin: 36px 0 14px;
}

.article-content h2:first-child {
  margin-top: 0;
}

.article-content p,
.article-content li {
  color: #4B5870;
  line-height: 1.82;
  font-size: 1.03rem;
}

.article-content ul {
  padding-left: 1.2rem;
  margin: 16px 0 26px;
}

.article-content strong {
  color: #0D1F52;
}

.article-note {
  margin: 32px 0;
  padding: 22px 24px;
  border-left: 3px solid #A68C5B;
  background: rgba(166,140,91,.10);
  color: #0D1F52;
  line-height: 1.7;
}

.article-cta {
  margin-top: 42px;
  padding: 30px;
  border-radius: 22px;
  background: #0D1F52;
  color: #fff;
  text-align: center;
}

.article-cta h2 {
  color: #fff;
  margin-top: 0;
}

.article-cta p {
  color: rgba(255,255,255,.80);
}

.article-cta .btn {
  margin-top: 14px;
}

.editorial-guides {
  padding: clamp(56px, 8vw, 92px) 24px;
  background: #F5F3EE;
}

.editorial-guides .section-head {
  max-width: 860px;
  margin: 0 auto 34px;
  text-align: center;
}

.editorial-guides .section-head h2 {
  color: #0D1F52;
}

@media (max-width: 960px) {
  .guides-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 680px) {
  .guides-grid {
    grid-template-columns: 1fr;
  }

  .guide-article-card {
    min-height: auto;
    padding: 26px;
  }

  .article-content {
    padding: 26px 22px;
    border-radius: 18px;
  }
}


/* Final refinements — guide images, mobile CTA size, card CTA containment */

/* Guide cards with image thumbnail */
.guide-article-card {
  overflow: hidden;
  padding: 0 !important;
}

.guide-card-media {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #0D1F52;
}

.guide-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}

@media (hover: hover) {
  .guide-article-card:hover .guide-card-media img {
    transform: scale(1.035);
  }
}

.guide-card-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 26px 28px 28px;
  min-height: 250px;
}

.guide-card-body .guide-card-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  max-width: 100%;
  min-height: 42px;
  padding: 0 18px;
  margin-top: auto;
  border: 1px solid rgba(166,140,91,.48);
  border-radius: 999px;
  color: #0D1F52;
  background: rgba(166,140,91,.08);
  font-size: .74rem;
  line-height: 1.1;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: normal;
}

/* Remove overly tall mobile CTA introduced during a11y patch */
@media (max-width: 768px) {
  .nav .nav-cta,
  .nav-cta {
    min-height: 46px !important;
    height: 46px !important;
    padding: 0 18px !important;
    line-height: 1 !important;
    border-radius: 10px !important;
    font-size: .78rem !important;
    letter-spacing: .08em !important;
  }

  .mobile-nav-quote {
    min-height: 48px !important;
    height: 48px !important;
    padding: 0 18px !important;
    line-height: 1 !important;
    border-radius: 10px !important;
  }

  .guide-card-body {
    min-height: auto;
    padding: 24px;
  }
}

/* Mobile menu professional microanimation without external Lottie dependency */
.mobile-menu-anim {
  position: absolute;
  top: 24px;
  left: 26px;
  width: 34px;
  height: 34px;
  pointer-events: none;
}

.mobile-menu-anim::before,
.mobile-menu-anim::after {
  content: "";
  position: absolute;
  inset: 7px;
  border: 1px solid rgba(166,140,91,.55);
  border-radius: 50%;
  opacity: 0;
  transform: scale(.62);
}

.mobile-nav-panel.active .mobile-menu-anim::before {
  animation: ik-menu-ring .72s ease-out both;
}

.mobile-nav-panel.active .mobile-menu-anim::after {
  animation: ik-menu-ring .72s .12s ease-out both;
}

@keyframes ik-menu-ring {
  0% { opacity: .9; transform: scale(.62); }
  100% { opacity: 0; transform: scale(1.55); }
}


.article-featured-image {
  max-width: 980px;
  margin: 0 auto 34px;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(166,140,91,.28);
  box-shadow: 0 22px 64px rgba(10,22,40,.12);
}

.article-featured-image img {
  display: block;
  width: 100%;
  height: auto;
}

.article-content a {
  color: #0D1F52;
  font-weight: 700;
  text-decoration-color: rgba(166,140,91,.65);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}


/* ============================================================
   ROUND 4 — Fechamento Guias + Serviços no Design System
   M.Hojo Consulting · Isaias Churrasco Kosher
   Objetivo: guias editoriais com fotografia real, hierarquia DS,
   card CTA contido, nota de kashrut como componente e nav mobile refinado.
   ============================================================ */

:root {
  --ik-navy: #0A1628;
  --ik-navy-2: #12275F;
  --ik-blue: #2043A6;
  --ik-gold: #B8960C;
  --ik-gold-soft: rgba(184,150,12,.22);
  --ik-gold-border: rgba(184,150,12,.45);
  --ik-cream: #F5F3EE;
  --ik-paper: #FBFAF6;
  --ik-ink-soft: #4B5870;
  --ik-line: rgba(10,22,40,.10);
}

/* Header/mobile CTA: tamanho equilibrado, sem excesso vertical */
.nav .nav-cta,
.nav-cta,
.mobile-nav-quote {
  min-height: 46px !important;
  height: 46px !important;
  padding: 0 22px !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

@media (max-width: 768px) {
  .nav .nav-cta,
  .nav-cta {
    min-height: 44px !important;
    height: 44px !important;
    padding: 0 16px !important;
    font-size: .76rem !important;
    letter-spacing: .075em !important;
  }
  .mobile-nav-quote {
    width: 100% !important;
    min-height: 48px !important;
    height: 48px !important;
    padding: 0 18px !important;
  }
}

/* Menu mobile: drawer fixo e fechamento explícito */
@media (min-width: 769px) {
  .mobile-nav-panel,
  .mobile-nav-panel.active {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    position: fixed !important;
    width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }
}

@media (max-width: 768px) {
  .mobile-nav-panel {
    display: flex !important;
    position: fixed !important;
    inset: 0 0 0 auto !important;
    width: min(84vw, 372px) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    z-index: 9998 !important;
    transform: translateX(108%) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    overflow-y: auto !important;
    padding: 96px 26px 34px !important;
    background: #162D73 !important;
    box-shadow: -22px 0 60px rgba(10,22,40,.36) !important;
    transition: transform .28s cubic-bezier(.2,.8,.2,1), opacity .2s ease, visibility .2s ease !important;
  }
  .mobile-nav-panel.active {
    transform: translateX(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .mobile-nav-close {
    display: inline-flex !important;
    position: absolute !important;
    top: 22px !important;
    right: 24px !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.30) !important;
    background: rgba(255,255,255,.08) !important;
    color: #fff !important;
    align-items: center !important;
    justify-content: center !important;
    font: 400 28px/1 "DM Sans", system-ui, sans-serif !important;
    cursor: pointer !important;
  }
  body.mobile-nav-open { overflow: hidden !important; }
}

.mobile-menu-anim {
  position: absolute;
  top: 25px;
  left: 26px;
  width: 32px;
  height: 32px;
  pointer-events: none;
}
.mobile-menu-anim::before,
.mobile-menu-anim::after {
  content: "";
  position: absolute;
  inset: 6px;
  border: 1px solid rgba(184,150,12,.58);
  border-radius: 50%;
  opacity: 0;
  transform: scale(.62);
}
.mobile-nav-panel.active .mobile-menu-anim::before { animation: ik-menu-ring .72s ease-out both; }
.mobile-nav-panel.active .mobile-menu-anim::after { animation: ik-menu-ring .72s .12s ease-out both; }
@keyframes ik-menu-ring { 0% { opacity: .9; transform: scale(.62); } 100% { opacity: 0; transform: scale(1.55); } }

/* Hub de Guias: volta para linguagem editorial premium do DS */
.guides-hub,
.article-page { background: var(--ik-cream) !important; }

.guides-hero,
.article-hero {
  padding: clamp(92px, 12vw, 140px) 24px clamp(44px, 7vw, 76px) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(32,67,166,.08), transparent 48%),
    linear-gradient(180deg, #FBFAF6 0%, #F5F3EE 100%) !important;
  color: var(--ik-navy) !important;
  text-align: center !important;
}
.guides-hero .kicker,
.article-hero .kicker,
.editorial-guides .kicker {
  color: var(--ik-gold) !important;
  letter-spacing: .19em !important;
  text-transform: uppercase !important;
  font: 700 .75rem/1.2 "DM Sans", system-ui, sans-serif !important;
  margin-bottom: 18px !important;
}
.guides-hero .kicker::before,
.guides-hero .kicker::after,
.article-hero .kicker::before,
.article-hero .kicker::after,
.editorial-guides .kicker::before,
.editorial-guides .kicker::after {
  content: "";
  display: inline-block;
  width: 38px;
  height: 1px;
  margin: 0 14px 4px;
  background: currentColor;
  opacity: .7;
}
.guides-hero h1,
.article-hero h1 {
  max-width: 980px !important;
  margin: 0 auto 18px !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(2.55rem, 6vw, 5.35rem) !important;
  line-height: .98 !important;
  letter-spacing: -.035em !important;
  font-weight: 500 !important;
  color: var(--ik-navy) !important;
}
.guides-hero p,
.article-hero p {
  max-width: 780px !important;
  margin: 0 auto !important;
  color: #4B5870 !important;
  font-size: clamp(1rem, 1.6vw, 1.18rem) !important;
  line-height: 1.72 !important;
}

.guides-grid-section,
.editorial-guides {
  padding: clamp(54px, 8vw, 96px) 24px !important;
  background: var(--ik-cream) !important;
}
.guides-grid {
  max-width: 1120px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
}
.guide-article-card {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid rgba(184,150,12,.28) !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.78) !important;
  color: var(--ik-navy) !important;
  text-decoration: none !important;
  box-shadow: 0 20px 54px rgba(10,22,40,.07) !important;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}
.guide-article-card:hover,
.guide-article-card:focus-visible {
  transform: translateY(-4px) !important;
  border-color: rgba(184,150,12,.62) !important;
  box-shadow: 0 28px 70px rgba(10,22,40,.11) !important;
}
.guide-card-media {
  display: block !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  background: var(--ik-navy) !important;
}
.guide-card-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .35s ease !important;
}
@media (hover: hover) { .guide-article-card:hover .guide-card-media img { transform: scale(1.035) !important; } }
.guide-card-body {
  min-width: 0 !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  padding: 26px 28px 28px !important;
  min-height: 250px !important;
}
.guide-article-card small,
.guide-card-body small {
  display: block !important;
  color: var(--ik-gold) !important;
  font: 700 .72rem/1.2 "DM Sans", system-ui, sans-serif !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  margin: 0 0 14px !important;
}
.guide-article-card h2,
.guide-article-card h3 {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.55rem, 2.2vw, 2.05rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
  font-weight: 500 !important;
  margin: 0 0 14px !important;
  color: var(--ik-navy) !important;
  overflow-wrap: anywhere !important;
}
.guide-article-card p {
  color: #536078 !important;
  line-height: 1.7 !important;
  margin: 0 0 24px !important;
  font-size: .98rem !important;
}
.guide-card-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: flex-start !important;
  max-width: 100% !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  margin-top: auto !important;
  border: 1px solid rgba(184,150,12,.50) !important;
  border-radius: 999px !important;
  color: var(--ik-navy) !important;
  background: rgba(184,150,12,.08) !important;
  font: 700 .74rem/1.1 "DM Sans", system-ui, sans-serif !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  text-align: center !important;
}

@media (max-width: 980px) { .guides-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 680px) {
  .guides-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
  .guide-card-body { min-height: auto !important; padding: 24px !important; }
  .guides-hero h1,
  .article-hero h1 { font-size: clamp(2.35rem, 12vw, 3.8rem) !important; }
}

/* Artigos: editorial limpo + imagem real */
.article-shell {
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: clamp(40px, 7vw, 78px) 24px !important;
}
.article-featured-image {
  max-width: 980px !important;
  margin: 0 auto 34px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  border: 1px solid rgba(184,150,12,.30) !important;
  box-shadow: 0 22px 64px rgba(10,22,40,.12) !important;
  background: var(--ik-navy) !important;
}
.article-featured-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}
.article-meta {
  max-width: 760px !important;
  margin: 0 auto 28px !important;
  color: #7A8192 !important;
  font-size: .9rem !important;
  line-height: 1.6 !important;
  text-align: center !important;
}
.article-content {
  max-width: 760px !important;
  margin: 0 auto !important;
  padding: clamp(30px, 5vw, 54px) !important;
  border: 1px solid rgba(184,150,12,.24) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.80) !important;
  box-shadow: 0 22px 64px rgba(10,22,40,.07) !important;
}
.article-content h2 {
  font-family: "Playfair Display", Georgia, serif !important;
  color: var(--ik-navy) !important;
  font-size: clamp(1.7rem, 3vw, 2.35rem) !important;
  line-height: 1.12 !important;
  font-weight: 500 !important;
  letter-spacing: -.02em !important;
  margin: 36px 0 14px !important;
}
.article-content h2:first-child { margin-top: 0 !important; }
.article-content p,
.article-content li {
  color: #4B5870 !important;
  line-height: 1.82 !important;
  font-size: 1.03rem !important;
}
.article-content ul { padding-left: 1.2rem !important; margin: 16px 0 26px !important; }
.article-content strong { color: var(--ik-navy) !important; }
.article-note {
  margin: 32px 0 !important;
  padding: 22px 24px !important;
  border-left: 3px solid var(--ik-gold) !important;
  border-radius: 0 16px 16px 0 !important;
  background: rgba(184,150,12,.10) !important;
  color: var(--ik-navy) !important;
  line-height: 1.7 !important;
}
.article-cta {
  margin-top: 42px !important;
  padding: 30px !important;
  border-radius: 22px !important;
  background: var(--ik-navy) !important;
  color: #fff !important;
  text-align: center !important;
}
.article-cta h2 { color: #fff !important; margin-top: 0 !important; }
.article-cta p { color: rgba(255,255,255,.80) !important; }
.article-cta .btn { margin-top: 14px !important; }
.article-content a {
  color: var(--ik-navy) !important;
  font-weight: 700 !important;
  text-decoration-color: rgba(184,150,12,.65) !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}

/* Nota de kashrut na página Serviços: componente, não texto solto */
.kashrut-note-section {
  padding: clamp(42px, 6vw, 72px) 24px !important;
  background: var(--ik-cream) !important;
}
.kashrut-note-card,
.service-note-card,
.service-note {
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: clamp(26px, 4vw, 38px) !important;
  border: 1px solid rgba(184,150,12,.36) !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 22px 60px rgba(10,22,40,.07) !important;
  color: #4B5870 !important;
  line-height: 1.78 !important;
}
.service-note-card .kicker,
.kashrut-note-card .kicker {
  color: var(--ik-gold) !important;
  letter-spacing: .17em !important;
  text-transform: uppercase !important;
  font: 700 .72rem/1.2 "DM Sans", system-ui, sans-serif !important;
  margin-bottom: 12px !important;
}
.service-note-card h2,
.kashrut-note-card h2 {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(1.8rem, 3.2vw, 2.55rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
  color: var(--ik-navy) !important;
  font-weight: 500 !important;
  margin: 0 0 14px !important;
}
.service-note-card p,
.kashrut-note-card p {
  color: #4B5870 !important;
  line-height: 1.78 !important;
  margin: 0 !important;
  font-size: 1.02rem !important;
}

/* FAQ mantém box premium com padding real */
.faq-section .faq-item.open {
  margin: 16px 0 18px !important;
  border: 1px solid rgba(184,150,12,.58) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.82) !important;
  box-shadow: 0 22px 60px rgba(10,22,40,.09) !important;
  overflow: hidden !important;
}
.faq-section .faq-q {
  padding: 24px 34px !important;
  min-height: 72px !important;
}
.faq-section .faq-a {
  padding: 0 34px 32px !important;
  color: #4B5870 !important;
  line-height: 1.78 !important;
}
.faq-section .faq-item.open .faq-a {
  border-top: 1px solid rgba(184,150,12,.18) !important;
  padding-top: 20px !important;
}
@media (max-width: 768px) {
  .faq-section .faq-q { padding: 20px 22px !important; min-height: 66px !important; }
  .faq-section .faq-a { padding: 0 22px 24px !important; }
  .faq-section .faq-item.open .faq-a { padding-top: 16px !important; }
}

/* WhatsApp: preserva posição sem cobrir demais o conteúdo */
@media (max-width: 480px) {
  .whatsapp-float {
    width: 66px !important;
    height: 66px !important;
    left: 20px !important;
    bottom: 22px !important;
  }
}


/* ─── BREADCRUMB — guias ─────────────────────────────────────────────────── */
.article-breadcrumb {
  background: #FAFAF7;
  border-bottom: 1px solid rgba(166,140,91,.18);
  padding: 13px 0;
}

.article-breadcrumb-inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 0 24px;
}

.article-breadcrumb ol {
  display: flex;
  align-items: center;
  gap: 0;
  list-style: none;
  flex-wrap: wrap;
}

.article-breadcrumb li {
  display: flex;
  align-items: center;
  font-size: .82rem;
  color: #7A8192;
}

.article-breadcrumb li + li::before {
  content: '/';
  margin: 0 8px;
  color: rgba(166,140,91,.45);
}

.article-breadcrumb a {
  color: #7A8192;
  text-decoration: none;
  transition: color .18s ease;
}

.article-breadcrumb a:hover {
  color: #0D1F52;
}

.article-breadcrumb [aria-current="page"] {
  color: #0D1F52;
  font-weight: 600;
}

/* ─── ARTICLE NAV — prev / next ──────────────────────────────────────────── */
.article-nav {
  border-top: 1px solid rgba(166,140,91,.18);
  background: #FAFAF7;
  padding: 28px 0;
  margin-top: 0;
}

.article-nav-inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.article-nav-link {
  font-size: .85rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-decoration: none;
  color: #0D1F52;
  transition: color .18s ease;
  max-width: 48%;
  line-height: 1.4;
}

.article-nav-link:hover {
  color: #BA8400;
}

.article-nav-prev {
  margin-right: auto;
}

.article-nav-next {
  margin-left: auto;
  text-align: right;
}

.article-nav-disabled {
  color: #C2C8D0;
  cursor: default;
  font-size: .85rem;
  font-weight: 600;
  letter-spacing: .05em;
}

@media (max-width: 580px) {
  .article-nav-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .article-nav-link,
  .article-nav-next {
    max-width: 100%;
    text-align: left;
    margin: 0;
  }
}

/* =========================================================
   QA FINAL — Guias dentro do Design System M.Hojo/Isaias
   Objetivo: remover sensação de “blog genérico” e corrigir
   hierarquia, contraste, centralização e cards agressivos.
   ========================================================= */

:root{
  --ik-gold-aa:#BA8400;
  --ik-gold-soft-aa:#D6AA52;
  --ik-ink:#0D1F52;
  --ik-body:#4B5870;
  --ik-paper:#FBFAF6;
}

/* Header/hero da página Guias: centralizado e com kicker dourado */
.guides-hero,
.article-hero{
  background:
    radial-gradient(circle at 50% 0%, rgba(32,67,166,.07), transparent 48%),
    linear-gradient(180deg, #FBFAF6 0%, #F5F3EE 100%) !important;
  color:var(--ik-ink) !important;
  text-align:center !important;
  padding:clamp(118px, 13vw, 152px) 24px clamp(50px, 7vw, 82px) !important;
}
.guides-hero .kicker,
.article-hero .kicker,
.editorial-guides .kicker,
.guides-grid-section .kicker{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  text-align:center !important;
  color:var(--ik-gold-aa) !important;
  letter-spacing:.17em !important;
  text-transform:uppercase !important;
  font:700 .74rem/1.2 "DM Sans", system-ui, sans-serif !important;
  margin:0 auto 18px !important;
}
.guides-hero h1,
.article-hero h1{
  max-width:980px !important;
  color:var(--ik-ink) !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-weight:500 !important;
  letter-spacing:-.035em !important;
  text-transform:none !important;
}
.guides-hero p,
.article-hero p{
  max-width:780px !important;
  color:var(--ik-body) !important;
  text-align:center !important;
}

/* Cards dos Guias: linguagem dos cards de Serviços, sem gritaria */
.guides-grid{
  align-items:stretch !important;
}
.guide-article-card{
  border:1px solid rgba(166,140,91,.28) !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.82) !important;
  box-shadow:0 18px 48px rgba(10,22,40,.065) !important;
  overflow:hidden !important;
  text-transform:none !important;
}
.guide-card-media{
  aspect-ratio:16 / 10 !important;
  background:#E8E2D4 !important;
}
.guide-card-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.guide-card-body{
  padding:26px 28px 28px !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
}
.guide-article-card small,
.guide-card-body small{
  color:var(--ik-gold-aa) !important;
  font:700 .72rem/1.2 "DM Sans", system-ui, sans-serif !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  margin:0 0 12px !important;
}
.guide-article-card h2,
.guide-article-card h3,
.guide-card-body h2,
.guide-card-body h3{
  font-family:"Playfair Display", Georgia, serif !important;
  color:var(--ik-ink) !important;
  font-size:clamp(1.42rem, 1.9vw, 1.92rem) !important;
  line-height:1.13 !important;
  font-weight:500 !important;
  letter-spacing:-.018em !important;
  text-transform:none !important;
  margin:0 0 14px !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.guide-article-card p,
.guide-card-body p{
  color:#536078 !important;
  font:400 .98rem/1.7 "DM Sans", system-ui, sans-serif !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  margin:0 0 22px !important;
}
.guide-card-link,
.guide-article-card .guide-card-link{
  align-self:flex-start !important;
  margin-top:auto !important;
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--ik-gold-aa) !important;
  font:700 .92rem/1.2 "DM Sans", system-ui, sans-serif !important;
  letter-spacing:.01em !important;
  text-transform:none !important;
}
.guide-card-link:hover{
  color:var(--ik-ink) !important;
}

/* Artigos: editorial premium, não card de blog/formulário */
.article-breadcrumb{
  background:#FBFAF6 !important;
  border-bottom:1px solid rgba(166,140,91,.16) !important;
}
.article-shell{
  max-width:1040px !important;
  padding:clamp(42px, 6vw, 76px) 24px !important;
}
.article-featured-image{
  max-width:1040px !important;
  margin:0 auto 38px !important;
  border-radius:20px !important;
  overflow:hidden !important;
  border:1px solid rgba(166,140,91,.24) !important;
  box-shadow:0 20px 58px rgba(10,22,40,.10) !important;
  background:#E8E2D4 !important;
}
.article-featured-image img{
  display:block !important;
  width:100% !important;
  height:auto !important;
}
.article-meta{
  max-width:760px !important;
  margin:0 auto 34px !important;
  padding-bottom:18px !important;
  border-bottom:1px solid rgba(166,140,91,.18) !important;
  color:#7A8192 !important;
  text-align:left !important;
  font:500 .9rem/1.6 "DM Sans", system-ui, sans-serif !important;
}
.article-content{
  max-width:760px !important;
  margin:0 auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.article-content h2{
  color:var(--ik-ink) !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-size:clamp(1.78rem, 3vw, 2.42rem) !important;
  line-height:1.13 !important;
  font-weight:500 !important;
  letter-spacing:-.02em !important;
  text-transform:none !important;
  margin:42px 0 14px !important;
}
.article-content h2:not(:first-child){
  padding-top:30px !important;
  border-top:1px solid rgba(166,140,91,.15) !important;
}
.article-content p,
.article-content li{
  color:var(--ik-body) !important;
  font-size:1.045rem !important;
  line-height:1.84 !important;
}
.article-note{
  margin:34px 0 !important;
  padding:24px 26px !important;
  border:1px solid rgba(166,140,91,.28) !important;
  border-left:4px solid var(--ik-gold-aa) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.68) !important;
  color:var(--ik-body) !important;
  box-shadow:0 14px 34px rgba(10,22,40,.045) !important;
}
.article-cta{
  margin-top:46px !important;
  padding:34px 32px !important;
  border-radius:22px !important;
  border:1px solid rgba(166,140,91,.36) !important;
  background:var(--ik-ink) !important;
  color:#fff !important;
  box-shadow:0 24px 62px rgba(10,22,40,.16) !important;
}
.article-cta h2{
  color:#fff !important;
  border-top:0 !important;
  padding-top:0 !important;
  margin:0 0 12px !important;
  font-size:clamp(1.7rem, 3vw, 2.3rem) !important;
}
.article-cta p{
  color:rgba(255,255,255,.80) !important;
}
.article-cta .btn,
.article-cta .btn.primary{
  background:var(--ik-gold-aa) !important;
  border-color:var(--ik-gold-aa) !important;
  color:#081225 !important;
  box-shadow:none !important;
}
.article-cta .btn:hover,
.article-cta .btn.primary:hover{
  background:#E2B23C !important;
  border-color:#E2B23C !important;
  color:#081225 !important;
}

/* Página Serviços: nota sobre kashrut como componente institucional */
.kashrut-note-section{
  padding:clamp(42px, 6vw, 74px) 24px !important;
  background:linear-gradient(180deg, #FBFAF6 0%, #F5F3EE 100%) !important;
}
.kashrut-note-section .service-note-card,
.service-note-card,
.kashrut-note-card{
  display:block !important;
  max-width:900px !important;
  margin:0 auto !important;
  padding:clamp(28px, 4vw, 42px) !important;
  border:1px solid rgba(166,140,91,.34) !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.76) !important;
  box-shadow:0 22px 58px rgba(10,22,40,.07) !important;
  color:var(--ik-body) !important;
}
.service-note-card .kicker,
.kashrut-note-card .kicker{
  display:flex !important;
  align-items:center !important;
  color:var(--ik-gold-aa) !important;
  text-transform:uppercase !important;
  letter-spacing:.17em !important;
  font:700 .72rem/1.2 "DM Sans", system-ui, sans-serif !important;
  margin:0 0 14px !important;
}
.service-note-card h2,
.kashrut-note-card h2{
  color:var(--ik-ink) !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-size:clamp(1.8rem, 3.2vw, 2.55rem) !important;
  line-height:1.1 !important;
  font-weight:500 !important;
  letter-spacing:-.025em !important;
  margin:0 0 14px !important;
  text-transform:none !important;
}
.service-note-card p,
.kashrut-note-card p{
  color:var(--ik-body) !important;
  font-size:1.03rem !important;
  line-height:1.78 !important;
  margin:0 !important;
}

@media (max-width: 768px){
  .guides-hero,
  .article-hero{
    padding:108px 22px 52px !important;
  }
  .guide-card-body{
    padding:24px !important;
  }
  .guide-article-card h2,
  .guide-article-card h3{
    font-size:1.78rem !important;
  }
  .article-meta{
    text-align:left !important;
  }
  .article-cta{
    padding:28px 24px !important;
  }
}

.article-cta .article-cta-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  min-height:46px !important;
  padding:0 24px !important;
  border-radius:8px !important;
  background:var(--ik-gold-aa) !important;
  border:1px solid var(--ik-gold-aa) !important;
  color:#081225 !important;
  font:800 .78rem/1 "DM Sans", system-ui, sans-serif !important;
  letter-spacing:.07em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
}
.article-cta .article-cta-button:hover{
  background:#E2B23C !important;
  border-color:#E2B23C !important;
  color:#081225 !important;
}


/* Final A11Y hardening — focus, icon links and contrast */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid #E2B23C !important;
  outline-offset: 4px !important;
  box-shadow: 0 0 0 5px rgba(226,178,60,.24) !important;
}

.skip-link {
  position: fixed;
  left: 16px;
  top: 16px;
  z-index: 10000;
  transform: translateY(-140%);
  padding: 12px 16px;
  border-radius: 12px;
  background: #F5F3EE;
  color: #0D1F52;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(10,22,40,.25);
}

.skip-link:focus,
.skip-link:focus-visible {
  transform: translateY(0);
}

.article-cta .btn,
.article-cta .btn.primary,
.article-cta .btn-gold {
  background: #BA8400 !important;
  color: #FFFFFF !important;
  border-color: #BA8400 !important;
}

.article-cta .btn:hover,
.article-cta .btn:focus-visible {
  background: #D19A0A !important;
  color: #0A1628 !important;
}

/* Avoid all-caps article card shouting; keep editorial hierarchy */
.guide-article-card h2,
.guide-article-card h3 {
  text-transform: none !important;
  letter-spacing: normal !important;
}



/* ------------------------------------------------------------
   Carne Kosher Hub · M.Hojo / Isaias
   Biblioteca técnica proprietária — v0.1
------------------------------------------------------------ */

.ck-hero {
  min-height: 78vh;
  padding: clamp(140px, 16vw, 190px) 24px clamp(76px, 9vw, 120px);
  background:
    linear-gradient(180deg, rgba(10, 22, 40, .88), rgba(10, 22, 40, .80)),
    url("../srv-hero-bg.jpg") center/cover no-repeat;
  color: #fff;
}

.ck-container {
  width: min(1120px, calc(100% - 48px));
  margin-inline: auto;
}

.ck-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(280px, .72fr);
  gap: clamp(32px, 5vw, 70px);
  align-items: end;
}

.ck-kicker,
.ck-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #C9A75B;
  font: 700 .74rem/1.2 "DM Sans", system-ui, sans-serif;
  letter-spacing: .16em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.ck-hero h1,
.ck-section h2,
.ck-article h1,
.ck-article-content h2 {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 500;
  letter-spacing: -.02em;
}

.ck-hero h1 {
  max-width: 820px;
  margin: 0 0 24px;
  font-size: clamp(3rem, 6.4vw, 6.25rem);
  line-height: .94;
}

.ck-hero p {
  max-width: 780px;
  margin: 0 0 20px;
  color: rgba(255,255,255,.86);
  font-size: clamp(1.05rem, 1.75vw, 1.26rem);
  line-height: 1.68;
}

.ck-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.ck-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  font: 700 .78rem/1 "DM Sans", system-ui, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}

.ck-btn-primary {
  background: #BA8400;
  color: #0A1628;
  border: 1px solid #BA8400;
  box-shadow: 0 18px 42px rgba(0,0,0,.18);
}

.ck-btn-secondary {
  background: rgba(255,255,255,.08);
  color: #fff;
  border: 1px solid rgba(255,255,255,.28);
}

.ck-btn:hover,
.ck-btn:focus-visible {
  transform: translateY(-2px);
}

.ck-hero-card {
  border: 1px solid rgba(201,167,91,.40);
  border-radius: 26px;
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(14px);
  padding: clamp(24px, 3vw, 34px);
  box-shadow: 0 24px 70px rgba(0,0,0,.22);
}

.ck-hero-card strong {
  display: block;
  margin-bottom: 12px;
  color: #F5F3EE;
  font: 700 .92rem/1.3 "DM Sans", system-ui, sans-serif;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.ck-hero-card p {
  margin: 0;
  font-size: .98rem;
  line-height: 1.72;
}

.ck-section {
  padding: clamp(64px, 8.5vw, 116px) 0;
  background: #F5F3EE;
}

.ck-section:nth-of-type(even) {
  background: #FBFAF6;
}

.ck-section-head {
  max-width: 820px;
  margin: 0 auto clamp(34px, 4vw, 54px);
  text-align: center;
}

.ck-section-head h2,
.ck-section h2 {
  color: #0A1628;
  font-size: clamp(2rem, 4vw, 3.7rem);
  line-height: 1;
  margin: 0 0 18px;
}

.ck-section-head p,
.ck-section p {
  color: #4B5870;
  line-height: 1.78;
  font-size: 1.03rem;
}

.ck-two-col {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr);
  gap: clamp(28px, 5vw, 66px);
  align-items: start;
}

.ck-copy h3,
.ck-card h3 {
  color: #0A1628;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 500;
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1.12;
  margin: 28px 0 12px;
}

.ck-copy p + p {
  margin-top: 16px;
}

.ck-note,
.ck-card,
.ck-aside {
  border: 1px solid rgba(166,140,91,.26);
  border-radius: 24px;
  background: rgba(255,255,255,.70);
  padding: clamp(24px, 3vw, 34px);
  box-shadow: 0 20px 56px rgba(10,22,40,.07);
}

.ck-note {
  border-left: 4px solid #BA8400;
}

.ck-note strong,
.ck-aside strong {
  color: #0A1628;
}

.ck-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 28px;
}

.ck-mini-card {
  border: 1px solid rgba(166,140,91,.22);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
  padding: 22px;
}

.ck-mini-card h3 {
  margin: 0 0 8px;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 500;
  color: #0A1628;
  font-size: 1.35rem;
  line-height: 1.12;
}

.ck-mini-card p {
  margin: 0;
  font-size: .95rem;
}

.ck-accordion {
  display: grid;
  gap: 12px;
  margin-top: 26px;
}

.ck-question {
  border: 1px solid rgba(166,140,91,.24);
  border-radius: 18px;
  background: rgba(255,255,255,.74);
  padding: 20px 22px;
  color: #0A1628;
  font-weight: 700;
  line-height: 1.45;
}

.ck-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.ck-guide-card {
  display: flex;
  flex-direction: column;
  min-height: 315px;
  border: 1px solid rgba(166,140,91,.30);
  border-radius: 24px;
  background: rgba(255,255,255,.76);
  padding: 28px;
  color: #0A1628;
  text-decoration: none;
  box-shadow: 0 22px 60px rgba(10,22,40,.07);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.ck-guide-card[href]:hover,
.ck-guide-card[href]:focus-visible {
  transform: translateY(-4px);
  border-color: rgba(186,132,0,.62);
  box-shadow: 0 28px 72px rgba(10,22,40,.12);
}

.ck-guide-card .ck-label {
  color: #BA8400;
  font: 700 .72rem/1.2 "DM Sans", system-ui, sans-serif;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.ck-guide-card h3 {
  margin: 0 0 14px;
  color: #0A1628;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 500;
  font-size: clamp(1.45rem, 2.2vw, 2.05rem);
  line-height: 1.08;
}

.ck-guide-card p {
  margin: 0 0 26px;
  color: #556176;
  line-height: 1.7;
}

.ck-guide-card .ck-card-cta {
  margin-top: auto;
  display: inline-flex;
  align-self: flex-start;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(166,140,91,.46);
  color: #0A1628;
  background: rgba(166,140,91,.08);
  font: 700 .72rem/1 "DM Sans", system-ui, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.ck-guide-card.is-coming-soon {
  opacity: .78;
  cursor: default;
}

.ck-guide-card.is-coming-soon .ck-card-cta {
  color: #6E7482;
  background: rgba(10,22,40,.05);
  border-color: rgba(10,22,40,.12);
}

.ck-briefing-list {
  columns: 2;
  column-gap: 42px;
  margin: 24px 0 0;
  padding-left: 1.1rem;
}

.ck-briefing-list li {
  break-inside: avoid;
  margin: 0 0 10px;
  color: #4B5870;
  line-height: 1.55;
}

.ck-sources {
  border-top: 1px solid rgba(166,140,91,.22);
  padding-top: 26px;
  margin-top: 26px;
  color: #667085;
  font-size: .94rem;
}

/* Article pages */
.ck-article-hero {
  padding: clamp(132px, 15vw, 180px) 24px clamp(66px, 8vw, 96px);
  background:
    linear-gradient(180deg, rgba(10,22,40,.90), rgba(10,22,40,.82)),
    url("../srv-hero-bg.jpg") center/cover no-repeat;
  color: #fff;
  text-align: center;
}

.ck-article-hero h1 {
  max-width: 960px;
  margin: 0 auto 20px;
  font-size: clamp(2.7rem, 5.6vw, 5.45rem);
  line-height: .96;
}

.ck-article-hero p {
  max-width: 780px;
  margin: 0 auto;
  color: rgba(255,255,255,.84);
  font-size: clamp(1.03rem, 1.7vw, 1.18rem);
  line-height: 1.7;
}

.ck-breadcrumb {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  width: min(980px, calc(100% - 48px));
  margin: 0 auto 22px;
  color: rgba(255,255,255,.72);
  font-size: .82rem;
}

.ck-breadcrumb a {
  color: rgba(255,255,255,.86);
}

.ck-article-shell {
  background: #F5F3EE;
  padding: clamp(56px, 8vw, 100px) 24px;
}

.ck-article-content {
  max-width: 820px;
  margin: 0 auto;
}

.ck-article-meta {
  margin-bottom: 28px;
  color: #7B8494;
  font-size: .92rem;
  line-height: 1.6;
}

.ck-article-content h2 {
  margin: 44px 0 16px;
  color: #0A1628;
  font-size: clamp(1.8rem, 3.2vw, 2.8rem);
  line-height: 1.08;
}

.ck-article-content p,
.ck-article-content li {
  color: #46536A;
  font-size: 1.05rem;
  line-height: 1.86;
}

.ck-article-content p + p {
  margin-top: 16px;
}

.ck-article-note {
  margin: 36px 0;
  padding: 24px 28px;
  border-left: 4px solid #BA8400;
  border-radius: 0 18px 18px 0;
  background: rgba(255,255,255,.72);
  color: #0A1628;
  line-height: 1.7;
  box-shadow: 0 14px 42px rgba(10,22,40,.06);
}

.ck-article-cta {
  margin-top: 54px;
  padding: clamp(28px, 4vw, 42px);
  border-radius: 26px;
  background: #0A1628;
  color: #fff;
  text-align: center;
  box-shadow: 0 26px 70px rgba(10,22,40,.16);
}

.ck-article-cta h2 {
  margin: 0 0 12px;
  color: #fff;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 500;
  font-size: clamp(1.9rem, 3.5vw, 3rem);
  line-height: 1.06;
}

.ck-article-cta p {
  max-width: 640px;
  margin: 0 auto 22px;
  color: rgba(255,255,255,.82);
}

.ck-related {
  margin-top: 44px;
  padding-top: 24px;
  border-top: 1px solid rgba(166,140,91,.22);
}

.ck-related a {
  color: #0A1628;
  font-weight: 700;
  text-decoration-color: rgba(186,132,0,.55);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

@media (max-width: 980px) {
  .ck-hero-grid,
  .ck-two-col {
    grid-template-columns: 1fr;
  }

  .ck-cards,
  .ck-guide-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ck-hero {
    min-height: auto;
  }
}

@media (max-width: 680px) {
  .ck-container {
    width: min(100% - 36px, 1120px);
  }

  .ck-hero,
  .ck-article-hero {
    padding-left: 18px;
    padding-right: 18px;
  }

  .ck-hero h1,
  .ck-article-hero h1 {
    font-size: clamp(2.5rem, 13vw, 4rem);
  }

  .ck-cards,
  .ck-guide-grid {
    grid-template-columns: 1fr;
  }

  .ck-guide-card {
    min-height: auto;
    padding: 24px;
  }

  .ck-briefing-list {
    columns: 1;
  }

  .ck-hero-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .ck-btn {
    width: 100%;
  }
}


/* =========================================================
   ROUND 5 — DS alignment · Carne Kosher + Guias
   Ajustes solicitados: header DS, contraste do hero, CTAs,
   cards editoriais, footer social e remoção de ruído visual.
   ========================================================= */

:root{
  --ik-ds-navy:#12275C;
  --ik-ds-blue:#173BA6;
  --ik-ds-ink:#0A1628;
  --ik-ds-gold:#BA8400;
  --ik-ds-gold-soft:#D6AA52;
  --ik-ds-paper:#FBFAF6;
  --ik-ds-cream:#F5F3EE;
  --ik-ds-body:#4B5870;
}

/* Header sempre no azul institucional nas páginas técnicas */
.ck-page .nav,
.guides-hub .nav,
.article-page .nav{
  background:rgba(18,39,92,.96) !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 4px 18px rgba(0,0,0,.12) !important;
}
.ck-page .nav-links,
.guides-hub .nav-links,
.article-page .nav-links{
  color:#fff !important;
}
.ck-page .nav-links a,
.guides-hub .nav-links a,
.article-page .nav-links a{
  color:rgba(255,255,255,.88) !important;
}
.ck-page .nav-links a:hover,
.guides-hub .nav-links a:hover,
.article-page .nav-links a:hover,
.ck-page .nav-links a.active,
.guides-hub .nav-links a.active,
.article-page .nav-links a.active{
  color:var(--ik-ds-gold-soft) !important;
}
.ck-page .nav-cta,
.guides-hub .nav-cta,
.article-page .nav-cta{
  background:var(--ik-ds-gold) !important;
  color:#fff !important;
  border-color:var(--ik-ds-gold) !important;
}
.ck-page .nav-cta:hover,
.guides-hub .nav-cta:hover,
.article-page .nav-cta:hover{
  background:#fff !important;
  color:var(--ik-ds-ink) !important;
  border-color:#fff !important;
}

/* Hero Carne Kosher: H1 e texto em branco para contraste real */
.ck-hero{
  background:
    linear-gradient(180deg, rgba(18,39,92,.86), rgba(10,22,40,.78)),
    url("../srv-hero-bg.jpg") center/cover no-repeat !important;
  color:#fff !important;
}
.ck-hero h1{
  color:#fff !important;
  text-shadow:0 8px 30px rgba(0,0,0,.34) !important;
}
.ck-hero p{
  color:rgba(255,255,255,.88) !important;
}
.ck-hero .ck-eyebrow{
  color:#F1C76A !important;
}
.ck-hero-card{
  background:rgba(10,22,40,.46) !important;
  border-color:rgba(214,170,82,.50) !important;
}

/* Botões CK: gold + navy por contraste AA; hover branco fica legível */
.ck-btn,
.ck-btn-primary,
.ck-btn-secondary{
  text-align:center !important;
  line-height:1.2 !important;
}
.ck-btn-primary,
.ck-note .ck-btn-primary,
.ck-aside .ck-btn-primary,
.ck-article-cta .ck-btn-primary{
  background:var(--ik-ds-gold) !important;
  border-color:var(--ik-ds-gold) !important;
  color:var(--ik-ds-ink) !important;
  box-shadow:none !important;
}
.ck-btn-primary:hover,
.ck-note .ck-btn-primary:hover,
.ck-aside .ck-btn-primary:hover,
.ck-article-cta .ck-btn-primary:hover{
  background:#E2B23C !important;
  border-color:#E2B23C !important;
  color:var(--ik-ds-ink) !important;
}
.ck-btn-secondary{
  color:#fff !important;
  border-color:rgba(255,255,255,.34) !important;
}

/* Cards laterais: mais respiro e botão sem colar no texto */
.ck-aside,
.ck-note{
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
}
.ck-aside p,
.ck-note p{
  margin:0 !important;
}
.ck-aside .ck-btn,
.ck-note .ck-btn{
  margin-top:8px !important;
  align-self:flex-start !important;
}
.ck-aside{
  border-left:4px solid var(--ik-ds-gold) !important;
}

/* Card editorial em padrão institucional, não bloco solto */
.ck-article-cta{
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(166,140,91,.34) !important;
  border-left:5px solid var(--ik-ds-gold) !important;
  color:var(--ik-ds-ink) !important;
  text-align:left !important;
  box-shadow:0 22px 58px rgba(10,22,40,.08) !important;
}
.ck-article-cta h2{
  color:var(--ik-ds-ink) !important;
  text-align:left !important;
}
.ck-article-cta p{
  color:var(--ik-ds-body) !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
.ck-article-cta .ck-btn{
  margin-top:6px !important;
}

/* Guia hub: mantém hierarquia tipo páginas institucionais */
.guides-hero{
  padding-top:clamp(126px, 14vw, 168px) !important;
}
.guides-hero .kicker{
  justify-content:center !important;
  color:var(--ik-ds-gold) !important;
}
.guides-hero h1{
  color:var(--ik-ds-ink) !important;
  text-transform:none !important;
}
.guides-grid-section{
  padding-top:clamp(42px, 5vw, 68px) !important;
}
.guide-article-card h2,
.guide-article-card h3{
  text-transform:none !important;
  letter-spacing:-.018em !important;
}

/* CTAs dos guias antigos: gold com contraste correto e centralização */
.article-cta{
  border:1px solid rgba(166,140,91,.36) !important;
  border-left:5px solid var(--ik-ds-gold) !important;
  background:rgba(255,255,255,.82) !important;
  color:var(--ik-ds-ink) !important;
  text-align:left !important;
}
.article-cta h2{
  color:var(--ik-ds-ink) !important;
  text-align:left !important;
}
.article-cta p{
  color:var(--ik-ds-body) !important;
}
.article-cta .btn,
.article-cta .btn.primary,
.article-cta .btn-gold,
.article-cta .article-cta-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:46px !important;
  padding:0 24px !important;
  border-radius:999px !important;
  background:var(--ik-ds-gold) !important;
  border:1px solid var(--ik-ds-gold) !important;
  color:var(--ik-ds-ink) !important;
  text-align:center !important;
  line-height:1.2 !important;
}

/* Footer: reforça o padrão da home em todas as páginas */
.footer-social{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin-top:16px !important;
}
.footer-social a{
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  min-height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:999px !important;
  color:rgba(255,255,255,.78) !important;
  transition:background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease !important;
}
.footer-social a:hover,
.footer-social a:focus-visible{
  color:#fff !important;
  border-color:rgba(214,170,82,.68) !important;
  background:rgba(214,170,82,.12) !important;
  transform:translateY(-2px) !important;
}

@media (max-width: 680px){
  .ck-aside .ck-btn,
  .ck-note .ck-btn,
  .ck-article-cta .ck-btn{
    width:100% !important;
    align-self:stretch !important;
  }
  .ck-article-cta,
  .article-cta{
    text-align:left !important;
  }
  .footer-social{
    justify-content:flex-start !important;
  }
}


/* ROUND 5 — imagens editoriais Carne Kosher */
.ck-article-featured{
  max-width:1040px !important;
  margin:0 auto clamp(34px, 5vw, 56px) !important;
  border-radius:24px !important;
  overflow:hidden !important;
  border:1px solid rgba(166,140,91,.28) !important;
  box-shadow:0 22px 62px rgba(10,22,40,.10) !important;
  background:#E8E2D4 !important;
}
.ck-article-featured img{
  width:100% !important;
  aspect-ratio:16 / 9 !important;
  height:auto !important;
  object-fit:cover !important;
  display:block !important;
}
.ck-guide-card-media{
  display:block !important;
  margin:-28px -28px 22px !important;
  aspect-ratio:16 / 9 !important;
  overflow:hidden !important;
  background:#E8E2D4 !important;
  border-bottom:1px solid rgba(166,140,91,.18) !important;
}
.ck-guide-card-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  transition:transform .28s ease !important;
}
.ck-guide-card[href]:hover .ck-guide-card-media img,
.ck-guide-card[href]:focus-visible .ck-guide-card-media img{
  transform:scale(1.035) !important;
}
.ck-guide-card.is-coming-soon .ck-guide-card-media img{
  filter:saturate(.82) contrast(.96) !important;
  opacity:.78 !important;
}
@media (max-width:680px){
  .ck-guide-card-media{margin:-24px -24px 20px !important;}
}


/* =========================================================
   ROUND 6 — Carne Kosher UX refinements
   - Article hero contrast
   - Breadcrumb moved below header
   - Proposal CTA follows “5 passos” logic
   - Previous/next article navigation
   ========================================================= */

.ck-page .ck-hero h1,
.ck-page .ck-article-hero h1{
  color:#FFFFFF !important;
  text-shadow:0 10px 34px rgba(0,0,0,.36) !important;
}
.ck-page .ck-article-hero p,
.ck-page .ck-hero p{
  color:rgba(255,255,255,.90) !important;
}
.ck-page .ck-article-hero .ck-eyebrow,
.ck-page .ck-hero .ck-eyebrow{
  color:#F1C76A !important;
}
.ck-page .nav{
  background:#12275C !important;
}
.ck-page .nav-links a,
.ck-page .brand,
.ck-page .nav-cta{
  opacity:1 !important;
}

.ck-breadcrumb-bar{
  background:#F5F3EE !important;
  border-top:1px solid rgba(166,140,91,.16) !important;
  border-bottom:1px solid rgba(166,140,91,.18) !important;
  padding:18px 24px !important;
}
.ck-breadcrumb-context{
  width:min(1120px, calc(100% - 48px)) !important;
  margin:0 auto !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  color:#6D7586 !important;
  font:700 .78rem/1.25 "DM Sans", system-ui, sans-serif !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
}
.ck-breadcrumb-context a{
  color:#0A1628 !important;
  text-decoration:none !important;
}
.ck-breadcrumb-context a:hover,
.ck-breadcrumb-context a:focus-visible{
  color:#BA8400 !important;
  text-decoration:underline !important;
  text-underline-offset:4px !important;
}

.ck-aside .ck-card-cta[aria-disabled="true"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:flex-start !important;
  margin-top:8px !important;
  min-height:40px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  background:rgba(186,132,0,.10) !important;
  border:1px solid rgba(186,132,0,.32) !important;
  color:#0A1628 !important;
  font:700 .72rem/1 "DM Sans", system-ui, sans-serif !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.ck-note .ck-btn,
.ck-aside .ck-btn{
  min-width:0 !important;
  white-space:normal !important;
  text-align:center !important;
  justify-content:center !important;
}
.ck-note .ck-btn-secondary,
.ck-aside .ck-btn-secondary{
  background:#BA8400 !important;
  border-color:#BA8400 !important;
  color:#0A1628 !important;
}

.ck-article-proposal{
  width:100vw !important;
  margin:clamp(58px, 7vw, 96px) 0 clamp(34px, 5vw, 58px) calc(50% - 50vw) !important;
  padding:clamp(46px, 6vw, 76px) 24px !important;
  background:
    linear-gradient(90deg, rgba(10,22,40,.92), rgba(18,39,92,.86)),
    url("../srv-cta-bg.jpg") center/cover no-repeat !important;
  color:#fff !important;
  overflow:hidden !important;
}
.ck-proposal-panel{
  width:min(1160px, calc(100% - 48px)) !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr) !important;
  gap:clamp(28px, 5vw, 68px) !important;
  align-items:center !important;
}
.ck-proposal-copy .ck-kicker,
.ck-proposal-card .ck-kicker{
  color:#F1C76A !important;
}
.ck-proposal-copy h2,
.ck-proposal-card h2{
  margin:0 0 18px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  font-weight:500 !important;
  letter-spacing:-.025em !important;
  line-height:1.02 !important;
}
.ck-proposal-copy h2{
  color:#fff !important;
  font-size:clamp(3rem, 5.8vw, 5.8rem) !important;
  max-width:560px !important;
}
.ck-proposal-copy p{
  max-width:560px !important;
  color:rgba(255,255,255,.86) !important;
  font-size:clamp(1rem, 1.6vw, 1.18rem) !important;
  line-height:1.74 !important;
}
.ck-proposal-note{
  margin-top:32px !important;
  padding:22px 24px !important;
  border:1px solid rgba(241,199,106,.34) !important;
  border-radius:18px !important;
  color:rgba(255,255,255,.90) !important;
  background:rgba(255,255,255,.06) !important;
  line-height:1.55 !important;
}
.ck-proposal-card{
  background:rgba(255,255,255,.96) !important;
  border:1px solid rgba(166,140,91,.28) !important;
  border-radius:28px !important;
  padding:clamp(30px, 4vw, 52px) !important;
  color:#0A1628 !important;
  box-shadow:0 28px 72px rgba(0,0,0,.22) !important;
}
.ck-proposal-card h2{
  color:#12275C !important;
  font-size:clamp(2.05rem, 3.5vw, 4rem) !important;
}
.ck-proposal-card p,
.ck-proposal-card li{
  color:#4B5870 !important;
  font-size:1.02rem !important;
  line-height:1.72 !important;
}
.ck-proposal-card ul{
  list-style:none !important;
  padding:0 !important;
  margin:24px 0 28px !important;
  display:grid !important;
  gap:12px !important;
}
.ck-proposal-card li{
  position:relative !important;
  padding-left:22px !important;
}
.ck-proposal-card li::before{
  content:"•" !important;
  position:absolute !important;
  left:0 !important;
  color:#BA8400 !important;
  font-weight:800 !important;
}
.ck-proposal-card .ck-btn{
  width:100% !important;
  min-height:54px !important;
  border-radius:12px !important;
  background:#12275C !important;
  border-color:#12275C !important;
  color:#fff !important;
}
.ck-proposal-card .ck-btn:hover,
.ck-proposal-card .ck-btn:focus-visible{
  background:#0A1628 !important;
  border-color:#0A1628 !important;
  color:#fff !important;
}

.ck-article-nav{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) !important;
  gap:18px !important;
  align-items:stretch !important;
  margin:clamp(34px,5vw,54px) 0 0 !important;
  padding-top:26px !important;
  border-top:1px solid rgba(166,140,91,.24) !important;
}
.ck-article-nav-item,
.ck-article-nav-home{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-height:96px !important;
  padding:20px 22px !important;
  border:1px solid rgba(166,140,91,.30) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.66) !important;
  color:#0A1628 !important;
  text-decoration:none !important;
  box-shadow:0 14px 38px rgba(10,22,40,.05) !important;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}
.ck-article-nav-home{
  min-height:auto !important;
  align-self:center !important;
  align-items:center !important;
  border-radius:999px !important;
  padding:14px 20px !important;
  font:700 .78rem/1 "DM Sans", system-ui, sans-serif !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  background:#0A1628 !important;
  color:#fff !important;
}
.ck-article-nav-item span{
  color:#BA8400 !important;
  font:700 .72rem/1.2 "DM Sans", system-ui, sans-serif !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
  margin-bottom:8px !important;
}
.ck-article-nav-item strong{
  font-family:"Playfair Display", Georgia, serif !important;
  font-weight:500 !important;
  font-size:1.35rem !important;
  line-height:1.15 !important;
}
.ck-article-nav-next{
  text-align:right !important;
  align-items:flex-end !important;
}
.ck-article-nav-item:hover,
.ck-article-nav-item:focus-visible,
.ck-article-nav-home:hover,
.ck-article-nav-home:focus-visible{
  transform:translateY(-2px) !important;
  border-color:rgba(186,132,0,.62) !important;
  box-shadow:0 18px 46px rgba(10,22,40,.09) !important;
}

@media (max-width: 900px){
  .ck-proposal-panel{
    grid-template-columns:1fr !important;
  }
  .ck-proposal-copy h2{
    font-size:clamp(2.8rem, 12vw, 4.5rem) !important;
  }
  .ck-article-nav{
    grid-template-columns:1fr !important;
  }
  .ck-article-nav-next{
    text-align:left !important;
    align-items:flex-start !important;
  }
  .ck-article-nav-home{
    width:100% !important;
  }
}
@media (max-width:680px){
  .ck-breadcrumb-context{
    width:100% !important;
  }
  .ck-article-proposal{
    padding:42px 18px !important;
  }
  .ck-proposal-panel{
    width:100% !important;
  }
  .ck-proposal-card{
    padding:28px 22px !important;
  }
}


/* =========================================================
   Round 6.6 — Carne Kosher / Território técnico DS refinado
   - Kicker com traços editoriais
   - H2 navy + gold italic
   - Diagrama técnico do dianteiro bovino
   ========================================================= */

.ck-page .ck-section-head-framed .ck-kicker{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:14px !important;
  width:100% !important;
  color:var(--ik-ds-gold, #BA8400) !important;
}
.ck-page .ck-section-head-framed .ck-kicker::before,
.ck-page .ck-section-head-framed .ck-kicker::after{
  content:"" !important;
  display:block !important;
  width:44px !important;
  height:1px !important;
  background:var(--ik-ds-gold, #BA8400) !important;
  opacity:.82 !important;
}
.ck-page .ck-section-head h2,
.ck-page .ck-copy h2{
  color:var(--ik-ds-ink, #0A1628) !important;
}
.ck-page .ck-section-head h2 .ck-title-gold,
.ck-page .ck-copy h2 .ck-title-gold{
  display:block !important;
  margin-top:.06em !important;
  color:var(--ik-ds-gold, #BA8400) !important;
  font-style:italic !important;
  font-weight:400 !important;
}
.ck-territory-layout{
  display:grid !important;
  grid-template-columns:minmax(0, .92fr) minmax(320px, 1.08fr) !important;
  gap:clamp(26px, 4.5vw, 58px) !important;
  align-items:center !important;
  margin-top:clamp(24px, 3vw, 42px) !important;
}
.ck-bovine-figure{
  margin:0 !important;
  padding:clamp(22px, 3vw, 34px) !important;
  border:1px solid rgba(186,132,0,.26) !important;
  border-radius:28px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(251,250,246,.74)) !important;
  box-shadow:0 24px 70px rgba(10,22,40,.08) !important;
}
.ck-bovine-figure img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:390px !important;
  object-fit:contain !important;
  filter:drop-shadow(0 12px 24px rgba(10,22,40,.10)) !important;
}
.ck-bovine-figure figcaption{
  margin-top:18px !important;
  color:var(--ik-ds-body, #4B5870) !important;
  font:500 .9rem/1.65 "DM Sans", system-ui, sans-serif !important;
  text-align:center !important;
}
.ck-territory-cards{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  margin-top:0 !important;
}
.ck-section-action{
  text-align:center !important;
  margin-top:clamp(30px, 4vw, 48px) !important;
}

@media (max-width: 900px){
  .ck-territory-layout{
    grid-template-columns:1fr !important;
  }
  .ck-territory-cards{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 560px){
  .ck-page .ck-section-head-framed .ck-kicker{
    gap:10px !important;
    letter-spacing:.12em !important;
  }
  .ck-page .ck-section-head-framed .ck-kicker::before,
  .ck-page .ck-section-head-framed .ck-kicker::after{
    width:26px !important;
  }
  .ck-territory-cards{
    grid-template-columns:1fr !important;
  }
  .ck-bovine-figure{
    padding:18px !important;
    border-radius:22px !important;
  }
}


/* =========================================================
   ROUND 6.7 — Carne Kosher article: selo/processo page
   - Specific hero background for “carne comum com selo”
   - Inline utensils editorial figure
   - Article navigation aligned with /guias/ structure
   ========================================================= */
.ck-article-hero--selo{
  background:
    linear-gradient(180deg, rgba(10,22,40,.88), rgba(10,22,40,.82)),
    url("../carne-kosher/carne-kosher-selo-hero.webp") center/cover no-repeat !important;
}
.ck-inline-figure{
  margin:28px 0 34px !important;
  border:1px solid rgba(166,140,91,.26) !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 18px 48px rgba(10,22,40,.08) !important;
}
.ck-inline-figure img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:16/9 !important;
  object-fit:cover !important;
}
.ck-inline-figure--utensils{
  margin-top:22px !important;
}
.ck-page .article-nav{
  margin-top:0 !important;
  background:#F7F3EA !important;
  border-top:1px solid rgba(166,140,91,.20) !important;
  border-bottom:1px solid rgba(166,140,91,.12) !important;
}
.ck-page .article-nav-inner{
  max-width:980px !important;
}
.ck-page .article-nav-link{
  color:#0A1628 !important;
}
.ck-page .article-nav-link:hover,
.ck-page .article-nav-link:focus-visible{
  color:#BA8400 !important;
}


/* =========================================================
   ROUND 6.9 — Dianteiro bovino: modal local + imagens editoriais
   ========================================================= */
.ck-article-hero--dianteiro{
  background:
    linear-gradient(180deg, rgba(10,22,40,.86), rgba(10,22,40,.82)),
    url("../carne-kosher/dianteiro-bovino-hero-preparo.webp") center/cover no-repeat !important;
}
.ck-inline-figure figcaption{
  padding:12px 18px 16px !important;
  color:#667085 !important;
  font:500 .88rem/1.55 "DM Sans", system-ui, sans-serif !important;
  background:#fff !important;
}
.ck-inline-figure--diagram img{
  object-fit:contain !important;
  background:#F7F9FB !important;
}
.ck-inline-figure--diagram{
  background:#F7F9FB !important;
}
.ck-proposal-card button.ck-btn{
  cursor:pointer !important;
  font-family:"DM Sans", system-ui, sans-serif !important;
}


/* =========================================================
   ROUND 7.0 — Carne Kosher homepage: cards + CTA spacing
   - Card images updated for Dianteiro and Como organizar
   - CTA links normalize to root #contato
   - Final CTA receives breathing room after explanatory text
   ========================================================= */
.ck-page .ck-final-cta{
  display:inline-flex !important;
  margin-top:clamp(18px, 2.5vw, 28px) !important;
}
.ck-page .ck-section-head > p + .ck-final-cta{
  margin-top:clamp(20px, 2.8vw, 32px) !important;
}
.ck-page .ck-guide-card-media img{
  transition:transform .22s ease, filter .22s ease !important;
}
.ck-page .ck-guide-card:hover .ck-guide-card-media img,
.ck-page .ck-guide-card:focus-within .ck-guide-card-media img{
  transform:scale(1.018) !important;
}


/* =========================================================
   ROUND 7.1 — Carne Kosher articles: CTA canonical + WhatsApp + nav
   ========================================================= */
.ck-proposal-actions{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  margin-top:18px !important;
}
.ck-proposal-card .ck-proposal-actions .ck-btn{
  width:100% !important;
  margin-top:0 !important;
}
.ck-proposal-card .ck-proposal-actions .ck-btn-secondary,
.ck-proposal-card .ck-proposal-actions .ck-btn-whatsapp{
  background:#fff !important;
  border-color:rgba(10,22,40,.28) !important;
  color:#0A1628 !important;
  box-shadow:none !important;
}
.ck-proposal-card .ck-proposal-actions .ck-btn-secondary:hover,
.ck-proposal-card .ck-proposal-actions .ck-btn-secondary:focus-visible,
.ck-proposal-card .ck-proposal-actions .ck-btn-whatsapp:hover,
.ck-proposal-card .ck-proposal-actions .ck-btn-whatsapp:focus-visible{
  background:#F7F3EA !important;
  border-color:#BA8400 !important;
  color:#0A1628 !important;
}
.ck-page .article-nav{
  margin-top:0 !important;
  background:#F7F3EA !important;
  border-top:1px solid rgba(166,140,91,.20) !important;
  border-bottom:1px solid rgba(166,140,91,.12) !important;
}
.ck-page .article-nav-inner{
  max-width:980px !important;
}
.ck-page .article-nav-link{
  color:#0A1628 !important;
}
.ck-page .article-nav-link:hover,
.ck-page .article-nav-link:focus-visible{
  color:#BA8400 !important;
}


/* =========================================================
   ROUND 7.4 — Carne Kosher articles 07/08
   - Hero backgrounds for new published articles
   ========================================================= */
.ck-article-hero--operacao-kosher{
  background:
    linear-gradient(180deg, rgba(10,22,40,.86), rgba(10,22,40,.82)),
    url("../carne-kosher/carne-kosher-nao-e-churrasco-comum-hero.webp") center/cover no-repeat !important;
}
.ck-article-hero--especialista-churrasqueira{
  background:
    linear-gradient(180deg, rgba(10,22,40,.86), rgba(10,22,40,.82)),
    url("../carne-kosher/especialista-observa-antes-churrasqueira-hero.webp") center/cover no-repeat !important;
}
