/* ---------- /registrar-finca/ · portada v8: reglas tomadas de la guía nueva (clases sc-*, slc-*, sg-*, or-launch). Se carga después del estilo de la página. ---------- */
.btn.pri{background: var(--lima); color: var(--ink);}
.btn.sec{background: rgb(255, 255, 255); border: 1px solid var(--line); color: var(--ink);}
.lnk{font-weight: 600; text-decoration-line: underline; text-decoration-thickness: initial; text-decoration-style: initial; text-underline-offset: 3px; text-decoration-color: var(--line);}
@media (hover: hover) and (pointer: fine){.btn.pri:hover{background: rgb(138, 182, 54);}}
@media (hover: hover) and (pointer: fine){.btn.sec:hover{border-color: var(--ink-3);}}
@media (hover: hover) and (pointer: fine){.ruta:hover{border-color: var(--ink-3);}}
@media (hover: hover) and (pointer: fine){.lnk:hover{text-decoration-color: var(--ink);}}
.ini{max-width: 1440px; margin: 0px auto; padding: clamp(36px, 7vw, 84px) clamp(16px, 3vw, 32px) 80px;}
.ini-hd{display: grid; grid-template-columns: minmax(0px, 2fr) minmax(0px, 1fr); gap: clamp(28px, 4vw, 56px); align-items: end; margin: 0px 0px 48px;}
.ini h1{font-family: var(--head); font-weight: 600; font-size: clamp(31px, 3.9vw, 50px); line-height: 1.06; letter-spacing: -0.033em; margin: 0px; max-width: 22ch; text-wrap: balance;}
.ini .lead{font-size: clamp(15.5px, 1.35vw, 17px); color: var(--ink-2); margin: 0px; line-height: 1.6; max-width: 44ch; padding: 0px 0px 6px 20px; border-left: 2px solid var(--lima);}
.ini-hd.col{grid-template-columns: minmax(0px, 1fr); gap: 24px; align-items: start;}
.ini-hd.col .lead{max-width: 66ch; border-left: 0px; padding: 0px; margin-top: 4px;}
@media (max-width: 900px){.ini-hd{grid-template-columns: 1fr; gap: 18px; margin-bottom: 32px;}}
@media (max-width: 900px){.ini h1{max-width: 18ch;}}
@media (max-width: 900px){.ini .lead{padding-left: 16px;}}
.ini-hd.col{row-gap: 0px;}
.ini-hd.col .lead{margin-top: 22px;}
.rutas{display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;}
.ruta{position: relative; display: flex; flex-direction: column; background: rgb(255, 255, 255); border: 1px solid var(--line); border-radius: 22px; padding: 26px 24px 24px; min-height: 300px; transition: border-color 0.15s, box-shadow 0.15s;}
.ruta .ic{width: 64px; height: 64px; border-radius: 16px; display: grid; place-items: center; background: var(--lima-wash); color: var(--lima-d); margin-bottom: 26px;}
.ruta h2{font-family: var(--head); font-weight: 600; font-size: 23px; letter-spacing: -0.02em; margin: 0px 0px 8px; line-height: 1.15;}
.ruta p{margin: 0px 0px 18px; color: var(--ink-2); font-size: 14.5px;}
.ruta ul{list-style: none; padding: 0px; margin: 0px 0px 22px; display: grid; gap: 7px; font-size: 13.5px; color: var(--ink-2);}
.ruta li{display: flex; gap: 8px; align-items: flex-start;}
.ruta li svg{width: 16px; height: 16px; margin-top: 2px; color: var(--lima-d);}
.ruta .go{margin-top: auto; display: flex; align-items: center; justify-content: space-between; font-weight: 600; font-size: 15px; padding-top: 16px; border-top: 1px solid var(--line-2);}
.ruta .go small{font-weight: 500; color: var(--ink-3); font-size: 13px;}
.ruta.emp .ic{background: var(--clay-wash); color: var(--clay);}
.despues-h{font-family: var(--head); font-weight: 600; font-size: 20px; letter-spacing: -0.02em; margin: 64px 0px 26px;}
.despues{display: grid; grid-template-columns: repeat(3, 1fr); gap: 0px; counter-reset: d 0;}
.despues > div{position: relative; padding: 0px 32px 0px 0px;}
.despues em{position: relative; z-index: 1; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; margin: 0px 0px 18px; background: rgb(255, 255, 255); border: 1.5px solid var(--lima); box-shadow: 0 0 0 7px var(--cream); font-style: normal; font-family: var(--head); font-weight: 600; font-size: 16px; color: var(--ink); font-variant-numeric: tabular-nums;}
.despues > div:last-child em{background: var(--lima); border-color: var(--lima);}
.despues > div:not(:last-child)::after{content: ""; position: absolute; top: 22px; left: 58px; right: 14px; border-top: 1.5px dashed rgb(183, 198, 154);}
.despues b{display: block; font-family: var(--head); font-weight: 600; font-size: 16.5px; letter-spacing: -0.01em; margin: 0px 0px 5px;}
.despues p{margin: 0px; font-size: 14px; color: var(--ink-2); max-width: 30ch; line-height: 1.5;}
.ini-pie{margin-top: 40px; font-size: 14px; color: var(--ink-3);}
.noche{position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(90% 70% at 100% 0%,rgba(41,50,24,.95),rgba(26,26,23,0) 62%),var(--noche); color: rgb(255, 255, 255);}
.noche::before,.noche::after{content: ""; position: absolute; z-index: -1; width: 240px; height: 240px; background: var(--sol) center/contain no-repeat; pointer-events: none;}
.noche::before{top: -120px; right: -120px;}
.noche::after{bottom: -130px; left: -130px; opacity: 0.7;}
.ico{display: inline-block; flex: 0 0 auto; width: 20px; height: 20px; background: currentcolor; mask: var(--m) center/contain no-repeat;}
.ico-finca{--m: var(--ico-finca);}
.ico-empresa{--m: var(--ico-empresa);}
.ruta .ic .ico{width: 44px; height: 44px;}
@media (max-width: 900px){.rutas{grid-template-columns: 1fr;}}
@media (max-width: 900px){.ruta{min-height: 0px;}}
@media (max-width: 900px){.ruta .ic{margin-bottom: 16px;}}
@media (max-width: 900px){.despues{grid-template-columns: 1fr;}}
@media (max-width: 900px){.despues > div{padding: 0px 0px 26px 62px; min-height: 70px;}}
@media (max-width: 900px){.despues em{position: absolute; left: 0px; top: 0px; margin: 0px;}}
@media (max-width: 900px){.despues > div:not(:last-child)::after{inset: 52px auto 6px 21px; border-top: 0px; border-left: 1.5px dashed rgb(183, 198, 154);}}
@media (max-width: 900px){.despues b{padding-top: 9px;}}
.sc-eyebrow{display: flex; align-items: center; gap: 9px; font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; margin: 0px 0px 17px; color: var(--lima-d);}
.sc-eyebrow::before{content: ""; width: 7px; height: 7px; background: var(--lima); border-radius: 50%; flex: 0 0 auto;}
.sc-home .ini-hd{gap: 18px; margin-bottom: 36px;}
.sc-home .ini-hd h1{font-size: clamp(34px, 4.6vw, 60px); max-width: 20ch; line-height: 1.08; letter-spacing: -0.045em;}
.sc-home .ini-hd h1.reg-h1{color:#262E10;font-size:clamp(38px,4.4vw,64px);line-height:1.02;letter-spacing:-.035em;margin:0 0 16px;max-width:16ch}
.sc-home .ini-hd .reg-lead{max-width:56ch;font-size:17px;line-height:1.6;color:#4A5340}
.sc-home .ini-hd h1 span{color: var(--lima-d);}
.sc-home .ini-hd .lead{margin: 0px; max-width: 63ch;}
.sc-section-label{display: flex; gap: 16px; align-items: center; justify-content: space-between; margin: 0px 0px 15px;}
.sc-section-label h2{font-family: var(--head); font-size: 17px; font-weight: 600; margin: 0px; letter-spacing: -0.02em;}
.sc-section-label > span{font-size: 12px; color: var(--ink-3);}
.sc-home .rutas{grid-template-columns: 1fr 1fr;}
.sc-home .ruta{min-height: 0px; padding: 26px;}
.sc-home .ruta .ic{margin-bottom: 18px; width: 58px; height: 58px;}
.sc-home .ruta .go{display:flex;align-items:center;justify-content:space-between;gap:10px 14px;flex-wrap:nowrap}
.sc-home .ruta .go .go-t{font-weight:600;line-height:1.25;min-width:0}
.sc-home .ruta .go .go-r{display:inline-flex;align-items:center;gap:6px;margin-left:auto;flex:0 0 auto;white-space:nowrap}
.sc-home .ruta .go .go-r small{display:block;font-weight:500;font-size:13px;line-height:1;color:var(--ink-3)}
.sc-home .ruta .go .go-r svg{width:16px;height:16px;display:block;flex:0 0 16px;margin:0}
.sc-assist{display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 19px 23px; margin-top: 14px; border: 1px solid var(--line); border-radius: 16px; color: var(--ink-2); background: rgba(255, 255, 255, 0.45); font-size: 13px;}
.sc-assist > span{display: flex; align-items: center; gap: 11px;}
.sc-assist .lnk{white-space: nowrap;}
.sc-license-hero{display: grid; grid-template-columns: 1.35fr 1fr; gap: 36px; align-items: center; margin-top: 48px; border-radius: 26px; padding: 40px; overflow: hidden;}
.sc-license-hero h2{font-family: var(--head); font-weight: 600; letter-spacing: -0.035em; line-height: 1.12; margin: 0px 0px 17px;}
.sc-license-hero h2{font-size: clamp(29px, 3vw, 39px); max-width: 17ch;}
.sc-license-hero p{font-size: 14px; line-height: 1.65; color: rgb(205, 212, 189); max-width: 48ch; margin: 0px 0px 24px;}
.sc-license-hero .sc-eyebrow{color: var(--lima-soft); margin-bottom: 20px;}
.sc-buttons{display: flex; gap: 10px; align-items: center; flex-wrap: wrap;}
.sc-license-hero .btn.sec{color: rgb(255, 255, 255); background: transparent; border-color: rgb(85, 97, 70);}
.sc-mini{border: 1px solid rgb(81, 91, 66); background: rgb(41, 51, 31); border-radius: 18px; padding: 21px; position: relative;}
.sc-caption{font-size: 12px; color: var(--ink-3); line-height: 1.55; margin: 12px 0px 0px;}
@media (max-width: 1050px){.sc-license-hero{padding: 30px; gap: 24px;}}
@media (max-width: 780px){.sc-home .rutas,.sc-license-hero{grid-template-columns: 1fr;}}
@media (max-width: 780px){.sc-home .ini-hd h1{max-width: 20ch;}}
@media (max-width: 780px){.sc-home .ruta{padding: 23px;}}
@media (max-width: 780px){.sc-home .ruta .ic{margin-bottom: 15px;}}
@media (max-width: 780px){.sc-assist{align-items: flex-start; padding: 17px; flex-direction: column; gap: 10px;}}
@media (max-width: 780px){.sc-license-hero{padding: 26px; margin-top: 32px; gap: 25px;}}
@media (max-width: 780px){.sc-license-hero h2{max-width: 19ch;}}
@media (max-width: 780px){.sc-license-hero .sc-mini{display: none;}}
@media (max-width: 780px){.sc-section-label > span{display: none;}}
@media (max-width: 450px){.sc-home .ruta .go{align-items: flex-start; flex-direction: column; gap: 4px;}}
@media (max-width: 450px){.sc-buttons .btn{font-size: 13px; padding: 0px 18px;}}
.or-launch{padding: 31px; border: 1px solid var(--line); border-radius: 20px; background: rgb(255, 255, 255); margin: 28px 0px; display: flex; gap: 24px; align-items: center;}
.or-launch h2{font: 600 25px/1.3 var(--head); letter-spacing: -0.03em; margin: 8px 0px 11px;}
.or-launch p{font-size: 13px; line-height: 1.8; color: var(--ink-2); margin: 0px;}
.or-launch .sc-buttons{margin-top: 17px;}
@media (max-width: 720px){.or-launch{padding: 24px; display: block;}}
@media (max-width: 720px){.or-launch h2{font-size: 24px;}}
.sc-mini.sc-license-card{isolation: isolate; min-width: 0px; width: 100%; padding: 25px; border: 1px solid rgb(97, 113, 77); border-radius: 24px; background: radial-gradient(at 100% 0%, rgba(82, 100, 52, 0.32), transparent 55%), linear-gradient(145deg, rgb(44, 56, 35) 0%, rgb(32, 43, 27) 75%); box-shadow: rgba(16, 23, 12, 0.19) 0px 22px 44px, rgba(255, 255, 255, 0.05) 0px 1px 0px inset; overflow: hidden; color: rgb(246, 247, 238); text-align: left;}
.sc-license-card::before{content: ""; position: absolute; z-index: -1; right: -76px; top: 49px; width: 225px; height: 225px; border: 1px solid rgba(175, 206, 123, 0.07); border-radius: 50%; box-shadow: rgba(175, 206, 123, 0.035) 0px 0px 0px 22px, rgba(175, 206, 123, 0.024) 0px 0px 0px 44px; pointer-events: none;}
.slc-top{display: flex; justify-content: space-between; align-items: center; gap: 12px;}
.slc-brand{display: inline-flex; align-items: center; gap: 9px; font-size: 11px; letter-spacing: 0.01em; color: rgb(212, 223, 196);}
.slc-brand strong{font-weight: 700; color: rgb(244, 247, 235);}
.slc-edition{font-size: 8px; font-weight: 700; letter-spacing: 0.11em; white-space: nowrap; padding: 6px 9px; border: 1px solid rgba(166, 196, 120, 0.24); border-radius: 6px; background: rgba(166, 196, 120, 0.043); color: rgb(216, 232, 186);}
.slc-intro{padding: 26px 0px 22px;}
.slc-eyebrow{display: block; font-size: 8px; letter-spacing: 0.16em; font-weight: 600; color: rgb(193, 205, 172); margin-bottom: 11px;}
.sc-license-card .slc-intro h3{font-family: var(--head); font-size: clamp(27px, 2.7vw, 34px); font-weight: 500; line-height: 1.13; letter-spacing: -0.045em; margin: 0px 0px 13px; color: rgb(250, 251, 245);}
.slc-intro h3 em{font-style: normal; color: rgb(210, 238, 150);}
.sc-license-card .slc-intro p{font-size: 11px; line-height: 1.7; color: rgb(199, 208, 186); margin: 0px; max-width: none;}
.slc-modules{border-top: 1px solid rgba(255, 255, 255, 0.09); border-bottom: 1px solid rgba(255, 255, 255, 0.09);}
.slc-module{display: grid; grid-template-columns: 38px minmax(0px, 1fr) 17px; gap: 12px; align-items: center; padding: 15px 0px;}
.slc-module + .slc-module{border-top: 1px solid rgba(255, 255, 255, 0.047);}
.slc-icon{height: 38px; width: 38px; display: grid; place-items: center; border-radius: 11px; color: rgb(212, 237, 164); border: 1px solid rgba(183, 211, 134, 0.16); background: linear-gradient(145deg, rgba(82, 104, 59, 0.44), rgba(53, 72, 44, 0.44)); box-shadow: rgba(255, 255, 255, 0.043) 0px 1px 0px inset;}
.slc-icon svg{width: 19px; height: 19px;}
.sc-license-card .slc-module h4{margin: 0px; font-family: var(--font,inherit); font-size: 11px; font-weight: 650; line-height: 1.5; letter-spacing: -0.015em; color: rgb(244, 246, 237);}
.sc-license-card .slc-module p{margin: 3px 0px 0px; font-size: 10px; line-height: 1.5; color: rgb(189, 203, 170); max-width: none;}
.slc-step{align-self: start; padding-top: 4px; font-size: 9px; font-weight: 500; color: rgb(155, 173, 132); font-variant-numeric: tabular-nums;}
.slc-bottom{display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 20px;}
.slc-access{display: flex; align-items: center; gap: 8px; font-size: 9px; line-height: 1.6; color: rgb(171, 188, 149);}
.slc-access > svg{width: 17px; height: 17px; color: rgb(199, 217, 173); flex: 0 0 auto;}
.slc-access b{font-weight: 500; color: rgb(219, 228, 205);}
.slc-explore{display: inline-flex; align-items: center; justify-content: center; gap: 13px; padding: 11px 12px; border-radius: 9px; border: 1px solid rgb(210, 237, 153); background: rgb(210, 237, 153); color: rgb(38, 53, 28); font: 650 10px var(--body,'Plus Jakarta Sans',sans-serif); white-space: nowrap; cursor: pointer; transition: background 0.18s, transform 0.18s; min-height: 42px;}
.slc-explore span{display: grid; place-items: center;}
.slc-explore svg{width: 15px; height: 15px;}
.slc-explore:hover{background: rgb(226, 245, 189); transform: translateY(-1px);}
@media (max-width: 780px){.sc-license-hero .sc-mini.sc-license-card{display: block;}}
@media (max-width: 780px){.sc-mini.sc-license-card{max-width: 470px; justify-self: center;}}
@media (max-width: 450px){.sc-mini.sc-license-card{padding: 22px 18px; border-radius: 20px;}}
@media (max-width: 450px){.slc-intro{padding-top: 24px;}}
@media (max-width: 450px){.slc-module{gap: 10px; grid-template-columns: 34px minmax(0px, 1fr) 15px;}}
@media (max-width: 450px){.slc-icon{width: 34px; height: 34px;}}
@media (max-width: 450px){.sc-license-card .slc-module h4{font-size: 10.5px;}}
@media (max-width: 450px){.slc-bottom{gap: 8px;}}
@media (max-width: 450px){.slc-explore{gap: 8px; padding: 10px;}}
@media (max-width: 450px){.slc-brand{font-size: 10px;}}
@media (max-width: 450px){.slc-edition{font-size: 7px;}}
@media (prefers-reduced-motion: reduce){.slc-explore{transition: none;}}
@media (prefers-reduced-motion: reduce){.slc-explore:hover{transform: none;}}
.rutas.tres{grid-template-columns: repeat(3, minmax(0px, 1fr));}
@media (max-width: 980px){.rutas.tres{grid-template-columns: 1fr;}}
.ruta .ic svg{width: 26px; height: 26px; fill: none; stroke: var(--ink); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round;}
.ruta.ges{background: linear-gradient(rgb(255, 255, 255), rgb(251, 250, 244));}
.ruta.ges .ic{background: var(--gold-wash);}
.ruta.ges .go{color: var(--gold);}
.sg-modo{margin: 44px 0px 8px; border-radius: 26px; background: rgb(255, 255, 255); border: 1px solid var(--line); padding: clamp(22px, 3vw, 36px);}
.sg-modo-h{display: flex; justify-content: space-between; align-items: flex-end; gap: 18px; flex-wrap: wrap; margin-bottom: 20px;}
.sg-modo-h h2{font-family: var(--head); font-weight: 600; font-size: clamp(24px, 3vw, 34px); letter-spacing: -0.03em; line-height: 1.1; margin: 6px 0px 8px; max-width: 22ch;}
.sg-modo-h p{color: var(--ink-2); margin: 0px; max-width: 60ch;}
.sg-mods{display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 12px;}
@media (max-width: 980px){.sg-mods{grid-template-columns: repeat(2, minmax(0px, 1fr));}}
@media (max-width: 520px){.sg-mods{grid-template-columns: 1fr;}}
.sg-mod{border: 1px solid var(--line-2); background: var(--cream); border-radius: 18px; padding: 16px; display: flex; flex-direction: column; gap: 6px;}
.sg-mod svg{width: 24px; height: 24px; fill: none; stroke: var(--lima-d); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round;}
.sg-mod img.rg-img,.sg-mod svg.rg-img{display:block;width:40px;height:40px;object-fit:contain;margin:0}
.ruta .ic img{width:40px;height:40px;object-fit:contain}
.sg-mod.sg-soon b::after{content:"Próximamente";display:block;width:max-content;margin:4px 0 0;padding:2px 8px;border-radius:999px;background:#F6EEDB;color:#9A7428;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.sg-mod svg.icf{fill: var(--lima-d); stroke: none;}
.sg-mod b{font-family: var(--head); font-weight: 600; font-size: 16px; letter-spacing: -0.01em;}
.sg-mod small{color: var(--ink-3); font-size: 13px; line-height: 1.4;}
.sg-soon{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:#F4E7C8;color:#6A4A12;font-size:11px;font-weight:700;letter-spacing:.02em}
.sg-mod.sg-soon{display:flex;flex-direction:column;align-items:stretch;width:100%;margin:0;padding:16px;border-radius:18px;background:var(--cream);letter-spacing:0;text-transform:none;font-size:inherit;font-weight:inherit;color:inherit}
.sg-roles{display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px;}
.sg-roles span{display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 999px; background: var(--lima-wash); font-size: 13px; font-weight: 600; color: var(--ink);}
.sg-roles span.g{background: var(--gold-wash);}
.sg-roles svg{width: 15px; height: 15px; fill: none; stroke: currentcolor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round;}
.sg-roles svg.icf{fill: currentcolor; stroke: none;}
.rutas.tres .go{flex-wrap: wrap; gap: 4px 10px;}
.sg-btns{display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px;}
/* ajustes de la portada sin el rol de Gestor: dos tarjetas */
.rutas.dos{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:760px){.rutas.dos{grid-template-columns:1fr}}

/* tarjetas de registro: etiqueta, qué necesita y qué incluye */
.reg-q{margin:6px 0 14px}
.reg-q h2{margin:0;font:700 clamp(24px,2.4vw,32px)/1.15 Poppins,system-ui,sans-serif;color:#262E10;letter-spacing:-.02em}
.reg-q p{margin:6px 0 0;font-size:15px;color:#4A5340}
.ruta .rt-tag{display:block;margin:0 0 6px;font:700 11px/1.3 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:#6AA81C}
.ruta .rt-req{display:block;margin:14px 0 0;padding:12px 14px;border-radius:12px;background:#F6F7F1;font-size:13px;line-height:1.45;color:#4A5340;text-align:left}
.ruta .rt-req b{display:block;margin-bottom:2px;font-size:12px;color:#262E10;letter-spacing:.02em}
.ruta .rt-cmp{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px}
.ruta .rt-cmp li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;align-items:center;font-size:14px;line-height:1.35;color:#262E10}
.ruta .rt-cmp li svg,.ruta .rt-cmp li img{width:20px;height:20px;margin:0;object-fit:contain}
.ruta .rt-cmp li.si svg{color:#3F8F2A}
.ruta .rt-cmp li.no{color:#8A9180}
.ruta .rt-cmp li.no svg{color:#D23B3B}
.rutas.dos>.ruta{display:flex;flex-direction:column;align-items:stretch;text-align:left}
.rutas.dos>.ruta .rt-cmp{margin-top:auto;padding-top:16px}
.rutas.dos>.ruta .rt-req{min-height:104px;box-sizing:border-box}
.rutas.dos>.ruta .go{margin-top:16px;min-height:58px;box-sizing:border-box}
.sc-home .rutas.rutas-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sc-home .rutas.rutas-4>.ruta{display:flex;flex-direction:column;align-items:stretch;text-align:left}
.sc-home .rutas.rutas-4 .ic img{width:40px;height:40px;object-fit:contain}
.sc-home .rutas.rutas-4 .rt-cmp{margin-top:auto;padding-top:16px}
@media (min-width:1280px){.sc-home .rutas.rutas-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:760px){.sc-home .rutas.rutas-4{grid-template-columns:1fr}}

.pw-wrap{position:relative;display:block;width:100%}
.pw-wrap>input{width:100%!important;box-sizing:border-box}
.pw-wrap input{padding-right:72px!important}
.pw-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);height:32px;padding:0 10px;border:0;border-radius:8px;background:#EEF3E4;color:#3F5F12;font:700 12px/1 'Plus Jakarta Sans',system-ui,sans-serif;cursor:pointer}
.pw-eye:focus-visible{outline:2px solid #6AA81C;outline-offset:1px}

/* botones que dicen WhatsApp: verde oficial */
a.scf-wa{display:inline-flex;align-items:center;gap:9px;background:#25D366!important;color:#fff!important;box-shadow:none!important;border:0!important}
a.scf-wa::before{content:"";flex:0 0 auto;width:18px;height:18px;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19.05 4.91A9.82 9.82 0 0 0 12.04 2c-5.46 0-9.91 4.45-9.91 9.91 0 1.75.46 3.45 1.32 4.95L2.05 22l5.25-1.38a9.9 9.9 0 0 0 4.74 1.21c5.46 0 9.91-4.45 9.91-9.91 0-2.65-1.03-5.14-2.91-7.01zM12.04 20.15a8.23 8.23 0 0 1-4.19-1.15l-.3-.18-3.12.82.83-3.04-.2-.31a8.2 8.2 0 0 1-1.26-4.38c0-4.54 3.7-8.24 8.25-8.24 4.54 0 8.24 3.7 8.24 8.24 0 4.55-3.7 8.24-8.24 8.24zm4.52-6.16c-.25-.12-1.47-.72-1.69-.81-.23-.08-.39-.12-.56.12-.17.25-.64.81-.78.97-.14.17-.29.19-.54.06-.25-.12-1.05-.39-1.99-1.23-.74-.66-1.23-1.47-1.38-1.72-.14-.25-.02-.38.11-.51.11-.11.25-.29.37-.43.12-.14.17-.25.25-.41.08-.17.04-.31-.02-.43-.06-.12-.56-1.34-.76-1.84-.2-.48-.41-.42-.56-.43h-.48c-.17 0-.43.06-.66.31-.23.25-.86.85-.86 2.07s.89 2.4 1.01 2.56c.12.17 1.75 2.67 4.23 3.74 1.62.7 2.25.76 3.06.64.48-.07 1.47-.6 1.67-1.18.21-.58.21-1.07.14-1.18-.06-.1-.22-.16-.47-.28z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19.05 4.91A9.82 9.82 0 0 0 12.04 2c-5.46 0-9.91 4.45-9.91 9.91 0 1.75.46 3.45 1.32 4.95L2.05 22l5.25-1.38a9.9 9.9 0 0 0 4.74 1.21c5.46 0 9.91-4.45 9.91-9.91 0-2.65-1.03-5.14-2.91-7.01zM12.04 20.15a8.23 8.23 0 0 1-4.19-1.15l-.3-.18-3.12.82.83-3.04-.2-.31a8.2 8.2 0 0 1-1.26-4.38c0-4.54 3.7-8.24 8.25-8.24 4.54 0 8.24 3.7 8.24 8.24 0 4.55-3.7 8.24-8.24 8.24zm4.52-6.16c-.25-.12-1.47-.72-1.69-.81-.23-.08-.39-.12-.56.12-.17.25-.64.81-.78.97-.14.17-.29.19-.54.06-.25-.12-1.05-.39-1.99-1.23-.74-.66-1.23-1.47-1.38-1.72-.14-.25-.02-.38.11-.51.11-.11.25-.29.37-.43.12-.14.17-.25.25-.41.08-.17.04-.31-.02-.43-.06-.12-.56-1.34-.76-1.84-.2-.48-.41-.42-.56-.43h-.48c-.17 0-.43.06-.66.31-.23.25-.86.85-.86 2.07s.89 2.4 1.01 2.56c.12.17 1.75 2.67 4.23 3.74 1.62.7 2.25.76 3.06.64.48-.07 1.47-.6 1.67-1.18.21-.58.21-1.07.14-1.18-.06-.1-.22-.16-.47-.28z'/%3E%3C/svg%3E") center/contain no-repeat}
a.scf-wa svg{display:none!important}
@media (hover:hover) and (pointer:fine){a.scf-wa:hover{background:#1FB959!important}}

