/* ==========================================================================
   Kaneoya sobre o Movedo
   Carregado depois do CSS do Movedo (inclusive o CSS gerado pelas Theme Options).
   1 Fontes e tokens · 2 Base do Movedo · 3 Cabeçalho · 4 Seções do WPBakery
   5 Componentes Kaneoya · 6 Blog e artigo · 7 Rodapé · 8 Elementos do Movedo · 9 Movimento
   ========================================================================== */

/* 1. Fontes e tokens ---------------------------------------------------- */
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url(../fonts/archivo-latin-standard-normal.woff2) format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url(../fonts/archivo-latin-ext-standard-normal.woff2) format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Archivo"; font-style: italic; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url(../fonts/archivo-latin-standard-italic.woff2) format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Archivo"; font-style: italic; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url(../fonts/archivo-latin-ext-standard-italic.woff2) format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }

body.kaneoya {
	--k-paper: #F1F1EE;
	--k-surface: #FFFFFF;
	--k-ink: #1A1A1B;
	--k-muted: #6B6B6E;
	--k-line: #D5D5D0;
	--k-font: "Archivo", "Helvetica Neue", Arial, sans-serif;
	--k-indent: clamp(40px, 10vw, 160px);
	--k-section: clamp(72px, 10vw, 144px);
	--k-ease: cubic-bezier(.65, 0, .35, 1);
}

/* 2. Base do Movedo ----------------------------------------------------- */
body.kaneoya {
	background-color: var(--k-paper) !important;
	color: var(--k-ink);
	font-family: var(--k-font) !important;
	font-size: 17px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}
body.kaneoya #grve-theme-wrapper { position: relative; z-index: 1; }
body.kaneoya #grve-theme-wrapper,
body.kaneoya #grve-theme-content,
body.kaneoya #grve-content,
body.kaneoya #grve-main-content,
body.kaneoya .grve-main-content-wrapper { background-color: transparent !important; color: var(--k-ink); }

/* Fonte Archivo em todos os textos (ícones ficam de fora) */
body.kaneoya :is(h1, h2, h3, h4, h5, h6, p, a, li, dt, dd, label, input, textarea, select, button, blockquote, td, th, figcaption, small, strong, em, b, cite, time, span, div):not([class*="icon"]):not([class*="fa-"]):not(.fa):not(.fab):not(.fas):not(.far) {
	font-family: var(--k-font) !important;
}
body.kaneoya :is(h1, h2, h3, h4, h5, h6, .grve-h1, .grve-h2, .grve-h3, .grve-h4, .grve-h5, .grve-h6) {
	color: var(--k-ink);
	letter-spacing: -0.015em;
	text-wrap: balance;
}
body.kaneoya ::selection { background: var(--k-ink); color: var(--k-paper); }
body.kaneoya :focus-visible { outline: 2px solid var(--k-ink); outline-offset: 3px; }

.k-container { width: 90%; max-width: 1170px; margin-inline: auto; }
.k-container--text { max-width: 720px; }

/* Linhas verticais da grade */
.k-grid-lines { position: fixed; inset: 0; z-index: 0; pointer-events: none; }
.k-grid-lines .k-container { display: grid; grid-template-columns: repeat(4, 1fr); height: 100%; }
.k-grid-lines span { border-left: 1px solid var(--k-line); opacity: .55; }
.k-grid-lines span:last-child { border-right: 1px solid var(--k-line); }
@media (max-width: 700px) {
	.k-grid-lines .k-container { grid-template-columns: repeat(2, 1fr); }
	.k-grid-lines span:nth-child(n+3) { display: none; }
	.k-grid-lines span:nth-child(2) { border-right: 1px solid var(--k-line); }
}

/* 3. Cabeçalho ---------------------------------------------------------- */
body.kaneoya #grve-header #grve-main-header,
body.kaneoya #grve-header #grve-main-responsive-header,
body.kaneoya #grve-header .grve-sticky-header {
	background-color: color-mix(in srgb, var(--k-paper) 92%, transparent) !important;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--k-line) !important;
	box-shadow: none !important;
}
/* Obs.: o Movedo reduz o font-size da raiz (html) em telas menores (10px e 8px).
   Por isso este CSS usa px, não rem: os tamanhos do layout Kaneoya não encolhem junto. */
/* O Movedo define a altura de .grve-logo (= altura do cabeçalho); o SVG é centralizado dentro dela */
body.kaneoya .k-logo { display: flex !important; align-items: center; }
body.kaneoya .k-logo .grve-wrapper,
body.kaneoya .k-logo a { display: flex !important; align-items: center; height: 100% !important; top: 0 !important; line-height: 0 !important; }
body.kaneoya .k-logo a { color: var(--k-ink) !important; }
body.kaneoya .k-logo svg { display: block; width: auto; height: 20px; }

body.kaneoya #grve-main-menu .grve-menu > li > a,
body.kaneoya #grve-main-menu .grve-menu > li > a .grve-item {
	color: var(--k-ink) !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	letter-spacing: .07em !important;
	text-transform: uppercase !important;
}
body.kaneoya #grve-main-menu .grve-menu > li:is(.current-menu-item, .current_page_parent, .current-menu-ancestor) > a .grve-item { text-decoration: underline; text-underline-offset: .5em; text-decoration-thickness: 1.5px; }
body.kaneoya #grve-main-menu .grve-menu > li > a:hover .grve-item { opacity: .6; }
body.kaneoya #grve-main-menu .grve-menu > li > a .grve-item::after,
body.kaneoya #grve-main-menu .grve-menu > li > a .grve-item::before { display: none !important; }
body.kaneoya #grve-main-menu .sub-menu { background: var(--k-surface) !important; border: 1px solid var(--k-line); box-shadow: none !important; }
body.kaneoya #grve-main-menu .sub-menu a, body.kaneoya #grve-main-menu .sub-menu a .grve-item { color: var(--k-ink) !important; }

body.kaneoya #grve-main-menu .grve-menu > li.k-menu-cta { display: flex; align-items: center; height: var(--k-menu-h, auto); margin-left: 20px; }
body.kaneoya #grve-main-menu .grve-menu > li.k-menu-cta > a.k-btn { height: auto !important; line-height: 1.2 !important; padding: 11.2px 19.2px !important; color: var(--k-paper) !important; }
body.kaneoya #grve-main-menu .grve-menu > li.k-menu-cta > a.k-btn:hover { color: var(--k-ink) !important; }
body.kaneoya :is(#grve-hidden-menu, #grve-responsive-header) .k-menu-cta { display: none !important; }

body.kaneoya #grve-responsive-header :is(.grve-header-element > a, .grve-item, .grve-icon-menu, [class*="grve-icon"]) { color: var(--k-ink) !important; }
body.kaneoya #grve-hidden-menu { background: var(--k-paper) !important; }
body.kaneoya #grve-hidden-menu :is(a, .grve-item) { color: var(--k-ink) !important; }
body.kaneoya #grve-hidden-menu .grve-menu > li > a,
body.kaneoya #grve-hidden-menu .grve-menu > li > a .grve-item {
	font-size: clamp(28.8px, 8vw, 44.8px) !important;
	font-weight: 700 !important;
	font-stretch: 112%;
	text-transform: uppercase !important;
	letter-spacing: -0.02em !important;
	line-height: 1.1 !important;
}

/* Títulos de página do Movedo (páginas que não usam o layout Kaneoya) */
body.kaneoya :is(#grve-page-title, #grve-blog-title, #grve-post-title) { background-color: transparent !important; border-bottom: 1px solid var(--k-line); }
body.kaneoya :is(#grve-page-title, #grve-blog-title, #grve-post-title) :is(.grve-bg-wrapper, .grve-bg-overlay, .grve-bg-image) { background: transparent !important; }
body.kaneoya :is(#grve-page-title, #grve-blog-title) .grve-title {
	color: var(--k-ink) !important;
	font-size: clamp(41.6px, 7vw, 104px) !important;
	font-weight: 700 !important;
	font-stretch: 112%;
	line-height: .92 !important;
	letter-spacing: -0.03em !important;
	text-transform: uppercase !important;
}
body.kaneoya :is(#grve-page-title, #grve-blog-title) .grve-description { color: var(--k-muted) !important; }

/* 4. Seções do WPBakery ------------------------------------------------- */
body.kaneoya .grve-section.k-section { padding-top: var(--k-section) !important; padding-bottom: var(--k-section) !important; border-top: 1px solid var(--k-line); }
body.kaneoya .grve-section.k-section--hero { padding-top: clamp(40px, 6vw, 80px) !important; padding-bottom: clamp(48px, 6vw, 80px) !important; border-top: 0; }
body.kaneoya .grve-section.k-section--flush { padding-top: clamp(16px, 2vw, 32px) !important; padding-bottom: clamp(48px, 6vw, 80px) !important; border-top: 0; }
body.kaneoya .grve-main-content-wrapper > .page > .grve-section.k-section:first-child { border-top: 0; }
body.kaneoya .grve-section.k-section--tint { background: color-mix(in srgb, var(--k-surface) 60%, transparent) !important; }
body.kaneoya .k-section .grve-column { container-type: inline-size; }
body.kaneoya .k-section .grve-column-1-2 + .grve-column-1-2 > .grve-column-wrapper { max-width: 560px; margin-left: auto; }
@media (max-width: 1023px) {
	body.kaneoya .k-section .grve-column-1-2 { width: 100% !important; float: none !important; }
	body.kaneoya .k-section .grve-column-1-2 + .grve-column-1-2 { margin-top: 32px; }
	body.kaneoya .k-section .grve-column-1-2 + .grve-column-1-2 > .grve-column-wrapper { margin-left: 0; }
}

/* 5. Componentes Kaneoya ------------------------------------------------ */
.k-split {
	margin: 0 0 clamp(32px, 4vw, 56px) !important;
	font-size: clamp(32px, 5.3vw, 89.6px) !important;
	font-weight: 700 !important;
	font-stretch: 112%;
	line-height: .9 !important;
	letter-spacing: -0.025em !important;
	text-transform: uppercase !important;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
	color: var(--k-ink) !important;
}
@supports (font-size: 1cqi) {
	.k-split--auto { font-size: clamp(32px, 12.5cqi, 89.6px) !important; }
}
.k-split--large { font-size: clamp(41.6px, 7.6vw, 112px) !important; }
.k-split__line { display: block; }
.k-split__line + .k-split__line { padding-left: var(--k-indent); }
.grve-column-1-2 .k-split { margin-bottom: 0 !important; }
.k-split-wrap { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 32px; margin-bottom: clamp(40px, 5vw, 72px); }
.k-split-wrap .k-split { margin: 0 !important; }
.k-split-count { margin: 0 !important; font-size: clamp(22.4px, 3vw, 38.4px) !important; font-weight: 500; color: var(--k-muted) !important; }

/* Texto rolante */
.k-roll { display: inline-block; height: 1.2em; line-height: 1.2; overflow: hidden; vertical-align: top; }
.k-roll__track { display: flex; flex-direction: column; transition: transform .5s var(--k-ease); }
.k-roll__line { display: block; white-space: nowrap; }
a:hover .k-roll__track, a:focus-visible .k-roll__track { transform: translateY(-50%); }

/* Botões (Kaneoya e Movedo) */
body.kaneoya :is(.k-btn, input[type="submit"], .wpcf7-submit, .comment-form .submit),
body.kaneoya a.grve-btn:not(.grve-btn-line) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 15.2px 25.6px !important;
	border: 1px solid var(--k-ink) !important;
	border-radius: 999px !important;
	background: var(--k-ink) !important;
	color: var(--k-paper) !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	letter-spacing: .07em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: background-color .3s, color .3s;
}
body.kaneoya a.grve-btn:not(.grve-btn-line) span { color: inherit !important; }
body.kaneoya :is(.k-btn, input[type="submit"], .wpcf7-submit):hover,
body.kaneoya a.grve-btn:not(.grve-btn-line):hover { background: transparent !important; color: var(--k-ink) !important; }
body.kaneoya .k-btn--outline { background: transparent !important; color: var(--k-ink) !important; }
body.kaneoya .k-btn--outline:hover { background: var(--k-ink) !important; color: var(--k-paper) !important; }
body.kaneoya .k-btn--small { padding: 11.2px 19.2px !important; font-size: 11.5px !important; }
.k-button-wrap { margin: 32px 0 0 !important; }
.k-more { margin: clamp(40px, 5vw, 64px) 0 0 !important; }

/* Destaque + texto */
.k-lead {
	margin: 0 0 20px !important;
	font-size: clamp(19.2px, 1.9vw, 24.8px) !important;
	font-weight: 500 !important;
	line-height: 1.38 !important;
	letter-spacing: -0.01em;
	color: var(--k-ink) !important;
}
.k-lead__mark { display: inline-block; width: .55em; height: .55em; margin-right: .6em; border-radius: 50%; background: var(--k-ink); vertical-align: .06em; }
.k-body { margin-bottom: 32px; max-width: 56ch; }
.k-body, .k-body p { color: var(--k-muted) !important; font-size: 17px !important; line-height: 1.65 !important; }
.k-lead-block--end { max-width: 44ch; margin: clamp(48px, 6vw, 80px) 0 0 auto; }

/* Imagens alternando */
.k-slider { position: relative; display: inline-block; width: 1.9em; height: .74em; margin-right: .18em; overflow: hidden; border-radius: 999px; vertical-align: .02em; background: var(--k-line); }
.k-slider img { position: absolute; inset: 0; width: 100%; height: 100% !important; max-width: none !important; object-fit: cover; opacity: 0; transition: opacity .9s ease; }
.k-slider img.is-active { opacity: 1; }

/* Abertura (hero) */
.k-hero__title {
	margin: 0 !important;
	font-size: clamp(40px, 10.4vw, 160px) !important;
	font-weight: 700 !important;
	line-height: .88 !important;
	letter-spacing: -0.035em !important;
	text-transform: uppercase !important;
	color: var(--k-ink) !important;
	text-wrap: initial;
}
.k-hero__line { display: block; opacity: 0; animation: k-up 1s var(--k-ease) forwards; }
.k-hero__line--2 { padding-left: 16%; animation-delay: .12s; }
.k-hero__line--3 { text-align: right; animation-delay: .24s; }
.k-hero__line--4 { animation-delay: .36s; }
.k-hero__foot { display: grid; grid-template-columns: auto 1fr; align-items: end; gap: 32px; margin-top: clamp(40px, 5vw, 64px); padding-top: 24px; border-top: 1px solid var(--k-line); }
.k-hero__scroll { margin: 0 !important; font-size: 11px !important; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; writing-mode: vertical-rl; transform: rotate(180deg); color: var(--k-muted) !important; }
.k-hero__meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 32px; margin: 0 !important; }
.k-hero__meta dt { margin-bottom: 5.6px; font-size: 11.5px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--k-muted); }
.k-hero__meta :is(dt, dd) { padding: 0 !important; }
.k-hero__meta dd { margin: 0 !important; font-size: clamp(16px, 1.4vw, 19.2px); font-weight: 600; line-height: 1.35; }
@media (max-width: 767px) {
	.k-hero__foot { grid-template-columns: 1fr; }
	.k-hero__scroll { display: none; }
	.k-hero__meta { grid-template-columns: 1fr; }
	.k-hero__line--2 { padding-left: 8%; }
}

/* Artigos em cards grandes */
.k-work { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(48px, 6vw, 80px) clamp(24px, 3vw, 48px); }
@media (min-width: 1024px) { .k-card:nth-child(even) { margin-top: clamp(64px, 9vw, 144px); } }
@media (max-width: 767px) { .k-work { grid-template-columns: 1fr; } }
.k-card__media { display: block; overflow: hidden; background: var(--k-surface); }
.k-card__media img, .k-card__placeholder { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .9s var(--k-ease); }
.k-card__media:hover img, .k-card:focus-within img { transform: scale(1.045); }
.k-card__info { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 8px 20px; padding-top: 20px; }
.k-card__year { margin: 0 !important; padding-top: 4px; font-size: 14px !important; font-weight: 600; color: var(--k-muted) !important; }
.k-card__title { margin: 0 !important; font-size: clamp(20px, 2.1vw, 27.2px) !important; font-weight: 650 !important; line-height: 1.15 !important; letter-spacing: -0.015em !important; text-transform: none !important; }
.k-card__title a { color: var(--k-ink) !important; text-decoration: none; }
.k-card__title a:hover { text-decoration: underline; }
.k-card__meta { grid-column: 2; display: flex; flex-wrap: wrap; gap: 4px 24px; margin: 5.6px 0 0 !important; font-size: 14px; }
.k-card__meta div { display: flex; gap: 6.4px; }
.k-card__meta dt { color: var(--k-muted); font-weight: 400; }
.k-card__meta :is(dt, dd), .k-article__facts :is(dt, dd) { padding: 0 !important; }
.k-card__meta dd { margin: 0 !important; font-weight: 600; }

/* Lista expansível */
.k-accordion { border-bottom: 1px solid var(--k-line); }
.k-accordion__item { border-top: 1px solid var(--k-line); }
.k-accordion__item summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: clamp(19.2px, 2.4vw, 28px); cursor: pointer; list-style: none; }
.k-accordion__item summary::-webkit-details-marker { display: none; }
.k-accordion__item h3 { margin: 0 !important; font-size: clamp(20px, 2.3vw, 30.4px) !important; font-weight: 600 !important; font-stretch: 105%; line-height: 1.15 !important; text-transform: uppercase !important; }
.k-accordion__icon { position: relative; flex: none; width: 17.6px; height: 17.6px; }
.k-accordion__icon::before, .k-accordion__icon::after { content: ""; position: absolute; left: 0; top: 50%; width: 100%; height: 1.5px; background: var(--k-ink); transition: transform .35s var(--k-ease); }
.k-accordion__icon::after { transform: rotate(90deg); }
details[open] > summary .k-accordion__icon::after { transform: rotate(0); }
.k-accordion__item p { max-width: 56ch; margin: 0 !important; padding-bottom: 28px; color: var(--k-muted) !important; }

/* Números */
.k-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.k-stat { padding: 16px clamp(16px, 2vw, 32px); border-left: 1px solid var(--k-line); }
.k-stat:first-child { border-left: 0; padding-left: 0; }
.k-stat__num { margin: 0 0 8px !important; font-size: clamp(56px, 9vw, 128px) !important; font-weight: 700 !important; font-stretch: 110%; line-height: .9 !important; letter-spacing: -0.04em; color: var(--k-ink) !important; }
.k-stat__label { margin: 0 !important; font-size: 12px !important; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--k-muted) !important; }
@media (max-width: 767px) {
	.k-stats { grid-template-columns: 1fr; }
	.k-stat { border-left: 0; border-top: 1px solid var(--k-line); padding: 24px 0; }
	.k-stat:first-child { border-top: 0; }
}

/* Etapas */
.k-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: clamp(24px, 3vw, 40px); margin: 0 !important; padding: 0 !important; list-style: none !important; }
.k-step { margin: 0 !important; padding-top: 20px !important; border-top: 1px solid var(--k-ink); list-style: none !important; }
.k-step::before { display: none !important; }
.k-step__num { margin: 0 0 40px !important; font-size: 13px !important; font-weight: 700; color: var(--k-muted) !important; }
.k-step h3 { margin: 0 0 12px !important; font-size: clamp(20.8px, 2.2vw, 28.8px) !important; font-weight: 650 !important; font-stretch: 105%; text-transform: uppercase !important; }
.k-step p:not(.k-step__num) { color: var(--k-muted) !important; font-size: 16px !important; }

/* Linhas */
.k-rows { margin: 0 0 40px !important; padding: 0 !important; list-style: none !important; border-bottom: 1px solid var(--k-line); }
.k-rows__item { display: flex; align-items: center; justify-content: space-between; gap: 8px 32px; margin: 0 !important; padding: clamp(16px, 2vw, 22.4px) 0 !important; border-top: 1px solid var(--k-line); list-style: none !important; }
.k-rows__item::before { display: none !important; }
.k-rows__left { font-size: clamp(16.8px, 1.8vw, 22.4px); font-weight: 600; letter-spacing: -0.01em; }
.k-rows__right, .k-rows__label { font-size: 12px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--k-muted); text-align: right; }
.k-rows__left a, .k-rows__value a { color: var(--k-ink) !important; text-decoration: none; }
.k-rows__left a:hover, .k-rows__value a:hover { text-decoration: underline; }
.k-rows--contact .k-rows__label { text-align: left; }
.k-rows--contact .k-rows__value { font-size: clamp(16px, 1.5vw, 19.2px); font-weight: 500; text-align: right; }
@media (max-width: 600px) { .k-rows__item { flex-direction: column; align-items: flex-start; } .k-rows__right, .k-rows--contact .k-rows__value { text-align: left; } }

/* Três imagens */
.k-images { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.5vw, 20px); }
.k-images figure { margin: 0 !important; }
.k-images img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
@media (max-width: 600px) { .k-images { grid-template-columns: 1fr; } }

/* 6. Blog e artigo ------------------------------------------------------ */
.k-page { padding-block: clamp(56px, 8vw, 112px) var(--k-section); }
.k-two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px clamp(32px, 5vw, 80px); align-items: end; }
.k-two > * { container-type: inline-size; }
.k-two > :last-child { max-width: 560px; justify-self: end; }
@media (max-width: 1023px) { .k-two { grid-template-columns: 1fr; } .k-two > :last-child { justify-self: start; } }
.k-page-head .k-split { margin: 0 !important; }

.k-blog-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px 32px; margin-top: clamp(48px, 6vw, 80px); padding-block: 20px; border-top: 1px solid var(--k-line); }
.k-posts > .k-blog-tools { margin-top: 0; }
.k-filter { display: flex; flex-wrap: wrap; gap: 8px 28px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.k-filter li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.k-filter li::before { display: none !important; }
.k-filter a { font-size: 12.5px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; text-decoration: none; color: var(--k-muted) !important; }
.k-filter a:hover, .k-filter a.is-active { color: var(--k-ink) !important; }
.k-filter a.is-active { text-decoration: underline; text-underline-offset: .45em; text-decoration-thickness: 1.5px; }
.k-search { display: flex; align-items: center; gap: 8px; width: 100%; max-width: 340px; margin: 0 !important; border-bottom: 1px solid var(--k-ink); }
.k-search input[type="search"] { flex: 1; min-width: 0; height: auto !important; margin: 0 !important; padding: 9.6px 0 !important; border: 0 !important; background: transparent !important; color: var(--k-ink) !important; font-size: 15px !important; box-shadow: none !important; }
.k-search input[type="search"]:focus { outline: none; }
.k-search:focus-within { outline: 2px solid var(--k-ink); outline-offset: 4px; }
.k-search button { padding: 6.4px 0 !important; border: 0 !important; background: none !important; color: var(--k-ink) !important; font-size: 12px !important; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; cursor: pointer; }

.k-post-list { border-bottom: 1px solid var(--k-line); }
.k-row-post__link { display: grid; grid-template-columns: 112px minmax(0, 1fr) 80px 144px; align-items: baseline; gap: 16px 32px; padding-block: clamp(20.8px, 2.6vw, 32px); border-top: 1px solid var(--k-line); text-decoration: none !important; color: var(--k-ink) !important; }
.k-row-post__date, .k-row-post__time, .k-row-post__cat { font-size: 13px; font-weight: 600; color: var(--k-muted); }
.k-row-post__cat { text-align: right; text-transform: uppercase; letter-spacing: .07em; font-size: 11.5px; }
.k-row-post__title { font-size: clamp(19.2px, 2.3vw, 30.4px); font-weight: 600; line-height: 1.15; letter-spacing: -0.015em; transition: transform .5s var(--k-ease); }
.k-row-post__link:hover .k-row-post__title { transform: translateX(9.6px); }
@media (max-width: 767px) {
	.k-row-post__link { grid-template-columns: auto auto 1fr; gap: 6.4px 16px; }
	.k-row-post__title { grid-column: 1 / -1; grid-row: 2; }
}
.k-preview { position: fixed; top: 0; left: 0; z-index: 9990; width: 260px; aspect-ratio: 4 / 3; object-fit: cover; pointer-events: none; opacity: 0; transform: translate(-50%, -50%) scale(.9); transition: opacity .25s, transform .25s; }
.k-preview.is-visible { opacity: 1; transform: translate(-50%, -50%) scale(1); }

.k-pagination { display: flex; flex-wrap: wrap; gap: 8px; margin-top: clamp(40px, 5vw, 64px); }
.k-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 46.4px; height: 46.4px; padding: 0 16px; border: 1px solid var(--k-line); border-radius: 999px; font-size: 12.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; text-decoration: none; color: var(--k-ink) !important; }
.k-pagination .page-numbers.current { background: var(--k-ink); border-color: var(--k-ink); color: var(--k-paper) !important; }
.k-pagination .page-numbers.dots { border-color: transparent; }
.k-pagination a.page-numbers:hover { border-color: var(--k-ink); }
.k-empty { margin-top: 32px !important; }

.k-progress { position: fixed; inset: 0 0 auto 0; z-index: 99999; height: 2px; pointer-events: none; }
.admin-bar .k-progress { top: 32px; }
.k-progress__bar { display: block; height: 100%; background: var(--k-ink); transform: scaleX(var(--progress, 0)); transform-origin: 0 50%; }

.k-article__head { padding-top: clamp(48px, 7vw, 96px); }
.k-article__kicker { margin-bottom: 24px !important; font-size: 12px !important; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--k-muted) !important; }
.k-article__kicker a { color: var(--k-muted) !important; text-decoration: none; }
.k-article__kicker a:hover { color: var(--k-ink) !important; }
.k-article__kicker span { margin-inline: 6.4px; }
.k-article__title { max-width: 20ch; margin: 0 !important; font-size: clamp(36.8px, 5.8vw, 83.2px) !important; font-weight: 700 !important; line-height: .98 !important; letter-spacing: -0.035em !important; text-transform: none !important; }
.k-article__row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 32px 64px; margin-top: clamp(32px, 4vw, 56px); padding-top: 24px; border-top: 1px solid var(--k-line); }
.k-article__row .k-lead { max-width: 44ch; margin: 0 !important; }
.k-article__facts { display: grid; gap: 6.4px; margin: 0 !important; font-size: 14px; }
.k-article__facts div { display: flex; gap: 8px; }
.k-article__facts dt { color: var(--k-muted); font-weight: 600; text-transform: uppercase; letter-spacing: .07em; font-size: 11.5px; padding-top: 2.4px; }
.k-article__facts dd { margin: 0 !important; font-weight: 600; }
@media (max-width: 767px) { .k-article__row { grid-template-columns: 1fr; } }
.k-article__cover { margin-top: clamp(40px, 5vw, 64px) !important; margin-bottom: 0 !important; }
.k-article__cover img { display: block; width: 100%; max-height: 80vh; aspect-ratio: 16 / 9; object-fit: cover; }

.k-prose { width: 90%; max-width: 720px; margin-inline: auto; padding-block: clamp(48px, 6vw, 80px) 32px; font-size: clamp(17px, 1.2vw, 19px); line-height: 1.75; }
.k-prose .grve-container { width: 100%; }
.k-prose p { margin-bottom: 1.35em !important; color: var(--k-ink); font-size: inherit !important; line-height: inherit !important; }
.k-prose :is(h2, h3, h4) { margin-top: 2.2em !important; margin-bottom: .6em !important; text-transform: none !important; }
.k-prose h2 { font-size: clamp(24.8px, 2.6vw, 33.6px) !important; }
.k-prose h3 { font-size: clamp(20px, 2vw, 24px) !important; }
.k-prose a { color: var(--k-ink) !important; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.k-prose :is(ul, ol) { margin: 0 0 1.35em !important; padding-left: 1.3em !important; }
.k-prose blockquote { margin: 2.2em 0 !important; padding: 0 0 0 1.4em !important; border-left: 2px solid var(--k-ink) !important; font-size: 1.3em; font-weight: 500; line-height: 1.45; background: none !important; }
.k-prose pre { padding: 20px 22.4px; overflow-x: auto; background: #1A1A1B !important; color: #EDEDEA !important; font-size: 14px; line-height: 1.6; }
.k-prose img { height: auto; }

.k-article__foot { padding-bottom: var(--k-section); }
.k-share { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; padding-block: 20px; border-block: 1px solid var(--k-line); font-size: 12.5px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; }
.k-share__label { color: var(--k-muted); }
.k-share a { color: var(--k-ink) !important; text-decoration: none; }
.k-share button,
body.kaneoya .k-share button.k-copy { padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; color: var(--k-ink) !important; font: inherit !important; letter-spacing: inherit !important; text-transform: inherit !important; line-height: inherit !important; height: auto !important; cursor: pointer; }
.k-share button:hover { text-decoration: underline; }

.k-related { padding-block: var(--k-section); border-top: 1px solid var(--k-line); }
.k-related .k-split { font-size: clamp(41.6px, 7.6vw, 112px) !important; }

/* 7. Rodapé ------------------------------------------------------------- */
body.kaneoya #grve-footer,
body.kaneoya #grve-footer :is(.grve-footer-wrapper, .grve-widget-area, .grve-footer-bar, #grve-footer-area, .grve-bg-wrapper) { background-color: transparent !important; color: var(--k-ink) !important; }
body.kaneoya #grve-footer { border-top: 1px solid var(--k-line) !important; }
body.kaneoya #grve-footer :is(a, p, li, .widget-title, h1, h2, h3, h4, h5, h6) { color: var(--k-ink) !important; }
body.kaneoya #grve-footer .grve-footer-bar { border-top: 1px solid var(--k-line) !important; font-size: 13px; }

.k-say { padding-block: clamp(80px, 12vw, 160px); text-align: center; }
.k-say__kicker { margin: 0 0 24px !important; font-size: 12.5px !important; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--k-muted) !important; }
.k-say__title { margin: 0 !important; white-space: nowrap; font-size: clamp(44px, 12.4vw, 172px) !important; font-weight: 700 !important; font-stretch: 112%; line-height: .86 !important; letter-spacing: -0.03em !important; text-transform: uppercase !important; color: var(--k-ink) !important; }
.k-say__title .k-slider { width: 1.6em; height: .7em; margin-inline: .08em; }
.k-say__email { display: inline-block; margin-top: clamp(32px, 4vw, 48px); font-size: clamp(19.2px, 3vw, 35.2px) !important; font-weight: 500; text-decoration: none !important; border-bottom: 1.5px solid currentColor; }
.k-say__email .k-roll { height: 1.25em; line-height: 1.25; }
.k-social { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 28px; margin: 32px 0 0 !important; padding: 0 !important; list-style: none !important; }
.k-social li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.k-social li::before { display: none !important; }
.k-social a { font-size: 12.5px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; text-decoration: none; }

/* 8. Formulários e elementos do Movedo em páginas antigas ------------------- */
body.kaneoya :is(input[type="text"], input[type="email"], input[type="tel"], input[type="url"], textarea, select):not(.k-search input) {
	background: transparent !important;
	border: 0 !important;
	border-bottom: 1px solid var(--k-line) !important;
	border-radius: 0 !important;
	color: var(--k-ink) !important;
	box-shadow: none !important;
}
body.kaneoya :is(input, textarea):focus { border-bottom-color: var(--k-ink) !important; }

/* 9. Movimento ---------------------------------------------------------- */
@keyframes k-up {
	from { opacity: 0; transform: translateY(.35em); }
	to { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
	body.kaneoya *, body.kaneoya *::before, body.kaneoya *::after { animation-duration: .01ms !important; animation-delay: 0s !important; transition-duration: .01ms !important; }
}

/* Comentários do Movedo no layout Kaneoya */
body.kaneoya #grve-comments .comment-reply-title,
body.kaneoya .grve-link-text.comment-reply-title {
	box-shadow: none !important;
	background: transparent !important;
	border: 1px solid var(--k-ink) !important;
	border-radius: 999px !important;
	color: var(--k-ink) !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	letter-spacing: .07em !important;
	text-transform: uppercase !important;
}
