/* /css/hkx.css */
/* ==========================================================================
   hkx.css — blocos novos desenhados na linguagem do site original:
   cantos de 1.5rem, cartões em tons pastel (amarelo, ciano, azul),
   caixa escura com números em amarelo, Catamaran nos títulos.
   ========================================================================== */
:root { --hkx-r: 1.5rem; }
.hk-hide { display: none !important; }
[id] { scroll-margin-top: 6rem; }
.hkx .sectionheader + * { margin-top: .5rem; }

/* menu vira barra ao rolar; páginas sem topo escuro já nascem com barra */
.nav.hk-nav-solid { position: fixed; padding-top: .5rem; padding-bottom: .5rem; background: var(--main--main-950); box-shadow: 0 8px 24px -12px rgba(0,0,0,.35); }
.nav.hk-nav-always { position: sticky; top: 0; padding-top: .5rem; padding-bottom: .5rem; background: var(--main--main-950); }
.nav.hk-nav-solid .logo-image, .nav.hk-nav-always .logo-image { height: 48px; width: auto; }
@media (max-width: 767px) {
  .quick-stack:has(.accordion) { grid-template-columns: 1fr !important; }
  .quick-stack:has(.accordion) > .w-layout-cell { grid-column: 1 / -1 !important; width: 100%; }
}
@media (max-width: 479px) { .text-size-display-md { font-size: 1.85rem; line-height: 1.15; overflow-wrap: break-word; hyphens: auto; } }
.hk-footer-group { margin: 0 0 1rem; font-size: .88rem; line-height: 1.55; color: var(--neutral--neutral-300); }
.hk-footer-group b { color: #fff; }

.hkx .hk-kicker, .hkx .hk-num-label, .hkx .hk-note { display: block; }
.hkx b { font-weight: 600; }

/* ---------------------------------------------------------------- ecossistema */
.hkx-eco-wrap { padding: 0 1.5rem; }
.hk-eco { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2.5rem; align-items: center; background: var(--main--main-50); border-radius: var(--hkx-r); padding: 2.5rem; }
.hk-eco-hint { grid-column: 1 / -1; margin: 0; color: var(--neutral--neutral-500); font-size: .95rem; }
.hk-eco-map { position: relative; width: 100%; max-width: 26rem; margin: 0 auto; aspect-ratio: 1; }
.hk-eco-ring { position: absolute; inset: 0; width: 100%; height: 100%; }
.hk-eco-ring circle { fill: none; stroke: var(--main--main-200); stroke-width: 1.2; }
.hk-eco-ring line { stroke: var(--main--main-200); stroke-width: 1.2; stroke-dasharray: 3 4; }
.hk-eco-node { all: unset; box-sizing: border-box; cursor: pointer; position: absolute; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; gap: .45rem; width: 8.5rem; text-align: center; }
.hk-eco-dot { display: grid; place-items: center; width: 3.75rem; height: 3.75rem; border-radius: 50%; background: var(--tertiary--tertiary-200); color: var(--dark); transition: all .2s; }
.hk-eco-node:nth-of-type(2) .hk-eco-dot { background: var(--secondary--secondary-300); }
.hk-eco-node:nth-of-type(3) .hk-eco-dot { background: var(--main--main-300); }
.hk-eco-node:nth-of-type(4) .hk-eco-dot { background: var(--neutral--neutral-200); }
.hk-eco-dot svg { width: 1.5rem; height: 1.5rem; }
.hk-eco-label { font: 600 .85rem/1.25 Catamaran, sans-serif; color: var(--dark); }
.hk-eco-node:focus-visible .hk-eco-dot { outline: 3px solid var(--main--main-400); outline-offset: 3px; }
.hk-eco-node[aria-selected="true"] .hk-eco-dot { background: var(--dark); color: var(--tertiary--tertiary-500); transform: scale(1.08); }
.hk-eco-node.is-center .hk-eco-dot { width: 6.25rem; height: 6.25rem; background: var(--accent-dark); }
.hk-eco-node.is-center .hk-eco-dot img { width: 3.8rem; height: auto; }
.hk-eco-node.is-center[aria-selected="true"] .hk-eco-dot { box-shadow: 0 0 0 5px var(--tertiary--tertiary-500); }
.hk-eco-panel { background: var(--dark); color: var(--neutral--neutral-300); border-radius: var(--hkx-r); padding: 2rem; min-height: 12rem; }
.hk-eco-panel[hidden] { display: none; }
.hk-eco-panel h3 { margin: 0 0 .75rem; color: var(--tertiary--tertiary-500); font: 600 1.6rem/1.2 Catamaran, sans-serif; }
.hk-eco-panel p { margin: 0; font-size: 1.05rem; line-height: 1.55; color: var(--neutral--neutral-200); }
@media (max-width: 991px) { .hk-eco { grid-template-columns: 1fr; padding: 1.5rem; } }
@media (max-width: 479px) { .hk-eco-node { width: 6.5rem; } .hk-eco-dot { width: 3rem; height: 3rem; } .hk-eco-node.is-center .hk-eco-dot { width: 4.6rem; height: 4.6rem; } .hk-eco-node.is-center .hk-eco-dot img { width: 2.8rem; } .hk-eco-label { font-size: .74rem; } }

/* ---------------------------------------------------------------- seletor de situação */
.hkx-sit-sec .w-container > :not(header) { margin-left: 1.5rem; margin-right: 1.5rem; }
.hk-sit-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.hk-sit { all: unset; box-sizing: border-box; cursor: pointer; display: flex; flex-direction: column; gap: 1rem; min-height: 15rem; padding: 1.5rem; border-radius: var(--hkx-r); background: var(--tertiary--tertiary-200); color: var(--dark); transition: transform .2s, background-color .2s; }
.hk-sit:nth-child(2) { background: var(--secondary--secondary-300); }
.hk-sit:nth-child(3) { background: var(--main--main-300); }
.hk-sit:hover { transform: translateY(-3px); }
.hk-sit:focus-visible { outline: 3px solid var(--main--main-500); outline-offset: 3px; }
.hk-sit-tag { font: 600 .8rem/1 Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.hk-sit-quote { font: 600 1.35rem/1.25 Catamaran, sans-serif; }
.hk-sit-radio { margin-top: auto; display: inline-flex; align-self: flex-start; align-items: center; gap: .5rem; padding: .55rem 1rem; border-radius: 60rem; background: rgba(255,255,255,.7); font-weight: 600; font-size: .9rem; }
.hk-sit[aria-selected="true"] { background: var(--dark); color: #fff; }
.hk-sit[aria-selected="true"] .hk-sit-tag { color: var(--tertiary--tertiary-500); }
.hk-sit[aria-selected="true"] .hk-sit-radio { background: var(--tertiary--tertiary-500); color: var(--dark); }
.hk-sit[aria-selected="true"] .hk-sit-radio::before { content: "✓"; }
.hk-sit-panel { margin-top: 1.5rem; display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); border-radius: var(--hkx-r); overflow: hidden; background: var(--main--main-50); }
.hk-sit-panel[hidden] { display: none; }
.hk-sit-need { padding: 2.25rem; background: var(--dark); color: #fff; }
.hk-kicker { margin-bottom: .75rem; font: 600 .78rem/1 Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--main--main-500); }
.hk-sit-need .hk-kicker { color: var(--tertiary--tertiary-500); }
.hk-sit-need p { margin: 0; font: 600 1.4rem/1.3 Catamaran, sans-serif; }
.hk-sit-how { padding: 2.25rem; }
.hk-ticks { list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; }
.hk-ticks li { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: .75rem; line-height: 1.5; color: var(--neutral--neutral-700); }
.hk-ticks li::before { content: ""; width: 1.5rem; height: 1.5rem; border-radius: 50%; background: var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='white' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 70% no-repeat; }
.hk-ticks b { color: var(--dark); }
.hk-sit-foot { margin-top: 1.75rem; display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; }
.hk-sit-foot .button.hk-btn-dark { background: var(--accent); color: #fff; }
.hk-link { font-weight: 600; color: var(--main--main-600); text-decoration: none; }
.hk-link::after { content: " →"; }
@media (max-width: 991px) {
  .hk-sit-list { grid-template-columns: 1fr; gap: .75rem; }
  .hk-sit { min-height: 0; }
  .hk-sit-quote { font-size: 1.15rem; }
  .hk-sit-panel { grid-template-columns: 1fr; }
  .hk-sit-need, .hk-sit-how { padding: 1.5rem; }
}

/* ---------------------------------------------------------------- frentes */
#como-atuamos .w-container > :not(header) { margin-left: 1.5rem; margin-right: 1.5rem; }
.hk-fronts { display: grid; gap: 1.5rem; }
.hk-ftabs { display: flex; flex-wrap: wrap; gap: .6rem; }
.hk-ftab { all: unset; box-sizing: border-box; cursor: pointer; padding: .8rem 1.25rem; border-radius: 60rem; background: var(--neutral--neutral-50); border: 1px solid var(--neutral--neutral-100); font: 600 1rem/1.2 Catamaran, sans-serif; color: var(--dark); transition: all .2s; }
.hk-ftab small { display: none; }
.hk-ftab:hover { border-color: var(--main--main-300); }
.hk-ftab:focus-visible { outline: 3px solid var(--main--main-400); }
.hk-ftab[aria-selected="true"] { background: var(--accent); border-color: var(--accent); color: #fff; }
.hk-front { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 1.5rem; }
.hk-front[hidden] { display: none; }
.hk-front > .hk-front-quote { grid-column: 1 / -1; }
.hk-front-body { display: contents; }
.hk-front-quote { margin: 0; padding: 1.75rem 2rem; border-radius: var(--hkx-r); background: var(--tertiary--tertiary-200); font: 600 1.45rem/1.3 Catamaran, sans-serif; color: var(--dark); }
.hk-front-quote span { display: block; margin-bottom: .6rem; font: 600 .78rem/1 Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: var(--neutral--neutral-600); }
.hk-services { list-style: none; margin: 0; padding: 2rem; display: grid; gap: 1.35rem; border-radius: var(--hkx-r); background: var(--neutral--neutral-50); }
.hk-services li { line-height: 1.55; color: var(--neutral--neutral-600); }
.hk-services li b { display: block; margin-bottom: .25rem; font: 600 1.15rem/1.3 Catamaran, sans-serif; color: var(--dark); }
.hk-results { padding: 2rem; border-radius: var(--hkx-r); background: var(--dark); color: var(--neutral--neutral-300); display: grid; gap: 1.25rem; align-content: start; }
.hk-result .hk-num { font: 600 2.6rem/1 Catamaran, sans-serif; color: var(--tertiary--tertiary-500); }
.hk-result .hk-num-label { margin-top: .35rem; color: var(--neutral--neutral-200); line-height: 1.4; }
.hk-results .hk-note { font-size: .78rem; color: var(--neutral--neutral-400); }
.hk-care { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
@media (max-width: 991px) {
  .hk-ftabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: .25rem; scrollbar-width: none; }
  .hk-ftab { flex: none; font-size: .92rem; }
  .hk-front { grid-template-columns: 1fr; }
  .hk-front-quote { font-size: 1.2rem; padding: 1.5rem; }
  .hk-services, .hk-results { padding: 1.5rem; }
}

/* ---------------------------------------------------------------- como começamos */
#como-comecar .w-container > :not(header) { margin-left: 1.5rem; margin-right: 1.5rem; }
.hk-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
.hk-steps li { padding: 1.5rem; border-radius: var(--hkx-r); background: var(--main--main-50); }
.hk-steps li:nth-child(2) { background: var(--secondary--secondary-50); }
.hk-steps li:nth-child(3) { background: #fffbe0; }
.hk-steps li:nth-child(4) { background: var(--neutral--neutral-50); }
.hk-step-n { display: grid; place-items: center; width: 3rem; height: 3rem; margin-bottom: 1.25rem; border-radius: 50%; background: var(--accent); color: #fff; font: 600 1.3rem/1 Catamaran, sans-serif; }
.hk-steps b { display: block; margin-bottom: .5rem; font: 600 1.3rem/1.2 Catamaran, sans-serif; color: var(--dark); }
.hk-steps p { margin: 0; line-height: 1.55; color: var(--neutral--neutral-600); }
@media (max-width: 991px) { .hk-steps { grid-template-columns: 1fr 1fr; } }
@media (max-width: 599px) { .hk-steps { grid-template-columns: 1fr; } }

/* ---------------------------------------------------------------- carrossel de clientes */
#clientes .w-container > :not(header) { margin-left: 1.5rem; margin-right: 1.5rem; }
.hk-marquee { position: relative; overflow: hidden; display: grid; gap: 1rem; padding: .25rem 0;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%); }
.hk-marquee-row { display: flex; width: max-content; }
.hk-marquee-track { display: flex; gap: 1rem; margin: 0; padding: 0 .5rem; list-style: none; animation: hk-marquee 70s linear infinite; }
.hk-marquee-row.is-reverse .hk-marquee-track { animation-direction: reverse; animation-duration: 80s; }
.hk-marquee:hover .hk-marquee-track, .hk-marquee:focus-within .hk-marquee-track, .hk-marquee.is-paused .hk-marquee-track { animation-play-state: paused; }
@keyframes hk-marquee { from { transform: translateX(0); } to { transform: translateX(-100%); } }
.hk-logo { flex: none; display: grid; place-items: center; width: 11rem; height: 5.5rem; padding: .9rem 1.25rem; border-radius: var(--hkx-r); background: var(--neutral--neutral-50); box-sizing: border-box; }
.hk-logo img { display: block; max-width: 100%; max-height: 3.1rem; width: auto; height: auto; object-fit: contain; }
.hk-marquee-foot { display: flex; justify-content: flex-end; margin-top: 1rem; }
.hk-marquee-toggle { cursor: pointer; font-weight: 600; font-size: .85rem; color: var(--neutral--neutral-600); background: #fff; border: 1px solid var(--neutral--neutral-100); border-radius: 60rem; padding: .5rem 1rem; }
.hk-marquee-toggle:focus-visible { outline: 3px solid var(--main--main-400); }
@media (max-width: 767px) { .hk-logo { width: 8.5rem; height: 4.5rem; } .hk-logo img { max-height: 2.5rem; } }
@media (prefers-reduced-motion: reduce) {
  .hk-marquee { -webkit-mask-image: none; mask-image: none; }
  .hk-marquee-row { width: auto; }
  .hk-marquee-track { animation: none; flex-wrap: wrap; justify-content: center; }
  .hk-marquee-track[aria-hidden="true"], .hk-marquee-foot { display: none; }
}

/* fotos novas nos topos das páginas internas */
.hero.company { background-image: linear-gradient(#1f252d66, #1f252d66), url("/assets/img/92a57b6cfe386651.webp") !important; background-position: 0 0, 60% 40% !important; }
.hero.about { background-image: linear-gradient(90deg, rgba(20,34,52,.82) 0%, rgba(20,34,52,.55) 50%, rgba(20,34,52,.2) 100%), url("/assets/img/218c1530058de9f8.webp") !important; background-position: 0 0, 75% 40% !important; }
.hero.individual { background-image: linear-gradient(#1f252d66, #1f252d66), url("/assets/img/b3c80757cbb7edb4.webp") !important; background-position: 0 0, 60% 30% !important; }
.hero.blog { background-image: linear-gradient(#1f252d88, #1f252d88), url("/assets/img/14d2ee098e008945.webp") !important; background-position: 0 0, 70% 30% !important; }

/* ecossistema continua o bloco "Muito mais que uma corretora" */
.section.hkx-cont { margin-top: 0; padding-top: 0; }

/* operadoras: grade discreta */
.hk-partners { list-style: none; margin: 1.5rem; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1rem; }
.hk-partners li { display: grid; place-items: center; height: 5rem; padding: .9rem 1.25rem; border-radius: var(--hkx-r); background: var(--neutral--neutral-50); }
.hk-partners img { max-width: 100%; max-height: 2.2rem; width: auto; height: auto; object-fit: contain; filter: grayscale(1); opacity: .7; }
@media (max-width: 767px) { .hk-partners { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem; } .hk-partners li { height: 4rem; padding: .6rem; } }

/* autoridade: diretoria + lideranças */
.hkx-auth { margin: 0 1.5rem; display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
.hkx-auth-photo { width: 100%; height: auto; aspect-ratio: 2 / 1; object-fit: cover; object-position: 50% 28%; border-radius: var(--hkx-r); display: block; }
.hkx-auth-side { background: var(--dark); color: var(--neutral--neutral-300); border-radius: var(--hkx-r); padding: 1.75rem; display: flex; flex-direction: column; gap: 1.25rem; }
.hkx-leaders { list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; }
.hkx-leaders li { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); gap: .9rem; align-items: center; }
.hkx-leaders img { width: 3.5rem; height: 3.5rem; border-radius: 50%; object-fit: cover; object-position: 50% 20%; }
.hkx-leaders b { display: block; color: #fff; font: 600 1.1rem/1.2 Catamaran, sans-serif; }
.hkx-leaders span { display: block; font-size: .88rem; line-height: 1.35; color: var(--neutral--neutral-300); }
.hkx-auth-note { margin: auto 0 0; color: var(--tertiary--tertiary-500); font: 600 1.15rem/1.35 Catamaran, sans-serif; }
.hkx-auth-side .hk-link { color: #fff; }
@media (min-width: 992px) { .hkx-auth-side { display: grid; grid-template-columns: 1fr auto; align-items: end; column-gap: 2rem; } .hkx-leaders { grid-column: 1 / -1; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1.25rem; } .hkx-leaders li { grid-template-columns: 1fr; align-items: start; align-content: start; gap: .75rem; } .hkx-leaders img { width: 4rem; height: 4rem; } .hkx-auth-note { margin: .5rem 0 0; } }
@media (max-width: 991px) { .hkx-auth-photo { aspect-ratio: 1600 / 1289; } }

/* seletor no celular: abas compactas em vez de 3 cartões grandes */
@media (max-width: 767px) {
  .hk-sit-list { display: flex; gap: .5rem; overflow-x: auto; scrollbar-width: none; }
  .hk-sit { flex: 1 0 auto; min-height: 0; padding: .7rem 1rem; border-radius: 60rem; }
  .hk-sit-quote, .hk-sit-radio { display: none; }
  .hk-sit-tag { font-size: .8rem; }
  .hk-sit-panel { margin-top: 1rem; }
  .hk-sit-need p { font-size: 1.15rem; }
}

/* próxima frente */
.hk-next { all: unset; cursor: pointer; grid-column: 1 / -1; justify-self: end; font-weight: 600; color: var(--main--main-600); padding: .4rem 0; }
.hk-next:focus-visible { outline: 3px solid var(--main--main-400); }
.homehero-button-next, .homehero-button-prev { display: none !important; }

/* ================================================================ ecossistema no estilo da apresentação */
.hkx-eco {
  position: relative; overflow: hidden; border-radius: var(--hkx-r); color: #fff;
  display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 2rem; align-items: center;
  padding: 3rem 2.5rem 3.5rem;
  background:
    radial-gradient(60% 70% at 18% 30%, rgba(255,255,255,.28), transparent 60%),
    radial-gradient(50% 60% at 90% 85%, rgba(125,211,252,.55), transparent 60%),
    linear-gradient(120deg, #0b4fd6 0%, #1570e8 45%, #2aa8f0 100%);
}
.hkx-eco::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .18; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.hkx-eco-copy { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 1rem; }
.hkx-eco-kicker { margin: 0; font-size: .8rem; opacity: .85; }
.hkx-eco-title { margin: 0; font: 700 clamp(2.2rem, 4vw, 3.4rem)/.95 Catamaran, sans-serif; text-transform: uppercase; letter-spacing: -.02em; color: #fff; }
.hkx-eco-title span { display: block; margin-top: .6rem; text-transform: none; letter-spacing: 0; font-weight: 500; font-size: .62em; line-height: 1.05; color: var(--tertiary--tertiary-500); }
.hkx-eco-hint { margin: .5rem 0 0; font-size: .95rem; line-height: 1.5; color: rgba(255,255,255,.82); }
.hkx-eco-panel { padding: 1.4rem 1.5rem; border-radius: 1rem; background: rgba(8, 36, 82, .55); border: 1px solid rgba(255,255,255,.22); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); min-height: 11rem; }
.hkx-eco-panel[hidden] { display: none; }
.hkx-eco-panel h3 { margin: 0 0 .6rem; font: 600 1.35rem/1.2 Catamaran, sans-serif; color: var(--tertiary--tertiary-500); }
.hkx-eco-panel p { margin: 0; font-size: 1rem; line-height: 1.55; color: rgba(255,255,255,.9); }
.hkx-eco-sign { position: absolute; right: 1.75rem; bottom: 1.1rem; margin: 0; z-index: 2; font: 800 .95rem/1 Catamaran, sans-serif; text-transform: uppercase; letter-spacing: -.01em; }
.hkx-eco-sign em { font-family: "Brush Script MT", cursive; text-transform: none; font-weight: 400; font-size: 1.25em; }

.hkx-eco-map { position: relative; width: 100%; max-width: 34rem; margin: 0 auto; aspect-ratio: 1; }
.hkx-eco-disc { position: absolute; left: 4.5%; top: 4.5%; width: 91%; height: 91%; border-radius: 50%;
  background: radial-gradient(circle at 40% 45%, rgba(6, 60, 130, .75), rgba(20, 150, 200, .55) 70%, rgba(40, 180, 220, .45)); }
.hkx-eco-ring { position: absolute; left: 23.8%; top: 23.8%; width: 52.4%; height: 52.4%; border-radius: 50%; border: 1.5px solid rgba(255,255,255,.85); }
.hkx-eco-plus { position: absolute; left: 75.7%; top: 50.9%; transform: translate(-50%, -50%); width: 9%; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: rgba(13, 110, 150, .85); border: 1.5px solid rgba(255,255,255,.8); }
.hkx-eco-plus svg { width: 55%; height: 55%; color: #fff; }

.hkx-node { all: unset; box-sizing: border-box; cursor: pointer; position: absolute; transform: translate(-50%, -50%); z-index: 1;
  display: flex; flex-direction: column; align-items: center; gap: .55rem; width: 26%; text-align: center; }
.hkx-node-dot { display: grid; place-items: center; width: 13.5cqw; width: clamp(3rem, 8.2vw, 5.4rem); aspect-ratio: 1; border-radius: 50%;
  background: rgba(20, 130, 170, .55); border: 1.5px solid rgba(255,255,255,.9); color: #fff; transition: transform .25s, background-color .25s, box-shadow .25s; }
.hkx-node.is-m .hkx-node-dot { background: rgba(160, 225, 250, .35); }
.hkx-node-dot svg { width: 52%; height: 52%; }
.hkx-node-label { font-size: .82rem; line-height: 1.2; color: rgba(255,255,255,.95); text-shadow: 0 1px 6px rgba(0,30,80,.35); }
.hkx-node:hover .hkx-node-dot { transform: scale(1.06); }
.hkx-node:focus-visible .hkx-node-dot { outline: 3px solid var(--tertiary--tertiary-500); outline-offset: 3px; }
.hkx-node[aria-selected="true"] .hkx-node-dot { background: #0a2e66; box-shadow: 0 0 0 4px rgba(250, 200, 0, .9); }
.hkx-node[aria-selected="true"] .hkx-node-label { color: var(--tertiary--tertiary-500); font-weight: 600; }
.hkx-node.is-core { width: auto; }
.hkx-node.is-core .hkx-node-dot { width: clamp(5rem, 13vw, 8.5rem); background: transparent; }
.hkx-node.is-core .hkx-node-dot img { width: 72%; height: auto; }
.hkx-node.is-core[aria-selected="true"] .hkx-node-dot { background: rgba(10, 46, 102, .6); }

@media (max-width: 991px) {
  .hkx-eco { grid-template-columns: 1fr; padding: 2rem 1.25rem 3rem; }
  .hkx-eco-map { order: -1; max-width: 30rem; }
  .hkx-eco-copy { order: 0; }
  .hkx-eco-title, .hkx-eco-kicker { display: none; }
}
@media (max-width: 479px) {
  .hkx-node-label { font-size: .66rem; }
  .hkx-node-dot { width: 2.9rem; }
  .hkx-node.is-core .hkx-node-dot { width: 4.6rem; }
}
@media (prefers-reduced-motion: reduce) { .hkx-node-dot { transition: none; } }
.hkx-node.is-core .hkx-node-dot { border: 1.5px solid rgba(255,255,255,.9); }

/* ================================================================ momentos (estilo da apresentação) */
.hkx-lv { margin: 0 1.5rem; border-radius: var(--hkx-r); background: #118fe6; color: #0a1a2e; padding: 3rem 2.5rem 2.5rem; }
.hkx-lv-head { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 1rem 3rem; align-items: end; margin-bottom: 2.5rem; }
.hkx-lv-head h2 { margin: 0; color: #fff; }
.hkx-lv-head p { margin: 0; font-size: 1.1rem; line-height: 1.5; color: rgba(255,255,255,.9); }
.hkx-lv-cols { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hkx-lv-cols li { display: flex; flex-direction: column; gap: 1rem; padding: 0 1.75rem; }
.hkx-lv-cols li:first-child { padding-left: 0; }
.hkx-lv-cols li:last-child { padding-right: 0; }
.hkx-lv-cols li + li { border-left: 1px solid rgba(10, 26, 46, .45); }
.hkx-lv-chip { align-self: flex-start; background: #000; color: #fff; padding: .55rem .9rem; font-size: .95rem; font-weight: 300; }
.hkx-lv-chip b { font-weight: 700; }
.hkx-lv-quote { margin: 0; min-height: 4.2em; color: #fff; font: 500 1.2rem/1.4 Inter, sans-serif; }
.hkx-lv-cols img { width: 55%; max-width: 12rem; height: auto; margin: .25rem auto; display: block; }
.hkx-lv-need, .hkx-lv-how { margin: 0; font-size: .95rem; line-height: 1.5; color: rgba(255,255,255,.92); }
.hkx-lv-need b { color: #fff; }
.hkx-lv-how { padding: .9rem 1rem; border-radius: .75rem; background: rgba(8, 36, 82, .35); }
.hkx-lv-how b { color: var(--tertiary--tertiary-500); }
.hkx-lv-cta { margin-top: auto; align-self: flex-start; padding: .7rem 1.2rem; border-radius: 60rem; background: #fff; color: #0a2e66; font-weight: 700; font-size: .95rem; text-decoration: none; transition: background-color .2s; }
.hkx-lv-cta:hover { background: var(--tertiary--tertiary-500); }
.hkx-lv-cta:focus-visible { outline: 3px solid var(--tertiary--tertiary-500); outline-offset: 3px; }
@media (max-width: 991px) {
  .hkx-lv { padding: 2rem 1.25rem; }
  .hkx-lv-head { grid-template-columns: 1fr; margin-bottom: 1.5rem; }
  .hkx-lv-cols { grid-template-columns: 1fr; }
  .hkx-lv-cols li, .hkx-lv-cols li:first-child, .hkx-lv-cols li:last-child { padding: 1.5rem 0; }
  .hkx-lv-cols li + li { border-left: 0; border-top: 1px solid rgba(10, 26, 46, .45); }
  .hkx-lv-quote { min-height: 0; }
  .hkx-lv-cols img { width: 40%; }
}

/* momentos: alinhamento */
.hkx-lv-head h2 { font-size: clamp(2.1rem, 3.4vw, 3rem); }
.hkx-lv-quote { min-height: 5.6em; }
.hkx-lv-cols img { height: 9.5rem; width: auto; object-fit: contain; }
.hkx-lv-need { min-height: 4.5em; }
.hkx-lv-how { min-height: 7.2em; }
.hkx-lv-cta { white-space: nowrap; }
@media (max-width: 991px) { .hkx-lv-quote, .hkx-lv-need, .hkx-lv-how { min-height: 0; } .hkx-lv-cols img { height: 7rem; } }

/* ================================================================ frentes (estilo da apresentação) */
#como-atuamos .hkx-fronts { margin: 0 1.5rem; border-radius: var(--hkx-r); padding: 2.25rem;
  background: radial-gradient(70% 90% at 25% 20%, #fbe89a 0%, transparent 60%), linear-gradient(120deg, #f6db72 0%, #eab52c 60%, #dd9a1c 100%); }
.hkx-fgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.hkx-fcard { all: unset; box-sizing: border-box; cursor: pointer; position: relative; display: flex; flex-direction: column; gap: 1rem;
  background: #fff; border-radius: 1.25rem; padding: 2.1rem 1.6rem 1.9rem; min-height: 21rem; color: #111; transition: transform .2s, box-shadow .2s; }
.hkx-fcard:hover { transform: translateY(-3px); box-shadow: 0 14px 30px -18px rgba(90, 60, 0, .6); }
.hkx-fcard:focus-visible { outline: 3px solid var(--dark); outline-offset: 3px; }
.hkx-fcard[aria-selected="true"] { box-shadow: 0 0 0 3px var(--dark), 0 18px 36px -18px rgba(60, 40, 0, .7); }
.hkx-dot { position: absolute; width: .55rem; height: .55rem; border-radius: 50%; background: #f1cd52; }
.hkx-dot.tl { top: .9rem; left: .9rem; } .hkx-dot.tr { top: .9rem; right: .9rem; } .hkx-dot.bl { bottom: .9rem; left: .9rem; } .hkx-dot.br { bottom: .9rem; right: .9rem; }
.hkx-fcard-t { font: 500 1.3rem/1.15 Inter, sans-serif; letter-spacing: -.01em; }
.hkx-fcard img { height: 7.5rem; width: auto; max-width: 100%; object-fit: contain; align-self: center; margin-top: auto; }
.hkx-fcard-k { font-size: .85rem; line-height: 1.35; color: #444; border-top: 1px dashed #e3c35a; padding-top: .8rem; }
.hkx-fcard-k b { display: block; font: 700 1.5rem/1 Catamaran, sans-serif; color: #111; }
.hkx-fpanel { margin-top: 1.25rem; display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 1.25rem; }
.hkx-fpanel[hidden] { display: none; }
.hkx-fpanel-l { background: #fff; border-radius: 1.25rem; padding: 1.75rem 2rem; }
.hkx-fpanel-r { background: var(--dark); color: #fff; border-radius: 1.25rem; padding: 1.75rem 2rem; display: grid; gap: 1rem; align-content: start; }
.hkx-fq { margin: 0 0 1.5rem; font: 600 1.25rem/1.35 Catamaran, sans-serif; color: #111; }
.hkx-fq span, .hkx-fsub { display: block; margin: 0 0 .6rem; font: 600 .75rem/1 Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; color: #a4750c; }
.hkx-fpanel-r .hkx-fsub { color: var(--tertiary--tertiary-500); }
.hkx-fpanel-l ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: .9rem 1.5rem; }
.hkx-fpanel-l li { font-size: .95rem; line-height: 1.45; color: #475463; padding-left: 1.1rem; position: relative; }
.hkx-fpanel-l li::before { content: ""; position: absolute; left: 0; top: .5em; width: .45rem; height: .45rem; border-radius: 50%; background: #eab52c; }
.hkx-fpanel-l li b { color: #111; }
.hkx-fpanel-r div strong { display: block; font: 700 2.3rem/1 Catamaran, sans-serif; color: var(--tertiary--tertiary-500); }
.hkx-fpanel-r div span { display: block; margin-top: .25rem; font-size: .92rem; color: rgba(255,255,255,.85); }
.hkx-fnote { margin: .25rem 0 0; font-size: .75rem; line-height: 1.4; color: rgba(255,255,255,.55); }
.hkx-fpanel .hk-next { display: none; }
@media (max-width: 991px) {
  #como-atuamos .hkx-fronts { padding: 1.25rem; }
  .hkx-fgrid { grid-template-columns: 1fr 1fr; gap: .75rem; }
  .hkx-fcard { min-height: 15rem; padding: 1.6rem 1.1rem 1.4rem; }
  .hkx-fcard-t { font-size: 1.1rem; }
  .hkx-fcard img { height: 5rem; }
  .hkx-fpanel { grid-template-columns: 1fr; }
  .hkx-fpanel-l ul { grid-template-columns: 1fr; }
  .hkx-fpanel-l, .hkx-fpanel-r { padding: 1.4rem; }
}
.hkx-pf { margin: 1.25rem 0 0; font-size: .95rem; color: var(--neutral--neutral-600); } .hkx-pf .hk-link { font-size: .95rem; }

/* acordeões nas faixas tonalizadas: sem caixa branca, só linhas finas */
.fx-on .fx-tone-soft .accordion { background-color: transparent !important; }
.fx-on .fx-tone-soft .accordion-trigger, .fx-on .fx-tone-soft .home-plans-links .accordion { border-color: rgba(31, 37, 45, .12) !important; }
.fx-on .fx-tone-soft .accordion-arrow { background-color: rgba(255, 255, 255, .6); }
.home-plans-links .button.fixed { height: auto; min-height: 3rem; padding-top: .75rem; padding-bottom: .75rem; text-align: center; line-height: 1.2; }

/* Sobre · diretoria em carrossel contínuo */
.hkx-board{overflow:hidden;padding:.5rem 0 1rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.hkx-board-track{display:flex;gap:1.5rem;width:max-content;margin:0;padding:0;list-style:none;animation:hkx-board-roll 50s linear infinite}
.hkx-board:hover .hkx-board-track,.hkx-board:focus-within .hkx-board-track{animation-play-state:paused}
.hkx-board-item{flex:none}
.hkx-board .board{width:19rem;height:26rem;transition:transform .4s ease}
.hkx-board .board:hover{transform:translateY(-4px)}
.hkx-board .board-image{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.hkx-board .board-main{padding:1rem 1.25rem}
.hkx-board .board-main h3{font-size:1.25rem;line-height:1.2;margin:0}
.hkx-board .board-main div{font-size:.875rem;line-height:1.3}
@keyframes hkx-board-roll{to{transform:translateX(calc(-50% - .75rem))}}
@media (max-width:767px){.hkx-board .board{width:15rem;height:20rem}.hkx-board-track{gap:1rem;animation-duration:40s}@keyframes hkx-board-roll{to{transform:translateX(calc(-50% - .5rem))}}}
@media (prefers-reduced-motion:reduce){.hkx-board{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.hkx-board-track{animation:none;padding-inline:16px}.hkx-board-item[aria-hidden]{display:none}}

/* Sobre · "A Healthink." título à esquerda, texto ocupando a largura à direita */
#intro .sectionheader { display: block; }
#intro .sectionheader > .cell { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr); column-gap: 4rem; row-gap: 1.25rem; align-items: start; }
#intro .sectionheader > .cell > h2 { grid-row: 1 / span 3; margin: 0; justify-self: start; text-align: left; }
#intro .sectionheader > .cell > p { grid-column: 2; margin: 0; font-size: 1.25rem; line-height: 1.55; max-width: 44rem; }
@media (max-width: 767px) { #intro .sectionheader > .cell { grid-template-columns: 1fr; } #intro .sectionheader > .cell > h2 { grid-row: auto; } #intro .sectionheader > .cell > p { grid-column: 1; font-size: 1.1rem; } }

/* Home · diretoria: frase e link sobre a foto */
.hkx-auth { position: relative; margin: 0 1.5rem; display: block; border-radius: var(--hkx-r); overflow: hidden; }
.hkx-auth-photo { border-radius: 0; }
.hkx-auth-cap { position: absolute; inset: auto 0 0 0; padding: 6rem 2.5rem 2rem; display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; background: linear-gradient(to top, rgba(12, 22, 36, .92) 0%, rgba(12, 22, 36, .6) 55%, rgba(12, 22, 36, 0) 100%); }
.hkx-auth-cap .hkx-auth-note { margin: 0; max-width: 34rem; font-size: 1.4rem; text-align: left; text-shadow: 0 1px 12px rgba(0,0,0,.35); }
.hkx-auth-cap .hk-link { color: #fff; white-space: nowrap; }
@media (max-width: 767px) { .hkx-auth { margin: 0 1rem; } .hkx-auth-photo { aspect-ratio: 1600 / 1289; object-position: 50% 0; } .hkx-auth-cap { flex-direction: column; align-items: flex-start; gap: .75rem; padding: 4rem 1.25rem 1.25rem; } .hkx-auth-cap .hkx-auth-note { font-size: 1.05rem; } }

/* Home · últimos posts: 4 lado a lado no desktop */
@media (min-width: 992px) {
  .hkx-posts { padding: 0 1.5rem; }
  .hkx-posts .swiper-wrapper { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; transform: none !important; }
  .hkx-posts .swiper-slide { width: auto !important; margin: 0 !important; }
  .hkx-posts .post-thumb { width: 100%; height: auto; aspect-ratio: 3 / 4; }
  .hkx-posts .post-thumb img { width: 100%; height: 100%; object-fit: cover; }
  .hkx-posts .post-thumb-main { padding: 1.25rem; }
  .hkx-posts .post-thumb-main h3, .hkx-posts .post-thumb-main [class*="text-size"] { font-size: 1.2rem; line-height: 1.25; }
}

.hk-footer-group a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.hk-footer-group a:hover { opacity: .8; }

/* Sobre · hero com o diretor no palco: degradê colorido da home à esquerda, foto à direita */
.hero.about { background-color: var(--accent-dark) !important; background-image: url("/assets/img/5c60cfd592261e30.webp") !important; background-size: auto 100% !important; background-position: right center !important; background-repeat: no-repeat !important; }
.hero.about .hero-blob.primary { inset: -30% auto auto -15%; }
.hero.about .hero-blob.yellow { inset: auto auto -28% 12%; width: 26rem; }
@media (max-width: 767px) {
  .hero.about { background-image: linear-gradient(0deg, #0e4c7e 0%, rgba(14,76,126,.85) 45%, rgba(14,76,126,0) 75%), url("/assets/img/5c60cfd592261e30.webp") !important; background-size: 100% 100%, cover !important; background-position: 0 0, 65% top !important; }
  .hero.about .hero-blob.yellow { inset: auto auto -20% -10%; width: 70vw; }
}

/* Sobre · Propósito, Missão, Visão e Valores com o mesmo tamanho */
.grid._12:has(> .brand-pillar) { align-items: stretch; grid-auto-rows: auto; }
.brand-pillar { align-self: stretch; min-height: 23rem; display: flex; flex-direction: column; justify-content: space-between; }
@media (max-width: 767px) { .brand-pillar { min-height: 16rem; } }

/* Família visual única: ecossistema, frentes e momento */
.hkx-eco-title { text-transform: none; letter-spacing: -.01em; line-height: 1.05; }
.hkx-eco-title span { font-size: .7em; }
.hkx-lv-chip { background: rgba(255,255,255,.16); color: #fff; border-radius: 999px; padding: .4rem .9rem; font-weight: 600; display: inline-flex; gap: .5rem; align-items: center; }
.hkx-lv-chip i { font-style: normal; font-weight: 700; color: var(--tertiary--tertiary-500); }
.hkx-lv-chip i::after { content: " ·"; color: rgba(255,255,255,.6); }
.hkx-lv-head h2 { color: #fff; }
#como-atuamos .hkx-fpanel-l ul { gap: .75rem 1.5rem; }
#como-atuamos .hkx-fpanel-l ul li { padding: .1rem 0 .1rem 1.1rem; }

/* ============ auditoria set/2026 ============ */
/* A1 · hero da home */
.hkx-hero-kicker { margin: 0 0 1rem; font: 600 .95rem/1 Catamaran, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: var(--tertiary--tertiary-500); }
.hero-heading.hkx-hero-h1 { font-size: clamp(2rem, 4.2vw, 3.6rem); line-height: 1.08; max-width: 22ch; margin-left: auto; margin-right: auto; }
.hkx-hero-ctas { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; align-items: center; justify-content: center; }
.hkx-hero-link { color: #fff; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.hkx-hero-link:hover { color: var(--tertiary--tertiary-500); }
/* A4 · diagnóstico gratuito */
.hkx-dx { margin: 0 1.5rem; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 2.5rem; align-items: center; padding: 3rem 2.75rem; border-radius: var(--hkx-r); background: var(--dark); color: #fff; }
.hkx-dx-kicker { margin: 0 0 .75rem; font-size: .85rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--tertiary--tertiary-500); }
.hkx-dx-title { margin: 0 0 1rem; font: 700 clamp(1.8rem, 3vw, 2.6rem)/1.1 Catamaran, sans-serif; color: #fff; }
.hkx-dx-lead { margin: 0 0 1.75rem; color: rgba(255,255,255,.82); font-size: 1.1rem; line-height: 1.5; }
.hkx-dx-cta { background: var(--tertiary--tertiary-500) !important; color: #111 !important; border-color: transparent !important; }
.hkx-dx-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; }
.hkx-dx-list li { padding: 1.1rem 1.25rem; border-radius: 1rem; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12); }
.hkx-dx-list b { display: block; margin-bottom: .3rem; color: #fff; font: 600 1.1rem/1.25 Catamaran, sans-serif; }
.hkx-dx-list span { color: rgba(255,255,255,.75); font-size: .95rem; line-height: 1.45; }
/* A5 · cases */
.hkx-cases { list-style: none; margin: 0 1.5rem; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.hkx-cases li { display: flex; flex-direction: column; gap: .75rem; padding: 1.75rem; border-radius: var(--hkx-r); background: var(--main--main-50); }
.hkx-case-tag { align-self: flex-start; padding: .3rem .7rem; border-radius: 999px; background: #fff4c2; color: #6b5200; font-size: .75rem; font-weight: 700; }
.hkx-case-who { margin: 0; font: 700 1.15rem/1.2 Catamaran, sans-serif; color: var(--dark); }
.hkx-case-pain { margin: 0; color: #2c3845; font-size: 1rem; line-height: 1.45; }
.hkx-case-did { margin: 0; color: #4a5866; font-size: .95rem; line-height: 1.45; }
.hkx-case-num { margin: auto 0 0; padding-top: 1rem; border-top: 1px solid rgba(31,37,45,.12); display: flex; align-items: baseline; gap: .6rem; }
.hkx-case-num b { font: 700 2.4rem/1 Catamaran, sans-serif; color: var(--main--main-600, #1377c0); }
.hkx-case-num span { color: #2c3845; font-size: .95rem; }
/* M3/M4 · Grandes Empresas: frentes em detalhe + portal */
.hkx-fdet-list { margin: 0 1.5rem; display: grid; gap: 1.5rem; }
.hkx-fdet { padding: 1.75rem; border-radius: var(--hkx-r); background: linear-gradient(135deg, #f7dd7e, #e7ae25); }
.hkx-fdet-t { margin: 0 0 1rem; font: 700 1.6rem/1.15 Catamaran, sans-serif; color: #111; }
.hkx-fdet .hkx-fpanel { display: grid !important; margin: 0; }
.hkx-portal { margin: 0 1.5rem; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2.5rem; align-items: center; }
.hkx-portal img { width: 100%; height: auto; border-radius: var(--hkx-r); background: #eef1f4; }
.hkx-portal-list { margin: 1.25rem 0 0; padding-left: 1.2rem; display: grid; gap: .5rem; color: #2c3845; line-height: 1.45; }
/* B1 · nota do 60% legível */
.hkx-fnote { font-size: .85rem !important; line-height: 1.45 !important; opacity: .9 !important; }
/* B3 · contraste e áreas de toque */
.sectionheader .text-size-body-lg { color: #3f4d5b; }
@media (max-width: 767px) { .footer-link { display: inline-flex; align-items: center; min-height: 44px; } }
/* M6 · celular */
.hkx-sticky { display: none; }
@media (max-width: 767px) {
  .hkx-sticky { display: block; position: fixed; left: 16px; right: 16px; bottom: calc(12px + env(safe-area-inset-bottom)); z-index: 60; padding: .95rem 1rem; border-radius: 999px; background: var(--tertiary--tertiary-500); color: #111; text-align: center; font-weight: 700; text-decoration: none; box-shadow: 0 8px 24px rgba(0,0,0,.18); transform: translateY(160%); transition: transform .3s ease; }
  .hkx-sticky.on { transform: none; }
  .hero .hero-slide-content { min-height: 0 !important; padding-top: 7.5rem !important; padding-bottom: 3.5rem !important; }
  .hkx-lv-cols img { height: 5rem !important; }
  .hkx-dx, .hkx-portal { grid-template-columns: 1fr; padding: 2rem 1.25rem; margin: 0 1rem; }
  .hkx-portal { padding: 0; }
  .hkx-cases { grid-template-columns: 1fr; margin: 0 1rem; }
  .hkx-fdet-list { margin: 0 1rem; } .hkx-fdet { padding: 1.25rem; }
}
@media (min-width: 768px) and (max-width: 991px) { .hkx-cases { grid-template-columns: 1fr; } .hkx-dx, .hkx-portal { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .hkx-sticky { transition: none; } }

/* M6 · celular mais curto: hero no tamanho do conteúdo e blocos longos em faixa deslizante */
@media (max-width: 767px) {
  .hero .hero-slide-content { height: auto !important; min-height: 0 !important; padding: 7.5rem 0 3.5rem !important; }
  .hkx-cases, .hkx-lv-cols, #como-comecar .hk-steps { display: flex !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: .9rem !important; padding: 0 1rem .75rem !important; margin: 0 !important; scrollbar-width: none; }
  .hkx-cases::-webkit-scrollbar, .hkx-lv-cols::-webkit-scrollbar, #como-comecar .hk-steps::-webkit-scrollbar { display: none; }
  .hkx-cases > li, .hkx-lv-cols > li, #como-comecar .hk-steps > li { flex: 0 0 82%; scroll-snap-align: start; }
  .hkx-lv-cols > li { border: 0 !important; padding: 1.25rem !important; border-radius: 1rem; background: rgba(255,255,255,.1); }
  .hkx-lv { padding-left: 0 !important; padding-right: 0 !important; } .hkx-lv-head { padding: 0 1.25rem; }
  .hkx-swipe-hint { display: block; margin: .25rem 1rem 0; font-size: .8rem; opacity: .7; }
  #para-quem .hkx-swipe-hint { color: #fff; }
  .hkx-operadoras-sec { display: none; }
}
.hkx-swipe-hint { display: none; }

.hkx-fdet summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.hkx-fdet summary::-webkit-details-marker { display: none; }
.hkx-fdet summary::after { content: "+"; font: 600 1.6rem/1 Catamaran, sans-serif; color: #111; }
.hkx-fdet[open] summary::after { content: "–"; }
.hkx-fdet[open] summary { margin-bottom: 1rem; }
.hkx-fdet .hkx-fdet-t { margin: 0; }

@media (min-width: 992px) { .hero-heading.hkx-hero-h1 { max-width: 30ch; font-size: clamp(2.2rem, 3.6vw, 3.4rem); } }

/* auditoria · fase 2 */
/* prova de clientes na primeira dobra */
.hkx-hero-logos { margin-top: 2.5rem; display: flex; flex-direction: column; align-items: center; gap: .9rem; }
.hkx-hero-logos span { font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; color: rgba(255,255,255,.7); }
.hkx-hero-logos ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 1.25rem 2.25rem; align-items: center; }
.hkx-hero-logos img { height: 2.1rem; width: auto; max-width: 8rem; object-fit: contain; filter: brightness(0) invert(1); opacity: .85; }
@media (max-width: 767px) { .hkx-hero-logos ul { gap: 1rem 1.5rem; } .hkx-hero-logos img { height: 1.6rem; max-width: 5.5rem; } }
/* diferenciais nomeados */
.hkx-difs { list-style: none; margin: 0 1.5rem; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.hkx-difs li { padding: 1.5rem; border-radius: var(--hkx-r); border: 1px solid rgba(31,37,45,.1); background: #fff; display: flex; flex-direction: column; gap: .6rem; }
.hkx-dif-n { font: 700 .9rem/1 Catamaran, sans-serif; color: var(--main--main-500); }
.hkx-difs b { font: 700 1.2rem/1.2 Catamaran, sans-serif; color: var(--dark); }
.hkx-difs p { margin: 0; color: #3f4d5b; font-size: .95rem; line-height: 1.5; }
@media (max-width: 991px) { .hkx-difs { grid-template-columns: 1fr 1fr; } }
@media (max-width: 767px) { .hkx-difs { grid-template-columns: 1fr; margin: 0 1rem; } .hkx-difs li { padding: 1.1rem 1.25rem; } }
/* Login discreto: não compete com o CTA principal */
.nav a.button.secondary[href*="corporate/login"] { border-color: transparent !important; padding-left: .75rem; padding-right: .75rem; text-decoration: underline; text-underline-offset: 4px; }
/* hero: CTA sem esmaecer na entrada */
.hero .button.negative, .hero .hkx-hero-ctas { opacity: 1 !important; }
/* foco visível para teclado */
a:focus-visible, button:focus-visible, summary:focus-visible, select:focus-visible, input:focus-visible { outline: 3px solid #fac800 !important; outline-offset: 3px; }
/* espaços vazios herdados entre título e conteúdo */
.about-number-header { margin-bottom: 4rem !important; }
.section-2 header + * , .section-2 header { margin-bottom: 0; }
@media (max-width: 767px) { .about-number-header { margin-bottom: 2.5rem !important; } }
@media (max-width: 767px) {
  .hkx-difs { display: flex !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: .9rem; padding: 0 1rem .75rem; margin: 0 !important; scrollbar-width: none; }
  .hkx-difs::-webkit-scrollbar { display: none; }
  .hkx-difs > li { flex: 0 0 78%; scroll-snap-align: start; }
  #portal .hkx-portal img { max-height: 13rem; object-fit: cover; object-position: 30% 20%; }
  #portal .hkx-portal-list { display: none; }
}

.hkx-pf-line { margin: 0 auto; padding: 0 1rem 1rem; text-align: center; font-size: .95rem; color: #3f4d5b; }
.hkx-pf-line a { color: var(--main--main-500); font-weight: 600; }
/* portal: respiro entre título, texto e lista */
.hkx-portal h2 { margin: 0 0 1rem !important; line-height: 1.15; }
.hkx-portal p { margin: 0 0 1.5rem !important; line-height: 1.5; }
.hkx-portal-list { margin: 0 !important; gap: .65rem !important; }
.hkx-portal-list li { margin: 0 !important; padding: 0 !important; line-height: 1.5; }
/* hero: quebra de linha definida no desktop */
@media (min-width: 768px) { .hero-heading.hkx-hero-h1 { max-width: none; white-space: normal; } }
@media (max-width: 767px) { .hkx-br-d { display: none; } }
@media (min-width: 768px) { .hkx-l1 { display: block; } }
@media (max-width: 991px) { body:has(#frentes-detalhe) .hkx-portal img { order: 2; } body:has(#frentes-detalhe) .hkx-portal > div { order: 1; } }
@media (max-width: 767px) { .hkx-portal { gap: 1rem !important; } .hkx-portal p { margin-bottom: .5rem !important; } }
/* selo LGPD do rodapé: inteiro em qualquer tela */
.footer-socials .container-2 { background-size: contain !important; background-repeat: no-repeat !important; background-position: left center !important; aspect-ratio: 1800 / 614; width: 13.5rem; min-width: 0 !important; max-width: 100%; min-height: 0 !important; max-height: none !important; height: auto; margin: 0 0 0 auto; flex: none; }
@media (max-width: 767px) { .footer-socials { flex-wrap: wrap; } .footer-socials .container-2 { margin: .75rem 0 0; width: 12rem; } }
/* títulos de hero com linhas equilibradas (sem palavra sozinha na última linha) */
.hero h1, .hero .text-size-display-lg, .hero-heading { text-wrap: balance; }

/* momentos: contraste e ritmo (desktop) */
.hkx-lv { background: #0d72c4 !important; }
.hkx-lv-need { color: #fff !important; }
.hkx-lv-head p { color: rgba(255,255,255,.95) !important; }
.hkx-lv-cols li + li { border-left-color: rgba(255,255,255,.25) !important; }
@media (min-width: 992px) {
  .hkx-lv-quote { min-height: 4.2em; }
  .hkx-lv-cols img { height: 7.5rem; margin: 0 auto; }
  .hkx-lv-need { min-height: 3em; }
  .hkx-lv-cols li { gap: .9rem; }
}
@media (min-width: 992px) { .hkx-lv { margin-left: 0 !important; margin-right: 0 !important; } }
@media (min-width: 768px) and (max-width: 991px) { .hkx-lv { margin-left: 1rem !important; margin-right: 1rem !important; } }
/* hero: selo mais próximo do título */
.hkx-hero-kicker { margin-bottom: -1.25rem !important; }
@media (max-width: 767px) { .hkx-hero-kicker { margin-bottom: -.5rem !important; } }

/* ============ posts do blog: leitura confortável ============ */
.wf-layout-layout:has(> .w-layout-cell > body:has(.post-header) .w-richtext) { display: block !important; max-width: 46rem; margin: 0 auto !important; padding: 0 1.25rem; }
.wf-layout-layout:has(> .w-layout-cell > body:has(.post-header) .w-richtext) > .w-layout-cell:not(:has(body:has(.post-header) .w-richtext)) { display: none !important; }
.post-header { max-width: 46rem; margin: 0 auto !important; padding: 0 1.25rem; display: block !important; }
.post-header h1 { text-wrap: balance; line-height: 1.12; margin: .5rem 0 1rem; }
.post-banner { border-radius: var(--hkx-r); }
body:has(.post-header) .w-richtext { font-size: 1.125rem; line-height: 1.75; color: #2a3542; }
body:has(.post-header) .w-richtext p { margin: 0 0 1.4em; }
body:has(.post-header) .w-richtext h2, body:has(.post-header) .w-richtext h3, body:has(.post-header) .w-richtext h4 { line-height: 1.25; color: var(--dark); margin: 2.2em 0 .7em; font-family: Catamaran, sans-serif; font-weight: 700; }
body:has(.post-header) .w-richtext h2 { font-size: 1.75rem; } body:has(.post-header) .w-richtext h3 { font-size: 1.45rem; } body:has(.post-header) .w-richtext h4 { font-size: 1.2rem; }
body:has(.post-header) .w-richtext ul, body:has(.post-header) .w-richtext ol { margin: 0 0 1.4em; padding-left: 1.4em; } body:has(.post-header) .w-richtext li { margin-bottom: .5em; }
body:has(.post-header) .w-richtext strong { color: var(--dark); }
body:has(.post-header) .w-richtext blockquote { margin: 1.8em 0; padding: .4em 0 .4em 1.25em; border-left: 3px solid #fac800; font-size: 1.15em; color: var(--dark); }
body:has(.post-header) .w-richtext figure, body:has(.post-header) .w-richtext img { max-width: 100%; height: auto; border-radius: 1rem; margin: 1.6em 0; }
body:has(.post-header) .w-richtext a { color: var(--main--main-500); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767px) {
  .wf-layout-layout:has(> .w-layout-cell > body:has(.post-header) .w-richtext), .post-header { padding: 0 .25rem; }
  body:has(.post-header) .w-richtext { font-size: 1.0625rem; line-height: 1.7; }
  body:has(.post-header) .w-richtext h2 { font-size: 1.5rem; } body:has(.post-header) .w-richtext h3 { font-size: 1.3rem; }
  .post-header h1 { font-size: 2rem; }
}

.post-header { margin-bottom: 2.5rem !important; }
.post-author { margin-top: .25rem; }
@media (max-width: 767px) { .wf-layout-layout:has(> .w-layout-cell > body:has(.post-header) .w-richtext), .post-header { padding: 0 1rem !important; } .post-header { margin-bottom: 1.75rem !important; } }
/* cases reais */
.hkx-case-tag { background: var(--main--main-500) !important; color: #fff !important; }
.hkx-case-num span { line-height: 1.35; }
.hkx-case-sub { margin: -.25rem 0 0; font-size: .85rem; color: #4a5866; }
.hkx-case-num { flex-direction: column; align-items: flex-start !important; gap: .35rem !important; }
.hkx-case-num span { font-size: .95rem; }

/* hero: selo "Saúde bem pensada." no lugar do texto */
.hero-heading.hkx-hero-selo { margin: 0 auto; line-height: 0; }
.hkx-hero-selo img { display: block; width: min(34rem, 72vw); height: auto; margin: 0 auto; }
@media (max-width: 767px) { .hkx-hero-selo img { width: min(18rem, 78vw); } }

.hkx-hero-selo { margin-bottom: -1rem !important; }
@media (max-width: 767px) { .hkx-hero-selo img { width: min(14rem, 62vw); } .hkx-hero-selo { margin-bottom: -.25rem !important; } }
@media (min-width: 768px) { .hkx-hero-selo img { width: min(27rem, 60vw); } }


/* hero home: título com destaque, subtítulo discreto (como o original) */
.hero-heading.hkx-hero-big { font-size: clamp(2.6rem, 6.2vw, 6rem); line-height: 1.05; letter-spacing: -0.01em; }
.hero-body p.hkx-hero-sub { font-size: 1.0625rem; line-height: 1.45; max-width: 34rem; margin: 0 auto; }
.hero-body p.hkx-hero-sub + p.hkx-hero-sub { margin-top: .15rem; }
@media (max-width: 767px) { .hero-body p.hkx-hero-sub { font-size: 1rem; } }

