/* Propuesta C · «Claridad»: luz cálida al estilo de cromat.studio, manchas difuminadas y bloques esmeralda. Fraunces + Albert Sans. */
body.jg-c {
	--bg: #F4EFE5; --bg2: #EAE2D3; --panel: #FBF8F2; --ink: #11291F; --mute: #5A675F; --dim: rgba(17, 41, 31, .36);
	--line: rgba(17, 41, 31, .12); --line-2: rgba(17, 41, 31, .24); --acc: #8C6B42; --acc-ink: #FFFFFF; --acc-soft: rgba(140, 107, 66, .16);
	--acc-hover: #11291F; --acc-ink-hover: #F4EFE5; --soft: rgba(17, 41, 31, .06); --row-hover: rgba(17, 41, 31, .03);
	--hdr-bg: rgba(244, 239, 229, .82); --nav-bg: rgba(255, 255, 255, .5); --err: #B4452F; --em: #0F2A21;
	--fd: 'Fraunces', Georgia, serif; --fb: 'Albert Sans', system-ui, sans-serif; --fm: 'DM Mono', ui-monospace, monospace;
	--h1s: clamp(50px, 7.2vw, 122px); --h1w: 450; --h1lh: .98; --h1ls: -.035em; --h2s: clamp(38px, 4.6vw, 76px); --h2w: 450; --h2ls: -.03em;
	--r-md: 20px; --r-lg: 26px; --r-xl: 34px; --logo-f: grayscale(1) contrast(1.05); --logo-o: .55; --logo-f-hover: none; --somos-w: 400; --enf-w: 400;
	--brief-sh: 0 40px 90px -50px rgba(17, 41, 31, .45); --ftr-bg: #0F2A21; --ftr-ink: #F4EFE5; --veil-bg: #0F2A21;
	--diag-img: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2311291F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M9 7h8v8'/%3E%3C/svg%3E");
}
body.jg-c em { font-style: italic; color: var(--acc); }
/* Manchas de color (cromat) */
body.jg-site .jg-blob { position: absolute !important; z-index: -1; border-radius: 50%; filter: blur(80px); opacity: .6; pointer-events: none; }
body.jg-site .jg-blob--1 { width: 54vw !important; height: 54vw !important; right: -12vw; top: -18vw; background: #E7BE95; animation: jg-blob 24s ease-in-out infinite; }
body.jg-site .jg-blob--2 { width: 42vw !important; height: 42vw !important; left: -14vw; bottom: -18vw; background: #C5D8B5; animation: jg-blob 30s ease-in-out infinite reverse; }
body.jg-site .jg-blob--3 { width: 26vw !important; height: 26vw !important; left: 36vw; top: 34%; background: #F0D8B3; animation: jg-blob 19s ease-in-out infinite; }
@keyframes jg-blob { 50% { transform: translate(4vw, 3vw) scale(1.1); } }
/* Hero */
body.jg-site .e-con.jg-hero--c { min-height: 100svh; justify-content: center; padding-block: 140px 80px; overflow: hidden; isolation: isolate; }
body.jg-site .e-con.jg-hero--c .jg-hero__in { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: clamp(30px, 5vw, 90px); align-items: center; }
body.jg-site .jg-hero--c .jg-sedes { margin-top: 36px; }
body.jg-site .e-con.jg-collage { position: relative; width: 100%; aspect-ratio: 1 / 1.08; }
body.jg-site .jg-collage__f { position: absolute !important; overflow: hidden; box-shadow: 0 40px 80px -40px rgba(17, 41, 31, .5); will-change: transform; }
body.jg-site .jg-collage__f img { width: 100%; height: 100%; object-fit: cover; }
body.jg-site .jg-collage__f--1 { width: 54% !important; left: 4%; top: 2%; border-radius: 999px 999px 28px 28px; }
body.jg-site .jg-collage__f--1 img { aspect-ratio: 3 / 4; }
body.jg-site .jg-collage__f--2 { width: 38% !important; right: 0; top: 18%; border-radius: 50%; }
body.jg-site .jg-collage__f--2 img { aspect-ratio: 1; }
body.jg-site .jg-collage__f--3 { width: 44% !important; left: 38%; bottom: 0; border-radius: 28px; }
body.jg-site .jg-collage__f--3 img { aspect-ratio: 4 / 5; }
body.jg-site .jg-collage__leaf { position: absolute !important; right: -6%; bottom: -4%; width: 30% !important; transform-origin: 20% 95%; animation: jg-sway 7s ease-in-out infinite; }
@keyframes jg-sway { 50% { transform: rotate(-7deg); } }
@media (max-width: 900px) { body.jg-site .e-con.jg-hero--c .jg-hero__in { grid-template-columns: 1fr; } body.jg-site .e-con.jg-collage { max-width: 520px; margin-inline: auto; } }
/* Marcas */
body.jg-site .e-con.jg-marcas--c { --sec: clamp(40px, 5vw, 70px); }
body.jg-site .jg-marcas--c .jg-marcas__h .elementor-heading-title { text-align: center; font: 500 12px/1.4 var(--fm); letter-spacing: .14em; text-transform: uppercase; color: var(--mute); }
body.jg-site .jg-marcas--c .jg-marcas__h { margin-bottom: 18px; }
/* Como tú */
body.jg-site .e-con.jg-somos--c .jg-somos__in { grid-template-columns: minmax(0, 1.28fr) minmax(240px, .72fr); }
body.jg-site .jg-somos--c .jg-somos__foto { border-radius: 999px 999px 28px 28px; }
/* Servicios en tarjetas */
body.jg-site .jg-servicios--c .e-con.jg-card { padding: 12px 12px 22px; border-radius: var(--r-lg); background: var(--panel); border: 1px solid var(--line); transition: top .5s var(--ease), box-shadow .5s, background .3s; }
body.jg-site .jg-servicios--c .e-con.jg-card:hover { top: -6px; box-shadow: 0 30px 60px -36px rgba(17, 41, 31, .45); }
body.jg-site .jg-servicios--c .jg-card__img { border-radius: calc(var(--r-lg) - 8px); margin-bottom: 10px; }
body.jg-site .jg-servicios--c .jg-card > .elementor-widget:not(.jg-card__img) { padding-inline: 10px; }
body.jg-site .jg-servicios--c .jg-card__n { position: absolute !important; right: 24px; top: 24px; z-index: 2; }
body.jg-site .jg-servicios--c .jg-card__n .elementor-heading-title { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: #fff; color: var(--ink); letter-spacing: 0; }
/* Tarjetas 1 y 5 en esmeralda: .e-con para ganar a la regla general de arriba (antes quedaba texto crema sobre fondo crema) */
body.jg-site .jg-servicios--c .e-con.jg-card--1, body.jg-site .jg-servicios--c .e-con.jg-card--5 { background: var(--em); border-color: var(--em); color: #F4EFE5; --ink: #F4EFE5; --mute: rgba(244, 239, 229, .72); --acc: #D9BE8E; }
body.jg-site .jg-servicios--c .jg-card--1 .jg-card__n .elementor-heading-title, body.jg-site .jg-servicios--c .jg-card--5 .jg-card__n .elementor-heading-title { background: #D9BE8E; color: var(--em); }
/* Bloque esmeralda y contacto con manchas */
body.jg-site .e-con.jg-dark { background: var(--em); color: #F4EFE5; margin-inline: clamp(8px, 1.4vw, 20px); border-radius: 40px; --ink: #F4EFE5; --mute: rgba(244, 239, 229, .7); --line: rgba(244, 239, 229, .13); --acc: #D9BE8E; }
body.jg-site .e-con.jg-conblobs { overflow: hidden; isolation: isolate; }
body.jg-site .e-con.jg-conblobs::before, body.jg-site .e-con.jg-conblobs::after { content: ""; position: absolute; z-index: -1; border-radius: 50%; filter: blur(80px); opacity: .6; }
body.jg-site .e-con.jg-conblobs::before { width: 46vw; height: 46vw; right: -10vw; top: -10vw; background: #D9E5CF; animation: jg-blob 26s ease-in-out infinite; }
body.jg-site .e-con.jg-conblobs::after { width: 36vw; height: 36vw; left: -8vw; bottom: -12vw; background: #EFD3B0; animation: jg-blob 22s ease-in-out infinite reverse; }
body.jg-c form.jg-cf { background: rgba(255, 255, 255, .72); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); border-color: rgba(255, 255, 255, .8); }
body.jg-c .jg-cf__sig, body.jg-c .jg-cf .wpcf7-submit { background: var(--ink) !important; color: #F4EFE5 !important; border-color: var(--ink) !important; }
body.jg-c .jg-ftr { margin: clamp(20px, 3vw, 40px) clamp(8px, 1.4vw, 20px) 0; border-radius: 40px 40px 0 0; --acc: #D9BE8E; }
body.jg-c .jg-ftr__word .elementor-heading-title { font-style: italic; font-weight: 400; letter-spacing: -.05em; -webkit-text-stroke-color: rgba(217, 190, 142, .35); }
