/* SEO Similar — sistema visual para bloques nativos de WordPress. */
:root {
	--ss-paper: #f6f5ef;
	--ss-paper-2: #eeede6;
	--ss-ink: #111511;
	--ss-muted: #5f655f;
	--ss-line: #d9d9d0;
	--ss-lime: #d9ff45;
	--ss-green: #2d6044;
	--ss-coral: #ff775c;
	--ss-white: #fff;
	--ss-wide: 1380px;
}

.seosimilar-theme,
.editor-styles-wrapper {
	background: var(--ss-paper);
	color: var(--ss-ink);
}

.seosimilar-theme .content-bg,
.seosimilar-theme .site-main .entry,
.seosimilar-theme .entry-content-wrap {
	background: transparent;
}

.seosimilar-theme .entry-content-wrap {
	padding: 0;
}

.seosimilar-theme .content-area {
	margin-top: 0;
	margin-bottom: 0;
}

.seosimilar-theme.seosimilar-block-page .entry-header {
	display: none;
}

.seosimilar-theme .site-container,
.seosimilar-theme .site-header-row-layout-contained {
	max-width: var(--ss-wide);
}

.seosimilar-theme .site-header-main-section-left .site-branding {
	letter-spacing: -.045em;
}

.seosimilar-theme .site-title {
	font-weight: 760;
}

.seosimilar-theme .primary-menu-container > ul > li > a {
	font-size: .88rem;
}

.seosimilar-theme :where(.entry-content) a {
	text-decoration-thickness: 1px;
	text-underline-offset: .18em;
}

.ss-section,
.ss-page-hero,
.ss-ad-wrap {
	box-sizing: border-box;
}

.ss-section {
	padding-top: clamp(4.8rem, 9vw, 8rem);
	padding-bottom: clamp(4.8rem, 9vw, 8rem);
}

.ss-section-tight {
	padding-top: clamp(2.8rem, 5vw, 4.5rem);
	padding-bottom: clamp(2.8rem, 5vw, 4.5rem);
}

.ss-kicker {
	margin: 0 0 1rem !important;
	color: var(--ss-green);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .7rem;
	font-weight: 700;
	letter-spacing: .11em;
	line-height: 1.2;
	text-transform: uppercase;
}

.ss-kicker-light {
	color: var(--ss-lime);
}

.ss-display,
.ss-section-title,
.ss-page-title {
	letter-spacing: -.06em;
}

.ss-display {
	max-width: 830px;
	margin-top: 0;
	margin-bottom: 1.7rem;
	font-size: clamp(3.3rem, 6.7vw, 6rem);
	font-weight: 590;
	line-height: .95;
}

.ss-display em,
.ss-section-title em,
.ss-page-title em {
	color: var(--ss-green);
	font-family: Georgia, 'Times New Roman', serif;
	font-weight: 400;
}

.ss-lead {
	max-width: 680px;
	color: var(--ss-muted);
	font-size: clamp(1.05rem, 1.6vw, 1.25rem);
	line-height: 1.7;
}

.ss-section-title {
	font-size: clamp(2.5rem, 4.5vw, 4.3rem);
	font-weight: 590;
	line-height: 1.02;
}

.ss-page-title {
	max-width: 900px;
	margin-bottom: 1.4rem;
	font-size: clamp(3.2rem, 7vw, 6.8rem);
	font-weight: 580;
	line-height: .95;
}

/* Portada */
.ss-hero {
	position: relative;
	padding-top: clamp(4.5rem, 8vw, 7.5rem);
	padding-bottom: clamp(4.5rem, 8vw, 7.5rem);
	overflow: hidden;
}

.ss-hero::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: linear-gradient(to right, var(--ss-line) 1px, transparent 1px), linear-gradient(to bottom, var(--ss-line) 1px, transparent 1px);
	background-size: 72px 72px;
	content: '';
	mask-image: linear-gradient(90deg, #000, transparent 78%);
	opacity: .32;
	pointer-events: none;
}

.ss-hero > .wp-block-group__inner-container,
.ss-hero > * {
	position: relative;
	z-index: 1;
}

.ss-hero-columns {
	gap: clamp(3rem, 8vw, 8rem);
}

.ss-search .wp-block-search__inside-wrapper {
	padding: .5rem;
	border: 1px solid #d0d1c8;
	border-radius: 11px;
	background: #fff;
	box-shadow: 0 14px 40px rgba(17, 21, 17, .07);
}

.ss-search .wp-block-search__input {
	padding: .85rem 1rem;
	border: 0;
	background: transparent;
}

.ss-search .wp-block-search__button {
	margin: 0;
	padding: .85rem 1.5rem;
	border-radius: 7px;
	background: var(--ss-ink);
}

.ss-quick-links {
	font-size: .8rem;
}

.ss-radar-card {
	padding: 1.25rem;
	border: 1px solid #d4d5cd;
	border-radius: 15px;
	background: rgba(255, 255, 255, .84);
	box-shadow: 0 24px 65px rgba(29, 40, 31, .1);
	transform: rotate(1deg);
}

.ss-radar-head {
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--ss-line);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ss-radar-row {
	padding: 1rem 0;
	border-bottom: 1px solid #e4e4dc;
}

.ss-radar-row p {
	margin: 0;
}

.ss-tool-badge {
	display: inline-grid;
	width: 2.35rem;
	height: 2.35rem;
	place-items: center;
	border-radius: 9px;
	background: var(--ss-lime);
	font-weight: 800;
}

.ss-tool-badge-dark {
	color: #fff;
	background: var(--ss-ink);
}

.ss-tool-badge-coral {
	color: #fff;
	background: var(--ss-coral);
}

.ss-trust-strip {
	padding: 1.8rem 0;
	border-top: 1px solid var(--ss-ink);
	border-bottom: 1px solid var(--ss-ink);
}

.ss-stat {
	margin: 0;
	font-size: 1.5rem;
	font-weight: 750;
	letter-spacing: -.04em;
}

.ss-stat-label {
	margin: .3rem 0 0;
	color: var(--ss-muted);
	font-size: .68rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}

/* Tarjetas */
.ss-tools-grid,
.ss-card-grid {
	gap: 0 !important;
	border-top: 1px solid var(--ss-ink);
	border-left: 1px solid var(--ss-line);
}

.ss-tool-card,
.ss-content-card {
	box-sizing: border-box;
	height: 100%;
	min-height: 360px;
	padding: 1.65rem;
	border-right: 1px solid var(--ss-line);
	border-bottom: 1px solid var(--ss-line);
	background: rgba(255, 255, 255, .28);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.ss-tool-card:hover,
.ss-content-card:hover {
	z-index: 1;
	background: #fff;
	box-shadow: 0 18px 40px rgba(17, 21, 17, .08);
	transform: translateY(-3px);
}

.ss-card-label {
	color: var(--ss-green);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .66rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ss-tool-card h3,
.ss-content-card h3 {
	margin-top: 1.2rem;
	margin-bottom: .85rem;
	font-size: clamp(1.5rem, 2.4vw, 2rem);
	letter-spacing: -.045em;
}

.ss-tool-card p,
.ss-content-card p {
	color: var(--ss-muted);
	font-size: .9rem;
}

.ss-card-meta {
	margin-top: 1.4rem;
	padding-top: 1rem;
	border-top: 1px solid #e1e1d9;
	font-size: .78rem !important;
}

.ss-score {
	color: var(--ss-ink);
	font-size: 1.15rem;
	font-weight: 760;
}

/* Comparativas */
.ss-comparison {
	border-radius: 3px;
	background: var(--ss-ink);
	color: #fff;
	overflow: hidden;
}

.ss-comparison > .wp-block-columns {
	margin-bottom: 0;
}

.ss-comparison-feature {
	min-height: 650px;
	padding: clamp(2.8rem, 6vw, 6rem);
}

.ss-comparison-feature h2 {
	font-size: clamp(3.2rem, 6.4vw, 5.8rem);
	letter-spacing: -.06em;
	line-height: .95;
}

.ss-comparison-feature p:not(.ss-kicker) {
	color: #bac1ba;
}

.ss-comparison-stack {
	border-left: 1px solid #363b36;
}

.ss-comparison-row {
	padding: clamp(1.5rem, 4vw, 2.7rem);
	border-bottom: 1px solid #363b36;
}

.ss-comparison-row h3 {
	margin: 0;
	font-size: 1.2rem;
}

.ss-method-note {
	padding: clamp(2rem, 4vw, 3rem);
	background: var(--ss-lime);
	color: var(--ss-ink);
}

.ss-method-note p {
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 1.1rem;
	font-style: italic;
}

/* GEO */
.ss-geo {
	padding: clamp(3rem, 7vw, 6.5rem);
	background: #244c39;
	color: #fff;
}

.ss-geo h2 {
	font-size: clamp(3.5rem, 6.7vw, 6rem);
	letter-spacing: -.06em;
}

.ss-geo h2 em {
	color: var(--ss-lime);
	font-family: Georgia, 'Times New Roman', serif;
	font-weight: 400;
}

.ss-geo-copy > p:not(.ss-kicker) {
	color: #c7d4cc;
}

.ss-geo-panel {
	padding: 1.5rem;
	border-radius: 13px;
	background: #f8f8f3;
	box-shadow: 20px 25px 0 rgba(10, 22, 15, .22);
	color: var(--ss-ink);
}

.ss-geo-score {
	font-size: clamp(3rem, 6vw, 4.8rem);
	font-weight: 760;
	letter-spacing: -.07em;
}

.ss-progress {
	height: 8px;
	margin: .45rem 0 1.1rem;
	border-radius: 10px;
	background: #dedfd8;
	overflow: hidden;
}

.ss-progress span {
	display: block;
	height: 100%;
	border-radius: 10px;
	background: var(--ss-green);
}

/* CTA y newsletter */
.ss-service-cta {
	padding: clamp(3rem, 7vw, 6rem) 0;
}

.ss-newsletter {
	padding: clamp(3rem, 7vw, 6rem);
	background: var(--ss-lime);
}

.ss-newsletter h2 {
	font-size: clamp(3rem, 5.7vw, 5.2rem);
	letter-spacing: -.06em;
	line-height: .98;
}

.ss-newsletter .wp-block-button__link {
	background: var(--ss-ink);
}

/* Cabeceras interiores */
.ss-page-hero {
	padding-top: clamp(4.3rem, 8vw, 7.5rem);
	padding-bottom: clamp(4.3rem, 8vw, 7.5rem);
	border-bottom: 1px solid var(--ss-ink);
}

.ss-page-hero-dark {
	background: var(--ss-ink);
	color: #fff;
}

.ss-page-hero-dark .ss-lead {
	color: #c7cec7;
}

.ss-prose {
	font-size: 1.05rem;
}

.ss-prose h2 {
	margin-top: 2.7rem;
	letter-spacing: -.04em;
}

.ss-prose h3 {
	margin-top: 2rem;
}

.ss-prose p,
.ss-prose li {
	color: #454c45;
}

.ss-info-box {
	padding: clamp(1.5rem, 4vw, 2.8rem);
	border-left: 5px solid var(--ss-lime);
	background: #fff;
}

.ss-price-card {
	box-sizing: border-box;
	height: 100%;
	padding: 2rem;
	border: 1px solid var(--ss-line);
	background: #fff;
}

.ss-price-card-featured {
	border-color: var(--ss-ink);
	background: var(--ss-ink);
	color: #fff;
}

.ss-price-card-featured p,
.ss-price-card-featured li {
	color: #c9cec9;
}

.ss-price {
	margin: .7rem 0;
	font-size: 2.4rem;
	font-weight: 760;
	letter-spacing: -.05em;
}

.ss-inventory-table table {
	border-color: var(--ss-line);
	background: #fff;
}

.ss-inventory-table th {
	background: var(--ss-ink);
	color: #fff;
}

/* Advanced Ads */
.ss-ad-wrap {
	padding-top: 1.4rem;
	padding-bottom: 1.4rem;
}

.ss-ad-slot {
	max-width: var(--ss-wide);
	margin: 0 auto;
	text-align: center;
}

.ss-ad-label {
	display: block;
	margin-bottom: .4rem;
	color: #8b908b;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .58rem;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.ss-ad-slot--empty {
	padding: 1.5rem;
	border: 1px dashed #b9bcb5;
	background: rgba(255, 255, 255, .45);
}

.ss-ad-slot--empty p {
	margin: 0;
	color: var(--ss-muted);
	font-size: .78rem;
}

.ss-ad-slot--empty code {
	color: var(--ss-green);
}

@media (max-width: 1024px) {
	.ss-radar-card {
		transform: none;
	}

	.ss-comparison-stack {
		border-top: 1px solid #363b36;
		border-left: 0;
	}
}

@media (max-width: 781px) {
	.ss-hero,
	.ss-section,
	.ss-page-hero {
		padding-right: 1rem;
		padding-left: 1rem;
	}

	.ss-display {
		font-size: clamp(3rem, 14vw, 4.8rem);
	}

	.ss-hero-columns,
	.ss-geo .wp-block-columns {
		gap: 2.5rem;
	}

	.ss-tool-card,
	.ss-content-card {
		min-height: auto;
	}

	.ss-comparison-feature {
		min-height: auto;
	}

	.ss-geo {
		padding-right: 1.25rem;
		padding-left: 1.25rem;
	}

	.ss-geo-panel {
		box-shadow: 10px 12px 0 rgba(10, 22, 15, .22);
	}

	.ss-newsletter {
		padding-right: 1.25rem;
		padding-left: 1.25rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ss-tool-card,
	.ss-content-card {
		transition: none;
	}
}
