/*
Theme Name:   Sumcore Tech (Kadence Child)
Theme URI:    https://sumcoretech.com
Description:  Tema hijo de Kadence para Sumcore Tech. Al activarlo configura logo, paleta de colores, páginas (Inicio, Sobre nosotros, Productos, Contacto), menú principal y formulario de contacto.
Author:       Sumcore Tech
Template:     kadence
Version:      1.0.0
Requires at least: 6.2
Requires PHP: 7.4
License:      GPL-2.0-or-later
Text Domain:  sumcore
*/

:root {
	--sc-cyan: #00d4f5;
	--sc-blue: #0a6cf0;
	--sc-blue-deep: #003d88;
	--sc-navy: #0b2244;
	--sc-navy-dark: #071830;
	--sc-text: #4a5b75;
	--sc-bg-soft: #f3f7fc;
	--sc-border: #dce6f3;
	--sc-gradient: linear-gradient(135deg, var(--sc-blue) 0%, var(--sc-cyan) 100%);
	--sc-gradient-dark: linear-gradient(135deg, var(--sc-navy-dark) 0%, var(--sc-navy) 45%, var(--sc-blue-deep) 100%);
	--sc-radius: 14px;
	--sc-shadow: 0 10px 30px rgba(11, 34, 68, 0.08);
}

/* ---------- Cabecera ---------- */
.site-header .custom-logo,
.site-branding img.custom-logo {
	max-height: 56px;
	width: auto;
}
.site-header .main-navigation .primary-menu-container > ul > li.menu-item > a {
	font-weight: 600;
	letter-spacing: 0.01em;
}
.site-header .main-navigation .primary-menu-container > ul > li.current-menu-item > a {
	color: var(--sc-blue);
}
.site-header .main-navigation .primary-menu-container > ul > li.sc-menu-cta > a {
	background: var(--sc-gradient);
	color: #fff;
	border-radius: 999px;
	padding: 0.55em 1.4em;
	margin-left: 0.6em;
}
.site-header .main-navigation .primary-menu-container > ul > li.sc-menu-cta > a:hover {
	color: #fff;
	filter: brightness(1.08);
}

/* ---------- Secciones a ancho completo con contenido centrado ---------- */
.entry-content > .sc-full,
.sc-full {
	--sc-edge: var(--global-content-edge-padding, 1.5rem);
	--sc-width: var(--global-content-width, 1200px);
	padding-left: max(var(--sc-edge), calc((100% - var(--sc-width)) / 2 + var(--sc-edge)));
	padding-right: max(var(--sc-edge), calc((100% - var(--sc-width)) / 2 + var(--sc-edge)));
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.sc-full > .wp-block-group__inner-container > :first-child,
.sc-full > :first-child { margin-top: 0; }

/* ---------- Utilidades de bloques ---------- */
.sc-section {
	padding-top: clamp(56px, 8vw, 96px);
	padding-bottom: clamp(56px, 8vw, 96px);
}
.sc-section.sc-soft { background: var(--sc-bg-soft); }
.sc-center { text-align: center; }
.sc-eyebrow {
	display: inline-block;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--sc-blue);
	margin-bottom: 0.4em;
}
.sc-lead {
	font-size: 1.15rem;
	line-height: 1.7;
	color: var(--sc-text);
	max-width: 720px;
}
.sc-center .sc-lead { margin-left: auto; margin-right: auto; }

/* ---------- Hero ---------- */
.sc-hero {
	position: relative;
	overflow: hidden;
	background: var(--sc-gradient-dark);
	color: #fff;
	padding-top: clamp(80px, 12vw, 150px);
	padding-bottom: clamp(80px, 12vw, 150px);
}
.sc-hero::before,
.sc-hero::after {
	content: "";
	position: absolute;
	pointer-events: none;
	clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%);
}
.sc-hero::before {
	width: 520px; height: 600px;
	right: -120px; top: -90px;
	background: linear-gradient(160deg, rgba(0, 212, 245, 0.35), rgba(10, 108, 240, 0.05));
}
.sc-hero::after {
	width: 260px; height: 300px;
	right: 260px; bottom: -140px;
	background: linear-gradient(160deg, rgba(10, 108, 240, 0.35), rgba(0, 212, 245, 0));
}
.sc-hero > * { position: relative; z-index: 1; }
.sc-hero h1,
.sc-hero h2,
.sc-hero p { color: #fff; }
.sc-hero h1 {
	font-size: clamp(2.2rem, 5vw, 3.6rem);
	line-height: 1.12;
	max-width: 780px;
}
.sc-hero .sc-lead { color: rgba(255, 255, 255, 0.82); }
.sc-hero .sc-eyebrow { color: var(--sc-cyan); }
.sc-hero.sc-hero-small {
	padding-top: clamp(64px, 9vw, 110px);
	padding-bottom: clamp(64px, 9vw, 110px);
}
.sc-gradient-text {
	background: linear-gradient(90deg, #4fb4ff, var(--sc-cyan));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
}

/* ---------- Botones ---------- */
.wp-block-button.sc-btn .wp-block-button__link {
	background: var(--sc-gradient);
	color: #fff;
	border-radius: 999px;
	padding: 0.85em 1.9em;
	font-weight: 600;
	border: 0;
	box-shadow: 0 8px 22px rgba(10, 108, 240, 0.3);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.wp-block-button.sc-btn .wp-block-button__link:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(10, 108, 240, 0.4);
}
.wp-block-button.sc-btn-ghost .wp-block-button__link {
	background: transparent;
	color: #fff;
	border: 2px solid rgba(255, 255, 255, 0.55);
	border-radius: 999px;
	padding: calc(0.85em - 2px) 1.9em;
	font-weight: 600;
}
.wp-block-button.sc-btn-ghost .wp-block-button__link:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, 0.08);
}

/* ---------- Tarjetas ---------- */
.sc-cards { gap: 28px !important; }
.sc-card {
	background: #fff;
	border: 1px solid var(--sc-border);
	border-radius: var(--sc-radius);
	padding: 32px 28px;
	box-shadow: var(--sc-shadow);
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
	height: 100%;
	text-align: left;
}
.sc-card:hover {
	transform: translateY(-4px);
	border-color: rgba(10, 108, 240, 0.35);
	box-shadow: 0 16px 40px rgba(11, 34, 68, 0.14);
}
.sc-card::before {
	content: "";
	display: block;
	width: 46px;
	height: 52px;
	margin-bottom: 18px;
	background: var(--sc-gradient);
	clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%);
}
.sc-card h3 { margin-top: 0; font-size: 1.3rem; }
.sc-card p { color: var(--sc-text); }
.sc-card ul { padding-left: 1.1em; color: var(--sc-text); }
.sc-card .sc-price {
	font-weight: 700;
	color: var(--sc-blue);
	margin-bottom: 0;
}

/* ---------- Cifras ---------- */
.sc-stats {
	background: var(--sc-navy);
	color: #fff;
	padding-top: 56px;
	padding-bottom: 56px;
}
.sc-stat { text-align: center; }
.sc-stat .sc-stat-num {
	font-size: clamp(2.2rem, 4vw, 3rem);
	font-weight: 800;
	margin: 0;
	background: linear-gradient(90deg, #4fb4ff, var(--sc-cyan));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.sc-stat .sc-stat-label {
	margin: 0;
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.95rem;
}

/* ---------- Bloque CTA ---------- */
.sc-cta {
	background: var(--sc-gradient);
	color: #fff;
	border-radius: 22px;
	padding: clamp(40px, 6vw, 64px);
	text-align: center;
}
.sc-cta h2, .sc-cta p { color: #fff; }
.sc-cta .wp-block-button.sc-btn .wp-block-button__link {
	background: #fff;
	color: var(--sc-blue);
	box-shadow: none;
}

/* ---------- Formulario ---------- */
.sc-form-wrap {
	background: #fff;
	border: 1px solid var(--sc-border);
	border-radius: var(--sc-radius);
	box-shadow: var(--sc-shadow);
	padding: clamp(24px, 4vw, 40px);
}
.sc-form .sc-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}
@media (max-width: 680px) {
	.sc-form .sc-row { grid-template-columns: 1fr; }
}
.sc-form label {
	display: block;
	font-weight: 600;
	color: var(--sc-navy);
	margin-bottom: 6px;
	font-size: 0.95rem;
}
.sc-form .sc-field { margin-bottom: 18px; }
.sc-form input[type="text"],
.sc-form input[type="email"],
.sc-form input[type="tel"],
.sc-form select,
.sc-form textarea {
	width: 100%;
	border: 1px solid var(--sc-border);
	border-radius: 10px;
	padding: 12px 14px;
	background: var(--sc-bg-soft);
	font-size: 1rem;
	transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}
.sc-form input:focus,
.sc-form select:focus,
.sc-form textarea:focus {
	outline: none;
	border-color: var(--sc-blue);
	background: #fff;
	box-shadow: 0 0 0 4px rgba(10, 108, 240, 0.12);
}
.sc-form textarea { min-height: 150px; resize: vertical; }
.sc-form .sc-check label {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-weight: 400;
	color: var(--sc-text);
}
.sc-form .sc-check input { margin-top: 4px; }
.sc-form .sc-hp { position: absolute !important; left: -9999px !important; }
.sc-form button[type="submit"] {
	background: var(--sc-gradient);
	color: #fff;
	border: 0;
	border-radius: 999px;
	padding: 0.9em 2.2em;
	font-weight: 600;
	font-size: 1rem;
	cursor: pointer;
	box-shadow: 0 8px 22px rgba(10, 108, 240, 0.3);
}
.sc-form button[type="submit"]:hover { filter: brightness(1.08); }
.sc-notice {
	border-radius: 10px;
	padding: 14px 18px;
	margin-bottom: 20px;
	font-weight: 500;
}
.sc-notice.sc-ok { background: #e6f8ef; color: #11683d; border: 1px solid #b6e8cd; }
.sc-notice.sc-error { background: #fdecec; color: #8a1c1c; border: 1px solid #f3c2c2; }

.sc-contact-info p { margin-bottom: 0.6em; color: var(--sc-text); }
.sc-contact-info strong { color: var(--sc-navy); }

/* ---------- Pie ---------- */
.site-footer .site-bottom-footer-wrap,
.site-footer .site-middle-footer-wrap,
.site-footer .site-top-footer-wrap {
	background: var(--sc-navy-dark);
	color: rgba(255, 255, 255, 0.7);
}
.site-footer a { color: #fff; }
.site-footer a:hover { color: var(--sc-cyan); }
