/* =========================================================
   SACH — plano de bolsillo A3
   Vista previa en pantalla, la hoja de 420 × 297 mm
   y las reglas de impresión.
   ========================================================= */

/* plano de bolsillo: vista previa */
body.printing{overflow:hidden}
.pr{position:fixed;inset:0;z-index:3000;background:#E9E6E2;overflow:auto;-webkit-overflow-scrolling:touch}
.pr[hidden]{display:none}
.pr-bar{position:sticky;top:0;left:0;z-index:2;display:flex;gap:12px 24px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:16px 24px;background:rgba(253,252,252,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--hair)}
.pr-bar h2{margin:0;font:300 26px/1.1 var(--display);letter-spacing:-.02em;color:var(--ink)}
.pr-bar p{margin:4px 0 0;font-size:13.5px;color:var(--mute);max-width:62ch}
.pr-bar .btns{margin:0}
.pr-warn{margin:16px auto 0;max-width:720px;padding:12px 16px;border-radius:14px;background:#fff;font-size:14px;color:var(--ink)}
.pr-stage{padding:24px 16px 12px;display:flex;justify-content:center}
.pr-fit{position:relative;flex:none}
.pr-cap{text-align:center;font-size:13px;color:var(--mute);margin:0 16px 40px}

/* plano de bolsillo: la hoja */
.sheet{position:absolute;top:0;left:0;width:420mm;height:297mm;background:#fff;color:#0C0A09;transform-origin:0 0;overflow:hidden;font-family:var(--sans);font-feature-settings:"tnum" 0;box-shadow:0 1px 2px rgba(12,10,9,.08),0 24px 60px rgba(12,10,9,.16);-webkit-print-color-adjust:exact;print-color-adjust:exact}
.sh-half{position:absolute;left:0;width:420mm;height:148.5mm;display:grid;grid-template-columns:repeat(4,105mm)}
.sh-back{top:0;transform:rotate(180deg)}
.sh-front{top:148.5mm}
.sh-p{position:relative;height:148.5mm;box-sizing:border-box;padding:8mm 7.5mm;overflow:hidden;font-size:var(--fs,7.6pt);line-height:1.32}
.sh-map{grid-column:span 3;padding:0}
.sh-svg{display:block;width:100%;height:100%}
.sh-folds{position:absolute;top:0;left:0;width:420mm;height:297mm;pointer-events:none}
.sh-h{margin:0;font:200 23pt/1 var(--display);letter-spacing:-.035em}
.sh-h.sm{font-size:15pt;letter-spacing:-.025em}
.sh-sub{margin:2mm 0 4.5mm;font-size:7.4pt;color:#6F6863}
.sh-ag{grid-column:span 2;column-count:2;column-gap:15mm;column-fill:auto}
.sh-ag .sh-h,.sh-ag .sh-sub{break-after:avoid}
.sh-it{display:grid;grid-template-columns:10.5mm 1fr;gap:2.6mm;break-inside:avoid;padding:2.2mm 0;border-top:.2mm solid #E3DFDB}
.sh-time b{display:block;font:300 1.5em/1 var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.sh-time span{display:block;font-size:.84em;color:#6F6863;margin-top:.7mm;font-variant-numeric:tabular-nums}
.sh-body p{margin:0}
.sh-name{display:flex;align-items:baseline;gap:1.5mm;font-weight:600;font-size:1.06em;line-height:1.2}
.sh-o{flex:none;display:inline-grid;place-items:center;width:1.6em;height:1.6em;border-radius:50%;background:#0C0A09;color:#fff;font-size:.78em;font-weight:700;align-self:center}
.sh-sn{margin-left:auto;padding-left:1.5mm;font-weight:400;color:#8a837e;font-size:.84em;font-variant-numeric:tabular-nums}
.sh-body .sh-addr{margin-top:.5mm;color:#6F6863}
.sh-body .sh-ev{margin-top:.9mm}
.sh-ev b{font-weight:600}
.sh-body .sh-warn{margin-top:.9mm;color:#B4441F;font-weight:500}
.sh-mv{margin:0;padding:.5mm 0 .6mm 13.1mm;font-size:.84em;color:#8a837e;break-before:avoid}
.sh-cover{display:flex;flex-direction:column;justify-content:space-between}
.sh-brand{margin:0;display:flex;flex-direction:column;font-size:7.4pt;color:#6F6863}
.sh-brand b{font:600 11pt/1.1 var(--display);letter-spacing:.01em;color:#0C0A09}
.sh-big{margin:0 0 0 -1.6mm;font:200 112pt/.8 var(--display);letter-spacing:-.065em}
.sh-title{margin:0;font:300 19pt/1.05 var(--display);letter-spacing:-.025em}
.sh-title span{display:block;color:#6F6863}
.sh-day{margin:2mm 0 0;font-size:8.6pt}
.sh-stats{display:flex;gap:6mm;margin:5mm 0 0}
.sh-stats dt{font-size:6.6pt;color:#6F6863}
.sh-stats dd{margin:.8mm 0 0;font:300 13.5pt/1 var(--display);letter-spacing:-.02em;white-space:nowrap}
.sh-stats small{font-size:.62em;color:#6F6863;letter-spacing:0}
.sh-foot{margin:0;font-size:7pt;line-height:1.45;color:#6F6863}
.sh-foot b{color:#0C0A09;font-weight:600}
.sh-lg{list-style:none;margin:0 0 4mm;padding:0;display:grid;gap:1.7mm}
.sh-lg li{display:flex;align-items:center;gap:2.4mm}
.sh-lg svg{flex:none;width:8mm;height:4mm;font-family:var(--sans)}
.sh-how{border-top:.2mm solid #E3DFDB;padding-top:2.4mm;margin-top:2.6mm}
.sh-how p{margin:.4mm 0 0}
.sh-how .sh-k{margin:0 0 .6mm;color:#6F6863}
.sh-fine{position:absolute;left:7.5mm;right:7.5mm;bottom:7mm;margin:0;font-size:5.8pt;line-height:1.35;color:#8a837e}
.sh-info{display:flex;flex-direction:column;gap:3mm}
.sh-fd{display:block;width:100%;height:auto;font-family:var(--sans)}
.sh-steps{margin:0;padding-left:3.6mm;display:grid;gap:1.2mm}
.sh-about{margin-top:auto;border-top:.2mm solid #E3DFDB;padding-top:3mm}
.sh-about p{margin:0 0 1.4mm}
.sh-qr{display:grid;grid-template-columns:23mm 1fr;gap:3mm;align-items:center}
.sh-qr img{display:block;width:23mm;height:23mm}
.sh-qr p{margin:0;font-size:6.8pt;color:#6F6863}
.sh-qr b{display:block;margin-top:1mm;font-size:8.4pt;color:#0C0A09}
.m-terr{font-family:var(--display);font-weight:300;letter-spacing:-.02em}
.m-st{font-family:var(--sans);font-weight:600;fill:#B4231F;paint-order:stroke;stroke:#fff;stroke-linejoin:round}
.m-o{font-family:var(--sans);font-weight:500;fill:#6F6863}
.m-lab{font-family:var(--sans);font-weight:600;fill:#0C0A09;paint-order:stroke;stroke:#fff;stroke-linejoin:round}
.m-n{font-family:var(--sans);font-weight:700;fill:#fff}
.m-sc text{font-family:var(--sans);fill:#0C0A09}
@media print{
  html,body{height:auto!important;min-height:0!important;overflow:visible!important;background:#fff!important}
  body.printing>*:not(#printRoot){display:none!important}
  body.printing #printRoot{position:static;display:block;overflow:visible;background:none}
  .pr-bar,.pr-warn,.pr-cap{display:none!important}
  .pr-stage{padding:0;display:block}
  .pr-fit{width:420mm!important;height:297mm!important;overflow:hidden}
  .sheet{transform:none!important;box-shadow:none}
}
@media (max-width:899px){
  .pr-bar{padding:14px 16px}
  .pr-bar h2{font-size:22px}
}
