/* =============================================
   Riesgos · Restos de plantilla y pruebas (estratos)
   ============================================= */
.rk-rs { --rs-sand:#f3e7cf; --rs-ink:#2b1d10; --rs-muted:#6d5a43; --rs-line:#dcc7a0; --rs-terra:#b5532b; --rs-terra-d:#8f3e1d; --rs-olive:#5f6f2e; --rs-umber:#3b2616; --rs-bg:#f7eedb; background:var(--rs-bg); }
/* ---- comunes ---- */
.rk .sr-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.rs-wrap { width:100%; max-width:1140px; margin:0 auto; padding:0 28px; }
.rs-sec { padding:clamp(52px,7vw,92px) 0; }
.rs-head { max-width:720px; margin:0 0 clamp(26px,4vw,44px); }
.rs-eyebrow { font:700 .72rem/1.2 'JetBrains Mono',monospace; letter-spacing:.1em; text-transform:uppercase; color:#8f3e1d; }
.rs-head h2 { margin:12px 0 12px; font-size:clamp(1.9rem,3.6vw,3rem); line-height:1.04; letter-spacing:-.05em; color:#2b1d10; }
.rs-head p { margin:0; color:#6d5a43; font-size:clamp(1rem,1.4vw,1.12rem); line-height:1.66; }
.rs-faq details { border-bottom:1px solid #dcc7a0; }
.rs-faq details:first-child { border-top:1px solid #dcc7a0; }
.rs-faq summary { display:flex; justify-content:space-between; gap:18px; padding:20px 2px; color:#2b1d10; font-size:1.06rem; font-weight:750; cursor:pointer; list-style:none; }
.rs-faq summary::-webkit-details-marker { display:none; }
.rs-faq summary::after { content:"+"; color:#b5532b; font-size:1.5rem; font-weight:400; transition:transform .2s ease; }
.rs-faq details[open] summary::after { transform:rotate(45deg); }
.rs-faq summary:focus-visible { outline:3px solid #b5532b; outline-offset:2px; }
.rs-faq p { max-width:66ch; margin:-4px 36px 22px 0; color:#6d5a43; font-size:.97rem; line-height:1.68; }
.rs-links { display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:24px; }
.rs-links a { color:#8f3e1d; font-weight:700; font-size:.92rem; }
.rs-cta { padding:clamp(56px,8vw,100px) 0; text-align:center; color:#fff; background:radial-gradient(640px 300px at 50% 0%,rgba(255,180,138,.3),transparent 65%),linear-gradient(180deg,#8f3e1d,#5e2610); }
.rs-cta .rs-wrap { max-width:760px; }
.rs-cta h2 { margin:0; color:#fff; font-size:clamp(2rem,4.2vw,3.4rem); line-height:1.04; letter-spacing:-.055em; }
.rs-cta p { max-width:540px; margin:16px auto 26px; color:#f4d9c4; font-size:1.05rem; line-height:1.62; }
.rs-cta .btn { background:#fff; color:#8f3e1d; }
.rs-cta .btn:hover { background:#ffeadb; }
.rs-disc { padding:22px 0; background:#ead8b4; color:#7a6340; font-size:.76rem; line-height:1.55; text-align:center; }
.rs-disc p { max-width:880px; margin:0 auto; }
/* ---- fin comunes ---- */
.rk-rs main { color:var(--rs-ink); }
.rs-mono { font-family:'JetBrains Mono',monospace; }

/* ---------- Hero ---------- */
.rs-hero { position:relative; overflow:hidden; padding:clamp(50px,7vw,96px) 0 0; background:linear-gradient(180deg,#f3e2bf 0%, var(--rs-bg) 100%); }
.rs-hero__grid { position:relative; display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(26px,5vw,70px); align-items:end; }
.rs-kicker { display:inline-block; font:700 .72rem/1.2 'JetBrains Mono',monospace; letter-spacing:.12em; text-transform:uppercase; color:var(--rs-terra-d); border:1.5px solid var(--rs-terra); border-radius:999px; padding:7px 13px; }
.rs-hero h1 { margin:18px 0 18px; font-size:clamp(2.4rem,5.4vw,4.5rem); line-height:.98; letter-spacing:-.06em; color:var(--rs-ink); }
.rs-hero h1 span { color:var(--rs-terra); }
.rs-lead { max-width:560px; margin:0 0 clamp(26px,4vw,44px); font-size:clamp(1.05rem,1.6vw,1.2rem); line-height:1.62; color:#53422d; }
.rs-lead b { color:var(--rs-ink); }
.rs-profile { display:grid; grid-template-rows:repeat(5,1fr); height:clamp(240px,28vw,330px); border-radius:14px 14px 0 0; overflow:hidden; box-shadow:0 -4px 30px rgba(80,50,10,.12); }
.rs-profile i { position:relative; display:flex; align-items:center; padding:0 18px; font:700 .7rem 'JetBrains Mono',monospace; letter-spacing:.08em; text-transform:uppercase; font-style:normal; }
.rs-profile i:nth-child(1) { background:#ead6ad; color:#6b5430; }
.rs-profile i:nth-child(2) { background:#d9b98a; color:#5b4220; }
.rs-profile i:nth-child(3) { background:#c79a63; color:#4a3118; }
.rs-profile i:nth-child(4) { background:#a97544; color:#fff3dd; }
.rs-profile i:nth-child(5) { background:#7b4f2c; color:#ffe9c8; }
.rs-profile i::after { content:""; position:absolute; inset:0; background-image:radial-gradient(rgba(0,0,0,.14) 1.2px, transparent 1.2px); background-size:11px 9px; opacity:.5; }
.rs-profile i b { position:relative; z-index:1; }

/* ---------- Secciones ---------- */
.rs-sec { padding:clamp(52px,7vw,92px) 0; }
.rs-sec--dark { background:var(--rs-umber); color:#f6e8cf; }
.rs-sec--dark .rs-head h2 { color:#fff; }
.rs-sec--dark .rs-head p { color:#d8c4a0; }
.rs-sec--dark .rs-eyebrow { color:#ffb48a; }

/* ---------- Medidor ---------- */
.rs-gauge { display:grid; grid-template-columns:auto 1fr; gap:clamp(20px,4vw,48px); align-items:center; margin-bottom:clamp(30px,5vw,52px); padding:clamp(20px,3vw,32px); border-radius:14px; background:#fffaf0; border:1px solid var(--rs-line); }
.rs-gauge__n { font-size:clamp(3.4rem,8vw,6rem); line-height:.85; letter-spacing:-.08em; font-weight:800; color:var(--rs-terra); }
.rs-gauge__t b { display:block; font-size:1.15rem; letter-spacing:-.03em; }
.rs-gauge__t span { display:block; margin-top:4px; color:var(--rs-muted); font-size:.94rem; line-height:1.55; }
.rs-well { position:relative; height:16px; margin-top:14px; border-radius:99px; background:#eadbb8; overflow:hidden; }
.rs-well i { display:block; height:100%; width:0; border-radius:99px; background:linear-gradient(90deg,#d9a566,var(--rs-terra)); transition:width 1.2s cubic-bezier(.2,.8,.2,1); }
.rs-gauge.is-in .rs-well i { width:35%; }

/* ---------- Excavación ---------- */
.rs-dig { display:grid; grid-template-columns:96px 1fr; gap:clamp(14px,2.4vw,26px); align-items:start; }
.rs-ctl { position:sticky; top:96px; text-align:center; }
.rs-ctl label { display:block; font:700 .66rem 'JetBrains Mono',monospace; letter-spacing:.1em; text-transform:uppercase; color:var(--rs-muted); margin-bottom:10px; }
.rs-rangewrap { position:relative; height:300px; margin:0 auto; width:44px; }
.rs-range { position:absolute; left:50%; top:50%; width:280px; margin:0; transform:translate(-50%,-50%) rotate(90deg); accent-color:var(--rs-terra); cursor:pointer; }
.rs-depth { margin-top:10px; font:800 1.3rem 'JetBrains Mono',monospace; color:var(--rs-terra-d); }
.rs-more { margin-top:12px; border:0; padding:10px 14px; border-radius:99px; background:var(--rs-terra); color:#fff; font:700 .8rem Inter,sans-serif; cursor:pointer; }
.rs-more:hover { background:var(--rs-terra-d); }
.rs-more:focus-visible, .rs-range:focus-visible { outline:3px solid var(--rs-ink); outline-offset:3px; }
.rs-layers { display:grid; gap:0; border-radius:14px; overflow:hidden; box-shadow:0 18px 44px rgba(80,50,10,.18); }
.rs-layer { position:relative; padding:clamp(18px,2.6vw,28px); transition:background .5s, color .5s; overflow:hidden; }
.rs-layer[data-l="0"] { --bg:#ead6ad; --fg:#2b1d10; --mu:#5b4a2e; }
.rs-layer[data-l="1"] { --bg:#d9b98a; --fg:#2b1d10; --mu:#54401f; }
.rs-layer[data-l="2"] { --bg:#c79a63; --fg:#25180a; --mu:#47301a; }
.rs-layer[data-l="3"] { --bg:#a97544; --fg:#fff6e4; --mu:#f2dcb9; }
.rs-layer[data-l="4"] { --bg:#7b4f2c; --fg:#fff6e4; --mu:#f2dcb9; }
.rs-layer { background:var(--bg); color:var(--fg); }
.rs-layer__head { display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.rs-layer__d { font:800 .78rem 'JetBrains Mono',monospace; letter-spacing:.06em; opacity:.8; }
.rs-layer h3 { margin:0; font-size:clamp(1.15rem,2vw,1.5rem); letter-spacing:-.04em; color:inherit; }
.rs-layer__body { display:grid; grid-template-columns:1fr 1fr; gap:6px 28px; margin-top:12px; max-height:0; opacity:0; overflow:hidden; transition:max-height .6s ease, opacity .5s ease .1s; }
.rs-layer.is-open .rs-layer__body { max-height:460px; opacity:1; }
.rs-layer__body p { margin:0 0 8px; font-size:.94rem; line-height:1.58; color:var(--mu); }
.rs-layer__body p b { display:block; margin-bottom:2px; font:700 .68rem 'JetBrains Mono',monospace; letter-spacing:.1em; text-transform:uppercase; color:var(--fg); opacity:.85; }
.rs-layer__body code { font:600 .78rem 'JetBrains Mono',monospace; background:rgba(0,0,0,.14); padding:2px 6px; border-radius:4px; word-break:break-word; }
.rs-layer:not(.is-open) .rs-layer__head::after { content:"· sin excavar"; font:600 .72rem 'JetBrains Mono',monospace; opacity:.55; }
.rs-layer:not(.is-open) { background-image:radial-gradient(rgba(0,0,0,.16) 1.4px, transparent 1.4px); background-size:12px 10px; }
.rs-callout { margin-top:24px; max-width:860px; padding:16px 20px; border-left:4px solid var(--rs-terra); background:rgba(181,83,43,.09); border-radius:0 8px 8px 0; font-size:.95rem; line-height:1.62; color:#4a3a26; }
.rs-callout b { color:var(--rs-ink); }

/* ---------- Búsquedas ---------- */
.rs-tool { margin-bottom:22px; display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.rs-tool label { font-weight:750; }
.rs-tool input { flex:1 1 260px; max-width:420px; padding:12px 14px; font:inherit; border-radius:8px; border:1.5px solid #8a6f48; background:#2a1b0e; color:#fff; }
.rs-tool input:focus-visible { outline:3px solid #ffb48a; outline-offset:1px; }
.rs-queries { display:grid; gap:10px; }
.rs-q { display:grid; grid-template-columns:1fr auto; gap:6px 14px; align-items:center; padding:14px 16px; border-radius:10px; background:#2a1b0e; border:1px solid #5a432a; }
.rs-q span { grid-column:1/-1; color:#d8c4a0; font-size:.86rem; line-height:1.45; }
.rs-q code { font:600 .84rem 'JetBrains Mono',monospace; color:#ffd7a8; word-break:break-word; }
.rs-q div { display:flex; gap:8px; }
.rs-q button, .rs-q a { border:1px solid #8a6f48; background:transparent; color:#f6e8cf; border-radius:6px; padding:6px 12px; font:600 .76rem 'JetBrains Mono',monospace; cursor:pointer; text-decoration:none; }
.rs-q button:hover, .rs-q a:hover { background:#4a3420; }
.rs-q a.is-off { opacity:.4; pointer-events:none; }
.rs-note { margin:14px 0 0; color:#c9b38d; font-size:.85rem; line-height:1.55; }

@media (max-width: 960px) {
  .rs-hero__grid { grid-template-columns:1fr; }
  .rs-profile { height:200px; border-radius:14px 14px 0 0; }
}
@media (max-width: 720px) {
  .rs-dig { grid-template-columns:1fr; }
  .rs-ctl { position:static; display:grid; grid-template-columns:1fr auto; gap:10px 14px; align-items:center; text-align:left; }
  .rs-ctl label { grid-column:1/-1; margin:0; }
  .rs-rangewrap { width:100%; height:32px; }
  .rs-range { position:static; width:100%; transform:none; margin:0; }
  .rs-depth { margin:0; }
  .rs-more { margin:0; grid-column:1/-1; justify-self:start; }
  .rs-layer__body { grid-template-columns:1fr; }
  .rs-gauge { grid-template-columns:1fr; }
}
@media (max-width: 560px) {
  .rs-wrap { padding:0 16px; }
  .rs-q { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion: reduce) { .rs-well i, .rs-layer, .rs-layer__body { transition:none; } }
