:root {
  --black: #050505;
  --black-2: #0c0b09;
  --black-3: #14110d;
  --ink: #17120b;
  --muted: #72695d;
  --muted-2: #9b8e7a;
  --paper: #fbf7ef;
  --paper-2: #fffdf8;
  --cream: #f1e7d7;
  --line: rgba(122, 86, 36, .18);
  --line-dark: rgba(214, 181, 110, .22);
  --gold: #b47729;
  --gold-2: #d8ba73;
  --gold-3: #8c5e23;
  --ok: #1d7552;
  --danger: #9b2929;
  --radius-sm: 12px;
  --radius: 22px;
  --radius-lg: 34px;
  --shadow-sm: 0 12px 30px rgba(43, 31, 13, .08);
  --shadow: 0 26px 80px rgba(35, 25, 10, .16);
  --shadow-dark: 0 28px 80px rgba(0, 0, 0, .48);
  --shadow-soft: var(--shadow-sm);
  --gold-dark: var(--gold-3);
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --serif: Georgia, 'Times New Roman', serif;
  --sans: Inter, Montserrat, Arial, sans-serif;
}

* { box-sizing: border-box; }
html,
body {
  width: 100%;
  min-height: 100%;
  margin: 0;
  font-family: var(--sans);
  color: var(--ink);
  background: var(--paper);
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
}
html { scroll-behavior: smooth; }
body { overflow: hidden; }
body:not(.site-public) { overflow: auto; }
a { color: inherit; text-decoration: none; }
button,
input,
select,
textarea { font: inherit; }
button { -webkit-tap-highlight-color: transparent; }
img { display: block; max-width: 100%; }
::selection { color: #16100a; background: var(--gold-2); }

.site-public {
  min-height: 100vh;
  background:
    radial-gradient(circle at 70% -10%, rgba(216, 186, 115, .28), transparent 32%),
    var(--black);
}
.no-js body { overflow: auto; }

/* HEADER */
.topbar {
  position: fixed;
  z-index: 60;
  inset: 0 0 auto 0;
  height: 78px;
  display: flex;
  align-items: center;
  gap: clamp(12px, 2vw, 24px);
  padding: 0 clamp(18px, 4vw, 58px);
  color: #fff7e9;
  background:
    linear-gradient(180deg, rgba(5, 5, 5, .88), rgba(5, 5, 5, .72));
  border-bottom: 1px solid var(--line-dark);
  box-shadow: 0 18px 50px rgba(0, 0, 0, .20);
  backdrop-filter: blur(22px) saturate(130%);
  transition: background .35s ease, color .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.topbar.is-light {
  color: var(--ink);
  background: rgba(255, 252, 246, .86);
  border-bottom-color: rgba(180, 119, 41, .20);
  box-shadow: 0 18px 48px rgba(55, 39, 15, .08);
}
.brand {
  min-width: 274px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.brand-mark {
  position: relative;
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(216, 186, 115, .42);
  background: linear-gradient(145deg, rgba(216, 186, 115, .16), rgba(255, 255, 255, .02));
  box-shadow: inset 0 0 0 6px rgba(216, 186, 115, .04), 0 0 30px rgba(216, 186, 115, .16);
  color: var(--gold-2);
  font-family: var(--serif);
  font-size: 18px;
  letter-spacing: -5px;
}
.brand-mark::after {
  content: "";
  position: absolute;
  inset: -5px;
  border-radius: 50%;
  border-top: 1px solid rgba(216, 186, 115, .55);
  border-right: 1px solid transparent;
  transform: rotate(-32deg);
}
.brand strong,
.brand small {
  display: block;
  white-space: nowrap;
}
.brand strong {
  font-size: 10px;
  line-height: 1.1;
  letter-spacing: .09em;
  font-weight: 900;
}
.brand small {
  margin-top: 4px;
  color: var(--gold-2);
  font-size: 8px;
  letter-spacing: .26em;
  font-weight: 800;
}
.topbar.is-light .brand-mark,
.topbar.is-light .brand small { color: var(--gold-3); }
.nav-menu {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(8px, 1.35vw, 20px);
}
.nav-menu a {
  position: relative;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  color: inherit;
  opacity: .88;
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
  transition: opacity .25s ease, color .25s ease, transform .25s ease;
}
.nav-menu a:hover,
.nav-menu a.is-active { opacity: 1; color: var(--gold-2); }
.topbar.is-light .nav-menu a:hover,
.topbar.is-light .nav-menu a.is-active { color: var(--gold-3); }
.nav-menu a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 4px;
  width: 0;
  height: 2px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--gold-2), var(--gold));
  transition: width .28s ease, left .28s ease;
}
.nav-menu a:hover::after,
.nav-menu a.is-active::after { left: 0; width: 100%; }
.top-cta,
.cart-mini {
  height: 44px;
  border: 1px solid rgba(216, 186, 115, .48);
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(216, 186, 115, .07);
  color: var(--gold-2);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
}
.top-cta {
  padding: 0 18px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .07em;
  white-space: nowrap;
  transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}
.top-cta:hover { transform: translateY(-1px); box-shadow: 0 16px 32px rgba(180, 119, 41, .20); }
.topbar.is-light .top-cta { background: #11100d; color: #f9e7c4; border-color: transparent; }
.cart-mini {
  min-width: 48px;
  gap: 5px;
  font-size: 13px;
}
.cart-mini b { font-size: 11px; }
.hamb {
  display: none;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(216, 186, 115, .36);
  border-radius: 50%;
  background: rgba(216, 186, 115, .08);
  color: inherit;
  place-items: center;
}
.hamb span {
  width: 20px;
  height: 2px;
  margin: 2px 0;
  border-radius: 2px;
  display: block;
  background: currentColor;
}

/* FULLSCREEN PUBLIC STAGE */
.site-stage {
  position: relative;
  height: 100vh;
  overflow: hidden;
}
.face {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100vh;
  padding: 94px clamp(26px, 5vw, 78px) 30px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, 26px, 0) scale(.985);
  transition: opacity .68s ease, transform .68s cubic-bezier(.2,.8,.2,1);
  background: var(--paper);
  isolation: isolate;
}
.face.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: none;
}
.face.dark {
  color: #fff9ee;
  background:
    radial-gradient(circle at 72% 18%, rgba(216, 186, 115, .31), transparent 28%),
    radial-gradient(circle at 15% 80%, rgba(180, 119, 41, .22), transparent 28%),
    linear-gradient(135deg, #050505 0%, #11100e 55%, #050505 100%);
}
.face.light,
.face.split {
  color: var(--ink);
  background:
    radial-gradient(circle at 88% 14%, rgba(216, 186, 115, .24), transparent 22%),
    radial-gradient(circle at 8% 86%, rgba(180, 119, 41, .10), transparent 26%),
    linear-gradient(180deg, var(--paper-2), var(--paper));
}
.face::before,
.face::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  border-radius: 50%;
}
.face::before {
  right: -160px;
  top: -220px;
  width: 610px;
  height: 610px;
  border: 1px solid rgba(180,119,41,.14);
  box-shadow:
    0 0 0 18px transparent,
    0 0 0 30px rgba(180,119,41,.06),
    0 0 0 64px transparent,
    0 0 0 76px rgba(180,119,41,.04),
    0 0 0 118px transparent,
    0 0 0 130px rgba(180,119,41,.035);
}
.face::after {
  left: -180px;
  bottom: -250px;
  width: 520px;
  height: 520px;
  border: 1px solid rgba(180,119,41,.10);
  background: radial-gradient(circle, rgba(216,186,115,.09), transparent 60%);
}
.dark::before { border-color: rgba(216,186,115,.18); box-shadow: 0 0 0 18px transparent, 0 0 0 30px rgba(216,186,115,.08), 0 0 0 66px transparent, 0 0 0 78px rgba(216,186,115,.055), 0 0 0 120px transparent, 0 0 0 134px rgba(216,186,115,.035); }
.face-inner {
  position: relative;
  z-index: 2;
  height: 100%;
  display: grid;
  align-content: center;
  gap: 22px;
}
.two-col {
  grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr);
  align-items: center;
  gap: clamp(28px, 4.5vw, 66px);
}
.centered {
  width: min(1220px, 100%);
  margin: 0 auto;
  text-align: center;
}
.kicker {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  margin: 0 0 8px;
  color: var(--gold-3);
  font-size: 10px;
  line-height: 1.25;
  font-weight: 950;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.kicker::before,
.kicker::after {
  content: "";
  width: 44px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-2));
}
.kicker::after { background: linear-gradient(90deg, var(--gold-2), transparent); }
.dark .kicker { color: var(--gold-2); }
.about-layout .kicker::after,
.contact-layout .kicker::after,
.detail-copy .kicker::after,
.panel .kicker::after { display: none; }
.headline,
.home-headline {
  margin: 0;
  font-family: var(--serif);
  font-weight: 400;
  line-height: .92;
  letter-spacing: -.055em;
}
.headline { font-size: clamp(40px, 5.5vw, 76px); }
.home-headline {
  max-width: 900px;
  font-size: clamp(44px, 5.7vw, 82px);
}
.headline .gold,
.home-headline span { color: var(--gold-2); }
.sub {
  max-width: 760px;
  margin-top: 0;
  color: var(--muted);
  font-size: clamp(14px, 1.28vw, 18px);
  line-height: 1.65;
}
.dark .sub { color: #d9cfbf; }
.home-copy { max-width: 850px; align-self: center; }
.home-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 24px;
}
.btn {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 13px 20px;
  border: 1px solid rgba(180, 119, 41, .65);
  border-radius: 999px;
  background: #fff;
  color: var(--gold-3);
  box-shadow: 0 10px 20px rgba(32, 22, 9, .04);
  cursor: pointer;
  font-size: 10px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: .075em;
  text-transform: uppercase;
  transition: transform .24s ease, box-shadow .24s ease, background .24s ease, color .24s ease, border-color .24s ease;
}
.btn:hover { transform: translateY(-2px); box-shadow: 0 18px 36px rgba(180,119,41,.20); }
.btn-gold {
  color: #171109;
  border-color: transparent;
  background: linear-gradient(135deg, #f2d98e, var(--gold-2) 45%, var(--gold));
  box-shadow: 0 16px 38px rgba(180,119,41,.28), inset 0 1px 0 rgba(255,255,255,.34);
}
.btn-dark {
  color: #f7e9ce;
  border-color: #111;
  background: linear-gradient(135deg, #17140f, #050505);
}
.btn-ghost {
  color: var(--gold-2);
  border-color: rgba(216,186,115,.36);
  background: rgba(255,255,255,.04);
}
.light .btn-ghost,
.static-screen .btn-ghost { color: var(--gold-3); background: #fffaf1; }
.btn-block { width: 100%; }

/* HOME HERO */
.mini-proofs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 26px;
}
.mini-proofs article {
  min-height: 112px;
  padding: 16px;
  border: 1px solid rgba(216,186,115,.20);
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  text-align: left;
  cursor: pointer;
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.mini-proofs article:hover { transform: translateY(-4px); border-color: rgba(216,186,115,.44); background: rgba(216,186,115,.08); }
.mini-proofs i {
  display: block;
  margin-bottom: 10px;
  color: var(--gold-2);
  font-size: 25px;
  line-height: 1;
  font-style: normal;
}
.mini-proofs strong {
  display: block;
  margin-bottom: 5px;
  color: #fffaf1;
  font-size: 11px;
  line-height: 1.2;
  text-transform: uppercase;
}
.mini-proofs span {
  color: #c5b9a6;
  font-size: 10px;
  line-height: 1.42;
}
.city-card {
  position: relative;
  min-height: 390px;
  height: min(63vh, 570px);
  overflow: hidden;
  border: 1px solid rgba(216,186,115,.22);
  border-radius: var(--radius-lg);
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.30)),
    radial-gradient(circle at 62% 20%, rgba(216,186,115,.20), transparent 30%);
  box-shadow: var(--shadow-dark);
}
.city-card::before {
  content: "";
  position: absolute;
  right: -90px;
  top: -145px;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  border: 1px solid rgba(216,186,115,.22);
  box-shadow: 0 0 0 18px transparent, 0 0 0 30px rgba(216,186,115,.09), 0 0 0 64px transparent, 0 0 0 76px rgba(216,186,115,.06);
  transform: rotate(-18deg);
}
.city-card::after {
  content: "EJECUCIÓN · CONTROL · IMPACTO";
  position: absolute;
  left: 22px;
  bottom: 22px;
  padding: 11px 14px;
  border: 1px solid rgba(216,186,115,.22);
  border-radius: 999px;
  background: rgba(5,5,5,.44);
  color: var(--gold-2);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .16em;
}
.building {
  position: absolute;
  bottom: 0;
  width: 34px;
  border: 1px solid rgba(216,186,115,.18);
  background: linear-gradient(180deg, #2c2924, #050505 88%);
  box-shadow: 0 0 28px rgba(216,186,115,.11);
}
.building::after {
  content: "";
  position: absolute;
  left: 50%;
  top: -32px;
  width: 1px;
  height: 32px;
  background: linear-gradient(var(--gold-2), transparent);
}
.b1 { left: 12%; height: 39%; }
.b2 { left: 24%; height: 56%; width: 46px; }
.b3 { left: 40%; height: 32%; }
.b4 { left: 54%; height: 78%; width: 42px; }
.b5 { left: 69%; height: 50%; width: 39px; }
.b6 { left: 82%; height: 44%; }
.gold-road {
  position: absolute;
  right: -8%;
  bottom: -14%;
  width: 88%;
  height: 38%;
  border-top-left-radius: 100%;
  border-top: 1px solid rgba(216,186,115,.58);
  box-shadow: 0 -12px 40px rgba(216,186,115,.18);
}
.logo-footer {
  position: absolute;
  z-index: 4;
  inset: auto 0 0 0;
  height: 92px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px clamp(20px, 4vw, 56px);
  overflow: hidden;
  border-top: 1px solid rgba(216,186,115,.26);
  background: linear-gradient(180deg, rgba(7,7,7,.82), #0c0b09);
}
.logo-footer img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  filter: saturate(.98) contrast(1.04);
}
.logo-footer .fallback-logos { display: none; }

/* CARDS / SECTIONS */
.cards-6,
.sector-grid,
.product-grid,
.blog-grid,
.contact-boxes,
.metrics,
.feature-list,
.form-grid,
.secure-row { display: grid; }
.cards-6 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;
  width: min(1090px, 100%);
  margin: 10px auto 0;
}
.info-card {
  position: relative;
  min-height: 166px;
  overflow: hidden;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.76);
  box-shadow: var(--shadow-sm);
  text-align: left;
  transition: transform .26s ease, box-shadow .26s ease, border-color .26s ease;
}
.info-card:hover { transform: translateY(-5px); border-color: rgba(180,119,41,.30); box-shadow: var(--shadow); }
.info-card::before {
  content: attr(data-num);
  position: absolute;
  top: 12px;
  right: 14px;
  color: rgba(180,119,41,.11);
  font-family: var(--serif);
  font-size: 42px;
  line-height: 1;
}
.info-card::after {
  content: "";
  position: absolute;
  inset: auto -25% -50% auto;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(216,186,115,.13), transparent 68%);
}
.info-card i {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  margin-bottom: 13px;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--gold), var(--gold-2));
  color: #fff;
  box-shadow: 0 14px 28px rgba(180,119,41,.24);
  font-size: 17px;
  font-style: normal;
  font-weight: 900;
}
.info-card h3,
.product-body h3,
.blog-body h3 {
  font-family: var(--serif);
  font-weight: 400;
  letter-spacing: -.03em;
}
.info-card h3 {
  margin: 0 0 8px;
  font-size: clamp(22px, 2vw, 32px);
  line-height: .98;
}
.info-card p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.52;
}
.info-card .more {
  position: absolute;
  right: 16px;
  bottom: 13px;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(180,119,41,.22);
  border-radius: 50%;
  background: #fffaf1;
  color: var(--gold-3);
  cursor: pointer;
  font-size: 18px;
  font-weight: 900;
  transition: transform .25s ease, background .25s ease;
}
.info-card .more:hover { transform: translateX(3px); background: var(--gold-2); color: #171109; }
.sector-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  width: min(1180px, 100%);
  margin: 22px auto 0;
}
.sector-grid .info-card { min-height: 220px; }
.product-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  width: min(1240px, 100%);
  margin: 10px auto 0;
}
.product-card {
  min-height: 386px;
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow-sm);
  text-align: left;
  transition: transform .26s ease, box-shadow .26s ease, border-color .26s ease;
}
.product-card:hover { transform: translateY(-6px); border-color: rgba(180,119,41,.32); box-shadow: var(--shadow); }
.product-cover {
  position: relative;
  height: 158px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 17px;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 75% 18%, rgba(216,186,115,.42), transparent 30%),
    linear-gradient(145deg, #17140f, #050505);
}
.product-cover::before {
  content: "";
  position: absolute;
  right: -50px;
  top: -60px;
  width: 170px;
  height: 170px;
  border: 1px solid rgba(216,186,115,.22);
  border-radius: 50%;
  box-shadow: 0 0 0 14px transparent, 0 0 0 26px rgba(216,186,115,.07);
}
.product-cover small {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 6px 9px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--gold-2), var(--gold));
  color: #171109;
  font-size: 8px;
  font-weight: 950;
  letter-spacing: .08em;
}
.product-cover i {
  position: relative;
  z-index: 1;
  color: var(--gold-2);
  font-size: 34px;
  font-style: normal;
}
.product-cover strong {
  position: relative;
  z-index: 1;
  margin-top: 9px;
  font-family: var(--serif);
  font-size: 24px;
  line-height: 1;
  letter-spacing: -.03em;
}
.product-cover em {
  position: absolute;
  right: 14px;
  bottom: 12px;
  color: rgba(255,255,255,.38);
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .18em;
}
.product-body { padding: 16px; }
.product-body h3 { margin: 0 0 8px; font-size: 25px; line-height: 1; }
.product-body p { margin: 0 0 12px; color: var(--muted); font-size: 11.5px; line-height: 1.48; }
.price {
  display: block;
  color: var(--gold-3);
  font-family: var(--serif);
  font-size: 32px;
  line-height: 1;
}
.price small {
  margin-left: 5px;
  color: #b5a894;
  font-size: 15px;
  text-decoration: line-through;
}
.product-actions {
  display: grid;
  grid-template-columns: 1fr 46px;
  gap: 9px;
  padding: 0 16px 16px;
}
.product-actions form { margin: 0; }
.product-actions .btn,
.product-actions button,
.product-actions a { min-height: 42px; padding-inline: 12px; }

/* ABOUT / BLOG / CONTACT */
.about-layout {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  align-items: center;
  gap: 42px;
  text-align: left;
}
.portrait {
  position: relative;
  height: 530px;
  max-height: 64vh;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background:
    radial-gradient(circle at 50% 34%, rgba(216,186,115,.38), transparent 27%),
    linear-gradient(180deg, #fbf4e8, #fffdf8);
  box-shadow: var(--shadow);
}
.portrait::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 18%;
  width: 172px;
  height: 172px;
  border-radius: 50%;
  background: linear-gradient(145deg, #191714, #050505);
  transform: translateX(-50%);
  box-shadow: 0 20px 45px rgba(0,0,0,.18);
}
.portrait::after {
  content: "Gilberth Chiquillan\A Founder & CEO";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 24px;
  white-space: pre;
  color: #fff;
  background: linear-gradient(145deg, #14110d, #050505);
  font-family: var(--serif);
  font-size: 29px;
  line-height: 1.08;
}
.metrics {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 13px;
  margin-top: 24px;
}
.metric {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  box-shadow: var(--shadow-sm);
  text-align: center;
  cursor: pointer;
}
.metric b {
  display: block;
  color: var(--gold-3);
  font-family: var(--serif);
  font-size: 38px;
  line-height: 1;
}
.metric span { display: block; margin-top: 8px; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.blog-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  width: min(1130px, 100%);
  margin: 12px auto 0;
}
.blog-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow-sm);
  text-align: left;
  transition: transform .26s ease, box-shadow .26s ease;
}
.blog-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.blog-image {
  height: 160px;
  background: radial-gradient(circle at 74% 22%, rgba(216,186,115,.42), transparent 28%), linear-gradient(140deg, #090909, #2a2925);
}
.blog-card:nth-child(2) .blog-image { background: radial-gradient(circle at 70% 30%, rgba(216,186,115,.45), transparent 28%), linear-gradient(140deg, #e8e2d3, #fff); }
.blog-card:nth-child(3) .blog-image { background: radial-gradient(circle at 26% 70%, rgba(216,186,115,.32), transparent 30%), linear-gradient(140deg, #0c0e10, #34332e); }
.blog-body { padding: 18px; }
.blog-body small { color: var(--gold-3); font-size: 10px; font-weight: 950; letter-spacing: .08em; text-transform: uppercase; }
.blog-body h3 { margin: 8px 0; font-size: 27px; line-height: 1.02; }
.blog-body p { color: var(--muted); font-size: 12.5px; line-height: 1.48; }
.contact-layout {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(420px, 1fr);
  gap: 34px;
  align-items: center;
  text-align: left;
}
.contact-boxes {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 22px;
}
.contact-box {
  min-height: 138px;
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255,255,255,.78);
  box-shadow: var(--shadow-sm);
}
.contact-box strong { display: block; margin-bottom: 8px; font-family: var(--serif); font-size: 23px; line-height: 1; }
.contact-box p { margin: 0 0 10px; color: var(--muted); font-size: 12px; line-height: 1.45; }
.contact-form,
.panel {
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow);
}
.contact-form { padding: 24px; }
.form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin-bottom: 10px;
}
.form-grid .full,
.field.full { grid-column: 1 / -1; }
.field label {
  color: var(--gold-3);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.field input,
.field select,
.field textarea,
.qty-input {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 14px;
  outline: none;
  background: #fffdf8;
  color: var(--ink);
  padding: 13px 14px;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.field textarea { min-height: 102px; resize: vertical; }
.field input:focus,
.field select:focus,
.field textarea:focus,
.qty-input:focus {
  border-color: rgba(180,119,41,.55);
  box-shadow: 0 0 0 4px rgba(216,186,115,.15);
  background: #fff;
}
.small-link {
  color: var(--gold-3);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.alert {
  margin-bottom: 12px;
  padding: 13px 15px;
  border: 1px solid rgba(180,119,41,.22);
  border-radius: 16px;
  background: #fff4dd;
  color: #6e4d1b;
  font-size: 13px;
}
.alert.ok { background: #edfbf4; color: var(--ok); border-color: rgba(29,117,82,.20); }

/* NAVIGATION CONTROLS */
.screen-dots {
  position: fixed;
  z-index: 65;
  right: 18px;
  top: 50%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transform: translateY(-50%);
}
.screen-dots button,
.screen-arrows button {
  border: 1px solid rgba(216,186,115,.32);
  background: rgba(10,10,10,.54);
  color: var(--gold-2);
  backdrop-filter: blur(12px);
  cursor: pointer;
  transition: transform .25s ease, background .25s ease, color .25s ease;
}
.screen-dots button {
  width: 39px;
  height: 29px;
  border-radius: 999px;
}
.screen-dots button.is-active {
  color: #171109;
  background: linear-gradient(135deg, var(--gold-2), var(--gold));
  transform: translateX(-7px);
}
.screen-dots span { font-size: 9px; font-weight: 950; }
.screen-arrows {
  position: fixed;
  z-index: 65;
  right: 18px;
  bottom: 24px;
  display: flex;
  gap: 8px;
}
.screen-arrows button {
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
.progress-line {
  position: fixed;
  z-index: 70;
  left: 0;
  bottom: 0;
  width: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--gold-2), var(--gold));
  box-shadow: 0 0 20px rgba(216,186,115,.38);
  transition: width .5s ease;
}

/* MODAL */
.modal {
  position: fixed;
  z-index: 90;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(5,5,5,.72);
  backdrop-filter: blur(10px);
}
.modal.is-open { display: flex; }
.modal-card {
  position: relative;
  width: min(790px, 100%);
  max-height: 84vh;
  overflow: auto;
  padding: clamp(24px, 4vw, 36px);
  border: 1px solid rgba(216,186,115,.45);
  border-radius: var(--radius-lg);
  background: #fffdf8;
  box-shadow: 0 34px 100px rgba(0,0,0,.38);
}
.modal-close {
  position: sticky;
  top: 0;
  float: right;
  width: 42px;
  height: 42px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: #11100d;
  color: #fff;
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
}
.modal-card h2 {
  margin: 0 0 14px;
  font-family: var(--serif);
  font-size: clamp(34px, 4vw, 48px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.04em;
}
.modal-card p,
.modal-card li { color: var(--muted); line-height: 1.7; }

body.modal-open { overflow: hidden; }
.modal-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  color: var(--gold-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.modal-kicker::before,
.modal-kicker::after {
  content: '';
  display: block;
  width: 34px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-dark));
}
.modal-kicker::after { background: linear-gradient(90deg, var(--gold-dark), transparent); }
.modal-body {
  display: grid;
  gap: 14px;
  margin-top: 18px;
  color: var(--muted);
}
.modal-body section,
.modal-body p,
.modal-body ul {
  margin: 0;
  padding: 18px;
  border: 1px solid rgba(188,137,48,.18);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(247,243,234,.72));
}
.modal-body h3 {
  margin: 0 0 10px;
  color: var(--ink);
  font-family: var(--sans);
  font-size: 13px;
  line-height: 1.25;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.modal-body ul {
  display: grid;
  gap: 8px;
  list-style: none;
}
.modal-body li {
  position: relative;
  padding-left: 22px;
}
.modal-body li::before {
  content: '✓';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--gold-dark);
  font-weight: 900;
}
.modal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(188,137,48,.18);
}
.modal-actions .btn { min-width: 180px; }

/* STATIC STORE / CHECKOUT */
.static-screen {
  min-height: 100vh;
  overflow: auto;
  padding: 104px clamp(22px, 5vw, 76px) 36px;
  background:
    radial-gradient(circle at 86% 10%, rgba(216,186,115,.22), transparent 25%),
    linear-gradient(180deg, var(--paper-2), var(--paper));
}
.static-grid {
  min-height: calc(100vh - 140px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, 420px);
  gap: 24px;
  align-items: center;
}
.panel { padding: 24px; }
.cart-table {
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  border-radius: 18px;
}
.cart-table th,
.cart-table td {
  padding: 14px 12px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}
.cart-table th {
  color: var(--gold-3);
  background: #fff7e8;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.cart-table tr:last-child td { border-bottom: 0; }
.qty-input { width: 78px; padding: 10px; text-align: center; }
.checkout-summary { display: grid; gap: 12px; }
.secure-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.secure-row article {
  padding: 13px 10px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fffaf1;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}
.detail-layout {
  min-height: calc(100vh - 140px);
  display: grid;
  grid-template-columns: minmax(320px, 480px) minmax(0, 1fr);
  gap: 28px;
  align-items: center;
}
.detail-layout .product-cover { height: min(54vh, 520px); border-radius: var(--radius-lg); box-shadow: var(--shadow); }
.detail-layout .product-cover strong { font-size: clamp(34px, 4.2vw, 58px); max-width: 82%; }
.detail-layout .product-cover i { font-size: 58px; }
.detail-copy h1 {
  margin: 0 0 14px;
  font-family: var(--serif);
  font-size: clamp(44px, 5vw, 76px);
  font-weight: 400;
  line-height: .9;
  letter-spacing: -.055em;
}
.feature-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin: 20px 0;
  padding: 0;
}
.feature-list li {
  list-style: none;
  padding: 12px 13px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: rgba(255,255,255,.84);
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
}
.empty {
  padding: 38px;
  border: 1px dashed rgba(180,119,41,.32);
  border-radius: var(--radius);
  background: #fffaf1;
  text-align: center;
}
.pill {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 11px 13px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fffaf1;
  color: var(--gold-3);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}
.admin-link {
  position: fixed;
  left: 14px;
  bottom: 10px;
  z-index: 75;
  color: rgba(111,90,56,.82);
  font-size: 10px;
  font-weight: 800;
}

@media (max-width: 1240px) {
  .topbar { height: 72px; }
  .brand { min-width: 230px; }
  .nav-menu { gap: 9px; }
  .nav-menu a { font-size: 9px; }
  .top-cta { padding-inline: 14px; }
  .headline { font-size: clamp(36px, 5vw, 62px); }
  .home-headline { font-size: clamp(40px, 5.1vw, 66px); }
  .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 920px; }
  .sector-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 920px; }
  .cards-6 { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 830px; }
  .product-card { min-height: 340px; }
  .product-cover { height: 132px; }
  .logo-footer { height: 76px; }
  .mini-proofs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .two-col,
  .about-layout,
  .contact-layout,
  .static-grid,
  .detail-layout { grid-template-columns: 1fr; }
  .city-card { display: none; }
  .portrait { height: 370px; }
  .static-grid,
  .detail-layout { align-items: start; }
  .detail-layout .product-cover { height: 340px; }
}

@media (max-width: 820px) {
  body,
  body.site-public { overflow: auto; }
  .site-stage { height: auto; overflow: visible; }
  .face {
    position: relative;
    height: auto;
    min-height: 100vh;
    padding: 96px 18px 42px;
    overflow: visible;
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }
  .topbar {
    height: auto;
    min-height: 72px;
    padding: 12px 18px;
    flex-wrap: wrap;
  }
  .hamb { display: grid; margin-left: auto; }
  .nav-menu {
    order: 5;
    flex-basis: 100%;
    display: none;
    align-items: stretch;
    flex-direction: column;
    gap: 6px;
    padding-top: 10px;
  }
  .nav-menu.is-open { display: flex; }
  .nav-menu a {
    min-height: 40px;
    padding: 12px 14px;
    border: 1px solid rgba(216,186,115,.18);
    border-radius: 14px;
    background: rgba(216,186,115,.07);
    line-height: 1.1;
  }
  .nav-menu a::after { display: none; }
  .top-cta,
  .cart-mini { display: none; }
  .brand { min-width: 0; }
  .brand-mark { width: 42px; height: 42px; flex-basis: 42px; }
  .brand strong { font-size: 9px; }
  .brand small { font-size: 7px; }
  .home-actions,
  .product-actions { grid-template-columns: 1fr; }
  .home-actions .btn { width: 100%; }
  .cards-6,
  .sector-grid,
  .product-grid,
  .blog-grid,
  .contact-boxes,
  .metrics,
  .feature-list,
  .form-grid,
  .secure-row,
  .mini-proofs { grid-template-columns: 1fr; }
  .logo-footer {
    position: relative;
    height: 88px;
    margin: 24px -18px -42px;
    padding-inline: 18px;
  }
  .static-screen { min-height: 100vh; padding: 96px 18px 36px; }
  .static-grid,
  .detail-layout { min-height: auto; }
  .cart-table { display: block; overflow-x: auto; white-space: nowrap; }
  .screen-dots,
  .screen-arrows { display: none; }
  .modal { padding: 16px; }
  .modal-card { max-height: 88vh; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
  }
}

[data-detail] { outline: none; }
[data-detail]:focus-visible {
  box-shadow: 0 0 0 4px rgba(216,186,115,.20), var(--shadow-sm);
}
.info-card[data-detail],
.metric[data-detail],
.blog-card[data-detail],
.product-card[data-detail],
.contact-box[data-detail] { cursor: pointer; }

@media (max-width: 820px) {
  .product-actions form,
  .product-actions button,
  .product-actions a { width: 100%; }
}

/* STORE UPGRADE */
.store-flash { width: min(760px, 100%); margin: 0 auto 14px; }
.cart-title-row,
.checkout-card-head,
.summary-row,
.checkout-total,
.receipt-items p {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.cart-title-row { margin-bottom: 10px; }
.cart-title-row .headline { margin-bottom: 0; }
.cart-list { display: grid; gap: 14px; }
.cart-item {
  display: grid;
  grid-template-columns: 96px minmax(180px, 1fr) minmax(92px, auto) minmax(140px, auto) minmax(105px, auto) 48px;
  align-items: center;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: linear-gradient(135deg, #fffdf8, #fff7ea);
  box-shadow: 0 12px 34px rgba(52,35,15,.06);
}
.cart-thumb .product-cover,
.checkout-item .product-cover {
  height: 82px;
  min-height: 0;
  border-radius: 17px;
  box-shadow: none;
}
.cart-thumb .product-cover small,
.checkout-item .product-cover small,
.cart-thumb .product-cover em,
.checkout-item .product-cover em { display: none; }
.cart-thumb .product-cover i,
.checkout-item .product-cover i { font-size: 25px; margin-bottom: 4px; }
.cart-thumb .product-cover strong,
.checkout-item .product-cover strong { font-size: 11px; max-width: 84%; letter-spacing: -.02em; }
.cart-info { display: grid; gap: 5px; }
.cart-info strong { font-family: var(--serif); font-size: 24px; font-weight: 500; line-height: 1; letter-spacing: -.04em; }
.cart-info small,
.cart-info span,
.cart-price small,
.cart-line-total small,
.qty-form label,
.checkout-card-head span,
.receipt-box span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.cart-info span { text-transform: none; letter-spacing: 0; font-size: 12px; font-weight: 600; line-height: 1.45; }
.cart-price,
.cart-line-total { display: grid; gap: 5px; }
.cart-price b,
.cart-line-total strong { color: var(--gold-3); }
.qty-form { margin: 0; display: grid; gap: 8px; }
.qty-control {
  display: grid;
  grid-template-columns: 34px 58px 34px;
  align-items: center;
  gap: 5px;
}
.qty-control button {
  width: 34px;
  height: 34px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fffaf1;
  color: var(--gold-3);
  cursor: pointer;
  font-weight: 950;
}
.qty-control .qty-input { width: 58px; height: 34px; padding: 6px; }
.cart-remove { margin: 0; }
.summary-panel { position: sticky; top: 96px; align-self: start; }
.summary-icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  margin-bottom: 14px;
  border-radius: 18px;
  background: linear-gradient(135deg, var(--gold-2), var(--gold));
  color: #14100b;
  font-weight: 950;
}
.summary-panel h2,
.checkout-card h2 {
  margin: 0;
  font-family: var(--serif);
  font-weight: 400;
  font-size: 38px;
  letter-spacing: -.04em;
}
.summary-row {
  padding: 13px 0;
  border-bottom: 1px solid var(--line);
}
.summary-row.total { border-bottom: 0; font-size: 20px; }
.summary-row.total strong { color: var(--gold-3); font-size: 28px; }
.summary-trust { display: grid; gap: 8px; margin-top: 18px; color: var(--muted); font-size: 12px; font-weight: 800; }
.checkout-screen { padding-inline: clamp(18px, 4vw, 60px); }
.checkout-shell {
  min-height: calc(100vh - 140px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(350px, 470px);
  gap: 24px;
  align-items: start;
}
.checkout-panel,
.checkout-card,
.product-detail-panel,
.thanks-card { box-shadow: var(--shadow-sm); }
.checkout-panel .headline { margin-bottom: 10px; }
.payment-choice {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 8px;
}
.payment-card {
  display: grid;
  gap: 9px;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fffaf1;
}
.payment-card.is-featured {
  border-color: rgba(180,119,41,.32);
  background: linear-gradient(135deg, #fff7e8, #fffdf8);
}
.payment-card strong { font-family: var(--serif); font-size: 24px; font-weight: 500; letter-spacing: -.04em; }
.payment-card span { color: var(--muted); font-size: 12px; line-height: 1.5; min-height: 38px; }
.checkout-card { position: sticky; top: 96px; }
.checkout-card-head { margin-bottom: 14px; }
.checkout-card-head strong {
  padding: 7px 10px;
  border-radius: 999px;
  background: #fff4dd;
  color: var(--gold-3);
  font-size: 11px;
  text-transform: uppercase;
}
.checkout-item {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid var(--line);
}
.checkout-item p { display: grid; gap: 4px; margin: 0; }
.checkout-item p strong { font-size: 14px; line-height: 1.25; }
.checkout-item p span { color: var(--muted); font-size: 12px; }
.checkout-item b { color: var(--gold-3); white-space: nowrap; }
.checkout-total {
  margin: 18px 0;
  padding: 16px;
  border-radius: 18px;
  background: #11100d;
  color: #fff;
}
.checkout-total span { color: var(--gold-2); font-size: 11px; font-weight: 950; letter-spacing: .08em; text-transform: uppercase; }
.checkout-total strong { font-size: 30px; }
.sub.small { font-size: 12px; line-height: 1.55; }
.section-mini-title {
  margin: 22px 0 8px;
  color: var(--gold-3);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.include-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 20px;
}
.include-grid span {
  padding: 11px 13px;
  border: 1px solid rgba(180,119,41,.18);
  border-radius: 14px;
  background: #fffaf1;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.buy-box {
  display: grid;
  grid-template-columns: 110px 1fr 1fr;
  gap: 12px;
  align-items: end;
  margin-top: 8px;
}
.qty-label { color: var(--muted); font-size: 10px; font-weight: 950; letter-spacing: .08em; text-transform: uppercase; }
.qty-label .qty-input { margin-top: 7px; }
.thanks-screen {
  display: grid;
  place-items: center;
}
.thanks-card {
  width: min(850px, 100%);
  text-align: center;
}
.receipt-box {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 24px 0 14px;
}
.receipt-box div {
  display: grid;
  gap: 7px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fffaf1;
}
.receipt-box strong { word-break: break-word; }
.receipt-items {
  width: min(620px, 100%);
  margin: 0 auto 20px;
  padding: 14px;
  border-radius: 18px;
  background: #fffdf8;
  border: 1px solid var(--line);
}
.receipt-items p { margin: 0; padding: 9px 0; border-bottom: 1px solid var(--line); }
.receipt-items p:last-child { border-bottom: 0; }
.thanks-actions { display: flex; justify-content: center; gap: 12px; flex-wrap: wrap; }

@media (max-width: 1120px) {
  .cart-layout,
  .checkout-shell { grid-template-columns: 1fr; }
  .summary-panel,
  .checkout-card { position: static; }
  .cart-item { grid-template-columns: 82px minmax(0, 1fr) auto; }
  .cart-price { display: none; }
  .qty-form,
  .cart-line-total,
  .cart-remove { grid-column: auto; }
}

@media (max-width: 820px) {
  .cart-title-row { align-items: flex-start; flex-direction: column; }
  .cart-item { grid-template-columns: 72px minmax(0, 1fr); }
  .cart-thumb .product-cover { height: 72px; }
  .qty-form,
  .cart-line-total,
  .cart-remove { grid-column: 1 / -1; }
  .cart-remove .btn { width: 100%; }
  .payment-choice,
  .include-grid,
  .buy-box,
  .receipt-box { grid-template-columns: 1fr; }
  .checkout-item { grid-template-columns: 70px minmax(0, 1fr); }
  .checkout-item b { grid-column: 2; }
  .thanks-actions .btn { width: 100%; }
}

/* ===== Proyecto completo: tienda premium, checkout y comprobante ===== */
.store-intro-actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  margin: 18px 0 24px;
}
.shop-screen { gap: 22px; padding-top: 112px; }
.shop-hero {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: 24px;
  align-items: stretch;
  overflow: hidden;
  position: relative;
}
.shop-hero:before {
  content: "";
  position: absolute;
  inset: -40% -20% auto auto;
  width: 380px;
  height: 380px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(180,119,41,.28), transparent 68%);
  pointer-events: none;
}
.shop-hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.shop-hero-card {
  border: 1px solid rgba(180,119,41,.18);
  border-radius: 28px;
  background: linear-gradient(145deg, #111 0%, #21170d 100%);
  color: #fff;
  padding: 26px;
  box-shadow: 0 28px 90px rgba(0,0,0,.20);
}
.shop-hero-card span { color: #d8ba73; font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.shop-hero-card strong { display: block; margin: 12px 0; font-family: var(--serif); font-size: clamp(26px, 3vw, 42px); font-weight: 500; line-height: .98; }
.shop-hero-card p { color: rgba(255,255,255,.70); }
.shop-hero-card div { padding: 10px 0; border-top: 1px solid rgba(255,255,255,.10); color: rgba(255,255,255,.86); font-weight: 800; }
.shop-hero-card b { color: #d8ba73; margin-right: 8px; }
.featured-strip {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.featured-strip article {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255,255,255,.82);
  box-shadow: var(--shadow-soft);
}
.featured-strip .product-cover { height: 86px; border-radius: 16px; min-height: 0; }
.featured-strip .product-cover i { font-size: 22px; }
.featured-strip .product-cover strong,
.featured-strip .product-cover em { display: none; }
.featured-strip small { color: var(--gold-dark); font-weight: 950; text-transform: uppercase; font-size: 10px; letter-spacing: .08em; }
.featured-strip strong { display: block; line-height: 1.15; }
.featured-strip span { color: var(--ink); font-weight: 950; }
.shop-panel { width: min(1180px, 100%); margin: 0 auto; }
.shop-panel-head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 16px; }
.shop-panel-head h2 { margin: 0; font-family: var(--serif); font-weight: 500; font-size: clamp(32px, 4vw, 54px); }
.shop-panel-head > span { color: var(--gold-dark); font-weight: 950; }
.shop-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 220px 190px auto auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 22px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fffaf1;
}
.shop-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.shop-card { display: flex; flex-direction: column; min-height: 100%; }
.product-link-cover { text-decoration: none; color: inherit; display: block; }
.product-category { color: var(--gold-dark); font-size: 10px; font-weight: 950; letter-spacing: .1em; text-transform: uppercase; }
.shop-card-features {
  display: grid;
  gap: 7px;
  padding: 0 20px 18px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}
.product-cover.has-image { position: relative; overflow: hidden; justify-content: end; align-items: flex-start; padding: 18px; min-height: 230px; color: #fff; }
.product-cover.has-image:before { content:""; position:absolute; inset:0; background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.68)); z-index:1; }
.product-cover.has-image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.product-cover.has-image .cover-badge,
.product-cover.has-image strong { position: relative; z-index: 2; }
.product-cover.has-image .cover-badge { align-self: flex-start; padding: 8px 10px; border-radius: 999px; background: rgba(255,255,255,.18); backdrop-filter: blur(8px); font-weight: 950; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.product-breadcrumb {
  width: min(1180px, 100%);
  margin: 0 auto 14px;
  display: flex;
  gap: 10px;
  align-items: center;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.product-breadcrumb a { color: var(--gold-dark); text-decoration: none; }
.product-detail-layout { width: min(1180px, 100%); }
.product-media-panel { display: grid; gap: 16px; align-content: start; }
.product-media-panel .product-cover { min-height: 520px; }
.product-proof-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
.product-proof-grid span,
.terms-check,
.checkout-help-box,
.order-timeline span {
  border: 1px solid var(--line);
  background: #fffaf1;
  border-radius: 16px;
  padding: 12px;
  color: var(--muted);
  font-weight: 850;
}
.product-price-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 16px 0; }
.saving-pill { padding: 8px 12px; border-radius: 999px; background: #111; color: #fff; font-size: 12px; }
.premium-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.premium-buy-box { position: sticky; bottom: 16px; z-index: 3; padding: 14px; border: 1px solid rgba(180,119,41,.18); border-radius: 22px; background: rgba(255,255,255,.90); backdrop-filter: blur(18px); box-shadow: var(--shadow-soft); }
.checkout-steps {
  width: min(1180px, 100%);
  margin: 0 auto 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.checkout-steps span {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-weight: 950;
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: .08em;
}
.checkout-steps b { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 999px; background: #eee; color: #777; font-size: 10px; }
.checkout-steps .is-current { border-color: rgba(180,119,41,.45); background: #fffaf1; color: var(--gold-dark); }
.checkout-steps .is-current b,
.checkout-steps .is-done b { background: linear-gradient(135deg, var(--gold), var(--gold-dark)); color: #fff; }
.form-section-title { display: flex; align-items: center; gap: 10px; margin: 24px 0 12px; }
.form-section-title span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 999px; background: #111; color: #fff; font-weight: 950; }
.form-section-title strong { font-size: 14px; text-transform: uppercase; letter-spacing: .08em; }
.terms-check { display: flex; gap: 10px; align-items: flex-start; margin-top: 14px; cursor: pointer; }
.terms-check input { margin-top: 3px; accent-color: var(--gold-dark); }
.payment-card i { font-style: normal; font-size: 22px; }
.btn.is-loading { opacity: .72; cursor: wait; }
.checkout-help-box { margin: 16px 0; }
.checkout-help-box p { margin: 6px 0 8px; color: var(--muted); }
.order-timeline { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0 auto 18px; width: min(680px, 100%); }
.order-timeline span { text-align: center; }
.order-timeline .is-current { background: #fff4db; color: var(--gold-dark); border-color: rgba(180,119,41,.38); }
.order-timeline .is-done { background: #ecfff4; color: #17633d; border-color: rgba(23,99,61,.18); }
.status-badge { display:inline-flex; align-items:center; border-radius:999px; padding:6px 10px; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.07em; border:1px solid rgba(0,0,0,.08); background:#f4f4f4; color:#333; }
.status-pagado,.status-entregado { background:#ecfff4; color:#17633d; border-color:rgba(23,99,61,.18); }
.status-pendiente { background:#fff4db; color:#8b5c20; border-color:rgba(180,119,41,.20); }
.status-rechazado,.status-cancelado { background:#fff0f0; color:#9b1c1c; border-color:rgba(155,28,28,.18); }
@media print {
  .topbar,.checkout-steps,.thanks-actions,.admin-link { display:none !important; }
  .static-screen { min-height:auto; padding:20px; }
  .panel { box-shadow:none !important; }
}
@media (max-width: 1120px) {
  .shop-hero,
  .shop-filters,
  .shop-product-grid,
  .featured-strip { grid-template-columns: 1fr 1fr; }
  .shop-filters .btn { min-height: 48px; }
  .product-media-panel .product-cover { min-height: 360px; }
}
@media (max-width: 820px) {
  .shop-screen { padding-top: 94px; }
  .shop-hero,
  .shop-filters,
  .shop-product-grid,
  .featured-strip,
  .premium-list,
  .product-proof-grid,
  .checkout-steps,
  .order-timeline { grid-template-columns: 1fr; }
  .featured-strip article { grid-template-columns: 76px 1fr; }
  .featured-strip .small-link { grid-column: 1 / -1; }
  .shop-panel-head { align-items: flex-start; flex-direction: column; }
  .premium-buy-box { position: static; }
}


/* =========================================================
   RESPONSIVE FINAL 2026
   Corrige navegación, tienda, carrito, checkout, productos
   y pantallas institucionales para móvil, tablet y desktop.
   ========================================================= */
html { overflow-x: hidden; }
body { max-width: 100%; overflow-x: hidden; }
a, button, input, select, textarea { min-width: 0; }
.btn { white-space: normal; text-align: center; }
img, svg, video, canvas { max-width: 100%; height: auto; }
.panel, .contact-form, .product-card, .info-card, .blog-card, .cart-item, .checkout-card { min-width: 0; }

/* Menú tablet: la navegación larga ya no rompe el header */
@media (max-width: 1100px) {
  body,
  body.site-public { overflow: auto; }
  .site-public { background: var(--paper); }
  .topbar {
    height: 72px;
    min-height: 72px;
    padding: calc(10px + var(--safe-top)) clamp(14px, 3.6vw, 28px) 10px;
    flex-wrap: nowrap;
    gap: 10px;
  }
  .brand { min-width: 0; flex: 1 1 auto; }
  .brand span:last-child { min-width: 0; }
  .brand strong { max-width: 32ch; overflow: hidden; text-overflow: ellipsis; }
  .hamb { display: grid; margin-left: auto; flex: 0 0 44px; }
  .top-cta { display: inline-flex; flex: 0 0 auto; }
  .cart-mini { display: inline-flex; flex: 0 0 48px; }
  .nav-menu {
    position: fixed;
    z-index: 90;
    top: calc(78px + var(--safe-top));
    left: clamp(12px, 3vw, 24px);
    right: clamp(12px, 3vw, 24px);
    flex: none;
    display: none;
    max-height: calc(100svh - 96px - var(--safe-top));
    overflow: auto;
    padding: 12px;
    border: 1px solid rgba(216,186,115,.24);
    border-radius: 24px;
    background: rgba(10,9,8,.96);
    box-shadow: 0 26px 80px rgba(0,0,0,.40);
    backdrop-filter: blur(22px) saturate(135%);
  }
  .topbar.is-light .nav-menu { background: rgba(255,253,248,.97); }
  .nav-menu.is-open { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .nav-menu a {
    min-height: 46px;
    justify-content: center;
    padding: 12px 10px;
    border: 1px solid rgba(216,186,115,.20);
    border-radius: 16px;
    background: rgba(216,186,115,.08);
    font-size: 10px;
    line-height: 1.2;
    text-align: center;
    white-space: normal;
  }
  .nav-menu a::after { display: none; }
  .site-stage { height: auto; min-height: 0; overflow: visible; }
  .face {
    position: relative;
    height: auto;
    min-height: auto;
    padding: 104px clamp(18px, 4vw, 42px) 54px;
    overflow: visible;
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }
  .face:first-child { min-height: 100svh; }
  .face-inner { height: auto; min-height: 0; align-content: start; }
  .two-col,
  .about-layout,
  .contact-layout,
  .static-grid,
  .detail-layout,
  .product-detail-layout { grid-template-columns: 1fr !important; }
  .screen-dots,
  .screen-arrows,
  .progress-line { display: none !important; }
  .city-card { display: none; }
  .logo-footer { position: relative; margin: 30px calc(-1 * clamp(18px, 4vw, 42px)) -54px; height: 86px; }
  .headline { font-size: clamp(36px, 7vw, 66px); }
  .home-headline { font-size: clamp(40px, 8vw, 72px); }
  .sub { max-width: 100%; }
  .home-copy, .centered { max-width: 100%; }
  .cards-6,
  .sector-grid,
  .product-grid,
  .blog-grid,
  .contact-boxes,
  .metrics,
  .feature-list,
  .form-grid,
  .secure-row,
  .mini-proofs { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; max-width: 100%; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sector-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .product-card { min-height: auto; }
  .product-cover { height: clamp(150px, 26vw, 210px); }
  .contact-form { padding: clamp(18px, 4vw, 28px); }
  .static-screen { padding: 104px clamp(16px, 4vw, 42px) 42px; }
  .static-grid, .detail-layout, .checkout-shell { min-height: 0; align-items: start; }
  .shop-screen { padding-top: 104px; }
  .shop-hero { grid-template-columns: 1fr !important; }
  .shop-filters { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .shop-filters .btn { width: 100%; min-height: 48px; }
  .shop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .featured-strip { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .product-media-panel .product-cover,
  .detail-layout .product-cover { min-height: 320px; height: auto; }
  .premium-buy-box,
  .summary-panel,
  .checkout-card { position: static; }
  .checkout-shell { grid-template-columns: 1fr !important; }
  .checkout-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Desktop bajo: evita cortes verticales en pantallas pequeñas */
@media (min-width: 1101px) and (max-height: 820px) {
  .face { overflow-y: auto; padding-bottom: 108px; }
  .face-inner { min-height: calc(100vh - 210px); height: auto; }
  .headline { font-size: clamp(36px, 4.5vw, 62px); }
  .home-headline { font-size: clamp(40px, 4.8vw, 68px); }
  .cards-6, .sector-grid, .product-grid, .blog-grid { margin-top: 8px; }
  .product-cover { height: 126px; }
  .info-card { min-height: 146px; padding: 16px; }
  .sector-grid .info-card { min-height: 184px; }
  .blog-image { height: 126px; }
  .logo-footer { height: 70px; }
}

@media (max-width: 760px) {
  .topbar { padding-inline: 14px; }
  .top-cta { display: none; }
  .nav-menu.is-open { grid-template-columns: 1fr; }
  .brand-mark { width: 42px; height: 42px; flex: 0 0 42px; }
  .brand strong { font-size: 9px; max-width: 25ch; }
  .brand small { font-size: 7px; letter-spacing: .18em; }
  .face { padding: 94px 16px 42px; }
  .face:first-child { min-height: auto; }
  .kicker { justify-content: flex-start; gap: 10px; font-size: 9px; letter-spacing: .15em; }
  .kicker::before { width: 28px; }
  .kicker::after { display: none; }
  .headline { font-size: clamp(34px, 12vw, 54px); line-height: .96; }
  .home-headline { font-size: clamp(38px, 13vw, 58px); line-height: .95; }
  .home-actions, .shop-hero-actions, .store-intro-actions, .thanks-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
  .home-actions .btn,
  .shop-hero-actions .btn,
  .store-intro-actions .btn,
  .thanks-actions .btn { width: 100%; }
  .cards-6,
  .sector-grid,
  .product-grid,
  .blog-grid,
  .contact-boxes,
  .metrics,
  .feature-list,
  .form-grid,
  .secure-row,
  .mini-proofs,
  .payment-choice,
  .include-grid,
  .premium-list,
  .product-proof-grid,
  .receipt-box,
  .order-timeline,
  .shop-filters,
  .shop-product-grid,
  .featured-strip { grid-template-columns: 1fr !important; }
  .info-card, .product-card, .blog-card, .contact-box, .panel { border-radius: 22px; }
  .panel { padding: 18px; }
  .product-cover { height: auto; min-height: 190px; }
  .product-cover.has-image { min-height: 220px; }
  .product-media-panel .product-cover,
  .detail-layout .product-cover { min-height: 260px; }
  .contact-layout { text-align: left; }
  .contact-form { padding: 18px; }
  .static-screen { padding: 94px 14px 34px; }
  .shop-screen { padding-top: 94px; }
  .shop-hero-card { padding: 20px; border-radius: 22px; }
  .shop-panel-head { align-items: flex-start; flex-direction: column; }
  .featured-strip article { grid-template-columns: 78px minmax(0, 1fr); }
  .featured-strip .small-link { grid-column: 1 / -1; width: 100%; }
  .product-breadcrumb { align-items: flex-start; flex-wrap: wrap; font-size: 12px; }
  .detail-copy h1 { font-size: clamp(36px, 11vw, 56px); }
  .buy-box { grid-template-columns: 1fr !important; }
  .buy-box .btn { width: 100%; }
  .checkout-steps { grid-template-columns: 1fr; gap: 8px; }
  .checkout-item { grid-template-columns: 70px minmax(0, 1fr); }
  .checkout-item b { grid-column: 2; justify-self: start; }
  .payment-card span { min-height: 0; }
  .secure-row article { text-align: left; }
  .receipt-items p, .summary-row, .checkout-total, .checkout-card-head { align-items: flex-start; flex-direction: column; }
  .modal { padding: 12px; align-items: flex-end; }
  .modal-card { width: 100%; max-height: 90svh; border-radius: 24px 24px 0 0; }

  .modal-body section,
  .modal-body p,
  .modal-body ul { padding: 15px; border-radius: 18px; }
  .modal-actions { display: grid; grid-template-columns: 1fr; }
  .modal-actions .btn { width: 100%; min-width: 0; }
}

@media (max-width: 640px) {
  .cart-title-row { align-items: flex-start; flex-direction: column; }
  .cart-title-row form, .cart-title-row .btn { width: 100%; }
  .cart-item { grid-template-columns: 76px minmax(0, 1fr) !important; gap: 12px; padding: 12px; }
  .cart-thumb .product-cover { height: 76px; min-height: 0; }
  .cart-info strong { font-size: 20px; }
  .cart-info span { font-size: 12px; }
  .cart-price { display: none !important; }
  .qty-form,
  .cart-line-total,
  .cart-remove { grid-column: 1 / -1; }
  .qty-form { grid-template-columns: 1fr; }
  .qty-control { grid-template-columns: 42px 1fr 42px; width: 100%; }
  .qty-control button { width: 42px; height: 42px; }
  .qty-control .qty-input { width: 100%; height: 42px; }
  .cart-remove .btn { width: 100%; }
  .summary-panel h2, .checkout-card h2 { font-size: 32px; }
}

@media (max-width: 520px) {
  .cart-mini { display: inline-flex; min-width: 42px; width: 42px; height: 42px; }
  .brand { gap: 8px; }
  .brand-mark { width: 38px; height: 38px; flex-basis: 38px; font-size: 15px; }
  .brand strong { max-width: 20ch; font-size: 8px; letter-spacing: .06em; }
  .brand small { display: none; }
  .hamb { width: 42px; height: 42px; flex-basis: 42px; }
  .topbar { min-height: 68px; height: 68px; }
  .nav-menu { top: calc(74px + var(--safe-top)); }
  .face { padding-top: 88px; }
  .static-screen { padding-top: 88px; }
  .shop-screen { padding-top: 88px; }
  .btn { width: 100%; min-height: 48px; padding-inline: 14px; }
  .product-actions { display: grid; grid-template-columns: 1fr; }
  .product-actions form,
  .product-actions a,
  .product-actions button { width: 100%; }
  .empty { padding: 24px 16px; }
  .checkout-total strong { font-size: 25px; }
}

@media (max-width: 380px) {
  .cart-mini { display: none; }
  .brand strong { max-width: 18ch; }
  .headline, .home-headline { word-break: normal; overflow-wrap: anywhere; }
  .panel { padding: 15px; }
  .cart-item { grid-template-columns: 1fr !important; }
  .cart-thumb .product-cover { height: 140px; }
}

/* =========================================================
   PARCHE HOME 2026 — primera cara exacta estilo maqueta
   ========================================================= */
.site-public .cart-mini { display: none; }
.site-public .topbar {
  height: 92px;
  padding: 0 31px 0 34px;
  gap: 22px;
  background: linear-gradient(180deg, rgba(3,3,3,.97), rgba(3,3,3,.72) 72%, rgba(3,3,3,0));
  border-bottom: 0;
  box-shadow: none;
  backdrop-filter: none;
}
.site-public .topbar.is-light {
  color: var(--ink);
  background: rgba(255,252,246,.92);
  border-bottom: 1px solid rgba(180,119,41,.18);
  box-shadow: 0 18px 42px rgba(38,26,11,.08);
  backdrop-filter: blur(18px);
}
.site-public .brand {
  min-width: 300px;
  gap: 15px;
  align-items: center;
}
.site-public .brand-mark {
  width: 65px;
  height: 58px;
  flex: 0 0 65px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #d8ba73;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 54px;
  line-height: .85;
  letter-spacing: -21px;
  text-indent: -2px;
}
.site-public .brand-mark::after {
  display: none;
}
.site-public .brand strong {
  color: #fff7e8;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 13px;
  letter-spacing: .065em;
  line-height: 1.05;
  font-weight: 600;
}
.site-public .brand small {
  margin-top: 8px;
  color: #d8ba73;
  font-size: 9px;
  letter-spacing: .26em;
  font-weight: 900;
}
.site-public .topbar.is-light .brand strong { color: var(--ink); }
.site-public .topbar.is-light .brand-mark,
.site-public .topbar.is-light .brand small { color: var(--gold-3); }
.site-public .nav-menu {
  justify-content: flex-start;
  gap: clamp(18px, 2.05vw, 32px);
  padding-left: 3px;
}
.site-public .nav-menu a {
  min-height: 92px;
  align-items: center;
  color: #fff8ea;
  opacity: .94;
  font-size: 11px;
  line-height: 1;
  letter-spacing: .115em;
  font-weight: 950;
}
.site-public .topbar.is-light .nav-menu a { color: var(--ink); }
.site-public .nav-menu a::after {
  bottom: 14px;
  left: 0;
  width: 0;
  height: 2px;
  background: #b47729;
}
.site-public .nav-menu a.is-active::after,
.site-public .nav-menu a:hover::after {
  width: 38px;
}
.site-public .nav-menu a:hover,
.site-public .nav-menu a.is-active { color: #d8ba73; }
.site-public .top-cta {
  height: 43px;
  min-width: 171px;
  padding: 0 20px;
  border-radius: 0;
  border: 1px solid rgba(216,186,115,.72);
  background: rgba(0,0,0,.18);
  color: #d8ba73;
  box-shadow: none;
  font-size: 11px;
  letter-spacing: .13em;
}
.site-public .top-cta::before {
  content: '▣';
  margin-right: 10px;
  font-size: 14px;
  line-height: 1;
}
.site-public .topbar.is-light .top-cta {
  color: var(--gold-3);
  background: #fffaf1;
  border-color: rgba(180,119,41,.34);
}

.face#inicio {
  padding: 0;
  color: #fff8ee;
  background:
    radial-gradient(circle at 55% 55%, rgba(216,186,115,.11), transparent 29%),
    linear-gradient(90deg, rgba(0,0,0,.98) 0%, rgba(0,0,0,.86) 38%, rgba(0,0,0,.38) 62%, rgba(0,0,0,.08) 100%),
    #020202;
}
.face#inicio::before,
.face#inicio::after {
  display: none;
}
.face#inicio .face-inner.two-col {
  position: relative;
  height: calc(100vh - 92px);
  min-height: 575px;
  padding: 122px 52px 18px;
  display: grid;
  grid-template-columns: minmax(520px, 690px) minmax(0, 1fr);
  align-items: center;
  gap: 0;
  overflow: hidden;
}
.face#inicio .city-card {
  position: absolute;
  z-index: 0;
  inset: 0 0 0 auto;
  width: min(78vw, 1040px);
  height: 100%;
  min-height: 0;
  border: 0;
  border-radius: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,.94) 0%, rgba(0,0,0,.66) 22%, rgba(0,0,0,.10) 52%, rgba(0,0,0,0) 100%),
    url('../img/home-city-code.svg') right bottom / cover no-repeat;
  box-shadow: none;
  opacity: 1;
}
.face#inicio .city-card::before,
.face#inicio .city-card::after,
.face#inicio .city-card .building,
.face#inicio .city-card .gold-road {
  display: none;
}
.face#inicio .home-copy {
  position: relative;
  z-index: 2;
  width: min(690px, 100%);
  max-width: 690px;
  padding-top: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.face#inicio .kicker {
  justify-content: flex-start;
  gap: 13px;
  margin: 0 0 24px;
  color: #c99b43;
  font-size: 11px;
  letter-spacing: .125em;
  line-height: 1;
}
.face#inicio .kicker::before {
  width: 32px;
  background: #b47729;
}
.face#inicio .kicker::after { display: none; }
.face#inicio .home-headline {
  max-width: 650px;
  color: #f9f4eb;
  font-size: clamp(52px, 5.55vw, 72px);
  line-height: .97;
  letter-spacing: -.065em;
  text-shadow: 0 4px 18px rgba(0,0,0,.35);
}
.face#inicio .home-headline span {
  color: #d8ba73;
}
.face#inicio .sub {
  position: relative;
  max-width: 620px;
  margin: 16px 0 0 40px;
  color: rgba(255,248,235,.83);
  font-size: clamp(16px, 1.28vw, 19px);
  line-height: 1.45;
}
.face#inicio .sub::before {
  content: '';
  position: absolute;
  left: -40px;
  top: 50%;
  width: 30px;
  height: 1px;
  background: #b47729;
}
.face#inicio .home-actions {
  margin-top: 34px;
  gap: 16px;
  flex-wrap: wrap;
}
.face#inicio .home-actions .btn {
  min-width: 194px;
  height: 51px;
  min-height: 51px;
  padding: 0 24px;
  border-radius: 0;
  box-shadow: none;
  font-size: 11px;
  letter-spacing: .08em;
}
.face#inicio .home-actions .btn-gold {
  min-width: 196px;
  background: linear-gradient(135deg, #f0d183, #c99034 64%, #a56d25);
  color: #130f09;
}
.face#inicio .home-actions .btn-ghost {
  min-width: 200px;
  color: #d8ba73;
  border-color: rgba(216,186,115,.46);
  background: rgba(0,0,0,.18);
}
.face#inicio .home-actions .btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 18px 45px rgba(180,119,41,.20);
}
.face#inicio .mini-proofs {
  position: relative;
  z-index: 2;
  left: auto;
  right: auto;
  bottom: auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 34px 0 0;
  max-width: 760px;
}
.face#inicio .mini-proofs article {
  min-height: 58px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: 14px;
  padding: 0 22px 0 0;
  border: 0;
  border-right: 1px solid rgba(216,186,115,.38);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  cursor: pointer;
}
.face#inicio .mini-proofs article + article {
  padding-left: 22px;
}
.face#inicio .mini-proofs article:last-child { border-right: 0; }
.face#inicio .mini-proofs article:hover {
  transform: none;
  background: transparent;
  border-color: rgba(216,186,115,.38);
}
.face#inicio .mini-proofs i {
  grid-row: 1 / 3;
  margin: 0;
  width: 30px;
  color: #d8ba73;
  font-size: 29px;
  line-height: 1;
}
.face#inicio .mini-proofs strong {
  margin: 0 0 6px;
  color: #fff9ef;
  font-size: 11px;
  line-height: 1;
  letter-spacing: .08em;
  font-weight: 950;
}
.face#inicio .mini-proofs span {
  color: rgba(255,248,235,.68);
  font-size: 10.5px;
  line-height: 1.45;
}
.face#inicio .logo-footer {
  height: 92px;
  padding: 0 clamp(28px, 4vw, 52px);
  border-top: 1px solid rgba(216,186,115,.10);
  background: linear-gradient(180deg, rgba(10,10,10,.98), #070707);
}
.face#inicio .logo-footer img {
  width: min(1226px, 100%);
  object-fit: contain;
}


@media (min-width: 821px) and (max-height: 860px) {
  .face#inicio .face-inner.two-col {
    padding-top: 108px;
    padding-bottom: 12px;
  }
  .face#inicio .home-headline {
    font-size: clamp(44px, 5vw, 64px);
  }
  .face#inicio .sub {
    margin-top: 14px;
    font-size: 16px;
  }
  .face#inicio .home-actions {
    margin-top: 28px;
    gap: 12px;
  }
  .face#inicio .home-actions .btn {
    min-width: 180px;
    height: 48px;
    min-height: 48px;
  }
  .face#inicio .mini-proofs {
    margin-top: 26px;
  }
  .face#inicio .mini-proofs strong {
    font-size: 10px;
  }
  .face#inicio .mini-proofs span {
    font-size: 9.6px;
  }
}

@media (min-width: 821px) and (max-width: 1240px) {
  .site-public .topbar {
    height: 82px;
    padding-inline: 28px;
    gap: 14px;
  }
  .site-public .brand { min-width: 250px; gap: 12px; }
  .site-public .brand-mark {
    width: 54px;
    flex-basis: 54px;
    font-size: 45px;
    letter-spacing: -18px;
  }
  .site-public .brand strong { font-size: 10.5px; }
  .site-public .brand small { font-size: 7.5px; }
  .site-public .nav-menu { gap: 12px; }
  .site-public .nav-menu a { min-height: 82px; font-size: 8.7px; letter-spacing: .08em; }
  .site-public .top-cta { min-width: 150px; padding-inline: 14px; font-size: 9px; }
  .face#inicio .face-inner.two-col {
    height: calc(100vh - 82px);
    padding: 108px 34px 16px;
    grid-template-columns: minmax(460px, 610px) minmax(0, 1fr);
  }
  .face#inicio .home-copy { width: min(610px, 100%); }
  .face#inicio .home-headline { font-size: clamp(44px, 5.1vw, 60px); }
  .face#inicio .home-actions { gap: 11px; }
  .face#inicio .home-actions .btn { min-width: 170px; padding-inline: 16px; font-size: 9.5px; }
  .face#inicio .mini-proofs { max-width: 690px; margin-top: 28px; }
}

@media (max-width: 820px) {
  .site-public .topbar {
    min-height: 76px;
    height: auto;
    padding: 12px 16px;
    background: rgba(3,3,3,.96);
    border-bottom: 1px solid rgba(216,186,115,.20);
  }
  .site-public .brand { min-width: 0; gap: 11px; }
  .site-public .brand-mark {
    width: 49px;
    height: 44px;
    flex-basis: 49px;
    font-size: 40px;
    letter-spacing: -16px;
  }
  .site-public .brand strong { font-size: 9.5px; }
  .site-public .brand small { font-size: 7px; letter-spacing: .18em; }
  .site-public .hamb { display: grid; margin-left: auto; }
  .site-public .nav-menu {
    order: 5;
    flex-basis: 100%;
    display: none;
    flex-direction: column;
    gap: 8px;
    padding: 10px 0 2px;
  }
  .site-public .nav-menu.is-open { display: flex; }
  .site-public .nav-menu a {
    min-height: 42px;
    padding: 13px 14px;
    border-radius: 0;
    border: 1px solid rgba(216,186,115,.18);
    background: rgba(216,186,115,.07);
    font-size: 10px;
  }
  .site-public .nav-menu a::after { display: none; }
  .site-public .top-cta { display: none; }
  .face#inicio {
    min-height: 100vh;
    background:
      linear-gradient(180deg, rgba(0,0,0,.58), rgba(0,0,0,.94) 55%),
      url('../img/home-city-code.svg') center top / cover no-repeat,
      #020202;
  }
  .face#inicio .face-inner.two-col {
    min-height: 0;
    height: auto;
    padding: 112px 18px 34px;
    overflow: visible;
  }
  .face#inicio .city-card { display: none; }
  .face#inicio .home-copy {
    width: 100%;
    padding-top: 0;
  }
  .face#inicio .kicker {
    margin-bottom: 18px;
    font-size: 9px;
    letter-spacing: .10em;
  }
  .face#inicio .kicker::before { width: 28px; }
  .face#inicio .home-headline {
    max-width: 100%;
    font-size: clamp(42px, 13vw, 58px);
    line-height: .96;
  }
  .face#inicio .sub {
    margin: 18px 0 0 34px;
    font-size: 15px;
  }
  .face#inicio .sub::before { left: -34px; width: 24px; }
  .face#inicio .home-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 28px;
  }
  .face#inicio .home-actions .btn {
    width: 100%;
    min-width: 0;
  }
  .face#inicio .mini-proofs {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    max-width: none;
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 28px;
    border-top: 1px solid rgba(216,186,115,.20);
  }
  .face#inicio .mini-proofs article,
  .face#inicio .mini-proofs article + article {
    min-height: 74px;
    padding: 16px 0;
    border-right: 0;
    border-bottom: 1px solid rgba(216,186,115,.20);
  }
  .face#inicio .logo-footer {
    position: relative;
    height: 86px;
    margin: 0;
    padding: 0 16px;
  }
}

/* =========================================================
   PARCHE COMPLETO - SECCIÓN SOLUCIONES COMO MAQUETA
   Este bloque está al final de site.css para pisar estilos anteriores.
   ========================================================= */
.site-public .face#soluciones {
  color: #17120b !important;
  padding: 92px clamp(34px, 6vw, 110px) 26px !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 0% 100%, rgba(205, 161, 82, .10), transparent 24%),
    radial-gradient(circle at 100% 48%, rgba(205, 161, 82, .08), transparent 28%),
    linear-gradient(180deg, #fcfbf8 0%, #f7f5ef 100%) !important;
}
.site-public .face#soluciones::before {
  content: "";
  position: absolute;
  right: -190px;
  top: 180px;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  border: 1px solid rgba(188, 127, 33, .12);
  box-shadow:
    0 0 0 14px transparent,
    0 0 0 25px rgba(188, 127, 33, .045),
    0 0 0 48px transparent,
    0 0 0 60px rgba(188, 127, 33, .038),
    0 0 0 86px transparent,
    0 0 0 98px rgba(188, 127, 33, .032);
  pointer-events: none;
  display: block !important;
}
.site-public .face#soluciones::after {
  content: "";
  position: absolute;
  left: -230px;
  bottom: -240px;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  border: 1px solid rgba(188, 127, 33, .12);
  box-shadow:
    0 0 0 14px transparent,
    0 0 0 25px rgba(188, 127, 33, .045),
    0 0 0 48px transparent,
    0 0 0 60px rgba(188, 127, 33, .038),
    0 0 0 86px transparent,
    0 0 0 98px rgba(188, 127, 33, .032);
  pointer-events: none;
  display: block !important;
}
.site-public .face#soluciones .face-inner.centered {
  position: relative !important;
  z-index: 2 !important;
  width: min(1320px, 100%) !important;
  height: 100% !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr auto !important;
  align-content: start !important;
  gap: 0 !important;
  text-align: center !important;
}
.site-public .face#soluciones .face-inner.centered::before {
  content: "ESTRATEGIA QUE GENERA VALOR\A RESULTADOS QUE TRASCIENDEN";
  white-space: pre;
  position: absolute;
  top: -42px;
  right: 0;
  color: #9a732e;
  font-size: 11px;
  line-height: 1.9;
  letter-spacing: .16em;
  text-align: right;
  font-weight: 900;
  text-transform: uppercase;
}
.site-public .face#soluciones .face-inner.centered::after {
  content: "🛡  ESTRATEGIA + TECNOLOGÍA + EJECUCIÓN = TRANSFORMACIÓN REAL     ↗  ENFOQUE EN IMPACTO     🛡  METODOLOGÍAS PROBADAS     👥  EQUIPOS DE ÉLITE     🏆  RESULTADOS SOSTENIBLES";
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  margin-top: 24px;
  padding: 14px 20px;
  border: 1px solid rgba(191, 158, 95, .28);
  border-radius: 0 0 14px 14px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 6px 18px rgba(70, 52, 23, .045);
  color: #17120b;
  font-size: 12px;
  line-height: 1.5;
  font-weight: 900;
  letter-spacing: .045em;
  text-align: center;
}
.site-public .face#soluciones .kicker {
  justify-content: center !important;
  margin: 0 0 16px !important;
  color: #b2802f !important;
  font-size: 11px !important;
  letter-spacing: .20em !important;
  line-height: 1 !important;
}
.site-public .face#soluciones .kicker::before,
.site-public .face#soluciones .kicker::after {
  width: 48px !important;
  height: 1px !important;
  background: #c99b43 !important;
}
.site-public .face#soluciones .headline {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(50px, 5.2vw, 78px) !important;
  font-weight: 400 !important;
  line-height: .95 !important;
  letter-spacing: -.055em !important;
}
.site-public .face#soluciones .headline::after {
  content: "";
  display: block;
  width: 56px;
  height: 2px;
  margin: 16px auto 18px;
  background: #c99b43;
}
.site-public .face#soluciones .sub {
  max-width: 750px !important;
  margin: 0 auto !important;
  color: #423a2f !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}
.site-public .face#soluciones .cards-6 {
  width: 100% !important;
  max-width: 1180px !important;
  margin: 36px auto 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
}
.site-public .face#soluciones .info-card {
  position: relative !important;
  min-height: 214px !important;
  display: block !important;
  padding: 30px 28px 26px 192px !important;
  border: 1px solid rgba(191, 158, 95, .34) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.74) !important;
  box-shadow: 0 8px 24px rgba(70, 52, 23, .05) !important;
  text-align: left !important;
  overflow: hidden !important;
  cursor: pointer !important;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background .22s ease !important;
}
.site-public .face#soluciones .info-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(191, 158, 95, .52) !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 18px 36px rgba(70, 52, 23, .10) !important;
}
.site-public .face#soluciones .info-card::before {
  content: attr(data-num);
  position: absolute;
  left: 192px;
  top: 25px;
  color: #c28728;
  font-size: 22px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .03em;
}
.site-public .face#soluciones .info-card::after {
  content: "";
  position: absolute;
  left: 142px;
  top: 32px;
  width: 1px;
  height: 104px;
  background: rgba(201, 155, 67, .45);
}
.site-public .face#soluciones .info-card i {
  position: absolute !important;
  left: 38px !important;
  top: 36px !important;
  width: 74px !important;
  height: 74px !important;
  margin: 0 !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, #d79d38, #bc7f21) !important;
  color: #fff !important;
  font-style: normal !important;
  font-size: 35px !important;
  line-height: 1 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22) !important;
}
.site-public .face#soluciones .info-card h3 {
  margin: 38px 0 0 !important;
  color: #111 !important;
  font-size: 18px !important;
  line-height: 1.28 !important;
  font-weight: 900 !important;
  letter-spacing: .015em !important;
  text-transform: uppercase !important;
}
.site-public .face#soluciones .info-card h3::after {
  content: "";
  display: block;
  width: 36px;
  height: 2px;
  margin: 12px 0 16px;
  background: #c99b43;
}
.site-public .face#soluciones .info-card p {
  margin: 0 !important;
  color: #4c443b !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}
.site-public .face#soluciones .info-card .more,
.site-public .face#soluciones .info-card button.more,
.site-public .face#soluciones .info-card [data-modal] {
  display: none !important;
}
@media (max-width: 1280px) {
  .site-public .face#soluciones {
    padding-inline: 42px !important;
  }
  .site-public .face#soluciones .cards-6 {
    gap: 18px !important;
  }
  .site-public .face#soluciones .info-card {
    padding-left: 166px !important;
  }
  .site-public .face#soluciones .info-card::before {
    left: 166px !important;
  }
  .site-public .face#soluciones .info-card::after {
    left: 124px !important;
  }
  .site-public .face#soluciones .info-card i {
    left: 30px !important;
  }
}
@media (max-width: 1100px) {
  .site-public .face#soluciones {
    overflow: auto !important;
    padding: 100px 28px 34px !important;
  }
  .site-public .face#soluciones .face-inner.centered {
    height: auto !important;
    min-height: 100% !important;
    display: block !important;
  }
  .site-public .face#soluciones .face-inner.centered::before {
    position: static;
    display: block;
    margin: 0 0 18px;
    text-align: center;
    font-size: 10px;
  }
  .site-public .face#soluciones .cards-6 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .site-public .face#soluciones .face-inner.centered::after {
    margin-top: 24px;
    white-space: normal;
  }
}
@media (max-width: 760px) {
  .site-public .face#soluciones {
    padding: 108px 16px 30px !important;
  }
  .site-public .face#soluciones .kicker {
    font-size: 9px !important;
    letter-spacing: .12em !important;
    margin-bottom: 14px !important;
  }
  .site-public .face#soluciones .kicker::before,
  .site-public .face#soluciones .kicker::after {
    width: 28px !important;
  }
  .site-public .face#soluciones .headline {
    font-size: clamp(38px, 12vw, 56px) !important;
    line-height: .98 !important;
  }
  .site-public .face#soluciones .headline::after {
    margin: 14px auto 16px;
  }
  .site-public .face#soluciones .sub {
    font-size: 14.5px !important;
    line-height: 1.6 !important;
  }
  .site-public .face#soluciones .cards-6 {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    margin-top: 26px !important;
  }
  .site-public .face#soluciones .info-card {
    min-height: 0 !important;
    padding: 22px 18px 22px 118px !important;
  }
  .site-public .face#soluciones .info-card::before {
    left: 118px !important;
    top: 22px !important;
    font-size: 18px !important;
  }
  .site-public .face#soluciones .info-card::after {
    left: 92px !important;
    top: 24px !important;
    height: 82px !important;
  }
  .site-public .face#soluciones .info-card i {
    left: 20px !important;
    top: 26px !important;
    width: 54px !important;
    height: 54px !important;
    font-size: 27px !important;
  }
  .site-public .face#soluciones .info-card h3 {
    margin-top: 32px !important;
    font-size: 15.5px !important;
    line-height: 1.3 !important;
  }
  .site-public .face#soluciones .info-card h3::after {
    margin: 10px 0 12px;
  }
  .site-public .face#soluciones .info-card p {
    font-size: 13.2px !important;
    line-height: 1.55 !important;
  }
  .site-public .face#soluciones .face-inner.centered::after {
    content: "🛡  ESTRATEGIA + TECNOLOGÍA + EJECUCIÓN = TRANSFORMACIÓN REAL";
    min-height: auto;
    padding: 16px;
    border-radius: 14px;
    font-size: 12px;
    line-height: 1.55;
  }
}
@media (max-width: 420px) {
  .site-public .face#soluciones .info-card {
    padding-left: 102px !important;
  }
  .site-public .face#soluciones .info-card::before {
    left: 102px !important;
  }
  .site-public .face#soluciones .info-card::after {
    left: 82px !important;
  }
  .site-public .face#soluciones .info-card i {
    left: 14px !important;
  }
}

/* =========================================================
   PARCHE FINAL - SECCIONES 100% PANTALLA SIN ENTRECORTES
   Mantiene una sola sección visible por pantalla en desktop,
   tablet y móvil. Si el contenido es más alto, se desplaza
   dentro de la misma sección, sin mezclar con la siguiente.
   ========================================================= */
html,
body.site-public {
  height: 100% !important;
  overflow: hidden !important;
}

body.site-public .site-stage[data-screen-root] {
  position: relative !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100svh !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  max-height: 100vh !important;
  max-height: 100svh !important;
  overflow: hidden !important;
}

body.site-public .site-stage[data-screen-root] > .face {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100svh !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  max-height: 100vh !important;
  max-height: 100svh !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate3d(0, 22px, 0) scale(.992) !important;
  scroll-behavior: smooth !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(180,119,41,.55) rgba(0,0,0,.12);
}

body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar {
  width: 8px;
}

body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar-track {
  background: rgba(0,0,0,.10);
}

body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(180,119,41,.58);
}

body.site-public .site-stage[data-screen-root] > .face.is-active {
  z-index: 2 !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
}

body.site-public .site-stage[data-screen-root] > .face:not(.is-active) {
  z-index: 0 !important;
  visibility: hidden !important;
}

body.site-public .site-stage[data-screen-root] > .face.is-active {
  visibility: visible !important;
}

body.site-public .site-stage[data-screen-root] > .face > .face-inner {
  height: auto !important;
  min-height: calc(100svh - 132px) !important;
}

body.site-public .site-stage[data-screen-root] > .face:not(#inicio) > .face-inner {
  padding-bottom: 10px;
}

body.site-public .screen-dots {
  display: flex !important;
}

body.site-public .screen-arrows {
  display: flex !important;
}

body.site-public .progress-line {
  display: block !important;
  position: fixed !important;
}

/* HOME: mantiene portada + logos dentro de una sola pantalla */
body.site-public .face#inicio {
  height: 100svh !important;
  max-height: 100svh !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.site-public .face#inicio .face-inner.two-col {
  height: calc(100svh - 92px) !important;
  min-height: 0 !important;
  max-height: calc(100svh - 92px) !important;
  overflow: hidden !important;
}

body.site-public .face#inicio .logo-footer {
  height: 92px !important;
  min-height: 92px !important;
  max-height: 92px !important;
  margin: 0 !important;
}

/* SOLUCIONES: evita corte inferior y mantiene la sección completa */
body.site-public .face#soluciones {
  padding-top: clamp(88px, 9svh, 106px) !important;
  padding-bottom: clamp(18px, 3svh, 32px) !important;
}

body.site-public .face#soluciones .face-inner.centered {
  min-height: calc(100svh - 126px) !important;
  height: auto !important;
}

body.site-public .face#soluciones .cards-6 {
  margin-top: clamp(22px, 3.2svh, 36px) !important;
}

body.site-public .face#soluciones .info-card {
  min-height: clamp(165px, 22svh, 214px) !important;
}

body.site-public .face#soluciones .face-inner.centered::after {
  margin-top: clamp(16px, 2.6svh, 24px) !important;
}

/* Pantallas bajas: compacta sin cortar */
@media (min-width: 821px) and (max-height: 820px) {
  body.site-public .site-stage[data-screen-root] > .face:not(#inicio) {
    padding-top: 82px !important;
    padding-bottom: 18px !important;
  }

  body.site-public .site-stage[data-screen-root] > .face:not(#inicio) > .face-inner {
    min-height: calc(100svh - 104px) !important;
  }

  body.site-public .headline {
    font-size: clamp(38px, 4.4vw, 62px) !important;
  }

  body.site-public .sub {
    font-size: 14px !important;
    line-height: 1.48 !important;
  }

  body.site-public .cards-6,
  body.site-public .sector-grid,
  body.site-public .product-grid,
  body.site-public .blog-grid {
    gap: 14px !important;
    margin-top: 18px !important;
  }

  body.site-public .info-card {
    min-height: 138px !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }

  body.site-public .face#soluciones .info-card {
    min-height: 150px !important;
    padding-top: 20px !important;
    padding-bottom: 18px !important;
  }
}

/* Tablet y móvil: sigue siendo full screen, no listado entrecortado */
@media (max-width: 1100px) {
  body.site-public,
  body.site-public.modal-open {
    overflow: hidden !important;
  }

  body.site-public .site-stage[data-screen-root] {
    height: 100svh !important;
    min-height: 100svh !important;
    max-height: 100svh !important;
    overflow: hidden !important;
  }

  body.site-public .site-stage[data-screen-root] > .face {
    position: absolute !important;
    inset: 0 !important;
    height: 100svh !important;
    min-height: 100svh !important;
    max-height: 100svh !important;
    padding: 96px clamp(16px, 4vw, 34px) 28px !important;
    overflow-y: auto !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translate3d(0, 18px, 0) scale(.995) !important;
  }

  body.site-public .site-stage[data-screen-root] > .face.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
  }

  body.site-public .site-stage[data-screen-root] > .face > .face-inner {
    min-height: calc(100svh - 124px) !important;
    height: auto !important;
  }

  body.site-public .screen-dots,
  body.site-public .screen-arrows {
    display: none !important;
  }

  body.site-public .progress-line {
    display: block !important;
  }

  body.site-public .face#inicio {
    padding: 0 !important;
    overflow-y: auto !important;
  }

  body.site-public .face#inicio .face-inner.two-col {
    height: auto !important;
    min-height: calc(100svh - 86px) !important;
    max-height: none !important;
    padding: 108px 18px 32px !important;
    overflow: visible !important;
  }

  body.site-public .face#inicio .logo-footer {
    position: relative !important;
    height: 86px !important;
    min-height: 86px !important;
    max-height: 86px !important;
    margin: 0 !important;
  }

  body.site-public .face#soluciones .face-inner.centered,
  body.site-public .face#soluciones .face-inner.centered::before {
    display: block !important;
  }
}

@media (max-width: 760px) {
  body.site-public .site-stage[data-screen-root] > .face {
    padding: 96px 16px 26px !important;
  }

  body.site-public .site-stage[data-screen-root] > .face > .face-inner {
    min-height: calc(100svh - 122px) !important;
  }

  body.site-public .face#inicio .face-inner.two-col {
    min-height: calc(100svh - 80px) !important;
    padding: 104px 16px 28px !important;
  }

  body.site-public .face#inicio .logo-footer {
    height: 80px !important;
    min-height: 80px !important;
    max-height: 80px !important;
  }

  body.site-public .face#soluciones {
    padding-top: 98px !important;
  }

  body.site-public .face#soluciones .cards-6 {
    margin-top: 22px !important;
  }
}


/* =========================================================
   CORRECCIÓN - NUMERITOS LATERALES / NAVEGACIÓN FULLSCREEN
   Mantiene las secciones fullscreen sin romper los números.
   ========================================================= */

@media (min-width: 1101px) {
  body.site-public .screen-dots {
    position: fixed !important;
    z-index: 90 !important;
    right: 18px !important;
    top: 50% !important;
    bottom: auto !important;
    left: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: auto !important;
    height: auto !important;
    transform: translateY(-50%) !important;
    pointer-events: auto !important;
  }

  body.site-public .screen-dots button {
    width: 39px !important;
    height: 29px !important;
    min-width: 39px !important;
    min-height: 29px !important;
    max-width: 39px !important;
    max-height: 29px !important;
    padding: 0 !important;
    border: 1px solid rgba(216,186,115,.32) !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    background: rgba(10,10,10,.54) !important;
    color: var(--gold-2) !important;
    box-shadow: none !important;
    backdrop-filter: blur(12px) !important;
    cursor: pointer !important;
    transform: none !important;
  }

  body.site-public .screen-dots button.is-active {
    color: #171109 !important;
    background: linear-gradient(135deg, var(--gold-2), var(--gold)) !important;
    transform: translateX(-7px) !important;
  }

  body.site-public .screen-dots span {
    display: block !important;
    color: inherit !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .02em !important;
  }

  body.site-public .screen-arrows {
    position: fixed !important;
    z-index: 90 !important;
    right: 18px !important;
    bottom: 24px !important;
    left: auto !important;
    top: auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: auto !important;
    height: auto !important;
    pointer-events: auto !important;
  }

  body.site-public .screen-arrows button {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    padding: 0 !important;
    border: 1px solid rgba(216,186,115,.32) !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    background: rgba(10,10,10,.54) !important;
    color: var(--gold-2) !important;
    backdrop-filter: blur(12px) !important;
    cursor: pointer !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .screen-dots,
  body.site-public .screen-arrows {
    display: none !important;
  }
}


/* =========================================================
   PARCHE DEFINITIVO - SCROLL REAL DENTRO DE CADA SECCIÓN
   - La página NO scrollea completa.
   - Cada .face activa tiene su propio scroll visible.
   - No toca los numeritos laterales.
   ========================================================= */

html,
body.site-public {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  overflow: hidden !important;
}

body.site-public {
  position: fixed !important;
  inset: 0 !important;
}

body.site-public .site-stage[data-screen-root] {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
  overflow: hidden !important;
  overscroll-behavior: none !important;
}

body.site-public .site-stage[data-screen-root] > .face {
  position: absolute !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
  overflow-x: hidden !important;
  overflow-y: scroll !important;
  overscroll-behavior-y: contain !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-gutter: stable both-edges !important;
  scrollbar-width: auto !important;
  scrollbar-color: #b47729 rgba(5,5,5,.20) !important;
  touch-action: pan-y !important;
}

/* fuerza barra visible en navegadores Chromium/WebKit */
body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar {
  width: 13px !important;
  height: 13px !important;
}

body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar-track {
  background: rgba(5,5,5,.18) !important;
  border-left: 1px solid rgba(180,119,41,.22) !important;
}

body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar-thumb {
  min-height: 80px !important;
  border: 3px solid rgba(5,5,5,.18) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #d8ba73, #b47729) !important;
  background-clip: padding-box !important;
}

body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #f2d98e, #b47729) !important;
  background-clip: padding-box !important;
}

body.site-public .site-stage[data-screen-root] > .face.is-active {
  z-index: 2 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

body.site-public .site-stage[data-screen-root] > .face:not(.is-active) {
  z-index: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* El contenido interno crece normalmente; el scroll se queda en .face */
body.site-public .site-stage[data-screen-root] > .face > .face-inner {
  height: auto !important;
  min-height: calc(100dvh - 130px) !important;
}

/* En secciones con tarjetas grandes dejamos aire abajo para que el último contenido no quede tapado */
body.site-public .site-stage[data-screen-root] > .face:not(#inicio) {
  padding-bottom: 80px !important;
}

/* Inicio también puede scrollear si el alto de pantalla es bajo */
body.site-public .face#inicio {
  overflow-y: scroll !important;
}

body.site-public .face#inicio .face-inner.two-col {
  overflow: visible !important;
}

/* Asegura que los numeritos queden por encima de la barra */
@media (min-width: 1101px) {
  body.site-public .screen-dots {
    right: 28px !important;
    z-index: 160 !important;
  }

  body.site-public .screen-arrows {
    right: 28px !important;
    z-index: 160 !important;
  }
}

/* Móvil/tablet: scroll dentro de cada pantalla */
@media (max-width: 1100px) {
  body.site-public {
    position: fixed !important;
    overflow: hidden !important;
  }

  body.site-public .site-stage[data-screen-root] {
    position: fixed !important;
    inset: 0 !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
  }

  body.site-public .site-stage[data-screen-root] > .face {
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-x: hidden !important;
    overflow-y: scroll !important;
    scrollbar-gutter: stable !important;
  }

  body.site-public .site-stage[data-screen-root] > .face > .face-inner {
    min-height: calc(100dvh - 124px) !important;
  }
}

@media (max-width: 760px) {
  body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar {
    width: 9px !important;
  }

  body.site-public .site-stage[data-screen-root] > .face {
    padding-right: 12px !important;
  }
}


/* =========================================================
   PARCHE EXACTO - SECCIÓN SOLUCIONES COMO MAQUETA
   Pantalla completa, limpio, sin cortes, sin afectar numeritos.
   ========================================================= */

body.site-public .face#soluciones {
  padding: 92px clamp(34px, 6vw, 110px) 26px !important;
  color: #15100a !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -7% 96%, rgba(188,127,33,.10), transparent 21%) !important,
    radial-gradient(circle at 104% 47%, rgba(188,127,33,.085), transparent 24%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f8f6f0 100%) !important;
}

/* líneas curvas decorativas izquierda / derecha */
body.site-public .face#soluciones::before {
  content: "" !important;
  position: absolute !important;
  right: -255px !important;
  top: 265px !important;
  width: 620px !important;
  height: 620px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.10) !important;
  box-shadow:
    0 0 0 13px transparent,
    0 0 0 24px rgba(180,119,41,.040),
    0 0 0 44px transparent,
    0 0 0 55px rgba(180,119,41,.035),
    0 0 0 78px transparent,
    0 0 0 89px rgba(180,119,41,.030),
    0 0 0 112px transparent,
    0 0 0 123px rgba(180,119,41,.025) !important;
  background: transparent !important;
  pointer-events: none !important;
  opacity: 1 !important;
}

body.site-public .face#soluciones::after {
  content: "" !important;
  position: absolute !important;
  left: -270px !important;
  bottom: -310px !important;
  width: 640px !important;
  height: 640px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.10) !important;
  box-shadow:
    0 0 0 13px transparent,
    0 0 0 24px rgba(180,119,41,.040),
    0 0 0 44px transparent,
    0 0 0 55px rgba(180,119,41,.035),
    0 0 0 78px transparent,
    0 0 0 89px rgba(180,119,41,.030),
    0 0 0 112px transparent,
    0 0 0 123px rgba(180,119,41,.025) !important;
  background: transparent !important;
  pointer-events: none !important;
  opacity: 1 !important;
}

body.site-public .face#soluciones .face-inner.centered {
  position: relative !important;
  z-index: 2 !important;
  width: min(1320px, 100%) !important;
  max-width: 1320px !important;
  min-height: calc(100dvh - 118px) !important;
  height: auto !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-rows: auto auto auto auto !important;
  align-content: start !important;
  text-align: center !important;
  gap: 0 !important;
}

body.site-public .face#soluciones .face-inner.centered::before {
  content: "ESTRATEGIA QUE GENERA VALOR\A RESULTADOS QUE TRASCIENDEN";
  white-space: pre !important;
  position: absolute !important;
  top: -46px !important;
  right: 0 !important;
  color: #9d742c !important;
  font-size: 11px !important;
  line-height: 1.9 !important;
  letter-spacing: .16em !important;
  text-align: right !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body.site-public .face#soluciones .face-inner.centered::after {
  content: "🛡  ESTRATEGIA + TECNOLOGÍA + EJECUCIÓN = TRANSFORMACIÓN REAL     ↗  ENFOQUE EN IMPACTO     🛡  METODOLOGÍAS PROBADAS     👥  EQUIPOS DE ÉLITE     🏆  RESULTADOS SOSTENIBLES";
  width: min(1390px, calc(100% + 76px)) !important;
  min-height: 60px !important;
  margin: 26px auto 0 !important;
  padding: 14px 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(191,158,95,.24) !important;
  border-radius: 0 0 10px 10px !important;
  background: rgba(255,255,255,.76) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.045) !important;
  color: #16110a !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  font-weight: 900 !important;
  letter-spacing: .045em !important;
  text-align: center !important;
}

/* Encabezado centrado */
body.site-public .face#soluciones .kicker {
  justify-content: center !important;
  margin: 0 0 18px !important;
  color: #b2802f !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
}

body.site-public .face#soluciones .kicker::before,
body.site-public .face#soluciones .kicker::after {
  width: 50px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#soluciones .headline {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(56px, 5.45vw, 82px) !important;
  font-weight: 400 !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#soluciones .headline::after {
  content: "" !important;
  display: block !important;
  width: 60px !important;
  height: 2px !important;
  margin: 18px auto 18px !important;
  background: #c99b43 !important;
}

body.site-public .face#soluciones .sub {
  max-width: 760px !important;
  margin: 0 auto !important;
  color: #3e382f !important;
  font-size: 17px !important;
  line-height: 1.62 !important;
}

/* Grilla exacta 3 x 2 */
body.site-public .face#soluciones .cards-6 {
  width: min(1235px, 100%) !important;
  max-width: 1235px !important;
  margin: 34px auto 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px 24px !important;
}

/* Tarjetas */
body.site-public .face#soluciones .info-card {
  position: relative !important;
  min-height: 218px !important;
  display: block !important;
  padding: 31px 30px 26px 190px !important;
  border: 1px solid rgba(191,158,95,.34) !important;
  border-radius: 9px !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: 0 7px 22px rgba(70,52,23,.045) !important;
  text-align: left !important;
  overflow: hidden !important;
  cursor: pointer !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
}

body.site-public .face#soluciones .info-card:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(191,158,95,.52) !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 15px 34px rgba(70,52,23,.085) !important;
}

body.site-public .face#soluciones .info-card::before {
  content: attr(data-num) !important;
  position: absolute !important;
  left: 190px !important;
  top: 31px !important;
  color: #bd8429 !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .03em !important;
}

body.site-public .face#soluciones .info-card::after {
  content: "" !important;
  position: absolute !important;
  left: 143px !important;
  top: 31px !important;
  width: 1px !important;
  height: 102px !important;
  background: rgba(201,155,67,.46) !important;
}

body.site-public .face#soluciones .info-card i {
  position: absolute !important;
  left: 37px !important;
  top: 33px !important;
  width: 77px !important;
  height: 77px !important;
  margin: 0 !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, #d49a34 0%, #b9771c 100%) !important;
  color: #ffffff !important;
  font-style: normal !important;
  font-size: 36px !important;
  line-height: 1 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 2px 8px rgba(127,77,14,.10) !important;
}

body.site-public .face#soluciones .info-card h3 {
  max-width: 245px !important;
  margin: 41px 0 0 !important;
  color: #111 !important;
  font-size: 18px !important;
  line-height: 1.28 !important;
  font-weight: 900 !important;
  letter-spacing: .018em !important;
  text-transform: uppercase !important;
}

body.site-public .face#soluciones .info-card h3::after {
  content: "" !important;
  display: block !important;
  width: 38px !important;
  height: 2px !important;
  margin: 12px 0 17px !important;
  background: #c99b43 !important;
}

body.site-public .face#soluciones .info-card p {
  max-width: 270px !important;
  margin: 0 !important;
  color: #4a443b !important;
  font-size: 13.8px !important;
  line-height: 1.7 !important;
}

body.site-public .face#soluciones .info-card .more,
body.site-public .face#soluciones .info-card button.more,
body.site-public .face#soluciones .info-card [data-modal] {
  display: none !important;
}

/* Ajuste de header cuando la sección es clara */
body.site-public .topbar.is-light {
  background: rgba(253,251,247,.92) !important;
}

/* Pantallas bajas: compacta sin deformar */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#soluciones {
    padding-top: 82px !important;
    padding-bottom: 18px !important;
  }

  body.site-public .face#soluciones .face-inner.centered::before {
    top: -36px !important;
  }

  body.site-public .face#soluciones .kicker {
    margin-bottom: 12px !important;
  }

  body.site-public .face#soluciones .headline {
    font-size: clamp(48px, 4.7vw, 68px) !important;
  }

  body.site-public .face#soluciones .headline::after {
    margin: 12px auto 13px !important;
  }

  body.site-public .face#soluciones .sub {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  body.site-public .face#soluciones .cards-6 {
    margin-top: 24px !important;
    gap: 16px 18px !important;
  }

  body.site-public .face#soluciones .info-card {
    min-height: 184px !important;
    padding-top: 24px !important;
    padding-bottom: 20px !important;
  }

  body.site-public .face#soluciones .info-card::before {
    top: 25px !important;
  }

  body.site-public .face#soluciones .info-card::after {
    top: 25px !important;
    height: 90px !important;
  }

  body.site-public .face#soluciones .info-card i {
    top: 26px !important;
    width: 68px !important;
    height: 68px !important;
    font-size: 32px !important;
  }

  body.site-public .face#soluciones .info-card h3 {
    margin-top: 35px !important;
    font-size: 16px !important;
  }

  body.site-public .face#soluciones .info-card h3::after {
    margin: 9px 0 11px !important;
  }

  body.site-public .face#soluciones .info-card p {
    font-size: 12.5px !important;
    line-height: 1.5 !important;
  }

  body.site-public .face#soluciones .face-inner.centered::after {
    min-height: 48px !important;
    margin-top: 17px !important;
    padding: 10px 16px !important;
    font-size: 10.5px !important;
  }
}

/* Laptop / tablet horizontal */
@media (max-width: 1280px) {
  body.site-public .face#soluciones {
    padding-inline: 42px !important;
  }

  body.site-public .face#soluciones .cards-6 {
    gap: 18px !important;
  }

  body.site-public .face#soluciones .info-card {
    padding-left: 164px !important;
  }

  body.site-public .face#soluciones .info-card::before {
    left: 164px !important;
  }

  body.site-public .face#soluciones .info-card::after {
    left: 124px !important;
  }

  body.site-public .face#soluciones .info-card i {
    left: 28px !important;
  }
}

/* Tablet: 2 columnas con scroll interno */
@media (max-width: 1100px) {
  body.site-public .face#soluciones {
    padding: 104px 28px 36px !important;
  }

  body.site-public .face#soluciones .face-inner.centered {
    display: block !important;
    min-height: calc(100dvh - 140px) !important;
  }

  body.site-public .face#soluciones .face-inner.centered::before {
    position: static !important;
    display: block !important;
    margin: 0 0 18px !important;
    text-align: center !important;
    font-size: 10px !important;
  }

  body.site-public .face#soluciones .headline {
    font-size: clamp(44px, 8vw, 64px) !important;
  }

  body.site-public .face#soluciones .cards-6 {
    width: 100% !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: 28px !important;
  }

  body.site-public .face#soluciones .face-inner.centered::after {
    width: 100% !important;
    white-space: normal !important;
    border-radius: 12px !important;
  }
}

/* Móvil: 1 columna */
@media (max-width: 760px) {
  body.site-public .face#soluciones {
    padding: 104px 16px 32px !important;
  }

  body.site-public .face#soluciones .kicker {
    font-size: 9px !important;
    letter-spacing: .12em !important;
    margin-bottom: 14px !important;
  }

  body.site-public .face#soluciones .kicker::before,
  body.site-public .face#soluciones .kicker::after {
    width: 28px !important;
  }

  body.site-public .face#soluciones .headline {
    font-size: clamp(38px, 12vw, 56px) !important;
    line-height: .98 !important;
  }

  body.site-public .face#soluciones .sub {
    font-size: 14.5px !important;
    line-height: 1.6 !important;
  }

  body.site-public .face#soluciones .cards-6 {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    margin-top: 24px !important;
  }

  body.site-public .face#soluciones .info-card {
    min-height: 0 !important;
    padding: 22px 18px 22px 116px !important;
  }

  body.site-public .face#soluciones .info-card::before {
    left: 116px !important;
    top: 22px !important;
    font-size: 18px !important;
  }

  body.site-public .face#soluciones .info-card::after {
    left: 90px !important;
    top: 24px !important;
    height: 82px !important;
  }

  body.site-public .face#soluciones .info-card i {
    left: 18px !important;
    top: 25px !important;
    width: 56px !important;
    height: 56px !important;
    font-size: 28px !important;
  }

  body.site-public .face#soluciones .info-card h3 {
    margin-top: 32px !important;
    font-size: 15.5px !important;
  }

  body.site-public .face#soluciones .info-card p {
    font-size: 13.2px !important;
    line-height: 1.55 !important;
  }

  body.site-public .face#soluciones .face-inner.centered::after {
    content: "🛡  ESTRATEGIA + TECNOLOGÍA + EJECUCIÓN = TRANSFORMACIÓN REAL";
    padding: 15px !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 420px) {
  body.site-public .face#soluciones .info-card {
    padding-left: 102px !important;
  }

  body.site-public .face#soluciones .info-card::before {
    left: 102px !important;
  }

  body.site-public .face#soluciones .info-card::after {
    left: 82px !important;
  }

  body.site-public .face#soluciones .info-card i {
    left: 14px !important;
  }
}


/* =========================================================
   AJUSTE FINAL - SOLUCIONES MÁS ESTIRADAS + MARGEN SUPERIOR
   ========================================================= */

/* Más aire arriba para que "NUESTRO ENFOQUE INTEGRAL" no quede pegado */
body.site-public .face#soluciones {
  padding-top: clamp(118px, 12dvh, 142px) !important;
  padding-bottom: 24px !important;
}

/* El bloque superior baja un poco y respira mejor */
body.site-public .face#soluciones .kicker {
  margin-top: 10px !important;
  margin-bottom: 22px !important;
}

/* El título mantiene presencia, pero deja espacio a las tarjetas */
body.site-public .face#soluciones .headline {
  font-size: clamp(54px, 5.15vw, 78px) !important;
}

body.site-public .face#soluciones .headline::after {
  margin: 16px auto 16px !important;
}

body.site-public .face#soluciones .sub {
  max-width: 790px !important;
}

/* Tarjetas más anchas / estiradas, menos cuadradas */
body.site-public .face#soluciones .cards-6 {
  width: min(1390px, 100%) !important;
  max-width: 1390px !important;
  margin-top: 34px !important;
  gap: 22px 26px !important;
}

/* Rectángulos más horizontales */
body.site-public .face#soluciones .info-card {
  min-height: 176px !important;
  padding: 24px 34px 22px 184px !important;
  border-radius: 10px !important;
}

/* Número alineado con el nuevo formato horizontal */
body.site-public .face#soluciones .info-card::before {
  left: 184px !important;
  top: 24px !important;
  font-size: 24px !important;
}

/* Línea vertical más proporcionada */
body.site-public .face#soluciones .info-card::after {
  left: 136px !important;
  top: 25px !important;
  height: 92px !important;
}

/* Ícono un poco más compacto para que el cuadro se vea estirado */
body.site-public .face#soluciones .info-card i {
  left: 36px !important;
  top: 28px !important;
  width: 72px !important;
  height: 72px !important;
  font-size: 34px !important;
}

/* Texto más compacto para evitar altura excesiva */
body.site-public .face#soluciones .info-card h3 {
  margin-top: 36px !important;
  max-width: 290px !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
}

body.site-public .face#soluciones .info-card h3::after {
  margin: 10px 0 12px !important;
}

body.site-public .face#soluciones .info-card p {
  max-width: 330px !important;
  font-size: 13.2px !important;
  line-height: 1.52 !important;
}

/* Barra inferior más cerca y fina para que todo entre elegante */
body.site-public .face#soluciones .face-inner.centered::after {
  min-height: 52px !important;
  margin-top: 22px !important;
  padding: 12px 20px !important;
}

/* Ajuste para laptops medianas */
@media (max-width: 1280px) {
  body.site-public .face#soluciones {
    padding-top: clamp(108px, 11dvh, 128px) !important;
  }

  body.site-public .face#soluciones .cards-6 {
    width: min(1240px, 100%) !important;
    gap: 18px !important;
  }

  body.site-public .face#soluciones .info-card {
    min-height: 172px !important;
    padding-left: 160px !important;
    padding-right: 24px !important;
  }

  body.site-public .face#soluciones .info-card::before {
    left: 160px !important;
  }

  body.site-public .face#soluciones .info-card::after {
    left: 120px !important;
  }

  body.site-public .face#soluciones .info-card i {
    left: 28px !important;
    width: 68px !important;
    height: 68px !important;
    font-size: 32px !important;
  }
}

/* Pantallas bajas: baja el encabezado, pero compacta tarjetas para que no se corte */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#soluciones {
    padding-top: 98px !important;
    padding-bottom: 16px !important;
  }

  body.site-public .face#soluciones .kicker {
    margin-top: 8px !important;
    margin-bottom: 14px !important;
  }

  body.site-public .face#soluciones .headline {
    font-size: clamp(46px, 4.6vw, 66px) !important;
  }

  body.site-public .face#soluciones .cards-6 {
    margin-top: 22px !important;
    gap: 15px 18px !important;
  }

  body.site-public .face#soluciones .info-card {
    min-height: 154px !important;
    padding-top: 20px !important;
    padding-bottom: 18px !important;
  }

  body.site-public .face#soluciones .info-card::before {
    top: 20px !important;
  }

  body.site-public .face#soluciones .info-card::after {
    top: 22px !important;
    height: 78px !important;
  }

  body.site-public .face#soluciones .info-card i {
    top: 22px !important;
    width: 62px !important;
    height: 62px !important;
    font-size: 30px !important;
  }

  body.site-public .face#soluciones .info-card h3 {
    margin-top: 31px !important;
    font-size: 15.5px !important;
  }

  body.site-public .face#soluciones .info-card p {
    font-size: 12.2px !important;
    line-height: 1.45 !important;
  }

  body.site-public .face#soluciones .face-inner.centered::after {
    margin-top: 15px !important;
    min-height: 44px !important;
    padding: 9px 14px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#soluciones {
    padding-top: 118px !important;
  }

  body.site-public .face#soluciones .kicker {
    margin-top: 0 !important;
  }

  body.site-public .face#soluciones .info-card {
    min-height: 168px !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#soluciones {
    padding-top: 112px !important;
  }

  body.site-public .face#soluciones .cards-6 {
    gap: 14px !important;
  }

  body.site-public .face#soluciones .info-card {
    min-height: 0 !important;
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
}


/* =========================================================
   AJUSTE FOOTER SOLUCIONES - SEPARADORES COMO MAQUETA
   ========================================================= */

/* Barra inferior de soluciones: más parecida a la maqueta */
body.site-public .face#soluciones .face-inner.centered::after {
  content: "🛡  ESTRATEGIA + TECNOLOGÍA + EJECUCIÓN = TRANSFORMACIÓN REAL     ↗  ENFOQUE EN IMPACTO     🛡  METODOLOGÍAS PROBADAS     👥  EQUIPOS DE ÉLITE     🏆  RESULTADOS SOSTENIBLES" !important;
  width: min(1420px, calc(100% + 92px)) !important;
  min-height: 58px !important;
  margin: 24px auto 0 !important;
  padding: 0 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(191,158,95,.23) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.045) !important;
  color: #15100a !important;
  font-size: 0 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  text-align: center !important;
}

/* Como ::after solo acepta texto plano, convertimos el texto en bloques visuales con background/separadores */
body.site-public .face#soluciones .face-inner.centered::after {
  font-size: 11.5px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  word-spacing: 12px !important;
}

/* Separadores verticales reales sobre la barra */
body.site-public .face#soluciones .face-inner.centered {
  position: relative !important;
}

body.site-public .face#soluciones .face-inner.centered .cards-6 + * {
  position: relative !important;
}

/* Capa de líneas verticales dentro del footer inferior */
body.site-public .face#soluciones .cards-6::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: -53px !important;
  width: min(1420px, calc(100vw - 160px)) !important;
  height: 58px !important;
  transform: translateX(-50%) !important;
  pointer-events: none !important;
  z-index: 5 !important;
  background:
    linear-gradient(90deg,
      transparent 0%,
      transparent 42.5%,
      rgba(191,158,95,.40) 42.5%,
      rgba(191,158,95,.40) calc(42.5% + 1px),
      transparent calc(42.5% + 1px),
      transparent 55.5%,
      rgba(191,158,95,.40) 55.5%,
      rgba(191,158,95,.40) calc(55.5% + 1px),
      transparent calc(55.5% + 1px),
      transparent 68.5%,
      rgba(191,158,95,.40) 68.5%,
      rgba(191,158,95,.40) calc(68.5% + 1px),
      transparent calc(68.5% + 1px),
      transparent 81.5%,
      rgba(191,158,95,.40) 81.5%,
      rgba(191,158,95,.40) calc(81.5% + 1px),
      transparent calc(81.5% + 1px)
    ) !important;
}

/* Línea separadora fuerte después del bloque principal */
body.site-public .face#soluciones .cards-6::before {
  content: "" !important;
  position: absolute !important;
  left: calc(50% - min(710px, calc((100vw - 160px) / 2)) + 570px) !important;
  bottom: -53px !important;
  width: 1px !important;
  height: 58px !important;
  background: rgba(191,158,95,.55) !important;
  z-index: 6 !important;
  pointer-events: none !important;
}

/* Ajusta la barra para que no quede comprimida */
body.site-public .face#soluciones .cards-6 {
  position: relative !important;
}

/* Pantallas medianas */
@media (max-width: 1280px) {
  body.site-public .face#soluciones .face-inner.centered::after {
    width: 100% !important;
    font-size: 10.2px !important;
    word-spacing: 8px !important;
  }

  body.site-public .face#soluciones .cards-6::after {
    width: 100% !important;
    bottom: -53px !important;
  }

  body.site-public .face#soluciones .cards-6::before {
    display: none !important;
  }
}

/* Pantallas bajas: separadores compactos */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#soluciones .face-inner.centered::after {
    min-height: 46px !important;
    margin-top: 16px !important;
    font-size: 9.8px !important;
    word-spacing: 7px !important;
  }

  body.site-public .face#soluciones .cards-6::after {
    height: 46px !important;
    bottom: -47px !important;
  }

  body.site-public .face#soluciones .cards-6::before {
    height: 46px !important;
    bottom: -47px !important;
  }
}

/* Tablet: dejamos separadores limpios sin saturar */
@media (max-width: 1100px) {
  body.site-public .face#soluciones .face-inner.centered::after {
    content: "🛡  ESTRATEGIA + TECNOLOGÍA + EJECUCIÓN = TRANSFORMACIÓN REAL  |  ↗ ENFOQUE EN IMPACTO  |  🛡 METODOLOGÍAS PROBADAS  |  👥 EQUIPOS DE ÉLITE  |  🏆 RESULTADOS SOSTENIBLES" !important;
    width: 100% !important;
    min-height: auto !important;
    padding: 16px !important;
    border-radius: 10px !important;
    white-space: normal !important;
    line-height: 1.7 !important;
    word-spacing: 2px !important;
  }

  body.site-public .face#soluciones .cards-6::before,
  body.site-public .face#soluciones .cards-6::after {
    display: none !important;
  }
}

/* Móvil: solo la frase principal para que no se rompa */
@media (max-width: 760px) {
  body.site-public .face#soluciones .face-inner.centered::after {
    content: "🛡  ESTRATEGIA + TECNOLOGÍA + EJECUCIÓN = TRANSFORMACIÓN REAL" !important;
    padding: 15px !important;
    font-size: 11.5px !important;
    line-height: 1.55 !important;
  }
}


/* =========================================================
   SOLUCIONES FINAL - FOOTER ORDENADO, RAYITAS REALES Y MENOS BLANCO
   Este bloque manda sobre parches anteriores.
   ========================================================= */

/* Desactiva decoraciones anteriores del footer hechas con texto/pseudo-elementos */
body.site-public .face#soluciones .face-inner.centered::after,
body.site-public .face#soluciones .cards-6::before,
body.site-public .face#soluciones .cards-6::after {
  display: none !important;
  content: none !important;
}

/* Layout nuevo de soluciones */
body.site-public .face#soluciones {
  padding: clamp(104px, 10.5dvh, 132px) clamp(34px, 6vw, 104px) 18px !important;
  color: #15100a !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -7% 96%, rgba(188,127,33,.10), transparent 21%) !important,
    radial-gradient(circle at 104% 47%, rgba(188,127,33,.085), transparent 24%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f8f6f0 100%) !important;
}

body.site-public .face#soluciones .soluciones-layout {
  position: relative !important;
  z-index: 2 !important;
  width: min(1390px, 100%) !important;
  max-width: 1390px !important;
  min-height: calc(100dvh - clamp(122px, 12dvh, 150px)) !important;
  height: auto !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-rows: auto auto auto auto !important;
  align-content: start !important;
  gap: 0 !important;
  text-align: center !important;
}

body.site-public .face#soluciones .soluciones-corner-note {
  position: absolute !important;
  top: -58px !important;
  right: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 6px !important;
  color: #9d742c !important;
  font-size: 11px !important;
  line-height: 1.15 !important;
  letter-spacing: .16em !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body.site-public .face#soluciones .soluciones-corner-note span {
  color: #373029 !important;
}

body.site-public .face#soluciones .soluciones-heading {
  text-align: center !important;
  margin: 0 auto !important;
  max-width: 920px !important;
}

body.site-public .face#soluciones .soluciones-heading .kicker {
  justify-content: center !important;
  margin: 0 0 20px !important;
  color: #b2802f !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
}

body.site-public .face#soluciones .soluciones-heading .kicker::before,
body.site-public .face#soluciones .soluciones-heading .kicker::after {
  width: 50px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#soluciones .soluciones-heading .headline {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(52px, 5.05vw, 78px) !important;
  font-weight: 400 !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#soluciones .soluciones-title-line {
  display: block !important;
  width: 60px !important;
  height: 2px !important;
  margin: 16px auto 16px !important;
  background: #c99b43 !important;
}

body.site-public .face#soluciones .soluciones-heading .sub {
  max-width: 790px !important;
  margin: 0 auto !important;
  color: #3e382f !important;
  font-size: 16px !important;
  line-height: 1.56 !important;
}

/* Tarjetas más estiradas y menos cuadradas */
body.site-public .face#soluciones .soluciones-grid-real {
  width: 100% !important;
  margin: 32px auto 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px 24px !important;
}

body.site-public .face#soluciones .solucion-card-real {
  position: relative !important;
  min-height: 166px !important;
  display: grid !important;
  grid-template-columns: 108px 1px minmax(0, 1fr) !important;
  align-items: start !important;
  padding: 22px 28px 20px 28px !important;
  border: 1px solid rgba(191,158,95,.34) !important;
  border-radius: 9px !important;
  background: rgba(255,255,255,.74) !important;
  box-shadow: 0 7px 22px rgba(70,52,23,.045) !important;
  text-align: left !important;
  overflow: hidden !important;
  cursor: pointer !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
}

body.site-public .face#soluciones .solucion-card-real:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(191,158,95,.52) !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 15px 34px rgba(70,52,23,.085) !important;
}

body.site-public .face#soluciones .solucion-icon-real {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  padding-top: 5px !important;
}

body.site-public .face#soluciones .solucion-icon-real i {
  width: 70px !important;
  height: 70px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, #d49a34 0%, #b9771c 100%) !important;
  color: #fff !important;
  font-style: normal !important;
  font-size: 33px !important;
  line-height: 1 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 2px 8px rgba(127,77,14,.10) !important;
}

body.site-public .face#soluciones .solucion-vertical-line {
  display: block !important;
  width: 1px !important;
  height: 92px !important;
  margin-top: 2px !important;
  background: rgba(201,155,67,.46) !important;
}

body.site-public .face#soluciones .solucion-copy-real {
  padding-left: 28px !important;
}

body.site-public .face#soluciones .solucion-number-real {
  display: block !important;
  margin: 0 0 8px !important;
  color: #bd8429 !important;
  font-size: 23px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .03em !important;
}

body.site-public .face#soluciones .solucion-copy-real h3 {
  max-width: 290px !important;
  margin: 0 !important;
  color: #111 !important;
  font-size: 16.5px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: .018em !important;
  text-transform: uppercase !important;
}

body.site-public .face#soluciones .solucion-small-line {
  display: block !important;
  width: 38px !important;
  height: 2px !important;
  margin: 10px 0 11px !important;
  background: #c99b43 !important;
}

body.site-public .face#soluciones .solucion-copy-real p {
  max-width: 345px !important;
  margin: 0 !important;
  color: #4a443b !important;
  font-size: 13px !important;
  line-height: 1.48 !important;
}

/* FOOTER REAL: rayitas ordenadas, iguales y alineadas */
body.site-public .face#soluciones .soluciones-footer-real {
  width: 100% !important;
  min-height: 56px !important;
  margin: 20px auto 0 !important;
  display: grid !important;
  grid-template-columns: minmax(430px, 1.9fr) repeat(4, minmax(145px, .9fr)) !important;
  align-items: stretch !important;
  border: 1px solid rgba(191,158,95,.24) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.80) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.045) !important;
  overflow: hidden !important;
}

body.site-public .face#soluciones .soluciones-footer-main-real,
body.site-public .face#soluciones .soluciones-footer-item-real {
  min-height: 56px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 0 18px !important;
  color: #15100a !important;
}

body.site-public .face#soluciones .soluciones-footer-main-real {
  justify-content: flex-start !important;
}

body.site-public .face#soluciones .soluciones-footer-item-real {
  justify-content: center !important;
  border-left: 1px solid rgba(191,158,95,.45) !important;
}

body.site-public .face#soluciones .soluciones-footer-main-real span,
body.site-public .face#soluciones .soluciones-footer-item-real span {
  flex: 0 0 auto !important;
  color: #bf862e !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

body.site-public .face#soluciones .soluciones-footer-main-real strong {
  font-size: 13.5px !important;
  line-height: 1.25 !important;
  font-weight: 950 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}

body.site-public .face#soluciones .soluciones-footer-item-real b {
  font-size: 10.5px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Menos blanco abajo */
body.site-public .site-stage[data-screen-root] > .face#soluciones {
  padding-bottom: 18px !important;
}

body.site-public .face#soluciones .soluciones-footer-real {
  margin-bottom: 0 !important;
}

/* Pantallas bajas: conserva aire, pero reduce blanco inferior */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#soluciones {
    padding-top: 94px !important;
    padding-bottom: 12px !important;
  }

  body.site-public .face#soluciones .soluciones-corner-note {
    top: -44px !important;
  }

  body.site-public .face#soluciones .soluciones-heading .kicker {
    margin-bottom: 13px !important;
  }

  body.site-public .face#soluciones .soluciones-heading .headline {
    font-size: clamp(46px, 4.45vw, 64px) !important;
  }

  body.site-public .face#soluciones .soluciones-title-line {
    margin: 11px auto 12px !important;
  }

  body.site-public .face#soluciones .soluciones-heading .sub {
    font-size: 14.5px !important;
    line-height: 1.42 !important;
  }

  body.site-public .face#soluciones .soluciones-grid-real {
    margin-top: 20px !important;
    gap: 14px 18px !important;
  }

  body.site-public .face#soluciones .solucion-card-real {
    min-height: 142px !important;
    grid-template-columns: 92px 1px minmax(0, 1fr) !important;
    padding: 18px 22px !important;
  }

  body.site-public .face#soluciones .solucion-icon-real i {
    width: 58px !important;
    height: 58px !important;
    font-size: 29px !important;
  }

  body.site-public .face#soluciones .solucion-vertical-line {
    height: 76px !important;
  }

  body.site-public .face#soluciones .solucion-copy-real {
    padding-left: 22px !important;
  }

  body.site-public .face#soluciones .solucion-number-real {
    font-size: 20px !important;
    margin-bottom: 6px !important;
  }

  body.site-public .face#soluciones .solucion-copy-real h3 {
    font-size: 14.5px !important;
  }

  body.site-public .face#soluciones .solucion-small-line {
    margin: 7px 0 8px !important;
  }

  body.site-public .face#soluciones .solucion-copy-real p {
    font-size: 11.8px !important;
    line-height: 1.38 !important;
  }

  body.site-public .face#soluciones .soluciones-footer-real {
    min-height: 46px !important;
    margin-top: 14px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-main-real,
  body.site-public .face#soluciones .soluciones-footer-item-real {
    min-height: 46px !important;
    padding: 0 12px !important;
    gap: 8px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-main-real strong {
    font-size: 11px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-item-real b {
    font-size: 9px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-main-real span,
  body.site-public .face#soluciones .soluciones-footer-item-real span {
    font-size: 18px !important;
  }
}

/* Laptop mediana */
@media (max-width: 1280px) {
  body.site-public .face#soluciones {
    padding-inline: 42px !important;
  }

  body.site-public .face#soluciones .soluciones-grid-real {
    gap: 16px !important;
  }

  body.site-public .face#soluciones .solucion-card-real {
    grid-template-columns: 92px 1px minmax(0, 1fr) !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  body.site-public .face#soluciones .solucion-copy-real {
    padding-left: 22px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-real {
    grid-template-columns: minmax(360px, 1.6fr) repeat(4, minmax(120px, .85fr)) !important;
  }

  body.site-public .face#soluciones .soluciones-footer-main-real strong {
    font-size: 12px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-item-real b {
    font-size: 9.4px !important;
  }
}

/* Tablet: footer con separadores ordenados en 2 filas */
@media (max-width: 1100px) {
  body.site-public .face#soluciones {
    padding: 112px 28px 28px !important;
  }

  body.site-public .face#soluciones .soluciones-corner-note {
    position: static !important;
    align-items: center !important;
    margin: 0 0 18px !important;
    text-align: center !important;
    font-size: 10px !important;
  }

  body.site-public .face#soluciones .soluciones-heading .headline {
    font-size: clamp(44px, 8vw, 64px) !important;
  }

  body.site-public .face#soluciones .soluciones-grid-real {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: 28px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-real {
    grid-template-columns: 1fr 1fr !important;
    border-radius: 10px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-main-real {
    grid-column: 1 / -1 !important;
    justify-content: center !important;
    border-bottom: 1px solid rgba(191,158,95,.45) !important;
  }

  body.site-public .face#soluciones .soluciones-footer-item-real {
    border-left: 0 !important;
    border-top: 0 !important;
  }

  body.site-public .face#soluciones .soluciones-footer-item-real:nth-child(even) {
    border-right: 1px solid rgba(191,158,95,.45) !important;
  }

  body.site-public .face#soluciones .soluciones-footer-item-real:nth-child(n+4) {
    border-top: 1px solid rgba(191,158,95,.45) !important;
  }
}

/* Móvil: tarjetas una columna y footer limpio */
@media (max-width: 760px) {
  body.site-public .face#soluciones {
    padding: 104px 16px 24px !important;
  }

  body.site-public .face#soluciones .soluciones-heading .kicker {
    font-size: 9px !important;
    letter-spacing: .12em !important;
    margin-bottom: 14px !important;
  }

  body.site-public .face#soluciones .soluciones-heading .kicker::before,
  body.site-public .face#soluciones .soluciones-heading .kicker::after {
    width: 28px !important;
  }

  body.site-public .face#soluciones .soluciones-heading .headline {
    font-size: clamp(38px, 12vw, 56px) !important;
    line-height: .98 !important;
  }

  body.site-public .face#soluciones .soluciones-heading .sub {
    font-size: 14.5px !important;
    line-height: 1.55 !important;
  }

  body.site-public .face#soluciones .soluciones-grid-real {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin-top: 24px !important;
  }

  body.site-public .face#soluciones .solucion-card-real {
    grid-template-columns: 76px 1px minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: 18px 16px !important;
  }

  body.site-public .face#soluciones .solucion-icon-real i {
    width: 54px !important;
    height: 54px !important;
    font-size: 27px !important;
  }

  body.site-public .face#soluciones .solucion-vertical-line {
    height: 78px !important;
  }

  body.site-public .face#soluciones .solucion-copy-real {
    padding-left: 16px !important;
  }

  body.site-public .face#soluciones .solucion-number-real {
    font-size: 18px !important;
  }

  body.site-public .face#soluciones .solucion-copy-real h3 {
    font-size: 15px !important;
  }

  body.site-public .face#soluciones .solucion-copy-real p {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  body.site-public .face#soluciones .soluciones-footer-real {
    grid-template-columns: 1fr !important;
    margin-top: 16px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-main-real,
  body.site-public .face#soluciones .soluciones-footer-item-real {
    justify-content: flex-start !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 1px solid rgba(191,158,95,.42) !important;
    min-height: 48px !important;
  }

  body.site-public .face#soluciones .soluciones-footer-main-real {
    border-top: 0 !important;
  }

  body.site-public .face#soluciones .soluciones-footer-item-real:nth-child(n+4) {
    border-top: 1px solid rgba(191,158,95,.42) !important;
  }

  body.site-public .face#soluciones .soluciones-footer-item-real b {
    white-space: normal !important;
  }
}


/* =========================================================
   RECURSOS PREMIUM - COMO MAQUETA
   Cards limpias, productos estirados, footer ordenado.
   ========================================================= */

body.site-public .face#recursos {
  padding: clamp(96px, 10dvh, 120px) clamp(34px, 6vw, 104px) 18px !important;
  color: #15100a !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -7% 100%, rgba(188,127,33,.085), transparent 22%) !important,
    radial-gradient(circle at 104% 45%, rgba(188,127,33,.070), transparent 25%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f7f5ef 100%) !important;
}

body.site-public .face#recursos::before,
body.site-public .face#recursos::after {
  display: block !important;
  opacity: .55 !important;
}

body.site-public .face#recursos .recursos-layout {
  position: relative !important;
  z-index: 2 !important;
  width: min(1390px, 100%) !important;
  max-width: 1390px !important;
  min-height: calc(100dvh - 118px) !important;
  height: auto !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-rows: auto auto auto auto !important;
  align-content: start !important;
  gap: 0 !important;
  text-align: center !important;
}

body.site-public .face#recursos .recursos-heading {
  max-width: 850px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

body.site-public .face#recursos .recursos-heading .kicker {
  justify-content: center !important;
  margin: 0 0 16px !important;
  color: #b2802f !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
}

body.site-public .face#recursos .recursos-heading .kicker::before,
body.site-public .face#recursos .recursos-heading .kicker::after {
  width: 50px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#recursos .recursos-heading .headline {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(54px, 5.1vw, 80px) !important;
  font-weight: 400 !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#recursos .recursos-title-mark {
  position: relative !important;
  display: block !important;
  width: 86px !important;
  height: 1px !important;
  margin: 19px auto 19px !important;
  background: #c99b43 !important;
}

body.site-public .face#recursos .recursos-title-mark::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 7px !important;
  height: 7px !important;
  background: #c99b43 !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

body.site-public .face#recursos .recursos-heading .sub {
  max-width: 690px !important;
  margin: 0 auto !important;
  color: #3e382f !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

body.site-public .face#recursos .store-flash {
  min-height: 0 !important;
  margin: 8px 0 0 !important;
}

/* Oculta acciones antiguas si quedaron en CSS base */
body.site-public .face#recursos .store-intro-actions,
body.site-public .face#recursos .product-grid {
  display: none !important;
}

/* Grid de 5 recursos */
body.site-public .face#recursos .recursos-product-grid {
  width: 100% !important;
  margin: 36px auto 0 !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

body.site-public .face#recursos .recurso-card {
  position: relative !important;
  min-height: 430px !important;
  display: flex !important;
  flex-direction: column !important;
  border: 1px solid rgba(191,158,95,.32) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.055) !important;
  text-align: left !important;
  overflow: hidden !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
}

body.site-public .face#recursos .recurso-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(191,158,95,.54) !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 16px 34px rgba(70,52,23,.095) !important;
}

body.site-public .face#recursos .recurso-badge {
  position: absolute !important;
  z-index: 4 !important;
  left: 0 !important;
  top: 10px !important;
  padding: 6px 12px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

body.site-public .face#recursos .recurso-visual {
  height: 128px !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, #f8f5ef, #eee9dd) !important;
  border-bottom: 1px solid rgba(191,158,95,.20) !important;
  overflow: hidden !important;
}

/* Ajusta visuales antiguos para parecer mockups de producto */
body.site-public .face#recursos .recurso-visual .product-cover,
body.site-public .face#recursos .recurso-visual .product-visual,
body.site-public .face#recursos .recurso-visual .product-art {
  width: 100% !important;
  height: 128px !important;
  min-height: 128px !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background-size: cover !important;
}

body.site-public .face#recursos .recurso-visual img {
  width: 100% !important;
  height: 128px !important;
  object-fit: cover !important;
}

body.site-public .face#recursos .recurso-icon {
  width: 43px !important;
  height: 43px !important;
  margin: -22px 0 0 20px !important;
  position: relative !important;
  z-index: 3 !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(191,158,95,.42) !important;
  border-radius: 50% !important;
  background: #fffdf7 !important;
  color: #bd8429 !important;
  font-size: 21px !important;
  line-height: 1 !important;
  box-shadow: 0 4px 12px rgba(70,52,23,.06) !important;
}

body.site-public .face#recursos .recurso-body {
  padding: 12px 20px 0 !important;
  flex: 1 1 auto !important;
}

body.site-public .face#recursos .recurso-body h3 {
  margin: 0 0 9px !important;
  color: #15100a !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  letter-spacing: -.02em !important;
}

body.site-public .face#recursos .recurso-body p {
  margin: 0 0 18px !important;
  color: #50483d !important;
  font-size: 13.4px !important;
  line-height: 1.55 !important;
}

body.site-public .face#recursos .recurso-body ul {
  display: grid !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.site-public .face#recursos .recurso-body li {
  position: relative !important;
  padding-left: 25px !important;
  color: #3f382f !important;
  font-size: 12.6px !important;
  line-height: 1.35 !important;
}

body.site-public .face#recursos .recurso-body li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: -1px !important;
  color: #bd8429 !important;
  font-weight: 900 !important;
  font-size: 16px !important;
}

body.site-public .face#recursos .recurso-buy {
  min-height: 62px !important;
  margin-top: 16px !important;
  padding: 0 20px 18px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

body.site-public .face#recursos .recurso-buy strong {
  color: #bc7921 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body.site-public .face#recursos .recurso-detail-btn {
  height: 33px !important;
  min-width: 124px !important;
  padding: 0 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  border: 1px solid rgba(191,158,95,.55) !important;
  border-radius: 4px !important;
  background: #fffdf8 !important;
  color: #a06b22 !important;
  font-size: 9.5px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Footer ordenado */
body.site-public .face#recursos .recursos-footer {
  width: 100% !important;
  min-height: 72px !important;
  margin: 24px auto 0 !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  border: 1px solid rgba(191,158,95,.22) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.80) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.045) !important;
  overflow: hidden !important;
}

body.site-public .face#recursos .recursos-footer-item {
  min-height: 72px !important;
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 28px !important;
  text-align: left !important;
  border-left: 1px solid rgba(191,158,95,.42) !important;
}

body.site-public .face#recursos .recursos-footer-item:first-child {
  border-left: 0 !important;
}

body.site-public .face#recursos .recursos-footer-item span {
  color: #bd8429 !important;
  font-size: 28px !important;
  line-height: 1 !important;
}

body.site-public .face#recursos .recursos-footer-item strong {
  display: block !important;
  margin-bottom: 4px !important;
  color: #15100a !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
}

body.site-public .face#recursos .recursos-footer-item p {
  margin: 0 !important;
  color: #4e463b !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

/* Pantallas bajas: compactar para que no quede blanco excesivo */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#recursos {
    padding-top: 86px !important;
    padding-bottom: 12px !important;
  }

  body.site-public .face#recursos .recursos-heading .kicker {
    margin-bottom: 12px !important;
  }

  body.site-public .face#recursos .recursos-heading .headline {
    font-size: clamp(46px, 4.4vw, 64px) !important;
  }

  body.site-public .face#recursos .recursos-title-mark {
    margin: 12px auto 12px !important;
  }

  body.site-public .face#recursos .recursos-heading .sub {
    font-size: 14px !important;
    line-height: 1.42 !important;
  }

  body.site-public .face#recursos .recursos-product-grid {
    margin-top: 22px !important;
    gap: 16px !important;
  }

  body.site-public .face#recursos .recurso-card {
    min-height: 342px !important;
  }

  body.site-public .face#recursos .recurso-visual,
  body.site-public .face#recursos .recurso-visual .product-cover,
  body.site-public .face#recursos .recurso-visual .product-visual,
  body.site-public .face#recursos .recurso-visual .product-art,
  body.site-public .face#recursos .recurso-visual img {
    height: 104px !important;
    min-height: 104px !important;
  }

  body.site-public .face#recursos .recurso-icon {
    width: 38px !important;
    height: 38px !important;
    margin-top: -19px !important;
    font-size: 18px !important;
  }

  body.site-public .face#recursos .recurso-body {
    padding: 9px 16px 0 !important;
  }

  body.site-public .face#recursos .recurso-body h3 {
    font-size: 16px !important;
    margin-bottom: 6px !important;
  }

  body.site-public .face#recursos .recurso-body p {
    font-size: 11.2px !important;
    line-height: 1.36 !important;
    margin-bottom: 10px !important;
  }

  body.site-public .face#recursos .recurso-body ul {
    gap: 6px !important;
  }

  body.site-public .face#recursos .recurso-body li {
    font-size: 10.8px !important;
    padding-left: 19px !important;
  }

  body.site-public .face#recursos .recurso-buy {
    min-height: 48px !important;
    margin-top: 8px !important;
    padding: 0 16px 12px !important;
  }

  body.site-public .face#recursos .recurso-buy strong {
    font-size: 18px !important;
  }

  body.site-public .face#recursos .recurso-detail-btn {
    min-width: 106px !important;
    height: 29px !important;
    font-size: 8.2px !important;
  }

  body.site-public .face#recursos .recursos-footer {
    min-height: 52px !important;
    margin-top: 16px !important;
  }

  body.site-public .face#recursos .recursos-footer-item {
    min-height: 52px !important;
    grid-template-columns: 32px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 0 14px !important;
  }

  body.site-public .face#recursos .recursos-footer-item span {
    font-size: 22px !important;
  }

  body.site-public .face#recursos .recursos-footer-item strong {
    font-size: 9px !important;
    margin-bottom: 2px !important;
  }

  body.site-public .face#recursos .recursos-footer-item p {
    font-size: 9.2px !important;
  }
}

/* Laptop mediana */
@media (max-width: 1380px) {
  body.site-public .face#recursos {
    padding-inline: 46px !important;
  }

  body.site-public .face#recursos .recursos-product-grid {
    gap: 18px !important;
  }

  body.site-public .face#recursos .recurso-body h3 {
    font-size: 18px !important;
  }

  body.site-public .face#recursos .recurso-body p {
    font-size: 12.3px !important;
  }

  body.site-public .face#recursos .recurso-body li {
    font-size: 11.4px !important;
  }

  body.site-public .face#recursos .recursos-footer-item {
    padding: 0 18px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#recursos {
    padding: 112px 28px 28px !important;
  }

  body.site-public .face#recursos .recursos-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.site-public .face#recursos .recurso-card {
    min-height: 410px !important;
  }

  body.site-public .face#recursos .recursos-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    border-radius: 10px !important;
  }

  body.site-public .face#recursos .recursos-footer-item {
    border-left: 0 !important;
    border-top: 1px solid rgba(191,158,95,.42) !important;
  }

  body.site-public .face#recursos .recursos-footer-item:nth-child(1),
  body.site-public .face#recursos .recursos-footer-item:nth-child(2) {
    border-top: 0 !important;
  }

  body.site-public .face#recursos .recursos-footer-item:nth-child(even) {
    border-left: 1px solid rgba(191,158,95,.42) !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#recursos {
    padding: 104px 16px 24px !important;
  }

  body.site-public .face#recursos .recursos-heading .kicker {
    font-size: 9px !important;
    letter-spacing: .12em !important;
  }

  body.site-public .face#recursos .recursos-heading .kicker::before,
  body.site-public .face#recursos .recursos-heading .kicker::after {
    width: 28px !important;
  }

  body.site-public .face#recursos .recursos-heading .headline {
    font-size: clamp(38px, 12vw, 56px) !important;
  }

  body.site-public .face#recursos .recursos-heading .sub {
    font-size: 14.5px !important;
    line-height: 1.55 !important;
  }

  body.site-public .face#recursos .recursos-product-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    margin-top: 24px !important;
  }

  body.site-public .face#recursos .recurso-card {
    min-height: 0 !important;
  }

  body.site-public .face#recursos .recursos-footer {
    grid-template-columns: 1fr !important;
    margin-top: 16px !important;
  }

  body.site-public .face#recursos .recursos-footer-item,
  body.site-public .face#recursos .recursos-footer-item:nth-child(even) {
    border-left: 0 !important;
    border-top: 1px solid rgba(191,158,95,.42) !important;
  }

  body.site-public .face#recursos .recursos-footer-item:first-child {
    border-top: 0 !important;
  }
}


/* =========================================================
   FIX RECURSOS - BOTÓN VER DETALLES SIN CORTE
   Corrige superposición del precio/botón dentro de las tarjetas.
   ========================================================= */

body.site-public .face#recursos .recurso-card {
  overflow: hidden !important;
}

body.site-public .face#recursos .recurso-buy {
  width: 100% !important;
  min-height: 58px !important;
  margin-top: auto !important;
  padding: 12px 18px 18px !important;
  display: grid !important;
  grid-template-columns: minmax(58px, auto) minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 10px !important;
}

body.site-public .face#recursos .recurso-buy strong {
  display: block !important;
  min-width: 0 !important;
  color: #bc7921 !important;
  font-size: 20px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body.site-public .face#recursos .recurso-detail-btn {
  width: 100% !important;
  max-width: 132px !important;
  min-width: 0 !important;
  justify-self: end !important;
  height: 34px !important;
  padding: 0 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  border: 1px solid rgba(191,158,95,.58) !important;
  border-radius: 4px !important;
  background: #fffdf8 !important;
  color: #a06b22 !important;
  font-size: 8.7px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  box-sizing: border-box !important;
}

/* Evita que el contenido empuje el botón fuera del cuadro */
body.site-public .face#recursos .recurso-body {
  min-height: 0 !important;
}

body.site-public .face#recursos .recurso-body ul {
  margin-bottom: 0 !important;
}

/* Laptop mediana: botón más compacto pero completo */
@media (max-width: 1380px) {
  body.site-public .face#recursos .recurso-buy {
    padding: 10px 14px 16px !important;
    grid-template-columns: minmax(52px, auto) minmax(0, 1fr) !important;
    column-gap: 8px !important;
  }

  body.site-public .face#recursos .recurso-buy strong {
    font-size: 18px !important;
  }

  body.site-public .face#recursos .recurso-detail-btn {
    max-width: 118px !important;
    height: 32px !important;
    padding: 0 8px !important;
    font-size: 7.8px !important;
    letter-spacing: .035em !important;
    gap: 5px !important;
  }
}

/* Pantallas bajas: no se entrecorta con el borde inferior */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#recursos .recurso-buy {
    min-height: 44px !important;
    padding: 8px 12px 12px !important;
    column-gap: 7px !important;
  }

  body.site-public .face#recursos .recurso-buy strong {
    font-size: 17px !important;
  }

  body.site-public .face#recursos .recurso-detail-btn {
    max-width: 108px !important;
    height: 29px !important;
    padding: 0 7px !important;
    font-size: 7.2px !important;
    letter-spacing: .025em !important;
  }
}

/* Tablet: el botón vuelve a tener más espacio */
@media (max-width: 1100px) {
  body.site-public .face#recursos .recurso-buy {
    padding: 12px 18px 18px !important;
    grid-template-columns: auto minmax(130px, 150px) !important;
  }

  body.site-public .face#recursos .recurso-detail-btn {
    max-width: 150px !important;
    font-size: 8.8px !important;
  }
}

/* Móvil: precio y botón bien centrados, sin corte */
@media (max-width: 520px) {
  body.site-public .face#recursos .recurso-buy {
    grid-template-columns: 1fr !important;
    row-gap: 12px !important;
    align-items: stretch !important;
  }

  body.site-public .face#recursos .recurso-buy strong {
    font-size: 22px !important;
  }

  body.site-public .face#recursos .recurso-detail-btn {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
    height: 38px !important;
    font-size: 9px !important;
  }
}


/* =========================================================
   SOBRE GILBERTH - ESTRUCTURA COMO MAQUETA
   ========================================================= */

body.site-public .face#sobre {
  padding: clamp(82px, 8.7dvh, 104px) clamp(34px, 4.2vw, 72px) 18px !important;
  color: #15100a !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -9% 51%, rgba(188,127,33,.105), transparent 26%) !important,
    radial-gradient(circle at 103% -10%, rgba(188,127,33,.08), transparent 25%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f8f6f0 100%) !important;
}

body.site-public .face#sobre::before {
  content: "" !important;
  position: absolute !important;
  right: -255px !important;
  top: -260px !important;
  width: 620px !important;
  height: 620px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.11) !important;
  box-shadow:
    0 0 0 14px transparent,
    0 0 0 26px rgba(180,119,41,.04),
    0 0 0 48px transparent,
    0 0 0 60px rgba(180,119,41,.035),
    0 0 0 86px transparent,
    0 0 0 98px rgba(180,119,41,.030) !important;
  pointer-events: none !important;
  opacity: 1 !important;
  background: transparent !important;
}

body.site-public .face#sobre::after {
  content: "" !important;
  position: absolute !important;
  left: -255px !important;
  bottom: 42px !important;
  width: 600px !important;
  height: 600px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.10) !important;
  background: transparent !important;
  pointer-events: none !important;
}

body.site-public .face#sobre .sobre-gilberth-layout {
  position: relative !important;
  z-index: 2 !important;
  width: min(1500px, 100%) !important;
  max-width: 1500px !important;
  min-height: calc(100dvh - 118px) !important;
  height: auto !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(350px, 36%) minmax(0, 1fr) !important;
  grid-template-rows: 1fr auto !important;
  column-gap: clamp(28px, 4vw, 62px) !important;
  row-gap: 18px !important;
  align-content: start !important;
  text-align: left !important;
}

body.site-public .face#sobre .sobre-left {
  position: relative !important;
  min-height: 640px !important;
}

body.site-public .face#sobre .sobre-brand-mini {
  position: relative !important;
  z-index: 4 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 13px !important;
  color: #17120b !important;
}

body.site-public .face#sobre .sobre-brand-mini span {
  color: #b47729 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 52px !important;
  line-height: .85 !important;
  letter-spacing: -.13em !important;
}

body.site-public .face#sobre .sobre-brand-mini strong {
  display: block !important;
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: .04em !important;
  font-weight: 900 !important;
}

body.site-public .face#sobre .sobre-brand-mini small {
  display: block !important;
  margin-top: 8px !important;
  color: #9d742c !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: .20em !important;
  font-weight: 900 !important;
}

body.site-public .face#sobre .sobre-photo-frame {
  position: absolute !important;
  inset: 58px 0 0 0 !important;
  min-height: 590px !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

body.site-public .face#sobre .sobre-photo-frame::before {
  content: "" !important;
  position: absolute !important;
  left: -28px !important;
  top: 60px !important;
  width: min(520px, 98%) !important;
  height: min(520px, 66dvh) !important;
  border: 1px solid rgba(180,119,41,.35) !important;
  border-radius: 50% !important;
  background: radial-gradient(circle at 54% 42%, rgba(216,186,115,.10), transparent 58%) !important;
  pointer-events: none !important;
}

/* Figura creada en CSS para no depender de una foto externa */
body.site-public .face#sobre .sobre-photo-person {
  position: absolute !important;
  z-index: 2 !important;
  left: 48px !important;
  bottom: 0 !important;
  width: min(390px, 82%) !important;
  height: min(565px, 70dvh) !important;
  background:
    radial-gradient(circle at 49% 11%, #f2c6a2 0 9%, transparent 9.3%),
    radial-gradient(ellipse at 48% 23%, #111 0 10%, transparent 10.4%),
    linear-gradient(118deg, transparent 0 24%, #111 24.4% 42%, transparent 42.5%),
    linear-gradient(64deg, transparent 0 56%, #121212 56.5% 77%, transparent 77.5%),
    linear-gradient(180deg, transparent 0 22%, #181818 22.4% 100%) !important;
  clip-path: polygon(39% 0, 59% 0, 67% 11%, 67% 22%, 84% 31%, 100% 100%, 0 100%, 18% 31%, 32% 22%, 32% 11%) !important;
  filter: drop-shadow(0 18px 28px rgba(0,0,0,.20)) !important;
}

body.site-public .face#sobre .sobre-photo-person::before {
  content: "" !important;
  position: absolute !important;
  left: 34% !important;
  top: 15% !important;
  width: 31% !important;
  height: 10% !important;
  border-radius: 0 0 50% 50% !important;
  background: #f1e8dc !important;
  box-shadow: inset 0 -20px 0 #7b3029 !important;
}

body.site-public .face#sobre .sobre-photo-person::after {
  content: "" !important;
  position: absolute !important;
  left: 12% !important;
  top: 48% !important;
  width: 84% !important;
  height: 52% !important;
  background: linear-gradient(120deg, #0d0d0d, #242424 48%, #080808) !important;
  clip-path: polygon(20% 0, 80% 0, 100% 100%, 0 100%) !important;
}

body.site-public .face#sobre .sobre-quote {
  position: absolute !important;
  z-index: 5 !important;
  left: 14px !important;
  bottom: 20px !important;
  width: min(300px, 72%) !important;
  min-height: 155px !important;
  padding: 22px 22px 18px !important;
  border: 1px solid rgba(180,119,41,.58) !important;
  border-radius: 7px !important;
  background: rgba(8,8,8,.94) !important;
  box-shadow: 0 16px 30px rgba(0,0,0,.20) !important;
  color: #fffaf1 !important;
}

body.site-public .face#sobre .sobre-quote span {
  position: absolute !important;
  left: 15px !important;
  top: 8px !important;
  color: #c58a2e !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 54px !important;
  line-height: 1 !important;
}

body.site-public .face#sobre .sobre-quote p {
  margin: 24px 0 12px !important;
  color: #fff8ec !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

body.site-public .face#sobre .sobre-quote b {
  display: block !important;
  color: #c58a2e !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 22px !important;
  font-style: italic !important;
  font-weight: 400 !important;
}

body.site-public .face#sobre .sobre-right {
  padding-top: 18px !important;
}

body.site-public .face#sobre .sobre-heading {
  text-align: center !important;
  margin: 0 auto !important;
  max-width: 950px !important;
}

body.site-public .face#sobre .sobre-heading .kicker {
  justify-content: center !important;
  margin: 0 0 18px !important;
  color: #b2802f !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .20em !important;
}

body.site-public .face#sobre .sobre-heading .kicker::before,
body.site-public .face#sobre .sobre-heading .kicker::after {
  width: 50px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#sobre .sobre-heading .headline {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(62px, 6.6vw, 112px) !important;
  font-weight: 400 !important;
  line-height: .88 !important;
  letter-spacing: -.06em !important;
}

body.site-public .face#sobre .sobre-title-line {
  position: relative !important;
  display: block !important;
  width: 300px !important;
  height: 1px !important;
  margin: 18px auto 16px !important;
  background: rgba(201,155,67,.68) !important;
}

body.site-public .face#sobre .sobre-title-line::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 7px !important;
  height: 7px !important;
  background: #c99b43 !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

body.site-public .face#sobre .sobre-heading .sub {
  max-width: 850px !important;
  margin: 0 auto !important;
  color: #3e382f !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-credentials {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 38px auto 0 !important;
  max-width: 940px !important;
}

body.site-public .face#sobre .sobre-credentials article {
  min-height: 142px !important;
  padding: 0 20px !important;
  text-align: center !important;
  border-left: 1px solid rgba(191,158,95,.45) !important;
  cursor: pointer !important;
}

body.site-public .face#sobre .sobre-credentials article:first-child {
  border-left: 0 !important;
}

body.site-public .face#sobre .sobre-credentials i {
  width: 68px !important;
  height: 68px !important;
  margin: 0 auto 16px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(191,158,95,.45) !important;
  border-radius: 50% !important;
  color: #bd8429 !important;
  font-size: 31px !important;
  font-style: normal !important;
  line-height: 1 !important;
  background: rgba(255,255,255,.60) !important;
}

body.site-public .face#sobre .sobre-credentials strong {
  display: block !important;
  margin: 0 0 8px !important;
  color: #15100a !important;
  font-size: 12.5px !important;
  line-height: 1.25 !important;
  font-weight: 950 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sobre .sobre-credentials p {
  margin: 0 !important;
  color: #4b443b !important;
  font-size: 11.5px !important;
  line-height: 1.45 !important;
}

body.site-public .face#sobre .sobre-section-title {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 26px !important;
  margin: 34px auto 25px !important;
  max-width: 760px !important;
  color: #b2802f !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-section-title span {
  height: 1px !important;
  background: rgba(201,155,67,.52) !important;
}

body.site-public .face#sobre .sobre-section-title strong {
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .17em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body.site-public .face#sobre .sobre-stats {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
  max-width: 920px !important;
  margin: 0 auto !important;
}

body.site-public .face#sobre .sobre-stats article {
  min-height: 120px !important;
  padding: 0 18px !important;
  border-left: 1px solid rgba(191,158,95,.45) !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-stats article:first-child {
  border-left: 0 !important;
}

body.site-public .face#sobre .sobre-stats i {
  display: block !important;
  margin: 0 auto 9px !important;
  color: #bd8429 !important;
  font-size: 31px !important;
  line-height: 1 !important;
  font-style: normal !important;
}

body.site-public .face#sobre .sobre-stats b {
  display: block !important;
  margin: 0 0 10px !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 32px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
}

body.site-public .face#sobre .sobre-stats b small {
  font-family: inherit !important;
  font-size: 15px !important;
  letter-spacing: .12em !important;
}

body.site-public .face#sobre .sobre-stats strong {
  display: block !important;
  margin: 0 0 8px !important;
  color: #15100a !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  font-weight: 950 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sobre .sobre-stats p {
  margin: 0 !important;
  color: #4b443b !important;
  font-size: 11.2px !important;
  line-height: 1.45 !important;
}

body.site-public .face#sobre .sobre-logos-footer {
  grid-column: 1 / -1 !important;
  min-height: 76px !important;
  margin-top: 8px !important;
  display: grid !important;
  grid-template-columns: 215px minmax(0, 1fr) !important;
  align-items: center !important;
  border: 1px solid rgba(191,158,95,.24) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.80) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.045) !important;
  overflow: hidden !important;
}

body.site-public .face#sobre .sobre-trust {
  min-height: 76px !important;
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 28px !important;
  border-right: 1px solid rgba(191,158,95,.42) !important;
}

body.site-public .face#sobre .sobre-trust span {
  color: #bd8429 !important;
  font-size: 30px !important;
  line-height: 1 !important;
}

body.site-public .face#sobre .sobre-trust strong {
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sobre .sobre-logos-footer img {
  width: 100% !important;
  height: 76px !important;
  object-fit: contain !important;
  padding: 0 28px !important;
  filter: grayscale(1) contrast(1.08) opacity(.88) !important;
}

/* Pantallas bajas: compactar para que no quede espacio blanco */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#sobre {
    padding-top: 74px !important;
    padding-bottom: 12px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout {
    min-height: calc(100dvh - 92px) !important;
  }

  body.site-public .face#sobre .sobre-left {
    min-height: 560px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset-top: 50px !important;
    min-height: 505px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    height: min(495px, 68dvh) !important;
  }

  body.site-public .face#sobre .sobre-quote {
    min-height: 132px !important;
    padding: 18px 18px 15px !important;
  }

  body.site-public .face#sobre .sobre-quote p {
    font-size: 11.5px !important;
    line-height: 1.42 !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(54px, 5.6vw, 86px) !important;
  }

  body.site-public .face#sobre .sobre-heading .sub {
    font-size: 15.5px !important;
    line-height: 1.4 !important;
  }

  body.site-public .face#sobre .sobre-credentials {
    margin-top: 24px !important;
  }

  body.site-public .face#sobre .sobre-credentials article {
    min-height: 115px !important;
  }

  body.site-public .face#sobre .sobre-credentials i {
    width: 54px !important;
    height: 54px !important;
    margin-bottom: 10px !important;
    font-size: 25px !important;
  }

  body.site-public .face#sobre .sobre-credentials strong {
    font-size: 10.5px !important;
  }

  body.site-public .face#sobre .sobre-credentials p {
    font-size: 9.8px !important;
  }

  body.site-public .face#sobre .sobre-section-title {
    margin: 24px auto 18px !important;
  }

  body.site-public .face#sobre .sobre-stats article {
    min-height: 100px !important;
  }

  body.site-public .face#sobre .sobre-stats i {
    font-size: 24px !important;
  }

  body.site-public .face#sobre .sobre-stats b {
    font-size: 25px !important;
  }

  body.site-public .face#sobre .sobre-stats strong {
    font-size: 9.5px !important;
  }

  body.site-public .face#sobre .sobre-stats p {
    font-size: 9.6px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer,
  body.site-public .face#sobre .sobre-trust {
    min-height: 58px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer img {
    height: 58px !important;
  }
}

/* Laptop mediana */
@media (max-width: 1300px) {
  body.site-public .face#sobre {
    padding-inline: 38px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout {
    grid-template-columns: minmax(300px, 33%) minmax(0, 1fr) !important;
    column-gap: 32px !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(54px, 6vw, 88px) !important;
  }

  body.site-public .face#sobre .sobre-credentials article,
  body.site-public .face#sobre .sobre-stats article {
    padding-inline: 12px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#sobre {
    padding: 104px 28px 28px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
    min-height: calc(100dvh - 132px) !important;
  }

  body.site-public .face#sobre .sobre-left {
    min-height: 520px !important;
    order: 2 !important;
  }

  body.site-public .face#sobre .sobre-right {
    order: 1 !important;
    padding-top: 0 !important;
  }

  body.site-public .face#sobre .sobre-brand-mini {
    display: none !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    position: relative !important;
    inset: auto !important;
    min-height: 500px !important;
    margin-top: 24px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  body.site-public .face#sobre .sobre-credentials,
  body.site-public .face#sobre .sobre-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
  }

  body.site-public .face#sobre .sobre-credentials article,
  body.site-public .face#sobre .sobre-stats article {
    border-left: 0 !important;
    border-top: 1px solid rgba(191,158,95,.38) !important;
    padding: 18px !important;
  }

  body.site-public .face#sobre .sobre-credentials article:nth-child(1),
  body.site-public .face#sobre .sobre-credentials article:nth-child(2),
  body.site-public .face#sobre .sobre-stats article:nth-child(1),
  body.site-public .face#sobre .sobre-stats article:nth-child(2) {
    border-top: 0 !important;
  }

  body.site-public .face#sobre .sobre-credentials article:nth-child(even),
  body.site-public .face#sobre .sobre-stats article:nth-child(even) {
    border-left: 1px solid rgba(191,158,95,.38) !important;
  }

  body.site-public .face#sobre .sobre-logos-footer {
    order: 3 !important;
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#sobre .sobre-trust {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(191,158,95,.42) !important;
    justify-content: center !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#sobre {
    padding: 100px 16px 24px !important;
  }

  body.site-public .face#sobre .sobre-heading .kicker {
    font-size: 9px !important;
    letter-spacing: .12em !important;
  }

  body.site-public .face#sobre .sobre-heading .kicker::before,
  body.site-public .face#sobre .sobre-heading .kicker::after {
    width: 28px !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(40px, 13vw, 60px) !important;
    line-height: .95 !important;
  }

  body.site-public .face#sobre .sobre-title-line {
    width: 180px !important;
  }

  body.site-public .face#sobre .sobre-heading .sub {
    font-size: 14.5px !important;
  }

  body.site-public .face#sobre .sobre-credentials,
  body.site-public .face#sobre .sobre-stats {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#sobre .sobre-credentials article,
  body.site-public .face#sobre .sobre-stats article,
  body.site-public .face#sobre .sobre-credentials article:nth-child(even),
  body.site-public .face#sobre .sobre-stats article:nth-child(even) {
    border-left: 0 !important;
    border-top: 1px solid rgba(191,158,95,.38) !important;
  }

  body.site-public .face#sobre .sobre-credentials article:first-child,
  body.site-public .face#sobre .sobre-stats article:first-child {
    border-top: 0 !important;
  }

  body.site-public .face#sobre .sobre-left {
    min-height: 455px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    min-height: 440px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: min(330px, 82%) !important;
    height: 410px !important;
  }

  body.site-public .face#sobre .sobre-quote {
    left: 0 !important;
    width: min(290px, 88%) !important;
  }

  body.site-public .face#sobre .sobre-logos-footer img {
    padding: 0 12px !important;
  }
}

/* =========================================================
   INSIGHTS ESTRATÉGICOS - COMO MAQUETA
   ========================================================= */
body.site-public .face#insights {
  padding: clamp(92px, 9dvh, 116px) clamp(34px, 5.2vw, 84px) 18px !important;
  color: #15100a !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -8% 98%, rgba(188,127,33,.09), transparent 22%) !important,
    radial-gradient(circle at 105% 52%, rgba(188,127,33,.075), transparent 25%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f8f6f0 100%) !important;
}
body.site-public .face#insights::before {
  content: "" !important; position: absolute !important; right: -260px !important; top: 210px !important;
  width: 620px !important; height: 620px !important; border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.10) !important;
  box-shadow: 0 0 0 14px transparent, 0 0 0 26px rgba(180,119,41,.04), 0 0 0 48px transparent, 0 0 0 60px rgba(180,119,41,.035), 0 0 0 86px transparent, 0 0 0 98px rgba(180,119,41,.030) !important;
  background: transparent !important; pointer-events: none !important;
}
body.site-public .face#insights::after {
  content: "" !important; position: absolute !important; left: -270px !important; bottom: -290px !important;
  width: 640px !important; height: 640px !important; border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.10) !important; background: transparent !important; pointer-events: none !important;
}
body.site-public .face#insights .insights-layout {
  position: relative !important; z-index: 2 !important; width: min(1430px, 100%) !important; max-width: 1430px !important;
  min-height: calc(100dvh - 120px) !important; height: auto !important; margin: 0 auto !important;
  display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(300px, 330px) !important;
  gap: 34px !important; align-items: start !important; text-align: left !important;
}
body.site-public .face#insights .insights-main { min-width: 0 !important; }
body.site-public .face#insights .insights-heading-row {
  display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(300px, 370px) !important; gap: 46px !important; align-items: center !important;
}
body.site-public .face#insights .insights-label {
  position: relative !important; display: inline-flex !important; align-items: center !important; gap: 13px !important;
  margin: 0 0 12px !important; color: #b2802f !important; font-size: 12px !important; line-height: 1 !important;
  font-weight: 900 !important; letter-spacing: .12em !important; text-transform: uppercase !important;
}
body.site-public .face#insights .insights-label::after {
  content: "" !important; width: 300px !important; max-width: 30vw !important; height: 1px !important; background: rgba(201,155,67,.32) !important;
}
body.site-public .face#insights .headline {
  margin: 0 !important; color: #0d0d0d !important; font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(58px, 5.2vw, 86px) !important; font-weight: 400 !important; line-height: .92 !important; letter-spacing: -.055em !important;
}
body.site-public .face#insights .sub {
  max-width: 780px !important; margin: 12px 0 0 !important; color: #3e382f !important; font-size: 16px !important; line-height: 1.58 !important;
}
body.site-public .face#insights .insights-quote {
  position: relative !important; margin: 10px 0 0 !important; padding: 24px 24px 22px 34px !important;
  border-left: 1px solid rgba(191,158,95,.42) !important; color: #19140d !important;
}
body.site-public .face#insights .insights-quote span {
  display: block !important; color: #bd8429 !important; font-family: Georgia, "Times New Roman", serif !important;
  font-size: 42px !important; line-height: .5 !important; font-weight: 700 !important;
}
body.site-public .face#insights .insights-quote span:last-child { text-align: right !important; margin-top: 12px !important; }
body.site-public .face#insights .insights-quote p { margin: 0 !important; color: #2b251f !important; font-size: 13.5px !important; line-height: 1.7 !important; }
body.site-public .face#insights .insights-tabs {
  height: 42px !important; margin: 30px 0 26px !important; display: flex !important; align-items: center !important; gap: 0 !important;
  border: 1px solid rgba(191,158,95,.16) !important; background: rgba(255,255,255,.52) !important; overflow: hidden !important;
}
body.site-public .face#insights .insights-tabs button {
  height: 42px !important; padding: 0 27px !important; border: 0 !important; border-right: 1px solid rgba(191,158,95,.14) !important;
  background: transparent !important; color: #17120b !important; font-size: 10px !important; line-height: 1 !important;
  font-weight: 950 !important; letter-spacing: .045em !important; text-transform: uppercase !important; cursor: pointer !important; white-space: nowrap !important;
}
body.site-public .face#insights .insights-tabs button.is-active {
  color: #fff !important; background: linear-gradient(135deg, #d49a34, #b9771c) !important; border-radius: 999px !important;
  box-shadow: 0 8px 18px rgba(180,119,41,.16) !important;
}
body.site-public .face#insights .insights-card-grid {
  display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)) !important; gap: 18px !important;
}
body.site-public .face#insights .insight-card {
  min-height: 318px !important; display: flex !important; flex-direction: column !important;
  border: 1px solid rgba(191,158,95,.22) !important; border-radius: 8px !important; background: rgba(255,255,255,.78) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.045) !important; overflow: hidden !important; cursor: pointer !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}
body.site-public .face#insights .insight-card:hover { transform: translateY(-3px) !important; border-color: rgba(191,158,95,.45) !important; box-shadow: 0 16px 34px rgba(70,52,23,.085) !important; }
body.site-public .face#insights .insight-cover { height: 126px !important; background-size: cover !important; background-position: center !important; }
body.site-public .face#insights .insight-cover-1 { background: radial-gradient(circle at 25% 34%, rgba(216,186,115,.35), transparent 18%), linear-gradient(135deg, #070707, #1f211e 56%, #050505) !important; }
body.site-public .face#insights .insight-cover-2 { background: radial-gradient(circle at 78% 40%, rgba(20,20,20,.35), transparent 24%), linear-gradient(135deg, #ddd3bd, #1b2b31 55%, #071013) !important; }
body.site-public .face#insights .insight-cover-3 { background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.24)), linear-gradient(135deg, #78907b, #d7c1a1 42%, #314b5b) !important; }
body.site-public .face#insights .insight-cover-4 { background: radial-gradient(circle at 35% 50%, rgba(216,186,115,.35), transparent 25%), linear-gradient(135deg, #1b1712, #292723 48%, #050505) !important; }
body.site-public .face#insights .insight-cover-5 { background: radial-gradient(circle at 78% 34%, rgba(216,186,115,.55), transparent 24%), linear-gradient(135deg, #111, #c58d30 60%, #1c1710) !important; }
body.site-public .face#insights .insight-card-body { padding: 13px 16px 14px !important; display: flex !important; flex-direction: column !important; flex: 1 1 auto !important; }
body.site-public .face#insights .insight-card small {
  align-self: flex-start !important; margin: 0 0 9px !important; padding: 4px 7px !important; background: rgba(188,127,33,.12) !important;
  color: #b2802f !important; font-size: 8.5px !important; line-height: 1 !important; font-weight: 950 !important; letter-spacing: .04em !important; text-transform: uppercase !important;
}
body.site-public .face#insights .insight-card h3 {
  margin: 0 0 9px !important; color: #16110a !important; font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important; line-height: 1.15 !important; font-weight: 700 !important; letter-spacing: -.025em !important;
}
body.site-public .face#insights .insight-card p { margin: 0 0 14px !important; color: #4b443b !important; font-size: 11.6px !important; line-height: 1.46 !important; }
body.site-public .face#insights .insight-author { margin-top: auto !important; display: grid !important; grid-template-columns: 34px minmax(0, 1fr) 22px !important; align-items: center !important; gap: 9px !important; }
body.site-public .face#insights .author-avatar { width: 34px !important; height: 34px !important; border-radius: 50% !important; background: radial-gradient(circle at 50% 30%, #e8b48f 0 22%, transparent 23%), linear-gradient(180deg, #101010 0 100%) !important; display: block !important; }
body.site-public .face#insights .insight-author strong { display: block !important; color: #15100a !important; font-size: 10.6px !important; line-height: 1.2 !important; font-weight: 850 !important; }
body.site-public .face#insights .insight-author em { display: block !important; margin-top: 2px !important; color: #6b6257 !important; font-size: 9.5px !important; line-height: 1.2 !important; font-style: normal !important; }
body.site-public .face#insights .insight-author b { color: #bd8429 !important; font-size: 17px !important; line-height: 1 !important; }
body.site-public .face#insights .insights-sidebar { display: grid !important; gap: 18px !important; }
body.site-public .face#insights .insights-subscribe, body.site-public .face#insights .insights-featured {
  border: 1px solid rgba(191,158,95,.22) !important; border-radius: 8px !important; background: rgba(255,255,255,.78) !important; box-shadow: 0 8px 22px rgba(70,52,23,.045) !important;
}
body.site-public .face#insights .insights-subscribe { padding: 28px 24px 22px !important; text-align: center !important; }
body.site-public .face#insights .subscribe-icon { width: 44px !important; height: 44px !important; margin: 0 auto 18px !important; display: grid !important; place-items: center !important; border: 1px solid rgba(191,158,95,.36) !important; border-radius: 50% !important; color: #bd8429 !important; font-size: 20px !important; }
body.site-public .face#insights .insights-subscribe h3 { margin: 0 0 12px !important; color: #15100a !important; font-family: Georgia, "Times New Roman", serif !important; font-size: 23px !important; line-height: 1.1 !important; }
body.site-public .face#insights .insights-subscribe p { margin: 0 0 18px !important; color: #4b443b !important; font-size: 13px !important; line-height: 1.5 !important; }
body.site-public .face#insights .insights-subscribe input[type="email"] { width: 100% !important; height: 42px !important; margin-bottom: 14px !important; padding: 0 15px !important; border: 1px solid rgba(191,158,95,.22) !important; border-radius: 4px !important; background: rgba(255,255,255,.82) !important; color: #15100a !important; font-size: 12.5px !important; outline: none !important; }
body.site-public .face#insights .insights-subscribe button { width: 100% !important; height: 42px !important; border: 0 !important; border-radius: 4px !important; background: linear-gradient(135deg, #d49a34, #b9771c) !important; color: #fff !important; font-size: 11px !important; font-weight: 900 !important; letter-spacing: .08em !important; cursor: pointer !important; }
body.site-public .face#insights .insights-subscribe small { display: block !important; margin-top: 13px !important; color: #5d5448 !important; font-size: 11px !important; }
body.site-public .face#insights .insights-featured { padding: 22px 22px 20px !important; }
body.site-public .face#insights .insights-featured h3 { margin: 0 0 18px !important; padding-bottom: 12px !important; border-bottom: 1px solid rgba(191,158,95,.28) !important; color: #15100a !important; font-size: 13px !important; line-height: 1 !important; font-weight: 950 !important; letter-spacing: .05em !important; }
body.site-public .face#insights .featured-resource { display: grid !important; grid-template-columns: 48px minmax(0, 1fr) 18px !important; align-items: center !important; gap: 12px !important; padding: 12px 0 !important; border-bottom: 1px solid rgba(191,158,95,.16) !important; }
body.site-public .face#insights .featured-resource > span { width: 48px !important; height: 48px !important; display: grid !important; place-items: center !important; border: 1px solid rgba(191,158,95,.22) !important; border-radius: 4px !important; background: #f4efe5 !important; color: #bd8429 !important; font-size: 22px !important; }
body.site-public .face#insights .featured-resource strong { display: block !important; margin-bottom: 4px !important; color: #15100a !important; font-size: 12px !important; line-height: 1.25 !important; font-weight: 850 !important; }
body.site-public .face#insights .featured-resource p { margin: 0 !important; color: #4b443b !important; font-size: 10.8px !important; line-height: 1.35 !important; }
body.site-public .face#insights .featured-resource b { color: #bd8429 !important; font-size: 18px !important; transform: rotate(180deg) !important; }
body.site-public .face#insights .featured-all { height: 40px !important; margin-top: 18px !important; display: flex !important; align-items: center !important; justify-content: center !important; border: 1px solid rgba(191,158,95,.40) !important; border-radius: 4px !important; color: #a06b22 !important; font-size: 10.5px !important; line-height: 1 !important; font-weight: 900 !important; letter-spacing: .08em !important; }
body.site-public .face#insights .insights-benefits { min-height: 78px !important; margin-top: 22px !important; display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; align-items: stretch !important; border: 1px solid rgba(191,158,95,.22) !important; border-radius: 8px !important; background: rgba(255,255,255,.78) !important; box-shadow: 0 8px 22px rgba(70,52,23,.045) !important; overflow: hidden !important; }
body.site-public .face#insights .insights-benefits article { min-height: 78px !important; display: grid !important; grid-template-columns: 50px minmax(0, 1fr) !important; align-items: center !important; gap: 14px !important; padding: 0 24px !important; border-left: 1px solid rgba(191,158,95,.42) !important; }
body.site-public .face#insights .insights-benefits article:first-child { border-left: 0 !important; }
body.site-public .face#insights .insights-benefits span { color: #bd8429 !important; font-size: 32px !important; line-height: 1 !important; }
body.site-public .face#insights .insights-benefits strong { display: block !important; margin-bottom: 5px !important; color: #15100a !important; font-size: 12px !important; line-height: 1.15 !important; font-weight: 950 !important; }
body.site-public .face#insights .insights-benefits p { margin: 0 !important; color: #4b443b !important; font-size: 10.8px !important; line-height: 1.35 !important; }

@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#insights { padding-top: 82px !important; padding-bottom: 12px !important; }
  body.site-public .face#insights .headline { font-size: clamp(46px, 4.5vw, 68px) !important; }
  body.site-public .face#insights .sub { font-size: 14px !important; line-height: 1.38 !important; }
  body.site-public .face#insights .insights-quote { padding-top: 16px !important; padding-bottom: 14px !important; }
  body.site-public .face#insights .insights-tabs { margin: 20px 0 18px !important; height: 36px !important; }
  body.site-public .face#insights .insights-tabs button { height: 36px !important; padding-inline: 18px !important; font-size: 8.8px !important; }
  body.site-public .face#insights .insight-card { min-height: 260px !important; }
  body.site-public .face#insights .insight-cover { height: 96px !important; }
  body.site-public .face#insights .insight-card-body { padding: 10px 12px 12px !important; }
  body.site-public .face#insights .insight-card h3 { font-size: 15px !important; }
  body.site-public .face#insights .insight-card p { font-size: 10px !important; line-height: 1.34 !important; }
  body.site-public .face#insights .insights-subscribe { padding: 18px 18px 16px !important; }
  body.site-public .face#insights .insights-featured { padding: 16px !important; }
  body.site-public .face#insights .insights-benefits { min-height: 60px !important; margin-top: 16px !important; }
  body.site-public .face#insights .insights-benefits article { min-height: 60px !important; padding-inline: 14px !important; grid-template-columns: 35px minmax(0, 1fr) !important; }
  body.site-public .face#insights .insights-benefits span { font-size: 24px !important; }
  body.site-public .face#insights .insights-benefits strong { font-size: 10px !important; }
  body.site-public .face#insights .insights-benefits p { font-size: 9px !important; }
}
@media (max-width: 1380px) {
  body.site-public .face#insights { padding-inline: 42px !important; }
  body.site-public .face#insights .insights-layout { grid-template-columns: minmax(0, 1fr) minmax(270px, 300px) !important; gap: 24px !important; }
  body.site-public .face#insights .insights-card-grid { gap: 14px !important; }
  body.site-public .face#insights .insight-card h3 { font-size: 16px !important; }
  body.site-public .face#insights .insights-tabs button { padding-inline: 17px !important; font-size: 9px !important; }
  body.site-public .face#insights .insights-benefits article { padding-inline: 16px !important; }
}
@media (max-width: 1100px) {
  body.site-public .face#insights { padding: 104px 28px 28px !important; }
  body.site-public .face#insights .insights-layout { grid-template-columns: 1fr !important; }
  body.site-public .face#insights .insights-heading-row { grid-template-columns: 1fr !important; gap: 18px !important; }
  body.site-public .face#insights .insights-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.site-public .face#insights .insights-tabs { overflow-x: auto !important; }
  body.site-public .face#insights .insights-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.site-public .face#insights .insights-benefits article { border-left: 0 !important; border-top: 1px solid rgba(191,158,95,.42) !important; }
  body.site-public .face#insights .insights-benefits article:nth-child(1), body.site-public .face#insights .insights-benefits article:nth-child(2) { border-top: 0 !important; }
  body.site-public .face#insights .insights-benefits article:nth-child(even) { border-left: 1px solid rgba(191,158,95,.42) !important; }
}
@media (max-width: 760px) {
  body.site-public .face#insights { padding: 100px 16px 24px !important; }
  body.site-public .face#insights .headline { font-size: clamp(40px, 13vw, 58px) !important; }
  body.site-public .face#insights .insights-label::after { width: 100px !important; }
  body.site-public .face#insights .insights-card-grid { grid-template-columns: 1fr !important; }
  body.site-public .face#insights .insights-benefits { grid-template-columns: 1fr !important; }
  body.site-public .face#insights .insights-benefits article, body.site-public .face#insights .insights-benefits article:nth-child(even) { border-left: 0 !important; border-top: 1px solid rgba(191,158,95,.42) !important; }
  body.site-public .face#insights .insights-benefits article:first-child { border-top: 0 !important; }
  body.site-public .face#insights .featured-resource { grid-template-columns: 46px minmax(0, 1fr) 18px !important; }
}


/* =========================================================
   CONTACTO - COMO MAQUETA
   ========================================================= */
body.site-public .face#contacto {
  padding: clamp(92px, 9dvh, 116px) clamp(34px, 4.7vw, 84px) 18px !important;
  color: #15100a !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -8% 99%, rgba(188,127,33,.09), transparent 22%) !important,
    radial-gradient(circle at 104% 46%, rgba(188,127,33,.075), transparent 24%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f8f6f0 100%) !important;
}
body.site-public .face#contacto::before {
  content: "" !important;
  position: absolute !important;
  left: -260px !important;
  bottom: -265px !important;
  width: 620px !important; height: 620px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.10) !important;
  background: transparent !important; pointer-events: none !important;
}
body.site-public .face#contacto .contact-maqueta-layout {
  position: relative !important;
  z-index: 2 !important;
  width: min(1440px, 100%) !important;
  max-width: 1440px !important;
  min-height: calc(100dvh - 120px) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(420px, .95fr) !important;
  grid-template-rows: auto auto !important;
  gap: 20px 34px !important;
  align-items: start !important;
}
body.site-public .face#contacto .contact-left,
body.site-public .face#contacto .contact-right { min-width: 0 !important; }

body.site-public .face#contacto .contact-label {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 14px !important;
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}
body.site-public .face#contacto .contact-label::after {
  content: "" !important;
  width: 260px !important;
  max-width: 28vw !important;
  height: 1px !important;
  background: rgba(201,155,67,.34) !important;
}
body.site-public .face#contacto .headline {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(60px, 5.8vw, 90px) !important;
  font-weight: 400 !important;
  line-height: .92 !important;
  letter-spacing: -.055em !important;
}
body.site-public .face#contacto .contact-gold {
  margin: 16px 0 0 !important;
  color: #b2802f !important;
  font-size: 19px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
}
body.site-public .face#contacto .contact-line-arrow {
  display: block !important;
  width: 62px !important;
  height: 2px !important;
  margin: 18px 0 18px !important;
  background: linear-gradient(90deg, #c99b43 0 86%, transparent 86% 100%) !important;
  position: relative !important;
}
body.site-public .face#contacto .contact-line-arrow::after {
  content: "→" !important;
  position: absolute !important;
  right: -2px !important;
  top: 50% !important;
  transform: translateY(-52%) !important;
  color: #c99b43 !important;
  font-size: 18px !important;
}
body.site-public .face#contacto .contact-copy {
  max-width: 450px !important;
  margin: 0 0 26px !important;
  color: #3e382f !important;
  font-size: 16px !important;
  line-height: 1.58 !important;
}

body.site-public .face#contacto .contact-showcase-card,
body.site-public .face#contacto .contact-location-card,
body.site-public .face#contacto .contact-form-panel,
body.site-public .face#contacto .contact-benefits-bar {
  border: 1px solid rgba(191,158,95,.22) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.045) !important;
}

body.site-public .face#contacto .contact-showcase-card {
  overflow: hidden !important;
}
body.site-public .face#contacto .contact-portrait-visual {
  position: relative !important;
  height: 340px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, #f5f3ee, #ece7de) !important;
}
body.site-public .face#contacto .contact-office-bg {
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 28% 18%, rgba(255,255,255,.96), transparent 8%),
    linear-gradient(90deg, transparent 0 17%, rgba(255,255,255,.34) 17% 18%, transparent 18% 68%, rgba(255,255,255,.5) 68% 69%, transparent 69% 100%),
    linear-gradient(180deg, #f6f4f0 0 24%, #e5e0d7 24% 100%) !important;
}
body.site-public .face#contacto .contact-person-shape {
  position: absolute !important;
  right: 32px !important;
  bottom: -2px !important;
  width: 300px !important;
  height: 310px !important;
  background:
    radial-gradient(circle at 50% 18%, #efc19f 0 13%, transparent 13.5%),
    radial-gradient(ellipse at 50% 11%, #121212 0 11%, transparent 11.5%),
    linear-gradient(180deg, transparent 0 28%, #ffffff 28.3% 45%, transparent 45.3%),
    linear-gradient(130deg, transparent 0 31%, #0e1d36 31.5% 49%, transparent 49.3%),
    linear-gradient(228deg, transparent 0 33%, #10213e 33.4% 50%, transparent 50.3%),
    linear-gradient(180deg, transparent 0 28%, #14294b 28.5% 100%) !important;
  clip-path: polygon(36% 0, 64% 0, 70% 8%, 71% 22%, 82% 34%, 86% 55%, 94% 72%, 100% 100%, 0 100%, 7% 71%, 14% 54%, 18% 34%, 29% 22%, 30% 8%) !important;
  filter: drop-shadow(0 16px 28px rgba(0,0,0,.16)) !important;
}
body.site-public .face#contacto .contact-access-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}
body.site-public .face#contacto .contact-access-row article {
  min-height: 128px !important;
  padding: 16px 22px 18px !important;
  border-left: 1px solid rgba(191,158,95,.20) !important;
}
body.site-public .face#contacto .contact-access-row article:first-child { border-left: 0 !important; }
body.site-public .face#contacto .contact-access-row i {
  display: inline-grid !important;
  place-items: center !important;
  width: 42px !important; height: 42px !important;
  margin-bottom: 10px !important;
  color: #bd8429 !important;
  font-style: normal !important;
  font-size: 26px !important;
  line-height: 1 !important;
}
body.site-public .face#contacto .contact-access-row strong {
  display: block !important;
  margin-bottom: 6px !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 16px !important;
  line-height: 1.1 !important;
}
body.site-public .face#contacto .contact-access-row p {
  margin: 0 0 14px !important;
  color: #4e463b !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}
body.site-public .face#contacto .mini-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 150px !important;
  height: 34px !important;
  padding: 0 14px !important;
  border-radius: 4px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
}
body.site-public .face#contacto .contact-inline-data {
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
}

body.site-public .face#contacto .contact-location-card {
  margin-top: 14px !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 1.1fr) minmax(0, 1fr) !important;
  overflow: hidden !important;
}
body.site-public .face#contacto .contact-map-box {
  min-height: 140px !important;
  position: relative !important;
  background:
    linear-gradient(0deg, rgba(255,255,255,.72), rgba(255,255,255,.72)),
    linear-gradient(90deg, rgba(210,205,196,.55) 0 1px, transparent 1px 56px),
    linear-gradient(0deg, rgba(210,205,196,.55) 0 1px, transparent 1px 44px),
    linear-gradient(135deg, #f1eee8, #e8e3d9) !important;
}
body.site-public .face#contacto .map-pin {
  position: absolute !important;
  left: 42% !important;
  top: 46% !important;
  transform: translate(-50%, -50%) !important;
  color: #c58a2e !important;
  font-size: 38px !important;
  line-height: 1 !important;
}
body.site-public .face#contacto .contact-location-copy {
  padding: 18px 22px !important;
}
body.site-public .face#contacto .contact-location-copy h3 {
  margin: 0 0 10px !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 26px !important;
  line-height: 1.1 !important;
}
body.site-public .face#contacto .contact-location-copy p {
  margin: 0 0 8px !important;
  color: #4b443b !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}
body.site-public .face#contacto .location-divider {
  display: block !important;
  width: 16px !important;
  height: 2px !important;
  margin: 10px 0 12px !important;
  background: #c99b43 !important;
}

body.site-public .face#contacto .contact-form-panel {
  padding: 24px 28px 20px !important;
}
body.site-public .face#contacto .contact-form-panel h3 {
  margin: 0 0 18px !important;
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
}
body.site-public .face#contacto .contact-form-panel h3::after {
  content: "" !important;
  display: block !important;
  width: 60px !important;
  height: 2px !important;
  margin-top: 12px !important;
  background: #c99b43 !important;
}
body.site-public .face#contacto .contact-form-maqueta {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px 22px !important;
}
body.site-public .face#contacto .contact-form-maqueta .field {
  display: block !important;
}
body.site-public .face#contacto .contact-form-maqueta .field.full {
  grid-column: 1 / -1 !important;
}
body.site-public .face#contacto .contact-form-maqueta label {
  display: block !important;
  margin-bottom: 7px !important;
  color: #23201b !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}
body.site-public .face#contacto .contact-form-maqueta input,
body.site-public .face#contacto .contact-form-maqueta select,
body.site-public .face#contacto .contact-form-maqueta textarea {
  width: 100% !important;
  border: 1px solid rgba(191,158,95,.18) !important;
  border-radius: 5px !important;
  background: rgba(255,255,255,.84) !important;
  color: #15100a !important;
  font-size: 13px !important;
  box-sizing: border-box !important;
  outline: none !important;
}
body.site-public .face#contacto .contact-form-maqueta input,
body.site-public .face#contacto .contact-form-maqueta select {
  height: 42px !important;
  padding: 0 14px !important;
}
body.site-public .face#contacto .contact-form-maqueta textarea {
  min-height: 92px !important;
  padding: 14px !important;
  resize: vertical !important;
}
body.site-public .face#contacto .contact-submit-btn {
  grid-column: 1 / -1 !important;
  height: 42px !important;
  margin-top: 2px !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .05em !important;
  cursor: pointer !important;
}
body.site-public .face#contacto .contact-form-trust {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin-top: 20px !important;
}
body.site-public .face#contacto .contact-form-trust article {
  padding: 0 14px !important;
  text-align: center !important;
  border-left: 1px solid rgba(191,158,95,.22) !important;
}
body.site-public .face#contacto .contact-form-trust article:first-child { border-left: 0 !important; }
body.site-public .face#contacto .contact-form-trust i {
  display: block !important;
  margin: 0 auto 8px !important;
  color: #bd8429 !important;
  font-style: normal !important;
  font-size: 22px !important;
  line-height: 1 !important;
}
body.site-public .face#contacto .contact-form-trust strong {
  display: block !important;
  margin-bottom: 5px !important;
  color: #15100a !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}
body.site-public .face#contacto .contact-form-trust p {
  margin: 0 !important;
  color: #4b443b !important;
  font-size: 10.6px !important;
  line-height: 1.35 !important;
}

body.site-public .face#contacto .contact-benefits-bar {
  grid-column: 1 / -1 !important;
  min-height: 80px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  overflow: hidden !important;
}
body.site-public .face#contacto .contact-benefits-bar article {
  min-height: 80px !important;
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 24px !important;
  border-left: 1px solid rgba(191,158,95,.22) !important;
}
body.site-public .face#contacto .contact-benefits-bar article:first-child { border-left: 0 !important; }
body.site-public .face#contacto .contact-benefits-bar i {
  color: #bd8429 !important;
  font-style: normal !important;
  font-size: 31px !important;
  line-height: 1 !important;
}
body.site-public .face#contacto .contact-benefits-bar strong {
  display: block !important;
  margin-bottom: 4px !important;
  color: #15100a !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
}
body.site-public .face#contacto .contact-benefits-bar p {
  margin: 0 !important;
  color: #4b443b !important;
  font-size: 10.8px !important;
  line-height: 1.35 !important;
}

/* compactar pantallas bajas */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#contacto { padding-top: 78px !important; padding-bottom: 12px !important; }
  body.site-public .face#contacto .headline { font-size: clamp(48px, 4.8vw, 70px) !important; }
  body.site-public .face#contacto .contact-gold { font-size: 16px !important; margin-top: 12px !important; }
  body.site-public .face#contacto .contact-copy { font-size: 14px !important; line-height: 1.42 !important; margin-bottom: 18px !important; }
  body.site-public .face#contacto .contact-portrait-visual { height: 250px !important; }
  body.site-public .face#contacto .contact-person-shape { width: 230px !important; height: 230px !important; }
  body.site-public .face#contacto .contact-access-row article { min-height: 102px !important; padding: 12px 16px 14px !important; }
  body.site-public .face#contacto .contact-access-row strong { font-size: 14px !important; }
  body.site-public .face#contacto .contact-access-row p { font-size: 10.6px !important; margin-bottom: 10px !important; }
  body.site-public .face#contacto .contact-location-card { margin-top: 10px !important; }
  body.site-public .face#contacto .contact-map-box { min-height: 108px !important; }
  body.site-public .face#contacto .contact-location-copy h3 { font-size: 22px !important; }
  body.site-public .face#contacto .contact-location-copy p { font-size: 12px !important; line-height: 1.4 !important; }
  body.site-public .face#contacto .contact-form-panel { padding: 18px 20px 16px !important; }
  body.site-public .face#contacto .contact-form-maqueta { gap: 12px 16px !important; }
  body.site-public .face#contacto .contact-form-maqueta input,
  body.site-public .face#contacto .contact-form-maqueta select { height: 38px !important; }
  body.site-public .face#contacto .contact-form-maqueta textarea { min-height: 74px !important; }
  body.site-public .face#contacto .contact-submit-btn { height: 38px !important; font-size: 11px !important; }
  body.site-public .face#contacto .contact-form-trust { margin-top: 14px !important; }
  body.site-public .face#contacto .contact-form-trust strong { font-size: 10px !important; }
  body.site-public .face#contacto .contact-form-trust p { font-size: 9.2px !important; }
  body.site-public .face#contacto .contact-benefits-bar { min-height: 60px !important; }
  body.site-public .face#contacto .contact-benefits-bar article { min-height: 60px !important; padding-inline: 14px !important; grid-template-columns: 34px minmax(0, 1fr) !important; }
  body.site-public .face#contacto .contact-benefits-bar i { font-size: 24px !important; }
  body.site-public .face#contacto .contact-benefits-bar strong { font-size: 10px !important; }
  body.site-public .face#contacto .contact-benefits-bar p { font-size: 9px !important; }
}

@media (max-width: 1280px) {
  body.site-public .face#contacto .contact-maqueta-layout {
    grid-template-columns: minmax(0, 1fr) minmax(370px, .9fr) !important;
    gap: 18px 24px !important;
  }
  body.site-public .face#contacto .contact-benefits-bar article { padding-inline: 16px !important; }
}

@media (max-width: 1100px) {
  body.site-public .face#contacto {
    padding: 104px 28px 28px !important;
  }
  body.site-public .face#contacto .contact-maqueta-layout {
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#contacto .contact-right { order: 2 !important; }
  body.site-public .face#contacto .contact-left { order: 1 !important; }
  body.site-public .face#contacto .contact-benefits-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.site-public .face#contacto .contact-benefits-bar article {
    border-left: 0 !important;
    border-top: 1px solid rgba(191,158,95,.22) !important;
  }
  body.site-public .face#contacto .contact-benefits-bar article:nth-child(1),
  body.site-public .face#contacto .contact-benefits-bar article:nth-child(2) {
    border-top: 0 !important;
  }
  body.site-public .face#contacto .contact-benefits-bar article:nth-child(even) {
    border-left: 1px solid rgba(191,158,95,.22) !important;
  }
}

@media (max-width: 760px) {
  body.site-public .face#contacto {
    padding: 100px 16px 24px !important;
  }
  body.site-public .face#contacto .headline {
    font-size: clamp(42px, 13vw, 60px) !important;
  }
  body.site-public .face#contacto .contact-label::after {
    width: 90px !important;
  }
  body.site-public .face#contacto .contact-copy {
    max-width: none !important;
    font-size: 14.5px !important;
  }
  body.site-public .face#contacto .contact-portrait-visual {
    height: 220px !important;
  }
  body.site-public .face#contacto .contact-person-shape {
    right: 12px !important;
    width: 180px !important;
    height: 190px !important;
  }
  body.site-public .face#contacto .contact-access-row,
  body.site-public .face#contacto .contact-form-maqueta,
  body.site-public .face#contacto .contact-form-trust,
  body.site-public .face#contacto .contact-benefits-bar,
  body.site-public .face#contacto .contact-location-card {
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#contacto .contact-access-row article,
  body.site-public .face#contacto .contact-form-trust article,
  body.site-public .face#contacto .contact-benefits-bar article {
    border-left: 0 !important;
    border-top: 1px solid rgba(191,158,95,.22) !important;
  }
  body.site-public .face#contacto .contact-access-row article:first-child,
  body.site-public .face#contacto .contact-form-trust article:first-child,
  body.site-public .face#contacto .contact-benefits-bar article:first-child {
    border-top: 0 !important;
  }
  body.site-public .face#contacto .contact-map-box {
    min-height: 120px !important;
  }
}


/* =========================================================
   PARCHE - USAR IMÁGENES REALES PROPORCIONADAS
   1) Skyline dorado -> portada/inicio
   2) Gilberth recortado -> sección Sobre Gilberth
   ========================================================= */

/* HOME / INICIO */
body.site-public .face#inicio .city-card {
  position: relative !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background:
    linear-gradient(90deg, rgba(4,4,5,0) 0%, rgba(4,4,5,.03) 22%, rgba(4,4,5,.10) 100%),
    url("../img/custom/hero-skyline-gca.png") center center / cover no-repeat !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

body.site-public .face#inicio .city-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(4,4,5,1) 0%, rgba(4,4,5,.82) 10%, rgba(4,4,5,.18) 32%, rgba(4,4,5,.02) 50%, rgba(4,4,5,0) 100%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

body.site-public .face#inicio .city-card::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 62% !important;
  height: 70% !important;
  background:
    radial-gradient(circle at 0% 0%, transparent 0 36%, rgba(212,154,52,.00) 36.2%),
    repeating-radial-gradient(circle at 0% 0%, rgba(212,154,52,0) 0 28px, rgba(212,154,52,.88) 29px 31px) !important;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.95), rgba(0,0,0,.65) 72%, transparent);
  -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,.95), rgba(0,0,0,.65) 72%, transparent);
  opacity: .82 !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

body.site-public .face#inicio .city-card .building,
body.site-public .face#inicio .city-card .gold-road {
  display: none !important;
}

/* Ajuste del texto para convivir mejor con la imagen real */
body.site-public .face#inicio .home-copy {
  position: relative !important;
  z-index: 5 !important;
}

/* SOBRE GILBERTH */
body.site-public .face#sobre .sobre-photo-frame {
  position: absolute !important;
  inset: 58px 0 0 0 !important;
  min-height: 590px !important;
  overflow: visible !important;
}

body.site-public .face#sobre .sobre-photo-person {
  position: absolute !important;
  z-index: 2 !important;
  left: 26px !important;
  bottom: 0 !important;
  width: min(450px, 92%) !important;
  height: min(620px, 74dvh) !important;
  background: url("../img/custom/gilberth-cutout.png") center bottom / contain no-repeat !important;
  clip-path: none !important;
  filter: drop-shadow(0 20px 28px rgba(0,0,0,.14)) !important;
}

body.site-public .face#sobre .sobre-photo-person::before,
body.site-public .face#sobre .sobre-photo-person::after {
  display: none !important;
}

body.site-public .face#sobre .sobre-photo-frame::before {
  left: -6px !important;
  top: 54px !important;
  width: min(540px, 100%) !important;
  height: min(540px, 68dvh) !important;
}

/* Compresión para pantallas bajas */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#inicio .city-card {
    background-position: 66% center !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: min(390px, 86%) !important;
    height: min(520px, 68dvh) !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#inicio .city-card {
    min-height: 320px !important;
    background-position: center center !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(410px, 88%) !important;
    height: 520px !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#inicio .city-card {
    min-height: 250px !important;
    background-position: 62% center !important;
  }

  body.site-public .face#inicio .city-card::after {
    width: 88% !important;
    height: 56% !important;
    opacity: .72 !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: min(330px, 86%) !important;
    height: 430px !important;
  }
}


/* =========================================================
   PARCHE FINAL - SECCIONES INDEPENDIENTES
   - Página fija; solo scrollea la sección activa.
   - No se muestra la siguiente sección al desplazar.
   - Cada sección sigue siendo un DIV independiente.
   ========================================================= */
html,
body.site-public {
  height: 100% !important;
  overflow: hidden !important;
}

body.site-public .site-stage[data-screen-root] {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100dvh !important;
  overflow: hidden !important;
}

body.site-public .site-stage[data-screen-root] > .face {
  position: absolute !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100dvh !important;
  min-height: 100dvh !important;
  max-height: 100dvh !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-gutter: stable !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: none !important;
}

body.site-public .site-stage[data-screen-root] > .face.is-active {
  z-index: 5 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

body.site-public .site-stage[data-screen-root] > .face:not(.is-active) {
  z-index: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Scrollbar visible dentro de cada sección activa */
body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar {
  width: 10px !important;
}

body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar-track {
  background: rgba(5,5,5,.10) !important;
}

body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar-thumb {
  border-radius: 999px !important;
  background: linear-gradient(180deg, #d8ba73, #b47729) !important;
}

body.site-public .site-stage[data-screen-root] > .face {
  scrollbar-width: thin !important;
  scrollbar-color: #b47729 rgba(5,5,5,.10) !important;
}

/* Cada sección puede crecer internamente, pero no empuja a otra sección */
body.site-public .site-stage[data-screen-root] > .face > .face-inner {
  height: auto !important;
}

/* Numeritos y flechas siguen siendo clic manual, no auto-scroll */
body.site-public .screen-dots,
body.site-public .screen-arrows,
body.site-public .topbar {
  z-index: 200 !important;
}

@media (max-width: 1100px) {
  body.site-public .site-stage[data-screen-root] {
    height: 100dvh !important;
  }

  body.site-public .site-stage[data-screen-root] > .face {
    height: 100dvh !important;
    min-height: 100dvh !important;
    max-height: 100dvh !important;
  }
}


/* =========================================================
   INICIO FINAL - PORTADA IDÉNTICA A LA REFERENCIA
   ========================================================= */

/* La portada no debe generar scroll; todo encaja en la primera pantalla */
body.site-public .face#inicio {
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
  color: #fff !important;
}

/* Header oscuro transparente sobre la portada */
body.site-public .face#inicio.is-active ~ * {
  pointer-events: auto;
}

body.site-public .topbar:not(.is-light) {
  background: rgba(2,2,2,.76) !important;
  border-bottom: 1px solid rgba(216,186,115,.08) !important;
  backdrop-filter: blur(10px) !important;
}

body.site-public .face#inicio .face-inner.two-col {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: calc(100dvh - 96px) !important;
  min-height: calc(100dvh - 96px) !important;
  max-height: calc(100dvh - 96px) !important;
  margin: 0 !important;
  padding: 98px 48px 0 !important;
  display: block !important;
  overflow: hidden !important;
}

/* Imagen real del skyline como fondo absoluto */
body.site-public .face#inicio .city-card {
  position: absolute !important;
  z-index: 0 !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  display: block !important;
  background:
    linear-gradient(90deg,
      rgba(4,4,5,.98) 0%,
      rgba(4,4,5,.94) 10%,
      rgba(4,4,5,.68) 28%,
      rgba(4,4,5,.22) 45%,
      rgba(4,4,5,.02) 70%,
      rgba(4,4,5,0) 100%),
    linear-gradient(180deg,
      rgba(0,0,0,.28) 0%,
      rgba(0,0,0,.10) 45%,
      rgba(0,0,0,.60) 100%),
    url("../img/custom/hero-skyline-gca.png") center center / cover no-repeat !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  transform: none !important;
}

/* curvas doradas superiores como la maqueta */
body.site-public .face#inicio .city-card::after {
  content: "" !important;
  position: absolute !important;
  z-index: 2 !important;
  left: 38% !important;
  top: -37% !important;
  width: 560px !important;
  height: 560px !important;
  border-radius: 50% !important;
  background: transparent !important;
  border: 1px solid rgba(198,139,42,.42) !important;
  box-shadow:
    0 0 0 15px transparent,
    0 0 0 26px rgba(198,139,42,.34),
    0 0 0 46px transparent,
    0 0 0 57px rgba(198,139,42,.29),
    0 0 0 78px transparent,
    0 0 0 89px rgba(198,139,42,.25),
    0 0 0 111px transparent,
    0 0 0 122px rgba(198,139,42,.20),
    0 0 0 144px transparent,
    0 0 0 155px rgba(198,139,42,.16) !important;
  opacity: .60 !important;
  pointer-events: none !important;
}

body.site-public .face#inicio .city-card::before {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg,
      #050505 0%,
      rgba(5,5,5,.94) 14%,
      rgba(5,5,5,.70) 31%,
      rgba(5,5,5,.16) 52%,
      rgba(5,5,5,0) 100%),
    radial-gradient(circle at 51% 61%, rgba(216,186,115,.12), transparent 16%) !important;
  pointer-events: none !important;
}

body.site-public .face#inicio .city-card .building,
body.site-public .face#inicio .city-card .gold-road {
  display: none !important;
}

/* Contenido principal */
body.site-public .face#inicio .home-copy {
  position: relative !important;
  z-index: 5 !important;
  width: min(660px, 47vw) !important;
  max-width: 660px !important;
  min-height: calc(100dvh - 250px) !important;
  padding-top: 22px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body.site-public .face#inicio .kicker {
  justify-content: flex-start !important;
  gap: 14px !important;
  margin: 0 0 20px !important;
  color: #d8ba73 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
}

body.site-public .face#inicio .kicker::before {
  width: 35px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#inicio .kicker::after {
  display: none !important;
}

body.site-public .face#inicio .home-headline {
  max-width: 650px !important;
  margin: 0 !important;
  color: #f8f3ea !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(56px, 5.45vw, 78px) !important;
  font-weight: 400 !important;
  line-height: .94 !important;
  letter-spacing: -.062em !important;
  text-shadow: 0 4px 18px rgba(0,0,0,.38) !important;
}

body.site-public .face#inicio .home-headline span {
  color: #d8ba73 !important;
}

body.site-public .face#inicio .sub {
  position: relative !important;
  max-width: 620px !important;
  margin: 14px 0 0 40px !important;
  color: rgba(255,248,235,.84) !important;
  font-size: clamp(16px, 1.25vw, 20px) !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}

body.site-public .face#inicio .sub::before {
  content: "" !important;
  position: absolute !important;
  left: -40px !important;
  top: 50% !important;
  width: 30px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

/* Botones */
body.site-public .face#inicio .home-actions {
  margin-top: 34px !important;
  display: flex !important;
  gap: 18px !important;
  flex-wrap: nowrap !important;
}

body.site-public .face#inicio .home-actions .btn {
  min-width: 210px !important;
  height: 57px !important;
  min-height: 57px !important;
  padding: 0 28px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 11px !important;
  letter-spacing: .075em !important;
  font-weight: 950 !important;
}

body.site-public .face#inicio .home-actions .btn-gold {
  background: linear-gradient(135deg, #f0d183, #c99034 64%, #a56d25) !important;
  color: #130f09 !important;
  border-color: transparent !important;
}

body.site-public .face#inicio .home-actions .btn-ghost {
  color: #d8ba73 !important;
  border: 1px solid rgba(216,186,115,.45) !important;
  background: rgba(0,0,0,.12) !important;
}

/* Beneficios debajo de botones */
body.site-public .face#inicio .mini-proofs {
  position: relative !important;
  z-index: 5 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 48px 0 0 !important;
  max-width: 820px !important;
}

body.site-public .face#inicio .mini-proofs article {
  min-height: 68px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  column-gap: 12px !important;
  padding: 0 22px !important;
  border-left: 1px solid rgba(216,186,115,.45) !important;
  color: rgba(255,255,255,.86) !important;
}

body.site-public .face#inicio .mini-proofs article:first-child {
  padding-left: 0 !important;
  border-left: 0 !important;
}

body.site-public .face#inicio .mini-proofs i {
  grid-row: 1 / span 2 !important;
  width: 36px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
  color: #d8ba73 !important;
  font-style: normal !important;
  font-size: 31px !important;
  line-height: 1 !important;
}

body.site-public .face#inicio .mini-proofs strong {
  display: block !important;
  margin: 0 0 7px !important;
  color: #fff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

body.site-public .face#inicio .mini-proofs span {
  display: block !important;
  color: rgba(255,255,255,.72) !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

/* Footer de logos */
body.site-public .face#inicio .logo-footer {
  position: absolute !important;
  z-index: 8 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 96px !important;
  min-height: 96px !important;
  max-height: 96px !important;
  margin: 0 !important;
  padding: 0 58px !important;
  display: flex !important;
  align-items: center !important;
  background: rgba(8,8,8,.88) !important;
  border-top: 1px solid rgba(216,186,115,.10) !important;
  box-shadow: 0 -8px 24px rgba(0,0,0,.28) !important;
}

body.site-public .face#inicio .logo-footer::before {
  content: "CON LA CONFIANZA DE" !important;
  flex: 0 0 185px !important;
  color: #d8ba73 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
}

body.site-public .face#inicio .logo-footer::after {
  content: "" !important;
  position: absolute !important;
  left: 58px !important;
  top: 54px !important;
  width: 42px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#inicio .logo-footer img {
  width: min(930px, calc(100vw - 320px)) !important;
  height: 58px !important;
  object-fit: contain !important;
  filter: grayscale(1) brightness(1.6) contrast(.92) opacity(.84) !important;
}

/* Evita que el scroll por rueda cambie la portada */
body.site-public .face#inicio.is-active {
  overflow: hidden !important;
}

/* Ajuste escritorio intermedio */
@media (min-width: 1101px) and (max-width: 1320px) {
  body.site-public .face#inicio .face-inner.two-col {
    padding-left: 38px !important;
  }

  body.site-public .face#inicio .home-copy {
    width: min(620px, 50vw) !important;
  }

  body.site-public .face#inicio .home-headline {
    font-size: clamp(50px, 5vw, 68px) !important;
  }

  body.site-public .face#inicio .home-actions .btn {
    min-width: 190px !important;
    padding-inline: 20px !important;
  }

  body.site-public .face#inicio .mini-proofs {
    max-width: 760px !important;
  }
}

/* Pantallas bajas */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#inicio .face-inner.two-col {
    height: calc(100dvh - 86px) !important;
    min-height: calc(100dvh - 86px) !important;
    max-height: calc(100dvh - 86px) !important;
    padding-top: 82px !important;
  }

  body.site-public .face#inicio .home-copy {
    min-height: calc(100dvh - 210px) !important;
    padding-top: 0 !important;
  }

  body.site-public .face#inicio .home-headline {
    font-size: clamp(48px, 4.8vw, 66px) !important;
  }

  body.site-public .face#inicio .home-actions {
    margin-top: 28px !important;
  }

  body.site-public .face#inicio .home-actions .btn {
    height: 49px !important;
    min-height: 49px !important;
  }

  body.site-public .face#inicio .mini-proofs {
    margin-top: 36px !important;
  }

  body.site-public .face#inicio .mini-proofs article {
    min-height: 56px !important;
  }

  body.site-public .face#inicio .logo-footer {
    height: 86px !important;
    min-height: 86px !important;
    max-height: 86px !important;
  }

  body.site-public .face#inicio .logo-footer img {
    height: 52px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#inicio {
    overflow-y: auto !important;
  }

  body.site-public .face#inicio .face-inner.two-col {
    height: auto !important;
    min-height: calc(100dvh - 90px) !important;
    max-height: none !important;
    padding: 108px 26px 116px !important;
  }

  body.site-public .face#inicio .city-card {
    background-position: 58% center !important;
  }

  body.site-public .face#inicio .home-copy {
    width: min(690px, 100%) !important;
    min-height: calc(100dvh - 250px) !important;
  }

  body.site-public .face#inicio .home-headline {
    font-size: clamp(44px, 9vw, 72px) !important;
  }

  body.site-public .face#inicio .home-actions {
    flex-wrap: wrap !important;
  }

  body.site-public .face#inicio .mini-proofs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 0 !important;
  }

  body.site-public .face#inicio .logo-footer {
    height: 90px !important;
    padding: 0 24px !important;
  }

  body.site-public .face#inicio .logo-footer::before,
  body.site-public .face#inicio .logo-footer::after {
    display: none !important;
  }

  body.site-public .face#inicio .logo-footer img {
    width: 100% !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#inicio .face-inner.two-col {
    padding: 96px 18px 110px !important;
  }

  body.site-public .face#inicio .city-card {
    background-position: 65% center !important;
  }

  body.site-public .face#inicio .city-card::before {
    background:
      linear-gradient(90deg, rgba(5,5,5,.97) 0%, rgba(5,5,5,.86) 42%, rgba(5,5,5,.28) 100%),
      linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.78)) !important;
  }

  body.site-public .face#inicio .home-headline {
    font-size: clamp(40px, 13vw, 58px) !important;
  }

  body.site-public .face#inicio .sub {
    margin-left: 28px !important;
    font-size: 15px !important;
  }

  body.site-public .face#inicio .sub::before {
    left: -28px !important;
    width: 20px !important;
  }

  body.site-public .face#inicio .home-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.site-public .face#inicio .home-actions .btn {
    width: 100% !important;
    min-width: 0 !important;
  }

  body.site-public .face#inicio .mini-proofs {
    grid-template-columns: 1fr !important;
    margin-top: 28px !important;
  }

  body.site-public .face#inicio .mini-proofs article {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  body.site-public .face#inicio .logo-footer {
    height: 82px !important;
  }
}


/* =========================================================
   SECTOR PÚBLICO PERUANO - COMO MAQUETA
   ========================================================= */

body.site-public .face#sector {
  padding: clamp(86px, 8.3dvh, 104px) clamp(34px, 4.8vw, 86px) 18px !important;
  color: #15100a !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -8% 100%, rgba(188,127,33,.080), transparent 22%) !important,
    radial-gradient(circle at 105% -16%, rgba(188,127,33,.080), transparent 22%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f8f6ef 100%) !important;
}

body.site-public .face#sector::before {
  content: "" !important;
  position: absolute !important;
  left: -260px !important;
  bottom: -300px !important;
  width: 640px !important;
  height: 640px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.09) !important;
  box-shadow:
    0 0 0 18px transparent,
    0 0 0 28px rgba(180,119,41,.035),
    0 0 0 52px transparent,
    0 0 0 63px rgba(180,119,41,.030),
    0 0 0 90px transparent,
    0 0 0 101px rgba(180,119,41,.025) !important;
  pointer-events: none !important;
  background: transparent !important;
}

body.site-public .face#sector::after {
  content: "" !important;
  position: absolute !important;
  right: -260px !important;
  top: -245px !important;
  width: 620px !important;
  height: 620px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.10) !important;
  box-shadow:
    0 0 0 18px transparent,
    0 0 0 28px rgba(180,119,41,.035),
    0 0 0 52px transparent,
    0 0 0 63px rgba(180,119,41,.030),
    0 0 0 90px transparent,
    0 0 0 101px rgba(180,119,41,.025) !important;
  pointer-events: none !important;
  background: transparent !important;
}

body.site-public .face#sector .sector-publico-layout {
  position: relative !important;
  z-index: 2 !important;
  width: min(1440px, 100%) !important;
  max-width: 1440px !important;
  min-height: calc(100dvh - 116px) !important;
  height: auto !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-rows: auto auto auto auto !important;
  gap: 0 !important;
  align-content: start !important;
  text-align: left !important;
}

body.site-public .face#sector .sector-hero {
  position: relative !important;
  min-height: 330px !important;
  display: grid !important;
  grid-template-columns: minmax(560px, 650px) minmax(0, 1fr) !important;
  align-items: start !important;
  overflow: visible !important;
}

body.site-public .face#sector .sector-copy {
  position: relative !important;
  z-index: 3 !important;
  padding-top: 18px !important;
}

body.site-public .face#sector .headline {
  margin: 0 !important;
  max-width: 680px !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(58px, 5.4vw, 88px) !important;
  font-weight: 400 !important;
  line-height: .92 !important;
  letter-spacing: -.060em !important;
}

body.site-public .face#sector .sector-title-line {
  position: relative !important;
  display: block !important;
  width: 360px !important;
  height: 1px !important;
  margin: 28px 0 22px !important;
  background: rgba(188,127,33,.55) !important;
}

body.site-public .face#sector .sector-title-line::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 8px !important;
  height: 8px !important;
  background: #c99b43 !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

body.site-public .face#sector .sector-gold {
  margin: 0 0 13px !important;
  color: #a56d25 !important;
  font-size: 20px !important;
  line-height: 1.3 !important;
  font-weight: 500 !important;
  letter-spacing: .015em !important;
}

body.site-public .face#sector .sector-sub {
  max-width: 690px !important;
  margin: 0 !important;
  color: #3e382f !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Visual derecho: mapa Perú + fachada institucional */
body.site-public .face#sector .sector-visual {
  position: absolute !important;
  z-index: 1 !important;
  right: -86px !important;
  top: -82px !important;
  width: min(830px, 58vw) !important;
  height: 470px !important;
  pointer-events: none !important;
}

body.site-public .face#sector .sector-visual::before {
  content: "" !important;
  position: absolute !important;
  left: 10% !important;
  top: 3% !important;
  width: 360px !important;
  height: 350px !important;
  opacity: .46 !important;
  background:
    radial-gradient(circle, #b9b5ac 1px, transparent 1.8px) 0 0 / 8px 8px !important;
  clip-path: polygon(44% 0, 58% 7%, 61% 17%, 69% 23%, 60% 34%, 66% 45%, 58% 56%, 61% 68%, 50% 83%, 47% 100%, 35% 90%, 32% 73%, 23% 63%, 30% 52%, 22% 41%, 29% 31%, 24% 19%, 35% 10%) !important;
}

body.site-public .face#sector .peru-map-dots span {
  position: absolute !important;
  width: 14px !important;
  height: 14px !important;
  border: 3px solid #bd8429 !important;
  border-radius: 50% !important;
  background: #fdfbf7 !important;
  z-index: 3 !important;
}

body.site-public .face#sector .peru-map-dots span:nth-child(1) { left: 28%; top: 14%; }
body.site-public .face#sector .peru-map-dots span:nth-child(2) { left: 35%; top: 31%; }
body.site-public .face#sector .peru-map-dots span:nth-child(3) { left: 43%; top: 43%; }
body.site-public .face#sector .peru-map-dots span:nth-child(4) { left: 39%; top: 56%; }

body.site-public .face#sector .congress-building {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 650px !important;
  max-width: 88% !important;
  height: 390px !important;
  opacity: .88 !important;
  background:
    linear-gradient(90deg, rgba(253,251,247,1) 0%, rgba(253,251,247,.78) 16%, rgba(253,251,247,.18) 35%, rgba(253,251,247,0) 52%),
    linear-gradient(180deg, rgba(255,255,255,.15), rgba(255,255,255,.85) 86%, #fdfbf7 100%),
    linear-gradient(90deg, transparent 0 15%, rgba(170,160,142,.45) 15.3% 15.8%, transparent 16% 28%, rgba(170,160,142,.45) 28.3% 28.8%, transparent 29% 42%, rgba(170,160,142,.45) 42.3% 42.8%, transparent 43% 56%, rgba(170,160,142,.45) 56.3% 56.8%, transparent 57% 70%, rgba(170,160,142,.45) 70.3% 70.8%, transparent 71% 100%),
    linear-gradient(180deg, #ded8c9 0 10%, #f0ece4 10% 25%, #d5cbb8 25% 29%, #eee9dd 29% 80%, #d0c5b0 80% 100%) !important;
  clip-path: polygon(0 44%, 12% 37%, 12% 28%, 20% 25%, 20% 18%, 28% 15%, 37% 22%, 50% 17%, 58% 6%, 65% 18%, 73% 20%, 73% 26%, 84% 30%, 84% 38%, 100% 46%, 100% 100%, 0 100%) !important;
}

body.site-public .face#sector .congress-building::before {
  content: "CONGRESO" !important;
  position: absolute !important;
  top: 115px !important;
  right: 210px !important;
  color: rgba(70,60,46,.55) !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
  transform: rotate(-2deg) !important;
}

body.site-public .face#sector .congress-building::after {
  content: "" !important;
  position: absolute !important;
  left: 18% !important;
  right: 6% !important;
  bottom: 0 !important;
  height: 46% !important;
  background:
    repeating-linear-gradient(90deg, transparent 0 27px, rgba(160,150,134,.55) 28px 32px, transparent 33px 60px),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(120,108,86,.18)) !important;
  opacity: .75 !important;
}

body.site-public .face#sector .flag {
  position: absolute !important;
  right: 230px !important;
  top: -42px !important;
  width: 46px !important;
  height: 70px !important;
  border-left: 2px solid rgba(110,95,72,.85) !important;
}

body.site-public .face#sector .flag::before {
  content: "" !important;
  position: absolute !important;
  left: 2px !important;
  top: 0 !important;
  width: 44px !important;
  height: 28px !important;
  background: linear-gradient(90deg, #c61822 0 33%, #fff 33% 66%, #c61822 66% 100%) !important;
  box-shadow: 0 2px 4px rgba(0,0,0,.12) !important;
}

/* Título intermedio */
body.site-public .face#sector .sector-section-title {
  position: relative !important;
  z-index: 4 !important;
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 22px !important;
  width: min(600px, 100%) !important;
  margin: -12px auto 17px !important;
  color: #a56d25 !important;
}

body.site-public .face#sector .sector-section-title span {
  height: 1px !important;
  background: rgba(201,155,67,.38) !important;
}

body.site-public .face#sector .sector-section-title strong {
  color: #a56d25 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Cards */
body.site-public .face#sector .sector-cards-maqueta {
  position: relative !important;
  z-index: 4 !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 22px !important;
  width: 100% !important;
}

body.site-public .face#sector .sector-cards-maqueta article {
  position: relative !important;
  min-height: 205px !important;
  padding: 24px 26px 22px !important;
  border: 1px solid rgba(191,158,95,.28) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.74) !important;
  box-shadow: 0 6px 18px rgba(70,52,23,.035) !important;
  cursor: pointer !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease !important;
}

body.site-public .face#sector .sector-cards-maqueta article:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(191,158,95,.48) !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: 0 14px 30px rgba(70,52,23,.08) !important;
}

body.site-public .face#sector .sector-cards-maqueta i {
  display: block !important;
  margin: 0 0 18px !important;
  color: #bd8429 !important;
  font-style: normal !important;
  font-size: 43px !important;
  line-height: 1 !important;
}

body.site-public .face#sector .sector-cards-maqueta h3 {
  max-width: 190px !important;
  min-height: 44px !important;
  margin: 0 !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  letter-spacing: .015em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sector .sector-card-line {
  display: block !important;
  width: 36px !important;
  height: 1px !important;
  margin: 14px 0 18px !important;
  background: #c99b43 !important;
}

body.site-public .face#sector .sector-cards-maqueta p {
  margin: 0 !important;
  color: #433b33 !important;
  font-size: 13.5px !important;
  line-height: 1.58 !important;
}

body.site-public .face#sector .sector-arrow {
  position: absolute !important;
  right: 22px !important;
  bottom: 18px !important;
  border: 0 !important;
  background: transparent !important;
  color: #bd8429 !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

/* Parte inferior */
body.site-public .face#sector .sector-bottom-row {
  position: relative !important;
  z-index: 4 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 370px) !important;
  gap: 34px !important;
  align-items: stretch !important;
  margin-top: 30px !important;
}

body.site-public .face#sector .sector-impact-bar {
  min-height: 88px !important;
  display: grid !important;
  grid-template-columns: 155px repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  border: 1px solid rgba(191,158,95,.24) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 7px 22px rgba(70,52,23,.040) !important;
  overflow: hidden !important;
}

body.site-public .face#sector .impact-title {
  display: flex !important;
  align-items: center !important;
  padding: 0 22px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 750 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sector .impact-title strong {
  font-weight: 950 !important;
}

body.site-public .face#sector .impact-item {
  min-height: 88px !important;
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 18px !important;
  border-left: 1px solid rgba(191,158,95,.28) !important;
}

body.site-public .face#sector .impact-item i {
  color: #bd8429 !important;
  font-style: normal !important;
  font-size: 34px !important;
  line-height: 1 !important;
}

body.site-public .face#sector .impact-item p {
  margin: 0 !important;
  color: #433b33 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

body.site-public .face#sector .sector-cta-box {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 16px !important;
}

body.site-public .face#sector .sector-cta-btn {
  height: 60px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  border-radius: 6px !important;
  border: 1px solid rgba(154,103,37,.22) !important;
  background: linear-gradient(135deg, #e3ad4a, #bd7b25 62%, #9d671f) !important;
  color: #17110a !important;
  box-shadow: 0 10px 22px rgba(180,119,41,.18) !important;
  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sector .sector-cta-trust {
  display: flex !important;
  justify-content: center !important;
  gap: 20px !important;
  color: #554a3f !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
}

body.site-public .face#sector .sector-cta-trust span + span {
  padding-left: 20px !important;
  border-left: 1px solid rgba(191,158,95,.36) !important;
}

/* Pantallas bajas: compacta sin dejar blanco */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#sector {
    padding-top: 78px !important;
    padding-bottom: 12px !important;
  }

  body.site-public .face#sector .sector-hero {
    min-height: 265px !important;
  }

  body.site-public .face#sector .sector-copy {
    padding-top: 8px !important;
  }

  body.site-public .face#sector .headline {
    font-size: clamp(46px, 4.6vw, 70px) !important;
  }

  body.site-public .face#sector .sector-title-line {
    margin: 18px 0 15px !important;
  }

  body.site-public .face#sector .sector-gold {
    font-size: 16px !important;
    margin-bottom: 8px !important;
  }

  body.site-public .face#sector .sector-sub {
    font-size: 13.5px !important;
    line-height: 1.42 !important;
  }

  body.site-public .face#sector .sector-visual {
    height: 365px !important;
  }

  body.site-public .face#sector .congress-building {
    height: 305px !important;
  }

  body.site-public .face#sector .sector-section-title {
    margin-top: -6px !important;
    margin-bottom: 13px !important;
  }

  body.site-public .face#sector .sector-cards-maqueta {
    gap: 16px !important;
  }

  body.site-public .face#sector .sector-cards-maqueta article {
    min-height: 172px !important;
    padding: 18px 20px 16px !important;
  }

  body.site-public .face#sector .sector-cards-maqueta i {
    font-size: 34px !important;
    margin-bottom: 12px !important;
  }

  body.site-public .face#sector .sector-cards-maqueta h3 {
    min-height: 36px !important;
    font-size: 14.5px !important;
  }

  body.site-public .face#sector .sector-card-line {
    margin: 9px 0 11px !important;
  }

  body.site-public .face#sector .sector-cards-maqueta p {
    font-size: 11.5px !important;
    line-height: 1.38 !important;
  }

  body.site-public .face#sector .sector-bottom-row {
    margin-top: 20px !important;
  }

  body.site-public .face#sector .sector-impact-bar,
  body.site-public .face#sector .impact-item {
    min-height: 70px !important;
  }

  body.site-public .face#sector .sector-cta-btn {
    height: 50px !important;
    font-size: 12px !important;
  }
}

/* Laptop mediana */
@media (max-width: 1320px) {
  body.site-public .face#sector {
    padding-inline: 42px !important;
  }

  body.site-public .face#sector .sector-hero {
    grid-template-columns: minmax(510px, 600px) minmax(0, 1fr) !important;
  }

  body.site-public .face#sector .sector-visual {
    right: -80px !important;
    width: 55vw !important;
  }

  body.site-public .face#sector .sector-cards-maqueta {
    gap: 16px !important;
  }

  body.site-public .face#sector .sector-cards-maqueta article {
    padding: 22px 18px 20px !important;
  }

  body.site-public .face#sector .sector-bottom-row {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  body.site-public .face#sector .sector-cta-box {
    align-items: flex-end !important;
  }

  body.site-public .face#sector .sector-cta-btn {
    width: 370px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#sector {
    padding: 104px 28px 28px !important;
  }

  body.site-public .face#sector .sector-hero {
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#sector .sector-visual {
    position: relative !important;
    right: auto !important;
    top: auto !important;
    width: 100% !important;
    height: 300px !important;
    margin-top: 22px !important;
  }

  body.site-public .face#sector .congress-building {
    max-width: 100% !important;
    width: 100% !important;
  }

  body.site-public .face#sector .sector-section-title {
    margin-top: 24px !important;
  }

  body.site-public .face#sector .sector-cards-maqueta {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.site-public .face#sector .sector-impact-bar {
    grid-template-columns: 1fr 1fr !important;
  }

  body.site-public .face#sector .impact-title {
    grid-column: 1 / -1 !important;
    min-height: 58px !important;
  }

  body.site-public .face#sector .impact-item {
    border-top: 1px solid rgba(191,158,95,.28) !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#sector {
    padding: 100px 16px 24px !important;
  }

  body.site-public .face#sector .headline {
    font-size: clamp(40px, 13vw, 58px) !important;
  }

  body.site-public .face#sector .sector-title-line {
    width: 260px !important;
  }

  body.site-public .face#sector .sector-gold {
    font-size: 16px !important;
  }

  body.site-public .face#sector .sector-sub {
    font-size: 14px !important;
  }

  body.site-public .face#sector .sector-visual {
    height: 240px !important;
  }

  body.site-public .face#sector .congress-building {
    height: 230px !important;
  }

  body.site-public .face#sector .sector-section-title {
    width: 100% !important;
    gap: 12px !important;
  }

  body.site-public .face#sector .sector-section-title strong {
    font-size: 10px !important;
    letter-spacing: .09em !important;
  }

  body.site-public .face#sector .sector-cards-maqueta {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#sector .sector-impact-bar {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#sector .impact-item {
    border-left: 0 !important;
  }

  body.site-public .face#sector .sector-cta-box {
    align-items: stretch !important;
  }

  body.site-public .face#sector .sector-cta-btn {
    width: 100% !important;
    font-size: 11px !important;
  }

  body.site-public .face#sector .sector-cta-trust {
    flex-direction: column !important;
    gap: 8px !important;
    align-items: center !important;
  }

  body.site-public .face#sector .sector-cta-trust span + span {
    border-left: 0 !important;
    padding-left: 0 !important;
  }
}


/* =========================================================
   PARCHE - USAR NUEVAS IMÁGENES PROPORCIONADAS
   1) Diseño Congreso + mapa Perú -> Sector Público
   2) Gilberth recortado -> Sobre Gilberth
   ========================================================= */

/* ===== SECTOR PÚBLICO: reemplazar visual construido por imagen real ===== */
body.site-public .face#sector .sector-visual {
  position: absolute !important;
  z-index: 1 !important;
  right: -66px !important;
  top: -38px !important;
  width: min(860px, 61vw) !important;
  height: 500px !important;
  background: url("../img/custom/sector-publico-composite.png") right center / contain no-repeat !important;
  pointer-events: none !important;
  overflow: visible !important;
}

body.site-public .face#sector .sector-visual::before,
body.site-public .face#sector .sector-visual::after {
  display: none !important;
}

body.site-public .face#sector .peru-map-dots,
body.site-public .face#sector .congress-building {
  display: none !important;
}

/* Ajusta el hero para convivir con la imagen nueva */
body.site-public .face#sector .sector-hero {
  min-height: 355px !important;
  grid-template-columns: minmax(560px, 650px) minmax(0, 1fr) !important;
}

body.site-public .face#sector .sector-copy {
  padding-top: 10px !important;
}

body.site-public .face#sector .sector-sub {
  max-width: 670px !important;
}

/* ===== SOBRE GILBERTH: usar nueva imagen recortada ===== */
body.site-public .face#sobre .sobre-photo-frame {
  overflow: visible !important;
}

body.site-public .face#sobre .sobre-photo-person {
  position: absolute !important;
  z-index: 2 !important;
  left: 26px !important;
  bottom: 0 !important;
  width: min(460px, 94%) !important;
  height: min(625px, 76dvh) !important;
  background: url("../img/custom/gilberth-new-cutout.png") center bottom / contain no-repeat !important;
  clip-path: none !important;
  filter: drop-shadow(0 18px 26px rgba(0,0,0,.15)) !important;
}

body.site-public .face#sobre .sobre-photo-person::before,
body.site-public .face#sobre .sobre-photo-person::after {
  display: none !important;
}

/* escritorio compacto */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#sector .sector-visual {
    top: -30px !important;
    right: -50px !important;
    width: min(760px, 57vw) !important;
    height: 400px !important;
  }

  body.site-public .face#sector .sector-hero {
    min-height: 280px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: min(395px, 86%) !important;
    height: min(520px, 68dvh) !important;
  }
}

/* laptop mediana */
@media (max-width: 1320px) {
  body.site-public .face#sector .sector-visual {
    right: -56px !important;
    top: -24px !important;
    width: min(760px, 56vw) !important;
    height: 430px !important;
  }

  body.site-public .face#sector .sector-hero {
    min-height: 320px !important;
  }
}

/* tablet */
@media (max-width: 1100px) {
  body.site-public .face#sector .sector-visual {
    position: relative !important;
    right: auto !important;
    top: auto !important;
    width: 100% !important;
    height: 320px !important;
    margin-top: 18px !important;
    background-position: center center !important;
  }

  body.site-public .face#sector .sector-hero {
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(410px, 88%) !important;
    height: 520px !important;
  }
}

/* móvil */
@media (max-width: 760px) {
  body.site-public .face#sector .sector-visual {
    height: 240px !important;
    margin-top: 14px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: min(330px, 86%) !important;
    height: 430px !important;
  }
}


/* =========================================================
   PARCHE - GILBERTH EN SOBRE + CONTACTO
   usar la nueva imagen y hacerla más grande
   ========================================================= */

/* =========================
   SOBRE GILBERTH
   ========================= */
body.site-public .face#sobre .sobre-photo-frame {
  overflow: visible !important;
}

body.site-public .face#sobre .sobre-photo-person {
  position: absolute !important;
  z-index: 3 !important;
  left: 6px !important;
  bottom: -4px !important;
  width: min(560px, 104%) !important;
  height: min(760px, 86dvh) !important;
  background: url("../img/custom/gilberth-sobre-contacto-grande.png") center bottom / contain no-repeat !important;
  clip-path: none !important;
  filter: drop-shadow(0 18px 26px rgba(0,0,0,.16)) !important;
}

body.site-public .face#sobre .sobre-photo-person::before,
body.site-public .face#sobre .sobre-photo-person::after {
  display: none !important;
}

body.site-public .face#sobre .sobre-photo-frame::before {
  left: -14px !important;
  top: 42px !important;
  width: min(590px, 106%) !important;
  height: min(590px, 72dvh) !important;
}

/* =========================
   CONTACTO
   ========================= */
body.site-public .face#contacto .contact-showcase-card {
  overflow: hidden !important;
}

body.site-public .face#contacto .contact-portrait-visual {
  position: relative !important;
  height: 390px !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.96), transparent 8%),
    linear-gradient(90deg, transparent 0 16%, rgba(255,255,255,.34) 16.2% 17.2%, transparent 17.4% 66%, rgba(255,255,255,.48) 66.2% 67.2%, transparent 67.4% 100%),
    linear-gradient(180deg, #f7f5f0 0 24%, #ebe6dc 24% 100%) !important;
}

body.site-public .face#contacto .contact-office-bg {
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 20% 14%, rgba(255,255,255,.75), transparent 8%),
    linear-gradient(90deg, transparent 0 17%, rgba(255,255,255,.25) 17.2% 18%, transparent 18.2% 65%, rgba(255,255,255,.40) 65.2% 66%, transparent 66.2% 100%),
    linear-gradient(180deg, #f5f3ee 0 24%, #e7e1d6 24% 100%) !important;
}

body.site-public .face#contacto .contact-person-shape {
  position: absolute !important;
  z-index: 3 !important;
  right: 6px !important;
  bottom: -8px !important;
  width: min(380px, 84%) !important;
  height: min(445px, 72dvh) !important;
  background: url("../img/custom/gilberth-sobre-contacto-grande.png") center bottom / contain no-repeat !important;
  clip-path: none !important;
  filter: drop-shadow(0 16px 24px rgba(0,0,0,.14)) !important;
}

body.site-public .face#contacto .contact-person-shape::before,
body.site-public .face#contacto .contact-person-shape::after {
  display: none !important;
}

/* =========================
   Ajustes responsivos
   ========================= */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#sobre .sobre-photo-person {
    width: min(470px, 94%) !important;
    height: min(615px, 74dvh) !important;
  }

  body.site-public .face#contacto .contact-portrait-visual {
    height: 310px !important;
  }

  body.site-public .face#contacto .contact-person-shape {
    width: min(300px, 76%) !important;
    height: min(355px, 60dvh) !important;
    right: 0 !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(470px, 94%) !important;
    height: 600px !important;
  }

  body.site-public .face#contacto .contact-portrait-visual {
    height: 330px !important;
  }

  body.site-public .face#contacto .contact-person-shape {
    right: 50% !important;
    transform: translateX(50%) !important;
    width: min(320px, 82%) !important;
    height: 385px !important;
  }
}

@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-photo-person {
    width: min(355px, 92%) !important;
    height: 455px !important;
  }

  body.site-public .face#contacto .contact-portrait-visual {
    height: 270px !important;
  }

  body.site-public .face#contacto .contact-person-shape {
    width: min(250px, 82%) !important;
    height: 295px !important;
    right: 50% !important;
    transform: translateX(50%) !important;
  }
}


/* =========================================================
   SOBRE GILBERTH - MAQUETA IDÉNTICA / AJUSTE FINO
   ========================================================= */
body.site-public .face#sobre {
  padding: 22px 18px 18px !important;
  overflow: hidden !important;
}

body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
  width: 100% !important;
  max-width: 1500px !important;
  min-height: calc(100dvh - 46px) !important;
  height: calc(100dvh - 46px) !important;
  grid-template-columns: 37% 63% !important;
  grid-template-rows: 1fr 82px !important;
  column-gap: 16px !important;
  row-gap: 0 !important;
  border: 1px solid rgba(160,130,88,.30) !important;
  background: linear-gradient(180deg, #fcfbf7 0%, #f8f5ee 100%) !important;
  box-shadow: 0 8px 20px rgba(70,52,23,.03) !important;
  overflow: hidden !important;
}

body.site-public .face#sobre .sobre-left {
  min-height: 0 !important;
  padding: 24px 0 0 28px !important;
}

body.site-public .face#sobre .sobre-brand-mini {
  gap: 12px !important;
  transform: scale(.92) !important;
  transform-origin: left top !important;
}

body.site-public .face#sobre .sobre-brand-mini span {
  font-size: 62px !important;
}

body.site-public .face#sobre .sobre-brand-mini strong {
  font-size: 11px !important;
  letter-spacing: .03em !important;
}

body.site-public .face#sobre .sobre-brand-mini small {
  margin-top: 8px !important;
  font-size: 9px !important;
  letter-spacing: .18em !important;
}

body.site-public .face#sobre .sobre-photo-frame {
  position: absolute !important;
  inset: 56px 0 0 6px !important;
  min-height: 520px !important;
}

body.site-public .face#sobre .sobre-photo-frame::before {
  left: 8px !important;
  top: 44px !important;
  width: 470px !important;
  height: 470px !important;
  border: 1px solid rgba(198,139,42,.38) !important;
  background: transparent !important;
}

body.site-public .face#sobre .sobre-photo-person {
  left: 68px !important;
  bottom: -2px !important;
  width: 430px !important;
  height: 560px !important;
  background: url("../img/custom/gilberth-sobre-contacto-grande.png") center bottom / contain no-repeat !important;
  clip-path: none !important;
  filter: drop-shadow(0 16px 22px rgba(0,0,0,.12)) !important;
}

body.site-public .face#sobre .sobre-photo-person::before,
body.site-public .face#sobre .sobre-photo-person::after {
  display: none !important;
}

body.site-public .face#sobre .sobre-quote {
  left: 18px !important;
  bottom: 14px !important;
  width: 300px !important;
  min-height: 160px !important;
  padding: 20px 20px 16px !important;
  border-radius: 10px !important;
  border-color: rgba(193,132,35,.70) !important;
  background: rgba(8,8,8,.94) !important;
}

body.site-public .face#sobre .sobre-quote span {
  left: 14px !important;
  top: 5px !important;
  font-size: 56px !important;
}

body.site-public .face#sobre .sobre-quote p {
  margin: 22px 0 12px !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

body.site-public .face#sobre .sobre-quote b {
  color: #d89a32 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
  font-style: italic !important;
  font-weight: 400 !important;
}

body.site-public .face#sobre .sobre-right {
  padding: 18px 26px 0 0 !important;
}

body.site-public .face#sobre .sobre-heading {
  max-width: 930px !important;
}

body.site-public .face#sobre .sobre-heading .kicker {
  gap: 16px !important;
  margin: 0 0 14px !important;
  color: #c18824 !important;
  font-size: 10px !important;
  letter-spacing: .15em !important;
}

body.site-public .face#sobre .sobre-heading .kicker::before,
body.site-public .face#sobre .sobre-heading .kicker::after {
  width: 86px !important;
}

body.site-public .face#sobre .sobre-heading .headline {
  font-size: 82px !important;
  line-height: .95 !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#sobre .sobre-title-line {
  width: 140px !important;
  margin: 12px auto 12px !important;
}

body.site-public .face#sobre .sobre-heading .sub {
  max-width: 860px !important;
  margin: 0 auto !important;
}

body.site-public .face#sobre .sobre-heading .sub.sub-gold {
  color: #c18824 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

body.site-public .face#sobre .sobre-heading .sub.sub-dark {
  margin-top: 6px !important;
  color: #423b33 !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
}

body.site-public .face#sobre .sobre-credentials {
  max-width: 900px !important;
  margin-top: 24px !important;
}

body.site-public .face#sobre .sobre-credentials article {
  min-height: 132px !important;
  padding: 0 14px !important;
}

body.site-public .face#sobre .sobre-credentials i {
  width: 64px !important;
  height: 64px !important;
  margin-bottom: 12px !important;
  font-size: 29px !important;
  border-color: rgba(198,139,42,.48) !important;
  background: rgba(255,255,255,.7) !important;
}

body.site-public .face#sobre .sobre-credentials article:nth-child(2) i {
  color: #000 !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
}

body.site-public .face#sobre .sobre-credentials strong {
  font-size: 12px !important;
  line-height: 1.28 !important;
}

body.site-public .face#sobre .sobre-credentials p {
  font-size: 11px !important;
  line-height: 1.45 !important;
}

body.site-public .face#sobre .sobre-section-title {
  max-width: 740px !important;
  margin: 18px auto 16px !important;
  gap: 20px !important;
}

body.site-public .face#sobre .sobre-section-title strong {
  font-size: 12px !important;
  letter-spacing: .14em !important;
}

body.site-public .face#sobre .sobre-stats {
  max-width: 910px !important;
}

body.site-public .face#sobre .sobre-stats article {
  min-height: 118px !important;
  padding: 0 12px !important;
}

body.site-public .face#sobre .sobre-stats i {
  margin-bottom: 8px !important;
  font-size: 28px !important;
}

body.site-public .face#sobre .sobre-stats b {
  margin-bottom: 8px !important;
  font-size: 23px !important;
}

body.site-public .face#sobre .sobre-stats strong {
  font-size: 10px !important;
  line-height: 1.28 !important;
}

body.site-public .face#sobre .sobre-stats p {
  font-size: 10.6px !important;
  line-height: 1.42 !important;
}

body.site-public .face#sobre .sobre-logos-footer {
  min-height: 62px !important;
  margin-top: 0 !important;
  border-radius: 0 0 10px 10px !important;
  border-top: 1px solid rgba(191,158,95,.25) !important;
  box-shadow: none !important;
  background: rgba(255,255,255,.86) !important;
}

body.site-public .face#sobre .sobre-trust {
  min-height: 62px !important;
  grid-template-columns: 38px minmax(0,1fr) !important;
  gap: 12px !important;
  padding: 0 18px !important;
}

body.site-public .face#sobre .sobre-trust span { font-size: 24px !important; }
body.site-public .face#sobre .sobre-trust strong {
  font-size: 11px !important;
  line-height: 1.28 !important;
}

body.site-public .face#sobre .sobre-logos-footer img {
  height: 62px !important;
  padding: 0 18px !important;
}

@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#sobre { padding: 12px !important; }
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    min-height: calc(100dvh - 24px) !important;
    height: calc(100dvh - 24px) !important;
    grid-template-rows: 1fr 68px !important;
  }
  body.site-public .face#sobre .sobre-left { padding-top: 16px !important; }
  body.site-public .face#sobre .sobre-brand-mini { transform: scale(.84) !important; }
  body.site-public .face#sobre .sobre-photo-frame { inset: 44px 0 0 6px !important; }
  body.site-public .face#sobre .sobre-photo-frame::before { width: 405px !important; height: 405px !important; top: 38px !important; }
  body.site-public .face#sobre .sobre-photo-person { left: 52px !important; width: 370px !important; height: 480px !important; }
  body.site-public .face#sobre .sobre-quote { width: 270px !important; min-height: 136px !important; }
  body.site-public .face#sobre .sobre-quote p { font-size: 11.5px !important; }
  body.site-public .face#sobre .sobre-right { padding-top: 10px !important; }
  body.site-public .face#sobre .sobre-heading .headline { font-size: 68px !important; }
  body.site-public .face#sobre .sobre-heading .sub.sub-gold { font-size: 14px !important; }
  body.site-public .face#sobre .sobre-heading .sub.sub-dark { font-size: 14px !important; }
  body.site-public .face#sobre .sobre-credentials { margin-top: 18px !important; }
  body.site-public .face#sobre .sobre-credentials article { min-height: 115px !important; }
  body.site-public .face#sobre .sobre-credentials i { width: 56px !important; height: 56px !important; font-size: 25px !important; }
  body.site-public .face#sobre .sobre-credentials article:nth-child(2) i { font-size: 17px !important; }
  body.site-public .face#sobre .sobre-credentials strong { font-size: 10.5px !important; }
  body.site-public .face#sobre .sobre-credentials p { font-size: 9.8px !important; }
  body.site-public .face#sobre .sobre-section-title { margin: 14px auto 12px !important; }
  body.site-public .face#sobre .sobre-stats article { min-height: 96px !important; }
  body.site-public .face#sobre .sobre-stats i { font-size: 23px !important; }
  body.site-public .face#sobre .sobre-stats b { font-size: 20px !important; }
  body.site-public .face#sobre .sobre-stats strong { font-size: 9.5px !important; }
  body.site-public .face#sobre .sobre-stats p { font-size: 9.4px !important; }
  body.site-public .face#sobre .sobre-logos-footer,
  body.site-public .face#sobre .sobre-trust,
  body.site-public .face#sobre .sobre-logos-footer img { min-height: 54px !important; height: 54px !important; }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre { padding: 88px 16px 20px !important; overflow-y: auto !important; }
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta { height: auto !important; min-height: auto !important; grid-template-columns: 1fr !important; grid-template-rows: auto auto auto !important; }
  body.site-public .face#sobre .sobre-left { padding: 0 !important; min-height: 640px !important; }
  body.site-public .face#sobre .sobre-right { padding: 10px 10px 0 !important; }
  body.site-public .face#sobre .sobre-heading .headline { font-size: clamp(52px, 10vw, 76px) !important; }
  body.site-public .face#sobre .sobre-credentials { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 18px !important; }
  body.site-public .face#sobre .sobre-credentials article { border-left: 0 !important; border: 1px solid rgba(191,158,95,.35) !important; border-radius: 12px !important; padding: 18px 14px !important; }
  body.site-public .face#sobre .sobre-stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 18px !important; }
  body.site-public .face#sobre .sobre-stats article { border-left: 0 !important; border: 1px solid rgba(191,158,95,.35) !important; border-radius: 12px !important; padding: 18px 14px !important; }
  body.site-public .face#sobre .sobre-logos-footer { grid-template-columns: 1fr !important; }
  body.site-public .face#sobre .sobre-trust { border-right: 0 !important; border-bottom: 1px solid rgba(191,158,95,.25) !important; }
}

@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-left { min-height: 540px !important; }
  body.site-public .face#sobre .sobre-photo-frame::before { left: 50% !important; transform: translateX(-50%) !important; width: 300px !important; height: 300px !important; }
  body.site-public .face#sobre .sobre-photo-person { left: 50% !important; transform: translateX(-50%) !important; width: 280px !important; height: 370px !important; }
  body.site-public .face#sobre .sobre-quote { left: 50% !important; transform: translateX(-50%) !important; width: 280px !important; bottom: 6px !important; }
  body.site-public .face#sobre .sobre-heading .kicker::before, body.site-public .face#sobre .sobre-heading .kicker::after { width: 36px !important; }
  body.site-public .face#sobre .sobre-heading .sub.sub-gold, body.site-public .face#sobre .sobre-heading .sub.sub-dark { font-size: 14px !important; }
  body.site-public .face#sobre .sobre-credentials, body.site-public .face#sobre .sobre-stats { grid-template-columns: 1fr !important; }
}


/* =========================================================
   AJUSTE FINO - FOTO SOBRE GILBERTH MISMO TAMAÑO / PROPORCIÓN
   ========================================================= */
body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
  grid-template-columns: 39% 61% !important;
}

body.site-public .face#sobre .sobre-left {
  padding: 20px 0 0 26px !important;
}

body.site-public .face#sobre .sobre-photo-frame {
  inset: 52px 0 0 0 !important;
  min-height: 590px !important;
}

body.site-public .face#sobre .sobre-photo-frame::before {
  left: 8px !important;
  top: 36px !important;
  width: 560px !important;
  height: 560px !important;
}

body.site-public .face#sobre .sobre-photo-person {
  left: 42px !important;
  bottom: 0 !important;
  width: 520px !important;
  height: 680px !important;
  background-size: contain !important;
  background-position: center bottom !important;
}

body.site-public .face#sobre .sobre-quote {
  left: 16px !important;
  bottom: 20px !important;
  width: 308px !important;
  min-height: 162px !important;
}

body.site-public .face#sobre .sobre-right {
  padding: 12px 24px 0 0 !important;
}

/* pantallas bajas */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-columns: 39% 61% !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset: 40px 0 0 0 !important;
    min-height: 520px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 475px !important;
    height: 475px !important;
    top: 34px !important;
    left: 4px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 36px !important;
    width: 440px !important;
    height: 560px !important;
  }

  body.site-public .face#sobre .sobre-quote {
    width: 285px !important;
    min-height: 144px !important;
  }
}

/* tablet */
@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-left {
    min-height: 720px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 470px !important;
    height: 470px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 430px !important;
    height: 560px !important;
  }
}

/* móvil */
@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-left {
    min-height: 580px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 320px !important;
    height: 320px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: 310px !important;
    height: 410px !important;
  }

  body.site-public .face#sobre .sobre-quote {
    width: 280px !important;
  }
}


/* =========================================================
   AJUSTE FINAL - FOTO MÁS GRANDE QUE EL CÍRCULO Y TEXTO SUPERIOR VISIBLE
   ========================================================= */
body.site-public .face#sobre .sobre-left {
  position: relative !important;
  z-index: 3 !important;
  padding: 18px 0 0 24px !important;
}

body.site-public .face#sobre .sobre-brand-mini {
  position: relative !important;
  z-index: 12 !important;
  margin-bottom: 8px !important;
}

body.site-public .face#sobre .sobre-photo-frame {
  inset: 74px 0 0 0 !important;
  min-height: 620px !important;
  z-index: 2 !important;
}

/* círculo un poco más pequeño */
body.site-public .face#sobre .sobre-photo-frame::before {
  left: 12px !important;
  top: 56px !important;
  width: 500px !important;
  height: 500px !important;
  z-index: 1 !important;
}

/* foto más grande que el círculo */
body.site-public .face#sobre .sobre-photo-person {
  z-index: 3 !important;
  left: 22px !important;
  bottom: 0 !important;
  width: 560px !important;
  height: 720px !important;
  background-size: contain !important;
  background-position: center bottom !important;
}

/* la cita mantiene espacio y no tapa la cabecera */
body.site-public .face#sobre .sobre-quote {
  z-index: 5 !important;
  left: 14px !important;
  bottom: 14px !important;
  width: 302px !important;
}

/* compactación en pantallas bajas */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#sobre .sobre-photo-frame {
    inset: 58px 0 0 0 !important;
    min-height: 540px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 430px !important;
    height: 430px !important;
    top: 48px !important;
    left: 8px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 18px !important;
    width: 470px !important;
    height: 610px !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-brand-mini {
    transform: scale(.9) !important;
    transform-origin: left top !important;
  }

  body.site-public .face#sobre .sobre-left {
    min-height: 760px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset: 78px 0 0 0 !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 420px !important;
    height: 420px !important;
    top: 56px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 460px !important;
    height: 610px !important;
  }
}

@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-left {
    min-height: 610px !important;
  }

  body.site-public .face#sobre .sobre-brand-mini {
    transform: scale(.82) !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset: 70px 0 0 0 !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 300px !important;
    height: 300px !important;
    top: 44px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: 330px !important;
    height: 440px !important;
  }

  body.site-public .face#sobre .sobre-quote {
    width: 278px !important;
    bottom: 8px !important;
  }
}


/* =========================================================
   CORRECCIÓN VISUAL SOBRE GILBERTH
   - evita que el título se corte bajo el menú
   - mantiene la foto más grande que el círculo
   - baja todo el bloque para que se vea completo
   ========================================================= */
body.site-public .face#sobre {
  padding: 88px 18px 18px !important;
  overflow-y: auto !important;
}

body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
  min-height: calc(100dvh - 106px) !important;
  height: auto !important;
  grid-template-columns: 39% 61% !important;
  grid-template-rows: auto 74px !important;
}

body.site-public .face#sobre .sobre-left {
  padding: 18px 0 0 24px !important;
}

body.site-public .face#sobre .sobre-photo-frame {
  inset: 84px 0 0 0 !important;
  min-height: 610px !important;
}

body.site-public .face#sobre .sobre-photo-frame::before {
  left: 18px !important;
  top: 52px !important;
  width: 485px !important;
  height: 485px !important;
}

body.site-public .face#sobre .sobre-photo-person {
  left: 6px !important;
  bottom: 0 !important;
  width: 560px !important;
  height: 700px !important;
}

body.site-public .face#sobre .sobre-quote {
  left: 14px !important;
  bottom: 18px !important;
  width: 302px !important;
}

body.site-public .face#sobre .sobre-right {
  padding: 26px 24px 0 0 !important;
}

body.site-public .face#sobre .sobre-heading {
  max-width: 920px !important;
}

body.site-public .face#sobre .sobre-heading .kicker {
  margin-bottom: 16px !important;
}

body.site-public .face#sobre .sobre-heading .headline {
  font-size: 72px !important;
  line-height: .96 !important;
  margin-top: 0 !important;
}

body.site-public .face#sobre .sobre-title-line {
  margin: 10px auto 10px !important;
}

body.site-public .face#sobre .sobre-heading .sub.sub-gold {
  font-size: 15px !important;
}

body.site-public .face#sobre .sobre-heading .sub.sub-dark {
  font-size: 14px !important;
  max-width: 800px !important;
}

body.site-public .face#sobre .sobre-credentials {
  margin-top: 18px !important;
  max-width: 900px !important;
}

body.site-public .face#sobre .sobre-credentials article {
  min-height: 118px !important;
}

body.site-public .face#sobre .sobre-credentials i {
  width: 58px !important;
  height: 58px !important;
  font-size: 25px !important;
}

body.site-public .face#sobre .sobre-credentials article:nth-child(2) i {
  font-size: 18px !important;
}

body.site-public .face#sobre .sobre-credentials strong {
  font-size: 11px !important;
}

body.site-public .face#sobre .sobre-credentials p {
  font-size: 10px !important;
}

body.site-public .face#sobre .sobre-section-title {
  margin: 12px auto 12px !important;
}

body.site-public .face#sobre .sobre-stats {
  max-width: 900px !important;
}

body.site-public .face#sobre .sobre-stats article {
  min-height: 104px !important;
}

body.site-public .face#sobre .sobre-stats i {
  font-size: 24px !important;
}

body.site-public .face#sobre .sobre-stats b {
  font-size: 19px !important;
}

body.site-public .face#sobre .sobre-stats strong {
  font-size: 9.6px !important;
}

body.site-public .face#sobre .sobre-stats p {
  font-size: 9.8px !important;
}

body.site-public .face#sobre .sobre-logos-footer,
body.site-public .face#sobre .sobre-trust,
body.site-public .face#sobre .sobre-logos-footer img {
  min-height: 58px !important;
  height: 58px !important;
}

/* pantallas un poco bajas */
@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre {
    padding-top: 82px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    min-height: calc(100dvh - 98px) !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset: 72px 0 0 0 !important;
    min-height: 550px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 430px !important;
    height: 430px !important;
    top: 44px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: 490px !important;
    height: 620px !important;
    left: 0 !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: 62px !important;
  }

  body.site-public .face#sobre .sobre-heading .sub.sub-gold {
    font-size: 14px !important;
  }

  body.site-public .face#sobre .sobre-heading .sub.sub-dark {
    font-size: 13px !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre {
    padding: 96px 16px 22px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }

  body.site-public .face#sobre .sobre-left {
    min-height: 740px !important;
    padding: 10px 0 0 0 !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset: 88px 0 0 0 !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 420px !important;
    height: 420px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 460px !important;
    height: 590px !important;
  }

  body.site-public .face#sobre .sobre-right {
    padding: 16px 10px 0 !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(52px, 9.2vw, 70px) !important;
  }
}

@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-left {
    min-height: 610px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 300px !important;
    height: 300px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: 330px !important;
    height: 430px !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(40px, 12vw, 58px) !important;
  }
}


/* =========================================================
   AJUSTE FINAL - SOBRE GILBERTH COMO REFERENCIA ENVIADA
   ========================================================= */
body.site-public .face#sobre {
  padding: 90px 16px 16px !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -10% 74%, rgba(195,146,63,.07), transparent 24%),
    radial-gradient(circle at 106% 6%, rgba(195,146,63,.07), transparent 22%),
    linear-gradient(180deg, #fbfaf6 0%, #f6f3eb 100%) !important;
}

body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
  width: min(1520px, 100%) !important;
  max-width: 1520px !important;
  min-height: calc(100dvh - 110px) !important;
  height: auto !important;
  grid-template-columns: 39.2% 60.8% !important;
  grid-template-rows: auto 78px !important;
  column-gap: 10px !important;
  row-gap: 0 !important;
  border: 1px solid rgba(178,146,89,.32) !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #fcfbf7 0%, #f8f5ee 100%) !important;
  box-shadow: 0 4px 14px rgba(70,52,23,.035) !important;
  overflow: hidden !important;
}

body.site-public .face#sobre .sobre-left {
  min-height: 0 !important;
  padding: 20px 0 0 26px !important;
}

body.site-public .face#sobre .sobre-brand-mini {
  position: relative !important;
  z-index: 12 !important;
  gap: 10px !important;
  transform: scale(.90) !important;
  transform-origin: left top !important;
}

body.site-public .face#sobre .sobre-brand-mini span {
  font-size: 58px !important;
}

body.site-public .face#sobre .sobre-brand-mini strong {
  font-size: 10.5px !important;
  letter-spacing: .03em !important;
}

body.site-public .face#sobre .sobre-brand-mini small {
  margin-top: 8px !important;
  font-size: 9px !important;
  letter-spacing: .18em !important;
}

body.site-public .face#sobre .sobre-photo-frame {
  position: absolute !important;
  inset: 46px 0 0 0 !important;
  min-height: 520px !important;
  z-index: 2 !important;
}

body.site-public .face#sobre .sobre-photo-frame::before {
  left: 6px !important;
  top: 62px !important;
  width: 445px !important;
  height: 445px !important;
  border: 1px solid rgba(202,168,101,.50) !important;
  background: transparent !important;
  z-index: 1 !important;
}

/* foto ligeramente más grande que el círculo, sin exagerar */
body.site-public .face#sobre .sobre-photo-person {
  position: absolute !important;
  z-index: 3 !important;
  left: 54px !important;
  bottom: -1px !important;
  width: 405px !important;
  height: 535px !important;
  background: url("../img/custom/gilberth-sobre-contacto-grande.png") center bottom / contain no-repeat !important;
  clip-path: none !important;
  filter: drop-shadow(0 14px 18px rgba(0,0,0,.11)) !important;
}

body.site-public .face#sobre .sobre-photo-person::before,
body.site-public .face#sobre .sobre-photo-person::after {
  display: none !important;
}

body.site-public .face#sobre .sobre-quote {
  z-index: 5 !important;
  left: 18px !important;
  bottom: 14px !important;
  width: 282px !important;
  min-height: 128px !important;
  padding: 18px 18px 14px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(193,132,35,.72) !important;
  background: rgba(7,7,7,.95) !important;
  box-shadow: 0 10px 18px rgba(0,0,0,.14) !important;
}

body.site-public .face#sobre .sobre-quote span {
  left: 12px !important;
  top: 4px !important;
  font-size: 52px !important;
}

body.site-public .face#sobre .sobre-quote p {
  margin: 18px 0 12px !important;
  font-size: 11.7px !important;
  line-height: 1.5 !important;
}

body.site-public .face#sobre .sobre-quote b {
  color: #d89a32 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 15px !important;
  font-style: italic !important;
  font-weight: 400 !important;
}

body.site-public .face#sobre .sobre-right {
  padding: 22px 24px 0 0 !important;
}

body.site-public .face#sobre .sobre-heading {
  max-width: 940px !important;
}

body.site-public .face#sobre .sobre-heading .kicker {
  gap: 14px !important;
  margin: 0 0 12px !important;
  color: #c18824 !important;
  font-size: 10px !important;
  letter-spacing: .15em !important;
}

body.site-public .face#sobre .sobre-heading .kicker::before,
body.site-public .face#sobre .sobre-heading .kicker::after {
  width: 82px !important;
}

body.site-public .face#sobre .sobre-heading .headline {
  margin: 0 !important;
  font-size: 76px !important;
  line-height: .95 !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#sobre .sobre-title-line {
  width: 136px !important;
  margin: 10px auto 10px !important;
}

body.site-public .face#sobre .sobre-heading .sub {
  max-width: 880px !important;
  margin: 0 auto !important;
}

body.site-public .face#sobre .sobre-heading .sub.sub-gold {
  color: #c18824 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

body.site-public .face#sobre .sobre-heading .sub.sub-dark {
  margin-top: 4px !important;
  color: #423b33 !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
}

body.site-public .face#sobre .sobre-credentials {
  max-width: 910px !important;
  margin-top: 16px !important;
}

body.site-public .face#sobre .sobre-credentials article {
  min-height: 118px !important;
  padding: 0 10px !important;
}

body.site-public .face#sobre .sobre-credentials i {
  width: 58px !important;
  height: 58px !important;
  margin-bottom: 10px !important;
  font-size: 24px !important;
  border-color: rgba(198,139,42,.48) !important;
  background: rgba(255,255,255,.76) !important;
}

body.site-public .face#sobre .sobre-credentials article:nth-child(2) i {
  color: #000 !important;
  font-size: 18px !important;
  font-weight: 800 !important;
}

body.site-public .face#sobre .sobre-credentials strong {
  font-size: 11px !important;
  line-height: 1.25 !important;
}

body.site-public .face#sobre .sobre-credentials p {
  font-size: 10px !important;
  line-height: 1.42 !important;
}

body.site-public .face#sobre .sobre-section-title {
  max-width: 760px !important;
  margin: 12px auto 12px !important;
  gap: 18px !important;
}

body.site-public .face#sobre .sobre-section-title strong {
  font-size: 12px !important;
  letter-spacing: .14em !important;
}

body.site-public .face#sobre .sobre-stats {
  max-width: 920px !important;
}

body.site-public .face#sobre .sobre-stats article {
  min-height: 106px !important;
  padding: 0 10px !important;
}

body.site-public .face#sobre .sobre-stats i {
  margin-bottom: 7px !important;
  font-size: 24px !important;
}

body.site-public .face#sobre .sobre-stats b {
  margin-bottom: 7px !important;
  font-size: 18px !important;
}

body.site-public .face#sobre .sobre-stats strong {
  font-size: 9.8px !important;
  line-height: 1.26 !important;
}

body.site-public .face#sobre .sobre-stats p {
  font-size: 9.6px !important;
  line-height: 1.38 !important;
}

body.site-public .face#sobre .sobre-logos-footer {
  min-height: 60px !important;
  margin-top: 0 !important;
  border-radius: 0 !important;
  border-top: 1px solid rgba(191,158,95,.25) !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow: none !important;
}

body.site-public .face#sobre .sobre-trust {
  min-height: 60px !important;
  grid-template-columns: 36px minmax(0,1fr) !important;
  gap: 10px !important;
  padding: 0 18px !important;
}

body.site-public .face#sobre .sobre-trust span {
  font-size: 22px !important;
}

body.site-public .face#sobre .sobre-trust strong {
  font-size: 11px !important;
  line-height: 1.2 !important;
}

body.site-public .face#sobre .sobre-logos-footer img {
  height: 60px !important;
  padding: 0 14px !important;
}

/* altura un poco menor */
@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre {
    padding-top: 84px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    min-height: calc(100dvh - 100px) !important;
    grid-template-rows: auto 64px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset: 42px 0 0 0 !important;
    min-height: 470px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 390px !important;
    height: 390px !important;
    top: 52px !important;
    left: 10px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: 360px !important;
    height: 485px !important;
    left: 44px !important;
  }

  body.site-public .face#sobre .sobre-quote {
    width: 266px !important;
    min-height: 118px !important;
    bottom: 10px !important;
  }

  body.site-public .face#sobre .sobre-quote p {
    font-size: 11px !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: 66px !important;
  }

  body.site-public .face#sobre .sobre-heading .sub.sub-gold {
    font-size: 14px !important;
  }

  body.site-public .face#sobre .sobre-heading .sub.sub-dark {
    font-size: 13px !important;
  }

  body.site-public .face#sobre .sobre-credentials {
    margin-top: 14px !important;
  }

  body.site-public .face#sobre .sobre-credentials article {
    min-height: 108px !important;
  }

  body.site-public .face#sobre .sobre-credentials i {
    width: 54px !important;
    height: 54px !important;
    font-size: 22px !important;
  }

  body.site-public .face#sobre .sobre-credentials article:nth-child(2) i {
    font-size: 17px !important;
  }

  body.site-public .face#sobre .sobre-credentials strong {
    font-size: 10.2px !important;
  }

  body.site-public .face#sobre .sobre-credentials p {
    font-size: 9.6px !important;
  }

  body.site-public .face#sobre .sobre-section-title {
    margin: 10px auto !important;
  }

  body.site-public .face#sobre .sobre-stats article {
    min-height: 96px !important;
  }

  body.site-public .face#sobre .sobre-stats i {
    font-size: 22px !important;
  }

  body.site-public .face#sobre .sobre-stats b {
    font-size: 17px !important;
  }

  body.site-public .face#sobre .sobre-stats strong,
  body.site-public .face#sobre .sobre-stats p {
    font-size: 9.2px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer,
  body.site-public .face#sobre .sobre-trust,
  body.site-public .face#sobre .sobre-logos-footer img {
    min-height: 54px !important;
    height: 54px !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre {
    padding: 96px 16px 22px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    min-height: auto !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }

  body.site-public .face#sobre .sobre-left {
    min-height: 720px !important;
    padding: 10px 0 0 0 !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset: 70px 0 0 0 !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 400px !important;
    height: 400px !important;
    top: 52px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 380px !important;
    height: 500px !important;
  }

  body.site-public .face#sobre .sobre-quote {
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  body.site-public .face#sobre .sobre-right {
    padding: 16px 10px 0 !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(52px, 9vw, 74px) !important;
  }

  body.site-public .face#sobre .sobre-credentials {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 18px !important;
  }

  body.site-public .face#sobre .sobre-credentials article,
  body.site-public .face#sobre .sobre-stats article {
    border-left: 0 !important;
    border: 1px solid rgba(191,158,95,.35) !important;
    border-radius: 12px !important;
    padding: 18px 14px !important;
  }

  body.site-public .face#sobre .sobre-stats {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 18px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#sobre .sobre-trust {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(191,158,95,.25) !important;
  }
}

@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-left {
    min-height: 600px !important;
  }

  body.site-public .face#sobre .sobre-brand-mini {
    transform: scale(.80) !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 290px !important;
    height: 290px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: 300px !important;
    height: 410px !important;
  }

  body.site-public .face#sobre .sobre-quote {
    width: 268px !important;
    bottom: 8px !important;
  }

  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(40px, 12vw, 58px) !important;
  }

  body.site-public .face#sobre .sobre-credentials,
  body.site-public .face#sobre .sobre-stats {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   SOBRE GILBERTH - QUITAR LOGO REPETIDO + FOOTER REAL
   ========================================================= */

/* No repetir el logo dentro de la sección porque ya está en el menú superior */
body.site-public .face#sobre .sobre-brand-mini {
  display: none !important;
}

/* Al quitar el logo, subimos la composición izquierda pero mantenemos aire superior */
body.site-public .face#sobre .sobre-left {
  padding-top: 0 !important;
}

body.site-public .face#sobre .sobre-photo-frame {
  inset: 18px 0 0 0 !important;
  min-height: 560px !important;
}

/* Círculo de fondo más limpio y detrás de la foto */
body.site-public .face#sobre .sobre-photo-frame::before {
  left: 8px !important;
  top: 58px !important;
  width: 455px !important;
  height: 455px !important;
  border: 1px solid rgba(202,168,101,.48) !important;
  background: transparent !important;
}

/* Foto proporcionada, sobresaliendo del círculo como en la referencia */
body.site-public .face#sobre .sobre-photo-person {
  left: 46px !important;
  bottom: 0 !important;
  width: 430px !important;
  height: 560px !important;
  background: url("../img/custom/gilberth-sobre-contacto-grande.png") center bottom / contain no-repeat !important;
  clip-path: none !important;
  filter: drop-shadow(0 14px 18px rgba(0,0,0,.12)) !important;
}

body.site-public .face#sobre .sobre-photo-person::before,
body.site-public .face#sobre .sobre-photo-person::after {
  display: none !important;
}

body.site-public .face#sobre .sobre-quote {
  left: 18px !important;
  bottom: 14px !important;
  width: 282px !important;
  min-height: 128px !important;
}

/* Footer inferior exactamente como el diseño enviado, sin duplicar bloques */
body.site-public .face#sobre .sobre-logos-footer {
  grid-column: 1 / -1 !important;
  min-height: 72px !important;
  height: 72px !important;
  margin: 0 38px 12px !important;
  display: block !important;
  border: 1px solid rgba(191,158,95,.25) !important;
  border-radius: 8px !important;
  background: #fff url("../img/custom/sobre-footer-referencia.png") center center / 100% 100% no-repeat !important;
  box-shadow: 0 5px 14px rgba(70,52,23,.035) !important;
  overflow: hidden !important;
}

body.site-public .face#sobre .sobre-logos-footer .sobre-trust,
body.site-public .face#sobre .sobre-logos-footer img {
  display: none !important;
}

/* Ajuste del alto total para que el footer no quede cortado */
body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
  grid-template-rows: auto 96px !important;
}

/* Pantallas bajas */
@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre .sobre-photo-frame {
    inset: 14px 0 0 0 !important;
    min-height: 500px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 390px !important;
    height: 390px !important;
    top: 52px !important;
    left: 10px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 42px !important;
    width: 370px !important;
    height: 500px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer {
    height: 62px !important;
    min-height: 62px !important;
    margin: 0 34px 10px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-rows: auto 78px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-left {
    min-height: 650px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame {
    inset: 12px 0 0 0 !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 400px !important;
    height: 400px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 390px !important;
    height: 520px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer {
    height: 70px !important;
    min-height: 70px !important;
    margin: 16px 12px !important;
    background-size: contain !important;
    background-color: #fff !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-left {
    min-height: 560px !important;
  }

  body.site-public .face#sobre .sobre-photo-frame::before {
    width: 290px !important;
    height: 290px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: 300px !important;
    height: 410px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer {
    height: 54px !important;
    min-height: 54px !important;
    margin: 14px 8px !important;
  }
}


/* =========================================================
   SOBRE GILBERTH - ARQUITECTURA FINAL LIMPIA
   estructura real: foto | contenido | footer, sin logo repetido
   ========================================================= */
body.site-public .face#sobre {
  padding: 86px 14px 14px !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -9% 74%, rgba(195,146,63,.07), transparent 24%),
    radial-gradient(circle at 106% 4%, rgba(195,146,63,.07), transparent 22%),
    linear-gradient(180deg, #fcfbf7 0%, #f7f4ed 100%) !important;
}

body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final {
  position: relative !important;
  z-index: 2 !important;
  width: min(1520px, 100%) !important;
  max-width: 1520px !important;
  min-height: calc(100dvh - 104px) !important;
  height: auto !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 38.8% 61.2% !important;
  grid-template-rows: minmax(520px, 1fr) 76px !important;
  gap: 0 !important;
  border: 1px solid rgba(178,146,89,.34) !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #fcfbf7 0%, #f8f5ee 100%) !important;
  box-shadow: 0 5px 15px rgba(70,52,23,.035) !important;
  overflow: hidden !important;
  text-align: left !important;
}

body.site-public .face#sobre .sobre-photo-zone {
  position: relative !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  min-height: 520px !important;
  overflow: visible !important;
}

/* no logo interno: el logo real pertenece al menú superior */
body.site-public .face#sobre .sobre-brand-mini,
body.site-public .face#sobre .sobre-left .sobre-brand-mini {
  display: none !important;
}

body.site-public .face#sobre .sobre-photo-orbit {
  position: absolute !important;
  z-index: 1 !important;
  left: 7px !important;
  top: 52px !important;
  width: 455px !important;
  height: 455px !important;
  border: 1px solid rgba(202,168,101,.50) !important;
  border-radius: 50% !important;
  background: transparent !important;
  pointer-events: none !important;
}

body.site-public .face#sobre .sobre-photo-person {
  position: absolute !important;
  z-index: 3 !important;
  left: 40px !important;
  bottom: 0 !important;
  width: 430px !important;
  height: 560px !important;
  background: url("../img/custom/gilberth-sobre-contacto-grande.png") center bottom / contain no-repeat !important;
  clip-path: none !important;
  filter: drop-shadow(0 14px 18px rgba(0,0,0,.12)) !important;
}

body.site-public .face#sobre .sobre-photo-person::before,
body.site-public .face#sobre .sobre-photo-person::after,
body.site-public .face#sobre .sobre-photo-frame::before,
body.site-public .face#sobre .sobre-photo-frame::after {
  display: none !important;
  content: none !important;
}

body.site-public .face#sobre .sobre-quote-card,
body.site-public .face#sobre .sobre-quote {
  position: absolute !important;
  z-index: 6 !important;
  left: 18px !important;
  bottom: 14px !important;
  width: 282px !important;
  min-height: 128px !important;
  margin: 0 !important;
  padding: 18px 18px 14px !important;
  border: 1px solid rgba(193,132,35,.72) !important;
  border-radius: 9px !important;
  background: rgba(7,7,7,.95) !important;
  box-shadow: 0 10px 18px rgba(0,0,0,.14) !important;
  color: #fffaf1 !important;
}

body.site-public .face#sobre .sobre-quote-card span,
body.site-public .face#sobre .sobre-quote span {
  position: absolute !important;
  left: 12px !important;
  top: 4px !important;
  color: #d89a32 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 52px !important;
  line-height: 1 !important;
}

body.site-public .face#sobre .sobre-quote-card p,
body.site-public .face#sobre .sobre-quote p {
  margin: 18px 0 12px !important;
  color: #fff8ec !important;
  font-size: 11.7px !important;
  line-height: 1.5 !important;
}

body.site-public .face#sobre .sobre-quote-card b,
body.site-public .face#sobre .sobre-quote b {
  display: block !important;
  color: #d89a32 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 15px !important;
  font-style: italic !important;
  font-weight: 400 !important;
}

body.site-public .face#sobre .sobre-content-zone,
body.site-public .face#sobre .sobre-right {
  position: relative !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  padding: 22px 24px 0 4px !important;
}

body.site-public .face#sobre .sobre-heading-clean,
body.site-public .face#sobre .sobre-heading {
  max-width: 940px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-heading-clean .kicker,
body.site-public .face#sobre .sobre-heading .kicker {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 12px !important;
  color: #c18824 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sobre .sobre-heading-clean .kicker::before,
body.site-public .face#sobre .sobre-heading-clean .kicker::after,
body.site-public .face#sobre .sobre-heading .kicker::before,
body.site-public .face#sobre .sobre-heading .kicker::after {
  content: "" !important;
  width: 82px !important;
  height: 1px !important;
  background: rgba(201,155,67,.55) !important;
}

body.site-public .face#sobre .sobre-heading-clean .headline,
body.site-public .face#sobre .sobre-heading .headline {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 76px !important;
  font-weight: 400 !important;
  line-height: .95 !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#sobre .sobre-title-line {
  position: relative !important;
  display: block !important;
  width: 136px !important;
  height: 1px !important;
  margin: 10px auto 10px !important;
  background: rgba(201,155,67,.68) !important;
}

body.site-public .face#sobre .sobre-title-line::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 7px !important;
  height: 7px !important;
  background: #c99b43 !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

body.site-public .face#sobre .sobre-heading-clean .sub,
body.site-public .face#sobre .sobre-heading .sub {
  max-width: 880px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-heading-clean .sub.sub-gold,
body.site-public .face#sobre .sobre-heading .sub.sub-gold {
  color: #c18824 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

body.site-public .face#sobre .sobre-heading-clean .sub.sub-dark,
body.site-public .face#sobre .sobre-heading .sub.sub-dark {
  margin-top: 4px !important;
  color: #423b33 !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
}

body.site-public .face#sobre .sobre-credentials {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
  max-width: 910px !important;
  margin: 16px auto 0 !important;
}

body.site-public .face#sobre .sobre-credentials article {
  min-height: 118px !important;
  padding: 0 10px !important;
  text-align: center !important;
  border-left: 1px solid rgba(191,158,95,.45) !important;
}

body.site-public .face#sobre .sobre-credentials article:first-child { border-left: 0 !important; }

body.site-public .face#sobre .sobre-credentials i {
  width: 58px !important;
  height: 58px !important;
  margin: 0 auto 10px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(198,139,42,.48) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.76) !important;
  color: #bd8429 !important;
  font-size: 24px !important;
  font-style: normal !important;
  line-height: 1 !important;
}

body.site-public .face#sobre .sobre-credentials article:nth-child(2) i {
  color: #000 !important;
  font-size: 18px !important;
  font-weight: 800 !important;
}

body.site-public .face#sobre .sobre-credentials strong {
  display: block !important;
  margin: 0 0 7px !important;
  color: #15100a !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  font-weight: 950 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sobre .sobre-credentials p {
  margin: 0 !important;
  color: #4b443b !important;
  font-size: 10px !important;
  line-height: 1.42 !important;
}

body.site-public .face#sobre .sobre-section-title {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 18px !important;
  max-width: 760px !important;
  margin: 12px auto !important;
  color: #b2802f !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-section-title span {
  height: 1px !important;
  background: rgba(201,155,67,.52) !important;
}

body.site-public .face#sobre .sobre-section-title strong {
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body.site-public .face#sobre .sobre-stats {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
  max-width: 920px !important;
  margin: 0 auto !important;
}

body.site-public .face#sobre .sobre-stats article {
  min-height: 106px !important;
  padding: 0 10px !important;
  border-left: 1px solid rgba(191,158,95,.45) !important;
  text-align: center !important;
}
body.site-public .face#sobre .sobre-stats article:first-child { border-left: 0 !important; }

body.site-public .face#sobre .sobre-stats i {
  display: block !important;
  margin: 0 auto 7px !important;
  color: #bd8429 !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-style: normal !important;
}

body.site-public .face#sobre .sobre-stats b {
  display: block !important;
  margin: 0 0 7px !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 400 !important;
}

body.site-public .face#sobre .sobre-stats b small { font-size: 12px !important; }

body.site-public .face#sobre .sobre-stats strong {
  display: block !important;
  margin: 0 0 6px !important;
  color: #15100a !important;
  font-size: 9.8px !important;
  line-height: 1.26 !important;
  font-weight: 950 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sobre .sobre-stats p {
  margin: 0 !important;
  color: #4b443b !important;
  font-size: 9.6px !important;
  line-height: 1.38 !important;
}

body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
body.site-public .face#sobre .sobre-logos-footer {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  min-height: 64px !important;
  height: 64px !important;
  margin: 0 38px 12px !important;
  display: grid !important;
  grid-template-columns: 174px minmax(0, 1fr) !important;
  align-items: stretch !important;
  border: 1px solid rgba(191,158,95,.25) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 5px 14px rgba(70,52,23,.035) !important;
  overflow: hidden !important;
}

body.site-public .face#sobre .sobre-trust {
  min-height: 64px !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0,1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 18px !important;
  border-right: 1px solid rgba(191,158,95,.28) !important;
}

body.site-public .face#sobre .sobre-trust span { color: #bd8429 !important; font-size: 24px !important; line-height: 1 !important; }
body.site-public .face#sobre .sobre-trust strong {
  color: #b2802f !important;
  font-size: 10.8px !important;
  line-height: 1.2 !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

body.site-public .face#sobre .sobre-logo-strip {
  min-width: 0 !important;
  height: 64px !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
}

body.site-public .face#sobre .sobre-logo-strip img,
body.site-public .face#sobre .sobre-logos-footer img {
  display: block !important;
  width: 100% !important;
  height: 58px !important;
  object-fit: contain !important;
  padding: 0 14px !important;
  filter: grayscale(1) contrast(1.06) opacity(.96) !important;
  background: transparent !important;
}

/* cancela el parche que convertía el footer en imagen de fondo */
body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean {
  background-image: none !important;
  background-color: rgba(255,255,255,.92) !important;
}

@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre { padding-top: 82px !important; }
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final {
    min-height: calc(100dvh - 98px) !important;
    grid-template-rows: minmax(475px, 1fr) 66px !important;
  }
  body.site-public .face#sobre .sobre-photo-zone { min-height: 475px !important; }
  body.site-public .face#sobre .sobre-photo-orbit { width: 390px !important; height: 390px !important; top: 52px !important; left: 10px !important; }
  body.site-public .face#sobre .sobre-photo-person { left: 42px !important; width: 370px !important; height: 500px !important; }
  body.site-public .face#sobre .sobre-quote-card { width: 266px !important; min-height: 118px !important; bottom: 10px !important; }
  body.site-public .face#sobre .sobre-quote-card p { font-size: 11px !important; }
  body.site-public .face#sobre .sobre-heading-clean .headline { font-size: 66px !important; }
  body.site-public .face#sobre .sobre-heading-clean .sub.sub-gold { font-size: 14px !important; }
  body.site-public .face#sobre .sobre-heading-clean .sub.sub-dark { font-size: 13px !important; }
  body.site-public .face#sobre .sobre-credentials { margin-top: 14px !important; }
  body.site-public .face#sobre .sobre-credentials article { min-height: 108px !important; }
  body.site-public .face#sobre .sobre-credentials i { width: 54px !important; height: 54px !important; font-size: 22px !important; }
  body.site-public .face#sobre .sobre-credentials article:nth-child(2) i { font-size: 17px !important; }
  body.site-public .face#sobre .sobre-credentials strong { font-size: 10.2px !important; }
  body.site-public .face#sobre .sobre-credentials p { font-size: 9.6px !important; }
  body.site-public .face#sobre .sobre-section-title { margin: 10px auto !important; }
  body.site-public .face#sobre .sobre-stats article { min-height: 96px !important; }
  body.site-public .face#sobre .sobre-stats i { font-size: 22px !important; }
  body.site-public .face#sobre .sobre-stats b { font-size: 17px !important; }
  body.site-public .face#sobre .sobre-stats strong,
  body.site-public .face#sobre .sobre-stats p { font-size: 9.2px !important; }
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer { height: 56px !important; min-height: 56px !important; margin: 0 34px 10px !important; }
  body.site-public .face#sobre .sobre-trust { min-height: 56px !important; }
  body.site-public .face#sobre .sobre-logo-strip { height: 56px !important; }
  body.site-public .face#sobre .sobre-logo-strip img,
  body.site-public .face#sobre .sobre-logos-footer img { height: 52px !important; }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre { padding: 96px 16px 22px !important; }
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final {
    min-height: auto !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }
  body.site-public .face#sobre .sobre-photo-zone { min-height: 650px !important; }
  body.site-public .face#sobre .sobre-photo-orbit { left: 50% !important; transform: translateX(-50%) !important; width: 400px !important; height: 400px !important; }
  body.site-public .face#sobre .sobre-photo-person { left: 50% !important; transform: translateX(-50%) !important; width: 390px !important; height: 520px !important; }
  body.site-public .face#sobre .sobre-quote-card { left: 50% !important; transform: translateX(-50%) !important; }
  body.site-public .face#sobre .sobre-content-zone { grid-column: 1 !important; grid-row: 2 !important; padding: 16px 10px 0 !important; }
  body.site-public .face#sobre .sobre-heading-clean .headline { font-size: clamp(52px, 9vw, 74px) !important; }
  body.site-public .face#sobre .sobre-credentials { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 18px !important; }
  body.site-public .face#sobre .sobre-credentials article,
  body.site-public .face#sobre .sobre-stats article { border-left: 0 !important; border: 1px solid rgba(191,158,95,.35) !important; border-radius: 12px !important; padding: 18px 14px !important; }
  body.site-public .face#sobre .sobre-stats { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 18px !important; }
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    grid-column: 1 !important;
    grid-row: 3 !important;
    grid-template-columns: 1fr !important;
    height: auto !important;
    min-height: 116px !important;
    margin: 16px 12px !important;
  }
  body.site-public .face#sobre .sobre-trust { border-right: 0 !important; border-bottom: 1px solid rgba(191,158,95,.25) !important; }
  body.site-public .face#sobre .sobre-logo-strip { height: 64px !important; }
}

@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-photo-zone { min-height: 560px !important; }
  body.site-public .face#sobre .sobre-photo-orbit { width: 290px !important; height: 290px !important; }
  body.site-public .face#sobre .sobre-photo-person { width: 300px !important; height: 410px !important; }
  body.site-public .face#sobre .sobre-quote-card { width: 268px !important; bottom: 8px !important; }
  body.site-public .face#sobre .sobre-heading-clean .headline { font-size: clamp(40px, 12vw, 58px) !important; }
  body.site-public .face#sobre .sobre-credentials,
  body.site-public .face#sobre .sobre-stats { grid-template-columns: 1fr !important; }
}


/* =========================================================
   SOBRE GILBERTH - ESTRUCTURA REAL FINAL CORREGIDA
   - no repite logo interno
   - foto grande y proporcionada
   - footer exacto enviado como barra real
   ========================================================= */

/* Desktop: una pantalla bien compuesta */
@media (min-width: 1101px) {
  body.site-public .face#sobre {
    padding: 86px 12px 12px !important;
    overflow: hidden !important;
    background:
      radial-gradient(circle at -8% 75%, rgba(195,146,63,.06), transparent 25%),
      radial-gradient(circle at 105% 5%, rgba(195,146,63,.06), transparent 22%),
      linear-gradient(180deg, #fcfbf7 0%, #f7f4ed 100%) !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final {
    width: min(1520px, 100%) !important;
    max-width: 1520px !important;
    height: calc(100dvh - 98px) !important;
    min-height: 700px !important;
    max-height: calc(100dvh - 98px) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 39.5% 60.5% !important;
    grid-template-rows: minmax(0, 1fr) 82px !important;
    gap: 0 !important;
    border: 1px solid rgba(178,146,89,.34) !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, #fcfbf7 0%, #f8f5ee 100%) !important;
    box-shadow: 0 5px 15px rgba(70,52,23,.035) !important;
    overflow: hidden !important;
  }

  /* Nunca mostrar logo dentro de la sección: ya está en el menú */
  body.site-public .face#sobre .sobre-brand-mini,
  body.site-public .face#sobre .sobre-left .sobre-brand-mini {
    display: none !important;
  }

  body.site-public .face#sobre .sobre-photo-zone {
    grid-column: 1 !important;
    grid-row: 1 !important;
    position: relative !important;
    min-height: 0 !important;
    height: 100% !important;
    overflow: visible !important;
  }

  /* Círculo detrás: menor que la foto */
  body.site-public .face#sobre .sobre-photo-orbit {
    position: absolute !important;
    z-index: 1 !important;
    left: 10px !important;
    top: 54px !important;
    width: 455px !important;
    height: 455px !important;
    border: 1px solid rgba(202,168,101,.50) !important;
    border-radius: 50% !important;
    background: transparent !important;
    pointer-events: none !important;
  }

  /* Foto protagonista, más grande que el círculo */
  body.site-public .face#sobre .sobre-photo-person {
    position: absolute !important;
    z-index: 3 !important;
    left: -6px !important;
    bottom: -8px !important;
    width: 595px !important;
    height: 705px !important;
    background: url("../img/custom/gilberth-sobre-contacto-grande.png") center bottom / 122% auto no-repeat !important;
    clip-path: none !important;
    filter: drop-shadow(0 16px 20px rgba(0,0,0,.13)) !important;
  }

  body.site-public .face#sobre .sobre-photo-person::before,
  body.site-public .face#sobre .sobre-photo-person::after,
  body.site-public .face#sobre .sobre-photo-frame::before,
  body.site-public .face#sobre .sobre-photo-frame::after {
    display: none !important;
    content: none !important;
  }

  body.site-public .face#sobre .sobre-quote-card,
  body.site-public .face#sobre .sobre-quote {
    position: absolute !important;
    z-index: 7 !important;
    left: 18px !important;
    bottom: 16px !important;
    width: 286px !important;
    min-height: 128px !important;
    margin: 0 !important;
    padding: 18px 18px 14px !important;
    border: 1px solid rgba(193,132,35,.72) !important;
    border-radius: 9px !important;
    background: rgba(7,7,7,.95) !important;
    box-shadow: 0 10px 18px rgba(0,0,0,.14) !important;
    color: #fffaf1 !important;
  }

  body.site-public .face#sobre .sobre-quote-card span,
  body.site-public .face#sobre .sobre-quote span {
    position: absolute !important;
    left: 12px !important;
    top: 4px !important;
    color: #d89a32 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 52px !important;
    line-height: 1 !important;
  }

  body.site-public .face#sobre .sobre-quote-card p,
  body.site-public .face#sobre .sobre-quote p {
    margin: 18px 0 12px !important;
    color: #fff8ec !important;
    font-size: 11.8px !important;
    line-height: 1.5 !important;
  }

  body.site-public .face#sobre .sobre-quote-card b,
  body.site-public .face#sobre .sobre-quote b {
    display: block !important;
    color: #d89a32 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 15px !important;
    font-style: italic !important;
    font-weight: 400 !important;
  }

  /* Contenido derecho centrado y con proporción */
  body.site-public .face#sobre .sobre-content-zone,
  body.site-public .face#sobre .sobre-right {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    padding: 18px 28px 0 4px !important;
  }

  body.site-public .face#sobre .sobre-heading-clean,
  body.site-public .face#sobre .sobre-heading {
    max-width: 965px !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .kicker,
  body.site-public .face#sobre .sobre-heading .kicker {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px !important;
    margin: 0 0 12px !important;
    color: #c18824 !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .15em !important;
    text-transform: uppercase !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .kicker::before,
  body.site-public .face#sobre .sobre-heading-clean .kicker::after,
  body.site-public .face#sobre .sobre-heading .kicker::before,
  body.site-public .face#sobre .sobre-heading .kicker::after {
    content: "" !important;
    width: 82px !important;
    height: 1px !important;
    background: rgba(201,155,67,.55) !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .headline,
  body.site-public .face#sobre .sobre-heading .headline {
    margin: 0 !important;
    color: #0d0d0d !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: clamp(66px, 4.55vw, 80px) !important;
    font-weight: 400 !important;
    line-height: .95 !important;
    letter-spacing: -.055em !important;
  }

  body.site-public .face#sobre .sobre-title-line {
    position: relative !important;
    display: block !important;
    width: 136px !important;
    height: 1px !important;
    margin: 10px auto 10px !important;
    background: rgba(201,155,67,.68) !important;
  }

  body.site-public .face#sobre .sobre-title-line::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 7px !important;
    height: 7px !important;
    background: #c99b43 !important;
    transform: translate(-50%, -50%) rotate(45deg) !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .sub,
  body.site-public .face#sobre .sobre-heading .sub {
    max-width: 890px !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .sub.sub-gold,
  body.site-public .face#sobre .sobre-heading .sub.sub-gold {
    color: #c18824 !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .sub.sub-dark,
  body.site-public .face#sobre .sobre-heading .sub.sub-dark {
    margin-top: 4px !important;
    color: #423b33 !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
  }

  body.site-public .face#sobre .sobre-credentials {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 0 !important;
    max-width: 930px !important;
    margin: 18px auto 0 !important;
  }

  body.site-public .face#sobre .sobre-credentials article {
    min-height: 118px !important;
    padding: 0 10px !important;
    text-align: center !important;
    border-left: 1px solid rgba(191,158,95,.45) !important;
  }

  body.site-public .face#sobre .sobre-credentials article:first-child {
    border-left: 0 !important;
  }

  body.site-public .face#sobre .sobre-credentials i {
    width: 58px !important;
    height: 58px !important;
    margin: 0 auto 10px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(198,139,42,.48) !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.76) !important;
    color: #bd8429 !important;
    font-size: 24px !important;
    font-style: normal !important;
    line-height: 1 !important;
  }

  body.site-public .face#sobre .sobre-credentials article:nth-child(2) i {
    color: #000 !important;
    font-size: 18px !important;
    font-weight: 800 !important;
  }

  body.site-public .face#sobre .sobre-credentials strong {
    display: block !important;
    margin: 0 0 7px !important;
    color: #15100a !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    font-weight: 950 !important;
    letter-spacing: .035em !important;
    text-transform: uppercase !important;
  }

  body.site-public .face#sobre .sobre-credentials p {
    margin: 0 !important;
    color: #4b443b !important;
    font-size: 10px !important;
    line-height: 1.42 !important;
  }

  body.site-public .face#sobre .sobre-section-title {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: center !important;
    gap: 18px !important;
    max-width: 760px !important;
    margin: 12px auto !important;
    color: #b2802f !important;
    text-align: center !important;
  }

  body.site-public .face#sobre .sobre-section-title span {
    height: 1px !important;
    background: rgba(201,155,67,.52) !important;
  }

  body.site-public .face#sobre .sobre-section-title strong {
    color: #b2802f !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  body.site-public .face#sobre .sobre-stats {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 0 !important;
    max-width: 930px !important;
    margin: 0 auto !important;
  }

  body.site-public .face#sobre .sobre-stats article {
    min-height: 106px !important;
    padding: 0 10px !important;
    border-left: 1px solid rgba(191,158,95,.45) !important;
    text-align: center !important;
  }

  body.site-public .face#sobre .sobre-stats article:first-child {
    border-left: 0 !important;
  }

  body.site-public .face#sobre .sobre-stats i {
    display: block !important;
    margin: 0 auto 7px !important;
    color: #bd8429 !important;
    font-size: 24px !important;
    line-height: 1 !important;
    font-style: normal !important;
  }

  body.site-public .face#sobre .sobre-stats b {
    display: block !important;
    margin: 0 0 7px !important;
    color: #15100a !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 18px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  body.site-public .face#sobre .sobre-stats b small {
    font-size: 12px !important;
  }

  body.site-public .face#sobre .sobre-stats strong {
    display: block !important;
    margin: 0 0 6px !important;
    color: #15100a !important;
    font-size: 9.8px !important;
    line-height: 1.26 !important;
    font-weight: 950 !important;
    letter-spacing: .035em !important;
    text-transform: uppercase !important;
  }

  body.site-public .face#sobre .sobre-stats p {
    margin: 0 !important;
    color: #4b443b !important;
    font-size: 9.6px !important;
    line-height: 1.38 !important;
  }

  /* Footer exacto enviado, sin duplicaciones ni imagen miniatura */
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    min-height: 82px !important;
    height: 82px !important;
    margin: 0 38px 12px !important;
    padding: 0 !important;
    display: block !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: fill !important;
    object-position: center center !important;
    filter: none !important;
    padding: 0 !important;
  }

  body.site-public .face#sobre .sobre-trust,
  body.site-public .face#sobre .sobre-logo-strip {
    display: none !important;
  }
}

/* Desktop bajo: se mantiene proporción, sin achicar la foto a miniatura */
@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre {
    padding-top: 82px !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final {
    height: calc(100dvh - 94px) !important;
    min-height: 660px !important;
    max-height: calc(100dvh - 94px) !important;
    grid-template-rows: minmax(0, 1fr) 72px !important;
  }

  body.site-public .face#sobre .sobre-photo-orbit {
    left: 10px !important;
    top: 48px !important;
    width: 405px !important;
    height: 405px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: -10px !important;
    bottom: -8px !important;
    width: 535px !important;
    height: 630px !important;
    background-size: 120% auto !important;
  }

  body.site-public .face#sobre .sobre-quote-card,
  body.site-public .face#sobre .sobre-quote {
    width: 270px !important;
    min-height: 118px !important;
    bottom: 12px !important;
  }

  body.site-public .face#sobre .sobre-quote-card p,
  body.site-public .face#sobre .sobre-quote p {
    font-size: 11px !important;
  }

  body.site-public .face#sobre .sobre-content-zone,
  body.site-public .face#sobre .sobre-right {
    padding-top: 14px !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .headline,
  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(58px, 4.2vw, 70px) !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .sub.sub-gold,
  body.site-public .face#sobre .sobre-heading .sub.sub-gold {
    font-size: 14px !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .sub.sub-dark,
  body.site-public .face#sobre .sobre-heading .sub.sub-dark {
    font-size: 13px !important;
  }

  body.site-public .face#sobre .sobre-credentials {
    margin-top: 14px !important;
  }

  body.site-public .face#sobre .sobre-credentials article {
    min-height: 106px !important;
  }

  body.site-public .face#sobre .sobre-credentials i {
    width: 52px !important;
    height: 52px !important;
    font-size: 21px !important;
    margin-bottom: 8px !important;
  }

  body.site-public .face#sobre .sobre-credentials article:nth-child(2) i {
    font-size: 17px !important;
  }

  body.site-public .face#sobre .sobre-credentials strong {
    font-size: 10px !important;
  }

  body.site-public .face#sobre .sobre-credentials p {
    font-size: 9.4px !important;
  }

  body.site-public .face#sobre .sobre-section-title {
    margin: 9px auto !important;
  }

  body.site-public .face#sobre .sobre-stats article {
    min-height: 92px !important;
  }

  body.site-public .face#sobre .sobre-stats i {
    font-size: 21px !important;
  }

  body.site-public .face#sobre .sobre-stats b {
    font-size: 17px !important;
  }

  body.site-public .face#sobre .sobre-stats strong,
  body.site-public .face#sobre .sobre-stats p {
    font-size: 9px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    height: 72px !important;
    min-height: 72px !important;
    margin: 0 36px 10px !important;
  }
}

/* Responsive: vuelve a layout vertical y con scroll */
@media (max-width: 1100px) {
  body.site-public .face#sobre {
    padding: 96px 16px 22px !important;
    overflow-y: auto !important;
  }

  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
    overflow: visible !important;
  }

  body.site-public .face#sobre .sobre-photo-zone {
    min-height: 680px !important;
  }

  body.site-public .face#sobre .sobre-photo-orbit {
    left: 50% !important;
    top: 52px !important;
    transform: translateX(-50%) !important;
    width: 390px !important;
    height: 390px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: 0 !important;
    width: 470px !important;
    height: 560px !important;
    background-size: 116% auto !important;
  }

  body.site-public .face#sobre .sobre-quote-card,
  body.site-public .face#sobre .sobre-quote {
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: 14px !important;
  }

  body.site-public .face#sobre .sobre-content-zone,
  body.site-public .face#sobre .sobre-right {
    grid-column: 1 !important;
    grid-row: 2 !important;
    padding: 18px 14px 0 !important;
  }

  body.site-public .face#sobre .sobre-credentials,
  body.site-public .face#sobre .sobre-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  body.site-public .face#sobre .sobre-credentials article,
  body.site-public .face#sobre .sobre-stats article {
    border-left: 0 !important;
    border: 1px solid rgba(191,158,95,.35) !important;
    border-radius: 12px !important;
    padding: 18px 14px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    grid-column: 1 !important;
    grid-row: 3 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 18px 14px 18px !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
  }
}

@media (max-width: 760px) {
  body.site-public .face#sobre .sobre-photo-zone {
    min-height: 560px !important;
  }

  body.site-public .face#sobre .sobre-photo-orbit {
    width: 290px !important;
    height: 290px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    width: 335px !important;
    height: 410px !important;
  }

  body.site-public .face#sobre .sobre-quote-card,
  body.site-public .face#sobre .sobre-quote {
    width: 270px !important;
  }

  body.site-public .face#sobre .sobre-heading-clean .headline,
  body.site-public .face#sobre .sobre-heading .headline {
    font-size: clamp(40px, 12vw, 58px) !important;
  }

  body.site-public .face#sobre .sobre-credentials,
  body.site-public .face#sobre .sobre-stats {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   AJUSTE - FOOTER SOBRE GILBERTH MÁS ACORDE
   la barra inferior exacta no debe verse pequeña
   ========================================================= */
@media (min-width: 1101px) {
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    margin: 0 18px 10px !important;
    height: auto !important;
    min-height: 0 !important;
    display: block !important;
    overflow: visible !important;
    background: transparent !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    margin: 0 !important;
  }
}

@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    margin: 0 16px 8px !important;
    height: auto !important;
    min-height: 0 !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    width: 100% !important;
    height: auto !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    margin: 18px 10px 16px !important;
    height: auto !important;
    min-height: 0 !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }
}


/* =========================================================
   FIX FINAL - sobre-footer-exacto.png MÁS EXTENDIDO
   La barra inferior debe ocupar todo el ancho útil de la sección.
   ========================================================= */
@media (min-width: 1101px) {
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-rows: minmax(0, 1fr) 108px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: calc(100% + 24px) !important;
    max-width: none !important;
    height: 98px !important;
    min-height: 98px !important;
    margin: 0 -12px 8px !important;
    padding: 0 !important;
    display: block !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    display: block !important;
    width: 100% !important;
    height: 98px !important;
    max-width: none !important;
    object-fit: fill !important;
    object-position: center center !important;
    padding: 0 !important;
    margin: 0 !important;
    filter: none !important;
  }
}

@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-rows: minmax(0, 1fr) 100px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    width: calc(100% + 20px) !important;
    height: 92px !important;
    min-height: 92px !important;
    margin: 0 -10px 6px !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    height: 92px !important;
    object-fit: fill !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    width: calc(100% + 20px) !important;
    max-width: none !important;
    margin: 18px -10px 16px !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
    object-fit: fill !important;
  }
}


/* =========================================================
   FIX FINAL - FOOTER SOBRE TOTALMENTE EXTENDIDO EN TODO EL CONTENEDOR
   ========================================================= */
@media (min-width: 1101px) {
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-rows: minmax(0, 1fr) 108px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 108px !important;
    min-height: 108px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    align-self: end !important;
    justify-self: stretch !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 108px !important;
    min-height: 108px !important;
    object-fit: fill !important;
    object-position: center center !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
  }
}

@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-rows: minmax(0, 1fr) 96px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    width: 100% !important;
    height: 96px !important;
    min-height: 96px !important;
    margin: 0 !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    width: 100% !important;
    height: 96px !important;
    min-height: 96px !important;
    object-fit: fill !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean,
  body.site-public .face#sobre .sobre-logos-footer {
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: fill !important;
    padding: 0 !important;
    margin: 0 !important;
  }
}


/* =========================================================
   FIX EXTRA FUERTE - FOOTER SOBRE A TODO EL ANCHO DEL CONTENEDOR
   ========================================================= */
@media (min-width: 1101px) {
  body.site-public .face#sobre .sobre-gilberth-layout,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-rows: minmax(0,1fr) 112px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer,
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    width: calc(100% + 2px) !important;
    min-width: calc(100% + 2px) !important;
    max-width: none !important;
    height: 112px !important;
    min-height: 112px !important;
    margin: 0 -1px -1px -1px !important;
    padding: 0 !important;
    border: 0 !important;
    border-top: 1px solid rgba(191,158,95,.22) !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: #fbfaf6 !important;
    box-shadow: none !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    height: 112px !important;
    min-height: 112px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    object-fit: fill !important;
    object-position: center center !important;
  }
}

@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre .sobre-gilberth-layout,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-rows: minmax(0,1fr) 100px !important;
  }

  body.site-public .face#sobre .sobre-logos-footer,
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean {
    width: calc(100% + 2px) !important;
    min-width: calc(100% + 2px) !important;
    height: 100px !important;
    min-height: 100px !important;
    margin: 0 -1px -1px -1px !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    width: 100% !important;
    min-width: 100% !important;
    height: 100px !important;
    min-height: 100px !important;
    object-fit: fill !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-logos-footer,
  body.site-public .face#sobre .sobre-logos-footer.sobre-footer-clean {
    width: calc(100% + 2px) !important;
    min-width: calc(100% + 2px) !important;
    max-width: none !important;
    margin: 18px -1px -1px -1px !important;
    padding: 0 !important;
    border: 0 !important;
    border-top: 1px solid rgba(191,158,95,.22) !important;
    border-radius: 0 !important;
    background: #fbfaf6 !important;
    overflow: hidden !important;
  }

  body.site-public .face#sobre .sobre-footer-exact-img {
    display: block !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: fill !important;
  }
}


/* =========================================================
   FOOTER SOBRE GILBERTH - SOLO FOOTER, 100% ADAPTABLE AL CONTENEDOR
   Reemplaza la imagen por estructura real para que nunca quede corta.
   ========================================================= */
@media (min-width: 1101px) {
  body.site-public .face#sobre .sobre-gilberth-layout,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    position: relative !important;
    grid-template-rows: minmax(0, 1fr) 98px !important;
  }

  body.site-public .face#sobre .sobre-footer-adaptable {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: 98px !important;
    min-height: 98px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-top: 1px solid rgba(191,158,95,.22) !important;
    border-radius: 0 !important;
    background: rgba(255,255,255,.82) !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  body.site-public .face#sobre .sobre-footer-inner {
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    grid-template-columns: 185px repeat(6, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    border: 1px solid rgba(191,158,95,.20) !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    background: rgba(255,255,255,.86) !important;
  }

  body.site-public .face#sobre .sobre-footer-trust,
  body.site-public .face#sobre .sobre-footer-logo {
    min-width: 0 !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    padding: 0 18px !important;
    border-left: 1px solid rgba(191,158,95,.25) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  body.site-public .face#sobre .sobre-footer-trust {
    border-left: 0 !important;
    justify-content: flex-start !important;
    padding-left: 40px !important;
  }

  body.site-public .face#sobre .sobre-footer-trust span {
    color: #bd8429 !important;
    font-size: 28px !important;
    line-height: 1 !important;
    flex: 0 0 auto !important;
  }

  body.site-public .face#sobre .sobre-footer-trust strong {
    color: #b2802f !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 950 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  body.site-public .face#sobre .sobre-footer-logo {
    flex-direction: column !important;
    text-align: center !important;
    gap: 3px !important;
  }

  body.site-public .face#sobre .sobre-footer-logo strong {
    display: block !important;
    margin: 0 !important;
    color: #111 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 26px !important;
    line-height: .92 !important;
    font-weight: 900 !important;
    letter-spacing: -.02em !important;
    filter: grayscale(1) contrast(1.1) !important;
  }

  body.site-public .face#sobre .sobre-footer-logo small {
    display: block !important;
    margin: 0 !important;
    color: #111 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 7.5px !important;
    line-height: 1.05 !important;
    font-weight: 600 !important;
    letter-spacing: -.01em !important;
    opacity: .80 !important;
  }

  body.site-public .face#sobre .sobre-footer-logo.pcm strong {
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 32px !important;
    font-weight: 400 !important;
    letter-spacing: .02em !important;
  }

  body.site-public .face#sobre .sobre-footer-logo.reniec strong {
    font-size: 28px !important;
    letter-spacing: -.04em !important;
  }

  body.site-public .face#sobre .sobre-footer-logo.servir strong {
    font-size: 34px !important;
    letter-spacing: -.06em !important;
    text-transform: lowercase !important;
  }

  body.site-public .face#sobre .sobre-footer-logo.sunarp strong {
    font-size: 30px !important;
    letter-spacing: -.04em !important;
    text-transform: lowercase !important;
  }

  body.site-public .face#sobre .sobre-footer-logo.osiptel strong {
    font-size: 24px !important;
    letter-spacing: .03em !important;
  }

  body.site-public .face#sobre .sobre-footer-logo.bid strong {
    font-size: 31px !important;
    letter-spacing: -.04em !important;
  }

  /* Oculta cualquier footer de imagen anterior */
  body.site-public .face#sobre .sobre-footer-exact-img,
  body.site-public .face#sobre .sobre-trust,
  body.site-public .face#sobre .sobre-logo-strip {
    display: none !important;
  }
}

/* Pantallas bajas: ocupa todo el ancho y reduce altura sin quedar corto */
@media (min-width: 1101px) and (max-height: 900px) {
  body.site-public .face#sobre .sobre-gilberth-layout,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-maqueta-exacta {
    grid-template-rows: minmax(0, 1fr) 86px !important;
  }

  body.site-public .face#sobre .sobre-footer-adaptable {
    height: 86px !important;
    min-height: 86px !important;
  }

  body.site-public .face#sobre .sobre-footer-inner {
    grid-template-columns: 175px repeat(6, minmax(0, 1fr)) !important;
  }

  body.site-public .face#sobre .sobre-footer-trust {
    padding-left: 32px !important;
  }

  body.site-public .face#sobre .sobre-footer-trust strong {
    font-size: 10.5px !important;
  }

  body.site-public .face#sobre .sobre-footer-logo strong {
    font-size: 23px !important;
  }

  body.site-public .face#sobre .sobre-footer-logo small {
    font-size: 6.7px !important;
  }

  body.site-public .face#sobre .sobre-footer-logo.pcm strong { font-size: 28px !important; }
  body.site-public .face#sobre .sobre-footer-logo.reniec strong { font-size: 24px !important; }
  body.site-public .face#sobre .sobre-footer-logo.servir strong { font-size: 30px !important; }
  body.site-public .face#sobre .sobre-footer-logo.sunarp strong { font-size: 26px !important; }
  body.site-public .face#sobre .sobre-footer-logo.osiptel strong { font-size: 21px !important; }
  body.site-public .face#sobre .sobre-footer-logo.bid strong { font-size: 27px !important; }
}

/* Tablet y móvil */
@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-footer-adaptable {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(191,158,95,.22) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.86) !important;
    overflow: hidden !important;
  }

  body.site-public .face#sobre .sobre-footer-inner {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.site-public .face#sobre .sobre-footer-trust,
  body.site-public .face#sobre .sobre-footer-logo {
    min-height: 84px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px !important;
    border-left: 1px solid rgba(191,158,95,.22) !important;
    border-top: 1px solid rgba(191,158,95,.22) !important;
    text-align: center !important;
  }

  body.site-public .face#sobre .sobre-footer-trust {
    grid-column: 1 / -1 !important;
    border-left: 0 !important;
    border-top: 0 !important;
    gap: 12px !important;
  }

  body.site-public .face#sobre .sobre-footer-logo:nth-child(2n) {
    border-left: 0 !important;
  }

  body.site-public .face#sobre .sobre-footer-trust span {
    color: #bd8429 !important;
    font-size: 28px !important;
  }

  body.site-public .face#sobre .sobre-footer-trust strong {
    color: #b2802f !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 950 !important;
    letter-spacing: .07em !important;
  }

  body.site-public .face#sobre .sobre-footer-logo {
    flex-direction: column !important;
    gap: 4px !important;
  }

  body.site-public .face#sobre .sobre-footer-logo strong {
    color: #111 !important;
    font-size: 24px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
  }

  body.site-public .face#sobre .sobre-footer-logo small {
    color: #111 !important;
    font-size: 8px !important;
    line-height: 1.1 !important;
    opacity: .80 !important;
  }
}

@media (max-width: 560px) {
  body.site-public .face#sobre .sobre-footer-inner {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#sobre .sobre-footer-logo,
  body.site-public .face#sobre .sobre-footer-logo:nth-child(2n) {
    border-left: 0 !important;
  }
}


/* =========================================================
   INICIO - FOOTER ADAPTABLE Y PORTADA BIEN ARMADA
   ========================================================= */

/* Desactiva el footer viejo de imagen si quedó en caché/clases antiguas */
body.site-public .face#inicio .logo-footer {
  display: none !important;
}

/* Portada: la sección completa no debe cortarse */
body.site-public .face#inicio {
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
  color: #fff8ee !important;
}

body.site-public .face#inicio .face-inner.two-col {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: 100dvh !important;
  min-height: 680px !important;
  margin: 0 !important;
  padding: 104px 52px 112px !important;
  display: block !important;
  overflow: hidden !important;
}

/* Fondo real del skyline */
body.site-public .face#inicio .city-card {
  position: absolute !important;
  z-index: 0 !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background:
    linear-gradient(90deg,
      rgba(4,4,5,.98) 0%,
      rgba(4,4,5,.92) 13%,
      rgba(4,4,5,.62) 31%,
      rgba(4,4,5,.14) 53%,
      rgba(4,4,5,0) 100%),
    linear-gradient(180deg,
      rgba(0,0,0,.16) 0%,
      rgba(0,0,0,.06) 42%,
      rgba(0,0,0,.66) 100%),
    url("../img/custom/hero-skyline-gca.png") center center / cover no-repeat !important;
  opacity: 1 !important;
}

body.site-public .face#inicio .city-card::before,
body.site-public .face#inicio .city-card::after,
body.site-public .face#inicio .city-card .building,
body.site-public .face#inicio .city-card .gold-road {
  display: none !important;
}

/* Arcos dorados del hero */
body.site-public .face#inicio .city-card {
  --home-arc-x: 43%;
}

body.site-public .face#inicio .city-card + * {
  position: relative !important;
}

body.site-public .face#inicio .face-inner.two-col::after {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  left: 39% !important;
  top: -35% !important;
  width: 560px !important;
  height: 560px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(198,139,42,.38) !important;
  box-shadow:
    0 0 0 14px transparent,
    0 0 0 25px rgba(198,139,42,.30),
    0 0 0 45px transparent,
    0 0 0 56px rgba(198,139,42,.25),
    0 0 0 77px transparent,
    0 0 0 88px rgba(198,139,42,.20),
    0 0 0 110px transparent,
    0 0 0 121px rgba(198,139,42,.16) !important;
  opacity: .58 !important;
  pointer-events: none !important;
}

/* Contenido hero */
body.site-public .face#inicio .home-copy {
  position: relative !important;
  z-index: 5 !important;
  width: min(680px, 48vw) !important;
  max-width: 680px !important;
  height: calc(100dvh - 216px) !important;
  min-height: 440px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body.site-public .face#inicio .kicker {
  justify-content: flex-start !important;
  gap: 14px !important;
  margin: 0 0 18px !important;
  color: #d8ba73 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
}

body.site-public .face#inicio .kicker::before {
  width: 34px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#inicio .kicker::after {
  display: none !important;
}

body.site-public .face#inicio .home-headline {
  max-width: 670px !important;
  margin: 0 !important;
  color: #f8f3ea !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(54px, 5.25vw, 78px) !important;
  font-weight: 400 !important;
  line-height: .94 !important;
  letter-spacing: -.062em !important;
  text-shadow: 0 4px 18px rgba(0,0,0,.38) !important;
}

body.site-public .face#inicio .home-headline span {
  color: #d8ba73 !important;
}

body.site-public .face#inicio .sub {
  position: relative !important;
  max-width: 620px !important;
  margin: 14px 0 0 40px !important;
  color: rgba(255,248,235,.86) !important;
  font-size: clamp(16px, 1.18vw, 20px) !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}

body.site-public .face#inicio .sub::before {
  content: "" !important;
  position: absolute !important;
  left: -40px !important;
  top: 50% !important;
  width: 30px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

/* Botones */
body.site-public .face#inicio .home-actions {
  margin-top: 34px !important;
  display: flex !important;
  gap: 18px !important;
  flex-wrap: nowrap !important;
}

body.site-public .face#inicio .home-actions .btn {
  min-width: 210px !important;
  height: 57px !important;
  min-height: 57px !important;
  padding: 0 26px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 11px !important;
  letter-spacing: .075em !important;
  font-weight: 950 !important;
}

body.site-public .face#inicio .home-actions .btn-gold {
  background: linear-gradient(135deg, #f0d183, #c99034 64%, #a56d25) !important;
  color: #130f09 !important;
  border-color: transparent !important;
}

body.site-public .face#inicio .home-actions .btn-ghost {
  color: #d8ba73 !important;
  border: 1px solid rgba(216,186,115,.45) !important;
  background: rgba(0,0,0,.12) !important;
}

/* Beneficios debajo */
body.site-public .face#inicio .mini-proofs {
  position: relative !important;
  z-index: 5 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 46px 0 0 !important;
  max-width: 825px !important;
}

body.site-public .face#inicio .mini-proofs article {
  min-height: 66px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  column-gap: 12px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-left: 1px solid rgba(216,186,115,.45) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(255,255,255,.86) !important;
}

body.site-public .face#inicio .mini-proofs article:first-child {
  padding-left: 0 !important;
  border-left: 0 !important;
}

body.site-public .face#inicio .mini-proofs i {
  grid-row: 1 / span 2 !important;
  width: 36px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
  color: #d8ba73 !important;
  font-style: normal !important;
  font-size: 31px !important;
  line-height: 1 !important;
  margin: 0 !important;
}

body.site-public .face#inicio .mini-proofs strong {
  display: block !important;
  margin: 0 0 7px !important;
  color: #fff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

body.site-public .face#inicio .mini-proofs span {
  display: block !important;
  color: rgba(255,255,255,.72) !important;
  font-size: 10.5px !important;
  line-height: 1.45 !important;
}

/* FOOTER INICIO: estructura real, adaptable a todo el contenedor */
body.site-public .face#inicio .home-trust-footer {
  position: absolute !important;
  z-index: 20 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 92px !important;
  min-height: 92px !important;
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) !important;
  align-items: stretch !important;
  padding: 0 52px !important;
  border-top: 1px solid rgba(216,186,115,.14) !important;
  background: rgba(10,10,10,.91) !important;
  box-shadow: 0 -8px 24px rgba(0,0,0,.28) !important;
  overflow: hidden !important;
}

body.site-public .face#inicio .home-trust-label {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 12px !important;
  min-width: 0 !important;
}

body.site-public .face#inicio .home-trust-label span {
  color: #d8ba73 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body.site-public .face#inicio .home-trust-label b {
  display: block !important;
  width: 42px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#inicio .home-trust-logos {
  min-width: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  align-items: center !important;
  gap: 0 !important;
}

body.site-public .face#inicio .home-logo {
  height: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  text-align: center !important;
  color: rgba(255,255,255,.74) !important;
  filter: grayscale(1) brightness(1.45) contrast(.92) !important;
  opacity: .86 !important;
}

body.site-public .face#inicio .home-logo strong {
  display: block !important;
  margin: 0 !important;
  color: rgba(255,255,255,.82) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 29px !important;
  line-height: .9 !important;
  font-weight: 900 !important;
  letter-spacing: -.045em !important;
  white-space: nowrap !important;
}

body.site-public .face#inicio .home-logo small {
  display: block !important;
  margin-top: 5px !important;
  color: rgba(255,255,255,.70) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 7px !important;
  line-height: 1.05 !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
  white-space: normal !important;
}

body.site-public .face#inicio .home-logo.sunarp strong {
  font-size: 34px !important;
  letter-spacing: -.06em !important;
  text-transform: lowercase !important;
}

body.site-public .face#inicio .home-logo.reniec strong {
  font-size: 30px !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#inicio .home-logo.osiptel strong {
  font-size: 29px !important;
  letter-spacing: .02em !important;
}

body.site-public .face#inicio .home-logo.bid strong {
  font-size: 34px !important;
  letter-spacing: -.06em !important;
}

body.site-public .face#inicio .home-logo.banco strong {
  font-size: 24px !important;
  letter-spacing: -.025em !important;
}

/* Desktop bajo */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#inicio .face-inner.two-col {
    min-height: 610px !important;
    padding-top: 86px !important;
    padding-bottom: 94px !important;
  }

  body.site-public .face#inicio .home-copy {
    height: calc(100dvh - 180px) !important;
    min-height: 390px !important;
  }

  body.site-public .face#inicio .home-headline {
    font-size: clamp(46px, 4.7vw, 66px) !important;
  }

  body.site-public .face#inicio .home-actions {
    margin-top: 28px !important;
  }

  body.site-public .face#inicio .home-actions .btn {
    height: 49px !important;
    min-height: 49px !important;
  }

  body.site-public .face#inicio .mini-proofs {
    margin-top: 34px !important;
  }

  body.site-public .face#inicio .home-trust-footer {
    height: 82px !important;
    min-height: 82px !important;
    padding-inline: 44px !important;
  }

  body.site-public .face#inicio .home-logo strong {
    font-size: 24px !important;
  }

  body.site-public .face#inicio .home-logo.sunarp strong,
  body.site-public .face#inicio .home-logo.bid strong {
    font-size: 29px !important;
  }

  body.site-public .face#inicio .home-logo.banco strong {
    font-size: 20px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#inicio {
    overflow-y: auto !important;
  }

  body.site-public .face#inicio .face-inner.two-col {
    height: auto !important;
    min-height: 100dvh !important;
    padding: 108px 26px 132px !important;
  }

  body.site-public .face#inicio .city-card {
    background-position: 58% center !important;
  }

  body.site-public .face#inicio .home-copy {
    width: min(690px, 100%) !important;
    max-width: 690px !important;
    height: auto !important;
    min-height: calc(100dvh - 260px) !important;
  }

  body.site-public .face#inicio .home-headline {
    font-size: clamp(44px, 9vw, 72px) !important;
  }

  body.site-public .face#inicio .home-actions {
    flex-wrap: wrap !important;
  }

  body.site-public .face#inicio .mini-proofs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 0 !important;
  }

  body.site-public .face#inicio .mini-proofs article:nth-child(odd) {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  body.site-public .face#inicio .home-trust-footer {
    height: auto !important;
    min-height: 120px !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 16px 24px 18px !important;
  }

  body.site-public .face#inicio .home-trust-label {
    align-items: center !important;
    gap: 9px !important;
  }

  body.site-public .face#inicio .home-trust-logos {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  body.site-public .face#inicio .home-logo {
    min-height: 46px !important;
    padding: 0 8px !important;
  }

  body.site-public .face#inicio .home-logo strong {
    font-size: 20px !important;
  }

  body.site-public .face#inicio .home-logo.sunarp strong,
  body.site-public .face#inicio .home-logo.bid strong {
    font-size: 24px !important;
  }

  body.site-public .face#inicio .home-logo.banco strong {
    font-size: 17px !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#inicio .face-inner.two-col {
    padding: 96px 18px 190px !important;
  }

  body.site-public .face#inicio .city-card {
    background-position: 65% center !important;
  }

  body.site-public .face#inicio .city-card {
    background:
      linear-gradient(90deg, rgba(5,5,5,.97) 0%, rgba(5,5,5,.86) 42%, rgba(5,5,5,.28) 100%),
      linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.78)),
      url("../img/custom/hero-skyline-gca.png") 65% center / cover no-repeat !important;
  }

  body.site-public .face#inicio .home-headline {
    font-size: clamp(40px, 13vw, 58px) !important;
  }

  body.site-public .face#inicio .sub {
    margin-left: 28px !important;
    font-size: 15px !important;
  }

  body.site-public .face#inicio .sub::before {
    left: -28px !important;
    width: 20px !important;
  }

  body.site-public .face#inicio .home-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.site-public .face#inicio .home-actions .btn {
    width: 100% !important;
    min-width: 0 !important;
  }

  body.site-public .face#inicio .mini-proofs {
    grid-template-columns: 1fr !important;
    margin-top: 28px !important;
  }

  body.site-public .face#inicio .mini-proofs article {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  body.site-public .face#inicio .home-trust-footer {
    padding-inline: 16px !important;
  }

  body.site-public .face#inicio .home-trust-logos {
    grid-template-columns: 1fr 1fr !important;
  }

  body.site-public .face#inicio .home-logo.banco {
    grid-column: 1 / -1 !important;
  }
}


/* =========================================================
   CONTACTO - MAQUETA IDÉNTICA FINAL
   ========================================================= */
body.site-public .face#contacto {
  padding: 92px clamp(30px, 4.2vw, 70px) 18px !important;
  overflow-y: auto !important;
  color: #15100a !important;
  background:
    radial-gradient(circle at -8% 100%, rgba(188,127,33,.08), transparent 22%) !important,
    radial-gradient(circle at 105% 52%, rgba(188,127,33,.06), transparent 22%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f8f6f0 100%) !important;
}

body.site-public .face#contacto::before {
  content: "" !important;
  position: absolute !important;
  left: -280px !important;
  bottom: -305px !important;
  width: 650px !important;
  height: 650px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(180,119,41,.10) !important;
  box-shadow:
    0 0 0 20px transparent,
    0 0 0 32px rgba(180,119,41,.035),
    0 0 0 62px transparent,
    0 0 0 74px rgba(180,119,41,.030),
    0 0 0 106px transparent,
    0 0 0 118px rgba(180,119,41,.025) !important;
  pointer-events: none !important;
  background: transparent !important;
}

body.site-public .face#contacto .contact-ident-layout {
  position: relative !important;
  z-index: 2 !important;
  width: min(1440px, 100%) !important;
  max-width: 1440px !important;
  min-height: calc(100dvh - 112px) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr) !important;
  grid-template-rows: minmax(0, auto) 86px !important;
  gap: 20px 34px !important;
  align-items: start !important;
  text-align: left !important;
}

body.site-public .face#contacto .contact-ident-left,
body.site-public .face#contacto .contact-ident-right {
  min-width: 0 !important;
}

/* Bloque superior izquierdo: texto + foto */
body.site-public .face#contacto .contact-ident-hero {
  min-height: 340px !important;
  display: grid !important;
  grid-template-columns: minmax(330px, .96fr) minmax(300px, 1.04fr) !important;
  align-items: stretch !important;
  overflow: hidden !important;
  border: 1px solid rgba(191,158,95,.13) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.36) !important;
}

body.site-public .face#contacto .contact-ident-copy {
  padding: 36px 10px 20px 0 !important;
  position: relative !important;
  z-index: 3 !important;
  background: linear-gradient(90deg, rgba(253,251,247,1) 0%, rgba(253,251,247,.94) 76%, rgba(253,251,247,0) 100%) !important;
}

body.site-public .face#contacto .contact-ident-label {
  margin: 0 0 16px !important;
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body.site-public .face#contacto .headline {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(58px, 4.9vw, 78px) !important;
  font-weight: 400 !important;
  line-height: .92 !important;
  letter-spacing: -.060em !important;
}

body.site-public .face#contacto .contact-ident-gold {
  margin: 16px 0 0 !important;
  color: #b2802f !important;
  font-size: 19px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  letter-spacing: .015em !important;
}

body.site-public .face#contacto .contact-ident-arrow {
  display: block !important;
  width: 66px !important;
  height: 1px !important;
  margin: 16px 0 18px !important;
  background: #c99b43 !important;
  position: relative !important;
}

body.site-public .face#contacto .contact-ident-arrow::after {
  content: "→" !important;
  position: absolute !important;
  right: -6px !important;
  top: 50% !important;
  transform: translateY(-55%) !important;
  color: #c99b43 !important;
  font-size: 18px !important;
}

body.site-public .face#contacto .contact-ident-text {
  max-width: 430px !important;
  margin: 0 !important;
  color: #3e382f !important;
  font-size: 15.5px !important;
  line-height: 1.55 !important;
}

/* Foto derecha */
body.site-public .face#contacto .contact-ident-photo {
  position: relative !important;
  min-height: 340px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, #f7f5ef, #e8e3d9) !important;
}

body.site-public .face#contacto .contact-photo-bg {
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 80% 22%, rgba(105,120,88,.20), transparent 18%),
    linear-gradient(90deg, rgba(255,255,255,.88) 0 8%, transparent 8.4% 22%, rgba(255,255,255,.35) 22.4% 23.4%, transparent 23.6% 54%, rgba(255,255,255,.35) 54.4% 55.4%, transparent 55.6% 100%),
    linear-gradient(180deg, #f4f1ea 0 25%, #e7e1d6 25% 100%) !important;
  filter: saturate(.95) contrast(.96) !important;
}

body.site-public .face#contacto .contact-photo-person {
  position: absolute !important;
  z-index: 2 !important;
  right: -4px !important;
  bottom: -10px !important;
  width: min(330px, 82%) !important;
  height: 360px !important;
  background: url("../img/custom/gilberth-sobre-contacto-grande.png") center bottom / contain no-repeat !important;
  filter: drop-shadow(0 15px 22px rgba(0,0,0,.13)) !important;
}

/* Accesos rápidos */
body.site-public .face#contacto .contact-ident-access {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  min-height: 128px !important;
  border: 1px solid rgba(191,158,95,.16) !important;
  border-top: 0 !important;
  background: rgba(255,255,255,.76) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.035) !important;
}

body.site-public .face#contacto .contact-ident-access article {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: start !important;
  padding: 22px 20px 18px !important;
  border-left: 1px solid rgba(191,158,95,.18) !important;
}

body.site-public .face#contacto .contact-ident-access article:first-child {
  border-left: 0 !important;
}

body.site-public .face#contacto .contact-ident-access i {
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  color: #bd8429 !important;
  font-size: 31px !important;
  font-style: normal !important;
  line-height: 1 !important;
}

body.site-public .face#contacto .contact-ident-access strong {
  display: block !important;
  margin: 0 0 7px !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 16px !important;
  line-height: 1.12 !important;
  font-weight: 700 !important;
}

body.site-public .face#contacto .contact-ident-access p {
  margin: 0 0 12px !important;
  color: #4e463b !important;
  font-size: 11.8px !important;
  line-height: 1.42 !important;
}

body.site-public .face#contacto .contact-ident-access a {
  height: 28px !important;
  min-width: 142px !important;
  padding: 0 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 3px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
}

body.site-public .face#contacto .contact-ident-access span {
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
}

/* Ubicación */
body.site-public .face#contacto .contact-ident-location {
  margin-top: 14px !important;
  min-height: 128px !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 1.1fr) minmax(0, .9fr) !important;
  overflow: hidden !important;
  border: 1px solid rgba(191,158,95,.18) !important;
  border-radius: 6px !important;
  background: rgba(255,255,255,.76) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.035) !important;
}

body.site-public .face#contacto .contact-map-real {
  position: relative !important;
  min-height: 128px !important;
  background:
    linear-gradient(0deg, rgba(255,255,255,.62), rgba(255,255,255,.62)),
    linear-gradient(34deg, transparent 0 44%, rgba(210,205,196,.75) 44.2% 45.1%, transparent 45.3% 100%),
    linear-gradient(139deg, transparent 0 58%, rgba(210,205,196,.65) 58.2% 59%, transparent 59.2% 100%),
    repeating-linear-gradient(90deg, rgba(210,205,196,.42) 0 1px, transparent 1px 46px),
    repeating-linear-gradient(0deg, rgba(210,205,196,.42) 0 1px, transparent 1px 36px),
    linear-gradient(135deg, #f1eee8, #e8e3d9) !important;
}

body.site-public .face#contacto .contact-map-real span {
  position: absolute !important;
  left: 42% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  color: #c58a2e !important;
  font-size: 42px !important;
  line-height: 1 !important;
}

body.site-public .face#contacto .contact-address-real {
  padding: 18px 22px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body.site-public .face#contacto .contact-address-real h3 {
  margin: 0 0 10px !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 24px !important;
  line-height: 1.1 !important;
}

body.site-public .face#contacto .contact-address-real p {
  margin: 0 0 8px !important;
  color: #4b443b !important;
  font-size: 13px !important;
  line-height: 1.42 !important;
}

body.site-public .face#contacto .contact-address-real b {
  width: 16px !important;
  height: 2px !important;
  margin: 5px 0 9px !important;
  display: block !important;
  background: #c99b43 !important;
}

/* Formulario derecho */
body.site-public .face#contacto .contact-ident-form-card {
  min-height: 546px !important;
  padding: 28px 28px 20px !important;
  border: 1px solid rgba(191,158,95,.16) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.035) !important;
}

body.site-public .face#contacto .contact-ident-form-card h3 {
  margin: 0 0 20px !important;
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

body.site-public .face#contacto .contact-ident-form-card h3::after {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 1px !important;
  margin-top: 12px !important;
  background: #c99b43 !important;
}

body.site-public .face#contacto .contact-ident-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px 26px !important;
}

body.site-public .face#contacto .contact-ident-form .field.full {
  grid-column: 1 / -1 !important;
}

body.site-public .face#contacto .contact-ident-form label {
  display: block !important;
  margin: 0 0 7px !important;
  color: #23201b !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

body.site-public .face#contacto .contact-ident-form input,
body.site-public .face#contacto .contact-ident-form select,
body.site-public .face#contacto .contact-ident-form textarea {
  width: 100% !important;
  border: 1px solid rgba(191,158,95,.18) !important;
  border-radius: 5px !important;
  background: rgba(255,255,255,.84) !important;
  color: #15100a !important;
  font-size: 12.5px !important;
  box-sizing: border-box !important;
  outline: none !important;
}

body.site-public .face#contacto .contact-ident-form input,
body.site-public .face#contacto .contact-ident-form select {
  height: 42px !important;
  padding: 0 14px !important;
}

body.site-public .face#contacto .contact-ident-form textarea {
  min-height: 88px !important;
  padding: 13px 14px !important;
  resize: vertical !important;
}

body.site-public .face#contacto .contact-ident-form button {
  grid-column: 1 / -1 !important;
  height: 42px !important;
  margin-top: 0 !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}

/* Seguridad formulario */
body.site-public .face#contacto .contact-ident-trust {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin-top: 22px !important;
}

body.site-public .face#contacto .contact-ident-trust article {
  padding: 0 14px !important;
  text-align: center !important;
  border-left: 1px solid rgba(191,158,95,.20) !important;
}

body.site-public .face#contacto .contact-ident-trust article:first-child {
  border-left: 0 !important;
}

body.site-public .face#contacto .contact-ident-trust i {
  display: block !important;
  margin: 0 auto 9px !important;
  color: #bd8429 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-style: normal !important;
}

body.site-public .face#contacto .contact-ident-trust strong {
  display: block !important;
  margin-bottom: 5px !important;
  color: #15100a !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

body.site-public .face#contacto .contact-ident-trust p {
  margin: 0 !important;
  color: #4b443b !important;
  font-size: 10.4px !important;
  line-height: 1.35 !important;
}

/* Barra inferior */
body.site-public .face#contacto .contact-ident-benefits {
  grid-column: 1 / -1 !important;
  min-height: 78px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  overflow: hidden !important;
  border: 1px solid rgba(191,158,95,.18) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 8px 22px rgba(70,52,23,.035) !important;
}

body.site-public .face#contacto .contact-ident-benefits article {
  min-height: 78px !important;
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 26px !important;
  border-left: 1px solid rgba(191,158,95,.22) !important;
}

body.site-public .face#contacto .contact-ident-benefits article:first-child {
  border-left: 0 !important;
}

body.site-public .face#contacto .contact-ident-benefits i {
  color: #bd8429 !important;
  font-style: normal !important;
  font-size: 31px !important;
  line-height: 1 !important;
}

body.site-public .face#contacto .contact-ident-benefits strong {
  display: block !important;
  margin-bottom: 4px !important;
  color: #15100a !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
  letter-spacing: .03em !important;
}

body.site-public .face#contacto .contact-ident-benefits p {
  margin: 0 !important;
  color: #4b443b !important;
  font-size: 10.8px !important;
  line-height: 1.35 !important;
}

/* Compacto para pantallas bajas */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#contacto {
    padding-top: 78px !important;
    padding-bottom: 12px !important;
  }

  body.site-public .face#contacto .contact-ident-layout {
    min-height: calc(100dvh - 92px) !important;
    gap: 14px 26px !important;
    grid-template-rows: minmax(0, auto) 66px !important;
  }

  body.site-public .face#contacto .contact-ident-hero {
    min-height: 270px !important;
  }

  body.site-public .face#contacto .contact-ident-copy {
    padding-top: 24px !important;
  }

  body.site-public .face#contacto .headline {
    font-size: clamp(46px, 4.2vw, 62px) !important;
  }

  body.site-public .face#contacto .contact-ident-gold {
    font-size: 16px !important;
    margin-top: 10px !important;
  }

  body.site-public .face#contacto .contact-ident-arrow {
    margin: 11px 0 12px !important;
  }

  body.site-public .face#contacto .contact-ident-text {
    font-size: 13px !important;
    line-height: 1.38 !important;
  }

  body.site-public .face#contacto .contact-ident-photo {
    min-height: 270px !important;
  }

  body.site-public .face#contacto .contact-photo-person {
    height: 295px !important;
    width: min(285px, 80%) !important;
  }

  body.site-public .face#contacto .contact-ident-access {
    min-height: 98px !important;
  }

  body.site-public .face#contacto .contact-ident-access article {
    padding: 14px 15px !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
  }

  body.site-public .face#contacto .contact-ident-access i {
    width: 34px !important;
    height: 34px !important;
    font-size: 24px !important;
  }

  body.site-public .face#contacto .contact-ident-access strong {
    font-size: 13px !important;
  }

  body.site-public .face#contacto .contact-ident-access p {
    font-size: 10px !important;
    margin-bottom: 8px !important;
  }

  body.site-public .face#contacto .contact-ident-location {
    min-height: 98px !important;
    margin-top: 10px !important;
  }

  body.site-public .face#contacto .contact-map-real {
    min-height: 98px !important;
  }

  body.site-public .face#contacto .contact-address-real h3 {
    font-size: 20px !important;
  }

  body.site-public .face#contacto .contact-address-real p {
    font-size: 11px !important;
  }

  body.site-public .face#contacto .contact-ident-form-card {
    min-height: 0 !important;
    padding: 18px 20px 14px !important;
  }

  body.site-public .face#contacto .contact-ident-form {
    gap: 11px 16px !important;
  }

  body.site-public .face#contacto .contact-ident-form input,
  body.site-public .face#contacto .contact-ident-form select {
    height: 36px !important;
  }

  body.site-public .face#contacto .contact-ident-form textarea {
    min-height: 68px !important;
  }

  body.site-public .face#contacto .contact-ident-form button {
    height: 38px !important;
    font-size: 10.8px !important;
  }

  body.site-public .face#contacto .contact-ident-trust {
    margin-top: 13px !important;
  }

  body.site-public .face#contacto .contact-ident-trust i {
    font-size: 19px !important;
    margin-bottom: 6px !important;
  }

  body.site-public .face#contacto .contact-ident-trust strong {
    font-size: 9.8px !important;
  }

  body.site-public .face#contacto .contact-ident-trust p {
    font-size: 9px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits {
    min-height: 64px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits article {
    min-height: 64px !important;
    padding-inline: 16px !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
  }

  body.site-public .face#contacto .contact-ident-benefits i {
    font-size: 24px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits strong {
    font-size: 10px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits p {
    font-size: 9px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#contacto {
    padding: 104px 28px 28px !important;
  }

  body.site-public .face#contacto .contact-ident-layout {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }

  body.site-public .face#contacto .contact-ident-hero {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#contacto .contact-ident-copy {
    padding: 28px 20px 24px !important;
  }

  body.site-public .face#contacto .contact-ident-photo {
    min-height: 300px !important;
  }

  body.site-public .face#contacto .contact-photo-person {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: min(340px, 78%) !important;
    height: 350px !important;
  }

  body.site-public .face#contacto .contact-ident-access,
  body.site-public .face#contacto .contact-ident-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.site-public .face#contacto .contact-ident-location {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#contacto .contact-map-real {
    min-height: 160px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits article {
    border-left: 0 !important;
    border-top: 1px solid rgba(191,158,95,.22) !important;
  }

  body.site-public .face#contacto .contact-ident-benefits article:nth-child(1),
  body.site-public .face#contacto .contact-ident-benefits article:nth-child(2) {
    border-top: 0 !important;
  }

  body.site-public .face#contacto .contact-ident-benefits article:nth-child(even) {
    border-left: 1px solid rgba(191,158,95,.22) !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#contacto {
    padding: 96px 16px 24px !important;
  }

  body.site-public .face#contacto .headline {
    font-size: clamp(42px, 13vw, 60px) !important;
  }

  body.site-public .face#contacto .contact-ident-text {
    font-size: 14px !important;
  }

  body.site-public .face#contacto .contact-ident-access,
  body.site-public .face#contacto .contact-ident-form,
  body.site-public .face#contacto .contact-ident-trust,
  body.site-public .face#contacto .contact-ident-benefits {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#contacto .contact-ident-access article,
  body.site-public .face#contacto .contact-ident-trust article,
  body.site-public .face#contacto .contact-ident-benefits article,
  body.site-public .face#contacto .contact-ident-benefits article:nth-child(even) {
    border-left: 0 !important;
    border-top: 1px solid rgba(191,158,95,.22) !important;
  }

  body.site-public .face#contacto .contact-ident-access article:first-child,
  body.site-public .face#contacto .contact-ident-trust article:first-child,
  body.site-public .face#contacto .contact-ident-benefits article:first-child {
    border-top: 0 !important;
  }

  body.site-public .face#contacto .contact-photo-person {
    width: min(270px, 80%) !important;
    height: 300px !important;
  }
}


/* =========================================================
   CONTACTO - AJUSTE ESTRUCTURA EXACTA SEGÚN REFERENCIA
   ========================================================= */
body.site-public .face#contacto {
  padding: 86px 34px 18px !important;
  background:
    radial-gradient(circle at -6% 96%, rgba(191,158,95,.09), transparent 19%),
    linear-gradient(180deg, #fcfbf8 0%, #f7f4ee 100%) !important;
}

body.site-public .face#contacto .contact-ident-layout {
  width: min(1380px, 100%) !important;
  max-width: 1380px !important;
  min-height: calc(100dvh - 104px) !important;
  grid-template-columns: minmax(0, 1.07fr) minmax(480px, .93fr) !important;
  grid-template-rows: auto 72px !important;
  gap: 16px 34px !important;
}

body.site-public .face#contacto .contact-ident-left {
  display: grid !important;
  grid-template-rows: 332px 120px 136px !important;
  gap: 0 !important;
  align-content: start !important;
}

body.site-public .face#contacto .contact-ident-right {
  align-self: start !important;
}

body.site-public .face#contacto .contact-ident-hero {
  min-height: 332px !important;
  height: 332px !important;
  grid-template-columns: minmax(0, .62fr) minmax(306px, .38fr) !important;
  border: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
}

body.site-public .face#contacto .contact-ident-copy {
  padding: 34px 22px 24px 0 !important;
  background: transparent !important;
}

body.site-public .face#contacto .contact-ident-label {
  margin-bottom: 14px !important;
  font-size: 12px !important;
  letter-spacing: .105em !important;
}

body.site-public .face#contacto .headline {
  font-size: 65px !important;
  line-height: .95 !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#contacto .contact-ident-gold {
  margin-top: 18px !important;
  font-size: 18px !important;
}

body.site-public .face#contacto .contact-ident-arrow {
  width: 60px !important;
  margin: 16px 0 20px !important;
}

body.site-public .face#contacto .contact-ident-text {
  max-width: 390px !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

body.site-public .face#contacto .contact-ident-photo {
  min-height: 332px !important;
  height: 332px !important;
  border: 1px solid rgba(191,158,95,.10) !important;
  border-bottom: 0 !important;
  background: linear-gradient(180deg, #f4f1ea 0%, #ece7dc 100%) !important;
}

body.site-public .face#contacto .contact-photo-bg {
  background:
    radial-gradient(circle at 82% 24%, rgba(116,136,99,.12), transparent 16%),
    linear-gradient(90deg, rgba(255,255,255,.88) 0 9%, transparent 9.3% 23%, rgba(255,255,255,.42) 23.4% 24.4%, transparent 24.7% 55%, rgba(255,255,255,.42) 55.5% 56.5%, transparent 56.8% 100%),
    linear-gradient(180deg, #f2eee7 0 28%, #e7e1d5 28% 100%) !important;
}

body.site-public .face#contacto .contact-photo-person {
  right: 14px !important;
  bottom: -2px !important;
  width: 285px !important;
  height: 324px !important;
}

body.site-public .face#contacto .contact-ident-access {
  min-height: 120px !important;
  height: 120px !important;
  border: 1px solid rgba(191,158,95,.16) !important;
  border-top: 0 !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: none !important;
}

body.site-public .face#contacto .contact-ident-access article {
  padding: 18px 18px 14px !important;
  grid-template-columns: 50px minmax(0, 1fr) !important;
  gap: 12px !important;
}

body.site-public .face#contacto .contact-ident-access i {
  width: 38px !important;
  height: 38px !important;
  font-size: 28px !important;
}

body.site-public .face#contacto .contact-ident-access strong {
  font-size: 14px !important;
}

body.site-public .face#contacto .contact-ident-access p {
  margin-bottom: 10px !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

body.site-public .face#contacto .contact-ident-access a {
  min-width: 138px !important;
  height: 30px !important;
  font-size: 10px !important;
}

body.site-public .face#contacto .contact-ident-access span {
  font-size: 11px !important;
  line-height: 1.25 !important;
}

body.site-public .face#contacto .contact-ident-location {
  margin-top: 14px !important;
  min-height: 136px !important;
  height: 136px !important;
  border-radius: 6px !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: none !important;
}

body.site-public .face#contacto .contact-map-real {
  min-height: 136px !important;
}

body.site-public .face#contacto .contact-map-real span {
  left: 34% !important;
  font-size: 40px !important;
}

body.site-public .face#contacto .contact-address-real {
  padding: 18px 22px !important;
}

body.site-public .face#contacto .contact-address-real h3 {
  font-size: 17px !important;
  margin-bottom: 10px !important;
}

body.site-public .face#contacto .contact-address-real p {
  font-size: 12px !important;
  line-height: 1.46 !important;
}

body.site-public .face#contacto .contact-address-real b {
  width: 3px !important;
  height: 14px !important;
  margin: 2px 0 8px !important;
  background: #c99b43 !important;
}

body.site-public .face#contacto .contact-ident-form-card {
  min-height: 602px !important;
  padding: 24px 28px 20px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: none !important;
}

body.site-public .face#contacto .contact-ident-form-card h3 {
  margin-bottom: 18px !important;
  letter-spacing: .075em !important;
}

body.site-public .face#contacto .contact-ident-form {
  gap: 15px 24px !important;
}

body.site-public .face#contacto .contact-ident-form label {
  margin-bottom: 8px !important;
  font-size: 11.5px !important;
}

body.site-public .face#contacto .contact-ident-form input,
body.site-public .face#contacto .contact-ident-form select {
  height: 36px !important;
  border-radius: 4px !important;
  font-size: 11.6px !important;
}

body.site-public .face#contacto .contact-ident-form textarea {
  min-height: 82px !important;
  border-radius: 4px !important;
  font-size: 11.6px !important;
}

body.site-public .face#contacto .contact-ident-form button {
  height: 36px !important;
  margin-top: 2px !important;
  font-size: 11px !important;
  border-radius: 4px !important;
}

body.site-public .face#contacto .contact-ident-trust {
  margin-top: 16px !important;
}

body.site-public .face#contacto .contact-ident-trust article {
  padding: 0 16px !important;
}

body.site-public .face#contacto .contact-ident-trust i {
  font-size: 20px !important;
  margin-bottom: 7px !important;
}

body.site-public .face#contacto .contact-ident-trust strong {
  font-size: 10px !important;
}

body.site-public .face#contacto .contact-ident-trust p {
  font-size: 9.5px !important;
}

body.site-public .face#contacto .contact-ident-benefits {
  min-height: 84px !important;
  height: 84px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: none !important;
}

body.site-public .face#contacto .contact-ident-benefits article {
  min-height: 84px !important;
  padding: 0 22px !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 14px !important;
}

body.site-public .face#contacto .contact-ident-benefits i {
  font-size: 28px !important;
}

body.site-public .face#contacto .contact-ident-benefits strong {
  font-size: 11px !important;
}

body.site-public .face#contacto .contact-ident-benefits p {
  font-size: 10px !important;
}

@media (min-width: 1101px) and (max-height: 860px) {
  body.site-public .face#contacto { padding-top: 72px !important; padding-bottom: 14px !important; }
  body.site-public .face#contacto .contact-ident-layout { min-height: calc(100dvh - 86px) !important; grid-template-rows: auto 70px !important; gap: 12px 28px !important; }
  body.site-public .face#contacto .contact-ident-left { grid-template-rows: 286px 104px 116px !important; }
  body.site-public .face#contacto .contact-ident-hero { height: 286px !important; min-height: 286px !important; }
  body.site-public .face#contacto .headline { font-size: 54px !important; }
  body.site-public .face#contacto .contact-ident-gold { font-size: 16px !important; margin-top: 12px !important; }
  body.site-public .face#contacto .contact-ident-arrow { margin: 11px 0 12px !important; }
  body.site-public .face#contacto .contact-ident-text { font-size: 12.5px !important; max-width: 360px !important; }
  body.site-public .face#contacto .contact-ident-photo, body.site-public .face#contacto .contact-photo-person { height: 280px !important; }
  body.site-public .face#contacto .contact-photo-person { width: 246px !important; bottom: -1px !important; }
  body.site-public .face#contacto .contact-ident-access { height: 104px !important; min-height: 104px !important; }
  body.site-public .face#contacto .contact-ident-access article { padding: 14px 15px 12px !important; }
  body.site-public .face#contacto .contact-ident-access strong { font-size: 12.5px !important; }
  body.site-public .face#contacto .contact-ident-location { margin-top: 10px !important; height: 116px !important; min-height: 116px !important; }
  body.site-public .face#contacto .contact-map-real { min-height: 116px !important; }
  body.site-public .face#contacto .contact-address-real h3 { font-size: 15px !important; }
  body.site-public .face#contacto .contact-address-real p { font-size: 10.5px !important; }
  body.site-public .face#contacto .contact-ident-form-card { min-height: 516px !important; padding: 18px 22px 14px !important; }
  body.site-public .face#contacto .contact-ident-form { gap: 11px 16px !important; }
  body.site-public .face#contacto .contact-ident-form input, body.site-public .face#contacto .contact-ident-form select { height: 34px !important; }
  body.site-public .face#contacto .contact-ident-form textarea { min-height: 66px !important; }
  body.site-public .face#contacto .contact-ident-form button { height: 35px !important; }
  body.site-public .face#contacto .contact-ident-benefits { min-height: 70px !important; height: 70px !important; }
  body.site-public .face#contacto .contact-ident-benefits article { min-height: 70px !important; padding: 0 16px !important; }
}

@media (max-width: 1100px) {
  body.site-public .face#contacto .contact-ident-layout {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }
  body.site-public .face#contacto .contact-ident-left {
    grid-template-rows: auto auto auto !important;
  }
  body.site-public .face#contacto .contact-ident-hero {
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#contacto .contact-ident-copy { padding: 28px 16px 22px !important; }
  body.site-public .face#contacto .contact-ident-photo { height: 300px !important; min-height: 300px !important; border-top: 1px solid rgba(191,158,95,.10) !important; }
  body.site-public .face#contacto .contact-photo-person { right: auto !important; left: 50% !important; transform: translateX(-50%) !important; width: 258px !important; height: 292px !important; }
  body.site-public .face#contacto .contact-ident-access { height: auto !important; min-height: 0 !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
  body.site-public .face#contacto .contact-ident-location { height: auto !important; min-height: 0 !important; }
  body.site-public .face#contacto .contact-ident-form-card { min-height: 0 !important; }
}

@media (max-width: 760px) {
  body.site-public .face#contacto { padding: 92px 16px 24px !important; }
  body.site-public .face#contacto .headline { font-size: 48px !important; }
  body.site-public .face#contacto .contact-ident-gold { font-size: 16px !important; }
  body.site-public .face#contacto .contact-ident-access,
  body.site-public .face#contacto .contact-ident-form,
  body.site-public .face#contacto .contact-ident-trust,
  body.site-public .face#contacto .contact-ident-benefits { grid-template-columns: 1fr !important; }
  body.site-public .face#contacto .contact-ident-benefits { height: auto !important; }
  body.site-public .face#contacto .contact-ident-benefits article { min-height: 72px !important; }
}


/* =========================================================
   CONTACTO - AJUSTE IDENTICO FINAL
   ========================================================= */
body.site-public .face#contacto{
  padding:82px 38px 16px!important;
  background:
    radial-gradient(circle at -8% 100%, rgba(191,158,95,.07), transparent 20%),
    linear-gradient(180deg,#fcfbf8 0%,#f7f4ef 100%)!important;
}
body.site-public .face#contacto .contact-ident-layout{
  width:min(1366px,100%)!important;
  max-width:1366px!important;
  min-height:calc(100dvh - 98px)!important;
  grid-template-columns:minmax(0,1.06fr) minmax(520px,.94fr)!important;
  grid-template-rows:auto 78px!important;
  gap:18px 34px!important;
}
body.site-public .face#contacto .contact-ident-left{grid-template-rows:332px 118px 134px!important;}
body.site-public .face#contacto .contact-ident-hero{
  height:332px!important; min-height:332px!important;
  grid-template-columns:minmax(0,.60fr) minmax(300px,.40fr)!important;
}
body.site-public .face#contacto .contact-ident-copy{padding:32px 22px 22px 0!important;}
body.site-public .face#contacto .contact-ident-label{margin:0 0 18px!important; font-size:11.5px!important; letter-spacing:.11em!important;}
body.site-public .face#contacto .headline{font-size:64px!important; line-height:.94!important; letter-spacing:-.058em!important;}
body.site-public .face#contacto .contact-ident-gold{margin:18px 0 0!important; font-size:17px!important; font-weight:500!important;}
body.site-public .face#contacto .contact-ident-arrow{width:62px!important; margin:14px 0 18px!important;}
body.site-public .face#contacto .contact-ident-text{max-width:410px!important; font-size:14px!important; line-height:1.56!important;}
body.site-public .face#contacto .contact-ident-photo{height:332px!important; min-height:332px!important; border:1px solid rgba(191,158,95,.12)!important; border-bottom:0!important;}
body.site-public .face#contacto .contact-photo-person{right:18px!important; bottom:-4px!important; width:290px!important; height:328px!important;}
body.site-public .face#contacto .contact-ident-access{height:118px!important; min-height:118px!important; border-radius:0!important; background:rgba(255,255,255,.94)!important;}
body.site-public .face#contacto .contact-ident-access article{padding:18px 18px 16px!important; grid-template-columns:48px minmax(0,1fr)!important;}
body.site-public .face#contacto .contact-ident-access i{width:36px!important; height:36px!important; font-size:27px!important;}
body.site-public .face#contacto .contact-ident-access strong{font-size:14px!important; margin-bottom:6px!important;}
body.site-public .face#contacto .contact-ident-access p{font-size:11px!important; line-height:1.38!important; margin-bottom:10px!important;}
body.site-public .face#contacto .contact-ident-access a{height:28px!important; min-width:142px!important; border-radius:4px!important;}
body.site-public .face#contacto .contact-ident-access span{font-size:12px!important;}
body.site-public .face#contacto .contact-ident-location{margin-top:14px!important; height:134px!important; min-height:134px!important; background:rgba(255,255,255,.94)!important;}
body.site-public .face#contacto .contact-map-real{min-height:134px!important;}
body.site-public .face#contacto .contact-map-real span{left:33%!important; top:52%!important; font-size:40px!important;}
body.site-public .face#contacto .contact-address-real{padding:16px 22px!important;}
body.site-public .face#contacto .contact-address-real h3{font-size:17px!important; margin-bottom:9px!important;}
body.site-public .face#contacto .contact-address-real p{font-size:12px!important; line-height:1.46!important; margin-bottom:7px!important;}
body.site-public .face#contacto .contact-address-real b{width:2px!important; height:14px!important; margin:3px 0 8px!important;}
body.site-public .face#contacto .contact-ident-form-card{min-height:584px!important; padding:24px 26px 18px!important; background:rgba(255,255,255,.95)!important; border-radius:8px!important;}
body.site-public .face#contacto .contact-ident-form-card h3{margin-bottom:18px!important; font-size:12px!important; letter-spacing:.08em!important;}
body.site-public .face#contacto .contact-ident-form-card h3::after{width:64px!important; margin-top:12px!important;}
body.site-public .face#contacto .contact-ident-form{gap:15px 24px!important;}
body.site-public .face#contacto .contact-ident-form label{font-size:11.5px!important; margin-bottom:7px!important;}
body.site-public .face#contacto .contact-ident-form input,
body.site-public .face#contacto .contact-ident-form select{height:36px!important; font-size:11.6px!important; border-radius:4px!important;}
body.site-public .face#contacto .contact-ident-form textarea{min-height:84px!important; font-size:11.6px!important; border-radius:4px!important;}
body.site-public .face#contacto .contact-ident-form button{height:36px!important; font-size:11px!important; border-radius:4px!important;}
body.site-public .face#contacto .contact-ident-trust{margin-top:18px!important;}
body.site-public .face#contacto .contact-ident-trust article{padding:0 16px!important;}
body.site-public .face#contacto .contact-ident-trust i{font-size:18px!important; margin-bottom:8px!important;}
body.site-public .face#contacto .contact-ident-trust strong{font-size:10px!important;}
body.site-public .face#contacto .contact-ident-trust p{font-size:9.5px!important;}
body.site-public .face#contacto .contact-ident-benefits{height:78px!important; min-height:78px!important; background:rgba(255,255,255,.95)!important;}
body.site-public .face#contacto .contact-ident-benefits article{min-height:78px!important; padding:0 24px!important; grid-template-columns:40px minmax(0,1fr)!important; gap:14px!important;}
body.site-public .face#contacto .contact-ident-benefits i{font-size:28px!important;}
body.site-public .face#contacto .contact-ident-benefits strong{font-size:11px!important; margin-bottom:4px!important;}
body.site-public .face#contacto .contact-ident-benefits p{font-size:10px!important; line-height:1.35!important;}

@media (min-width:1101px) and (max-height:860px){
 body.site-public .face#contacto{padding-top:74px!important;}
 body.site-public .face#contacto .contact-ident-layout{min-height:calc(100dvh - 90px)!important; grid-template-rows:auto 70px!important; gap:14px 28px!important;}
 body.site-public .face#contacto .contact-ident-left{grid-template-rows:288px 104px 118px!important;}
 body.site-public .face#contacto .contact-ident-hero{height:288px!important; min-height:288px!important;}
 body.site-public .face#contacto .headline{font-size:54px!important;}
 body.site-public .face#contacto .contact-ident-gold{font-size:16px!important; margin-top:12px!important;}
 body.site-public .face#contacto .contact-ident-arrow{margin:10px 0 12px!important;}
 body.site-public .face#contacto .contact-ident-text{font-size:12.8px!important; max-width:370px!important;}
 body.site-public .face#contacto .contact-ident-photo{height:288px!important; min-height:288px!important;}
 body.site-public .face#contacto .contact-photo-person{width:248px!important; height:284px!important; right:14px!important;}
 body.site-public .face#contacto .contact-ident-access{height:104px!important; min-height:104px!important;}
 body.site-public .face#contacto .contact-ident-access article{padding:14px 14px 12px!important;}
 body.site-public .face#contacto .contact-ident-location{height:118px!important; min-height:118px!important; margin-top:12px!important;}
 body.site-public .face#contacto .contact-map-real{min-height:118px!important;}
 body.site-public .face#contacto .contact-address-real h3{font-size:15px!important;}
 body.site-public .face#contacto .contact-address-real p{font-size:10.7px!important;}
 body.site-public .face#contacto .contact-ident-form-card{min-height:522px!important; padding:18px 20px 14px!important;}
 body.site-public .face#contacto .contact-ident-form{gap:11px 16px!important;}
 body.site-public .face#contacto .contact-ident-form input, body.site-public .face#contacto .contact-ident-form select{height:34px!important;}
 body.site-public .face#contacto .contact-ident-form textarea{min-height:68px!important;}
 body.site-public .face#contacto .contact-ident-form button{height:34px!important;}
 body.site-public .face#contacto .contact-ident-benefits{height:70px!important; min-height:70px!important;}
 body.site-public .face#contacto .contact-ident-benefits article{min-height:70px!important; padding:0 18px!important;}
}


/* =========================================================
   CONTACTO - RECONSTRUCCIÓN FINAL SEGÚN REFERENCIA EXACTA
   - usa estructura real + assets recortados de la referencia
   ========================================================= */
@media (min-width: 1101px) {
  body.site-public .face#contacto {
    padding: 92px 58px 14px !important;
    overflow: hidden !important;
    background:
      radial-gradient(circle at -7% 96%, rgba(191,158,95,.075), transparent 21%),
      linear-gradient(180deg, #fcfbf8 0%, #f7f4ef 100%) !important;
  }

  body.site-public .face#contacto .contact-ident-layout {
    width: min(1338px, 100%) !important;
    max-width: 1338px !important;
    min-height: calc(100dvh - 106px) !important;
    height: calc(100dvh - 106px) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 720px minmax(560px, 584px) !important;
    grid-template-rows: minmax(0, 1fr) 78px !important;
    gap: 18px 34px !important;
    align-items: start !important;
  }

  body.site-public .face#contacto .contact-ident-left {
    width: 720px !important;
    display: grid !important;
    grid-template-rows: 328px 126px 126px !important;
    gap: 0 !important;
    align-content: start !important;
  }

  body.site-public .face#contacto .contact-ident-right {
    width: 584px !important;
    align-self: start !important;
  }

  body.site-public .face#contacto .contact-ident-hero {
    width: 720px !important;
    height: 328px !important;
    min-height: 328px !important;
    display: grid !important;
    grid-template-columns: 408px 312px !important;
    border: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  body.site-public .face#contacto .contact-ident-copy {
    width: 408px !important;
    padding: 30px 20px 20px 0 !important;
    background: transparent !important;
  }

  body.site-public .face#contacto .contact-ident-label {
    margin: 0 0 17px !important;
    color: #b2802f !important;
    font-size: 11.4px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .105em !important;
    text-transform: uppercase !important;
  }

  body.site-public .face#contacto .headline {
    margin: 0 !important;
    color: #0d0d0d !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 62px !important;
    line-height: .94 !important;
    font-weight: 400 !important;
    letter-spacing: -.058em !important;
  }

  body.site-public .face#contacto .contact-ident-gold {
    margin: 18px 0 0 !important;
    color: #b2802f !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
    font-weight: 500 !important;
  }

  body.site-public .face#contacto .contact-ident-arrow {
    display: block !important;
    width: 62px !important;
    height: 1px !important;
    margin: 14px 0 18px !important;
    background: #c99b43 !important;
    position: relative !important;
  }

  body.site-public .face#contacto .contact-ident-arrow::after {
    content: "→" !important;
    position: absolute !important;
    right: -6px !important;
    top: 50% !important;
    transform: translateY(-55%) !important;
    color: #c99b43 !important;
    font-size: 17px !important;
  }

  body.site-public .face#contacto .contact-ident-text {
    max-width: 392px !important;
    margin: 0 !important;
    color: #3e382f !important;
    font-size: 13.8px !important;
    line-height: 1.56 !important;
  }

  body.site-public .face#contacto .contact-ident-photo {
    width: 312px !important;
    height: 328px !important;
    min-height: 328px !important;
    border: 0 !important;
    background: url("../img/custom/contacto-foto-referencia.png") center center / cover no-repeat !important;
    overflow: hidden !important;
  }

  body.site-public .face#contacto .contact-photo-bg,
  body.site-public .face#contacto .contact-photo-person {
    display: none !important;
  }

  body.site-public .face#contacto .contact-ident-access {
    width: 720px !important;
    height: 126px !important;
    min-height: 126px !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    border: 1px solid rgba(191,158,95,.14) !important;
    border-radius: 0 !important;
    background: rgba(255,255,255,.96) !important;
    box-shadow: 0 8px 20px rgba(70,52,23,.025) !important;
    overflow: hidden !important;
  }

  body.site-public .face#contacto .contact-ident-access article {
    display: grid !important;
    grid-template-columns: 52px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
    padding: 20px 18px 16px !important;
    border-left: 1px solid rgba(191,158,95,.16) !important;
  }

  body.site-public .face#contacto .contact-ident-access article:first-child {
    border-left: 0 !important;
  }

  body.site-public .face#contacto .contact-ident-access i {
    width: 38px !important;
    height: 38px !important;
    display: grid !important;
    place-items: center !important;
    color: #bd8429 !important;
    font-size: 29px !important;
    font-style: normal !important;
    line-height: 1 !important;
  }

  body.site-public .face#contacto .contact-ident-access strong {
    display: block !important;
    margin: 0 0 7px !important;
    color: #15100a !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 14px !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
  }

  body.site-public .face#contacto .contact-ident-access p {
    margin: 0 0 10px !important;
    color: #4e463b !important;
    font-size: 11px !important;
    line-height: 1.38 !important;
  }

  body.site-public .face#contacto .contact-ident-access a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 138px !important;
    height: 28px !important;
    padding: 0 14px !important;
    border-radius: 4px !important;
    background: linear-gradient(135deg, #d49a34, #b9771c) !important;
    color: #fff !important;
    font-size: 9.7px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .045em !important;
    text-transform: uppercase !important;
  }

  body.site-public .face#contacto .contact-ident-access span {
    color: #b2802f !important;
    font-size: 11.2px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
  }

  body.site-public .face#contacto .contact-ident-location {
    width: 720px !important;
    height: 126px !important;
    min-height: 126px !important;
    margin-top: 14px !important;
    display: grid !important;
    grid-template-columns: 404px 316px !important;
    overflow: hidden !important;
    border: 1px solid rgba(191,158,95,.14) !important;
    border-radius: 6px !important;
    background: rgba(255,255,255,.96) !important;
    box-shadow: 0 8px 20px rgba(70,52,23,.025) !important;
  }

  body.site-public .face#contacto .contact-map-real {
    width: 404px !important;
    min-height: 126px !important;
    background: url("../img/custom/contacto-mapa-referencia.png") center center / cover no-repeat !important;
  }

  body.site-public .face#contacto .contact-map-real span {
    display: none !important;
  }

  body.site-public .face#contacto .contact-address-real {
    padding: 17px 22px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }

  body.site-public .face#contacto .contact-address-real h3 {
    margin: 0 0 9px !important;
    color: #15100a !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 17px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
  }

  body.site-public .face#contacto .contact-address-real p {
    margin: 0 0 7px !important;
    color: #4b443b !important;
    font-size: 11.6px !important;
    line-height: 1.46 !important;
  }

  body.site-public .face#contacto .contact-address-real b {
    width: 2px !important;
    height: 14px !important;
    margin: 2px 0 8px !important;
    background: #c99b43 !important;
    display: block !important;
  }

  body.site-public .face#contacto .contact-ident-form-card {
    width: 584px !important;
    min-height: 552px !important;
    padding: 25px 28px 18px !important;
    border: 1px solid rgba(191,158,95,.14) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.96) !important;
    box-shadow: 0 8px 20px rgba(70,52,23,.025) !important;
  }

  body.site-public .face#contacto .contact-ident-form-card h3 {
    margin: 0 0 18px !important;
    color: #b2802f !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  body.site-public .face#contacto .contact-ident-form-card h3::after {
    content: "" !important;
    display: block !important;
    width: 64px !important;
    height: 1px !important;
    margin-top: 12px !important;
    background: #c99b43 !important;
  }

  body.site-public .face#contacto .contact-ident-form {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 15px 24px !important;
  }

  body.site-public .face#contacto .contact-ident-form .field.full {
    grid-column: 1 / -1 !important;
  }

  body.site-public .face#contacto .contact-ident-form label {
    display: block !important;
    margin: 0 0 7px !important;
    color: #23201b !important;
    font-size: 11.4px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
  }

  body.site-public .face#contacto .contact-ident-form input,
  body.site-public .face#contacto .contact-ident-form select,
  body.site-public .face#contacto .contact-ident-form textarea {
    width: 100% !important;
    border: 1px solid rgba(191,158,95,.16) !important;
    border-radius: 4px !important;
    background: rgba(255,255,255,.88) !important;
    color: #15100a !important;
    font-size: 11.6px !important;
    box-sizing: border-box !important;
    outline: none !important;
  }

  body.site-public .face#contacto .contact-ident-form input,
  body.site-public .face#contacto .contact-ident-form select {
    height: 36px !important;
    padding: 0 13px !important;
  }

  body.site-public .face#contacto .contact-ident-form textarea {
    min-height: 84px !important;
    padding: 12px 13px !important;
    resize: vertical !important;
  }

  body.site-public .face#contacto .contact-ident-form button {
    grid-column: 1 / -1 !important;
    height: 36px !important;
    border: 0 !important;
    border-radius: 4px !important;
    background: linear-gradient(135deg, #d49a34, #b9771c) !important;
    color: #fff !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
  }

  body.site-public .face#contacto .contact-ident-trust {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 0 !important;
    margin-top: 18px !important;
  }

  body.site-public .face#contacto .contact-ident-trust article {
    padding: 0 16px !important;
    text-align: center !important;
    border-left: 1px solid rgba(191,158,95,.18) !important;
  }

  body.site-public .face#contacto .contact-ident-trust article:first-child {
    border-left: 0 !important;
  }

  body.site-public .face#contacto .contact-ident-trust i {
    display: block !important;
    margin: 0 auto 8px !important;
    color: #bd8429 !important;
    font-size: 19px !important;
    line-height: 1 !important;
    font-style: normal !important;
  }

  body.site-public .face#contacto .contact-ident-trust strong {
    display: block !important;
    margin-bottom: 5px !important;
    color: #15100a !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
  }

  body.site-public .face#contacto .contact-ident-trust p {
    margin: 0 !important;
    color: #4b443b !important;
    font-size: 9.4px !important;
    line-height: 1.35 !important;
  }

  body.site-public .face#contacto .contact-ident-benefits {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    height: 78px !important;
    min-height: 78px !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    align-items: stretch !important;
    border: 1px solid rgba(191,158,95,.14) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.96) !important;
    box-shadow: 0 8px 20px rgba(70,52,23,.025) !important;
    overflow: hidden !important;
  }

  body.site-public .face#contacto .contact-ident-benefits article {
    min-height: 78px !important;
    display: grid !important;
    grid-template-columns: 40px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 0 24px !important;
    border-left: 1px solid rgba(191,158,95,.18) !important;
  }

  body.site-public .face#contacto .contact-ident-benefits article:first-child {
    border-left: 0 !important;
  }

  body.site-public .face#contacto .contact-ident-benefits i {
    color: #bd8429 !important;
    font-style: normal !important;
    font-size: 28px !important;
    line-height: 1 !important;
  }

  body.site-public .face#contacto .contact-ident-benefits strong {
    display: block !important;
    margin-bottom: 4px !important;
    color: #15100a !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    font-weight: 950 !important;
    letter-spacing: .03em !important;
  }

  body.site-public .face#contacto .contact-ident-benefits p {
    margin: 0 !important;
    color: #4b443b !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
  }
}

/* Compacto */
@media (min-width: 1101px) and (max-height: 860px) {
  body.site-public .face#contacto {
    padding-top: 76px !important;
  }

  body.site-public .face#contacto .contact-ident-layout {
    height: calc(100dvh - 90px) !important;
    min-height: calc(100dvh - 90px) !important;
    grid-template-rows: minmax(0, 1fr) 70px !important;
    gap: 12px 30px !important;
  }

  body.site-public .face#contacto .contact-ident-left {
    grid-template-rows: 288px 104px 116px !important;
  }

  body.site-public .face#contacto .contact-ident-hero {
    height: 288px !important;
    min-height: 288px !important;
  }

  body.site-public .face#contacto .contact-ident-copy {
    padding-top: 23px !important;
  }

  body.site-public .face#contacto .headline {
    font-size: 54px !important;
  }

  body.site-public .face#contacto .contact-ident-gold {
    margin-top: 12px !important;
    font-size: 16px !important;
  }

  body.site-public .face#contacto .contact-ident-arrow {
    margin: 10px 0 12px !important;
  }

  body.site-public .face#contacto .contact-ident-text {
    max-width: 365px !important;
    font-size: 12.5px !important;
  }

  body.site-public .face#contacto .contact-ident-photo {
    height: 288px !important;
    min-height: 288px !important;
  }

  body.site-public .face#contacto .contact-ident-access {
    height: 104px !important;
    min-height: 104px !important;
  }

  body.site-public .face#contacto .contact-ident-access article {
    padding: 14px 14px 12px !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
  }

  body.site-public .face#contacto .contact-ident-access i {
    width: 32px !important;
    height: 32px !important;
    font-size: 23px !important;
  }

  body.site-public .face#contacto .contact-ident-access strong {
    font-size: 12.5px !important;
  }

  body.site-public .face#contacto .contact-ident-access p {
    font-size: 9.8px !important;
    margin-bottom: 7px !important;
  }

  body.site-public .face#contacto .contact-ident-location {
    margin-top: 10px !important;
    height: 116px !important;
    min-height: 116px !important;
  }

  body.site-public .face#contacto .contact-map-real {
    min-height: 116px !important;
  }

  body.site-public .face#contacto .contact-address-real h3 {
    font-size: 15px !important;
  }

  body.site-public .face#contacto .contact-address-real p {
    font-size: 10.5px !important;
  }

  body.site-public .face#contacto .contact-ident-form-card {
    min-height: 514px !important;
    padding: 18px 20px 14px !important;
  }

  body.site-public .face#contacto .contact-ident-form {
    gap: 10px 16px !important;
  }

  body.site-public .face#contacto .contact-ident-form input,
  body.site-public .face#contacto .contact-ident-form select {
    height: 33px !important;
  }

  body.site-public .face#contacto .contact-ident-form textarea {
    min-height: 66px !important;
  }

  body.site-public .face#contacto .contact-ident-form button {
    height: 34px !important;
  }

  body.site-public .face#contacto .contact-ident-trust {
    margin-top: 12px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits {
    height: 70px !important;
    min-height: 70px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits article {
    min-height: 70px !important;
    padding: 0 18px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits i {
    font-size: 24px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits strong {
    font-size: 10px !important;
  }

  body.site-public .face#contacto .contact-ident-benefits p {
    font-size: 9px !important;
  }
}

/* Responsive conserva estructura vertical */
@media (max-width: 1100px) {
  body.site-public .face#contacto {
    padding: 96px 22px 24px !important;
    overflow-y: auto !important;
  }

  body.site-public .face#contacto .contact-ident-layout {
    height: auto !important;
    min-height: auto !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }

  body.site-public .face#contacto .contact-ident-left,
  body.site-public .face#contacto .contact-ident-right,
  body.site-public .face#contacto .contact-ident-hero,
  body.site-public .face#contacto .contact-ident-access,
  body.site-public .face#contacto .contact-ident-location,
  body.site-public .face#contacto .contact-ident-form-card {
    width: 100% !important;
  }

  body.site-public .face#contacto .contact-ident-left {
    grid-template-rows: auto auto auto !important;
  }

  body.site-public .face#contacto .contact-ident-hero {
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#contacto .contact-ident-copy {
    width: 100% !important;
    padding: 28px 16px 22px !important;
  }

  body.site-public .face#contacto .contact-ident-photo {
    width: 100% !important;
    height: 300px !important;
    min-height: 300px !important;
  }

  body.site-public .face#contacto .contact-ident-access {
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: repeat(3, 1fr) !important;
  }

  body.site-public .face#contacto .contact-ident-location {
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#contacto .contact-map-real {
    width: 100% !important;
    min-height: 150px !important;
  }
}

@media (max-width: 760px) {
  body.site-public .face#contacto {
    padding: 92px 16px 24px !important;
  }

  body.site-public .face#contacto .headline {
    font-size: 48px !important;
  }

  body.site-public .face#contacto .contact-ident-access,
  body.site-public .face#contacto .contact-ident-form,
  body.site-public .face#contacto .contact-ident-trust,
  body.site-public .face#contacto .contact-ident-benefits {
    grid-template-columns: 1fr !important;
  }

  body.site-public .face#contacto .contact-ident-benefits {
    height: auto !important;
  }
}


/* =========================================================
   CONTACTO EXACTO - composición fiel a la referencia
   ========================================================= */
body.site-public .face#contacto {
  padding: 92px 22px 18px !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -8% 100%, rgba(191,158,95,.075), transparent 21%),
    linear-gradient(180deg, #fcfbf8 0%, #f7f4ef 100%) !important;
}

body.site-public .face#contacto .contacto-exacto {
  width: min(1447px, 100%) !important;
  max-width: 1447px !important;
  margin: 0 auto !important;
}

body.site-public .face#contacto .contacto-exacto-visual {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 1447 / 807 !important;
  background: url('../img/custom/contacto-exacto-gilberth-bg.png') center top / contain no-repeat !important;
}

body.site-public .face#contacto .ce-hotspot,
body.site-public .face#contacto .ce-field,
body.site-public .face#contacto .ce-submit,
body.site-public .face#contacto .ce-form {
  position: absolute !important;
  box-sizing: border-box !important;
}

body.site-public .face#contacto .ce-form {
  inset: 0 !important;
}

/* Hotspots botones y email */
body.site-public .face#contacto .ce-hotspot { display:block !important; z-index: 3 !important; }
body.site-public .face#contacto .ce-wsp  { left: 7.55% !important; top: 62.25% !important; width: 9.95% !important; height: 4.25% !important; }
body.site-public .face#contacto .ce-email{ left: 23.45% !important; top: 52.10% !important; width: 15.25% !important; height: 11.20% !important; }
body.site-public .face#contacto .ce-cal  { left: 40.15% !important; top: 62.15% !important; width: 9.95% !important; height: 4.25% !important; }

/* Campos sobre la maqueta */
body.site-public .face#contacto .ce-field {
  z-index: 4 !important;
  margin: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 4px !important;
  background: rgba(255,255,255,0.01) !important;
  box-shadow: none !important;
  color: #2b241b !important;
  font-size: clamp(10px, .78vw, 13px) !important;
  line-height: 1.2 !important;
  padding: 0 12px !important;
  outline: none !important;
}
body.site-public .face#contacto .ce-field::placeholder { color: transparent !important; }
body.site-public .face#contacto .ce-field:focus {
  background: rgba(255,255,255,.78) !important;
  border-color: rgba(191,158,95,.32) !important;
}
body.site-public .face#contacto textarea.ce-field {
  resize: vertical !important;
  padding: 10px 12px !important;
}

body.site-public .face#contacto .ce-name     { left: 57.05% !important; top: 26.55% !important; width: 16.90% !important; height: 4.45% !important; }
body.site-public .face#contacto .ce-position { left: 75.35% !important; top: 26.55% !important; width: 18.05% !important; height: 4.45% !important; }
body.site-public .face#contacto .ce-company  { left: 57.05% !important; top: 35.35% !important; width: 16.90% !important; height: 4.45% !important; }
body.site-public .face#contacto .ce-emailf   { left: 75.35% !important; top: 35.35% !important; width: 18.05% !important; height: 4.45% !important; }
body.site-public .face#contacto .ce-phone    { left: 57.05% !important; top: 44.55% !important; width: 16.90% !important; height: 4.45% !important; }
body.site-public .face#contacto .ce-interest { left: 75.35% !important; top: 44.55% !important; width: 18.05% !important; height: 4.45% !important; }
body.site-public .face#contacto .ce-message  { left: 57.05% !important; top: 53.15% !important; width: 36.35% !important; height: 10.55% !important; }
body.site-public .face#contacto .ce-submit   {
  left: 57.05% !important; top: 66.15% !important; width: 36.35% !important; height: 4.40% !important;
  z-index: 5 !important; border: 0 !important; border-radius: 4px !important; background: rgba(0,0,0,0.001) !important; color: transparent !important; cursor: pointer !important;
}
body.site-public .face#contacto .ce-submit:hover,
body.site-public .face#contacto .ce-submit:focus { background: rgba(255,255,255,.10) !important; box-shadow: inset 0 0 0 1px rgba(255,255,255,.2) !important; }

/* Responsive: mantener imagen completa y luego formulario usable */
@media (max-width: 1100px) {
  body.site-public .face#contacto { padding: 92px 12px 18px !important; }
  body.site-public .face#contacto .contacto-exacto-visual { min-height: auto !important; }
  body.site-public .face#contacto .ce-field { font-size: clamp(9px, 1.15vw, 12px) !important; padding: 0 8px !important; }
  body.site-public .face#contacto textarea.ce-field { padding: 8px !important; }
}

@media (max-width: 760px) {
  body.site-public .face#contacto { padding: 88px 8px 14px !important; }
  body.site-public .face#contacto .contacto-exacto-visual {
    aspect-ratio: 1447 / 807 !important;
  }
  body.site-public .face#contacto .ce-field { font-size: clamp(8px, 1.35vw, 11px) !important; }
}


/* =========================================================
   CONTACTO - FUNCIONALIDAD REAL SOBRE LA MAQUETA VISUAL
   ========================================================= */

/* El formulario cubre la maqueta, pero solo los campos/botones reciben clics.
   Así no bloquea WhatsApp, Email ni Calendly. */
body.site-public .face#contacto .ce-form {
  pointer-events: none !important;
}

body.site-public .face#contacto .ce-field,
body.site-public .face#contacto .ce-submit,
body.site-public .face#contacto .ce-hotspot {
  pointer-events: auto !important;
}

body.site-public .face#contacto .ce-hotspot {
  z-index: 20 !important;
  cursor: pointer !important;
}

/* Campos reales: se ven al escribir, pero respetan la maqueta de fondo */
body.site-public .face#contacto .ce-field {
  z-index: 15 !important;
  color: #17110a !important;
  caret-color: #b9771c !important;
  background: rgba(255,255,255,.34) !important;
  border: 1px solid transparent !important;
  opacity: 1 !important;
  appearance: auto !important;
  -webkit-appearance: auto !important;
}

body.site-public .face#contacto .ce-field:focus {
  background: rgba(255,255,255,.96) !important;
  border-color: rgba(185,119,28,.36) !important;
  box-shadow: 0 0 0 3px rgba(185,119,28,.08) !important;
}

body.site-public .face#contacto .ce-field:valid {
  background: rgba(255,255,255,.58) !important;
}

body.site-public .face#contacto .ce-field::placeholder {
  color: transparent !important;
}

/* Select funcional manteniendo la caja de la maqueta */
body.site-public .face#contacto select.ce-field {
  color: #17110a !important;
  cursor: pointer !important;
}

/* Botón real invisible encima del botón dorado de la maqueta */
body.site-public .face#contacto .ce-submit {
  z-index: 18 !important;
  cursor: pointer !important;
  background: rgba(255,255,255,0) !important;
  border: 0 !important;
  color: transparent !important;
  font-size: 0 !important;
  opacity: 1 !important;
}

body.site-public .face#contacto .ce-submit:hover,
body.site-public .face#contacto .ce-submit:focus {
  background: rgba(255,255,255,.10) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.25) !important;
}

/* Estados de validación visibles sin romper la imagen */
body.site-public .face#contacto .ce-field:invalid:focus {
  border-color: rgba(190,68,50,.45) !important;
  box-shadow: 0 0 0 3px rgba(190,68,50,.08) !important;
}

/* En móvil, hacer los campos más fáciles de tocar */
@media (max-width: 760px) {
  body.site-public .face#contacto .ce-field {
    min-height: 18px !important;
    padding-inline: 4px !important;
    font-size: 8px !important;
  }
}


/* =========================================================
   CONTACTO - CAMPOS FUNCIONALES CON TEXTOS CLAROS
   Mantiene la estructura visual, pero los inputs ahora se ven y funcionan.
   ========================================================= */
body.site-public .face#contacto .ce-form {
  pointer-events: none !important;
  z-index: 10 !important;
}

body.site-public .face#contacto .ce-field,
body.site-public .face#contacto .ce-submit,
body.site-public .face#contacto .ce-hotspot {
  pointer-events: auto !important;
}

/* Cajas reales visibles sobre la maqueta */
body.site-public .face#contacto .ce-field {
  z-index: 30 !important;
  display: block !important;
  opacity: 1 !important;
  background: rgba(255,255,255,.98) !important;
  border: 1px solid rgba(191,158,95,.28) !important;
  border-radius: 5px !important;
  color: #1a140d !important;
  -webkit-text-fill-color: #1a140d !important;
  caret-color: #b9771c !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(10px, .78vw, 13px) !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  padding: 0 12px !important;
  box-shadow: inset 0 1px 1px rgba(0,0,0,.025) !important;
  outline: none !important;
  appearance: auto !important;
  -webkit-appearance: auto !important;
}

body.site-public .face#contacto textarea.ce-field {
  padding: 10px 12px !important;
  line-height: 1.35 !important;
  resize: vertical !important;
}

body.site-public .face#contacto .ce-field::placeholder {
  color: #8b8580 !important;
  -webkit-text-fill-color: #8b8580 !important;
  opacity: 1 !important;
}

body.site-public .face#contacto .ce-field:focus {
  background: #ffffff !important;
  border-color: rgba(185,119,28,.70) !important;
  box-shadow:
    inset 0 1px 1px rgba(0,0,0,.025),
    0 0 0 3px rgba(185,119,28,.12) !important;
}

body.site-public .face#contacto .ce-field:valid {
  background: #ffffff !important;
}

/* Select totalmente visible */
body.site-public .face#contacto select.ce-field {
  color: #1a140d !important;
  -webkit-text-fill-color: #1a140d !important;
  cursor: pointer !important;
  padding-right: 28px !important;
}

/* Botón real visible y funcional, ya no invisible */
body.site-public .face#contacto .ce-submit {
  z-index: 35 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(9px, .75vw, 12px) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  opacity: 1 !important;
  box-shadow: 0 3px 8px rgba(185,119,28,.18) !important;
}

body.site-public .face#contacto .ce-submit:hover,
body.site-public .face#contacto .ce-submit:focus {
  background: linear-gradient(135deg, #e0a946, #bd7c25) !important;
  box-shadow: 0 4px 12px rgba(185,119,28,.26) !important;
}

/* Hotspots encima y clickeables */
body.site-public .face#contacto .ce-hotspot {
  z-index: 45 !important;
  cursor: pointer !important;
}

/* Ajustes finos para que las cajas encajen claro en la maqueta */
body.site-public .face#contacto .ce-name,
body.site-public .face#contacto .ce-position,
body.site-public .face#contacto .ce-company,
body.site-public .face#contacto .ce-emailf,
body.site-public .face#contacto .ce-phone,
body.site-public .face#contacto .ce-interest {
  height: 4.55% !important;
}

body.site-public .face#contacto .ce-message {
  height: 10.75% !important;
}

body.site-public .face#contacto .ce-submit {
  height: 4.65% !important;
}

/* Validación clara */
body.site-public .face#contacto .ce-field:invalid:focus {
  border-color: rgba(190,68,50,.55) !important;
  box-shadow: 0 0 0 3px rgba(190,68,50,.10) !important;
}

/* Mobile: más legible y tocable */
@media (max-width: 760px) {
  body.site-public .face#contacto .ce-field {
    font-size: 8px !important;
    padding-inline: 4px !important;
  }

  body.site-public .face#contacto textarea.ce-field {
    padding: 4px !important;
  }

  body.site-public .face#contacto .ce-submit {
    font-size: 7px !important;
    letter-spacing: .03em !important;
  }
}


/* =========================================================
   CONTACTO ESTRUCTURADO REAL V2
   Solo usa la foto de Gilberth como imagen.
   ========================================================= */
body.site-public .face#contacto {
  padding: 88px 34px 18px !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at -6% 100%, rgba(191,158,95,.08), transparent 22%),
    radial-gradient(circle at 105% 20%, rgba(191,158,95,.05), transparent 18%),
    linear-gradient(180deg, #fcfbf8 0%, #f7f4ef 100%) !important;
}

body.site-public .face#contacto .contact-struct-v2 {
  width: min(1380px, 100%) !important;
  max-width: 1380px !important;
  min-height: calc(100dvh - 104px) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.06fr) minmax(470px, .94fr) !important;
  grid-template-rows: auto 82px !important;
  gap: 18px 34px !important;
  align-items: start !important;
}

body.site-public .face#contacto .csv2-left,
body.site-public .face#contacto .csv2-right {
  min-width: 0 !important;
}

body.site-public .face#contacto .csv2-left {
  display: grid !important;
  grid-template-rows: 332px 124px 132px !important;
  gap: 0 !important;
}

body.site-public .face#contacto .csv2-hero {
  display: grid !important;
  grid-template-columns: minmax(0, .60fr) minmax(290px, .40fr) !important;
  height: 332px !important;
  min-height: 332px !important;
  overflow: hidden !important;
  background: transparent !important;
}

body.site-public .face#contacto .csv2-copy {
  padding: 32px 18px 18px 0 !important;
}

body.site-public .face#contacto .csv2-kicker {
  margin: 0 0 16px !important;
  color: #b2802f !important;
  font-size: 11.5px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .11em !important;
  text-transform: uppercase !important;
}

body.site-public .face#contacto .csv2-title {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(54px, 4.6vw, 64px) !important;
  font-weight: 400 !important;
  line-height: .94 !important;
  letter-spacing: -.058em !important;
}

body.site-public .face#contacto .csv2-gold {
  margin: 18px 0 0 !important;
  color: #b2802f !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
}

body.site-public .face#contacto .csv2-line {
  position: relative !important;
  display: block !important;
  width: 62px !important;
  height: 1px !important;
  margin: 15px 0 18px !important;
  background: #c99b43 !important;
}

body.site-public .face#contacto .csv2-line::after {
  content: "→" !important;
  position: absolute !important;
  right: -6px !important;
  top: 50% !important;
  transform: translateY(-56%) !important;
  color: #c99b43 !important;
  font-size: 17px !important;
}

body.site-public .face#contacto .csv2-text {
  max-width: 400px !important;
  margin: 0 !important;
  color: #3d382f !important;
  font-size: 14px !important;
  line-height: 1.56 !important;
}

body.site-public .face#contacto .csv2-photo-wrap {
  position: relative !important;
  height: 332px !important;
  min-height: 332px !important;
  overflow: hidden !important;
  border: 1px solid rgba(191,158,95,.12) !important;
  background: linear-gradient(180deg, #f5f2eb 0%, #ece5d9 100%) !important;
}

body.site-public .face#contacto .csv2-photo-bg {
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 80% 18%, rgba(95,120,88,.16), transparent 18%),
    linear-gradient(90deg, rgba(255,255,255,.90) 0 9%, transparent 9.4% 22%, rgba(255,255,255,.45) 22.3% 23.2%, transparent 23.4% 53%, rgba(255,255,255,.44) 53.3% 54.2%, transparent 54.5% 100%),
    linear-gradient(180deg, #f1ede5 0%, #e7e1d5 100%) !important;
}

body.site-public .face#contacto .csv2-photo {
  position: absolute !important;
  right: 16px !important;
  bottom: -2px !important;
  width: min(292px, 90%) !important;
  height: 326px !important;
  background: url('../img/custom/gilberth-sobre-contacto-grande.png') center bottom / contain no-repeat !important;
  filter: drop-shadow(0 16px 20px rgba(0,0,0,.12)) !important;
}

body.site-public .face#contacto .csv2-contact-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  min-height: 124px !important;
  background: rgba(255,255,255,.95) !important;
  border: 1px solid rgba(191,158,95,.15) !important;
  box-shadow: 0 8px 18px rgba(70,52,23,.025) !important;
  overflow: hidden !important;
}

body.site-public .face#contacto .csv2-card {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
  padding: 18px 18px 14px !important;
  border-left: 1px solid rgba(191,158,95,.16) !important;
}
body.site-public .face#contacto .csv2-card:first-child { border-left: 0 !important; }

body.site-public .face#contacto .csv2-card-icon {
  width: 36px !important; height: 36px !important;
  display: grid !important; place-items: center !important;
  color: #bd8429 !important; font-size: 28px !important; line-height: 1 !important;
}

body.site-public .face#contacto .csv2-card-body h3 {
  margin: 0 0 7px !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 14px !important;
  line-height: 1.12 !important;
}

body.site-public .face#contacto .csv2-card-body p {
  margin: 0 0 10px !important;
  color: #4e463b !important;
  font-size: 11px !important;
  line-height: 1.38 !important;
}

body.site-public .face#contacto .csv2-card-body a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 138px !important;
  height: 28px !important;
  padding: 0 14px !important;
  border-radius: 4px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  font-size: 9.8px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
}

body.site-public .face#contacto .csv2-card-body span {
  color: #b2802f !important;
  font-size: 11.4px !important;
  line-height: 1.28 !important;
  font-weight: 800 !important;
}

body.site-public .face#contacto .csv2-location {
  display: grid !important;
  grid-template-columns: 404px minmax(0, 1fr) !important;
  min-height: 132px !important;
  margin-top: 14px !important;
  border: 1px solid rgba(191,158,95,.15) !important;
  border-radius: 6px !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 8px 18px rgba(70,52,23,.025) !important;
  overflow: hidden !important;
}

body.site-public .face#contacto .csv2-map {
  position: relative !important;
  overflow: hidden !important;
  background:
    linear-gradient(0deg, rgba(255,255,255,.58), rgba(255,255,255,.58)),
    linear-gradient(34deg, transparent 0 46%, rgba(208,204,196,.78) 46.1% 47.0%, transparent 47.2% 100%),
    linear-gradient(139deg, transparent 0 58%, rgba(208,204,196,.7) 58.2% 59.1%, transparent 59.3% 100%),
    repeating-linear-gradient(90deg, rgba(210,205,196,.48) 0 1px, transparent 1px 48px),
    repeating-linear-gradient(0deg, rgba(210,205,196,.48) 0 1px, transparent 1px 38px),
    linear-gradient(135deg, #f1eee8, #e8e3d9) !important;
}
body.site-public .face#contacto .csv2-map-grid { position:absolute !important; inset:0 !important; }
body.site-public .face#contacto .csv2-pin {
  position: absolute !important;
  left: 33% !important;
  top: 52% !important;
  width: 22px !important;
  height: 22px !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
  background: #c58a2e !important;
  border-radius: 50% 50% 50% 0 !important;
  box-shadow: 0 0 0 7px rgba(197,138,46,.14) !important;
}
body.site-public .face#contacto .csv2-pin::after {
  content: '' !important;
  position: absolute !important;
  inset: 5px !important;
  border-radius: 50% !important;
  background: #fff !important;
  transform: rotate(-45deg) !important;
}

body.site-public .face#contacto .csv2-address {
  padding: 18px 22px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
body.site-public .face#contacto .csv2-address h3 {
  margin: 0 0 9px !important;
  color: #15100a !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
  line-height: 1.12 !important;
}
body.site-public .face#contacto .csv2-address p {
  margin: 0 0 7px !important;
  color: #4b443b !important;
  font-size: 11.6px !important;
  line-height: 1.46 !important;
}
body.site-public .face#contacto .csv2-address b {
  display: block !important;
  width: 2px !important;
  height: 14px !important;
  margin: 2px 0 8px !important;
  background: #c99b43 !important;
}

body.site-public .face#contacto .csv2-form-card {
  min-height: 588px !important;
  padding: 24px 26px 18px !important;
  border: 1px solid rgba(191,158,95,.15) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 8px 18px rgba(70,52,23,.025) !important;
}
body.site-public .face#contacto .csv2-form-card > h3 {
  margin: 0 0 18px !important;
  color: #b2802f !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
body.site-public .face#contacto .csv2-form-card > h3::after {
  content:'' !important; display:block !important; width:64px !important; height:1px !important; margin-top:12px !important; background:#c99b43 !important;
}

body.site-public .face#contacto .csv2-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 15px 24px !important;
}
body.site-public .face#contacto .csv2-field { min-width:0 !important; }
body.site-public .face#contacto .csv2-field-full { grid-column: 1 / -1 !important; }
body.site-public .face#contacto .csv2-field label {
  display:block !important; margin:0 0 7px !important; color:#23201b !important; font-size:11.4px !important; line-height:1 !important; font-weight:800 !important;
}
body.site-public .face#contacto .csv2-field input,
body.site-public .face#contacto .csv2-field select,
body.site-public .face#contacto .csv2-field textarea {
  width:100% !important;
  border:1px solid rgba(191,158,95,.18) !important;
  border-radius:4px !important;
  background:#fff !important;
  color:#17110a !important;
  font-size:11.7px !important;
  font-family: Arial, Helvetica, sans-serif !important;
  box-sizing:border-box !important;
  outline:none !important;
}
body.site-public .face#contacto .csv2-field input,
body.site-public .face#contacto .csv2-field select { height:36px !important; padding:0 13px !important; }
body.site-public .face#contacto .csv2-field textarea { min-height:84px !important; padding:12px 13px !important; resize:vertical !important; }
body.site-public .face#contacto .csv2-field input::placeholder,
body.site-public .face#contacto .csv2-field textarea::placeholder { color:#8e8882 !important; opacity:1 !important; }
body.site-public .face#contacto .csv2-field input:focus,
body.site-public .face#contacto .csv2-field select:focus,
body.site-public .face#contacto .csv2-field textarea:focus {
  border-color: rgba(185,119,28,.72) !important;
  box-shadow: 0 0 0 3px rgba(185,119,28,.10) !important;
}

body.site-public .face#contacto .csv2-submit {
  grid-column:1 / -1 !important;
  height:36px !important;
  border:0 !important;
  border-radius:4px !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
  box-shadow: 0 3px 8px rgba(185,119,28,.18) !important;
}
body.site-public .face#contacto .csv2-submit:hover,
body.site-public .face#contacto .csv2-submit:focus { background: linear-gradient(135deg, #e0a946, #bd7c25) !important; }

body.site-public .face#contacto .csv2-form-trust {
  display:grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap:0 !important; margin-top:18px !important;
}
body.site-public .face#contacto .csv2-form-trust article {
  padding:0 16px !important; text-align:center !important; border-left:1px solid rgba(191,158,95,.18) !important;
}
body.site-public .face#contacto .csv2-form-trust article:first-child { border-left:0 !important; }
body.site-public .face#contacto .csv2-form-trust i {
  display:block !important; margin:0 auto 8px !important; color:#bd8429 !important; font-size:19px !important; line-height:1 !important; font-style:normal !important;
}
body.site-public .face#contacto .csv2-form-trust strong {
  display:block !important; margin-bottom:5px !important; color:#15100a !important; font-size:10px !important; line-height:1.2 !important; font-weight:900 !important;
}
body.site-public .face#contacto .csv2-form-trust p {
  margin:0 !important; color:#4b443b !important; font-size:9.4px !important; line-height:1.35 !important;
}

body.site-public .face#contacto .csv2-benefits {
  grid-column:1 / -1 !important;
  min-height:82px !important;
  display:grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  border:1px solid rgba(191,158,95,.15) !important;
  border-radius:8px !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 8px 18px rgba(70,52,23,.025) !important;
  overflow:hidden !important;
}
body.site-public .face#contacto .csv2-benefits article {
  min-height:82px !important;
  display:grid !important;
  grid-template-columns: 40px minmax(0,1fr) !important;
  gap:14px !important;
  align-items:center !important;
  padding:0 22px !important;
  border-left:1px solid rgba(191,158,95,.18) !important;
}
body.site-public .face#contacto .csv2-benefits article:first-child { border-left:0 !important; }
body.site-public .face#contacto .csv2-benefits i {
  color:#bd8429 !important; font-size:27px !important; line-height:1 !important; font-style:normal !important;
}
body.site-public .face#contacto .csv2-benefits strong {
  display:block !important; margin-bottom:4px !important; color:#15100a !important; font-size:11px !important; line-height:1.15 !important; font-weight:950 !important; letter-spacing:.03em !important;
}
body.site-public .face#contacto .csv2-benefits p {
  margin:0 !important; color:#4b443b !important; font-size:10px !important; line-height:1.35 !important;
}

@media (min-width:1101px) and (max-height:860px) {
  body.site-public .face#contacto { padding-top:74px !important; padding-bottom:14px !important; }
  body.site-public .face#contacto .contact-struct-v2 { min-height: calc(100dvh - 88px) !important; grid-template-rows:auto 70px !important; gap:14px 28px !important; }
  body.site-public .face#contacto .csv2-left { grid-template-rows: 286px 104px 116px !important; }
  body.site-public .face#contacto .csv2-hero { height:286px !important; min-height:286px !important; }
  body.site-public .face#contacto .csv2-copy { padding-top:24px !important; }
  body.site-public .face#contacto .csv2-title { font-size:54px !important; }
  body.site-public .face#contacto .csv2-gold { font-size:16px !important; margin-top:12px !important; }
  body.site-public .face#contacto .csv2-line { margin:10px 0 12px !important; }
  body.site-public .face#contacto .csv2-text { font-size:12.7px !important; max-width:360px !important; }
  body.site-public .face#contacto .csv2-photo-wrap { height:286px !important; min-height:286px !important; }
  body.site-public .face#contacto .csv2-photo { width:min(248px,88%) !important; height:280px !important; }
  body.site-public .face#contacto .csv2-contact-row { min-height:104px !important; }
  body.site-public .face#contacto .csv2-card { padding:14px 14px 12px !important; grid-template-columns: 40px minmax(0,1fr) !important; }
  body.site-public .face#contacto .csv2-card-icon { width:30px !important; height:30px !important; font-size:22px !important; }
  body.site-public .face#contacto .csv2-card-body h3 { font-size:12.5px !important; }
  body.site-public .face#contacto .csv2-card-body p { font-size:9.8px !important; margin-bottom:7px !important; }
  body.site-public .face#contacto .csv2-location { min-height:116px !important; margin-top:10px !important; }
  body.site-public .face#contacto .csv2-map { min-height:116px !important; }
  body.site-public .face#contacto .csv2-address h3 { font-size:15px !important; }
  body.site-public .face#contacto .csv2-address p { font-size:10.5px !important; }
  body.site-public .face#contacto .csv2-form-card { min-height:522px !important; padding:18px 20px 14px !important; }
  body.site-public .face#contacto .csv2-form { gap:10px 16px !important; }
  body.site-public .face#contacto .csv2-field input, body.site-public .face#contacto .csv2-field select { height:33px !important; }
  body.site-public .face#contacto .csv2-field textarea { min-height:66px !important; }
  body.site-public .face#contacto .csv2-submit { height:34px !important; }
  body.site-public .face#contacto .csv2-form-trust { margin-top:12px !important; }
  body.site-public .face#contacto .csv2-benefits { min-height:70px !important; }
  body.site-public .face#contacto .csv2-benefits article { min-height:70px !important; padding:0 18px !important; }
  body.site-public .face#contacto .csv2-benefits i { font-size:23px !important; }
  body.site-public .face#contacto .csv2-benefits strong { font-size:10px !important; }
  body.site-public .face#contacto .csv2-benefits p { font-size:9px !important; }
}

@media (max-width:1100px) {
  body.site-public .face#contacto { padding: 98px 24px 24px !important; }
  body.site-public .face#contacto .contact-struct-v2 { grid-template-columns:1fr !important; grid-template-rows:auto auto auto !important; min-height:0 !important; }
  body.site-public .face#contacto .csv2-left { grid-template-rows:auto auto auto !important; }
  body.site-public .face#contacto .csv2-hero { grid-template-columns:1fr !important; height:auto !important; min-height:0 !important; }
  body.site-public .face#contacto .csv2-copy { padding:28px 16px 22px !important; }
  body.site-public .face#contacto .csv2-photo-wrap { height:300px !important; min-height:300px !important; }
  body.site-public .face#contacto .csv2-photo { left:50% !important; right:auto !important; transform:translateX(-50%) !important; }
  body.site-public .face#contacto .csv2-contact-row { grid-template-columns:repeat(3, minmax(0,1fr)) !important; min-height:0 !important; }
  body.site-public .face#contacto .csv2-location { grid-template-columns:1fr !important; }
  body.site-public .face#contacto .csv2-map { min-height:160px !important; }
  body.site-public .face#contacto .csv2-right { width:100% !important; }
}

@media (max-width:760px) {
  body.site-public .face#contacto { padding: 92px 16px 24px !important; }
  body.site-public .face#contacto .csv2-title { font-size:46px !important; }
  body.site-public .face#contacto .csv2-text { font-size:14px !important; }
  body.site-public .face#contacto .csv2-contact-row,
  body.site-public .face#contacto .csv2-form,
  body.site-public .face#contacto .csv2-form-trust,
  body.site-public .face#contacto .csv2-benefits { grid-template-columns:1fr !important; }
  body.site-public .face#contacto .csv2-card,
  body.site-public .face#contacto .csv2-benefits article,
  body.site-public .face#contacto .csv2-form-trust article { border-left:0 !important; border-top:1px solid rgba(191,158,95,.18) !important; }
  body.site-public .face#contacto .csv2-card:first-child,
  body.site-public .face#contacto .csv2-benefits article:first-child,
  body.site-public .face#contacto .csv2-form-trust article:first-child { border-top:0 !important; }
  body.site-public .face#contacto .csv2-benefits { min-height:0 !important; }
  body.site-public .face#contacto .csv2-benefits article { min-height:72px !important; }
}


/* =========================================================
   AJUSTE FINO CONTACTO - FOTO DE GILBERTH Y MAPA MÁS FIEL
   ========================================================= */

/* Afinar composición general para parecerse más a la referencia */
body.site-public .face#contacto .contact-struct-v2 {
  grid-template-columns: minmax(0, 1.12fr) minmax(520px, .88fr) !important;
  gap: 18px 28px !important;
}

body.site-public .face#contacto .csv2-left {
  grid-template-rows: 330px 122px 132px !important;
}

body.site-public .face#contacto .csv2-hero {
  grid-template-columns: minmax(0, .62fr) minmax(300px, .38fr) !important;
  height: 330px !important;
  min-height: 330px !important;
}

body.site-public .face#contacto .csv2-copy {
  padding: 30px 22px 16px 0 !important;
}

body.site-public .face#contacto .csv2-title {
  font-size: clamp(50px, 4.15vw, 64px) !important;
  line-height: .96 !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#contacto .csv2-text {
  max-width: 420px !important;
}

/* Foto: que se vea como el ejemplo, pero usando a Gilberth */
body.site-public .face#contacto .csv2-photo-wrap {
  border: 1px solid rgba(191,158,95,.08) !important;
  background: #f1ece4 !important;
}

body.site-public .face#contacto .csv2-photo-bg {
  background:
    linear-gradient(90deg, rgba(252,249,244,.98) 0 18%, rgba(252,249,244,.55) 18.3% 21%, transparent 21.2% 100%),
    radial-gradient(circle at 71% 13%, rgba(190,191,176,.50), transparent 13%),
    radial-gradient(circle at 74% 14%, rgba(180,180,168,.25), transparent 7%),
    linear-gradient(90deg, transparent 0 59%, rgba(255,255,255,.28) 59.2% 60.1%, transparent 60.3% 74%, rgba(255,255,255,.24) 74.2% 75.1%, transparent 75.3% 100%),
    linear-gradient(180deg, #f4efe7 0%, #eee7db 100%) !important;
}

body.site-public .face#contacto .csv2-photo-bg::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(0deg, rgba(210,202,188,.34) 0 1px, transparent 1px 72px),
    linear-gradient(90deg, rgba(205,198,185,.28) 0 1px, transparent 1px 69px) !important;
  opacity: .22 !important;
}

body.site-public .face#contacto .csv2-photo-bg::after {
  content: '' !important;
  position: absolute !important;
  right: 38px !important;
  top: 58px !important;
  width: 92px !important;
  height: 132px !important;
  background:
    linear-gradient(180deg, rgba(151,135,109,.10), rgba(151,135,109,.04)),
    linear-gradient(0deg, rgba(255,255,255,.18) 0 3px, transparent 3px 31px, rgba(255,255,255,.16) 31px 34px, transparent 34px 64px, rgba(255,255,255,.16) 64px 67px, transparent 67px 100%),
    linear-gradient(90deg, rgba(255,255,255,.15) 0 3px, transparent 3px 44px, rgba(255,255,255,.15) 44px 47px, transparent 47px 100%),
    linear-gradient(180deg, rgba(208,201,191,.65), rgba(233,228,220,.45)) !important;
  border-radius: 2px !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.05) !important;
  opacity: .78 !important;
}

body.site-public .face#contacto .csv2-photo {
  right: 22px !important;
  left: auto !important;
  bottom: -1px !important;
  width: min(276px, 94%) !important;
  height: 312px !important;
  background: url('../img/custom/gilberth-sobre-contacto-grande.png') center bottom / contain no-repeat !important;
  filter: drop-shadow(0 18px 18px rgba(0,0,0,.12)) !important;
}

/* Tarjetas intermedias más parecidas */
body.site-public .face#contacto .csv2-contact-row {
  min-height: 122px !important;
}

body.site-public .face#contacto .csv2-card {
  padding: 15px 18px 12px !important;
}

body.site-public .face#contacto .csv2-card-icon {
  color: #c18a2d !important;
  font-size: 26px !important;
}

/* Mapa tipo Google Maps estilizado con CSS */
body.site-public .face#contacto .csv2-location {
  min-height: 132px !important;
  margin-top: 10px !important;
}

body.site-public .face#contacto .csv2-map {
  background:
    linear-gradient(0deg, rgba(255,255,255,.60), rgba(255,255,255,.60)),
    linear-gradient(180deg, #efede7 0%, #ebe7df 100%) !important;
}

body.site-public .face#contacto .csv2-map::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(28deg, transparent 0 42%, rgba(214,208,198,.88) 42.2% 43.3%, transparent 43.5% 100%),
    linear-gradient(140deg, transparent 0 52%, rgba(214,208,198,.80) 52.2% 53.2%, transparent 53.4% 100%),
    linear-gradient(92deg, transparent 0 79%, rgba(216,211,201,.82) 79.2% 80.5%, transparent 80.7% 100%),
    linear-gradient(0deg, rgba(224,219,210,.70) 0 1px, transparent 1px 32px),
    linear-gradient(90deg, rgba(224,219,210,.70) 0 1px, transparent 1px 48px) !important;
  opacity: 1 !important;
}

body.site-public .face#contacto .csv2-map::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 16% 66%, rgba(205,221,193,.80) 0 32px, transparent 34px),
    radial-gradient(circle at 84% 22%, rgba(205,221,193,.68) 0 18px, transparent 19px),
    radial-gradient(circle at 64% 78%, rgba(205,221,193,.72) 0 15px, transparent 16px) !important;
  opacity: .9 !important;
}

body.site-public .face#contacto .csv2-map-grid {
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, transparent 0 10%, rgba(255,255,255,.42) 10.2% 10.9%, transparent 11.1% 42%, rgba(255,255,255,.34) 42.2% 42.8%, transparent 43% 68%, rgba(255,255,255,.34) 68.3% 69%, transparent 69.2% 100%),
    linear-gradient(0deg, transparent 0 24%, rgba(255,255,255,.42) 24.2% 24.9%, transparent 25.1% 56%, rgba(255,255,255,.34) 56.2% 56.9%, transparent 57.1% 100%) !important;
  opacity: .9 !important;
}

body.site-public .face#contacto .csv2-pin {
  left: 35% !important;
  top: 58% !important;
  width: 20px !important;
  height: 20px !important;
  box-shadow: 0 0 0 8px rgba(197,138,46,.12) !important;
}

/* Afinar responsive donde antes se deformaba */
@media (max-width: 1280px) {
  body.site-public .face#contacto .contact-struct-v2 {
    grid-template-columns: minmax(0, 1fr) minmax(450px, .92fr) !important;
  }
  body.site-public .face#contacto .csv2-title {
    font-size: clamp(44px, 4.0vw, 58px) !important;
  }
  body.site-public .face#contacto .csv2-text {
    max-width: 360px !important;
  }
  body.site-public .face#contacto .csv2-photo {
    width: min(250px, 92%) !important;
    height: 296px !important;
  }
}

@media (max-width: 1100px) {
  body.site-public .face#contacto .csv2-photo-wrap {
    height: 328px !important;
    min-height: 328px !important;
  }
  body.site-public .face#contacto .csv2-photo {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: min(260px, 90%) !important;
    height: 310px !important;
  }
}


/* =========================================================
   AJUSTE FINAL CONTACTO - COMPOSICIÓN PRECISA SEGÚN REFERENCIA
   ========================================================= */
@media (min-width: 1180px) {
  body.site-public .face#contacto {
    padding: 86px 34px 18px !important;
  }

  body.site-public .face#contacto .contact-struct-v2 {
    width: min(1450px, 100%) !important;
    max-width: 1450px !important;
    min-height: calc(100dvh - 106px) !important;
    grid-template-columns: minmax(0, 1.18fr) minmax(530px, .82fr) !important;
    grid-template-rows: auto 82px !important;
    gap: 18px 28px !important;
    align-items: start !important;
  }

  body.site-public .face#contacto .csv2-left {
    grid-template-rows: 338px 122px 126px !important;
  }

  body.site-public .face#contacto .csv2-hero {
    grid-template-columns: minmax(430px, .62fr) minmax(315px, .38fr) !important;
    height: 338px !important;
    min-height: 338px !important;
    align-items: stretch !important;
  }

  body.site-public .face#contacto .csv2-copy {
    padding: 30px 18px 16px 2px !important;
  }

  body.site-public .face#contacto .csv2-kicker {
    margin-bottom: 14px !important;
    font-size: 12px !important;
    letter-spacing: .09em !important;
  }

  body.site-public .face#contacto .csv2-title {
    font-size: clamp(50px, 4vw, 62px) !important;
    line-height: .95 !important;
    letter-spacing: -.05em !important;
    max-width: 460px !important;
  }

  body.site-public .face#contacto .csv2-gold {
    margin-top: 18px !important;
    font-size: 16px !important;
  }

  body.site-public .face#contacto .csv2-line {
    margin: 14px 0 16px !important;
  }

  body.site-public .face#contacto .csv2-text {
    max-width: 430px !important;
    font-size: 13.4px !important;
    line-height: 1.58 !important;
  }

  body.site-public .face#contacto .csv2-photo-wrap {
    height: 338px !important;
    min-height: 338px !important;
    border: 1px solid rgba(191,158,95,.08) !important;
    background: linear-gradient(180deg, #f5f2ec 0%, #f0eade 100%) !important;
  }

  body.site-public .face#contacto .csv2-photo-bg {
    position: absolute !important;
    inset: 0 !important;
    background:
      linear-gradient(90deg, rgba(255,255,255,.62) 0 7%, transparent 7.3% 22%, rgba(255,255,255,.42) 22.3% 23.5%, transparent 23.8% 47%, rgba(255,255,255,.42) 47.3% 48.5%, transparent 48.7% 100%),
      radial-gradient(circle at 70% 15%, rgba(186,188,176,.48), transparent 11%),
      linear-gradient(180deg, #f1ede5 0%, #e8e1d3 100%) !important;
    overflow: hidden !important;
  }

  body.site-public .face#contacto .csv2-photo-bg::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background:
      linear-gradient(90deg, transparent 0 66%, rgba(150,132,105,.08) 66.4% 66.8%, transparent 67.2% 81%, rgba(150,132,105,.08) 81.4% 81.8%, transparent 82.2% 100%),
      linear-gradient(0deg, rgba(255,255,255,.11) 0 2px, transparent 2px 38px),
      linear-gradient(90deg, rgba(255,255,255,.10) 0 2px, transparent 2px 44px) !important;
    opacity: .5 !important;
  }

  body.site-public .face#contacto .csv2-photo-bg::after {
    content: '' !important;
    position: absolute !important;
    right: 30px !important;
    top: 58px !important;
    width: 104px !important;
    height: 140px !important;
    border-radius: 3px !important;
    background:
      linear-gradient(180deg, rgba(152,139,115,.10), rgba(152,139,115,.04)),
      linear-gradient(0deg, rgba(255,255,255,.18) 0 3px, transparent 3px 33px, rgba(255,255,255,.14) 33px 36px, transparent 36px 67px, rgba(255,255,255,.14) 67px 70px, transparent 70px 100%),
      linear-gradient(90deg, rgba(255,255,255,.16) 0 3px, transparent 3px 48px, rgba(255,255,255,.12) 48px 51px, transparent 51px 100%),
      linear-gradient(180deg, rgba(210,202,192,.66), rgba(234,228,221,.5)) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.06) !important;
    opacity: .8 !important;
  }

  body.site-public .face#contacto .csv2-photo {
    right: 10px !important;
    left: auto !important;
    bottom: 0 !important;
    width: 320px !important;
    height: 332px !important;
    background: url('../img/custom/gilberth-sobre-contacto-grande.png') center bottom / contain no-repeat !important;
    filter: drop-shadow(0 16px 18px rgba(0,0,0,.11)) !important;
    transform: none !important;
  }

  body.site-public .face#contacto .csv2-contact-row {
    min-height: 114px !important;
  }

  body.site-public .face#contacto .csv2-card {
    padding: 14px 16px 12px !important;
    grid-template-columns: 40px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  body.site-public .face#contacto .csv2-card-icon {
    width: 34px !important;
    height: 34px !important;
    font-size: 24px !important;
  }

  body.site-public .face#contacto .csv2-card-body h3 {
    font-size: 13px !important;
    margin-bottom: 6px !important;
  }

  body.site-public .face#contacto .csv2-card-body p {
    font-size: 10.4px !important;
    line-height: 1.42 !important;
    margin-bottom: 8px !important;
  }

  body.site-public .face#contacto .csv2-card-body span {
    font-size: 11px !important;
  }

  body.site-public .face#contacto .csv2-card-body a {
    min-width: 132px !important;
    height: 26px !important;
    font-size: 9.4px !important;
  }

  body.site-public .face#contacto .csv2-location {
    grid-template-columns: 404px minmax(0, 1fr) !important;
    min-height: 120px !important;
    margin-top: 12px !important;
  }

  body.site-public .face#contacto .csv2-map {
    min-height: 120px !important;
    background:
      linear-gradient(0deg, rgba(255,255,255,.57), rgba(255,255,255,.57)),
      linear-gradient(180deg, #f1ede7 0%, #ebe6dd 100%) !important;
  }

  body.site-public .face#contacto .csv2-map::before {
    background:
      linear-gradient(29deg, transparent 0 43%, rgba(214,208,198,.86) 43.2% 44.1%, transparent 44.4% 100%),
      linear-gradient(140deg, transparent 0 54%, rgba(214,208,198,.76) 54.2% 55.1%, transparent 55.4% 100%),
      linear-gradient(95deg, transparent 0 82%, rgba(215,211,202,.8) 82.2% 83.1%, transparent 83.4% 100%),
      linear-gradient(0deg, rgba(223,218,209,.64) 0 1px, transparent 1px 31px),
      linear-gradient(90deg, rgba(223,218,209,.64) 0 1px, transparent 1px 47px) !important;
  }

  body.site-public .face#contacto .csv2-map::after {
    background:
      radial-gradient(circle at 17% 82%, rgba(203,220,190,.72) 0 28px, transparent 29px),
      radial-gradient(circle at 87% 18%, rgba(203,220,190,.56) 0 16px, transparent 17px),
      radial-gradient(circle at 74% 84%, rgba(203,220,190,.66) 0 14px, transparent 15px) !important;
  }

  body.site-public .face#contacto .csv2-map-grid {
    background:
      linear-gradient(90deg, transparent 0 11%, rgba(255,255,255,.36) 11.2% 11.8%, transparent 12.1% 43%, rgba(255,255,255,.3) 43.2% 43.8%, transparent 44.1% 68%, rgba(255,255,255,.28) 68.2% 68.8%, transparent 69.1% 100%),
      linear-gradient(0deg, transparent 0 26%, rgba(255,255,255,.36) 26.2% 26.8%, transparent 27.1% 57%, rgba(255,255,255,.3) 57.2% 57.8%, transparent 58.1% 100%) !important;
  }

  body.site-public .face#contacto .csv2-pin {
    left: 34% !important;
    top: 58% !important;
    width: 20px !important;
    height: 20px !important;
  }

  body.site-public .face#contacto .csv2-address {
    padding: 14px 20px !important;
  }

  body.site-public .face#contacto .csv2-address h3 {
    font-size: 14px !important;
    margin-bottom: 7px !important;
  }

  body.site-public .face#contacto .csv2-address p {
    font-size: 11px !important;
    line-height: 1.44 !important;
  }

  body.site-public .face#contacto .csv2-form-card {
    min-height: 580px !important;
    padding: 18px 24px 14px !important;
  }

  body.site-public .face#contacto .csv2-form-card > h3 {
    font-size: 11px !important;
    margin-bottom: 14px !important;
  }

  body.site-public .face#contacto .csv2-form {
    gap: 11px 20px !important;
  }

  body.site-public .face#contacto .csv2-field label {
    font-size: 11px !important;
    margin-bottom: 6px !important;
  }

  body.site-public .face#contacto .csv2-field input,
  body.site-public .face#contacto .csv2-field select {
    height: 34px !important;
    font-size: 11.4px !important;
  }

  body.site-public .face#contacto .csv2-field textarea {
    min-height: 80px !important;
    font-size: 11.4px !important;
  }

  body.site-public .face#contacto .csv2-submit {
    height: 34px !important;
    font-size: 10.4px !important;
  }

  body.site-public .face#contacto .csv2-form-trust {
    margin-top: 16px !important;
  }

  body.site-public .face#contacto .csv2-form-trust article {
    padding: 0 12px !important;
  }

  body.site-public .face#contacto .csv2-form-trust strong {
    font-size: 10px !important;
  }

  body.site-public .face#contacto .csv2-form-trust p {
    font-size: 9.4px !important;
  }

  body.site-public .face#contacto .csv2-benefits {
    min-height: 76px !important;
  }

  body.site-public .face#contacto .csv2-benefits article {
    min-height: 76px !important;
    padding: 0 18px !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  body.site-public .face#contacto .csv2-benefits i {
    font-size: 24px !important;
  }

  body.site-public .face#contacto .csv2-benefits strong {
    font-size: 11px !important;
  }

  body.site-public .face#contacto .csv2-benefits p {
    font-size: 10px !important;
  }
}

/* Ajuste intermedio para que no se rompa en pantallas ~1365-1600 */
@media (min-width: 1180px) and (max-width: 1500px) {
  body.site-public .face#contacto .contact-struct-v2 {
    grid-template-columns: minmax(0, 1.14fr) minmax(500px, .86fr) !important;
  }

  body.site-public .face#contacto .csv2-hero {
    grid-template-columns: minmax(395px, .61fr) minmax(285px, .39fr) !important;
  }

  body.site-public .face#contacto .csv2-title {
    font-size: clamp(46px, 3.8vw, 58px) !important;
    max-width: 420px !important;
  }

  body.site-public .face#contacto .csv2-photo {
    width: 292px !important;
    height: 320px !important;
    right: 8px !important;
  }
}


/* =========================================================
   CONTACTO - GOOGLE MAPS REAL
   ========================================================= */
body.site-public .face#contacto .csv2-google-map {
  position: relative !important;
  overflow: hidden !important;
  background: #ebe7df !important;
}

body.site-public .face#contacto .csv2-google-map::before,
body.site-public .face#contacto .csv2-google-map::after,
body.site-public .face#contacto .csv2-google-map .csv2-map-grid,
body.site-public .face#contacto .csv2-google-map .csv2-pin {
  display: none !important;
  content: none !important;
}

body.site-public .face#contacto .csv2-google-map iframe {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  border: 0 !important;
  display: block !important;
  filter: grayscale(.18) saturate(.82) contrast(.98) brightness(1.04) !important;
}

body.site-public .face#contacto .csv2-map-link {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  background: transparent !important;
}

/* Permite interactuar con el mapa en desktop, pero mantiene clic de abrir mapa si se hace sobre el enlace */
@media (min-width: 1101px) {
  body.site-public .face#contacto .csv2-google-map iframe {
    pointer-events: auto !important;
  }

  body.site-public .face#contacto .csv2-map-link {
    pointer-events: none !important;
  }
}

/* En móvil, tocar el mapa abre Google Maps y evita scroll accidental dentro del iframe */
@media (max-width: 1100px) {
  body.site-public .face#contacto .csv2-google-map iframe {
    pointer-events: none !important;
  }

  body.site-public .face#contacto .csv2-map-link {
    pointer-events: auto !important;
  }
}


/* =========================================================
   CONTACTO - AJUSTE FINAL UN POCO MÁS GRANDE Y SIN HUECO ABAJO
   ========================================================= */
@media (min-width: 1180px) {
  body.site-public .face#contacto {
    padding-bottom: 10px !important;
  }

  body.site-public .face#contacto .contact-struct-v2 {
    min-height: auto !important;
    grid-template-rows: auto 78px !important;
    row-gap: 14px !important;
  }

  body.site-public .face#contacto .csv2-left {
    grid-template-rows: 356px 124px 140px !important;
    row-gap: 14px !important;
  }

  body.site-public .face#contacto .csv2-hero {
    height: 356px !important;
    min-height: 356px !important;
  }

  body.site-public .face#contacto .csv2-title {
    font-size: clamp(48px, 3.95vw, 60px) !important;
    max-width: 480px !important;
  }

  body.site-public .face#contacto .csv2-text {
    max-width: 445px !important;
  }

  body.site-public .face#contacto .csv2-photo-wrap {
    height: 356px !important;
    min-height: 356px !important;
  }

  body.site-public .face#contacto .csv2-photo {
    width: 332px !important;
    height: 348px !important;
    right: 4px !important;
  }

  body.site-public .face#contacto .csv2-contact-row {
    min-height: 124px !important;
  }

  body.site-public .face#contacto .csv2-location {
    min-height: 140px !important;
    grid-template-columns: 420px minmax(0, 1fr) !important;
    margin-top: 0 !important;
  }

  body.site-public .face#contacto .csv2-map {
    min-height: 140px !important;
  }

  body.site-public .face#contacto .csv2-form-card {
    min-height: 634px !important;
  }

  body.site-public .face#contacto .csv2-benefits {
    min-height: 78px !important;
    margin-top: 0 !important;
  }

  body.site-public .face#contacto .csv2-benefits article {
    min-height: 78px !important;
  }
}

@media (min-width: 1180px) and (max-width: 1500px) {
  body.site-public .face#contacto .csv2-left {
    grid-template-rows: 344px 122px 136px !important;
  }

  body.site-public .face#contacto .csv2-hero,
  body.site-public .face#contacto .csv2-photo-wrap {
    height: 344px !important;
    min-height: 344px !important;
  }

  body.site-public .face#contacto .csv2-photo {
    width: 312px !important;
    height: 336px !important;
  }

  body.site-public .face#contacto .csv2-location {
    min-height: 136px !important;
    grid-template-columns: 390px minmax(0, 1fr) !important;
  }

  body.site-public .face#contacto .csv2-map {
    min-height: 136px !important;
  }

  body.site-public .face#contacto .csv2-form-card {
    min-height: 618px !important;
  }
}

/* =========================================================
   GCH - MODO SCROLL CONSERVADOR
   Mantiene la estructura existente y solo agrega las secciones faltantes.
   ========================================================= */
body.site-public.gch-scroll-mode {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background: var(--paper) !important;
}

body.site-public.gch-scroll-mode .site-stage {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

body.site-public.gch-scroll-mode .face {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100svh !important;
  overflow: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
  transition: none !important;
  scroll-margin-top: 78px;
}

body.site-public.gch-scroll-mode .face-inner {
  height: auto !important;
  min-height: calc(100svh - 124px) !important;
}

body.site-public.gch-scroll-mode .screen-dots,
body.site-public.gch-scroll-mode .screen-arrows,
body.site-public.gch-scroll-mode .progress-line {
  display: none !important;
}

body.site-public.gch-scroll-mode .topbar {
  position: fixed !important;
}

body.site-public.gch-scroll-mode .gch-extra-section {
  padding-top: clamp(104px, 8vw, 128px) !important;
  padding-bottom: clamp(58px, 7vw, 92px) !important;
}

.gch-section-wrap {
  width: min(1280px, 100%);
  margin: 0 auto;
  align-content: center;
  gap: clamp(22px, 3vw, 34px);
}

.gch-centered-head {
  width: min(980px, 100%);
  margin: 0 auto;
  text-align: center;
}

.gch-centered-head .headline {
  margin-bottom: 10px;
}

.gch-gold-line {
  display: block;
  width: 76px;
  height: 2px;
  margin: 14px auto 18px;
  border-radius: 99px;
  background: linear-gradient(90deg, transparent, var(--gold), var(--gold-2), transparent);
}

.gch-gold-line.left {
  margin-left: 0;
  margin-right: 0;
}

.gch-slim-statement {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 56px;
  padding: 14px 22px;
  border-top: 1px solid rgba(180,119,41,.22);
  border-bottom: 1px solid rgba(180,119,41,.22);
  color: var(--gold-3);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-align: center;
}

.gch-site-map,
.gch-audience-grid,
.gch-diff-grid,
.gch-problem-grid,
.gch-services-grid {
  display: grid;
  gap: 18px;
}

.gch-site-map {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  align-items: stretch;
  position: relative;
}

.gch-site-map::before {
  content: "";
  position: absolute;
  left: 7%;
  right: 7%;
  top: 28px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(180,119,41,.35), transparent);
  z-index: 0;
}

.gch-site-map article,
.gch-audience-grid article,
.gch-diff-grid article,
.gch-problem-grid article,
.gch-services-grid article {
  position: relative;
  z-index: 1;
  border: 1px solid rgba(180,119,41,.16);
  background: rgba(255,255,255,.74);
  box-shadow: 0 18px 48px rgba(43,31,13,.07);
}

.gch-site-map article {
  min-height: 178px;
  padding: 20px 14px 18px;
  text-align: center;
  display: grid;
  align-content: start;
  justify-items: center;
  gap: 10px;
}

.gch-site-map i,
.gch-audience-grid i,
.gch-diff-grid i,
.gch-problem-grid i,
.gch-services-grid i {
  width: 58px;
  height: 58px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  margin: 0 auto 4px;
  border: 1px solid rgba(180,119,41,.36);
  color: var(--gold-3);
  background: linear-gradient(180deg, rgba(216,186,115,.20), rgba(255,255,255,.72));
  font-style: normal;
  font-family: var(--serif);
  font-weight: 900;
  font-size: 20px;
}

.gch-site-map h3,
.gch-audience-grid h3,
.gch-diff-grid h3,
.gch-problem-grid h3,
.gch-services-grid h3,
.gch-pmo-cols h3,
.gch-conversion-flow h3,
.gch-roadmap h3 {
  margin: 0;
  color: var(--ink);
  font-family: var(--serif);
  font-weight: 500;
  line-height: 1.08;
}

.gch-site-map p,
.gch-audience-grid p,
.gch-diff-grid p,
.gch-problem-grid p,
.gch-services-grid p,
.gch-pmo-cols p,
.gch-conversion-flow p,
.gch-roadmap p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}

.gch-audience-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.gch-audience-grid article {
  padding: 24px 18px 20px;
  text-align: center;
  min-height: 360px;
}

.gch-audience-grid h3 {
  min-height: 48px;
  text-transform: uppercase;
  font-size: 18px;
}

.gch-audience-grid p {
  min-height: 80px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(180,119,41,.16);
}

.gch-audience-grid ul,
.gch-pmo-cols ul,
.gch-roadmap ul {
  list-style: none;
  padding: 0;
  margin: 16px 0 0;
  text-align: left;
}

.gch-audience-grid li,
.gch-pmo-cols li,
.gch-roadmap li {
  position: relative;
  padding-left: 18px;
  margin: 9px 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.gch-audience-grid li::before,
.gch-pmo-cols li::before,
.gch-roadmap li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--gold-3);
  font-weight: 900;
}

.gch-funnel-layout {
  display: grid;
  grid-template-columns: minmax(280px, .42fr) minmax(0, .58fr);
  gap: clamp(28px, 4vw, 60px);
  align-items: center;
}

.gch-funnel-visual {
  display: grid;
  justify-items: center;
  gap: 0;
}

.gch-funnel-visual span {
  display: grid;
  place-items: center;
  height: 64px;
  color: #fff7e8;
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 900;
  background: linear-gradient(180deg, #c69a4b, #a66a22);
  box-shadow: 0 14px 30px rgba(128,76,21,.18);
  clip-path: polygon(10% 0, 90% 0, 100% 100%, 0 100%);
}

.gch-funnel-visual span:nth-child(1) { width: 82%; border-radius: 999px 999px 0 0; }
.gch-funnel-visual span:nth-child(2) { width: 74%; }
.gch-funnel-visual span:nth-child(3) { width: 64%; }
.gch-funnel-visual span:nth-child(4) { width: 54%; }
.gch-funnel-visual span:nth-child(5) { width: 43%; }
.gch-funnel-visual span:nth-child(6) { width: 30%; border-radius: 0 0 999px 999px; }

.gch-funnel-steps {
  display: grid;
  gap: 12px;
}

.gch-funnel-steps article {
  display: grid;
  grid-template-columns: 54px 140px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid rgba(180,119,41,.18);
}

.gch-funnel-steps b {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--gold-3);
  border: 1px solid rgba(180,119,41,.32);
  font-family: var(--serif);
}

.gch-funnel-steps h3 {
  margin: 0;
  font-family: var(--serif);
  font-size: 24px;
  text-transform: uppercase;
}

.gch-funnel-steps p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.gch-metric-strip,
.gch-stats-row,
.gch-project-strip,
.gch-logo-line {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border: 1px solid rgba(180,119,41,.16);
  background: rgba(255,255,255,.66);
  box-shadow: 0 16px 42px rgba(43,31,13,.06);
}

.gch-metric-strip article,
.gch-stats-row article,
.gch-project-strip article,
.gch-logo-line span {
  min-height: 82px;
  display: grid;
  place-content: center;
  gap: 4px;
  padding: 14px;
  text-align: center;
  border-right: 1px solid rgba(180,119,41,.14);
}

.gch-metric-strip article:last-child,
.gch-stats-row article:last-child,
.gch-project-strip article:last-child,
.gch-logo-line span:last-child { border-right: 0; }

.gch-metric-strip strong,
.gch-stats-row b,
.gch-project-strip strong,
.gch-logo-line span {
  color: var(--gold-3);
  font-weight: 950;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.gch-metric-strip span,
.gch-stats-row span,
.gch-project-strip span {
  color: var(--muted);
  font-size: 11px;
}

.gch-diff-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.gch-diff-grid article {
  min-height: 220px;
  padding: 26px 18px 22px;
  text-align: center;
}

.gch-diff-grid h3 { font-size: 20px; margin-bottom: 10px; }

.gch-logo-line {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  box-shadow: none;
  background: rgba(255,255,255,.44);
}

.gch-logo-line span {
  min-height: 70px;
  color: rgba(23,18,11,.52);
  font-size: 18px;
  font-family: var(--serif);
}

.gch-problem-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.gch-problem-grid article {
  min-height: 350px;
  padding: 20px 16px;
  text-align: center;
  display: grid;
  align-content: start;
  gap: 10px;
}

.gch-problem-grid em {
  color: var(--gold-3);
  font-family: var(--serif);
  font-style: normal;
  font-weight: 900;
}

.gch-problem-grid h3 {
  font-size: 15px;
  text-transform: uppercase;
}

.gch-problem-grid small {
  align-self: end;
  display: block;
  margin-top: 8px;
  padding-top: 12px;
  border-top: 1px solid rgba(180,119,41,.16);
  color: var(--muted);
  font-size: 10px;
  line-height: 1.5;
}

.gch-dark-grid {
  grid-template-columns: minmax(0, .62fr) minmax(280px, .38fr);
  align-items: center;
}

.gch-dark-cta .kicker { justify-content: flex-start; color: var(--gold-2); }
.gch-dark-cta .headline { color: #fff9ef; max-width: 780px; }
.gch-dark-cta .headline span { color: var(--gold-2); }
.gch-dark-cta .sub { color: rgba(255,249,238,.78); max-width: 580px; margin-left: 0; }

.gch-hero-person {
  min-height: 580px;
  align-self: stretch;
  background:
    radial-gradient(circle at 50% 44%, rgba(216,186,115,.25), transparent 38%),
    url('../img/custom/gilberth-new-cutout.png') center bottom / contain no-repeat;
  filter: drop-shadow(0 35px 60px rgba(0,0,0,.46));
}

.gch-dark-benefits {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  border: 1px solid rgba(216,186,115,.22);
  background: rgba(0,0,0,.22);
  border-radius: 18px;
  overflow: hidden;
}

.gch-dark-benefits article {
  min-height: 98px;
  padding: 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-right: 1px solid rgba(216,186,115,.14);
}
.gch-dark-benefits article:last-child { border-right: 0; }
.gch-dark-benefits i { color: var(--gold-2); font-style: normal; font-size: 22px; }
.gch-dark-benefits strong { color: #fff7e9; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }

.gch-services-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gch-services-grid article {
  min-height: 205px;
  padding: 26px 24px 22px;
  display: grid;
  grid-template-columns: 72px minmax(0,1fr) 26px;
  gap: 16px;
  align-items: start;
}

.gch-services-grid i {
  grid-row: span 3;
  margin: 0;
}

.gch-services-grid h3 { font-size: 24px; }
.gch-services-grid p { grid-column: 2 / 4; }
.gch-services-grid a { grid-column: 3; color: var(--gold-3); font-size: 24px; }

.gch-pmo-layout {
  grid-template-columns: minmax(0, .58fr) minmax(380px, .42fr);
  align-items: center;
  gap: clamp(30px, 5vw, 70px);
}

.gch-pmo-copy .kicker { color: var(--gold-3); }
.gch-pmo-copy .headline { max-width: 620px; }
.gch-pmo-copy .sub { margin-left: 0; max-width: 560px; }

.gch-pmo-cols {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 26px;
}

.gch-pmo-cols article {
  padding: 20px 16px;
  border: 1px solid rgba(180,119,41,.16);
  background: rgba(255,255,255,.72);
}

.gch-pmo-cols i {
  display: block;
  color: var(--gold-3);
  font-style: normal;
  font-size: 22px;
  margin-bottom: 10px;
}

.gch-pmo-cols h3 { font-size: 16px; text-transform: uppercase; }
.gch-pmo-commit {
  margin-top: 22px;
  padding: 18px 22px;
  color: #fff7e9;
  background: linear-gradient(135deg, #080706, #1a1309);
  border: 1px solid rgba(216,186,115,.26);
  display: grid;
  gap: 6px;
}
.gch-pmo-commit strong { color: var(--gold-2); font-size: 12px; letter-spacing: .12em; }
.gch-pmo-commit span { font-size: 12px; color: rgba(255,247,233,.78); }

.gch-dashboard-card {
  padding: 28px;
  border: 1px solid rgba(180,119,41,.18);
  background: #0d0d0c;
  color: #fff7e9;
  box-shadow: 0 28px 80px rgba(0,0,0,.26);
}

.dash-title {
  padding-bottom: 16px;
  color: var(--gold-2);
  font-family: var(--serif);
  font-size: 24px;
  border-bottom: 1px solid rgba(216,186,115,.18);
}

.dash-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}

.dash-grid span {
  display: block;
  padding: 18px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(216,186,115,.16);
  color: #fff;
  font-size: 28px;
  font-weight: 900;
}

.dash-grid small { display:block; margin-top:4px; color: rgba(255,247,233,.64); font-size: 10px; font-weight: 700; }

.dash-chart {
  height: 140px;
  display: flex;
  align-items: end;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(216,186,115,.15);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}
.dash-chart b { flex: 1; background: linear-gradient(180deg, var(--gold-2), var(--gold)); border-radius: 8px 8px 0 0; }
.dash-flow { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; margin: 18px 0; }
.dash-flow span { padding: 10px 7px; border: 1px solid rgba(216,186,115,.15); color: rgba(255,247,233,.72); font-size: 9px; text-align:center; }

.gch-results-layout {
  display: grid;
  grid-template-columns: minmax(0, .58fr) minmax(360px, .42fr);
  gap: 24px;
  align-items: stretch;
}

.gch-testimonials {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.gch-testimonials article {
  min-height: 260px;
  padding: 24px 20px;
  border: 1px solid rgba(180,119,41,.16);
  background: rgba(255,255,255,.76);
  display: grid;
  gap: 10px;
}
.gch-testimonials p { margin:0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.gch-testimonials strong { color: var(--ink); }
.gch-testimonials span { color: var(--muted); font-size: 11px; }
.gch-testimonials b { color: var(--gold-3); letter-spacing: .18em; }

.gch-impact-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  border: 1px solid rgba(180,119,41,.16);
  background: rgba(255,255,255,.76);
}
.gch-impact-metrics article {
  padding: 22px 12px;
  text-align: center;
  border-right: 1px solid rgba(180,119,41,.14);
}
.gch-impact-metrics article:last-child { border-right:0; }
.gch-impact-metrics i { display:block; color: var(--gold-3); font-style:normal; font-size:24px; }
.gch-impact-metrics b { display:block; margin: 10px 0; color: var(--gold-3); font-size:28px; font-family:var(--serif); }
.gch-impact-metrics span { color: var(--muted); font-size:11px; line-height:1.35; }
.gch-project-strip { grid-template-columns: repeat(5, minmax(0, 1fr)); }

.gch-conversion-flow {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 12px;
  position: relative;
}
.gch-conversion-flow::before {
  content:"";
  position:absolute;
  left:4%; right:4%; top:38px;
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(180,119,41,.45), transparent);
}
.gch-conversion-flow article {
  position:relative;
  padding: 18px 14px 20px;
  text-align:center;
  min-height: 255px;
  border:1px solid rgba(180,119,41,.16);
  background:rgba(255,255,255,.78);
  display:grid;
  align-content:start;
  gap:10px;
}
.gch-conversion-flow b {
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;margin:0 auto;
  background:var(--gold);color:#fff;font-family:var(--serif);
}
.gch-conversion-flow i { color: var(--gold-3); font-style: normal; font-size: 36px; }
.gch-conversion-flow h3 { font-size: 16px; }
.gch-conversion-flow p { font-size: 11px; }

.gch-roadmap {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  position: relative;
}
.gch-roadmap article {
  padding: 28px 22px;
  border: 1px solid rgba(180,119,41,.16);
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 48px rgba(43,31,13,.07);
}
.gch-roadmap b { display:block; color: var(--gold-3); font-size: 12px; text-transform:uppercase; letter-spacing:.12em; }
.gch-roadmap i { width:74px;height:74px;display:grid;place-items:center;border-radius:50%;margin:14px 0;color:#fff;background:linear-gradient(180deg,var(--gold),#9d621d);font-style:normal;font-size:26px; }
.gch-roadmap h3 { font-size: 30px; }
.gch-roadmap span { display:block; margin:8px 0 16px; color: var(--gold-3); font-weight:900; }

.gch-corporate-footer {
  background: radial-gradient(circle at 12% 10%, rgba(216,186,115,.18), transparent 28%), linear-gradient(135deg, #070706, #13100c);
  color: rgba(255,247,233,.78);
  padding: clamp(70px, 8vw, 100px) clamp(26px, 5vw, 78px) 0;
}
.gch-footer-grid {
  width: min(1280px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.35fr .8fr 1fr 1fr;
  gap: clamp(28px, 4vw, 70px);
}
.gch-corporate-footer h3,
.gch-corporate-footer h4 { color: #fff7e9; font-family: var(--serif); font-weight: 500; margin: 14px 0; }
.gch-corporate-footer p { font-size: 13px; line-height: 1.7; margin: 0 0 14px; }
.gch-corporate-footer strong { color: var(--gold-2); font-size: 11px; letter-spacing:.12em; }
.gch-corporate-footer a { display:block; margin: 10px 0; color: rgba(255,247,233,.76); font-size: 13px; }
.gch-corporate-footer a:hover { color: var(--gold-2); }
.gch-socials { display:flex; gap:10px; margin:18px 0; }
.gch-socials span { width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(216,186,115,.24);color:var(--gold-2); }
.gch-footer-badge { padding:16px; border:1px solid rgba(216,186,115,.22); color:#fff7e9; font-size:12px; }
.gch-footer-bottom {
  margin: 60px calc(-1 * clamp(26px, 5vw, 78px)) 0;
  padding: 20px clamp(26px, 5vw, 78px);
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  border-top: 1px solid rgba(216,186,115,.14);
  background: rgba(0,0,0,.20);
  color: rgba(255,247,233,.62);
  font-size: 11px;
}

@media (max-width: 1280px) {
  .gch-site-map,
  .gch-audience-grid,
  .gch-problem-grid,
  .gch-conversion-flow { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .gch-diff-grid,
  .gch-stats-row,
  .gch-impact-metrics,
  .gch-project-strip { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .gch-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gch-funnel-layout,
  .gch-pmo-layout,
  .gch-results-layout { grid-template-columns: 1fr; }
  .gch-hero-person { min-height: 420px; }
}

@media (max-width: 980px) {
  body.site-public.gch-scroll-mode .face { min-height: auto !important; }
  body.site-public.gch-scroll-mode .face-inner { min-height: 0 !important; }
  .gch-site-map,
  .gch-audience-grid,
  .gch-diff-grid,
  .gch-problem-grid,
  .gch-services-grid,
  .gch-pmo-cols,
  .gch-testimonials,
  .gch-conversion-flow,
  .gch-roadmap,
  .gch-footer-grid { grid-template-columns: 1fr 1fr; }
  .gch-metric-strip,
  .gch-stats-row,
  .gch-project-strip,
  .gch-logo-line,
  .gch-impact-metrics,
  .gch-dark-benefits,
  .gch-footer-bottom { grid-template-columns: 1fr 1fr; }
  .gch-funnel-steps article { grid-template-columns: 44px minmax(90px, .34fr) minmax(0,1fr); }
  .gch-dark-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .gch-site-map,
  .gch-audience-grid,
  .gch-diff-grid,
  .gch-problem-grid,
  .gch-services-grid,
  .gch-pmo-cols,
  .gch-testimonials,
  .gch-conversion-flow,
  .gch-roadmap,
  .gch-footer-grid,
  .gch-metric-strip,
  .gch-stats-row,
  .gch-project-strip,
  .gch-logo-line,
  .gch-impact-metrics,
  .gch-dark-benefits,
  .gch-footer-bottom { grid-template-columns: 1fr; }
  .gch-funnel-layout { grid-template-columns: 1fr; }
  .gch-funnel-steps article { grid-template-columns: 1fr; text-align: center; }
  .gch-services-grid article { grid-template-columns: 1fr; text-align: center; }
  .gch-services-grid i { margin: 0 auto; }
  .gch-services-grid p, .gch-services-grid a { grid-column: auto; }
  .gch-hero-person { min-height: 320px; }
  .gch-corporate-footer { padding-inline: 18px; }
  .gch-footer-bottom { margin-inline: -18px; padding-inline: 18px; }
}

/* =========================================================
   CORRECCION DEFINITIVA - WEB COMPLETA EN SCROLL VERTICAL
   - Conserva la estructura ya trabajada.
   - Deja visibles TODAS las secciones, no solo Inicio.
   - El menu superior queda fijo arriba.
   ========================================================= */
html,
body.site-public.gch-scroll-mode {
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
}

body.site-public.gch-scroll-mode {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  background: var(--paper) !important;
}

body.site-public.gch-scroll-mode .topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  overscroll-behavior: auto !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: clip !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  z-index: auto !important;
  scroll-margin-top: 92px !important;
  padding-top: clamp(96px, 8vw, 126px) !important;
  padding-bottom: clamp(58px, 7vw, 96px) !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face > .face-inner {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio > .face-inner {
  min-height: 100vh !important;
  min-height: 100svh !important;
}

body.site-public.gch-scroll-mode .gch-extra-section,
body.site-public.gch-scroll-mode .gch-corporate-footer {
  position: relative !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  z-index: auto !important;
}

body.site-public.gch-scroll-mode .screen-dots,
body.site-public.gch-scroll-mode .screen-arrows,
body.site-public.gch-scroll-mode .progress-line {
  display: none !important;
}

body.site-public.gch-scroll-mode .gch-corporate-footer {
  min-height: auto !important;
  margin: 0 !important;
}

body.site-public.gch-scroll-mode .modal.is-open {
  position: fixed !important;
  z-index: 10000 !important;
}

body.site-public.gch-scroll-mode.modal-open {
  overflow: hidden !important;
}

@media (max-width: 980px) {
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
    min-height: auto !important;
    padding-top: 94px !important;
    padding-bottom: 54px !important;
  }

  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio {
    min-height: 100svh !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}



/* =========================================================
   AJUSTES FINALES GCH - SECCIONES AGREGADAS SIN DOBLE SCROLL
   ========================================================= */
.gch-site-map-exact { grid-template-columns: .82fr repeat(6, 1fr); align-items: stretch; }
.gch-site-map-exact .gch-home-node { background: #11100d; color: #f9e7c4; }
.gch-site-map-exact .gch-home-node h3 { color: #f9e7c4; }
.gch-site-map-exact article ul { margin: 8px 0 0; padding: 10px 0 0; border-top: 1px solid rgba(180,119,41,.16); list-style: none; display: grid; gap: 7px; text-align: left; }
.gch-site-map-exact article li { position: relative; padding-left: 12px; color: var(--muted); font-size: 11px; line-height: 1.35; }
.gch-site-map-exact article li::before { content:""; position:absolute; left:0; top:.62em; width:4px; height:4px; border-radius:50%; background:var(--gold-3); }
.gch-funnel-layout { grid-template-columns: .72fr .95fr 1.45fr .72fr; }
.gch-funnel-side { align-self:center; min-height: 218px; padding: 28px 20px; display:grid; align-content:center; justify-items:center; gap:12px; text-align:center; border:1px solid rgba(180,119,41,.18); background:rgba(255,255,255,.70); box-shadow:0 20px 54px rgba(43,31,13,.07); }
.gch-funnel-side i { width:58px; height:58px; display:grid; place-items:center; border-radius:50%; border:1px solid rgba(180,119,41,.35); color:var(--gold-3); font-style:normal; font-size:23px; }
.gch-funnel-side h3 { margin:0; text-transform:uppercase; font-family:var(--serif); font-size:20px; color:var(--ink); }
.gch-funnel-side p { margin:0; font-size:12px; line-height:1.6; color:var(--muted); }
.gch-dark-mini { margin-top: 18px; color: rgba(255,247,233,.76); font-size: 11px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.gch-small-trust { margin-top: 12px; text-align:center; color: var(--muted); font-size: 12px; }
.sub-small { margin-top: -8px !important; font-size: 13px !important; }
.gch-product-premium-grid { display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap:18px; }
.gch-product-premium-grid article { min-height: 492px; padding: 18px 16px; display:grid; align-content:start; gap:12px; border:1px solid rgba(180,119,41,.16); background:rgba(255,255,255,.74); box-shadow:0 18px 48px rgba(43,31,13,.07); }
.gch-product-premium-grid article span { width:max-content; padding:5px 8px; border-radius:999px; background:rgba(180,119,41,.10); color:var(--gold-3); font-size:9px; font-weight:950; letter-spacing:.08em; text-transform:uppercase; }
.gch-product-premium-grid article i { height:112px; display:grid; place-items:center; border:1px solid rgba(180,119,41,.18); background:linear-gradient(135deg,#f8f4eb,#fff); color:var(--gold-3); font-style:normal; font-size:38px; font-family:var(--serif); }
.gch-product-premium-grid article h3 { margin:0; color:var(--ink); font-family:var(--serif); font-size:22px; line-height:1.08; }
.gch-product-premium-grid article p { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
.gch-product-premium-grid article ul { margin:0; padding:0; list-style:none; display:grid; gap:7px; }
.gch-product-premium-grid article li { position:relative; padding-left:14px; color:var(--ink-soft); font-size:11px; }
.gch-product-premium-grid article li::before { content:"✓"; position:absolute; left:0; color:var(--gold-3); }
.gch-product-premium-grid article strong { margin-top:auto; color:var(--gold-3); font-family:var(--serif); font-size:25px; }
.gch-product-premium-grid article a { height:42px; display:grid; place-items:center; background:#11100d; color:#f9e7c4; font-size:10px; font-weight:950; letter-spacing:.08em; text-transform:uppercase; }
.gch-product-detail-grid { grid-template-columns: 1.4fr .55fr; align-items:start; }
.gch-product-screen { display:grid; gap:20px; }
.gch-dashboard-mock { min-height: 410px; border-radius: 8px; padding: 28px; background:#11100d; color:#f9e7c4; box-shadow:0 28px 80px rgba(0,0,0,.18); display:grid; gap:22px; }
.gch-buy-box { padding:28px; display:grid; gap:14px; border:1px solid rgba(180,119,41,.22); background:rgba(255,255,255,.82); box-shadow:0 18px 48px rgba(43,31,13,.08); }
.gch-buy-box > span { color:var(--gold-3); font-size:10px; font-weight:950; text-transform:uppercase; letter-spacing:.12em; }
.gch-buy-box h3 { margin:0; color:var(--gold-3); font-family:var(--serif); font-size:52px; font-weight:500; }
.gch-buy-box p, .gch-buy-box small { margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.gch-buy-box ul { margin:0; padding:0; list-style:none; display:grid; gap:9px; }
.gch-buy-box li { position:relative; padding-left:16px; font-size:12px; color:var(--ink-soft); }
.gch-buy-box li::before { content:"✓"; position:absolute; left:0; color:var(--gold-3); }
.gch-benefits-list { grid-column:1 / -1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.gch-benefits-list article { padding:20px; border:1px solid rgba(180,119,41,.16); background:rgba(255,255,255,.72); display:grid; gap:8px; }
.gch-benefits-list strong { color:var(--gold-3); font-family:var(--serif); font-size:20px; }
.gch-benefits-list span { color:var(--muted); font-size:12px; line-height:1.6; }
.gch-payment-layout { display:grid; grid-template-columns:1.25fr .75fr; gap:24px; align-items:start; }
.gch-payment-form, .gch-order-summary { border:1px solid rgba(180,119,41,.16); background:rgba(255,255,255,.74); box-shadow:0 18px 48px rgba(43,31,13,.07); padding:28px; }
.gch-checkout-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:22px; }
.gch-checkout-steps span { padding:12px; border-bottom:2px solid rgba(180,119,41,.28); color:var(--gold-3); font-size:11px; font-weight:900; text-transform:uppercase; }
.gch-payment-form h3, .gch-order-summary h3 { margin:0 0 14px; color:var(--ink); font-family:var(--serif); font-size:24px; }
.gch-form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-bottom:24px; }
.gch-form-grid span, .gch-pay-methods span { min-height:46px; display:flex; align-items:center; padding:0 14px; border:1px solid rgba(180,119,41,.14); background:#fff; color:var(--muted); font-size:12px; }
.gch-pay-methods { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.gch-secure-note { margin-top:18px; padding:16px; text-align:center; border:1px solid rgba(180,119,41,.18); color:var(--gold-3); font-weight:900; font-size:12px; }
.gch-order-summary { display:grid; gap:16px; }
.gch-order-product { display:grid; grid-template-columns:54px 1fr auto; gap:12px; align-items:center; }
.gch-order-product i { height:54px; display:grid; place-items:center; background:#11100d; color:#f9e7c4; font-style:normal; }
.gch-order-product strong { display:block; color:var(--ink); }
.gch-order-product span, .gch-order-summary p { color:var(--muted); font-size:12px; }
.gch-order-summary p { display:flex; justify-content:space-between; margin:0; }
.gch-order-summary > strong { padding-top:14px; border-top:1px solid rgba(180,119,41,.18); color:var(--gold-3); font-family:var(--serif); font-size:32px; font-weight:500; }
.gch-payment-trust { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.gch-payment-trust span { padding:10px; text-align:center; font-size:10px; color:var(--muted); border:1px solid rgba(180,119,41,.14); }
.gch-about-deep-layout { grid-template-columns:.62fr 1fr .62fr; align-items:center; }
.gch-about-photo-card { min-height: 520px; display:grid; align-content:end; padding:0 22px 26px; background:linear-gradient(180deg,rgba(216,186,115,.24),#11100d); color:#f9e7c4; box-shadow:0 22px 58px rgba(43,31,13,.10); }
.gch-portrait-placeholder { height:360px; align-self:stretch; background:radial-gradient(circle at 50% 28%,rgba(255,255,255,.7),transparent 14%),linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.18)); border-radius: 999px 999px 0 0; }
.gch-about-photo-card h3 { margin:0; font-family:var(--serif); font-size:30px; font-weight:500; }
.gch-about-photo-card span { color:var(--gold-2); font-size:10px; font-weight:900; letter-spacing:.12em; }
.gch-about-copy { display:grid; gap:14px; }
.gch-about-copy p { margin:0; color:var(--ink-soft); font-size:15px; line-height:1.85; }
.gch-about-copy blockquote, .gch-center-quote { margin:10px 0 0; padding:26px; border:1px solid rgba(180,119,41,.22); color:var(--gold-3); background:rgba(255,255,255,.62); font-family:var(--serif); font-size:24px; line-height:1.25; text-align:center; }
.gch-authority-card { padding:26px; display:grid; gap:12px; border:1px solid rgba(180,119,41,.18); background:rgba(255,255,255,.74); box-shadow:0 18px 48px rgba(43,31,13,.07); }
.gch-authority-card h3 { margin:0 0 8px; color:var(--gold-3); font-family:var(--serif); font-size:22px; }
.gch-authority-card article { padding-bottom:12px; border-bottom:1px solid rgba(180,119,41,.12); }
.gch-authority-card article:last-child { border-bottom:0; padding-bottom:0; }
.gch-authority-card strong { display:block; color:var(--ink); font-size:12px; text-transform:uppercase; letter-spacing:.04em; }
.gch-authority-card span { color:var(--muted); font-size:12px; line-height:1.55; }
.gch-about-deep-layout .gch-metric-strip { grid-column:1 / -1; }
.gch-center-quote { width:min(760px,100%); margin:0 auto; }
.gch-conversion-flow article small { display:block; margin-top:auto; color:var(--gold-3); font-weight:900; font-size:10px; text-transform:uppercase; letter-spacing:.10em; }
body.site-public.gch-scroll-mode,
body.site-public.gch-scroll-mode * { scrollbar-width: auto; }
body.site-public.gch-scroll-mode .face::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage::-webkit-scrollbar { width:0 !important; height:0 !important; display:none !important; }
body.site-public.gch-scroll-mode .face,
body.site-public.gch-scroll-mode .site-stage { scrollbar-width: none !important; }
@media (max-width: 1280px){
  .gch-site-map-exact, .gch-product-premium-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .gch-funnel-layout, .gch-payment-layout, .gch-about-deep-layout, .gch-product-detail-grid { grid-template-columns:1fr; }
}
@media (max-width: 980px){
  .gch-product-premium-grid, .gch-benefits-list, .gch-pay-methods, .gch-payment-trust { grid-template-columns:1fr 1fr; }
}
@media (max-width: 620px){
  .gch-site-map-exact, .gch-product-premium-grid, .gch-benefits-list, .gch-form-grid, .gch-pay-methods, .gch-payment-trust { grid-template-columns:1fr; }
}

/* Preserva exactamente la estructura visual ya trabajada del inicio */
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio > .face-inner.two-col {
  height: calc(100vh - 92px) !important;
  min-height: 575px !important;
}


/* =========================================================
   AJUSTE FINAL SOLICITADO - INICIO REAL + SCROLL UNICO
   ========================================================= */

/* El inicio ejecutivo anterior conserva su estructura y copy sin usar el ID principal. */
/* =========================================================
   INICIO - FOOTER ADAPTABLE Y PORTADA BIEN ARMADA
   ========================================================= */

/* Desactiva el footer viejo de imagen si quedó en caché/clases antiguas */
body.site-public .face#inicio-ejecutivo .logo-footer {
  display: none !important;
}

/* Portada: la sección completa no debe cortarse */
body.site-public .face#inicio-ejecutivo {
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
  color: #fff8ee !important;
}

body.site-public .face#inicio-ejecutivo .face-inner.two-col {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: 100dvh !important;
  min-height: 680px !important;
  margin: 0 !important;
  padding: 104px 52px 112px !important;
  display: block !important;
  overflow: hidden !important;
}

/* Fondo real del skyline */
body.site-public .face#inicio-ejecutivo .city-card {
  position: absolute !important;
  z-index: 0 !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background:
    linear-gradient(90deg,
      rgba(4,4,5,.98) 0%,
      rgba(4,4,5,.92) 13%,
      rgba(4,4,5,.62) 31%,
      rgba(4,4,5,.14) 53%,
      rgba(4,4,5,0) 100%),
    linear-gradient(180deg,
      rgba(0,0,0,.16) 0%,
      rgba(0,0,0,.06) 42%,
      rgba(0,0,0,.66) 100%),
    url("../img/custom/hero-skyline-gca.png") center center / cover no-repeat !important;
  opacity: 1 !important;
}

body.site-public .face#inicio-ejecutivo .city-card::before,
body.site-public .face#inicio-ejecutivo .city-card::after,
body.site-public .face#inicio-ejecutivo .city-card .building,
body.site-public .face#inicio-ejecutivo .city-card .gold-road {
  display: none !important;
}

/* Arcos dorados del hero */
body.site-public .face#inicio-ejecutivo .city-card {
  --home-arc-x: 43%;
}

body.site-public .face#inicio-ejecutivo .city-card + * {
  position: relative !important;
}

body.site-public .face#inicio-ejecutivo .face-inner.two-col::after {
  content: "" !important;
  position: absolute !important;
  z-index: 1 !important;
  left: 39% !important;
  top: -35% !important;
  width: 560px !important;
  height: 560px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(198,139,42,.38) !important;
  box-shadow:
    0 0 0 14px transparent,
    0 0 0 25px rgba(198,139,42,.30),
    0 0 0 45px transparent,
    0 0 0 56px rgba(198,139,42,.25),
    0 0 0 77px transparent,
    0 0 0 88px rgba(198,139,42,.20),
    0 0 0 110px transparent,
    0 0 0 121px rgba(198,139,42,.16) !important;
  opacity: .58 !important;
  pointer-events: none !important;
}

/* Contenido hero */
body.site-public .face#inicio-ejecutivo .home-copy {
  position: relative !important;
  z-index: 5 !important;
  width: min(680px, 48vw) !important;
  max-width: 680px !important;
  height: calc(100dvh - 216px) !important;
  min-height: 440px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body.site-public .face#inicio-ejecutivo .kicker {
  justify-content: flex-start !important;
  gap: 14px !important;
  margin: 0 0 18px !important;
  color: #d8ba73 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
}

body.site-public .face#inicio-ejecutivo .kicker::before {
  width: 34px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#inicio-ejecutivo .kicker::after {
  display: none !important;
}

body.site-public .face#inicio-ejecutivo .home-headline {
  max-width: 670px !important;
  margin: 0 !important;
  color: #f8f3ea !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(54px, 5.25vw, 78px) !important;
  font-weight: 400 !important;
  line-height: .94 !important;
  letter-spacing: -.062em !important;
  text-shadow: 0 4px 18px rgba(0,0,0,.38) !important;
}

body.site-public .face#inicio-ejecutivo .home-headline span {
  color: #d8ba73 !important;
}

body.site-public .face#inicio-ejecutivo .sub {
  position: relative !important;
  max-width: 620px !important;
  margin: 14px 0 0 40px !important;
  color: rgba(255,248,235,.86) !important;
  font-size: clamp(16px, 1.18vw, 20px) !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
}

body.site-public .face#inicio-ejecutivo .sub::before {
  content: "" !important;
  position: absolute !important;
  left: -40px !important;
  top: 50% !important;
  width: 30px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

/* Botones */
body.site-public .face#inicio-ejecutivo .home-actions {
  margin-top: 34px !important;
  display: flex !important;
  gap: 18px !important;
  flex-wrap: nowrap !important;
}

body.site-public .face#inicio-ejecutivo .home-actions .btn {
  min-width: 210px !important;
  height: 57px !important;
  min-height: 57px !important;
  padding: 0 26px !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 11px !important;
  letter-spacing: .075em !important;
  font-weight: 950 !important;
}

body.site-public .face#inicio-ejecutivo .home-actions .btn-gold {
  background: linear-gradient(135deg, #f0d183, #c99034 64%, #a56d25) !important;
  color: #130f09 !important;
  border-color: transparent !important;
}

body.site-public .face#inicio-ejecutivo .home-actions .btn-ghost {
  color: #d8ba73 !important;
  border: 1px solid rgba(216,186,115,.45) !important;
  background: rgba(0,0,0,.12) !important;
}

/* Beneficios debajo */
body.site-public .face#inicio-ejecutivo .mini-proofs {
  position: relative !important;
  z-index: 5 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 46px 0 0 !important;
  max-width: 825px !important;
}

body.site-public .face#inicio-ejecutivo .mini-proofs article {
  min-height: 66px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  column-gap: 12px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-left: 1px solid rgba(216,186,115,.45) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(255,255,255,.86) !important;
}

body.site-public .face#inicio-ejecutivo .mini-proofs article:first-child {
  padding-left: 0 !important;
  border-left: 0 !important;
}

body.site-public .face#inicio-ejecutivo .mini-proofs i {
  grid-row: 1 / span 2 !important;
  width: 36px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
  color: #d8ba73 !important;
  font-style: normal !important;
  font-size: 31px !important;
  line-height: 1 !important;
  margin: 0 !important;
}

body.site-public .face#inicio-ejecutivo .mini-proofs strong {
  display: block !important;
  margin: 0 0 7px !important;
  color: #fff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

body.site-public .face#inicio-ejecutivo .mini-proofs span {
  display: block !important;
  color: rgba(255,255,255,.72) !important;
  font-size: 10.5px !important;
  line-height: 1.45 !important;
}

/* FOOTER INICIO: estructura real, adaptable a todo el contenedor */
body.site-public .face#inicio-ejecutivo .home-trust-footer {
  position: absolute !important;
  z-index: 20 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 92px !important;
  min-height: 92px !important;
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) !important;
  align-items: stretch !important;
  padding: 0 52px !important;
  border-top: 1px solid rgba(216,186,115,.14) !important;
  background: rgba(10,10,10,.91) !important;
  box-shadow: 0 -8px 24px rgba(0,0,0,.28) !important;
  overflow: hidden !important;
}

body.site-public .face#inicio-ejecutivo .home-trust-label {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  gap: 12px !important;
  min-width: 0 !important;
}

body.site-public .face#inicio-ejecutivo .home-trust-label span {
  color: #d8ba73 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .065em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body.site-public .face#inicio-ejecutivo .home-trust-label b {
  display: block !important;
  width: 42px !important;
  height: 1px !important;
  background: #c99b43 !important;
}

body.site-public .face#inicio-ejecutivo .home-trust-logos {
  min-width: 0 !important;
  height: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  align-items: center !important;
  gap: 0 !important;
}

body.site-public .face#inicio-ejecutivo .home-logo {
  height: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  text-align: center !important;
  color: rgba(255,255,255,.74) !important;
  filter: grayscale(1) brightness(1.45) contrast(.92) !important;
  opacity: .86 !important;
}

body.site-public .face#inicio-ejecutivo .home-logo strong {
  display: block !important;
  margin: 0 !important;
  color: rgba(255,255,255,.82) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 29px !important;
  line-height: .9 !important;
  font-weight: 900 !important;
  letter-spacing: -.045em !important;
  white-space: nowrap !important;
}

body.site-public .face#inicio-ejecutivo .home-logo small {
  display: block !important;
  margin-top: 5px !important;
  color: rgba(255,255,255,.70) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 7px !important;
  line-height: 1.05 !important;
  font-weight: 600 !important;
  letter-spacing: -.01em !important;
  white-space: normal !important;
}

body.site-public .face#inicio-ejecutivo .home-logo.sunarp strong {
  font-size: 34px !important;
  letter-spacing: -.06em !important;
  text-transform: lowercase !important;
}

body.site-public .face#inicio-ejecutivo .home-logo.reniec strong {
  font-size: 30px !important;
  letter-spacing: -.055em !important;
}

body.site-public .face#inicio-ejecutivo .home-logo.osiptel strong {
  font-size: 29px !important;
  letter-spacing: .02em !important;
}

body.site-public .face#inicio-ejecutivo .home-logo.bid strong {
  font-size: 34px !important;
  letter-spacing: -.06em !important;
}

body.site-public .face#inicio-ejecutivo .home-logo.banco strong {
  font-size: 24px !important;
  letter-spacing: -.025em !important;
}

/* Desktop bajo */
@media (min-width: 1101px) and (max-height: 850px) {
  body.site-public .face#inicio-ejecutivo .face-inner.two-col {
    min-height: 610px !important;
    padding-top: 86px !important;
    padding-bottom: 94px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-copy {
    height: calc(100dvh - 180px) !important;
    min-height: 390px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-headline {
    font-size: clamp(46px, 4.7vw, 66px) !important;
  }

  body.site-public .face#inicio-ejecutivo .home-actions {
    margin-top: 28px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-actions .btn {
    height: 49px !important;
    min-height: 49px !important;
  }

  body.site-public .face#inicio-ejecutivo .mini-proofs {
    margin-top: 34px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-trust-footer {
    height: 82px !important;
    min-height: 82px !important;
    padding-inline: 44px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-logo strong {
    font-size: 24px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-logo.sunarp strong,
  body.site-public .face#inicio-ejecutivo .home-logo.bid strong {
    font-size: 29px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-logo.banco strong {
    font-size: 20px !important;
  }
}

/* Tablet */
@media (max-width: 1100px) {
  body.site-public .face#inicio-ejecutivo {
    overflow-y: auto !important;
  }

  body.site-public .face#inicio-ejecutivo .face-inner.two-col {
    height: auto !important;
    min-height: 100dvh !important;
    padding: 108px 26px 132px !important;
  }

  body.site-public .face#inicio-ejecutivo .city-card {
    background-position: 58% center !important;
  }

  body.site-public .face#inicio-ejecutivo .home-copy {
    width: min(690px, 100%) !important;
    max-width: 690px !important;
    height: auto !important;
    min-height: calc(100dvh - 260px) !important;
  }

  body.site-public .face#inicio-ejecutivo .home-headline {
    font-size: clamp(44px, 9vw, 72px) !important;
  }

  body.site-public .face#inicio-ejecutivo .home-actions {
    flex-wrap: wrap !important;
  }

  body.site-public .face#inicio-ejecutivo .mini-proofs {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 0 !important;
  }

  body.site-public .face#inicio-ejecutivo .mini-proofs article:nth-child(odd) {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  body.site-public .face#inicio-ejecutivo .home-trust-footer {
    height: auto !important;
    min-height: 120px !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 16px 24px 18px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-trust-label {
    align-items: center !important;
    gap: 9px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-trust-logos {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-logo {
    min-height: 46px !important;
    padding: 0 8px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-logo strong {
    font-size: 20px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-logo.sunarp strong,
  body.site-public .face#inicio-ejecutivo .home-logo.bid strong {
    font-size: 24px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-logo.banco strong {
    font-size: 17px !important;
  }
}

/* Móvil */
@media (max-width: 760px) {
  body.site-public .face#inicio-ejecutivo .face-inner.two-col {
    padding: 96px 18px 190px !important;
  }

  body.site-public .face#inicio-ejecutivo .city-card {
    background-position: 65% center !important;
  }

  body.site-public .face#inicio-ejecutivo .city-card {
    background:
      linear-gradient(90deg, rgba(5,5,5,.97) 0%, rgba(5,5,5,.86) 42%, rgba(5,5,5,.28) 100%),
      linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.78)),
      url("../img/custom/hero-skyline-gca.png") 65% center / cover no-repeat !important;
  }

  body.site-public .face#inicio-ejecutivo .home-headline {
    font-size: clamp(40px, 13vw, 58px) !important;
  }

  body.site-public .face#inicio-ejecutivo .sub {
    margin-left: 28px !important;
    font-size: 15px !important;
  }

  body.site-public .face#inicio-ejecutivo .sub::before {
    left: -28px !important;
    width: 20px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-actions .btn {
    width: 100% !important;
    min-width: 0 !important;
  }

  body.site-public .face#inicio-ejecutivo .mini-proofs {
    grid-template-columns: 1fr !important;
    margin-top: 28px !important;
  }

  body.site-public .face#inicio-ejecutivo .mini-proofs article {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  body.site-public .face#inicio-ejecutivo .home-trust-footer {
    padding-inline: 16px !important;
  }

  body.site-public .face#inicio-ejecutivo .home-trust-logos {
    grid-template-columns: 1fr 1fr !important;
  }

  body.site-public .face#inicio-ejecutivo .home-logo.banco {
    grid-column: 1 / -1 !important;
  }
}


html,
body.site-public.gch-scroll-mode {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root],
body.site-public.gch-scroll-mode main.site-stage {
  position: relative !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  max-height: none !important;
  overflow-y: visible !important;
  overflow-x: clip !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  transition: none !important;
  scroll-margin-top: 78px !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face > .face-inner {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face.gch-extra-section,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio-ejecutivo,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#soluciones,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sector,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#recursos,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sobre,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#insights,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#contacto {
  padding-top: clamp(96px, 8vw, 126px) !important;
  padding-bottom: clamp(58px, 7vw, 96px) !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section {
  position: relative !important;
  height: 100vh !important;
  height: 100svh !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 url('../img/custom/inicio-real-blueprint.png') center center / cover no-repeat !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section::before,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section::after,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section .face-inner,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section .city-card,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section .home-copy,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section .home-trust-footer {
  display: none !important;
}
.gch-cover-accessible {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
body.site-public.gch-scroll-mode .topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
}
body.site-public.gch-scroll-mode .screen-dots,
body.site-public.gch-scroll-mode .screen-arrows,
body.site-public.gch-scroll-mode .progress-line {
  display: none !important;
}
body.site-public.gch-scroll-mode .face::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}
body.site-public.gch-scroll-mode .face,
body.site-public.gch-scroll-mode .site-stage {
  scrollbar-width: none !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio-ejecutivo > .face-inner.two-col {
  height: calc(100vh - 92px) !important;
  min-height: 575px !important;
}
@media (max-width: 900px) {
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section {
    background-position: center center !important;
    background-size: cover !important;
  }
}

/* =========================================================
   CORRECCIÓN FINAL: inicio estructurado + un solo scroll
   ========================================================= */
body.site-public.gch-scroll-mode,
body.site-public.gch-scroll-mode main.site-stage,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] {
  height: auto !important;
  max-height: none !important;
  overflow-y: visible !important;
  overflow-x: hidden !important;
}

html,
body.site-public.gch-scroll-mode {
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face > .face-inner,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .gch-section-wrap,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .centered,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .two-col,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .soluciones-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .contact-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .about-layout {
  max-height: none !important;
  overflow: visible !important;
  scrollbar-width: auto !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
  height: auto !important;
  min-height: 100svh !important;
}

@media (min-width: 1101px) and (max-height: 820px) {
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
    overflow: visible !important;
  }
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face-inner,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face > .face-inner {
    height: auto !important;
    min-height: 0 !important;
  }
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section {
  position: relative !important;
  display: block !important;
  height: auto !important;
  min-height: 100svh !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #020202 !important;
  color: #fff8ed !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section::before,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section::after {
  display: none !important;
}

body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section .gch-cover-structured,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section .gch-cover-skyline,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section .gch-cover-content {
  display: block !important;
}

.gch-cover-structured {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 63% 16%, rgba(216, 186, 115, .13), transparent 31%),
    linear-gradient(90deg, #020202 0%, #050505 38%, rgba(5,5,5,.80) 54%, rgba(5,5,5,.18) 100%);
}

.gch-cover-skyline {
  position: absolute;
  z-index: -2;
  inset: 0 0 0 auto;
  width: min(75vw, 1040px);
  height: 100%;
  background: url('../img/custom/cover-skyline-real-right.png') right center / cover no-repeat;
  opacity: .96;
}

.gch-cover-shade {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(2,2,2,1) 0%, rgba(2,2,2,.98) 30%, rgba(2,2,2,.72) 48%, rgba(2,2,2,.20) 76%, rgba(2,2,2,.02) 100%),
    radial-gradient(circle at 80% 90%, rgba(216,186,115,.16), transparent 34%);
}

.gch-cover-content {
  width: min(760px, 56vw);
  min-height: 100svh;
  padding: clamp(108px, 12vh, 150px) 0 64px clamp(44px, 5vw, 76px);
  display: flex !important;
  flex-direction: column;
  justify-content: center;
}

.gch-cover-brand {
  width: max-content;
  display: grid !important;
  grid-template-columns: auto;
  align-items: start;
  gap: 10px;
  margin-bottom: clamp(30px, 4vh, 54px);
  color: #d9bd72;
}

.gch-cover-mark {
  display: block;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(58px, 6.5vw, 86px);
  line-height: .72;
  letter-spacing: -.30em;
  color: #e3c87b;
  text-indent: -2px;
  text-shadow: 0 0 26px rgba(216,186,115,.16);
}

.gch-cover-tagline {
  display: block;
  margin-top: 2px;
  color: rgba(216,186,115,.86);
  font-size: clamp(10px, .9vw, 13px);
  line-height: 1;
  letter-spacing: .21em;
  font-weight: 800;
}

.gch-cover-rule,
.gch-cover-title-rule {
  display: block;
  width: 62px;
  height: 2px;
  background: linear-gradient(90deg, #d8ba73, rgba(216,186,115,.16));
}

.gch-cover-title {
  max-width: 700px;
  margin: 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 500;
  font-size: clamp(68px, 7.15vw, 122px);
  line-height: .96;
  letter-spacing: .115em;
  color: #e7c87b;
  text-transform: uppercase;
  text-shadow: 0 9px 34px rgba(0,0,0,.48);
}

.gch-cover-title span {
  display: block;
  background: linear-gradient(180deg, #f6e3a5 0%, #d5ac59 52%, #9e671f 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gch-cover-title-rule {
  margin: clamp(20px, 2.4vh, 30px) 0 16px;
}

.gch-cover-subtitle {
  margin: 0;
  color: #f8f4ef;
  font-size: clamp(25px, 2.35vw, 38px);
  line-height: 1.18;
  letter-spacing: .045em;
  font-weight: 400;
}

.gch-cover-pillars {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(108px, 1fr));
  gap: 0;
  width: min(650px, 100%);
  margin-top: clamp(56px, 8vh, 84px);
}

.gch-cover-pillars article {
  min-height: 112px;
  padding: 0 24px 0 0;
  border-right: 1px solid rgba(216,186,115,.38);
  color: rgba(255,248,235,.84);
}

.gch-cover-pillars article + article {
  padding-left: 30px;
}

.gch-cover-pillars article:last-child {
  border-right: 0;
}

.gch-cover-pillars i {
  display: block;
  margin-bottom: 14px;
  color: #d8ba73;
  font-size: 30px;
  line-height: 1;
  font-style: normal;
}

.gch-cover-pillars strong {
  display: block;
  margin-bottom: 13px;
  color: #d8ba73;
  font-size: 13px;
  letter-spacing: .10em;
  font-weight: 900;
}

.gch-cover-pillars span {
  display: block;
  color: rgba(255,248,235,.76);
  font-size: 12px;
  line-height: 1.35;
  letter-spacing: .02em;
}

@media (max-width: 1180px) {
  .gch-cover-content {
    width: min(720px, 62vw);
    padding-left: 34px;
  }
  .gch-cover-title {
    font-size: clamp(58px, 7vw, 88px);
    letter-spacing: .09em;
  }
  .gch-cover-pillars {
    width: min(620px, 100%);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 26px;
  }
  .gch-cover-pillars article:nth-child(2) {
    border-right: 0;
  }
}

@media (max-width: 820px) {
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section {
    overflow: hidden !important;
  }
  .gch-cover-structured {
    min-height: 100svh;
    background:
      linear-gradient(180deg, rgba(2,2,2,.70) 0%, #020202 50%, #020202 100%);
  }
  .gch-cover-skyline {
    inset: 0;
    width: 100%;
    height: 54svh;
    background-position: center top;
    opacity: .58;
  }
  .gch-cover-shade {
    background: linear-gradient(180deg, rgba(2,2,2,.42) 0%, rgba(2,2,2,.84) 36%, #020202 70%);
  }
  .gch-cover-content {
    width: 100%;
    min-height: 100svh;
    padding: 116px 18px 44px;
    justify-content: flex-end;
  }
  .gch-cover-brand {
    margin-bottom: 28px;
  }
  .gch-cover-title {
    max-width: 100%;
    font-size: clamp(42px, 14vw, 68px);
    line-height: .98;
    letter-spacing: .065em;
  }
  .gch-cover-subtitle {
    font-size: clamp(22px, 7vw, 34px);
  }
  .gch-cover-pillars {
    grid-template-columns: 1fr 1fr;
    margin-top: 38px;
    gap: 20px 0;
  }
  .gch-cover-pillars article,
  .gch-cover-pillars article + article {
    min-height: 0;
    padding: 0 12px 0 0;
  }
  .gch-cover-pillars article:nth-child(2n) {
    padding-left: 16px;
    border-right: 0;
  }
}

@media (max-width: 460px) {
  .gch-cover-pillars {
    grid-template-columns: 1fr;
    border-top: 1px solid rgba(216,186,115,.24);
  }
  .gch-cover-pillars article,
  .gch-cover-pillars article + article,
  .gch-cover-pillars article:nth-child(2n) {
    padding: 16px 0;
    border-right: 0;
    border-bottom: 1px solid rgba(216,186,115,.18);
  }
}


/* =========================================================
   ORDEN EXACTO DE MAQUETA + UN SOLO SCROLL FINAL
   ========================================================= */
html,
body.site-public.gch-scroll-mode {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
body.site-public.gch-scroll-mode,
body.site-public.gch-scroll-mode main.site-stage,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] {
  max-height: none !important;
  overflow-y: visible !important;
  overflow-x: hidden !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face > .face-inner,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .gch-section-wrap,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .centered,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .two-col,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .soluciones-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .recursos-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .sobre-gilberth-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .sector-publico-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .insights-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .contact-struct-v2 {
  max-height: none !important;
  overflow-y: visible !important;
  overflow-x: clip !important;
  scrollbar-width: auto !important;
}
body.site-public.gch-scroll-mode .face::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage::-webkit-scrollbar,
body.site-public.gch-scroll-mode .face-inner::-webkit-scrollbar,
body.site-public.gch-scroll-mode .gch-section-wrap::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100svh !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  visibility: visible !important;
  transform: none !important;
  transition: none !important;
  scroll-margin-top: 78px !important;
}
body.site-public.gch-scroll-mode .topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
}
body.site-public.gch-scroll-mode .screen-dots,
body.site-public.gch-scroll-mode .screen-arrows,
body.site-public.gch-scroll-mode .progress-line {
  display: none !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section {
  padding: 0 !important;
  overflow: hidden !important;
  background: #020202 !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section .gch-cover-structured {
  min-height: 100svh !important;
}
.gch-footer-page {
  padding: 0 !important;
  min-height: 100svh !important;
  background: #070706 !important;
  display: flex !important;
  align-items: stretch !important;
}
.gch-footer-page .gch-corporate-footer {
  width: 100% !important;
  min-height: 100svh !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding-top: clamp(100px, 10vw, 130px) !important;
}
@media (max-width: 900px) {
  .gch-footer-page .gch-corporate-footer {
    justify-content: flex-start !important;
  }
}




/* Override fuerte por ID: elimina scroll interno en cada sección */
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#mapa,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#publicos,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#embudo,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio-ejecutivo,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#confianza,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#problemas,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#soluciones,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#recursos,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sobre,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#avance,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#footer-corporativo-page,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#servicios,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#pmo,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sector,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#tienda-premium,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#dashboard-pmo-pro,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#pago-seguro,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sobre-detallado,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#resultados,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#insights,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#contacto,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#conversion,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#roadmap {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  overflow-y: visible !important;
  overflow-x: clip !important;
  scrollbar-width: none !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#mapa::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#publicos::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#embudo::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio-ejecutivo::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#confianza::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#problemas::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#soluciones::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#recursos::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sobre::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#avance::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#footer-corporativo-page::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#servicios::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#pmo::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sector::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#tienda-premium::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#dashboard-pmo-pro::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#pago-seguro::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sobre-detallado::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#resultados::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#insights::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#contacto::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#conversion::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#roadmap::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

/* =========================================================
   AJUSTE FINAL ENTREGABLE
   Footer al final + navegación por scroll general + responsive
   ========================================================= */
html {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
  scroll-padding-top: 92px !important;
}
body.site-public.gch-scroll-mode {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior-y: auto !important;
  background: #050505 !important;
}
body.site-public.gch-scroll-mode.modal-open {
  overflow: hidden !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root],
body.site-public.gch-scroll-mode main.site-stage {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  transform: none !important;
  overscroll-behavior: auto !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  max-height: none !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  transition: background .35s ease, color .35s ease !important;
  scroll-margin-top: 90px !important;
  scrollbar-width: none !important;
  touch-action: auto !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face > .face-inner::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .gch-section-wrap::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .centered::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .two-col::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face > .face-inner,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .gch-section-wrap,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .centered,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .two-col,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .soluciones-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .recursos-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .sector-publico-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .sobre-gilberth-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .insights-layout,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face .contact-struct-v2 {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
body.site-public.gch-scroll-mode .topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
}
body.site-public.gch-scroll-mode .screen-dots,
body.site-public.gch-scroll-mode .screen-arrows,
body.site-public.gch-scroll-mode .progress-line {
  display: none !important;
}
body.site-public.gch-scroll-mode .face#inicio.gch-cover-section {
  min-height: 100vh !important;
  min-height: 100svh !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #020202 !important;
}
body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured {
  min-height: 100vh !important;
  min-height: 100svh !important;
}
body.site-public.gch-scroll-mode .face#inicio-ejecutivo > .face-inner.two-col {
  height: auto !important;
  min-height: calc(100svh - 96px) !important;
  max-height: none !important;
}
body.site-public.gch-scroll-mode .gch-footer-page {
  margin-top: 0 !important;
  min-height: 100svh !important;
  padding: 0 !important;
  background: #070706 !important;
  display: flex !important;
  align-items: stretch !important;
}
body.site-public.gch-scroll-mode .gch-footer-page .gch-corporate-footer {
  width: 100% !important;
  min-height: 100svh !important;
  padding: clamp(118px, 12vw, 160px) clamp(22px, 7vw, 110px) clamp(42px, 6vw, 76px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

/* Navegabilidad visual y estados activos */
body.site-public.gch-scroll-mode .nav-menu a,
body.site-public.gch-scroll-mode .top-cta,
body.site-public.gch-scroll-mode .btn,
body.site-public.gch-scroll-mode [data-detail],
body.site-public.gch-scroll-mode .recurso-card,
body.site-public.gch-scroll-mode .gch-services-grid article,
body.site-public.gch-scroll-mode .gch-audience-grid article,
body.site-public.gch-scroll-mode .gch-problem-grid article {
  will-change: transform, opacity;
}
body.site-public.gch-scroll-mode .nav-menu a:focus-visible,
body.site-public.gch-scroll-mode .top-cta:focus-visible,
body.site-public.gch-scroll-mode .btn:focus-visible,
body.site-public.gch-scroll-mode button:focus-visible,
body.site-public.gch-scroll-mode input:focus-visible,
body.site-public.gch-scroll-mode select:focus-visible,
body.site-public.gch-scroll-mode textarea:focus-visible {
  outline: 2px solid var(--gold-2) !important;
  outline-offset: 4px !important;
}

@media (prefers-reduced-motion: no-preference) {
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face:not(#inicio) > .face-inner,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face:not(#inicio) .gch-section-wrap {
    opacity: .001;
    transform: translateY(34px);
    transition: opacity .75s ease, transform .75s cubic-bezier(.2,.8,.2,1);
  }
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face.is-inview > .face-inner,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face.is-inview .gch-section-wrap,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio > .face-inner {
    opacity: 1;
    transform: none;
  }
  body.site-public.gch-scroll-mode .gch-cover-content {
    animation: gchHeroIntro .9s cubic-bezier(.2,.8,.2,1) both;
  }
  @keyframes gchHeroIntro {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: none; }
  }
}

/* Responsive final para que las secciones crezcan sin barras internas */
@media (max-width: 1280px) {
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face:not(#inicio) {
    padding-left: clamp(20px, 4vw, 52px) !important;
    padding-right: clamp(20px, 4vw, 52px) !important;
  }
  body.site-public.gch-scroll-mode .gch-footer-grid {
    grid-template-columns: 1.2fr .8fr .9fr 1fr !important;
    gap: clamp(24px, 4vw, 56px) !important;
  }
}
@media (max-width: 1100px) {
  html { scroll-padding-top: 82px !important; }
  body.site-public.gch-scroll-mode,
  body.site-public.gch-scroll-mode.modal-open {
    position: static !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }
  body.site-public.gch-scroll-mode.modal-open { overflow: hidden !important; }
  body.site-public.gch-scroll-mode .site-stage[data-screen-root],
  body.site-public.gch-scroll-mode main.site-stage {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
    position: relative !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 104px clamp(18px, 4vw, 42px) 58px !important;
    scroll-margin-top: 82px !important;
  }
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section {
    min-height: 100svh !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  body.site-public.gch-scroll-mode .cards-6,
  body.site-public.gch-scroll-mode .gch-audience-grid,
  body.site-public.gch-scroll-mode .gch-problem-grid,
  body.site-public.gch-scroll-mode .gch-diff-grid,
  body.site-public.gch-scroll-mode .gch-services-grid,
  body.site-public.gch-scroll-mode .recursos-product-grid,
  body.site-public.gch-scroll-mode .sector-cards-maqueta,
  body.site-public.gch-scroll-mode .gch-roadmap,
  body.site-public.gch-scroll-mode .gch-conversion-flow,
  body.site-public.gch-scroll-mode .gch-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.site-public.gch-scroll-mode .gch-funnel-layout,
  body.site-public.gch-scroll-mode .gch-pmo-layout,
  body.site-public.gch-scroll-mode .sector-hero,
  body.site-public.gch-scroll-mode .contact-struct-v2,
  body.site-public.gch-scroll-mode .sobre-gilberth-layout {
    grid-template-columns: 1fr !important;
  }
  body.site-public.gch-scroll-mode .gch-footer-page .gch-corporate-footer {
    min-height: auto !important;
    justify-content: flex-start !important;
    padding-top: 108px !important;
  }
}
@media (max-width: 820px) {
  html { scroll-padding-top: 78px !important; }
  body.site-public.gch-scroll-mode .topbar {
    min-height: 72px !important;
  }
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face {
    padding: 96px 16px 48px !important;
  }
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#inicio.gch-cover-section {
    padding: 0 !important;
  }
  body.site-public.gch-scroll-mode .cards-6,
  body.site-public.gch-scroll-mode .gch-audience-grid,
  body.site-public.gch-scroll-mode .gch-problem-grid,
  body.site-public.gch-scroll-mode .gch-diff-grid,
  body.site-public.gch-scroll-mode .gch-services-grid,
  body.site-public.gch-scroll-mode .recursos-product-grid,
  body.site-public.gch-scroll-mode .sector-cards-maqueta,
  body.site-public.gch-scroll-mode .gch-roadmap,
  body.site-public.gch-scroll-mode .gch-conversion-flow,
  body.site-public.gch-scroll-mode .gch-footer-grid,
  body.site-public.gch-scroll-mode .gch-site-map,
  body.site-public.gch-scroll-mode .gch-metric-strip,
  body.site-public.gch-scroll-mode .recursos-footer,
  body.site-public.gch-scroll-mode .gch-stats-row,
  body.site-public.gch-scroll-mode .gch-logo-line {
    grid-template-columns: 1fr !important;
  }
  body.site-public.gch-scroll-mode .gch-cover-content {
    min-height: 100svh !important;
  }
  body.site-public.gch-scroll-mode .gch-footer-bottom {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    text-align: left !important;
  }
}
@media (max-width: 520px) {
  body.site-public.gch-scroll-mode .brand strong { max-width: 20ch !important; }
  body.site-public.gch-scroll-mode .brand small { letter-spacing: .12em !important; }
  body.site-public.gch-scroll-mode .headline { font-size: clamp(34px, 12vw, 50px) !important; }
  body.site-public.gch-scroll-mode .sub { font-size: 14px !important; line-height: 1.55 !important; }
  body.site-public.gch-scroll-mode .home-actions,
  body.site-public.gch-scroll-mode .sector-cta-box,
  body.site-public.gch-scroll-mode .contact-actions {
    width: 100% !important;
  }
  body.site-public.gch-scroll-mode .btn,
  body.site-public.gch-scroll-mode .sector-cta-btn,
  body.site-public.gch-scroll-mode .top-cta {
    width: 100% !important;
  }
}

/* =========================================================
   HOTFIX FINAL VISIBILIDAD + SCROLL ÚNICO
   La web queda como página larga: sin pantallas ocultas,
   sin scroll interno por sección y con footer al final real.
   ========================================================= */
html,
body,
body.site-public {
  min-height: 100%;
  height: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.site-public {
  background: var(--paper) !important;
}

.site-stage {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100vh !important;
  overflow: visible !important;
}

.site-stage > .face,
.face {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100vh !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: none !important;
  transition: background .35s ease, color .35s ease !important;
  scroll-margin-top: 86px;
}

.face-inner {
  height: auto !important;
  min-height: calc(100vh - 124px) !important;
}

.gch-footer-page {
  min-height: auto !important;
  padding: 0 !important;
  background: #060605 !important;
}

.gch-footer-page .gch-corporate-footer {
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
}

.screen-dots,
.screen-arrows,
.progress-line {
  display: none !important;
}

@media (max-width: 1100px) {
  .site-stage > .face,
  .face {
    min-height: auto !important;
    padding-top: 104px !important;
  }

  .face:first-child {
    min-height: 100svh !important;
  }

  .face-inner {
    min-height: 0 !important;
  }
}

@media (max-width: 760px) {
  .site-stage > .face,
  .face {
    padding-top: 94px !important;
  }
}

/* =========================================================
   FIX DEFINITIVO DEL USUARIO - PÁGINA LARGA REAL
   - Sin scroll interno por secciones.
   - Sin secciones ocultas/vacías por opacity/visibility.
   - Footer queda al final absoluto.
   - Respeta el orden de la maqueta.
   ========================================================= */
html {
  width: 100% !important;
  min-height: 100% !important;
  height: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
  scroll-padding-top: 92px !important;
}
html body.site-public,
html body.site-public.gch-scroll-mode,
html body.site-public:not(.modal-open),
html body.site-public.gch-scroll-mode:not(.modal-open) {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior-y: auto !important;
  touch-action: auto !important;
}

html body.site-public.gch-scroll-mode main.site-stage,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root],
html body.site-public main.site-stage,
html body.site-public main.site-stage[data-screen-root],
body.site-public.gch-scroll-mode .site-stage[data-screen-root],
body.site-public .site-stage[data-screen-root] {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  overscroll-behavior: auto !important;
  transform: none !important;
}

html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face,
html body.site-public main.site-stage[data-screen-root] > section.face,
html body.site-public main.site-stage[data-screen-root] > .face,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face,
body.site-public .site-stage[data-screen-root] > .face,
.site-stage[data-screen-root] > .face,
.site-stage > .face,
.face {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  z-index: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  scrollbar-gutter: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  clip: auto !important;
  clip-path: none !important;
  scroll-margin-top: 92px !important;
  transition: background-color .28s ease, color .28s ease, box-shadow .28s ease !important;
}

html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face:not(.is-active),
html body.site-public main.site-stage[data-screen-root] > .face:not(.is-active),
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face:not(.is-active),
body.site-public .site-stage[data-screen-root] > .face:not(.is-active) {
  z-index: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face > .face-inner,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face .face-inner,
html body.site-public main.site-stage[data-screen-root] > .face > .face-inner,
html body.site-public main.site-stage[data-screen-root] > .face .face-inner,
.face > .face-inner,
.face .face-inner,
.face .gch-section-wrap {
  position: relative !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  clip: auto !important;
  clip-path: none !important;
}

/* Quita barras internas incluso si algún parche anterior las fuerza */
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face::-webkit-scrollbar,
html body.site-public main.site-stage[data-screen-root] > .face::-webkit-scrollbar,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face::-webkit-scrollbar,
body.site-public .site-stage[data-screen-root] > .face::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
}
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face,
html body.site-public main.site-stage[data-screen-root] > .face {
  scrollbar-width: none !important;
}

/* Todo el contenido agregado queda visible; el efecto responsive no debe dejar secciones en blanco */
@media (prefers-reduced-motion: no-preference) {
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face > .face-inner,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face .gch-section-wrap,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face:not(#inicio) > .face-inner,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face:not(#inicio) .gch-section-wrap {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
  }
}

/* Navegación fija arriba sin tapar contenido */
html body.site-public.gch-scroll-mode .topbar,
html body.site-public .topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
}

.screen-dots,
.screen-arrows,
.progress-line,
body.site-public .screen-dots,
body.site-public .screen-arrows,
body.site-public .progress-line,
body.site-public.gch-scroll-mode .screen-dots,
body.site-public.gch-scroll-mode .screen-arrows,
body.site-public.gch-scroll-mode .progress-line {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Portada inicial: estructura real HTML con imagen solo como fondo derecho */
html body.site-public.gch-scroll-mode .face#inicio.gch-cover-section,
html body.site-public .face#inicio.gch-cover-section {
  min-height: 100svh !important;
  padding: 0 !important;
  background: #050505 !important;
  overflow: hidden !important;
}
html body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured,
html body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
  min-height: 100svh !important;
  height: auto !important;
  overflow: visible !important;
}

/* Footer al final real, no como pantalla flotante */
html body.site-public.gch-scroll-mode .gch-footer-page,
html body.site-public .gch-footer-page,
.site-stage[data-screen-root] > .gch-footer-page {
  min-height: auto !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #070706 !important;
  overflow: visible !important;
}
html body.site-public.gch-scroll-mode .gch-footer-page .gch-corporate-footer,
html body.site-public .gch-footer-page .gch-corporate-footer,
.gch-footer-page .gch-corporate-footer {
  position: relative !important;
  min-height: auto !important;
  height: auto !important;
  padding-top: clamp(70px, 8vw, 120px) !important;
  padding-bottom: 0 !important;
  overflow: visible !important;
}

/* Responsive limpio */
@media (max-width: 1100px) {
  html { scroll-padding-top: 82px !important; }
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face,
  html body.site-public main.site-stage[data-screen-root] > .face,
  .site-stage[data-screen-root] > .face {
    min-height: auto !important;
    padding-top: 96px !important;
    padding-bottom: 56px !important;
    overflow: visible !important;
  }
  html body.site-public.gch-scroll-mode .face#inicio.gch-cover-section,
  html body.site-public .face#inicio.gch-cover-section {
    min-height: 100svh !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  html body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured,
  html body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
    min-height: 100svh !important;
  }
  html body.site-public.gch-scroll-mode .nav-menu.is-open,
  html body.site-public .nav-menu.is-open {
    overflow-y: auto !important;
  }
}
@media (max-width: 720px) {
  html { scroll-padding-top: 76px !important; }
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > .face,
  html body.site-public main.site-stage[data-screen-root] > .face,
  .site-stage[data-screen-root] > .face {
    padding-top: 88px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  html body.site-public.gch-scroll-mode .face#inicio.gch-cover-section,
  html body.site-public .face#inicio.gch-cover-section {
    padding: 0 !important;
  }
}

/* =========================================================
   CORRECCIÓN FINAL REAL: INICIO LEGIBLE + CERO SCROLL INTERNO
   - Mantiene la portada como HTML estructurado, no como imagen plana.
   - El scroll queda únicamente en el navegador.
   - Ninguna sección/pantalla genera barra interior.
   ========================================================= */
html {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
  scroll-padding-top: 92px !important;
}
html body.site-public:not(.modal-open),
html body.site-public.gch-scroll-mode:not(.modal-open) {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior-y: auto !important;
  touch-action: auto !important;
}
html body.site-public main.site-stage[data-screen-root],
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root],
html body.site-public .site-stage[data-screen-root],
html body.site-public.gch-scroll-mode .site-stage[data-screen-root] {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  transform: none !important;
}
html body.site-public main.site-stage[data-screen-root] > section.face,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face,
html body.site-public .site-stage[data-screen-root] > section.face,
html body.site-public.gch-scroll-mode .site-stage[data-screen-root] > section.face {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  scrollbar-gutter: auto !important;
  scrollbar-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  clip: auto !important;
  clip-path: none !important;
  scroll-margin-top: 92px !important;
}
html body.site-public main.site-stage[data-screen-root] > section.face::-webkit-scrollbar,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face::-webkit-scrollbar,
html body.site-public .site-stage[data-screen-root] > section.face::-webkit-scrollbar,
html body.site-public.gch-scroll-mode .site-stage[data-screen-root] > section.face::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}
html body.site-public main.site-stage[data-screen-root] > section.face > .face-inner,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face > .face-inner,
html body.site-public main.site-stage[data-screen-root] > section.face .face-inner,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face .face-inner,
html body.site-public main.site-stage[data-screen-root] > section.face .gch-section-wrap,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face .gch-section-wrap {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
}

/* Portada real: fondo a la derecha, textos separados, sin superposición */
html body.site-public main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section {
  min-height: auto !important;
  padding: 0 !important;
  background: #050505 !important;
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-structured,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-structured {
  position: relative !important;
  display: block !important;
  min-height: max(100svh, 900px) !important;
  height: auto !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background:
    radial-gradient(circle at 66% 14%, rgba(216,186,115,.14), transparent 30%),
    linear-gradient(90deg, #020202 0%, #030303 37%, rgba(5,5,5,.80) 54%, rgba(5,5,5,.16) 100%) !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-skyline,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-skyline {
  display: block !important;
  position: absolute !important;
  z-index: -2 !important;
  inset: 0 0 0 auto !important;
  width: min(76vw, 1080px) !important;
  height: 100% !important;
  background: url('../img/custom/cover-skyline-real-right.png') right center / cover no-repeat !important;
  opacity: .98 !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-shade,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-shade {
  display: block !important;
  position: absolute !important;
  z-index: -1 !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(2,2,2,1) 0%, rgba(2,2,2,.98) 30%, rgba(2,2,2,.72) 48%, rgba(2,2,2,.22) 76%, rgba(2,2,2,.02) 100%),
    radial-gradient(circle at 80% 88%, rgba(216,186,115,.17), transparent 34%) !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-content,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-content {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  width: min(720px, 54vw) !important;
  min-height: max(100svh, 900px) !important;
  height: auto !important;
  padding: clamp(110px, 10vh, 138px) 0 clamp(42px, 6vh, 64px) clamp(42px, 5vw, 76px) !important;
  overflow: visible !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-brand,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-brand {
  display: grid !important;
  gap: 9px !important;
  margin: 0 0 clamp(26px, 3.3vh, 42px) !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-mark,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-mark {
  font-size: clamp(56px, 5.2vw, 78px) !important;
  line-height: .74 !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-tagline,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-tagline {
  font-size: clamp(9px, .76vw, 12px) !important;
  letter-spacing: .20em !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-title,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-title {
  max-width: 720px !important;
  margin: 0 !important;
  font-size: clamp(58px, 6.25vw, 100px) !important;
  line-height: .97 !important;
  letter-spacing: .105em !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-title span,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-title span {
  display: block !important;
  white-space: nowrap !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-title-rule,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-title-rule {
  margin: clamp(16px, 2vh, 24px) 0 clamp(12px, 1.6vh, 16px) !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-subtitle,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-subtitle {
  font-size: clamp(22px, 2vw, 32px) !important;
  line-height: 1.2 !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(96px, 1fr)) !important;
  width: min(640px, 100%) !important;
  margin-top: clamp(34px, 5.8vh, 58px) !important;
  gap: 0 !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars article,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars article {
  min-height: 92px !important;
  padding: 0 18px 0 0 !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars article + article,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars article + article {
  padding-left: 22px !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars i,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars i {
  margin-bottom: 10px !important;
  font-size: 26px !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars strong,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars strong {
  margin-bottom: 9px !important;
  font-size: 12px !important;
}
html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars span,
html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars span {
  font-size: 11px !important;
  line-height: 1.35 !important;
}

@media (min-width: 821px) and (max-height: 920px) {
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-structured,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-structured,
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-content {
    min-height: 900px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-content {
    padding-top: 106px !important;
    padding-bottom: 38px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-brand,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-brand {
    margin-bottom: 22px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-mark,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-mark {
    font-size: 58px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-title,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(58px, 5.75vw, 82px) !important;
    line-height: .98 !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-title-rule,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-title-rule {
    margin: 14px 0 10px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-subtitle,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(21px, 1.85vw, 28px) !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars {
    margin-top: 30px !important;
  }
}

@media (max-width: 1180px) and (min-width: 821px) {
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-content {
    width: min(650px, 60vw) !important;
    padding-left: 34px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-title,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(50px, 5.8vw, 72px) !important;
    letter-spacing: .085em !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    row-gap: 22px !important;
    width: min(560px, 100%) !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars article:nth-child(2n),
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars article:nth-child(2n) {
    border-right: 0 !important;
  }
}

@media (max-width: 820px) {
  html { scroll-padding-top: 76px !important; }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-structured,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-structured {
    min-height: auto !important;
    background:
      linear-gradient(180deg, rgba(0,0,0,.30) 0%, rgba(0,0,0,.88) 44%, #020202 100%),
      url('../img/custom/cover-skyline-real-right.png') center top / cover no-repeat,
      #020202 !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-skyline,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-skyline {
    display: none !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-content {
    width: 100% !important;
    min-height: auto !important;
    padding: 108px 18px 48px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-title,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(37px, 10.6vw, 58px) !important;
    letter-spacing: .065em !important;
    max-width: 100% !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-subtitle,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(20px, 5.8vw, 30px) !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    row-gap: 22px !important;
    margin-top: 34px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars article:nth-child(2n),
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars article:nth-child(2n) {
    border-right: 0 !important;
  }
}

@media (max-width: 520px) {
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-content {
    padding: 100px 16px 44px !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-title,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(31px, 10.2vw, 44px) !important;
    letter-spacing: .052em !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars {
    grid-template-columns: 1fr !important;
  }
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars article,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars article,
  html body.site-public section.face#inicio.gch-cover-section .gch-cover-pillars article + article,
  html body.site-public.gch-scroll-mode section.face#inicio.gch-cover-section .gch-cover-pillars article + article {
    min-height: 0 !important;
    padding: 0 0 16px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(216,186,115,.30) !important;
  }
}

/* =========================================================
   AJUSTE DEFINITIVO: ICONOS OFICIALES + UN SOLO SCROLL GLOBAL
   ========================================================= */
html {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scrollbar-gutter: stable !important;
}
body.site-public,
body.site-public.gch-scroll-mode,
html body.site-public:not(.modal-open),
html body.site-public.gch-scroll-mode:not(.modal-open) {
  position: static !important;
  width: 100% !important;
  min-height: 100% !important;
  height: auto !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  overscroll-behavior-y: auto !important;
}
body.site-public main.site-stage[data-screen-root],
body.site-public.gch-scroll-mode main.site-stage[data-screen-root],
body.site-public .site-stage[data-screen-root] {
  position: relative !important;
  display: block !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  contain: none !important;
}
body.site-public main.site-stage[data-screen-root] > section.face,
body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face,
body.site-public .site-stage[data-screen-root] > section.face {
  position: relative !important;
  display: block !important;
  min-height: 100svh !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  scrollbar-width: none !important;
  scrollbar-gutter: auto !important;
}
body.site-public main.site-stage[data-screen-root] > section.face::-webkit-scrollbar,
body.site-public main.site-stage[data-screen-root] > section.face *::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}
body.site-public main.site-stage[data-screen-root] > section.face *,
body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face * {
  scrollbar-width: none !important;
}
body.site-public main.site-stage[data-screen-root] .face-inner,
body.site-public main.site-stage[data-screen-root] .gch-section-wrap,
body.site-public main.site-stage[data-screen-root] .two-col,
body.site-public main.site-stage[data-screen-root] [class*="layout"],
body.site-public main.site-stage[data-screen-root] [class*="grid"],
body.site-public main.site-stage[data-screen-root] [class*="row"] {
  max-height: none !important;
  overflow-y: visible !important;
}
body.site-public main.site-stage[data-screen-root] #inicio.gch-cover-section,
body.site-public.gch-scroll-mode main.site-stage[data-screen-root] #inicio.gch-cover-section {
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
}
body.site-public main.site-stage[data-screen-root] #inicio.gch-cover-section .gch-cover-structured {
  overflow: hidden !important;
}
body.site-public .topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
}
body.site-public .screen-dots,
body.site-public .screen-arrows,
body.site-public .progress-line {
  display: none !important;
}

.brand-mark,
.gch-cover-mark {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--gold) !important;
}
.brand-mark img {
  width: 44px !important;
  height: 44px !important;
  object-fit: contain !important;
  display: block !important;
}
.gch-cover-mark img {
  width: clamp(78px, 6.5vw, 118px) !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
}
.cart-mini img {
  width: 18px !important;
  height: 18px !important;
  object-fit: contain !important;
  display: inline-block !important;
  vertical-align: middle !important;
}
.nav-menu a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
}
.nav-menu a .gch-nav-icon {
  width: 15px !important;
  height: 15px !important;
  object-fit: contain !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
}
.gch-svg-icon,
i.has-gch-svg-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-style: normal !important;
  line-height: 1 !important;
  color: var(--gold) !important;
}
i.has-gch-svg-icon .gch-icon-img,
.gch-svg-icon .gch-icon-img,
.gch-icon-img {
  width: 1.55em !important;
  height: 1.55em !important;
  max-width: 54px !important;
  max-height: 54px !important;
  object-fit: contain !important;
  display: block !important;
  filter: drop-shadow(0 9px 18px rgba(180,119,41,.13));
}
.gch-cover-pillars i.has-gch-svg-icon .gch-icon-img {
  width: 30px !important;
  height: 30px !important;
  max-width: 30px !important;
  max-height: 30px !important;
}
.gch-site-map i.has-gch-svg-icon .gch-icon-img,
.gch-audience-grid i.has-gch-svg-icon .gch-icon-img,
.gch-diff-grid i.has-gch-svg-icon .gch-icon-img,
.gch-problem-grid i.has-gch-svg-icon .gch-icon-img,
.gch-service-grid i.has-gch-svg-icon .gch-icon-img,
.gch-premium-products i.has-gch-svg-icon .gch-icon-img,
.cards-6 i.has-gch-svg-icon .gch-icon-img,
.info-card i.has-gch-svg-icon .gch-icon-img {
  width: 42px !important;
  height: 42px !important;
  max-width: 42px !important;
  max-height: 42px !important;
}
.gch-funnel-side i.has-gch-svg-icon .gch-icon-img,
.gch-dark-benefits i.has-gch-svg-icon .gch-icon-img,
.gch-impact-metrics i.has-gch-svg-icon .gch-icon-img,
.impact-item i.has-gch-svg-icon .gch-icon-img,
.gch-roadmap-grid i.has-gch-svg-icon .gch-icon-img,
.gch-conversion-flow i.has-gch-svg-icon .gch-icon-img {
  width: 36px !important;
  height: 36px !important;
  max-width: 36px !important;
  max-height: 36px !important;
}
.product-cover i.has-gch-svg-icon .gch-icon-img,
.gch-order-product i.has-gch-svg-icon .gch-icon-img {
  width: 44px !important;
  height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
}

@media (max-width: 980px) {
  body.site-public .nav-menu.is-open {
    overflow-y: auto !important;
    max-height: calc(100svh - 90px) !important;
    scrollbar-width: thin !important;
  }
  body.site-public .nav-menu.is-open::-webkit-scrollbar { width: 6px !important; display: block !important; }
  .brand-mark img { width: 38px !important; height: 38px !important; }
}


/* =========================================================
   PARCHE REAL DEFINITIVO - UNA SOLA BARRA DE DESPLAZAMIENTO
   Fecha: 2026-05-26
   Objetivo: eliminar cualquier scrollbar interno de las secciones.
   La unica barra permitida es la del documento principal.
   ========================================================= */
html {
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth !important;
}
body.site-public,
body.site-public.gch-scroll-mode {
  position: static !important;
  width: 100% !important;
  min-height: 100% !important;
  height: auto !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: clip !important;
  overscroll-behavior-y: auto !important;
}
@supports not (overflow: clip) {
  body.site-public,
  body.site-public.gch-scroll-mode { overflow-y: visible !important; }
}
body.site-public main.site-stage[data-screen-root],
html body.site-public main.site-stage[data-screen-root] {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  contain: none !important;
}
html body.site-public main.site-stage[data-screen-root] > section.face:is(#inicio,#mapa,#publicos,#embudo,#inicio-ejecutivo,#confianza,#problemas,#soluciones,#recursos,#sobre,#avance,#servicios,#pmo,#sector,#tienda-premium,#dashboard-pmo-pro,#pago-seguro,#sobre-detallado,#resultados,#insights,#contacto,#conversion,#roadmap,#footer-corporativo-page),
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face:is(#inicio,#mapa,#publicos,#embudo,#inicio-ejecutivo,#confianza,#problemas,#soluciones,#recursos,#sobre,#avance,#servicios,#pmo,#sector,#tienda-premium,#dashboard-pmo-pro,#pago-seguro,#sobre-detallado,#resultados,#insights,#contacto,#conversion,#roadmap,#footer-corporativo-page) {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  min-height: 100svh !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  scrollbar-width: none !important;
  scrollbar-gutter: auto !important;
  overscroll-behavior: auto !important;
}
html body.site-public main.site-stage[data-screen-root] > section.face:is(#inicio,#mapa,#publicos,#embudo,#inicio-ejecutivo,#confianza,#problemas,#soluciones,#recursos,#sobre,#avance,#servicios,#pmo,#sector,#tienda-premium,#dashboard-pmo-pro,#pago-seguro,#sobre-detallado,#resultados,#insights,#contacto,#conversion,#roadmap,#footer-corporativo-page)::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
html body.site-public main.site-stage[data-screen-root] > section.face:is(#inicio,#mapa,#publicos,#embudo,#inicio-ejecutivo,#confianza,#problemas,#soluciones,#recursos,#sobre,#avance,#servicios,#pmo,#sector,#tienda-premium,#dashboard-pmo-pro,#pago-seguro,#sobre-detallado,#resultados,#insights,#contacto,#conversion,#roadmap,#footer-corporativo-page) .face-inner,
html body.site-public main.site-stage[data-screen-root] > section.face:is(#inicio,#mapa,#publicos,#embudo,#inicio-ejecutivo,#confianza,#problemas,#soluciones,#recursos,#sobre,#avance,#servicios,#pmo,#sector,#tienda-premium,#dashboard-pmo-pro,#pago-seguro,#sobre-detallado,#resultados,#insights,#contacto,#conversion,#roadmap,#footer-corporativo-page) .gch-section-wrap {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow-y: visible !important;
  overscroll-behavior: auto !important;
  scrollbar-width: none !important;
}
html body.site-public main.site-stage[data-screen-root] > section.face:is(#inicio,#mapa,#publicos,#embudo,#inicio-ejecutivo,#confianza,#problemas,#soluciones,#recursos,#sobre,#avance,#servicios,#pmo,#sector,#tienda-premium,#dashboard-pmo-pro,#pago-seguro,#sobre-detallado,#resultados,#insights,#contacto,#conversion,#roadmap,#footer-corporativo-page) .face-inner::-webkit-scrollbar,
html body.site-public main.site-stage[data-screen-root] > section.face:is(#inicio,#mapa,#publicos,#embudo,#inicio-ejecutivo,#confianza,#problemas,#soluciones,#recursos,#sobre,#avance,#servicios,#pmo,#sector,#tienda-premium,#dashboard-pmo-pro,#pago-seguro,#sobre-detallado,#resultados,#insights,#contacto,#conversion,#roadmap,#footer-corporativo-page) .gch-section-wrap::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
body.site-public .nav-menu.is-open {
  overflow-y: visible !important;
  max-height: none !important;
  scrollbar-width: none !important;
}
body.site-public .nav-menu.is-open::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
body.site-public .screen-dots,
body.site-public .screen-arrows,
body.site-public .progress-line { display: none !important; }
body.site-public.modal-open { overflow: hidden !important; }

/* === AJUSTE FINAL: FOTO DE GILBERTH EN SECCIÓN SOBRE === */
body.site-public .face#sobre,
body.site-public .face#sobre .face-inner,
body.site-public .face#sobre .sobre-gilberth-layout,
body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final {
  overflow: visible !important;
}

@media (min-width: 1101px) {
  body.site-public .face#sobre .sobre-photo-zone {
    min-height: 610px !important;
    overflow: visible !important;
  }

  body.site-public .face#sobre .sobre-photo-orbit {
    top: 56px !important;
    left: 14px !important;
    width: 448px !important;
    height: 448px !important;
  }

  body.site-public .face#sobre .sobre-photo-person {
    left: 30px !important;
    bottom: 0 !important;
    width: 408px !important;
    height: 525px !important;
    background-position: center top !important;
    background-size: contain !important;
  }

  body.site-public .face#sobre .sobre-quote-card,
  body.site-public .face#sobre .sobre-quote {
    bottom: 18px !important;
  }
}

/* =========================================================
   AJUSTE FINAL: INICIO A MEDIDA, SIN LETRAS CORTADAS
   Mantiene la portada en HTML real y evita cortes por alto/ancho.
   ========================================================= */
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section,
body.site-public.gch-scroll-mode .face#inicio.gch-cover-section {
  min-height: max(820px, 100svh) !important;
  height: auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  overflow-x: clip !important;
  background: #020202 !important;
}

html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-structured,
body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured {
  min-height: max(820px, 100svh) !important;
  height: auto !important;
  width: 100% !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: stretch !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
  width: min(860px, 58vw) !important;
  max-width: calc(100vw - 72px) !important;
  min-height: max(820px, 100svh) !important;
  box-sizing: border-box !important;
  padding: clamp(108px, 10vh, 138px) clamp(26px, 3.5vw, 72px) clamp(54px, 7vh, 82px) clamp(44px, 5vw, 78px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  overflow: visible !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-brand {
  margin-bottom: clamp(26px, 3.6vh, 46px) !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
  width: max-content !important;
  max-width: 100% !important;
  padding-right: .22em !important;
  margin: 0 !important;
  overflow: visible !important;
  font-size: clamp(58px, 4.9vw, 96px) !important;
  line-height: 1.07 !important;
  letter-spacing: .095em !important;
  word-spacing: 0 !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title span {
  display: block !important;
  width: max-content !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: visible !important;
  padding: .015em .08em .02em 0 !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-subtitle {
  max-width: 100% !important;
  overflow: visible !important;
  font-size: clamp(24px, 2vw, 34px) !important;
  line-height: 1.24 !important;
  letter-spacing: .035em !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-pillars {
  width: min(690px, 100%) !important;
  max-width: 100% !important;
  margin-top: clamp(42px, 6vh, 68px) !important;
  overflow: visible !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-skyline {
  width: min(78vw, 1120px) !important;
  background-position: right center !important;
  background-size: cover !important;
}

@media (max-width: 1400px) and (min-width: 1101px) {
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    width: min(760px, 59vw) !important;
    padding-left: clamp(34px, 4vw, 58px) !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(54px, 4.75vw, 74px) !important;
    letter-spacing: .088em !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(22px, 2vw, 29px) !important;
  }
}

@media (max-width: 1100px) {
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured {
    min-height: max(760px, 100svh) !important;
    overflow: hidden !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    width: 100% !important;
    max-width: 100% !important;
    min-height: max(760px, 100svh) !important;
    padding: 106px clamp(22px, 6vw, 54px) 54px !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
    width: 100% !important;
    font-size: clamp(48px, 9.2vw, 76px) !important;
    line-height: 1.08 !important;
    letter-spacing: .075em !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-skyline {
    width: 100% !important;
    opacity: .58 !important;
    background-position: 62% center !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-shade {
    background: linear-gradient(90deg, rgba(2,2,2,1) 0%, rgba(2,2,2,.94) 48%, rgba(2,2,2,.52) 100%) !important;
  }
}

@media (max-width: 640px) {
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    min-height: auto !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    padding: 104px 22px 54px !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(38px, 11vw, 54px) !important;
    letter-spacing: .058em !important;
    line-height: 1.1 !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(20px, 6vw, 28px) !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-pillars {
    grid-template-columns: 1fr 1fr !important;
    row-gap: 22px !important;
    margin-top: 38px !important;
  }
}

/* =========================================================
   FIX DEFINITIVO: INICIO ENCUADRADO, SIN COMERSE LA WEB
   - La portada queda dentro de su propia sección.
   - El título no se corta ni invade el resto del sitio.
   - No agrega scroll interno: solo scroll general del navegador.
   ========================================================= */
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section,
body.site-public.gch-scroll-mode .face#inicio.gch-cover-section {
  position: relative !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  min-height: 100svh !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  overflow-x: clip !important;
  overflow-y: hidden !important;
  transform: none !important;
  contain: layout paint !important;
  background: #030303 !important;
}

html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-structured,
body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured {
  position: relative !important;
  z-index: 0 !important;
  width: 100% !important;
  min-height: 100svh !important;
  height: auto !important;
  display: grid !important;
  grid-template-columns: minmax(520px, 48vw) minmax(0, 1fr) !important;
  align-items: stretch !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  isolation: isolate !important;
  background: #030303 !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-skyline {
  position: absolute !important;
  z-index: 0 !important;
  inset: 0 0 0 36% !important;
  width: auto !important;
  height: 100% !important;
  background-position: right center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  opacity: .98 !important;
  pointer-events: none !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-shade {
  position: absolute !important;
  z-index: 1 !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(2,2,2,1) 0%, rgba(2,2,2,.98) 28%, rgba(2,2,2,.76) 47%, rgba(2,2,2,.22) 75%, rgba(2,2,2,.03) 100%),
    radial-gradient(circle at 82% 88%, rgba(216,186,115,.14), transparent 32%) !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
  position: relative !important;
  z-index: 2 !important;
  grid-column: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 100svh !important;
  height: auto !important;
  box-sizing: border-box !important;
  padding: clamp(104px, 10vh, 132px) clamp(22px, 3vw, 58px) clamp(42px, 6vh, 72px) clamp(38px, 4.8vw, 76px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  overflow: visible !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-brand {
  margin: 0 0 clamp(22px, 3vh, 38px) !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-mark img {
  width: clamp(70px, 5.7vw, 108px) !important;
  height: auto !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  font-size: clamp(50px, 4.9vw, 92px) !important;
  line-height: 1.08 !important;
  letter-spacing: .078em !important;
  word-spacing: 0 !important;
  text-wrap: nowrap !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title span {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: visible !important;
  padding: .01em .02em .03em 0 !important;
  box-sizing: border-box !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title-rule {
  margin: clamp(12px, 1.8vh, 20px) 0 clamp(10px, 1.5vh, 16px) !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-subtitle {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  overflow: visible !important;
  font-size: clamp(22px, 1.8vw, 31px) !important;
  line-height: 1.25 !important;
  letter-spacing: .025em !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-pillars {
  width: 100% !important;
  max-width: 650px !important;
  margin-top: clamp(30px, 5vh, 56px) !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  overflow: visible !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-pillars article {
  min-width: 0 !important;
  padding-right: 14px !important;
}

body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-pillars article + article {
  padding-left: 16px !important;
}

@media (max-width: 1400px) and (min-width: 1101px) {
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-structured,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured {
    grid-template-columns: minmax(500px, 50vw) minmax(0, 1fr) !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    padding-left: clamp(34px, 4vw, 60px) !important;
    padding-right: clamp(18px, 2.2vw, 38px) !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(48px, 4.55vw, 68px) !important;
    letter-spacing: .065em !important;
    line-height: 1.1 !important;
  }
}

@media (max-height: 760px) and (min-width: 821px) {
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    padding-top: 92px !important;
    padding-bottom: 34px !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-brand {
    margin-bottom: 18px !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(44px, 4.25vw, 66px) !important;
    line-height: 1.08 !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(20px, 1.65vw, 27px) !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-pillars {
    margin-top: 24px !important;
  }
}

@media (max-width: 1100px) {
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-structured,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured {
    min-height: 100svh !important;
    overflow: hidden !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured {
    display: block !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-skyline {
    inset: 0 !important;
    opacity: .52 !important;
    background-position: 64% center !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-shade {
    background: linear-gradient(90deg, rgba(2,2,2,1) 0%, rgba(2,2,2,.96) 56%, rgba(2,2,2,.55) 100%) !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    width: 100% !important;
    min-height: 100svh !important;
    padding: 104px clamp(22px, 6vw, 54px) 54px !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(42px, 8.2vw, 70px) !important;
    line-height: 1.11 !important;
    letter-spacing: .055em !important;
  }
}

@media (max-width: 640px) {
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-structured,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-structured,
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    min-height: auto !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-content {
    padding: 100px 22px 48px !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(34px, 10.2vw, 50px) !important;
    line-height: 1.13 !important;
    letter-spacing: .045em !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(18px, 5.6vw, 26px) !important;
  }
  body.site-public.gch-scroll-mode .face#inicio.gch-cover-section .gch-cover-pillars {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 0 !important;
  }
}


/* === ICONOS EXACTOS DE LA PLANTILLA GCH === */
.has-gch-svg-icon,
.gch-svg-icon,
.recurso-icon.has-gch-svg-icon,
.csv2-card-icon.has-gch-svg-icon,
.subscribe-icon.has-gch-svg-icon,
.has-gch-svg-icon-text {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  font-style: normal !important;
}

.has-gch-svg-icon .gch-template-icon,
.gch-svg-icon .gch-template-icon,
.recurso-icon.has-gch-svg-icon .gch-template-icon,
.csv2-card-icon.has-gch-svg-icon .gch-template-icon,
.subscribe-icon.has-gch-svg-icon .gch-template-icon,
.has-gch-svg-icon-text .gch-template-icon {
  display: block !important;
  object-fit: contain !important;
  filter: none !important;
}

.gch-cover-pillars .gch-template-icon {
  width: 38px !important;
  height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
}

.gch-site-map .gch-template-icon,
.gch-audience-grid .gch-template-icon,
.gch-diff-grid .gch-template-icon,
.gch-problem-grid .gch-template-icon,
.gch-service-grid .gch-template-icon,
.gch-premium-products .gch-template-icon,
.cards-6 .gch-template-icon,
.info-card .gch-template-icon,
.sector-cards-maqueta .gch-template-icon {
  width: 46px !important;
  height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
}

.gch-funnel-side .gch-template-icon,
.gch-dark-benefits .gch-template-icon,
.gch-impact-metrics .gch-template-icon,
.impact-item .gch-template-icon,
.gch-roadmap-grid .gch-template-icon,
.gch-conversion-flow .gch-template-icon,
.csv2-benefits .gch-template-icon,
.csv2-form-trust .gch-template-icon {
  width: 38px !important;
  height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
}

.product-cover .gch-template-icon,
.gch-order-product .gch-template-icon,
.recurso-icon.has-gch-svg-icon .gch-template-icon {
  width: 48px !important;
  height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
}

.soluciones-footer-real .gch-template-icon,
.recursos-footer .gch-template-icon,
.sobre-footer-trust .gch-template-icon,
.insights-benefits .gch-template-icon {
  width: 32px !important;
  height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
}

.btn .gch-template-icon,
.recurso-detail-btn .gch-template-icon,
.csv2-submit .gch-template-icon,
.sector-cta-btn .gch-template-icon,
.gch-footer-bottom .gch-template-icon,
.gch-footer-main .gch-template-icon {
  width: 18px !important;
  height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  flex: 0 0 18px !important;
}

.btn,
.recurso-detail-btn,
.csv2-submit,
.sector-cta-btn,
.gch-footer-bottom span,
.gch-footer-main p {
  align-items: center !important;
  gap: 9px !important;
}

.gch-footer-main p,
.gch-footer-bottom span,
.has-gch-svg-icon-text {
  display: inline-flex !important;
}

.gch-socials span.has-gch-svg-icon .gch-template-icon {
  width: 20px !important;
  height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
}

/* Iconos exactos recortados según plantilla */
.gch-exact-icon {
  object-fit: contain !important;
  image-rendering: auto !important;
}
.gch-cover-pillars .gch-exact-icon {
  width: 32px !important;
  height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
}
.gch-site-map i.has-gch-svg-icon .gch-exact-icon,
.gch-site-map .gch-exact-icon {
  width: 42px !important;
  height: 42px !important;
  max-width: 42px !important;
  max-height: 42px !important;
}

/* === AJUSTE SOLICITADO: FONDO REAL DE PORTADA + MAPA CON HOME CENTRADO === */
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-structured,
body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
  background: linear-gradient(90deg, rgba(0,0,0,.96) 0%, rgba(0,0,0,.90) 36%, rgba(0,0,0,.36) 58%, rgba(0,0,0,.08) 100%), url('../img/custom/hero-cover-reference.png') center center / cover no-repeat !important;
  min-height: 100vh !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-skyline {
  display: none !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-shade {
  background: linear-gradient(90deg, rgba(0,0,0,.14) 0%, rgba(0,0,0,.05) 100%) !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-content {
  max-width: 760px !important;
  width: min(760px, 54vw) !important;
  padding: clamp(32px, 4vw, 64px) clamp(24px, 4vw, 72px) !important;
  position: relative !important;
  z-index: 2 !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-title {
  max-width: 620px !important;
  font-size: clamp(58px, 6.2vw, 108px) !important;
  line-height: .92 !important;
  letter-spacing: -.02em !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
  font-size: clamp(28px, 2.2vw, 44px) !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
  max-width: 720px !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: 18px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars article {
  background: transparent !important;
  border: 0 !important;
  padding: 0 10px 0 0 !important;
  border-right: 1px solid rgba(212,168,88,.25) !important;
  border-radius: 0 !important;
  min-height: unset !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars article:last-child {
  border-right: 0 !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars strong {
  color: #d8a24a !important;
  letter-spacing: .08em !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars span {
  color: rgba(255,255,255,.88) !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-template-icon {
  width: 26px !important;
  height: 26px !important;
  margin-bottom: 10px !important;
}
@media (max-width: 1100px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
    background-position: 66% center !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    width: min(92vw, 720px) !important;
  }
}
@media (max-width: 900px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
    background: linear-gradient(180deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.72) 55%, rgba(0,0,0,.78) 100%), url('../img/custom/hero-cover-reference.png') 68% center / cover no-repeat !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    width: min(94vw, 700px) !important;
    max-width: 700px !important;
    padding: 26px 22px 34px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(46px, 11vw, 78px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 18px 14px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars article:nth-child(2) {
    border-right: 0 !important;
  }
}
@media (max-width: 520px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: 18px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars article {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(212,168,88,.25) !important;
    padding-bottom: 12px !important;
  }
}

/* mapa estratégico tipo maqueta */
.gch-map-layout-ref {
  position: relative !important;
  max-width: 1600px !important;
  margin: 0 auto !important;
  padding: 28px 18px 34px !important;
}
.gch-map-header-ref {
  position: relative;
  display: grid;
  grid-template-columns: 280px 1fr;
  align-items: start;
  gap: 24px;
  margin-bottom: 14px;
}
.gch-map-brand-ref {
  display: grid;
  align-content: start;
  justify-items: start;
  gap: 6px;
  padding-top: 6px;
}
.gch-map-brand-mark img {
  width: 70px;
  height: auto;
  display: block;
}
.gch-map-brand-ref strong {
  font-size: 24px;
  font-family: var(--font-serif);
  line-height: 1.05;
  color: #17120f;
}
.gch-map-brand-ref small {
  color: #b48843;
  letter-spacing: .14em;
  font-size: 11px;
  font-weight: 700;
}
.gch-map-brand-line {
  width: 100px;
  height: 3px;
  background: #c69a49;
  display: block;
  margin-top: 10px;
}
.gch-map-title-wrap { text-align: center; padding-top: 10px; }
.gch-map-title-wrap .headline { margin-bottom: 14px !important; }
.gch-map-corner-arcs {
  position: absolute;
  right: 0;
  top: 0;
  width: 220px;
  height: 120px;
  pointer-events: none;
  background:
    radial-gradient(circle at 100% 0, transparent 0 74px, rgba(197,153,71,.8) 74px 76px, transparent 76px 88px, rgba(197,153,71,.55) 88px 90px, transparent 90px 104px, rgba(197,153,71,.35) 104px 106px, transparent 106px 120px);
  opacity: .65;
}
.gch-home-center-node-wrap {
  display: flex;
  justify-content: center;
  margin: 8px 0 22px;
}
.gch-home-center-node {
  width: 235px;
  min-height: 96px;
  border-radius: 20px;
  background: #11110f;
  color: #fff5de;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 16px 26px rgba(0,0,0,.08);
  position: relative;
}
.gch-home-center-node::after {
  content: '';
  position: absolute;
  left: 50%; top: 100%;
  width: 2px; height: 24px;
  background: #c79d4f;
  transform: translateX(-50%);
}
.gch-home-center-node .gch-template-icon {
  width: 30px !important;
  height: 30px !important;
  margin-bottom: 8px;
}
.gch-home-center-node h3 { color: #fff6e7 !important; font-size: 16px !important; letter-spacing: .08em; margin: 0; }
.gch-map-connector-bar {
  position: relative;
  max-width: 1460px;
  margin: 0 auto 22px;
  height: 34px;
}
.gch-map-connector-bar .gch-connector-line {
  position: absolute;
  left: 4.5%;
  right: 4.5%;
  top: 0;
  height: 2px;
  background: #d3af67;
}
.gch-map-connector-bar .gch-drop {
  position: absolute;
  top: 0;
  width: 2px;
  height: 28px;
  background: #d3af67;
}
.gch-map-connector-bar .d1 { left: 8.5%; }
.gch-map-connector-bar .d2 { left: 24.2%; }
.gch-map-connector-bar .d3 { left: 39.9%; }
.gch-map-connector-bar .d4 { left: 55.6%; }
.gch-map-connector-bar .d5 { left: 71.3%; }
.gch-map-connector-bar .d6 { left: 87%; }
.gch-site-map-ref-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0,1fr));
  gap: 18px;
  align-items: start;
}
.gch-site-map-ref-grid > article {
  background: #fff;
  border: 1px solid rgba(198,154,73,.55);
  border-radius: 14px;
  padding: 20px 18px 16px;
  min-height: 328px;
  box-shadow: 0 10px 24px rgba(0,0,0,.03);
  position: relative;
}
.gch-site-map-ref-grid > article::before {
  content: '';
  position: absolute;
  left: 50%;
  top: -28px;
  width: 2px;
  height: 28px;
  transform: translateX(-50%);
  background: #d3af67;
}
.gch-site-map-ref-grid > article i {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 14px;
}
.gch-site-map-ref-grid > article .gch-template-icon {
  width: 36px !important;
  height: 36px !important;
}
.gch-site-map-ref-grid > article h3 {
  font-family: var(--font-serif);
  font-size: 22px;
  line-height: 1.05;
  text-align: center;
  color: #18130f;
  margin: 0 0 18px;
}
.gch-site-map-ref-grid > article ul {
  list-style: none;
  margin: 0;
  padding: 14px 0 0;
  border-top: 1px solid rgba(198,154,73,.25);
  display: grid;
  gap: 12px;
}
.gch-site-map-ref-grid > article li {
  position: relative;
  padding-left: 16px;
  color: #37322d;
  font-size: 14px;
  line-height: 1.35;
}
.gch-site-map-ref-grid > article li::before {
  content: '';
  position: absolute;
  left: 0;
  top: .55em;
  width: 6px;
  height: 6px;
  background: #d3af67;
  border-radius: 50%;
}
.gch-map-bottom-note {
  text-align: center;
  margin-top: 26px;
  color: #b79a61;
  letter-spacing: .16em;
  font-size: 14px;
  font-weight: 500;
}
.gch-map-bottom-line {
  width: 260px;
  height: 2px;
  margin: 12px auto 0;
  background: linear-gradient(90deg, transparent 0, #d1ab61 18%, #d1ab61 82%, transparent 100%);
  position: relative;
}
.gch-map-bottom-line::after {
  content: '';
  position: absolute;
  left: 50%; top: -4px;
  width: 10px; height: 10px;
  background: #d1ab61;
  transform: translateX(-50%) rotate(45deg);
}
@media (max-width: 1400px) {
  .gch-map-header-ref { grid-template-columns: 220px 1fr; }
  .gch-site-map-ref-grid > article h3 { font-size: 18px; }
  .gch-site-map-ref-grid > article { min-height: 320px; }
}
@media (max-width: 1180px) {
  .gch-site-map-ref-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .gch-map-connector-bar { display: none; }
  .gch-site-map-ref-grid > article::before { display: none; }
}
@media (max-width: 820px) {
  .gch-map-header-ref { grid-template-columns: 1fr; }
  .gch-map-brand-ref { justify-items: center; text-align: center; }
  .gch-map-brand-line { margin-inline: auto; }
  .gch-map-corner-arcs { width: 140px; height: 80px; }
  .gch-site-map-ref-grid { grid-template-columns: 1fr; }
  .gch-home-center-node { width: min(86vw, 235px); }
  .gch-site-map-ref-grid > article { min-height: unset; }
  .gch-map-bottom-note { font-size: 12px; letter-spacing: .08em; }
}

/* === CORRECCIÓN FINAL: usar exactamente la imagen entregada en la primera cara === */
body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
  position: relative !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-bg-exact {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-shade,
body.site-public .face#inicio.gch-cover-section .gch-cover-content {
  position: relative !important;
  z-index: 1 !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-shade {
  background: linear-gradient(90deg, rgba(0,0,0,.76) 0%, rgba(0,0,0,.68) 34%, rgba(0,0,0,.22) 57%, rgba(0,0,0,.05) 100%) !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
  background: none !important;
}

/* === mapa exacto según referencia visual === */
.gch-map-image-only-wrap {
  max-width: 1680px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
.gch-map-image-only {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
@media (max-width: 900px) {
  .gch-map-image-only-wrap { padding: 0 10px !important; }
  .gch-map-image-only { border-radius: 14px !important; }
}

/* === MAPA ESTRATÉGICO EN HTML/CSS, NO IMAGEN PEGADA === */
body.site-public .face#mapa.gch-map-section {
  background: #faf9f5 !important;
  color: #17130f !important;
  overflow: visible !important;
}
body.site-public .face#mapa.gch-map-section .gch-map-html-exact {
  position: relative !important;
  max-width: 1680px !important;
  min-height: 860px !important;
  margin: 0 auto !important;
  padding: 18px 36px 0 !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.94) 78%, rgba(245,244,240,.96) 100%) !important;
}
body.site-public .face#mapa .gch-map-bg-arcs,
body.site-public .face#mapa .gch-map-bg-bridge {
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
body.site-public .face#mapa .gch-map-bg-arcs {
  right: -24px !important;
  top: -36px !important;
  width: 355px !important;
  height: 210px !important;
  opacity: .68 !important;
  background:
    radial-gradient(circle at 105% -6%, transparent 0 108px, rgba(181,131,52,.72) 109px 111px, transparent 112px 126px, rgba(181,131,52,.55) 127px 129px, transparent 130px 144px, rgba(181,131,52,.42) 145px 147px, transparent 148px 162px, rgba(181,131,52,.32) 163px 165px, transparent 166px 180px, rgba(181,131,52,.22) 181px 183px, transparent 184px) !important;
}
body.site-public .face#mapa .gch-map-bg-bridge {
  left: -12px !important;
  bottom: 0 !important;
  width: 470px !important;
  height: 142px !important;
  opacity: .22 !important;
  background:
    linear-gradient(14deg, rgba(70,70,70,.24) 0 11%, transparent 11.4% 100%),
    repeating-linear-gradient(74deg, transparent 0 27px, rgba(55,55,55,.24) 28px 31px, transparent 32px 58px),
    linear-gradient(180deg, transparent 0 18%, rgba(80,80,80,.20) 18.5% 100%) !important;
  clip-path: polygon(0 16%, 100% 0, 78% 100%, 0 100%) !important;
}
body.site-public .face#mapa .gch-map-html-header {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-columns: 290px 1fr 290px !important;
  align-items: start !important;
  min-height: 148px !important;
}
body.site-public .face#mapa .gch-map-html-brand {
  display: grid !important;
  justify-items: start !important;
  align-content: start !important;
  gap: 7px !important;
  padding-left: 6px !important;
}
body.site-public .face#mapa .gch-map-html-brand img {
  width: 74px !important;
  height: auto !important;
  display: block !important;
  margin-left: 84px !important;
}
body.site-public .face#mapa .gch-map-html-brand strong {
  font-family: var(--font-serif, Georgia, serif) !important;
  font-size: 17px !important;
  line-height: 1.05 !important;
  letter-spacing: .03em !important;
  color: #15110e !important;
  white-space: nowrap !important;
}
body.site-public .face#mapa .gch-map-html-brand small {
  display: block !important;
  color: #b18c46 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
  margin-left: 58px !important;
}
body.site-public .face#mapa .gch-map-html-brand span {
  display: block !important;
  width: 84px !important;
  height: 3px !important;
  background: #b9954f !important;
  margin: 8px 0 0 92px !important;
}
body.site-public .face#mapa .gch-map-html-title {
  text-align: center !important;
  padding-top: 30px !important;
}
body.site-public .face#mapa .gch-map-html-title h2 {
  margin: 0 !important;
  font-family: var(--font-serif, Georgia, serif) !important;
  font-size: clamp(56px, 4.8vw, 82px) !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  letter-spacing: -.025em !important;
  color: #16120f !important;
}
body.site-public .face#mapa .gch-map-html-title i {
  display: block !important;
  width: 72px !important;
  height: 3px !important;
  background: #c79a48 !important;
  margin: 22px auto 0 !important;
}
body.site-public .face#mapa .gch-map-home-row {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  justify-content: center !important;
  margin-top: -18px !important;
}
body.site-public .face#mapa .gch-map-home-card {
  width: 230px !important;
  height: 94px !important;
  border-radius: 17px !important;
  background: #121211 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  box-shadow: 0 14px 20px rgba(0,0,0,.08) !important;
  position: relative !important;
}
body.site-public .face#mapa .gch-map-home-card::after {
  content: '' !important;
  position: absolute !important;
  left: 50% !important;
  top: 100% !important;
  transform: translateX(-50%) !important;
  width: 2px !important;
  height: 55px !important;
  background: #caa157 !important;
}
body.site-public .face#mapa .gch-map-home-card .gch-template-icon {
  width: 31px !important;
  height: 31px !important;
  filter: brightness(.98) saturate(.95) !important;
}
body.site-public .face#mapa .gch-map-home-card h3 {
  margin: 0 !important;
  font-family: var(--font-sans, Arial, sans-serif) !important;
  color: #fff4dc !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: .10em !important;
}
body.site-public .face#mapa .gch-map-tree {
  position: relative !important;
  z-index: 1 !important;
  height: 85px !important;
  margin: 0 auto !important;
  max-width: 1450px !important;
}
body.site-public .face#mapa .gch-map-tree .bar {
  position: absolute !important;
  left: 7.3% !important;
  right: 7.3% !important;
  top: 54px !important;
  height: 2px !important;
  background: #cca158 !important;
}
body.site-public .face#mapa .gch-map-tree .drop {
  position: absolute !important;
  top: 54px !important;
  width: 2px !important;
  height: 50px !important;
  background: #cca158 !important;
}
body.site-public .face#mapa .gch-map-tree .drop::after {
  content: '' !important;
  position: absolute !important;
  left: 50% !important;
  bottom: -1px !important;
  transform: translateX(-50%) rotate(45deg) !important;
  width: 7px !important;
  height: 7px !important;
  border-right: 2px solid #cca158 !important;
  border-bottom: 2px solid #cca158 !important;
  background: transparent !important;
}
body.site-public .face#mapa .gch-map-tree .d1 { left: 7.3% !important; }
body.site-public .face#mapa .gch-map-tree .d2 { left: 24.35% !important; }
body.site-public .face#mapa .gch-map-tree .d3 { left: 41.45% !important; }
body.site-public .face#mapa .gch-map-tree .d4 { left: 58.55% !important; }
body.site-public .face#mapa .gch-map-tree .d5 { left: 75.65% !important; }
body.site-public .face#mapa .gch-map-tree .d6 { left: 92.7% !important; }
body.site-public .face#mapa .gch-map-html-cards {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 53px !important;
  padding: 0 12px !important;
  margin-top: 10px !important;
}
body.site-public .face#mapa .gch-map-html-cards > article {
  position: relative !important;
  min-height: 292px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
body.site-public .face#mapa .gch-map-card-head {
  height: 124px !important;
  border: 1px solid rgba(190,151,79,.55) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.58) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 12px 10px !important;
}
body.site-public .face#mapa .gch-map-card-head i {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 0 11px !important;
}
body.site-public .face#mapa .gch-map-card-head .gch-template-icon {
  width: 32px !important;
  height: 32px !important;
}
body.site-public .face#mapa .gch-map-card-head h3 {
  margin: 0 !important;
  font-family: var(--font-serif, Georgia, serif) !important;
  font-size: clamp(16px, 1.18vw, 22px) !important;
  line-height: 1.04 !important;
  font-weight: 600 !important;
  letter-spacing: .02em !important;
  text-align: center !important;
  color: #15110f !important;
}
body.site-public .face#mapa .gch-map-html-cards ul {
  list-style: none !important;
  margin: 18px 0 0 !important;
  padding: 0 0 0 30px !important;
  display: grid !important;
  gap: 13px !important;
  border-left: 2px solid #c79c53 !important;
  position: relative !important;
}
body.site-public .face#mapa .gch-map-html-cards ul::before,
body.site-public .face#mapa .gch-map-html-cards ul::after {
  content: '' !important;
  position: absolute !important;
  left: -5px !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #c79c53 !important;
}
body.site-public .face#mapa .gch-map-html-cards ul::before { top: 0 !important; }
body.site-public .face#mapa .gch-map-html-cards ul::after { bottom: 0 !important; }
body.site-public .face#mapa .gch-map-html-cards li {
  position: relative !important;
  font-size: clamp(12px, .93vw, 16px) !important;
  color: #302b27 !important;
  line-height: 1.24 !important;
  letter-spacing: .01em !important;
}
body.site-public .face#mapa .gch-map-html-cards li::before {
  content: '' !important;
  position: absolute !important;
  left: -35px !important;
  top: .42em !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #c79c53 !important;
}
body.site-public .face#mapa .gch-map-html-footer {
  position: relative !important;
  z-index: 2 !important;
  margin: 54px -36px 0 !important;
  min-height: 154px !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, rgba(245,244,241,.90), rgba(245,244,241,.98)) !important;
}
body.site-public .face#mapa .gch-map-html-footer p {
  margin: 0 !important;
  color: #b29355 !important;
  font-size: clamp(13px, 1vw, 17px) !important;
  letter-spacing: .18em !important;
  text-align: center !important;
  font-weight: 500 !important;
}
body.site-public .face#mapa .gch-map-html-footer span {
  display: block !important;
  width: 280px !important;
  height: 2px !important;
  margin-top: -36px !important;
  background: linear-gradient(90deg, transparent, #c69b4f 20%, #c69b4f 80%, transparent) !important;
  position: relative !important;
}
body.site-public .face#mapa .gch-map-html-footer span::after {
  content: '' !important;
  position: absolute !important;
  left: 50% !important;
  top: -4px !important;
  width: 10px !important;
  height: 10px !important;
  background: #c69b4f !important;
  transform: translateX(-50%) rotate(45deg) !important;
}
@media (max-width: 1320px) {
  body.site-public .face#mapa .gch-map-html-header { grid-template-columns: 245px 1fr 120px !important; }
  body.site-public .face#mapa .gch-map-html-cards { gap: 24px !important; }
  body.site-public .face#mapa .gch-map-html-title h2 { font-size: clamp(44px, 5.2vw, 68px) !important; }
}
@media (max-width: 1080px) {
  body.site-public .face#mapa.gch-map-section .gch-map-html-exact { min-height: auto !important; padding: 28px 20px !important; }
  body.site-public .face#mapa .gch-map-html-header { grid-template-columns: 1fr !important; gap: 10px !important; }
  body.site-public .face#mapa .gch-map-html-brand { justify-items: center !important; text-align: center !important; }
  body.site-public .face#mapa .gch-map-html-brand img,
  body.site-public .face#mapa .gch-map-html-brand small,
  body.site-public .face#mapa .gch-map-html-brand span { margin-left: 0 !important; }
  body.site-public .face#mapa .gch-map-home-row { margin-top: 6px !important; }
  body.site-public .face#mapa .gch-map-tree { display: none !important; }
  body.site-public .face#mapa .gch-map-html-cards { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 22px !important; margin-top: 28px !important; }
  body.site-public .face#mapa .gch-map-html-footer { margin: 36px -20px -28px !important; }
}
@media (max-width: 640px) {
  body.site-public .face#mapa .gch-map-html-title h2 { font-size: clamp(34px, 10vw, 48px) !important; }
  body.site-public .face#mapa .gch-map-html-cards { grid-template-columns: 1fr !important; }
  body.site-public .face#mapa .gch-map-html-cards > article { min-height: auto !important; }
  body.site-public .face#mapa .gch-map-card-head { height: auto !important; min-height: 112px !important; }
}

/* === AJUSTE MAPA: sin logo, con barra horizontal y flechas hacia abajo === */
body.site-public .face#mapa .gch-map-html-header {
  grid-template-columns: 1fr !important;
  min-height: 118px !important;
  align-items: start !important;
}
body.site-public .face#mapa .gch-map-html-brand {
  display: none !important;
}
body.site-public .face#mapa .gch-map-html-title {
  grid-column: 1 / -1 !important;
  text-align: center !important;
  padding-top: 18px !important;
}
body.site-public .face#mapa .gch-map-html-title h2 {
  font-size: clamp(58px, 5vw, 84px) !important;
}
body.site-public .face#mapa .gch-map-home-row {
  margin-top: -12px !important;
  margin-bottom: 0 !important;
}
body.site-public .face#mapa .gch-map-home-card::after {
  display: none !important;
}
body.site-public .face#mapa .gch-map-tree {
  position: relative !important;
  z-index: 3 !important;
  max-width: 1480px !important;
  height: 86px !important;
  margin: 0 auto 2px !important;
  overflow: visible !important;
}
body.site-public .face#mapa .gch-map-tree .root {
  display: block !important;
  position: absolute !important;
  left: 50% !important;
  top: 0 !important;
  width: 2px !important;
  height: 32px !important;
  background: #c89d50 !important;
  transform: translateX(-50%) !important;
}
body.site-public .face#mapa .gch-map-tree .bar {
  display: block !important;
  position: absolute !important;
  left: 7.2% !important;
  right: 7.2% !important;
  top: 32px !important;
  height: 2px !important;
  background: #c89d50 !important;
  box-shadow: 0 0 0 1px rgba(200,157,80,.08) !important;
}
body.site-public .face#mapa .gch-map-tree .drop {
  display: block !important;
  position: absolute !important;
  top: 32px !important;
  width: 2px !important;
  height: 54px !important;
  background: #c89d50 !important;
  transform: translateX(-50%) !important;
}
body.site-public .face#mapa .gch-map-tree .drop::after {
  content: '' !important;
  position: absolute !important;
  left: 50% !important;
  bottom: -7px !important;
  transform: translateX(-50%) !important;
  width: 0 !important;
  height: 0 !important;
  border-left: 6px solid transparent !important;
  border-right: 6px solid transparent !important;
  border-top: 8px solid #c89d50 !important;
  border-bottom: 0 !important;
  background: transparent !important;
}
body.site-public .face#mapa .gch-map-tree .d1 { left: 8.333% !important; }
body.site-public .face#mapa .gch-map-tree .d2 { left: 25% !important; }
body.site-public .face#mapa .gch-map-tree .d3 { left: 41.667% !important; }
body.site-public .face#mapa .gch-map-tree .d4 { left: 58.333% !important; }
body.site-public .face#mapa .gch-map-tree .d5 { left: 75% !important; }
body.site-public .face#mapa .gch-map-tree .d6 { left: 91.667% !important; }
body.site-public .face#mapa .gch-map-html-cards {
  margin-top: 4px !important;
  padding: 0 6px !important;
  gap: 50px !important;
}
body.site-public .face#mapa .gch-map-card-head {
  position: relative !important;
  overflow: visible !important;
}
body.site-public .face#mapa .gch-map-card-head::before {
  content: '' !important;
  position: absolute !important;
  left: 50% !important;
  top: -11px !important;
  transform: translateX(-50%) !important;
  width: 8px !important;
  height: 8px !important;
  background: #c89d50 !important;
  border-radius: 50% !important;
}
@media (max-width: 1320px) {
  body.site-public .face#mapa .gch-map-html-header { grid-template-columns: 1fr !important; }
  body.site-public .face#mapa .gch-map-html-cards { gap: 24px !important; }
}
@media (max-width: 1080px) {
  body.site-public .face#mapa .gch-map-tree {
    display: none !important;
  }
  body.site-public .face#mapa .gch-map-html-cards {
    margin-top: 28px !important;
  }
  body.site-public .face#mapa .gch-map-card-head::before {
    display: none !important;
  }
}

/* === AJUSTE FINO MAPA: detalles de líneas, flechas y sin estrellita === */
body.site-public .face#mapa.gch-map-section .gch-map-html-exact {
  min-height: 840px !important;
  padding-top: 10px !important;
}
body.site-public .face#mapa .gch-map-html-title i {
  width: 76px !important;
  height: 2px !important;
  margin-top: 20px !important;
  background: #c49a4d !important;
}
body.site-public .face#mapa .gch-map-home-row {
  margin-top: -10px !important;
}
body.site-public .face#mapa .gch-map-tree {
  max-width: 1455px !important;
  height: 74px !important;
  margin: 0 auto 0 !important;
}
body.site-public .face#mapa .gch-map-tree .root {
  top: -1px !important;
  height: 33px !important;
  background: #c79b4d !important;
}
body.site-public .face#mapa .gch-map-tree .bar {
  top: 32px !important;
  left: 8.333% !important;
  right: 8.333% !important;
  height: 2px !important;
  background: #c79b4d !important;
}
body.site-public .face#mapa .gch-map-tree .drop {
  top: 32px !important;
  height: 42px !important;
  background: #c79b4d !important;
}
body.site-public .face#mapa .gch-map-tree .drop::after {
  bottom: -7px !important;
  border-left-width: 5px !important;
  border-right-width: 5px !important;
  border-top: 8px solid #c79b4d !important;
}
body.site-public .face#mapa .gch-map-html-cards {
  margin-top: 0 !important;
  gap: 50px !important;
}
body.site-public .face#mapa .gch-map-card-head::before {
  display: none !important;
  content: none !important;
}
body.site-public .face#mapa .gch-map-card-head {
  height: 126px !important;
  border-color: rgba(198,154,73,.62) !important;
  background: rgba(255,255,255,.50) !important;
}
body.site-public .face#mapa .gch-map-html-cards ul {
  margin-top: 22px !important;
  padding-left: 28px !important;
  border-left: 2px solid #c79b4d !important;
}
body.site-public .face#mapa .gch-map-html-cards li::before,
body.site-public .face#mapa .gch-map-html-cards ul::before,
body.site-public .face#mapa .gch-map-html-cards ul::after {
  background: #c79b4d !important;
}
body.site-public .face#mapa .gch-map-html-footer {
  margin-top: 46px !important;
  min-height: 150px !important;
}
body.site-public .face#mapa .gch-map-html-footer span {
  margin-top: -34px !important;
  width: 275px !important;
}
body.site-public .face#mapa .gch-map-html-footer span::after {
  display: none !important;
  content: none !important;
}

/* === AJUSTE FINAL SOLICITADO: primera cara sin GC/tagline y texto más grande === */
body.site-public .face#inicio.gch-cover-section .gch-cover-brand {
  display: none !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-content {
  width: min(850px, 58vw) !important;
  max-width: 850px !important;
  padding-top: clamp(70px, 8vh, 120px) !important;
  padding-left: clamp(34px, 5vw, 86px) !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-title {
  font-size: clamp(78px, 7.2vw, 132px) !important;
  line-height: .88 !important;
  letter-spacing: -.025em !important;
  max-width: 780px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-title-rule {
  margin-top: 24px !important;
  width: 82px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
  font-size: clamp(36px, 2.65vw, 54px) !important;
  line-height: 1.05 !important;
  margin-top: 18px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
  margin-top: clamp(46px, 5vh, 78px) !important;
  max-width: 790px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars strong {
  font-size: 15px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars span {
  font-size: 13px !important;
}
@media (max-width: 1100px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    width: min(92vw, 820px) !important;
    padding-top: 80px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(62px, 12vw, 112px) !important;
  }
}
@media (max-width: 620px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    padding-top: 52px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(48px, 14vw, 76px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(20px, 6vw, 30px) !important;
  }
}

/* === AJUSTE FINAL MAPA: líneas alineadas, flechas correctas, sin estrellita === */
body.site-public .face#mapa.gch-map-section .gch-map-html-exact {
  padding: 18px 40px 0 !important;
  min-height: 870px !important;
  overflow: hidden !important;
}
body.site-public .face#mapa .gch-map-html-header {
  min-height: 124px !important;
}
body.site-public .face#mapa .gch-map-html-title {
  padding-top: 20px !important;
}
body.site-public .face#mapa .gch-map-html-title h2 {
  font-size: clamp(62px, 5.4vw, 88px) !important;
  line-height: .98 !important;
  letter-spacing: -.015em !important;
}
body.site-public .face#mapa .gch-map-html-title i {
  width: 82px !important;
  height: 2px !important;
  margin: 22px auto 0 !important;
  background: #c89d50 !important;
}
body.site-public .face#mapa .gch-map-home-row {
  margin-top: -8px !important;
  margin-bottom: 0 !important;
}
body.site-public .face#mapa .gch-map-home-card {
  width: 232px !important;
  height: 92px !important;
  border-radius: 14px !important;
}
body.site-public .face#mapa .gch-map-home-card::after {
  display: none !important;
  content: none !important;
}
body.site-public .face#mapa .gch-map-tree {
  --map-gap: 50px;
  --map-col: calc((100% - 250px) / 6);
  --map-center: calc((100% - 250px) / 12);
  position: relative !important;
  z-index: 3 !important;
  max-width: 1510px !important;
  height: 94px !important;
  margin: 0 auto -6px !important;
  overflow: visible !important;
}
body.site-public .face#mapa .gch-map-tree .root {
  display: block !important;
  position: absolute !important;
  left: 50% !important;
  top: 0 !important;
  width: 2px !important;
  height: 36px !important;
  background: #c79b4d !important;
  transform: translateX(-50%) !important;
}
body.site-public .face#mapa .gch-map-tree .bar {
  display: block !important;
  position: absolute !important;
  left: var(--map-center) !important;
  right: var(--map-center) !important;
  top: 36px !important;
  height: 2px !important;
  background: #c79b4d !important;
}
body.site-public .face#mapa .gch-map-tree .drop {
  display: block !important;
  position: absolute !important;
  top: 36px !important;
  width: 2px !important;
  height: 52px !important;
  background: #c79b4d !important;
  transform: translateX(-50%) !important;
}
body.site-public .face#mapa .gch-map-tree .drop::after {
  content: '' !important;
  position: absolute !important;
  left: 50% !important;
  bottom: -8px !important;
  transform: translateX(-50%) !important;
  width: 0 !important;
  height: 0 !important;
  border-left: 5px solid transparent !important;
  border-right: 5px solid transparent !important;
  border-top: 8px solid #c79b4d !important;
  border-bottom: 0 !important;
  background: transparent !important;
}
body.site-public .face#mapa .gch-map-tree .d1 { left: var(--map-center) !important; }
body.site-public .face#mapa .gch-map-tree .d2 { left: calc(var(--map-center) + var(--map-col) + var(--map-gap)) !important; }
body.site-public .face#mapa .gch-map-tree .d3 { left: calc(var(--map-center) + (var(--map-col) + var(--map-gap)) * 2) !important; }
body.site-public .face#mapa .gch-map-tree .d4 { left: calc(var(--map-center) + (var(--map-col) + var(--map-gap)) * 3) !important; }
body.site-public .face#mapa .gch-map-tree .d5 { left: calc(var(--map-center) + (var(--map-col) + var(--map-gap)) * 4) !important; }
body.site-public .face#mapa .gch-map-tree .d6 { left: calc(var(--map-center) + (var(--map-col) + var(--map-gap)) * 5) !important; }
/* fallback para navegadores que no calculen multiplicación en calc() */
@supports not (left: calc(1px * 2)) {
  body.site-public .face#mapa .gch-map-tree .d1 { left: 6.64% !important; }
  body.site-public .face#mapa .gch-map-tree .d2 { left: 24.0% !important; }
  body.site-public .face#mapa .gch-map-tree .d3 { left: 41.35% !important; }
  body.site-public .face#mapa .gch-map-tree .d4 { left: 58.65% !important; }
  body.site-public .face#mapa .gch-map-tree .d5 { left: 76.0% !important; }
  body.site-public .face#mapa .gch-map-tree .d6 { left: 93.36% !important; }
}
body.site-public .face#mapa .gch-map-html-cards {
  max-width: 1510px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 50px !important;
}
body.site-public .face#mapa .gch-map-html-cards > article {
  min-height: 306px !important;
}
body.site-public .face#mapa .gch-map-card-head {
  height: 124px !important;
  border: 1px solid rgba(198,154,73,.62) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.54) !important;
}
body.site-public .face#mapa .gch-map-card-head::before,
body.site-public .face#mapa .gch-map-card-head::after {
  display: none !important;
  content: none !important;
}
body.site-public .face#mapa .gch-map-card-head .gch-template-icon,
body.site-public .face#mapa .gch-map-card-head .gch-icon-img {
  width: 34px !important;
  height: 34px !important;
}
body.site-public .face#mapa .gch-map-card-head h3 {
  font-size: clamp(18px, 1.28vw, 24px) !important;
  line-height: 1.02 !important;
  letter-spacing: .055em !important;
}
body.site-public .face#mapa .gch-map-html-cards ul {
  margin-top: 24px !important;
  padding-left: 28px !important;
  border-left: 2px solid #c79b4d !important;
  gap: 13px !important;
}
body.site-public .face#mapa .gch-map-html-cards li {
  font-size: clamp(13px, .96vw, 16px) !important;
  line-height: 1.22 !important;
}
body.site-public .face#mapa .gch-map-html-cards li::before,
body.site-public .face#mapa .gch-map-html-cards ul::before,
body.site-public .face#mapa .gch-map-html-cards ul::after {
  width: 7px !important;
  height: 7px !important;
  background: #c79b4d !important;
}
body.site-public .face#mapa .gch-map-html-footer {
  margin: 44px -40px 0 !important;
  min-height: 158px !important;
}
body.site-public .face#mapa .gch-map-html-footer p {
  letter-spacing: .17em !important;
}
body.site-public .face#mapa .gch-map-html-footer span {
  width: 276px !important;
  margin-top: -34px !important;
}
body.site-public .face#mapa .gch-map-html-footer span::after {
  display: none !important;
  content: none !important;
}
@media (max-width: 1320px) {
  body.site-public .face#mapa .gch-map-tree {
    --map-gap: 24px;
    --map-col: calc((100% - 120px) / 6);
    --map-center: calc((100% - 120px) / 12);
    max-width: 1280px !important;
  }
  body.site-public .face#mapa .gch-map-html-cards {
    max-width: 1280px !important;
    gap: 24px !important;
  }
}
@media (max-width: 1080px) {
  body.site-public .face#mapa .gch-map-tree { display: none !important; }
  body.site-public .face#mapa .gch-map-html-cards { grid-template-columns: repeat(2,minmax(0,1fr)) !important; margin-top: 24px !important; }
  body.site-public .face#mapa .gch-map-html-title h2 { font-size: clamp(42px, 8vw, 68px) !important; }
}
@media (max-width: 640px) {
  body.site-public .face#mapa.gch-map-section .gch-map-html-exact { padding: 24px 16px 0 !important; }
  body.site-public .face#mapa .gch-map-html-cards { grid-template-columns: 1fr !important; gap: 20px !important; }
  body.site-public .face#mapa .gch-map-html-footer { margin-left: -16px !important; margin-right: -16px !important; }
}

/* === AJUSTE FINAL MAPA: flechas separadas por sección y solo un punto por ítem === */
body.site-public .face#mapa .gch-map-html-title i::before,
body.site-public .face#mapa .gch-map-html-title i::after,
body.site-public .face#mapa .gch-map-home-card::before,
body.site-public .face#mapa .gch-map-home-card::after,
body.site-public .face#mapa .gch-map-card-head::before,
body.site-public .face#mapa .gch-map-card-head::after,
body.site-public .face#mapa .gch-map-html-footer span::after {
  display: none !important;
  content: none !important;
}

body.site-public .face#mapa .gch-map-tree {
  max-width: 1510px !important;
  width: calc(100% - 0px) !important;
  height: 96px !important;
  margin: 0 auto -8px !important;
  position: relative !important;
  overflow: visible !important;
}
body.site-public .face#mapa .gch-map-tree .root {
  display: block !important;
  position: absolute !important;
  left: 50% !important;
  top: 0 !important;
  width: 2px !important;
  height: 36px !important;
  background: #c79b4d !important;
  transform: translateX(-50%) !important;
}
body.site-public .face#mapa .gch-map-tree .bar {
  display: block !important;
  position: absolute !important;
  left: 6.95% !important;
  right: 6.95% !important;
  top: 36px !important;
  height: 2px !important;
  background: #c79b4d !important;
}
body.site-public .face#mapa .gch-map-tree .drop {
  display: block !important;
  position: absolute !important;
  top: 36px !important;
  width: 2px !important;
  height: 54px !important;
  background: #c79b4d !important;
  transform: translateX(-50%) !important;
}
body.site-public .face#mapa .gch-map-tree .drop::before {
  display: none !important;
  content: none !important;
}
body.site-public .face#mapa .gch-map-tree .drop::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: 50% !important;
  bottom: -8px !important;
  width: 0 !important;
  height: 0 !important;
  transform: translateX(-50%) !important;
  background: transparent !important;
  border-left: 5px solid transparent !important;
  border-right: 5px solid transparent !important;
  border-top: 8px solid #c79b4d !important;
  border-bottom: 0 !important;
}
body.site-public .face#mapa .gch-map-tree .d1 { left: 6.95% !important; }
body.site-public .face#mapa .gch-map-tree .d2 { left: 24.17% !important; }
body.site-public .face#mapa .gch-map-tree .d3 { left: 41.39% !important; }
body.site-public .face#mapa .gch-map-tree .d4 { left: 58.61% !important; }
body.site-public .face#mapa .gch-map-tree .d5 { left: 75.83% !important; }
body.site-public .face#mapa .gch-map-tree .d6 { left: 93.05% !important; }

body.site-public .face#mapa .gch-map-html-cards ul {
  position: relative !important;
  margin-top: 24px !important;
  padding-left: 28px !important;
  border-left: 2px solid #c79b4d !important;
  list-style: none !important;
}
body.site-public .face#mapa .gch-map-html-cards ul::before,
body.site-public .face#mapa .gch-map-html-cards ul::after {
  display: none !important;
  content: none !important;
}
body.site-public .face#mapa .gch-map-html-cards li {
  position: relative !important;
  padding-left: 0 !important;
  margin: 0 !important;
}
body.site-public .face#mapa .gch-map-html-cards li::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  left: -32px !important;
  top: .46em !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 999px !important;
  background: #c79b4d !important;
  box-shadow: none !important;
}
@media (max-width: 1320px) {
  body.site-public .face#mapa .gch-map-tree .bar { left: 7.55% !important; right: 7.55% !important; }
  body.site-public .face#mapa .gch-map-tree .d1 { left: 7.55% !important; }
  body.site-public .face#mapa .gch-map-tree .d2 { left: 24.53% !important; }
  body.site-public .face#mapa .gch-map-tree .d3 { left: 41.51% !important; }
  body.site-public .face#mapa .gch-map-tree .d4 { left: 58.49% !important; }
  body.site-public .face#mapa .gch-map-tree .d5 { left: 75.47% !important; }
  body.site-public .face#mapa .gch-map-tree .d6 { left: 92.45% !important; }
}

/* === AJUSTE MAPA: contenedores a medida y sección full width === */
html body.site-public main.site-stage[data-screen-root] > section.face#mapa.gch-map-section,
body.site-public .face#mapa.gch-map-section {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow-x: hidden !important;
}
body.site-public .face#mapa.gch-map-section .gch-map-html-exact {
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 18px clamp(18px, 2.35vw, 46px) 0 !important;
  box-sizing: border-box !important;
  min-height: auto !important;
  overflow: visible !important;
}
body.site-public .face#mapa .gch-map-html-header {
  width: 100% !important;
  min-height: 114px !important;
  margin: 0 !important;
}
body.site-public .face#mapa .gch-map-html-title h2 {
  font-size: clamp(54px, 4.9vw, 86px) !important;
  line-height: .98 !important;
  white-space: normal !important;
}
body.site-public .face#mapa .gch-map-home-row {
  margin-top: -4px !important;
}
body.site-public .face#mapa .gch-map-tree,
body.site-public .face#mapa .gch-map-html-cards {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}
body.site-public .face#mapa .gch-map-tree {
  height: 92px !important;
  margin: 0 0 -6px !important;
}
body.site-public .face#mapa .gch-map-tree .bar {
  left: 7.65% !important;
  right: 7.65% !important;
}
body.site-public .face#mapa .gch-map-tree .d1 { left: 7.65% !important; }
body.site-public .face#mapa .gch-map-tree .d2 { left: 24.59% !important; }
body.site-public .face#mapa .gch-map-tree .d3 { left: 41.53% !important; }
body.site-public .face#mapa .gch-map-tree .d4 { left: 58.47% !important; }
body.site-public .face#mapa .gch-map-tree .d5 { left: 75.41% !important; }
body.site-public .face#mapa .gch-map-tree .d6 { left: 92.35% !important; }
body.site-public .face#mapa .gch-map-html-cards {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 38px) !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.site-public .face#mapa .gch-map-html-cards > article {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 300px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}
body.site-public .face#mapa .gch-map-card-head {
  width: 100% !important;
  min-width: 0 !important;
  height: 126px !important;
  padding: 14px 10px 12px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
}
body.site-public .face#mapa .gch-map-card-head .gch-template-icon,
body.site-public .face#mapa .gch-map-card-head .gch-icon-img {
  width: 32px !important;
  height: 32px !important;
  flex: 0 0 auto !important;
}
body.site-public .face#mapa .gch-map-card-head h3 {
  width: 100% !important;
  max-width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  text-align: center !important;
  font-size: clamp(15px, .92vw, 20px) !important;
  line-height: 1.08 !important;
  letter-spacing: .035em !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
body.site-public .face#mapa .gch-map-html-cards ul {
  margin-top: 22px !important;
  padding-left: 24px !important;
  gap: 10px !important;
  box-sizing: border-box !important;
}
body.site-public .face#mapa .gch-map-html-cards li {
  font-size: clamp(12px, .80vw, 15px) !important;
  line-height: 1.25 !important;
  color: #2c2926 !important;
  padding-left: 0 !important;
}
body.site-public .face#mapa .gch-map-html-cards li::before {
  left: -28px !important;
  top: .45em !important;
  width: 6px !important;
  height: 6px !important;
}
body.site-public .face#mapa .gch-map-html-footer {
  margin-left: calc(-1 * clamp(18px, 2.35vw, 46px)) !important;
  margin-right: calc(-1 * clamp(18px, 2.35vw, 46px)) !important;
  width: auto !important;
}
@media (max-width: 1180px) {
  body.site-public .face#mapa .gch-map-html-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 760px) {
  body.site-public .face#mapa.gch-map-section .gch-map-html-exact {
    padding: 24px 14px 0 !important;
  }
  body.site-public .face#mapa .gch-map-html-cards {
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#mapa .gch-map-card-head h3 {
    font-size: 20px !important;
  }
  body.site-public .face#mapa .gch-map-html-footer {
    margin-left: -14px !important;
    margin-right: -14px !important;
  }
}

/* === AJUSTE FINAL INICIO: sin logo interno, texto e iconos más grandes === */
body.site-public .face#inicio.gch-cover-section .gch-cover-brand {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-content {
  width: min(980px, 61vw) !important;
  max-width: 980px !important;
  padding-top: clamp(52px, 8.5vh, 112px) !important;
  padding-left: clamp(42px, 5vw, 94px) !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-title {
  font-size: clamp(96px, 8.4vw, 152px) !important;
  line-height: .86 !important;
  letter-spacing: -.028em !important;
  max-width: 910px !important;
  margin-top: 0 !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-title-rule {
  margin-top: 28px !important;
  width: 92px !important;
  height: 3px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
  font-size: clamp(42px, 3.05vw, 62px) !important;
  line-height: 1.05 !important;
  margin-top: 20px !important;
  letter-spacing: .035em !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
  margin-top: clamp(54px, 5.8vh, 86px) !important;
  max-width: 880px !important;
  gap: 24px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars article {
  padding-right: 18px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-icon-img,
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-template-icon,
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-exact-icon {
  width: 38px !important;
  height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  margin-bottom: 14px !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars strong {
  font-size: 17px !important;
  line-height: 1.1 !important;
  letter-spacing: .09em !important;
}
body.site-public .face#inicio.gch-cover-section .gch-cover-pillars span {
  font-size: 15px !important;
  line-height: 1.35 !important;
}
@media (max-width: 1300px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    width: min(920px, 64vw) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(82px, 8.2vw, 128px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(34px, 3vw, 50px) !important;
  }
}
@media (max-width: 1000px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    width: min(94vw, 880px) !important;
    padding: 64px 28px 42px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(64px, 13vw, 104px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(28px, 5.8vw, 42px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
    max-width: 720px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars article:nth-child(2) {
    border-right: 0 !important;
  }
}
@media (max-width: 560px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    padding: 46px 20px 34px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(48px, 15vw, 76px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(20px, 6.4vw, 30px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
    grid-template-columns: 1fr !important;
  }
}

/* === AJUSTE FINAL: inicio más grande y pegado hacia abajo === */
@media (min-width: 1001px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
    position: relative !important;
    min-height: 100vh !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    position: absolute !important;
    left: clamp(42px, 5vw, 96px) !important;
    bottom: clamp(26px, 4.2vh, 56px) !important;
    width: min(1080px, 64vw) !important;
    max-width: 1080px !important;
    padding: 0 !important;
    z-index: 2 !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(108px, 9vw, 170px) !important;
    line-height: .84 !important;
    max-width: 1040px !important;
    margin: 0 !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-title-rule {
    margin-top: clamp(20px, 2.4vh, 32px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(46px, 3.35vw, 70px) !important;
    line-height: 1 !important;
    margin-top: clamp(14px, 1.6vh, 22px) !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
    margin-top: clamp(42px, 4.8vh, 72px) !important;
    max-width: 960px !important;
    gap: 28px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-icon-img,
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-template-icon,
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-exact-icon {
    width: 44px !important;
    height: 44px !important;
    max-width: 44px !important;
    max-height: 44px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars strong {
    font-size: 18px !important;
  }
  body.site-public .face#inicio.gch-cover-section .gch-cover-pillars span {
    font-size: 16px !important;
  }
}
@media (max-width: 1000px) {
  body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    min-height: calc(100vh - 90px) !important;
    padding-top: 90px !important;
    padding-bottom: 34px !important;
  }
}

/* === CORRECCIÓN: bloque del inicio pegado hacia ABAJO, no arriba === */
@media (min-width: 1001px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-structured,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-structured {
    position: relative !important;
    min-height: 100vh !important;
    height: 100vh !important;
    display: block !important;
    align-items: unset !important;
    justify-content: unset !important;
    padding: 0 !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-content {
    position: absolute !important;
    top: auto !important;
    right: auto !important;
    left: clamp(42px, 5vw, 96px) !important;
    bottom: clamp(6px, 1.1vh, 16px) !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: min(1080px, 64vw) !important;
    max-width: 1080px !important;
    min-height: 0 !important;
    justify-content: initial !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    margin-top: 0 !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-pillars {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
}
@media (max-width: 1000px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-structured {
    min-height: 100vh !important;
    display: flex !important;
    align-items: flex-end !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    margin-top: auto !important;
    padding-top: 20vh !important;
    padding-bottom: 20px !important;
    justify-content: flex-end !important;
  }
}

/* === AJUSTE FINO: inicio un poco más grande y con margen inferior correcto === */
@media (min-width: 1001px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-content {
    bottom: clamp(44px, 5.4vh, 82px) !important;
    width: min(1120px, 66vw) !important;
    max-width: 1120px !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(114px, 9.35vw, 178px) !important;
    line-height: .835 !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-subtitle,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-subtitle {
    font-size: clamp(48px, 3.48vw, 74px) !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-pillars,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-pillars {
    margin-top: clamp(44px, 5vh, 74px) !important;
    max-width: 995px !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-icon-img,
  html body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-template-icon,
  html body.site-public .face#inicio.gch-cover-section .gch-cover-pillars .gch-exact-icon {
    width: 46px !important;
    height: 46px !important;
    max-width: 46px !important;
    max-height: 46px !important;
  }
}
@media (max-width: 1000px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    padding-bottom: 46px !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(66px, 13.5vw, 108px) !important;
  }
}

/* === AJUSTE FINO: nombre completo visible y un poco más pequeño === */
@media (min-width: 1001px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-structured,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-structured {
    overflow: visible !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-shade,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-shade {
    z-index: 1 !important;
    pointer-events: none !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-content {
    z-index: 5 !important;
    overflow: visible !important;
    bottom: clamp(50px, 5.8vh, 88px) !important;
    width: min(1240px, 72vw) !important;
    max-width: 1240px !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(104px, 8.75vw, 164px) !important;
    line-height: .89 !important;
    letter-spacing: -.026em !important;
    max-width: 1240px !important;
    width: 100% !important;
    overflow: visible !important;
    white-space: normal !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.18) !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title span,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-title span {
    display: block !important;
    overflow: visible !important;
    padding-right: .08em !important;
  }
}
@media (max-width: 1000px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-content {
    overflow: visible !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(60px, 12.7vw, 98px) !important;
    line-height: .92 !important;
    overflow: visible !important;
  }
}

/* === PÚBLICOS OBJETIVO PRIORITARIOS: maqueta HTML/CSS === */
body.site-public #publicos.gch-publicos-section,
body.site-public.gch-scroll-mode #publicos.gch-publicos-section {
  padding: 0 !important;
  overflow: hidden !important;
  background: #fbfaf7 !important;
}
body.site-public #publicos.gch-publicos-section::before {
  content: '' !important;
  position: absolute !important;
  right: -86px !important;
  top: -118px !important;
  width: 360px !important;
  height: 360px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(186,145,65,.58) !important;
  box-shadow:
    0 0 0 16px transparent,
    0 0 0 18px rgba(186,145,65,.42),
    0 0 0 34px transparent,
    0 0 0 36px rgba(186,145,65,.32),
    0 0 0 52px transparent,
    0 0 0 54px rgba(186,145,65,.25),
    0 0 0 70px transparent,
    0 0 0 72px rgba(186,145,65,.20) !important;
  background: transparent !important;
  z-index: 0 !important;
}
body.site-public #publicos.gch-publicos-section::after {
  content: '' !important;
  position: absolute !important;
  right: -120px !important;
  bottom: -185px !important;
  width: 470px !important;
  height: 470px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(186,145,65,.40) !important;
  box-shadow:
    0 0 0 18px transparent,
    0 0 0 20px rgba(186,145,65,.26),
    0 0 0 42px transparent,
    0 0 0 44px rgba(186,145,65,.20),
    0 0 0 66px transparent,
    0 0 0 68px rgba(186,145,65,.16) !important;
  background: transparent !important;
  z-index: 0 !important;
}
body.site-public #publicos.gch-publicos-section > .gch-publicos-layout,
body.site-public.gch-scroll-mode #publicos.gch-publicos-section > .gch-publicos-layout {
  width: 100% !important;
  max-width: none !important;
  min-height: 100vh !important;
  height: 100vh !important;
  padding: 28px 42px 0 !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-rows: auto 1fr 116px !important;
  align-content: stretch !important;
  gap: 18px !important;
  position: relative !important;
  z-index: 2 !important;
}
.gch-publicos-top {
  position: relative;
  display: grid;
  grid-template-columns: 265px 1fr 265px;
  align-items: start;
  gap: 20px;
  min-height: 128px;
}
.gch-publicos-brand {
  display: grid;
  justify-items: center;
  align-content: start;
  text-align: center;
  padding-top: 4px;
}
.gch-publicos-brand-mark img {
  width: 72px;
  height: auto;
  display: block;
  margin: 0 auto 5px;
}
.gch-publicos-brand strong {
  font-family: var(--font-serif, var(--serif));
  font-size: 15px;
  letter-spacing: .03em;
  line-height: 1.05;
  color: #17120f;
  font-weight: 600;
}
.gch-publicos-brand small {
  margin-top: 6px;
  display: block;
  color: #b28a42;
  font-size: 10px;
  letter-spacing: .16em;
  font-weight: 700;
}
.gch-publicos-brand-line {
  display: block;
  width: 58px;
  height: 2px;
  margin-top: 12px;
  background: #b28a42;
}
.gch-publicos-heading {
  grid-column: 2;
  text-align: center;
  padding-top: 26px;
}
.gch-publicos-heading .headline {
  font-family: var(--font-serif, var(--serif));
  font-size: clamp(42px, 4.2vw, 72px) !important;
  line-height: .98 !important;
  letter-spacing: -.02em !important;
  margin: 0 !important;
  color: #0d0c0b !important;
  font-weight: 500 !important;
}
.gch-publicos-heading .gch-gold-line {
  width: 94px !important;
  height: 2px !important;
  margin: 18px auto 12px !important;
  background: linear-gradient(90deg, transparent, #c79c4d 18%, #c79c4d 82%, transparent) !important;
}
.gch-publicos-heading .sub {
  margin: 0 !important;
  color: #22201e !important;
  font-size: clamp(15px, 1.24vw, 20px) !important;
  line-height: 1.4 !important;
}
.gch-publicos-grid,
body.site-public .gch-publicos-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: stretch !important;
  width: 100% !important;
  margin: 0 !important;
}
body.site-public .gch-publicos-grid > article {
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  padding: 20px 20px 18px !important;
  border-radius: 6px !important;
  border: 1px solid rgba(185,144,71,.38) !important;
  border-bottom: 3px solid #a96f24 !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 10px 22px rgba(72,52,22,.045) !important;
  display: grid !important;
  grid-template-rows: auto auto auto minmax(74px, auto) 1fr !important;
  justify-items: center !important;
  align-content: start !important;
  overflow: hidden !important;
}
body.site-public .gch-publicos-grid > article i {
  width: 92px !important;
  height: 92px !important;
  border-radius: 999px !important;
  margin: 0 auto 14px !important;
  border: 1px solid rgba(185,144,71,.22) !important;
  background: radial-gradient(circle, rgba(255,255,255,.98) 0 58%, rgba(218,190,131,.10) 100%) !important;
  box-shadow: inset 0 0 0 1px rgba(218,190,131,.10) !important;
}
body.site-public .gch-publicos-grid > article i .gch-template-icon,
body.site-public .gch-publicos-grid > article i .gch-icon-img {
  width: 44px !important;
  height: 44px !important;
  object-fit: contain !important;
  filter: none !important;
}
body.site-public .gch-publicos-grid > article h3 {
  width: 100% !important;
  min-height: 42px !important;
  margin: 0 !important;
  color: #8d642b !important;
  font-family: var(--font-serif, var(--serif)) !important;
  font-size: clamp(15px, 1.1vw, 20px) !important;
  line-height: 1.08 !important;
  letter-spacing: .025em !important;
  text-align: center !important;
  font-weight: 500 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.gch-publicos-grid .gch-card-rule {
  display: block;
  width: 32px;
  height: 1px;
  margin: 14px auto 18px;
  background: rgba(185,144,71,.55);
}
body.site-public .gch-publicos-grid > article p {
  width: 100% !important;
  min-height: 76px !important;
  margin: 0 !important;
  padding: 0 4px 18px !important;
  border-bottom: 1px solid rgba(185,144,71,.18) !important;
  color: #151514 !important;
  font-size: clamp(11px, .82vw, 13px) !important;
  line-height: 1.28 !important;
  text-align: center !important;
  overflow-wrap: anywhere !important;
}
body.site-public .gch-publicos-grid > article ul {
  width: 100% !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 16px 0 0 !important;
  display: grid !important;
  gap: 10px !important;
  text-align: left !important;
}
body.site-public .gch-publicos-grid > article li {
  position: relative !important;
  margin: 0 !important;
  padding-left: 22px !important;
  color: #25231f !important;
  font-size: clamp(10.5px, .78vw, 12.5px) !important;
  line-height: 1.18 !important;
  overflow-wrap: anywhere !important;
}
body.site-public .gch-publicos-grid > article li::before {
  content: '✓' !important;
  position: absolute !important;
  left: 0 !important;
  top: .08em !important;
  width: 11px !important;
  height: 11px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: #b48743 !important;
  color: #fff !important;
  font-size: 7px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}
.gch-publicos-footer {
  position: relative;
  left: -42px;
  width: calc(100% + 84px);
  min-height: 116px;
  align-self: end;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, rgba(241,240,238,.96), rgba(247,246,244,.98));
  overflow: hidden;
}
.gch-publicos-footer::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 350px;
  height: 116px;
  opacity: .36;
  background:
    linear-gradient(30deg, rgba(0,0,0,.08) 0 2px, transparent 2px 18px),
    linear-gradient(120deg, transparent 0 58px, rgba(0,0,0,.12) 58px 60px, transparent 60px 75px),
    linear-gradient(16deg, rgba(110,110,108,.38), rgba(210,210,208,.42));
  clip-path: polygon(0 30%, 94% 100%, 0 100%);
}
.gch-publicos-footer::after {
  content: '';
  position: absolute;
  right: -115px;
  bottom: -245px;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  border: 1px solid rgba(185,144,71,.32);
  box-shadow:
    0 0 0 20px transparent,
    0 0 0 22px rgba(185,144,71,.24),
    0 0 0 48px transparent,
    0 0 0 50px rgba(185,144,71,.18),
    0 0 0 76px transparent,
    0 0 0 78px rgba(185,144,71,.13);
}
.gch-publicos-footer-text {
  position: relative;
  z-index: 1;
  margin-top: -18px;
  color: #9a7d48;
  font-size: 14px;
  letter-spacing: .18em;
  font-weight: 500;
  text-align: center;
}
.gch-publicos-footer-line {
  position: absolute;
  z-index: 1;
  left: 50%;
  bottom: 28px;
  width: 220px;
  height: 1px;
  transform: translateX(-50%);
  background: #b89149;
}
.gch-publicos-footer-line::after {
  content: '';
  position: absolute;
  left: 50%;
  top: -4px;
  width: 9px;
  height: 9px;
  background: #b89149;
  transform: translateX(-50%) rotate(45deg);
}
@media (max-width: 1280px) {
  body.site-public #publicos.gch-publicos-section > .gch-publicos-layout,
  body.site-public.gch-scroll-mode #publicos.gch-publicos-section > .gch-publicos-layout {
    padding-left: 24px !important;
    padding-right: 24px !important;
    grid-template-rows: auto 1fr 100px !important;
    gap: 12px !important;
  }
  .gch-publicos-top { grid-template-columns: 210px 1fr 210px; min-height: 116px; }
  .gch-publicos-brand-mark img { width: 58px; }
  .gch-publicos-brand strong { font-size: 12px; }
  .gch-publicos-heading { padding-top: 18px; }
  body.site-public .gch-publicos-grid > article { padding: 15px 13px 12px !important; }
  body.site-public .gch-publicos-grid > article i { width: 78px !important; height: 78px !important; }
  body.site-public .gch-publicos-grid > article i .gch-template-icon,
  body.site-public .gch-publicos-grid > article i .gch-icon-img { width: 38px !important; height: 38px !important; }
  .gch-publicos-footer { left: -24px; width: calc(100% + 48px); min-height: 100px; }
}
@media (max-width: 980px) {
  body.site-public #publicos.gch-publicos-section,
  body.site-public.gch-scroll-mode #publicos.gch-publicos-section { overflow: auto !important; }
  body.site-public #publicos.gch-publicos-section > .gch-publicos-layout,
  body.site-public.gch-scroll-mode #publicos.gch-publicos-section > .gch-publicos-layout {
    height: auto !important;
    min-height: 100vh !important;
    padding: 24px 18px 0 !important;
    grid-template-rows: auto auto auto !important;
  }
  .gch-publicos-top { grid-template-columns: 1fr; min-height: 0; }
  .gch-publicos-heading { grid-column: 1; padding-top: 0; }
  .gch-publicos-brand { display: none; }
  .gch-publicos-grid,
  body.site-public .gch-publicos-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.site-public .gch-publicos-grid > article { min-height: 330px !important; }
  .gch-publicos-footer { left: -18px; width: calc(100% + 36px); }
}
@media (max-width: 620px) {
  .gch-publicos-grid,
  body.site-public .gch-publicos-grid { grid-template-columns: 1fr !important; }
  body.site-public .gch-publicos-grid > article { min-height: auto !important; }
  .gch-publicos-footer-text { font-size: 11px; letter-spacing: .08em; padding: 0 18px; }
}

/* === EMBUDO COMERCIAL DIGITAL - HTML/CSS SEGÚN MAQUETA === */
body.site-public #embudo.gch-embudo-section,
body.site-public.gch-scroll-mode #embudo.gch-embudo-section {
  background: #fbfbfa !important;
  color: #16120f !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.site-public #embudo.gch-embudo-section::before {
  content: '';
  position: absolute;
  right: -20px;
  top: -22px;
  width: 285px;
  height: 170px;
  pointer-events: none;
  background:
    radial-gradient(circle at 100% 0, transparent 0 82px, rgba(190,145,61,.95) 82px 84px, transparent 84px 99px, rgba(190,145,61,.70) 99px 101px, transparent 101px 116px, rgba(190,145,61,.50) 116px 118px, transparent 118px 133px, rgba(190,145,61,.36) 133px 135px, transparent 135px 150px, rgba(190,145,61,.24) 150px 152px, transparent 152px 170px);
  opacity: .72;
  z-index: 0;
}
body.site-public #embudo.gch-embudo-section::after {
  content: '';
  position: absolute;
  left: -8px;
  bottom: -18px;
  width: 230px;
  height: 155px;
  pointer-events: none;
  background:
    radial-gradient(circle at 0 100%, transparent 0 72px, rgba(190,145,61,.72) 72px 74px, transparent 74px 88px, rgba(190,145,61,.50) 88px 90px, transparent 90px 104px, rgba(190,145,61,.34) 104px 106px, transparent 106px 120px, rgba(190,145,61,.22) 120px 122px, transparent 122px 142px);
  opacity: .7;
  z-index: 0;
}
body.site-public #embudo.gch-embudo-section > .gch-embudo-layout,
body.site-public.gch-scroll-mode #embudo.gch-embudo-section > .gch-embudo-layout {
  width: 100% !important;
  max-width: none !important;
  min-height: 100vh !important;
  padding: clamp(16px, 2.1vw, 30px) clamp(22px, 3vw, 56px) 0 !important;
  margin: 0 !important;
  position: relative;
  z-index: 1;
  display: flex !important;
  flex-direction: column;
}
.gch-embudo-top {
  display: grid;
  grid-template-columns: 260px 1fr 260px;
  align-items: start;
  gap: 18px;
  min-height: 125px;
}
.gch-embudo-brand {
  display: grid;
  justify-items: center;
  align-content: start;
  text-align: center;
  gap: 5px;
  padding-top: 0;
}
.gch-embudo-brand-mark img {
  width: 74px;
  height: auto;
  display: block;
}
.gch-embudo-brand strong {
  font-family: var(--font-serif);
  font-size: 13px;
  color: #19130f;
  letter-spacing: .02em;
  line-height: 1.08;
}
.gch-embudo-brand small {
  color: #ad8746;
  font-size: 9px;
  letter-spacing: .18em;
  font-weight: 700;
}
.gch-embudo-brand-line {
  width: 68px;
  height: 2px;
  background: #b98f45;
  display: block;
  margin-top: 5px;
}
.gch-embudo-heading {
  text-align: center;
  padding-top: 18px;
}
.gch-embudo-heading .headline {
  font-family: var(--font-serif) !important;
  font-size: clamp(48px, 5.4vw, 78px) !important;
  line-height: .95 !important;
  font-weight: 500 !important;
  letter-spacing: -.025em !important;
  color: #090807 !important;
  margin: 0 !important;
}
.gch-embudo-heading .gch-gold-line {
  width: 86px !important;
  height: 2px !important;
  margin: 16px auto 14px !important;
  display: block !important;
  background: #ba9049 !important;
}
.gch-embudo-heading .sub {
  margin: 0 !important;
  color: #222 !important;
  font-size: clamp(15px, 1.35vw, 20px) !important;
  letter-spacing: .01em !important;
  line-height: 1.45 !important;
}
.gch-embudo-main {
  display: grid;
  grid-template-columns: minmax(190px, .62fr) minmax(360px, 1.55fr) minmax(455px, 1.85fr) minmax(190px, .62fr);
  align-items: center;
  gap: clamp(12px, 1.6vw, 26px);
  flex: 1 1 auto;
  min-height: 445px;
  padding: 0 0 clamp(8px, 1.2vw, 18px);
}
.gch-embudo-side {
  position: relative;
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.gch-embudo-side article {
  width: 100%;
  max-width: 220px;
  min-height: 238px;
  border: 1px solid rgba(188,144,65,.42);
  border-radius: 8px;
  background: rgba(255,255,255,.86);
  display: grid;
  place-items: center;
  align-content: center;
  gap: 14px;
  padding: 22px 19px;
  text-align: center;
  box-shadow: 0 16px 34px rgba(42,31,14,.035);
  position: relative;
  z-index: 2;
}
.gch-embudo-side i.has-gch-svg-icon {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1px solid rgba(188,144,65,.40);
  background: #fff;
}
.gch-embudo-side i.has-gch-svg-icon .gch-template-icon,
.gch-embudo-side i.has-gch-svg-icon .gch-icon-img {
  width: 44px !important;
  height: 44px !important;
  object-fit: contain !important;
}
.gch-embudo-side h3 {
  margin: 0;
  font-family: var(--font-serif);
  font-size: 19px;
  letter-spacing: .05em;
  color: #ac7f36;
  text-transform: uppercase;
}
.gch-embudo-side p {
  margin: 0;
  color: #151310;
  font-size: 14px;
  line-height: 1.43;
}
.gch-side-bracket {
  position: absolute;
  width: 76px;
  height: 72px;
  pointer-events: none;
  z-index: 1;
}
.gch-embudo-objetivo .gch-side-bracket { right: -10px; border-left: 1px solid rgba(190,145,61,.58); }
.gch-embudo-resultado .gch-side-bracket { left: -10px; border-right: 1px solid rgba(190,145,61,.58); }
.gch-side-bracket.top { top: 26px; border-top: 1px solid rgba(190,145,61,.58); }
.gch-side-bracket.bottom { bottom: 26px; border-bottom: 1px solid rgba(190,145,61,.58); }
.gch-embudo-objetivo .gch-side-bracket.top::after,
.gch-embudo-objetivo .gch-side-bracket.bottom::after,
.gch-embudo-resultado .gch-side-bracket.top::after,
.gch-embudo-resultado .gch-side-bracket.bottom::after {
  content: '';
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #bd9145;
}
.gch-embudo-objetivo .gch-side-bracket.top::after { right: -3px; top: -4px; }
.gch-embudo-objetivo .gch-side-bracket.bottom::after { right: -3px; bottom: -4px; }
.gch-embudo-resultado .gch-side-bracket.top::after { left: -3px; top: -4px; }
.gch-embudo-resultado .gch-side-bracket.bottom::after { left: -3px; bottom: -4px; }
.gch-funnel-gold {
  width: 100%;
  max-width: 520px;
  margin: 0 auto;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 5px;
  filter: drop-shadow(0 18px 18px rgba(136,89,18,.20));
}
.gch-funnel-layer {
  position: relative;
  height: clamp(48px, 5.2vw, 72px);
  background: linear-gradient(180deg, #c78b28 0%, #dfbd70 50%, #b77b21 100%);
  box-shadow: inset 0 10px 16px rgba(255,255,255,.30), inset 0 -10px 16px rgba(95,54,5,.17);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: -4px;
}
.gch-funnel-layer::before {
  content: '';
  position: absolute;
  inset: 3px 10px auto;
  height: 12px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,.44), rgba(255,255,255,0));
  opacity: .65;
}
.gch-funnel-layer.layer-1 { width: 100%; height: clamp(62px, 5.9vw, 86px); clip-path: polygon(0 0,100% 0,94% 100%,6% 100%); border-radius: 58% 58% 24px 24px / 30px 30px 18px 18px; }
.gch-funnel-layer.layer-2 { width: 86%; clip-path: polygon(3% 0,97% 0,91% 100%,9% 100%); }
.gch-funnel-layer.layer-3 { width: 74%; clip-path: polygon(5% 0,95% 0,88% 100%,12% 100%); }
.gch-funnel-layer.layer-4 { width: 61%; clip-path: polygon(7% 0,93% 0,84% 100%,16% 100%); }
.gch-funnel-layer.layer-5 { width: 49%; clip-path: polygon(10% 0,90% 0,78% 100%,22% 100%); }
.gch-funnel-layer.layer-6 { width: 34%; height: clamp(50px, 4.6vw, 66px); clip-path: polygon(14% 0,86% 0,70% 100%,30% 100%); border-radius: 0 0 54% 54% / 0 0 24px 24px; }
.gch-funnel-layer i.has-gch-svg-icon {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: #fff;
  display: grid;
  place-items: center;
  box-shadow: 0 6px 14px rgba(0,0,0,.10);
  position: relative;
  z-index: 2;
}
.gch-funnel-layer i.has-gch-svg-icon .gch-template-icon,
.gch-funnel-layer i.has-gch-svg-icon .gch-icon-img {
  width: 34px !important;
  height: 34px !important;
  object-fit: contain !important;
}
.gch-embudo-steps {
  display: grid;
  gap: 0;
  align-self: center;
}
.gch-embudo-steps article {
  display: grid;
  grid-template-columns: 62px minmax(128px, .46fr) minmax(230px, 1fr);
  align-items: center;
  min-height: 72px;
  border-bottom: 1px solid rgba(190,145,61,.15);
}
.gch-embudo-steps article:first-child { border-top: 0; }
.gch-embudo-steps b {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid rgba(190,145,61,.30);
  color: #ad7b2d;
  background: #fff;
  font-family: var(--font-serif);
  font-size: 15px;
  font-weight: 500;
  box-shadow: 0 8px 14px rgba(60,42,16,.045);
}
.gch-embudo-steps h3 {
  margin: 0;
  padding: 0 24px 0 10px;
  font-family: var(--font-serif);
  font-size: clamp(19px, 1.8vw, 27px);
  letter-spacing: .02em;
  color: #18120f;
  text-transform: uppercase;
}
.gch-embudo-steps p {
  margin: 0;
  padding-left: 28px;
  border-left: 1px solid rgba(190,145,61,.45);
  color: #201b17;
  font-size: clamp(11px, .9vw, 13px);
  line-height: 1.42;
}
.gch-embudo-footer {
  width: calc(100% + clamp(44px, 6vw, 112px));
  margin-left: calc(clamp(22px, 3vw, 56px) * -1);
  min-height: 96px;
  background: rgba(245,245,244,.96);
  border-top: 1px solid rgba(185,142,65,.08);
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  align-items: center;
  padding: 16px clamp(34px, 7vw, 170px);
  gap: 20px;
  position: relative;
  z-index: 2;
}
.gch-embudo-footer article {
  display: grid;
  grid-template-columns: 48px 1fr;
  align-items: center;
  gap: 14px;
  min-height: 54px;
}
.gch-embudo-footer article:not(:last-child) {
  border-right: 1px solid rgba(190,145,61,.36);
  padding-right: 18px;
}
.gch-embudo-footer i.has-gch-svg-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
}
.gch-embudo-footer i.has-gch-svg-icon .gch-template-icon,
.gch-embudo-footer i.has-gch-svg-icon .gch-icon-img {
  width: 38px !important;
  height: 38px !important;
  object-fit: contain !important;
}
.gch-embudo-footer strong {
  display: block;
  font-family: var(--font-serif);
  font-size: 14px;
  color: #201710;
  letter-spacing: .035em;
  line-height: 1.1;
  margin-bottom: 5px;
}
.gch-embudo-footer span {
  display: block;
  color: #2f2b26;
  font-size: 11.5px;
  line-height: 1.28;
}
@media (max-width: 1360px) {
  .gch-embudo-top { grid-template-columns: 220px 1fr 220px; min-height: 118px; }
  .gch-embudo-brand-mark img { width: 62px; }
  .gch-embudo-main { grid-template-columns: 175px minmax(320px, 1.38fr) minmax(410px, 1.7fr) 175px; gap: 14px; }
  .gch-embudo-side article { max-width: 200px; min-height: 215px; padding: 18px 15px; }
  .gch-embudo-steps article { grid-template-columns: 54px minmax(112px,.44fr) minmax(210px,1fr); min-height: 64px; }
  .gch-funnel-layer i.has-gch-svg-icon { width: 52px; height: 52px; }
}
@media (max-width: 1100px) {
  body.site-public #embudo.gch-embudo-section { overflow: auto !important; }
  .gch-embudo-top { grid-template-columns: 1fr; }
  .gch-embudo-brand { display: none; }
  .gch-embudo-main { grid-template-columns: 1fr; gap: 22px; }
  .gch-embudo-side { min-height: auto; }
  .gch-side-bracket { display: none; }
  .gch-funnel-gold { max-width: 560px; }
  .gch-embudo-steps article { grid-template-columns: 58px 150px 1fr; }
  .gch-embudo-footer { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 18px 28px; }
  .gch-embudo-footer article:nth-child(2) { border-right: 0; }
}
@media (max-width: 700px) {
  .gch-embudo-heading .headline { font-size: clamp(38px, 12vw, 54px) !important; }
  .gch-embudo-steps article { grid-template-columns: 1fr; text-align: center; gap: 8px; padding: 14px 0; }
  .gch-embudo-steps b { margin: 0 auto; }
  .gch-embudo-steps h3 { padding: 0; }
  .gch-embudo-steps p { border-left: 0; padding-left: 0; }
  .gch-embudo-footer { grid-template-columns: 1fr; width: 100%; margin-left: 0; }
  .gch-embudo-footer article { border-right: 0 !important; padding-right: 0 !important; }
}

/* === AJUSTE EMBUDO: sin logo repetido, flechas extendidas y embudo biselado profesional === */
body.site-public #embudo.gch-embudo-section .gch-embudo-brand {
  display: none !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-top {
  grid-template-columns: 1fr !important;
  min-height: clamp(104px, 10vw, 138px) !important;
  align-items: start !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-heading {
  padding-top: clamp(18px, 2.2vw, 34px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-heading .headline {
  font-size: clamp(52px, 5.6vw, 86px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-main {
  grid-template-columns: minmax(190px, .58fr) minmax(430px, 1.68fr) minmax(455px, 1.78fr) minmax(190px, .58fr) !important;
  gap: clamp(8px, 1vw, 18px) !important;
  align-items: center !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-side {
  overflow: visible !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket {
  border: 0 !important;
  position: absolute !important;
  height: 42px !important;
  width: clamp(150px, 13vw, 250px) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(188,144,65,.12), rgba(188,144,65,.88), rgba(188,144,65,.58)) !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: '' !important;
  position: absolute !important;
  top: -4px !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% - 10px) !important;
  right: auto !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket::after {
  right: -2px !important;
  border-top: 5px solid transparent !important;
  border-bottom: 5px solid transparent !important;
  border-left: 8px solid rgba(188,144,65,.90) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% - 10px) !important;
  left: auto !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket::before {
  background: linear-gradient(90deg, rgba(188,144,65,.58), rgba(188,144,65,.88), rgba(188,144,65,.12)) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket::after {
  left: -2px !important;
  border-top: 5px solid transparent !important;
  border-bottom: 5px solid transparent !important;
  border-right: 8px solid rgba(188,144,65,.90) !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top {
  top: clamp(30px, 4vw, 54px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
  bottom: clamp(30px, 4vw, 54px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top::before {
  top: 0 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom::before {
  top: auto !important;
  bottom: 0 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom::after {
  top: auto !important;
  bottom: -4px !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top {
  border-top: 0 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
  border-bottom: 0 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top span,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom span {
  display: none !important;
}

body.site-public #embudo.gch-embudo-section .gch-funnel-gold {
  max-width: 590px !important;
  gap: 0 !important;
  transform: translateY(-2px) !important;
  filter: drop-shadow(0 30px 22px rgba(100,62,12,.25)) drop-shadow(0 8px 4px rgba(255,255,255,.18)) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer {
  margin-top: -2px !important;
  height: clamp(52px, 5.25vw, 76px) !important;
  background:
    linear-gradient(90deg, rgba(96,55,7,.16) 0%, rgba(255,244,196,.46) 18%, rgba(236,190,92,.78) 42%, rgba(179,111,22,.72) 72%, rgba(92,51,5,.20) 100%),
    linear-gradient(180deg, #f4d990 0%, #c78a28 48%, #a46413 100%) !important;
  box-shadow:
    inset 0 14px 22px rgba(255,255,255,.48),
    inset 0 -16px 22px rgba(83,45,5,.26),
    inset 16px 0 18px rgba(255,226,151,.16),
    inset -18px 0 22px rgba(76,43,6,.18),
    0 11px 14px rgba(94,58,10,.18) !important;
  border-top: 1px solid rgba(255,234,177,.70) !important;
  border-bottom: 1px solid rgba(117,69,12,.24) !important;
  overflow: visible !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer::before {
  content: '' !important;
  position: absolute !important;
  left: 5% !important;
  right: 5% !important;
  top: 4px !important;
  height: 42% !important;
  border-radius: 999px / 70% !important;
  background: radial-gradient(ellipse at center, rgba(255,255,255,.68) 0%, rgba(255,246,216,.30) 45%, rgba(255,255,255,0) 78%) !important;
  opacity: .78 !important;
  pointer-events: none !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer::after {
  content: '' !important;
  position: absolute !important;
  left: 10% !important;
  right: 10% !important;
  bottom: 3px !important;
  height: 13px !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse at center, rgba(81,46,6,.33) 0%, rgba(81,46,6,0) 72%) !important;
  opacity: .48 !important;
  pointer-events: none !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-1 {
  width: 100% !important;
  height: clamp(72px, 6.1vw, 98px) !important;
  clip-path: polygon(0 0, 100% 0, 94% 100%, 6% 100%) !important;
  border-radius: 58% 58% 18px 18px / 36px 36px 18px 18px !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-2 { width: 88% !important; clip-path: polygon(3% 0,97% 0,91% 100%,9% 100%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-3 { width: 76% !important; clip-path: polygon(5% 0,95% 0,88% 100%,12% 100%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-4 { width: 63% !important; clip-path: polygon(7% 0,93% 0,84% 100%,16% 100%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-5 { width: 50% !important; clip-path: polygon(10% 0,90% 0,78% 100%,22% 100%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-6 {
  width: 36% !important;
  height: clamp(54px, 4.8vw, 72px) !important;
  clip-path: polygon(14% 0,86% 0,70% 100%,30% 100%) !important;
  border-radius: 0 0 54% 54% / 0 0 28px 28px !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon {
  width: 62px !important;
  height: 62px !important;
  background: radial-gradient(circle at 34% 24%, #fff 0%, #fff 58%, #f4eee2 100%) !important;
  box-shadow: 0 12px 18px rgba(93,58,12,.16), inset 0 0 0 1px rgba(190,145,61,.13) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon .gch-template-icon,
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon .gch-icon-img {
  width: 36px !important;
  height: 36px !important;
}
@media (max-width: 1360px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-main {
    grid-template-columns: 175px minmax(390px,1.55fr) minmax(410px,1.65fr) 175px !important;
  }
  body.site-public #embudo.gch-embudo-section .gch-side-bracket { width: clamp(118px, 10vw, 190px) !important; }
  body.site-public #embudo.gch-embudo-section .gch-funnel-gold { max-width: 540px !important; }
}
@media (max-width: 1100px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket { display: none !important; }
}

/* === REFINADO FINAL EMBUDO: líneas extendidas y embudo más elegante === */
body.site-public #embudo.gch-embudo-section .gch-embudo-main {
  grid-template-columns: minmax(200px,.62fr) minmax(500px,1.72fr) minmax(470px,1.72fr) minmax(200px,.62fr) !important;
  gap: clamp(10px, 1vw, 18px) !important;
  align-items: center !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-side article {
  position: relative !important;
  z-index: 3 !important;
  background: linear-gradient(180deg, #fffdfa 0%, #fefbf5 100%) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.04) !important;
}

body.site-public #embudo.gch-embudo-section .gch-side-bracket {
  width: clamp(220px, 18vw, 300px) !important;
  height: 86px !important;
  z-index: 2 !important;
}

body.site-public #embudo.gch-embudo-section .gch-side-bracket::before {
  content: '' !important;
  position: absolute !important;
  inset: auto !important;
  background: none !important;
}

body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: '' !important;
  position: absolute !important;
  width: 8px !important;
  height: 8px !important;
  background: transparent !important;
  border-radius: 0 !important;
}

/* Objetivo izquierda */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% - 6px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 18px !important;
  border-top: 1px solid rgba(190,145,61,.62) !important;
  border-left: 1px solid rgba(190,145,61,.62) !important;
  border-top-left-radius: 10px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 56px !important;
  background: rgba(190,145,61,.62) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  left: -4px !important;
  top: 54px !important;
  border-left: 1px solid rgba(190,145,61,.62) !important;
  border-bottom: 1px solid rgba(190,145,61,.62) !important;
  transform: rotate(-45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 18px !important;
  border-bottom: 1px solid rgba(190,145,61,.62) !important;
  border-left: 1px solid rgba(190,145,61,.62) !important;
  border-bottom-left-radius: 10px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 56px !important;
  background: rgba(190,145,61,.62) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  right: 8px !important;
  bottom: -18px !important;
  width: 1px !important;
  height: 18px !important;
  background: rgba(190,145,61,.48) !important;
  border: 0 !important;
  transform: none !important;
}

/* Resultado derecha */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% - 6px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 18px !important;
  border-top: 1px solid rgba(190,145,61,.62) !important;
  border-right: 1px solid rgba(190,145,61,.62) !important;
  border-top-right-radius: 10px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  content: '' !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 56px !important;
  background: rgba(190,145,61,.62) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  right: -4px !important;
  top: 54px !important;
  border-right: 1px solid rgba(190,145,61,.62) !important;
  border-bottom: 1px solid rgba(190,145,61,.62) !important;
  transform: rotate(45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 18px !important;
  border-bottom: 1px solid rgba(190,145,61,.62) !important;
  border-right: 1px solid rgba(190,145,61,.62) !important;
  border-bottom-right-radius: 10px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  content: '' !important;
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 56px !important;
  background: rgba(190,145,61,.62) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  left: 8px !important;
  bottom: -18px !important;
  width: 1px !important;
  height: 18px !important;
  background: rgba(190,145,61,.48) !important;
  border: 0 !important;
  transform: none !important;
}

/* embudo más estético */
body.site-public #embudo.gch-embudo-section .gch-funnel-gold {
  max-width: 610px !important;
  padding-top: 6px !important;
  gap: 4px !important;
  filter: drop-shadow(0 20px 24px rgba(93,58,12,.20)) drop-shadow(0 6px 10px rgba(255,255,255,.18)) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer {
  position: relative !important;
  margin-top: -10px !important;
  border-radius: 999px/38px !important;
  background:
    radial-gradient(ellipse at 50% 8%, rgba(255,250,226,.92) 0%, rgba(255,244,205,.48) 32%, rgba(255,255,255,0) 34%) top center/100% 46% no-repeat,
    linear-gradient(90deg, #b7771a 0%, #f0cf83 14%, #f7dfa1 30%, #d6a547 47%, #f2cf80 61%, #be7d1f 100%) !important;
  box-shadow:
    inset 0 2px 0 rgba(255,250,228,.85),
    inset 0 -10px 14px rgba(127,72,11,.20),
    0 10px 14px rgba(90,52,10,.14) !important;
  overflow: visible !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer::before {
  left: 8% !important;
  right: 8% !important;
  top: -6px !important;
  height: 18px !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse at center, rgba(255,250,230,.95) 0%, rgba(255,239,194,.66) 35%, rgba(191,133,39,.26) 72%, rgba(120,73,11,0) 74%) !important;
  opacity: 1 !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer::after {
  left: 11% !important;
  right: 11% !important;
  bottom: -7px !important;
  height: 16px !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse at center, rgba(116,67,10,.22) 0%, rgba(116,67,10,.08) 45%, rgba(116,67,10,0) 72%) !important;
  opacity: .95 !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-1 {
  width: 100% !important;
  height: 94px !important;
  clip-path: polygon(2% 12%, 98% 12%, 92% 88%, 8% 88%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-2 { width: 88% !important; height: 78px !important; clip-path: polygon(3.5% 10%, 96.5% 10%, 90% 90%, 10% 90%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-3 { width: 74% !important; height: 70px !important; clip-path: polygon(5% 10%, 95% 10%, 87% 90%, 13% 90%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-4 { width: 59% !important; height: 62px !important; clip-path: polygon(7% 10%, 93% 10%, 84% 90%, 16% 90%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-5 { width: 45% !important; height: 54px !important; clip-path: polygon(10% 10%, 90% 10%, 79% 90%, 21% 90%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-6 {
  width: 29% !important;
  height: 48px !important;
  clip-path: polygon(16% 8%, 84% 8%, 70% 92%, 30% 92%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon {
  width: 58px !important;
  height: 58px !important;
  background: radial-gradient(circle at 34% 24%, #fff 0%, #fff 64%, #f3ede1 100%) !important;
  box-shadow: 0 8px 14px rgba(93,58,12,.18), inset 0 0 0 1px rgba(190,145,61,.15) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon .gch-template-icon,
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon .gch-icon-img {
  width: 32px !important;
  height: 32px !important;
}

@media (max-width: 1360px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-main {
    grid-template-columns: 175px minmax(440px,1.48fr) minmax(410px,1.58fr) 175px !important;
  }
  body.site-public #embudo.gch-embudo-section .gch-side-bracket {
    width: clamp(160px, 12vw, 220px) !important;
  }
}

/* === REVISIÓN FINAL SOLICITADA: embudo más premium y conectores que agrupen mejor === */
body.site-public #embudo.gch-embudo-section .gch-embudo-main {
  grid-template-columns: minmax(205px,.64fr) minmax(560px,1.82fr) minmax(520px,1.86fr) minmax(205px,.64fr) !important;
  gap: clamp(10px, .9vw, 16px) !important;
  align-items: center !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-side {
  position: relative !important;
  min-height: 470px !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-side article {
  max-width: 185px !important;
  min-height: 206px !important;
  margin: 0 auto !important;
  border: 1px solid rgba(201,160,84,.48) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #fffefb 0%, #fdf8ef 100%) !important;
  box-shadow: 0 18px 28px rgba(126,92,36,.06), inset 0 1px 0 rgba(255,255,255,.85) !important;
}

body.site-public #embudo.gch-embudo-section .gch-side-bracket {
  position: absolute !important;
  border: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  width: clamp(300px, 22vw, 380px) !important;
  height: 104px !important;
  background: none !important;
}

body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: '' !important;
  position: absolute !important;
}

/* izquierda */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% - 2px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 16px !important;
  background:
    linear-gradient(rgba(198,155,74,.72), rgba(198,155,74,.72)) 0 0 / calc(100% - 12px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.72), rgba(198,155,74,.72)) calc(100% - 12px) 0 / 1px calc(100% - 10px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  left: -1px !important;
  top: 0 !important;
  width: 1px !important;
  height: 58px !important;
  background: rgba(198,155,74,.72) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  right: 8px !important;
  bottom: 0 !important;
  width: 9px !important;
  height: 9px !important;
  border-right: 1px solid rgba(198,155,74,.88) !important;
  border-bottom: 1px solid rgba(198,155,74,.88) !important;
  transform: rotate(45deg) !important;
  background: transparent !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 16px !important;
  background:
    linear-gradient(rgba(198,155,74,.72), rgba(198,155,74,.72)) 0 100% / calc(100% - 12px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.72), rgba(198,155,74,.72)) calc(100% - 12px) 10px / 1px calc(100% - 10px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  left: -1px !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 58px !important;
  background: rgba(198,155,74,.72) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  right: 8px !important;
  top: 0 !important;
  width: 9px !important;
  height: 9px !important;
  border-right: 1px solid rgba(198,155,74,.88) !important;
  border-top: 1px solid rgba(198,155,74,.88) !important;
  transform: rotate(-45deg) !important;
  background: transparent !important;
}

/* derecha */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% - 2px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 16px !important;
  background:
    linear-gradient(rgba(198,155,74,.72), rgba(198,155,74,.72)) 12px 0 / calc(100% - 12px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.72), rgba(198,155,74,.72)) 12px 0 / 1px calc(100% - 10px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  right: -1px !important;
  top: 0 !important;
  width: 1px !important;
  height: 58px !important;
  background: rgba(198,155,74,.72) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  left: 8px !important;
  bottom: 0 !important;
  width: 9px !important;
  height: 9px !important;
  border-left: 1px solid rgba(198,155,74,.88) !important;
  border-bottom: 1px solid rgba(198,155,74,.88) !important;
  transform: rotate(-45deg) !important;
  background: transparent !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 16px !important;
  background:
    linear-gradient(rgba(198,155,74,.72), rgba(198,155,74,.72)) 12px 100% / calc(100% - 12px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.72), rgba(198,155,74,.72)) 12px 10px / 1px calc(100% - 10px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  right: -1px !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 58px !important;
  background: rgba(198,155,74,.72) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  left: 8px !important;
  top: 0 !important;
  width: 9px !important;
  height: 9px !important;
  border-left: 1px solid rgba(198,155,74,.88) !important;
  border-top: 1px solid rgba(198,155,74,.88) !important;
  transform: rotate(45deg) !important;
  background: transparent !important;
}

/* embudo más premium */
body.site-public #embudo.gch-embudo-section .gch-funnel-gold {
  max-width: 650px !important;
  gap: 6px !important;
  padding: 8px 0 10px !important;
  transform: translateY(-4px) !important;
  filter: drop-shadow(0 26px 22px rgba(109,69,15,.20)) drop-shadow(0 8px 12px rgba(255,255,255,.18)) !important;
}

body.site-public #embudo.gch-embudo-section .gch-funnel-layer {
  border-radius: 999px/42px !important;
  background:
    radial-gradient(ellipse at 50% 7%, rgba(255,249,223,.95) 0%, rgba(255,241,188,.70) 18%, rgba(255,255,255,0) 33%) top center/100% 44% no-repeat,
    linear-gradient(180deg, rgba(255,248,225,.74) 0%, rgba(255,234,178,.16) 22%, rgba(125,75,10,.10) 100%) top center/100% 100% no-repeat,
    linear-gradient(90deg, #ad6f17 0%, #f0cb72 12%, #f8e3a9 22%, #d39a34 40%, #f5d98f 56%, #e7be66 70%, #b17118 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,252,241,.92),
    inset 0 12px 14px rgba(255,249,221,.25),
    inset 0 -12px 16px rgba(121,71,10,.18),
    0 14px 18px rgba(97,58,11,.12) !important;
  border-top: 1px solid rgba(255,245,212,.86) !important;
  border-bottom: 1px solid rgba(160,101,20,.24) !important;
  margin-top: -12px !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer::before {
  left: 7% !important;
  right: 7% !important;
  top: -7px !important;
  height: 22px !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse at center, rgba(255,251,235,.98) 0%, rgba(251,236,191,.88) 30%, rgba(203,150,55,.30) 62%, rgba(132,82,14,0) 72%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer::after {
  left: 11% !important;
  right: 11% !important;
  bottom: -9px !important;
  height: 18px !important;
  border-radius: 50% !important;
  background: radial-gradient(ellipse at center, rgba(106,65,12,.22) 0%, rgba(106,65,12,.10) 36%, rgba(106,65,12,0) 72%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-1 {
  width: 100% !important;
  height: 102px !important;
  clip-path: polygon(2.5% 12%,97.5% 12%,91.8% 88%,8.2% 88%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-2 { width: 87.5% !important; height: 84px !important; clip-path: polygon(4% 11%,96% 11%,89.8% 89%,10.2% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-3 { width: 73.5% !important; height: 74px !important; clip-path: polygon(5.5% 11%,94.5% 11%,86.8% 89%,13.2% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-4 { width: 58.5% !important; height: 64px !important; clip-path: polygon(8% 11%,92% 11%,83% 89%,17% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-5 { width: 44.5% !important; height: 56px !important; clip-path: polygon(12% 11%,88% 11%,77% 89%,23% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-6 {
  width: 29.5% !important;
  height: 48px !important;
  clip-path: polygon(17% 10%,83% 10%,70% 90%,30% 90%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon {
  width: 60px !important;
  height: 60px !important;
  box-shadow: 0 10px 18px rgba(102,62,12,.16), inset 0 1px 0 rgba(255,255,255,.92), inset 0 0 0 1px rgba(196,151,69,.18) !important;
}

@media (max-width: 1400px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-main {
    grid-template-columns: 185px minmax(480px,1.62fr) minmax(440px,1.65fr) 185px !important;
  }
  body.site-public #embudo.gch-embudo-section .gch-side-bracket {
    width: clamp(210px, 16vw, 280px) !important;
  }
  body.site-public #embudo.gch-embudo-section .gch-funnel-gold {
    max-width: 590px !important;
  }
}

@media (max-width: 1100px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket { display: none !important; }
}

/* === AJUSTE FINO FINAL: más cercano a la maqueta del embudo === */
body.site-public #embudo.gch-embudo-section .gch-embudo-layout {
  max-width: 1740px !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-top {
  min-height: clamp(110px, 10vw, 144px) !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-heading .headline {
  font-size: clamp(58px, 5.7vw, 92px) !important;
  line-height: .98 !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-heading .sub {
  font-size: clamp(16px, 1.22vw, 24px) !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-main {
  grid-template-columns: minmax(215px,.68fr) minmax(600px,1.96fr) minmax(560px,1.94fr) minmax(215px,.68fr) !important;
  gap: 14px !important;
}

/* laterales */
body.site-public #embudo.gch-embudo-section .gch-embudo-side {
  min-height: 500px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-side article {
  width: 188px !important;
  min-height: 212px !important;
  padding: 28px 18px 24px !important;
}

body.site-public #embudo.gch-embudo-section .gch-side-bracket {
  width: clamp(340px, 24vw, 430px) !important;
  height: 118px !important;
}

/* bracket left around whole funnel */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 22px !important;
  background:
    linear-gradient(rgba(197,155,75,.80), rgba(197,155,75,.80)) 0 0 / calc(100% - 16px) 1px no-repeat,
    linear-gradient(rgba(197,155,75,.80), rgba(197,155,75,.80)) calc(100% - 16px) 0 / 1px calc(100% - 18px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  left: -1px !important;
  top: 0 !important;
  width: 1px !important;
  height: 62px !important;
  background: rgba(197,155,75,.80) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  right: 11px !important;
  bottom: -1px !important;
  width: 10px !important;
  height: 10px !important;
  border-right: 1px solid rgba(197,155,75,.92) !important;
  border-bottom: 1px solid rgba(197,155,75,.92) !important;
  transform: rotate(45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 22px !important;
  background:
    linear-gradient(rgba(197,155,75,.80), rgba(197,155,75,.80)) 0 100% / calc(100% - 16px) 1px no-repeat,
    linear-gradient(rgba(197,155,75,.80), rgba(197,155,75,.80)) calc(100% - 16px) 16px / 1px calc(100% - 16px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  left: -1px !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 62px !important;
  background: rgba(197,155,75,.80) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  right: 11px !important;
  top: -1px !important;
  width: 10px !important;
  height: 10px !important;
  border-right: 1px solid rgba(197,155,75,.92) !important;
  border-top: 1px solid rgba(197,155,75,.92) !important;
  transform: rotate(-45deg) !important;
}

/* bracket right around whole content */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 22px !important;
  background:
    linear-gradient(rgba(197,155,75,.80), rgba(197,155,75,.80)) 16px 0 / calc(100% - 16px) 1px no-repeat,
    linear-gradient(rgba(197,155,75,.80), rgba(197,155,75,.80)) 16px 0 / 1px calc(100% - 18px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  right: -1px !important;
  top: 0 !important;
  width: 1px !important;
  height: 62px !important;
  background: rgba(197,155,75,.80) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  left: 11px !important;
  bottom: -1px !important;
  width: 10px !important;
  height: 10px !important;
  border-left: 1px solid rgba(197,155,75,.92) !important;
  border-bottom: 1px solid rgba(197,155,75,.92) !important;
  transform: rotate(-45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 22px !important;
  background:
    linear-gradient(rgba(197,155,75,.80), rgba(197,155,75,.80)) 16px 100% / calc(100% - 16px) 1px no-repeat,
    linear-gradient(rgba(197,155,75,.80), rgba(197,155,75,.80)) 16px 16px / 1px calc(100% - 16px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  right: -1px !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 62px !important;
  background: rgba(197,155,75,.80) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  left: 11px !important;
  top: -1px !important;
  width: 10px !important;
  height: 10px !important;
  border-left: 1px solid rgba(197,155,75,.92) !important;
  border-top: 1px solid rgba(197,155,75,.92) !important;
  transform: rotate(45deg) !important;
}

/* embudo más elegante */
body.site-public #embudo.gch-embudo-section .gch-funnel-gold {
  max-width: 690px !important;
  gap: 7px !important;
  padding: 10px 0 12px !important;
  transform: translateY(-6px) !important;
  filter: drop-shadow(0 28px 24px rgba(97,61,13,.18)) drop-shadow(0 10px 10px rgba(255,248,224,.24)) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer {
  margin-top: -13px !important;
  border-radius: 999px/44px !important;
  background:
    radial-gradient(ellipse at 50% 6%, rgba(255,251,231,.98) 0%, rgba(255,241,193,.86) 22%, rgba(255,255,255,0) 35%) top center / 100% 44% no-repeat,
    linear-gradient(180deg, rgba(255,252,240,.34) 0%, rgba(255,236,188,.10) 100%) top center / 100% 100% no-repeat,
    linear-gradient(90deg, #a96812 0%, #e7ba5c 10%, #f7dfa0 22%, #d09027 38%, #f4d58a 52%, #ebc166 68%, #b37218 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,245,.96),
    inset 0 10px 12px rgba(255,252,230,.22),
    inset 0 -12px 18px rgba(121,72,11,.15),
    0 12px 18px rgba(101,61,12,.10) !important;
  border-top: 1px solid rgba(255,247,220,.92) !important;
  border-bottom: 1px solid rgba(161,102,20,.20) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer::before {
  left: 6% !important;
  right: 6% !important;
  top: -8px !important;
  height: 24px !important;
  background: radial-gradient(ellipse at center, rgba(255,252,238,1) 0%, rgba(248,230,181,.88) 28%, rgba(197,143,49,.36) 60%, rgba(130,82,15,0) 73%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer::after {
  left: 10% !important;
  right: 10% !important;
  bottom: -10px !important;
  height: 20px !important;
  background: radial-gradient(ellipse at center, rgba(108,67,12,.22) 0%, rgba(108,67,12,.08) 36%, rgba(108,67,12,0) 74%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-1 {
  width: 100% !important;
  height: 108px !important;
  clip-path: polygon(2.5% 13%,97.5% 13%,92% 88%,8% 88%) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-2 { width: 88% !important; height: 88px !important; clip-path: polygon(4% 11%,96% 11%,90% 89%,10% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-3 { width: 74.5% !important; height: 76px !important; clip-path: polygon(6% 11%,94% 11%,87% 89%,13% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-4 { width: 60% !important; height: 66px !important; clip-path: polygon(8.5% 11%,91.5% 11%,83% 89%,17% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-5 { width: 46% !important; height: 58px !important; clip-path: polygon(12% 11%,88% 11%,78% 89%,22% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer.layer-6 { width: 31% !important; height: 50px !important; clip-path: polygon(17% 11%,83% 11%,70% 89%,30% 89%) !important; }
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon {
  width: 64px !important;
  height: 64px !important;
  box-shadow: 0 12px 18px rgba(101,61,12,.17), inset 0 1px 0 rgba(255,255,255,.95), inset 0 0 0 1px rgba(194,149,69,.14) !important;
}
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon .gch-icon-img,
body.site-public #embudo.gch-embudo-section .gch-funnel-layer i.has-gch-svg-icon .gch-template-icon {
  width: 36px !important;
  height: 36px !important;
}

body.site-public #embudo.gch-embudo-section .gch-embudo-steps article {
  padding: 15px 0 !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-steps article:first-child { padding-top: 6px !important; }
body.site-public #embudo.gch-embudo-section .gch-embudo-steps h3 { font-size: clamp(24px, 1.9vw, 42px) !important; }
body.site-public #embudo.gch-embudo-section .gch-embudo-steps p { font-size: 14px !important; }

@media (max-width: 1450px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-main {
    grid-template-columns: 190px minmax(510px,1.76fr) minmax(465px,1.74fr) 190px !important;
  }
  body.site-public #embudo.gch-embudo-section .gch-side-bracket {
    width: clamp(240px, 17vw, 320px) !important;
  }
  body.site-public #embudo.gch-embudo-section .gch-funnel-gold { max-width: 620px !important; }
}

/* === AJUSTE FINAL SOLO DE FLECHAS/BORDES DEL EMBUDO === */
body.site-public #embudo.gch-embudo-section .gch-side-bracket {
  width: clamp(390px, 27vw, 500px) !important;
  height: 126px !important;
}

/* lado izquierdo */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% - 3px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 18px !important;
  background:
    linear-gradient(rgba(198,155,74,.82), rgba(198,155,74,.82)) 0 0 / calc(100% - 14px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.82), rgba(198,155,74,.82)) calc(100% - 14px) 0 / 1px calc(100% - 18px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  left: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 60px !important;
  background: rgba(198,155,74,.82) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  right: 10px !important;
  bottom: -1px !important;
  width: 10px !important;
  height: 10px !important;
  border-right: 1px solid rgba(198,155,74,.96) !important;
  border-bottom: 1px solid rgba(198,155,74,.96) !important;
  transform: rotate(45deg) !important;
  background: transparent !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 18px !important;
  background:
    linear-gradient(rgba(198,155,74,.82), rgba(198,155,74,.82)) 0 100% / calc(100% - 14px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.82), rgba(198,155,74,.82)) calc(100% - 14px) 18px / 1px calc(100% - 18px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  left: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 60px !important;
  background: rgba(198,155,74,.82) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  right: 10px !important;
  top: -1px !important;
  width: 10px !important;
  height: 10px !important;
  border-right: 1px solid rgba(198,155,74,.96) !important;
  border-top: 1px solid rgba(198,155,74,.96) !important;
  transform: rotate(-45deg) !important;
  background: transparent !important;
}

/* lado derecho */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% - 3px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 18px !important;
  background:
    linear-gradient(rgba(198,155,74,.82), rgba(198,155,74,.82)) 14px 0 / calc(100% - 14px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.82), rgba(198,155,74,.82)) 14px 0 / 1px calc(100% - 18px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  right: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 60px !important;
  background: rgba(198,155,74,.82) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  left: 10px !important;
  bottom: -1px !important;
  width: 10px !important;
  height: 10px !important;
  border-left: 1px solid rgba(198,155,74,.96) !important;
  border-bottom: 1px solid rgba(198,155,74,.96) !important;
  transform: rotate(-45deg) !important;
  background: transparent !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 18px !important;
  background:
    linear-gradient(rgba(198,155,74,.82), rgba(198,155,74,.82)) 14px 100% / calc(100% - 14px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.82), rgba(198,155,74,.82)) 14px 18px / 1px calc(100% - 18px) no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  right: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 60px !important;
  background: rgba(198,155,74,.82) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  left: 10px !important;
  top: -1px !important;
  width: 10px !important;
  height: 10px !important;
  border-left: 1px solid rgba(198,155,74,.96) !important;
  border-top: 1px solid rgba(198,155,74,.96) !important;
  transform: rotate(45deg) !important;
  background: transparent !important;
}

@media (max-width: 1450px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket {
    width: clamp(280px, 20vw, 360px) !important;
  }
}

/* === FIX FINAL: flechas de bordes limpias, sin invadir el contenido === */
body.site-public #embudo.gch-embudo-section .gch-side-bracket {
  width: clamp(300px, 22vw, 360px) !important;
  height: 128px !important;
  overflow: visible !important;
}

/* izquierda: solo bracket limpio + flecha en el borde exterior */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 22px !important;
  background:
    linear-gradient(rgba(198,155,74,.88), rgba(198,155,74,.88)) 0 0 / calc(100% - 16px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.88), rgba(198,155,74,.88)) calc(100% - 16px) 0 / 1px 108px no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  left: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 66px !important;
  background: rgba(198,155,74,.88) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  left: -4px !important;
  top: 60px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(198,155,74,.96) !important;
  border-bottom: 1px solid rgba(198,155,74,.96) !important;
  transform: rotate(-45deg) !important;
  background: transparent !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 22px !important;
  background:
    linear-gradient(rgba(198,155,74,.88), rgba(198,155,74,.88)) 0 100% / calc(100% - 16px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.88), rgba(198,155,74,.88)) calc(100% - 16px) 20px / 1px 108px no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  left: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 66px !important;
  background: rgba(198,155,74,.88) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  left: -4px !important;
  bottom: 60px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(198,155,74,.96) !important;
  border-top: 1px solid rgba(198,155,74,.96) !important;
  transform: rotate(45deg) !important;
  background: transparent !important;
}

/* derecha: solo bracket limpio + flecha en el borde exterior */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 22px !important;
  background:
    linear-gradient(rgba(198,155,74,.88), rgba(198,155,74,.88)) 16px 0 / calc(100% - 16px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.88), rgba(198,155,74,.88)) 16px 0 / 1px 108px no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  right: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 66px !important;
  background: rgba(198,155,74,.88) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  right: -4px !important;
  top: 60px !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 1px solid rgba(198,155,74,.96) !important;
  border-bottom: 1px solid rgba(198,155,74,.96) !important;
  transform: rotate(45deg) !important;
  background: transparent !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 22px !important;
  background:
    linear-gradient(rgba(198,155,74,.88), rgba(198,155,74,.88)) 16px 100% / calc(100% - 16px) 1px no-repeat,
    linear-gradient(rgba(198,155,74,.88), rgba(198,155,74,.88)) 16px 20px / 1px 108px no-repeat !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  right: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 66px !important;
  background: rgba(198,155,74,.88) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  right: -4px !important;
  bottom: 60px !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 1px solid rgba(198,155,74,.96) !important;
  border-top: 1px solid rgba(198,155,74,.96) !important;
  transform: rotate(-45deg) !important;
  background: transparent !important;
}

@media (max-width: 1450px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket {
    width: clamp(220px, 16vw, 290px) !important;
  }
}

/* === AJUSTE ULTRAFINO DE FLECHAS LATERALES SEGÚN MAQUETA === */
body.site-public #embudo.gch-embudo-section .gch-side-bracket {
  width: 170px !important;
  height: 92px !important;
  overflow: visible !important;
  background: none !important;
  border: 0 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: '' !important;
  position: absolute !important;
  background: none !important;
  border-radius: 0 !important;
}

/* IZQUIERDA TOP: línea horizontal hacia la derecha + bajada con flecha */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  left: calc(100% + 16px) !important;
  top: 56px !important;
  border-top: 1px solid rgba(202,162,89,.95) !important;
  border-left: 1px solid rgba(202,162,89,.95) !important;
  border-top-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  right: -4px !important;
  top: -4px !important;
  width: 7px !important;
  height: 7px !important;
  background: rgba(202,162,89,.95) !important;
  border-radius: 50% !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  left: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(202,162,89,.95) !important;
  border-bottom: 1px solid rgba(202,162,89,.95) !important;
  transform: rotate(-45deg) !important;
}

/* IZQUIERDA BOTTOM: baja desde tarjeta y sale hacia la derecha terminando en punto */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  left: calc(100% + 16px) !important;
  bottom: 58px !important;
  border-bottom: 1px solid rgba(202,162,89,.95) !important;
  border-left: 1px solid rgba(202,162,89,.95) !important;
  border-bottom-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  right: -4px !important;
  bottom: -4px !important;
  width: 7px !important;
  height: 7px !important;
  background: rgba(202,162,89,.95) !important;
  border-radius: 50% !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  display: none !important;
}

/* DERECHA TOP: viene desde el contenido y baja hacia la tarjeta */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  right: calc(100% + 16px) !important;
  top: 56px !important;
  border-top: 1px solid rgba(202,162,89,.95) !important;
  border-right: 1px solid rgba(202,162,89,.95) !important;
  border-top-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  left: -4px !important;
  top: -4px !important;
  width: 7px !important;
  height: 7px !important;
  background: rgba(202,162,89,.95) !important;
  border-radius: 50% !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  display: none !important;
}

/* DERECHA BOTTOM: baja desde tarjeta y sale a la izquierda terminando en punto */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  right: calc(100% + 16px) !important;
  bottom: 58px !important;
  border-bottom: 1px solid rgba(202,162,89,.95) !important;
  border-right: 1px solid rgba(202,162,89,.95) !important;
  border-bottom-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  left: -4px !important;
  bottom: -4px !important;
  width: 7px !important;
  height: 7px !important;
  background: rgba(202,162,89,.95) !important;
  border-radius: 50% !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  display: none !important;
}

@media (max-width: 1450px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket {
    width: 140px !important;
    height: 84px !important;
  }
}

/* === FIX DEFINITIVO: conectores laterales iguales a la maqueta === */
body.site-public #embudo.gch-embudo-section .gch-embudo-side {
  position: relative !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
  position: absolute !important;
  width: 165px !important;
  height: 78px !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
  z-index: 2 !important;
  pointer-events: none !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: '' !important;
  position: absolute !important;
  background: none !important;
}

/* lado izquierdo: entre tarjeta y embudo */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% + 18px) !important;
}

/* superior izquierdo: flecha hacia abajo y punto al extremo derecho */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 58px !important;
  border-top: 1px solid rgba(204,167,97,.95) !important;
  border-left: 1px solid rgba(204,167,97,.95) !important;
  border-top-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  right: -3px !important;
  top: -3px !important;
  width: 6px !important;
  height: 6px !important;
  background: rgba(204,167,97,.95) !important;
  border-radius: 50% !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  left: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(204,167,97,.95) !important;
  border-bottom: 1px solid rgba(204,167,97,.95) !important;
  transform: rotate(-45deg) !important;
}

/* inferior izquierdo: punto al extremo derecho */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 60px !important;
  border-bottom: 1px solid rgba(204,167,97,.95) !important;
  border-left: 1px solid rgba(204,167,97,.95) !important;
  border-bottom-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  right: -3px !important;
  bottom: -3px !important;
  width: 6px !important;
  height: 6px !important;
  background: rgba(204,167,97,.95) !important;
  border-radius: 50% !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  display: none !important;
}

/* lado derecho: entre contenido y tarjeta */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% + 18px) !important;
}

/* superior derecho: punto al extremo izquierdo y bajada hacia tarjeta */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 58px !important;
  border-top: 1px solid rgba(204,167,97,.95) !important;
  border-right: 1px solid rgba(204,167,97,.95) !important;
  border-top-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  left: -3px !important;
  top: -3px !important;
  width: 6px !important;
  height: 6px !important;
  background: rgba(204,167,97,.95) !important;
  border-radius: 50% !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  display: none !important;
}

/* inferior derecho: punto al extremo izquierdo */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 60px !important;
  border-bottom: 1px solid rgba(204,167,97,.95) !important;
  border-right: 1px solid rgba(204,167,97,.95) !important;
  border-bottom-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  left: -3px !important;
  bottom: -3px !important;
  width: 6px !important;
  height: 6px !important;
  background: rgba(204,167,97,.95) !important;
  border-radius: 50% !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  display: none !important;
}

@media (max-width: 1500px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
    width: 140px !important;
  }
}
@media (max-width: 1200px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
    display: none !important;
  }
}

/* === CORRECCIÓN SOLO DE LÍNEAS DEL EMBUDO === */
body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
  position: absolute !important;
  width: 172px !important;
  height: 74px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
  z-index: 2 !important;
  pointer-events: none !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: none !important;
}

/* izquierda */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% + 18px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 58px !important;
  border-top: 1px solid rgba(201,161,83,.96) !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-top-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  content: '' !important;
  position: absolute !important;
  left: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  background: transparent !important;
  transform: rotate(-45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 58px !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-bottom-left-radius: 8px !important;
}

/* derecha */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% + 18px) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 58px !important;
  border-top: 1px solid rgba(201,161,83,.96) !important;
  border-right: 1px solid rgba(201,161,83,.96) !important;
  border-top-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 58px !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  border-right: 1px solid rgba(201,161,83,.96) !important;
  border-bottom-right-radius: 8px !important;
}

@media (max-width: 1500px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
    width: 148px !important;
  }
}
@media (max-width: 1200px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
    display: none !important;
  }
}

/* === ÚLTIMO AJUSTE: SOLO LAS LÍNEAS QUE ENVUELVEN EL EMBUDO === */
body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
  position: absolute !important;
  background: transparent !important;
  border-radius: 0 !important;
  overflow: visible !important;
  pointer-events: none !important;
  z-index: 2 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: '' !important;
  position: absolute !important;
  background: transparent !important;
}

/* IZQUIERDA: líneas grandes que abrazan el embudo */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% + 18px) !important;
  width: 520px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 28px !important;
  height: 126px !important;
  border-top: 1px solid rgba(203,165,92,.96) !important;
  border-left: 1px solid rgba(203,165,92,.96) !important;
  border-top-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  right: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(203,165,92,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  left: -4px !important;
  top: 62px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(203,165,92,.96) !important;
  border-bottom: 1px solid rgba(203,165,92,.96) !important;
  transform: rotate(-45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 28px !important;
  height: 126px !important;
  border-bottom: 1px solid rgba(203,165,92,.96) !important;
  border-left: 1px solid rgba(203,165,92,.96) !important;
  border-bottom-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  right: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(203,165,92,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  content: none !important;
}

/* DERECHA: líneas grandes que abrazan la columna de pasos */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% + 18px) !important;
  width: 470px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 28px !important;
  height: 126px !important;
  border-top: 1px solid rgba(203,165,92,.96) !important;
  border-right: 1px solid rgba(203,165,92,.96) !important;
  border-top-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  left: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(203,165,92,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  right: -4px !important;
  top: 62px !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 1px solid rgba(203,165,92,.96) !important;
  border-bottom: 1px solid rgba(203,165,92,.96) !important;
  transform: rotate(45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 28px !important;
  height: 126px !important;
  border-bottom: 1px solid rgba(203,165,92,.96) !important;
  border-right: 1px solid rgba(203,165,92,.96) !important;
  border-bottom-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  left: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(203,165,92,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  content: none !important;
}

@media (max-width: 1500px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket { width: 430px !important; }
  body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket { width: 390px !important; }
}
@media (max-width: 1200px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
    display: none !important;
  }
}

/* === MASTER FIX: líneas envolventes del embudo exactamente como bracket superior/inferior === */
body.site-public #embudo.gch-embudo-section .gch-embudo-side { position: relative !important; }

/* reset total de conectores previos */
body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
  position: absolute !important;
  display: block !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  pointer-events: none !important;
  z-index: 2 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: none !important;
}

/* ===== LADO IZQUIERDO: envuelve TODO el embudo ===== */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket { 
  left: calc(100% + 18px) !important; 
  width: 515px !important; 
}
/* superior: vertical izquierda con flecha abajo + horizontal larga + vertical derecha corta */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 28px !important;
  height: 126px !important;
  border-top: 1px solid rgba(201,161,83,.96) !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-top-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  content: '' !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(201,161,83,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  content: '' !important;
  position: absolute !important;
  left: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  transform: rotate(-45deg) !important;
  background: transparent !important;
}
/* inferior: vertical izquierda + horizontal larga + vertical derecha corta */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 28px !important;
  height: 126px !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-bottom-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  content: '' !important;
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(201,161,83,.96) !important;
}

/* ===== LADO DERECHO: envuelve TODA la columna de pasos ===== */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% + 18px) !important;
  width: 470px !important;
}
/* superior: vertical izquierda corta + horizontal larga + vertical derecha con flecha abajo */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 28px !important;
  height: 126px !important;
  border-top: 1px solid rgba(201,161,83,.96) !important;
  border-right: 1px solid rgba(201,161,83,.96) !important;
  border-top-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(201,161,83,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  content: '' !important;
  position: absolute !important;
  right: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 1px solid rgba(201,161,83,.96) !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  transform: rotate(45deg) !important;
  background: transparent !important;
}
/* inferior: vertical izquierda corta + horizontal larga + vertical derecha corta */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 28px !important;
  height: 126px !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  border-right: 1px solid rgba(201,161,83,.96) !important;
  border-bottom-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(201,161,83,.96) !important;
}

/* No mostrar líneas extra en responsive estrecho */
@media (max-width: 1500px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket { width: 445px !important; }
  body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket { width: 405px !important; }
}
@media (max-width: 1200px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom { display: none !important; }
}

/* === AJUSTE FINAL DE LÍNEAS: sin canibalizarse, como en la maqueta === */
body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
  position: absolute !important;
  display: block !important;
  background: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  pointer-events: none !important;
  z-index: 2 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: '' !important;
  position: absolute !important;
  background: none !important;
}

/* izquierda: sale del cuadro objetivo y bordea el embudo */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% + 18px) !important;
  width: 515px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 30px !important;
  height: 122px !important;
  border-top: 1px solid rgba(201,161,83,.96) !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-top-left-radius: 8px !important;
}
/* flecha única del lado izquierdo superior */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  left: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  transform: rotate(-45deg) !important;
  background: transparent !important;
}
/* vertical corta al final, junto al embudo */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  right: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(201,161,83,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 30px !important;
  height: 122px !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  border-left: 1px solid rgba(201,161,83,.96) !important;
  border-bottom-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  right: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 108px !important;
  background: rgba(201,161,83,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  content: none !important;
}

/* derecha: sale de la caja de contenido y llega al cuadro resultado, SIN línea interna extra */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% + 18px) !important;
  width: 470px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 30px !important;
  height: 122px !important;
  border-top: 1px solid rgba(201,161,83,.96) !important;
  border-right: 1px solid rgba(201,161,83,.96) !important;
  border-top-right-radius: 8px !important;
}
/* flecha única del lado derecho superior */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  right: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 1px solid rgba(201,161,83,.96) !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  transform: rotate(45deg) !important;
  background: transparent !important;
}
/* sin línea vertical interna extra en el inicio */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  content: none !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 30px !important;
  height: 122px !important;
  border-bottom: 1px solid rgba(201,161,83,.96) !important;
  border-right: 1px solid rgba(201,161,83,.96) !important;
  border-bottom-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before,
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  content: none !important;
}

@media (max-width: 1500px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket { width: 440px !important; }
  body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket { width: 400px !important; }
}
@media (max-width: 1200px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom { display: none !important; }
}


/* === SOLICITADO: quitar líneas/flechas laterales del embudo === */
body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* === LÍNEAS DEL EMBUDO REHECHAS LIMPIAS Y COMO LA MAQUETA === */
body.site-public #embudo.gch-embudo-section .gch-embudo-side { position: relative !important; }

body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: absolute !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  pointer-events: none !important;
  z-index: 2 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  content: '' !important;
  position: absolute !important;
  display: block !important;
  background: transparent !important;
}

/* izquierdo */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket {
  left: calc(100% + 18px) !important;
  width: 170px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top {
  top: 58px !important;
  height: 62px !important;
  border-top: 1px solid rgba(198,156,82,.96) !important;
  border-left: 1px solid rgba(198,156,82,.96) !important;
  border-top-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::before {
  right: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 62px !important;
  background: rgba(198,156,82,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after {
  left: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(198,156,82,.96) !important;
  border-bottom: 1px solid rgba(198,156,82,.96) !important;
  transform: rotate(-45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom {
  bottom: 58px !important;
  height: 62px !important;
  border-bottom: 1px solid rgba(198,156,82,.96) !important;
  border-left: 1px solid rgba(198,156,82,.96) !important;
  border-bottom-left-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::before {
  right: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 62px !important;
  background: rgba(198,156,82,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom::after {
  content: none !important;
}

/* derecho */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
  right: calc(100% + 18px) !important;
  width: 170px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top {
  top: 58px !important;
  height: 62px !important;
  border-top: 1px solid rgba(198,156,82,.96) !important;
  border-right: 1px solid rgba(198,156,82,.96) !important;
  border-top-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::before {
  left: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 62px !important;
  background: rgba(198,156,82,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after {
  left: -4px !important;
  bottom: -4px !important;
  width: 8px !important;
  height: 8px !important;
  border-left: 1px solid rgba(198,156,82,.96) !important;
  border-bottom: 1px solid rgba(198,156,82,.96) !important;
  transform: rotate(-45deg) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom {
  bottom: 58px !important;
  height: 62px !important;
  border-bottom: 1px solid rgba(198,156,82,.96) !important;
  border-right: 1px solid rgba(198,156,82,.96) !important;
  border-bottom-right-radius: 8px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::before {
  left: 0 !important;
  bottom: 0 !important;
  width: 1px !important;
  height: 62px !important;
  background: rgba(198,156,82,.96) !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom::after {
  content: none !important;
}

@media (max-width: 1500px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket {
    width: 150px !important;
  }
}
@media (max-width: 1200px) {
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
    display: none !important;
  }
}

/* === CORRECCIÓN FINAL SOLICITADA: líneas en L, saliendo del contenedor, una sola flecha === */
body.site-public #embudo.gch-embudo-section .gch-embudo-side{
  position: relative !important;
}

/* reset absoluto solo para estas líneas */
body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  position:absolute !important;
  background:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  pointer-events:none !important;
  z-index:3 !important;
}
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after{
  content:none !important;
}

/* línea izquierda */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket{
  left:calc(100% + 10px) !important;
  width:160px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top{
  top:56px !important;
  height:58px !important;
  border-top:1px solid rgba(199,158,84,.96) !important;
  border-left:1px solid rgba(199,158,84,.96) !important;
  border-top-left-radius:8px !important;
}
/* flecha única hacia abajo */
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.top::after{
  content:'' !important;
  position:absolute !important;
  left:-4px !important;
  bottom:-4px !important;
  width:8px !important;
  height:8px !important;
  border-left:1px solid rgba(199,158,84,.96) !important;
  border-bottom:1px solid rgba(199,158,84,.96) !important;
  transform:rotate(-45deg) !important;
  background:transparent !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket.bottom{
  bottom:56px !important;
  height:58px !important;
  border-bottom:1px solid rgba(199,158,84,.96) !important;
  border-left:1px solid rgba(199,158,84,.96) !important;
  border-bottom-left-radius:8px !important;
}

/* línea derecha */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket{
  right:calc(100% + 10px) !important;
  width:160px !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top{
  top:56px !important;
  height:58px !important;
  border-top:1px solid rgba(199,158,84,.96) !important;
  border-right:1px solid rgba(199,158,84,.96) !important;
  border-top-right-radius:8px !important;
}
/* flecha única hacia abajo */
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.top::after{
  content:'' !important;
  position:absolute !important;
  right:-4px !important;
  bottom:-4px !important;
  width:8px !important;
  height:8px !important;
  border-right:1px solid rgba(199,158,84,.96) !important;
  border-bottom:1px solid rgba(199,158,84,.96) !important;
  transform:rotate(45deg) !important;
  background:transparent !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket.bottom{
  bottom:56px !important;
  height:58px !important;
  border-bottom:1px solid rgba(199,158,84,.96) !important;
  border-right:1px solid rgba(199,158,84,.96) !important;
  border-bottom-right-radius:8px !important;
}

@media (max-width:1500px){
  body.site-public #embudo.gch-embudo-section .gch-embudo-objetivo .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-embudo-resultado .gch-side-bracket{
    width:145px !important;
  }
}
@media (max-width:1200px){
  body.site-public #embudo.gch-embudo-section .gch-side-bracket,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
  body.site-public #embudo.gch-embudo-section .gch-side-bracket::after{
    display:none !important;
    content:none !important;
  }
}

/* === SOLICITADO: quitar definitivamente las líneas/flechas laterales del embudo === */
body.site-public #embudo.gch-embudo-section .gch-side-bracket,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.top,
body.site-public #embudo.gch-embudo-section .gch-side-bracket.bottom,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::before,
body.site-public #embudo.gch-embudo-section .gch-side-bracket::after {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  content: none !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* === FIX FINAL: evitar que PROPOSAL se monte sobre la línea === */
body.site-public #embudo.gch-embudo-section .gch-embudo-steps {
  row-gap: 0 !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-steps article {
  grid-template-columns: 62px 200px minmax(260px, 1fr) !important;
  column-gap: 14px !important;
  align-items: center !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-steps h3 {
  padding: 0 22px 0 6px !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
}
body.site-public #embudo.gch-embudo-section .gch-embudo-steps p {
  padding-left: 24px !important;
}

@media (max-width: 1450px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-steps article {
    grid-template-columns: 58px 180px minmax(220px, 1fr) !important;
    column-gap: 12px !important;
  }
  body.site-public #embudo.gch-embudo-section .gch-embudo-steps h3 {
    font-size: clamp(22px, 1.7vw, 34px) !important;
  }
}

@media (max-width: 1100px) {
  body.site-public #embudo.gch-embudo-section .gch-embudo-steps article {
    grid-template-columns: 58px 160px minmax(200px, 1fr) !important;
  }
}

/* === LOGOS REALES EN TRANSFORMAMOS INSTITUCIONES / EXPERIENCIA QUE GENERA CONFIANZA === */
.sobre-footer-adaptable {
  padding: 0 !important;
}
.sobre-footer-strip {
  width: 100%;
  border-top: 1px solid rgba(199,162,92,.28);
  background: linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,.88));
  padding: 0;
}
.sobre-footer-strip img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 900px) {
  .sobre-footer-strip {
    overflow-x: auto;
  }
  .sobre-footer-strip img {
    min-width: 980px;
  }
}

/* === TIRA DE LOGOS NEGRA EN SECCIÓN SOBRE / TRANSFORMO INSTITUCIONES === */
.sobre-footer-adaptable {
  padding-top: 18px !important;
}
.sobre-footer-strip.black-trust-strip {
  width: 100%;
  background: #000;
  border-radius: 0;
  overflow: hidden;
  border-top: 0;
  box-shadow: 0 -1px 0 rgba(199,162,92,.12);
}
.sobre-footer-strip.black-trust-strip img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 900px) {
  .sobre-footer-strip.black-trust-strip {
    overflow-x: auto;
  }
  .sobre-footer-strip.black-trust-strip img {
    min-width: 980px;
  }
}


/* =========================================================
   PARCHE FINAL - CONFIANZA + PROBLEMAS + SOLUCIONES
   Full width, iconos PNG individuales y logos reales.
   ========================================================= */
html body.site-public main.site-stage[data-screen-root] > section.face#confianza,
html body.site-public main.site-stage[data-screen-root] > section.face#problemas,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#confianza,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#problemas {
  width: 100% !important;
  max-width: none !important;
  padding-left: clamp(28px, 3.4vw, 52px) !important;
  padding-right: clamp(28px, 3.4vw, 52px) !important;
  padding-top: clamp(100px, 8vw, 126px) !important;
  padding-bottom: clamp(50px, 5vw, 72px) !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 0% 50%, rgba(196,150,63,.07) 0, rgba(196,150,63,0) 31%),
    radial-gradient(circle at 100% 50%, rgba(196,150,63,.07) 0, rgba(196,150,63,0) 31%),
    linear-gradient(180deg, #fffdf9 0%, #ffffff 100%) !important;
}

html body.site-public main.site-stage[data-screen-root] > section.face#confianza::before,
html body.site-public main.site-stage[data-screen-root] > section.face#problemas::before,
html body.site-public main.site-stage[data-screen-root] > section.face#confianza::after,
html body.site-public main.site-stage[data-screen-root] > section.face#problemas::after {
  display: none !important;
}

.gc-trust-section,
.gc-problems-section {
  position: relative !important;
  color: #111 !important;
}

.gc-trust-section::before,
.gc-trust-section::after,
.gc-problems-section::before,
.gc-problems-section::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  width: 360px !important;
  height: 260px !important;
  display: block !important;
  opacity: .7 !important;
  pointer-events: none !important;
  border-radius: 0 !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  z-index: 0 !important;
}

.gc-trust-section::before,
.gc-problems-section::before {
  left: -42px !important;
  transform: scaleX(-1) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 300'%3E%3Cg fill='none' stroke='%23dfc890' stroke-width='1.2'%3E%3Cpath d='M0 95C120 5 265 2 420 28'/%3E%3Cpath d='M0 112C123 25 268 20 420 45'/%3E%3Cpath d='M0 129C126 45 270 39 420 62'/%3E%3Cpath d='M0 146C130 65 274 58 420 79'/%3E%3Cpath d='M0 163C134 85 278 77 420 96'/%3E%3Cpath d='M0 180C137 105 282 96 420 113'/%3E%3Cpath d='M0 197C141 126 287 116 420 130'/%3E%3C/g%3E%3C/svg%3E") !important;
}

.gc-trust-section::after,
.gc-problems-section::after {
  right: -42px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 300'%3E%3Cg fill='none' stroke='%23dfc890' stroke-width='1.2'%3E%3Cpath d='M0 95C120 5 265 2 420 28'/%3E%3Cpath d='M0 112C123 25 268 20 420 45'/%3E%3Cpath d='M0 129C126 45 270 39 420 62'/%3E%3Cpath d='M0 146C130 65 274 58 420 79'/%3E%3Cpath d='M0 163C134 85 278 77 420 96'/%3E%3Cpath d='M0 180C137 105 282 96 420 113'/%3E%3Cpath d='M0 197C141 126 287 116 420 130'/%3E%3C/g%3E%3C/svg%3E") !important;
}

html body.site-public main.site-stage[data-screen-root] > section.face#confianza .gc-trust-wrap,
html body.site-public main.site-stage[data-screen-root] > section.face#problemas .gc-problems-wrap,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#confianza .gc-trust-wrap,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#problemas .gc-problems-wrap {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  position: relative !important;
  z-index: 2 !important;
  gap: 0 !important;
  align-content: start !important;
  overflow: visible !important;
}

/* CONFIANZA INMEDIATA */
.gc-trust-head {
  width: min(920px, 100%) !important;
  margin: 0 auto 28px !important;
  text-align: center !important;
}

.gc-trust-kicker,
.gc-trust-brands-title,
.gc-problems-kicker {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  margin: 0 0 18px !important;
  color: #bb8731 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
}

.gc-trust-kicker span,
.gc-trust-brands-title span,
.gc-problems-kicker span {
  display: block !important;
  width: 52px !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(187,135,49,0), rgba(187,135,49,.9), rgba(187,135,49,0)) !important;
}

.gc-trust-title,
.gc-problems-title {
  margin: 0 !important;
  color: #0e0e0e !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(46px, 5vw, 74px) !important;
  line-height: .98 !important;
  font-weight: 400 !important;
  letter-spacing: -.045em !important;
}

.gc-trust-sub,
.gc-problems-sub {
  max-width: 800px !important;
  margin: 17px auto 0 !important;
  color: #3c3c3c !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
  text-align: center !important;
}

.gc-trust-divider {
  display: block !important;
  position: relative !important;
  width: 230px !important;
  height: 22px !important;
  margin: 18px auto 0 !important;
  background: radial-gradient(circle, #bb8731 0 3px, transparent 4px) center 8px / auto no-repeat !important;
}
.gc-trust-divider::before,
.gc-trust-divider::after {
  content: "" !important;
  position: absolute !important;
  top: 10px !important;
  width: calc(50% - 14px) !important;
  height: 1px !important;
  background: rgba(187,135,49,.45) !important;
}
.gc-trust-divider::before { left: 0 !important; }
.gc-trust-divider::after { right: 0 !important; }

.gc-trust-diff-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: clamp(14px, 1.4vw, 20px) !important;
  width: 100% !important;
  margin: 0 0 24px !important;
}

.gc-trust-card {
  min-height: 222px !important;
  padding: 22px 20px 18px !important;
  text-align: center !important;
  border: 1px solid rgba(26,26,26,.06) !important;
  border-radius: 7px !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 12px 32px rgba(31,24,14,.08) !important;
}

.gc-trust-icon,
.gc-stat-icon {
  width: 76px !important;
  height: 76px !important;
  margin: 0 auto 16px !important;
  border-radius: 50% !important;
  border: 1.4px solid rgba(187,135,49,.52) !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(255,255,255,.96) !important;
}

.gc-trust-icon img,
.gc-stat-icon img {
  width: 42px !important;
  height: 42px !important;
  object-fit: contain !important;
  display: block !important;
  filter: none !important;
}

.gc-trust-card h3 {
  margin: 0 !important;
  color: #111 !important;
  font-family: Inter, Montserrat, Arial, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  letter-spacing: .01em !important;
  text-transform: uppercase !important;
}

.gc-card-line {
  display: block !important;
  width: 34px !important;
  height: 1px !important;
  margin: 12px auto 12px !important;
  background: rgba(187,135,49,.75) !important;
}

.gc-trust-card p {
  margin: 0 auto !important;
  max-width: 215px !important;
  color: #333 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

.gc-trust-brands {
  width: 100% !important;
  margin: 0 0 18px !important;
  text-align: center !important;
}
.gc-trust-brands-title {
  display: flex !important;
  margin: 0 auto 10px !important;
}
.gc-trust-logo-strip {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}

.gc-stats-strip {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  width: 100% !important;
  border: 1px solid rgba(187,135,49,.16) !important;
  border-radius: 7px !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 8px 22px rgba(31,24,14,.05) !important;
  overflow: hidden !important;
}
.gc-stats-strip article {
  min-height: 125px !important;
  padding: 16px 16px 14px !important;
  display: grid !important;
  grid-template-columns: 78px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: center !important;
  text-align: left !important;
  border-right: 1px solid rgba(187,135,49,.14) !important;
}
.gc-stats-strip article:last-child { border-right: 0 !important; }
.gc-stat-icon { width: 62px !important; height: 62px !important; margin: 0 !important; }
.gc-stat-icon img { width: 34px !important; height: 34px !important; }
.gc-stat-copy { display: grid !important; gap: 4px !important; }
.gc-stat-copy b {
  color: #111 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 34px !important;
  line-height: .85 !important;
  font-weight: 400 !important;
}
.gc-stat-copy strong {
  color: #111 !important;
  font-size: 11px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}
.gc-stat-copy span {
  color: #343434 !important;
  font-size: 11px !important;
  line-height: 1.42 !important;
}

/* PROBLEMAS QUE RESOLVEMOS */
.gc-problems-head {
  width: min(960px, 100%) !important;
  margin: 0 auto 26px !important;
  text-align: center !important;
}
.gc-problems-title-line {
  display: block !important;
  width: 64px !important;
  height: 2px !important;
  margin: 17px auto 13px !important;
  background: #bd8730 !important;
}
.gc-problems-sub { margin-top: 0 !important; }

.gc-problems-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  width: 100% !important;
  gap: 0 !important;
  margin: 0 !important;
}
.gc-problem-card {
  position: relative !important;
  min-height: 420px !important;
  padding: 0 clamp(14px, 1.5vw, 24px) !important;
  text-align: center !important;
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  border-right: 1px solid rgba(189,135,48,.26) !important;
  background: transparent !important;
  box-shadow: none !important;
}
.gc-problem-card:last-child { border-right: 0 !important; }
.gc-problem-number {
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  border: 1.3px solid rgba(189,135,48,.62) !important;
  display: grid !important;
  place-items: center !important;
  color: #bd8730 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  margin: 0 0 13px !important;
}
.gc-problem-icon {
  width: 74px !important;
  height: 74px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  border: 1.4px solid rgba(189,135,48,.48) !important;
  background: rgba(255,255,255,.85) !important;
  margin: 0 0 15px !important;
}
.gc-problem-icon img {
  width: 42px !important;
  height: 42px !important;
  display: block !important;
  object-fit: contain !important;
  filter: none !important;
}
.gc-problem-card h3 {
  min-height: 42px !important;
  margin: 0 !important;
  color: #141414 !important;
  font-family: Inter, Montserrat, Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.18 !important;
  letter-spacing: .055em !important;
  font-weight: 900 !important;
}
.gc-problem-line {
  display: block !important;
  width: 31px !important;
  height: 1px !important;
  margin: 13px auto 13px !important;
  background: #bd8730 !important;
}
.gc-problem-card > p {
  min-height: 82px !important;
  max-width: 185px !important;
  margin: 0 auto !important;
  color: #1f1f1f !important;
  font-size: 12px !important;
  line-height: 1.52 !important;
}
.gc-problem-arrow {
  width: 14px !important;
  height: 14px !important;
  margin: 10px auto 14px !important;
  border-right: 1.5px solid #bd8730 !important;
  border-bottom: 1.5px solid #bd8730 !important;
  transform: rotate(45deg) !important;
}
.gc-problem-result {
  width: 100% !important;
  min-height: 96px !important;
  padding: 15px 16px 13px !important;
  border-radius: 4px !important;
  background: #f5f2ec !important;
  text-align: left !important;
}
.gc-problem-result strong {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 0 9px !important;
  color: #a67628 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .11em !important;
}
.gc-problem-result strong span {
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  border: 1.2px solid #bd8730 !important;
  display: grid !important;
  place-items: center !important;
  color: #bd8730 !important;
  font-size: 12px !important;
  line-height: 1 !important;
}
.gc-problem-result p {
  margin: 0 0 0 28px !important;
  color: #151515 !important;
  font-size: 10.5px !important;
  line-height: 1.48 !important;
}
.gc-problems-bottom {
  width: 100% !important;
  min-height: 56px !important;
  margin: 20px 0 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 20px !important;
  color: #151515 !important;
  text-align: center !important;
}
.gc-problems-bottom img {
  width: 28px !important;
  height: 28px !important;
  object-fit: contain !important;
  filter: none !important;
  flex: 0 0 28px !important;
}
.gc-problems-bottom strong {
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
.gc-problems-bottom span {
  width: 1px !important;
  height: 18px !important;
  background: rgba(189,135,48,.55) !important;
  flex: 0 0 1px !important;
}
.gc-problems-bottom p {
  margin: 0 !important;
  color: #2e2e2e !important;
  font-size: 12.5px !important;
  line-height: 1.4 !important;
}

/* SOLUCIONES: iconos blancos dentro de círculos */
body.site-public .face#soluciones .solucion-icon-real i.has-gch-svg-icon,
body.site-public .face#soluciones .solucion-icon-real i {
  background: linear-gradient(180deg, #d19834 0%, #b36f16 100%) !important;
  border-radius: 50% !important;
  color: #fff !important;
}
body.site-public .face#soluciones .solucion-icon-real .gch-template-icon,
body.site-public .face#soluciones .solucion-icon-real .gch-icon-img,
body.site-public .face#soluciones .solucion-icon-real img {
  width: 36px !important;
  height: 36px !important;
  max-width: 36px !important;
  max-height: 36px !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
}

@media (max-width: 1220px) {
  .gc-trust-diff-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .gc-trust-card:last-child { grid-column: 1 / -1 !important; max-width: 420px !important; width: 100% !important; margin: 0 auto !important; }
  .gc-stats-strip { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .gc-stats-strip article { border-bottom: 1px solid rgba(187,135,49,.14) !important; }
  .gc-problems-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; row-gap: 28px !important; }
  .gc-problem-card:nth-child(3n) { border-right: 0 !important; }
}

@media (max-width: 760px) {
  html body.site-public main.site-stage[data-screen-root] > section.face#confianza,
  html body.site-public main.site-stage[data-screen-root] > section.face#problemas,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#confianza,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#problemas {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  .gc-trust-section::before,
  .gc-trust-section::after,
  .gc-problems-section::before,
  .gc-problems-section::after { display: none !important; }
  .gc-trust-kicker,
  .gc-trust-brands-title,
  .gc-problems-kicker { font-size: 10px !important; letter-spacing: .16em !important; gap: 9px !important; }
  .gc-trust-kicker span,
  .gc-trust-brands-title span,
  .gc-problems-kicker span { width: 26px !important; }
  .gc-trust-title,
  .gc-problems-title { font-size: clamp(38px, 10vw, 54px) !important; }
  .gc-trust-sub,
  .gc-problems-sub { font-size: 15px !important; }
  .gc-trust-diff-grid,
  .gc-stats-strip,
  .gc-problems-grid { grid-template-columns: 1fr !important; }
  .gc-stats-strip article { grid-template-columns: 70px minmax(0,1fr) !important; }
  .gc-problem-card,
  .gc-problem-card:nth-child(3n) { border-right: 0 !important; border-bottom: 1px solid rgba(189,135,48,.20) !important; padding-bottom: 26px !important; }
  .gc-problem-card:last-child { border-bottom: 0 !important; }
  .gc-problems-bottom { flex-wrap: wrap !important; gap: 12px !important; }
  .gc-problems-bottom strong { white-space: normal !important; }
}

/* ===== PARCHE SERVICIOS ESTRATÉGICOS PREMIUM ===== */
.gc-services-premium-section {
  position: relative !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 0% 100%, rgba(209,172,103,.10) 0, rgba(209,172,103,0) 30%),
    radial-gradient(circle at 100% 0%, rgba(209,172,103,.10) 0, rgba(209,172,103,0) 30%),
    linear-gradient(180deg, #fdfcf9 0%, #ffffff 100%) !important;
}

.gc-services-premium-section::before,
.gc-services-premium-section::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  pointer-events: none;
  opacity: .58;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 0;
}

.gc-services-premium-section::before {
  left: -120px;
  bottom: -140px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 420'%3E%3Cg fill='none' stroke='%23e6d3ad' stroke-width='1.35'%3E%3Cpath d='M5 280C100 190 175 170 280 170c48 0 89-6 135-24'/%3E%3Cpath d='M5 300C105 205 178 185 282 185c49 0 87-5 133-20'/%3E%3Cpath d='M5 320C110 221 182 201 286 201c48 0 84-5 129-18'/%3E%3Cpath d='M5 340C113 240 189 219 292 219c44 0 82-4 123-14'/%3E%3Cpath d='M5 360C120 259 197 237 300 237c42 0 77-4 115-12'/%3E%3Cpath d='M5 380C128 279 208 257 310 257c37 0 68-3 105-10'/%3E%3C/g%3E%3C/svg%3E");
}

.gc-services-premium-section::after {
  right: -140px;
  top: -170px;
  transform: rotate(180deg);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 420'%3E%3Cg fill='none' stroke='%23e6d3ad' stroke-width='1.35'%3E%3Cpath d='M5 280C100 190 175 170 280 170c48 0 89-6 135-24'/%3E%3Cpath d='M5 300C105 205 178 185 282 185c49 0 87-5 133-20'/%3E%3Cpath d='M5 320C110 221 182 201 286 201c48 0 84-5 129-18'/%3E%3Cpath d='M5 340C113 240 189 219 292 219c44 0 82-4 123-14'/%3E%3Cpath d='M5 360C120 259 197 237 300 237c42 0 77-4 115-12'/%3E%3Cpath d='M5 380C128 279 208 257 310 257c37 0 68-3 105-10'/%3E%3C/g%3E%3C/svg%3E");
}

html body.site-public main.site-stage[data-screen-root] > section.face#servicios .gc-services-premium-wrap,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#servicios .gc-services-premium-wrap {
  position: relative !important;
  z-index: 1 !important;
  width: min(1120px, calc(100% - 80px)) !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  gap: 0 !important;
}

.gc-services-premium-head {
  text-align: center;
  margin: 0 auto 22px;
}

.gc-services-premium-head h2 {
  margin: 0;
  color: #111;
  font-family: var(--serif);
  font-weight: 500;
  font-size: clamp(48px, 5.8vw, 78px);
  line-height: .98;
  letter-spacing: -.035em;
}

.gc-services-head-mark {
  display: block;
  width: 100px;
  height: 18px;
  margin: 8px auto 7px;
  position: relative;
  background: radial-gradient(circle, #bd8730 0 4px, transparent 5px) center 5px / 18px 18px no-repeat;
}

.gc-services-head-mark::before,
.gc-services-head-mark::after {
  content: "";
  position: absolute;
  top: 9px;
  width: 42px;
  height: 1px;
  background: rgba(189,135,48,.7);
}

.gc-services-head-mark::before { left: 0; }
.gc-services-head-mark::after { right: 0; }

.gc-services-premium-head p {
  margin: 0;
  color: #8a6a35;
  font-size: 20px;
  line-height: 1.35;
  letter-spacing: .01em;
}

.gc-services-premium-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0 auto 28px;
}

.gc-service-premium-card {
  position: relative;
  min-height: 162px;
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  padding: 20px 22px 20px 20px;
  border: 1px solid rgba(189,135,48,.22);
  border-radius: 10px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 12px 24px rgba(42,30,12,.08);
}

.gc-service-premium-card::before {
  content: "";
  position: absolute;
  left: 106px;
  top: 22px;
  bottom: 22px;
  width: 1px;
  background: rgba(189,135,48,.24);
}

.gc-service-premium-icon {
  width: 70px;
  height: 70px;
  border-radius: 999px;
  border: 1.4px solid rgba(189,135,48,.45);
  display: grid;
  place-items: center;
  justify-self: center;
  background: rgba(255,255,255,.78);
}

.gc-service-premium-icon img {
  width: 42px;
  height: 42px;
  display: block;
  object-fit: contain;
}

.gc-service-pmi-icon strong {
  color: #111;
  font-family: var(--sans);
  font-size: 22px;
  font-weight: 900;
  letter-spacing: -.05em;
}

.gc-service-premium-copy {
  position: relative;
  z-index: 1;
  padding-right: 12px;
}

.gc-service-premium-copy h3 {
  margin: 0;
  color: #161616;
  font-family: var(--serif);
  font-size: 22px;
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -.02em;
}

.gc-service-premium-copy > span {
  display: block;
  width: 44px;
  height: 1px;
  margin: 10px 0 12px;
  background: rgba(189,135,48,.78);
}

.gc-service-premium-copy p {
  margin: 0;
  color: #242424;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 500;
}

.gc-service-premium-card > a {
  position: absolute;
  right: 18px;
  bottom: 14px;
  color: #bd8730;
  text-decoration: none;
  font-size: 24px;
  line-height: 1;
  font-weight: 400;
}

.gc-services-premium-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-top: 6px;
}

.gc-services-premium-metrics article {
  min-height: 82px;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 8px 24px 8px 18px;
  border-right: 1px solid rgba(189,135,48,.28);
}

.gc-services-premium-metrics article:last-child { border-right: 0; }

.gc-services-premium-metrics img {
  width: 54px;
  height: 54px;
  object-fit: contain;
  display: block;
}

.gc-services-premium-metrics strong {
  display: block;
  color: #222;
  font-size: 13px;
  line-height: 1.16;
  font-weight: 900;
  letter-spacing: .06em;
}

.gc-services-premium-metrics span {
  display: block;
  margin-top: 5px;
  color: #333;
  font-size: 12px;
  line-height: 1.35;
}

@media (max-width: 1199px) {
  html body.site-public main.site-stage[data-screen-root] > section.face#servicios .gc-services-premium-wrap,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#servicios .gc-services-premium-wrap {
    width: min(980px, calc(100% - 42px)) !important;
  }

  .gc-services-premium-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gc-services-premium-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 16px;
  }

  .gc-services-premium-metrics article:nth-child(2n) { border-right: 0; }
}

@media (max-width: 767px) {
  .gc-services-premium-section::before,
  .gc-services-premium-section::after { display: none !important; }

  html body.site-public main.site-stage[data-screen-root] > section.face#servicios .gc-services-premium-wrap,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#servicios .gc-services-premium-wrap {
    width: min(100%, calc(100% - 28px)) !important;
  }

  .gc-services-premium-head h2 {
    font-size: clamp(38px, 11vw, 54px);
  }

  .gc-services-premium-head p {
    font-size: 16px;
  }

  .gc-services-premium-grid,
  .gc-services-premium-metrics {
    grid-template-columns: 1fr;
  }

  .gc-service-premium-card {
    grid-template-columns: 1fr;
    text-align: center;
    padding: 24px 20px 44px;
  }

  .gc-service-premium-card::before { display: none; }
  .gc-service-premium-copy { padding-right: 0; }
  .gc-service-premium-copy > span { margin-left: auto; margin-right: auto; }

  .gc-services-premium-metrics article,
  .gc-services-premium-metrics article:nth-child(2n) {
    border-right: 0;
    border-bottom: 1px solid rgba(189,135,48,.20);
  }

  .gc-services-premium-metrics article:last-child { border-bottom: 0; }
}

/* === AJUSTE FINO SOLO PARA LIDERAZGO TÉCNICO CON VISIÓN EJECUTIVA === */
body.site-public .face#sobre {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sobre .sobre-gilberth-layout.sobre-arq-final {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  min-height: auto !important;
  height: auto !important;
  grid-template-columns: 40.5% 59.5% !important;
  grid-template-rows: minmax(610px, auto) auto !important;
  overflow: visible !important;
}

body.site-public .face#sobre .sobre-photo-zone {
  min-height: 610px !important;
  overflow: visible !important;
}

body.site-public .face#sobre .sobre-photo-orbit {
  left: 18px !important;
  top: 48px !important;
  width: 500px !important;
  height: 500px !important;
}

body.site-public .face#sobre .sobre-photo-person {
  left: 52px !important;
  width: 470px !important;
  height: 610px !important;
}

body.site-public .face#sobre .sobre-quote-card,
body.site-public .face#sobre .sobre-quote {
  left: 26px !important;
  bottom: 18px !important;
  width: 310px !important;
}

body.site-public .face#sobre .sobre-content-zone,
body.site-public .face#sobre .sobre-right {
  min-width: 0 !important;
  padding: 34px 38px 8px 10px !important;
}

body.site-public .face#sobre .sobre-heading-clean,
body.site-public .face#sobre .sobre-heading,
body.site-public .face#sobre .sobre-credentials,
body.site-public .face#sobre .sobre-section-title,
body.site-public .face#sobre .sobre-stats {
  max-width: none !important;
}

body.site-public .face#sobre .sobre-heading-clean .headline,
body.site-public .face#sobre .sobre-heading .headline {
  font-size: clamp(54px, 5vw, 78px) !important;
}

body.site-public .face#sobre .sobre-footer-adaptable {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  margin: 0 !important;
  padding: 14px 28px 10px !important;
  border: 0 !important;
  background: transparent !important;
  overflow: visible !important;
  align-self: stretch !important;
  justify-self: stretch !important;
}

body.site-public .face#sobre .sobre-footer-strip.sobre-footer-strip-color {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

body.site-public .face#sobre .sobre-footer-strip.sobre-footer-strip-color img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 120px !important;
  object-fit: contain !important;
  object-position: center center !important;
}

@media (max-width: 1280px) {
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sobre .sobre-gilberth-layout.sobre-arq-final {
    grid-template-columns: 42% 58% !important;
    grid-template-rows: minmax(560px, auto) auto !important;
  }
  body.site-public .face#sobre .sobre-photo-zone { min-height: 560px !important; }
  body.site-public .face#sobre .sobre-photo-orbit { width: 450px !important; height: 450px !important; }
  body.site-public .face#sobre .sobre-photo-person { width: 420px !important; height: 560px !important; }
}

@media (max-width: 1100px) {
  body.site-public .face#sobre .sobre-gilberth-layout.sobre-arq-final,
  body.site-public.gch-scroll-mode .site-stage[data-screen-root] > .face#sobre .sobre-gilberth-layout.sobre-arq-final {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }

  body.site-public .face#sobre .sobre-photo-zone { min-height: 560px !important; }
  body.site-public .face#sobre .sobre-content-zone,
  body.site-public .face#sobre .sobre-right { padding: 18px 14px 6px !important; }

  body.site-public .face#sobre .sobre-footer-adaptable {
    padding: 10px 12px 6px !important;
    margin: 0 !important;
  }

  body.site-public .face#sobre .sobre-footer-strip.sobre-footer-strip-color {
    overflow-x: auto !important;
  }

  body.site-public .face#sobre .sobre-footer-strip.sobre-footer-strip-color img {
    width: auto !important;
    min-width: 1120px !important;
    min-height: 88px !important;
  }
}

/* === AJUSTE GLOBAL: TODAS LAS SECCIONES SIN MÁRGENES LATERALES === */
html body.site-public,
html body.site-public main.site-stage[data-screen-root],
html body.site-public .site-stage[data-screen-root] {
  width: 100% !important;
  max-width: none !important;
}

html body.site-public main.site-stage[data-screen-root] > section.face,
html body.site-public .site-stage[data-screen-root] > section.face,
html body.site-public main.site-stage[data-screen-root] > .face,
html body.site-public .site-stage[data-screen-root] > .face {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

html body.site-public main.site-stage[data-screen-root] > section.face > .face-inner,
html body.site-public .site-stage[data-screen-root] > section.face > .face-inner,
html body.site-public main.site-stage[data-screen-root] > .face > .face-inner,
html body.site-public .site-stage[data-screen-root] > .face > .face-inner {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html body.site-public .gch-section-wrap,
html body.site-public .soluciones-layout,
html body.site-public .recursos-layout,
html body.site-public .insights-layout,
html body.site-public .contact-layout,
html body.site-public .sobre-gilberth-layout,
html body.site-public .sobre-gilberth-layout.sobre-arq-final,
html body.site-public .gch-map-wrap,
html body.site-public .gch-audience-wrap,
html body.site-public .gch-pmo-wrap,
html body.site-public .gch-sector-wrap,
html body.site-public .gch-footer-wrap,
html body.site-public .gch-results-wrap,
html body.site-public .gch-roadmap-wrap,
html body.site-public .gch-dashboard-wrap,
html body.site-public .gch-extra-section .face-inner {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Mantiene el contenido al ancho completo sin dejar franjas laterales */
html body.site-public .gch-extra-section,
html body.site-public .face.light,
html body.site-public .face.dark {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* === RECURSOS PREMIUM EN CARRUSEL + BOTÓN DE COMPRA === */
body.site-public .face#recursos .recursos-layout {
  padding-left: 22px !important;
  padding-right: 22px !important;
}

body.site-public .face#recursos .recursos-carousel-shell {
  width: 100% !important;
  margin: 34px 0 0 !important;
}

body.site-public .face#recursos .recursos-carousel-head {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 20px !important;
  text-align: left !important;
}

body.site-public .face#recursos .recursos-carousel-copy span {
  display: block !important;
  margin: 0 0 8px !important;
  color: #b47c2b !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body.site-public .face#recursos .recursos-carousel-copy p {
  margin: 0 !important;
  color: #51483d !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

body.site-public .face#recursos .recursos-carousel-nav {
  display: flex !important;
  gap: 10px !important;
  flex: 0 0 auto !important;
}

body.site-public .face#recursos .recursos-nav-btn {
  width: 46px !important;
  height: 46px !important;
  border: 1px solid rgba(191,158,95,.34) !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg, #fff, #f6efe3) !important;
  color: #a66d22 !important;
  font-size: 26px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 20px rgba(86,57,16,.08) !important;
}

body.site-public .face#recursos .recursos-nav-btn:disabled {
  opacity: .35 !important;
  cursor: default !important;
}

body.site-public .face#recursos .recursos-carousel-viewport {
  overflow: hidden !important;
  width: 100% !important;
}

body.site-public .face#recursos .recursos-product-grid.recursos-carousel-track {
  margin: 0 !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 20px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  padding: 4px 2px 10px !important;
  -ms-overflow-style: none !important;
  scrollbar-width: none !important;
}
body.site-public .face#recursos .recursos-product-grid.recursos-carousel-track::-webkit-scrollbar { display: none !important; }

body.site-public .face#recursos .recurso-card.recurso-card-slider {
  flex: 0 0 min(360px, calc((100% - 40px) / 3)) !important;
  min-width: min(360px, calc((100% - 40px) / 3)) !important;
  min-height: 470px !important;
  padding: 20px 20px 18px !important;
  scroll-snap-align: start !important;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,245,237,.98)) !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-visual {
  display: none !important;
}

body.site-public .face#recursos .recurso-card-topline {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 4px 0 12px !important;
  flex-wrap: wrap !important;
}

body.site-public .face#recursos .recurso-chip {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #d29b39, #b9781d) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
body.site-public .face#recursos .recurso-chip.is-soft {
  background: rgba(191,158,95,.12) !important;
  color: #aa6e1f !important;
  border: 1px solid rgba(191,158,95,.24) !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-icon {
  width: 76px !important;
  height: 76px !important;
  margin: 4px 0 16px !important;
  border-width: 1.5px !important;
  font-size: 28px !important;
  background: radial-gradient(circle at 50% 30%, #fffdf8, #f4ecdf) !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body {
  padding: 0 !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body h3 {
  font-size: 26px !important;
  line-height: 1.08 !important;
  margin-bottom: 10px !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body p {
  font-size: 14px !important;
  line-height: 1.62 !important;
  margin-bottom: 16px !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body li {
  font-size: 13px !important;
}

body.site-public .face#recursos .recurso-buy {
  display: block !important;
  min-height: 0 !important;
  margin-top: 20px !important;
  padding: 0 !important;
}

body.site-public .face#recursos .recurso-price-wrap {
  display: flex !important;
  align-items: end !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
}
body.site-public .face#recursos .recurso-price-wrap small {
  color: #8b857c !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: line-through !important;
}
body.site-public .face#recursos .recurso-price-wrap strong {
  font-size: 30px !important;
}

body.site-public .face#recursos .recurso-actions {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}

body.site-public .face#recursos .recurso-buy-btn {
  height: 48px !important;
  width: 100% !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #d6a046, #b9791d) !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  box-shadow: 0 14px 28px rgba(176,118,26,.24) !important;
}

body.site-public .face#recursos .recurso-buy-btn:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 18px 34px rgba(176,118,26,.30) !important;
}

body.site-public .face#recursos .recurso-detail-btn {
  width: 100% !important;
  height: 42px !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  letter-spacing: .08em !important;
}

body.site-public .face#recursos .recursos-carousel-dots {
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  margin-top: 16px !important;
}

body.site-public .face#recursos .recursos-carousel-dots button {
  width: 10px !important;
  height: 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(191,158,95,.28) !important;
  cursor: pointer !important;
}
body.site-public .face#recursos .recursos-carousel-dots button.is-active {
  width: 28px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #d39b3a, #b9781d) !important;
}

@media (max-width: 1180px) {
  body.site-public .face#recursos .recurso-card.recurso-card-slider {
    flex-basis: calc((100% - 20px) / 2) !important;
    min-width: calc((100% - 20px) / 2) !important;
  }
}

@media (max-width: 767px) {
  body.site-public .face#recursos .recursos-layout {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  body.site-public .face#recursos .recursos-carousel-head {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  body.site-public .face#recursos .recursos-carousel-nav {
    justify-content: center !important;
  }
  body.site-public .face#recursos .recurso-card.recurso-card-slider {
    flex-basis: 88vw !important;
    min-width: 88vw !important;
    min-height: 450px !important;
  }
  body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body h3 {
    font-size: 23px !important;
  }
}

/* === CORRECCIÓN FINAL: CERO MÁRGENES LATERALES EN TODA LA WEB === */
html,
body,
body.site-public,
body.site-public main,
body.site-public .site-stage,
body.site-public .site-stage[data-screen-root] {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow-x: hidden !important;
}

body.site-public main.site-stage[data-screen-root] > .face,
body.site-public main.site-stage[data-screen-root] > section.face,
body.site-public .site-stage[data-screen-root] > .face,
body.site-public .site-stage[data-screen-root] > section.face,
body.site-public section.face,
body.site-public .face {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  left: 0 !important;
  right: 0 !important;
  box-sizing: border-box !important;
}

body.site-public main.site-stage[data-screen-root] > .face > .face-inner,
body.site-public main.site-stage[data-screen-root] > section.face > .face-inner,
body.site-public .site-stage[data-screen-root] > .face > .face-inner,
body.site-public .site-stage[data-screen-root] > section.face > .face-inner,
body.site-public .face > .face-inner,
body.site-public .face-inner {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

body.site-public .gch-section-wrap,
body.site-public .gch-trust-wrap,
body.site-public .gc-trust-wrap,
body.site-public .gch-problem-wrap,
body.site-public .soluciones-layout,
body.site-public .recursos-layout,
body.site-public .sobre-gilberth-layout,
body.site-public .sobre-gilberth-layout.sobre-arq-final,
body.site-public .insights-layout,
body.site-public .contact-layout,
body.site-public .two-col,
body.site-public .gch-map-wrap,
body.site-public .gch-audience-wrap,
body.site-public .gch-pmo-wrap,
body.site-public .gch-sector-wrap,
body.site-public .gch-results-wrap,
body.site-public .gch-roadmap-wrap,
body.site-public .gch-dashboard-wrap,
body.site-public .gch-footer-wrap,
body.site-public .gch-conversion-wrap,
body.site-public .gch-product-detail-grid {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* Anula cualquier padding lateral agregado por parches anteriores */
body.site-public .face#recursos .recursos-layout,
body.site-public .face#soluciones .soluciones-layout,
body.site-public .face#sobre .sobre-gilberth-layout,
body.site-public .face#confianza .gch-section-wrap,
body.site-public .face#confianza .gc-trust-wrap,
body.site-public .face#problemas .gch-section-wrap,
body.site-public .face#insights .insights-layout,
body.site-public .face#contacto .contact-layout,
body.site-public .face#sector .gch-section-wrap,
body.site-public .face#servicios .gch-section-wrap,
body.site-public .face#pmo .gch-section-wrap,
body.site-public .face#tienda-premium .gch-section-wrap,
body.site-public .face#dashboard-pmo-pro .gch-section-wrap,
body.site-public .face#pago-seguro .gch-section-wrap,
body.site-public .face#footer-corporativo-page .gch-section-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Mantiene los componentes internos dentro del 100% sin crear franjas laterales */
body.site-public .recursos-carousel-shell,
body.site-public .recursos-carousel-viewport,
body.site-public .recursos-product-grid,
body.site-public .gc-trust-diff-grid,
body.site-public .gc-stats-strip,
body.site-public .gc-brand-row,
body.site-public .gch-diff-grid,
body.site-public .gch-problem-grid,
body.site-public .soluciones-grid-real,
body.site-public .recursos-footer,
body.site-public .sobre-footer-adaptable,
body.site-public .sobre-footer-strip,
body.site-public .sobre-footer-strip-color {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 767px) {
  body.site-public .face#recursos .recursos-layout,
  body.site-public .face#soluciones .soluciones-layout,
  body.site-public .face#sobre .sobre-gilberth-layout,
  body.site-public .gch-section-wrap,
  body.site-public .face-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* === CENTRAR ÍCONOS EN LIDERAZGO TÉCNICO CON VISIÓN EJECUTIVA === */
body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article i,
body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article .has-gch-svg-icon {
  align-self: center !important;
  justify-self: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  place-items: center !important;
}

body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article i .gch-icon-img,
body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article i img,
body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article .has-gch-svg-icon .gch-icon-img,
body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article .has-gch-svg-icon img {
  display: block !important;
  margin: 0 auto !important;
}

body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article strong,
body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article p {
  text-align: center !important;
  width: 100% !important;
}

/* === CENTRAR ÍCONOS EN TRAYECTORIA DESTACADA === */
body.site-public .face#sobre .sobre-stats article {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-stats article i,
body.site-public .face#sobre .sobre-stats article .has-gch-svg-icon {
  display: grid !important;
  place-items: center !important;
  align-self: center !important;
  justify-self: center !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

body.site-public .face#sobre .sobre-stats article i .gch-icon-img,
body.site-public .face#sobre .sobre-stats article i img,
body.site-public .face#sobre .sobre-stats article .has-gch-svg-icon .gch-icon-img,
body.site-public .face#sobre .sobre-stats article .has-gch-svg-icon img {
  display: block !important;
  margin: 0 auto !important;
}

body.site-public .face#sobre .sobre-stats article b,
body.site-public .face#sobre .sobre-stats article strong,
body.site-public .face#sobre .sobre-stats article p {
  width: 100% !important;
  text-align: center !important;
}

/* === PMO EJECUTIVA Y CONTROL DE PROYECTOS - CORRECCIÓN DE ESTRUCTURA === */
body.site-public .face#pmo {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(180deg,#f9f9f8 0%,#ffffff 100%) !important;
}
body.site-public .face#pmo::before,
body.site-public .face#pmo::after {
  content:"" !important;
  position:absolute !important;
  pointer-events:none !important;
  z-index:0 !important;
  background-repeat:no-repeat !important;
  background-size:contain !important;
}
body.site-public .face#pmo::before { left:0 !important; bottom:0 !important; width:220px !important; height:250px !important; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 260'%3E%3Cg fill='none' stroke='%23d6ae61' stroke-width='1.2'%3E%3Cpath d='M0 250C70 185 120 155 205 126'/%3E%3Cpath d='M0 230C72 166 122 136 208 108'/%3E%3Cpath d='M0 210C74 147 126 118 212 91'/%3E%3Cpath d='M0 190C77 128 129 99 216 73'/%3E%3C/g%3E%3C/svg%3E") !important; }
body.site-public .face#pmo::after { right:0 !important; top:0 !important; width:280px !important; height:200px !important; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 220'%3E%3Cg fill='none' stroke='%23d6ae61' stroke-width='1.2'%3E%3Cpath d='M128 0c26 31 47 65 63 104 9 22 19 45 36 66'/%3E%3Cpath d='M150 0c25 33 45 67 61 106 9 22 18 45 34 67'/%3E%3Cpath d='M172 0c24 34 43 70 58 109 8 22 17 45 31 67'/%3E%3Cpath d='M194 0c22 36 40 73 55 112 8 22 16 45 28 67'/%3E%3C/g%3E%3C/svg%3E") !important; }

body.site-public .face#pmo .pmo-exact-wrap {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: none !important;
  padding: 24px 28px 18px !important;
  display: grid !important;
  gap: 18px !important;
}
body.site-public .face#pmo .pmo-exact-top {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(620px, 0.96fr) !important;
  gap: 28px !important;
  align-items: start !important;
}
body.site-public .face#pmo .pmo-exact-hero { padding-top: 10px !important; }
body.site-public .face#pmo .pmo-exact-kicker { margin:0 0 10px !important; color:#b27a28 !important; font-size:15px !important; font-weight:800 !important; text-transform:uppercase !important; }
body.site-public .face#pmo .pmo-exact-hero .headline { margin:0 !important; font-size: clamp(56px, 5vw, 82px) !important; line-height:.96 !important; letter-spacing:-.045em !important; color:#0d0d0d !important; font-family:Georgia,"Times New Roman",serif !important; }
body.site-public .face#pmo .pmo-exact-line { display:block !important; position:relative !important; width:170px !important; height:1px !important; margin:24px 0 20px !important; background:#c59536 !important; }
body.site-public .face#pmo .pmo-exact-line::after { content:"" !important; position:absolute !important; left:52px !important; top:50% !important; width:8px !important; height:8px !important; background:#c59536 !important; transform:translateY(-50%) rotate(45deg) !important; }
body.site-public .face#pmo .pmo-exact-hero .sub { max-width: 630px !important; margin:0 !important; color:#3d392f !important; font-size:18px !important; line-height:1.5 !important; }

body.site-public .face#pmo .pmo-exact-dashboard { padding: 10px !important; border:1px solid rgba(198,155,74,.28) !important; border-radius:16px !important; background:#fff !important; box-shadow:0 8px 22px rgba(63,50,25,.05) !important; }
body.site-public .face#pmo .pmo-exact-dashboard-title { text-align:center !important; color:#b27a28 !important; font-size:14px !important; font-weight:800 !important; padding:0 0 10px !important; text-transform:uppercase !important; }
body.site-public .face#pmo .pmo-exact-dashboard-grid { display:grid !important; grid-template-columns: 140px repeat(3, minmax(0, 1fr)) !important; gap:8px !important; align-items:stretch !important; }
body.site-public .face#pmo .pmo-exact-kpi-column { grid-row:1 / span 2 !important; display:grid !important; gap:8px !important; padding:6px !important; border-radius:12px !important; background:#0b0a09 !important; }
body.site-public .face#pmo .pmo-exact-kpi { min-height:68px !important; padding:10px 12px !important; border:1px solid rgba(205,156,63,.28) !important; border-radius:10px !important; display:grid !important; align-content:center !important; gap:3px !important; color:#fff !important; }
body.site-public .face#pmo .pmo-exact-kpi.is-alert { border-color: rgba(196,51,29,.42) !important; }
body.site-public .face#pmo .pmo-exact-kpi span { color:#d9a246 !important; font-size:10px !important; line-height:1.15 !important; font-weight:800 !important; }
body.site-public .face#pmo .pmo-exact-kpi b { color:#fff !important; font-size:32px !important; line-height:1 !important; font-weight:900 !important; }
body.site-public .face#pmo .pmo-exact-kpi small { color:rgba(255,255,255,.7) !important; font-size:9px !important; }

body.site-public .face#pmo .pmo-card { min-height:145px !important; border:1px solid rgba(198,155,74,.22) !important; border-radius:12px !important; background:#fff !important; padding:10px 10px 8px !important; }
body.site-public .face#pmo .pmo-card.wide { min-height:112px !important; }
body.site-public .face#pmo .pmo-card h4 { margin:0 0 8px !important; text-align:center !important; font-size:10px !important; color:#272727 !important; font-weight:800 !important; }
body.site-public .face#pmo .pmo-card-inner.donut-layout { display:grid !important; grid-template-columns: 92px 1fr !important; gap:10px !important; align-items:center !important; }
body.site-public .face#pmo .pmo-donut { width:92px !important; height:92px !important; border-radius:50% !important; position:relative !important; display:grid !important; place-items:center !important; text-align:center !important; }
body.site-public .face#pmo .pmo-donut::before { content:"" !important; position:absolute !important; inset:16px !important; background:#fff !important; border-radius:50% !important; }
body.site-public .face#pmo .pmo-donut strong, body.site-public .face#pmo .pmo-donut em { position:relative !important; z-index:1 !important; display:block !important; }
body.site-public .face#pmo .donut-68 { background:conic-gradient(#d19834 0 68%, #c53723 68% 84%, #d9d9d9 84% 100%) !important; }
body.site-public .face#pmo .donut-risk { background:conic-gradient(#c53723 0 33%, #d19834 33% 76%, #d9d9d9 76% 100%) !important; }
body.site-public .face#pmo .pmo-donut strong { color:#202020 !important; font-size:23px !important; font-weight:900 !important; }
body.site-public .face#pmo .pmo-donut em { color:#555 !important; font-size:10px !important; font-style:normal !important; }
body.site-public .face#pmo .donut-layout ul { list-style:none !important; margin:0 !important; padding:0 !important; display:grid !important; gap:6px !important; }
body.site-public .face#pmo .donut-layout li { display:flex !important; align-items:center !important; gap:6px !important; color:#444 !important; font-size:10px !important; }
body.site-public .face#pmo .donut-layout li i { width:8px !important; height:8px !important; border-radius:50% !important; display:inline-block !important; }
body.site-public .face#pmo .donut-layout li .c1 { background:#d19834 !important; }
body.site-public .face#pmo .donut-layout li .c2 { background:#c53723 !important; }
body.site-public .face#pmo .donut-layout li .c3 { background:#bfbfbf !important; }

body.site-public .face#pmo .pmo-line-chart { position:relative !important; height:84px !important; margin:4px 2px 6px !important; border-left:1px solid #d8d8d8 !important; border-bottom:1px solid #d8d8d8 !important; background:linear-gradient(180deg, transparent 24%, rgba(220,220,220,.35) 24%, rgba(220,220,220,.35) 25%, transparent 25%, transparent 49%, rgba(220,220,220,.35) 49%, rgba(220,220,220,.35) 50%, transparent 50%, transparent 74%, rgba(220,220,220,.35) 74%, rgba(220,220,220,.35) 75%, transparent 75%) !important; }
body.site-public .face#pmo .pmo-line-chart::before { content:"" !important; position:absolute !important; left:14px !important; right:16px !important; top:22px !important; height:2px !important; border-top:2px solid #d19834 !important; transform:skewY(-10deg) translateY(18px) !important; }
body.site-public .face#pmo .pmo-line-chart .d { position:absolute !important; width:6px !important; height:6px !important; border-radius:50% !important; background:#d19834 !important; }
body.site-public .face#pmo .pmo-line-chart .d1 { left:14px !important; bottom:24px !important; } .d2 { left:42px !important; bottom:39px !important; } .d3 { left:70px !important; bottom:42px !important; } .d4 { left:98px !important; bottom:54px !important; } .d5 { left:126px !important; bottom:54px !important; } .d6 { left:154px !important; bottom:62px !important; }
body.site-public .face#pmo .pmo-weeks { display:flex !important; justify-content:space-between !important; gap:6px !important; }
body.site-public .face#pmo .pmo-weeks small { color:#555 !important; font-size:9px !important; }

body.site-public .face#pmo .pmo-matrix { display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:2px !important; height:72px !important; }
body.site-public .face#pmo .pmo-matrix span { display:block !important; background:linear-gradient(135deg,#f6e7b0,#e0ac43) !important; }
body.site-public .face#pmo .pmo-matrix span.warn { background:#df9b25 !important; }
body.site-public .face#pmo .pmo-matrix span.hot { background:#c23b22 !important; }

body.site-public .face#pmo .pmo-mini-roadmap { position:relative !important; display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:8px !important; }
body.site-public .face#pmo .pmo-mini-roadmap::before { content:"" !important; position:absolute !important; left:7% !important; right:7% !important; top:22px !important; height:1px !important; background:rgba(177,142,80,.42) !important; }
body.site-public .face#pmo .pmo-mini-roadmap article { position:relative !important; z-index:1 !important; text-align:center !important; }
body.site-public .face#pmo .pmo-mini-roadmap i { width:36px !important; height:36px !important; margin:0 auto 8px !important; display:grid !important; place-items:center !important; border-radius:50% !important; border:1px solid rgba(198,155,74,.36) !important; background:#fff !important; color:#a47222 !important; }
body.site-public .face#pmo .pmo-mini-roadmap b { display:block !important; color:#1d1d1d !important; font-size:10px !important; line-height:1.18 !important; margin:0 0 4px !important; }
body.site-public .face#pmo .pmo-mini-roadmap p { margin:0 !important; color:#555 !important; font-size:9px !important; line-height:1.35 !important; }

body.site-public .face#pmo .pmo-exact-middle { display:grid !important; grid-template-columns: minmax(0,1fr) minmax(560px,.88fr) !important; gap:24px !important; align-items:start !important; }
body.site-public .face#pmo .pmo-exact-columns { display:grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap:0 !important; }
body.site-public .face#pmo .pmo-exact-columns article { min-height:240px !important; padding:0 14px !important; border-left:1px solid rgba(198,155,74,.34) !important; }
body.site-public .face#pmo .pmo-exact-columns article:first-child { border-left:0 !important; }
body.site-public .face#pmo .pmo-exact-columns i { width:48px !important; height:48px !important; margin:0 0 10px !important; display:grid !important; place-items:center !important; border-radius:50% !important; border:1px solid rgba(198,155,74,.42) !important; color:#b27a28 !important; }
body.site-public .face#pmo .pmo-exact-columns h3 { margin:0 0 12px !important; color:#171717 !important; font-size:12px !important; line-height:1.2 !important; font-weight:900 !important; }
body.site-public .face#pmo .pmo-exact-columns ul { list-style:disc !important; margin:0 !important; padding-left:16px !important; display:grid !important; gap:8px !important; }
body.site-public .face#pmo .pmo-exact-columns li { color:#3b372f !important; font-size:11px !important; line-height:1.55 !important; }

body.site-public .face#pmo .pmo-exact-method { padding-left:8px !important; }
body.site-public .face#pmo .pmo-method-title { position:relative !important; text-align:center !important; color:#b27a28 !important; font-size:15px !important; font-weight:800 !important; margin:0 0 20px !important; }
body.site-public .face#pmo .pmo-method-title::before, body.site-public .face#pmo .pmo-method-title::after { content:"" !important; position:absolute !important; top:50% !important; width:26% !important; height:1px !important; background:rgba(198,155,74,.45) !important; }
body.site-public .face#pmo .pmo-method-title::before { left:0 !important; } body.site-public .face#pmo .pmo-method-title::after { right:0 !important; }
body.site-public .face#pmo .pmo-method-steps { position:relative !important; display:grid !important; grid-template-columns:repeat(5,minmax(0,1fr)) !important; gap:14px !important; }
body.site-public .face#pmo .pmo-method-steps::before { content:"" !important; position:absolute !important; left:6% !important; right:6% !important; top:32px !important; height:2px !important; background:linear-gradient(90deg, transparent, rgba(198,155,74,.45), transparent) !important; }
body.site-public .face#pmo .pmo-method-steps article { position:relative !important; z-index:1 !important; text-align:center !important; }
body.site-public .face#pmo .pmo-method-steps i { width:64px !important; height:64px !important; margin:0 auto 14px !important; display:grid !important; place-items:center !important; border-radius:50% !important; border:1px solid rgba(198,155,74,.42) !important; background:#fff !important; color:#b27a28 !important; }
body.site-public .face#pmo .pmo-method-steps h4 { margin:0 0 8px !important; color:#171717 !important; font-size:12px !important; line-height:1.24 !important; font-weight:900 !important; }
body.site-public .face#pmo .pmo-method-steps p { margin:0 0 4px !important; color:#3b372f !important; font-size:11px !important; line-height:1.45 !important; }
body.site-public .face#pmo .pmo-method-steps small { color:#232323 !important; font-size:11px !important; }

body.site-public .face#pmo .pmo-exact-bottom { display:grid !important; grid-template-columns: minmax(0,1fr) 430px !important; gap:20px !important; align-items:center !important; }
body.site-public .face#pmo .pmo-commit-bar { min-height:108px !important; display:grid !important; grid-template-columns: 1.35fr 1fr !important; border-radius:10px !important; overflow:hidden !important; border:1px solid rgba(198,155,74,.3) !important; background:linear-gradient(180deg,#090807,#1b140b) !important; }
body.site-public .face#pmo .pmo-commit-copy { display:flex !important; gap:14px !important; align-items:center !important; padding:18px 18px !important; }
body.site-public .face#pmo .pmo-commit-copy i { color:#d8a246 !important; font-size:34px !important; }
body.site-public .face#pmo .pmo-commit-copy strong { display:block !important; color:#d8a246 !important; font-size:12px !important; font-weight:900 !important; letter-spacing:.04em !important; margin-bottom:8px !important; }
body.site-public .face#pmo .pmo-commit-copy p { margin:0 !important; color:rgba(255,255,255,.78) !important; font-size:12px !important; line-height:1.45 !important; }
body.site-public .face#pmo .pmo-commit-metrics { display:grid !important; grid-template-columns:repeat(4,1fr) !important; }
body.site-public .face#pmo .pmo-commit-metrics article { border-left:1px solid rgba(198,155,74,.22) !important; padding:18px 8px !important; text-align:center !important; }
body.site-public .face#pmo .pmo-commit-metrics b { display:block !important; color:#d8a246 !important; font-family:Georgia,"Times New Roman",serif !important; font-size:24px !important; line-height:1 !important; margin-bottom:8px !important; }
body.site-public .face#pmo .pmo-commit-metrics span { color:#fff !important; font-size:10px !important; line-height:1.28 !important; font-weight:700 !important; }
body.site-public .face#pmo .pmo-cta-box { display:grid !important; gap:10px !important; }
body.site-public .face#pmo .pmo-cta-button { display:flex !important; align-items:center !important; justify-content:center !important; gap:12px !important; width:100% !important; height:56px !important; border-radius:8px !important; background:linear-gradient(180deg,#efc973,#d8a33f) !important; color:#2d1c00 !important; font-size:15px !important; font-weight:900 !important; text-transform:uppercase !important; box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 8px 18px rgba(201,150,57,.16) !important; }
body.site-public .face#pmo .pmo-cta-notes { display:flex !important; justify-content:center !important; gap:18px !important; color:#595348 !important; font-size:12px !important; }

@media (max-width: 1180px) {
  body.site-public .face#pmo .pmo-exact-top,
  body.site-public .face#pmo .pmo-exact-middle,
  body.site-public .face#pmo .pmo-exact-bottom { grid-template-columns:1fr !important; }
  body.site-public .face#pmo .pmo-exact-columns { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px !important; }
  body.site-public .face#pmo .pmo-exact-columns article { border-left:0 !important; border:1px solid rgba(198,155,74,.28) !important; padding:14px !important; min-height:auto !important; }
  body.site-public .face#pmo .pmo-exact-method { padding-left:0 !important; }
  body.site-public .face#pmo .pmo-method-steps { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  body.site-public .face#pmo .pmo-exact-dashboard-grid { grid-template-columns:1fr 1fr !important; }
  body.site-public .face#pmo .pmo-exact-kpi-column { grid-column:1 / -1 !important; grid-row:auto !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body.site-public .face#pmo .pmo-card.wide { grid-column:1 / -1 !important; }
  body.site-public .face#pmo .pmo-commit-bar { grid-template-columns:1fr !important; }
}
@media (max-width: 767px) {
  body.site-public .face#pmo .pmo-exact-wrap { padding:18px 12px !important; }
  body.site-public .face#pmo .pmo-exact-hero .headline { font-size:clamp(40px,11vw,58px) !important; }
  body.site-public .face#pmo .pmo-exact-hero .sub { font-size:16px !important; }
  body.site-public .face#pmo .pmo-exact-dashboard-grid,
  body.site-public .face#pmo .pmo-exact-kpi-column,
  body.site-public .face#pmo .pmo-exact-columns,
  body.site-public .face#pmo .pmo-method-steps,
  body.site-public .face#pmo .pmo-commit-metrics,
  body.site-public .face#pmo .pmo-mini-roadmap { grid-template-columns:1fr !important; }
  body.site-public .face#pmo .pmo-card-inner.donut-layout { grid-template-columns:1fr !important; justify-items:center !important; }
  body.site-public .face#pmo .pmo-method-steps::before,
  body.site-public .face#pmo .pmo-mini-roadmap::before { display:none !important; }
  body.site-public .face#pmo .pmo-cta-notes { flex-direction:column !important; gap:6px !important; }
}

/* === TIENDA ÚNICA DE RECURSOS DIGITALES === */
body.site-public .face#tienda-premium,
body.site-public .face#dashboard-pmo-pro,
body.site-public .face#pago-seguro {
  display: none !important;
}

body.site-public .face#recursos .recursos-single-store-cta {
  display: flex !important;
  justify-content: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin-top: 20px !important;
}

body .shop-screen,
body .product-detail-exact-screen {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body .shop-screen .panel,
body .product-detail-exact-screen .panel {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body .shop-screen .shop-hero,
body .shop-screen .shop-panel,
body .shop-screen .featured-strip {
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
}

body .shop-product-grid .product-cover.has-image,
body .shop-product-grid .product-cover {
  min-height: 230px !important;
}

/* === DETALLE DE PRODUCTO TIPO DASHBOARD EJECUTIVO === */
.product-detail-exact-screen {
  background: linear-gradient(180deg, #faf9f6 0%, #ffffff 100%) !important;
  overflow: hidden !important;
}
.product-exact-breadcrumb {
  width: 100% !important;
  padding: 18px 34px 0 !important;
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  color: #70695f !important;
  font-size: 13px !important;
}
.product-exact-breadcrumb a { color: #a87222 !important; font-weight: 800 !important; }
.product-exact-breadcrumb strong { color: #17120c !important; }
.product-exact-layout {
  width: 100% !important;
  padding: 22px 34px 28px !important;
  display: grid !important;
  gap: 22px !important;
}
.product-exact-top {
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(560px, 1.08fr) !important;
  gap: 34px !important;
  align-items: start !important;
}
.product-exact-copy { padding-top: 14px !important; }
.product-exact-kicker {
  margin: 0 0 12px !important;
  color: #b27a28 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
}
.product-exact-copy h1 {
  margin: 0 !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(52px, 5.3vw, 84px) !important;
  line-height: .96 !important;
  letter-spacing: -.045em !important;
}
.product-exact-line {
  position: relative !important;
  display: block !important;
  width: 180px !important;
  height: 1px !important;
  margin: 24px 0 20px !important;
  background: #c59536 !important;
}
.product-exact-line::after {
  content: "" !important;
  position: absolute !important;
  left: 58px !important;
  top: 50% !important;
  width: 8px !important;
  height: 8px !important;
  background: #c59536 !important;
  transform: translateY(-50%) rotate(45deg) !important;
}
.product-exact-sub {
  max-width: 680px !important;
  margin: 0 0 16px !important;
  color: #3d392f !important;
  font-size: 20px !important;
  line-height: 1.48 !important;
}
.product-exact-description {
  max-width: 760px !important;
  margin: 0 !important;
  color: #50483d !important;
  font-size: 15px !important;
  line-height: 1.62 !important;
}
.product-exact-visual-panel {
  padding: 12px !important;
  border: 1px solid rgba(198,155,74,.28) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 10px 24px rgba(56,44,22,.05) !important;
}
.product-exact-visual-title {
  text-align: center !important;
  color: #b27a28 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: .05em !important;
  padding: 0 0 12px !important;
  text-transform: uppercase !important;
}
.product-exact-image-box {
  min-height: 390px !important;
  border: 1px solid rgba(198,155,74,.18) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg,#f7f2e8,#ffffff) !important;
  display: grid !important;
  place-items: center !important;
}
.product-exact-image-box img {
  width: 100% !important;
  height: 100% !important;
  min-height: 390px !important;
  object-fit: cover !important;
  display: block !important;
}
.product-exact-image-box .product-cover {
  width: 100% !important;
  height: 100% !important;
  min-height: 390px !important;
  border-radius: 0 !important;
}
.product-exact-proof {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 10px !important;
}
.product-exact-proof span {
  padding: 10px !important;
  border: 1px solid rgba(198,155,74,.18) !important;
  border-radius: 9px !important;
  color: #4b443b !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-align: center !important;
  background: #fff !important;
}
.product-exact-middle {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(520px, .82fr) !important;
  gap: 26px !important;
  align-items: start !important;
}
.product-exact-info-cols {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
}
.product-exact-info-cols article {
  min-height: 218px !important;
  padding: 0 16px !important;
  border-left: 1px solid rgba(198,155,74,.34) !important;
}
.product-exact-info-cols article:first-child { border-left: 0 !important; }
.product-exact-info-cols i {
  width: 48px !important;
  height: 48px !important;
  margin: 0 0 10px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(198,155,74,.42) !important;
  border-radius: 50% !important;
  color: #b27a28 !important;
}
.product-exact-info-cols h3 {
  margin: 0 0 12px !important;
  color: #171717 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}
.product-exact-info-cols p,
.product-exact-info-cols li {
  color: #3b372f !important;
  font-size: 11px !important;
  line-height: 1.55 !important;
}
.product-exact-info-cols ul {
  list-style: disc !important;
  padding-left: 16px !important;
  margin: 0 !important;
  display: grid !important;
  gap: 8px !important;
}
.product-exact-method { padding-left: 8px !important; }
.product-method-title {
  position: relative !important;
  margin: 0 0 22px !important;
  color: #b27a28 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}
.product-method-title::before,
.product-method-title::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  width: 24% !important;
  height: 1px !important;
  background: rgba(198,155,74,.45) !important;
}
.product-method-title::before { left: 0 !important; }
.product-method-title::after { right: 0 !important; }
.product-method-steps {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
.product-method-steps::before {
  content: "" !important;
  position: absolute !important;
  left: 8% !important;
  right: 8% !important;
  top: 32px !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, rgba(198,155,74,.45), transparent) !important;
}
.product-method-steps article {
  position: relative !important;
  z-index: 1 !important;
  text-align: center !important;
}
.product-method-steps i {
  width: 64px !important;
  height: 64px !important;
  margin: 0 auto 14px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(198,155,74,.42) !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #b27a28 !important;
}
.product-method-steps h4 {
  margin: 0 0 8px !important;
  color: #171717 !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}
.product-method-steps p {
  margin: 0 !important;
  color: #3b372f !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}
.product-exact-bottom {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 430px !important;
  gap: 20px !important;
  align-items: stretch !important;
}
.product-exact-commit {
  display: grid !important;
  grid-template-columns: 1.2fr .9fr !important;
  min-height: 108px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid rgba(198,155,74,.30) !important;
  background: linear-gradient(180deg,#090807,#1b140b) !important;
}
.product-commit-copy {
  display: flex !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 18px !important;
}
.product-commit-copy i { color: #d8a246 !important; font-size: 34px !important; }
.product-commit-copy strong {
  display: block !important;
  color: #d8a246 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  margin-bottom: 8px !important;
}
.product-commit-copy p {
  margin: 0 !important;
  color: rgba(255,255,255,.78) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}
.product-commit-metrics {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
}
.product-commit-metrics article {
  border-left: 1px solid rgba(198,155,74,.22) !important;
  padding: 18px 8px !important;
  text-align: center !important;
}
.product-commit-metrics b {
  display: block !important;
  color: #d8a246 !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: 24px !important;
  line-height: 1 !important;
  margin-bottom: 8px !important;
}
.product-commit-metrics span {
  color: #fff !important;
  font-size: 10px !important;
  line-height: 1.28 !important;
  font-weight: 700 !important;
}
.product-exact-buy {
  display: grid !important;
  gap: 10px !important;
  padding: 16px !important;
  border: 1px solid rgba(198,155,74,.25) !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 8px 18px rgba(63,50,25,.06) !important;
}
.product-exact-price {
  display: flex !important;
  align-items: end !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
.product-exact-price small { color: #8b857c !important; font-size: 14px !important; text-decoration: line-through !important; }
.product-exact-price strong { color: #bc7921 !important; font-size: 34px !important; line-height: 1 !important; }
.product-exact-price span { color: #2d6c31 !important; font-size: 12px !important; font-weight: 900 !important; }
.product-exact-buy .qty-label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  color: #4b443b !important;
  font-weight: 800 !important;
}
.product-exact-cta,
.product-exact-secondary {
  width: 100% !important;
  height: 50px !important;
  border-radius: 999px !important;
  border: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}
.product-exact-cta {
  background: linear-gradient(135deg,#d6a046,#b9791d) !important;
  color: #fff !important;
  box-shadow: 0 14px 28px rgba(176,118,26,.24) !important;
}
.product-exact-secondary {
  background: #111 !important;
  color: #fff !important;
}

@media (max-width: 1180px) {
  .product-exact-top,
  .product-exact-middle,
  .product-exact-bottom { grid-template-columns: 1fr !important; }
  .product-exact-info-cols { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 14px !important; }
  .product-exact-info-cols article { border-left: 0 !important; border: 1px solid rgba(198,155,74,.28) !important; border-radius: 12px !important; padding: 16px !important; }
  .product-exact-method { padding-left: 0 !important; }
}
@media (max-width: 767px) {
  .product-exact-breadcrumb { padding: 14px 12px 0 !important; }
  .product-exact-layout { padding: 18px 12px !important; }
  .product-exact-copy h1 { font-size: clamp(40px, 11vw, 58px) !important; }
  .product-exact-sub { font-size: 16px !important; }
  .product-exact-info-cols,
  .product-method-steps,
  .product-exact-commit,
  .product-commit-metrics,
  .product-exact-proof { grid-template-columns: 1fr !important; }
  .product-method-steps::before { display: none !important; }
  .product-exact-image-box,
  .product-exact-image-box img,
  .product-exact-image-box .product-cover { min-height: 260px !important; }
}

/* === RECURSOS PREMIUM: VARIOS DESDE BD + CARRUSEL FUNCIONAL + CARRITO === */
body.site-public .face#recursos .recursos-carousel-viewport {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: smooth !important;
  scroll-snap-type: x mandatory !important;
  -ms-overflow-style: none !important;
  scrollbar-width: none !important;
}
body.site-public .face#recursos .recursos-carousel-viewport::-webkit-scrollbar { display: none !important; }

body.site-public .face#recursos .recursos-product-grid.recursos-carousel-track {
  width: max-content !important;
  min-width: 100% !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider {
  flex: 0 0 340px !important;
  min-width: 340px !important;
  max-width: 340px !important;
  min-height: 590px !important;
}

body.site-public .face#recursos .recurso-visual-link {
  display: block !important;
  text-decoration: none !important;
  margin: 2px 0 14px !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover {
  min-height: 190px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 26px rgba(63,50,25,.08) !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image strong {
  font-size: 26px !important;
  line-height: 1.06 !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover strong {
  font-size: 24px !important;
  line-height: 1.08 !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover em,
body.site-public .face#recursos .recurso-visual-link .product-cover i,
body.site-public .face#recursos .recurso-visual-link .product-cover small {
  display: none !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-icon {
  margin-top: 0 !important;
}

body.site-public .face#recursos .recurso-actions-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}
body.site-public .face#recursos .recurso-cart-form { margin: 0 !important; }
body.site-public .face#recursos .recurso-cart-form .recurso-buy-btn {
  appearance: none !important;
  cursor: pointer !important;
}
body.site-public .face#recursos .recurso-secondary-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
body.site-public .face#recursos .recurso-view-btn,
body.site-public .face#recursos .recurso-detail-btn {
  width: 100% !important;
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
body.site-public .face#recursos .recurso-view-btn {
  border: 1px solid rgba(191,158,95,.28) !important;
  background: #fff !important;
  color: #8b5b18 !important;
}
body.site-public .face#recursos .recurso-detail-btn {
  border: 1px solid rgba(191,158,95,.28) !important;
}

@media (max-width: 767px) {
  body.site-public .face#recursos .recurso-card.recurso-card-slider {
    flex-basis: 86vw !important;
    min-width: 86vw !important;
    max-width: 86vw !important;
    min-height: 570px !important;
  }
  body.site-public .face#recursos .recurso-secondary-actions {
    grid-template-columns: 1fr !important;
  }
}

/* === PARCHE FINAL: UN SOLO RECURSOS PREMIUM + CARRUSEL CORRECTO + SIN DUPLICADOS === */
body.site-public #tienda-premium,
body.site-public #dashboard-pmo-pro,
body.site-public #pago-seguro {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

body.site-public .face#recursos,
body.site-public .face#recursos .recursos-layout {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.site-public .face#recursos .recursos-heading {
  width: 100% !important;
  max-width: none !important;
  padding: 0 0 0 !important;
  margin: 0 !important;
}

body.site-public .face#recursos .recursos-single-store-cta {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 18px 0 0 !important;
  flex-wrap: wrap !important;
}

body.site-public .face#recursos .recursos-carousel-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 26px 0 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.site-public .face#recursos .recursos-carousel-head {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 18px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

body.site-public .face#recursos .recursos-carousel-copy {
  text-align: left !important;
}

body.site-public .face#recursos .recursos-carousel-copy span {
  display: block !important;
  margin: 0 0 6px !important;
  color: #b47c2b !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body.site-public .face#recursos .recursos-carousel-copy p {
  margin: 0 !important;
  color: #51483d !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

body.site-public .face#recursos .recursos-carousel-nav {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

body.site-public .face#recursos .recursos-nav-btn {
  width: 48px !important;
  height: 48px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(191,158,95,.34) !important;
  background: linear-gradient(180deg,#fff,#f4ecdc) !important;
  color: #a66d22 !important;
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 18px rgba(86,57,16,.08) !important;
}

body.site-public .face#recursos .recursos-nav-btn:disabled {
  opacity: .35 !important;
  cursor: not-allowed !important;
}

body.site-public .face#recursos .recursos-carousel-viewport {
  width: 100% !important;
  max-width: none !important;
  overflow: hidden !important;
  position: relative !important;
  padding: 4px 0 8px !important;
  touch-action: pan-y !important;
}

body.site-public .face#recursos .recursos-product-grid.recursos-carousel-track {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  transform: translate3d(0,0,0);
  transition: transform .38s ease !important;
  will-change: transform !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider {
  min-height: 575px !important;
  height: auto !important;
  padding: 18px 18px 16px !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,245,237,.98)) !important;
  border: 1px solid rgba(191,158,95,.28) !important;
  box-shadow: 0 12px 28px rgba(56,42,20,.06) !important;
  overflow: hidden !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 18px 36px rgba(56,42,20,.10) !important;
}

body.site-public .face#recursos .recurso-card-topline {
  min-height: 30px !important;
  margin: 0 0 12px !important;
}

body.site-public .face#recursos .recurso-visual-link {
  display: block !important;
  width: 100% !important;
  margin: 0 0 14px !important;
  text-decoration: none !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover {
  width: 100% !important;
  min-height: 185px !important;
  height: 185px !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 24px rgba(63,50,25,.08) !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover.has-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover.has-image strong {
  font-size: 24px !important;
  line-height: 1.08 !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) {
  display: grid !important;
  place-items: center !important;
  text-align: center !important;
  background: linear-gradient(135deg, #f6efe3, #fffaf0) !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) strong {
  max-width: 86% !important;
  color: #17110a !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 26px !important;
  line-height: 1.08 !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) small,
body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) i,
body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) em {
  display: none !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-icon {
  width: 58px !important;
  height: 58px !important;
  margin: 0 0 12px !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body h3 {
  min-height: 58px !important;
  margin: 0 0 8px !important;
  font-size: 22px !important;
  line-height: 1.12 !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body p {
  min-height: 62px !important;
  margin: 0 0 12px !important;
  font-size: 13px !important;
  line-height: 1.48 !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body ul {
  min-height: 86px !important;
  gap: 7px !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body li {
  font-size: 12px !important;
  line-height: 1.35 !important;
}

body.site-public .face#recursos .recurso-buy {
  margin-top: 14px !important;
  padding: 0 !important;
  display: grid !important;
  gap: 12px !important;
}

body.site-public .face#recursos .recurso-price-wrap {
  display: flex !important;
  align-items: baseline !important;
  gap: 10px !important;
}

body.site-public .face#recursos .recurso-price-wrap strong {
  color: #b9781d !important;
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

body.site-public .face#recursos .recurso-price-wrap small {
  color: #8b857c !important;
  font-size: 13px !important;
  text-decoration: line-through !important;
}

body.site-public .face#recursos .recurso-actions-grid,
body.site-public .face#recursos .recurso-cart-form {
  width: 100% !important;
  margin: 0 !important;
}

body.site-public .face#recursos .recurso-buy-btn {
  width: 100% !important;
  height: 46px !important;
  border: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  background: linear-gradient(135deg, #d6a046, #b9791d) !important;
  color: #fff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: 0 12px 24px rgba(176,118,26,.24) !important;
}

body.site-public .face#recursos .recurso-secondary-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin-top: 9px !important;
}

body.site-public .face#recursos .recurso-view-btn,
body.site-public .face#recursos .recurso-detail-btn {
  width: 100% !important;
  min-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

body.site-public .face#recursos .recurso-view-btn {
  border: 1px solid rgba(191,158,95,.28) !important;
  background: #fff !important;
  color: #8b5b18 !important;
}

body.site-public .face#recursos .recurso-detail-btn {
  border: 1px solid rgba(191,158,95,.34) !important;
  background: #fffaf1 !important;
  color: #9a671d !important;
}

body.site-public .face#recursos .recursos-carousel-dots {
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  margin: 14px 0 0 !important;
}

body.site-public .face#recursos .recursos-carousel-dots button {
  width: 10px !important;
  height: 10px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 99px !important;
  background: rgba(191,158,95,.30) !important;
  cursor: pointer !important;
}

body.site-public .face#recursos .recursos-carousel-dots button.is-active {
  width: 30px !important;
  background: linear-gradient(135deg, #d6a046, #b9791d) !important;
}

@media (max-width: 760px) {
  body.site-public .face#recursos .recursos-carousel-head {
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#recursos .recursos-carousel-nav {
    justify-content: center !important;
  }
  body.site-public .face#recursos .recurso-secondary-actions {
    grid-template-columns: 1fr !important;
  }
}

/* === HEADER: CARRITO AL COSTADO DE AGENDAR REUNIÓN + ICONO CORRECTO === */
body.site-public .topbar {
  gap: 12px !important;
}

body.site-public .top-cta,
body.site-public.gch-scroll-mode .top-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
}

body.site-public .top-cta .top-cta-icon,
body.site-public.gch-scroll-mode .top-cta .top-cta-icon {
  width: 18px !important;
  height: 18px !important;
  object-fit: contain !important;
  display: block !important;
  flex: 0 0 18px !important;
}

body.site-public .cart-mini,
body.site-public.gch-scroll-mode .cart-mini,
body.site-public .topbar .cart-mini,
body.site-public.gch-scroll-mode .topbar .cart-mini {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(198, 155, 74, .42) !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 10px 24px rgba(35,24,8,.10) !important;
  text-decoration: none !important;
  color: #b4771d !important;
}

body.site-public .cart-mini img,
body.site-public.gch-scroll-mode .cart-mini img {
  width: 22px !important;
  height: 22px !important;
  object-fit: contain !important;
  display: block !important;
}

body.site-public .cart-mini b,
body.site-public.gch-scroll-mode .cart-mini b {
  position: absolute !important;
  right: -5px !important;
  top: -5px !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 5px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #d49a34, #b9771c) !important;
  color: #fff !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  box-shadow: 0 4px 10px rgba(177,112,22,.24) !important;
}

@media (max-width: 900px) {
  body.site-public .top-cta,
  body.site-public.gch-scroll-mode .top-cta {
    display: none !important;
  }

  body.site-public .cart-mini,
  body.site-public.gch-scroll-mode .cart-mini,
  body.site-public .topbar .cart-mini,
  body.site-public.gch-scroll-mode .topbar .cart-mini {
    display: inline-flex !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
  }
}

/* === AJUSTE FINAL: HEADER SIN PUNTO + RECURSOS PREMIUM BIEN CENTRADO === */
body.site-public .top-cta::before,
body.site-public.gch-scroll-mode .top-cta::before,
body.site-public .topbar .top-cta::before,
body.site-public.gch-scroll-mode .topbar .top-cta::before {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
}

body.site-public .top-cta,
body.site-public.gch-scroll-mode .top-cta,
body.site-public .topbar .top-cta,
body.site-public.gch-scroll-mode .topbar .top-cta {
  gap: 10px !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
}

body.site-public .top-cta .top-cta-icon,
body.site-public.gch-scroll-mode .top-cta .top-cta-icon {
  width: 17px !important;
  height: 17px !important;
  margin: 0 !important;
  object-fit: contain !important;
}

body.site-public .face#recursos .recursos-layout {
  padding-left: clamp(14px, 2vw, 28px) !important;
  padding-right: clamp(14px, 2vw, 28px) !important;
  box-sizing: border-box !important;
}

body.site-public .face#recursos .recursos-heading {
  padding-left: 8px !important;
  padding-right: 8px !important;
  box-sizing: border-box !important;
}

body.site-public .face#recursos .recursos-carousel-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 18px auto 0 !important;
  padding: clamp(12px, 1.4vw, 18px) !important;
  border-radius: 22px !important;
  box-sizing: border-box !important;
}

body.site-public .face#recursos .recursos-carousel-head {
  align-items: center !important;
  padding-left: 4px !important;
  padding-right: 4px !important;
  margin-bottom: 14px !important;
}

body.site-public .face#recursos .recursos-carousel-viewport {
  padding: 6px 2px 10px !important;
}

body.site-public .face#recursos .recursos-product-grid.recursos-carousel-track {
  align-items: stretch !important;
  gap: 18px !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider {
  display: flex !important;
  flex-direction: column !important;
  min-height: 620px !important;
  padding: 18px !important;
  box-sizing: border-box !important;
  border-radius: 20px !important;
}

body.site-public .face#recursos .recurso-card-topline {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  text-align: center !important;
  min-height: 30px !important;
}

/* La imagen del recurso queda limpia: sin textos encima ni banda oscura */
body.site-public .face#recursos .recurso-visual-link {
  margin: 2px 0 16px !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover.has-image {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 200px !important;
  min-height: 200px !important;
  padding: 0 !important;
  border-radius: 18px !important;
  background: #fffaf3 !important;
  border: 1px solid rgba(191,158,95,.20) !important;
  overflow: hidden !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover.has-image::before,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image .cover-badge,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image strong,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image small,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image em,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image i {
  display: none !important;
  content: none !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover.has-image img {
  position: absolute !important;
  inset: 10px !important;
  width: calc(100% - 20px) !important;
  height: calc(100% - 20px) !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  border-radius: 12px !important;
}

body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) {
  min-height: 200px !important;
  height: 200px !important;
  border-radius: 18px !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-icon {
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  place-items: center !important;
}

body.site-public .face#recursos .recurso-body {
  flex: 1 1 auto !important;
  display: grid !important;
  align-content: start !important;
  text-align: center !important;
}

body.site-public .face#recursos .recurso-body h3,
body.site-public .face#recursos .recurso-body p {
  text-align: center !important;
}

body.site-public .face#recursos .recurso-body ul {
  text-align: left !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: min(100%, 285px) !important;
}

body.site-public .face#recursos .recurso-buy {
  margin-top: auto !important;
  padding-top: 16px !important;
  display: grid !important;
  justify-items: center !important;
  gap: 12px !important;
  width: 100% !important;
}

body.site-public .face#recursos .recurso-price-wrap {
  width: 100% !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: center !important;
  gap: 10px !important;
  text-align: center !important;
}

body.site-public .face#recursos .recurso-actions-grid,
body.site-public .face#recursos .recurso-cart-form,
body.site-public .face#recursos .recurso-secondary-actions {
  width: 100% !important;
  text-align: center !important;
}

body.site-public .face#recursos .recurso-buy-btn,
body.site-public .face#recursos .recurso-view-btn,
body.site-public .face#recursos .recurso-detail-btn {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  justify-content: center !important;
  align-items: center !important;
}

body.site-public .face#recursos .recurso-secondary-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  margin-top: 10px !important;
}

body.site-public .face#recursos .recursos-footer {
  margin-left: 2px !important;
  margin-right: 2px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

@media (max-width: 767px) {
  body.site-public .face#recursos .recursos-layout {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  body.site-public .face#recursos .recursos-carousel-shell {
    padding: 12px !important;
  }
  body.site-public .face#recursos .recurso-card.recurso-card-slider {
    min-height: auto !important;
    padding: 16px !important;
  }
  body.site-public .face#recursos .recurso-secondary-actions {
    grid-template-columns: 1fr !important;
  }
}

/* === LOGO OFICIAL GCH + RECURSOS PREMIUM CORREGIDO === */
.site-public .topbar .brand {
  min-width: clamp(260px, 23vw, 380px) !important;
  gap: 0 !important;
}
.site-public .topbar .brand-mark {
  width: clamp(240px, 24vw, 360px) !important;
  height: 52px !important;
  flex: 0 0 clamp(240px, 24vw, 360px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: url('../img/custom/gch_logo_oficial.png') left center / contain no-repeat !important;
  box-shadow: none !important;
  color: transparent !important;
  font-size: 0 !important;
  letter-spacing: 0 !important;
}
.site-public .topbar .brand-mark::after { display: none !important; }
.site-public .topbar .brand strong,
.site-public .topbar .brand small { display: none !important; }

.site-public .top-cta::before { content: none !important; display: none !important; }
.site-public .top-cta,
.site-public .cart-mini {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
}
.site-public .top-cta .gch-icon-img,
.site-public .cart-mini .gch-icon-img,
.site-public .top-cta .gch-template-icon,
.site-public .cart-mini .gch-template-icon {
  width: 16px !important;
  height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  object-fit: contain !important;
  flex: 0 0 16px !important;
}

body.site-public .gch-publicos-brand {
  min-height: 70px !important;
  display: flex !important;
  align-items: center !important;
}
body.site-public .gch-publicos-brand-full {
  width: min(100%, 360px) !important;
  height: auto !important;
  display: block !important;
}

.gch-footer-brand-full {
  width: min(100%, 320px) !important;
  height: auto !important;
  display: block !important;
  margin: 0 0 14px !important;
}
.gch-footer-grid .brand-mark { display: none !important; }

body.site-public .face#recursos .face-inner.recursos-layout {
  padding-left: 16px !important;
  padding-right: 16px !important;
}
body.site-public .face#recursos .recursos-single-store-cta,
body.site-public .face#recursos .recursos-carousel-nav,
body.site-public .face#recursos .recurso-actions-grid,
body.site-public .face#recursos .recurso-secondary-actions {
  align-items: center !important;
  justify-items: center !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider {
  flex: 0 0 372px !important;
  min-width: 372px !important;
  max-width: 372px !important;
  min-height: 620px !important;
  padding: 18px !important;
}
body.site-public .face#recursos .recurso-visual-link {
  display: block !important;
  width: 100% !important;
  margin: 8px 0 16px !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image {
  position: relative !important;
  min-height: 210px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  background: #f5f1ea !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image::before,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image .cover-badge,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image strong,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image small,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image em,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image i {
  display: none !important;
  content: none !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image img {
  width: 100% !important;
  height: 210px !important;
  object-fit: cover !important;
  display: block !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-icon {
  margin: 0 auto 12px !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body {
  display: grid !important;
  gap: 10px !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body ul {
  margin-bottom: 6px !important;
}
body.site-public .face#recursos .recurso-buy {
  margin-top: auto !important;
  display: grid !important;
  gap: 12px !important;
}
body.site-public .face#recursos .recurso-price-wrap {
  justify-self: center !important;
  text-align: center !important;
}
body.site-public .face#recursos .recurso-actions-grid {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}
body.site-public .face#recursos .recurso-cart-form,
body.site-public .face#recursos .recurso-secondary-actions {
  width: 100% !important;
}
body.site-public .face#recursos .recurso-secondary-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
body.site-public .face#recursos .recurso-buy-btn,
body.site-public .face#recursos .recurso-view-btn,
body.site-public .face#recursos .recurso-detail-btn {
  width: 100% !important;
  min-height: 46px !important;
  padding: 8px 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  text-align: center !important;
  white-space: normal !important;
  line-height: 1.2 !important;
  font-size: 10px !important;
  letter-spacing: .06em !important;
}
body.site-public .face#recursos .recurso-buy-btn .gch-icon-img,
body.site-public .face#recursos .recurso-view-btn .gch-icon-img,
body.site-public .face#recursos .recurso-detail-btn .gch-icon-img,
body.site-public .face#recursos .recurso-buy-btn .gch-template-icon,
body.site-public .face#recursos .recurso-view-btn .gch-template-icon,
body.site-public .face#recursos .recurso-detail-btn .gch-template-icon {
  width: 14px !important;
  height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  flex: 0 0 14px !important;
}

@media (max-width: 980px) {
  .site-public .topbar .brand-mark {
    width: 220px !important;
    height: 46px !important;
    flex-basis: 220px !important;
  }
}
@media (max-width: 767px) {
  body.site-public .face#recursos .face-inner.recursos-layout {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  body.site-public .face#recursos .recurso-card.recurso-card-slider {
    flex-basis: 88vw !important;
    min-width: 88vw !important;
    max-width: 88vw !important;
    min-height: 610px !important;
  }
  body.site-public .face#recursos .recurso-secondary-actions {
    grid-template-columns: 1fr !important;
  }
}


/* === AJUSTE FINAL: LOGO OFICIAL + BOTONES PRECISOS EN RECURSOS PREMIUM === */
.site-public .topbar .brand {
  min-width: clamp(270px, 25vw, 410px) !important;
  gap: 0 !important;
}
.site-public .topbar .brand-mark {
  width: clamp(260px, 25vw, 400px) !important;
  height: 60px !important;
  flex: 0 0 clamp(260px, 25vw, 400px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: url('../img/custom/gch_logo_oficial.png') left center / contain no-repeat !important;
  box-shadow: none !important;
  color: transparent !important;
  font-size: 0 !important;
  letter-spacing: 0 !important;
}
.site-public .topbar .brand-mark::after { display: none !important; }
.site-public .topbar .brand strong,
.site-public .topbar .brand small { display: none !important; }

body.site-public .gch-publicos-brand-full,
.gch-footer-brand-full {
  content: url('../img/custom/gch_logo_oficial.png') !important;
}

/* evita el punto/cuadrado antes de agendar reunión */
.site-public .top-cta::before {
  content: none !important;
  display: none !important;
}
.site-public .top-cta,
.site-public .cart-mini {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  white-space: nowrap !important;
}
.site-public .top-cta .gch-icon-img,
.site-public .top-cta .gch-template-icon,
.site-public .cart-mini .gch-icon-img,
.site-public .cart-mini .gch-template-icon {
  width: 16px !important;
  height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  flex: 0 0 16px !important;
  object-fit: contain !important;
}

/* Recursos Premium con margen pequeño y cards ordenadas */
body.site-public .face#recursos .face-inner.recursos-layout {
  padding-left: clamp(14px, 1.6vw, 24px) !important;
  padding-right: clamp(14px, 1.6vw, 24px) !important;
  overflow: visible !important;
}
body.site-public .face#recursos .recursos-carousel-shell {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
body.site-public .face#recursos .recursos-carousel-viewport {
  width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 4px 2px 12px !important;
  scroll-snap-type: x mandatory !important;
  scroll-padding-left: 2px !important;
}
body.site-public .face#recursos .recursos-product-grid.recursos-carousel-track {
  display: flex !important;
  width: max-content !important;
  min-width: 100% !important;
  gap: 18px !important;
  align-items: stretch !important;
  overflow: visible !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider {
  flex: 0 0 390px !important;
  min-width: 390px !important;
  max-width: 390px !important;
  min-height: 660px !important;
  padding: 18px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  scroll-snap-align: start !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Imagen del recurso limpia, sin texto encima */
body.site-public .face#recursos .recurso-visual-link {
  display: block !important;
  width: 100% !important;
  margin: 4px 0 8px !important;
  text-decoration: none !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image {
  position: relative !important;
  width: 100% !important;
  min-height: 220px !important;
  height: 220px !important;
  padding: 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #f4efe6 !important;
  display: block !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image::before,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image .cover-badge,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image strong,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image small,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image em,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image i {
  display: none !important;
  content: none !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image img {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) {
  width: 100% !important;
  min-height: 220px !important;
  height: 220px !important;
  border-radius: 18px !important;
  display: grid !important;
  place-items: center !important;
  padding: 16px !important;
  text-align: center !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) strong {
  max-width: 100% !important;
  text-align: center !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) small,
body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) i,
body.site-public .face#recursos .recurso-visual-link .product-cover:not(.has-image) em {
  display: none !important;
}

body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-icon {
  width: 54px !important;
  height: 54px !important;
  min-height: 54px !important;
  margin: 0 auto 4px !important;
  flex: 0 0 54px !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body {
  display: grid !important;
  gap: 9px !important;
  text-align: center !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body h3 {
  min-height: 42px !important;
  margin: 0 !important;
  text-align: center !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body p {
  min-height: 42px !important;
  margin: 0 !important;
  text-align: center !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body ul {
  margin: 0 !important;
  padding-left: 18px !important;
  text-align: left !important;
}
body.site-public .face#recursos .recurso-card.recurso-card-slider .recurso-body li {
  line-height: 1.35 !important;
}

/* Orden preciso de acciones:
   1) precio
   2) Agregar al carrito
   3) Ver detalle
   4) Ver producto
*/
body.site-public .face#recursos .recurso-buy {
  margin-top: auto !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  align-items: center !important;
  justify-items: stretch !important;
}
body.site-public .face#recursos .recurso-price-wrap {
  width: 100% !important;
  display: grid !important;
  justify-items: center !important;
  text-align: center !important;
}
body.site-public .face#recursos .recurso-actions-grid {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  align-items: stretch !important;
}
body.site-public .face#recursos .recurso-cart-form {
  width: 100% !important;
  margin: 0 !important;
  display: block !important;
  order: 1 !important;
}
body.site-public .face#recursos .recurso-secondary-actions {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
  order: 2 !important;
}
body.site-public .face#recursos .recurso-detail-btn { order: 1 !important; }
body.site-public .face#recursos .recurso-view-btn { order: 2 !important; }

body.site-public .face#recursos .recurso-buy-btn,
body.site-public .face#recursos .recurso-detail-btn,
body.site-public .face#recursos .recurso-view-btn {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 46px !important;
  padding: 9px 12px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
  line-height: 1.15 !important;
  font-size: 10px !important;
  letter-spacing: .045em !important;
  word-break: normal !important;
}
body.site-public .face#recursos .recurso-buy-btn .gch-icon-img,
body.site-public .face#recursos .recurso-detail-btn .gch-icon-img,
body.site-public .face#recursos .recurso-view-btn .gch-icon-img,
body.site-public .face#recursos .recurso-buy-btn .gch-template-icon,
body.site-public .face#recursos .recurso-detail-btn .gch-template-icon,
body.site-public .face#recursos .recurso-view-btn .gch-template-icon {
  width: 14px !important;
  height: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  flex: 0 0 14px !important;
  object-fit: contain !important;
}

@media (max-width: 1080px) {
  .site-public .topbar .brand-mark {
    width: 230px !important;
    height: 50px !important;
    flex-basis: 230px !important;
  }
  .site-public .topbar .brand { min-width: 230px !important; }
  body.site-public .face#recursos .recurso-card.recurso-card-slider {
    flex-basis: 360px !important;
    min-width: 360px !important;
    max-width: 360px !important;
  }
}
@media (max-width: 767px) {
  .site-public .topbar .brand-mark {
    width: 190px !important;
    height: 44px !important;
    flex-basis: 190px !important;
  }
  .site-public .topbar .brand { min-width: 190px !important; }
  body.site-public .face#recursos .face-inner.recursos-layout {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  body.site-public .face#recursos .recurso-card.recurso-card-slider {
    flex-basis: 88vw !important;
    min-width: 88vw !important;
    max-width: 88vw !important;
    min-height: 650px !important;
  }
  body.site-public .face#recursos .recurso-secondary-actions {
    grid-template-columns: 1fr !important;
  }
}

/* === HEADER: SOLO LOGO, SIN TEXTO NI ELEMENTOS EXTRA AL COSTADO === */
.site-public .topbar .brand.brand-full-logo,
.topbar .brand.brand-full-logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  min-width: 0 !important;
  width: auto !important;
  padding: 0 !important;
}

.site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
.topbar .brand.brand-full-logo .brand-full-logo-img {
  display: block !important;
  width: clamp(220px, 24vw, 420px) !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

.site-public .topbar .brand.brand-full-logo .brand-mark,
.site-public .topbar .brand.brand-full-logo strong,
.site-public .topbar .brand.brand-full-logo small,
.topbar .brand.brand-full-logo .brand-mark,
.topbar .brand.brand-full-logo strong,
.topbar .brand.brand-full-logo small,
.topbar .brand.brand-full-logo span {
  display: none !important;
}

@media (max-width: 980px) {
  .site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
  .topbar .brand.brand-full-logo .brand-full-logo-img {
    width: 210px !important;
  }
}

@media (max-width: 767px) {
  .site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
  .topbar .brand.brand-full-logo .brand-full-logo-img {
    width: 170px !important;
  }
}


/* === AJUSTE FINAL: LOGO DENTRO DEL CONTENEDOR DEL MENÚ === */
.site-public .topbar {
  overflow: hidden !important;
}

.site-public .topbar .brand.brand-full-logo,
.topbar .brand.brand-full-logo {
  height: 78px !important;
  max-height: 78px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}

.site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
.topbar .brand.brand-full-logo .brand-full-logo-img {
  height: 50px !important;
  max-height: 50px !important;
  width: auto !important;
  max-width: clamp(170px, 18vw, 260px) !important;
  object-fit: contain !important;
  object-position: left center !important;
  display: block !important;
}

.site-public .topbar .brand.brand-full-logo .brand-mark,
.site-public .topbar .brand.brand-full-logo strong,
.site-public .topbar .brand.brand-full-logo small,
.site-public .topbar .brand.brand-full-logo span,
.topbar .brand.brand-full-logo .brand-mark,
.topbar .brand.brand-full-logo strong,
.topbar .brand.brand-full-logo small,
.topbar .brand.brand-full-logo span {
  display: none !important;
}

@media (max-width: 980px) {
  .site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
  .topbar .brand.brand-full-logo .brand-full-logo-img {
    height: 44px !important;
    max-height: 44px !important;
    max-width: 210px !important;
  }
}

@media (max-width: 767px) {
  .site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
  .topbar .brand.brand-full-logo .brand-full-logo-img {
    height: 38px !important;
    max-height: 38px !important;
    max-width: 170px !important;
  }
}

/* === AJUSTE: LOGO UN POCO MÁS GRANDE SIN SALIRSE DEL CONTENEDOR === */
.site-public .topbar .brand.brand-full-logo,
.topbar .brand.brand-full-logo {
  height: 82px !important;
  max-height: 82px !important;
}

.site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
.topbar .brand.brand-full-logo .brand-full-logo-img {
  height: 58px !important;
  max-height: 58px !important;
  width: auto !important;
  max-width: clamp(210px, 21vw, 310px) !important;
}

@media (max-width: 980px) {
  .site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
  .topbar .brand.brand-full-logo .brand-full-logo-img {
    height: 50px !important;
    max-height: 50px !important;
    max-width: 240px !important;
  }
}

@media (max-width: 767px) {
  .site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
  .topbar .brand.brand-full-logo .brand-full-logo-img {
    height: 42px !important;
    max-height: 42px !important;
    max-width: 190px !important;
  }
}

/* === AJUSTE FINAL: LOGO MÁS GRANDE Y MENÚ SIEMPRE NEGRO === */
html body.site-public .topbar,
html body.site-public .topbar.is-light,
html body.site-public.gch-scroll-mode .topbar,
html body.site-public.gch-scroll-mode .topbar.is-light {
  background: #050505 !important;
  background-color: #050505 !important;
  border-bottom: 1px solid rgba(214,174,97,.18) !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.18) !important;
}

html body.site-public .topbar .nav-menu a,
html body.site-public .topbar.is-light .nav-menu a,
html body.site-public.gch-scroll-mode .topbar .nav-menu a,
html body.site-public.gch-scroll-mode .topbar.is-light .nav-menu a {
  color: #f2e2bb !important;
}

html body.site-public .topbar .nav-menu a:hover,
html body.site-public .topbar .nav-menu a.is-active,
html body.site-public .topbar.is-light .nav-menu a:hover,
html body.site-public .topbar.is-light .nav-menu a.is-active,
html body.site-public.gch-scroll-mode .topbar .nav-menu a:hover,
html body.site-public.gch-scroll-mode .topbar .nav-menu a.is-active {
  color: #d8a246 !important;
}

html body.site-public .topbar .brand.brand-full-logo,
html body.site-public .topbar.is-light .brand.brand-full-logo,
.topbar .brand.brand-full-logo {
  height: 84px !important;
  max-height: 84px !important;
  padding: 0 !important;
  align-items: center !important;
}

html body.site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
html body.site-public .topbar.is-light .brand.brand-full-logo .brand-full-logo-img,
.topbar .brand.brand-full-logo .brand-full-logo-img {
  height: 64px !important;
  max-height: 64px !important;
  width: auto !important;
  max-width: clamp(240px, 24vw, 360px) !important;
  object-fit: contain !important;
  object-position: left center !important;
  display: block !important;
}

html body.site-public .topbar .top-cta,
html body.site-public .topbar.is-light .top-cta,
html body.site-public .topbar .cart-mini,
html body.site-public .topbar.is-light .cart-mini {
  background: rgba(255,255,255,.03) !important;
  color: #f5e6c3 !important;
  border-color: rgba(214,174,97,.34) !important;
}

html body.site-public .topbar .top-cta .gch-icon-img,
html body.site-public .topbar .cart-mini .gch-icon-img,
html body.site-public .topbar .top-cta .gch-template-icon,
html body.site-public .topbar .cart-mini .gch-template-icon {
  filter: none !important;
}

@media (max-width: 980px) {
  html body.site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
  html body.site-public .topbar.is-light .brand.brand-full-logo .brand-full-logo-img,
  .topbar .brand.brand-full-logo .brand-full-logo-img {
    height: 56px !important;
    max-height: 56px !important;
    max-width: 270px !important;
  }
}

@media (max-width: 767px) {
  html body.site-public .topbar,
  html body.site-public .topbar.is-light,
  html body.site-public.gch-scroll-mode .topbar {
    min-height: 72px !important;
    height: 72px !important;
  }

  html body.site-public .topbar .brand.brand-full-logo,
  html body.site-public .topbar.is-light .brand.brand-full-logo,
  .topbar .brand.brand-full-logo {
    height: 72px !important;
    max-height: 72px !important;
  }

  html body.site-public .topbar .brand.brand-full-logo .brand-full-logo-img,
  html body.site-public .topbar.is-light .brand.brand-full-logo .brand-full-logo-img,
  .topbar .brand.brand-full-logo .brand-full-logo-img {
    height: 48px !important;
    max-height: 48px !important;
    max-width: 210px !important;
  }
}

/* === TIENDA VIRTUAL PRO AJAX: carrito realtime sin redirecciones === */
.cart-live-backdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 998 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  background: rgba(0,0,0,.48) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .24s ease !important;
}
.cart-live-drawer {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 999 !important;
  width: min(440px, 94vw) !important;
  height: 100svh !important;
  transform: translateX(105%) !important;
  transition: transform .28s ease !important;
  background: #fbf8f1 !important;
  border-left: 1px solid rgba(198,155,74,.28) !important;
  box-shadow: -26px 0 60px rgba(0,0,0,.22) !important;
  display: grid !important;
  grid-template-rows: auto 1fr auto !important;
  color: #15110b !important;
}
body.cart-live-open .cart-live-backdrop {
  opacity: 1 !important;
  pointer-events: auto !important;
}
body.cart-live-open .cart-live-drawer {
  transform: translateX(0) !important;
}
.cart-live-head {
  min-height: 86px !important;
  padding: 20px 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  background: #050505 !important;
  color: #f5e6c3 !important;
  border-bottom: 1px solid rgba(214,174,97,.26) !important;
}
.cart-live-head span {
  display:block !important;
  margin-bottom: 5px !important;
  color: #d8a246 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
.cart-live-head strong {
  display:block !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: 24px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}
.cart-live-close {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(214,174,97,.36) !important;
  background: rgba(255,255,255,.04) !important;
  color: #f5e6c3 !important;
  cursor: pointer !important;
  font-size: 24px !important;
  line-height: 1 !important;
}
.cart-live-body {
  padding: 16px !important;
  overflow-y: auto !important;
  display: grid !important;
  align-content: start !important;
  gap: 12px !important;
}
.cart-live-empty {
  min-height: 220px !important;
  display: grid !important;
  place-items: center !important;
  padding: 24px !important;
  border: 1px dashed rgba(198,155,74,.34) !important;
  border-radius: 18px !important;
  color: #6a5f4c !important;
  text-align: center !important;
}
.cart-live-item {
  display: grid !important;
  grid-template-columns: 86px minmax(0,1fr) !important;
  gap: 12px !important;
  padding: 12px !important;
  border: 1px solid rgba(198,155,74,.18) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 10px 22px rgba(57,43,21,.05) !important;
}
.cart-live-thumb {
  width: 86px !important;
  height: 86px !important;
  overflow: hidden !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg,#0b0a09,#241b10) !important;
  display: grid !important;
  place-items: center !important;
  color: #d8a246 !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: 30px !important;
}
.cart-live-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.cart-live-info {
  min-width: 0 !important;
  display: grid !important;
  gap: 6px !important;
}
.cart-live-info small {
  color: #9a6a22 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}
.cart-live-info strong {
  color: #15110b !important;
  font-size: 14px !important;
  line-height: 1.22 !important;
  font-weight: 900 !important;
}
.cart-live-info em {
  color: #5f5547 !important;
  font-size: 11px !important;
  font-style: normal !important;
  font-weight: 700 !important;
}
.cart-live-controls {
  display: grid !important;
  grid-template-columns: 30px 44px 30px 42px 1fr !important;
  gap: 6px !important;
  align-items: center !important;
  margin: 2px 0 0 !important;
}
.cart-live-controls button,
.cart-live-controls input {
  min-height: 30px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(198,155,74,.28) !important;
  background: #fffaf0 !important;
  color: #15110b !important;
  text-align: center !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}
.cart-live-controls button { cursor: pointer !important; }
.cart-live-controls .cart-live-save {
  background: #11100d !important;
  color: #f5e6c3 !important;
}
.cart-live-controls .cart-live-remove {
  background: transparent !important;
  color: #9b2929 !important;
}
.cart-live-footer {
  padding: 16px !important;
  border-top: 1px solid rgba(198,155,74,.22) !important;
  background: #fffdf8 !important;
  display: grid !important;
  gap: 12px !important;
}
.cart-live-total {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  color: #15110b !important;
}
.cart-live-total span {
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: #8b5b18 !important;
}
.cart-live-total strong {
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: 28px !important;
  color: #11100d !important;
  font-weight: 500 !important;
}
.cart-live-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
.cart-live-link,
.cart-live-checkout {
  min-height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 12px !important;
  border-radius: 999px !important;
  text-align: center !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
}
.cart-live-link {
  border: 1px solid rgba(198,155,74,.28) !important;
  background: #fff !important;
  color: #8b5b18 !important;
}
.cart-live-checkout {
  border: 1px solid #d8a246 !important;
  background: linear-gradient(180deg,#efc973,#d8a33f) !important;
  color: #2d1c00 !important;
}
.cart-live-footer small {
  color: #706354 !important;
  text-align: center !important;
  font-size: 11px !important;
}
.cart-live-toast {
  position: fixed !important;
  right: 22px !important;
  bottom: 22px !important;
  z-index: 1001 !important;
  max-width: min(360px, calc(100vw - 44px)) !important;
  padding: 14px 16px !important;
  border-radius: 16px !important;
  background: #10100e !important;
  color: #f5e6c3 !important;
  border: 1px solid rgba(216,162,70,.34) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.28) !important;
  opacity: 0 !important;
  transform: translateY(12px) !important;
  pointer-events: none !important;
  transition: opacity .22s ease, transform .22s ease !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}
.cart-live-toast.is-visible {
  opacity: 1 !important;
  transform: translateY(0) !important;
}
.cart-live-toast.is-error {
  border-color: rgba(155,41,41,.5) !important;
  color: #ffe4e4 !important;
}
form.is-loading button[type="submit"],
form.is-loading .recurso-buy-btn,
form.is-loading .btn-gold,
form.is-loading .product-exact-cta,
form.is-loading .product-exact-secondary {
  opacity: .72 !important;
  cursor: wait !important;
}
.shop-panel.is-loading {
  opacity: .68 !important;
  pointer-events: none !important;
}
body.site-public .face#recursos .recurso-cart-form,
.shop-product-grid form[action="cart_action.php"],
.product-exact-buy {
  position: relative !important;
}
body.site-public .face#recursos .recurso-buy-btn,
.shop-product-grid form[action="cart_action.php"] .btn-gold,
.product-exact-buy button {
  cursor: pointer !important;
}

@media (max-width: 767px) {
  .cart-live-drawer { width: 100vw !important; }
  .cart-live-actions { grid-template-columns: 1fr !important; }
  .cart-live-controls { grid-template-columns: 32px 48px 32px 44px 1fr !important; }
}

/* === RECURSOS: DETALLE EN POPUP, SIN VER PRODUCTO Y TOAST SIN SALTO === */
body.site-public .face#recursos .recurso-view-btn {
  display: none !important;
}
body.site-public .face#recursos .recurso-secondary-actions.recurso-secondary-actions-single {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}
body.site-public .face#recursos .recurso-secondary-actions-single .recurso-detail-btn {
  width: 100% !important;
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 10px 14px !important;
}

.modal.is-product-detail .modal-card {
  width: min(1080px, calc(100vw - 32px)) !important;
  max-width: 1080px !important;
}
.modal-product-detail {
  display: grid !important;
  grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr) !important;
  gap: 24px !important;
  align-items: start !important;
}
.modal-product-media {
  min-height: 360px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  border: 1px solid rgba(180,119,41,.18) !important;
  background: #f4efe6 !important;
  box-shadow: 0 18px 44px rgba(51,38,15,.08) !important;
}
.modal-product-media img {
  width: 100% !important;
  height: 360px !important;
  object-fit: cover !important;
  display: block !important;
}
.modal-product-placeholder {
  min-height: 360px !important;
  display: grid !important;
  place-items: center !important;
  color: #b47729 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 72px !important;
  letter-spacing: -.08em !important;
}
.modal-product-info {
  display: grid !important;
  gap: 14px !important;
}
.modal-product-category {
  width: max-content !important;
  max-width: 100% !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: rgba(180,119,41,.09) !important;
  border: 1px solid rgba(180,119,41,.22) !important;
  color: #8c5e23 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.modal-product-price {
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 12px !important;
}
.modal-product-price small {
  color: #9b8e7a !important;
  text-decoration: line-through !important;
  font-weight: 800 !important;
}
.modal-product-price strong {
  color: #b47729 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 38px !important;
  line-height: 1 !important;
}
.modal-product-copy {
  max-height: 320px !important;
  overflow: auto !important;
  padding-right: 6px !important;
}
.modal-product-cart {
  margin: 4px 0 0 !important;
}
.modal-product-add {
  width: 100% !important;
  min-height: 54px !important;
  justify-content: center !important;
}
.modal.is-product-detail .modal-actions [data-modal-cta] {
  display: none !important;
}
.modal.is-product-detail .modal-actions {
  justify-content: flex-end !important;
}
.cart-live-toast {
  z-index: 99999 !important;
  pointer-events: none !important;
}

@media (max-width: 820px) {
  .modal-product-detail {
    grid-template-columns: 1fr !important;
  }
  .modal-product-media,
  .modal-product-media img,
  .modal-product-placeholder {
    min-height: 240px !important;
    height: 240px !important;
  }
  .modal-product-copy {
    max-height: 260px !important;
  }
}

/* === FIX FINAL: SIN VER PRODUCTO, DETALLE POPUP Y TOAST SIN SALTO === */
body.site-public .face#recursos .recurso-view-btn,
.recurso-view-btn,
a[href*="producto.php"].recurso-view-btn {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.site-public .face#recursos .recurso-secondary-actions,
body.site-public .face#recursos .recurso-secondary-actions.recurso-secondary-actions-single {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}

body.site-public .face#recursos .recurso-detail-btn {
  width: 100% !important;
  min-height: 50px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

body.site-public .face#recursos .recurso-visual-link,
.shop-product-grid .product-link-cover,
.featured-strip .featured-product-cover {
  cursor: pointer !important;
}

.cart-live-toast {
  position: fixed !important;
  right: 22px !important;
  bottom: 22px !important;
  z-index: 999999 !important;
  pointer-events: none !important;
}

body.cart-live-open .cart-live-backdrop:not(.force-open),
body.cart-live-open.no-auto-drawer .cart-live-backdrop,
body.cart-live-open.no-auto-drawer .cart-live-drawer {
  pointer-events: none !important;
}

.modal.is-product-detail .modal-actions [data-modal-cta] {
  display: none !important;
}

@media (max-width: 767px) {
  .cart-live-toast {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    text-align: center !important;
  }
}

/* === SISTEMA AUTOMÁTICO DE CONVERSIÓN + ROADMAP IMPLEMENTACIÓN WEB EXACTOS === */
body.site-public .face#conversion,
body.site-public .face#roadmap {
  position: relative !important;
  overflow: hidden !important;
  background: #fbfbfa !important;
  color: #15120c !important;
}

body.site-public .face#conversion::before,
body.site-public .face#roadmap::before,
body.site-public .face#conversion::after,
body.site-public .face#roadmap::after {
  content: "" !important;
  position: absolute !important;
  pointer-events: none !important;
  z-index: 0 !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  opacity: .78 !important;
}
body.site-public .face#conversion::before,
body.site-public .face#roadmap::before {
  left: -12px !important;
  bottom: -10px !important;
  width: 210px !important;
  height: 240px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 260'%3E%3Cg fill='none' stroke='%23e7d8bb' stroke-width='1.15'%3E%3Cpath d='M-5 246C55 183 126 143 231 126'/%3E%3Cpath d='M-5 224C58 164 131 127 238 111'/%3E%3Cpath d='M-5 202C62 145 136 110 245 95'/%3E%3Cpath d='M-5 180C66 126 142 94 252 79'/%3E%3Cpath d='M-5 158C70 108 148 78 258 64'/%3E%3C/g%3E%3C/svg%3E") !important;
}
body.site-public .face#conversion::after,
body.site-public .face#roadmap::after {
  right: -10px !important;
  top: 78px !important;
  width: 210px !important;
  height: 210px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 260'%3E%3Cg fill='none' stroke='%23e4d1aa' stroke-width='1.2'%3E%3Cpath d='M80 4c48 58 74 118 80 188'/%3E%3Cpath d='M104 0c44 62 68 124 72 194'/%3E%3Cpath d='M128 0c38 64 60 130 62 200'/%3E%3Cpath d='M152 0c32 66 52 136 52 205'/%3E%3Cpath d='M176 0c26 68 44 139 43 210'/%3E%3C/g%3E%3C/svg%3E") !important;
}

body.site-public .face#conversion .conversion-exact-layout,
body.site-public .face#roadmap .roadmap-exact-layout {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-height: calc(100svh - 78px) !important;
  padding: 18px 48px 20px !important;
  display: grid !important;
  align-content: center !important;
  gap: 16px !important;
}

body.site-public .conversion-exact-head,
body.site-public .roadmap-exact-head {
  text-align: center !important;
  display: grid !important;
  justify-items: center !important;
  gap: 8px !important;
}
body.site-public .conversion-exact-head .headline,
body.site-public .roadmap-exact-head .headline {
  margin: 0 !important;
  color: #070707 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(40px, 4vw, 66px) !important;
  line-height: .95 !important;
  letter-spacing: -.035em !important;
  font-weight: 500 !important;
}
body.site-public .conversion-exact-head p,
body.site-public .roadmap-exact-head p {
  margin: 0 !important;
  color: #a56e23 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(15px, 1.45vw, 21px) !important;
  line-height: 1.22 !important;
}
body.site-public .conversion-exact-head > span,
body.site-public .roadmap-exact-head > span {
  position: relative !important;
  display: block !important;
  width: 170px !important;
  height: 1px !important;
  background: rgba(185,126,39,.42) !important;
}
body.site-public .conversion-exact-head > span::after,
body.site-public .roadmap-exact-head > span::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 7px !important;
  height: 7px !important;
  background: #bc7e2a !important;
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

/* Sistema de conversión */
body.site-public .conversion-intel-strip {
  width: min(1180px, 100%) !important;
  margin: 0 auto !important;
  border: 1px solid rgba(186,126,39,.32) !important;
  border-radius: 5px !important;
  background: rgba(255,255,255,.78) !important;
  display: grid !important;
  grid-template-columns: 1.62fr repeat(4, 1fr) !important;
  align-items: center !important;
  overflow: hidden !important;
  min-height: 64px !important;
  box-shadow: 0 7px 18px rgba(70,48,18,.04) !important;
}
body.site-public .conversion-intel-strip > strong {
  padding: 0 22px !important;
  color: #15120c !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 13px !important;
  line-height: 1.32 !important;
  font-weight: 600 !important;
}
body.site-public .conversion-intel-strip article {
  min-height: 64px !important;
  padding: 8px 14px !important;
  display: grid !important;
  grid-template-columns: 36px 1fr !important;
  align-content: center !important;
  column-gap: 10px !important;
  border-left: 1px solid rgba(186,126,39,.24) !important;
}
body.site-public .conversion-intel-strip i {
  grid-row: 1 / span 2 !important;
  width: 30px !important;
  height: 30px !important;
  align-self: center !important;
  color: #bb7f2a !important;
}
body.site-public .conversion-intel-strip i .gch-icon-img,
body.site-public .conversion-intel-strip i .gch-template-icon { width: 26px !important; height: 26px !important; }
body.site-public .conversion-intel-strip b { color:#252119 !important; font-size: 10px !important; line-height: 1.1 !important; font-weight: 900 !important; }
body.site-public .conversion-intel-strip small { color:#474139 !important; font-size: 9px !important; line-height: 1.15 !important; }

body.site-public .conversion-flow-exact {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  gap: 12px !important;
  position: relative !important;
}
body.site-public .conversion-step-exact {
  position: relative !important;
  min-height: 286px !important;
  padding: 28px 13px 14px !important;
  border: 1px solid rgba(186,126,39,.14) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.72) !important;
  display: grid !important;
  grid-template-rows: auto 110px 1fr auto !important;
  gap: 9px !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(55,38,12,.035) !important;
}
body.site-public .conversion-step-exact::after {
  content: "" !important;
  position: absolute !important;
  right: -10px !important;
  top: 36px !important;
  width: 0 !important;
  height: 0 !important;
  border-top: 6px solid transparent !important;
  border-bottom: 6px solid transparent !important;
  border-left: 8px solid #c8892d !important;
  z-index: 2 !important;
}
body.site-public .conversion-step-exact:last-child::after { display:none !important; }
body.site-public .conversion-step-exact > b {
  position: absolute !important;
  left: 50% !important;
  top: -16px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  transform: translateX(-50%) !important;
  display: grid !important;
  place-items: center !important;
  color: #fff !important;
  background: linear-gradient(180deg,#d49a3a,#a5681d) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  box-shadow: 0 7px 14px rgba(180,108,22,.22) !important;
}
body.site-public .conversion-step-exact h3 {
  margin: 0 !important;
  color: #1a1812 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}
body.site-public .conversion-step-exact p {
  margin: 0 !important;
  color: #3e3930 !important;
  font-size: 10.6px !important;
  line-height: 1.47 !important;
}
body.site-public .conversion-step-exact footer {
  margin-top: 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  color: #8c5e23 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}
body.site-public .conversion-step-exact footer i .gch-icon-img,
body.site-public .conversion-step-exact footer i .gch-template-icon { width: 18px !important; height: 18px !important; }

body.site-public .conversion-mini-ui {
  width: 100% !important;
  min-height: 110px !important;
  align-self: stretch !important;
  border: 1px solid rgba(186,126,39,.10) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.55) !important;
  overflow: hidden !important;
}
body.site-public .form-ui { padding: 9px 10px !important; display:grid !important; gap:5px !important; }
body.site-public .form-ui small { color:#1d1a14 !important; font-size:7px !important; font-weight:800 !important; }
body.site-public .form-ui span { height:13px !important; border:1px solid #eee3d2 !important; border-radius:3px !important; color:#9a8d7d !important; text-align:left !important; padding:2px 6px !important; font-size:7px !important; }
body.site-public .form-ui em { height:15px !important; display:grid !important; place-items:center !important; border-radius:3px !important; background:linear-gradient(180deg,#c78a2d,#8a5618) !important; color:#fff !important; font-size:7px !important; font-style:normal !important; font-weight:900 !important; }
body.site-public .envelope-ui { position:relative !important; display:grid !important; place-items:center !important; background: transparent !important; border:0 !important; box-shadow:none !important; }
body.site-public .envelope-ui span { width:118px !important; height:72px !important; border:1px solid #d5c8b4 !important; border-radius:7px !important; background:linear-gradient(145deg,#fff,#ece8e1) !important; box-shadow:0 8px 18px rgba(0,0,0,.08) !important; }
body.site-public .envelope-ui span::before,
body.site-public .envelope-ui span::after { content:"" !important; position:absolute !important; width:84px !important; height:1px !important; background:#d3c5af !important; top:54px !important; }
body.site-public .envelope-ui span::before { transform:rotate(29deg); left:23px !important; }
body.site-public .envelope-ui span::after { transform:rotate(-29deg); right:23px !important; }
body.site-public .envelope-ui i { position:absolute !important; right:14px !important; bottom:23px !important; width:27px !important; height:27px !important; border-radius:50% !important; background:#b97924 !important; }
body.site-public .envelope-ui i::after { content:"✓" !important; color:#fff !important; font-style:normal !important; font-size:16px !important; line-height:27px !important; }
body.site-public .phone-ui { padding:10px !important; display:grid !important; gap:5px !important; text-align:left !important; align-content:start !important; box-shadow:0 9px 16px rgba(0,0,0,.08) !important; }
body.site-public .phone-ui span,
body.site-public .phone-ui small,
body.site-public .phone-ui em { border-radius:8px !important; padding:6px !important; background:#fbfaf8 !important; color:#2b281f !important; font-size:8px !important; line-height:1.25 !important; font-style:normal !important; }
body.site-public .phone-ui em { background:#fff !important; }
body.site-public .calendar-ui { padding:8px !important; display:grid !important; gap:4px !important; }
body.site-public .calendar-ui small { color:#6a5a43 !important; font-size:7px !important; }
body.site-public .calendar-ui strong { color:#332f28 !important; font-size:8px !important; }
body.site-public .calendar-ui div { display:grid !important; grid-template-columns: repeat(5,1fr) !important; gap:2px !important; }
body.site-public .calendar-ui div span { height:15px !important; display:grid !important; place-items:center !important; background:#f6f1e9 !important; font-size:7px !important; color:#544a3d !important; border-radius:2px !important; }
body.site-public .calendar-ui div span.is-hot { background:#c4872b !important; color:#fff !important; }
body.site-public .calendar-ui em { display:inline-grid !important; place-items:center !important; height:14px !important; border:1px solid #eadcc6 !important; color:#4b4339 !important; font-size:7px !important; font-style:normal !important; }
body.site-public .crm-ui { padding:8px !important; display:grid !important; justify-items:center !important; gap:4px !important; }
body.site-public .crm-ui small { width:100% !important; text-align:left !important; color:#6a5a43 !important; font-size:7px !important; }
body.site-public .crm-ui strong { color:#17140f !important; font-size:10px !important; }
body.site-public .crm-ui em { color:#6a5a43 !important; font-size:7px !important; font-style:normal !important; }
body.site-public .crm-ui > span { padding:3px 8px !important; border-radius:999px !important; background:#f5debd !important; color:#8a5517 !important; font-size:7px !important; font-weight:900 !important; }
body.site-public .crm-ui ul { width:100% !important; list-style:none !important; margin:0 !important; padding:0 !important; display:grid !important; gap:3px !important; text-align:left !important; }
body.site-public .crm-ui li { color:#4c453b !important; font-size:7px !important; }
body.site-public .crm-ui li::before { content:"✓" !important; color:#4ea36a !important; margin-right:4px !important; }
body.site-public .proposal-ui { padding:12px !important; display:grid !important; gap:7px !important; text-align:left !important; }
body.site-public .proposal-ui strong { color:#15120c !important; font-size:9px !important; }
body.site-public .proposal-ui small { color:#6b6052 !important; font-size:7px !important; }
body.site-public .proposal-ui span { color:#2d2922 !important; font-size:7px !important; }
body.site-public .proposal-ui span::before { content:"✓" !important; color:#b57825 !important; margin-right:5px !important; }
body.site-public .trophy-ui { display:grid !important; place-items:center !important; border:0 !important; background:transparent !important; box-shadow:none !important; }
body.site-public .trophy-ui i .gch-icon-img,
body.site-public .trophy-ui i .gch-template-icon { width:92px !important; height:92px !important; filter: drop-shadow(0 8px 10px rgba(187,127,42,.16)) !important; }
body.site-public .trophy-ui span { color:#b47729 !important; font-size:14px !important; letter-spacing:.24em !important; }

body.site-public .conversion-metric-exact {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) 1.25fr !important;
  width: min(1210px, 100%) !important;
  margin: 0 auto !important;
  border: 1px solid rgba(186,126,39,.28) !important;
  border-radius: 7px !important;
  background:#fff !important;
  overflow:hidden !important;
}
body.site-public .conversion-metric-exact article {
  min-height: 64px !important;
  padding: 10px 18px !important;
  display:grid !important;
  grid-template-columns:42px 1fr !important;
  align-items:center !important;
  column-gap:12px !important;
  border-left:1px solid rgba(186,126,39,.22) !important;
}
body.site-public .conversion-metric-exact article:first-child { border-left:0 !important; }
body.site-public .conversion-metric-exact i .gch-icon-img,
body.site-public .conversion-metric-exact i .gch-template-icon { width:34px !important; height:34px !important; }
body.site-public .conversion-metric-exact b { color:#bd7f27 !important; font-size:24px !important; line-height:1 !important; font-family:Georgia,"Times New Roman",serif !important; font-weight:600 !important; }
body.site-public .conversion-metric-exact span { color:#4a4338 !important; font-size:10px !important; line-height:1.25 !important; }
body.site-public .conversion-metric-exact .is-black { background:#090807 !important; color:#f8edda !important; grid-template-columns:42px 1fr !important; }
body.site-public .conversion-metric-exact .is-black strong { color:#f5d18b !important; font-size:11px !important; line-height:1.2 !important; letter-spacing:.08em !important; }
body.site-public .conversion-metric-exact .is-black small { color:#fff !important; font-size:10px !important; line-height:1.25 !important; }
body.site-public .conversion-quote-exact {
  width: min(620px,100%) !important;
  min-height:34px !important;
  margin: 0 auto !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid rgba(186,126,39,.22) !important;
  border-radius:5px !important;
  background:rgba(255,255,255,.72) !important;
  color:#29251d !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:14px !important;
  text-align:center !important;
}

/* Roadmap exacto */
body.site-public .roadmap-exact-layout { gap: 15px !important; }
body.site-public .roadmap-timeline-head {
  display:grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap:24px !important;
  width: min(1180px,100%) !important;
  margin: 0 auto !important;
}
body.site-public .roadmap-timeline-head article {
  display:grid !important;
  grid-template-columns:86px 1fr !important;
  grid-template-rows:auto auto auto !important;
  column-gap:16px !important;
  align-items:center !important;
}
body.site-public .roadmap-timeline-head i {
  grid-row:1 / span 3 !important;
  width:74px !important;
  height:74px !important;
  border-radius:50% !important;
  background:linear-gradient(180deg,#d59b3b,#ad6f20) !important;
  display:grid !important;
  place-items:center !important;
  box-shadow:0 12px 18px rgba(189,125,35,.18) !important;
}
body.site-public .roadmap-timeline-head i .gch-icon-img,
body.site-public .roadmap-timeline-head i .gch-template-icon { width:42px !important; height:42px !important; filter:brightness(0) invert(1) !important; }
body.site-public .roadmap-timeline-head small { color:#16130e !important; font-size:10px !important; font-weight:900 !important; line-height:1 !important; }
body.site-public .roadmap-timeline-head h3 { margin:3px 0 0 !important; color:#111 !important; font-family:Georgia,"Times New Roman",serif !important; font-size:27px !important; line-height:1 !important; font-weight:500 !important; }
body.site-public .roadmap-timeline-head p { margin:0 !important; color:#b47729 !important; font-size:14px !important; line-height:1.1 !important; }

body.site-public .roadmap-line-exact {
  width: min(1200px,100%) !important;
  height:28px !important;
  display:grid !important;
  grid-template-columns:32px 1fr 32px 1fr 32px 1fr 32px !important;
  align-items:center !important;
  margin: -2px auto -2px !important;
}
body.site-public .roadmap-line-exact span {
  width:30px !important;
  height:30px !important;
  border-radius:50% !important;
  background:linear-gradient(180deg,#d59b3b,#a96d20) !important;
  color:#fff !important;
  display:grid !important;
  place-items:center !important;
  font-size:14px !important;
  font-weight:900 !important;
  z-index:2 !important;
}
body.site-public .roadmap-line-exact i { height:2px !important; background:linear-gradient(90deg,#b47729,#d2a15a) !important; position:relative !important; }
body.site-public .roadmap-line-exact i::after { content:"" !important; position:absolute !important; right:-3px !important; top:50% !important; transform:translateY(-50%) !important; border-left:8px solid #c9892c !important; border-top:5px solid transparent !important; border-bottom:5px solid transparent !important; }

body.site-public .roadmap-cards-exact {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
  width: min(1210px,100%) !important;
  margin: 0 auto !important;
}
body.site-public .roadmap-cards-exact > article {
  min-height: 288px !important;
  padding:18px 20px 14px !important;
  border:1px solid rgba(186,126,39,.12) !important;
  border-radius:6px !important;
  background:rgba(255,255,255,.70) !important;
  box-shadow:0 8px 18px rgba(55,38,12,.025) !important;
  display:grid !important;
  grid-template-rows:auto 1fr auto !important;
  gap:12px !important;
}
body.site-public .roadmap-cards-exact > article > p {
  margin:0 !important;
  color:#24211b !important;
  font-size:12px !important;
  line-height:1.45 !important;
  text-align:center !important;
}
body.site-public .roadmap-cards-exact ul {
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  gap:12px !important;
}
body.site-public .roadmap-cards-exact li {
  display:grid !important;
  grid-template-columns:32px 1fr !important;
  grid-template-rows:auto auto !important;
  column-gap:12px !important;
  align-items:start !important;
}
body.site-public .roadmap-cards-exact li i { grid-row:1 / span 2 !important; color:#bb7f2a !important; }
body.site-public .roadmap-cards-exact li i .gch-icon-img,
body.site-public .roadmap-cards-exact li i .gch-template-icon { width:26px !important; height:26px !important; }
body.site-public .roadmap-cards-exact li b { color:#15120c !important; font-size:12px !important; line-height:1.15 !important; }
body.site-public .roadmap-cards-exact li span { color:#5c554b !important; font-size:10px !important; line-height:1.25 !important; }
body.site-public .roadmap-cards-exact footer {
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#a56e23 !important;
  font-size:10.8px !important;
  line-height:1.25 !important;
}
body.site-public .roadmap-cards-exact footer i .gch-icon-img,
body.site-public .roadmap-cards-exact footer i .gch-template-icon { width:18px !important; height:18px !important; }
body.site-public .roadmap-cards-exact footer strong { color:#a56e23 !important; }

body.site-public .roadmap-benefits-exact {
  width:min(1210px,100%) !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(4,1fr) 1.15fr !important;
  border:1px solid rgba(186,126,39,.26) !important;
  border-radius:6px !important;
  background:#fff !important;
  overflow:hidden !important;
}
body.site-public .roadmap-benefits-exact article {
  min-height:74px !important;
  padding:12px 18px !important;
  display:grid !important;
  grid-template-columns:44px 1fr !important;
  grid-template-rows:auto auto !important;
  column-gap:12px !important;
  align-content:center !important;
  border-left:1px solid rgba(186,126,39,.20) !important;
}
body.site-public .roadmap-benefits-exact article:first-child { border-left:0 !important; }
body.site-public .roadmap-benefits-exact i { grid-row:1 / span 2 !important; align-self:center !important; }
body.site-public .roadmap-benefits-exact i .gch-icon-img,
body.site-public .roadmap-benefits-exact i .gch-template-icon { width:34px !important; height:34px !important; }
body.site-public .roadmap-benefits-exact strong { color:#1d1a14 !important; font-size:10.5px !important; line-height:1.2 !important; letter-spacing:.04em !important; }
body.site-public .roadmap-benefits-exact span { color:#4a4338 !important; font-size:10px !important; line-height:1.28 !important; }
body.site-public .roadmap-benefits-exact .is-gold {
  background:linear-gradient(135deg,#d49b3a,#b57220) !important;
  color:#fff !important;
}
body.site-public .roadmap-benefits-exact .is-gold strong,
body.site-public .roadmap-benefits-exact .is-gold span { color:#fff !important; }
body.site-public .roadmap-benefits-exact .is-gold i .gch-icon-img,
body.site-public .roadmap-benefits-exact .is-gold i .gch-template-icon { filter:brightness(0) invert(1) !important; }

@media (max-width: 1180px) {
  body.site-public .face#conversion .conversion-exact-layout,
  body.site-public .face#roadmap .roadmap-exact-layout { padding: 22px 18px !important; align-content:start !important; }
  body.site-public .conversion-intel-strip { grid-template-columns:1fr 1fr !important; }
  body.site-public .conversion-intel-strip > strong { grid-column:1 / -1 !important; min-height:50px !important; display:grid !important; align-items:center !important; }
  body.site-public .conversion-flow-exact { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body.site-public .conversion-step-exact::after { display:none !important; }
  body.site-public .conversion-metric-exact,
  body.site-public .roadmap-benefits-exact { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body.site-public .roadmap-timeline-head,
  body.site-public .roadmap-cards-exact { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body.site-public .roadmap-line-exact { display:none !important; }
}
@media (max-width: 767px) {
  body.site-public .conversion-exact-head .headline,
  body.site-public .roadmap-exact-head .headline { font-size:38px !important; }
  body.site-public .conversion-intel-strip,
  body.site-public .conversion-flow-exact,
  body.site-public .conversion-metric-exact,
  body.site-public .roadmap-timeline-head,
  body.site-public .roadmap-cards-exact,
  body.site-public .roadmap-benefits-exact { grid-template-columns:1fr !important; }
  body.site-public .conversion-step-exact { min-height:auto !important; }
  body.site-public .roadmap-timeline-head article { grid-template-columns:74px 1fr !important; }
}

/* === FOOTER CORPORATIVO IDÉNTICO Y SIN ESPACIO ABAJO === */
html body.site-public .gch-footer-page,
html body.site-public.gch-scroll-mode .gch-footer-page,
.face#footer-corporativo-page {
  min-height: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #090909 !important;
  overflow: hidden !important;
}

html body.site-public .gch-footer-page .gch-corporate-footer-exact,
html body.site-public.gch-scroll-mode .gch-footer-page .gch-corporate-footer-exact,
.gch-corporate-footer-exact {
  min-height: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 36px 0 0 !important;
  background:
    radial-gradient(circle at 0% 100%, rgba(214,174,97,.20), transparent 16%),
    radial-gradient(circle at 10% 98%, rgba(214,174,97,.08), transparent 24%),
    linear-gradient(180deg, #111111 0%, #0a0a0a 100%) !important;
  color: rgba(255,248,233,.84) !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(214,174,97,.22) !important;
}

.gch-footer-top-title {
  width: min(1280px, calc(100% - 64px)) !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
}
.gch-footer-top-title p {
  margin: 0 !important;
  color: #d8a246 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
.gch-footer-top-line {
  width: clamp(80px, 11vw, 130px) !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(214,174,97,.8), transparent) !important;
}
.gch-footer-top-diamond {
  width: 8px !important;
  height: 8px !important;
  margin: 10px auto 28px !important;
  background: #d8a246 !important;
  transform: rotate(45deg) !important;
  position: relative !important;
}
.gch-footer-top-diamond::before,
.gch-footer-top-diamond::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  width: 28px !important;
  height: 1px !important;
  background: rgba(214,174,97,.7) !important;
}
.gch-footer-top-diamond::before { right: 16px !important; }
.gch-footer-top-diamond::after { left: 16px !important; }

.gch-footer-grid-exact {
  width: min(1280px, calc(100% - 64px)) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1.22fr .9fr 1.05fr .92fr !important;
  gap: 0 !important;
  border-top: 0 !important;
}
.gch-footer-col {
  position: relative !important;
  padding: 16px 34px 22px !important;
  min-height: 390px !important;
}
.gch-footer-col + .gch-footer-col {
  border-left: 1px solid rgba(214,174,97,.35) !important;
}
.gch-footer-col h4 {
  margin: 0 !important;
  color: #e2b356 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}
.gch-footer-mini-line {
  display: block !important;
  width: 38px !important;
  height: 2px !important;
  margin: 14px 0 24px !important;
  background: #d8a246 !important;
}

.gch-footer-col-brand {
  padding-left: 0 !important;
  padding-right: 36px !important;
}
.gch-footer-brand-full {
  display: block !important;
  width: min(100%, 290px) !important;
  height: auto !important;
  margin: 0 0 18px !important;
}
.gch-footer-brand-copy {
  max-width: 275px !important;
  color: rgba(255,248,233,.88) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  margin: 0 0 24px !important;
}
.gch-footer-location {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 0 22px !important;
}
.gch-footer-location > span {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(214,174,97,.55) !important;
  display: grid !important;
  place-items: center !important;
  color: #d8a246 !important;
  flex: 0 0 38px !important;
}
.gch-footer-location strong {
  color: #fff7e8 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  letter-spacing: .12em !important;
}
.gch-footer-map-glow {
  width: 92% !important;
  height: 110px !important;
  margin-top: 10px !important;
  background:
    radial-gradient(circle at 12% 90%, rgba(214,174,97,.36), transparent 18%),
    radial-gradient(circle at 40% 70%, rgba(255,255,255,.06), transparent 20%),
    radial-gradient(circle at 68% 35%, rgba(214,174,97,.20), transparent 16%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)) !important;
  -webkit-mask-image: radial-gradient(circle at 25% 70%, #000 0 24%, transparent 25%), radial-gradient(circle at 46% 54%, #000 0 16%, transparent 17%), radial-gradient(circle at 58% 67%, #000 0 18%, transparent 19%), radial-gradient(circle at 70% 48%, #000 0 12%, transparent 13%), radial-gradient(circle at 80% 70%, #000 0 20%, transparent 21%);
  mask-image: radial-gradient(circle at 25% 70%, #000 0 24%, transparent 25%), radial-gradient(circle at 46% 54%, #000 0 16%, transparent 17%), radial-gradient(circle at 58% 67%, #000 0 18%, transparent 19%), radial-gradient(circle at 70% 48%, #000 0 12%, transparent 13%), radial-gradient(circle at 80% 70%, #000 0 20%, transparent 21%);
  opacity: .9 !important;
}

.gch-footer-links-list {
  display: grid !important;
  gap: 16px !important;
}
.gch-footer-links-list a {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  color: rgba(255,248,233,.88) !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  margin: 0 !important;
}
.gch-footer-links-list a i {
  color: #d8a246 !important;
  font-style: normal !important;
  font-size: 24px !important;
  line-height: 1 !important;
}

.gch-footer-contact-list {
  display: grid !important;
  gap: 24px !important;
}
.gch-footer-contact-list article {
  display: grid !important;
  grid-template-columns: 58px 1fr !important;
  gap: 14px !important;
  align-items: center !important;
}
.gch-footer-contact-icon {
  width: 58px !important;
  height: 58px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(214,174,97,.55) !important;
  display: grid !important;
  place-items: center !important;
  color: #d8a246 !important;
}
.gch-footer-contact-list b {
  display: block !important;
  margin: 0 0 6px !important;
  color: #e2b356 !important;
  font-size: 14px !important;
  letter-spacing: .04em !important;
}
.gch-footer-contact-list p {
  margin: 0 !important;
  color: rgba(255,248,233,.92) !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

.gch-footer-social-copy {
  max-width: 250px !important;
  color: rgba(255,248,233,.9) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  margin: 0 0 20px !important;
}
.gch-socials-exact {
  display: flex !important;
  gap: 12px !important;
  margin: 0 0 26px !important;
}
.gch-socials-exact a {
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(214,174,97,.55) !important;
  display: grid !important;
  place-items: center !important;
  color: #d8a246 !important;
  margin: 0 !important;
  text-decoration: none !important;
}
.gch-footer-badge-exact {
  display: grid !important;
  grid-template-columns: 56px 1fr !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 18px 16px !important;
  border: 1px solid rgba(214,174,97,.55) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.02) !important;
}
.gch-footer-badge-exact > div:first-child {
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(214,174,97,.55) !important;
  display: grid !important;
  place-items: center !important;
  color: #d8a246 !important;
}
.gch-footer-badge-exact strong {
  display: block !important;
  margin: 0 0 8px !important;
  color: #fff7e8 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
}
.gch-footer-badge-exact p {
  margin: 0 !important;
  color: rgba(255,248,233,.92) !important;
  font-size: 14px !important;
}

.gch-footer-bottom-exact {
  width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 20px 32px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border-top: 1px solid rgba(214,174,97,.35) !important;
  background: rgba(0,0,0,.14) !important;
}
.gch-footer-bottom-exact span {
  min-height: 64px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 20px !important;
  color: rgba(255,248,233,.92) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}
.gch-footer-bottom-exact span + span {
  border-left: 1px solid rgba(214,174,97,.35) !important;
}
.gch-footer-bottom-exact span .gch-template-icon,
.gch-footer-bottom-exact span .gch-icon-img,
.gch-footer-bottom-exact span svg {
  color: #d8a246 !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  flex: 0 0 auto !important;
}
.gch-footer-bottom-exact span:last-child {
  justify-content: flex-end !important;
  text-align: right !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* eliminar cualquier espacio residual debajo del footer */
html body.site-public main.site-stage,
html body.site-public.gch-scroll-mode main.site-stage,
html body.site-public .site-stage[data-screen-root],
html body.site-public.gch-scroll-mode .site-stage[data-screen-root] {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
html body.site-public .gch-footer-page:last-child,
html body.site-public.gch-scroll-mode .gch-footer-page:last-child,
html body.site-public .gch-footer-page:last-child .gch-corporate-footer-exact,
html body.site-public.gch-scroll-mode .gch-footer-page:last-child .gch-corporate-footer-exact {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
html body.site-public,
html body.site-public.gch-scroll-mode {
  background: #090909 !important;
}

@media (max-width: 1180px) {
  .gch-footer-grid-exact {
    grid-template-columns: 1fr 1fr !important;
  }
  .gch-footer-col:nth-child(3) { border-left: 0 !important; }
  .gch-footer-col { min-height: auto !important; }
  .gch-footer-bottom-exact {
    grid-template-columns: 1fr 1fr !important;
  }
  .gch-footer-bottom-exact span:nth-child(3) { border-left: 0 !important; }
}
@media (max-width: 767px) {
  .gch-footer-top-title,
  .gch-footer-grid-exact { width: calc(100% - 28px) !important; }
  .gch-footer-grid-exact,
  .gch-footer-bottom-exact { grid-template-columns: 1fr !important; }
  .gch-footer-col {
    padding: 14px 0 22px !important;
    border-left: 0 !important;
    border-bottom: 1px solid rgba(214,174,97,.24) !important;
  }
  .gch-footer-bottom-exact {
    padding: 16px 14px !important;
  }
  .gch-footer-bottom-exact span,
  .gch-footer-bottom-exact span:last-child {
    padding: 14px 0 !important;
    border-left: 0 !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }
}

/* === CIERRE DEFINITIVO: DESPUÉS DEL FOOTER NO EXISTE ESPACIO VACÍO === */
html,
html body,
html body.site-public,
html body.site-public.gch-scroll-mode {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  background: #090909 !important;
  overscroll-behavior-y: none !important;
}

html body.site-public::after,
html body.site-public.gch-scroll-mode::after,
html body.site-public main.site-stage::after,
html body.site-public.gch-scroll-mode main.site-stage::after,
html body.site-public .site-stage[data-screen-root]::after,
html body.site-public.gch-scroll-mode .site-stage[data-screen-root]::after {
  display: none !important;
  content: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.site-public main.site-stage[data-screen-root],
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root],
html body.site-public .site-stage[data-screen-root],
html body.site-public.gch-scroll-mode .site-stage[data-screen-root] {
  height: auto !important;
  min-height: 0 !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  overflow: visible !important;
}

html body.site-public main.site-stage[data-screen-root] > section.face#footer-corporativo-page.gch-footer-page,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#footer-corporativo-page.gch-footer-page,
html body.site-public .site-stage[data-screen-root] > section.face#footer-corporativo-page.gch-footer-page,
html body.site-public.gch-scroll-mode .site-stage[data-screen-root] > section.face#footer-corporativo-page.gch-footer-page,
section.face#footer-corporativo-page.gch-footer-page {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  margin-bottom: -1px !important;
  padding: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
  background: #090909 !important;
  scroll-margin-bottom: 0 !important;
}

html body.site-public main.site-stage[data-screen-root] > section.face#footer-corporativo-page.gch-footer-page > footer.gch-corporate-footer,
html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#footer-corporativo-page.gch-footer-page > footer.gch-corporate-footer,
section.face#footer-corporativo-page.gch-footer-page > footer.gch-corporate-footer,
footer#gch-corporativo,
footer#footer-corporativo {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
}

html body.site-public .gch-footer-bottom-exact,
html body.site-public.gch-scroll-mode .gch-footer-bottom-exact,
section.face#footer-corporativo-page .gch-footer-bottom-exact {
  margin-bottom: 0 !important;
  padding-bottom: 20px !important;
  border-bottom: 0 !important;
}

html body.site-public .gch-footer-bottom-exact:last-child,
html body.site-public.gch-scroll-mode .gch-footer-bottom-exact:last-child,
section.face#footer-corporativo-page .gch-footer-bottom-exact:last-child {
  margin-bottom: 0 !important;
}

/* Si queda una utilidad flotante fuera del main, no debe sumar alto ni crear bajada extra */
html body.site-public > .admin-link,
html body.site-public.gch-scroll-mode > .admin-link {
  position: fixed !important;
  bottom: 12px !important;
  right: 12px !important;
  margin: 0 !important;
}

/* === FOOTER: REDES CON ICONOS PNG_INDIVIDUALES SIN CÍRCULO EXTRA === */
.gch-footer-col-social .gch-socials-png-clean,
.gch-footer-col-social .gch-socials-exact.gch-socials-png-clean {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin: 0 0 28px !important;
}

.gch-footer-col-social .gch-socials-png-clean a,
.gch-footer-col-social .gch-socials-exact.gch-socials-png-clean a,
.gch-footer-col-social .gch-socials-png-clean span,
.gch-footer-col-social .gch-socials-exact.gch-socials-png-clean span {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

.gch-footer-col-social .gch-socials-png-clean a::before,
.gch-footer-col-social .gch-socials-png-clean a::after,
.gch-footer-col-social .gch-socials-png-clean span::before,
.gch-footer-col-social .gch-socials-png-clean span::after {
  content: none !important;
  display: none !important;
}

.gch-footer-col-social .gch-socials-png-clean .gch-template-icon,
.gch-footer-col-social .gch-socials-png-clean .gch-icon-img,
.gch-footer-col-social .gch-socials-png-clean img {
  width: 46px !important;
  height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
  object-fit: contain !important;
  display: block !important;
  filter: none !important;
}

@media (max-width: 767px) {
  .gch-footer-col-social .gch-socials-png-clean .gch-template-icon,
  .gch-footer-col-social .gch-socials-png-clean .gch-icon-img,
  .gch-footer-col-social .gch-socials-png-clean img {
    width: 42px !important;
    height: 42px !important;
    max-width: 42px !important;
    max-height: 42px !important;
  }
}

/* === FOOTER: CONTACTO DIRECTO Y SÍGUENOS CON PNG INDIVIDUALES REALES === */
.gch-footer-contact-png-clean article {
  grid-template-columns: 48px 1fr !important;
  gap: 16px !important;
  align-items: center !important;
}

.gch-footer-contact-png-clean .gch-footer-contact-icon,
.gch-footer-contact-png-clean .has-gch-svg-icon,
.gch-footer-col-contact .gch-footer-contact-icon {
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
}

.gch-footer-contact-png,
.gch-footer-contact-png-clean img.gch-footer-contact-png {
  width: 44px !important;
  height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
  object-fit: contain !important;
  display: block !important;
  filter: none !important;
}

.gch-footer-col-social .gch-socials-png-clean {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}

.gch-footer-col-social .gch-socials-png-clean a,
.gch-footer-col-social .gch-socials-png-clean a.has-gch-svg-icon,
.gch-footer-col-social .gch-socials-png-clean span {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.gch-footer-col-social .gch-socials-png-clean a::before,
.gch-footer-col-social .gch-socials-png-clean a::after,
.gch-footer-col-social .gch-socials-png-clean span::before,
.gch-footer-col-social .gch-socials-png-clean span::after {
  content: none !important;
  display: none !important;
}

.gch-footer-col-social .gch-socials-png-clean img,
.gch-footer-col-social .gch-socials-png-clean .gch-template-icon,
.gch-footer-col-social .gch-socials-png-clean .gch-icon-img {
  width: 46px !important;
  height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
  object-fit: contain !important;
  display: block !important;
  filter: none !important;
}

/* === FOOTER: UN SOLO WHATSAPP EN SÍGUENOS + CONTACTO DIRECTO LIMPIO === */
.gch-footer-col-social .gch-socials-png-clean .gch-nav-icon {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.gch-footer-col-social .gch-socials-png-clean a,
.gch-footer-col-social .gch-socials-png-clean a[aria-label],
.gch-footer-col-social .gch-socials-png-clean a.has-gch-svg-icon {
  position: relative !important;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.gch-footer-col-social .gch-socials-png-clean a::before,
.gch-footer-col-social .gch-socials-png-clean a::after {
  content: none !important;
  display: none !important;
}

.gch-footer-col-social .gch-socials-png-clean a > img:not(.gch-nav-icon) {
  display: block !important;
  width: 46px !important;
  height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
  object-fit: contain !important;
  filter: none !important;
}

.gch-footer-contact-png-clean article {
  grid-template-columns: 46px 1fr !important;
  gap: 16px !important;
  align-items: center !important;
}

.gch-footer-contact-png-clean .gch-footer-contact-png,
.gch-footer-col-contact .gch-footer-contact-png {
  width: 46px !important;
  height: 46px !important;
  max-width: 46px !important;
  max-height: 46px !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  display: block !important;
}

.gch-footer-contact-png-clean .gch-footer-contact-icon,
.gch-footer-contact-png-clean .has-gch-svg-icon,
.gch-footer-col-contact .gch-footer-contact-icon {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* === ICONOS PNG_INDIVIDUALES EN COLOR OFICIAL #e2b356 === */
body.site-public .has-gch-svg-icon .gch-icon-img,
body.site-public .has-gch-svg-icon .gch-template-icon,
body.site-public .gch-svg-icon .gch-icon-img,
body.site-public .gch-svg-icon .gch-template-icon,
body.site-public img.gch-icon-img,
body.site-public img.gch-template-icon {
  filter: none !important;
}

body.site-public .gch-footer-col-social .gch-socials,
body.site-public .gch-footer-col-social .gch-socials-exact {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}
body.site-public .gch-footer-col-social .gch-socials a,
body.site-public .gch-footer-col-social .gch-socials span,
body.site-public .gch-footer-col-social .gch-socials-exact a,
body.site-public .gch-footer-col-social .gch-socials-exact span {
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body.site-public .gch-footer-col-social .gch-socials a::before,
body.site-public .gch-footer-col-social .gch-socials a::after,
body.site-public .gch-footer-col-social .gch-socials span::before,
body.site-public .gch-footer-col-social .gch-socials span::after,
body.site-public .gch-footer-col-social .gch-socials-exact a::before,
body.site-public .gch-footer-col-social .gch-socials-exact a::after,
body.site-public .gch-footer-col-social .gch-socials-exact span::before,
body.site-public .gch-footer-col-social .gch-socials-exact span::after {
  content: none !important;
  display: none !important;
}
body.site-public .gch-footer-col-social .gch-socials img,
body.site-public .gch-footer-col-social .gch-socials-exact img {
  width: 30px !important;
  height: 30px !important;
  max-width: 30px !important;
  max-height: 30px !important;
  object-fit: contain !important;
  filter: none !important;
}

body.site-public .gch-footer-contact-icon,
body.site-public .gch-footer-contact-list .gch-footer-contact-icon {
  border-color: rgba(226,179,86,.55) !important;
  color: #e2b356 !important;
}
body.site-public .gch-footer-contact-icon img,
body.site-public .gch-footer-contact-list .gch-footer-contact-icon img {
  filter: none !important;
}

/* === INSIGHTS ESTRATÉGICOS ADMINISTRABLES DESDE BD === */
body.site-public .face#insights .insights-admin-note {
  display: grid !important;
  grid-template-columns: 54px minmax(0,1fr) !important;
  gap: 14px !important;
  align-items: center !important;
  margin: 18px 0 18px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(191,158,95,.28) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.74) !important;
}
body.site-public .face#insights .insights-admin-note > span {
  width: 54px !important;
  height: 54px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(226,179,86,.42) !important;
}
body.site-public .face#insights .insights-admin-note strong { display:block !important; color:#15100a !important; font-size:12px !important; text-transform:uppercase !important; letter-spacing:.08em !important; }
body.site-public .face#insights .insights-admin-note p { margin:4px 0 0 !important; color:#4b443b !important; font-size:12px !important; line-height:1.5 !important; }

body.site-public .face#insights .insights-tabs button small {
  margin-left: 6px !important;
  color: inherit !important;
  opacity: .72 !important;
  font-size: 9px !important;
}

body.site-public .face#insights .insight-db-card[hidden],
body.site-public .face#insights .insight-db-card.is-hidden {
  display: none !important;
}
body.site-public .face#insights .insight-db-cover {
  position: relative !important;
  overflow: hidden !important;
  height: 142px !important;
}
body.site-public .face#insights .insight-db-cover.has-image {
  background: #15110b !important;
}
body.site-public .face#insights .insight-db-cover img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
}
body.site-public .face#insights .insight-db-cover::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.42)) !important;
}
body.site-public .face#insights .insight-db-cover span {
  position: absolute !important;
  z-index: 2 !important;
  left: 12px !important;
  bottom: 12px !important;
  max-width: calc(100% - 24px) !important;
  padding: 7px 10px !important;
  border-radius: 999px !important;
  background: rgba(0,0,0,.58) !important;
  color: #f9e7c4 !important;
  border: 1px solid rgba(226,179,86,.35) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
body.site-public .face#insights .insights-empty-db {
  min-height: 260px !important;
  display: grid !important;
  place-items: center !important;
  text-align: center !important;
  gap: 12px !important;
  padding: 32px !important;
  border: 1px dashed rgba(191,158,95,.42) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.72) !important;
}
body.site-public .face#insights .insights-empty-db > span {
  width: 70px !important;
  height: 70px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(226,179,86,.42) !important;
  display: grid !important;
  place-items: center !important;
}
body.site-public .face#insights .insights-empty-db h3 { margin:0 !important; font-family:Georgia,"Times New Roman",serif !important; font-size:26px !important; }
body.site-public .face#insights .insights-empty-db p { margin:0 !important; color:#4b443b !important; }

/* === INSIGHTS ESTRATÉGICOS: VERSIÓN MÁS HERMOSA Y AGRADABLE === */
body.site-public .face#insights {
  padding-bottom: 34px !important;
  background:
    radial-gradient(circle at 0% 100%, rgba(226,179,86,.14), transparent 18%) !important,
    radial-gradient(circle at 100% 12%, rgba(226,179,86,.11), transparent 16%) !important,
    linear-gradient(180deg, #fdfbf7 0%, #f7f2e8 100%) !important;
}

body.site-public .face#insights .insights-layout.insights-db-layout {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 360px) !important;
  gap: 32px !important;
}

body.site-public .face#insights .insights-heading-row {
  gap: 34px !important;
  align-items: end !important;
}

body.site-public .face#insights .insights-heading .headline {
  font-size: clamp(60px, 5.1vw, 88px) !important;
  line-height: .94 !important;
}

body.site-public .face#insights .insights-heading .sub {
  max-width: 840px !important;
  font-size: 17px !important;
  line-height: 1.68 !important;
}

body.site-public .face#insights .insights-quote {
  padding: 28px 26px 24px 34px !important;
  border-left: 2px solid rgba(226,179,86,.44) !important;
  border-radius: 0 18px 18px 0 !important;
  background: linear-gradient(180deg, rgba(255,255,255,.66), rgba(255,255,255,.36)) !important;
  box-shadow: 0 12px 28px rgba(84,62,26,.055) !important;
}
body.site-public .face#insights .insights-quote p {
  font-size: 14px !important;
  line-height: 1.78 !important;
}

body.site-public .face#insights .insights-admin-note {
  margin: 22px 0 20px !important;
  padding: 18px 20px !important;
  border: 1px solid rgba(226,179,86,.28) !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,249,238,.88)) !important;
  box-shadow: 0 14px 32px rgba(84,62,26,.06) !important;
}
body.site-public .face#insights .insights-admin-note > span {
  background: rgba(255,255,255,.9) !important;
  color: #e2b356 !important;
  box-shadow: 0 8px 20px rgba(226,179,86,.12) !important;
}
body.site-public .face#insights .insights-admin-note strong {
  font-size: 13px !important;
}
body.site-public .face#insights .insights-admin-note p {
  font-size: 13px !important;
  line-height: 1.62 !important;
}

body.site-public .face#insights .insights-tabs {
  height: auto !important;
  min-height: 54px !important;
  padding: 7px !important;
  margin: 26px 0 28px !important;
  gap: 8px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 12px 30px rgba(84,62,26,.05) !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}
body.site-public .face#insights .insights-tabs button {
  height: 40px !important;
  padding: 0 18px !important;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  letter-spacing: .06em !important;
  flex: 0 0 auto !important;
}
body.site-public .face#insights .insights-tabs button:hover {
  background: rgba(226,179,86,.10) !important;
  color: #8b5a12 !important;
}
body.site-public .face#insights .insights-tabs button.is-active {
  background: linear-gradient(135deg, #e2b356 0%, #c8902f 100%) !important;
  color: #1e1406 !important;
  border-color: rgba(151,102,22,.18) !important;
  box-shadow: 0 10px 24px rgba(226,179,86,.24) !important;
}
body.site-public .face#insights .insights-tabs button small {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 6px !important;
  border-radius: 999px !important;
  background: rgba(0,0,0,.08) !important;
  font-size: 9px !important;
}

body.site-public .face#insights .insights-card-grid.insights-db-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
}

body.site-public .face#insights .insight-card.insight-db-card {
  min-height: 430px !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  border-radius: 24px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,249,239,.88)) !important;
  box-shadow: 0 18px 42px rgba(84,62,26,.08) !important;
}
body.site-public .face#insights .insight-card.insight-db-card:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 24px 46px rgba(84,62,26,.12) !important;
  border-color: rgba(226,179,86,.36) !important;
}
body.site-public .face#insights .insight-db-cover {
  height: 180px !important;
  border-bottom: 1px solid rgba(226,179,86,.10) !important;
}
body.site-public .face#insights .insight-db-cover img {
  transform: scale(1.01) !important;
  transition: transform .35s ease !important;
}
body.site-public .face#insights .insight-card.insight-db-card:hover .insight-db-cover img {
  transform: scale(1.06) !important;
}
body.site-public .face#insights .insight-db-cover::after {
  background: linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.18) 48%, rgba(0,0,0,.62) 100%) !important;
}
body.site-public .face#insights .insight-db-cover span {
  left: 16px !important;
  bottom: 16px !important;
  padding: 8px 12px !important;
  background: rgba(15,11,8,.72) !important;
  border-color: rgba(226,179,86,.45) !important;
  color: #f4ddb0 !important;
}
body.site-public .face#insights .insight-card-body {
  padding: 18px 18px 16px !important;
}
body.site-public .face#insights .insight-card.insight-db-card small {
  margin-bottom: 12px !important;
  padding: 6px 11px !important;
  border-radius: 999px !important;
  background: rgba(226,179,86,.12) !important;
  color: #a86d15 !important;
  font-size: 9px !important;
}
body.site-public .face#insights .insight-card.insight-db-card h3 {
  font-size: 22px !important;
  line-height: 1.18 !important;
  margin-bottom: 10px !important;
}
body.site-public .face#insights .insight-card.insight-db-card p {
  margin-bottom: 16px !important;
  font-size: 12.6px !important;
  line-height: 1.62 !important;
  color: #554b3f !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
body.site-public .face#insights .insight-author {
  padding-top: 14px !important;
  border-top: 1px solid rgba(226,179,86,.12) !important;
}
body.site-public .face#insights .author-avatar {
  border: 2px solid rgba(226,179,86,.24) !important;
  box-shadow: 0 8px 18px rgba(84,62,26,.08) !important;
}
body.site-public .face#insights .insight-author strong {
  font-size: 11px !important;
}
body.site-public .face#insights .insight-author em {
  font-size: 10px !important;
}
body.site-public .face#insights .insight-author b {
  width: 28px !important;
  height: 28px !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: rgba(226,179,86,.12) !important;
  color: #b67918 !important;
}

body.site-public .face#insights .insights-sidebar {
  position: sticky !important;
  top: 100px !important;
  gap: 22px !important;
}
body.site-public .face#insights .insights-subscribe,
body.site-public .face#insights .insights-featured {
  border-radius: 24px !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,249,239,.88)) !important;
  box-shadow: 0 18px 42px rgba(84,62,26,.08) !important;
}
body.site-public .face#insights .insights-subscribe {
  padding: 30px 26px 24px !important;
}
body.site-public .face#insights .subscribe-icon {
  width: 54px !important;
  height: 54px !important;
  margin-bottom: 16px !important;
  border-color: rgba(226,179,86,.34) !important;
  color: #e2b356 !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 10px 20px rgba(226,179,86,.12) !important;
}
body.site-public .face#insights .insights-subscribe h3 {
  font-size: 28px !important;
}
body.site-public .face#insights .insights-subscribe p {
  font-size: 13px !important;
  line-height: 1.68 !important;
}
body.site-public .face#insights .insights-subscribe input[type="email"] {
  height: 46px !important;
  border-radius: 12px !important;
  padding: 0 16px !important;
}
body.site-public .face#insights .insights-subscribe button {
  height: 46px !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #e2b356 0%, #c8902f 100%) !important;
  color: #1f1406 !important;
  font-size: 11px !important;
  box-shadow: 0 12px 24px rgba(226,179,86,.22) !important;
}
body.site-public .face#insights .insights-subscribe small {
  margin-top: 14px !important;
}
body.site-public .face#insights .insights-featured {
  padding: 24px !important;
}
body.site-public .face#insights .insights-featured h3 {
  font-size: 14px !important;
}
body.site-public .face#insights .featured-resource {
  grid-template-columns: 54px minmax(0, 1fr) 22px !important;
  gap: 14px !important;
  padding: 14px 0 !important;
  text-decoration: none !important;
}
body.site-public .face#insights .featured-resource > span {
  width: 54px !important;
  height: 54px !important;
  border-radius: 14px !important;
  border-color: rgba(226,179,86,.20) !important;
  background: linear-gradient(180deg, #fffdf8, #f7efdf) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 10px 20px rgba(84,62,26,.05) !important;
}
body.site-public .face#insights .featured-resource strong {
  font-size: 13px !important;
}
body.site-public .face#insights .featured-resource p {
  font-size: 11px !important;
  line-height: 1.5 !important;
}
body.site-public .face#insights .featured-resource b {
  width: 26px !important;
  height: 26px !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: rgba(226,179,86,.10) !important;
  transform: none !important;
}
body.site-public .face#insights .featured-all {
  height: 46px !important;
  margin-top: 20px !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(249,242,228,.9)) !important;
}

body.site-public .face#insights .insights-benefits {
  margin-top: 28px !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  border-radius: 24px !important;
  border-color: rgba(226,179,86,.18) !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,249,239,.88)) !important;
  box-shadow: 0 18px 42px rgba(84,62,26,.08) !important;
}
body.site-public .face#insights .insights-benefits article {
  min-height: 116px !important;
  grid-template-columns: 56px minmax(0, 1fr) !important;
  gap: 16px !important;
  padding: 18px 20px !important;
  border-left-color: rgba(226,179,86,.18) !important;
}
body.site-public .face#insights .insights-benefits span {
  width: 56px !important;
  height: 56px !important;
  border-radius: 18px !important;
  display: grid !important;
  place-items: center !important;
  font-size: 26px !important;
  background: linear-gradient(180deg, #fffdf8, #f7efdf) !important;
  color: #e2b356 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 10px 20px rgba(84,62,26,.05) !important;
}
body.site-public .face#insights .insights-benefits strong {
  font-size: 13px !important;
  margin-bottom: 6px !important;
}
body.site-public .face#insights .insights-benefits p {
  font-size: 11px !important;
  line-height: 1.5 !important;
}

@media (max-width: 1320px) {
  body.site-public .face#insights .insights-card-grid.insights-db-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 1100px) {
  body.site-public .face#insights .insights-layout.insights-db-layout {
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#insights .insights-sidebar {
    position: relative !important;
    top: auto !important;
    grid-template-columns: 1fr 1fr !important;
  }
  body.site-public .face#insights .insights-card-grid.insights-db-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.site-public .face#insights .insights-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767px) {
  body.site-public .face#insights {
    padding-inline: 12px !important;
  }
  body.site-public .face#insights .insights-heading-row,
  body.site-public .face#insights .insights-sidebar {
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#insights .insights-card-grid.insights-db-grid,
  body.site-public .face#insights .insights-benefits {
    grid-template-columns: 1fr !important;
  }
  body.site-public .face#insights .insight-card.insight-db-card {
    min-height: 390px !important;
  }
  body.site-public .face#insights .insight-db-cover {
    height: 170px !important;
  }
  body.site-public .face#insights .insights-subscribe,
  body.site-public .face#insights .insights-featured {
    padding: 20px !important;
  }
}

/* === IMÁGENES PROPORCIONALES: RECURSOS, TIENDA Y DETALLE SIN DEFORMAR === */
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image,
body.site-public .product-cover.has-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px !important;
  background: #fffaf3 !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image img,
body.site-public .product-cover.has-image img {
  position: relative !important;
  inset: auto !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  margin: auto !important;
  border-radius: 12px !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image {
  height: 222px !important;
  min-height: 222px !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image::before,
body.site-public .product-cover.has-image::before,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image .cover-badge,
body.site-public .product-cover.has-image .cover-badge,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image strong,
body.site-public .product-cover.has-image strong,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image small,
body.site-public .product-cover.has-image small,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image em,
body.site-public .product-cover.has-image em,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image i,
body.site-public .product-cover.has-image i {
  display: none !important;
  content: none !important;
}
.modal-product-media {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px !important;
  background: #fffaf3 !important;
}
.modal-product-media img,
.product-exact-image-box img,
.product-detail-image img,
.product-page .product-cover.has-image img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}
.product-exact-image-box,
.product-detail-image,
.product-page .product-cover.has-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fffaf3 !important;
}
body.site-public .face#insights .insight-db-cover img {
  object-fit: cover !important;
  object-position: center center !important;
}

/* === REFUERZO FINAL: RECURSOS CON IMAGEN PROPORCIONAL REAL + CROP 16:10 === */
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 10 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  background: #fffaf3 !important;
  display: block !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
}
body.site-public .face#recursos .recurso-card,
body.site-public .face#recursos .recurso-card * {
  box-sizing: border-box !important;
}
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image::before,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image .cover-badge,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image strong,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image small,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image em,
body.site-public .face#recursos .recurso-visual-link .product-cover.has-image i {
  display: none !important;
  content: none !important;
}

/* En detalle / popup se ve completa, sin estirarse ni recortarse */
.modal-product-media,
.product-exact-image-box,
.product-detail-image,
.product-page .product-cover.has-image {
  background: #fffaf3 !important;
  padding: 14px !important;
  overflow: hidden !important;
}
.modal-product-media img,
.product-exact-image-box img,
.product-detail-image img,
.product-page .product-cover.has-image img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* === DETALLE DE RECURSO ABIERTO: MAQUETA PREMIUM IDENTICA EN ESTRUCTURA === */
body.site-public .modal.is-product-detail.is-resource-showcase-modal {
  padding: 18px !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0,0,0,.70) !important;
  backdrop-filter: blur(8px) !important;
}
body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-card {
  width: min(1600px, 97vw) !important;
  max-width: min(1600px, 97vw) !important;
  height: auto !important;
  max-height: 94vh !important;
  overflow: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 6px !important;
  background: #fdfbf7 !important;
  box-shadow: 0 36px 90px rgba(0,0,0,.42) !important;
}
body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-close {
  position: sticky !important;
  top: 14px !important;
  margin-left: auto !important;
  margin-right: 14px !important;
  z-index: 50 !important;
  width: 38px !important;
  height: 38px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(226,179,86,.34) !important;
  border-radius: 50% !important;
  background: rgba(12,12,12,.90) !important;
  color: #e2b356 !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.25) !important;
}
body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-kicker,
body.site-public .modal.is-product-detail.is-resource-showcase-modal #modalTitle,
body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-actions {
  display: none !important;
}
body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-body {
  padding: 0 !important;
  margin-top: -38px !important;
}

.gch-resource-page-screen {
  min-height: 100vh !important;
  padding: 94px 22px 28px !important;
  background: #fdfbf7 !important;
}
.gch-resource-page-screen .gch-resource-showcase {
  margin: 0 auto !important;
  max-width: 1600px !important;
  box-shadow: 0 28px 72px rgba(64,43,14,.12) !important;
}

.gch-resource-showcase {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  width: 100% !important;
  min-height: 760px !important;
  padding: 34px 54px 28px !important;
  color: #111 !important;
  background:
    radial-gradient(circle at 0% 100%, rgba(226,179,86,.08), transparent 22%) !important,
    radial-gradient(circle at 100% 0%, rgba(226,179,86,.06), transparent 22%) !important,
    linear-gradient(180deg, #fffdfa 0%, #fbf8f1 100%) !important;
}
.gch-resource-showcase .gch-rs-corner {
  position: absolute !important;
  width: 310px !important;
  height: 310px !important;
  border-radius: 50% !important;
  pointer-events: none !important;
  opacity: .42 !important;
  background: repeating-radial-gradient(circle, transparent 0 10px, rgba(226,179,86,.24) 11px 12px, transparent 13px 24px) !important;
  z-index: -1 !important;
}
.gch-resource-showcase .gch-rs-corner-tl { left: -205px !important; bottom: -210px !important; }
.gch-resource-showcase .gch-rs-corner-br { right: -205px !important; top: -205px !important; }
.gch-rs-header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 28px !important;
  margin-bottom: 12px !important;
}
.gch-rs-brand img {
  width: min(380px, 34vw) !important;
  max-height: 72px !important;
  object-fit: contain !important;
  object-position: left center !important;
  display: block !important;
}
.gch-rs-stamp {
  min-width: 280px !important;
  padding: 15px 22px !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 13px !important;
  border-radius: 6px !important;
  background: #101010 !important;
  color: #fff !important;
  box-shadow: 0 14px 32px rgba(0,0,0,.16) !important;
}
.gch-rs-stamp .has-gch-svg-icon {
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  color: #e2b356 !important;
}
.gch-rs-stamp b {
  display: block !important;
  color: #e2b356 !important;
  font-size: 12px !important;
  line-height: 1.1 !important;
  letter-spacing: .14em !important;
  font-weight: 900 !important;
}
.gch-rs-stamp strong {
  display: block !important;
  margin-top: 4px !important;
  color: #fff !important;
  font-size: 12px !important;
  line-height: 1.1 !important;
  letter-spacing: .10em !important;
  font-weight: 900 !important;
}
.gch-rs-main-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.48fr) minmax(310px, .58fr) minmax(310px, .62fr) !important;
  gap: 46px !important;
  align-items: start !important;
}
.gch-rs-kicker {
  margin: 0 0 6px !important;
  color: #b17a24 !important;
  font-size: 15px !important;
  line-height: 1 !important;
  letter-spacing: .13em !important;
  font-weight: 850 !important;
  text-transform: uppercase !important;
}
.gch-rs-hero h1 {
  margin: 0 !important;
  color: #0b0b0b !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(52px, 4.9vw, 86px) !important;
  line-height: .98 !important;
  letter-spacing: -.055em !important;
  font-weight: 400 !important;
}
.gch-rs-subtitle {
  max-width: 880px !important;
  margin: 16px 0 0 !important;
  color: #191919 !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}
.gch-rs-description {
  max-width: 880px !important;
  margin: 8px 0 0 !important;
  color: #53483a !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
.gch-rs-visual {
  margin-top: 28px !important;
  width: 100% !important;
  min-height: 330px !important;
  aspect-ratio: 16 / 9 !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  border: 2px solid rgba(226,179,86,.62) !important;
  border-radius: 10px !important;
  background: #101314 !important;
  box-shadow: 0 18px 46px rgba(0,0,0,.22), 0 0 0 1px rgba(0,0,0,.18) inset !important;
}
.gch-rs-visual > img,
.gch-rs-visual .product-visual img,
.gch-rs-visual picture img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  display: block !important;
  object-fit: contain !important;
  object-position: center center !important;
}
.gch-rs-visual .product-visual,
.gch-rs-visual .product-visual * {
  max-width: 100% !important;
}
.gch-rs-placeholder {
  width: 100% !important;
  height: 100% !important;
  display: grid !important;
  place-items: center !important;
  color: #e2b356 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 80px !important;
  background: radial-gradient(circle at 50% 30%, rgba(226,179,86,.22), transparent 28%), linear-gradient(135deg,#111,#1c1c1c) !important;
}
.gch-rs-section-title {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 22px !important;
  color: #a16b1e !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
.gch-rs-section-title i {
  flex: 1 1 auto !important;
  height: 1px !important;
  background: linear-gradient(90deg, rgba(226,179,86,.50), transparent) !important;
}
.gch-rs-section-title-center { justify-content: center !important; }
.gch-rs-section-title-center i { max-width: 160px !important; background: rgba(226,179,86,.36) !important; }
.gch-rs-benefits {
  padding-top: 122px !important;
}
.gch-rs-benefits article {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: start !important;
  margin-bottom: 24px !important;
}
.gch-rs-benefits article > span {
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  color: #e2b356 !important;
}
.gch-rs-benefits strong {
  display: block !important;
  margin-bottom: 6px !important;
  color: #131313 !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
}
.gch-rs-benefits p {
  margin: 0 !important;
  color: #4a4032 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}
.gch-rs-price-card {
  margin-top: 70px !important;
  padding: 34px 34px 26px !important;
  border: 1px solid rgba(226,179,86,.38) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: 0 20px 46px rgba(70,48,16,.09) !important;
  text-align: center !important;
}
.gch-rs-price-label {
  display: block !important;
  margin: 0 0 12px !important;
  color: #a16b1e !important;
  font-size: 14px !important;
  letter-spacing: .12em !important;
  font-weight: 850 !important;
}
.gch-rs-price {
  display: flex !important;
  align-items: baseline !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-bottom: 8px !important;
}
.gch-rs-price small {
  color: #9d9284 !important;
  text-decoration: line-through !important;
  font-size: 22px !important;
}
.gch-rs-price strong {
  color: #a86c14 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(48px, 3.6vw, 74px) !important;
  line-height: .95 !important;
  font-weight: 400 !important;
}
.gch-rs-price-card p {
  margin: 0 0 22px !important;
  color: #4a4032 !important;
  font-size: 13px !important;
}
.gch-rs-price-card ul {
  margin: 0 0 24px !important;
  padding: 0 !important;
  list-style: none !important;
  text-align: left !important;
}
.gch-rs-price-card li {
  position: relative !important;
  padding: 7px 0 7px 30px !important;
  color: #2b251f !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}
.gch-rs-price-card li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 4px !important;
  top: 7px !important;
  color: #c38a2a !important;
  font-weight: 900 !important;
}
.gch-rs-buy-form button {
  width: 100% !important;
  height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #e2b356, #bd7c22) !important;
  color: #fff !important;
  font-size: 15px !important;
  line-height: 1 !important;
  letter-spacing: .13em !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  box-shadow: 0 12px 24px rgba(189,124,34,.22) !important;
}
.gch-rs-secure {
  margin-top: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  color: #655a4c !important;
  font-size: 12px !important;
}
.gch-rs-characteristics {
  margin-top: 24px !important;
}
.gch-rs-character-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 0 !important;
}
.gch-rs-character-grid article {
  min-height: 68px !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0,1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 14px !important;
  border-left: 1px solid rgba(226,179,86,.32) !important;
}
.gch-rs-character-grid article:first-child { border-left: 0 !important; }
.gch-rs-character-grid span {
  width: 34px !important;
  height: 34px !important;
  color: #e2b356 !important;
}
.gch-rs-character-grid strong {
  color: #15110a !important;
  font-size: 11.5px !important;
  line-height: 1.20 !important;
  font-weight: 760 !important;
}
.gch-rs-proof {
  margin-top: 28px !important;
}
.gch-rs-proof-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 30px !important;
  width: min(1260px, 92%) !important;
  margin: 0 auto !important;
}
.gch-rs-proof-grid article {
  min-height: 105px !important;
  padding: 18px 20px !important;
  display: grid !important;
  grid-template-columns: 74px minmax(0,1fr) !important;
  column-gap: 18px !important;
  align-items: center !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.78) !important;
}
.gch-rs-avatar {
  grid-row: span 3 !important;
  width: 66px !important;
  height: 66px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: #101010 !important;
  color: #e2b356 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 22px !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.18) !important;
}
.gch-rs-proof p {
  margin: 0 0 10px !important;
  color: #211b14 !important;
  font-size: 12.5px !important;
  line-height: 1.48 !important;
}
.gch-rs-proof strong {
  display: block !important;
  margin: 0 0 3px !important;
  color: #0e0e0e !important;
  font-size: 12px !important;
}
.gch-rs-proof span {
  color: #655a4c !important;
  font-size: 11px !important;
}
.gch-rs-footer-strip {
  margin-top: 26px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  border-top: 1px solid rgba(226,179,86,.28) !important;
}
.gch-rs-footer-strip article {
  min-height: 70px !important;
  display: grid !important;
  grid-template-columns: 46px minmax(0,1fr) !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 16px 22px !important;
  border-left: 1px solid rgba(226,179,86,.22) !important;
}
.gch-rs-footer-strip article:first-child { border-left: 0 !important; }
.gch-rs-footer-strip article > span {
  width: 36px !important;
  height: 36px !important;
  color: #e2b356 !important;
}
.gch-rs-footer-strip strong {
  display: block !important;
  color: #14100a !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
}
.gch-rs-footer-strip p {
  margin: 3px 0 0 !important;
  color: #4a4032 !important;
  font-size: 11.5px !important;
  line-height: 1.3 !important;
}
.gch-resource-showcase .gch-icon-img,
.gch-resource-showcase .gch-template-icon,
.gch-resource-showcase svg {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  filter: none !important;
}
.gch-resource-showcase .has-gch-svg-icon {
  color: #e2b356 !important;
}

@media (max-width: 1280px) {
  .gch-resource-showcase { padding: 28px 30px 24px !important; }
  .gch-rs-main-grid { grid-template-columns: minmax(0,1fr) minmax(280px,.5fr) !important; }
  .gch-rs-price-card { grid-column: 1 / -1 !important; margin-top: 0 !important; }
  .gch-rs-benefits { padding-top: 50px !important; }
  .gch-rs-character-grid { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
  .gch-rs-character-grid article { border-left: 0 !important; border-top: 1px solid rgba(226,179,86,.20) !important; }
  .gch-rs-character-grid article:nth-child(-n+3) { border-top: 0 !important; }
}
@media (max-width: 900px) {
  .gch-rs-header, .gch-rs-main-grid { grid-template-columns: 1fr !important; display: grid !important; }
  .gch-rs-brand img { width: min(320px, 80vw) !important; }
  .gch-rs-stamp { min-width: 0 !important; width: 100% !important; }
  .gch-rs-benefits, .gch-rs-price-card { padding-top: 0 !important; margin-top: 0 !important; }
  .gch-rs-proof-grid, .gch-rs-footer-strip { grid-template-columns: 1fr !important; }
  .gch-rs-footer-strip article { border-left: 0 !important; border-top: 1px solid rgba(226,179,86,.18) !important; }
  .gch-rs-character-grid { grid-template-columns: 1fr !important; }
  .gch-rs-character-grid article, .gch-rs-character-grid article:nth-child(-n+3) { border-top: 1px solid rgba(226,179,86,.20) !important; }
  .gch-rs-character-grid article:first-child { border-top: 0 !important; }
  body.site-public .modal.is-product-detail.is-resource-showcase-modal { padding: 8px !important; }
}
@media (max-width: 560px) {
  .gch-resource-showcase { padding: 22px 16px !important; }
  .gch-rs-hero h1 { font-size: 42px !important; }
  .gch-rs-subtitle { font-size: 14px !important; }
  .gch-rs-visual { min-height: 210px !important; }
}

/* === FIX DEFINITIVO: el popup de Recursos usa la maqueta premium completa, sin estilos genéricos del modal === */
html body.site-public .modal.is-product-detail.is-resource-showcase-modal {
  z-index: 99999 !important;
  padding: 12px !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0,0,0,.76) !important;
  backdrop-filter: blur(10px) !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal.is-open {
  display: flex !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-card {
  width: min(1720px, 98vw) !important;
  max-width: min(1720px, 98vw) !important;
  max-height: 96vh !important;
  height: auto !important;
  padding: 0 !important;
  overflow: auto !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #fdfbf7 !important;
  box-shadow: 0 34px 110px rgba(0,0,0,.55) !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-body {
  display: block !important;
  gap: 0 !important;
  margin: -38px 0 0 !important;
  padding: 0 !important;
  color: #111 !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-kicker,
html body.site-public .modal.is-product-detail.is-resource-showcase-modal #modalTitle,
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-actions {
  display: none !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-close {
  position: sticky !important;
  top: 14px !important;
  margin: 14px 14px 0 auto !important;
  z-index: 80 !important;
  width: 40px !important;
  height: 40px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(226,179,86,.42) !important;
  border-radius: 50% !important;
  background: rgba(7,7,7,.92) !important;
  color: #e2b356 !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.35) !important;
}

/* Neutraliza .modal-body p / ul / section para que no rompa la landing */
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase section,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase p,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase ul,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase li,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase article,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase footer,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase header {
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase p,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase ul,
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase li {
  padding: 0 !important;
  border: 0 !important;
}
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase ul {
  list-style: none !important;
}
html body.site-public .modal.is-resource-showcase-modal .modal-body .gch-resource-showcase li::before {
  content: none !important;
}

html body.site-public .modal.is-resource-showcase-modal .gch-resource-showcase {
  min-height: 780px !important;
  padding: 34px 56px 28px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background:
    radial-gradient(circle at 0% 100%, rgba(226,179,86,.10), transparent 22%) !important,
    radial-gradient(circle at 100% 0%, rgba(226,179,86,.08), transparent 22%) !important,
    linear-gradient(180deg, #fffdfa 0%, #fbf8f1 100%) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-main-grid {
  grid-template-columns: minmax(0, 1.48fr) minmax(310px, .58fr) minmax(320px, .62fr) !important;
  gap: 46px !important;
  align-items: start !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-hero h1 {
  font-size: clamp(58px, 5.1vw, 92px) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-subtitle {
  margin: 16px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: #191919 !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-description {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: #53483a !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual {
  min-height: 330px !important;
  aspect-ratio: 16/9 !important;
  background: #101314 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual > img,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .product-visual img,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual picture img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits {
  padding-top: 122px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card {
  margin-top: 70px !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.72) !important;
  box-shadow: 0 20px 46px rgba(70,48,16,.09) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card ul {
  margin: 0 0 24px !important;
  padding: 0 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card li {
  position: relative !important;
  padding: 7px 0 7px 30px !important;
  border: 0 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 4px !important;
  top: 7px !important;
  color: #c38a2a !important;
  font-weight: 900 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid article {
  border-left: 1px solid rgba(226,179,86,.32) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid article:first-child {
  border-left: 0 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid article {
  border: 1px solid rgba(226,179,86,.18) !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.78) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip {
  border-top: 1px solid rgba(226,179,86,.28) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip article {
  border-left: 1px solid rgba(226,179,86,.22) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip article:first-child {
  border-left: 0 !important;
}

@media (max-width: 1280px) {
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-main-grid {
    grid-template-columns: minmax(0,1fr) minmax(280px,.5fr) !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card {
    grid-column: 1 / -1 !important;
    margin-top: 0 !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits {
    padding-top: 50px !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  }
}
@media (max-width: 900px) {
  html body.site-public .modal.is-resource-showcase-modal .gch-resource-showcase {
    padding: 24px 18px !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-header,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-main-grid,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip {
    grid-template-columns: 1fr !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip article,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid article,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid article:first-child {
    border-left: 0 !important;
    border-top: 1px solid rgba(226,179,86,.20) !important;
  }
}

/* === POPUP DE RECURSOS: LANDING PREMIUM IDÉNTICA EN ESTRUCTURA === */
html body.site-public .modal.is-product-detail.is-resource-showcase-modal {
  z-index: 999999 !important;
  padding: 14px !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0,0,0,.82) !important;
  backdrop-filter: blur(10px) !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-card {
  width: min(1460px, 97vw) !important;
  max-width: min(1460px, 97vw) !important;
  max-height: 95vh !important;
  overflow: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: #fbf9f3 !important;
  box-shadow: 0 34px 100px rgba(0,0,0,.55) !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-body {
  margin: -38px 0 0 !important;
  padding: 0 !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-kicker,
html body.site-public .modal.is-product-detail.is-resource-showcase-modal #modalTitle,
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-actions {
  display: none !important;
}
html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-close {
  position: sticky !important;
  top: 12px !important;
  z-index: 70 !important;
  margin: 12px 12px 0 auto !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(226,179,86,.42) !important;
  background: rgba(10,10,10,.92) !important;
  color: #e2b356 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-resource-showcase,
html body.site-public .modal.is-resource-showcase-modal .gch-resource-showcase * {
  box-sizing: border-box !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-resource-showcase {
  min-height: unset !important;
  padding: 28px 32px 24px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(226,179,86,.12), transparent 16%) ,
    radial-gradient(circle at 0% 100%, rgba(226,179,86,.08), transparent 18%),
    linear-gradient(180deg, #fdfbf6 0%, #fbf8f1 100%) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-header {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: start !important;
  gap: 20px !important;
  margin-bottom: 12px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-brand img {
  width: min(100%, 300px) !important;
  height: auto !important;
  display: block !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-stamp {
  min-width: 250px !important;
  padding: 14px 18px !important;
  border-radius: 10px !important;
  background: #0d0d0d !important;
  border: 1px solid rgba(226,179,86,.5) !important;
  color: #fff !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.18) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-stamp span {
  width: 42px !important;
  height: 42px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(226,179,86,.45) !important;
  display: grid !important;
  place-items: center !important;
  color: #e2b356 !important;
  background: rgba(255,255,255,.03) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-stamp b,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-stamp strong {
  color: #fff5dd !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-main-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.6fr) minmax(250px, .58fr) minmax(280px, .7fr) !important;
  gap: 24px !important;
  align-items: start !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-kicker {
  color: #b88122 !important;
  font-size: 14px !important;
  letter-spacing: .08em !important;
  margin: 0 0 8px !important;
  text-transform: uppercase !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-hero h1 {
  font-size: clamp(42px, 4.2vw, 70px) !important;
  line-height: .96 !important;
  margin: 0 0 12px !important;
  color: #070707 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-subtitle {
  font-size: 17px !important;
  line-height: 1.55 !important;
  color: #1e1e1e !important;
  margin: 0 0 10px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-description {
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: #5d5346 !important;
  margin: 0 0 18px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual {
  min-height: 360px !important;
  display: grid !important;
  place-items: center !important;
  padding: 10px !important;
  border: 2px solid rgba(226,179,86,.35) !important;
  border-radius: 18px !important;
  background: #111315 !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.14) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual > img,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual img,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual picture img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits {
  padding-top: 58px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-section-title {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 18px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-section-title span {
  color: #b88122 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-section-title i {
  flex: 1 !important;
  height: 1px !important;
  background: rgba(226,179,86,.35) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits article {
  display: grid !important;
  grid-template-columns: 42px 1fr !important;
  gap: 14px !important;
  margin-bottom: 16px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits article > span {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(226,179,86,.55) !important;
  color: #d29a37 !important;
  display: grid !important;
  place-items: center !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits strong {
  display: block !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  color: #1d1c1a !important;
  margin: 0 0 4px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits p {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: #5d5346 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card {
  margin-top: 28px !important;
  padding: 22px 24px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(226,179,86,.32) !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 18px 42px rgba(97,70,18,.08) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-label {
  display: block !important;
  text-align: center !important;
  color: #b88122 !important;
  font-size: 14px !important;
  margin-bottom: 10px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price {
  text-align: center !important;
  margin-bottom: 10px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price strong {
  font-size: 68px !important;
  line-height: .92 !important;
  color: #c0841f !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price small {
  display: block !important;
  color: #8d8270 !important;
  font-size: 14px !important;
  text-decoration: line-through !important;
  margin-bottom: 8px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card > p {
  margin: 0 0 16px !important;
  text-align: center !important;
  color: #4e473f !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card ul {
  margin: 0 0 18px !important;
  padding: 0 !important;
  list-style: none !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card li {
  position: relative !important;
  padding: 7px 0 7px 22px !important;
  color: #4e473f !important;
  font-size: 13px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card li::before {
  content: '✓' !important;
  position: absolute !important;
  left: 0 !important;
  top: 7px !important;
  color: #d39b37 !important;
  font-weight: 900 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-buy-form button {
  width: 100% !important;
  height: 44px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #e2b356, #c98e2b) !important;
  color: #fff8ec !important;
  font-weight: 800 !important;
  letter-spacing: .02em !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  box-shadow: 0 14px 28px rgba(201,142,43,.24) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-secure {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  margin-top: 12px !important;
  font-size: 12px !important;
  color: #6f665a !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-characteristics {
  margin-top: 10px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border-top: 0 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid article {
  display: grid !important;
  justify-items: center !important;
  align-content: start !important;
  gap: 8px !important;
  min-height: 78px !important;
  padding: 8px 14px !important;
  border-left: 1px solid rgba(226,179,86,.3) !important;
  text-align: center !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid article:first-child { border-left: 0 !important; }
html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid span {
  width: 28px !important;
  height: 28px !important;
  color: #d39b37 !important;
  display: grid !important;
  place-items: center !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid strong {
  font-size: 12px !important;
  line-height: 1.25 !important;
  color: #342d25 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-section-title-center {
  justify-content: center !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid article {
  display: grid !important;
  grid-template-columns: 62px 1fr !important;
  gap: 16px !important;
  align-items: start !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(226,179,86,.22) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.82) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-avatar {
  width: 62px !important;
  height: 62px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, #f1e4c4, #d7b06a) !important;
  color: #51340e !important;
  font-weight: 800 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid article p {
  grid-column: 2 !important;
  margin: 0 0 10px !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: #3d362f !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid article strong,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid article span {
  grid-column: 2 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid article strong {
  color: #121212 !important;
  font-size: 13px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid article span {
  color: #6c6358 !important;
  font-size: 12px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin-top: 18px !important;
  padding-top: 14px !important;
  border-top: 1px solid rgba(226,179,86,.25) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip article {
  display: grid !important;
  grid-template-columns: 34px 1fr !important;
  gap: 12px !important;
  align-items: start !important;
  padding: 12px 18px !important;
  border-left: 1px solid rgba(226,179,86,.22) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip article:first-child { border-left: 0 !important; }
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip article > span {
  width: 34px !important;
  height: 34px !important;
  color: #d39b37 !important;
  display: grid !important;
  place-items: center !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip strong {
  display: block !important;
  font-size: 13px !important;
  color: #272420 !important;
  margin-bottom: 2px !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip p {
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  color: #5f584e !important;
}
@media (max-width: 1260px) {
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-main-grid {
    grid-template-columns: 1fr 330px !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits {
    grid-column: 1 !important;
    padding-top: 0 !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    margin-top: 64px !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 900px) {
  html body.site-public .modal.is-product-detail.is-resource-showcase-modal .modal-card {
    width: 100% !important;
    max-width: 100% !important;
    max-height: 96vh !important;
    border-radius: 20px 20px 0 0 !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-resource-showcase {
    padding: 18px 16px 20px !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-header,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-main-grid,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof-grid,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid {
    grid-template-columns: 1fr !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-benefits {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid article,
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-footer-strip article {
    border-left: 0 !important;
    border-top: 1px solid rgba(226,179,86,.2) !important;
  }
}

/* === POPUP RECURSOS: MUESTRA TODO EL DETALLE, CARACTERÍSTICAS E INCLUYE === */
html body.site-public .modal.is-resource-showcase-modal .gch-rs-description-full {
  margin: 0 0 16px !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(226,179,86,.22) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.62) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-description-full p {
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  color: #4a4238 !important;
  font-size: 13.2px !important;
  line-height: 1.62 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-description-full p:last-child {
  margin-bottom: 0 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-price-card ul {
  max-height: none !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-full-detail {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, .95fr) minmax(0, .95fr) !important;
  gap: 18px !important;
  margin-top: 20px !important;
  align-items: stretch !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-panel {
  min-height: 100% !important;
  padding: 20px 22px !important;
  border: 1px solid rgba(226,179,86,.22) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.82) !important;
  box-shadow: 0 14px 34px rgba(84,62,26,.055) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-panel-wide {
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,249,239,.88)) !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-panel p {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  color: #4a4238 !important;
  font-size: 13.5px !important;
  line-height: 1.7 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-panel p:last-child {
  margin-bottom: 0 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-list {
  display: grid !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-list li {
  position: relative !important;
  margin: 0 !important;
  padding: 0 0 0 28px !important;
  border: 0 !important;
  color: #332d25 !important;
  font-size: 13px !important;
  line-height: 1.48 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-list li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: -1px !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(226,179,86,.14) !important;
  color: #c8902f !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-include-list li::before {
  content: "+" !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-character-grid {
  margin-bottom: 0 !important;
}
html body.site-public .modal.is-resource-showcase-modal .gch-rs-proof {
  margin-top: 20px !important;
}
@media (max-width: 1260px) {
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-full-detail {
    grid-template-columns: 1fr 1fr !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-panel-wide {
    grid-column: 1 / -1 !important;
  }
}
@media (max-width: 760px) {
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-full-detail {
    grid-template-columns: 1fr !important;
  }
  html body.site-public .modal.is-resource-showcase-modal .gch-rs-detail-panel-wide {
    grid-column: auto !important;
  }
}

/* === FIX: IMAGEN COMPLETA EN POPUP DE RECURSOS === */
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual {
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #101314 !important;
  min-height: clamp(280px, 32vw, 430px) !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  padding: 12px !important;
}

html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual > img,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual img,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual picture,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual picture img,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .product-visual,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .product-visual img,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .recurso-visual,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .recurso-visual img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  transform: none !important;
}

html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .product-visual,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .recurso-visual {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
}

html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .product-visual::before,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .product-visual::after,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .recurso-visual::before,
html body.site-public .modal.is-resource-showcase-modal .gch-rs-visual .recurso-visual::after {
  display: none !important;
}

/* === FIX CHECKOUT: menú web + detalle completo del pedido === */
html body.gch-static-page .topbar,
html body.gch-static-page .topbar.is-light {
  background: #050505 !important;
  background-color: #050505 !important;
  border-bottom: 1px solid rgba(226,179,86,.24) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.22) !important;
}
html body.gch-static-page .topbar .nav-menu a,
html body.gch-static-page .topbar .top-cta span {
  color: #fff !important;
}
html body.gch-static-page .topbar .nav-menu a.is-active,
html body.gch-static-page .topbar .nav-menu a:hover {
  color: #e2b356 !important;
}
html body.gch-static-page .cart-mini {
  border-color: rgba(226,179,86,.42) !important;
  background: rgba(255,255,255,.06) !important;
}
html body.gch-static-page .cart-mini b {
  background: #e2b356 !important;
  color: #121212 !important;
}

.gch-checkout-pro {
  min-height: 100vh !important;
  padding: 112px clamp(18px, 4vw, 58px) 44px !important;
  background:
    radial-gradient(circle at 4% 100%, rgba(226,179,86,.12), transparent 22%),
    radial-gradient(circle at 100% 10%, rgba(226,179,86,.10), transparent 18%),
    linear-gradient(180deg, #fdfbf7 0%, #f6f0e4 100%) !important;
  color: #14110c !important;
}
.gch-checkout-pro .checkout-steps {
  max-width: 1320px !important;
  margin: 0 auto 20px !important;
}
.gch-checkout-hero {
  max-width: 1320px !important;
  margin: 0 auto 22px !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(260px, 340px) !important;
  gap: 24px !important;
  align-items: stretch !important;
}
.gch-checkout-hero > div,
.gch-checkout-hero > aside,
.gch-checkout-panel,
.gch-checkout-detail-card {
  border: 1px solid rgba(226,179,86,.22) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow: 0 22px 54px rgba(76,54,17,.08) !important;
}
.gch-checkout-hero > div { padding: 28px 32px !important; }
.gch-checkout-hero > aside {
  display: grid !important;
  place-items: center !important;
  text-align: center !important;
  padding: 24px !important;
}
.gch-checkout-kicker {
  margin: 0 0 8px !important;
  color: #b77b23 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
}
.gch-checkout-hero h1 {
  margin: 0 !important;
  color: #090807 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(42px, 5vw, 76px) !important;
  line-height: .94 !important;
  letter-spacing: -.045em !important;
  font-weight: 400 !important;
}
.gch-checkout-hero p {
  max-width: 760px !important;
  margin: 14px 0 0 !important;
  color: #4f473d !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}
.gch-checkout-hero aside span {
  color: #b77b23 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
}
.gch-checkout-hero aside strong {
  color: #b77b23 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 54px !important;
  line-height: 1 !important;
}
.gch-checkout-hero aside small { color: #5a5145 !important; }
.gch-checkout-shell {
  max-width: 1320px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr) !important;
  gap: 24px !important;
  align-items: start !important;
}
.gch-checkout-panel,
.gch-checkout-detail-card { padding: 26px !important; }
.gch-checkout-section-title {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 18px !important;
}
.gch-checkout-section-title span {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #0d0d0d !important;
  color: #e2b356 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}
.gch-checkout-section-title strong {
  color: #15110c !important;
  font-size: 15px !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}
.gch-checkout-form-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 16px !important;
  margin-bottom: 18px !important;
}
.gch-checkout-form-grid .field { display: grid !important; gap: 7px !important; }
.gch-checkout-form-grid .field.full { grid-column: 1 / -1 !important; }
.gch-checkout-form-grid .field span {
  color: #2d281f !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}
.gch-checkout-form-grid input,
.gch-checkout-form-grid textarea {
  width: 100% !important;
  border: 1px solid rgba(226,179,86,.24) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.92) !important;
  color: #15110c !important;
  padding: 13px 14px !important;
  outline: none !important;
}
.gch-checkout-form-grid textarea { min-height: 104px !important; resize: vertical !important; }
.gch-checkout-terms {
  display: grid !important;
  grid-template-columns: 20px 1fr !important;
  gap: 10px !important;
  align-items: start !important;
  margin: 12px 0 24px !important;
  color: #5a5145 !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}
.gch-payment-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 16px !important;
}
.gch-payment-card {
  border: 1px solid rgba(226,179,86,.2) !important;
  border-radius: 20px !important;
  padding: 20px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,249,239,.92)) !important;
}
.gch-payment-card.is-featured { border-color: rgba(226,179,86,.45) !important; box-shadow: 0 14px 34px rgba(188,127,33,.12) !important; }
.gch-payment-icon { font-size: 28px !important; margin-bottom: 10px !important; }
.gch-payment-card strong { display:block !important; color:#15110c !important; font-size:16px !important; margin-bottom:8px !important; }
.gch-payment-card p { min-height: 46px !important; margin:0 0 16px !important; color:#5a5145 !important; font-size:13px !important; line-height:1.55 !important; }
.gch-secure-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 10px !important;
  margin-top: 18px !important;
}
.gch-secure-row article {
  padding: 12px !important;
  border-radius: 14px !important;
  background: rgba(226,179,86,.09) !important;
  color: #4d4131 !important;
  font-size: 12px !important;
  text-align: center !important;
}
.gch-checkout-detail-head {
  display: flex !important;
  justify-content: space-between !important;
  gap: 18px !important;
  align-items: center !important;
  margin-bottom: 18px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid rgba(226,179,86,.22) !important;
}
.gch-checkout-detail-head span { color:#b77b23 !important; font-size:12px !important; font-weight:950 !important; letter-spacing:.08em !important; }
.gch-checkout-detail-head strong { color:#15110c !important; }
.gch-checkout-items { display: grid !important; gap: 16px !important; }
.gch-checkout-resource-detail {
  display: grid !important;
  grid-template-columns: 156px minmax(0,1fr) minmax(98px, auto) !important;
  gap: 16px !important;
  padding: 16px !important;
  border: 1px solid rgba(226,179,86,.17) !important;
  border-radius: 20px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,250,242,.86)) !important;
}
.gch-checkout-resource-media .product-cover,
.gch-checkout-resource-media .product-cover.has-image {
  width: 156px !important;
  height: 124px !important;
  min-height: 124px !important;
  border-radius: 16px !important;
  overflow: hidden !important;
}
.gch-checkout-resource-media .product-cover.has-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #111 !important;
}
.gch-checkout-resource-media .product-cover.has-image strong,
.gch-checkout-resource-media .product-cover.has-image .cover-badge { display: none !important; }
.gch-checkout-resource-info small {
  display: inline-flex !important;
  margin-bottom: 6px !important;
  color: #b77b23 !important;
  font-size: 10px !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
}
.gch-checkout-resource-info h3 {
  margin: 0 0 8px !important;
  color: #111 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
}
.gch-checkout-resource-info p {
  margin: 0 0 10px !important;
  color: #5a5145 !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
}
.gch-checkout-mini-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin-top: 8px !important;
}
.gch-checkout-mini-list b {
  flex: 0 0 100% !important;
  color: #29231b !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
}
.gch-checkout-mini-list span {
  display: inline-flex !important;
  max-width: 100% !important;
  padding: 6px 9px !important;
  border-radius: 999px !important;
  background: rgba(226,179,86,.11) !important;
  color: #4b4032 !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
}
.gch-checkout-resource-price {
  display: grid !important;
  align-content: center !important;
  justify-items: end !important;
  gap: 6px !important;
  text-align: right !important;
}
.gch-checkout-resource-price span { color:#655a4c !important; font-size:12px !important; }
.gch-checkout-resource-price strong { color:#b77b23 !important; font-size:22px !important; }
.gch-checkout-total-card {
  display: grid !important;
  gap: 10px !important;
  margin-top: 18px !important;
  padding: 18px !important;
  border-radius: 20px !important;
  background: #111 !important;
  color: #fff !important;
}
.gch-checkout-total-card div { display:flex !important; justify-content:space-between !important; gap:16px !important; }
.gch-checkout-total-card span { color:#f5ddb0 !important; }
.gch-checkout-total-card strong { color:#fff !important; }
.gch-checkout-total-card .is-total { padding-top:10px !important; border-top:1px solid rgba(226,179,86,.35) !important; }
.gch-checkout-total-card .is-total strong { color:#e2b356 !important; font-size:28px !important; }
.gch-checkout-help-box {
  margin-top: 16px !important;
  padding: 16px !important;
  border: 1px solid rgba(226,179,86,.2) !important;
  border-radius: 18px !important;
  background: rgba(226,179,86,.08) !important;
}
.gch-checkout-help-box strong { color:#15110c !important; }
.gch-checkout-help-box p { margin:6px 0 8px !important; color:#5a5145 !important; font-size:13px !important; line-height:1.5 !important; }
.gch-checkout-help-box a,
.gch-checkout-edit { color:#a76f1e !important; font-weight:850 !important; text-decoration:none !important; }
.gch-checkout-edit { display:inline-flex !important; margin-top:14px !important; }
.gch-checkout-pro [data-pay-message].alert,
.gch-checkout-pro .alert {
  display: block !important;
  margin: 0 0 16px !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  background: #fff2e2 !important;
  color: #7b4b14 !important;
  border: 1px solid rgba(226,179,86,.3) !important;
}
.gch-checkout-pro [data-pay-message].alert.ok,
.gch-checkout-pro .alert.ok {
  background: #eef9ef !important;
  color: #236b32 !important;
  border-color: rgba(35,107,50,.2) !important;
}
@media (max-width: 1100px) {
  .gch-checkout-hero,
  .gch-checkout-shell { grid-template-columns: 1fr !important; }
}
@media (max-width: 760px) {
  .gch-checkout-pro { padding-inline: 12px !important; padding-top: 96px !important; }
  .gch-checkout-hero > div,
  .gch-checkout-panel,
  .gch-checkout-detail-card { padding: 18px !important; border-radius: 20px !important; }
  .gch-checkout-form-grid,
  .gch-payment-grid,
  .gch-secure-row { grid-template-columns: 1fr !important; }
  .gch-checkout-resource-detail { grid-template-columns: 1fr !important; }
  .gch-checkout-resource-media .product-cover,
  .gch-checkout-resource-media .product-cover.has-image { width: 100% !important; height: 190px !important; }
  .gch-checkout-resource-price { justify-items: start !important; text-align: left !important; }
}

/* === FIX TIENDA + CHECKOUT: WhatsApp, cantidades y diseño organizado === */
body.site-public.gch-static-page .topbar,
body.site-public.gch-static-page .topbar.is-light {
  background: #050505 !important;
  border-bottom: 1px solid rgba(226,179,86,.18) !important;
}
body.site-public.gch-static-page .topbar .nav-menu a,
body.site-public.gch-static-page .topbar .top-cta span {
  color: #fff !important;
}
body.site-public.gch-static-page .topbar .nav-menu a.is-active,
body.site-public.gch-static-page .topbar .nav-menu a:hover {
  color: #e2b356 !important;
}
body.site-public.gch-static-page .cart-mini {
  border-color: rgba(226,179,86,.36) !important;
  background: rgba(255,255,255,.05) !important;
}
body.site-public.gch-shop-page {
  background: #f8f4eb !important;
  color: #15110a !important;
}
.gch-shop-beauty {
  padding: 112px clamp(18px,4vw,72px) 48px !important;
  background:
    radial-gradient(circle at 0 100%, rgba(226,179,86,.13), transparent 22%),
    radial-gradient(circle at 100% 0, rgba(226,179,86,.10), transparent 24%),
    linear-gradient(180deg, #fdfbf7 0%, #f6efe2 100%) !important;
}
.gch-shop-hero-pro {
  width: min(1420px, 100%) !important;
  margin: 0 auto 30px !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(300px,380px) !important;
  gap: 28px !important;
  align-items: stretch !important;
}
.gch-shop-hero-copy,
.gch-shop-hero-summary,
.gch-shop-featured,
.gch-shop-catalog {
  border: 1px solid rgba(226,179,86,.22) !important;
  background: rgba(255,255,255,.86) !important;
  box-shadow: 0 18px 48px rgba(61,43,12,.08) !important;
  border-radius: 28px !important;
}
.gch-shop-hero-copy {
  padding: clamp(30px,4vw,58px) !important;
  position: relative !important;
  overflow: hidden !important;
}
.gch-shop-hero-copy::after {
  content: "" !important;
  position: absolute !important;
  right: -110px !important;
  bottom: -130px !important;
  width: 360px !important;
  height: 360px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(226,179,86,.16) !important;
  box-shadow: 0 0 0 28px rgba(226,179,86,.05), 0 0 0 58px rgba(226,179,86,.03) !important;
}
.gch-shop-kicker,
.gch-shop-section-head p {
  margin: 0 0 12px !important;
  color: #b47729 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
}
.gch-shop-hero-copy h1 {
  max-width: 860px !important;
  margin: 0 !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: clamp(48px,5vw,86px) !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
  color: #090909 !important;
}
.gch-shop-hero-copy p:not(.gch-shop-kicker) {
  max-width: 720px !important;
  margin: 20px 0 0 !important;
  font-size: 17px !important;
  line-height: 1.68 !important;
  color: #4b4338 !important;
}
.gch-shop-hero-actions {
  margin-top: 28px !important;
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}
.gch-shop-hero-summary {
  padding: 28px !important;
  display: grid !important;
  align-content: center !important;
  gap: 12px !important;
  background: linear-gradient(180deg,#111,#050505) !important;
  color: #fff !important;
}
.gch-shop-hero-summary span { color:#e2b356 !important; font-size:12px !important; font-weight:900 !important; letter-spacing:.1em !important; }
.gch-shop-hero-summary strong { font-size:78px !important; line-height:.9 !important; color:#fff !important; }
.gch-shop-hero-summary p { margin:0 0 10px !important; color:#d8c8aa !important; }
.gch-shop-hero-summary div { padding:10px 0 !important; border-top:1px solid rgba(226,179,86,.18) !important; color:#f7eedc !important; }
.gch-shop-hero-summary b { color:#e2b356 !important; }
.gch-shop-featured,
.gch-shop-catalog {
  width: min(1420px, 100%) !important;
  margin: 0 auto 30px !important;
  padding: 26px !important;
}
.gch-shop-section-head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: end !important;
  gap: 20px !important;
  margin-bottom: 22px !important;
}
.gch-shop-section-head h2 { margin:0 !important; font-family:Georgia,"Times New Roman",serif !important; font-size:clamp(30px,3vw,46px) !important; color:#111 !important; }
.gch-shop-section-head a,
.gch-shop-section-head span { color:#9a651d !important; font-weight:900 !important; text-decoration:none !important; }
.gch-shop-featured-grid { display:grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap:18px !important; }
.gch-shop-featured-card,
.gch-shop-product-card {
  border:1px solid rgba(226,179,86,.18) !important;
  border-radius:24px !important;
  background: linear-gradient(180deg,#fff,#fbf4e7) !important;
  box-shadow: 0 14px 34px rgba(73,50,15,.06) !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
}
.gch-shop-featured-cover,
.gch-shop-product-cover { display:block !important; text-decoration:none !important; }
.gch-shop-featured-card .product-cover,
.gch-shop-product-card .product-cover,
.gch-shop-featured-card .product-cover.has-image,
.gch-shop-product-card .product-cover.has-image {
  height: 210px !important;
  border-radius: 0 !important;
  background:#111 !important;
}
.gch-shop-featured-card .product-cover img,
.gch-shop-product-card .product-cover img {
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
.gch-shop-featured-body,
.gch-shop-product-body { padding:18px !important; flex:1 1 auto !important; }
.gch-shop-featured-body small,
.gch-shop-product-body small { color:#b47729 !important; font-weight:900 !important; font-size:10px !important; text-transform:uppercase !important; }
.gch-shop-featured-body h3,
.gch-shop-product-body h3 { margin:8px 0 !important; font-family:Georgia,"Times New Roman",serif !important; font-size:22px !important; line-height:1.12 !important; color:#111 !important; }
.gch-shop-featured-body p,
.gch-shop-product-body p { margin:0 !important; color:#554b3e !important; font-size:13px !important; line-height:1.55 !important; }
.gch-shop-featured-body strong { display:block !important; margin-top:14px !important; color:#bf8428 !important; font-size:22px !important; }
.gch-shop-featured-actions,
.gch-shop-product-foot { padding:0 18px 18px !important; display:grid !important; gap:10px !important; }
.gch-shop-featured-actions a,
.gch-shop-featured-actions button,
.gch-shop-buy-form button,
.gch-shop-product-foot > a { width:100% !important; min-height:42px !important; border-radius:12px !important; display:flex !important; align-items:center !important; justify-content:center !important; text-decoration:none !important; font-size:11px !important; font-weight:900 !important; letter-spacing:.06em !important; }
.gch-shop-featured-actions a { border:1px solid rgba(226,179,86,.34) !important; color:#8a5917 !important; background:#fff !important; }
.gch-shop-featured-actions button { border:0 !important; background:linear-gradient(135deg,#e2b356,#c98b29) !important; color:#fff !important; cursor:pointer !important; }
.gch-shop-filters { display:grid !important; grid-template-columns: 1.3fr 1fr 1fr auto auto !important; gap:14px !important; align-items:end !important; margin-bottom:24px !important; padding:18px !important; border-radius:20px !important; background:#fff8ec !important; border:1px solid rgba(226,179,86,.18) !important; }
.gch-shop-filters label { display:grid !important; gap:7px !important; color:#574d42 !important; font-size:12px !important; font-weight:800 !important; }
.gch-shop-filters input,
.gch-shop-filters select { height:44px !important; border:1px solid rgba(226,179,86,.22) !important; border-radius:12px !important; padding:0 14px !important; background:#fff !important; color:#17120b !important; }
.gch-shop-grid { display:grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap:22px !important; }
.gch-shop-product-features { display:grid !important; gap:6px !important; margin-top:12px !important; }
.gch-shop-product-features span { color:#4d4439 !important; font-size:12px !important; }
.gch-shop-price { display:flex !important; align-items:baseline !important; gap:10px !important; }
.gch-shop-price strong { color:#bf8428 !important; font-size:25px !important; }
.gch-shop-price small { color:#888 !important; text-decoration:line-through !important; }

.gch-customer-whatsapp-card {
  display:grid !important;
  grid-template-columns: 58px minmax(0,1fr) minmax(240px,320px) !important;
  gap:16px !important;
  align-items:center !important;
  margin-bottom:22px !important;
  padding:18px !important;
  border-radius:22px !important;
  border:1px solid rgba(226,179,86,.24) !important;
  background:linear-gradient(180deg,#fff,#fbf5e9) !important;
  box-shadow:0 14px 34px rgba(73,50,15,.06) !important;
}
.gch-wa-icon { width:58px !important; height:58px !important; border-radius:18px !important; display:grid !important; place-items:center !important; border:1px solid rgba(226,179,86,.30) !important; background:#fff !important; }
.gch-wa-copy small { color:#b47729 !important; font-size:11px !important; font-weight:900 !important; letter-spacing:.08em !important; }
.gch-wa-copy h2 { margin:4px 0 4px !important; font-size:19px !important; color:#15100a !important; }
.gch-wa-copy p { margin:0 !important; color:#5b5145 !important; font-size:12.5px !important; line-height:1.45 !important; }
.gch-wa-field { display:grid !important; gap:7px !important; }
.gch-wa-field span { font-size:12px !important; color:#51483d !important; font-weight:900 !important; }
.gch-wa-field input { width:100% !important; height:46px !important; border:1px solid rgba(226,179,86,.34) !important; border-radius:14px !important; padding:0 15px !important; color:#15100a !important; background:#fff !important; outline:none !important; }
.gch-wa-field input:focus { border-color:#e2b356 !important; box-shadow:0 0 0 4px rgba(226,179,86,.16) !important; }
.gch-wa-field input.is-invalid { border-color:#c33 !important; box-shadow:0 0 0 4px rgba(204,51,51,.12) !important; }
.gch-checkout-resource-editable { grid-template-columns: 112px minmax(0,1fr) minmax(150px,190px) !important; }
.gch-checkout-resource-editable .gch-checkout-resource-media .product-cover { height:112px !important; min-height:112px !important; border-radius:16px !important; }
.gch-checkout-resource-actions { display:grid !important; gap:10px !important; align-content:start !important; justify-items:stretch !important; }
.gch-checkout-qty-form label { font-size:11px !important; font-weight:900 !important; color:#7a6d5b !important; }
.gch-checkout-qty-form .qty-control { display:flex !important; gap:6px !important; align-items:center !important; }
.gch-checkout-qty-form .qty-control button { width:32px !important; height:32px !important; border-radius:10px !important; border:1px solid rgba(226,179,86,.30) !important; background:#fff !important; color:#9a651d !important; font-weight:900 !important; }
.gch-checkout-qty-form .qty-input { width:58px !important; height:32px !important; border-radius:10px !important; border:1px solid rgba(226,179,86,.24) !important; text-align:center !important; }
.gch-checkout-remove-form button { border:0 !important; background:transparent !important; color:#9b392f !important; text-align:left !important; font-size:11px !important; font-weight:900 !important; cursor:pointer !important; }
.gch-checkout-resource-actions .gch-checkout-resource-price { text-align:left !important; }
@media (max-width: 1180px) {
  .gch-shop-featured-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .gch-shop-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .gch-shop-filters { grid-template-columns: 1fr 1fr !important; }
  .gch-customer-whatsapp-card { grid-template-columns: 58px 1fr !important; }
  .gch-wa-field { grid-column: 1 / -1 !important; }
}
@media (max-width: 760px) {
  .gch-shop-beauty { padding:96px 12px 32px !important; }
  .gch-shop-hero-pro,
  .gch-shop-featured-grid,
  .gch-shop-grid,
  .gch-shop-filters { grid-template-columns:1fr !important; }
  .gch-shop-featured,
  .gch-shop-catalog { padding:16px !important; border-radius:20px !important; }
  .gch-shop-hero-copy,
  .gch-shop-hero-summary { border-radius:20px !important; padding:22px !important; }
  .gch-customer-whatsapp-card { grid-template-columns:1fr !important; }
  .gch-checkout-resource-editable { grid-template-columns:1fr !important; }
}


/* === AJUSTE FINAL: SERVICIOS VIRTUALES + WHATSAPP EN FORMULARIO CULQI === */
.gch-culqi-pay-card .gch-wa-field-inside {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin: 8px 0 4px !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(226,179,86,.32) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,249,238,.88)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7) !important;
}
.gch-culqi-pay-card .gch-wa-field-inside span {
  display:block !important;
  margin-bottom: 8px !important;
  color:#8b5a12 !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.gch-culqi-pay-card .gch-wa-field-inside input {
  width: 100% !important;
  height: 48px !important;
  padding: 0 15px !important;
  border: 1px solid rgba(226,179,86,.28) !important;
  border-radius: 12px !important;
  background:#fff !important;
  color:#111 !important;
  font-size: 16px !important;
  outline: none !important;
}
.gch-culqi-pay-card .gch-wa-field-inside input:focus {
  border-color:#e2b356 !important;
  box-shadow:0 0 0 4px rgba(226,179,86,.14) !important;
}
.gch-culqi-pay-card .gch-wa-field-inside input.is-invalid {
  border-color:#c94343 !important;
  box-shadow:0 0 0 4px rgba(201,67,67,.13) !important;
}
.gch-culqi-pay-card .gch-wa-field-inside small {
  display:block !important;
  margin-top: 8px !important;
  color:#6e6254 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}
.gch-checkout-help-box a,
.thanks-actions a[href*="wa.me"] {
  color:#111 !important;
  background:linear-gradient(135deg,#e2b356,#c58b28) !important;
  border-color:transparent !important;
}
.gch-shop-page .nav-menu a,
.gch-checkout-body .nav-menu a,
.gch-cart-body .nav-menu a {
  white-space: nowrap !important;
}

/* === GRACIAS.PHP ORGANIZADO + MENÚ WEB CORRECTO === */
html body.site-public.gch-thanks-body {
  min-height: 100svh !important;
  margin: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background:
    radial-gradient(circle at 0% 100%, rgba(226,179,86,.14), transparent 18%),
    radial-gradient(circle at 100% 0%, rgba(226,179,86,.10), transparent 18%),
    linear-gradient(180deg, #fbf8f0 0%, #f4efe4 100%) !important;
  color: #15110c !important;
}
html body.site-public.gch-thanks-body .topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
  min-height: 82px !important;
  padding: 10px clamp(16px, 3vw, 44px) !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto auto !important;
  align-items: center !important;
  gap: 18px !important;
  background: #050505 !important;
  border-bottom: 1px solid rgba(226,179,86,.20) !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.22) !important;
}
html body.site-public.gch-thanks-body .topbar .brand-full-logo-img {
  height: 58px !important;
  max-height: 58px !important;
  width: auto !important;
  display: block !important;
}
html body.site-public.gch-thanks-body .topbar .nav-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(8px, 1vw, 16px) !important;
  min-width: 0 !important;
}
html body.site-public.gch-thanks-body .topbar .nav-menu a {
  color: rgba(255,255,255,.82) !important;
  font-size: clamp(9px, .72vw, 12px) !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  letter-spacing: .035em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
html body.site-public.gch-thanks-body .topbar .nav-menu a.is-active,
html body.site-public.gch-thanks-body .topbar .nav-menu a:hover {
  color: #e2b356 !important;
}
html body.site-public.gch-thanks-body .topbar .top-cta {
  min-height: 42px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: linear-gradient(135deg, #e2b356, #c88c2c) !important;
  color: #111 !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
html body.site-public.gch-thanks-body .topbar .top-cta-icon {
  width: 18px !important;
  height: 18px !important;
  object-fit: contain !important;
}
html body.site-public.gch-thanks-body .topbar .cart-mini {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(226,179,86,.35) !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(255,255,255,.04) !important;
  position: relative !important;
}
html body.site-public.gch-thanks-body .topbar .cart-mini img {
  width: 20px !important;
  height: 20px !important;
  object-fit: contain !important;
}
html body.site-public.gch-thanks-body .topbar .cart-mini b {
  position: absolute !important;
  right: -5px !important;
  top: -5px !important;
  min-width: 20px !important;
  height: 20px !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  background: #e2b356 !important;
  color: #111 !important;
  font-size: 10px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-pro {
  width: min(1440px, calc(100% - 32px)) !important;
  margin: 0 auto !important;
  padding: 112px 0 38px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px) !important;
  gap: 22px !important;
  align-items: stretch !important;
  margin-bottom: 20px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-hero > div,
html body.site-public.gch-thanks-body .gch-thanks-hero > aside,
html body.site-public.gch-thanks-body .gch-thanks-main-card,
html body.site-public.gch-thanks-body .gch-thanks-side-card,
html body.site-public.gch-thanks-body .gch-thanks-empty {
  border: 1px solid rgba(226,179,86,.20) !important;
  border-radius: 26px !important;
  background: rgba(255,255,255,.86) !important;
  box-shadow: 0 22px 48px rgba(81,59,22,.085) !important;
}
html body.site-public.gch-thanks-body .gch-thanks-hero > div {
  padding: 30px 34px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-hero > aside {
  padding: 26px 28px !important;
  display: grid !important;
  align-content: center !important;
  gap: 8px !important;
  background: #0b0b0b !important;
  color: #fff !important;
}
html body.site-public.gch-thanks-body .gch-thanks-kicker,
html body.site-public.gch-thanks-body .gch-thanks-hero aside span,
html body.site-public.gch-thanks-body .gch-thanks-status-head span,
html body.site-public.gch-thanks-body .gch-thanks-section-title span,
html body.site-public.gch-thanks-body .gch-thanks-receipt-head span {
  margin: 0 !important;
  color: #b77b23 !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}
html body.site-public.gch-thanks-body .gch-thanks-hero h1 {
  margin: 8px 0 12px !important;
  color: #0d0d0d !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(48px, 5vw, 82px) !important;
  line-height: .95 !important;
  letter-spacing: -.055em !important;
}
html body.site-public.gch-thanks-body .gch-thanks-hero p {
  margin: 0 !important;
  max-width: 820px !important;
  color: #50473c !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-hero aside strong {
  color: #e2b356 !important;
  font-size: clamp(34px, 3.2vw, 54px) !important;
  line-height: 1 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-hero aside small {
  color: rgba(255,255,255,.72) !important;
  font-size: 13px !important;
}
html body.site-public.gch-thanks-body .checkout-steps {
  width: 100% !important;
  margin: 0 0 20px !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 10px !important;
}
html body.site-public.gch-thanks-body .checkout-steps span {
  min-height: 48px !important;
  border-radius: 16px !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 16px !important;
  background: rgba(255,255,255,.72) !important;
  color: #5d5244 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}
html body.site-public.gch-thanks-body .checkout-steps span.is-current,
html body.site-public.gch-thanks-body .checkout-steps span.is-done {
  border-color: rgba(226,179,86,.38) !important;
  background: #fff8e8 !important;
  color: #9a651d !important;
}
html body.site-public.gch-thanks-body .checkout-steps b {
  width: 22px !important;
  height: 22px !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  background: #e2b356 !important;
  color: #111 !important;
  font-size: 10px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 390px) !important;
  gap: 24px !important;
  align-items: start !important;
}
html body.site-public.gch-thanks-body .gch-thanks-main-card,
html body.site-public.gch-thanks-body .gch-thanks-side-card {
  padding: 26px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-status-head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 16px !important;
  margin-bottom: 22px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-status-head h2 {
  margin: 6px 0 0 !important;
  color: #10100f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 34px !important;
  line-height: 1 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-status-head b {
  padding: 9px 12px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
  letter-spacing: .07em !important;
  white-space: nowrap !important;
}
html body.site-public.gch-thanks-body .gch-thanks-status-head b.is-paid {
  background: rgba(47,135,82,.12) !important;
  color: #227143 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-status-head b.is-pending {
  background: rgba(226,179,86,.14) !important;
  color: #9a651d !important;
}
html body.site-public.gch-thanks-body .gch-thanks-timeline {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 12px !important;
  margin-bottom: 24px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-timeline article {
  min-height: 128px !important;
  padding: 16px !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  border-radius: 18px !important;
  background: #fffaf0 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-timeline i {
  width: 32px !important;
  height: 32px !important;
  margin-bottom: 10px !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  background: #e8ded0 !important;
  color: #6f6251 !important;
  font-style: normal !important;
  font-weight: 900 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-timeline article.is-done i,
html body.site-public.gch-thanks-body .gch-thanks-timeline article.is-current i {
  background: #e2b356 !important;
  color: #111 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-timeline strong {
  display: block !important;
  color: #17110b !important;
  font-size: 14px !important;
  margin-bottom: 6px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-timeline small {
  display: block !important;
  color: #675d50 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-section-title {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 14px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-section-title i {
  height: 1px !important;
  flex: 1 !important;
  background: rgba(226,179,86,.28) !important;
}
html body.site-public.gch-thanks-body .gch-thanks-items {
  display: grid !important;
  gap: 12px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-item {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 14px !important;
  border: 1px solid rgba(226,179,86,.16) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.72) !important;
}
html body.site-public.gch-thanks-body .gch-thanks-item-icon {
  width: 54px !important;
  height: 54px !important;
  border-radius: 16px !important;
  display: grid !important;
  place-items: center !important;
  background: #101010 !important;
  color: #e2b356 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-item strong {
  display: block !important;
  color: #15110c !important;
  font-size: 15px !important;
  line-height: 1.3 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-item span {
  display: block !important;
  margin-top: 4px !important;
  color: #6d6255 !important;
  font-size: 12px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-item b {
  color: #a86f20 !important;
  font-size: 16px !important;
  white-space: nowrap !important;
}
html body.site-public.gch-thanks-body .gch-thanks-side-card {
  position: sticky !important;
  top: 104px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-receipt-head {
  padding-bottom: 16px !important;
  margin-bottom: 12px !important;
  border-bottom: 1px solid rgba(226,179,86,.22) !important;
}
html body.site-public.gch-thanks-body .gch-thanks-receipt-head strong {
  display: block !important;
  margin-top: 6px !important;
  color: #15110c !important;
  font-size: 22px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-receipt-row,
html body.site-public.gch-thanks-body .gch-thanks-total {
  display: flex !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid rgba(226,179,86,.12) !important;
}
html body.site-public.gch-thanks-body .gch-thanks-receipt-row span {
  color: #706657 !important;
  font-size: 12px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-receipt-row strong {
  color: #17110b !important;
  font-size: 12px !important;
  text-align: right !important;
  overflow-wrap: anywhere !important;
}
html body.site-public.gch-thanks-body .gch-thanks-total {
  margin-top: 8px !important;
  padding: 18px !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #0c0c0c !important;
  color: #fff !important;
}
html body.site-public.gch-thanks-body .gch-thanks-total span {
  color: #f6e4bd !important;
}
html body.site-public.gch-thanks-body .gch-thanks-total strong {
  color: #e2b356 !important;
  font-size: 26px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-help {
  margin: 16px 0 !important;
  padding: 16px !important;
  border-radius: 18px !important;
  background: #fff8eb !important;
  border: 1px solid rgba(226,179,86,.22) !important;
}
html body.site-public.gch-thanks-body .gch-thanks-help b {
  color: #15110c !important;
  font-size: 14px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-help p {
  margin: 6px 0 8px !important;
  color: #5f564b !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-help a {
  color: #9a651d !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}
html body.site-public.gch-thanks-body .gch-thanks-actions {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
html body.site-public.gch-thanks-body .gch-thanks-actions-stack {
  display: grid !important;
  grid-template-columns: 1fr !important;
}
html body.site-public.gch-thanks-body .gch-thanks-actions .btn,
html body.site-public.gch-thanks-body .gch-thanks-empty .btn {
  min-height: 44px !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .04em !important;
}
html body.site-public.gch-thanks-body .gch-thanks-actions-stack .btn {
  width: 100% !important;
}
html body.site-public.gch-thanks-body .gch-thanks-empty {
  min-height: 420px !important;
  display: grid !important;
  place-items: center !important;
  align-content: center !important;
  gap: 14px !important;
  padding: 40px !important;
  text-align: center !important;
}
html body.site-public.gch-thanks-body .gch-thanks-empty-icon {
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: #e2b356 !important;
  color: #111 !important;
  font-size: 30px !important;
  font-weight: 900 !important;
}
html body.site-public.gch-thanks-body .gch-thanks-empty h2 {
  margin: 0 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 38px !important;
}
html body.site-public.gch-thanks-body .gch-thanks-empty p,
html body.site-public.gch-thanks-body .gch-thanks-muted {
  max-width: 560px !important;
  margin: 0 !important;
  color: #5f564b !important;
  line-height: 1.6 !important;
}
@media print {
  html body.site-public.gch-thanks-body .topbar,
  html body.site-public.gch-thanks-body .checkout-steps,
  html body.site-public.gch-thanks-body .gch-thanks-actions,
  html body.site-public.gch-thanks-body .gch-thanks-help { display: none !important; }
  html body.site-public.gch-thanks-body .gch-thanks-pro { padding: 20px !important; width: 100% !important; }
  html body.site-public.gch-thanks-body .gch-thanks-grid { grid-template-columns: 1fr !important; }
  html body.site-public.gch-thanks-body .gch-thanks-side-card { position: static !important; }
}
@media (max-width: 1180px) {
  html body.site-public.gch-thanks-body .topbar { grid-template-columns: auto 1fr auto !important; }
  html body.site-public.gch-thanks-body .topbar .nav-menu { justify-content: flex-start !important; overflow-x: auto !important; }
  html body.site-public.gch-thanks-body .topbar .top-cta { display: none !important; }
  html body.site-public.gch-thanks-body .gch-thanks-grid,
  html body.site-public.gch-thanks-body .gch-thanks-hero { grid-template-columns: 1fr !important; }
  html body.site-public.gch-thanks-body .gch-thanks-side-card { position: static !important; }
}
@media (max-width: 720px) {
  html body.site-public.gch-thanks-body .topbar { min-height: 72px !important; padding: 8px 12px !important; gap: 10px !important; }
  html body.site-public.gch-thanks-body .topbar .brand-full-logo-img { height: 46px !important; }
  html body.site-public.gch-thanks-body .topbar .nav-menu { display: none !important; }
  html body.site-public.gch-thanks-body .topbar .hamb { display: inline-grid !important; }
  html body.site-public.gch-thanks-body .topbar .cart-mini { width: 40px !important; height: 40px !important; }
  html body.site-public.gch-thanks-body .gch-thanks-pro { width: calc(100% - 20px) !important; padding-top: 94px !important; }
  html body.site-public.gch-thanks-body .gch-thanks-hero > div,
  html body.site-public.gch-thanks-body .gch-thanks-hero > aside,
  html body.site-public.gch-thanks-body .gch-thanks-main-card,
  html body.site-public.gch-thanks-body .gch-thanks-side-card,
  html body.site-public.gch-thanks-body .gch-thanks-empty { border-radius: 20px !important; padding: 18px !important; }
  html body.site-public.gch-thanks-body .gch-thanks-hero h1 { font-size: 42px !important; }
  html body.site-public.gch-thanks-body .checkout-steps,
  html body.site-public.gch-thanks-body .gch-thanks-timeline { grid-template-columns: 1fr !important; }
  html body.site-public.gch-thanks-body .gch-thanks-item { grid-template-columns: 48px minmax(0, 1fr) !important; }
  html body.site-public.gch-thanks-body .gch-thanks-item b { grid-column: 2 !important; justify-self: start !important; }
}

/* === AJUSTE INICIO: título principal un poco más pequeño === */
@media (min-width: 1001px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(88px, 7.65vw, 142px) !important;
    line-height: .89 !important;
    letter-spacing: -.024em !important;
  }
  html body.site-public .face#inicio.gch-cover-section .gch-cover-content,
  html body.site-public.gch-scroll-mode main.site-stage[data-screen-root] > section.face#inicio.gch-cover-section .gch-cover-content {
    width: min(1120px, 69vw) !important;
    max-width: 1120px !important;
  }
}
@media (max-width: 1000px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(56px, 11.6vw, 90px) !important;
    line-height: .94 !important;
  }
}
@media (max-width: 560px) {
  html body.site-public .face#inicio.gch-cover-section .gch-cover-title {
    font-size: clamp(42px, 12.8vw, 66px) !important;
  }
}

/* === TIENDA DIGITAL: detalle igual a Recursos y tarjetas más limpias === */
body.gch-shop-page .gch-shop-featured-card,
body.gch-shop-page .gch-shop-product-card {
  position: relative !important;
}
body.gch-shop-page .gch-shop-featured-card template,
body.gch-shop-page .gch-shop-product-card template {
  display: none !important;
}
body.gch-shop-page .gch-shop-featured-cover .product-visual,
body.gch-shop-page .gch-shop-product-cover .product-visual,
body.gch-shop-page .gch-shop-featured-cover img,
body.gch-shop-page .gch-shop-product-cover img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}
body.gch-shop-page .gch-shop-featured-actions a,
body.gch-shop-page .gch-shop-product-foot a[data-open-detail] {
  cursor: pointer !important;
}
body.gch-shop-page .modal.is-resource-showcase-modal .gch-resource-showcase {
  text-align: left !important;
}
body.gch-shop-page .modal.is-resource-showcase-modal .gch-rs-visual {
  overflow: hidden !important;
}
body.gch-shop-page .modal.is-resource-showcase-modal .gch-rs-visual img,
body.gch-shop-page .modal.is-resource-showcase-modal .gch-rs-visual .product-visual img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* === TIENDA DE RECURSOS DIGITALES: igual a Recursos Premium, sin ocultar productos === */
html body.site-public.gch-shop-page {
  background: #f7f2e8 !important;
  color: #17110b !important;
}
html body.site-public.gch-shop-page .topbar,
html body.site-public.gch-shop-page .topbar.is-light {
  background: #050505 !important;
  border-bottom: 1px solid rgba(226,179,86,.22) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.18) !important;
}
html body.site-public.gch-shop-page .topbar .nav-menu a,
html body.site-public.gch-shop-page .topbar .cart-mini,
html body.site-public.gch-shop-page .topbar .top-cta {
  color: #fff7e6 !important;
}
html body.site-public.gch-shop-page .gch-shop-resources {
  width: min(1480px, calc(100% - 38px)) !important;
  margin: 0 auto !important;
  padding: 116px 0 58px !important;
}
html body.site-public.gch-shop-page .gch-shop-resources-hero {
  min-height: 320px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 360px) !important;
  gap: 28px !important;
  align-items: stretch !important;
  margin-bottom: 30px !important;
  padding: clamp(30px, 4vw, 54px) !important;
  border-radius: 30px !important;
  border: 1px solid rgba(226,179,86,.24) !important;
  background:
    radial-gradient(circle at 0% 100%, rgba(226,179,86,.18), transparent 24%),
    radial-gradient(circle at 100% 0%, rgba(226,179,86,.12), transparent 22%),
    linear-gradient(135deg, #090909 0%, #17120b 58%, #2a1a07 100%) !important;
  box-shadow: 0 26px 66px rgba(52,35,11,.20) !important;
  overflow: hidden !important;
}
html body.site-public.gch-shop-page .gch-shop-resources-hero .gch-shop-kicker {
  margin: 0 0 12px !important;
  color: #e2b356 !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}
html body.site-public.gch-shop-page .gch-shop-resources-hero h1 {
  max-width: 800px !important;
  margin: 0 !important;
  color: #fff8ea !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(54px, 6vw, 94px) !important;
  line-height: .92 !important;
  letter-spacing: -.05em !important;
}
html body.site-public.gch-shop-page .gch-shop-resources-hero p {
  max-width: 760px !important;
  margin: 18px 0 0 !important;
  color: rgba(255,247,230,.80) !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}
html body.site-public.gch-shop-page .gch-shop-hero-actions {
  margin-top: 24px !important;
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}
html body.site-public.gch-shop-page .gch-shop-hero-actions .btn {
  min-height: 46px !important;
  border-radius: 999px !important;
  padding-inline: 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
}
html body.site-public.gch-shop-page .gch-shop-hero-summary {
  align-self: stretch !important;
  padding: 26px !important;
  border-radius: 24px !important;
  border: 1px solid rgba(226,179,86,.24) !important;
  background: rgba(255,255,255,.08) !important;
  color: #fff !important;
  backdrop-filter: blur(12px) !important;
}
html body.site-public.gch-shop-page .gch-shop-hero-summary span {
  color: #e2b356 !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .10em !important;
}
html body.site-public.gch-shop-page .gch-shop-hero-summary strong {
  display: block !important;
  margin: 8px 0 0 !important;
  color: #fff !important;
  font-size: 68px !important;
  line-height: .9 !important;
}
html body.site-public.gch-shop-page .gch-shop-hero-summary p {
  margin: 6px 0 18px !important;
  color: rgba(255,247,230,.72) !important;
  font-size: 13px !important;
}
html body.site-public.gch-shop-page .gch-shop-hero-summary div {
  margin-top: 10px !important;
  color: rgba(255,247,230,.86) !important;
  font-size: 13px !important;
}
html body.site-public.gch-shop-page .gch-shop-hero-summary b {
  color: #e2b356 !important;
  margin-right: 8px !important;
}
html body.site-public.gch-shop-page .gch-shop-featured,
html body.site-public.gch-shop-page .gch-shop-catalog {
  margin-top: 28px !important;
  padding: 30px !important;
  border-radius: 30px !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  background: rgba(255,255,255,.76) !important;
  box-shadow: 0 20px 52px rgba(84,62,26,.08) !important;
}
html body.site-public.gch-shop-page .gch-shop-section-head {
  display: flex !important;
  justify-content: space-between !important;
  align-items: end !important;
  gap: 18px !important;
  margin-bottom: 22px !important;
}
html body.site-public.gch-shop-page .gch-shop-section-head p {
  margin: 0 0 6px !important;
  color: #b98224 !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
}
html body.site-public.gch-shop-page .gch-shop-section-head h2 {
  margin: 0 !important;
  color: #15110c !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(34px, 3vw, 54px) !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
}
html body.site-public.gch-shop-page .gch-shop-section-head a,
html body.site-public.gch-shop-page .gch-shop-section-head span {
  color: #9a651d !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-filters {
  display: grid !important;
  grid-template-columns: minmax(220px,1.2fr) minmax(180px,.7fr) minmax(160px,.62fr) auto auto !important;
  gap: 12px !important;
  align-items: end !important;
  margin: 0 0 24px !important;
  padding: 16px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  background: #fffaf0 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-filters label {
  display: grid !important;
  gap: 7px !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-filters label span {
  color: #7b6544 !important;
  font-size: 10px !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-filters input,
html body.site-public.gch-shop-page .gch-shop-resource-filters select {
  width: 100% !important;
  height: 44px !important;
  border: 1px solid rgba(226,179,86,.24) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #17110b !important;
  padding: 0 14px !important;
  outline: none !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-filters .btn {
  min-height: 44px !important;
  border-radius: 14px !important;
  padding-inline: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-size: 11px !important;
  font-weight: 950 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 22px !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card.recurso-card.recurso-card-slider {
  min-width: 0 !important;
  width: 100% !important;
  min-height: 520px !important;
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 24px !important;
  border: 1px solid rgba(226,179,86,.18) !important;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,248,235,.92)) !important;
  box-shadow: 0 18px 44px rgba(84,62,26,.08) !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card.recurso-card.recurso-card-slider:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(226,179,86,.34) !important;
  box-shadow: 0 26px 56px rgba(84,62,26,.13) !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-badge {
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  z-index: 5 !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: #e2b356 !important;
  color: #14100b !important;
  font-size: 9px !important;
  font-weight: 950 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-card-topline {
  min-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 14px 16px 8px !important;
  flex-wrap: wrap !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-chip {
  padding: 6px 9px !important;
  border-radius: 999px !important;
  background: rgba(226,179,86,.14) !important;
  color: #a36b1c !important;
  font-size: 9px !important;
  font-weight: 950 !important;
  letter-spacing: .05em !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-chip.is-soft {
  background: rgba(20,20,20,.055) !important;
  color: #5b5145 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-visual-link,
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-visual,
html body.site-public.gch-shop-page .gch-shop-resource-card .product-visual {
  width: calc(100% - 32px) !important;
  height: 178px !important;
  margin: 0 auto !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 20px !important;
  background: #101214 !important;
  overflow: hidden !important;
  text-decoration: none !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .product-visual img,
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-visual-link img,
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-visual img {
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-icon {
  width: 56px !important;
  height: 56px !important;
  margin: -28px 0 0 22px !important;
  z-index: 3 !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 18px !important;
  border: 1px solid rgba(226,179,86,.26) !important;
  background: #fffaf0 !important;
  box-shadow: 0 12px 24px rgba(84,62,26,.12) !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-body {
  padding: 16px 20px 12px !important;
  flex: 1 1 auto !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-body h3 {
  margin: 0 0 9px !important;
  color: #15110c !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-body p {
  margin: 0 0 12px !important;
  color: #5a5146 !important;
  font-size: 12.8px !important;
  line-height: 1.55 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-body ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: grid !important;
  gap: 7px !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-body li {
  position: relative !important;
  padding-left: 18px !important;
  color: #4f463b !important;
  font-size: 11.5px !important;
  line-height: 1.35 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-body li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  color: #c68d2c !important;
  font-weight: 900 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-buy {
  padding: 0 20px 20px !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-price-wrap {
  display: flex !important;
  align-items: baseline !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-price-wrap small {
  color: #918270 !important;
  text-decoration: line-through !important;
  font-size: 12px !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-price-wrap strong {
  color: #b77918 !important;
  font-size: 25px !important;
  line-height: 1 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-actions-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 9px !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-buy-btn,
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-detail-btn {
  width: 100% !important;
  min-height: 42px !important;
  border: 0 !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  text-decoration: none !important;
  font-size: 10.5px !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  cursor: pointer !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-buy-btn {
  background: linear-gradient(135deg, #e2b356, #c48a2a) !important;
  color: #1b1205 !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card .recurso-detail-btn {
  background: #111 !important;
  color: #fff4db !important;
}
html body.site-public.gch-shop-page .gch-shop-resource-card template {
  display: none !important;
}
html body.site-public.gch-shop-page .modal.is-resource-showcase-modal .gch-rs-visual img,
html body.site-public.gch-shop-page .modal.is-resource-showcase-modal .gch-rs-visual .product-visual img {
  object-fit: contain !important;
}
@media (max-width: 1260px) {
  html body.site-public.gch-shop-page .gch-shop-resource-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  html body.site-public.gch-shop-page .gch-shop-resource-filters { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 900px) {
  html body.site-public.gch-shop-page .gch-shop-resources { width: calc(100% - 20px) !important; padding-top: 96px !important; }
  html body.site-public.gch-shop-page .gch-shop-resources-hero { grid-template-columns: 1fr !important; padding: 24px !important; }
  html body.site-public.gch-shop-page .gch-shop-featured, html body.site-public.gch-shop-page .gch-shop-catalog { padding: 18px !important; border-radius: 22px !important; }
  html body.site-public.gch-shop-page .gch-shop-section-head { align-items: start !important; flex-direction: column !important; }
  html body.site-public.gch-shop-page .gch-shop-resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.site-public.gch-shop-page .gch-shop-resource-filters { grid-template-columns: 1fr !important; }
}
@media (max-width: 620px) {
  html body.site-public.gch-shop-page .gch-shop-resource-grid { grid-template-columns: 1fr !important; }
  html body.site-public.gch-shop-page .gch-shop-resources-hero h1 { font-size: 46px !important; }
}

/* === FIX PUNTUAL: LETRAS LEGIBLES EN SOBRE Y CONTACTO, SIN TOCAR MÁRGENES === */
/* Sección: LIDERAZGO TÉCNICO CON VISIÓN EJECUTIVA */
body.site-public .face#sobre .sobre-heading-clean .kicker,
body.site-public .face#sobre .sobre-heading .kicker {
  font-size: clamp(14px, 0.95vw, 16px) !important;
  line-height: 1.35 !important;
  letter-spacing: .075em !important;
}

body.site-public .face#sobre .sobre-heading-clean .sub,
body.site-public .face#sobre .sobre-heading .sub,
body.site-public .face#sobre .sobre-heading-clean .sub-gold,
body.site-public .face#sobre .sobre-heading-clean .sub-dark {
  font-size: clamp(16px, 1.05vw, 18px) !important;
  line-height: 1.55 !important;
}

body.site-public .face#sobre .sobre-quote-card p,
body.site-public .face#sobre .sobre-quote p {
  font-size: clamp(14px, 0.95vw, 16px) !important;
  line-height: 1.5 !important;
}

body.site-public .face#sobre .sobre-quote-card b,
body.site-public .face#sobre .sobre-quote b {
  font-size: clamp(13px, 0.9vw, 15px) !important;
  line-height: 1.35 !important;
}

body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article strong {
  font-size: clamp(14px, 0.95vw, 16px) !important;
  line-height: 1.25 !important;
  letter-spacing: .035em !important;
}

body.site-public .face#sobre .sobre-credentials.sobre-credentials-exactas article p {
  font-size: clamp(13.5px, 0.9vw, 15px) !important;
  line-height: 1.45 !important;
}

body.site-public .face#sobre .sobre-section-title strong {
  font-size: clamp(14px, 0.95vw, 16px) !important;
  line-height: 1.3 !important;
  letter-spacing: .05em !important;
}

body.site-public .face#sobre .sobre-stats article b {
  font-size: clamp(21px, 1.55vw, 28px) !important;
  line-height: 1.1 !important;
}

body.site-public .face#sobre .sobre-stats article b small {
  font-size: .7em !important;
  line-height: 1.15 !important;
}

body.site-public .face#sobre .sobre-stats article strong {
  font-size: clamp(13.5px, 0.92vw, 15.5px) !important;
  line-height: 1.25 !important;
  letter-spacing: .035em !important;
}

body.site-public .face#sobre .sobre-stats article p {
  font-size: clamp(13px, 0.88vw, 15px) !important;
  line-height: 1.45 !important;
}

/* Sección: CUÉNTANOS SOBRE TU DESAFÍO + formulario */
body.site-public .face#contacto .csv2-form-card > h3 {
  font-size: clamp(17px, 1.15vw, 21px) !important;
  line-height: 1.25 !important;
  letter-spacing: .04em !important;
}

body.site-public .face#contacto .csv2-field label {
  font-size: clamp(14px, 0.92vw, 16px) !important;
  line-height: 1.3 !important;
}

body.site-public .face#contacto .csv2-field input,
body.site-public .face#contacto .csv2-field select,
body.site-public .face#contacto .csv2-field textarea {
  font-size: clamp(14.5px, 0.96vw, 16px) !important;
  line-height: 1.35 !important;
}

body.site-public .face#contacto .csv2-field input::placeholder,
body.site-public .face#contacto .csv2-field textarea::placeholder {
  font-size: clamp(14px, 0.92vw, 15.5px) !important;
  line-height: 1.35 !important;
}

body.site-public .face#contacto .csv2-submit {
  font-size: clamp(13.5px, 0.9vw, 15px) !important;
  line-height: 1.2 !important;
  letter-spacing: .035em !important;
}

body.site-public .face#contacto .csv2-form-trust strong {
  font-size: clamp(13px, 0.86vw, 14.5px) !important;
  line-height: 1.3 !important;
}

body.site-public .face#contacto .csv2-form-trust p {
  font-size: clamp(12.5px, 0.82vw, 14px) !important;
  line-height: 1.4 !important;
}

/* === CAPA VISUAL PREMIUM GLOBAL: efectos profesionales sin tocar estructura ===
   Solo estética: sombras, brillo, microinteracciones, profundidad y animaciones suaves.
   No modifica márgenes, paddings, grillas, alturas ni HTML. */
body.site-public {
  --gch-premium-glow: rgba(216, 186, 115, .28);
  --gch-premium-glow-strong: rgba(216, 186, 115, .42);
  --gch-premium-card-light: rgba(255, 255, 255, .74);
  --gch-premium-card-dark: rgba(255, 255, 255, .065);
  --gch-premium-border: rgba(216, 186, 115, .34);
}

body.site-public .face {
  background-attachment: fixed;
}

body.site-public .face::before,
body.site-public .face::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 0;
}

body.site-public .face::before {
  inset: 0;
  opacity: .82;
  background:
    radial-gradient(circle at 15% 16%, rgba(216, 186, 115, .16), transparent 24%),
    radial-gradient(circle at 84% 20%, rgba(180, 119, 41, .13), transparent 26%),
    radial-gradient(circle at 50% 112%, rgba(216, 186, 115, .12), transparent 34%);
}

body.site-public .face::after {
  inset: 1px;
  opacity: .18;
  background-image:
    linear-gradient(rgba(180,119,41,.18) 1px, transparent 1px),
    linear-gradient(90deg, rgba(180,119,41,.14) 1px, transparent 1px);
  background-size: 78px 78px;
  mask-image: radial-gradient(circle at center, #000 0%, transparent 72%);
}

body.site-public .face.dark::before {
  opacity: .9;
  background:
    radial-gradient(circle at 78% 20%, rgba(216, 186, 115, .28), transparent 29%),
    radial-gradient(circle at 20% 82%, rgba(180, 119, 41, .22), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.045), transparent 42%, rgba(216,186,115,.05));
}

body.site-public .face.light::before,
body.site-public .face.split::before {
  background:
    radial-gradient(circle at 12% 10%, rgba(216, 186, 115, .18), transparent 25%),
    radial-gradient(circle at 92% 16%, rgba(255, 255, 255, .9), transparent 25%),
    radial-gradient(circle at 50% 100%, rgba(180, 119, 41, .08), transparent 34%);
}

body.site-public .face-inner,
body.site-public .gch-section-wrap,
body.site-public .contact-struct-v2,
body.site-public .gch-corporate-footer {
  position: relative;
  z-index: 2;
}

body.site-public .topbar {
  box-shadow: 0 18px 56px rgba(0, 0, 0, .34), inset 0 -1px 0 rgba(216,186,115,.12);
}

body.site-public .topbar.is-light {
  box-shadow: 0 18px 58px rgba(55, 39, 15, .12), inset 0 -1px 0 rgba(255,255,255,.65);
}

body.site-public .brand-mark {
  box-shadow:
    inset 0 0 0 6px rgba(216, 186, 115, .055),
    0 0 34px rgba(216, 186, 115, .28),
    0 12px 30px rgba(0, 0, 0, .22);
}

body.site-public .nav-menu a,
body.site-public .top-cta,
body.site-public .cart-mini,
body.site-public .btn,
body.site-public .csv2-submit,
body.site-public .sector-cta-btn,
body.site-public .pmo-cta-button,
body.site-public .recurso-buy-btn,
body.site-public .recurso-detail-btn,
body.site-public .featured-all,
body.site-public .insights-subscribe button {
  transition: transform .26s cubic-bezier(.2,.8,.2,1), box-shadow .26s ease, border-color .26s ease, filter .26s ease, background .26s ease, color .26s ease;
}

body.site-public .btn-gold,
body.site-public .top-cta,
body.site-public .csv2-submit,
body.site-public .sector-cta-btn,
body.site-public .pmo-cta-button,
body.site-public .recurso-buy-btn,
body.site-public .insights-subscribe button,
body.site-public .featured-all {
  box-shadow: 0 16px 34px rgba(180, 119, 41, .22), inset 0 1px 0 rgba(255,255,255,.28);
}

body.site-public .btn-ghost,
body.site-public .recurso-detail-btn,
body.site-public .cart-mini {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 12px 28px rgba(0,0,0,.12);
}

body.site-public :where(
  .mini-proofs article,
  .gc-trust-card,
  .gc-stats-strip article,
  .gc-problem-card,
  .solucion-card-real,
  .recurso-card,
  .recursos-footer-item,
  .sobre-quote-card,
  .sobre-credentials article,
  .sobre-stats article,
  .insight-card,
  .insights-benefits article,
  .insights-subscribe,
  .featured-resource,
  .csv2-card,
  .csv2-form-card,
  .csv2-form-trust article,
  .csv2-benefits article,
  .sector-card-line,
  .sector-impact-bar article,
  .info-card,
  .gc-service-premium-card,
  .pmo-card,
  .pmo-exact-dashboard,
  .pmo-exact-kpi,
  .pmo-exact-method,
  .pmo-cta-box,
  .conversion-step-exact,
  .conversion-metric-exact,
  .conversion-quote-exact,
  .roadmap-cards-exact article,
  .roadmap-benefits-exact article,
  .gch-footer-col
) {
  transition: transform .32s cubic-bezier(.2,.8,.2,1), box-shadow .32s ease, border-color .32s ease, filter .32s ease, background .32s ease;
  will-change: transform;
}

body.site-public :where(
  .gc-trust-card,
  .gc-problem-card,
  .solucion-card-real,
  .recurso-card,
  .insight-card,
  .csv2-form-card,
  .gc-service-premium-card,
  .pmo-card,
  .conversion-step-exact,
  .roadmap-cards-exact article,
  .info-card
) {
  box-shadow: 0 24px 58px rgba(43, 31, 13, .10), inset 0 1px 0 rgba(255,255,255,.52);
}

body.site-public :where(.face.dark, .gch-dark-cta, #footer-corporativo-page) :where(
  .mini-proofs article,
  .csv2-card,
  .conversion-step-exact,
  .gch-footer-col,
  .gch-dark-benefits article
) {
  box-shadow: 0 24px 62px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.10);
}

body.site-public :where(.has-gch-svg-icon, .gc-trust-icon, .gc-problem-icon, .solucion-icon-real, .csv2-card-icon, .gc-service-premium-icon, .pmo-card i, .sector-card-line i) img,
body.site-public :where(.has-gch-svg-icon, .gc-trust-icon, .gc-problem-icon, .solucion-icon-real, .csv2-card-icon, .gc-service-premium-icon) .gch-icon-img {
  filter: drop-shadow(0 10px 16px rgba(180, 119, 41, .16));
  transition: transform .32s cubic-bezier(.2,.8,.2,1), filter .32s ease;
}

body.site-public :where(.kicker, .gc-trust-kicker, .gc-problems-kicker, .pmo-exact-kicker, .csv2-kicker, .insights-label, .modal-kicker) {
  text-shadow: 0 0 18px rgba(216, 186, 115, .18);
}

body.site-public :where(.home-headline, .gc-trust-title, .gc-problems-title, .headline, .csv2-title, .pmo-exact-hero h2, .conversion-exact-head h2, .roadmap-exact-head h2) {
  text-shadow: 0 18px 42px rgba(0, 0, 0, .10);
}

body.site-public .face.dark :where(.home-headline, .headline, .gch-footer-top-title) {
  text-shadow: 0 18px 48px rgba(0,0,0,.46), 0 0 34px rgba(216,186,115,.12);
}

body.site-public .csv2-field input,
body.site-public .csv2-field select,
body.site-public .csv2-field textarea,
body.site-public .insights-subscribe input {
  transition: border-color .22s ease, box-shadow .22s ease, background .22s ease, transform .22s ease;
}

body.site-public .csv2-field input:focus,
body.site-public .csv2-field select:focus,
body.site-public .csv2-field textarea:focus,
body.site-public .insights-subscribe input:focus {
  border-color: rgba(216, 186, 115, .72) !important;
  box-shadow: 0 0 0 4px rgba(216, 186, 115, .14), 0 14px 32px rgba(43, 31, 13, .10) !important;
  background: rgba(255, 255, 255, .96) !important;
}

body.site-public .face.dark .csv2-field input:focus,
body.site-public .face.dark .csv2-field select:focus,
body.site-public .face.dark .csv2-field textarea:focus,
body.site-public .gch-dark-cta .csv2-field input:focus,
body.site-public .gch-dark-cta .csv2-field textarea:focus {
  background: rgba(255, 255, 255, .11) !important;
  box-shadow: 0 0 0 4px rgba(216, 186, 115, .16), 0 18px 40px rgba(0, 0, 0, .28) !important;
}

@media (hover: hover) and (pointer: fine) {
  body.site-public .nav-menu a:hover {
    transform: translateY(-2px);
  }

  body.site-public :where(.top-cta, .cart-mini, .btn, .csv2-submit, .sector-cta-btn, .pmo-cta-button, .recurso-buy-btn, .recurso-detail-btn, .featured-all, .insights-subscribe button):hover {
    transform: translateY(-3px);
    filter: saturate(1.08) brightness(1.03);
  }

  body.site-public :where(.btn-gold, .top-cta, .csv2-submit, .sector-cta-btn, .pmo-cta-button, .recurso-buy-btn, .insights-subscribe button, .featured-all):hover {
    box-shadow: 0 24px 52px rgba(180, 119, 41, .32), 0 0 0 1px rgba(255,255,255,.18) inset;
  }

  body.site-public :where(
    .mini-proofs article,
    .gc-trust-card,
    .gc-stats-strip article,
    .gc-problem-card,
    .solucion-card-real,
    .recurso-card,
    .recursos-footer-item,
    .sobre-quote-card,
    .sobre-credentials article,
    .sobre-stats article,
    .insight-card,
    .insights-benefits article,
    .insights-subscribe,
    .featured-resource,
    .csv2-card,
    .csv2-form-trust article,
    .csv2-benefits article,
    .info-card,
    .gc-service-premium-card,
    .pmo-card,
    .pmo-exact-kpi,
    .conversion-step-exact,
    .conversion-metric-exact,
    .roadmap-cards-exact article,
    .roadmap-benefits-exact article
  ):hover {
    transform: translateY(-6px);
    border-color: rgba(216, 186, 115, .54) !important;
    box-shadow: 0 30px 76px rgba(43, 31, 13, .16), 0 0 0 1px rgba(216,186,115,.12) inset;
  }

  body.site-public :where(.face.dark, .gch-dark-cta, #footer-corporativo-page) :where(
    .mini-proofs article,
    .csv2-card,
    .conversion-step-exact,
    .gch-footer-col,
    .gch-dark-benefits article
  ):hover {
    box-shadow: 0 32px 82px rgba(0,0,0,.42), 0 0 34px rgba(216,186,115,.10), inset 0 1px 0 rgba(255,255,255,.14);
  }

  body.site-public :where(
    .mini-proofs article,
    .gc-trust-card,
    .gc-problem-card,
    .solucion-card-real,
    .csv2-card,
    .gc-service-premium-card,
    .pmo-card,
    .conversion-step-exact,
    .roadmap-cards-exact article
  ):hover :where(.has-gch-svg-icon, .gc-trust-icon, .gc-problem-icon, .solucion-icon-real, .csv2-card-icon, .gc-service-premium-icon) img,
  body.site-public :where(
    .mini-proofs article,
    .gc-trust-card,
    .gc-problem-card,
    .solucion-card-real,
    .csv2-card,
    .gc-service-premium-card,
    .pmo-card,
    .conversion-step-exact,
    .roadmap-cards-exact article
  ):hover :where(.has-gch-svg-icon, .gc-trust-icon, .gc-problem-icon, .solucion-icon-real, .csv2-card-icon, .gc-service-premium-icon) .gch-icon-img {
    transform: scale(1.08) rotate(-2deg);
    filter: drop-shadow(0 14px 22px rgba(180, 119, 41, .28));
  }
}

@media (prefers-reduced-motion: no-preference) {
  @keyframes gch-premium-rise {
    from { opacity: 0; transform: translate3d(0, 18px, 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
  }

  @keyframes gch-premium-glow-pulse {
    0%, 100% { opacity: .68; transform: scale(1); }
    50% { opacity: .92; transform: scale(1.025); }
  }

  body.site-public .face.is-active .face-inner {
    animation: gch-premium-rise .58s cubic-bezier(.2,.8,.2,1) both;
  }

  body.site-public .face.is-active :where(
    .mini-proofs article,
    .gc-trust-card,
    .gc-problem-card,
    .solucion-card-real,
    .recurso-card,
    .insight-card,
    .csv2-card,
    .gc-service-premium-card,
    .pmo-card,
    .conversion-step-exact,
    .roadmap-cards-exact article,
    .csv2-form-card
  ) {
    animation: gch-premium-rise .62s cubic-bezier(.2,.8,.2,1) both;
  }

  body.site-public .face.is-active :where(
    .mini-proofs article:nth-child(2),
    .gc-trust-card:nth-child(2),
    .gc-problem-card:nth-child(2),
    .gc-service-premium-card:nth-child(2),
    .conversion-step-exact:nth-child(2),
    .roadmap-cards-exact article:nth-child(2)
  ) { animation-delay: .05s; }

  body.site-public .face.is-active :where(
    .mini-proofs article:nth-child(3),
    .gc-trust-card:nth-child(3),
    .gc-problem-card:nth-child(3),
    .gc-service-premium-card:nth-child(3),
    .conversion-step-exact:nth-child(3),
    .roadmap-cards-exact article:nth-child(3)
  ) { animation-delay: .10s; }

  body.site-public .face.is-active :where(
    .mini-proofs article:nth-child(4),
    .gc-trust-card:nth-child(4),
    .gc-problem-card:nth-child(4),
    .gc-service-premium-card:nth-child(4),
    .conversion-step-exact:nth-child(4),
    .roadmap-cards-exact article:nth-child(4)
  ) { animation-delay: .15s; }

  body.site-public .face.is-active::before {
    animation: gch-premium-glow-pulse 7s ease-in-out infinite;
  }
}

@media (max-width: 820px) {
  body.site-public .face::before,
  body.site-public .face::after {
    display: none;
  }
}


/* === AJUSTE FINAL: ÍCONOS REALES EN INICIO + CONTACTO PREMIUM SIN MOVER ESTRUCTURA ===
   Cambios seguros: solo iconografía, fondos, sombras, bordes, legibilidad y microefectos.
   No altera grillas principales ni márgenes de secciones. */
body.site-public .face#inicio .mini-proofs i,
body.site-public .gch-executive-home .mini-proofs i {
  overflow: visible !important;
}

body.site-public .face#inicio .mini-proofs i .gch-icon-img,
body.site-public .face#inicio .mini-proofs i .gch-template-icon,
body.site-public .gch-executive-home .mini-proofs i .gch-icon-img,
body.site-public .gch-executive-home .mini-proofs i .gch-template-icon {
  width: 38px !important;
  height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  object-fit: contain !important;
  display: block !important;
  opacity: .98 !important;
  filter: drop-shadow(0 0 10px rgba(216,186,115,.22)) drop-shadow(0 10px 14px rgba(0,0,0,.22)) !important;
  transform-origin: center !important;
}

body.site-public .face#inicio .mini-proofs article,
body.site-public .gch-executive-home .mini-proofs article {
  isolation: isolate !important;
}

body.site-public .face#inicio .mini-proofs article::before,
body.site-public .gch-executive-home .mini-proofs article::before {
  content: "" !important;
  position: absolute !important;
  inset: -10px 6px -10px 0 !important;
  z-index: -1 !important;
  border-radius: 18px !important;
  opacity: 0 !important;
  background: radial-gradient(circle at 26px 28px, rgba(216,186,115,.18), transparent 44%), linear-gradient(135deg, rgba(255,255,255,.05), transparent 62%) !important;
  transition: opacity .26s ease !important;
}

@media (hover:hover) and (pointer:fine) {
  body.site-public .face#inicio .mini-proofs article:hover::before,
  body.site-public .gch-executive-home .mini-proofs article:hover::before {
    opacity: 1 !important;
  }
  body.site-public .face#inicio .mini-proofs article:hover i .gch-icon-img,
  body.site-public .face#inicio .mini-proofs article:hover i .gch-template-icon,
  body.site-public .gch-executive-home .mini-proofs article:hover i .gch-icon-img,
  body.site-public .gch-executive-home .mini-proofs article:hover i .gch-template-icon {
    transform: translateY(-2px) scale(1.07) !important;
    filter: drop-shadow(0 0 14px rgba(216,186,115,.34)) drop-shadow(0 14px 18px rgba(0,0,0,.28)) !important;
  }
}

body.site-public .face#contacto .csv2-form-card {
  position: relative !important;
  overflow: hidden !important;
  border-color: rgba(196,138,42,.35) !important;
  border-radius: 22px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,250,241,.94)) !important;
  box-shadow:
    0 28px 70px rgba(61,42,13,.13),
    0 0 0 1px rgba(255,255,255,.82) inset,
    0 0 46px rgba(216,186,115,.10) !important;
}

body.site-public .face#contacto .csv2-form-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(216,186,115,.25), transparent 28%),
    radial-gradient(circle at 92% 16%, rgba(196,138,42,.14), transparent 24%),
    linear-gradient(115deg, rgba(255,255,255,.38), transparent 38%, rgba(216,186,115,.08)) !important;
}

body.site-public .face#contacto .csv2-form-card::after {
  content: "" !important;
  position: absolute !important;
  left: -35% !important;
  top: 0 !important;
  width: 42% !important;
  height: 100% !important;
  pointer-events: none !important;
  opacity: .42 !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.62), transparent) !important;
  transform: skewX(-18deg) !important;
}

body.site-public .face#contacto .csv2-form-card > h3,
body.site-public .face#contacto .csv2-form-card .csv2-form,
body.site-public .face#contacto .csv2-form-card .csv2-form-trust {
  position: relative !important;
  z-index: 1 !important;
}

body.site-public .face#contacto .csv2-form-card > h3 {
  color: #1b1308 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(22px, 1.65vw, 30px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.012em !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  text-wrap: balance !important;
}

body.site-public .face#contacto .csv2-form-card > h3::after {
  width: 112px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #d8ba73, #b9771c, rgba(216,186,115,0)) !important;
  box-shadow: 0 0 18px rgba(216,186,115,.28) !important;
}

body.site-public .face#contacto .csv2-field label {
  color: #2b2115 !important;
  font-size: clamp(14.5px, .98vw, 16.5px) !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  letter-spacing: .012em !important;
}

body.site-public .face#contacto .csv2-field input,
body.site-public .face#contacto .csv2-field select,
body.site-public .face#contacto .csv2-field textarea {
  border-color: rgba(185,119,28,.28) !important;
  border-radius: 13px !important;
  background: rgba(255,255,255,.88) !important;
  color: #17110a !important;
  font-size: clamp(15.5px, 1.02vw, 17px) !important;
  line-height: 1.35 !important;
  box-shadow: 0 10px 24px rgba(61,42,13,.045), inset 0 1px 0 rgba(255,255,255,.88) !important;
}

body.site-public .face#contacto .csv2-field input,
body.site-public .face#contacto .csv2-field select {
  height: 46px !important;
}

body.site-public .face#contacto .csv2-field textarea {
  min-height: 112px !important;
}

body.site-public .face#contacto .csv2-field input::placeholder,
body.site-public .face#contacto .csv2-field textarea::placeholder {
  color: rgba(45,35,22,.58) !important;
  font-size: clamp(14.5px, .96vw, 16px) !important;
}

body.site-public .face#contacto .csv2-field input:focus,
body.site-public .face#contacto .csv2-field select:focus,
body.site-public .face#contacto .csv2-field textarea:focus {
  border-color: rgba(216,186,115,.92) !important;
  background: #fff !important;
  box-shadow:
    0 0 0 4px rgba(216,186,115,.18),
    0 18px 38px rgba(61,42,13,.12),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
  transform: translateY(-1px) !important;
}

body.site-public .face#contacto .csv2-submit {
  position: relative !important;
  overflow: hidden !important;
  min-height: 50px !important;
  height: 50px !important;
  border-radius: 15px !important;
  color: #1b1205 !important;
  font-size: clamp(14px, .96vw, 16px) !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
  letter-spacing: .055em !important;
  background: linear-gradient(135deg, #f0cf83 0%, #d8a045 45%, #b9771c 100%) !important;
  box-shadow: 0 18px 34px rgba(185,119,28,.24), inset 0 1px 0 rgba(255,255,255,.46) !important;
}

body.site-public .face#contacto .csv2-submit::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: -42% !important;
  width: 32% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.54), transparent) !important;
  transform: skewX(-18deg) !important;
  transition: left .55s ease !important;
}

@media (hover:hover) and (pointer:fine) {
  body.site-public .face#contacto .csv2-submit:hover::after { left: 112% !important; }
  body.site-public .face#contacto .csv2-submit:hover {
    background: linear-gradient(135deg, #f7dc9a 0%, #e0a946 45%, #c38322 100%) !important;
  }
}

body.site-public .face#contacto .csv2-form-trust article {
  border-color: rgba(185,119,28,.22) !important;
}

body.site-public .face#contacto .csv2-form-trust i .gch-icon-img,
body.site-public .face#contacto .csv2-form-trust i .gch-template-icon {
  width: 28px !important;
  height: 28px !important;
  filter: drop-shadow(0 8px 12px rgba(185,119,28,.22)) !important;
}

body.site-public .face#contacto .csv2-form-trust strong {
  color: #1b1308 !important;
  font-size: clamp(13.5px, .92vw, 15.5px) !important;
  line-height: 1.25 !important;
}

body.site-public .face#contacto .csv2-form-trust p {
  color: #53493c !important;
  font-size: clamp(13px, .86vw, 14.5px) !important;
  line-height: 1.38 !important;
}

@media (prefers-reduced-motion: no-preference) {
  @keyframes gch-contact-shine-final {
    0%, 46% { left: -45%; }
    72%, 100% { left: 118%; }
  }
  body.site-public .face#contacto.is-active .csv2-form-card::after {
    animation: gch-contact-shine-final 4.8s ease-in-out .35s both !important;
  }
}

@media (max-width: 820px) {
  body.site-public .face#contacto .csv2-form-card > h3 {
    font-size: clamp(23px, 7vw, 31px) !important;
  }
  body.site-public .face#contacto .csv2-field input,
  body.site-public .face#contacto .csv2-field select {
    height: 48px !important;
  }
  body.site-public .face#contacto .csv2-submit {
    min-height: 52px !important;
    height: 52px !important;
  }
}

/* ===== AJUSTE FINO: POPUP TIENDA + SERVICIOS ORGANIZADOS =====
   Solo estética y proporción: no cambia HTML, secciones, grids base ni márgenes principales. */

/* POPUP DE TIENDA: precio más proporcionado y ficha más ordenada */
body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-card {
  width: min(980px, calc(100vw - 28px)) !important;
  border-radius: 24px !important;
  box-shadow: 0 34px 90px rgba(0,0,0,.42) !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-detail {
  grid-template-columns: minmax(260px, .86fr) minmax(0, 1.14fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-info {
  align-content: start !important;
  gap: 12px !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-category {
  font-size: 12px !important;
  line-height: 1.15 !important;
  padding: 9px 13px !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-price {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 8px 12px !important;
  margin: 2px 0 4px !important;
  padding: 12px 15px !important;
  border: 1px solid rgba(180,119,41,.20) !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, rgba(255,250,240,.96), rgba(246,236,218,.78)) !important;
  box-shadow: 0 12px 26px rgba(72,50,18,.07) !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-price small {
  color: #8f8270 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-price strong {
  color: #a96e1f !important;
  font-family: Inter, Montserrat, Arial, sans-serif !important;
  font-size: clamp(24px, 2.35vw, 32px) !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -.035em !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-copy {
  max-height: 300px !important;
  padding: 12px 12px 12px 0 !important;
  color: #32291f !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-copy p,
body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-copy li {
  font-size: 15px !important;
  line-height: 1.65 !important;
}

body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-add {
  min-height: 50px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
  letter-spacing: .10em !important;
  box-shadow: 0 16px 34px rgba(180,119,41,.20) !important;
}

/* POPUP PREMIUM DE RECURSOS/TIENDA: precio ya no invade, bloque de compra más limpio */
body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-main-grid,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-main-grid {
  grid-template-columns: minmax(0, 1.36fr) minmax(300px, .62fr) minmax(280px, .50fr) !important;
  gap: 30px !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card {
  margin-top: 40px !important;
  padding: 24px 22px 22px !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.94), rgba(252,246,236,.90)) !important;
  border: 1px solid rgba(189,135,48,.30) !important;
  box-shadow: 0 18px 40px rgba(74,51,17,.11), 0 0 0 1px rgba(255,255,255,.65) inset !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-label,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-label {
  margin-bottom: 10px !important;
  color: #8c5b16 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  letter-spacing: .13em !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 6px 10px !important;
  margin: 0 auto 8px !important;
  padding: 10px 12px !important;
  border-radius: 15px !important;
  background: rgba(255,250,242,.92) !important;
  border: 1px solid rgba(189,135,48,.16) !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price small,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price small {
  font-size: 14px !important;
  line-height: 1 !important;
  color: #8e8170 !important;
  font-weight: 800 !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price strong,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price strong {
  color: #a86c14 !important;
  font-family: Inter, Montserrat, Arial, sans-serif !important;
  font-size: clamp(30px, 2.15vw, 42px) !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
  letter-spacing: -.04em !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card p,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card p {
  margin-bottom: 16px !important;
  color: #45392b !important;
  font-size: 12.5px !important;
  line-height: 1.45 !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card ul,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card ul {
  display: grid !important;
  gap: 2px !important;
  margin-bottom: 18px !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card li,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card li {
  padding: 6px 0 6px 26px !important;
  font-size: 12.5px !important;
  line-height: 1.38 !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card li::before,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card li::before {
  top: 6px !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-buy-form button,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-buy-form button {
  height: 50px !important;
  border-radius: 14px !important;
  font-size: 12.5px !important;
  letter-spacing: .11em !important;
  box-shadow: 0 14px 28px rgba(189,124,34,.22) !important;
}

body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-secure,
body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-secure {
  margin-top: 14px !important;
  font-size: 11.5px !important;
  line-height: 1.35 !important;
}

/* SERVICIOS: misma estructura, mejor estética y lectura más ordenada */
body.site-public .face#servicios .gc-services-premium-grid {
  gap: 18px !important;
}

body.site-public .face#servicios .gc-service-premium-card {
  overflow: hidden !important;
  border-radius: 18px !important;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(249,242,230,.90)) !important;
  border-color: rgba(189,135,48,.27) !important;
  box-shadow: 0 18px 38px rgba(42,30,12,.10), 0 1px 0 rgba(255,255,255,.85) inset !important;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;
}

body.site-public .face#servicios .gc-service-premium-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(189,135,48,.44) !important;
  box-shadow: 0 26px 58px rgba(42,30,12,.16), 0 0 0 1px rgba(226,179,86,.10) inset !important;
}

body.site-public .face#servicios .gc-service-premium-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto auto 0 !important;
  width: 100% !important;
  height: 3px !important;
  background: linear-gradient(90deg, transparent, rgba(189,135,48,.72), transparent) !important;
  opacity: .75 !important;
  pointer-events: none !important;
}

body.site-public .face#servicios .gc-service-premium-icon {
  width: 76px !important;
  height: 76px !important;
  border-radius: 20px !important;
  background: radial-gradient(circle at 35% 25%, rgba(255,255,255,.42), transparent 32%), linear-gradient(145deg, #111, #2a1c08) !important;
  border-color: rgba(226,179,86,.44) !important;
  box-shadow: 0 12px 26px rgba(0,0,0,.14) !important;
}

body.site-public .face#servicios .gc-service-premium-icon img {
  width: 44px !important;
  height: 44px !important;
  filter: none !important;
}

body.site-public .face#servicios .gc-service-pmi-icon strong {
  color: #e2b356 !important;
  font-size: 22px !important;
}

body.site-public .face#servicios .gc-service-premium-copy h3 {
  color: #111 !important;
  font-size: 23px !important;
  line-height: 1.08 !important;
}

body.site-public .face#servicios .gc-service-premium-copy p {
  color: #2e261e !important;
  font-size: 13.2px !important;
  line-height: 1.55 !important;
}

body.site-public .face#servicios .gc-service-premium-card > a {
  width: 34px !important;
  height: 34px !important;
  right: 16px !important;
  bottom: 14px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #111 !important;
  color: #e2b356 !important;
  border: 1px solid rgba(226,179,86,.36) !important;
  font-size: 21px !important;
  box-shadow: 0 10px 20px rgba(0,0,0,.16) !important;
}

body.site-public .face#servicios .gc-services-premium-metrics {
  gap: 12px !important;
}

body.site-public .face#servicios .gc-services-premium-metrics article {
  min-height: 92px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(189,135,48,.20) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.86) !important;
  box-shadow: 0 14px 30px rgba(42,30,12,.07) !important;
}

body.site-public .face#servicios .gc-services-premium-metrics img {
  width: 56px !important;
  height: 56px !important;
}

body.site-public .face#servicios .gc-services-premium-metrics strong {
  font-size: 14px !important;
  line-height: 1.16 !important;
}

body.site-public .face#servicios .gc-services-premium-metrics span {
  font-size: 12.8px !important;
  line-height: 1.38 !important;
}

@media (max-width: 1280px) {
  body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-main-grid,
  body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-main-grid {
    grid-template-columns: minmax(0, 1fr) minmax(280px, .46fr) !important;
  }
}

@media (max-width: 900px) {
  body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-detail {
    grid-template-columns: 1fr !important;
  }
  body.site-public .modal.is-product-detail:not(.is-resource-showcase-modal) .modal-product-price strong {
    font-size: 28px !important;
  }
  body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card,
  body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price-card {
    margin-top: 0 !important;
    padding: 20px 18px !important;
  }
  body.site-public .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price strong,
  body.gch-shop-page .modal.is-product-detail.is-resource-showcase-modal .gch-rs-price strong {
    font-size: 32px !important;
  }
}

@media (max-width: 760px) {
  body.site-public .face#servicios .gc-service-premium-card {
    border-radius: 16px !important;
  }
  body.site-public .face#servicios .gc-service-premium-icon {
    width: 68px !important;
    height: 68px !important;
  }
  body.site-public .face#servicios .gc-service-premium-copy h3 {
    font-size: 21px !important;
  }
  body.site-public .face#servicios .gc-service-premium-copy p {
    font-size: 13px !important;
  }
}

/* === PATCH: INSIGHTS ESTRATÉGICOS - IMÁGENES COMPLETAS SIN RECORTE === */
body.site-public .face#insights .insight-db-cover.has-image {
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 4 / 5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px !important;
  background: linear-gradient(135deg, #fffaf2 0%, #f3ead8 100%) !important;
  border-bottom: 1px solid rgba(226,179,86,.14) !important;
}

body.site-public .face#insights .insight-db-cover.has-image img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  display: block !important;
  margin: auto !important;
  border-radius: 16px !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  background: #fffaf3 !important;
}

body.site-public .face#insights .insight-card.insight-db-card:hover .insight-db-cover.has-image img {
  transform: none !important;
}

body.site-public .face#insights .insight-db-cover.has-image::after {
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(0,0,0,0) 58%, rgba(0,0,0,.34) 100%) !important;
}

@media (max-width: 767px) {
  body.site-public .face#insights .insight-db-cover.has-image {
    aspect-ratio: 4 / 5 !important;
    padding: 8px !important;
  }
}

/* === PATCH: INSIGHTS - IMÁGENES SIN ELEMENTOS SUPERPUESTOS === */
body.site-public .face#insights .insight-db-cover.has-image::before,
body.site-public .face#insights .insight-db-cover.has-image::after {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.site-public .face#insights .insight-db-cover.has-image > span {
  display: none !important;
}

body.site-public .face#insights .insight-db-cover.has-image img {
  filter: none !important;
  opacity: 1 !important;
}

/* === FIX INSIGHTS: IMAGEN COMPLETA SIN ESPACIOS EN BLANCO === */
body.site-public .face#insights .insight-db-cover.has-image {
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
  border-bottom: 1px solid rgba(226,179,86,.12) !important;
}

body.site-public .face#insights .insight-db-cover.has-image img {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: top !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  background: transparent !important;
  filter: none !important;
  opacity: 1 !important;
}

body.site-public .face#insights .insight-db-cover.has-image::before,
body.site-public .face#insights .insight-db-cover.has-image::after,
body.site-public .face#insights .insight-db-cover.has-image > span {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.site-public .face#insights .insight-card.insight-db-card:hover .insight-db-cover.has-image img {
  transform: none !important;
}

@media (max-width: 767px) {
  body.site-public .face#insights .insight-db-cover.has-image {
    aspect-ratio: auto !important;
    padding: 0 !important;
  }
}


/* === FIX PRODUCTO.PHP: SCROLL REAL DEL DETALLE DEL PRODUCTO ===
   Solo aplica a producto.php con body.gch-product-page.
   Corrige cuando la página queda bloqueada y no deja bajar con la barra o el dedo. */
body.gch-product-page {
  position: static !important;
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior-y: auto !important;
  touch-action: pan-y !important;
  -webkit-overflow-scrolling: touch !important;
  background: #fdfbf7 !important;
}

body.gch-product-page .static-screen,
body.gch-product-page .product-detail-exact-screen,
body.gch-product-page .gch-resource-page-screen {
  position: relative !important;
  height: auto !important;
  min-height: 100dvh !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
}

body.gch-product-page .product-detail-exact-screen,
body.gch-product-page .gch-resource-page-screen {
  padding-top: clamp(96px, 10vh, 124px) !important;
  padding-bottom: 52px !important;
}

body.gch-product-page .gch-resource-showcase,
body.gch-product-page .gch-resource-showcase-page {
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
}

body.gch-product-page .gch-rs-main-grid,
body.gch-product-page .gch-rs-characteristics,
body.gch-product-page .gch-rs-full-detail,
body.gch-product-page .gch-rs-proof,
body.gch-product-page .gch-rs-footer-strip {
  max-height: none !important;
  overflow: visible !important;
}

@media (max-width: 900px) {
  body.gch-product-page {
    overflow-y: auto !important;
  }

  body.gch-product-page .product-detail-exact-screen,
  body.gch-product-page .gch-resource-page-screen {
    padding: 92px 12px 40px !important;
  }

  body.gch-product-page .gch-resource-showcase {
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* === FIX CHECKOUT.PHP: MENÚ RESPONSIVE DESPLEGABLE ===
   Aplica solo a checkout.php. No cambia estructura ni contenido. */
body.site-public.gch-checkout-body {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  touch-action: pan-y !important;
}

body.site-public.gch-checkout-body .topbar {
  overflow: visible !important;
  z-index: 2147483000 !important;
}

body.site-public.gch-checkout-body .topbar .hamb {
  position: relative !important;
  z-index: 2147483002 !important;
}

@media (min-width: 981px) {
  body.site-public.gch-checkout-body .topbar .hamb {
    display: none !important;
  }

  body.site-public.gch-checkout-body .topbar .nav-menu {
    position: static !important;
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

@media (max-width: 980px) {
  body.site-public.gch-checkout-body .topbar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 46px !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 76px !important;
    height: auto !important;
    padding: 10px 14px !important;
    background: rgba(5,5,5,.98) !important;
    border-bottom: 1px solid rgba(226,179,86,.24) !important;
  }

  body.site-public.gch-checkout-body .topbar .brand,
  body.site-public.gch-checkout-body .topbar .brand-full-logo {
    min-width: 0 !important;
    max-width: 100% !important;
    grid-column: 1 !important;
  }

  body.site-public.gch-checkout-body .topbar .brand-full-logo-img {
    max-width: min(250px, 68vw) !important;
    height: auto !important;
    max-height: 54px !important;
    object-fit: contain !important;
  }

  body.site-public.gch-checkout-body .topbar .hamb {
    grid-column: 2 !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    border-radius: 14px !important;
    border: 1px solid rgba(226,179,86,.46) !important;
    background: rgba(226,179,86,.08) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.18) !important;
  }

  body.site-public.gch-checkout-body .topbar .hamb span {
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    margin: 3px 0 !important;
    border-radius: 999px !important;
    background: #e2b356 !important;
    transition: transform .22s ease, opacity .22s ease !important;
  }

  body.site-public.gch-checkout-body .topbar .hamb[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(8px) rotate(45deg) !important;
  }

  body.site-public.gch-checkout-body .topbar .hamb[aria-expanded="true"] span:nth-child(2) {
    opacity: 0 !important;
  }

  body.site-public.gch-checkout-body .topbar .hamb[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg) !important;
  }

  body.site-public.gch-checkout-body .topbar .top-cta,
  body.site-public.gch-checkout-body .topbar .cart-mini {
    display: none !important;
  }

  body.site-public.gch-checkout-body .topbar .nav-menu {
    position: fixed !important;
    top: calc(76px + env(safe-area-inset-top, 0px)) !important;
    left: 12px !important;
    right: 12px !important;
    z-index: 2147483001 !important;
    display: none !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100svh - 96px) !important;
    padding: 12px !important;
    margin: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
    border: 1px solid rgba(226,179,86,.30) !important;
    border-radius: 22px !important;
    background: rgba(8,7,6,.98) !important;
    box-shadow: 0 26px 76px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.06) !important;
    backdrop-filter: blur(22px) saturate(135%) !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
    pointer-events: none !important;
  }

  body.site-public.gch-checkout-body .topbar .nav-menu.is-open {
    display: grid !important;
    pointer-events: auto !important;
  }

  body.site-public.gch-checkout-body .topbar .nav-menu a {
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 13px 14px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(226,179,86,.20) !important;
    background: rgba(226,179,86,.075) !important;
    color: #fff7e6 !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
    letter-spacing: .055em !important;
    text-align: center !important;
    white-space: normal !important;
    opacity: 1 !important;
  }

  body.site-public.gch-checkout-body .topbar .nav-menu a.is-active,
  body.site-public.gch-checkout-body .topbar .nav-menu a:hover {
    color: #e2b356 !important;
    background: rgba(226,179,86,.13) !important;
  }

  body.site-public.gch-checkout-body .topbar .nav-menu a::after {
    display: none !important;
  }
}

/* === FIX CHECKOUT.PHP: carrito superior visible y totales sincronizados ===
   Solo aplica al checkout. Mantiene la estructura existente. */
body.site-public.gch-checkout-body .topbar .cart-mini {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  flex: 0 0 46px !important;
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(226,179,86,.42) !important;
  background: rgba(255,255,255,.08) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.22) !important;
  z-index: 2147483002 !important;
}

body.site-public.gch-checkout-body .topbar .cart-mini img {
  width: 22px !important;
  height: 22px !important;
  object-fit: contain !important;
  display: block !important;
}

body.site-public.gch-checkout-body .topbar .cart-mini b,
body.site-public.gch-checkout-body .topbar .cart-mini [data-cart-count] {
  position: absolute !important;
  top: -6px !important;
  right: -6px !important;
  min-width: 21px !important;
  height: 21px !important;
  padding: 0 6px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #e2b356, #b47729) !important;
  color: #111 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  box-shadow: 0 6px 14px rgba(0,0,0,.26) !important;
}

@media (max-width: 980px) {
  body.site-public.gch-checkout-body .topbar {
    grid-template-columns: minmax(0, 1fr) 44px 46px !important;
  }

  body.site-public.gch-checkout-body .topbar .cart-mini {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    justify-self: center !important;
  }

  body.site-public.gch-checkout-body .topbar .hamb {
    grid-column: 3 !important;
    grid-row: 1 !important;
  }

  body.site-public.gch-checkout-body .topbar .top-cta {
    display: none !important;
  }
}

body.site-public.gch-checkout-body .gch-checkout-resource-editable,
body.site-public.gch-checkout-body .gch-checkout-total-card strong,
body.site-public.gch-checkout-body .gch-checkout-hero aside strong,
body.site-public.gch-checkout-body .gch-culqi-pay-total strong {
  transition: color .2s ease, transform .2s ease, opacity .2s ease !important;
}
