:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#fff;color:#000}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:300;font-display:swap;src:url(fonts/cormorant-garamond-latin-300-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:300;font-display:swap;src:url(fonts/cormorant-garamond-latin-300-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Albert Sans";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/albert-sans-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Albert Sans";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/albert-sans-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Albert Sans";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/albert-sans-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Albert Sans";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/albert-sans-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Libre Baskerville";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/libre-baskerville-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Libre Baskerville";font-style:italic;font-weight:700;font-display:swap;src:url(fonts/libre-baskerville-latin-700-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EB Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-latin-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/eb-garamond-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EB Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/eb-garamond-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Réplica de la página real /service/marcas-y-derecho-de-autor/ de López Sánchez Abogados.
   Estructura: cabecera fija, hero azul, retorno a Servicios, frase de apertura,
   lista "Cómo le acompañamos" + ficha lateral "Marco de referencia", anterior/siguiente, pie. */
:root{
  --paper:#F7F5F0;       /* fondo de la página */
  --paper-lift:#FBFAF7;  /* botón claro del hero */
  --navy:#26395C;        /* texto principal y botones oscuros */
  --blue:#33639F;        /* azul de marca */
  --blue-2:#4579B8;      /* final del degradado del hero */
  --footer:#3F659F;      /* fondo del pie */
  --ink:#4A4F5A;         /* texto de listas */
  --gray:#666666;        /* texto corrido */
  --hair:rgba(38,57,92,.14);
  --wa:#25D366;
  --sand:#B7B09C;
  --logo-main:#26395C;
  --serif:"Cormorant Garamond","Nerivo Font",Georgia,serif;
  --sans:"Albert Sans",Arial,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--gray);font-family:var(--sans);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.logo{display:block;aspect-ratio:560/150;height:auto}
.ic{width:1em;height:1em;display:block;flex:none}

/* ---------- Cabecera ---------- */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:#fff;box-shadow:0 1px 14px rgba(38,57,92,.1)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 22px;min-height:78px}
.hdr .logo{width:196px;color:var(--navy)}
.nav{display:none;align-items:center;gap:36px}
.nav a{font-size:15.84px;font-weight:700;letter-spacing:.02em;color:var(--navy);padding:6px 0;border-bottom:1px solid transparent;transition:border-color .2s}
.nav a:hover,.nav a[aria-current]{border-color:var(--navy)}
.hdr-wa{display:none;width:44px;height:44px;border-radius:50%;background:var(--wa);color:#fff;align-items:center;justify-content:center;font-size:24px}
.burger{display:flex;width:32px;height:32px;border:0;border-radius:6px;background:var(--navy);color:#fff;align-items:center;justify-content:center;cursor:pointer;font-size:16px}
@media (min-width:1024px){
  .hdr-in{padding:12px 80px}
  .hdr .logo{width:150px}
  .nav,.hdr-wa{display:flex}
  .burger{display:none}
}

/* ---------- Menú móvil ---------- */
.menu{position:fixed;inset:0;z-index:60;background:var(--paper);display:flex;flex-direction:column;padding:20px 22px calc(28px + env(safe-area-inset-bottom,0px));overflow-y:auto}
.menu[hidden]{display:none}
.menu-top{display:flex;align-items:center;justify-content:space-between}
.menu .logo{width:176px;color:var(--navy)}
.menu ul{list-style:none;margin:48px 0 0;padding:0;display:grid;gap:4px}
.menu li a{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--hair);font-family:var(--serif);font-size:32px;font-weight:400;color:var(--navy)}
.menu li a span{font-family:var(--sans);font-size:18px;color:var(--blue)}
.menu-foot{margin-top:auto;padding-top:32px;display:grid;gap:18px}
.menu-foot p{margin:0;font-size:14px;letter-spacing:.04em;color:var(--blue)}

/* ---------- Hero ---------- */
.hero{background:radial-gradient(60% 60% at 85% 0%,rgba(255,255,255,.16) 0%,rgba(255,255,255,0) 70%),linear-gradient(160deg,var(--blue) 0%,var(--blue-2) 100%);color:#fff}
.hero-in{max-width:1280px;margin:0 auto;padding:128px 22px 64px;min-height:476px;display:flex;flex-direction:column;justify-content:flex-end;gap:22px}
.hero h1{margin:0;max-width:16ch;font-family:var(--serif);font-weight:300;font-size:clamp(42px,6.2vw,76px);line-height:1.04;letter-spacing:-.005em;text-wrap:balance}
.hero p{margin:0;max-width:34em;font-size:18.72px;line-height:1.62;color:#EAF2FB}
.btn-light{align-self:flex-start;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-width:310px;padding:8px 8px 8px 21px;background:var(--paper-lift);color:var(--navy);border-radius:6px;font-size:14px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;transition:transform .2s,box-shadow .2s}
.btn-light i{display:flex;width:42px;height:42px;border-radius:4px;background:var(--navy);color:#fff;align-items:center;justify-content:center;font-size:17px}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,28,54,.28)}
@media (min-width:1024px){.hero-in{padding:150px 80px 72px;min-height:520px}}

/* ---------- Cuerpo ---------- */
.body-in{max-width:1280px;margin:0 auto;padding:44px 22px 24px}
@media (min-width:1024px){.body-in{padding:48px 80px 32px}}
.back{display:inline-flex;align-items:center;gap:12px;font-size:15px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--blue)}
.back .ic{font-size:17px;transition:transform .2s}
.back:hover .ic{transform:translateX(-4px)}
.lead{margin:44px 0 0;max-width:30em;font-family:var(--serif);font-weight:400;font-size:clamp(23px,2.5vw,32px);line-height:1.32;color:var(--navy)}
.cols{display:grid;gap:44px;margin-top:56px;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.cols{grid-template-columns:minmax(0,1fr) 360px;gap:88px;align-items:start}}
.h2{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(28px,3vw,36px);line-height:1.1;letter-spacing:-.03em;color:var(--navy)}
.list{list-style:none;margin:28px 0 0;padding:0;border-top:1px solid var(--hair)}
.list li{position:relative;padding:16px 0 16px 30px;border-bottom:1px solid var(--hair);font-size:16.96px;line-height:1.55;color:var(--ink)}
.list li::before{content:"";position:absolute;left:4px;top:1.38em;width:8px;height:8px;border:1px solid #6A82B4;transform:rotate(45deg)}

.aside{background:#fff;border:1px solid rgba(38,57,92,.06);padding:30px 30px 34px}
.aside .h3{margin:0;font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.15;letter-spacing:-.03em;color:var(--navy)}
.refs{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px;font-size:16px;line-height:1.45;color:var(--gray)}
.aside hr{border:0;border-top:1px solid var(--hair);margin:28px 0 24px}
.aside .ask{margin:0 0 18px;font-family:var(--serif);font-size:25px;line-height:1.2;color:var(--navy)}
.btn-wa{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:999px;background:var(--wa);color:#fff;font-size:16px;font-weight:500;box-shadow:0 8px 20px rgba(37,211,102,.28);transition:transform .2s,box-shadow .2s}
.btn-wa .ic{font-size:22px}
.btn-wa:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(37,211,102,.38)}

.pn{max-width:1280px;margin:56px auto 0;padding:0 22px}
@media (min-width:1024px){.pn{padding:0 80px}}
.pn-in{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:30px 0 56px;border-top:1px solid var(--hair)}
.pn a{display:grid;gap:6px;min-width:0}
.pn a:last-child{text-align:right}
.pn small{font-size:13px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:#5B73A6}
.pn span{font-family:var(--serif);font-size:clamp(20px,2.2vw,26px);line-height:1.15;color:var(--navy);transition:color .2s}
.pn a:hover span{color:var(--blue)}

/* ---------- Pie ---------- */
.foot{background:var(--footer);color:#fff;--logo-main:#F7F5F0}
.foot-in{max-width:1280px;margin:0 auto;padding:72px 22px 28px}
@media (min-width:1024px){.foot-in{padding:88px 80px 32px}}
.foot .logo{width:220px}
.foot-grid{display:grid;gap:44px;margin-top:56px;grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.foot-grid{grid-template-columns:1fr 1fr 1.4fr;gap:64px}}
.foot h4{margin:0 0 14px;font-size:15px;font-weight:400;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.66)}
.foot nav{display:grid;gap:6px}
.foot nav a{font-size:21px;line-height:1.2;text-transform:uppercase;letter-spacing:.01em}
.foot nav a:hover,.foot .contact a:hover{text-decoration:underline;text-underline-offset:4px}
.foot .contact{display:grid;gap:6px}
.foot .contact a{font-size:21px;text-transform:uppercase}
.foot .contact span{font-size:16px;text-transform:uppercase;color:rgba(255,255,255,.7)}
.cta{background:var(--paper-lift);color:var(--navy);padding:26px 22px 22px;display:grid;gap:20px;align-content:start}
.cta p{margin:0;font-family:var(--serif);font-size:clamp(27px,3vw,36px);line-height:1.1;letter-spacing:-.02em;text-wrap:balance}
.btn-dark{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:var(--navy);color:#fff;border-radius:4px;font-size:14px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;transition:background .2s}
.btn-dark:hover{background:#1d2c49}
.copy{margin:56px 0 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.2);font-size:14px;color:rgba(255,255,255,.72)}

/* ---------- Flotantes ---------- */
.fab{position:fixed;right:18px;z-index:40;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:0;cursor:pointer}
.fab-wa{bottom:calc(84px + env(safe-area-inset-bottom,0px));background:var(--wa);color:#fff;font-size:32px;box-shadow:0 10px 24px rgba(15,28,54,.28)}
.fab-top{bottom:calc(18px + env(safe-area-inset-bottom,0px));width:48px;height:48px;right:23px;background:#fff;color:var(--sand);font-size:20px;box-shadow:0 4px 14px rgba(15,28,54,.18);opacity:0;pointer-events:none;transition:opacity .25s}
.fab-top.on{opacity:1;pointer-events:auto}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
:root{
--i-contratos:url(img/contratos-8fbc5144.webp);
--i-derecho-societario:url(img/derecho-societario-b1c4bef0.webp);
--i-litigios:url(img/litigios-9c59150b.webp);
--i-derecho-administrativo:url(img/derecho-administrativo-ac7d3095.webp);
--i-contratacion-estatal:url(img/contratacion-estatal-d79a5a95.webp);
--i-derecho-de-familia:url(img/derecho-de-familia-a3f08506.webp);
--i-datos-personales:url(img/datos-personales-01faafe7.webp);
--i-marcas-y-derecho-de-autor:url(img/marcas-y-derecho-de-autor-4ce99aa1.webp);
--i-acciones-constitucionales:url(img/acciones-constitucionales-05265b49.webp);
}


:root{--i-contratos-pergamino:url(img/contratos-pergamino-7964c6c3.webp);
}

/* ================= Propuesta interactiva ================= */
:root{--brick:#A64B35;--paper-2:#EFEBE1;--sky:#E9EFF8}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes flt{from{transform:translateY(-6px)}to{transform:translateY(6px)}}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes stampin{0%{transform:scale(.4) rotate(-24deg);opacity:0}70%{transform:scale(1.12) rotate(4deg);opacity:1}100%{transform:none}}

.hero{position:relative;overflow:hidden}
.hero-in{position:relative;z-index:1}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px 30px}
.hero-link{display:inline-flex;align-items:center;gap:10px;padding-bottom:3px;border-bottom:1px solid rgba(255,255,255,.55);color:#fff;font-size:16px}
.hero-link .ic{font-size:18px;transform:rotate(90deg)}
.hero-art{display:none;position:absolute;right:max(24px,6vw);bottom:30px;width:min(32vw,400px);height:auto}
@media (min-width:960px){.hero-art{display:block}}
.hero-art .spin{animation:spin 70s linear infinite}
.hero-art .float{animation:flt 7s ease-in-out infinite alternate}
.hero-art .f2{animation-delay:-3.5s}

.sx{padding:64px 22px 72px}
.sx-alt{background:var(--paper-2)}
.sx-in{max-width:1280px;margin:0 auto}
@media (min-width:1024px){.sx{padding:88px 80px 96px}}
.sx-head{margin-bottom:36px}
.eyebrow{margin:0 0 12px;font-size:13px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--blue)}
.h2.big{max-width:24ch;font-size:clamp(32px,4.2vw,52px);line-height:1.06;letter-spacing:-.02em;text-wrap:balance}
.sub{max-width:46em;margin:18px 0 0;font-size:17px;line-height:1.6;color:var(--ink)}
.h3{margin:0;font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.15;letter-spacing:-.03em;color:var(--navy)}

/* --- Diagnóstico --- */
.guide{background:#fff;border:1px solid rgba(38,57,92,.08)}
.prog{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--hair)}
.prog button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 8px;background:none;border:0;border-bottom:3px solid transparent;font:500 14px var(--sans);letter-spacing:.04em;color:#8793AC;cursor:default}
.prog button b{display:inline-grid;place-items:center;flex:none;width:24px;height:24px;border:1px solid currentColor;border-radius:50%;font-size:12px}
.prog button:not([disabled]){cursor:pointer;color:var(--navy)}
.prog button.on{color:var(--navy);border-bottom-color:var(--blue)}
.prog button.on b{background:var(--navy);border-color:var(--navy);color:#fff}
@media (max-width:520px){.prog button{flex-direction:column;gap:6px;font-size:12px;letter-spacing:.02em}}
.pane{padding:32px 22px 30px;animation:fade .35s ease}
@media (min-width:860px){.pane{padding:40px 40px 38px}}
.q{margin:0 0 24px;font-family:var(--serif);font-weight:400;font-size:clamp(27px,3vw,36px);line-height:1.1;letter-spacing:-.02em;color:var(--navy)}
.tiles{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:860px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
.tile{display:grid;justify-items:start;gap:8px;padding:22px;background:var(--paper-lift);border:1px solid var(--hair);text-align:left;font-family:var(--sans);cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s}
.tile svg{width:88px;height:88px;margin-bottom:6px;overflow:visible}
.tile .t{font-family:var(--serif);font-size:26px;line-height:1.08;letter-spacing:-.02em;color:var(--navy)}
.tile .d{font-size:15px;line-height:1.5;color:var(--ink)}
.stamp{transform-box:fill-box;transform-origin:center;transition:transform .3s}
.tile:hover{transform:translateY(-3px);border-color:var(--navy);box-shadow:0 14px 28px rgba(38,57,92,.12)}
.tile:hover .stamp{transform:rotate(-14deg) scale(1.1)}
.tile.sel{background:#fff;border-color:var(--brick);box-shadow:inset 0 0 0 1px var(--brick)}
.sits{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:760px){.sits{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sit{display:grid;gap:6px;padding:20px 22px;background:var(--paper-lift);border:1px solid var(--hair);border-left:4px solid var(--blue);text-align:left;font-family:var(--sans);cursor:pointer;transition:transform .2s,border-color .2s,background .2s}
.sit b{font-size:18px;font-weight:500;line-height:1.3;color:var(--navy)}
.sit span{font-size:15px;line-height:1.5;color:var(--ink)}
.sit:hover{transform:translateX(4px);border-left-color:var(--brick);background:#fff}
.sit.sel{border-left-color:var(--brick);background:#fff}
.lnk{display:inline-block;margin-top:24px;padding:0 0 2px;background:none;border:0;border-bottom:1px solid currentColor;font:500 15px var(--sans);color:var(--blue);cursor:pointer}
.lnk:hover{color:var(--navy)}

.res{display:grid;grid-template-columns:minmax(0,1fr);gap:32px}
@media (min-width:960px){.res{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:52px}}
.chips{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0 0 22px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;background:var(--sky);font-size:14px;color:var(--navy)}
.chip button{padding:0;background:none;border:0;border-bottom:1px solid currentColor;font:inherit;font-size:13px;color:var(--blue);cursor:pointer}
.res-t{display:flex;align-items:center;gap:20px}
.res-t h3{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(28px,3.2vw,40px);line-height:1.08;letter-spacing:-.025em;color:var(--navy);text-wrap:balance}
.seal{flex:none;width:76px;height:76px;animation:stampin .6s cubic-bezier(.2,1.3,.4,1)}
.res-i{margin:18px 0 0;max-width:40em;font-size:17px;line-height:1.6;color:var(--ink)}
.steps{counter-reset:st;list-style:none;margin:26px 0 0;padding:0;border-bottom:1px solid var(--hair)}
.steps li{counter-increment:st;position:relative;padding:16px 0 16px 52px;border-top:1px solid var(--hair);font-size:17px;line-height:1.55;color:var(--ink)}
.steps li::before{content:counter(st);position:absolute;left:0;top:14px;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--blue);border-radius:50%;font:500 14px var(--sans);color:var(--blue)}
.steps small{display:block;margin-top:6px;font-size:13px;letter-spacing:.03em;color:var(--blue)}
.side-box{padding:22px;background:var(--paper);border:1px solid var(--hair)}
.side-box + .side-box{margin-top:16px}
.side-box h4{margin:0 0 14px;font-size:13px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--blue)}
.side-box p{margin:0;font-size:16px;line-height:1.5;color:var(--navy)}
.side-box ul{list-style:none;margin:0;padding:0;display:grid;gap:14px;font-size:15.5px;line-height:1.55;color:var(--ink)}
.side-box li{position:relative;padding-left:22px}
.side-box li::before{content:"";position:absolute;left:3px;top:.55em;width:7px;height:7px;border:1px solid #6A82B4;transform:rotate(45deg)}
.res-act{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:22px}
.res-act .lnk{margin:0}

/* --- Ruta de la marca --- */
.tl-wrap{overflow-x:auto;padding-bottom:8px}
.tl{--n:7;list-style:none;position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(138px,1fr);margin:0;padding:0}
.tl::before,.tl::after{content:"";position:absolute;top:15px;height:2px;left:16px}
.tl::before{right:calc(100% / var(--n) - 16px);background:rgba(38,57,92,.2)}
.tl::after{width:calc(100% / var(--n) * var(--i,0));background:var(--blue);transition:width .5s ease}
.tl li{position:relative;z-index:1}
.tl button{display:grid;justify-items:start;gap:12px;width:100%;padding:0 12px 0 0;background:none;border:0;text-align:left;font:inherit;cursor:pointer}
.tl .dot{display:grid;place-items:center;width:32px;height:32px;border:2px solid var(--blue);border-radius:50%;background:var(--paper-2);font:600 13px var(--sans);color:var(--blue);transition:transform .25s,background .25s,border-color .25s,color .25s}
.tl .nm{font-size:15px;font-weight:500;line-height:1.35;color:var(--navy)}
.tl button:hover .dot{transform:scale(1.1)}
.tl button.done .dot{background:var(--blue);color:#fff}
.tl button.on .dot{background:var(--brick);border-color:var(--brick);color:#fff;transform:scale(1.18)}
.tl-card{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;margin-top:26px;padding:26px;background:#fff;border:1px solid var(--hair);animation:fade .3s ease}
@media (min-width:900px){.tl-card{grid-template-columns:1.5fr 1fr 1fr;gap:36px;padding:30px 32px}}
.tl-card h3{grid-column:1/-1;margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(26px,3vw,34px);letter-spacing:-.02em;color:var(--navy)}
.tl-card h4{margin:0 0 8px;font-size:12.5px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--blue)}
.tl-card p{margin:0;font-size:16px;line-height:1.6;color:var(--ink)}
.tl-nav{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid var(--hair)}
.tl-nav button{padding:10px 18px;background:#fff;border:1px solid var(--navy);font:500 14px var(--sans);letter-spacing:.03em;color:var(--navy);cursor:pointer;transition:background .2s,color .2s}
.tl-nav button:hover:not(:disabled){background:var(--navy);color:#fff}
.tl-nav button:disabled{opacity:.35;cursor:default}

.calc{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:44px;padding:28px;background:#fff;border:1px solid var(--hair)}
@media (min-width:960px){.calc{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:52px;padding:36px}}
.calc-p{margin:14px 0 0;font-size:16px;line-height:1.6;color:var(--ink)}
.lab{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:22px 0 8px;font-size:14px;font-weight:500;letter-spacing:.03em;color:var(--navy)}
.ex{padding:2px 8px;background:#F3E9CF;font-size:12px;color:#7A5C16}
#calc-date{width:100%;max-width:260px;padding:12px 14px;border:1px solid var(--navy);border-radius:0;background:#fff;font:500 18px var(--sans);color:var(--navy)}
.bar{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:6px}
@media (max-width:560px){.bar{grid-template-columns:minmax(0,1fr)}}
.seg{position:relative;display:grid;align-content:end;gap:4px;min-height:124px;padding:36px 14px 14px;background:var(--sky)}
.seg.s2{background:#D6E4F5}
.seg.s3{background:#F3E4D6}
.seg.cur{outline:3px solid var(--brick);outline-offset:2px}
.seg .k{font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.seg.s3 .k{color:var(--brick)}
.seg .v{font-family:var(--serif);font-size:23px;line-height:1.1;color:var(--navy)}
.seg .e{font-size:13.5px;line-height:1.4;color:var(--ink)}
.seg .today{position:absolute;top:10px;left:12px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brick)}
.calc-status{margin:18px 0 0;font-size:17px;font-weight:500;line-height:1.5;color:var(--navy)}
.calc-note{margin:8px 0 0;font-size:14px;line-height:1.5;color:var(--gray)}

/* --- Comparador --- */
.cmp{background:#fff;border:1px solid var(--hair)}
.cmp-h{display:none}
@media (min-width:860px){
  .cmp-h{display:grid;grid-template-columns:220px minmax(0,1fr) minmax(0,1fr);gap:0 28px;padding:16px 24px;border-bottom:1px solid var(--hair);background:var(--navy)}
  .cmp-h span{font-size:13px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:#fff}
}
.row{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:18px 22px;border-bottom:1px solid var(--hair);transition:background .2s}
.row:last-child{border-bottom:0}
@media (min-width:860px){.row{grid-template-columns:220px minmax(0,1fr) minmax(0,1fr);gap:0 28px;padding:20px 24px}}
.row.open{background:#F5F8FC}
.rl{display:flex;align-items:flex-start;gap:10px;padding:0;background:none;border:0;text-align:left;font:500 17px var(--sans);color:var(--navy);cursor:pointer}
.rl::after{content:"+";flex:none;margin-left:auto;display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--blue);border-radius:50%;font-size:16px;line-height:1;color:var(--blue)}
.row.open .rl::after{content:"–"}
@media (min-width:860px){.rl{justify-content:space-between}}
.c{margin:0;font-size:16px;line-height:1.6;color:var(--ink)}
.c::before{content:attr(data-l);display:block;margin-bottom:2px;font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--blue)}
@media (min-width:860px){.c::before{display:none}}
.fund{grid-column:1/-1;margin:6px 0 0;padding:14px 16px;background:var(--sky);font-size:15px;line-height:1.6;color:var(--navy)}
.cmp-callout{display:flex;align-items:flex-start;gap:12px;margin:22px 0 0;padding:18px 20px;background:var(--navy);color:#fff;font-size:16.5px;line-height:1.55}
.cmp-callout .ic{flex:none;margin-top:.2em;font-size:20px;color:#E8D9B0}

/* --- Acompañamiento --- */
.hl-note{margin:14px 0 0;font-size:14px;font-weight:500;color:var(--brick)}
.list li{transition:background .25s,padding .25s}
.list li.on{background:#EEF3FA}
.list li.on::after{content:"En su ruta";position:absolute;right:10px;top:18px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brick)}
.list li.on{padding-right:112px}
@media (max-width:520px){.list li.on{padding-right:14px;padding-top:36px}.list li.on::after{top:12px;left:30px;right:auto}}
.refs2{margin-top:14px;border-top:1px solid var(--hair)}
.refs2 details{border-bottom:1px solid var(--hair)}
.refs2 summary{display:flex;justify-content:space-between;gap:14px;padding:14px 0;font-size:16px;line-height:1.4;color:var(--navy);cursor:pointer;list-style:none}
.refs2 summary::-webkit-details-marker{display:none}
.refs2 summary::after{content:"+";flex:none;color:var(--blue);font-size:20px;line-height:1}
.refs2 details[open] summary::after{content:"–"}
.refs2 p{margin:0 0 16px;font-size:15px;line-height:1.6;color:var(--gray)}
@media (prefers-reduced-motion:reduce){.hero-art *,.pane,.tl-card,.seal{animation:none!important}}

/* ===== Versión visual: menos texto ===== */
.sit{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:0 16px}
.sit>svg{width:40px;height:40px;color:var(--blue);transition:color .2s,transform .3s}
.sit:hover>svg,.sit.sel>svg{color:var(--brick);transform:scale(1.08)}
.sit .sb{display:grid;gap:4px}
.tile .d{font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--blue)}
.tl-card{align-items:start}
@media (min-width:900px){.tl-card{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr) minmax(0,1.3fr)}}
.tl-k{display:grid;gap:10px;align-content:start}
.tl-k .fig{font-family:var(--serif);font-size:clamp(40px,5vw,60px);line-height:1;letter-spacing:-.03em;color:var(--brick)}
.tl-k .fig small{display:block;margin-top:6px;font:500 13px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gray)}
.tl-svc{display:inline-block;justify-self:start;padding:5px 10px;background:var(--sky);font-size:13px;color:var(--navy)}
.tl-card p{font-size:17px;line-height:1.45;color:var(--navy)}

/* resultado */
.res-t{margin-top:0}
.facts{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:26px}
@media (min-width:860px){.facts{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.2fr)}}
.fact{padding:18px 20px;background:var(--paper);border:1px solid var(--hair);animation:fade .45s ease both}
.fact:nth-child(2){animation-delay:.1s}.fact:nth-child(3){animation-delay:.2s}
.fact h4{margin:0 0 10px;font-size:12px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--blue)}
.fact .big{font-family:var(--serif);font-size:clamp(30px,3.4vw,40px);line-height:1;letter-spacing:-.02em;color:var(--brick)}
.fact .big.nv{color:var(--navy)}
.fact .cap{margin-top:8px;font-size:14px;line-height:1.4;color:var(--ink)}
.np{display:flex;flex-wrap:wrap;gap:6px}
.np span{padding:5px 10px;background:var(--sky);font-size:14px;color:var(--navy)}
.chain{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:700px){.chain{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}
.chain li{display:grid;align-content:start;gap:10px;padding:16px 16px 14px;background:var(--paper-lift);border:1px solid var(--hair);border-top:3px solid var(--blue);animation:fade .45s ease both;animation-delay:calc(var(--d) * 90ms)}
.chain .n{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--blue);border-radius:50%;font:500 14px var(--sans);color:var(--blue)}
.chain b{font:400 22px/1.12 var(--serif);letter-spacing:-.01em;color:var(--navy)}
.chain small{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.res-act{margin-top:26px}

/* clasificador */
.qh{margin:0 0 16px}
.quiz{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.qi{display:grid;align-content:start;gap:14px;padding:18px;background:#fff;border:1px solid var(--hair);transition:border-color .2s,box-shadow .2s}
.qi b{font:400 23px/1.1 var(--serif);letter-spacing:-.01em;color:var(--navy)}
.qb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.qb button{padding:9px 4px;background:var(--paper-lift);border:1px solid var(--navy);font:500 14px var(--sans);color:var(--navy);cursor:pointer;transition:background .2s,color .2s}
.qb button:hover:not(:disabled){background:var(--navy);color:#fff}
.qb button:disabled{cursor:default;opacity:.45}
.qb button.pick{opacity:1;background:var(--navy);color:#fff}
.qi .fb{display:none;margin:0;font-size:14.5px;line-height:1.4;color:var(--ink)}
.qi.done .fb{display:block;animation:fade .3s ease}
.qi .fb strong{display:block;margin-bottom:2px;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.qi.ok{border-color:#2F6B4A;box-shadow:inset 0 0 0 1px #2F6B4A}
.qi.ok .fb strong{color:#2F6B4A}
.qi.no{border-color:var(--brick);box-shadow:inset 0 0 0 1px var(--brick)}
.qi.no .fb strong{color:var(--brick)}
.qscore{min-height:1.5em;margin:14px 0 28px;font-size:15px;font-weight:500;color:var(--navy)}
.row{padding:16px 22px}
@media (min-width:860px){.row{padding:18px 24px}}
.c{font-size:17px;line-height:1.4;color:var(--navy)}
.fund{font-size:14.5px}

/* ================= v5 · sistema visual del sitio ================= */
:root{--brass:#9A7840;--brass-l:#CDB88A;--deep:#1B2B49;--sand:#EFEBE2;--soft:#7C86A0;--paper-2:#EFEBE2}
.view[hidden]{display:none}
[hidden]{display:none!important}
.ph{background:var(--img) center/cover no-repeat}
.ph-fb{display:flex;align-items:center;justify-content:center;background:radial-gradient(80% 90% at 70% 20%,#3A5688 0%,#1B2B49 70%)}
.ph-fb svg{width:clamp(72px,12vw,140px);height:auto;aspect-ratio:1;color:#fff;opacity:.88}
.ph-fb small{position:absolute;left:16px;bottom:12px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#C9D4E8}
.nav a.cur{border-color:var(--navy)}
.eyebrow-l{color:var(--brass-l)!important}
.disp{margin:0;font-family:var(--serif);font-weight:300;font-size:clamp(34px,4.6vw,66px);line-height:1.04;letter-spacing:-.02em;color:var(--navy);text-wrap:balance}
.disp.s{font-size:clamp(28px,3.2vw,44px)}
.blk{padding:72px 0}
.blk-in{max-width:1280px;margin:0 auto;padding:0 22px}
@media (min-width:1024px){.blk{padding:120px 0}.blk-in{padding:0 80px}}
.blk-navy{background:var(--deep)}
.blk-navy .disp{color:#fff}
.blk-sand{background:var(--sand)}
.blk>.blk-in>.disp{margin-top:6px}
.quote-in{max-width:1100px;text-align:left}
.quote-in blockquote{margin:18px 0 36px;font-size:clamp(28px,4vw,56px);line-height:1.12}
.quote-s{margin:20px 0 0;font-family:var(--serif);font-size:clamp(22px,2.2vw,28px);line-height:1.3;color:var(--navy)}
.hint{margin:26px 0 0;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--blue)}

/* --- Inicio: portada --- */
.hh{position:relative;height:calc(100svh - 78px);min-height:580px;max-height:880px;overflow:hidden;background:var(--deep);color:#fff}
.hh-bg .ph{position:absolute;inset:0;opacity:0;transform:scale(1.02);transition:opacity 1.6s ease,transform 1.6s ease}
.hh-bg .ph.on{opacity:1;transform:scale(1.09);transition:opacity 1.6s ease,transform 11s linear}
.hh-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,22,42,.86) 0,rgba(12,22,42,.5) 52%,rgba(12,22,42,.1) 100%),linear-gradient(0deg,rgba(12,22,42,.75) 0,rgba(12,22,42,0) 42%)}
.hh-in{position:absolute;left:0;right:0;bottom:92px;max-width:1280px;margin:0 auto;padding:0 22px;display:flex;flex-direction:column;gap:22px}
.hh h1{margin:0;max-width:17ch;font-family:var(--serif);font-weight:300;font-size:clamp(36px,5.6vw,80px);line-height:1.03;letter-spacing:-.02em;text-wrap:balance}
.eyebrow-l{margin:0;font-size:12px;font-weight:500;letter-spacing:.3em;text-transform:uppercase}
.triad{margin:0;display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:#D6DEEC}
.triad i{width:1px;height:14px;background:rgba(255,255,255,.45)}
.hh-cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px;margin-top:6px}
.hero-link{display:inline-flex;align-items:center;gap:10px;padding-bottom:3px;border-bottom:1px solid rgba(255,255,255,.55);color:#fff;font-size:15px;letter-spacing:.04em}
.hero-link .ic{font-size:17px;transform:none;transition:transform .25s}
.hero-link:hover .ic{transform:translateX(4px)}
.hero-link .ic{transform:none}
.hh-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 22px;height:64px;border-top:1px solid rgba(255,255,255,.2);background:rgba(12,22,42,.35);backdrop-filter:blur(6px)}
.hh-ticks{display:flex;gap:2px}
.hh-ticks button{position:relative;width:26px;height:44px;border:0;background:none;cursor:pointer}
.hh-ticks button::after{content:"";position:absolute;left:3px;right:3px;top:21px;height:2px;background:rgba(255,255,255,.3);transition:background .3s,height .3s,top .3s}
.hh-ticks button.on::after{background:#fff;height:3px;top:20px}
.hh-cap{display:inline-flex;align-items:center;gap:12px;min-width:0;color:#fff;font-family:var(--serif);font-size:clamp(16px,1.6vw,21px)}
.hh-capn{font:500 11px var(--sans);letter-spacing:.2em;color:var(--brass-l)}
.hh-capt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hh-cap .ic{flex:none;font-size:17px}
@media (min-width:1024px){.hh-in{padding:0 80px;bottom:110px}.hh-bar{padding:0 80px}}
@media (max-width:640px){.hh-ticks button{width:14px}.hh-ticks button::after{left:1px;right:1px}.hh-capn{display:none}}

/* --- Índice interactivo de servicios --- */
.ix{display:grid;gap:0;margin-top:44px;grid-template-columns:minmax(0,1fr)}
.ix-stage{position:sticky;top:78px;z-index:2;order:-1;aspect-ratio:16/9;overflow:hidden;background:#16233F;margin:0 -22px 18px}
.ix-stage .ph{position:absolute;inset:0;opacity:0;transform:scale(1.06);transition:opacity .9s ease,transform 1.8s ease}
.ix-stage .ph.on{opacity:1;transform:scale(1)}
.ix-cap{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:baseline;gap:14px;padding:44px 20px 16px;background:linear-gradient(0deg,rgba(12,22,42,.8),rgba(12,22,42,0));color:#fff}
.ix-capn{font:500 11px var(--sans);letter-spacing:.2em;color:var(--brass-l)}
.ix-capt{font-family:var(--serif);font-size:clamp(18px,2vw,24px)}
.ix-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}
.ix-list li{border-bottom:1px solid var(--hair)}
.ix-list a{display:grid;grid-template-columns:40px minmax(0,1fr) 24px;align-items:baseline;padding:16px 0;color:var(--soft);transition:color .3s,padding .3s}
.ix-n{font-size:11px;letter-spacing:.2em;color:var(--soft);transition:color .3s}
.ix-t{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.4vw,32px);line-height:1.12;letter-spacing:-.01em}
.ix-a{opacity:0;transform:translateX(-8px);transition:opacity .3s,transform .3s;color:var(--navy)}
.ix-list li.on a{color:var(--navy);padding-left:10px}
.ix-list li.on .ix-n{color:var(--brass)}
.ix-list li.on .ix-a{opacity:1;transform:none}
@media (min-width:900px){
  .ix{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:72px;align-items:start}
  .ix-stage{order:0;grid-column:2;grid-row:1;top:110px;aspect-ratio:4/5;margin:0}
  .ix-list{grid-column:1;grid-row:1}
  .ix-list a{padding:20px 0}
  .ix-big .ix-t{font-size:clamp(26px,2.9vw,40px)}
}

/* --- Cabeceras de página --- */
.pg-hero{background:radial-gradient(70% 90% at 90% 0%,#33527F 0%,#1B2B49 62%);color:#fff}
.pg-in{max-width:1280px;margin:0 auto;padding:112px 22px 64px;display:flex;flex-direction:column;gap:20px}
.pg-in h1{margin:0;max-width:18ch;font-family:var(--serif);font-weight:300;font-size:clamp(38px,5.6vw,80px);line-height:1.03;letter-spacing:-.02em;text-wrap:balance}
.pg-p{margin:0;max-width:36em;font-size:18px;line-height:1.6;color:#D3DCEB}
@media (min-width:1024px){.pg-in{padding:150px 80px 88px}}
.sp-hero{position:relative;display:flex;align-items:flex-end;min-height:clamp(540px,80vh,780px);overflow:hidden;background:var(--deep);color:#fff}
.sp-hero>.ph{position:absolute;inset:0;animation:kb 2.8s ease-out both}
@keyframes kb{from{transform:scale(1.08)}to{transform:scale(1)}}
.sp-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,22,42,.88) 0,rgba(12,22,42,.45) 46%,rgba(12,22,42,.18) 100%)}
.sp-in{position:relative;width:100%;max-width:1280px;margin:0 auto;padding:120px 22px 56px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.sp-in h1{margin:0;max-width:17ch;font-family:var(--serif);font-weight:300;font-size:clamp(40px,6vw,86px);line-height:1.02;letter-spacing:-.02em;text-wrap:balance}
.sp-in p{margin:0;max-width:34em;font-size:18px;line-height:1.6;color:#E3EAF5}
.sp-in .back{color:var(--brass-l)}
.sp-short{min-height:clamp(420px,60vh,600px)}
@media (min-width:1024px){.sp-in{padding:140px 80px 72px}}
.btn-light{margin-top:6px}

/* --- Dos columnas --- */
.two{display:grid;gap:36px;grid-template-columns:minmax(0,1fr)}
@media (min-width:960px){.two{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:72px;align-items:start}.two-l{position:sticky;top:110px}}
.two-l .disp{margin-top:4px}
.refs{margin-top:36px}
.refs h3{margin:0 0 14px;font:500 12px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--blue)}
.refs ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.refs li{padding:7px 14px;background:#fff;border:1px solid var(--hair);font-size:14px;line-height:1.35;color:var(--ink)}
.hl-note{margin:12px 0 0;font-size:14px;color:var(--brass)}

/* --- Filas --- */
.rws{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}
.rw{position:relative;border-bottom:1px solid var(--hair)}
.rw-b{display:grid;grid-template-columns:44px minmax(0,1fr) 24px;align-items:baseline;width:100%;padding:22px 0;background:none;border:0;text-align:left;font:inherit;color:var(--navy);cursor:pointer}
.rw-n{font-size:11px;letter-spacing:.2em;color:var(--soft);transition:color .3s}
.rw-t{font-family:var(--serif);font-size:clamp(20px,2vw,26px);line-height:1.28;color:var(--navy);transition:transform .3s}
.rw-b:hover .rw-t,.rw-b:focus-visible .rw-t{transform:translateX(6px)}
.rw-b:hover .rw-n{color:var(--brass)}
.rw-x{position:relative;width:14px;height:14px;align-self:center;justify-self:end}
.rw-x::before,.rw-x::after{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:var(--navy);transition:transform .3s}
.rw-x::after{transform:rotate(90deg)}
.rw-b[aria-expanded="true"] .rw-x::after{transform:rotate(0)}
.rw-b[aria-expanded="true"] .rw-n{color:var(--brass)}
.rw-x.go{width:auto;height:auto;font-size:18px;color:var(--navy)}
.rw-x.go::before,.rw-x.go::after{display:none}
.rw-p{padding:0 0 22px 44px}
.lnk-wa{display:inline-flex;align-items:center;gap:10px;padding-bottom:3px;border-bottom:1px solid var(--navy);font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--navy)}
.lnk-wa .ic{font-size:16px}
.rw-go.on .rw-n{color:var(--brass)}
.rw-go.on .rw-t::after{content:"En su ruta";margin-left:12px;padding:2px 8px;border:1px solid var(--brass);font:600 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--brass);vertical-align:middle}

/* --- Pestañas, pasos, píldoras --- */
.tabs,.stp-tabs{display:flex;flex-wrap:wrap;gap:6px 30px;border-bottom:1px solid var(--hair)}
.tabs button,.stp-tabs button{display:inline-flex;align-items:baseline;gap:10px;padding:12px 0;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;font:500 15px var(--sans);letter-spacing:.04em;color:var(--soft);cursor:pointer;transition:color .25s,border-color .25s}
.tabs button:hover,.stp-tabs button:hover{color:var(--navy)}
.tabs button.on,.stp-tabs button.on{color:var(--navy);border-bottom-color:var(--navy)}
.stp-tabs b{font-size:11px;letter-spacing:.2em;color:var(--brass)}
.pills{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px;animation:fade .5s ease both}
.pills li{padding:12px 20px;background:#fff;border:1px solid var(--hair);font-family:var(--serif);font-size:clamp(18px,1.8vw,22px);color:var(--navy)}
.stp-body{margin-top:28px;min-height:132px}
.stp-p{margin:0;max-width:26em;font-family:var(--serif);font-size:clamp(24px,2.8vw,36px);line-height:1.2;color:var(--navy);animation:fade .5s ease both}
.tabs-v{flex-direction:column;gap:0;border-bottom:0;border-left:1px solid var(--hair)}
.tabs-v button{padding:12px 0 12px 20px;margin:0 0 0 -1px;border-bottom:0;border-left:2px solid transparent;font-size:16px;text-align:left}
.tabs-v button.on{border-left-color:var(--navy)}
.fp{margin:0;max-width:30em;font-family:var(--serif);font-size:clamp(21px,2.1vw,27px);line-height:1.42;color:var(--navy);animation:fade .5s ease both}
@media (min-width:760px){
  [data-id="filosofia"] .two-r{display:grid;grid-template-columns:200px minmax(0,1fr);gap:44px;align-items:start}
}

/* --- Cierres --- */
.cta2{background:var(--deep);color:#fff;padding:64px 0}
.cta2-in{max-width:1280px;margin:0 auto;padding:0 22px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px}
.cta2-in p:not(.eyebrow){margin:0;max-width:20ch;font-family:var(--serif);font-weight:300;font-size:clamp(26px,3.4vw,46px);line-height:1.1;letter-spacing:-.01em}
.cta2-big{padding:96px 0;text-align:center}
.cta2-big .cta2-in{flex-direction:column;justify-content:center;gap:22px}
.cta2-big .disp{color:#fff}
.cta2 .btn-light{margin-top:0}
@media (min-width:1024px){.cta2-in{padding:0 80px}}
.pn2{border-top:1px solid var(--hair);background:var(--paper)}
.pn2-in{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr}
.pn2 a{display:flex;align-items:center;gap:18px;padding:26px 22px;color:var(--navy)}
.pn2 a+a{border-left:1px solid var(--hair);flex-direction:row-reverse;text-align:right}
.pn-ph{position:relative;flex:none;width:92px;aspect-ratio:3/2;overflow:hidden;display:none}
.pn-ph .ph{position:absolute;inset:0;transition:transform .8s}
.pn2 a:hover .pn-ph .ph{transform:scale(1.08)}
.pn-tx small{display:block;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--soft)}
.pn-tx span{display:block;margin-top:4px;font-family:var(--serif);font-size:clamp(17px,2vw,24px);line-height:1.15}
@media (min-width:700px){.pn-ph{display:block}}
@media (min-width:1024px){.pn2 a{padding:30px 80px}}

/* --- Servicios: buscador por situación --- */
.find{max-width:1000px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.chips button{padding:11px 18px;background:transparent;border:1px solid rgba(38,57,92,.35);border-radius:999px;font:500 15px var(--sans);color:var(--navy);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.chips button:hover{border-color:var(--navy);background:#fff}
.chips button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.find-res{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;min-height:84px;margin-top:22px}
.find-res>*{animation:fade .4s ease both}
.find-res .rs-l{font:500 12px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--brass)}
.find-res .rs-n{font-family:var(--serif);font-size:clamp(26px,3.2vw,40px);color:var(--navy)}
.find-res a,.find-res button{display:inline-flex;align-items:center;gap:10px;padding:11px 18px;background:var(--navy);border:0;border-radius:4px;font:500 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#fff;cursor:pointer}
.btn-dark2{display:inline-flex;align-items:center;gap:12px;margin-top:28px;padding:15px 24px;background:var(--navy);border-radius:4px;font-size:14px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#fff;transition:transform .2s,box-shadow .2s}
.btn-dark2:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(15,28,54,.25)}
.btn-dark2 .ic{font-size:20px}

/* --- Equipo y contacto --- */
.team{display:grid;gap:36px;margin-top:28px;grid-template-columns:minmax(0,1fr)}
@media (min-width:700px){.team{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}}
.mono{position:relative;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;background:radial-gradient(90% 80% at 70% 15%,#3A5688 0%,#1B2B49 70%);overflow:hidden}
.mono span{font-family:var(--serif);font-weight:300;font-size:clamp(84px,12vw,150px);letter-spacing:.02em;color:var(--brass-l)}
.mono small{position:absolute;left:16px;bottom:12px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#C9D4E8}
.member h3{margin:20px 0 0;font-family:var(--serif);font-weight:400;font-size:clamp(26px,3vw,36px);color:var(--navy)}
.member p{margin:4px 0 0;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass)}
.cinfo{display:grid;gap:18px;margin:44px 0 0;padding-top:28px;border-top:1px solid var(--hair)}
.cinfo dt{font:500 12px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--blue)}
.cinfo dd{margin:4px 0 0;font-family:var(--serif);font-size:clamp(22px,2.4vw,30px);color:var(--navy)}

/* --- Marcas: módulos interactivos con tono sobrio --- */
.sx{background:var(--paper)}
.sx-alt{background:var(--sand)}
.sx .eyebrow{color:var(--blue)}
.guide{box-shadow:0 18px 40px rgba(38,57,92,.07)}
.tl .dot{border-color:var(--blue);color:var(--blue)}
.tile{border-top:3px solid var(--navy)}
.tile.sel{border-color:var(--brass);box-shadow:inset 0 0 0 1px var(--brass)}
.guide-note{margin:0;padding:10px 0 0;font-size:13px;color:var(--soft)}
.calc{border-top:3px solid var(--navy)}
.tl-card{border-top:3px solid var(--blue)}
.otab.on{background:var(--navy);border-color:var(--navy);color:#fff}
.ob-info{border-top:3px solid var(--navy)}

/* --- Aparición suave --- */
.rv{opacity:0;transform:translateY(14px);transition:opacity .8s ease,transform .8s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.hh-bg .ph.on{transform:none}.sp-hero>.ph{animation:none}}
.scrollmt{scroll-margin-top:84px}
.sx{scroll-margin-top:84px}#calc{scroll-margin-top:96px}
.pn-ph .ph-fb small,.ix-stage .ph-fb small{display:none}
.pn-ph .ph-fb svg{width:30px}
.find-res{min-height:60px}
.svc{display:grid;grid-template-columns:44px minmax(0,1fr) 24px;align-items:baseline;width:100%;padding:22px 0;background:none;border:0;text-align:left;font:inherit;color:var(--navy);cursor:pointer}
.svc:hover .rw-t,.svc:focus-visible .rw-t{transform:translateX(6px)}
.svc:hover .rw-n{color:var(--brass)}
.mono{aspect-ratio:1/1}

/* --- Conceptos clave --- */
.sp-hero{min-height:clamp(440px,64vh,640px)}
.cn-g{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--hair);border-left:1px solid var(--hair)}
@media (min-width:560px){.cn-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1180px){.cn-g{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cn-t{display:flex;flex-direction:column;justify-content:space-between;gap:34px;min-height:148px;padding:20px 22px;background:transparent;border:0;border-right:1px solid var(--hair);border-bottom:1px solid var(--hair);text-align:left;font:inherit;color:var(--navy);cursor:pointer;transition:background .3s,color .3s}
.cn-n{font-size:11px;letter-spacing:.2em;color:var(--soft);transition:color .3s}
.cn-x{font-family:var(--serif);font-size:clamp(22px,2.1vw,29px);line-height:1.12;letter-spacing:-.01em}
.cn-t:hover{background:#fff}
.cn-t.on{background:var(--navy);color:#fff}
.cn-t.on .cn-n{color:var(--brass-l)}
.cn-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:26px}
.cn-l{font:500 12px var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--brass)}
.cn-v{flex:1 1 220px;font-family:var(--serif);font-size:clamp(22px,2.4vw,30px);color:var(--navy)}
.cn-bar .btn-dark2{margin-top:0}
.flow{list-style:none;margin:34px 0 0;padding:0;display:grid;gap:0;grid-template-columns:minmax(0,1fr)}
.flow li{position:relative;padding:22px 0 22px 34px;border-left:1px solid var(--navy)}
.flow li::before{content:"";position:absolute;left:-5px;top:30px;width:9px;height:9px;border-radius:50%;background:var(--sand);border:1px solid var(--navy)}
.fl-n{display:block;font-size:11px;letter-spacing:.2em;color:var(--brass)}
.fl-t{display:block;margin-top:6px;font-family:var(--serif);font-size:clamp(24px,2.6vw,34px);line-height:1.1;color:var(--navy)}
@media (min-width:900px){
  .flow{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:48px}
  .flow li{padding:30px 22px 0 0;border-left:0;border-top:1px solid var(--navy)}
  .flow li::before{left:0;top:-5px}
}
.cn-g{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1180px){.cn-g{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cn-t{min-height:120px;padding:16px 16px;gap:22px;min-width:0}
@media (min-width:560px){.cn-t{min-height:148px;padding:20px 22px;gap:34px}}
.cn-x{font-size:clamp(19px,1.9vw,26px);hyphens:auto;overflow-wrap:break-word}
.cn-v{flex:1 1 260px}
.cthero{position:relative;overflow:hidden;background:linear-gradient(120deg,#F7F5F0 0%,#EAF1FA 100%)}
.cthero-in{max-width:1280px;margin:0 auto;padding:56px 40px 40px;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:24px 40px;align-items:center}
.cthero h1{margin:0;font-size:clamp(40px,4.8vw,64px);line-height:1;font-weight:500;color:#26395C;max-width:560px}
.ctbtn{display:inline-block;margin-top:30px;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:.04em;background:#A64B35;color:#fff!important;padding:15px 28px;border-radius:4px;transition:transform .2s,box-shadow .2s}
.ctbtn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(166,75,53,.35)}
@media(max-width:860px){.cthero-in{grid-template-columns:1fr;padding:40px 20px 24px}.cthero .ill{max-width:520px;margin:0 auto}}
@media(prefers-reduced-motion:reduce){.ctill *{animation:none!important}}

.g6hero .cthero-in{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)!important;padding-bottom:48px}
.g6hero h1{font-size:clamp(34px,4vw,54px)!important}
@media(max-width:900px){.g6hero .cthero-in{grid-template-columns:1fr!important}}
.g6panel{background:#fff;border-radius:20px;box-shadow:0 20px 44px rgba(38,57,92,.14);padding:26px 30px;display:flex;flex-direction:column;gap:6px}
.g6big{display:flex;align-items:baseline;gap:10px;font-family:'Cormorant Garamond',Georgia,serif;color:#26395C}
.g6big b{font-size:78px;font-weight:600;line-height:1}.g6big span{font-size:34px;color:#8793AB}
.g6st{margin:0;font-size:13px;letter-spacing:.16em;font-weight:700;text-transform:uppercase;color:#A64B35;transition:color .4s}
.g6all .g6st{color:#2E7D4F}
.g6dots{display:flex;gap:10px;margin:10px 0 6px}
.g6dots i{width:18px;height:18px;border-radius:50%;background:#EADFCF;transition:background .4s,transform .4s}
.g6dots i.on{background:#2E7D4F;transform:scale(1.15)}
.g6msg{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;line-height:1.15;margin:8px 0 0;color:#26395C;min-height:60px}
.g6rst{align-self:flex-start;margin-top:8px;font:600 13px 'Albert Sans',system-ui,sans-serif;letter-spacing:.06em;color:#26395C;background:none;border:2px solid #26395C;border-radius:999px;padding:9px 18px;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s,background .2s,color .2s}
.g6rst.v{opacity:1;pointer-events:auto}.g6rst:hover{background:#26395C;color:#fff}
.g6sec{padding:10px 0 80px}
.g6grid{max-width:1240px;margin:0 auto;padding:0 40px;box-sizing:border-box;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
@media(max-width:1000px){.g6grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.g6grid{grid-template-columns:1fr;padding:0 16px}}
.wk6{position:relative;background:var(--bg);border-radius:22px;padding:14px 14px 16px;overflow:hidden;box-shadow:0 14px 30px rgba(38,57,92,.12);user-select:none;-webkit-user-select:none}
.wk6 svg{display:block;width:100%;height:auto;overflow:visible}
.wk6 svg text{font-family:'Albert Sans',system-ui,sans-serif}
.wkft{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:8px 4px 0}
.wkn{font-size:13px;font-weight:700;letter-spacing:.16em;color:#26395C}
.wkh{font-size:13px;color:#4A5A78}
.wk6 .pill{position:absolute;left:16px;top:16px;font-size:10.5px;font-weight:700;letter-spacing:.14em;color:#A64B35;border:1.5px dashed #A64B35;border-radius:999px;padding:5px 11px;background:rgba(255,255,255,.7);z-index:3;transition:all .4s}
.wk6 .pill .y{display:none}
.wk6.reg .pill{color:#2E7D4F;border:1.5px solid #2E7D4F;background:#fff}
.wk6.reg .pill .n{display:none}.wk6.reg .pill .y{display:inline}
.wk6 .wseal{position:absolute;right:16px;top:12px;width:46px;height:46px;border-radius:50%;background:#1B2A4A;color:#fff;font-size:24px;font-weight:700;display:flex;align-items:center;justify-content:center;z-index:3;opacity:0;transform:scale(3.4) rotate(-30deg);transition:opacity .25s,transform .55s cubic-bezier(.3,1.6,.4,1);box-shadow:0 0 0 4px #fff inset,0 0 0 2px #1B2A4A inset}
.wk6.reg .wseal{opacity:1;transform:scale(1) rotate(-8deg)}
.wk6.reg .wseal:after{content:"";position:absolute;inset:0;border-radius:50%;border:4px solid #E8472E;animation:g6rip .9s ease-out .3s both}
@keyframes g6rip{0%{opacity:.9;transform:scale(.6)}100%{opacity:0;transform:scale(2.6)}}
.wk6 .emo{position:absolute;font-size:28px;pointer-events:none;z-index:4;animation:g6emo 1.9s ease-out forwards;font-family:'Noto Color Emoji','Apple Color Emoji','Segoe UI Emoji',sans-serif}
@keyframes g6emo{0%{opacity:0;transform:translate(0,0) scale(.4)}14%{opacity:1;transform:translate(0,-8px) scale(1.1)}100%{opacity:0;transform:translate(var(--dx),-120px) rotate(24deg) scale(1)}}
.wk6 .flashfx{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:5;border-radius:22px}
.wk6.flash .flashfx{animation:g6fl .6s ease-out}
@keyframes g6fl{0%{opacity:.95}100%{opacity:0}}
.wk6 .whot{cursor:pointer}
/* pintura */
.wk6 .brush{pointer-events:none;transition:opacity .2s}
.wk6 .cv{cursor:crosshair;touch-action:none}
.wk6 .dol{cursor:pointer;transition:transform .2s}.wk6 .dol:hover{transform:scale(1.15)}
.wk6 .dol,.wk6 .dolring{transform-box:fill-box;transform-origin:center}
/* musica */
.wk6 .rec{transform-box:fill-box;transform-origin:center;animation:g6spin 2.4s linear infinite;animation-play-state:paused}
.wk6.play .rec{animation-play-state:running}
@keyframes g6spin{to{transform:rotate(360deg)}}
.wk6 .arm{transform-origin:290px 96px;transform:rotate(-26deg);transition:transform .9s cubic-bezier(.4,.1,.2,1)}
.wk6.play .arm{transform:rotate(0)}
.wk6 .eq rect{transform-box:fill-box;transform-origin:bottom;transform:scaleY(.25)}
.wk6.play .eq rect{animation:g6eq .6s ease-in-out infinite alternate}
.wk6.play .eq rect:nth-child(2){animation-delay:-.2s}.wk6.play .eq rect:nth-child(3){animation-delay:-.4s}.wk6.play .eq rect:nth-child(4){animation-delay:-.1s}.wk6.play .eq rect:nth-child(5){animation-delay:-.35s}
@keyframes g6eq{from{transform:scaleY(.2)}to{transform:scaleY(1)}}
/* foto */
.wk6 .pol{transition:transform .8s cubic-bezier(.3,1.2,.4,1);transform:translate(100px,140px)}
.wk6 .pol .pimg{filter:blur(5px) grayscale(1);transition:filter 2s .6s}
.wk6 .pol.dev .pimg{filter:none}
.wk6 .glare{opacity:0}.wk6.flash .glare{animation:g6fl .5s ease-out}
/* libro */
.wk6 .wln{stroke-dasharray:100;stroke-dashoffset:100}
.wk6 .sp{opacity:0;transition:opacity .3s}
.wk6[data-s="0"] .sp0,.wk6[data-s="1"] .sp1,.wk6[data-s="2"] .sp2{opacity:1}
.wk6[data-s="0"] .sp0 .wln,.wk6[data-s="1"] .sp1 .wln,.wk6[data-s="2"] .sp2 .wln{animation:g6dr 1s ease-out forwards;animation-delay:var(--d)}
@keyframes g6dr{to{stroke-dashoffset:0}}
.wk6 .flp{transform-origin:180px 137px;opacity:0}
.wk6.flipping .flp{animation:g6flip .9s ease-in-out forwards}
@keyframes g6flip{0%{opacity:1;transform:scaleX(1)}50%{opacity:1;transform:scaleX(0)}99%{opacity:1;transform:scaleX(-1)}100%{opacity:0;transform:scaleX(-1)}}
.wk6 .quill{animation:g6q 2.2s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:bottom left}
@keyframes g6q{from{transform:rotate(-6deg)}to{transform:rotate(7deg)}}
/* cine */
.wk6 .arm2{transform-origin:70px 206px;transform:rotate(-24deg)}
.wk6.clap .arm2{animation:g6clap .7s ease-in forwards}
@keyframes g6clap{0%{transform:rotate(-24deg)}35%{transform:rotate(0)}60%{transform:rotate(0)}100%{transform:rotate(-24deg)}}
.wk6 .scr{opacity:0;transition:opacity .5s}.wk6.on .scr{opacity:1}
.wk6 .beam{opacity:0;transition:opacity .5s}.wk6.on .beam{opacity:.55}
.wk6 .plane{animation:g6pl 3.2s linear infinite;animation-play-state:paused}.wk6.on .plane{animation-play-state:running}
@keyframes g6pl{0%{transform:translate(-40px,20px)}100%{transform:translate(220px,-30px)}}
.wk6 .sunr{animation:g6sun 6s ease-out forwards;animation-play-state:paused;transform:translateY(40px)}.wk6.on .sunr{animation-play-state:running}
@keyframes g6sun{to{transform:translateY(0)}}
.wk6 .reel{transform-box:fill-box;transform-origin:center;animation:g6spin 2s linear infinite;animation-play-state:paused}.wk6.on .reel{animation-play-state:running}
/* marca */
.wk6 .stampg{transition:transform .22s cubic-bezier(.4,.1,.2,1)}
.wk6 .imp{animation:g6imp .45s cubic-bezier(.3,1.6,.4,1) both;transform-box:fill-box;transform-origin:center}
@keyframes g6imp{0%{opacity:0;transform:scale(1.8)}100%{opacity:1;transform:scale(1)}}
.wk6 .tm{transition:opacity .3s}.wk6.reg .tm{opacity:0}
.wk6 .rr{opacity:0;transition:opacity .4s}.wk6.reg .rr{opacity:1}
.g6conf{position:fixed;left:50%;top:40%;pointer-events:none;z-index:50}
.g6conf i{position:absolute;width:12px;height:12px;border-radius:50%;animation:g6cf 1.5s ease-out forwards}
@keyframes g6cf{0%{opacity:1;transform:translate(0,0) scale(.5)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.2)}}
@media(prefers-reduced-motion:reduce){.wk6 *{animation:none!important}}/* ===== Marcas: escenas con concepto jurídico ===== */
.mh .cthero-in{max-width:1280px}
.mh .crumbs{font-size:14px;color:var(--navy);margin-bottom:22px}
.mh .crumbs a{text-decoration:underline;text-underline-offset:3px}
.mh-t{display:flex;align-items:center;gap:20px}
.mh-ic{flex:none;width:68px;height:68px;border-radius:50%;background:var(--navy);display:grid;place-items:center;color:#fff}
.mh-ic svg{width:34px;height:34px}
.mh h1.disp{font-size:clamp(34px,4vw,54px);line-height:1.02;font-weight:500;color:var(--navy)}
.mh-s{margin:24px 0 0;max-width:470px;font-size:20px;line-height:1.5;color:var(--navy)}
.cthero .ctbtn{font-family:var(--sans)}
.g6panel{font-family:var(--sans)}
.g6big b{font-family:var(--serif)}
.wkc{margin:12px 4px 2px;padding-top:12px;border-top:1px solid rgba(38,57,92,.16);min-height:112px}
.wkc b{display:block;font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.1;color:var(--navy)}
.wkc p{margin:8px 0 0;font-size:14px;line-height:1.45;color:#34476B;opacity:0;transform:translateY(6px);transition:opacity .5s .15s,transform .5s .15s}
.wkc em{display:block;margin-top:6px;font-style:normal;font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#A64B35}
.wk6.reg .wkc p{opacity:1;transform:none}
.wk6:not(.reg) .wkc p{visibility:hidden}
.g6sec{padding:44px 0 64px}
@media(max-width:620px){.wkc{min-height:0}.wk6:not(.reg) .wkc p{display:none}}
/* ===== Escenas ilustradas por servicio ===== */
.sv6 svg{cursor:pointer;-webkit-tap-highlight-color:transparent}
.sv6 svg:focus-visible{outline:3px solid var(--navy);outline-offset:4px;border-radius:8px}
.sv6 svg text{font-family:var(--sans)}
.sv6 .mv,.sv6 .po,.sv6 .gr,.sv6 .fl,.sv6 .fi,.sv6 .fo,.sv6 .ro,.sv6 .dr{transition:transform .9s cubic-bezier(.3,.7,.2,1),opacity .6s ease,stroke-dashoffset 1.1s ease}
.sv6 .mv,.sv6 .po,.sv6 .gr,.sv6 .fl{transform-box:fill-box;transform-origin:center}
.sv6.on .mv{transform:translate(var(--x,0),var(--y,0))}
.sv6 .ro{transform:rotate(var(--r0,0deg))}
.sv6.on .ro{transform:rotate(var(--r,0deg))}
.sv6 .po{opacity:0;transform:scale(.2)}
.sv6.on .po{opacity:1;transform:scale(1)}
.sv6 .gr{transform:scaleY(0);transform-origin:50% 100%}
.sv6.on .gr{transform:scaleY(1)}
.sv6 .fl{transform:scaleX(0);transform-origin:0 50%}
.sv6.on .fl{transform:scaleX(1)}
.sv6 .fi{opacity:0}.sv6.on .fi{opacity:1}
.sv6 .fo{opacity:1}.sv6.on .fo{opacity:0}
.sv6 .dr{stroke-dasharray:100;stroke-dashoffset:100}
.sv6.on .dr{stroke-dashoffset:0}
.sv6 .bob{animation:svbob 3.4s ease-in-out infinite alternate;transform-box:fill-box}
@keyframes svbob{from{transform:translateY(-3px)}to{transform:translateY(4px)}}
@media(prefers-reduced-motion:reduce){.sv6 .bob{animation:none}}
.sv6 .wkft .wkn{letter-spacing:.1em}
.mh-ic svg{fill:currentColor}
/* ===== Escena accionable (misma lógica que Marcas) ===== */
.sv6 svg{cursor:pointer}
.sv6 svg:focus-visible{outline:3px solid var(--navy);outline-offset:4px;border-radius:8px}
.sv6 .wkh{text-align:right}
/* ===== Experiencias interactivas por área ===== */
.pz-sec{background:var(--cd)!important;color:var(--hf);padding:0!important;overflow:hidden}
.pz-in{max-width:1280px;margin:0 auto;padding:44px 22px 80px}
@media (min-width:1024px){.pz-in{padding:56px 80px 104px}}
.pz-hint{margin:0 0 30px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:color-mix(in srgb,var(--hf) 62%,transparent)}
.pz{--ln:color-mix(in srgb,var(--hf) 22%,transparent);--ln2:color-mix(in srgb,var(--hf) 12%,transparent);--mut:color-mix(in srgb,var(--hf) 66%,transparent);--paper:#FBF8F1;--ink:#1D1B18;--serifd:"EB Garamond","Cormorant Garamond",Georgia,serif}
:where(.pz button){font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-align:left}
.pz button:focus-visible,.pz .cl:focus-visible{outline:2px solid var(--hb);outline-offset:3px}

/* panel, fichas y flechas (compartido) */
.pz-ps{position:relative;min-width:0}
.pz-p{display:none}
.pz-p.on{display:block;animation:pzIn .55s cubic-bezier(.2,.7,.2,1) both}
.pz-p small{display:block;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.pz-p h3{margin:10px 0 0;font-family:var(--serifd);font-weight:400;font-size:clamp(28px,3.4vw,44px);line-height:1.08;letter-spacing:-.005em;text-wrap:balance}
.pz-chips{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pz-chips li{padding:8px 15px;border:1px solid var(--ln);border-radius:999px;font-size:13.5px;line-height:1.25;opacity:0;animation:pzChip .5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--k)*.09s + .12s)}
.pz-p:not(.on) .pz-chips li,.st-s:not(.on) .pz-chips li{animation:none}
.pz-norm{display:block;margin-top:20px;font-family:var(--serifd);font-style:italic;font-size:16px;color:var(--mut)}
.pz-arrows{display:flex;gap:10px;margin-top:28px}
.pz-arrows button{width:46px;height:46px;border-radius:50%;border:1px solid var(--ln);display:grid;place-items:center;transition:background .25s,border-color .25s,color .25s}
.pz-arrows button:hover{background:var(--hb);border-color:var(--hb);color:var(--hbf)}
.pz-arrows svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@keyframes pzIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes pzChip{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ================= CONTRATO ================= */
.pz-doc-x{--hb2:var(--hb)}
.pz-bar{position:sticky;top:78px;z-index:6;margin:-12px -22px 34px;padding:14px 22px 12px;background:var(--cd);border-bottom:1px solid var(--ln2);display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px}
@media (min-width:1024px){.pz-bar{margin-left:-80px;margin-right:-80px;padding-left:80px;padding-right:80px}}
.pz-modes{display:flex;align-items:center;flex-wrap:wrap;gap:4px 0;width:100%}
.pz-m{padding:8px 2px;font-size:14px;letter-spacing:.04em;color:var(--mut);position:relative;transition:color .3s}
.pz-m b{font-weight:500}
.pz-m::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--hb);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.pz-m:hover{color:var(--hf)}
.pz-m.on{color:var(--hb)}
.pz-m.on::after{transform:scaleX(1)}
.pz-sep{width:clamp(14px,3vw,38px);height:1px;background:var(--ln);margin:0 clamp(8px,1.6vw,18px);flex:none}
.pz-lead{margin:0;flex:1;min-width:240px;font-family:var(--serifd);font-style:italic;font-size:clamp(16px,1.6vw,19px);color:color-mix(in srgb,var(--hf) 84%,transparent);min-height:1.5em}
.pz-lead span{display:none}
.pz[data-mode=elab] .pz-lead [data-l=elab],.pz[data-mode=rev] .pz-lead [data-l=rev],.pz[data-mode=neg] .pz-lead [data-l=neg],.pz[data-mode=inc] .pz-lead [data-l=inc]{display:inline;animation:pzIn .5s both}
.pz-vers{display:none;border:1px solid var(--ln);border-radius:999px;padding:3px}
.pz[data-mode=neg] .pz-vers{display:inline-flex}
.pz-vers button{padding:7px 14px;border-radius:999px;font-size:13px;color:var(--mut);transition:background .3s,color .3s}
.pz[data-ver=ini] [data-v=ini],.pz[data-ver=chg] [data-v=chg],.pz[data-ver=fin] [data-v=fin]{background:var(--hb);color:var(--hbf)}
.pz-replay{display:none;font-size:13px;letter-spacing:.06em;color:var(--hb);padding:7px 2px;border-bottom:1px solid currentColor}
.pz[data-mode=elab] .pz-replay{display:inline-block}

.pz-wrap{position:relative;max-width:900px;margin:0 auto}
@media (min-width:1180px){.pz-wrap{max-width:1200px;padding-right:372px}}
.pz-doc{position:relative;background:var(--paper);color:var(--ink);font-family:var(--serifd);padding:clamp(28px,5vw,64px) clamp(20px,5vw,68px) clamp(30px,4vw,52px);box-shadow:0 30px 70px -20px rgba(0,0,0,.55),0 2px 0 rgba(255,255,255,.4) inset}
.pz-doc::before{content:"";position:absolute;inset:10px;border:1px solid rgba(154,120,64,.28);pointer-events:none}
.doc-h{text-align:center;padding-bottom:22px;margin-bottom:10px;border-bottom:1px solid rgba(29,27,24,.16)}
.doc-h small{display:block;font-family:"Albert Sans",system-ui,sans-serif;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:#8B8478}
.doc-h h2{margin:12px 0 14px;font-weight:500;font-size:clamp(20px,2.4vw,27px);letter-spacing:.1em;line-height:1.2}
.doc-h p{margin:0 auto;max-width:56ch;font-size:16px;line-height:1.6;color:#4A463F}
.cl{position:relative;padding:15px 18px 15px 24px;margin:0 -8px;transition:opacity .6s,background .45s,filter .6s;outline:none}
.cl-bar{position:absolute;left:0;top:14px;bottom:14px;width:2px;background:var(--hb);transform:scaleY(0);transform-origin:top;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.cl.on .cl-bar{transform:scaleY(1)}
.cl.on{background:rgba(201,166,107,.13)}
.cl h4{margin:0 0 6px;font-weight:500;font-size:13px;letter-spacing:.13em;line-height:1.5}
.cl h4 b{font-weight:700}
.cl-t{margin:0;font-size:clamp(17px,1.5vw,19.5px);line-height:1.62;text-align:justify;hyphens:auto}
.cl-dot{position:absolute;right:10px;top:18px;width:9px;height:9px;border-radius:50%;background:var(--hb);opacity:0;transform:scale(.4);transition:opacity .4s,transform .4s}
mark.mk{background:transparent;color:inherit;padding:0 1px;transition:background .5s}
.pz[data-mode=rev] mark.mk{background:linear-gradient(transparent 12%,rgba(255,206,84,.55) 12%,rgba(255,206,84,.55) 92%,transparent 92%)}
.pz[data-mode=inc] .cl[data-has~=inc] mark.mk{background:linear-gradient(transparent 12%,rgba(190,70,50,.22) 12%,rgba(190,70,50,.22) 92%,transparent 92%)}
.pz[data-mode=rev] .cl[data-has~=rev] .cl-dot,.pz[data-mode=inc] .cl[data-has~=inc] .cl-dot,.pz[data-mode=neg] .cl[data-has~=neg] .cl-dot{opacity:1;transform:none}
.pz[data-mode=rev] .cl:not([data-has~=rev]),.pz[data-mode=neg] .cl:not([data-has~=neg]),.pz[data-mode=inc] .cl:not([data-has~=inc]){opacity:.38}
.pz[data-mode=rev] .cl[data-has~=rev],.pz[data-mode=neg] .cl[data-has~=neg],.pz[data-mode=inc] .cl[data-has~=inc]{cursor:pointer}
.cl.pend{opacity:.14;filter:blur(1.4px)}
/* versiones */
.vs{display:none}
.pz[data-ver=ini] .v-ini,.pz[data-ver=chg] .v-chg,.pz[data-ver=fin] .v-fin{display:inline;animation:pzIn .5s both}
.cl-t del{color:#A8321F;text-decoration:line-through;text-decoration-thickness:1.5px;background:rgba(190,70,50,.1)}
.cl-t ins{color:#1D4F91;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;background:rgba(40,100,190,.1)}
.pz[data-ver=chg] .cl-t ins{animation:insFl 1.1s ease both}
@keyframes insFl{0%{background:rgba(40,100,190,.45)}100%{background:rgba(40,100,190,.1)}}
.doc-f{margin-top:30px;padding-top:6px;display:grid;grid-template-columns:1fr 1fr;gap:42px}
.doc-f span{border-top:1px solid rgba(29,27,24,.6);padding-top:8px;text-align:center;font-size:12px;letter-spacing:.18em}
.cl-more{display:none}

/* notas al margen */
.cl-notes{display:none}
.nt{display:none;background:#FFFDF8;color:var(--ink);border-left:3px solid var(--hb);padding:12px 16px 14px;box-shadow:0 14px 34px -12px rgba(0,0,0,.5);font-family:"Albert Sans",system-ui,sans-serif}
.nt small,.nv small{display:block;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#7A5F2C;font-weight:600}
.nt p,.nv p{margin:6px 0 0;font-size:14.5px;line-height:1.5;color:#2B2925}
.nt[data-tag=Riesgo]{border-left-color:#B3341F}.nt[data-tag=Riesgo] small{color:#B3341F}
.nt[data-tag=Precisión]{border-left-color:#2E6AA8}.nt[data-tag=Precisión] small{color:#2E6AA8}
.nt[data-tag=Propuesta]{border-left-color:#2F7D5B}.nt[data-tag=Propuesta] small{color:#2F7D5B}
.nt[data-tag=Responsabilidad]{border-left-color:#8E3A5F}.nt[data-tag=Responsabilidad] small{color:#8E3A5F}
.nv{display:none}
.pz[data-ver=ini] .nv-ini,.pz[data-ver=chg] .nv-chg,.pz[data-ver=fin] .nv-fin{display:block;animation:pzIn .45s both}
.pz[data-mode=elab] .cl.on .nt[data-t=elab],.pz[data-mode=rev] .cl.on .nt[data-t=rev],.pz[data-mode=neg] .cl.on .nt[data-t=neg],.pz[data-mode=inc] .cl.on .nt[data-t=inc]{display:block;animation:pzIn .5s both}
.pz[data-mode] .cl.on .cl-notes{display:block}
.nt-chain{padding:14px 16px 8px}
.pzc{list-style:none;margin:0;padding:0;position:relative}
.pzc li{position:relative;padding:0 0 12px 26px;opacity:0;animation:pzIn .45s both;animation-delay:calc(var(--k)*.1s)}
.pzc li::before{content:"";position:absolute;left:4px;top:6px;width:9px;height:9px;border-radius:50%;border:1.5px solid #9A9283;background:#FFFDF8}
.pzc li::after{content:"";position:absolute;left:8px;top:17px;bottom:-1px;width:1px;background:#CFC8B8}
.pzc li:last-child::after{display:none}
.pzc b{display:block;font-size:13.5px;font-weight:600}
.pzc span{display:none;margin-top:3px;font-size:13.5px;line-height:1.45;color:#3A3732}
.pzc em{display:block;margin-top:3px;font-size:12.5px;color:#7A5F2C}
.pzc li.cur::before{background:var(--hb);border-color:#8A6A33}
.pzc li.cur span{display:block}
.pzc li.past::before{background:#8A6A33;border-color:#8A6A33}
.pzc li.next{opacity:.5!important}
@media (min-width:1180px){
 .cl-notes{position:absolute;left:calc(100% + 44px);top:0;width:320px;z-index:3}
 .pz-doc{overflow:visible}
 .cl.on .cl-notes::before{content:"";position:absolute;right:100%;top:22px;width:44px;height:1px;background:var(--hb)}
}
@media (max-width:1179px){
 .cl.on .cl-notes{margin:12px 0 2px}
 .nt{box-shadow:0 8px 22px -12px rgba(0,0,0,.35);border:1px solid rgba(29,27,24,.1);border-left-width:3px}
}

/* ================= EXPEDIENTE ================= */
.pz-exp{display:grid;grid-template-columns:1fr;gap:34px;align-items:start}
@media (min-width:900px){.pz-exp{grid-template-columns:230px minmax(0,1fr);gap:56px}}
.exp-rail{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}
.exp-rail::-webkit-scrollbar{display:none}
@media (min-width:900px){.exp-rail{flex-direction:column;gap:0;overflow:visible;padding:6px 0}}
.exp-n{display:flex;align-items:center;gap:14px;position:relative;padding:11px 14px 11px 0;color:var(--mut);white-space:nowrap;font-size:14.5px;transition:color .35s}
.exp-n i{flex:none;width:11px;height:11px;border-radius:50%;border:1.5px solid var(--ln);background:var(--cd);transition:background .35s,border-color .35s,transform .35s;position:relative;z-index:1}
.exp-n span{line-height:1.25}
@media (min-width:900px){.exp-n{white-space:normal;padding:13px 0}.exp-n::before{content:"";position:absolute;left:5px;top:-50%;bottom:50%;width:1px;background:var(--ln)}.exp-n:first-child::before{display:none}.exp-n.done::before,.exp-n.on::before{background:var(--hb)}}
.exp-n.done i{background:var(--hb);border-color:var(--hb)}
.exp-n.on{color:var(--hf)}
.exp-n.on i{background:var(--hb);border-color:var(--hb);transform:scale(1.35);box-shadow:0 0 0 5px color-mix(in srgb,var(--hb) 26%,transparent)}
.exp-n.on span{font-weight:600}
.exp-n:hover{color:var(--hf)}
@media (max-width:899px){.exp-n{padding:8px 14px;border:1px solid var(--ln);border-radius:999px}.exp-n i{display:none}.exp-n.on{background:var(--hb);color:var(--hbf);border-color:var(--hb)}}
.exp-desk{min-width:0}
.exp-stack{position:relative;width:100%;max-width:600px;aspect-ratio:1/1.02;margin:0 0 0 clamp(0px,3vw,38px)}
@media (max-width:560px){.exp-stack{aspect-ratio:1/1.3;margin-left:14px}}
.exp-sheet{position:absolute;inset:0;background:var(--paper);color:var(--ink);font-family:var(--serifd);padding:clamp(22px,4vw,38px) clamp(20px,4vw,42px);box-shadow:0 24px 50px -18px rgba(0,0,0,.65);transition:transform .75s cubic-bezier(.2,.7,.2,1),opacity .6s;overflow:hidden;
 transform:translate(calc(var(--d)*20px),calc(var(--d)*14px));opacity:0;pointer-events:none}
.exp-sheet[data-s=next]{transform:translate(70px,46px) rotate(2deg);opacity:0}
.exp-sheet[data-s=cur]{transform:none;opacity:1}
.exp-sheet[data-s=past]{opacity:1;filter:brightness(calc(1 - var(--a)*.13));transform:translate(calc(var(--d)*16px),calc(var(--d)*11px))}
.exp-sheet[data-s=past][data-far]{opacity:0}
.exp-stack{margin-left:clamp(0px,5vw,58px)!important}
.pz-exp .pz-arrows{margin-left:clamp(0px,5vw,58px)!important}
.exp-sheet header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;border-bottom:1px solid rgba(29,27,24,.18);padding-bottom:12px}
.exp-sheet header b{font-weight:500;font-size:clamp(18px,2.2vw,23px);letter-spacing:.12em}
.exp-sheet header small{font-family:"Albert Sans",system-ui,sans-serif;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#8B8478}
.exp-sheet section{margin-top:clamp(12px,2vw,20px)}
.exp-sheet h5{margin:0;font-weight:600;font-size:clamp(14px,1.5vw,16px);letter-spacing:.08em;text-transform:uppercase}
.ln{margin-top:8px;display:grid;gap:6px}
.ln i{display:block;height:5px;border-radius:3px;background:rgba(29,27,24,.13)}
.exp-sheet footer{position:absolute;left:clamp(20px,4vw,42px);right:clamp(20px,4vw,42px);bottom:clamp(18px,3vw,30px)}
.exp-sheet footer span{display:block;width:44%;margin-left:auto;border-top:1px solid rgba(29,27,24,.55)}
.exp-sheet[data-s=cur] section{animation:secIn .7s cubic-bezier(.2,.7,.2,1) both}
.exp-sheet[data-s=cur] section:nth-of-type(1){animation-delay:.18s}.exp-sheet[data-s=cur] section:nth-of-type(2){animation-delay:.32s}.exp-sheet[data-s=cur] section:nth-of-type(3){animation-delay:.46s}.exp-sheet[data-s=cur] section:nth-of-type(4){animation-delay:.6s}
.exp-sheet[data-s=cur] .ln i{animation:lnGrow .9s cubic-bezier(.2,.7,.2,1) both;transform-origin:left}
.exp-sheet[data-s=cur] section:nth-of-type(1) .ln i{animation-delay:.3s}.exp-sheet[data-s=cur] section:nth-of-type(2) .ln i{animation-delay:.44s}.exp-sheet[data-s=cur] section:nth-of-type(3) .ln i{animation-delay:.58s}.exp-sheet[data-s=cur] section:nth-of-type(4) .ln i{animation-delay:.72s}
@keyframes secIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes lnGrow{from{transform:scaleX(0)}to{transform:none}}
.pz-exp .pz-arrows{margin-left:clamp(0px,3vw,38px)}

/* ================= CICLO SOCIETARIO ================= */
.pz-rg{display:grid;grid-template-columns:1fr;gap:34px;align-items:center}
@media (min-width:960px){.pz-rg{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:84px}}
.rg-ring{position:relative;width:min(100%,400px);aspect-ratio:1;margin:0 auto}
@media (min-width:960px){.rg-ring{width:min(100%,420px)}}
.rg-ring>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.rg-track{fill:none;stroke:var(--ln);stroke-width:.35}
.rg-arc{fill:none;stroke:var(--hb);stroke-width:.9;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:var(--off,100);transform:rotate(-90deg);transform-origin:50% 50%;transition:stroke-dashoffset .9s cubic-bezier(.2,.7,.2,1)}
.rg-orb{position:absolute;left:var(--ox,50%);top:var(--oy,8%);width:20px;height:20px;margin:-10px;border-radius:50%;background:var(--hb);box-shadow:0 0 0 7px color-mix(in srgb,var(--hb) 22%,transparent);transition:left .9s cubic-bezier(.2,.7,.2,1),top .9s cubic-bezier(.2,.7,.2,1);z-index:2;pointer-events:none;animation:orbP 2.4s ease-in-out infinite}
@keyframes orbP{50%{box-shadow:0 0 0 12px color-mix(in srgb,var(--hb) 8%,transparent)}}
.rg-n{position:absolute;width:44px;height:44px;margin:-22px;display:grid;place-items:center;z-index:3}
.rg-n i{width:11px;height:11px;border-radius:50%;background:var(--cd);border:1.5px solid var(--ln);transition:background .4s,border-color .4s}
.rg-n.done i{background:var(--hb);border-color:var(--hb)}
.rg-n.on i{opacity:0}
.rg-n b{position:absolute;top:50%;transform:translateY(-50%);font-weight:400;font-size:13.5px;color:var(--mut);white-space:nowrap;transition:color .35s;display:none}
@media (min-width:640px){.rg-n b{display:block}}
.rg-n[data-side=r] b{left:calc(100% + 2px)}
.rg-n[data-side=l] b{right:calc(100% + 2px)}
.rg-n[data-side=t] b{top:auto;bottom:calc(100% - 2px);left:50%;transform:translateX(-50%)}
.rg-n[data-side=b] b{top:calc(100% - 2px);left:50%;transform:translateX(-50%)}
.rg-n.on b{color:var(--hf);font-weight:600}
.rg-n:hover b{color:var(--hf)}
.rg-c{position:absolute;inset:22%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px}
.rg-c small{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);max-width:15ch;line-height:1.5}
.rg-c strong{font-family:var(--serifd);font-weight:400;font-size:clamp(24px,3vw,33px);line-height:1.1}
.rg-c span{font-family:var(--serifd);font-style:italic;font-size:15px;color:var(--mut)}
.rg-c strong,.rg-c span{transition:opacity .25s}
.rg-c.sw strong,.rg-c.sw span{opacity:0}

/* ================= ADMINISTRATIVO ================= */
.br-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:44px}
@media (min-width:860px){.br-grid{grid-template-columns:1fr 46px 1fr 46px 1fr;gap:0;align-items:stretch}}
.br-col{padding:22px 22px 24px;border:1px solid var(--ln2);transition:border-color .5s,background .5s}
.br-col h4{margin:0 0 16px;font-weight:500;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);transition:color .4s}
.br-items{display:grid;gap:8px}
.br-n{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--ln);font-size:15px;line-height:1.3;transition:background .35s,color .35s,border-color .35s}
.br-n i{flex:none;width:8px;height:8px;border-radius:50%;background:var(--ln)}
.br-n:hover{border-color:var(--hb)}
.br-n.on{background:var(--hb);color:var(--hbf);border-color:var(--hb)}
.br-n.on i{background:var(--hbf)}
.br-col.lit{border-color:color-mix(in srgb,var(--hb) 55%,transparent)}
.br-col.lit h4{color:var(--hb)}
.br-col.cur{background:color-mix(in srgb,var(--hf) 5%,transparent)}
.br-arr{display:none;align-items:center;justify-content:center;position:relative}
@media (min-width:860px){.br-arr{display:flex}}
.br-arr i{display:block;width:100%;height:1px;background:var(--ln);position:relative;transition:background .5s}
.br-arr i::after{content:"";position:absolute;right:0;top:-4px;width:8px;height:8px;border-top:1px solid var(--ln);border-right:1px solid var(--ln);transform:rotate(45deg);transition:border-color .5s}
.br-arr.lit i{background:var(--hb)}.br-arr.lit i::after{border-color:var(--hb)}

/* ================= CRONOGRAMA / RECORRIDO ================= */
.tl-track{position:relative;display:flex;flex-direction:column;gap:0;margin:0 0 46px;padding-left:2px}
@media (min-width:900px){.tl-track{flex-direction:row;padding:0}}
.tl-n{position:relative;display:flex;align-items:center;gap:16px;padding:10px 0;z-index:2}
@media (min-width:900px){.tl-n{flex:1;flex-direction:column;align-items:center;gap:14px;padding:0 6px;text-align:center}}
.tl-dot{flex:none;width:15px;height:15px;border-radius:50%;background:var(--cd);border:1.5px solid var(--ln);transition:background .4s,border-color .4s}
.tl-n b{font-weight:400;font-size:14.5px;line-height:1.3;color:var(--mut);transition:color .35s;max-width:18ch}
.tl-n:hover b{color:var(--hf)}
.tl-n.done .tl-dot{background:var(--hb);border-color:var(--hb)}
.tl-n.on b{color:var(--hf);font-weight:600}
.tl-line{position:absolute;background:var(--ln);z-index:0}
.tl-fill{position:absolute;left:0;top:0;background:var(--hb);transition:width .9s cubic-bezier(.2,.7,.2,1),height .9s cubic-bezier(.2,.7,.2,1)}
.tl-line{left:9px;top:var(--lt,18px);bottom:var(--lb,18px);width:1px}
.tl-fill{width:100%;height:var(--fp,0%)}
@media (min-width:900px){
 .tl-line{left:calc(50%/var(--n,7));right:calc(50%/var(--n,7));top:7px;bottom:auto;width:auto;height:1px}
 .tl-fill{height:100%;width:var(--fp,0%)}
}
.tl-mk{position:absolute;z-index:3;width:31px;height:31px;margin:-15.5px 0 0 -15.5px;border:1.5px solid var(--hb);border-radius:50%;pointer-events:none;left:var(--mx,0);top:var(--my,0);transition:left .9s cubic-bezier(.2,.7,.2,1),top .9s cubic-bezier(.2,.7,.2,1);box-shadow:0 0 0 6px color-mix(in srgb,var(--hb) 16%,transparent)}
.tl-mk::after{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--hb)}
.pz-path .tl-mk{border-radius:7px;animation:pkt 1.8s ease-in-out infinite}
.pz-path .tl-mk::after{border-radius:3px}
.pz-path .tl-dot{border-radius:3px}
.pz-path .tl-line{background:repeating-linear-gradient(90deg,var(--ln) 0 6px,transparent 6px 12px)}
@media (max-width:899px){.pz-path .tl-line{background:repeating-linear-gradient(180deg,var(--ln) 0 6px,transparent 6px 12px)}}
@keyframes pkt{50%{box-shadow:0 0 0 12px color-mix(in srgb,var(--hb) 6%,transparent)}}
.pz-tl .pz-ps{max-width:760px}

/* ================= FAMILIA ================= */
.pz-ft{display:grid;grid-template-columns:1fr;gap:36px;align-items:center}
@media (min-width:960px){.pz-ft{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:52px}}
.ft-map{position:relative;aspect-ratio:1.6/1;width:100%;max-width:700px;margin:0 auto}
@media (max-width:560px){.ft-map{aspect-ratio:1/1.05}}
.ft-map svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ft-l{stroke:var(--ln);stroke-width:1.4;vector-effect:non-scaling-stroke;fill:none;transition:stroke .5s,stroke-width .5s}
.ft-l.dash{stroke-dasharray:5 6}
.ft-l.hot{stroke:var(--hb);stroke-width:2.2}
.ft-n{position:absolute;transform:translate(-50%,-50%);padding:11px 20px;border-radius:999px;background:color-mix(in srgb,var(--cd) 55%,#fff);border:1px solid var(--ln);font-family:var(--serifd);font-size:clamp(15px,1.6vw,19px);white-space:nowrap;transition:background .4s,color .4s,border-color .4s,transform .4s;box-shadow:0 8px 20px -12px rgba(60,30,10,.4)}
.ft-n:hover{border-color:var(--hb)}
.ft-n.on{background:var(--hb);color:var(--hbf);border-color:var(--hb);transform:translate(-50%,-50%) scale(1.07)}
@media (max-width:560px){.ft-n{padding:9px 13px;font-size:13.5px}}
.ft-n.done{border-color:var(--hb)}

/* ================= COMPROBANTE ================= */
.pz-rc{display:grid;grid-template-columns:1fr;gap:44px;align-items:start}
@media (min-width:960px){.pz-rc{grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:80px}}
.rc-slip{position:relative;background:var(--paper);color:#26241F;font-family:"IBM Plex Mono","Courier New",ui-monospace,monospace;padding:30px 26px 40px;max-width:420px;width:100%;transform:rotate(-1.1deg);box-shadow:0 26px 50px -20px rgba(0,0,0,.5);-webkit-mask:linear-gradient(#000 0 0) top/100% calc(100% - 8px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 8px repeat-x;mask:linear-gradient(#000 0 0) top/100% calc(100% - 8px) no-repeat,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/16px 8px repeat-x}
.rc-slip header{text-align:center;padding-bottom:16px;border-bottom:1px dashed rgba(38,36,31,.5)}
.rc-slip header b{display:block;font-size:15px;letter-spacing:.14em;font-weight:500}
.rc-slip header small{display:block;margin-top:6px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#8B8478}
.rc-rows{display:grid;padding:10px 0 8px}
.rc-n{display:flex;align-items:center;gap:8px;padding:12px 6px;font-size:13.5px;position:relative;transition:background .35s}
.rc-n span{white-space:nowrap}
.rc-n i{flex:1;border-bottom:1px dotted rgba(38,36,31,.45);transform:translateY(4px);min-width:10px}
.rc-n em{font-style:normal;width:18px;text-align:right;opacity:0;transform:scale(.3);transition:opacity .3s,transform .4s cubic-bezier(.3,1.6,.5,1);color:var(--ac,#1B6B63);font-weight:700}
.rc-n.done em,.rc-n.on em{opacity:1;transform:none}
.rc-n.on{background:linear-gradient(transparent 14%,color-mix(in srgb,var(--hb) 38%,transparent) 14%,color-mix(in srgb,var(--hb) 38%,transparent) 88%,transparent 88%)}
.rc-n:hover{background:color-mix(in srgb,var(--hb) 16%,transparent)}
.rc-slip footer{padding-top:16px;border-top:1px dashed rgba(38,36,31,.5);text-align:center}
.rc-slip footer span{display:block;font-size:11px;letter-spacing:.16em}
.rc-slip footer::after{content:"";display:block;height:34px;margin-top:14px;background:repeating-linear-gradient(90deg,#26241F 0 2px,transparent 2px 4px,#26241F 4px 5px,transparent 5px 9px,#26241F 9px 12px,transparent 12px 14px)}

/* ================= ESCALERA ================= */
.st-stairs{position:relative;display:grid;grid-template-columns:1fr;gap:6px}
@media (min-width:900px){.st-stairs{display:flex;align-items:flex-end;gap:0;min-height:460px}}
.st-s{flex:1;min-width:0}
.st-b{display:flex;flex-direction:column;justify-content:flex-start;gap:10px;width:100%;padding:16px 16px 14px;border:1px solid var(--ln2);border-top:2px solid var(--ln);background:color-mix(in srgb,var(--hf) 4%,transparent);transition:background .45s,color .45s,border-color .45s}
.st-b i{width:8px;height:8px;border-radius:50%;background:var(--ln);transition:background .4s}
.st-b b{font-weight:500;font-size:15px;line-height:1.3}
@media (min-width:900px){.st-b{min-height:calc(86px + var(--i)*64px)}}
@media (max-width:899px){.st-s{margin-left:calc(var(--i)*14px)}}
.st-b:hover{border-top-color:var(--hb)}
.st-s.done .st-b{border-top-color:var(--hb)}
.st-s.done .st-b i{background:var(--hb)}
.st-s.on .st-b{background:var(--hb);color:var(--hbf);border-color:var(--hb)}
.st-s.on .st-b i{background:var(--hbf)}
.st-c{display:none}
.st-s.on .st-c{display:block;animation:pzIn .55s cubic-bezier(.2,.7,.2,1) both}
.st-c small{display:block;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.st-c .pz-chips{margin-top:16px}
@media (min-width:900px){.st-c{position:absolute;left:0;top:0;width:min(46%,430px)}.st-s.on .st-c{display:block}}
@media (max-width:899px){.st-s.on .st-c{padding:18px 4px 12px 16px}}
.pz-st .pz-arrows{margin-top:30px}
@media (min-width:900px){.pz-st .pz-arrows{margin-top:34px}}

@media (prefers-reduced-motion:reduce){.pz *,.pz *::before,.pz *::after{animation-duration:.01s!important;animation-delay:0s!important;transition-duration:.01s!important}}
.exp-desk{padding-top:40px}
.st-c h3{margin:10px 0 0;font-family:var(--serifd);font-weight:400;font-size:clamp(26px,3vw,40px);line-height:1.08}
@media (max-width:560px){.exp-stack{margin-left:26px!important;width:calc(100% - 26px)}.pz-exp .pz-arrows{margin-left:26px!important}.exp-sheet[data-s=past]{transform:translate(calc(var(--d)*7px),calc(var(--d)*6px))}}
@media (max-width:899px){.pz-bar{position:static;border-bottom:0;margin-bottom:22px}.cl-t{text-align:left;hyphens:none}.pz-m{font-size:13.5px}.pz-sep{margin:0 6px;width:12px}}


/* ================= v2: más blanco, más escala, más intuitivo ================= */
.pz-sec{--cd:#F3F7FD;--hf:#12203C;--hb:#2A62D6;--hbf:#fff;background:linear-gradient(180deg,#fff 0,#F5F8FE 42%,#EDF3FC 100%)!important;color:var(--hf)}
.pz{--paper:#fff;--ink:#12203C;--mut:color-mix(in srgb,#12203C 62%,transparent);--ln:rgba(42,98,214,.28);--ln2:rgba(42,98,214,.14)}
.pz-in{max-width:1380px;padding:64px 22px 110px}
@media (min-width:1024px){.pz-in{padding:96px 80px 150px}}
.pz-hint{display:inline-flex;align-items:center;gap:12px;margin:0 0 46px;padding:9px 18px 9px 14px;border:1px solid var(--ln);border-radius:999px;background:rgba(255,255,255,.8);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--hb);transition:opacity .6s}
.pz-hint i{width:9px;height:9px;border-radius:50%;background:var(--hb);animation:invite 1.9s ease-out infinite}
.pz-hint.used{opacity:.5}.pz-hint.used i{animation:none}
@keyframes invite{0%{box-shadow:0 0 0 0 rgba(42,98,214,.5)}70%{box-shadow:0 0 0 12px rgba(42,98,214,0)}100%{box-shadow:0 0 0 0 rgba(42,98,214,0)}}
.pz.pz-js:not(.vis){opacity:0;transform:translateY(28px)}
.pz.pz-js{transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.invite{animation:invite 1.9s ease-out infinite}
.rg-n.invite{animation:none}.rg-n.invite i{animation:invite 1.9s ease-out infinite}
.br-n,.st-b{position:relative}
/* panel y fichas, a mayor escala */
.pz-p h3{font-size:clamp(34px,4.4vw,62px);letter-spacing:-.01em}
.pz-p small,.st-c small{font-size:12px;color:var(--hb);letter-spacing:.22em}
.pz-chips li{padding:10px 18px;font-size:15px;background:rgba(255,255,255,.85);border-color:var(--ln);transition:background .25s,border-color .25s,transform .25s}
.pz-chips li:hover{background:#fff;border-color:var(--hb);transform:translateY(-2px)}
.pz-norm{font-size:18px;margin-top:26px}
.pz-arrows{margin-top:36px;gap:12px}
.pz-arrows button{height:52px;min-width:52px;background:#fff;border-color:var(--ln);color:var(--hb);box-shadow:0 10px 24px -14px rgba(42,98,214,.5);transition:background .25s,color .25s,transform .25s,border-color .25s}
.pz-arrows button:hover{transform:translateY(-2px)}
.pz-arrows [data-next]{border-radius:999px;padding:0 22px 0 26px;display:inline-flex;align-items:center;gap:10px;font-size:14px;letter-spacing:.06em;background:var(--hb);color:#fff;border-color:var(--hb)}
.pz-arrows [data-next]:hover{background:#1D4FB8}
.pz-arrows [data-next] svg{width:18px;height:18px}
/* nodos: mayor presencia */
.exp-n{font-size:16.5px;padding:15px 0}
.exp-n i{width:13px;height:13px}
.exp-n.on{color:var(--hf)}
.exp-n:hover,.tl-n:hover b,.rg-n:hover b{color:var(--hb)}
.rg-ring{width:min(100%,540px)}
@media (min-width:960px){.rg-ring{width:min(100%,540px)}.pz-rg{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}}
.rg-n b{font-size:16px;color:var(--mut)}
.rg-n.on b{color:var(--hb)}
.rg-n i{width:14px;height:14px;background:#fff}
.rg-orb{width:24px;height:24px;margin:-12px}
.rg-track{stroke-width:.28}
.rg-arc{stroke-width:.8}
.rg-c strong{font-size:clamp(28px,3.4vw,40px)}
.br-col{background:rgba(255,255,255,.7);padding:28px 26px 30px;box-shadow:0 22px 50px -34px rgba(30,70,160,.5)}
.br-n{font-size:17px;padding:17px 18px;background:#fff}
.br-n:hover{transform:translateX(3px)}
.br-n,.tl-n,.exp-n,.rc-n{transition-property:background,color,border-color,transform}
.br-col.cur{background:#fff}
.br-n.on{background:var(--hb);color:#fff}.br-n.on i{background:#fff}
.tl-n b{font-size:16px}
.tl-n.on b{color:var(--hb)}
.tl-dot{background:#fff}
.tl-mk{box-shadow:0 0 0 7px rgba(42,98,214,.14)}
.ft-map{max-width:860px}
.ft-n{font-size:clamp(16px,1.9vw,22px);padding:14px 26px;background:#fff;box-shadow:0 14px 30px -16px rgba(42,98,214,.55)}
.ft-n:hover{transform:translate(-50%,-52%)}
.ft-n.on{background:var(--hb);color:#fff;transform:translate(-50%,-50%) scale(1.08)}
.ft-l{stroke:rgba(42,98,214,.3)}.ft-l.hot{stroke:var(--hb)}
.rc-slip{max-width:470px;font-size:15px;box-shadow:none;filter:drop-shadow(0 26px 30px rgba(30,70,160,.28));transition:transform .35s cubic-bezier(.2,.7,.2,1);transform:rotate(-1.1deg) perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));border:0}
.rc-n{font-size:15px;padding:14px 6px}
.rc-n em{color:var(--hb)}
.rc-n.on{background:linear-gradient(transparent 14%,rgba(42,98,214,.16) 14%,rgba(42,98,214,.16) 88%,transparent 88%)}
.st-stairs{min-height:560px}
.st-b{background:#fff;border-color:var(--ln2);border-top-color:var(--ln);box-shadow:0 18px 40px -28px rgba(30,70,160,.6)}
@media (min-width:900px){.st-b{min-height:calc(110px + var(--i)*78px)}.st-stairs{min-height:640px}.st-c{width:min(50%,520px)}}
.st-b b{font-size:17px}
.st-s.on .st-b{color:#fff}.st-s.on .st-b i{background:#fff}
.st-s.done .st-b{background:#F1F6FF}
.st-c h3{font-size:clamp(32px,4vw,56px);color:var(--hf)}
/* expediente */
.exp-stack{max-width:760px;aspect-ratio:1/1.02}
.exp-sheet{box-shadow:0 34px 60px -28px rgba(24,60,140,.45),0 0 0 1px rgba(42,98,214,.12);padding:clamp(26px,4vw,48px) clamp(24px,4vw,52px)}
.exp-sheet header{border-bottom-color:rgba(42,98,214,.2)}
.exp-sheet header b{font-size:clamp(20px,2.4vw,27px)}
.exp-sheet header small{color:#7684A0}
.exp-sheet h5{font-size:clamp(15px,1.6vw,18px);color:#12203C}
.ln i{background:rgba(42,98,214,.12)}
.exp-sheet[data-s=past]{filter:brightness(calc(1 - var(--a)*.05)) saturate(.9)}
.exp-sheet footer span{border-top-color:rgba(42,98,214,.5)}
.exp-stack{transition:transform .35s cubic-bezier(.2,.7,.2,1);transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
.exp-n.on{color:var(--hb)}
@media (min-width:900px){.pz-exp{grid-template-columns:260px minmax(0,1fr)}}

/* ================= contrato: pergamino digital ================= */
.pz-bar{background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--ln2);padding-top:16px;padding-bottom:14px;margin-top:-16px}
.pz-modes{gap:10px}
.pz-sep{display:none}
.pz-m{padding:11px 22px;border:1px solid var(--ln);border-radius:999px;font-size:15px;color:var(--hf);background:#fff;transition:background .3s,color .3s,border-color .3s,transform .3s}
.pz-m::after{display:none}
.pz-m:hover{border-color:var(--hb);transform:translateY(-1px)}
.pz-m.on{background:var(--hb);color:#fff;border-color:var(--hb)}
.pz-lead{color:var(--hf);font-size:clamp(17px,1.6vw,20px)}
.pz-vers{background:#fff}
.pz-vers button{color:var(--hf)}
.pz[data-ver=ini] [data-v=ini],.pz[data-ver=chg] [data-v=chg],.pz[data-ver=fin] [data-v=fin]{background:var(--hb);color:#fff}
.pz-replay{color:var(--hb)}
.pz-wrap{filter:none;max-width:980px}
@media (min-width:1180px){.pz-wrap{max-width:1300px;padding-right:392px}}
.pz-scroll{position:relative;margin:0 22px;--rh:18px}
.sc-sheet{display:grid;grid-template-rows:1fr;transition:grid-template-rows 2.2s cubic-bezier(.6,.05,.25,1);position:relative;z-index:1}
.sc-in{min-height:0}
.pz-scroll.sc-run .sc-in{overflow:hidden}
.pz-scroll.sc-closed .sc-sheet{grid-template-rows:0fr}
.sc-roll{display:block;position:relative;z-index:4;height:var(--rh);border-radius:999px;
 background:linear-gradient(180deg,#fff 0,#E4EEFD 40%,#BCD3F7 100%);
 box-shadow:0 0 0 1px rgba(42,98,214,.28),0 16px 34px -8px rgba(42,98,214,.45),inset 0 1px 0 #fff}
.sc-roll::before,.sc-roll::after{content:"";position:absolute;top:50%;width:38px;height:38px;margin-top:-19px;border-radius:50%;
 background:radial-gradient(circle at 50% 50%,#2A62D6 0 3px,transparent 3.5px),repeating-radial-gradient(circle at 50% 50%,rgba(42,98,214,.5) 0 1px,rgba(235,243,255,.95) 1px 4.5px);
 box-shadow:0 0 0 1.5px rgba(42,98,214,.55),0 8px 18px -6px rgba(42,98,214,.55)}
.sc-roll::before{left:-19px}.sc-roll::after{right:-19px}
.sc-top{margin-bottom:-6px}.sc-bot{margin-top:-6px}
.pz-scroll .pz-doc{position:relative;background:linear-gradient(180deg,rgba(42,98,214,.07) 0,rgba(255,255,255,0) 220px),linear-gradient(90deg,rgba(42,98,214,.08) 0,rgba(255,255,255,0) 4%,rgba(255,255,255,0) 96%,rgba(42,98,214,.08) 100%),#fff;
 color:var(--ink);box-shadow:0 50px 90px -40px rgba(24,60,140,.5),0 0 0 1px rgba(42,98,214,.12);margin:0 clamp(8px,1.6vw,20px);
 padding:clamp(54px,6vw,92px) clamp(24px,5vw,72px) clamp(110px,12vw,190px) clamp(36px,8vw,112px);min-height:clamp(980px,128vh,1760px)}
.pz-scroll .pz-doc::before{content:"";position:absolute;inset:0 auto 0 clamp(18px,5vw,64px);width:1px;border:0;background:linear-gradient(180deg,transparent,rgba(42,98,214,.3) 10%,rgba(42,98,214,.3) 90%,transparent)}
.pz-scroll .pz-doc::after{content:"";position:absolute;right:clamp(14px,2vw,26px);top:34px;width:9px;height:9px;border-radius:50%;background:var(--hb);box-shadow:0 0 0 5px rgba(42,98,214,.14)}
.doc-h{border-bottom-color:rgba(42,98,214,.2);padding-bottom:30px;margin-bottom:22px}
.doc-h small{color:var(--hb);font-weight:600}
.doc-h h2{font-size:clamp(22px,2.7vw,31px)}
.doc-h p{color:#44506A;font-size:17px}
.cl{padding:26px 24px 26px 30px;margin:0 -10px}
.cl h4{color:#12203C;font-size:13.5px;margin-bottom:10px}
.cl-t{font-size:clamp(18px,1.55vw,21px);line-height:1.75}
.cl.on{background:rgba(42,98,214,.065)}
.cl-bar{top:20px;bottom:20px;background:var(--hb)}
.pz[data-mode=rev] mark.mk{background:linear-gradient(transparent 14%,rgba(60,140,255,.26) 14%,rgba(60,140,255,.26) 92%,transparent 92%)}
.cl-dot{width:11px;height:11px;top:26px;right:12px}
.pz[data-mode=rev] .cl[data-has~=rev]:not(.on) .cl-dot,.pz[data-mode=inc] .cl[data-has~=inc]:not(.on) .cl-dot,.pz[data-mode=neg] .cl[data-has~=neg]:not(.on) .cl-dot{animation:invite 1.9s ease-out infinite}
.pz[data-mode=rev] .cl[data-has~=rev]:hover,.pz[data-mode=inc] .cl[data-has~=inc]:hover,.pz[data-mode=neg] .cl[data-has~=neg]:hover{background:rgba(42,98,214,.05)}
.cl-t ins{color:#1D4FB8}
.doc-f{margin-top:96px;gap:60px}
.doc-f span{border-top-color:rgba(18,32,60,.55);font-size:12.5px}
.nt{background:#fff;border:1px solid rgba(42,98,214,.16);border-left:3px solid var(--hb);box-shadow:0 22px 44px -22px rgba(24,60,140,.5);padding:16px 18px 18px}
.nt small,.nv small{color:var(--hb)}
.nt p,.nv p{font-size:15.5px;color:#26324F}
.cl-notes{width:350px!important}
@media (min-width:1180px){.cl-notes{left:calc(100% + 56px)!important}.cl.on .cl-notes::before{width:56px!important}}
.pzc li::before{border-color:#9DB4DD;background:#fff}
.pzc li::after{background:#CBD9F2}
.pzc li.cur::before{background:var(--hb);border-color:var(--hb)}
.pzc li.past::before{background:var(--hb);border-color:var(--hb)}
.pzc em{color:var(--hb)}
.pzc span{color:#26324F}
@media (max-width:899px){.pz-scroll{--rh:16px;margin:0 16px}.pz-m{padding:9px 16px;font-size:14px}.pz-scroll .pz-doc{min-height:0;padding:44px 22px 90px 34px}.pz-scroll .pz-doc::before{left:18px}}
@media (max-width:560px){.pz-in{padding-left:16px;padding-right:16px}.pz-arrows [data-next] span{display:inline}}
.pz-arrows [data-next]{width:auto;min-width:0;height:52px}
.pz-arrows [data-prev]{width:52px}
@media (min-width:960px){.pz-rg{gap:140px}.rg-ring{width:min(100%,500px)}}
.sc-sheet{grid-template-columns:minmax(0,1fr)}
.sc-in{min-width:0}
.pz-doc,.pz-wrap,.pz-scroll{min-width:0}
@media (max-width:899px){.exp-n.on{color:#fff!important}.cl-t{overflow-wrap:anywhere}}
@media (max-width:560px){.pz-doc-x{margin:0 -8px}.pz-scroll{margin:0 12px}.pz-scroll .pz-doc{margin:0 4px;padding:40px 14px 80px 26px}.pz-scroll .pz-doc::before{left:12px}.cl{padding:20px 10px 20px 12px;margin:0 -4px}.cl-t{font-size:17.5px}.pz-bar{margin-left:-8px;margin-right:-8px}}
@media (max-width:1179px){.cl-notes{width:auto!important;left:auto!important}}

/* ===== v21 · pergamino compacto, paleta «ángel digital» (solo Contratos) ===== */
.pz-sec:has(.pz-doc-x){background:radial-gradient(95% 62% at 50% 40%,#fff 0,#EEF4FF 55%,#F2EEFF 100%)!important}
.pz-doc-x .pz-bar{background:rgba(246,249,255,.84);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom-color:rgba(150,182,240,.45)}
.pz-doc-x .pz-m.on{background:#fff;color:var(--hb);border-color:rgba(130,168,240,.95);box-shadow:0 0 0 3px rgba(170,200,255,.28),0 0 20px rgba(160,196,255,.75)}
.pz-doc-x .pz-m{border-color:rgba(150,182,240,.5);background:rgba(255,255,255,.55)}
.pz-doc-x .pz-vers{border-color:rgba(150,182,240,.5);background:rgba(255,255,255,.7)}
.pz-doc-x .pz-scroll{--rh:16px;isolation:isolate}
.pz-doc-x .pz-scroll::before{content:"";position:absolute;inset:-6% -5%;z-index:-1;pointer-events:none;background:radial-gradient(55% 50% at 50% 48%,rgba(160,196,255,.55),rgba(214,204,255,.3) 55%,transparent 76%);filter:blur(28px);animation:aHalo 8s ease-in-out infinite alternate}
@keyframes aHalo{from{opacity:.65;transform:scale(.98)}to{opacity:1;transform:scale(1.02)}}
.pz-doc-x .sc-roll{background:linear-gradient(180deg,#fff 0,#F6F9FF 40%,#E3EBFF 78%,#EEE8FF 100%);box-shadow:0 0 0 1px rgba(150,182,240,.65),0 14px 34px -10px rgba(110,150,235,.5),0 0 24px rgba(190,210,255,.8),inset 0 1px 0 #fff}
.pz-doc-x .sc-roll::before,.pz-doc-x .sc-roll::after{background:radial-gradient(circle at 50% 50%,#7FA6F2 0 3px,transparent 3.5px),repeating-radial-gradient(circle at 50% 50%,rgba(150,182,240,.55) 0 1px,rgba(250,252,255,.98) 1px 4.5px);box-shadow:0 0 0 1.5px rgba(150,182,240,.75),0 0 18px rgba(190,210,255,.95)}
.pz-doc-x .pz-scroll .pz-doc{background:linear-gradient(115deg,transparent 30%,rgba(190,214,255,.36) 46%,rgba(234,224,255,.34) 56%,transparent 72%) 100% 0/260% 100% no-repeat,linear-gradient(180deg,rgba(255,255,255,.95),rgba(247,250,255,.88));
 -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 40px 80px -46px rgba(100,140,230,.55),0 0 0 1px rgba(160,190,245,.55),0 0 42px rgba(200,216,255,.55);animation:aSheen 12s ease-in-out infinite;
 min-height:0;padding:clamp(36px,4vw,54px) clamp(24px,5vw,72px) clamp(40px,4.4vw,56px) clamp(36px,8vw,112px)}
@keyframes aSheen{0%,100%{background-position:100% 0,0 0}50%{background-position:0 0,0 0}}
.pz-doc-x .pz-scroll .pz-doc::before{background:linear-gradient(180deg,transparent,rgba(127,166,242,.5) 10%,rgba(127,166,242,.5) 90%,transparent)}
.pz-doc-x .pz-scroll .pz-doc::after{background:#7FA6F2;box-shadow:0 0 0 5px rgba(127,166,242,.2),0 0 16px rgba(160,196,255,.95)}
.pz-doc-x .doc-h{padding-bottom:16px;margin-bottom:8px;border-bottom-color:rgba(150,182,240,.5)}
.pz-doc-x .doc-h h2{margin:8px 0 10px}
.pz-doc-x .doc-h p{font-size:16px;line-height:1.5}
.pz-doc-x .cl{padding:15px 22px 15px 28px}
.pz-doc-x .cl h4{margin-bottom:6px}
.pz-doc-x .cl-t{font-size:clamp(17px,1.4vw,19px);line-height:1.58}
.pz-doc-x .cl-bar{top:12px;bottom:12px}
.pz-doc-x .cl-dot{top:19px}
.pz-doc-x .cl.on{background:linear-gradient(90deg,rgba(150,190,255,.2),rgba(232,224,255,.1))}
.pz-doc-x .doc-f{margin-top:36px}
.pz[data-mode=rev] .pz-doc-x mark.mk,.pz-doc-x[data-mode=rev] mark.mk{background:linear-gradient(transparent 14%,rgba(120,170,255,.3) 14%,rgba(120,170,255,.3) 92%,transparent 92%)}
.pz-doc-x .nt{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-color:rgba(160,190,245,.6);box-shadow:0 22px 44px -24px rgba(100,140,230,.6),0 0 30px rgba(200,216,255,.55)}
@media (max-width:899px){.pz-doc-x .pz-scroll .pz-doc{padding:34px 20px 48px 34px}}
@media (prefers-reduced-motion:reduce){.pz-doc-x .pz-scroll::before,.pz-doc-x .pz-scroll .pz-doc{animation:none}}

/* ===== v24 · pergamino digital (Contratos), versión clara ===== */
.pz-sec:has(.pz-doc-x) .pz-in{padding-top:clamp(24px,3vw,40px);padding-bottom:clamp(40px,4vw,64px)}
@media (min-width:1024px){.pz-sec:has(.pz-doc-x) .pz-in{padding-top:30px;padding-bottom:56px}}
.pz-doc-x .pz-bar{position:static;margin-bottom:4px}
.pz-doc-x .pz-wrap{max-width:1160px;margin:0 auto}
@media (min-width:1180px){.pz-doc-x .pz-wrap{padding-right:340px}}
.pz-doc-x .pz-scroll{width:min(640px,100%);margin:0 auto;isolation:auto;--rh:auto}
.pz-doc-x .pz-scroll::before{display:none}
.pz-doc-x .sc-roll{display:block;height:auto;border-radius:0;box-shadow:none;background-color:transparent;background-position:center;background-size:100% 100%;background-repeat:no-repeat;mix-blend-mode:multiply;pointer-events:none;position:relative;z-index:4}
.pz-doc-x .sc-roll::before,.pz-doc-x .sc-roll::after{display:none!important}
.pz-doc-x .sc-top{aspect-ratio:1000/215;background-image:url(img/img-9e02bd26.webp)}
.pz-doc-x .sc-bot{aspect-ratio:1000/200;background-image:url(img/img-8e0ed22f.webp)}
.pz-doc-x .sc-sheet{margin:-26px 10% -30px 10.6%;position:relative}
.pz-doc-x .sc-sheet::before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(0deg,rgba(90,140,230,.05) 0 1px,transparent 1px 26px),linear-gradient(180deg,#EEF4FF 0,#F8FAFF 30%,#F4F8FF 70%,#EAF1FE 100%);box-shadow:inset 1px 0 0 rgba(110,160,235,.75),inset -1px 0 0 rgba(110,160,235,.55),inset 18px 0 26px -20px rgba(110,160,240,.6),inset -18px 0 26px -20px rgba(110,160,240,.45);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 34px,#000 calc(100% - 38px),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 34px,#000 calc(100% - 38px),transparent 100%)}
.pz-doc-x .pz-scroll .pz-doc{background:none!important;border:0;box-shadow:none;animation:none;min-height:0;padding:34px 22px 24px 30px}
.pz-doc-x .pz-scroll .pz-doc::before,.pz-doc-x .pz-scroll .pz-doc::after{display:none}
.pz-doc-x .doc-h{text-align:center;padding:0 0 12px;margin:0 0 4px;border-bottom:1px solid rgba(110,160,235,.5)}
.pz-doc-x .doc-h small{font-size:10.5px;letter-spacing:.24em}
.pz-doc-x .doc-h h2{margin:6px 0 0;font-size:clamp(24px,2.6vw,32px);letter-spacing:.12em;font-weight:400}
.pz-doc-x .doc-h p{display:none}
.pz-doc-x .cl{padding:9px 14px 9px 22px}
.pz-doc-x .cl h4{margin:0 0 4px;font-size:11.5px;letter-spacing:.16em}
.pz-doc-x .cl-t{font-size:clamp(14px,1.08vw,15.5px);line-height:1.46;text-align:left;hyphens:none}
.pz-doc-x .cl-bar{top:10px;bottom:10px}
.pz-doc-x .cl-dot{top:15px}
.pz-doc-x .doc-f{display:none}
@media (max-width:899px){.pz-doc-x .pz-scroll .pz-doc{padding:34px 6px 18px 12px}.pz-doc-x .cl{padding:9px 6px 9px 12px}.pz-doc-x .sc-sheet{margin-left:9.6%;margin-right:9%}}

/* ================= v93 · LITIGIOS: mazo y escalera procesal ================= */
.pz-lt{display:grid;gap:clamp(34px,4vw,56px)}
.lt-top{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center}
@media(min-width:900px){.lt-top{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:clamp(40px,5vw,84px)}}
.lt-stage{position:relative;overflow:hidden;border:1px solid rgba(42,98,214,.3);padding:clamp(34px,4vw,50px) clamp(14px,2.4vw,30px) 8px;
 background:radial-gradient(120% 90% at 50% 0,#FAFCFF 0,#DCE8FA 52%,#BCD0F0 100%);box-shadow:0 46px 80px -50px rgba(18,50,120,.7),inset 0 0 0 1px rgba(255,255,255,.7)}
.lt-stage::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(42,98,214,.09) 1px,transparent 1px) 0 0/38px 38px,linear-gradient(90deg,rgba(42,98,214,.09) 1px,transparent 1px) 0 0/38px 38px;-webkit-mask-image:radial-gradient(75% 75% at 50% 55%,#000,transparent);mask-image:radial-gradient(75% 75% at 50% 55%,#000,transparent)}
.lt-cap{position:absolute;right:clamp(16px,2vw,26px);top:clamp(14px,1.8vw,22px);flex-direction:column;align-items:flex-end;gap:2px!important;display:flex;align-items:baseline;gap:12px;z-index:2}
.lt-cap small{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#2A62D6;font-weight:600}
.lt-cap b{font-family:var(--serif,Georgia,serif);font-weight:400;font-size:clamp(30px,3.2vw,42px);line-height:1;color:#12203C}
.gv{display:block;width:100%;height:auto;overflow:visible;position:relative;z-index:1;filter:drop-shadow(0 18px 22px rgba(18,50,120,.22))}
.gv-g{transform-origin:430px 212px}
.gv-w,.gv-sp{opacity:0;transform-box:view-box;transform-origin:200px 262px}
.gv-sp{transform-origin:200px 252px}
.gv-ring{animation:gvDash 26s linear infinite}
@keyframes gvDash{to{stroke-dashoffset:-200}}
.gv.hit .gv-g{animation:gvSwing 1.3s both}
.gv.hit .gv-w{animation:gvW 1.05s .6s ease-out both}
.gv.hit .gv-w2{animation-delay:.76s}
.gv.hit .gv-sp{animation:gvSp .55s .6s ease-out both}
.gv.hit .gv-bl{animation:gvTh .45s .6s ease-out}
@keyframes gvSwing{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,.7,.3,1)}26%{transform:rotate(30deg);animation-timing-function:cubic-bezier(.6,0,.9,.45)}46%{transform:rotate(0)}52%{transform:rotate(6deg);animation-timing-function:ease-in}60%,100%{transform:rotate(0)}}
@keyframes gvW{0%{opacity:.85;transform:scale(.45)}100%{opacity:0;transform:scale(2.5)}}
@keyframes gvSp{0%{opacity:1;transform:scale(.6)}100%{opacity:0;transform:scale(1.4)}}
@keyframes gvTh{0%,100%{transform:translateY(0)}35%{transform:translateY(3px)}}
/* bucle (tarjeta de Inicio) */
.lpc-card.is-c .gv--loop .gv-g{animation:gvLoopG 4.4s infinite both}
.lpc-card.is-c .gv--loop .gv-w{animation:gvLoopW 4.4s infinite both}
.lpc-card.is-c .gv--loop .gv-w2{animation-delay:.18s}
.lpc-card.is-c .gv--loop .gv-sp{animation:gvLoopS 4.4s infinite both}
.lpc-card.is-c .gv--loop .gv-bl{animation:gvLoopT 4.4s infinite both}
@keyframes gvLoopG{0%,12%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,.7,.3,1)}32%{transform:rotate(30deg)}40%{transform:rotate(30deg);animation-timing-function:cubic-bezier(.6,0,.9,.45)}50%{transform:rotate(0)}54%{transform:rotate(6deg);animation-timing-function:ease-in}58%,100%{transform:rotate(0)}}
@keyframes gvLoopW{0%,49%{opacity:0;transform:scale(.45)}50%{opacity:.85;transform:scale(.45)}72%,100%{opacity:0;transform:scale(2.5)}}
@keyframes gvLoopS{0%,49%{opacity:0;transform:scale(.6)}50%{opacity:1;transform:scale(.6)}62%,100%{opacity:0;transform:scale(1.4)}}
@keyframes gvLoopT{0%,49%,60%,100%{transform:translateY(0)}54%{transform:translateY(3px)}}
@media(prefers-reduced-motion:reduce){.gv *{animation:none!important}}

.lt-detail{min-width:0}
.lt-detail .pz-p h3{font-size:clamp(30px,3.6vw,52px)}
.lt-tx{margin:18px 0 0;max-width:46ch;font-size:clamp(16px,1.35vw,19px);line-height:1.6;color:#12203C}
.lt-act{display:flex;gap:12px;align-items:flex-start;margin:26px 0 0;padding-top:18px;border-top:1px solid var(--ln);max-width:46ch;font-family:var(--serifd);font-style:italic;font-size:17px;line-height:1.45;color:var(--mut)}
.lt-act i{flex:none;width:9px;height:9px;margin-top:8px;background:var(--hb);transform:rotate(45deg)}
.pz-lt .pz-arrows{margin-top:0}

.lt-steps{position:relative;display:grid;grid-template-columns:repeat(var(--n,7),minmax(0,1fr));align-items:end;gap:6px;padding-bottom:6px}
.lt-steps::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:#16294A}
.lt-n{--h:calc(70px + var(--k)*clamp(12px,2.2vw,30px));position:relative;height:var(--h);margin-bottom:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:7px;padding:12px clamp(8px,1.1vw,14px) 14px;text-align:left;color:#12203C;
 background:linear-gradient(180deg,#F7FAFF 0,#E3ECFB 100%);border:1px solid rgba(42,98,214,.3);border-bottom:0;overflow:hidden;
 transition:background .45s,color .35s,transform .35s,box-shadow .35s}
.lt-n::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--hb);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.lt-n b{font-family:var(--serif,Georgia,serif);font-weight:400;font-size:clamp(20px,2.2vw,30px);line-height:1;color:#2A62D6;transition:color .35s}
.lt-n span{font-size:clamp(11.5px,1.05vw,14.5px);line-height:1.22;text-wrap:balance}
.lt-n:hover{transform:translateY(-4px);box-shadow:0 18px 30px -22px rgba(18,50,120,.7)}
.lt-n.done{background:linear-gradient(180deg,#E6EEFC 0,#C8D9F4 100%)}
.lt-n.done::before{transform:scaleX(1);background:#7FA2DD}
.lt-n.on{background:linear-gradient(180deg,#2A62D6 0,#16294A 100%);color:#fff;transform:translateY(-6px);box-shadow:0 26px 40px -24px rgba(18,50,120,.85)}
.lt-n.on b{color:#fff}
.lt-n.on::before{transform:scaleX(1);background:#E2C792}
.lt-n.invite{animation:none}
.lt-n:focus-visible{outline:2px solid #2A62D6;outline-offset:3px}
@media(max-width:699px){
 .lt-steps{gap:4px}
 .lt-n{--h:calc(56px + var(--k)*13px);padding:8px 0 10px;align-items:center}
 .lt-n span{display:none}
 .lt-n b{font-size:20px}
}

.gv-hud{filter:drop-shadow(0 0 3px rgba(42,98,214,.25))}
.gv.hit .gv-hud{animation:gvHud 1.1s .6s ease-out}
@keyframes gvHud{0%{filter:drop-shadow(0 0 10px rgba(42,98,214,.95))}100%{filter:drop-shadow(0 0 3px rgba(42,98,214,.25))}}
.lpc-card.is-c .gv--loop .gv-hud{animation:gvHudL 4.4s infinite both}
@keyframes gvHudL{0%,49%{filter:drop-shadow(0 0 3px rgba(42,98,214,.25))}52%{filter:drop-shadow(0 0 10px rgba(42,98,214,.95))}75%,100%{filter:drop-shadow(0 0 3px rgba(42,98,214,.25))}}

.lt-flag{display:inline-flex;align-items:center;gap:10px;margin:18px 0 0;padding:7px 14px 7px 12px;border:1px dashed #2A62D6;background:rgba(42,98,214,.07);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:#2A62D6}
.lt-flag i{width:8px;height:8px;background:#2A62D6;transform:rotate(45deg)}
.lt-fl{position:absolute;left:clamp(8px,1.1vw,14px);top:12px;font-style:normal;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:#2A62D6;border:1px dashed #2A62D6;padding:2px 6px;background:rgba(255,255,255,.6)}
.lt-n.on .lt-fl{color:#fff;border-color:rgba(255,255,255,.7);background:transparent}
@media(max-width:699px){.lt-fl{display:none}}
@media(min-width:700px) and (max-width:1100px){.lt-fl{font-size:8.5px;letter-spacing:.06em}}

/* ===== v95 · mazo digital (imagen) ===== */
.lt-stage{aspect-ratio:1105/1170;padding:0!important;background:radial-gradient(120% 90% at 50% 0,#EEF2FA 0,#D8E1F1 55%,#C2D0E8 100%)!important}
.gv.gm-wrap{position:absolute;inset:0;z-index:auto;filter:none;width:auto;height:auto;overflow:visible}
.gm{position:absolute;inset:0;mix-blend-mode:multiply;isolation:isolate;background:#fff;filter:saturate(.62) contrast(.97)}
.gm i{position:absolute;inset:0;mix-blend-mode:multiply;background-size:100% 100%;background-repeat:no-repeat}
.gm-b{background-image:var(--mz-b)}
.gm-g{background-image:var(--mz-g);transform-origin:93.4% 72.7%}
.gm-hud{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.gm-hud .gv-w{transform-origin:390px 905px}
.gv.hit .gm-g{animation:gmSwing 1.3s both}
@keyframes gmSwing{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.2,.7,.3,1)}26%{transform:rotate(16deg);animation-timing-function:cubic-bezier(.6,0,.9,.45)}46%{transform:rotate(0)}52%{transform:rotate(-1.6deg);animation-timing-function:ease-in}60%,100%{transform:rotate(0)}}
@media(prefers-reduced-motion:reduce){.gm-g{animation:none!important}}

/* v97 · mazo sin contorno, minimalista */
.lt-stage{border:0!important;box-shadow:none!important;background:none!important}
.lt-stage::before{display:none!important}
.gm{filter:saturate(.62)}

.lt-n .lt-d{display:block;width:12px;height:12px;border:2px solid #2A62D6;transform:rotate(45deg);margin:0 0 4px 3px;transition:background .35s,border-color .35s}
.lt-n.done .lt-d{background:#7FA2DD;border-color:#7FA2DD}
.lt-n.on .lt-d{background:#E2C792;border-color:#E2C792}
@media(max-width:699px){.lt-n .lt-d{margin:0 0 6px}}
.gm{-webkit-mask-image:linear-gradient(#000 90%,transparent);mask-image:linear-gradient(#000 90%,transparent)}

/* v99b · árbol genealógico ordenado */
.ft-map{aspect-ratio:1.2/1!important;max-width:640px!important}
@media(max-width:560px){.ft-map{aspect-ratio:1/1.15!important}}
.ft-l{stroke-linejoin:round}
.ft-l.hot{stroke-width:2.6}
:root{--mz-g:url(img/img-da7bf860.webp);--mz-b:url(img/img-6a5ef984.webp)}
:root{
--ar-contratos:url(img/img-3cb53d63.webp);
--ar-derecho-societario:url(img/img-877e009f.webp);
--ar-litigios:url(img/img-b68b6380.webp);
--ar-contratacion-estatal:url(img/img-cbaa8dca.webp);
--ar-derecho-de-familia:url(img/img-1fdf6fe7.webp);
--ar-derecho-administrativo:url(img/img-aaae04f5.webp);
--ar-acciones-constitucionales:url(img/img-9ff51f0a.webp);
--ar-proteccion-al-consumidor:url(img/img-e285e1c2.webp);
--ar-datos-personales:url(img/img-e1a6ad61.webp);
--ar-marcas-y-derecho-de-autor:url(img/img-badb9fef.webp);
}
:root{--i-final-scene:url(img/final-scene-f24271db.webp)}
:root{--nos-pic:url(img/img-0fc755db.webp);--nos-ar:1444/246}
:root{--ph-eg:url(img/img-1025fd34.webp);--ph-sl:url(img/img-ab02a7a1.webp);--ph-lf:url(img/img-32e81175.webp)}
.ph-sl{background-image:var(--ph-sl)}.ph-lf{background-image:var(--ph-lf)}

.ph-eg{background-image:var(--ph-eg)}
/* ===== Portada (réplica del sitio oficial) ===== */
.lp-hero{position:relative;height:calc(100svh - 78px);min-height:520px;max-height:940px;overflow:hidden;background:linear-gradient(180deg,#6c78b8 0,#b98aa8 30%,#e79c86 55%,#f2c9a2 80%,#f6dcc0 100%);isolation:isolate}
.lp-hero::before,.lp-hero::after{content:"";position:absolute;top:6%;bottom:22%;width:34%;z-index:0;opacity:.8;
  background:repeating-linear-gradient(90deg,#c9d8e8 0 30px,#dbe6f2 30px 36px),#c9d8e8;-webkit-mask-image:linear-gradient(90deg,#000 0,#000 40%,transparent);mask-image:linear-gradient(90deg,#000 0,#000 40%,transparent)}
.lp-hero::before{left:0}.lp-hero::after{right:0;transform:scaleX(-1)}
.lp-scene-wrap{position:absolute;inset:0;z-index:1;background:url(img/img-75f63255.webp) center 60%/cover no-repeat}@media(max-aspect-ratio:1/1){.lp-scene-wrap{background-image:url(img/img-f18d6570.webp);background-position:center}}
.lp-scene-wrap::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,0) 62%,rgba(30,40,80,.18) 100%)}
#lp-scene{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity 1s}
#lp-scene.is-ready{opacity:1}
.lp-hero__name{position:absolute;z-index:2;left:0;right:0;top:50%;transform:translateY(-58%);text-align:center;pointer-events:none;padding:0 16px}
.lp-hero__name h1{position:relative;margin:0 auto;width:fit-content;font-size:0;line-height:0;padding:clamp(28px,4vw,56px) clamp(36px,6vw,90px)}
.lp-hero__name h1::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 50% 50% at 50% 50%,rgba(255,255,255,.62) 0,rgba(255,255,255,.5) 45%,rgba(255,255,255,0) 100%)}
.lp-hero__name .logo{width:clamp(290px,46vw,720px);margin:0 auto;filter:drop-shadow(0 0 3px rgba(255,255,255,.95)) drop-shadow(0 0 16px rgba(255,255,255,.85));--logo-main:#2B5A94;--logo-sub:#3A68A0;--lw:1.7px;--lw2:1.1px;--lw3:3px;animation:lpReveal 1.9s cubic-bezier(.22,.61,.21,1) .2s both}
@keyframes lpReveal{from{clip-path:inset(0 100% 0 0);opacity:0}to{clip-path:inset(0 0 0 0);opacity:1}}
@media(prefers-reduced-motion:reduce){.lp-hero__name .logo{animation:none}}
@keyframes lpIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.lp-cue{position:absolute;z-index:2;left:0;right:0;bottom:clamp(24px,6vh,70px);display:flex;justify-content:center}
.lp-cue a{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;color:var(--navy);filter:drop-shadow(0 0 8px rgba(255,255,255,.8))}
.lp-cue svg{width:36px;height:20px;animation:lpBob 2.8s ease-in-out infinite}
@keyframes lpBob{0%,100%{transform:translateY(0);opacity:.55}50%{transform:translateY(8px);opacity:1}}
@media(prefers-reduced-motion:reduce){.lp-cue svg{animation:none}}

.lp-svc{position:relative;padding:76px 0 72px;background:var(--paper);color:var(--navy)}
.lp-svc__inner{max-width:1180px;margin:0 auto;padding:0 40px}
.lp-svc .lp-h2{color:var(--navy)}
.lp-svc .lp-rule{background:var(--brass);opacity:1;margin-bottom:56px}
.lp-svc .lp-rule{margin-bottom:40px}
/* Servicios en secuencia: aparece uno, desaparece y sigue el siguiente */
.svx{--st:clamp(0px,2.3vw,30px)}
.svx-stage{display:grid;min-height:clamp(230px,22vw,270px);border-top:1px solid rgba(38,57,92,.22)}
.svx-i{grid-area:1/1;align-self:center;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(28px,5vw,72px);align-items:center;padding:30px 0 26px;color:var(--navy);visibility:hidden;transition:visibility 0s .45s}
.svx-i.on{visibility:visible;transition-delay:0s}
.svx-txt>*,.svx-ph{display:block;opacity:0;transform:translateY(20px);transition:opacity .4s ease,transform .4s ease}
.svx-i.out .svx-txt>*,.svx-i.out .svx-ph{transform:translateY(-16px)}
.svx-i.on .svx-txt>*,.svx-i.on .svx-ph{opacity:1;transform:none;transition:opacity .8s cubic-bezier(.22,.61,.21,1) calc(.4s + var(--d,0s)),transform .8s cubic-bezier(.22,.61,.21,1) calc(.4s + var(--d,0s))}
.svx-t{--d:0s;font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(2.1rem,4.6vw,3.9rem);line-height:1.02;letter-spacing:.003em;max-width:19ch;text-wrap:balance}
.svx-d{--d:.14s;margin-top:20px;max-width:46ch;font-size:15px;line-height:1.6;color:var(--gray)}
.svx-go{--d:.28s;margin-top:26px;font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--brick)}
.svx-go i{display:inline-block;font-style:normal;margin-left:10px;transition:transform .5s cubic-bezier(.22,.61,.21,1)}
.svx-i:hover .svx-go i{transform:translateX(8px)}
.svx-i:focus-visible{outline:2px solid var(--navy);outline-offset:6px}
.svx-nav{display:flex;flex-wrap:wrap;gap:6px 8px;padding-top:6px}
.svx-k{position:relative;width:30px;height:20px;padding:0;border:0;background:none;cursor:pointer}
.svx-k::before{content:"";position:absolute;left:0;right:0;top:9px;height:2px;background:rgba(38,57,92,.2);transition:background .3s}
.svx-k::after{content:"";position:absolute;left:0;top:9px;height:2px;width:0;background:var(--brick)}
.svx-k:hover::before{background:rgba(38,57,92,.45)}
.svx-k.on::after{width:100%;animation:sxFill 4.6s linear both}
.svx.is-paused .svx-k.on::after{animation-play-state:paused}
@keyframes sxFill{from{width:0}to{width:100%}}
.svx-k:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
@media(max-width:860px){.lp-svc{padding:56px 0 52px}.lp-svc__inner{padding:0 22px}.svx{--st:0px}.svx-stage{min-height:300px}.svx-i{padding:28px 0 24px}.svx-k{width:22px}}
@media(prefers-reduced-motion:reduce){.svx-i,.svx-txt>*,.svx-ph{transition:none!important}.svx-k.on::after{animation:none;width:100%}}

.lp-about{background:var(--paper);padding:56px 0 64px}
.lp-about__inner{max-width:1100px;margin:0 auto;padding:0 22px;display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:48px;align-items:center}
.lp-about .lp-h2{color:var(--navy)}
.lp-about .lp-rule{background:#B7B09C;opacity:1}
.lp-about p{margin:0;max-width:62ch;font-size:15px;line-height:1.85;color:var(--gray)}
.lp-about__link{display:inline-block;margin-top:30px;padding-bottom:6px;border-bottom:1px solid var(--navy);font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--navy);transition:letter-spacing .55s cubic-bezier(.22,.61,.21,1),color .4s}
.lp-about__link:hover{letter-spacing:.3em;color:var(--blue)}
.lp-seal{width:150px;height:150px;color:#B7B09C}
.lp-seal svg{width:100%;height:100%;display:block;animation:lpSpin 60s linear infinite}
.lp-seal .lp-mono{animation:none}
@keyframes lpSpin{to{transform:rotate(360deg)}}
@media(max-width:760px){.lp-about{padding:44px 0}.lp-about__inner{grid-template-columns:1fr;gap:34px}.lp-seal{order:-1;width:104px;height:104px}}

.lp-contact{background:var(--paper);padding:56px 0 52px}
.lp-contact__inner{max-width:1180px;margin:0 auto;padding:0 22px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px}
.lp-contact .lp-h2{color:var(--navy);font-size:clamp(2.1rem,3.4vw,3rem)}
.lp-contact p{margin:14px 0 0;max-width:30ch;font-size:14px;line-height:1.8;color:var(--gray)}
.lp-form{display:flex;flex-direction:column;gap:6px}
.lp-form label{display:block;position:relative;border-bottom:1px solid var(--hair);padding:20px 0 8px}
.lp-form label span{position:absolute;left:0;top:22px;font-size:13px;color:var(--gray);pointer-events:none;transition:all .25s}
.lp-form input,.lp-form select,.lp-form textarea{width:100%;border:0;background:none;padding:6px 0;font:inherit;font-size:15px;color:var(--navy);outline:0;resize:vertical}
.lp-form label:focus-within{border-bottom-color:var(--navy)}
.lp-form label.has span,.lp-form label:focus-within span{top:2px;font-size:11px;letter-spacing:.08em}
.lp-form select{appearance:none;-webkit-appearance:none;cursor:pointer}
.lp-form textarea{min-height:92px}
.lp-send{align-self:flex-start;margin-top:22px;display:inline-flex;align-items:center;gap:18px;background:var(--navy);color:#fff;padding:14px 8px 14px 20px;border-radius:3px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;transition:transform .5s cubic-bezier(.22,.61,.21,1),box-shadow .5s}
.lp-send i{display:grid;place-items:center;width:30px;height:30px;background:#fff;color:var(--navy);border-radius:2px}
.lp-send i .ic{font-size:17px}
.lp-send:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(38,57,92,.2)}
.lp-note{margin:10px 0 0!important;font-size:12px!important;color:var(--soft)!important;max-width:none!important}
@media(max-width:860px){.lp-contact{padding:44px 0 40px}.lp-contact__inner{grid-template-columns:1fr;gap:34px}}

.lp-cta{color:#fff;text-align:center;padding:92px 0;background:radial-gradient(60% 70% at 50% 0,rgba(255,255,255,.12),transparent 70%),linear-gradient(180deg,#26395C,#1B2B49)}
.lp-cta .lp-h2{font-size:clamp(2rem,4vw,3.2rem)}
.lp-cta p{margin:20px auto 32px;max-width:44ch;padding:0 22px;color:rgba(255,255,255,.78);line-height:1.7}

.lp-where{position:absolute;z-index:2;left:0;right:0;bottom:clamp(76px,13vh,130px);margin:0;padding:0 16px;text-align:center;font-size:11px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:rgba(38,57,92,.78);text-shadow:0 0 12px rgba(255,255,255,.8)}
@media(max-width:560px){.lp-where{letter-spacing:.16em;font-size:10px}}

/* ---------- Logotipo: un mismo signo, distinto estilo según la sección ---------- */
.lg-a{--logo-main:#2F5FA3;--logo-sub:#4472B4}
.lg-a.dk{--logo-main:#fff;--logo-sub:#C3D6F5}
.lg-b{--logo-main:#2F67B0;--logo-sub:#A5503B}
.lg-b.dk{--logo-main:#fff;--logo-sub:#E8BDB0}
.lg-c{--logo-main:#A34A38;--logo-sub:#26395C}
.lg-c.dk{--logo-main:#fff;--logo-sub:#A5BCE3}
.lg-d{--logo-main:#20707A;--logo-sub:#B57A33}
.lg-d.dk{--logo-main:#fff;--logo-sub:#E6BA7C}
.lp-contact .logo{width:clamp(150px,15vw,190px);margin:0 0 20px}
.lp-cta .logo{width:clamp(180px,20vw,250px);margin:0 auto 34px}

/* Inicio: sin logo en la barra (ya está en el hero); el menú pasa a la izquierda */
.hdr.is-home .hdr-in>a:first-child{display:none}
.hdr.is-home .hdr-in{justify-content:flex-end}
@media(min-width:1024px){.hdr.is-home .hdr-in{justify-content:space-between}}

/* Logotipo con trazo más firme */
.logo{--lw:1.9px;--lw2:1.3px;--lw3:3.4px}
/* WhatsApp flotante oculto sobre el hero */
.fab-wa{transition:opacity .35s,transform .35s}
body.at-hero .fab-wa{opacity:0;pointer-events:none;transform:scale(.8)}

/* ---------- Pie compacto ---------- */
.foot-in{display:flex;flex-wrap:wrap;align-items:center;gap:14px 44px;padding:26px 22px 18px!important}
.foot .logo{width:140px}
.foot-grid{display:flex!important;flex:1 1 auto;flex-wrap:wrap;gap:10px 34px!important;justify-content:flex-end;align-items:center;margin:0!important}
.foot-grid h4,.foot-grid .cta{display:none}
.foot nav{display:flex;flex-wrap:wrap;gap:6px 24px}
.foot nav a,.foot .contact a{font-size:12px;letter-spacing:.16em}
.foot .contact{display:flex}
.copy{flex-basis:100%;margin:2px 0 0!important;padding-top:14px!important;font-size:12px!important}
@media(min-width:1024px){.foot-in{padding:28px 80px 20px!important}}
@media(max-width:700px){.foot-grid{justify-content:flex-start;flex-direction:column;align-items:flex-start}}
/* Pie de las páginas interiores */
.cta2{padding:36px 0!important}
.cta2-in p:not(.eyebrow){font-size:clamp(22px,2.6vw,32px)!important}
.pn2 a{padding-top:18px!important;padding-bottom:18px!important}

/* ---------- Páginas de servicio: color propio, sin icono ---------- */
.mh-th .cthero-in{grid-template-columns:1fr!important;padding:56px 40px 60px;max-width:1280px}
.mh-th .crumbs,.mh-th h1.disp,.mh-th .mh-s{color:var(--hf)!important}
.mh-th .crumbs{opacity:.8}
.mh-th h1.disp{font-size:clamp(38px,5.4vw,72px)!important;max-width:16ch;text-wrap:balance}
.mh-th .mh-s{opacity:.88}
.mh-th .ctbtn{background:var(--hb);color:var(--hbf)!important}
.mh-th .ctbtn:hover{box-shadow:0 10px 24px rgba(0,0,0,.28)}
.view[style*="--ac"] .wkc em{color:var(--ac)}
@media(max-width:860px){.mh-th .cthero-in{padding:36px 22px 40px}}

/* ---------- Nosotros ---------- */
.nos-hero{position:relative;display:flex;align-items:center;min-height:clamp(480px,78vh,760px);overflow:hidden;background:var(--deep);color:#fff}
.nos-hero>.ph{position:absolute;inset:0;animation:kb 2.8s ease-out both}
.nos-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,18,36,.86) 0,rgba(10,18,36,.58) 55%,rgba(10,18,36,.25) 100%)}
.nos-in{position:relative;width:100%;max-width:1280px;margin:0 auto;padding:110px 22px;display:flex;flex-direction:column;gap:26px}
.nos-in h1{margin:0;max-width:15ch;font-family:var(--serif);font-weight:300;font-size:clamp(2.5rem,6.4vw,5.6rem);line-height:1.02;letter-spacing:-.015em;text-wrap:balance}
.nos-in h1 span{display:block}
.nos-in h1 span+span{font-style:italic;color:var(--brass-l)}
@media(min-width:1024px){.nos-in{padding:120px 80px}}
.nos-blk{padding:56px 0!important}
@media(min-width:1024px){.nos-blk{padding:84px 0!important}}
@media(prefers-reduced-motion:reduce){.nos-hero>.ph{animation:none}}

/* ---------- Equipo: carrusel de izquierda a derecha ---------- */
.team-blk{padding:48px 0 56px!important;overflow:hidden}
.team-mq{margin-top:26px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.team-tr{display:flex;gap:28px;width:max-content;animation:teamMq 70s linear infinite}
.team-dup{display:contents}
.team-mq:hover .team-tr{animation-play-state:paused}
@keyframes teamMq{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.team-tr .member{flex:none;width:clamp(230px,24vw,340px)}
.team-tr .mono{aspect-ratio:4/5}
.member-ph .mono{background:repeating-linear-gradient(135deg,#EDEAE2 0 10px,#E5E1D6 10px 20px);border:1px dashed #B7B09C}
.member-ph .mono svg{width:38%;fill:none;stroke:#A39A82;stroke-width:1.6;stroke-linecap:round}
.member-ph h3{color:var(--soft)!important}
@media(prefers-reduced-motion:reduce){.team-tr{animation:none}.team-mq{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.team-dup{display:none}}

/* ---------- Tarjetas temáticas (sin dibujos) ---------- */
.g6td{padding:44px 0 56px}
.cd-hint{max-width:1240px;margin:0 auto 22px;padding:0 40px;box-sizing:border-box;font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--soft)}
@media(max-width:620px){.cd-hint{padding:0 16px}}
.g6td .g6grid{gap:18px}
.cd6{position:relative;min-height:216px;overflow:hidden;border-radius:4px;background:var(--cd);color:var(--hf);isolation:isolate}
.cd-o{position:absolute;inset:0;z-index:0;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:24px 24px 24px;background:var(--hb);color:var(--hbf);clip-path:circle(0 at calc(100% - 34px) 34px);transition:clip-path .65s cubic-bezier(.22,.61,.21,1)}
.cd6.on .cd-o{clip-path:circle(150% at calc(100% - 34px) 34px)}
.cd-o b{font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.1;padding-right:44px}
.cd-o p{margin:0;font-size:14px;line-height:1.5;opacity:.95}
.cd-o em{display:block;margin-top:8px;font-style:normal;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;opacity:.8}
.cd-b{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;gap:0;width:100%;padding:24px;border:0;background:none;color:inherit;text-align:left;cursor:pointer;font:inherit}
.cd-n{position:absolute;left:24px;top:22px;font-family:var(--serif);font-style:italic;font-weight:300;font-size:30px;line-height:1;opacity:.55}
.cd-t{font-family:var(--serif);font-weight:500;font-size:clamp(22px,2vw,27px);line-height:1.1;padding-right:40px;transition:opacity .3s,transform .5s}
.cd-p{position:absolute;right:22px;top:22px;width:24px;height:24px}
.cd-p::before,.cd-p::after{content:"";position:absolute;left:3px;right:3px;top:11px;height:2px;background:currentColor;transition:transform .5s cubic-bezier(.22,.61,.21,1)}
.cd-p::after{transform:rotate(90deg)}
.cd6.on .cd-p{color:var(--hbf)}
.cd6.on .cd-p::after{transform:rotate(0)}
.cd6.on .cd-n,.cd6.on .cd-t{opacity:0}
.cd6.on .cd-t{transform:translateY(-8px)}
@media(hover:hover){.cd6:not(.on):hover .cd-t{transform:translateX(6px)}.cd6:not(.on):hover{box-shadow:0 14px 30px rgba(20,24,40,.18)}}
.cd6{transition:box-shadow .4s}
.cd-b:focus-visible{outline:2px solid var(--hb);outline-offset:-6px}
.cd6[data-n]{border:1px solid rgba(255,255,255,.06)}
@media(prefers-reduced-motion:reduce){.cd-o,.cd-p::before,.cd-p::after,.cd-t{transition:none}}

/* Encabezado de servicio centrado */
.mh-th .cthero-in{text-align:center;padding:64px 22px 68px!important}
.mh-th .cthero-in>div{display:flex;flex-direction:column;align-items:center}
.mh-th h1.disp{max-width:20ch;margin-left:auto;margin-right:auto}
.mh-th .mh-s{margin:20px auto 0;max-width:40ch}
.mh-th .crumbs{margin-bottom:26px}
@media(min-width:1024px){.mh-th .cthero-in{padding:84px 40px 88px!important}}
.nos-in h1{max-width:min(100%,1040px);font-size:clamp(2.1rem,5.2vw,4.8rem)}
.team-tr .member h3{font-size:clamp(21px,1.9vw,27px);line-height:1.15}

/* Sin numeración */
.wkn,.ix-n,.ix-capn,.cd-n,.stp-tabs b{display:none!important}
.ix-list a{grid-template-columns:minmax(0,1fr) 24px!important}
.ix-list li.on a{padding-left:0}

/* Nosotros (inicio): fotografía en lugar del sello */
.lp-about__inner{grid-template-columns:minmax(0,1fr) minmax(0,380px)!important;gap:72px!important;max-width:1180px!important;padding:0 40px!important}
.lp-about__img{position:relative;aspect-ratio:4/5;overflow:hidden;background:#16233F}
.lp-about__img .ph{position:absolute;inset:0;transform:scale(1.02)}
.lp-about__img::after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.45);pointer-events:none}
@media(max-width:760px){.lp-about__inner{grid-template-columns:1fr!important;gap:30px!important;padding:0 22px!important}.lp-about__img{order:-1;aspect-ratio:16/10}}

/* ---------- Servicios del inicio: más grandes y con flechas ---------- */
.svx-stage{min-height:clamp(300px,31vw,400px)!important}
.svx-t{font-size:clamp(2.6rem,6.2vw,5.4rem)!important;max-width:16ch!important}
.svx-d{font-size:clamp(16px,1.35vw,19px)!important;max-width:44ch!important;margin-top:24px!important}
.svx-go{font-size:13px!important;margin-top:32px!important}
.svx-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:10px}
.svx-ticks{display:flex;flex-wrap:wrap;gap:6px 8px}
.svx-ar{display:flex;gap:12px}
.svx-ar button{width:56px;height:56px;border-radius:50%;border:1px solid rgba(38,57,92,.4);background:none;color:var(--navy);display:grid;place-items:center;cursor:pointer;transition:background .3s,color .3s,border-color .3s,transform .4s cubic-bezier(.22,.61,.21,1)}
.svx-ar svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.svx-ar button:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.svx-prev:hover{transform:translateX(-3px)}.svx-next:hover{transform:translateX(3px)}
.svx-ar button:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.svx.is-manual .svx-k.on::after{animation:none;width:100%}
@media(max-width:860px){.svx-stage{min-height:340px!important}.svx-ar button{width:48px;height:48px}.svx-t{font-size:clamp(2.3rem,10vw,3.2rem)!important}}

/* ---------- Nosotros: texto ---------- */
.nos-hero{min-height:clamp(380px,62vh,580px)!important}
.nos-txt{background:var(--paper);padding:64px 0 72px}
.nos-txt-in{max-width:1100px;margin:0 auto;padding:0 22px}
.nos-p{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:12px 56px;padding:34px 0;border-top:1px solid var(--hair)}
.nos-p:last-child{border-bottom:1px solid var(--hair)}
.nos-p h2{margin:0;font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(24px,2.4vw,32px);line-height:1.15;color:var(--brass)}
.nos-p p{margin:0;max-width:62ch;font-size:16.5px;line-height:1.85;color:#34476B}
.nos-p:first-child p{font-size:18px;color:var(--navy)}
@media(min-width:1024px){.nos-txt{padding:96px 0 104px}.nos-txt-in{padding:0 80px}}
@media(max-width:760px){.nos-p{grid-template-columns:1fr;padding:26px 0}}

.lp-svc__inner{max-width:1240px!important}
.svx-txt{display:block;min-width:0}
.svx-ph{--d:.08s;display:block!important;width:100%;aspect-ratio:5/4;background-color:#16233F;clip-path:inset(0 0 0 14%);transition:opacity .4s ease,transform .4s ease,clip-path .4s ease}
.svx-i.on .svx-ph{clip-path:inset(0);transition:opacity .9s cubic-bezier(.22,.61,.21,1) .35s,transform .9s cubic-bezier(.22,.61,.21,1) .35s,clip-path 1s cubic-bezier(.22,.61,.21,1) .35s}
.svx-stage{min-height:clamp(420px,38vw,540px)!important}
.svx-t{font-size:clamp(2.3rem,4.6vw,4.1rem)!important}
@media(max-width:860px){.svx-i{grid-template-columns:1fr;gap:22px}.svx-ph{order:-1;aspect-ratio:16/10}.svx-stage{min-height:520px!important}.svx-t{font-size:clamp(2rem,9vw,2.8rem)!important}}


/* ---------- Frase sobre fotografía ---------- */
.lp-motto{position:relative;display:grid;place-items:center;min-height:clamp(440px,64vh,640px);overflow:hidden;background:#0F1B33;color:#fff;text-align:center;isolation:isolate}
.lp-motto__bg{position:absolute;inset:-8% 0;z-index:-2;will-change:transform}
.lp-motto__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,20,42,.72) 0,rgba(10,20,42,.52) 50%,rgba(10,20,42,.78) 100%)}
.lp-motto blockquote{margin:0;padding:72px 22px;max-width:1000px}
.lp-motto blockquote span{display:block;font-family:var(--serif);font-weight:300;font-size:clamp(2.1rem,5.2vw,4.6rem);line-height:1.1;letter-spacing:-.012em;text-wrap:balance;opacity:0;transform:translateY(18px);transition:opacity 1.1s cubic-bezier(.22,.61,.21,1),transform 1.1s cubic-bezier(.22,.61,.21,1)}
.lp-motto blockquote span+span{font-style:italic;color:#E2C792;transition-delay:.45s;margin-top:.15em}
.lp-motto.is-in blockquote span{opacity:1;transform:none}
.lp-motto blockquote::before{content:"";display:block;width:1px;height:44px;margin:0 auto 34px;background:rgba(226,199,146,.8)}
@media(prefers-reduced-motion:reduce){.lp-motto blockquote span{opacity:1;transform:none;transition:none}.lp-motto__bg{inset:0}}

/* ---------- Servicios (inicio): con color y presencia ---------- */
.lp-svc{--sbg:#16294A;--sfg:#fff;--sac:#C9A66B;--sbf:#16294A;background:var(--sbg)!important;color:var(--sfg)!important;padding:96px 0 84px!important;transition:background-color .9s ease,color .6s ease;overflow:hidden}
.lp-svc .lp-h2{color:var(--sfg)!important;opacity:.9;font-size:12px!important;letter-spacing:.34em;text-transform:uppercase;font-family:var(--sans);font-weight:600}
.lp-svc .lp-rule{background:var(--sac)!important;width:64px;height:3px;margin-bottom:44px!important;transition:background-color .9s}
.svx-stage{border-top:0!important;min-height:clamp(440px,40vw,580px)!important}
.svx-i{color:inherit!important;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;gap:clamp(36px,6vw,96px)!important}
.svx-t{font-size:clamp(2.9rem,6.6vw,6.2rem)!important;line-height:.98!important;max-width:11ch!important;font-weight:500}
.svx-d{color:inherit!important;opacity:.82;font-size:clamp(16px,1.4vw,19px)!important;max-width:38ch!important}
.svx-go{display:inline-flex!important;align-items:center;gap:14px;margin-top:34px!important;padding:16px 28px;border-radius:999px;background:var(--sac);color:var(--sbf)!important;font-size:12px!important;letter-spacing:.2em!important;transition:background-color .9s,color .6s,transform .5s cubic-bezier(.22,.61,.21,1)}
.svx-go i{margin-left:0!important}
.svx-i:hover .svx-go{transform:translateY(-3px)}
.svx-ph{aspect-ratio:4/3!important;clip-path:none!important;box-shadow:20px 20px 0 var(--sac);transition:opacity .4s ease,transform .4s ease,box-shadow .9s ease!important}
.svx-i.on .svx-ph{animation:svxZoom 11s ease-out both;transition:opacity .9s cubic-bezier(.22,.61,.21,1) .3s,transform .9s cubic-bezier(.22,.61,.21,1) .3s,box-shadow .9s ease!important}
@keyframes svxZoom{from{background-size:116%}to{background-size:100%}}
.svx-k::before{background:rgba(255,255,255,.28)!important}
.svx-k::after{background:var(--sac)!important}
.svx-ar button{border-color:rgba(255,255,255,.55)!important;color:inherit!important}
.svx-ar button:hover{background:var(--sac)!important;color:var(--sbf)!important;border-color:var(--sac)!important}
.svx-i:focus-visible,.svx-ar button:focus-visible{outline-color:var(--sac)!important}
.svx-nav{padding-top:34px!important}
@media(max-width:860px){.lp-svc{padding:60px 0 52px!important}.svx-i{grid-template-columns:1fr!important;gap:30px!important}.svx-stage{min-height:600px!important}.svx-ph{box-shadow:12px 12px 0 var(--sac)}.svx-t{font-size:clamp(2.4rem,11vw,3.4rem)!important;max-width:none!important}}
@media(prefers-reduced-motion:reduce){.svx-i.on .svx-ph{animation:none}}

/* ---------- Frase: grande, con movimiento al desplazarse ---------- */
.lp-motto{min-height:clamp(520px,82vh,760px)!important}
.lp-motto__shade{background:linear-gradient(180deg,rgba(8,16,36,.62) 0,rgba(8,16,36,.38) 50%,rgba(8,16,36,.7) 100%)!important}
.lp-motto blockquote{max-width:none!important;width:100%;padding:90px 0!important;overflow:visible}
.lp-motto blockquote::before{display:none!important}
.lp-motto blockquote span{font-size:clamp(2.4rem,6.2vw,6rem)!important;line-height:1.04!important;font-weight:400!important;letter-spacing:-.02em!important}
.lp-motto blockquote span b{display:block;font-weight:inherit;will-change:transform;transform:translate3d(var(--tx,0px),0,0)}
.lp-motto__mq{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);z-index:-1;white-space:nowrap;overflow:hidden;pointer-events:none}
.lp-motto__mq div{display:inline-block;animation:lpMq2 80s linear infinite}
.lp-motto__mq span{display:inline-block;font-family:var(--serif);font-weight:500;font-size:clamp(9rem,24vw,22rem);line-height:1;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.2);padding-right:.3em}
@keyframes lpMq2{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.lp-motto__mq div{animation:none}}

.svx-i.out .svx-txt>*,.svx-i.out .svx-ph{transition-duration:.22s!important}
.lp-motto__mq span{-webkit-text-stroke:1.5px rgba(255,255,255,.32)!important}
.lp-motto__shade{background:linear-gradient(180deg,rgba(8,16,36,.5) 0,rgba(8,16,36,.3) 50%,rgba(8,16,36,.62) 100%)!important}
.lp-motto blockquote span{text-shadow:0 2px 30px rgba(6,12,28,.55)}

/* ---------- v20: transición clara + Servicios en blanco con escala ---------- */
.lp-hero__fade{position:absolute;left:0;right:0;bottom:0;height:26%;z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,.7) 62%,#fff 100%)}
.lp-cue{z-index:3}
.lp-svc{--sbg:#fff;--sfg:#12203C;--sac:#16294A;--sbf:#fff;--blue:#2A62D6;background:#fff!important;color:#12203C!important;padding:clamp(110px,14vw,190px) 0 clamp(90px,10vw,150px)!important;min-height:100svh;position:relative}
.lp-svc::before{content:"";position:absolute;left:50%;top:0;width:1px;height:clamp(56px,7vw,96px);background:linear-gradient(180deg,rgba(42,98,214,0),var(--blue))}
.lp-svc__inner{max-width:1360px!important;padding:0 clamp(22px,5vw,80px)!important}
.lp-svc__head{margin:0 0 clamp(48px,6vw,84px);max-width:760px}
.lp-svc__eyebrow{margin:0 0 18px;font-size:12.5px;letter-spacing:.34em;text-transform:uppercase;font-weight:600;color:var(--blue)}
.lp-svc__h{margin:0;font-family:var(--serif);font-weight:300;font-size:clamp(2.6rem,5.4vw,5rem);line-height:1.02;letter-spacing:-.015em;color:#12203C}
.lp-svc__sub{margin:20px 0 0;font-size:clamp(16px,1.4vw,19px);color:rgba(18,32,60,.62)}
.svx-stage{min-height:clamp(520px,46vw,680px)!important}
.svx-i{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important}
.svx-t{color:#12203C;font-size:clamp(2.7rem,5.6vw,5.4rem)!important}
.svx-d{color:rgba(18,32,60,.72)!important;opacity:1!important}
.svx-go{background:var(--sac)!important;color:#fff!important}
.svx-ph{aspect-ratio:5/4!important;box-shadow:24px 24px 0 var(--sac)!important}
.svx-i:hover .svx-ph{transform:translate(-5px,-5px);box-shadow:30px 30px 0 var(--sac)!important}
.svx-k::before{background:rgba(42,98,214,.2)!important}
.svx-k::after{background:var(--blue)!important}
.svx-ar button{border-color:rgba(42,98,214,.45)!important;color:var(--blue)!important;width:56px;height:56px;background:#fff}
.svx-ar button:hover{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)!important}
.lp-svc .lp-h2,.lp-svc .lp-rule{display:none}
@media(max-width:860px){.svx-stage{min-height:620px!important}.lp-svc__h{font-size:clamp(2.3rem,10vw,3.2rem)}}

/* ---------- Página Servicios ---------- */
.view[data-id=servicios] .ix-page{background:#fff;padding-top:clamp(64px,8vw,120px)}
.ix-head{margin:0 0 clamp(40px,5vw,72px);max-width:760px}
.ix-head .eyebrow{color:#2A62D6!important;letter-spacing:.34em;font-weight:600}
.ix-head h1{margin:14px 0 0;font-size:clamp(2.8rem,6vw,5.6rem)!important;line-height:1.02;font-weight:300}
.ix-head p:last-child{margin:22px 0 0;font-size:clamp(16px,1.4vw,19px);color:rgba(18,32,60,.62)}
.ix{margin-top:0!important}
@media (min-width:1024px){.ix{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:clamp(48px,6vw,100px)!important}.ix-stage{aspect-ratio:4/5!important;top:104px!important;box-shadow:28px 28px 0 rgba(42,98,214,.13)}}
.ix-big .ix-t{font-size:clamp(28px,3.6vw,54px)!important;line-height:1.08}
.ix-list a{padding:clamp(18px,2.2vw,30px) 0!important;color:rgba(18,32,60,.5)!important;position:relative}
.ix-list a:hover{color:#2A62D6!important}
.ix-list li.on a{color:#12203C!important}
.ix-list li{position:relative}
.ix-list li::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#2A62D6;transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.ix-list li.on::after{transform:scaleX(1)}
.ix-a{font-size:clamp(22px,2.4vw,34px)!important;color:#2A62D6;opacity:0;transform:translateX(-14px);transition:opacity .4s,transform .5s cubic-bezier(.2,.7,.2,1)}
.ix-list a:hover .ix-a,.ix-list li.on .ix-a{opacity:1;transform:none}
.ix-capt{font-size:clamp(20px,2vw,28px)!important}

/* ===== v22 · Servicios en inicio: carril de tarjetas (solo área y nombre) ===== */
.lp-svc{--cw:clamp(280px,25vw,380px);--gap:calc(var(--cw)*1.1);overflow-x:clip;padding-bottom:clamp(70px,8vw,120px)!important}
.lp-svc__head{margin-bottom:clamp(30px,4vw,56px)!important}
.lp-svc__h{font-size:clamp(2.2rem,4.2vw,3.6rem)!important}
.lp-svc__sub{margin-top:14px!important;font-size:15px!important}
.lpc{position:relative}
.lpc-t{position:relative;height:calc(var(--cw)*1.56);touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.lpc-t.drag{cursor:grabbing}
.lpc-card{position:absolute;left:50%;top:0;width:var(--cw);height:100%;margin-left:calc(var(--cw)/-2);display:block;overflow:hidden;background:#fff;border:1px solid rgba(42,98,214,.22);color:#12203C;text-decoration:none;
 box-shadow:0 40px 70px -44px rgba(18,50,120,.55);transform:translateX(calc(var(--o,0)*var(--gap))) scale(var(--s,1));opacity:var(--op,1);z-index:var(--z,1);
 transition:transform .85s cubic-bezier(.2,.7,.2,1),opacity .6s,box-shadow .5s;-webkit-user-drag:none}
.lpc-card.is-n{--s:.82;--op:.55}
.lpc-card.is-f{--s:.7;--op:0;pointer-events:none}
.lpc-ph{position:absolute;left:0;right:0;top:0;height:65%;overflow:hidden;background:#DCE6F7}
.lpc-ph::before{content:"";position:absolute;inset:0;background:var(--img) center/cover no-repeat;filter:grayscale(1) contrast(.95) brightness(1.28);transform:scale(1.06)}
.lpc-card.is-c .lpc-ph::before{animation:lpcKb 16s ease-in-out infinite alternate}
.lpc-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(165deg,rgba(42,98,214,.78),rgba(18,32,60,.9));mix-blend-mode:multiply;opacity:.72}
.lpc-ph--none{background:linear-gradient(165deg,#2A62D6,#12203C);display:grid;place-items:center}
.lpc-ph--none::before,.lpc-ph--none::after{display:none}
.lpc-ph--none svg{width:34%;height:auto;aspect-ratio:1;color:#fff;opacity:.5}
@keyframes lpcKb{from{transform:scale(1.06) translate(0,0)}to{transform:scale(1.18) translate(-2.5%,-2%)}}
.lpc-n{position:absolute;left:clamp(18px,1.9vw,26px);right:clamp(18px,1.9vw,26px);top:calc(65% + clamp(18px,1.9vw,26px));font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,2.1vw,2rem);line-height:1.06;text-wrap:balance}
.lpc-go{position:absolute;left:clamp(18px,1.9vw,26px);bottom:clamp(16px,1.7vw,22px);font:600 11.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#2A62D6;transition:opacity .5s}
.lpc-go i{font-style:normal;display:inline-block;transition:transform .3s}
.lpc-card.is-n .lpc-go,.lpc-card.is-f .lpc-go{opacity:0}
.lpc-card.is-c:hover .lpc-go i{transform:translateX(5px)}
.lpc-card.is-c:hover{box-shadow:0 50px 80px -44px rgba(18,50,120,.7)}
.lpc-nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,3vw,32px);margin-top:clamp(28px,3.4vw,44px)}
.lpc-nav>button{width:46px;height:46px;border-radius:50%;border:1px solid rgba(18,32,60,.16);display:grid;place-items:center;color:#12203C;transition:border-color .25s,color .25s,background .25s}
.lpc-nav>button:hover{border-color:#2A62D6;color:#2A62D6}
.lpc-nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.lpc-dots{display:flex;gap:8px;align-items:center}
.lpc-d{width:8px;height:8px;padding:0;border-radius:50%;background:#DCE6F7;transition:width .3s,background .3s,border-radius .3s}
.lpc-d.on{width:28px;border-radius:4px;background:#2A62D6}
@media(max-width:860px){.lp-svc{--cw:min(72vw,300px);--gap:calc(var(--cw)*.93)}.lpc-card.is-n{--s:.88}.lpc-nav{justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.lpc-card.is-c .lpc-ph::before{animation:none}.lpc-card{transition-duration:.01ms}}
/* ajustes v22: encaje en una pantalla y botones limpios */
.lp-svc{--cw:clamp(280px,22vw,340px);padding-top:clamp(96px,8vw,120px)!important;padding-bottom:clamp(56px,5vw,72px)!important;min-height:0!important}
.lp-svc__h{font-size:clamp(2rem,3.6vw,3rem)!important}
.lp-svc__head{margin-bottom:clamp(24px,2.6vw,36px)!important}
.lp-svc__eyebrow{margin-bottom:12px!important}
.lpc-nav>button{background:transparent;appearance:none;-webkit-appearance:none;box-shadow:none;padding:0}
.lpc-d{border:0!important;box-shadow:none!important;background:#DCE6F7!important;min-width:0;appearance:none;-webkit-appearance:none}
.lpc-d.on{background:#2A62D6!important}
.lpc-nav{margin-top:clamp(22px,2.4vw,32px)}
@media(max-width:860px){.lp-svc{--cw:min(72vw,300px);padding-top:84px!important}}

/* ===== v23 · barra sobre el hero, menú en negrilla, servicios en dos columnas ===== */
.hdr.is-home{position:fixed;left:0;right:0;top:env(safe-area-inset-top,0px);background:transparent;box-shadow:none;transition:background-color .35s ease,box-shadow .35s ease}
body.scrolled .hdr.is-home{background:#fff;box-shadow:0 1px 14px rgba(38,57,92,.1)}
.nav a{font-weight:700!important}
.lp-hero{height:100svh!important;min-height:560px!important;max-height:1000px!important}
.lp-hero__top{position:absolute;left:0;right:0;top:0;height:clamp(110px,14vh,150px);z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.78) 0,rgba(255,255,255,.4) 55%,rgba(255,255,255,0) 100%);transition:opacity .35s}
body.scrolled .lp-hero__top{opacity:0}
/* tarjetas: posiciones laterales */
.lpc-card.is-p{--s:.82;--op:.55}
.lpc-card.is-n2{--s:.7;--op:0;pointer-events:none}
.lpc-card.is-f{--op:0}
.lpc-card.is-n2 .lpc-go,.lpc-card.is-p .lpc-go{opacity:0}
.lp-svc__head{max-width:none}
.lpc{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"h" "t" "n";row-gap:0}
.lpc>.lp-svc__head{grid-area:h}
.lpc>.lpc-t{grid-area:t}
.lpc>.lpc-nav{grid-area:n}
@media(min-width:1024px){
  .lp-svc{--ch:clamp(460px,74svh,730px);--cw:calc(var(--ch)*.74);--gap:calc(var(--cw)*1.05);display:flex;align-items:center;min-height:100svh!important;padding:clamp(104px,12svh,130px) 0 clamp(48px,7svh,72px)!important}
  .lp-svc__inner{width:100%;max-width:1520px!important;padding:0 0 0 clamp(40px,5vw,96px)!important}
  .lpc{grid-template-columns:minmax(290px,22vw) minmax(0,1fr);grid-template-rows:auto 1fr auto;grid-template-areas:"h t" "s t" "n t";column-gap:clamp(36px,4vw,72px);align-items:stretch}
  .lpc>.lp-svc__head{align-self:start;margin:0!important}
  .lpc>.lpc-nav{align-self:end;justify-content:flex-start;margin-top:0}
  .lp-svc__eyebrow{margin-bottom:16px!important}
  .lp-svc__h{font-size:clamp(2.6rem,3.8vw,4rem)!important;line-height:1.02}
  .lp-svc__sub{font-size:16px!important;margin-top:18px!important}
  .lpc-t{height:var(--ch);clip-path:inset(-50px -100vw -70px 0)}
  .lpc-card{left:0;margin-left:0;transform-origin:left center}
  .lpc-card.is-n{--s:.88;--op:.7}
  .lpc-card.is-n2{--s:.76;--op:.4}
  .lpc-card.is-p{--op:0;pointer-events:none}
  .lpc-n{font-size:clamp(1.8rem,2.2vw,2.5rem)}
  .lpc-go{font-size:12px}
}
@media(max-width:1023.98px){
  .lp-svc{--cw:min(72vw,300px);--gap:calc(var(--cw)*.93);padding-top:96px!important}
  .lpc>.lp-svc__head{margin-bottom:26px!important;text-align:left}
  .lpc>.lpc-nav{justify-content:space-between}
}

.lp-svc::before{display:none!important}

.lpc-nav>button{flex:none}
@media(min-width:1024px){.lpc>.lpc-nav{gap:16px}}

/* v24 · Contratos: el pergamino digital como imagen de la tarjeta */
.lpc-ph--scroll{background:#DDE4F1}
.lpc-ph--scroll::before{filter:saturate(.32) contrast(.94) brightness(.96)!important;transform:scale(1.04)!important;animation:none!important;background-position:center 48%}
.lpc-ph--scroll::after{display:block;background:linear-gradient(165deg,rgba(42,98,214,.6),rgba(18,32,60,.85));mix-blend-mode:multiply;opacity:.4}
.lpc-card.is-c .lpc-ph--scroll::before{animation:lpcKb2 18s ease-in-out infinite alternate!important}
@keyframes lpcKb2{from{transform:scale(1.04)}to{transform:scale(1.1)}}

/* v24 · imagen del pergamino en Servicios y paneles */
.ph.ph-scroll{background-color:#fff;background-size:contain;background-position:center}
.ix-stage .ph.ph-scroll{background-size:cover}
@media (min-width:1024px){.ix-stage .ph.ph-scroll{background-size:auto 94%}}
.pn-ph .ph.ph-scroll{background-size:cover}

.hdr-brand{display:none}.hdr.is-home .hdr-brand{display:block;margin-left:auto;margin-right:-6px;line-height:0}.hdr-brand .logo{width:172px;color:#26395C;--logo-main:#A34A38;--logo-sub:#26395C;--lw:2px;--lw2:1.4px;--lw3:4px;filter:drop-shadow(0 0 5px rgba(255,255,255,.95)) drop-shadow(0 0 12px rgba(255,255,255,.8))}@media(max-width:1023px){.hdr.is-home .hdr-brand{margin-right:4px}.hdr-brand .logo{width:136px}}

.lp-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0}
@property --logo-main{syntax:'<color>';inherits:true;initial-value:#A34A38}
@property --logo-sub{syntax:'<color>';inherits:true;initial-value:#26395C}
@keyframes lgFacets{0%,54%{--logo-main:#A34A38}62%,70%{--logo-main:#2F5FA3}78%,86%{--logo-main:#20707A}94%,100%{--logo-main:#A34A38}}
.hdr.is-home .hdr-brand .logo{animation:lgFacets 20s ease-in-out infinite}
.hdr.is-home .hdr-brand:hover .logo{animation-play-state:paused}
body.scrolled .hdr.is-home .hdr-brand .logo{filter:none}
@media(prefers-reduced-motion:reduce){.hdr.is-home .hdr-brand .logo{animation:none}}

/* inicio: al salir del hero el encabezado muestra el logo; el WhatsApp queda fijo junto a «Equipo» (en escritorio se oculta el botón flotante) */
body.scrolled .hdr.is-home .hdr-in>a:first-child{display:block}
body.scrolled .hdr.is-home .hdr-in{justify-content:space-between}
@media(min-width:1024px){
 body.scrolled .hdr.is-home .nav{margin-left:auto;margin-right:28px}
 body:has(.hdr.is-home) .fab-wa{display:none}
}

/* lema: dos luces (derecho / tecnología) que revelan cada capa */
.lp-motto{--lx:30%;--ly:42%;--rx:70%;--ry:58%;--lr:340px;background:#0B1730}
.lm-stage{position:absolute;inset:0;z-index:-2;overflow:hidden}
.lm-layer{position:absolute;inset:-4% -2%;display:flex;flex-direction:column;justify-content:space-around;white-space:nowrap;text-align:left;pointer-events:none}
.lm-r{margin:0;line-height:1}
.lm-law .lm-r{font-family:var(--serif);font-size:clamp(15px,1.55vw,21px);letter-spacing:.04em;color:#E2C792;transform:translateX(calc(var(--i)*-38px))}
.lm-tech .lm-r{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(12px,1.2vw,16px);letter-spacing:.02em;color:#8FB8E8;transform:translateX(calc(var(--i)*-52px - 120px))}
.lm-law{-webkit-mask-image:radial-gradient(circle var(--lr) at var(--lx) var(--ly),#000 0,rgba(0,0,0,.08) 100%);mask-image:radial-gradient(circle var(--lr) at var(--lx) var(--ly),#000 0,rgba(0,0,0,.08) 100%)}
.lm-tech{-webkit-mask-image:radial-gradient(circle var(--lr) at var(--rx) var(--ry),#000 0,rgba(0,0,0,.07) 100%);mask-image:radial-gradient(circle var(--lr) at var(--rx) var(--ry),#000 0,rgba(0,0,0,.07) 100%)}
.lm-law .lm-r:nth-child(even){opacity:.8}
.lm-glow{position:absolute;inset:0;mix-blend-mode:screen;
 background:radial-gradient(circle calc(var(--lr)*1.15) at var(--lx) var(--ly),rgba(226,170,90,.26),transparent 70%),radial-gradient(circle calc(var(--lr)*1.15) at var(--rx) var(--ry),rgba(90,150,235,.26),transparent 70%)}
.lm-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 62% 46% at 50% 50%,rgba(8,16,36,.82),rgba(8,16,36,.35) 70%,transparent 100%),linear-gradient(180deg,rgba(8,16,36,.55),transparent 22%,transparent 78%,rgba(8,16,36,.6))}
.lm-tag{position:absolute;top:50%;margin:0;display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:600;color:#E2C792;opacity:.85}
.lm-tag i{display:block;width:44px;height:1px;background:currentColor;opacity:.7}
.lm-tag--l{left:28px;transform:translateY(-50%)}
.lm-tag--r{right:28px;transform:translateY(-50%);color:#8FB8E8}
.lm-tag--l,.lm-tag--r{writing-mode:horizontal-tb}
.lp-motto__bg,.lp-motto__mq,.lp-motto__shade{display:none!important}
.lp-motto blockquote span{text-shadow:0 2px 24px rgba(6,12,28,.8)}
@media(max-width:900px){.lp-motto{--lr:230px}.lm-tag{top:auto;bottom:22px;transform:none}.lm-tag--l{left:20px}.lm-tag--r{right:20px}.lm-tag i{width:24px}}
.lm-stage{-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.lm-tech{top:2%}
.lm-shade{background:radial-gradient(ellipse 66% 50% at 50% 50%,rgba(8,16,36,.9),rgba(8,16,36,.5) 72%,transparent 100%),linear-gradient(180deg,rgba(8,16,36,.55),transparent 22%,transparent 78%,rgba(8,16,36,.6))}
.lm-tag{z-index:1;padding:6px 0;background:#0B1730}
.lm-tag--l{padding-right:12px}.lm-tag--r{padding-left:12px}
@media(max-width:900px){.lm-law .lm-r{font-size:13px}.lm-tech .lm-r{font-size:11px}}
@media(max-width:900px){.lm-tag{top:22px;bottom:auto}}

/* contacto y pie: mismos márgenes laterales que el encabezado */
@media(min-width:1024px){
 .lp-contact__inner{max-width:none;padding:0 80px}
 .foot-in{max-width:none;padding:28px 80px 20px!important}
}
.foot-grid{gap:10px 24px!important}
.foot nav{gap:6px 24px}
.lp-form label:has(select)::after{content:"";position:absolute;right:4px;bottom:16px;width:7px;height:7px;border-right:1.5px solid var(--gray);border-bottom:1.5px solid var(--gray);transform:rotate(45deg);pointer-events:none}
.lp-form select{padding-right:22px}

/* inicio: lema, contacto y pie en un mismo fondo azul noche */
body:has(.hdr.is-home) .lp-contact,body:has(.hdr.is-home) .foot{background:#0B1730}
body:has(.hdr.is-home) .lp-contact{color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.lp-contact .logo{--logo-main:#fff;--logo-sub:#A5BCE3}
.lp-contact .lp-h2{color:#fff}
.lp-contact p{color:rgba(255,255,255,.72)}
.lp-form label{border-bottom-color:rgba(255,255,255,.22)}
.lp-form label span{color:rgba(255,255,255,.62)}
.lp-form input,.lp-form select,.lp-form textarea{color:#fff}
.lp-form select option{color:#0B1730}
.lp-form label:focus-within{border-bottom-color:#E2C792}
.lp-form label:focus-within span,.lp-form label.has span{color:#E2C792}
.lp-form label:has(select)::after{border-color:rgba(255,255,255,.7)}
.lp-send{background:#F7F5F0;color:#0B1730}
.lp-send i{background:#0B1730;color:#fff}
.lp-send:hover{box-shadow:0 14px 30px rgba(0,0,0,.35)}
.lp-contact .lp-note{color:rgba(255,255,255,.55)!important}

/* inicio: contacto ordenado (sin logo repetido, título en serif) y transición continua desde el lema */
.lp-contact .lp-eyebrow{margin:0 0 18px;font-size:11px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:#E2C792;max-width:none}
.lp-contact .lp-h2{font-family:var(--serif);font-weight:400;letter-spacing:-.01em;line-height:1.08;margin:0}
.lp-contact p:not(.lp-eyebrow):not(.lp-note){margin-top:20px}
body:has(.hdr.is-home) .lp-contact{border-top:0;padding:8px 0 72px}
.lm-shade{background:radial-gradient(ellipse 66% 50% at 50% 50%,rgba(8,16,36,.9),rgba(8,16,36,.5) 72%,transparent 100%),linear-gradient(180deg,rgba(8,16,36,.55),transparent 22%,transparent 55%,#0B1730 100%)}
.lp-form{padding-top:0}
.lp-form label:first-child{padding-top:0}
.lp-form label:first-child span{top:2px}
body:has(.hdr.is-home) .foot{border-top:1px solid rgba(255,255,255,.1)}

/* pie: sin menú de navegación; quedan logo, WhatsApp y derechos */
.foot nav{display:none!important}
.foot-grid{display:none!important}

/* pie: redes sociales y legales */
.foot nav{display:none!important}
.foot-soc{margin-left:auto;display:flex;gap:10px}
.foot-soc a{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.28);border-radius:50%;color:#fff;transition:background .3s,border-color .3s,color .3s}
.foot-soc a:hover{background:#E2C792;border-color:#E2C792;color:#0B1730}
.foot-soc svg{width:18px;height:18px}
.foot-legal{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 28px;border-top:1px solid rgba(255,255,255,.2);padding-top:14px}
.foot-legal .copy{flex:0 0 auto;border:0!important;padding:0!important;margin:0!important}
.foot-legal nav{display:flex!important;flex-wrap:wrap;gap:6px 24px}
.foot-legal nav a{font-size:12px;letter-spacing:.04em;text-transform:none;color:rgba(255,255,255,.72)}
.foot-legal nav a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.foot-soc{margin-left:0}}

/* áreas de práctica (escritorio): foto más grande y pie de tarjeta compacto */
@media(min-width:1024px){
 .lpc-ph{height:72%}
 .lpc-n{top:calc(72% + clamp(16px,1.6vw,22px))}
}

/* móvil: el WhatsApp flotante se oculta junto al formulario (ya tiene su propio botón) y el pie deja espacio al botón de subir */
.fab-wa{transition:opacity .3s}
body.at-contact .fab-wa{opacity:0;pointer-events:none}
@media(max-width:700px){body:has(.hdr.is-home) .foot-in{padding-bottom:84px!important}}

/* móvil: el WhatsApp va en el encabezado, a la izquierda del menú, y se retira el botón flotante */
@media(max-width:1023.98px){
 .hdr-in{gap:12px}
 .hdr .hdr-wa{display:flex;width:36px;height:36px;font-size:20px;margin-left:auto;flex:none}
 .hdr .burger{width:36px;height:36px;flex:none}
 .fab-wa{display:none!important}
}

/* móvil: flechas y puntos arriba de la tarjeta para que no queden cortados al pie de la pantalla */
@media(max-width:1023.98px){
 .lpc{grid-template-areas:"h" "n" "t"}
 .lpc>.lp-svc__head{margin-bottom:16px!important}
 .lpc>.lpc-nav{margin:0 0 22px!important;justify-content:space-between}
 .lp-svc{padding-bottom:56px!important}
}

/* móvil (inicio): cada subsección se encuadra en una pantalla completa */
@media(max-width:1023.98px){
 html:has(.hdr.is-home){scroll-snap-type:y proximity}
 body:has(.hdr.is-home) .lp-hero,body:has(.hdr.is-home) .lp-svc,body:has(.hdr.is-home) .lp-motto,body:has(.hdr.is-home) .lp-contact{scroll-snap-align:start}
 .lp-svc{min-height:100svh!important;display:flex;flex-direction:column;justify-content:center;padding:96px 0 28px!important;box-sizing:border-box}
 .lp-svc__inner{width:100%}
 .lpc-t{height:clamp(330px,calc(100svh - 372px),520px)}
 .lpc-card{height:100%}
 .lp-motto{min-height:100svh!important;padding-top:72px;box-sizing:border-box}
}
@media(max-width:1023.98px){
 body:has(.hdr.is-home) .lp-contact{padding:100px 0 44px!important}
 .lm-tag{top:98px!important}
}
/* Nosotros v61: exposición en dos velocidades (frase principal + detalle) con ícono por tema */
.nos-txt{background:var(--paper);padding:56px 0 64px}
.nos-txt-in{max-width:1120px;margin:0 auto;padding:0 22px}
.nos-rows{display:block}
.nos-row{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:18px;row-gap:12px;padding:30px 0;border-top:1px solid var(--hair);align-items:start}
.nos-row:first-child{border-top:0;padding-top:0}
.nos-row:last-child{padding-bottom:0}
.nos-ic{grid-row:1 / span 2;width:44px;height:44px;border-radius:50%;border:1px solid rgba(154,120,64,.55);display:flex;align-items:center;justify-content:center;color:var(--brass);margin-top:4px}
.nos-ic svg{width:22px;height:22px;fill:currentColor}
.nos-big{margin:0;grid-column:2;font-family:var(--serif);font-weight:400;font-size:clamp(21px,5.4vw,25px);line-height:1.42;color:var(--navy);text-wrap:pretty}
.nos-big strong{font-weight:600}
.nos-sm{margin:0;grid-column:2;font-size:15.5px;line-height:1.8;color:#4B5B7C}
@media(min-width:900px){
 .nos-txt{padding:92px 0 100px}
 .nos-txt-in{padding:0 80px}
 .nos-row{grid-template-columns:76px minmax(0,1.35fr) minmax(0,1fr);column-gap:48px;padding:44px 0}
 .nos-ic{grid-row:auto;width:64px;height:64px;margin-top:2px}
 .nos-ic svg{width:30px;height:30px}
 .nos-big{grid-column:2;font-size:clamp(24px,2.3vw,31px)}
 .nos-sm{grid-column:3;font-size:16.5px;padding-top:.5em}
 .nos-row.solo .nos-big{grid-column:2 / -1;max-width:44em}
 .nos-row:first-child .nos-big{font-size:clamp(27px,2.6vw,35px)}
}
@media(min-width:900px){
 .nos-txt-in{max-width:1240px}
 .nos-row{grid-template-columns:72px minmax(0,2fr) minmax(0,1fr);column-gap:44px;padding:38px 0}
 .nos-big{font-size:clamp(22px,2vw,28px)}
 .nos-row:first-child .nos-big{font-size:clamp(25px,2.3vw,32px)}
 .nos-row.solo .nos-big{grid-column:2 / -1;max-width:none}
}
/* Nosotros v62: sin íconos; distribución en dos columnas más marcada */
.nos-ic{display:none}
.nos-txt{padding:60px 0 72px}
.nos-row{grid-template-columns:minmax(0,1fr);column-gap:0;row-gap:16px;padding:34px 0;border-top:1px solid var(--hair)}
.nos-row:first-child{border-top:0;padding-top:0}
.nos-big,.nos-row .nos-big{grid-column:1;font-size:clamp(21px,5.4vw,25px);line-height:1.45;color:var(--navy)}
.nos-sm,.nos-row .nos-sm{grid-column:1;margin:0;padding:2px 0 2px 18px;border-left:2px solid rgba(154,120,64,.6);font-size:16px;line-height:1.85;color:#3F4F73}
@media(min-width:900px){
 .nos-txt{padding:96px 0 108px}
 .nos-txt-in{max-width:1180px}
 .nos-row{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);column-gap:72px;row-gap:0;padding:52px 0;align-items:start}
 .nos-big,.nos-row .nos-big,.nos-row.solo .nos-big{grid-column:1;max-width:none;font-size:clamp(23px,2.05vw,29px);line-height:1.5}
 .nos-row:first-child .nos-big{font-size:clamp(26px,2.4vw,34px);line-height:1.45}
 .nos-sm,.nos-row .nos-sm{grid-column:2;padding:4px 0 4px 26px;font-size:17px;line-height:1.9;margin-top:.35em}
}
/* Nosotros v63: recuadro grande + recuadro corto, versión corporativa */
.nos-txt{background:linear-gradient(#EFEBE2,#F7F5F0 38%);padding:52px 0 64px}
.nos-rows{display:flex;flex-direction:column;gap:18px}
.nos-row,.nos-row:first-child,.nos-row:last-child{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:0;border:0;border-radius:3px;overflow:hidden;box-shadow:0 1px 2px rgba(27,43,73,.08),0 18px 36px -24px rgba(27,43,73,.3)}
.nos-row .nos-big{grid-column:1;margin:0;background:#fff;padding:28px 24px 30px;border-top:3px solid var(--brass);font-size:clamp(20px,5.2vw,24px);line-height:1.5;color:var(--navy)}
.nos-row .nos-big strong{color:#1B2B49}
.nos-row .nos-sm{grid-column:1;margin:0;background:#1B2B49;padding:24px 24px 26px;border:0;border-top:3px solid #CDB88A;font-size:15.5px;line-height:1.85;color:#DDE4F2}
@media(min-width:900px){
 .nos-txt{padding:88px 0 104px}
 .nos-rows{gap:24px}
 .nos-row,.nos-row:first-child,.nos-row:last-child{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);align-items:stretch}
 .nos-row .nos-big,.nos-row.solo .nos-big{grid-column:1;padding:46px 52px 48px;font-size:clamp(23px,2vw,28px);line-height:1.5}
 .nos-row.solo .nos-big{grid-column:1 / -1}
 .nos-row:first-child .nos-big{font-size:clamp(26px,2.3vw,33px);padding:56px 56px 58px}
 .nos-row .nos-sm{grid-column:2;padding:46px 40px 48px;font-size:16.5px;line-height:1.9;border-top:3px solid #CDB88A}
 .nos-row:first-child .nos-sm{padding-top:56px}
}
/* Nosotros v64: recuadros con la estética del sitio (papel, arena, marfil, azul marino, latón; sin sombras) */
.nos-txt{background:var(--paper)}
.nos-row,.nos-row:first-child,.nos-row:last-child{border:1px solid var(--hair);border-radius:4px;box-shadow:none;background:var(--hair)}
.nos-row .nos-big{background:var(--paper-lift);border-top:3px solid var(--navy);color:var(--navy);font-weight:400}
.nos-row .nos-big strong{color:var(--navy);font-weight:600}
.nos-row .nos-sm{background:var(--sand);border-top:3px solid var(--brass);color:#34476B}
@media(max-width:899.98px){.nos-row .nos-sm{border-top:1px solid var(--hair)}}
@media(min-width:900px){.nos-row .nos-sm{border-left:1px solid var(--hair)}}
.nos-hl{background:none;color:#8A6A33;font-weight:600;box-shadow:inset 0 -.14em 0 rgba(154,120,64,.35)}
.nos-sm .nos-hl{color:#6E521F;font-weight:700;box-shadow:none}
/* Nosotros v65: color por bloque + entrada al hacer scroll */
.nos-row:nth-child(1){--ac:#2A62D6;--acd:#1E4DB0;--act:rgba(42,98,214,.10)}
.nos-row:nth-child(2){--ac:#1F8A8F;--acd:#126A6F;--act:rgba(31,138,143,.11)}
.nos-row:nth-child(3){--ac:#2F8F5B;--acd:#1F6B42;--act:rgba(47,143,91,.10)}
.nos-row:nth-child(4){--ac:#C0553A;--acd:#9A3E26;--act:rgba(192,85,58,.10)}
.nos-row:nth-child(5){--ac:#6B57B8;--acd:#52409A;--act:rgba(107,87,184,.10)}
.nos-row,.nos-row:first-child,.nos-row:last-child{border-color:rgba(38,57,92,.12);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.nos-row:hover{transform:translateY(-3px);box-shadow:0 16px 34px -22px rgba(27,43,73,.45)}
.nos-row .nos-big{position:relative;border-top:0;background:linear-gradient(135deg,#FFFFFF 52%,var(--act) 130%)}
.nos-row .nos-big::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--ac);transform-origin:left center}
.nos-row .nos-big strong{color:var(--acd)}
.nos-row .nos-sm{border-top:0;border-left:0;background:linear-gradient(var(--act),var(--act)),#FBFAF7;color:#26395C;position:relative}
.nos-row .nos-sm::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--acd);opacity:.55;transform-origin:left center}
@media(min-width:900px){.nos-row .nos-sm{border-left:1px solid rgba(38,57,92,.1)}}
.nos-row .nos-hl{color:var(--acd);box-shadow:inset 0 -.16em 0 var(--act);background:none}
.nos-row .nos-sm .nos-hl{color:var(--acd);font-weight:700;box-shadow:none}
.nos-row .nos-sm .nos-hl{background:rgba(255,255,255,.7);padding:1px 5px;border-radius:3px}
.nos-js .nos-row .nos-big,.nos-js .nos-row .nos-sm{opacity:0;transform:translateX(-26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.nos-js .nos-row .nos-sm{transform:translateX(26px);transition-delay:.14s}
.nos-js .nos-row .nos-big::before,.nos-js .nos-row .nos-sm::before{transform:scaleX(0);transition:transform 1s cubic-bezier(.2,.7,.2,1) .25s}
.nos-js .nos-row.in .nos-big,.nos-js .nos-row.in .nos-sm{opacity:1;transform:none}
.nos-js .nos-row.in .nos-big::before,.nos-js .nos-row.in .nos-sm::before{transform:scaleX(1)}
@media(max-width:899.98px){.nos-js .nos-row .nos-big,.nos-js .nos-row .nos-sm{transform:translateY(22px)}}
@media(prefers-reduced-motion:reduce){.nos-js .nos-row .nos-big,.nos-js .nos-row .nos-sm,.nos-js .nos-row .nos-big::before,.nos-js .nos-row .nos-sm::before{opacity:1;transform:none;transition:none}.nos-row:hover{transform:none}}
/* Nosotros v66: un solo ícono de WhatsApp + portada luminosa con arcoíris */
body:has(.view[data-id="filosofia"]:not([hidden])) .fab-wa{display:none!important}
.nos-hero{background:linear-gradient(180deg,#CFE3F7 0%,#E8F0F6 46%,#FBF4E6 100%);color:var(--deep);min-height:clamp(400px,66vh,600px)!important}
.nos-sky{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.nos-sun{position:absolute;right:6%;top:-12%;width:46vmin;height:46vmin;border-radius:50%;background:radial-gradient(circle,rgba(255,236,176,.95) 0,rgba(255,226,150,.55) 34%,rgba(255,226,150,0) 68%)}
.nos-rb{position:absolute;left:50%;bottom:-62vmin;width:150vmin;height:150vmin;margin-left:-45vmin;border-radius:50%;opacity:.78;
 background:radial-gradient(circle at 50% 50%,transparent 0 56%,#E4675B 56% 59.2%,#EE9A52 59.2% 62.4%,#F3CF5E 62.4% 65.6%,#7DC48A 65.6% 68.8%,#59B5D6 68.8% 72%,#5C86D9 72% 75.2%,#8D6FCB 75.2% 78.4%,transparent 78.4%);
 -webkit-mask-image:linear-gradient(90deg,transparent 4%,#000 22%,#000 78%,transparent 96%);mask-image:linear-gradient(90deg,transparent 4%,#000 22%,#000 78%,transparent 96%);
 filter:saturate(.9) blur(.4px);animation:nosrb 2.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes nosrb{from{clip-path:inset(0 100% 0 0);opacity:0}to{clip-path:inset(0 0 0 0);opacity:.78}}
.nos-cl{position:absolute;border-radius:50%;background:rgba(255,255,255,.92);filter:blur(14px)}
.nos-cl.c1{left:6%;bottom:18%;width:30vmin;height:10vmin}
.nos-cl.c2{right:9%;bottom:22%;width:34vmin;height:11vmin}
.nos-cl.c3{left:44%;top:9%;width:26vmin;height:7vmin;opacity:.8}
.nos-sk{position:absolute;left:0;right:0;bottom:0;width:100%;height:clamp(70px,16vh,130px)}
.nos-sk .sk-b{fill:#9FB4D3;opacity:.55}
.nos-sk .sk-f{fill:#26395C}
.nos-hero .nos-in{padding-top:clamp(70px,11vh,110px);padding-bottom:clamp(120px,22vh,190px)}
.nos-hero .eyebrow-l{color:var(--brass)!important}
.nos-in h1 span{color:#1B2B49}
.nos-in h1 span+span{color:transparent;background:linear-gradient(90deg,#C0553A 0%,#D9902F 22%,#2F8F5B 48%,#2A62D6 74%,#6B57B8 100%);-webkit-background-clip:text;background-clip:text;font-weight:400}
@media(max-width:700px){.nos-rb{width:190vmin;height:190vmin;margin-left:-95vmin;bottom:-96vmin;opacity:.6}.nos-hero .nos-in{padding-bottom:140px}}
@media(prefers-reduced-motion:reduce){.nos-rb{animation:none}}
.nos-sk{height:clamp(58px,12vh,100px)}
.nos-sk .sk-f{fill:#33497A}
.nos-sk .sk-b{fill:#B3C4DE;opacity:.5}
@media(max-width:700px){.nos-rb{bottom:-128vmin;opacity:.7}.nos-sk{height:64px}.nos-hero .nos-in{padding-bottom:150px}}
/* Nosotros v67: el cuidado que se da a cada caso (planta que crece al regarla) */
.nos-sky{display:none!important}
.nos-hero{background:linear-gradient(180deg,#E9F1F5 0%,#F6F4EC 62%,#FBF6EA 100%)}
.nos-art{position:absolute;right:max(3vw,24px);bottom:0;width:min(44vw,540px);pointer-events:none}
.nos-art svg{display:block;width:100%;height:auto;overflow:visible}
.nos-hero .nos-in{padding-bottom:clamp(90px,14vh,130px);position:relative;z-index:1}
.nos-in h1.nos-lema,.nos-in h1{max-width:min(100%,640px)}
.nos-in h1{font-size:clamp(2.2rem,3.9vw,3.7rem)}
.nos-in h1 span+span{background:linear-gradient(90deg,#8A6A33,#C09A55 55%,#8A6A33);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:400}
.nos-art .na-stem{stroke-dasharray:1;stroke-dashoffset:0}
.nos-art .na-lf,.nos-art .na-fl{transform-origin:0 0}
.nos-art .na-plant{transform-origin:260px 338px}
.nos-art .na-drops{opacity:0}
.nos-art .na-dp{fill:#7FB5E6;opacity:0}
.nos-art .na-can{transform-origin:440px 115px}
@keyframes na-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes na-leaf{from{transform:scale(0) rotate(-12deg)}70%{transform:scale(1.07) rotate(2deg)}to{transform:scale(1) rotate(0)}}
@keyframes na-bloom{from{transform:scale(0) rotate(-40deg)}to{transform:scale(1) rotate(0)}}
@keyframes na-sway{0%,100%{transform:rotate(-1.1deg)}50%{transform:rotate(1.1deg)}}
@keyframes na-pour{0%,4%{transform:rotate(0)}14%,66%{transform:rotate(-17deg)}78%,100%{transform:rotate(0)}}
@keyframes na-dgate{0%,10%{opacity:0}16%,64%{opacity:1}72%,100%{opacity:0}}
@keyframes na-fall{0%{transform:translate(var(--x),0);opacity:0}12%{opacity:.95}80%{opacity:.9}100%{transform:translate(calc(var(--x) + var(--dx)),160px);opacity:0}}
.nos-art .na-stem{animation:na-draw 2.6s cubic-bezier(.4,.1,.2,1) .4s both}
.nos-art .na-lf{animation:na-leaf .9s cubic-bezier(.3,1.2,.4,1) both;animation-delay:calc(1s + var(--d))}
.nos-art .na-fl{animation:na-bloom 1.5s cubic-bezier(.3,1.1,.4,1) 3.7s both}
.nos-art .na-plant{animation:na-sway 7s ease-in-out 5.5s infinite}
.nos-art .na-can{animation:na-pour 11s ease-in-out .3s infinite}
.nos-art .na-drops{animation:na-dgate 11s linear .3s infinite}
.nos-art .na-dp{animation:na-fall 1.15s cubic-bezier(.5,0,.9,.55) infinite;animation-delay:var(--t)}
@media(max-width:899.98px){
 .nos-art{right:50%;transform:translateX(50%);width:min(74vw,360px)}
 .nos-hero .nos-in{padding-bottom:300px}
 .nos-in h1{font-size:clamp(2rem,8.6vw,3rem)}
}
@media(prefers-reduced-motion:reduce){.nos-art *{animation:none!important}.nos-art .na-drops,.nos-art .na-dp{display:none}}
.nos-hero{min-height:clamp(440px,72vh,640px)!important}
.nos-art{width:min(52vw,640px);right:max(2vw,16px)}
@media(max-width:899.98px){.nos-art{width:min(92vw,430px)}.nos-hero .nos-in{padding-bottom:330px}}
@media(max-width:899.98px){.nos-art{right:50%;transform:translateX(50%);width:min(92vw,430px)}}
/* Nosotros v68: enfoque modernista (bloques de color, geometría firme) */
.nos-art{display:none!important}
.nos-hero{display:flex;align-items:stretch;background:var(--paper);min-height:clamp(480px,76vh,680px)!important;overflow:hidden}
.nos-hero .nos-in{position:relative;z-index:1;max-width:none;width:100%;margin:0;padding:clamp(80px,12vh,120px) calc(44% + 40px) clamp(70px,10vh,100px) max(80px,calc((100vw - 1280px)/2 + 80px));justify-content:center;gap:28px}
.nos-hero .eyebrow-l{color:#1B2B49!important;font-weight:700;letter-spacing:.24em;display:flex;align-items:center;gap:14px}
.nos-hero .eyebrow-l::before{content:"";width:44px;height:5px;background:#E0603F}
.nos-in h1,.nos-in h1.nos-lema{max-width:none;font-family:var(--serif);font-weight:600;font-size:clamp(2.3rem,4.2vw,4.1rem);line-height:1.04;letter-spacing:-.02em;color:#1B2B49}
.nos-in h1 span{color:#1B2B49}
.nos-in h1 span+span{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:#C94C2E;font-style:italic;font-weight:600}
.nos-in h1::after{content:"";display:block;width:92px;height:6px;margin-top:28px;background:#1B2B49}
.nos-panel{position:absolute;top:0;right:0;bottom:0;width:44%;background:#1B2B49;border-left:8px solid #F4B63F}
.nos-panel svg{position:absolute;left:0;bottom:0;width:100%;height:100%;display:block}
.nos-panel .np-stem{transform-origin:260px 386px;animation:np-grow 2s cubic-bezier(.3,.1,.2,1) .4s both}
.nos-panel .np-lf,.nos-panel .np-fl{transform-origin:0 0}
.nos-panel .np-lf{animation:np-pop .6s cubic-bezier(.3,1.4,.5,1) both;animation-delay:calc(1.3s + var(--d))}
.nos-panel .np-fl{animation:np-pop .8s cubic-bezier(.3,1.5,.5,1) 3.2s both}
.nos-panel .np-can{transform-origin:470px 195px;animation:np-pour 10s ease-in-out .3s infinite}
.nos-panel .np-drops{opacity:0;animation:np-gate 10s linear .3s infinite}
.nos-panel .np-dp{fill:#7FD0F5;opacity:0;animation:np-fall 1.05s cubic-bezier(.5,0,.9,.55) infinite;animation-delay:var(--t)}
@keyframes np-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes np-pop{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes np-pour{0%,5%{transform:rotate(0)}15%,66%{transform:rotate(-17deg)}78%,100%{transform:rotate(0)}}
@keyframes np-gate{0%,11%{opacity:0}17%,64%{opacity:1}72%,100%{opacity:0}}
@keyframes np-fall{0%{transform:translate(var(--x),0);opacity:0}12%{opacity:1}100%{transform:translate(calc(var(--x) + 0px),118px);opacity:0}}
@media(max-width:899.98px){
 .nos-hero{flex-direction:column;min-height:0!important}
 .nos-hero .nos-in{padding:64px 22px 40px}
 .nos-panel{position:relative;width:100%;height:340px;border-left:0;border-top:8px solid #F4B63F}
 .nos-in h1,.nos-in h1.nos-lema{font-size:clamp(2.1rem,9vw,3rem)}
}
@media(prefers-reduced-motion:reduce){.nos-panel *{animation:none!important}.nos-panel .np-drops{display:none}}
@media(max-width:899.98px){.nos-panel{order:2}.nos-hero .nos-in{order:1}}
/* Nosotros v69: jardín (planta más orgánica) + tarjetas lúdicas */
.nos-panel{background:#D6EAF6;border-left:8px solid #1B2B49}
.nos-panel .np-stem,.nos-panel .np-lf,.nos-panel .np-fl,.nos-panel .np-can,.nos-panel .np-drops{animation:none}
.nos-panel .gd-stem{stroke-dasharray:1;stroke-dashoffset:0;animation:gd-draw 1.8s cubic-bezier(.3,.1,.2,1) both;animation-delay:calc(.2s + var(--p))}
.nos-panel .gd-lf,.nos-panel .gd-fl{transform-origin:0 0;animation:np-pop .6s cubic-bezier(.3,1.5,.5,1) both;animation-delay:calc(1s + var(--d))}
.nos-panel .gd-fl{animation-duration:.8s}
.nos-panel .gd-can{transform-origin:50px 195px;animation:gd-pour 10s ease-in-out .3s infinite}
.nos-panel .gd-drops{opacity:0;animation:np-gate 10s linear .3s infinite}
.nos-panel .gd-dp{fill:#2A8BD6;opacity:0;animation:gd-fall 1.05s cubic-bezier(.5,0,.9,.55) infinite;animation-delay:var(--t)}
.nos-panel .gd-sun{animation:gd-sun 6s ease-in-out infinite alternate;transform-origin:430px 120px}
@keyframes gd-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes gd-pour{0%,5%{transform:rotate(0)}15%,66%{transform:rotate(17deg)}78%,100%{transform:rotate(0)}}
@keyframes gd-fall{0%{transform:translate(var(--x),0);opacity:0}12%{opacity:1}100%{transform:translate(calc(var(--x) + 0px),112px);opacity:0}}
@keyframes gd-sun{from{transform:scale(1)}to{transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.nos-panel *{animation:none!important}.nos-panel .gd-drops{display:none}}
@media(max-width:899.98px){.nos-panel{border-left:0;border-top:8px solid #1B2B49}}

.nos-rows{gap:44px}
.nos-row:nth-child(1){--ac:#5B9BFF;--acs:#2A62D6;--acd:#1E4DB0}
.nos-row:nth-child(2){--ac:#3FC1C7;--acs:#137A80;--acd:#0E6166}
.nos-row:nth-child(3){--ac:#58C98A;--acs:#1F7A4D;--acd:#175C3A}
.nos-row:nth-child(4){--ac:#FF8A66;--acs:#B8472C;--acd:#98381F}
.nos-row:nth-child(5){--ac:#9E8AF0;--acs:#5B47B0;--acd:#473694}
.nos-row,.nos-row:first-child,.nos-row:last-child{border:0;background:none;box-shadow:none;border-radius:0;overflow:visible;gap:22px;transition:none}
.nos-row:hover{transform:none;box-shadow:none}
.nos-row .nos-big{position:relative;overflow:hidden;background:#fff;border:2.5px solid #1B2B49;border-radius:20px;box-shadow:8px 8px 0 var(--ac);padding:30px 64px 32px 26px;transition:box-shadow .3s,transform .3s}
.nos-row .nos-big::before{display:none}
.nos-row .nos-big::after{content:"";position:absolute;right:-26px;top:-26px;width:84px;height:84px;border-radius:50%;background:var(--ac);animation:nos-breathe 4.5s ease-in-out infinite alternate}
.nos-row .nos-big strong{color:var(--acd)}
.nos-row .nos-sm{position:relative;background:var(--acs);color:#fff;border:2.5px solid #1B2B49;border-radius:20px;box-shadow:6px 6px 0 #1B2B49;padding:24px 26px 26px;font-size:16px;line-height:1.75;font-weight:500;transition:box-shadow .3s,transform .3s}
.nos-row .nos-sm::before{display:none}
.nos-row .nos-sm .nos-hl,.nos-row .nos-hl{box-shadow:none}
.nos-row .nos-sm .nos-hl{background:#fff;color:#1B2B49;padding:1px 7px;border-radius:7px;font-weight:700}
.nos-row .nos-big .nos-hl{color:var(--acd);box-shadow:inset 0 -.2em 0 var(--ac)}
.nos-row:nth-child(odd){--rot:1.6deg}.nos-row:nth-child(even){--rot:-1.6deg}
@keyframes nos-breathe{from{transform:scale(1)}to{transform:scale(1.18)}}
.nos-js .nos-row .nos-big{opacity:0;transform:translateX(-46px) rotate(-3deg);transition:opacity .7s ease,transform .9s cubic-bezier(.2,1.35,.4,1),box-shadow .3s}
.nos-js .nos-row .nos-sm{opacity:0;transform:translateX(46px) rotate(5deg) scale(.9);transition:opacity .7s ease .12s,transform .95s cubic-bezier(.2,1.4,.4,1) .12s,box-shadow .3s}
.nos-js .nos-row.in .nos-big{opacity:1;transform:none}
.nos-js .nos-row.in .nos-sm{opacity:1;transform:rotate(var(--rot))}
.nos-js .nos-row.in:hover .nos-big{transform:translate(-3px,-3px);box-shadow:12px 12px 0 var(--ac);transition-delay:0s}
.nos-js .nos-row.in:hover .nos-sm{transform:rotate(0) translate(-3px,-3px);box-shadow:10px 10px 0 #1B2B49;transition-delay:0s}
.nos-row .nos-sm{transform:rotate(var(--rot))}
@media(min-width:900px){
 .nos-txt{padding:96px 0 112px}
 .nos-rows{gap:56px}
 .nos-row,.nos-row:first-child,.nos-row:last-child{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:30px;align-items:center}
 .nos-row .nos-big,.nos-row.solo .nos-big{padding:46px 90px 48px 46px;border-radius:24px}
 .nos-row:first-child .nos-big{padding:58px 100px 60px 52px}
 .nos-row .nos-big::after{width:120px;height:120px;right:-36px;top:-36px}
 .nos-row .nos-sm{padding:34px 32px 36px;font-size:17px;border-radius:24px}
 .nos-row:first-child .nos-sm,.nos-row .nos-sm{margin:0}
}
@media(max-width:899.98px){.nos-row,.nos-row:first-child,.nos-row:last-child{gap:20px}.nos-row .nos-sm{margin:0 6px}}
@media(prefers-reduced-motion:reduce){.nos-row .nos-big::after{animation:none}.nos-js .nos-row .nos-sm{transform:rotate(var(--rot))}}

/* ===== v70 grafiti corporativo ===== */
.nos-hero{background:#0B1426;min-height:clamp(500px,80vh,700px)!important}
.nos-hero .eyebrow-l{color:#fff!important}
.nos-hero .eyebrow-l::before{background:#FF4B3E;height:6px}
.nos-hero .nos-in{padding-right:calc(50% + 24px)}
.nos-in h1,.nos-in h1.nos-lema{color:#fff;font-weight:700;text-transform:none}
.nos-in h1 span{color:#fff}
.nos-in h1 span+span{color:#FFD23F;font-style:italic}
.nos-in h1::after{background:#FF4B3E;width:120px;height:8px;transform:skewX(-24deg)}
.nos-panel{position:absolute;top:0;right:0;bottom:0;width:50%;background:none!important;border:0!important;overflow:hidden}
.nos-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 55% 38%,rgba(60,123,255,.30),transparent 62%)}
.nos-panel svg{position:absolute;left:0;bottom:0;width:100%;height:100%;display:block}
.nos-panel .gr-s{stroke-dasharray:1;stroke-dashoffset:1;animation:gr-draw 1.1s cubic-bezier(.4,.1,.2,1) forwards;animation-delay:var(--d)}
.nos-panel .gr-heart>path:first-child{transform-box:fill-box;transform-origin:50% 60%;opacity:0;animation:gr-fill .5s ease 2.55s forwards}
.nos-panel .gr-heart{transform-origin:300px 215px;animation:gr-beat 2.2s ease-in-out 3.4s infinite}
.nos-panel .gr-ray{stroke-dasharray:1;opacity:0;animation:gr-ray 2.4s ease-in-out infinite;animation-delay:calc(3.2s + var(--t))}
.nos-panel .gr-dots{animation:gr-fade 1s ease 1s both}
.nos-panel .gr-dr{opacity:0;animation:gr-drip var(--d) cubic-bezier(.5,0,.9,.6) infinite;animation-delay:calc(3.4s + var(--t))}
@keyframes gr-draw{to{stroke-dashoffset:0}}
@keyframes gr-fill{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}
@keyframes gr-beat{0%,100%{transform:scale(1)}12%{transform:scale(1.07)}24%{transform:scale(1)}36%{transform:scale(1.04)}48%{transform:scale(1)}}
@keyframes gr-ray{0%,100%{opacity:0}30%,60%{opacity:1}}
@keyframes gr-fade{from{opacity:0}to{opacity:.55}}
@keyframes gr-drip{0%{opacity:0;transform:translate(var(--x),-30px)}15%{opacity:1}70%{opacity:1}100%{opacity:0;transform:translate(var(--x),150px)}}
.nos-panel .gr-dr{transform:translate(var(--x),-30px)}
@media(max-width:899.98px){
 .nos-hero{flex-direction:column;min-height:0!important}
 .nos-hero .nos-in{padding:64px 22px 24px}
 .nos-panel{position:relative;width:100%;height:380px;order:2}
}
@media(prefers-reduced-motion:reduce){
 .nos-panel *{animation:none!important}
 .nos-panel .gr-s{stroke-dashoffset:0}
 .nos-panel .gr-heart>path:first-child{opacity:1}
 .nos-panel .gr-ray{opacity:1}
 .nos-panel .gr-dr{display:none}
}
/* tarjetas */
.nos-row .nos-big{border:3px solid #0B1426;border-radius:10px;box-shadow:9px 9px 0 var(--ac)}
.nos-row .nos-sm{border:3px solid #0B1426;border-radius:10px;box-shadow:8px 8px 0 #0B1426;background-image:radial-gradient(circle,rgba(255,255,255,.17) 1.7px,transparent 2.2px);background-size:15px 15px}
.nos-row .nos-big::after{content:"";position:absolute;right:16px;top:14px;left:auto;width:92px;height:92px;border-radius:0;background:var(--mk) center/contain no-repeat;animation:nos-wig 5s ease-in-out infinite alternate;transform:rotate(-8deg)}
@keyframes nos-wig{from{transform:rotate(-10deg) scale(1)}to{transform:rotate(-2deg) scale(1.08)}}
@media(min-width:900px){
 .nos-row .nos-big,.nos-row.solo .nos-big{border-radius:12px}
 .nos-row .nos-sm{border-radius:12px}
 .nos-row .nos-big::after{width:112px;height:112px;right:20px;top:18px}
}
.nos-js .nos-row.in:hover .nos-big{box-shadow:13px 13px 0 var(--ac)}
.nos-js .nos-row.in:hover .nos-sm{box-shadow:12px 12px 0 #0B1426}
@media(prefers-reduced-motion:reduce){.nos-row .nos-big::after{animation:none}}
.nos-row:nth-child(1){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%235B9BFF%27%20stroke-width%3D%2710%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M10%2072L30%2028L50%2072L70%2028L90%2072%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(2){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%233FC1C7%27%20stroke-width%3D%2710%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M22%2088L42%2014M47%2088L67%2014M72%2088L92%2014%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(3){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%2358C98A%27%20stroke-width%3D%2710%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M50%2052C50%2044%2060%2044%2060%2052C60%2064%2040%2066%2038%2050C36%2032%2066%2028%2072%2050C78%2076%2036%2086%2024%2056%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(4){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%23FF8A66%27%20stroke-width%3D%2710%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M50%2010V90M16%2030L84%2070M84%2030L16%2070%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(5){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%239E8AF0%27%20stroke-width%3D%2710%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M8%2062C28%2018%2062%2020%2062%2052C62%2084%2028%2072%2046%2044C62%2020%2088%2040%2094%2028%27%2F%3E%3C%2Fsvg%3E");}
@media(min-width:900px){.nos-panel{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16%);mask-image:linear-gradient(90deg,transparent 0,#000 16%)}}
@media(min-width:900px){.nos-row .nos-big,.nos-row.solo .nos-big,.nos-row:first-child .nos-big{padding-right:150px}.nos-row .nos-big::after{right:24px;top:20px}}
@media(max-width:899.98px){.nos-row .nos-big{padding-right:92px}.nos-row .nos-big::after{width:70px;height:70px;right:12px;top:12px}}

/* ===== v71 empresa / castillo, tono masculino ===== */
.nos-hero .eyebrow-l::before{background:#D4A13A}
.nos-in h1 span+span{color:#E0B050}
.nos-in h1::after{background:#D4A13A;transform:none;width:96px;height:7px}
.nos-panel::before{background:radial-gradient(ellipse at 52% 55%,rgba(111,149,198,.28),transparent 62%)}
.nos-panel .gr-heart>path:first-child{animation:gr-fill .5s ease 2.4s forwards}
.nos-panel .gr-heart{transform-origin:300px 384px;animation:gr-beat 2.2s ease-in-out 3s infinite}
.nos-panel .gr-flag{opacity:0;transform-origin:170px 246px;animation:gr-fade2 .5s ease 1.9s forwards,gr-wave 2.8s ease-in-out 2.4s infinite alternate}
.nos-panel .gr-win{opacity:0;animation:gr-win 4.6s ease-in-out infinite;animation-delay:calc(2.2s + var(--t))}
.nos-panel .gr-bd{opacity:0;animation:gr-fade2 .3s ease forwards;animation-delay:var(--d)}
.nos-panel .gr-arrow{stroke-dasharray:.04 .02}
@keyframes gr-fade2{to{opacity:1}}
@keyframes gr-wave{from{transform:scaleX(.9) skewY(-3deg)}to{transform:scaleX(1.05) skewY(3deg)}}
@keyframes gr-win{0%,100%{opacity:.25}40%,70%{opacity:1}}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-flag,.nos-panel .gr-win,.nos-panel .gr-bd{opacity:1}}
.nos-row:nth-child(1){--ac:#C9A24D;--acs:#1B2B49;--acd:#1B2B49}
.nos-row:nth-child(2){--ac:#6F95C6;--acs:#2F4B73;--acd:#2F4B73}
.nos-row:nth-child(3){--ac:#8C98A8;--acs:#2E3640;--acd:#2E3640}
.nos-row:nth-child(4){--ac:#C06A4E;--acs:#6B2A27;--acd:#7A2E26}
.nos-row:nth-child(5){--ac:#7FA38B;--acs:#26403A;--acd:#26403A}
.nos-row .nos-big,.nos-row .nos-sm{border-radius:3px!important}
.nos-row .nos-sm{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 2px,transparent 2px 13px);background-size:auto}
.nos-row .nos-sm .nos-hl{background:#EDE8DC;color:#0B1426;border-radius:2px}
.nos-row .nos-big::after{animation:nos-nudge 4.5s ease-in-out infinite alternate;transform:none}
@keyframes nos-nudge{from{transform:translate(0,0)}to{transform:translate(-5px,4px)}}
.nos-row:nth-child(1){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%23D4A13A%27%20stroke-width%3D%2711%27%20stroke-linecap%3D%27square%27%20stroke-linejoin%3D%27miter%27%3E%3Cpath%20d%3D%27M12%2084V60H34V84M42%2084V40H64V84M72%2084V18H94V84%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(2){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%236F95C6%27%20stroke-width%3D%2711%27%20stroke-linecap%3D%27square%27%20stroke-linejoin%3D%27miter%27%3E%3Cpath%20d%3D%27M12%2018L44%2050L12%2082M44%2018L76%2050L44%2082M76%2018L108%2050L76%2082%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(3){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%238C98A8%27%20stroke-width%3D%2711%27%20stroke-linecap%3D%27square%27%20stroke-linejoin%3D%27miter%27%3E%3Cpath%20d%3D%27M50%208L88%2022V50C88%2072%2070%2086%2050%2094C30%2086%2012%2072%2012%2050V22Z%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(4){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%23C06A4E%27%20stroke-width%3D%2711%27%20stroke-linecap%3D%27square%27%20stroke-linejoin%3D%27miter%27%3E%3Cpath%20d%3D%27M34%2010L26%2090M70%2010L62%2090M10%2034H92M8%2066H90%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(5){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%237FA38B%27%20stroke-width%3D%2711%27%20stroke-linecap%3D%27square%27%20stroke-linejoin%3D%27miter%27%3E%3Cpath%20d%3D%27M10%2080H36V50H62V22H90M62%2022V8M90%2022V8%27%2F%3E%3C%2Fsvg%3E");}

/* ===== v72 arte urbano moderno, sin corazon ===== */
.nos-panel .gr-bld{transform-box:fill-box;transform-origin:50% 100%;animation:gr-rise 1.5s cubic-bezier(.2,.9,.25,1) .5s both}
.nos-panel .gr-sun{transform-box:fill-box;transform-origin:50% 100%;animation:gr-sunrise 2s cubic-bezier(.2,.8,.3,1) .1s both}
.nos-panel .gr-sp{opacity:0;animation:gr-fade2 .2s ease forwards;animation-delay:var(--d)}
.nos-panel .gr-win{animation-delay:calc(2s + var(--t))}
@keyframes gr-rise{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes gr-sunrise{from{transform:translateY(190px)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-bld,.nos-panel .gr-sun{animation:none!important}.nos-panel .gr-sp{opacity:1}}
.nos-panel::before{background:radial-gradient(ellipse at 50% 70%,rgba(224,176,80,.16),transparent 62%)}
.nos-row:nth-child(4){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%23C06A4E%27%20stroke-width%3D%279%27%20stroke-linecap%3D%27square%27%20stroke-linejoin%3D%27miter%27%3E%3Cpath%20d%3D%27M50%2012V88M16%2028H84M16%2028L4%2062H28ZM84%2028L72%2062H96ZM30%2090H70%27%2F%3E%3C%2Fsvg%3E");}

/* ===== v73 Brooklyn / corporativo underground ===== */
.nos-hero{background-color:#0B1426;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2796%27%20height%3D%2764%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27rgba%28255%2C255%2C255%2C.055%29%27%20stroke-width%3D%272%27%3E%3Cpath%20d%3D%27M0%2032H96M0%2064H96M0%200V32M48%2032V64%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"),radial-gradient(ellipse at 70% 60%,rgba(224,176,80,.10),transparent 60%);background-size:96px 64px,auto}
.nos-in h1::after{width:230px;height:16px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20240%2018%27%20preserveAspectRatio%3D%27none%27%3E%3Cpath%20d%3D%27M3%2011C40%204%2080%2013%20120%208S200%205%20237%209%27%20fill%3D%27none%27%20stroke%3D%27%23E0B050%27%20stroke-width%3D%279%27%20stroke-linecap%3D%27round%27%2F%3E%3Cpath%20d%3D%27M10%2015C70%2011%20150%2014%20215%2012%27%20fill%3D%27none%27%20stroke%3D%27%23E0B050%27%20stroke-width%3D%273%27%20stroke-linecap%3D%27round%27%20opacity%3D%27.6%27%2F%3E%3C%2Fsvg%3E") center/100% 100% no-repeat;transform:rotate(-1.2deg);margin-top:26px}
.nos-hero .eyebrow-l::before{width:34px;height:6px;transform:rotate(-3deg)}

/* ===== v74 neo-gotico, fondo azul claro ===== */
.nos-hero{background-color:#E6F0FA;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2796%27%20height%3D%2764%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27rgba%2838%2C57%2C92%2C.07%29%27%20stroke-width%3D%272%27%3E%3Cpath%20d%3D%27M0%2032H96M0%2064H96M0%200V32M48%2032V64%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"),radial-gradient(ellipse at 70% 60%,rgba(237,184,74,.18),transparent 60%);background-size:96px 64px,auto}
.nos-hero .eyebrow-l{color:#1B2B49!important}
.nos-hero .eyebrow-l::before{background:#C9962E}
.nos-in h1,.nos-in h1.nos-lema,.nos-in h1 span{color:#1B2B49}
.nos-in h1 span+span{color:#9A6B14}
.nos-in h1::after{background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20240%2018%27%20preserveAspectRatio%3D%27none%27%3E%3Cpath%20d%3D%27M3%2011C40%204%2080%2013%20120%208S200%205%20237%209%27%20fill%3D%27none%27%20stroke%3D%27%23C9962E%27%20stroke-width%3D%279%27%20stroke-linecap%3D%27round%27%2F%3E%3Cpath%20d%3D%27M10%2015C70%2011%20150%2014%20215%2012%27%20fill%3D%27none%27%20stroke%3D%27%23C9962E%27%20stroke-width%3D%273%27%20stroke-linecap%3D%27round%27%20opacity%3D%27.6%27%2F%3E%3C%2Fsvg%3E") center/100% 100% no-repeat}
.nos-panel::before{background:radial-gradient(ellipse at 50% 70%,rgba(255,255,255,.55),transparent 62%)}
.nos-panel .gr-dots{animation:none;opacity:.5}
.nos-panel::before{background:none}
.nos-hero{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20width%3D%2796%27%20height%3D%2764%27%3E%3Cg%20fill%3D%27none%27%20stroke%3D%27rgba%2838%2C57%2C92%2C.07%29%27%20stroke-width%3D%272%27%3E%3Cpath%20d%3D%27M0%2032H96M0%2064H96M0%200V32M48%2032V64%27/%3E%3C/g%3E%3C/svg%3E")!important;background-size:96px 64px!important}

/* ===== v74 apoyo en los problemas ===== */
.nos-panel .gr-push{animation:gr-push 1.8s ease-in-out infinite;animation-delay:calc(2.6s + var(--t));opacity:0;animation-fill-mode:both}
@keyframes gr-push{0%{opacity:0;transform:translateX(26px)}25%{opacity:1}70%{opacity:1;transform:translateX(-4px)}100%{opacity:0;transform:translateX(-8px)}}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-push{animation:none!important;opacity:1}}
.nos-row:nth-child(3){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%238C98A8%27%20stroke-width%3D%279%27%20stroke-linecap%3D%27square%27%20stroke-linejoin%3D%27miter%27%3E%3Cpath%20d%3D%27M6%2072H94M6%2072V56M94%2072V56M6%2056C26%2020%2074%2020%2094%2056M30%2072V32M50%2072V26M70%2072V32%27%2F%3E%3C%2Fsvg%3E");}
.nos-row:nth-child(4){--mk:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20100%20100%27%20fill%3D%27none%27%20stroke%3D%27%23C06A4E%27%20stroke-width%3D%279%27%20stroke-linecap%3D%27square%27%20stroke-linejoin%3D%27miter%27%3E%3Cpath%20d%3D%27M12%2094V52C12%2030%2038%2016%2050%206C62%2016%2088%2030%2088%2052V94M34%2094V58C34%2046%2044%2040%2050%2034C56%2040%2066%2046%2066%2058V94%27%2F%3E%3C%2Fsvg%3E");}

/* ===== v75 faro: afiche tormenta, apoyo y crecimiento ===== */
.nos-panel .gr-poster{transform-origin:300px 320px}
.nos-panel .gr-c1{animation:gr-drift 9s ease-in-out infinite alternate}
.nos-panel .gr-c2{animation:gr-drift 7s ease-in-out -3s infinite alternate-reverse}
@keyframes gr-drift{from{transform:translateX(-14px)}to{transform:translateX(14px)}}
.nos-panel .gr-rain{animation:gr-rainfall 1.5s linear infinite}
@keyframes gr-rainfall{from{transform:translateY(0)}to{transform:translateY(112px)}}
.nos-panel .gr-flash{opacity:0;animation:gr-bolt 6s linear 3s infinite}
@keyframes gr-bolt{0%,81%,87%,100%{opacity:0}82%{opacity:1}84%{opacity:.2}85%{opacity:1}}
.nos-panel .gr-beam{transform-origin:150px 311px;animation:gr-sway 7s ease-in-out 1.6s infinite alternate;opacity:0;animation-fill-mode:both}
@keyframes gr-sway{0%{opacity:1;transform:rotate(-4deg)}100%{opacity:1;transform:rotate(4deg)}}
.nos-panel .gr-glow{transform-box:fill-box;transform-origin:50% 50%;animation:gr-pulse 2.4s ease-in-out infinite alternate}
@keyframes gr-pulse{from{transform:scale(.85);opacity:.7}to{transform:scale(1.25);opacity:1}}
.nos-panel .gr-lh{transform-origin:150px 604px}
.nos-panel .gr-win{animation-delay:calc(2.4s + var(--t))}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-beam{opacity:1;animation:none!important}.nos-panel .gr-flash{opacity:0}}
@media(min-width:900px){.nos-panel{-webkit-mask-image:none!important;mask-image:none!important}}

/* ===== v76 problema, apoyo, crecimiento ===== */
.nos-panel .gr-poster{transform-origin:320px 300px}
.nos-panel .gr-fig{opacity:0;animation:gr-figin .8s ease forwards;animation-delay:var(--d)}
@keyframes gr-figin{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.nos-panel .gr-climb{animation:gr-climb 2.6s cubic-bezier(.3,.7,.3,1) 3s both}
@keyframes gr-climb{0%{opacity:0;transform:translate(-80px,38px)}25%{opacity:1}100%{opacity:1;transform:none}}
.nos-panel .gr-glass{animation:gr-glint 5s ease-in-out infinite alternate}
@keyframes gr-glint{from{opacity:.75}to{opacity:1}}
.nos-panel .gr-glow{transform-origin:470px 330px}
.nos-panel .gr-win{animation-delay:calc(1.5s + var(--t))}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-fig,.nos-panel .gr-climb{opacity:1;animation:none!important}}
@media(max-width:899.98px){.nos-panel svg{left:10px;width:calc(100% - 20px)}.nos-panel{height:400px}}

/* ===== v77 sol, sin cintas, tono mas sobrio ===== */
.nos-panel .gr-sunb{animation:gr-sunup 2.6s cubic-bezier(.2,.8,.3,1) 1.2s both}
@keyframes gr-sunup{from{transform:translateY(150px)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-sunb{animation:none!important}}
.nos-in h1::after{background:#1B2B49;width:110px;height:8px;transform:none;margin-top:30px}
.nos-hero .eyebrow-l::before{transform:none;height:6px;width:40px;background:#1B2B49}

/* ===== v78 fondo blanco, plantas, marco vivo ===== */
.nos-hero{background:#fff!important;background-image:none!important}
.nos-panel{overflow:visible}
.nos-hero{overflow:hidden}
.nos-panel .gr-plant{opacity:0;transform-box:fill-box;transform-origin:50% 100%;animation:gr-grow 1.4s cubic-bezier(.2,.9,.3,1) forwards,gr-sway 6s ease-in-out 2s infinite alternate;animation-delay:var(--d),calc(2s + var(--d))}
@keyframes gr-grow{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}
@keyframes gr-sway{from{transform:rotate(-1.6deg)}to{transform:rotate(1.6deg)}}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-plant{opacity:1;animation:none!important}}

/* ===== v79 racimos de uvas ===== */
.nos-panel .gr-leaf{transform-box:fill-box;transform-origin:50% 100%;opacity:0;animation:gr-pop .7s cubic-bezier(.3,1.5,.5,1) forwards;animation-delay:var(--d)}
@keyframes gr-pop{from{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}
.nos-panel .gr-clus{transform-box:fill-box;transform-origin:50% 0%;opacity:0;animation:gr-clin .8s ease forwards,gr-swing 5s ease-in-out 3s infinite alternate;animation-delay:var(--d),calc(2.6s + var(--d))}
@keyframes gr-clin{from{opacity:0;transform:translateY(-14px) scale(.6)}to{opacity:1;transform:none}}
@keyframes gr-swing{from{transform:rotate(-2.5deg)}to{transform:rotate(2.5deg)}}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-leaf,.nos-panel .gr-clus{opacity:1;animation:none!important}}
/* ===== v80 planta regada, marco naranja, figuras corporativas ===== */
.nos-panel .gr-sprout{transform-box:fill-box;opacity:0;animation:gr-pop .9s cubic-bezier(.3,1.5,.5,1) 3.6s forwards}
.nos-panel .gr-wd{opacity:0;animation:gr-wfall 1.6s cubic-bezier(.5,0,.9,.6) infinite;animation-delay:calc(2.4s + var(--t))}
@keyframes gr-wfall{0%{opacity:0;transform:translateY(0)}12%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translateY(92px)}}
.nos-panel .gr-can{transform-box:fill-box;transform-origin:70% 60%;animation:gr-tilt 3.2s ease-in-out 2s infinite alternate}
@keyframes gr-tilt{from{transform:rotate(-3deg)}to{transform:rotate(3deg)}}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-sprout{opacity:1;animation:none!important}.nos-panel .gr-wd{display:none}}
/* ===== v81 pared de oficina, imagen anexa, nuevo lema ===== */
.nos-panel{overflow:hidden!important;background-color:#B8500F!important;
 background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.12) 0 3px,transparent 3px 44px),linear-gradient(180deg,rgba(255,255,255,.07),rgba(0,0,0,.14))!important;
 border-left:12px solid #8F3C08!important;width:50%}
.nos-panel::before{display:none!important}
.nos-panel::after{content:"";position:absolute;left:0;right:0;bottom:0;height:56px;background:linear-gradient(180deg,#0F1B33,#1B2B49);border-top:10px solid #F4D9BC;box-sizing:border-box;z-index:0}
.nos-panel svg{z-index:1;bottom:8px!important;height:calc(100% - 8px)!important}
.nos-panel .gr-wallpic{animation:gr-fade2 1s ease .2s both;opacity:0}
.nos-in h1 span+span{color:#B8500F!important}
.nos-hero .eyebrow-l::before{background:#B8500F}
@media(max-width:899.98px){.nos-panel{width:100%;border-left:0;border-top:10px solid #8F3C08!important;height:430px}}

/* v83 */
.nos-panel .gr-wallpic{opacity:1!important;animation:gr-fadein 1s ease .2s backwards!important}
@keyframes gr-fadein{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-wallpic{animation:none!important}}

/* v83 masculino */
.nos-in h1,.nos-in h1 span{font-family:"Libre Baskerville",Georgia,"Times New Roman",serif!important;font-weight:700!important;letter-spacing:-.01em;line-height:1.12}
.nos-in h1 span+span{font-style:italic;font-weight:700!important}
.nos-in h1::after{width:140px!important;height:12px!important;border-radius:0!important;background:#0B1426!important}
.nos-hero .eyebrow-l::before{height:5px!important;width:46px!important;border-radius:0}
.nos-hero .eyebrow-l{font-weight:700;letter-spacing:.22em}
.nos-panel{background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.30) 0 5px,transparent 5px 46px),repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 2px,transparent 2px 46px),linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.22))!important;background-color:#9C430B!important}
.nos-panel::after{background:linear-gradient(180deg,#1A2233,#0F1522)!important;border-top:10px solid #4A5468!important}

/* v84 sobrio corporativo */
.nos-panel{background-color:#8C543A!important;background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.26) 0 4px,transparent 4px 46px),repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 2px,transparent 2px 46px),linear-gradient(180deg,rgba(255,255,255,.03),rgba(0,0,0,.20))!important;border-left:12px solid #55311F!important}
@media(max-width:899.98px){.nos-panel{border-top:10px solid #55311F!important}}
.nos-panel .gr-desk{opacity:1;animation:gr-fadein .9s ease .5s backwards}
@media(prefers-reduced-motion:reduce){.nos-panel .gr-desk{animation:none}}
.nos-in h1 span+span{color:#9A5A2E!important}
.nos-hero .eyebrow-l::before{background:#9A5A2E!important}

/* v85 solo pared */
.nos-panel::after{display:none!important}
.nos-panel svg{bottom:0!important;height:100%!important}

/* v87 pared blanca */
.nos-panel{background:#fff!important;background-image:none!important;border:0!important}
@media(max-width:899.98px){.nos-panel{border:0!important;height:400px}}
@media(max-width:899.98px){.nos-panel{height:300px!important}}

/* v88 cierre nítido del hero (sin velo blanco) */
.lp-hero__fade{display:none!important}
.lp-hero{border-bottom:6px solid #16294A}
.lp-cue a{width:46px;height:46px;border-radius:50%;background:rgba(11,20,38,.72);color:#fff!important;filter:none!important;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(3px);transition:background .25s}
.lp-cue a:hover{background:#16294A}
.lp-cue svg{width:22px;height:13px}
.lp-svc{padding-top:clamp(84px,10vw,140px)!important}
.lp-svc{padding-top:clamp(56px,6vw,84px)!important}

/* v89 hero a pantalla completa */
.lp-hero{height:100vh!important;height:100svh!important;min-height:520px!important;max-height:none!important;box-sizing:border-box}

/* v92 lema claro + contacto claro */
.lp-motto{background:linear-gradient(180deg,#F5F8FD 0,#E4ECF8 100%)!important;color:#16294A!important;min-height:clamp(380px,56vh,540px)!important;border-top:6px solid #16294A}
.lp-motto .lm-stage,.lp-motto .lm-tag,.lp-motto .lm-shade,.lp-motto .lp-motto__bg{display:none!important}
.lp-motto blockquote{padding:84px 22px 92px!important;text-align:center}
.lp-motto blockquote span{font-family:"Libre Baskerville",Georgia,"Times New Roman",serif!important;font-weight:700!important;font-size:clamp(2rem,5vw,4.4rem)!important;line-height:1.14!important;letter-spacing:-.015em!important;color:#16294A!important;text-shadow:none!important}
.lp-motto blockquote span+span{font-style:italic;color:#9A5A2E!important}
.lp-motto blockquote::after{content:"";display:block;width:120px;height:10px;background:#16294A;margin:38px auto 0}
body:has(.hdr.is-home) .lp-contact{background:#fff!important;color:#16294A!important}
.lp-contact .lp-h2{color:#16294A!important}
.lp-contact p{color:#4E5C75!important}
.lp-contact .lp-eyebrow{color:#9A5A2E!important}
.lp-contact .logo{--logo-main:#16294A;--logo-sub:#3A68A0}
.lp-form label{border-bottom-color:rgba(22,41,74,.28)!important}
.lp-form label span{color:#6A7791!important}
.lp-form input,.lp-form select,.lp-form textarea{color:#16294A!important}
.lp-form label:focus-within{border-bottom-color:#16294A!important}
.lp-form label:focus-within span,.lp-form label.has span{color:#9A5A2E!important}
.lp-form label:has(select)::after{border-color:#16294A!important}
.lp-send{background:#16294A!important;color:#fff!important}
.lp-send i{background:#fff!important;color:#16294A!important}
.lp-contact .lp-note{color:#6A7791!important}
/* v92 WhatsApp flotante fuera de Servicios y de cada servicio */
body:has(.view[data-id="servicios"]:not([hidden])) .fab-wa,
body:has(.view[data-grp="servicios"]:not([hidden])) .fab-wa,
body:has(.view[data-id="marcas-y-derecho-de-autor"]:not([hidden])) .fab-wa{display:none!important}
/* v92 encabezado de servicio compacto */
.mh-th .cthero-in{padding:40px 22px 44px!important}
@media(min-width:1024px){.mh-th .cthero-in{padding:46px 40px 50px!important}}
.mh-th .crumbs{margin-bottom:14px!important;font-size:13px}
.mh-th h1.disp{font-size:clamp(1.7rem,2.9vw,2.7rem)!important;max-width:none!important;line-height:1.12!important;white-space:nowrap;letter-spacing:-.005em}
.mh-th h1.disp::after{content:"";display:block;width:52px;height:4px;background:var(--ac,#E2C792);margin:16px auto 0}
.mh-th .mh-s{margin:16px auto 0!important;max-width:none!important;font-size:clamp(14px,1.15vw,16.5px)!important;white-space:nowrap}
@media(max-width:700px){.mh-th h1.disp,.mh-th .mh-s{white-space:normal}.mh-th h1.disp{font-size:clamp(1.45rem,6.6vw,1.9rem)!important;text-wrap:balance}}
body:has(.hdr.is-home) .lp-contact{padding:76px 0 80px!important}
.lp-motto{min-height:clamp(340px,48vh,470px)!important}
.lp-motto blockquote{padding:70px 22px 78px!important}
@media(max-width:600px){.lp-motto blockquote span{font-size:clamp(1.55rem,6.8vw,1.9rem)!important}}

/* ===== v93 · Inicio con profundidad: áreas, lema y contacto ===== */
.lp-svc{background:
 radial-gradient(58% 72% at 76% 42%,rgba(42,98,214,.22),transparent 72%),
 radial-gradient(38% 46% at 6% 96%,rgba(22,41,74,.16),transparent 72%),
 linear-gradient(rgba(22,41,74,.055) 1px,transparent 1px) 0 0/46px 46px,
 linear-gradient(90deg,rgba(22,41,74,.055) 1px,transparent 1px) 0 0/46px 46px,
 linear-gradient(180deg,#F2F6FD 0,#DCE7F8 58%,#C6D7F1 100%)!important}
.lp-svc::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(90deg,#16294A,#2A62D6 55%,#16294A);pointer-events:none}
.lpc-card{background:linear-gradient(180deg,#fff 0,#EDF3FD 100%)!important;border:1px solid rgba(22,41,74,.2)!important;border-bottom:5px solid #16294A!important;box-shadow:0 70px 100px -56px rgba(14,36,92,.85),0 1px 0 rgba(255,255,255,.9) inset!important}
.lpc-card.is-c{border-bottom-color:#2A62D6!important}
.lpc-card.is-n,.lpc-card.is-p,.lpc-card.is-n2{box-shadow:0 40px 70px -50px rgba(14,36,92,.7)!important}
.lpc-n{color:#16294A}
.lpc-idx{display:none}
@media(min-width:1024px){
 .lpc>.lpc-idx{grid-area:s;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;padding:0 0 0 2px;min-height:0}
 .lpc-idx b{font-family:"Libre Baskerville",Georgia,serif;font-weight:700;font-size:clamp(4.6rem,8vw,7.6rem);line-height:.9;letter-spacing:-.04em;color:#16294A;display:block}
 .lpc-idx b.tick{animation:lpIdx .6s cubic-bezier(.2,.7,.2,1)}
 .lpc-idx span{font:600 13px/1 var(--sans);letter-spacing:.3em;color:#2A62D6;margin-top:6px}
 .lpc-idx em{display:block;margin-top:16px;padding-top:16px;border-top:3px solid #9A5A2E;width:min(100%,260px);font:italic 400 clamp(1.05rem,1.25vw,1.3rem)/1.3 "Libre Baskerville",Georgia,serif;color:#9A5A2E;min-height:3.4em}
}
@keyframes lpIdx{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* tarjeta de Litigios: mazo en cristal */
.lpc-ph--gavel{background:radial-gradient(120% 90% at 50% 0,#FAFCFF 0,#DCE8FA 55%,#B9CEEF 100%);display:grid;place-items:center}
.lpc-ph--gavel::before{display:block!important;filter:none!important;transform:none!important;animation:none!important;background:linear-gradient(rgba(42,98,214,.12) 1px,transparent 1px) 0 0/34px 34px,linear-gradient(90deg,rgba(42,98,214,.12) 1px,transparent 1px) 0 0/34px 34px!important;-webkit-mask-image:radial-gradient(75% 75% at 50% 55%,#000,transparent);mask-image:radial-gradient(75% 75% at 50% 55%,#000,transparent)}
.lpc-ph--gavel::after{display:none!important}
.lpc-ph--gavel .gv{position:relative;z-index:1;width:96%;max-width:none;margin-top:8%}
/* lema */
.lp-motto{position:relative;overflow:hidden;background:
 radial-gradient(46% 70% at 12% 100%,rgba(42,98,214,.14),transparent 72%),
 radial-gradient(50% 80% at 88% 0,rgba(42,98,214,.20),transparent 72%),
 linear-gradient(rgba(22,41,74,.05) 1px,transparent 1px) 0 0/46px 46px,
 linear-gradient(90deg,rgba(22,41,74,.05) 1px,transparent 1px) 0 0/46px 46px,
 linear-gradient(180deg,#F6F9FE 0,#DCE7F8 100%)!important}
.lp-motto::before{content:"";position:absolute;right:0;bottom:0;width:min(48%,620px);height:78%;background:linear-gradient(180deg,rgba(22,41,74,.0),rgba(22,41,74,.13));clip-path:polygon(0 100%,0 86%,16% 86%,16% 72%,32% 72%,32% 58%,48% 58%,48% 44%,64% 44%,64% 30%,80% 30%,80% 16%,100% 16%,100% 100%);pointer-events:none}
.lp-motto blockquote{position:relative;z-index:1}
.lp-motto blockquote::after{width:260px!important;height:16px!important;margin:34px auto 0!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 16'%3E%3Cpath d='M0 8H108M152 8H260' stroke='%239A5A2E' stroke-width='1.6'/%3E%3Cpath d='M130 2l6 6-6 6-6-6z' fill='%239A5A2E'/%3E%3C/svg%3E") center/contain no-repeat!important}
@media(max-width:700px){.lp-motto::before{width:70%;height:46%}}
/* contacto */
body:has(.hdr.is-home) .lp-contact{background:linear-gradient(180deg,#DCE7F8 0,#F3F7FD 38%,#fff 100%)!important;position:relative}
.lp-form{background:#fff;padding:clamp(24px,3vw,40px)!important;border:1px solid rgba(22,41,74,.12);border-top:5px solid #16294A;box-shadow:0 50px 80px -48px rgba(14,36,92,.55)}
.lp-form label:first-child{padding-top:4px!important}

/* ===== v103 · Áreas de práctica: cuadrícula de objetos de vidrio ===== */
.lp-areas{position:relative;padding:clamp(64px,8vw,116px) 0 clamp(72px,8vw,120px);color:#12203C;overflow:hidden;
  background:
   radial-gradient(70% 48% at 50% 0%,rgba(205,223,250,.55),rgba(205,223,250,0) 70%),
   linear-gradient(180deg,#fff 0%,#F4F8FE 46%,#EEF4FD 100%)}
.lp-areas::before{content:"";position:absolute;left:50%;top:0;width:1px;height:clamp(48px,6vw,84px);background:linear-gradient(180deg,rgba(42,98,214,0),rgba(42,98,214,.5))}
.lp-areas::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .55  0 0 0 0 .62  0 0 0 0 .75  0 0 0 .09 0'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>")}
.la-in{position:relative;max-width:1360px;margin:0 auto;padding:0 clamp(18px,4.5vw,72px)}
.la-head{text-align:center;margin:0 auto clamp(34px,4.6vw,64px);max-width:720px}
.la-h{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem,4.2vw,3.5rem);line-height:1.06;letter-spacing:-.012em;color:#16294A;text-wrap:balance}
.la-h::after{content:"";display:block;width:56px;height:2px;margin:18px auto 0;background:#9A5A2E;opacity:.85}
.la-sub{margin:16px 0 0;font-size:clamp(15px,1.3vw,17px);color:rgba(18,32,60,.62)}
.la-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(8px,1.2vw,20px) clamp(8px,1.2vw,20px)}
.la-c{--w:calc((100% - 4*clamp(8px,1.2vw,20px))/5);position:relative;flex:0 0 var(--w);max-width:var(--w);display:flex;flex-direction:column;align-items:stretch;text-decoration:none;color:inherit;
  padding:clamp(6px,.9vw,14px) clamp(4px,.6vw,10px) clamp(14px,1.4vw,20px);border-radius:3px;
  transition:transform .45s cubic-bezier(.2,.7,.2,1),background-color .35s,box-shadow .45s;-webkit-tap-highlight-color:transparent}
.la-img{display:block;width:100%;aspect-ratio:640/520;background:var(--img) center/contain no-repeat;mix-blend-mode:multiply;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.la-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;padding:12px 6px 0;min-height:3.1em;border-top:1px solid rgba(22,41,74,.12)}
.la-n{font-family:var(--serif);font-size:clamp(14.5px,1.25vw,18px);line-height:1.25;color:#16294A;text-align:left;text-wrap:balance}
.la-go{flex:0 0 auto;width:26px;height:26px;border-radius:50%;border:1px solid rgba(22,41,74,.32);display:grid;place-items:center;color:#16294A;transition:background-color .3s,border-color .3s,color .3s,transform .3s}
.la-go svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.la-c:hover,.la-c:focus-visible{background:rgba(255,255,255,.72);box-shadow:0 30px 50px -34px rgba(22,50,110,.45)}
.la-c:hover .la-img,.la-c:focus-visible .la-img{transform:translateY(-6px) scale(1.035)}
.la-c:hover .la-go,.la-c:focus-visible .la-go{background:#2A62D6;border-color:#2A62D6;color:#fff;transform:translateX(3px)}
.la-c:focus-visible{outline:2px solid #2A62D6;outline-offset:2px}
.la-grid.la-pre .la-c{opacity:0;transform:translateY(22px)}
.la-grid .la-c.in{opacity:1;transform:none;transition:opacity .8s ease calc(var(--i)*70ms),transform .8s cubic-bezier(.2,.7,.2,1) calc(var(--i)*70ms),background-color .35s,box-shadow .45s}
@media(max-width:1100px){.la-c{--w:calc((100% - 2*clamp(8px,1.2vw,20px))/3)}}
@media(max-width:640px){.la-c{--w:calc((100% - 8px)/2)}.la-row{gap:6px}.la-go{width:22px;height:22px}.la-go svg{width:13px;height:13px}.la-n{font-size:14px}}
@media(prefers-reduced-motion:reduce){.la-grid.la-pre .la-c{opacity:1;transform:none}.la-c,.la-img,.la-go{transition:none!important}.la-c:hover .la-img{transform:none}}

/* ===== v104 · Servicios: carrusel sobre muro de museo (sin marco ni zócalo) ===== */
.lp-svc{background:
 radial-gradient(46% 78% at 24% -6%,rgba(255,255,255,.8),rgba(255,255,255,0) 72%),
 radial-gradient(46% 78% at 76% -6%,rgba(255,255,255,.7),rgba(255,255,255,0) 72%),
 radial-gradient(120% 95% at 50% 38%,rgba(255,255,255,0) 56%,rgba(60,78,112,.13) 100%),
 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='720' height='720'><filter id='p' x='0' y='0' width='100%' height='100%'><feTurbulence type='fractalNoise' baseFrequency='.006 .009' numOctaves='5' seed='9' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .36  0 0 0 0 .43  0 0 0 0 .56  0 0 0 .24 0'/></filter><rect width='720' height='720' filter='url(%23p)'/></svg>") 0 0/720px 720px,
 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .3  0 0 0 0 .36  0 0 0 0 .48  0 0 0 .13 0'/></filter><rect width='220' height='220' filter='url(%23g)'/></svg>") 0 0/220px 220px,
 linear-gradient(180deg,#F7F9FC 0,#EBF0F7 58%,#DEE6F1 100%)!important}
.lp-svc__h{color:#16294A}
.lp-svc__sub{color:rgba(18,32,60,.6)}
/* tarjetas como piezas colgadas: sombra proyectada sobre el muro */
.lpc-card{box-shadow:0 46px 62px -42px rgba(30,46,80,.55),0 14px 22px -14px rgba(30,46,80,.28),0 1px 0 rgba(255,255,255,.9) inset!important}
.lpc-card.is-n,.lpc-card.is-p,.lpc-card.is-n2{box-shadow:0 30px 48px -36px rgba(30,46,80,.45),0 8px 16px -12px rgba(30,46,80,.2)!important}
/* un toque de color vivo en las fotografías */
.lpc-ph::after{background:linear-gradient(165deg,rgba(42,110,240,.7),rgba(20,44,100,.84))!important}

/* ===== v106 · Servicios: fotografías a todo color ===== */
.lpc-ph::before{filter:saturate(1.12) contrast(1.04) brightness(1.02)!important}
.lpc-ph::after{display:none!important}
.lpc-ph--scroll{background:#DDE6F4}
.lpc-ph--scroll::before{filter:saturate(1.15) contrast(1.03) brightness(1)!important}
.lpc-ph--none{background:radial-gradient(90% 80% at 50% 28%,#FBFDFF 0,#E6EFFC 62%,#CFDDF4 100%)!important;display:block!important}
.lpc-ph--none::before{display:block!important;background:var(--img) center 54%/86% auto no-repeat!important;mix-blend-mode:multiply;filter:none!important;transform:none!important;animation:none!important}

/* ===== v107 · Sección final: escena con lema y contacto (sin banco de mármol) ===== */
.lp-final{position:relative;isolation:isolate;overflow:hidden;color:#16294A;background:#EBD8C0 var(--i-final-scene) center top/100% 100% no-repeat;border-top:0}
.lp-final::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.4;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .45  0 0 0 0 .34  0 0 0 0 .22  0 0 0 .12 0'/></filter><rect width='200' height='200' filter='url(%23n)'/></svg>")}
.lf-in{position:relative;display:flex;flex-direction:column;gap:38px;padding:72px clamp(22px,6vw,60px) 64px}
.lf-lema{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(2rem,8vw,2.8rem);line-height:1.12;letter-spacing:-.012em;color:#14243F}
.lf-lema span{display:block;font-weight:700}
.lf-lema em{display:block;font-style:italic;font-weight:400;color:#A25A22}
.lf-rule{display:block;width:68px;height:2px;margin:28px 0 32px;background:#A25A22}
.lf-eyebrow{margin:0 0 14px;font-size:12.5px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:#A25A22}
.lf-h{margin:0;font-family:var(--serif);font-weight:700;font-size:clamp(1.6rem,6vw,2rem);line-height:1.15;color:#14243F}
.lf-sub{margin:16px 0 0;max-width:30ch;font-size:16px;line-height:1.6;color:rgba(20,36,63,.8)}
.lp-final .lf-form{width:100%;gap:4px;padding:clamp(24px,5vw,40px);background:rgba(250,247,242,.95);border:1px solid rgba(162,90,34,.16);box-shadow:0 56px 90px -54px rgba(74,46,16,.6),0 10px 24px -16px rgba(74,46,16,.25),0 1px 0 rgba(255,255,255,.8) inset}
.lp-final .lp-form label{border-bottom:1px solid rgba(20,36,63,.22);padding:24px 0 8px}
.lp-final .lp-form label span{color:rgba(20,36,63,.56);font-size:14.5px;top:26px}
.lp-final .lp-form label.has span,.lp-final .lp-form label:focus-within span{top:4px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#A25A22}
.lp-final .lp-form label:focus-within{border-bottom-color:#A25A22}
.lp-final .lp-form input,.lp-final .lp-form select,.lp-final .lp-form textarea{color:#14243F;font-size:16px}
.lp-final .lp-form select option{color:#14243F}
.lp-final .lp-form label:has(select)::after{border-color:#14243F}
.lp-final .lp-send{margin-top:28px;background:#0E1D38;border:1px solid #0E1D38;letter-spacing:.14em;text-transform:uppercase;font-size:12.5px;font-weight:600;gap:26px;padding:0 0 0 24px;height:52px;color:#fff;transition:transform .3s,box-shadow .3s}
.lp-final .lp-send i{width:52px;height:52px;background:#fff;color:#0E1D38;border-radius:0;border:1px solid #0E1D38;margin:-1px -1px -1px 0}
.lp-final .lp-note{margin:12px 0 0!important;color:rgba(20,36,63,.55)!important;font-size:12.5px!important}
/* tablet y móvil: la escena se recorta a la pared y al piso, el formulario va debajo del texto */
@media(max-width:1279px){.lp-final::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(248,238,224,.88) 0,rgba(248,238,224,.62) 30%,rgba(248,238,224,0) 52%)}}
@media(max-width:699px){.lp-final{background-size:auto 100%;background-position:0 0}}
@media(min-width:700px) and (max-width:1279px){.lp-final{background-size:200% auto;background-position:0 0;min-height:104vw}.lf-in{max-width:820px}}
/* escritorio: composición fiel a la escena (texto sobre la pared, formulario sobre la zona del ventanal) */
@media(min-width:1280px){
  .lp-final{aspect-ratio:1439/747;max-height:1080px}
  .lf-in{position:absolute;inset:0;display:block;padding:0}
  .lf-txt{position:absolute;left:10%;top:15%;width:42%}
  .lf-lema{font-size:3.05vw}
  .lf-rule{margin:2.1vw 0 2.4vw}
  .lf-h{font-size:2.2vw}
  .lf-sub{font-size:max(15px,1.05vw)}
  .lp-final .lf-form{position:absolute;left:52%;right:8%;top:30%;width:auto;padding:max(28px,2.6vw)}
}
@media(prefers-reduced-motion:reduce){.lp-final *{transition:none!important}}
body:has(.hdr.is-home) .lp-final{background-color:#EBD8C0;border-top:0}

/* v110 — Nosotros: hero tipo banner con la imagen del puente */
.nos-hero{position:relative;display:flex;align-items:center;background:linear-gradient(100deg,#F6F1E8 0%,#F3EEE6 48%,#EEE9E2 100%);min-height:clamp(330px,25vw,400px)!important;overflow:hidden}
.nos-hero .nos-pic{position:absolute;top:0;right:0;bottom:0;width:80%;background:var(--nos-pic) 0% 50%/cover no-repeat}
.nos-hero .nos-pic::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#F4EFE7 0%,#F4EFE7 16%,rgba(244,239,231,.94) 26%,rgba(244,239,231,.72) 34%,rgba(244,239,231,.36) 42%,rgba(244,239,231,.1) 51%,rgba(244,239,231,0) 60%)}
.nos-hero .nos-in{position:relative;z-index:1;width:100%;max-width:none;margin:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:16px;padding:clamp(48px,7vh,72px) calc(52% + 12px) clamp(48px,7vh,72px) max(64px,calc((100vw - 1280px)/2 + 64px))}
.nos-hero .eyebrow-l{font-size:11px;letter-spacing:.26em;color:#B0652C!important;font-weight:600;gap:12px}
.nos-hero .eyebrow-l::before{width:34px;height:2px;background:#B0652C}
.nos-in h1,.nos-in h1.nos-lema{font-size:clamp(2rem,3.5vw,3.3rem);line-height:1.06;letter-spacing:-.015em;font-weight:500;color:#14264A}
.nos-in h1 span{display:block;color:#14264A}
.nos-in h1 span+span{color:#A9622F;font-style:italic;font-weight:500;background:none}
.nos-in h1::after{display:none}
.nos-hero .nos-sub{margin:0;max-width:30em;font-size:clamp(14.5px,1.1vw,16px);line-height:1.6;color:#3A4A68}
.nos-hero .nos-go{display:inline-flex;align-items:center;gap:10px;margin-top:6px;padding-bottom:5px;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#A9622F;border-bottom:1px solid rgba(169,98,47,.55);text-decoration:none;transition:gap .25s,color .25s}
.nos-hero .nos-go:hover{gap:16px;color:#14264A;border-color:#14264A}
@media(max-width:899.98px){
 .nos-hero{flex-direction:column;align-items:stretch;min-height:0!important}
 .nos-hero .nos-in{order:1;padding:56px 22px 30px;gap:14px}
 .nos-hero .nos-pic{order:2;position:relative;width:100%;height:clamp(190px,52vw,300px);flex:none;background-position:26% 50%}
 .nos-hero .nos-pic::before{background:linear-gradient(180deg,#F4EFE7 0%,rgba(244,239,231,.6) 14%,rgba(244,239,231,0) 38%)}
 .nos-in h1,.nos-in h1.nos-lema{font-size:clamp(2rem,8.4vw,2.7rem)}
}
.nos-txt{overflow-x:clip}
.nos-hero{background:#F4EFE7!important;background-image:none!important}
@media(min-width:900px){.nos-hero .nos-in{padding-right:calc(44% + 12px)}.nos-in h1 span{white-space:nowrap}}

/* ===== v111 · Servicios del Home: lista editorial con vida ===== */
.lp-sv{position:relative;overflow:hidden;color:#12203C;padding:clamp(60px,7vw,104px) 0 clamp(64px,7vw,108px);
  background:
   radial-gradient(50% 40% at 92% 6%,rgba(255,255,255,.75),rgba(255,255,255,0) 70%),
   radial-gradient(44% 38% at 3% 98%,rgba(236,214,184,.38),rgba(236,214,184,0) 70%),
   linear-gradient(180deg,#FBF7F1 0%,#FAF5EF 50%,#F6EFE5 100%)}
.sv-in{position:relative;max-width:1240px;margin:0 auto;padding:0 clamp(20px,5vw,72px)}
.sv-eye{display:flex;align-items:center;gap:14px;margin:0 0 clamp(14px,1.8vw,22px);font-size:12px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:#5E6E8F}
.sv-eye::after{content:"";width:62px;height:1px;background:#B0652C}
.sv-h{margin:0 0 clamp(26px,3.4vw,46px);font-family:var(--serif);font-weight:400;font-size:clamp(1.9rem,3.6vw,3.2rem);line-height:1.1;letter-spacing:-.012em;color:#12244A;max-width:none;text-wrap:balance}
.sv-h em{display:block;font-style:italic;color:#2B54A0;font-weight:400}
.sv-list{position:relative;list-style:none;margin:0;padding:0;border-top:1px solid rgba(60,45,25,.22);--mx:50%;--my:50%}
.sv-list::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .5s;background:radial-gradient(340px 200px at var(--mx) var(--my),rgba(255,255,255,.7),rgba(255,255,255,0) 70%)}
.sv-list.lit::before{opacity:1}
.sv-li{position:relative;border-bottom:1px solid rgba(60,45,25,.16)}
.sv-r{position:relative;display:grid;grid-template-columns:clamp(36px,4.4vw,64px) minmax(0,1fr) clamp(92px,10vw,140px) 44px;align-items:center;column-gap:clamp(8px,1.4vw,22px);min-height:clamp(78px,6.4vw,92px);padding:6px clamp(4px,1vw,14px) 6px 0;color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
.sv-r::before{content:"";position:absolute;inset:0 0 0 -2px;background:linear-gradient(90deg,color-mix(in srgb,var(--ac) 9%,transparent),color-mix(in srgb,var(--ac) 2%,transparent) 62%,transparent);opacity:0;transition:opacity .35s}
.sv-r::after{content:"";position:absolute;left:-2px;top:14%;bottom:14%;width:3px;border-radius:2px;background:var(--ac);transform:scaleY(0);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.sv-n{position:relative;font-family:var(--serif);font-style:italic;font-size:clamp(15px,1.4vw,19px);color:var(--ac);opacity:.78;transition:opacity .3s,transform .4s cubic-bezier(.2,.8,.2,1);padding-left:clamp(6px,1vw,14px)}
.sv-t{position:relative;display:flex;flex-direction:column;gap:3px;min-width:0;transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.sv-t b{font-family:var(--serif);font-weight:400;font-size:clamp(1.3rem,2.45vw,2.2rem);line-height:1.12;letter-spacing:-.008em;color:#12244A;transition:color .3s}
.sv-t small{font-size:clamp(12.5px,1vw,14.5px);line-height:1.4;color:#5C6C8C;max-height:0;opacity:0;overflow:hidden;transition:max-height .4s ease,opacity .35s ease}
.sv-img{position:relative;display:block;width:100%;aspect-ratio:640/520;background:var(--img) center/contain no-repeat;mix-blend-mode:multiply;transform-origin:50% 70%;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.sv-go{position:relative;justify-self:end;width:36px;height:36px;border-radius:50%;border:1px solid rgba(22,41,74,.28);display:grid;place-items:center;color:#12244A;transition:background-color .3s,color .3s,border-color .3s,transform .4s cubic-bezier(.2,.8,.2,1)}
.sv-go svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
@media(hover:hover){
 .sv-r:hover::before,.sv-r:focus-visible::before{opacity:1}
 .sv-r:hover::after,.sv-r:focus-visible::after{transform:scaleY(1)}
 .sv-r:hover .sv-t,.sv-r:focus-visible .sv-t{transform:translateX(10px)}
 .sv-r:hover .sv-t b,.sv-r:focus-visible .sv-t b{color:var(--ac)}
 .sv-r:hover .sv-t small,.sv-r:focus-visible .sv-t small{max-height:3em;opacity:1}
 .sv-r:hover .sv-n,.sv-r:focus-visible .sv-n{opacity:1;transform:translateX(4px)}
 .sv-r:hover .sv-img,.sv-r:focus-visible .sv-img{transform:translateY(-6px) scale(1.32) rotate(-2deg)}
 .sv-r:hover .sv-go,.sv-r:focus-visible .sv-go{background:var(--ac);border-color:var(--ac);color:#fff;transform:translateX(4px)}
}
.sv-r:focus-visible{outline:2px solid var(--ac);outline-offset:-2px}
.sv-pre .sv-li{opacity:0;transform:translateY(16px)}
.sv-list.sv-pre .sv-li.in{opacity:1;transform:none;transition:opacity .7s ease calc(var(--i)*60ms),transform .7s cubic-bezier(.2,.7,.2,1) calc(var(--i)*60ms)}
@media(max-width:720px){
 .sv-r{grid-template-columns:30px minmax(0,1fr) 64px 32px;min-height:84px;column-gap:8px}
 .sv-t small{max-height:none;opacity:1;font-size:12.5px}
 .sv-t b{font-size:1.22rem}
 .sv-go{width:30px;height:30px}.sv-go svg{width:15px;height:15px}
 .sv-n{padding-left:2px}
}
@media(prefers-reduced-motion:reduce){.sv-pre .sv-li{opacity:1;transform:none}.sv-r *,.sv-r::before,.sv-r::after{transition:none!important}}

/* v113 — servicios del Home sin imágenes; contorno azul pastel de la página */
.sv-r{grid-template-columns:clamp(36px,4.4vw,64px) minmax(0,1fr) 44px}
.sv-img{display:none!important}
.sv-t b{font-size:clamp(1.4rem,2.6vw,2.4rem)}
@media(max-width:720px){.sv-r{grid-template-columns:30px minmax(0,1fr) 32px}}
:root{--pastel:#CFE0F4;--frame:clamp(7px,.95vw,15px)}
html{background:var(--pastel)}
body::after{content:"";position:fixed;inset:var(--frame);z-index:2147483000;pointer-events:none;border-radius:clamp(10px,1.3vw,20px);box-shadow:0 0 0 100vmax var(--pastel)}

/* v113 — foto final: menos pared, edificios del ventanal más grandes */
@media(min-width:1280px){
  .lf-txt{left:5.5%;top:13%;width:33%}
  .lf-lema{font-size:2.7vw}
  .lf-rule{margin:1.7vw 0 1.9vw}
  .lf-h{font-size:2vw}
  .lf-sub{font-size:max(14.5px,.98vw)}
  .lp-final .lf-form{left:39.4%;right:8.4%;top:43%;bottom:3.5%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto 1fr auto;column-gap:clamp(22px,2.4vw,40px);row-gap:0;padding:max(20px,1.9vw) max(26px,2.6vw);align-content:stretch}
  .lp-final .lf-form label:nth-of-type(3){grid-column:1/-1}
  .lp-final .lf-form .lp-send{grid-column:1;margin-top:max(14px,1.2vw);align-self:end}
  .lp-final .lf-form .lp-note{grid-column:2;align-self:end;margin:0 0 .9em!important}
  .lp-final .lf-form textarea{min-height:0;height:100%}
  .lp-final .lf-form label:nth-of-type(3){display:flex;flex-direction:column}
}
@media(min-width:1280px){.lp-final .lf-form .lp-send{justify-self:start;width:auto}}

/* v113 — Nosotros: texto arriba y panorama completo debajo (de la penumbra a la luz) */
.nos-hero{display:flex!important;flex-direction:column;align-items:stretch;min-height:0!important;background:#F6F2EA!important;background-image:none!important;overflow:hidden}
.nos-hero .nos-in{order:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-areas:"eye eye" "h1 sub" "h1 go";column-gap:clamp(28px,5vw,80px);row-gap:12px;align-items:end;width:100%;max-width:1240px;margin:0 auto;padding:clamp(38px,5vw,64px) clamp(22px,5vw,64px) clamp(26px,3vw,40px)}
.nos-hero .eyebrow-l{grid-area:eye}
.nos-hero .nos-in h1{grid-area:h1;margin:0}
.nos-hero .nos-sub{grid-area:sub;align-self:end;max-width:32em;margin:0}
.nos-hero .nos-go{grid-area:go;justify-self:start;margin-top:4px}
.nos-hero .nos-pic{order:2;position:relative;inset:auto;width:100%;height:auto;aspect-ratio:var(--nos-ar);max-height:none;background:var(--nos-pic) 0 0/100% 100% no-repeat;animation:nos-dawn 2.8s cubic-bezier(.2,.6,.2,1) both}
.nos-hero .nos-pic::before{background:linear-gradient(180deg,#F6F2EA 0,rgba(246,242,234,0) 9%)}
.nos-hero .nos-pic::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,24,46,.0) 0,rgba(255,236,190,.0) 100%);}
@keyframes nos-dawn{from{filter:brightness(.72) saturate(.8)}to{filter:none}}
.nos-in h1 span{white-space:normal}
@media(max-width:899.98px){
 .nos-hero .nos-in{grid-template-columns:1fr;grid-template-areas:"eye" "h1" "sub" "go";padding:46px 22px 26px;row-gap:14px}
 .nos-hero .nos-pic{aspect-ratio:auto;height:clamp(200px,54vw,300px);background-size:auto 100%;background-position:14% 0}
}
@media(prefers-reduced-motion:reduce){.nos-hero .nos-pic{animation:none}}

/* v114 — Nosotros: frase centrada, sin subfrase, imagen completa */
.nos-hero .nos-in{display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:16px;max-width:1100px;padding:clamp(40px,5vw,66px) clamp(22px,5vw,64px) clamp(28px,3.2vw,44px)}
.nos-hero .eyebrow-l{justify-content:center}
.nos-hero .eyebrow-l::after{content:"";width:34px;height:2px;background:#B0652C}
.nos-in h1{text-align:center}
.nos-hero .nos-go{justify-self:auto;margin-top:6px}
.nos-hero .nos-pic::before{display:none}
@media(max-width:899.98px){
 .nos-hero .nos-pic{height:auto;aspect-ratio:var(--nos-ar);background-size:100% 100%;background-position:0 0}
 .nos-hero .nos-in{padding:44px 22px 26px}
}
.nos-hero .eyebrow-l::before,.nos-hero .eyebrow-l::after{width:34px!important;height:2px!important;background:#B0652C!important}

/* v114 — servicios del Home: frase y acentos solo en rojo */
.lp-sv{--red:#B3372A}
.sv-li{--ac:var(--red)!important}
.sv-h,.sv-h em{color:var(--red)}
.sv-r::before{background:linear-gradient(90deg,rgba(179,55,42,.10),rgba(179,55,42,.03) 62%,transparent)}
.sv-n{opacity:.9}

/* v116 — fondo gris claro: contorno y sección de servicios */
:root{--pastel:#DEE1E6}
.lp-sv{background:
   radial-gradient(50% 40% at 92% 6%,rgba(255,255,255,.8),rgba(255,255,255,0) 70%),
   radial-gradient(44% 38% at 3% 98%,rgba(214,219,227,.5),rgba(214,219,227,0) 70%),
   linear-gradient(180deg,#F5F6F8 0%,#F1F2F5 50%,#EAECF0 100%)}
.sv-list{border-top-color:rgba(22,41,74,.2)}
.sv-li{border-bottom-color:rgba(22,41,74,.14)}

/* v117 — gris claro en toda la página (sin marco); Nosotros: una sola línea, sin etiqueta */
body::after{display:none!important}
:root{--g1:#F1F2F5;--g2:#E9ECF0;--g0:#F6F7F9}
html,body{background:var(--g1)!important}
.nos-hero,.nos-txt,.team-blk,.pn2,.sx{background:var(--g1)!important}
.blk-sand{background:var(--g2)!important}
.g6sec.pz-sec{background:linear-gradient(180deg,var(--g0) 0,var(--g1) 45%,var(--g2) 100%)!important}
.nos-hero .nos-in h1{max-width:none}
.nos-in h1 span{display:inline!important;white-space:nowrap}
.nos-in h1 span+span{margin-left:.25em}
.nos-hero .nos-in{max-width:1400px}
.nos-in h1,.nos-in h1.nos-lema{font-size:clamp(1.35rem,4vw,3.3rem)}
@media(max-width:560px){.nos-in h1 span{white-space:normal}.nos-in h1,.nos-in h1.nos-lema{font-size:clamp(1.7rem,8.2vw,2.2rem)}}

/* v118 — pie de página en gris */
.foot,body:has(.hdr.is-home) .foot{background:#DADEE5!important;border-top:1px solid rgba(27,43,73,.14)!important;color:#1B2B49}
.foot .logo,.foot .logo *{color:#1B2B49!important}
.foot-soc a{border-color:rgba(27,43,73,.34);color:#1B2B49}
.foot-soc a:hover{background:#1B2B49;border-color:#1B2B49;color:#fff}
.foot-legal{border-top-color:rgba(27,43,73,.22)}
.foot-legal .copy,.foot .copy{color:rgba(27,43,73,.78)!important}
.foot-legal nav a{color:rgba(27,43,73,.8)}
.foot-legal nav a:hover{color:#1B2B49}

/* v119 — logo en negro claro (menos sobre el hero) */
body:not(.at-hero) .hdr .logo,.foot .logo{--logo-main:#2A2D34;--logo-sub:#41454D;color:#2A2D34}
.foot .logo,.foot .logo *{color:#2A2D34!important}
/* v120 — logo más grueso */
body:not(.at-hero) .hdr .logo,.foot .logo{--logo-main:#1E2127;--logo-sub:#2E323A;--lw:3.6px;--lw2:2.8px;--lw3:4.4px}

/* v120 — todo en grises neutros: cabecera, fondos y pie */
:root{--g0:#F5F5F6;--g1:#EEEEF0;--g2:#E5E5E8;--g3:#DADADE}
html,body{background:var(--g1)!important}
.nos-hero,.nos-txt,.team-blk,.pn2,.sx{background:var(--g1)!important}
.blk-sand{background:var(--g2)!important}
.g6sec.pz-sec{background:linear-gradient(180deg,var(--g0) 0,var(--g1) 45%,var(--g2) 100%)!important}
.lp-sv{background:
   radial-gradient(50% 40% at 92% 6%,rgba(255,255,255,.75),rgba(255,255,255,0) 70%),
   radial-gradient(44% 38% at 3% 98%,rgba(205,205,210,.45),rgba(205,205,210,0) 70%),
   linear-gradient(180deg,var(--g0) 0%,var(--g1) 50%,var(--g2) 100%)}
body:not(.at-hero) .hdr,body.scrolled .hdr{background:var(--g2)!important;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.foot,body:has(.hdr.is-home) .foot{background:var(--g3)!important;border-top:1px solid rgba(0,0,0,.1)!important}
.nos-hero .nos-pic::before{background:linear-gradient(180deg,var(--g1) 0,rgba(238,238,240,0) 9%)}

/* v121 — zonas del logo en gris más claro */
body:not(.at-hero) .hdr,body.scrolled .hdr{background:#F7F7F8!important;box-shadow:0 1px 0 rgba(0,0,0,.07),0 10px 24px -18px rgba(0,0,0,.22)}
.foot,body:has(.hdr.is-home) .foot{background:#E9E9EB!important;border-top:1px solid rgba(0,0,0,.08)!important}

/* v122 — formulario final opaco y más alto; paleta de grises invertida (franjas más oscuras que la página) */
@media(min-width:1280px){.lp-final .lf-form{top:40.8%}}
.lp-final .lf-form{background:#F6F6F7!important}
:root{--g0:#F9F9FA;--g1:#F4F4F5;--g2:#EBEBED;--g3:#D3D3D7}
body:not(.at-hero) .hdr,body.scrolled .hdr{background:#DEDEE1!important;box-shadow:0 1px 0 rgba(0,0,0,.12),0 10px 24px -18px rgba(0,0,0,.28)}
.foot,body:has(.hdr.is-home) .foot{background:var(--g3)!important;border-top:1px solid rgba(0,0,0,.12)!important}
.nos-hero .nos-pic::before{background:linear-gradient(180deg,var(--g1) 0,rgba(244,244,245,0) 9%)}

/* v123 — formulario final sube para cubrir el borde difuso del horizonte; sin WhatsApp flotante en Equipo */
@media(min-width:1280px){.lp-final .lf-form{top:37.6%!important}}
body:has(.view[data-id="equipo"]:not([hidden])) .fab-wa{display:none!important}

/* v124 — pie sin logo: redes a la derecha, derechos y avisos debajo */
.foot .logo{display:none!important}
.foot-in{justify-content:flex-end}
@media(max-width:700px){.foot-in{justify-content:flex-start}}

/* v125 — íconos de redes del pie a la izquierda */
.foot-in{justify-content:flex-start!important}
.foot-soc{margin-left:0!important}

/* v126 — razón social del pie más visible */
.foot-legal .copy,.foot .copy{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif!important;font-size:17px!important;letter-spacing:.01em;color:#2A2D34!important}

/* v128 — pie en una sola línea: razón social, redes (LinkedIn e Instagram) al centro y avisos */
.foot-legal{display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;border-top:0!important;padding-top:0!important}
.foot-legal .foot-soc{margin:0!important;justify-self:center}
.foot-legal nav{justify-self:end}
.foot-in{padding-top:22px!important;padding-bottom:22px!important}
@media(max-width:700px){.foot-legal{grid-template-columns:1fr;justify-items:center;gap:14px}.foot-legal nav{justify-self:center}}

/* v129 — lema final de corrido, en una sola línea */
.lf-lema span,.lf-lema em{display:inline!important}
@media(min-width:700px){.lf-lema{white-space:nowrap}}
@media(min-width:700px) and (max-width:1279px){.lf-lema{font-size:3.3vw!important}}
@media(min-width:1280px){.lf-txt{width:auto!important}.lf-lema{font-size:2vw!important}}
@media(max-width:699px){.lf-lema{text-wrap:balance}}
@media(min-width:1280px){.lf-lema{font-size:1.9vw!important}}
@media(max-width:900px){.foot-legal{grid-template-columns:1fr;justify-items:center;gap:14px}.foot-legal nav{justify-self:center}.foot-in{padding-bottom:84px!important}}
.lf-lema em{text-shadow:0 0 14px rgba(255,248,238,.55)}

/* v130 — franjas de encabezado y pie: gris acerado con degradado sutil, luz superior y línea inferior definida */
body:not(.at-hero) .hdr,body.scrolled .hdr{
  background:linear-gradient(180deg,#EDEEF0 0%,#E1E2E6 55%,#D8D9DE 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 1px 0 #C4C6CC,0 12px 26px -20px rgba(24,28,38,.38)!important}
.foot,body:has(.hdr.is-home) .foot{
  background:linear-gradient(180deg,#D9DADF 0%,#CDCFD5 100%)!important;
  border-top:1px solid #BEC1C8!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important}

/* v132 — lista de servicios sin numeración */
.sv-n{display:none!important}
.sv-r{grid-template-columns:minmax(0,1fr) 44px!important;padding-left:clamp(4px,1vw,14px)!important}
@media(max-width:720px){.sv-r{grid-template-columns:minmax(0,1fr) 32px!important}}

/* v134 — el pie siempre queda al fondo de la ventana: sin franja blanca debajo en páginas cortas */
html,body{min-height:100%}
body{display:flex!important;flex-direction:column;min-height:100vh;min-height:100dvh}
body>main{flex:1 0 auto}
body>.foot,body>footer{flex:0 0 auto}

/* v135 — cierre de Inicio con la nueva escena (ventanal y horizonte), paleta fría y marcada en navy */
.lp-final,body:has(.hdr.is-home) .lp-final{background-color:#A9B1BD!important;background-size:100% 100%!important}
.lp-final::after{opacity:.12}
@media(max-width:1279px){.lp-final::before{background:linear-gradient(180deg,rgba(232,236,242,.92) 0,rgba(232,236,242,.7) 34%,rgba(232,236,242,0) 58%)!important}}
.lp-final .lf-lema,.lp-final .lf-lema span,.lp-final .lf-lema em{color:#12233F!important;text-shadow:0 0 20px rgba(228,233,240,.85)}
.lp-final .lf-lema span{font-weight:700}.lp-final .lf-lema em{font-style:italic;font-weight:400}
.lp-final .lf-rule{background:#12233F!important;opacity:.75}
.lp-final .lf-eyebrow{display:flex;align-items:center;gap:18px;margin:0;color:#4A566C!important;letter-spacing:.32em;font-size:12.5px;font-weight:500;text-transform:uppercase}
.lp-final .lf-eyebrow::before{content:"";width:62px;height:1px;background:#4A566C;opacity:.8}
.lp-final .lf-h{color:#12233F!important}
.lp-final .lf-sub{color:#46526A!important}
.lp-final .lf-form{background:rgba(224,225,228,.97)!important;border:1px solid rgba(255,255,255,.55)!important;box-shadow:0 30px 60px -40px rgba(14,24,44,.45)!important}
.lp-final .lp-form label span{color:rgba(18,35,63,.62)!important}
.lp-final .lp-form label.has span,.lp-final .lp-form label:focus-within span{color:#1B2B49!important}
.lp-final .lp-form label:focus-within{border-bottom-color:#1B2B49!important}
.lp-final .lp-form label{border-bottom-color:rgba(18,35,63,.3)!important}
@media(min-width:1280px){
  .lp-final{aspect-ratio:1983/793!important;max-height:none!important}
  .lp-final .lf-txt{left:5.6%!important;top:9%!important;width:auto!important;display:flex;flex-direction:column;align-items:flex-start}
  .lp-final .lf-eyebrow{order:-1;margin-bottom:1.3vw}
  .lp-final .lf-lema{font-size:1.9vw!important;white-space:nowrap}
  .lp-final .lf-rule{margin:1.5vw 0 1.9vw!important;width:4.2vw}
  .lp-final .lf-h{font-size:1.75vw!important}
  .lp-final .lf-sub{font-size:max(14.5px,.95vw)!important;margin-top:.8vw}
  .lp-final .lf-form{left:50.58%!important;right:4.64%!important;top:21.8%!important;bottom:11.85%!important}
}
@media(min-width:1280px){
  .lp-final .lf-form{margin:0!important;box-sizing:border-box}
  .lp-final .lf-form .lp-send{white-space:nowrap;font-size:11.5px!important;letter-spacing:.12em!important;gap:18px!important}
  .lp-final .lf-form .lp-note{font-size:11.5px!important}
}
/* v135b — tablet y móvil recortan la escena a la izquierda (sin la tarjeta de la imagen) */
@media(max-width:699px){.lp-final,body:has(.hdr.is-home) .lp-final{background-size:auto 100%!important;background-position:0 0!important}}
@media(min-width:700px) and (max-width:1279px){.lp-final,body:has(.hdr.is-home) .lp-final{background-size:200% auto!important;background-position:0 0!important}}

/* v136 — Equipo: dos perfiles con fotografía, formación académica y mismo encuadre */
.team-blk{padding:56px 0 84px!important;overflow:visible!important}
.team-duo{width:min(980px,100% - 44px);margin:34px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,4vw,56px);align-items:start}
.tm{display:flex;flex-direction:column;gap:22px;min-width:0}
.tm-ph{position:relative;aspect-ratio:4/5;overflow:hidden;background:#C9CDD4}
.tm-ph img{display:block;width:100%;height:100%;object-fit:cover}
.tm-ph::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#12233F}
.tm-tx h3{margin:0;font-family:var(--serif);font-weight:500;font-size:clamp(22px,2.2vw,30px);line-height:1.15;color:#12233F;text-wrap:balance}
.tm-role{margin:8px 0 0;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#8A6F3E}
.tm-cr{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column}
.tm-cr li{padding:11px 0;border-top:1px solid rgba(18,35,63,.18);font-size:15px;line-height:1.45;color:#3A465E}
.tm-cr li:last-child{border-bottom:1px solid rgba(18,35,63,.18)}
@media(max-width:720px){.team-duo{grid-template-columns:1fr;gap:44px;max-width:420px}}
/* tablet: la escena del cierre cubre toda la altura */
@media(min-width:700px) and (max-width:1279px){.lp-final,body:has(.hdr.is-home) .lp-final{background-size:auto 100%!important}}

/* v137 — Equipo: tarjetas del carrusel con fotografía y formación; menos distancia antes del cierre de Inicio */
.lp-sv{padding-bottom:clamp(18px,2vw,30px)!important}
.team-tr{align-items:flex-start}
.member-ph-real .mono{position:relative;overflow:hidden;background-color:#C9CDD4;background-size:cover;background-position:center}
.member-ph-real .mono::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#12233F}
.member-ph-real h3{margin:18px 0 0}
.tm-cr{list-style:none;margin:12px 0 0;padding:0}
.tm-cr li{padding:8px 0;border-top:1px solid rgba(18,35,63,.18);font-size:13.5px;line-height:1.4;color:#3A465E}
.tm-cr li:last-child{border-bottom:1px solid rgba(18,35,63,.18)}
.team-tr .member{width:clamp(250px,25vw,350px)}

/* v138 — cierre de Inicio a pantalla completa en escritorio: la foto se prolonga con el reflejo del piso y llena el alto visible */
@media(min-width:1280px){
  .lp-final,body:has(.hdr.is-home) .lp-final{
    aspect-ratio:auto!important;max-height:none!important;
    height:min(66.2vw,max(40vw,calc(100svh - 142px)));
    background-size:100% auto!important;background-position:center top!important;background-color:#41454B!important}
  .lp-final .lf-txt{top:3.6vw!important}
  .lp-final .lf-form{top:8.72vw!important;bottom:auto!important;height:26.53vw}
}
/* v139 pergamino más gris */
.lpc-ph--scroll{background:#E4E5E8!important}
.lpc-ph--scroll::before{filter:saturate(1) contrast(1.02) brightness(1)!important}
.lpc-ph--scroll::after{display:none!important}
/* v139 integrante sin fotografía */
.member-sf .mono{display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#D3D6DC,#C2C6CE)!important}
.member-sf .mono svg{width:38%;fill:none;stroke:#8A909B;stroke-width:1.6;stroke-linecap:round}
/* v139 rótulo Áreas de práctica */
.sv-eye{font-size:13.5px!important;color:#3F4C68!important;letter-spacing:.3em!important}

/* v142 movimiento del carrusel de equipo hacia la izquierda */
@keyframes teamMq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Logo oficial (633x122) y monograma LS en móvil */
.logo{aspect-ratio:633/122!important}
.logo-m{display:none}
@media (min-width:1024px){.hdr .logo{width:190px!important}}
@media (max-width:1023px){.hdr .logo{display:none!important}.hdr .logo-m{display:block;width:46px;height:auto;aspect-ratio:94/62}}

/* Servicios: título arriba del carrusel y navegación debajo (pedido de Jose, 23-oct) */
.lpc{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;grid-template-areas:"h" "t" "n"!important;column-gap:0!important}
.lpc>.lpc-idx{display:none!important}
.lpc>.lp-svc__head{align-self:auto!important;text-align:left!important;margin:0 0 clamp(26px,3vw,44px)!important}
.lpc>.lpc-nav{align-self:auto!important;justify-content:flex-start!important;gap:18px!important;margin:clamp(24px,2.8vw,40px) 0 0!important}
@media (min-width:1024px){.lp-svc__inner{padding:0 clamp(40px,5vw,96px)!important;margin:0 auto!important}.lp-svc{padding-top:clamp(28px,4vh,48px)!important}.lpc-t{height:clamp(300px,calc(100svh - 385px),520px)!important}.lpc-ph{height:calc(100% - clamp(140px,8.6vw,172px))!important}.lpc-n{top:calc(100% - clamp(140px,8.6vw,172px) + 14px)!important}}

/* Ajustes Studio 93 para WordPress */
.ls-site{min-height:100vh}
@media (max-width:820px){.lp-hint{bottom:calc(clamp(24px,6vh,70px) + 60px)!important;left:16px!important;max-width:calc(100% - 96px);white-space:nowrap;font-size:12px!important}}

/* =====================================================================
   S93 · Ajustes mobile + motion v2 (Studio 93 · oct 2026)
   Bloque añadido al final. Para revertir: borrar desde aquí hasta el final.
   ===================================================================== */

/* ---------- Mobile: diagramación ---------- */
@media (max-width:899px){
  /* Servicios: menos aire arriba, todo recostado a la izquierda */
  .lp-svc{min-height:auto !important;justify-content:flex-start !important;padding-top:40px !important;padding-bottom:44px !important}
  .lp-svc__head{margin-bottom:22px !important}
  .lpc{--cw:min(76vw,300px) !important}
  .lpc-card{left:0 !important;margin-left:0 !important}
  .lpc-nav{justify-content:flex-start !important}
  .find .chips{margin-bottom:8px !important}
  .find-res:empty{min-height:0 !important;margin:0 !important}
  .find .btn-dark2{margin-top:22px}

  /* Nosotros: hero alineado a la izquierda y tarjetas con el texto a todo el ancho */
  .nos-hero .nos-in{text-align:left !important;align-items:flex-start !important;padding-left:22px !important;padding-right:22px !important}
  .nos-hero .nos-in h1{text-align:left !important;margin-left:0 !important}
  .nos-big{padding:78px 24px 28px !important;font-size:19px !important;line-height:1.55 !important}
  .nos-big::after{width:46px !important;height:46px !important;top:22px !important;right:auto !important;left:24px !important}
  .nos-sm{padding:22px 24px 24px !important}

  /* Botón de enviar del formulario en una sola línea */
  .lp-send{white-space:nowrap !important;letter-spacing:.08em !important}

  /* Footer y navegación anterior/siguiente: espacio para el botón flotante */
  .foot{padding-bottom:84px !important}
  .pn2{padding-bottom:12px}
}

/* ---------- Botón "volver arriba" visible ---------- */
.fab-top{background:#16294A !important;color:#fff !important;border:0 !important;box-shadow:0 10px 24px -10px rgba(18,32,60,.55) !important}
.fab-top .ic{color:#fff;fill:none;stroke:currentColor}

/* ---------- Hover pulido (solo con mouse) ---------- */
@media (hover:hover) and (pointer:fine){
  .btn-dark,.btn-dark2,.btn-wa,.btn-light,.lp-send{position:relative;overflow:hidden;isolation:isolate;will-change:transform}
  .btn-dark::before,.btn-dark2::before,.btn-wa::before,.lp-send::before{
    content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
    background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.22) 50%,transparent 70%);
    transform:translateX(-120%);transition:transform .9s cubic-bezier(.19,1,.22,1)}
  .btn-dark:hover::before,.btn-dark2:hover::before,.btn-wa:hover::before,.lp-send:hover::before{transform:translateX(120%)}
  .btn-dark,.btn-dark2,.btn-wa,.btn-light{transition:background-color .35s,color .35s,box-shadow .45s cubic-bezier(.19,1,.22,1)}
  .btn-dark:hover,.btn-dark2:hover,.btn-wa:hover,.btn-light:hover{box-shadow:0 14px 30px -14px rgba(18,32,60,.55)}

  .chips button,.pz-chips li{transition:transform .35s cubic-bezier(.19,1,.22,1),box-shadow .35s,border-color .3s,background-color .3s,color .3s}
  .chips button:hover,.pz-chips li:hover{transform:translateY(-2px);box-shadow:0 8px 18px -12px rgba(18,32,60,.45)}

  .member img,.member .mono{transition:transform 1s cubic-bezier(.19,1,.22,1),filter .6s}
  .member:hover img{transform:scale(1.045)}

  .foot nav a,.foot-legal nav a{background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-size:0% 1px;background-position:0 100%;transition:background-size .5s cubic-bezier(.19,1,.22,1),color .3s}
  .foot nav a:hover,.foot-legal nav a:hover{background-size:100% 1px}

  .foot-soc a{transition:transform .45s cubic-bezier(.19,1,.22,1),background-color .3s,color .3s,box-shadow .45s}
  .foot-soc a:hover{transform:translateY(-3px)}
  .fab:hover{box-shadow:0 16px 30px -12px rgba(18,32,60,.6) !important}

  .pn2 a{transition:background-color .4s}
  .pn2 a:hover{background-color:rgba(42,98,214,.04)}
}

/* ---------- Motion (GSAP) ---------- */
.s93-intro .view:not([hidden]) > section:first-of-type h1:not(.lp-sr):not(.rv),
.s93-intro .view:not([hidden]) > section:first-of-type .eyebrow,
.s93-intro .view:not([hidden]) > section:first-of-type .lp-svc__sub{visibility:hidden}
.s93w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .06em .14em 0;margin:0 -.06em -.14em 0}
.s93wi{display:inline-block;will-change:transform}
.s93-prog{position:fixed;left:0;top:0;height:2px;width:100%;z-index:9999;pointer-events:none;
  background:linear-gradient(90deg,#16294A,#2A62D6 60%,#C9A66B);transform:scaleX(0);transform-origin:0 50%}
@media (prefers-reduced-motion:reduce){.s93-prog{display:none}}
