
  :root { --accent:#E6007E; --text:#111; --muted:#3B4048; --line:#e6e6e6; --hf:'Familjen Grotesk',sans-serif; --bf:'Inter',system-ui,sans-serif; }
  * { box-sizing:border-box; }
  body { margin:0; background:#fff; color:var(--text); font-family:var(--bf); font-size:17px; line-height:1.6; }
  .wrap { max-width:728px; margin:0 auto; padding:0 24px; }
  .label { background:#111; color:#fff; font-size:12px; letter-spacing:.1em; text-transform:uppercase; padding:10px 24px; margin:0; }
  nav { display:flex; justify-content:space-between; align-items:center; height:60px; font-size:15px; }
  nav .name { font-family:var(--hf); font-weight:600; font-size:19px; }
  nav .links { display:flex; gap:22px; align-items:center; }
  nav .cv, nav .lang { display:inline-flex; align-items:center; gap:3px; }
  nav .ico { width:20px; height:20px; stroke:#111; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  nav .lang .ico { width:17px; height:17px; }
  nav .links.mobile { display:none; }
  @media (max-width:700px) {
    nav { height:56px; }
    nav .links.desktop { display:none; }
    nav .links.mobile { display:flex; }
    nav .name { font-size:17px; }
    nav .links.mobile { gap:18px; font-size:15px; }
    nav .burger { font-size:22px; line-height:1; }
    nav .cv, nav .lang { display:inline-flex; align-items:center; gap:2px; }
    nav .ico { width:22px; height:22px; stroke:#111; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
    nav .lang .ico { width:19px; height:19px; }
    .wrap { padding:0 16px; }
    h1 { font-size:34px; }
    .lead { font-size:16px; margin-bottom:32px; }
    .index h2 { font-size:24px; }
    .index a { padding:18px 0; gap:14px; }
    h1.area { font-size:28px; }
    summary h3 { font-size:21px; }
    summary .plus { font-size:30px; }
    .body { padding-left:0; }
    .body .desc { font-size:17px; }
    .body h4 { font-size:20px; }
    .body .data { grid-template-columns:1fr 1fr; gap:14px; }
    .body .data b { font-size:26px; }
    figure.wide, figure.shots2, figure.pair { max-width:100% !important; }
    figure.pair { grid-template-columns:1fr 1fr; gap:12px; }
    figure.pair .phone img { max-width:100%; }
    figure.shots2 .shots { grid-template-columns:1fr 1fr; gap:12px; }
    figure.shots2 .shots img { max-width:100%; }
    .flow { grid-template-columns:1fr; gap:0; }
    .flow .arr { transform:rotate(90deg); justify-self:center; font-size:18px; line-height:1; height:18px; margin:-4px 0; }
    .diagram-result { align-items:flex-start; }
  }

  /* rotulador */
  .mark { position:relative; display:inline-block; z-index:0; }
  .mark::after { content:""; position:absolute; left:-.06em; right:-.06em; bottom:.06em; height:.22em; background:var(--accent); opacity:.85; z-index:-1; transform:skewY(-.8deg); border-radius:1px; }

  h1 { font-family:var(--hf); font-weight:550; font-size:clamp(32px,4.6vw,48px); line-height:1.06; letter-spacing:-0.015em; margin:48px 0 12px; }
  .eyebrow-home + h1 { margin-top:0; }
  .page h1, .hero h1, main > h1 { max-width:680px; }
  .lead { color:var(--muted); font-size:18px; max-width:none; margin:0 0 48px; }

  /* índice: lista gigante numerada */
  .index { list-style:none; margin:0; padding:0; counter-reset:area; }
  .index li { counter-increment:area; border-top:1.5px solid var(--text); }
  .index li:last-child { border-bottom:1.5px solid var(--text); }
  .index a { display:grid; grid-template-columns:3.2ch 1fr; align-items:baseline; gap:20px; padding:22px 0; text-decoration:none; color:inherit; }
  .index a::before { content:"0" counter(area); font-family:var(--hf); font-weight:500; font-size:26px; color:var(--accent); font-variant-numeric:tabular-nums; }
  .index h2 { font-family:var(--hf); font-weight:500; font-size:clamp(26px,4.2vw,44px); line-height:1.02; letter-spacing:-0.015em; margin:0; position:relative; display:inline; z-index:0; }
  .index a:hover h2 { text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:.14em; }
  .index .n { font-family:var(--hf); font-size:15px; color:var(--muted); white-space:nowrap; }
  .index .n b { font-weight:600; color:var(--text); }
  @media (max-width:600px) { .index a { grid-template-columns:3ch 1fr; } .index .n { grid-column:2; } }

  /* interior */
  .back { font-family:var(--hf); font-size:16px; color:var(--muted); text-decoration:none; display:inline-block; margin-top:36px; }
  .back::before { content:"← "; }
  .eyebrow { font-family:var(--hf); font-size:14px; color:var(--muted); margin:36px 0 4px; }
  h1.area { margin-top:0; font-size:clamp(30px,4.6vw,48px); }
  .cases { list-style:none; margin:40px 0 0; padding:0; counter-reset:c; }
  details { border-top:1.5px solid var(--text); counter-increment:c; }
  details:last-child { border-bottom:1.5px solid var(--text); }
  summary { list-style:none; cursor:pointer; padding:24px 0; display:grid; grid-template-columns:3.6ch 1fr auto; gap:20px; align-items:baseline; }
  summary h3 .brand { font-weight:inherit; color:inherit; }
  summary::-webkit-details-marker { display:none; }
  summary::before { content:"0" counter(c); font-family:var(--hf); font-weight:500; font-size:26px; color:var(--accent); font-variant-numeric:tabular-nums; }
  summary h3 { font-family:var(--hf); font-weight:500; font-size:clamp(24px,3.6vw,36px); line-height:1.04; letter-spacing:-0.015em; margin:0; display:inline; position:relative; z-index:0; }
  summary .meta { font-family:var(--hf); font-size:15px; color:var(--muted); white-space:nowrap; }
  summary .plus { font-family:var(--hf); font-weight:500; font-size:40px; line-height:1; color:var(--text); transition:transform .25s; }
  details[open] summary .plus { transform:rotate(45deg); }
  .body { padding:4px 0 40px 3.6ch; max-width:66ch; }
  .body .desc { font-size:19px; line-height:1.45; color:var(--text); margin:0 0 6px; }
  .body .role { font-size:15px; color:var(--muted); margin:0 0 24px; }
  .body .data { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin:0 0 8px; }
  .body .data b { display:block; font-family:var(--hf); font-weight:500; font-size:clamp(24px,3vw,34px); line-height:1.05; letter-spacing:-0.02em; white-space:nowrap; }
  .body .data span { font-size:13px; color:var(--muted); line-height:1.3; display:block; margin-top:4px; }
  .body .note { font-size:13px; color:var(--muted); margin:0 0 32px; }
  .body .list { margin:0 0 20px; padding-left:1.2em; }
  .body .list li { margin-bottom:6px; }
  @media (max-width:700px) { .body .data { grid-template-columns:repeat(2,1fr); } }
  .body h4 { font-family:var(--hf); font-weight:550; font-size:22px; margin:32px 0 8px; }
  .body p { margin:0 0 12px; color:var(--text); }
  .body strong { font-weight:600; }
  .ph { border:1.5px dashed #ccc; border-radius:4px; padding:36px 20px; color:var(--muted); font-size:14px; text-align:center; margin:16px 0 24px; }
  @media (max-width:600px) { summary { grid-template-columns:3ch 1fr auto; } summary .meta { grid-column:2; } .body { padding-left:0; } }

  .next { margin-top:56px; padding:32px 0 64px; border-top:1.5px solid var(--text); }
  .next span { font-family:var(--hf); font-size:15px; color:var(--accent); display:block; margin-bottom:6px; }
  .next a { font-family:var(--hf); font-weight:500; font-size:clamp(28px,5vw,48px); line-height:1.05; color:inherit; text-decoration:none; }
  .next a:hover { text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:.12em; text-underline-offset:.12em; }
  .more { margin-top:56px; padding:8px 0 48px; border-top:1.5px solid var(--text); }
  .more-title { font-family:var(--hf); font-size:14px; color:var(--muted); margin:0 0 14px; }
  .more-list { list-style:none; margin:0 0 24px; padding:0; }
  .more-list li { border-top:1px solid var(--line); }
  .more-list li:last-child { border-bottom:1px solid var(--line); }
  .more-list a { display:flex; gap:18px; align-items:baseline; padding:14px 0; text-decoration:none; color:inherit; font-family:var(--hf); font-weight:500; font-size:clamp(20px,2.6vw,26px); }
  .more-list a:hover { color:var(--accent); }
  .more-list .k { font-size:14px; color:var(--muted); font-variant-numeric:tabular-nums; }
  .more .back { margin-top:0; }
  figure { margin:20px 0 32px; }
  figure img { width:100%; height:auto; display:block; background:#f6f6f6; border:1px solid var(--line); border-radius:4px; }
  figure.wide { max-width:560px; }
  figure.pair { display:grid; grid-template-columns:1fr 1fr; gap:24px; max-width:640px; align-items:start; }
  figure.pair .phone img { max-width:210px; }
  figure.shots2 { max-width:440px; }
  figure.shots2 .shots { display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:start; }
  figure.shots2.n4 { max-width:900px; }
  figure.shots2.n4 .shots { grid-template-columns:repeat(4,1fr); }
  @media (max-width:700px) { figure.shots2.n4 .shots { grid-template-columns:1fr 1fr; } }
  figure.shots2 .shots img { max-width:210px; }
  figure.trio { display:grid; grid-template-columns:2fr 1fr; gap:28px; max-width:680px; align-items:start; }
  figure.trio .shots img { max-width:210px; }
  figure.trio .shots { display:grid; grid-template-columns:1fr 1fr; gap:12px; align-items:start; }
  figure.trio > div:last-child .shots { grid-template-columns:1fr; }
  @media (max-width:700px) { figure.trio { grid-template-columns:1fr; } }
  figure.pair .phone { display:flex; flex-direction:column; align-items:flex-start; }
  .tag { display:inline-block; font-family:var(--hf); font-weight:550; font-size:15px; letter-spacing:.06em; text-transform:uppercase; color:var(--text); border-bottom:3px solid var(--accent); padding-bottom:3px; margin-bottom:12px; }
  .diagram-box { border:1.5px solid var(--text); border-radius:6px; padding:18px 20px 0; }
  .diagram-label { display:inline-block; font-family:var(--hf); font-weight:550; font-size:15px; letter-spacing:.06em; text-transform:uppercase; color:var(--text); border-bottom:3px solid var(--accent); padding-bottom:2px; margin-bottom:18px; }
  .flow { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:10px; align-items:stretch; }
  .flow .step { border:1.5px solid var(--text); border-radius:4px; padding:14px; display:flex; flex-direction:column; justify-content:center; }
  .flow .arr { align-self:center; }
  .diagram-result { display:flex; gap:14px; align-items:center; border-top:1.5px solid var(--text); margin:18px -20px 0; padding:14px 20px 16px; background:#fafafa; border-radius:0 0 6px 6px; }
  .diagram-result b { font-family:var(--hf); font-weight:550; font-size:15px; letter-spacing:.06em; text-transform:uppercase; color:var(--text); white-space:nowrap; }
  .diagram-result span { font-size:15px; color:var(--text); line-height:1.4; }
  .flow .step b { display:block; font-family:var(--hf); font-weight:550; font-size:17px; line-height:1.15; }
  .flow .step span { display:block; font-size:13px; color:var(--muted); margin-top:4px; }
  .flow .arr { font-family:var(--hf); font-size:24px; color:var(--accent); }
  @media (max-width:700px) { .flow { grid-template-columns:1fr; } .flow .arr { transform:rotate(90deg); justify-self:center; } .diagram-result { flex-direction:column; gap:4px; } }
  .divider { height:48px; background:#f3f3f3; }
  footer { border-top:1px solid var(--line); padding:24px 0 56px; font-size:13px; color:var(--muted); }

  nav .name { display:inline-block; position:relative; padding-bottom:2px; }
  nav i.u { display:block; height:4px; background:#E6007E; opacity:.85; border-radius:1px; transform:skewY(-1.2deg); margin-top:-3px; }

  summary h3 { position:relative; z-index:0; }
  /* C: titulares de sección con marca corta fucsia */
  .body h4 { display:block; border-left:5px solid var(--accent); padding-left:14px; }


  nav { position:sticky; top:0; z-index:20; background:rgba(255,255,255,.94); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); border-bottom:1px solid var(--line); margin:0 -24px; padding:0 24px; }
  @media (max-width:700px) { nav { margin:0 -16px; padding:0 16px; } }


  .hero { padding:56px 0 36px; }
  .eyebrow-home { font-family:var(--hf); font-weight:500; font-size:22px; color:var(--text); margin:0 0 16px; }
  @media (max-width:700px) { .eyebrow-home { font-size:17px; font-weight:600; } }
  .hero h1 { margin:0 0 24px; }
  .sub { font-size:19px; line-height:1.5; color:var(--text); max-width:62ch; margin:0 0 24px; }
  .bullets { list-style:none; margin:0 0 28px; padding:0; max-width:62ch; }
  .bullets li { position:relative; padding-left:22px; margin-bottom:10px; }
  .bullets li::before { content:""; position:absolute; left:0; top:.6em; width:10px; height:4px; background:var(--accent); border-radius:1px; }
  .avail { font-family:var(--hf); font-weight:500; font-size:19px; line-height:1.4; color:var(--text); max-width:56ch; margin:0 0 32px; border-left:5px solid var(--accent); padding-left:14px; }
  .logos { display:flex; flex-wrap:wrap; gap:28px 40px; align-items:center; margin:0 0 32px; padding:24px 0; border-top:1.5px solid var(--text); border-bottom:1.5px solid var(--text); }
  .logos img { height:28px; width:auto; display:block; }
  .logos span { font-family:var(--hf); font-weight:600; font-size:20px; color:#888; letter-spacing:.02em; }
  .logos .partners { font-size:14px; color:var(--muted); font-weight:400; margin-left:0; }
  .logos .partners + img { margin-left:-24px; }
  .logos .brk { margin-bottom:-18px; }
  @media (min-width:701px) { .logos { row-gap:12px; } .logos .brk { margin-bottom:-12px; } }
  @media (max-width:700px) { .logos { display:flex; flex-wrap:wrap; gap:20px 28px; align-items:center; } .logos .partners { flex-basis:100%; margin:0; } .logos .partners + img { margin-left:0; } }
  .ctas { display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin:0 0 8px; }
  .btn { display:inline-flex; align-items:center; gap:8px; min-height:48px; padding:0 22px; border:1.5px solid var(--text); border-radius:999px; font-family:var(--hf); font-weight:550; font-size:16px; text-decoration:none; color:var(--text); }
  .btn.primary { background:var(--text); color:#fff; }
  .btn .ico { width:20px; height:20px; stroke:#111; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .block { border-top:1.5px solid var(--text); padding:36px 0 44px; max-width:70ch; }
  .block h2 { font-family:var(--hf); font-weight:550; font-size:clamp(24px,3.2vw,32px); line-height:1.12; letter-spacing:-0.01em; margin:0 0 14px; display:block; border-left:5px solid var(--accent); padding-left:14px; }
  .block p { margin:0; font-size:17px; line-height:1.65; }
  .block p.p2 { margin-top:14px; }
  strong { font-weight:600; color:var(--text); }
  .block a { color:var(--text); text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:.16em; }
  .end { border-top:1.5px solid var(--text); padding:40px 0 64px; }
  @media (max-width:700px) { .hero { padding:36px 0 28px; } .sub { font-size:17px; margin-bottom:28px; } .bullets li { font-size:15px; line-height:1.5; margin-bottom:14px; padding-left:20px; } .bullets li::before { top:.55em; } .avail { font-size:17px; } .logos { gap:18px 24px; } .logos span { font-size:17px; } .logos .partners { margin-left:0; flex-basis:100%; } .ctas { margin-bottom:0; } .block { padding:28px 0 32px; } }
  /* Disponibilidad destacada (mientras busco trabajo) */
  div.avail { display:flex; align-items:center; gap:24px; max-width:none; background:#FDEEF6; border-left:5px solid var(--accent); padding:18px 24px; border-radius:0 6px 6px 0; }
  div.avail p { flex:1; margin:0; font-family:var(--hf); font-weight:550; font-size:17px; line-height:1.4; color:var(--text); }
  div.avail .btn { min-height:44px; flex:none; }
  @media (max-width:700px) { div.avail { flex-direction:column; align-items:flex-start; gap:14px; padding:16px 18px; } div.avail p { font-size:16px; } }
  @media (max-width:700px) { .logos { row-gap:14px; } .logos .brk { margin-bottom:-14px; } .logos .partners { margin-bottom:-8px; } }
