/* estilo.css — páginas de contenido de faroseo.com (guías, sectores, estudio). Mismo sistema que la portada (index.html):
   Bricolage Grotesque para titulares, Instrument Sans para texto, verde #0E7C5E. Lo genera a mano Claude; las páginas salen de
   _fuente/ con _construir.mjs. */
:root{
  --bg:#F2F6F3; --blanco:#FFFFFF; --ink:#0B1F1A; --soft:#4A5B55; --line:#D6E3DC;
  --brand:#0E7C5E; --brand-d:#0A5B45; --brand-l:#DDF1E8;
  --noche:#06231C; --noche2:#0B3A2E; --luz:#C8F5DF; --oc:#DE9326;
  --display:"Bricolage Grotesque",system-ui,sans-serif; --texto:"Instrument Sans",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font:400 18px/1.6 var(--texto);-webkit-font-smoothing:antialiased}
a{color:inherit}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid var(--oc);outline-offset:3px;border-radius:6px}
[id]{scroll-margin-top:24px}
.salto{position:fixed;left:16px;top:12px;z-index:20;padding:10px 14px;border-radius:10px;background:var(--ink);color:#fff;transform:translateY(-160%);transition:transform .15s}
.salto:focus{transform:none}
.wrap{width:min(1180px,100% - 40px);margin-inline:auto}

/* barra */
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;font:800 26px/1 var(--display);letter-spacing:-.02em}
.nav ul{display:flex;gap:26px;list-style:none;font-weight:500;font-size:16px}
.nav ul a{text-decoration:none;color:var(--soft)}
.nav ul a:hover,.nav ul a[aria-current]{color:var(--ink)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:999px;font:600 16px/1 var(--texto);text-decoration:none;border:2px solid var(--ink);transition:transform .15s,background .15s,border-color .15s,color .15s;cursor:pointer}
.btn:active{transform:translateY(1px)}
.btn-p{background:var(--brand);border-color:var(--brand);color:#fff}
.btn-p:hover{background:var(--brand-d);border-color:var(--brand-d)}
.btn-s{background:transparent}
.btn-s:hover{background:var(--ink);color:#fff}
.nav .btn{padding:11px 20px;font-size:15px}

/* cabecera de la página */
.migas{font-size:14.5px;color:var(--soft);padding-top:10px}
.migas ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none}
.migas li+li::before{content:"/";margin-right:6px;color:#9AB8AA}
.migas a{text-decoration:none}
.migas a:hover{text-decoration:underline;text-underline-offset:3px}
.cabeza{padding:26px 0 46px;border-bottom:1.5px solid var(--line)}
.cabeza .etiqueta{display:inline-block;margin-bottom:16px;padding:5px 11px;border-radius:999px;background:#FFF7E8;border:1.5px solid #E9C58A;color:#765016;font-size:13.5px;font-weight:600}
.cabeza h1{font:800 clamp(2.2rem,4.6vw,3.9rem)/1.04 var(--display);letter-spacing:-.025em;max-width:20ch}
.cabeza h1 em{font-style:normal;color:var(--brand)}
.cabeza .entradilla{margin-top:20px;font-size:clamp(1.1rem,1.6vw,1.3rem);color:var(--soft);max-width:58ch}
.cabeza .firma{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:22px;font-size:14.5px;color:var(--soft)}
.cabeza .firma strong{color:var(--ink);font-weight:600}
.cabeza .acciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* cuerpo: texto + índice */
.cuerpo{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:64px;padding:52px 0 70px;align-items:start}
.indice{position:sticky;top:24px;font-size:15px;border-left:2px solid var(--line);padding-left:18px}
.indice p{font-weight:700;margin-bottom:10px;font-family:var(--display)}
.indice ol{list-style:none;display:grid;gap:8px}
.indice a{text-decoration:none;color:var(--soft)}
.indice a:hover{color:var(--ink)}
.indice .mini-cta{margin-top:26px;padding:18px;border-radius:16px;background:var(--blanco);border:1.5px solid var(--line)}
.indice .mini-cta p{font:700 17px/1.25 var(--display);margin-bottom:12px}
.indice .mini-cta .btn{padding:11px 16px;font-size:14.5px;width:100%}
.indice .mini-cta .btn-p,.indice .mini-cta .btn-p:hover{color:#fff}

.prosa{max-width:72ch}
.prosa>*+*{margin-top:18px}
.prosa h2{font:800 clamp(1.6rem,2.6vw,2.2rem)/1.12 var(--display);letter-spacing:-.02em;margin-top:52px}
.prosa h3{font:700 1.3rem/1.25 var(--display);margin-top:34px}
.prosa h2+*,.prosa h3+*{margin-top:12px}
.prosa p,.prosa li{color:#1E302A}
.prosa ul,.prosa ol{padding-left:1.25em}
.prosa li+li{margin-top:8px}
.prosa a{color:var(--brand-d);font-weight:600;text-underline-offset:3px}
.prosa a.btn{text-decoration:none}.prosa a.btn-p{color:#fff}
.prosa strong{font-weight:600;color:var(--ink)}
.prosa table{width:100%;border-collapse:collapse;font-size:16px;background:var(--blanco);border-radius:16px;overflow:hidden;border:1.5px solid var(--line)}
.prosa th,.prosa td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.prosa th{background:var(--brand-l);font-weight:600;color:var(--brand-d)}
.prosa tr:last-child td{border-bottom:0}
.tabla{overflow-x:auto}
.prosa figure{margin-top:26px}
.prosa figcaption{margin-top:8px;font-size:14px;color:var(--soft)}

/* bloques */
.nota,.dato,.paso-caja{border-radius:18px;padding:20px 22px;border:1.5px solid var(--line);background:var(--blanco)}
.nota{border-left:5px solid var(--oc)}
.nota strong:first-child{display:block;margin-bottom:6px;font-family:var(--display)}
.dato{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 18px;align-items:center;background:var(--noche);border-color:var(--noche);color:#E8F6EF}
.dato .cifra{font:800 clamp(2.2rem,4vw,3rem)/1 var(--display);color:var(--luz);letter-spacing:-.03em}
.dato p{color:#C9E2D7!important;margin:0!important}
.dato .fuente{grid-column:1/-1;font-size:13.5px;color:#8FB5A6!important}
.lista-check{list-style:none;padding-left:0!important}
.lista-check li{position:relative;padding-left:30px}
.lista-check li::before{content:"";position:absolute;left:2px;top:.45em;width:16px;height:16px;border-radius:50%;background:var(--brand-l);box-shadow:inset 0 0 0 4px var(--brand)}
.cta-linea{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:24px;border-radius:20px;background:var(--brand-l);border:1.5px solid #B7DFCC}
.cta-linea p{font:700 1.2rem/1.3 var(--display);color:var(--brand-d)!important;max-width:40ch}

/* preguntas */
.faq{padding:70px 0;background:var(--blanco);border-top:1.5px solid var(--line)}
.faq-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:70px;align-items:start}
.faq h2{font:800 clamp(1.9rem,3.4vw,2.8rem)/1.05 var(--display);letter-spacing:-.025em}
.preguntas{border-top:1.5px solid var(--line)}
.preguntas details{border-bottom:1.5px solid var(--line);padding:19px 0}
.preguntas summary{cursor:pointer;list-style:none;font:700 19px/1.3 var(--display);padding-right:34px;position:relative}
.preguntas summary::-webkit-details-marker{display:none}
.preguntas summary::after{content:"+";position:absolute;right:4px;top:-3px;font:500 27px/1 var(--texto);color:var(--brand)}
.preguntas details[open] summary::after{content:"\2212"}
.preguntas details p{margin-top:11px;color:var(--soft);font-size:16px;max-width:66ch}

/* relacionadas */
.relacionadas{padding:64px 0;border-top:1.5px solid var(--line)}
.relacionadas h2{font:800 clamp(1.6rem,2.8vw,2.3rem)/1.1 var(--display);letter-spacing:-.02em}
.tarjetas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}
.tarjeta{display:block;text-decoration:none;background:var(--blanco);border:1.5px solid var(--line);border-radius:20px;padding:22px;transition:transform .15s,border-color .15s}
.tarjeta:hover{transform:translateY(-3px);border-color:#9AB8AA}
.tarjeta .tipo{font-size:13px;font-weight:600;color:var(--brand-d)}
.tarjeta h3{margin-top:8px;font:700 1.2rem/1.25 var(--display)}
.tarjeta p{margin-top:8px;font-size:15.5px;color:var(--soft)}

/* índice de guías */
.hub{padding:44px 0 80px}
.hub h2{font:800 clamp(1.5rem,2.6vw,2.1rem)/1.1 var(--display);margin:44px 0 0}
.hub h2:first-child{margin-top:0}

/* formulario (el mismo de la portada) */
.empezar{padding:92px 0;background:var(--noche);color:#E8F6EF}
.empezar .dos2{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.empezar h2{font:800 clamp(2.1rem,4.2vw,3.4rem)/1.02 var(--display);letter-spacing:-.03em;color:#fff;max-width:16ch}
.empezar .izq p{margin-top:18px;color:#A9C9BC;max-width:44ch}
.empezar .izq ul{margin:22px 0 0 1.1em;color:#C9E2D7;font-size:16.5px}
.empezar .izq li{margin:4px 0}
.empezar .llamada{margin-top:26px!important;padding-top:20px;border-top:1px solid #285548;color:#C9E2D7!important;font-size:16px}
.empezar .llamada a{color:#fff;font-weight:600;text-underline-offset:3px}
.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--blanco);color:var(--ink);padding:26px;border-radius:22px}
.lead-form .full{grid-column:1/-1}
.lead-form input,.lead-form select,.lead-form textarea{font:inherit;font-size:16px;padding:13px 15px;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);width:100%}
.lead-form textarea{min-height:78px;resize:vertical}
.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{outline:none;border-color:var(--brand)}
.lead-form .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.consent{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;color:var(--soft);line-height:1.45}
.consent input{width:auto;margin-top:3px}
.lead-form button{justify-content:center}
.form-msg{min-height:1.2em;font-size:15px;font-weight:600}

/* pie */
.pie{padding:44px 0 30px;font-size:14.5px;color:var(--soft);border-top:1.5px solid var(--line);background:var(--bg)}
.pie .cols{display:grid;grid-template-columns:1.2fr repeat(3,minmax(0,1fr));gap:30px}
.pie h2{font:700 15px/1.2 var(--texto);color:var(--ink);margin-bottom:10px}
.pie ul{list-style:none;display:grid;gap:7px}
.pie a{text-decoration:none}
.pie a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.pie .legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:34px;padding-top:20px;border-top:1px solid var(--line)}

@media (max-width:980px){
  .cuerpo{grid-template-columns:minmax(0,1fr)}
  .indice{position:static;order:-1;border-left:0;padding:18px;border-radius:16px;background:var(--blanco);border:1.5px solid var(--line)}
  .indice .mini-cta{display:none}
  .tarjetas{grid-template-columns:repeat(2,minmax(0,1fr))}
  .faq-grid,.empezar .dos2{grid-template-columns:minmax(0,1fr);gap:30px}
  .pie .cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .nav ul{display:none}
}
@media (max-width:560px){
  body{font-size:17px}
  .nav .btn{padding:10px 14px;font-size:14px}
  .tarjetas{grid-template-columns:minmax(0,1fr)}
  .lead-form{grid-template-columns:minmax(0,1fr);padding:20px}
  .dato{grid-template-columns:minmax(0,1fr)}
  .pie .cols{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
.prosa .fuente-tabla{font-size:13.5px;color:var(--soft);margin-top:-4px}
.dato a{color:var(--luz);text-decoration:underline}
