/* Catálogo para María: el marco para elegir y las piezas de la primera versión.
   Se apoya en ../firma.css, ../variantes.css y ../variantes2.css. */

/* ── El marco del catálogo ── */
.cat-cab{background:var(--espresso);color:var(--sand)}
.cat-cab .caja{display:flex;justify-content:space-between;align-items:center;gap:18px;height:68px}
.cat-cab .logo{color:var(--cream);font-size:26px}
.cat-cab nav{display:flex;gap:22px;overflow-x:auto}
.cat-cab nav a{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;white-space:nowrap;color:var(--sand);border-bottom:1px solid transparent;padding-bottom:2px}
.cat-cab nav a[aria-current],.cat-cab nav a:hover{color:var(--cream);border-color:var(--sand)}
.portadilla{padding:72px 0 40px}
.portadilla h1{font-size:clamp(36px,5vw,60px)}
.portadilla p{max-width:640px;font-size:17px}
.parte{padding:56px 0 24px;border-top:1px solid var(--sand)}
.parte>.caja>h2{font-size:clamp(28px,3vw,38px);font-weight:300}
.parte>.caja>p.que{max-width:640px;margin:8px 0 0}
.op{margin:36px 0 0;padding:0}
.op>.pie-op{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 14px}
.op .cod{font-family:var(--serif);font-size:24px;color:var(--espresso);margin-right:12px}
.op .desc{font-size:13.5px;color:var(--taupe)}
.op .ejemplo{font-size:12.5px;font-style:italic;color:var(--taupe);margin:10px 0 0}
.elegir{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--umber);border:1px solid var(--umber);padding:10px 16px;transition:background .25s,color .25s;user-select:none}
.elegir input{appearance:none;width:14px;height:14px;border:1px solid currentColor;margin:0;display:grid;place-items:center;cursor:pointer}
.elegir input:checked::after{content:"";width:8px;height:8px;background:currentColor}
.elegir:has(input:checked){background:var(--umber);color:var(--cream)}
.elegir:has(input:focus-visible){outline:2px solid var(--umber);outline-offset:3px}
.marco-op{border:1px solid var(--sand);background:var(--parchment);overflow:hidden}
.marco-op.blanco{background:var(--cream)}
.marco-op.relleno{padding:32px}
.op.elegida .marco-op{border-color:var(--umber);box-shadow:0 0 0 1px var(--umber)}
.rejilla-op{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px 32px;align-items:start}
.eleccion{position:sticky;bottom:0;z-index:20;background:var(--espresso);color:var(--sand);padding:12px 0}
.eleccion .caja{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.eleccion b{font-family:var(--serif);font-weight:400;font-size:19px;color:var(--cream)}
.eleccion .boton{background:var(--cream);border-color:var(--cream);color:var(--espresso);padding:12px 20px}
.resumen{background:var(--linen);padding:48px 0 64px}
.resumen h2{font-size:32px;font-weight:300;margin-bottom:10px}
.resumen .codigos{font-family:var(--serif);font-size:21px;color:var(--espresso);min-height:1.5em;margin:0 0 16px}
.resumen textarea{width:100%;min-height:110px;font:300 15px/1.6 var(--sans);color:var(--espresso);background:var(--cream);border:1px solid var(--sand);padding:14px;resize:vertical}
.resumen textarea:focus{outline:none;border-color:var(--umber)}
.resumen .boton{cursor:pointer;margin-top:16px}
.resumen .aviso{font-size:13px;margin:12px 0 0;min-height:1.4em}
.indice-partes{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--sand);border:1px solid var(--sand);margin:8px 0 72px}
.indice-partes a{background:var(--cream);padding:34px 32px;text-decoration:none;transition:background .3s}
.indice-partes a:hover{background:var(--linen)}
.indice-partes i{font:300 48px/1 var(--serif);font-style:normal;color:var(--sand)}
.indice-partes b{display:block;font-family:var(--serif);font-weight:400;font-size:27px;color:var(--espresso);margin:10px 0 6px}
.indice-partes span{font-size:14px}
.sig-parte{display:flex;justify-content:flex-end;padding:32px 0 56px}

/* ── Piezas de la primera versión ── */
.ficha-v1{background:var(--cream);color:var(--bark);padding:28px 28px 32px}
.quien{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--sand)}
.quien div{padding:24px 24px 24px 0;border-bottom:1px solid var(--sand)}
.quien div+div{padding-left:24px;border-left:1px solid var(--sand)}
.quien b{display:block;font-family:var(--serif);font-weight:400;font-size:23px;color:var(--espresso);margin-bottom:4px}
.franja{background:var(--espresso);color:var(--sand);padding:64px 40px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.franja h2{color:var(--cream);max-width:520px}
.franja .boton{background:var(--cream);border-color:var(--cream);color:var(--espresso)}
.franja .enlace{color:var(--sand);border-color:var(--sand)}
.claves{background:var(--cream);border-left:2px solid var(--umber);padding:28px 32px}
.claves h3{font-size:24px;margin:0 0 8px}.claves .puntos{margin:0}
.promo{background:var(--espresso);color:var(--sand);padding:28px 26px;position:relative}
.promo::before{content:"";position:absolute;inset:10px;border:1px solid rgba(217,207,196,.22);pointer-events:none}
.promo h3{color:var(--cream);font-size:25px;margin:0 0 10px}
.promo p{font-size:14px}
.promo .boton{background:var(--cream);border-color:var(--cream);color:var(--espresso);display:block;text-align:center;position:relative}
.ban1{background:var(--espresso);color:var(--sand);padding:36px 38px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}
.ban1 h3{color:var(--cream);font-size:27px;margin-bottom:6px}.ban1 p{margin:0;font-size:14.5px}
.ban1 .boton{background:var(--cream);border-color:var(--cream);color:var(--espresso)}
.ban2{border-top:1px solid var(--umber);border-bottom:1px solid var(--umber);padding:24px 0;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center}
.ban2 .n{font-family:var(--serif);font-size:44px;line-height:1;color:var(--sand)}
.ban2 b{display:block;font-family:var(--serif);font-weight:400;font-size:23px;color:var(--espresso)}
.ban3{background:var(--linen);padding:30px 34px;text-align:center}
.ban3 q{display:block;font-family:var(--serif);font-style:italic;font-size:26px;line-height:1.3;color:var(--espresso);quotes:none;margin-bottom:16px}
.otros{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--sand);border:1px solid var(--sand)}
.otros a{background:var(--parchment);padding:28px;text-decoration:none;transition:background .25s}
.otros a:hover{background:var(--linen)}
.otros span{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--umber)}
.otros b{display:block;font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.2;color:var(--espresso);margin-top:8px}

/* ── Banners por momento del cliente ── */
.promo-e{padding:28px 26px}.promo-e h3{font-size:24px;margin-bottom:10px}.promo-e p{font-size:14px}
.promo-e.info{background:var(--cream);border-top:2px solid var(--umber)}
.promo-e.duda{background:var(--linen)}
.promo-e.decide{background:var(--espresso);color:var(--sand)}.promo-e.decide h3{color:var(--cream)}
.promo-e.decide .sobre{color:var(--sand)}
.promo-e.decide .boton{background:var(--cream);border-color:var(--cream);color:var(--espresso);display:block;text-align:center}
.promo-e.duda .boton{display:block;text-align:center}
.be.info{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;background:var(--cream);border-left:2px solid var(--umber);padding:26px 30px}
.be.info .pdf{font:400 11px var(--sans);letter-spacing:.2em;border:1px solid var(--umber);color:var(--umber);padding:22px 12px;text-align:center}
.be.info b{display:block;font-family:var(--serif);font-weight:400;font-size:24px;color:var(--espresso);line-height:1.2}
.be.duda{background:var(--linen);padding:32px 34px}
.be.duda h3{font-size:27px;margin-bottom:8px}
.be.decide{display:grid;grid-template-columns:1fr 1fr;background:var(--espresso);color:var(--sand)}
.be.decide .t{padding:34px}.be.decide h3{color:var(--cream);font-size:28px;margin-bottom:8px}
.be.decide form{background:var(--cream);padding:28px 30px;display:grid;gap:14px}
.be.decide label{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--umber);display:grid;gap:5px}
.be.decide input{font:300 15px var(--sans);background:transparent;border:0;border-bottom:1px solid var(--umber);padding:7px 0;border-radius:0}
.be.decide button{cursor:pointer;justify-self:start}
.cuando{font-size:12.5px;color:var(--taupe);margin:10px 0 0}
.probar2{margin-top:12px;cursor:pointer;font:400 10.5px var(--sans);letter-spacing:.2em;text-transform:uppercase;background:transparent;border:1px solid var(--umber);color:var(--umber);padding:10px 16px}
.probar2:hover{background:var(--umber);color:var(--cream)}

/* ── Las portadas dentro del marco del catálogo, sin sangrar a toda la página ── */
.marco-op .p1c .caja{padding-left:40px;padding-right:40px;max-width:none}
.marco-op .p3c .t{padding:72px 48px 140px}
.marco-op .p3c .datos-p{left:32px;right:32px;bottom:24px}
.marco-op .p3c{padding-bottom:0;min-height:620px}
.marco-op .p3c .carr .ctl{bottom:128px}.marco-op .p3c .carr .leyenda{bottom:136px}
.marco-op .tras-ficha{background:var(--parchment)}

/* ── Las tablas no se aplastan en el móvil: se desplazan de lado ── */
.rollo{-webkit-overflow-scrolling:touch}
.rollo .tabla{min-width:600px}
.desliza{display:none;font-size:12px;color:var(--taupe);margin:8px 0 0}

/* ── Móvil ── */
@media (max-width:900px){
  .ban1,.ban2,.be.info,.be.decide,.otros,.quien,.indice-partes{grid-template-columns:1fr}
  .quien div+div{padding-left:0;border-left:0}
  .franja{padding:44px 24px}
  .marco-op.relleno{padding:18px}
  .marco-op .p1c .caja{padding-left:22px;padding-right:22px}
  .marco-op .p3c .t{padding:48px 22px}
  .marco-op .p3c .datos-p{position:static;margin:0}
  .marco-op .p3c .carr .ctl,.marco-op .p3c .carr .leyenda{bottom:20px}
  .desliza{display:block}
  .cat-cab .caja{height:auto;padding-top:14px;padding-bottom:14px;flex-direction:column;align-items:flex-start}
  .cat-cab nav{width:100%;gap:18px;padding-bottom:4px}
  .escena{min-height:0;padding:28px 12px}
  .pop.mini{width:100%}
  .pop .t{padding:34px 22px 28px}
  .pop h3{font-size:25px}
  .b4{padding:40px 24px}.b4 h3{font-size:28px}
  .b6{padding:24px}.b6 img{width:120px;height:150px}
  .i2c .t,.a3 .t{padding:40px 24px}
  .c2{padding:80px 0}
  .c3 .t,.c3 form{padding:32px 22px}
  .s5{padding:28px 24px}.s8{padding:32px 24px;gap:20px}
  .eleccion .boton{width:100%;text-align:center}
}

/* Feedback de Iván, 2026-11-14 */
.cat-cab .prop{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--sand);opacity:.6;white-space:nowrap}
.marco-op.oscura{background:var(--espresso);color:var(--sand)}
.marco-op .p3c .t{padding-bottom:72px}
.marco-op .p3c .carr .ctl{bottom:28px}.marco-op .p3c .carr .leyenda{bottom:36px}
.marco-op .p3c{min-height:540px}
@media (max-width:900px){.marco-op .p3c .carr .ctl,.marco-op .p3c .carr .leyenda{bottom:20px}}
