:root{
	--ink:#121212;--muted:#6e6a61;--line:#ded7c9;--paper:#fbfaf7;--soft:#f1eee8;--olive:#4f5a42;--gold:#b79555;--charcoal:#20231d;
}
html{scroll-behavior:smooth}body{background:linear-gradient(135deg,#fbfaf7 0%,#fff 45%,#eee8db 100%);color:var(--ink)}
#wrapper:before{background:linear-gradient(180deg,var(--charcoal),#2e3329)}
.brand-line{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:1rem;margin-bottom:3rem;text-transform:uppercase;letter-spacing:.08rem;font-size:.78rem;font-weight:800;color:#fff}
.brand-line small{color:rgba(255,255,255,.72);font-size:.68rem}.executive-hero header{background:linear-gradient(145deg,#1b1e18,#3d4533);color:#fff}.executive-hero header h1{font-size:3.6rem;line-height:1.03;letter-spacing:-.08rem;color:#fff}.executive-hero header p{color:rgba(255,255,255,.82)}.hero-summary{max-width:34rem;font-size:1.05rem}.eyebrow{color:var(--gold);letter-spacing:.22rem;text-transform:uppercase;font-size:.76rem;font-weight:900;margin-bottom:1rem}.executive-hero .image.fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,18,18,.48),transparent 52%)}
.executive-badges,.tags{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.75rem 0}.executive-badges span,.tags span{border:1px solid rgba(183,149,85,.45);background:rgba(255,255,255,.09);color:#fff;border-radius:999px;padding:.55rem .9rem;font-size:.72rem;font-weight:900;letter-spacing:.08rem;text-transform:uppercase}.hero-actions{margin-top:1.6rem!important}
.lead{font-size:1.08rem}.section-focus .content{border-top:4px solid var(--gold)}.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2rem 0}.kpi-strip div,.service-grid article,.credential-grid div,.executive-timeline article,.case-grid article{background:rgba(255,255,255,.84);border:1px solid rgba(79,90,66,.16);box-shadow:0 18px 45px rgba(33,28,19,.075);border-radius:.35rem}.kpi-strip div{padding:1.25rem}.kpi-strip strong{display:block;color:var(--olive);font-size:1.75rem;line-height:1}.kpi-strip span{display:block;margin-top:.45rem;text-transform:uppercase;font-size:.72rem;letter-spacing:.06rem;font-weight:900;color:var(--muted)}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.service-grid article{padding:1.65rem;border-top:4px solid var(--olive);transition:.25s}.service-grid article:hover,.case-grid article:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(33,28,19,.12);border-color:rgba(183,149,85,.55)}.service-grid .icon{display:block;color:var(--gold);font-size:1.5rem;margin-bottom:1rem}.service-grid h3,.credential-grid h3,.case-grid h3{margin-bottom:.55rem;color:#20231d}.credential-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.credential-grid div{padding:1.35rem;border-left:4px solid var(--gold)}
.executive-timeline{position:relative}.executive-timeline:before{content:"";position:absolute;left:1rem;top:.5rem;bottom:.5rem;width:2px;background:var(--line)}.executive-timeline article{position:relative;margin:0 0 1.15rem 2.5rem;padding:1.35rem 1.5rem}.executive-timeline article:before{content:"";position:absolute;left:-2rem;top:1.45rem;width:1rem;height:1rem;border-radius:50%;background:var(--gold);box-shadow:0 0 0 7px rgba(183,149,85,.16)}.executive-timeline span,.case-grid span{display:inline-block;color:var(--gold);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08rem;margin-bottom:.45rem}.executive-timeline h4{margin:.1rem 0 .65rem;color:var(--olive);font-size:.9rem}.executive-tags span{background:#fff;color:var(--charcoal);border-color:rgba(79,90,66,.20);box-shadow:0 8px 20px rgba(0,0,0,.04)}
.executive-gallery a img,.image.main img{border-radius:.45rem;box-shadow:0 20px 55px rgba(0,0,0,.16)}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem}.case-grid article{padding:1.45rem;min-height:18rem;border-top:4px solid var(--gold)}.case-grid p{font-size:.92rem;margin-bottom:.8rem}.button.primary{background:var(--gold);color:#171714!important;box-shadow:none}.button.primary:hover{background:#fff!important;color:#171714!important}.button:hover{border-color:var(--gold)!important;color:var(--gold)!important}.items h3{color:var(--olive)}.copyright{color:rgba(0,0,0,.55)}
@media(max-width:980px){.executive-hero header h1{font-size:2.8rem}.kpi-strip,.service-grid,.credential-grid,.case-grid{grid-template-columns:1fr}.brand-line{display:block}.brand-line small{display:block;margin-top:.35rem}.executive-timeline:before{left:.5rem}.executive-timeline article{margin-left:1.75rem}.executive-timeline article:before{left:-1.75rem}}
@media(max-width:736px){.executive-hero header h1{font-size:2.15rem}.kpi-strip{grid-template-columns:1fr}.executive-badges span,.tags span{font-size:.68rem}.brand-line{margin-bottom:2rem}}


/* Ajuste solicitado: textos del panel izquierdo en blanco */
#wrapper > section > header h1,
#wrapper > section > header h2,
#wrapper > section > header h3,
#wrapper > section > header p,
#wrapper > section > header .lead,
#wrapper > section > header strong {
	color:#ffffff !important;
}
#wrapper > section > header p { color:rgba(255,255,255,.82) !important; }
#wrapper > section > header a { color:#ffffff !important; border-bottom-color:rgba(255,255,255,.35); }

/* Proyectos */
.portfolio-cases .featured-case{border-top-color:var(--olive);background:linear-gradient(180deg,#ffffff 0%,#f7f3eb 100%)}
.project-url{display:inline-block;margin:.25rem 0 1rem;padding:.45rem .75rem;border:1px solid rgba(79,90,66,.18);background:#fff;color:var(--olive);font-weight:900;letter-spacing:.04rem;border-radius:999px}
.project-showcase{display:grid;grid-template-columns:.85fr 1.15fr;gap:1.5rem;align-items:stretch;margin-top:1.5rem;padding:1.5rem;background:#fff;border:1px solid rgba(79,90,66,.16);box-shadow:0 18px 45px rgba(33,28,19,.075);border-radius:.45rem}
.project-showcase-text span{display:inline-block;color:var(--gold);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08rem;margin-bottom:.45rem}
.project-showcase-text h3{color:var(--charcoal);margin-bottom:.75rem}.project-showcase-text p{margin-bottom:0}.mp-cover-preview{overflow:hidden;border-radius:.45rem;border:1px solid rgba(0,0,0,.1);background:#f7f1e4;box-shadow:0 20px 50px rgba(0,0,0,.12)}
.mp-top{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.1rem;background:#f6f3ec;color:#20231d}.mp-top strong{font-family:Georgia,serif;font-size:1.15rem}.mp-top span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06rem;color:#6e6a61}.mp-nav{display:flex;gap:.5rem;padding:.75rem 1.1rem;background:#1f241d;color:#fff}.mp-nav span{font-size:.68rem;text-transform:uppercase;letter-spacing:.06rem;border-right:1px solid rgba(255,255,255,.2);padding-right:.55rem}.mp-nav span:last-child{border-right:0}.mp-hero{min-height:15rem;display:flex;align-items:center;padding:2rem;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.18)),url('../../images/oscar/sala2.jpeg') center/cover;color:#fff}.mp-hero p{margin:0 0 .45rem;color:#c9a86a;text-transform:uppercase;font-weight:900;letter-spacing:.12rem;font-size:.7rem}.mp-hero h4{max-width:27rem;margin:0 0 .75rem;color:#fff;font-size:1.75rem;line-height:1.1}.mp-hero span{display:inline-block;background:#c9a86a;color:#1b1b18;padding:.5rem .7rem;border-radius:2px;font-size:.75rem;font-weight:900;text-transform:uppercase}.mp-services{display:grid;grid-template-columns:repeat(3,1fr);background:#fff}.mp-services span{text-align:center;padding:.9rem .4rem;font-size:.72rem;font-weight:900;text-transform:uppercase;color:#3d4533;border-right:1px solid #eee}.mp-services span:last-child{border-right:0}
@media(max-width:980px){.project-showcase{grid-template-columns:1fr}.mp-top{display:block}.mp-top span{display:block;margin-top:.2rem}}


/* Enlaces consultables en proyectos */
.project-link{cursor:pointer;text-decoration:none;border-bottom:0}
.project-link:hover{background:var(--olive);color:#fff!important}
.compact-actions{margin:1.2rem 0 0 0!important}
.compact-actions .button{font-size:.72rem;letter-spacing:.08rem}
a.mp-cover-preview{display:block;text-decoration:none;border-bottom:0;color:inherit;transition:.25s}
a.mp-cover-preview:hover{transform:translateY(-4px);box-shadow:0 28px 65px rgba(0,0,0,.18)}
a.mp-cover-preview:hover .mp-hero span{background:#fff}

/* Corrección de bordes y desbordes horizontales */
html,
body {
	max-width: 100%;
	overflow-x: hidden;
}

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

#wrapper {
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
}

#wrapper section,
#wrapper section > header,
#wrapper section > .content,
#wrapper section > footer {
	min-width: 0;
	max-width: 100%;
}

#wrapper section > .content {
	overflow-x: clip;
}

img,
.image img,
.gallery img,
.mp-cover-preview,
.project-showcase,
.case-grid article,
.service-grid article,
.credential-grid div,
.executive-timeline article,
.kpi-strip div {
	max-width: 100%;
}

.kpi-strip,
.service-grid,
.credential-grid,
.case-grid,
.project-showcase,
.mp-services {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
}

.gallery {
	max-width: 100%;
	overflow: hidden;
}

.executive-badges,
.tags,
ul.actions,
.mp-nav {
	flex-wrap: wrap;
}

.button,
.project-url {
	white-space: normal;
	line-height: 1.35;
	max-width: 100%;
	word-break: break-word;
}

.project-url {
	overflow-wrap: anywhere;
}

.mp-nav span,
.mp-services span {
	min-width: 0;
	overflow-wrap: anywhere;
}

@media (max-width: 1280px) {
	.case-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	#wrapper > section > header,
	#wrapper > section > .content,
	#wrapper .copyright {
		padding-left: 2rem !important;
		padding-right: 2rem !important;
	}

	.case-grid,
	.project-showcase,
	.service-grid,
	.credential-grid,
	.kpi-strip,
	.mp-services {
		grid-template-columns: 1fr;
	}

	.executive-timeline article {
		padding: 1.15rem;
	}
}

@media (max-width: 480px) {
	#wrapper > section > header,
	#wrapper > section > .content,
	#wrapper .copyright {
		padding-left: 1.15rem !important;
		padding-right: 1.15rem !important;
	}

	.executive-hero header h1 {
		font-size: 1.85rem;
		letter-spacing: -0.035rem;
	}

	.brand-line,
	.executive-badges,
	.tags,
ul.actions {
		gap: .5rem;
	}

	ul.actions {
		margin-left: 0;
	}

	ul.actions li {
		padding-left: 0;
		width: 100%;
	}

	ul.actions li .button {
		width: 100%;
		text-align: center;
	}

	.project-showcase,
	.case-grid article,
	.service-grid article,
	.credential-grid div,
	.executive-timeline article,
	.kpi-strip div {
		padding: 1rem;
	}

	.mp-top,
	.mp-nav,
	.mp-hero {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.mp-hero h4 {
		font-size: 1.35rem;
	}
}
