/*
Theme Name: Bytes CR Child
Theme URI: https://bytescr.com
Template: bytes-cr
Author: Bytes CR
Author URI: https://bytescr.com
Description: Tema hijo de Bytes CR. Úselo para personalizaciones y ajustes de estilo sin modificar el tema padre, garantizando actualizaciones seguras.
Version: 1.5.3
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bytescr-child
*/

/* Agregue aquí sus estilos personalizados. Se cargan después del tema padre. */

/* ==========================================================
   CONTACTO PREMIUM — respaldo desde el tema hijo v1.2.0
   ========================================================== */
.contact-premium-section{position:relative;overflow:hidden;background:linear-gradient(180deg,#f5f8f7 0%,#eef5f1 100%)}
.contact-premium-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);overflow:hidden;border:1px solid rgba(22,255,143,.22);border-radius:30px;background:#07110d;box-shadow:0 32px 80px rgba(0,0,0,.22)}
.contact-visual{position:relative;min-height:640px;padding:clamp(34px,5vw,70px);display:flex;align-items:flex-end;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 22% 25%,rgba(22,255,143,.18),transparent 34%),radial-gradient(circle at 78% 75%,rgba(0,174,239,.12),transparent 36%),linear-gradient(145deg,#06100c 0%,#0a1b14 100%)}
.contact-visual .tech-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.contact-visual-grid{position:absolute;inset:0;z-index:-1;opacity:.32;background-image:linear-gradient(rgba(22,255,143,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(22,255,143,.08) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.95),transparent)}
.contact-visual::after{content:"";position:absolute;inset:auto -18% -42% 5%;height:65%;border:1px solid rgba(22,255,143,.22);border-radius:50%;box-shadow:0 0 70px rgba(22,255,143,.12);transform:rotate(-9deg);z-index:-1}
.contact-visual-content{position:relative;z-index:2;max-width:610px;color:#fff}
.contact-visual-content h2{color:#fff;font-size:clamp(2rem,4vw,4.4rem);line-height:1.02;letter-spacing:-.045em;margin:.6rem 0 1rem}
.contact-visual-content>p:not(.eyebrow){max-width:540px;color:rgba(255,255,255,.72);font-size:1.03rem}
.contact-live-status{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border:1px solid rgba(22,255,143,.25);border-radius:999px;background:rgba(5,20,14,.65);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#dfffee}
.contact-live-status i{width:9px;height:9px;border-radius:50%;background:#16ff8f;box-shadow:0 0 0 0 rgba(22,255,143,.65);animation:bytescrContactPulse 2s infinite}
.contact-signal-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.contact-signal-row span{padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.11);color:rgba(255,255,255,.82);font-size:.82rem;font-weight:700}
.contact-panel{padding:clamp(32px,4.5vw,64px);background:#fff;display:flex;flex-direction:column;justify-content:center}
.contact-heading{margin-bottom:24px}.contact-heading p{max-width:570px;color:#5c6a63}
.contact-primary-action{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:18px;border-radius:18px;background:linear-gradient(135deg,#0a2016,#0f3826);color:#fff!important;box-shadow:0 16px 35px rgba(7,42,26,.18);transition:transform .25s ease,box-shadow .25s ease}
.contact-primary-action:hover{transform:translateY(-3px);box-shadow:0 22px 45px rgba(7,42,26,.27)}
.contact-action-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#16ff8f;color:#042416}.contact-action-icon svg{width:25px;height:25px}
.contact-primary-action strong,.contact-primary-action small{display:block}.contact-primary-action small{margin-top:3px;color:rgba(255,255,255,.65)}.contact-action-arrow{font-size:1.55rem;color:#16ff8f}
.contact-detail-list{display:grid;gap:11px;margin:18px 0}.contact-detail{display:flex;align-items:center;gap:13px;padding:14px 16px;border:1px solid #dfe8e3;border-radius:15px;color:#13241b!important;background:#fbfdfc;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.contact-detail:hover{transform:translateX(4px);border-color:rgba(17,187,100,.45);box-shadow:0 10px 25px rgba(4,44,25,.07)}
.contact-detail-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:#e9fff4;color:#0c9f59}.contact-detail-icon svg{width:23px;height:23px}.contact-detail small,.contact-detail strong{display:block}.contact-detail small{color:#6d7b74;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em}.contact-detail strong{font-size:.96rem}
.contact-social-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid #e4ebe7;color:#607069;font-size:.86rem;font-weight:700}.contact-social-row .social-links{display:flex;gap:8px}.contact-social-row .social-link{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#eff7f3;color:#0b3924;transition:.2s ease}.contact-social-row .social-link:hover{background:#0d2d1d;color:#16ff8f;transform:translateY(-2px)}
@keyframes bytescrContactPulse{0%{box-shadow:0 0 0 0 rgba(22,255,143,.55)}70%{box-shadow:0 0 0 10px rgba(22,255,143,0)}100%{box-shadow:0 0 0 0 rgba(22,255,143,0)}}
@media(max-width:980px){.contact-premium-shell{grid-template-columns:1fr}.contact-visual{min-height:500px}.contact-panel{padding:42px}}
@media(max-width:600px){.contact-premium-section .container{padding-inline:14px}.contact-premium-shell{border-radius:22px}.contact-visual{min-height:430px;padding:30px 24px}.contact-panel{padding:30px 22px}.contact-visual-content h2{font-size:2.2rem}.contact-social-row{align-items:flex-start;flex-direction:column}.contact-primary-action{grid-template-columns:auto 1fr}.contact-action-arrow{display:none}}
@media(prefers-reduced-motion:reduce){.contact-live-status i{animation:none}.contact-primary-action,.contact-detail,.contact-social-row .social-link{transition:none}}

/* v1.3.0: la sección de demostración tecnológica se hereda del tema padre. */

/* Demo v1.5.1: sección visual limpia, sin formulario ni mano. */
.demo-showcase-only .demo-tech-inner { display: block; }
.demo-showcase-only .demo-tech-copy {
	width: min(100%, 920px);
	max-width: 920px;
	margin: 0 auto;
	text-align: center;
}
.demo-showcase-only .demo-benefits {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 900px;
	margin: 34px auto 0;
	text-align: left;
}
.demo-showcase-only .demo-form,
.demo-showcase-only .demo-hand-visual { display: none !important; }
@media (max-width: 700px) {
	.demo-showcase-only .demo-benefits { grid-template-columns: 1fr; }
}


/* v1.5.2: sección de contacto a ancho completo. */
.contact-premium-section { padding-left: 0 !important; padding-right: 0 !important; }
.contact-fullwidth-container { width: 100%; max-width: none; margin: 0; padding: 0; }
.contact-fullwidth-container .contact-premium-shell {
	width: 100%; max-width: none; margin: 0;
	border-left: 0; border-right: 0; border-radius: 0;
}
@media (max-width: 980px) {
	.contact-fullwidth-container .contact-premium-shell { border-radius: 0; }
}

/* ==========================================================
   FOOTER PREMIUM BYTES CR — v1.5.3
   Integrado con la estética tecnológica negro/verde del sitio.
   ========================================================== */
.site-footer {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding-top: clamp(72px, 8vw, 118px);
	color: rgba(232, 255, 244, .76);
	background:
		radial-gradient(circle at 10% 10%, rgba(22, 255, 143, .13), transparent 27%),
		radial-gradient(circle at 88% 78%, rgba(0, 174, 239, .10), transparent 30%),
		linear-gradient(145deg, #020a07 0%, #06140e 48%, #03100b 100%);
	border-top: 1px solid rgba(22, 255, 143, .28);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025), 0 -24px 70px rgba(3, 40, 24, .09);
}
.site-footer::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -2;
	pointer-events: none;
	opacity: .34;
	background-image:
		linear-gradient(rgba(22, 255, 143, .07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(22, 255, 143, .07) 1px, transparent 1px);
	background-size: 48px 48px;
	-webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,.92), transparent 86%);
	mask-image: linear-gradient(to bottom, rgba(0,0,0,.92), transparent 86%);
}
.site-footer::after {
	content: "";
	position: absolute;
	left: 50%;
	top: -1px;
	width: min(72vw, 1080px);
	height: 2px;
	z-index: 3;
	transform: translateX(-50%);
	background: linear-gradient(90deg, transparent, rgba(22,255,143,.9), transparent);
	box-shadow: 0 0 18px rgba(22,255,143,.65), 0 0 44px rgba(22,255,143,.25);
}
.site-footer .footer-top {
	position: relative;
	z-index: 2;
	grid-template-columns: minmax(250px, 1.45fr) repeat(3, minmax(150px, .85fr));
	gap: clamp(30px, 5vw, 76px);
	padding-bottom: clamp(52px, 6vw, 78px);
	border-bottom: 1px solid rgba(141, 255, 203, .12);
}
.site-footer .footer-brand {
	max-width: 390px;
}
.site-footer .site-title-text.light {
	display: inline-flex;
	align-items: baseline;
	font-size: clamp(1.75rem, 2.5vw, 2.45rem);
	font-weight: 900;
	letter-spacing: -.055em;
	color: #fff;
	text-shadow: 0 0 28px rgba(22, 255, 143, .12);
}
.site-footer .site-title-text.light strong {
	color: #16ff8f;
	text-shadow: 0 0 20px rgba(22, 255, 143, .45);
}
.site-footer .footer-brand p {
	max-width: 360px;
	margin-top: 18px;
	font-size: .96rem;
	line-height: 1.75;
	color: rgba(220, 240, 230, .64);
}
.site-footer .footer-social {
	display: flex;
	flex-wrap: wrap;
	gap: 11px;
	margin-top: 24px;
}
.site-footer .footer-social a,
.site-footer .social-links a,
.site-footer .social-link {
	width: 42px;
	height: 42px;
	border: 1px solid rgba(22, 255, 143, .18);
	border-radius: 13px;
	background: rgba(255,255,255,.045);
	color: #dfffee;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transition: transform .25s ease, color .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease;
}
.site-footer .footer-social a:hover,
.site-footer .social-links a:hover,
.site-footer .social-link:hover {
	transform: translateY(-4px);
	color: #04150d;
	border-color: #16ff8f;
	background: #16ff8f;
	box-shadow: 0 10px 26px rgba(22,255,143,.22), 0 0 22px rgba(22,255,143,.18);
}
.site-footer .footer-col h4 {
	position: relative;
	margin-bottom: 22px;
	padding-bottom: 12px;
	font-size: .83rem;
	font-weight: 850;
	letter-spacing: .11em;
	text-transform: uppercase;
	color: #f2fff8;
}
.site-footer .footer-col h4::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 34px;
	height: 2px;
	border-radius: 999px;
	background: #16ff8f;
	box-shadow: 0 0 12px rgba(22,255,143,.55);
}
.site-footer .footer-col ul {
	gap: 13px;
}
.site-footer .footer-col a {
	position: relative;
	display: inline-flex;
	align-items: center;
	font-size: .9rem;
	color: rgba(207, 232, 219, .62);
	transition: color .2s ease, transform .2s ease;
}
.site-footer .footer-col a::before {
	content: "";
	width: 0;
	height: 1px;
	margin-right: 0;
	background: #16ff8f;
	box-shadow: 0 0 8px rgba(22,255,143,.55);
	transition: width .2s ease, margin-right .2s ease;
}
.site-footer .footer-col a:hover {
	color: #fff;
	transform: translateX(3px);
}
.site-footer .footer-col a:hover::before {
	width: 13px;
	margin-right: 8px;
}
.site-footer .footer-widgets {
	position: relative;
	z-index: 2;
	padding-top: 36px;
	padding-bottom: 36px;
	border-bottom: 1px solid rgba(141,255,203,.11);
}
.site-footer .footer-bottom {
	position: relative;
	z-index: 2;
	background: rgba(0,0,0,.18);
	border-top: 1px solid rgba(255,255,255,.025);
}
.site-footer .footer-bottom-inner {
	align-items: center;
	padding-top: 25px;
	padding-bottom: 25px;
	font-size: .78rem;
	letter-spacing: .015em;
	color: rgba(191, 220, 205, .47);
}
.site-footer .footer-tagline {
	color: rgba(207, 239, 222, .56);
}
.site-footer .footer-tagline::before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 7px;
	margin-right: 8px;
	border-radius: 50%;
	background: #16ff8f;
	box-shadow: 0 0 11px rgba(22,255,143,.75);
}
.back-to-top {
	border: 1px solid rgba(22,255,143,.35);
	background: linear-gradient(145deg, #16ff8f, #08bd68);
	color: #032014;
	box-shadow: 0 12px 30px rgba(8,189,104,.28), 0 0 22px rgba(22,255,143,.18);
}
.back-to-top:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 34px rgba(8,189,104,.34), 0 0 28px rgba(22,255,143,.24);
}
@media (max-width: 980px) {
	.site-footer .footer-top {
		grid-template-columns: 1.25fr 1fr 1fr;
	}
	.site-footer .footer-brand {
		grid-column: 1 / -1;
		max-width: 620px;
	}
}
@media (max-width: 680px) {
	.site-footer { padding-top: 64px; }
	.site-footer .footer-top {
		grid-template-columns: 1fr 1fr;
		gap: 38px 24px;
	}
	.site-footer .footer-brand { grid-column: 1 / -1; }
	.site-footer .footer-bottom-inner { align-items: flex-start; flex-direction: column; gap: 10px; }
}
@media (max-width: 430px) {
	.site-footer .footer-top { grid-template-columns: 1fr; }
	.site-footer .footer-brand { grid-column: auto; }
}
@media (prefers-reduced-motion: reduce) {
	.site-footer .footer-col a,
	.site-footer .footer-social a,
	.site-footer .social-links a,
	.site-footer .social-link,
	.back-to-top { transition: none; }
}
