/*
 * SURELEC Site Installer
 * Sin fuentes externas: usa fuentes del sistema del visitante.
 */

.surelec-managed-page .entry-title,
.surelec-managed-page .wp-block-post-title,
.surelec-managed-page main > .page-header,
.surelec-managed-page .page-title {
	display:none !important;
}

.surelec-managed-page .entry-content,
.surelec-managed-page .wp-site-blocks,
.surelec-managed-page .site-main {
	margin-top:0;
}

.surelec-page {
	--blue:#243165;
	--blue-dark:#18234f;
	--orange:#E76213;
	--grey:#888687;
	--soft:#F7F8FA;
	--line:#E6E9EF;
	--text:#252A35;
	--muted:#68707D;
	--white:#FFFFFF;
	--max:1180px;
	--shadow:0 18px 48px rgba(36,49,101,.10);

	position:relative;
	left:50%;
	width:100vw;
	max-width:100vw;
	margin-left:-50vw;
	color:var(--text);
	background:#fff;
	font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
	line-height:1.6;
	overflow:hidden;
}

.surelec-page *,
.surelec-page *::before,
.surelec-page *::after { box-sizing:border-box; }

.surelec-page img {
	display:block;
	max-width:100%;
	height:auto;
}

.surelec-page a {
	color:inherit;
	text-decoration:none;
}

.surelec-page h1,
.surelec-page h2,
.surelec-page h3 {
	font-family:"Arial Narrow","Aptos Narrow","Bahnschrift Condensed","Segoe UI",system-ui,sans-serif;
	font-weight:750;
	font-stretch:condensed;
	letter-spacing:-.025em;
}

.surelec-page h1 {
	font-size:clamp(2.8rem,6vw,5.4rem);
	line-height:.95;
	margin:0;
}

.surelec-page h2 {
	font-size:clamp(2rem,4.2vw,3.45rem);
	line-height:1;
	margin:0;
	color:var(--blue);
}

.surelec-page h3 {
	font-size:1.45rem;
	line-height:1.08;
	margin:0;
	color:var(--blue);
}

.surelec-container {
	width:min(var(--max),calc(100% - 40px));
	margin-inline:auto;
}

.surelec-kicker {
	color:var(--orange);
	font-size:.74rem;
	font-weight:800;
	letter-spacing:.15em;
	text-transform:uppercase;
	margin-bottom:9px;
}

.surelec-kicker--light { color:#ff7a27; }

.surelec-section { padding:86px 0; }
.surelec-soft { background:var(--soft); }
.surelec-section__head { margin-bottom:36px; }
.surelec-section__head > p,
.surelec-lead {
	max-width:780px;
	margin:15px 0 0;
	color:var(--muted);
}

.surelec-hero {
	position:relative;
	min-height:650px;
	display:flex;
	align-items:center;
	color:#fff;
	background:
		radial-gradient(circle at 88% 15%,rgba(231,98,19,.17),transparent 25%),
		linear-gradient(135deg,var(--blue-dark),var(--blue) 61%,#30417e);
}

.surelec-hero::after {
	content:"";
	position:absolute;
	width:520px;
	height:520px;
	right:-245px;
	bottom:-270px;
	border:82px solid rgba(255,255,255,.024);
	border-radius:50%;
}

.surelec-hero__grid {
	position:relative;
	z-index:1;
	display:grid;
	grid-template-columns:.95fr 1.05fr;
	align-items:center;
	gap:58px;
	padding:68px 0;
}

.surelec-hero h1,
.surelec-page-hero h1 {
	color:#fff !important;
}

.surelec-hero h1 span {
	display:block;
	color:var(--orange) !important;
}

.surelec-hero__copy > p {
	max-width:620px;
	font-size:1.08rem;
	color:rgba(255,255,255,.80);
	margin:23px 0 28px;
}

.surelec-actions {
	display:flex;
	flex-wrap:wrap;
	gap:12px;
}

.surelec-btn {
	min-height:51px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:0 24px;
	border-radius:9px;
	font-weight:800;
	font-size:.86rem;
	text-transform:uppercase;
	transition:transform .18s ease,filter .18s ease;
}

.surelec-btn:hover { transform:translateY(-2px); filter:brightness(1.04); }
.surelec-btn--orange { background:var(--orange); color:#fff; }
.surelec-btn--ghost {
	color:#fff;
	background:rgba(255,255,255,.04);
	border:1px solid rgba(255,255,255,.32);
}
.surelec-btn--blue { background:var(--blue); color:#fff; }

.surelec-hero__media {
	margin:0;
	min-height:420px;
	overflow:hidden;
	border-radius:25px;
	border:1px solid rgba(255,255,255,.12);
	box-shadow:0 30px 75px rgba(0,0,0,.2);
	background:#16203f;
}

.surelec-hero__image {
	width:100%;
	height:100%;
	min-height:420px;
	object-fit:cover;
	object-position:center;
}

.surelec-quick-wrap{
	padding:32px 0 18px;
	background:#fff;
}

.surelec-quick{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:18px;
	align-items:stretch;
	margin:0;
	padding:0;
	background:transparent;
	border:0;
	box-shadow:none;
}

.surelec-quick__item{
	min-width:0;
	min-height:154px;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:8px;
	padding:22px 18px;
	text-align:center;
	border:1px solid rgba(36,49,101,.10);
	border-radius:18px;
	background:
		linear-gradient(180deg,#ffffff 0%,#fbfcff 100%);
	box-shadow:0 12px 30px rgba(36,49,101,.07);
	color:var(--blue);
	transition:
		transform .18s ease,
		box-shadow .18s ease,
		border-color .18s ease;
}

.surelec-quick__item:hover{
	transform:translateY(-3px);
	border-color:rgba(231,98,19,.28);
	box-shadow:0 18px 38px rgba(36,49,101,.11);
}

.surelec-quick__icon{
	width:48px;
	height:48px;
	flex:0 0 48px;
	display:grid;
	place-items:center;
	margin:0 0 2px;
	border-radius:14px;
	background:var(--blue);
	color:#fff;
	font-size:1.18rem;
	line-height:1;
	box-shadow:0 8px 18px rgba(36,49,101,.16);
}

.surelec-quick__item > span:last-child{
	width:100%;
	min-width:0;
	display:grid;
	grid-template-rows:18px minmax(28px,auto);
	align-items:center;
	justify-items:center;
	row-gap:3px;
}

.surelec-quick small{
	display:block;
	width:100%;
	height:18px;
	margin:0;
	color:var(--orange);
	font-size:.68rem;
	font-weight:850;
	line-height:18px;
	letter-spacing:.09em;
	text-transform:uppercase;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}

.surelec-quick strong{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:28px;
	margin:0;
	color:var(--blue);
	font-size:1.02rem;
	font-weight:800;
	line-height:1.18;
	overflow-wrap:anywhere;
	word-break:normal;
}

@media(max-width:900px){
	.surelec-quick{
		grid-template-columns:1fr;
		gap:11px;
	}

	.surelec-quick__item{
		min-height:100px;
		display:grid;
		grid-template-columns:48px minmax(0,1fr);
		grid-template-rows:auto;
		align-items:center;
		justify-items:start;
		column-gap:15px;
		padding:17px 19px;
		text-align:left;
	}

	.surelec-quick__icon{
		margin:0;
		grid-column:1;
	}

	.surelec-quick__item > span:last-child{
		grid-column:2;
		width:100%;
		justify-items:start;
	}

	.surelec-quick small,
	.surelec-quick strong{
		text-align:left;
		justify-content:flex-start;
	}
}

@media(max-width:620px){
	.surelec-quick-wrap{
		padding:18px 0 8px;
	}

	.surelec-quick__item{
		min-height:94px;
		padding:15px 16px;
		border-radius:15px;
	}

	.surelec-quick strong{
		font-size:.98rem;
	}
}

.surelec-services__grid {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:19px;
}

.surelec-card {
	padding:29px;
	min-height:260px;
	border:1px solid var(--line);
	border-radius:17px;
	background:#fff;
	box-shadow:0 8px 28px rgba(36,49,101,.035);
	transition:.2s ease;
}

.surelec-card:hover {
	transform:translateY(-4px);
	border-color:rgba(231,98,19,.35);
	box-shadow:var(--shadow);
}

.surelec-card__number {
	color:var(--orange);
	font-size:.72rem;
	font-weight:850;
	margin-bottom:18px;
}

.surelec-card__icon {
	width:50px;
	height:50px;
	display:grid;
	place-items:center;
	margin-bottom:19px;
	border-radius:13px;
	background:var(--blue);
	color:#fff;
	font-size:1.34rem;
}

.surelec-card p {
	margin:10px 0 0;
	color:var(--muted);
	font-size:.93rem;
}

.surelec-card h3 a:hover { color:var(--orange); }

.surelec-center-link {
	margin:30px 0 0;
	text-align:center;
	font-weight:800;
	color:var(--blue);
}
.surelec-center-link a:hover,
.surelec-text-link a:hover { color:var(--orange); }

.surelec-about { background:var(--soft); }

.surelec-about__grid {
	display:grid;
	grid-template-columns:.9fr 1.1fr;
	gap:64px;
	align-items:center;
}

.surelec-about__visual,
.surelec-image-card {
	margin:0;
	overflow:hidden;
	border-radius:23px;
	background:var(--blue-dark);
	box-shadow:var(--shadow);
}

.surelec-about__visual img {
	width:100%;
	aspect-ratio:4/3;
	object-fit:cover;
}

.surelec-about__visual figcaption,
.surelec-image-card figcaption {
	padding:8px 12px;
	background:#fff;
	color:#858b95;
	font-size:.72rem;
}

.surelec-about__copy p { color:var(--muted); margin:16px 0 0; }

.surelec-checks {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:11px 17px;
	margin-top:24px;
}

.surelec-checks > div {
	display:flex;
	align-items:flex-start;
	gap:8px;
	color:var(--blue);
	font-weight:800;
	font-size:.91rem;
}

.surelec-checks > div::before {
	content:"✓";
	width:23px;
	height:23px;
	flex:0 0 auto;
	display:grid;
	place-items:center;
	border-radius:50%;
	background:#fff1e8;
	color:var(--orange);
}

.surelec-text-link {
	margin-top:22px !important;
	font-weight:800;
	color:var(--blue) !important;
}

.surelec-text-link--light,
.surelec-text-link--light a { color:#fff !important; }

.surelec-process__grid {
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:15px;
	margin-top:31px;
}

.surelec-process__grid article {
	min-height:180px;
	padding:24px 22px;
	border-top:4px solid var(--orange);
	border-radius:0 0 15px 15px;
	background:var(--soft);
}

.surelec-process__grid span {
	color:var(--orange);
	font-size:.72rem;
	font-weight:850;
}

.surelec-process__grid h3 { margin:10px 0 7px; }
.surelec-process__grid p { margin:0; color:var(--muted); font-size:.88rem; }

.surelec-projects { background:var(--soft); }

.surelec-projects__grid {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:19px;
	margin-top:31px;
}

.surelec-project {
	overflow:hidden;
	border:1px solid var(--line);
	border-radius:17px;
	background:#fff;
}

.surelec-project__image {
	margin:0;
	aspect-ratio:16/10;
	overflow:hidden;
	background:var(--blue-dark);
}

.surelec-project__image img {
	width:100%;
	height:100%;
	object-fit:cover;
}

.surelec-project__body { padding:20px; }
.surelec-project__body h2 { font-size:1.65rem; }
.surelec-project__body h3 { font-size:1.45rem; }
.surelec-project__body p { margin:8px 0 0; color:var(--muted); font-size:.9rem; }
.surelec-project__body small {
	display:block;
	margin-top:12px;
	color:#949aa4;
	font-size:.72rem;
	text-transform:uppercase;
	letter-spacing:.06em;
}

.surelec-area {
	color:#fff;
	background:
		radial-gradient(circle at 4% 100%,rgba(255,255,255,.05),transparent 27%),
		var(--blue);
}

.surelec-area h2 { color:#fff; }
.surelec-area__grid {
	display:grid;
	grid-template-columns:1.1fr .9fr;
	align-items:center;
	gap:48px;
}
.surelec-area__grid > div:first-child > p {
	color:rgba(255,255,255,.73);
	margin:15px 0 0;
}
.surelec-area__card {
	padding:30px;
	border-radius:18px;
	border:1px solid rgba(255,255,255,.14);
	background:rgba(255,255,255,.065);
}
.surelec-area__card strong { display:block; font-size:1.1rem; margin-bottom:7px; }
.surelec-area__card p { margin:0; color:rgba(255,255,255,.74); }
.surelec-area__card a { font-weight:800; color:#fff; }

.surelec-cta { padding:62px 0; }
.surelec-cta__box {
	display:grid;
	grid-template-columns:1fr auto;
	gap:32px;
	align-items:center;
	padding:46px 50px;
	border-radius:22px;
	color:#fff;
	background:linear-gradient(120deg,var(--orange),#f27b31);
}
.surelec-cta__box h2 { color:#fff; }
.surelec-cta__box p { margin:8px 0 0; color:rgba(255,255,255,.88); }

.surelec-page-hero {
	padding:80px 0 70px;
	color:#fff;
	background:
		radial-gradient(circle at 85% 15%,rgba(231,98,19,.17),transparent 25%),
		linear-gradient(135deg,var(--blue-dark),var(--blue));
}
.surelec-page-hero h1 { max-width:900px; }
.surelec-page-hero p {
	max-width:760px;
	color:rgba(255,255,255,.78);
	font-size:1.05rem;
	margin:18px 0 0;
}
.surelec-page-hero--compact { padding:55px 0; }

.surelec-two-col {
	display:grid;
	grid-template-columns:1.08fr .92fr;
	gap:58px;
	align-items:center;
}
.surelec-two-col p { color:var(--muted); }
.surelec-image-card img {
	width:100%;
	aspect-ratio:16/11;
	object-fit:cover;
}

.surelec-reading { max-width:880px; }
.surelec-reading p { color:var(--muted); }
.surelec-reading h2 { margin-top:42px; }
.surelec-reading h2:first-child { margin-top:0; }
.surelec-reading a { color:var(--blue); font-weight:750; text-decoration:underline; text-decoration-color:rgba(231,98,19,.45); text-underline-offset:3px; }

.surelec-list {
	padding-left:1.25rem;
	color:var(--muted);
}
.surelec-list li { margin:.48rem 0; }
.surelec-list li::marker { color:var(--orange); }

.surelec-inline-links {
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-top:27px;
}
.surelec-inline-links a {
	padding:10px 14px;
	border-radius:999px;
	background:#f0f2f6;
	color:var(--blue);
	font-size:.85rem;
	font-weight:800;
}
.surelec-inline-links a:hover { background:#fff1e8; color:var(--orange); }

.surelec-contact { background:var(--soft); }
.surelec-contact__grid {
	display:grid;
	grid-template-columns:.88fr 1.12fr;
	gap:52px;
	align-items:start;
}
.surelec-contact__grid > div:first-child > p { color:var(--muted); }

.surelec-contact__options {
	display:grid;
	gap:11px;
	margin-top:24px;
}
.surelec-contact__options a {
	padding:15px 17px;
	border:1px solid var(--line);
	border-radius:13px;
	background:#fff;
	color:var(--blue);
	font-weight:800;
}
.surelec-contact__options a:hover { border-color:rgba(231,98,19,.4); }

.surelec-form {
	padding:27px;
	border:1px solid var(--line);
	border-radius:19px;
	background:#fff;
	box-shadow:0 15px 40px rgba(36,49,101,.06);
}
.surelec-field { margin-bottom:13px; }
.surelec-field label {
	display:block;
	margin-bottom:5px;
	color:var(--blue);
	font-size:.78rem;
	font-weight:800;
}
.surelec-field input,
.surelec-field select,
.surelec-field textarea {
	width:100%;
	padding:12px 13px;
	border:1px solid #dce1e8;
	border-radius:9px;
	background:#fff;
	color:var(--text);
	font:inherit;
	outline:none;
}
.surelec-field input:focus,
.surelec-field select:focus,
.surelec-field textarea:focus {
	border-color:var(--orange);
	box-shadow:0 0 0 3px rgba(231,98,19,.09);
}
.surelec-field textarea { min-height:125px; resize:vertical; }
.surelec-form button {
	width:100%;
	min-height:50px;
	border:0;
	border-radius:9px;
	background:var(--orange);
	color:#fff;
	cursor:pointer;
	font:inherit;
	font-weight:850;
	text-transform:uppercase;
}
.surelec-form__note { margin:9px 0 0; color:#878d98; font-size:.76rem; }

.surelec-note {
	margin-top:35px;
	padding:17px 19px;
	border-left:4px solid var(--blue);
	border-radius:0 10px 10px 0;
	background:#f2f4f7;
	color:#5f6672;
	font-size:.9rem;
}
.surelec-note--warning { border-color:var(--orange); background:#fff7f1; }

@media(max-width:900px) {
	.surelec-hero { min-height:auto; }
	.surelec-hero__grid {
		grid-template-columns:1fr;
		gap:35px;
		padding:55px 0 68px;
	}
	.surelec-hero__media,
	.surelec-hero__image { min-height:320px; }
	.surelec-quick {
		grid-template-columns:1fr;
		gap:10px;
	}
	.surelec-quick__item {
		min-height:78px;
		padding:16px 18px;
	}
	.surelec-services__grid { grid-template-columns:1fr 1fr; }
	.surelec-about__grid,
	.surelec-two-col,
	.surelec-area__grid,
	.surelec-contact__grid { grid-template-columns:1fr; }
	.surelec-about__grid { gap:38px; }
	.surelec-process__grid { grid-template-columns:1fr 1fr; }
	.surelec-projects__grid { grid-template-columns:1fr 1fr; }
	.surelec-cta__box { grid-template-columns:1fr; }
	.surelec-cta__box .surelec-btn { width:max-content; }
}

@media(max-width:620px) {
	.surelec-container { width:min(var(--max),calc(100% - 28px)); }
	.surelec-section { padding:64px 0; }
	.surelec-page h1 { font-size:clamp(2.7rem,14vw,4.3rem); }
	.surelec-page h2 { font-size:clamp(2rem,10vw,3rem); }

	.surelec-hero__grid { padding:38px 0 50px; }
	.surelec-hero__copy > p { font-size:.98rem; margin:18px 0 22px; }
	.surelec-actions { display:grid; grid-template-columns:1fr; }
	.surelec-btn { width:100%; }
	.surelec-hero__media,
	.surelec-hero__image { min-height:230px; }
	.surelec-hero__media { border-radius:18px; }

	.surelec-services__grid,
	.surelec-process__grid,
	.surelec-projects__grid { grid-template-columns:1fr; }
	.surelec-card { min-height:auto; }
	.surelec-checks { grid-template-columns:1fr; }
	.surelec-projects__grid { gap:15px; }
	.surelec-cta { padding:44px 0; }
	.surelec-cta__box { padding:31px 22px; }
	.surelec-cta__box .surelec-btn { width:100%; }
	.surelec-page-hero { padding:58px 0 52px; }
}


/* =========================================================
   INICIO v1.4 — rediseño aislado
   No modifica el resto de páginas.
   ========================================================= */

.surelec-home-logo{
	display:flex;
	align-items:center;
	justify-content:flex-start;
	margin:0 0 22px;
}

.surelec-home-logo__image{
	display:block;
	width:clamp(250px,30vw,390px);
	max-width:100%;
	max-height:128px;
	height:auto;
	object-fit:contain;
	object-position:left center;
}

.surelec-home-hero-media{
	position:relative;
	align-self:center;
	width:100%;
	aspect-ratio:1/1;
	min-height:0;
	margin:0;
	padding:0;
	overflow:hidden;
	border:0;
	border-radius:24px;
	background:transparent;
	box-shadow:0 28px 68px rgba(0,0,0,.20);
	line-height:0;
}

.surelec-home-hero-media__image{
	position:absolute !important;
	inset:0 !important;
	display:block !important;
	width:100% !important;
	max-width:none !important;
	height:100% !important;
	max-height:none !important;
	margin:0 !important;
	padding:0 !important;
	object-fit:cover !important;
	object-position:left center !important;
	border:0 !important;
	border-radius:0 !important;
}

/* Nuevo concepto: una única barra de contacto, no tres tarjetas. */
.surelec-home-contact{
	padding:26px 0 18px;
	background:#fff;
}

.surelec-home-contact__bar{
	display:flex;
	flex-wrap:nowrap;
	align-items:stretch;
	width:100%;
	min-width:0;
	overflow:hidden;
	border-radius:17px;
	background:var(--blue);
	box-shadow:0 16px 36px rgba(36,49,101,.14);
}

.surelec-home-contact__item{
	position:relative;
	flex:1 1 0;
	min-width:0;
	min-height:92px;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:13px;
	padding:18px 20px;
	color:#fff;
	text-align:left;
	transition:background .18s ease;
}

.surelec-home-contact__item + .surelec-home-contact__item{
	border-left:1px solid rgba(255,255,255,.16);
}

.surelec-home-contact__item:hover{
	background:rgba(255,255,255,.075);
}

.surelec-home-contact__icon{
	width:42px;
	height:42px;
	flex:0 0 42px;
	display:grid;
	place-items:center;
	border-radius:12px;
	background:var(--orange);
	color:#fff;
	font-size:1.08rem;
	line-height:1;
}

.surelec-home-contact__text{
	min-width:0;
	display:flex;
	flex-direction:column;
	justify-content:center;
	gap:3px;
}

.surelec-home-contact__text small{
	display:block;
	margin:0;
	color:rgba(255,255,255,.66);
	font-size:.64rem;
	font-weight:800;
	line-height:1.1;
	letter-spacing:.10em;
	text-transform:uppercase;
	white-space:nowrap;
}

.surelec-home-contact__text strong{
	display:block;
	margin:0;
	color:#fff;
	font-size:.96rem;
	font-weight:800;
	line-height:1.15;
	white-space:nowrap;
}

@media(max-width:760px){
	.surelec-home-logo{
		justify-content:center;
		margin-bottom:20px;
	}

	.surelec-home-logo__image{
		width:min(310px,86vw);
		max-height:112px;
		object-position:center;
	}

	.surelec-home-hero-media{
		aspect-ratio:4/3;
		border-radius:18px;
	}

	.surelec-home-hero-media__image{
		width:100% !important;
		height:100% !important;
		object-fit:cover !important;
		object-position:left center !important;
	}

	.surelec-home-contact{
		padding:18px 0 8px;
	}

	.surelec-home-contact__bar{
		display:block;
		border-radius:15px;
	}

	.surelec-home-contact__item{
		width:100%;
		min-height:76px;
		justify-content:flex-start;
		padding:15px 18px;
	}

	.surelec-home-contact__item + .surelec-home-contact__item{
		border-left:0;
		border-top:1px solid rgba(255,255,255,.15);
	}

	.surelec-home-contact__text strong{
		white-space:normal;
	}
}

@media(max-width:430px){
	.surelec-home-contact__item{
		gap:12px;
		padding:14px 15px;
	}

	.surelec-home-contact__icon{
		width:40px;
		height:40px;
		flex-basis:40px;
	}

	.surelec-home-contact__text strong{
		font-size:.92rem;
	}
}
