/* Página del físico y formulario de pedido */
.hero.fis{padding-top:clamp(40px,7vw,80px)}
.precio{font-family:var(--serif);font-size:2.2rem;color:var(--gold);margin:.2em 0 .1em}
.precio small{display:block;font-family:var(--sans);font-size:.85rem;color:var(--muted);margin-top:.2em}
.precio.centro{text-align:center}
.thumb{display:block;margin:0 auto 14px;border-radius:12px;border:1px solid var(--line);height:auto;object-fit:contain}
.thumb-carta{width:150px}
.thumb-libro{width:180px}
.thumb-logo{width:130px;border:0}
.ayuda{display:block;font-size:.8rem;color:var(--muted);margin-top:4px;line-height:1.35;font-weight:400}
.formbox .check span{display:block}
.redes-titulo{margin:1.2em 0 .4em;color:var(--gold2);letter-spacing:.06em;font-size:.9rem}
.redes{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 1em}
.peq-izq{font-size:.85rem}
.steps.tres{grid-template-columns:repeat(3,1fr)}
@media(max-width:860px){.steps.tres{grid-template-columns:1fr}}
.peq-lead{margin-bottom:1.6rem}
.formbox{width:min(760px,92%)}
.formbox form{background:linear-gradient(160deg,var(--bg3),var(--bg2));border:1px solid var(--line);border-radius:18px;padding:clamp(18px,4vw,32px)}
.fila{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:600px){.fila{grid-template-columns:1fr}}
.formbox label{display:block;margin-bottom:14px;font-size:.95rem;color:var(--text)}
.formbox input:not([type=checkbox]),.formbox select,.formbox textarea{display:block;width:100%;margin-top:6px;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit}
.formbox input:focus,.formbox select:focus,.formbox textarea:focus{outline:2px solid var(--gold2);outline-offset:1px}
.formbox .check{display:flex;gap:10px;align-items:flex-start;line-height:1.45}
.formbox .check input{margin-top:4px;flex:0 0 auto;width:18px;height:18px}
.opc{color:var(--muted);font-size:.85em}
.resumen{border:1px solid var(--line);border-radius:14px;padding:14px 18px;margin:8px 0 18px;background:var(--bg)}
.resumen div{display:flex;justify-content:space-between;gap:12px;padding:5px 0}
.resumen .total{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-weight:700;color:var(--gold2);font-size:1.1rem}
.aviso{border:1px solid var(--line);border-left:4px solid var(--gold);background:var(--bg2);border-radius:10px;padding:14px 18px;margin:14px 0}
.aviso.ok{border-left-color:#6fcf97}
.aviso.err{border-left-color:#eb5757;color:#ffd7d7}
.btn.grande{width:100%;font-size:1.05rem;cursor:pointer;margin-top:6px}
.btn:disabled{opacity:.6;cursor:wait}
.peq{font-size:.85rem;text-align:center;margin-top:12px}
.info ul.ticks li{margin-bottom:.9em}
[hidden]{display:none!important}

.quotes{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:2rem}
@media(max-width:760px){.quotes{grid-template-columns:1fr}}
.quote{margin:0;background:linear-gradient(160deg,var(--bg3),var(--bg2));border:1px solid var(--line);border-radius:16px;padding:24px 24px 18px}
.quote blockquote{margin:0}
.quote p{font-family:var(--serif);font-style:italic;font-size:1.05rem;line-height:1.6;margin:0 0 .9em}
.quote p::before{content:"“";color:var(--gold);font-size:1.4em;margin-right:.1em}
.quote p::after{content:"”";color:var(--gold);font-size:1.4em;margin-left:.1em}
.quote figcaption{color:var(--gold2);font-size:.9rem;letter-spacing:.04em}
