{"id":15276,"date":"2026-04-24T11:48:50","date_gmt":"2026-04-24T09:48:50","guid":{"rendered":"https:\/\/magon.es\/calculadora-sobrecarga-admisible\/"},"modified":"2026-05-06T11:01:15","modified_gmt":"2026-05-06T09:01:15","slug":"calculateur-charge-admissible","status":"publish","type":"page","link":"https:\/\/magon.es\/fr\/calculateur-charge-admissible\/","title":{"rendered":"Calculateur de charge admissible"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"15276\" class=\"elementor elementor-15276 elementor-14991\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5cdcbb5 e-con-full e-flex e-con e-parent\" data-id=\"5cdcbb5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4d3c44f elementor-widget elementor-widget-html\" data-id=\"4d3c44f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"fr-FR\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<meta name=\"theme-color\" content=\"#2e1318\">\r\n<meta name=\"color-scheme\" content=\"light\">\r\n<meta http-equiv=\"X-Content-Type-Options\" content=\"nosniff\">\r\n<meta http-equiv=\"X-Frame-Options\" content=\"SAMEORIGIN\">\r\n<meta http-equiv=\"Permissions-Policy\" content=\"camera=(), microphone=(), geolocation=()\">\r\n<meta http-equiv=\"Referrer-Policy\" content=\"strict-origin-when-cross-origin\">\r\n<meta name=\"robots\" content=\"index, follow\">\r\n<meta name=\"author\" content=\"Magon Aceros \u2014 Magon Metales Perfilados S.A.\">\r\n\r\n\r\n\r\n\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;600;700&display=swap\" rel=\"stylesheet\" media=\"print\" onload=\"this.media='all'\">\r\n<noscript><link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;600;700&display=swap\" rel=\"stylesheet\"><\/noscript>\r\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jspdf\/2.5.1\/jspdf.umd.min.js\" defer><\/script>\r\n<style>\r\n:root{\r\n  --p:#4a2228;--pd:#2e1318;--pm:#6b3039;--pa:#8b4a52;\r\n  --pl:#f9f0f1;--pb:#d4a0a6;\r\n  --g1:#111827;--g2:#4b5563;--g3:#f9fafb;--gl:#e5e7eb;\r\n  --w:#fff;--t:#111827;--ts:#6b7280;\r\n  --ok:#16a34a;--warn:#d97706;--err:#dc2626;\r\n  --sh:0 1px 3px rgba(0,0,0,.08),0 4px 16px rgba(0,0,0,.04);\r\n  --r:10px;--tr:.18s ease;\r\n  --f:'DM Sans',sans-serif;--m:'DM Mono',monospace;\r\n}\r\n*{margin:0;padding:0;box-sizing:border-box}\r\nbody{font-family:var(--f);background:#f0eef0;color:var(--t);font-size:14px;line-height:1.5;min-height:100vh;overflow-x:hidden}\r\n\r\n\/* HEADER \u2014 oculto en Elementor *\/\r\n\r\n\/* HERO \u2014 inspirado en referencia, degradado muy claro con l\u00edneas diagonales *\/\r\n.hero{position:relative;width:100%;margin:0;padding:0}\r\n.hero-box{\r\n  position:relative;width:100%;\r\n  background:linear-gradient(135deg,#fefcfc 0%,#fdf5f6 30%,#f7e8eb 65%,#f0d5da 100%);\r\n  border-bottom:3px solid var(--p);\r\n  overflow:hidden;\r\n  display:flex;align-items:stretch;min-height:340px;\r\n}\r\n\/* Diagonal stripes \u2014 estilo referencia *\/\r\n.hero-box::before{\r\n  content:'';position:absolute;inset:0;\r\n  background:repeating-linear-gradient(\r\n    -45deg,\r\n    transparent,\r\n    transparent 28px,\r\n    rgba(74,34,40,.025) 28px,\r\n    rgba(74,34,40,.025) 30px\r\n  );\r\n  pointer-events:none;\r\n}\r\n.hero-box::after{\r\n  content:'';position:absolute;right:-80px;top:-80px;\r\n  width:400px;height:400px;border-radius:50%;\r\n  background:radial-gradient(circle,rgba(74,34,40,.06) 0%,transparent 65%);\r\n  pointer-events:none;\r\n}\r\n.hero-inner{\r\n  position:relative;z-index:1;\r\n  max-width:1100px;width:100%;margin:0 auto;\r\n  padding:34px 1.5rem 30px;\r\n  display:flex;flex-direction:column;justify-content:center;\r\n}\r\n\/* kicker \u2014 flecha + texto como referencia *\/\r\n.hero-kicker{\r\n  display:inline-flex;align-items:center;gap:7px;\r\n  padding:5px 12px;border-radius:4px;\r\n  background:rgba(74,34,40,.08);border:1px solid rgba(74,34,40,.14);\r\n  color:var(--pd);font-size:.65rem;font-weight:700;\r\n  letter-spacing:.1em;text-transform:uppercase;\r\n  margin-bottom:18px;align-self:flex-start;\r\n}\r\n.hero-kicker::before{content:'\u203a';font-size:1rem;font-weight:900;opacity:.7;line-height:1}\r\n.hero h1{\r\n  max-width:none;width:100%;\r\n  font-size:clamp(1.8rem,3.5vw,3rem);\r\n  line-height:1.05;font-weight:800;\r\n  color:var(--pd);margin-bottom:14px;\r\n  letter-spacing:-.02em;\r\n}\r\n.hero p{\r\n  max-width:560px;\r\n  font-size:.96rem;line-height:1.7;color:#5c3540;\r\n}\r\n\/* CTA \u2014 texto cambiado en HTML, hover solo oscurece fondo NO texto *\/\r\n.hero-cta{\r\n  display:inline-flex;align-items:center;justify-content:center;gap:8px;\r\n  align-self:flex-start;margin-top:26px;\r\n  padding:12px 20px;border-radius:4px;\r\n  background:var(--pd);border:2px solid var(--pd);\r\n  color:#fff!important;text-decoration:none;\r\n  text-transform:uppercase;letter-spacing:.08em;\r\n  font-size:.73rem;font-weight:700;\r\n  transition:var(--tr);box-shadow:0 6px 20px rgba(46,19,24,.18);\r\n}\r\n.hero-cta:hover{background:#1a0a0e;border-color:#1a0a0e;color:#fff!important;transform:translateY(-1px)}\r\n\r\n\/* MAKER BAR \u2014 negro como referencia, borde burdeos arriba *\/\r\n.maker-bar{width:100%;margin:0;background:#111;border-top:3px solid var(--p);padding:0}\r\n.maker-bar-inner{max-width:1100px;margin:0 auto;padding:12px 1.5rem;display:flex;align-items:center;gap:16px}\r\n.maker-brand{display:flex;align-items:center;gap:12px}\r\n.maker-copy{font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.4)}\r\n.maker-sep{width:1px;height:18px;background:rgba(255,255,255,.18);flex-shrink:0}\r\n.maker-logo{height:16px!important;max-height:16px!important;width:auto!important;display:block;filter:brightness(0) invert(1);opacity:.85}\r\n.maker-actions{display:flex;align-items:center;margin-left:auto}\r\n\r\n\/* LAYOUT \u2014 ancho total para Elementor *\/\r\n.page{width:100%;max-width:none;margin:0;padding:20px 0 60px;display:flex;flex-direction:column;gap:14px;box-sizing:border-box}\r\n\r\n\/* TABLA \u2014 headers visibles siempre *\/\r\n.tw{overflow-x:auto}\r\ntable{width:100%;border-collapse:collapse;font-size:.82rem}\r\nthead tr{background:#2e1318!important}\r\nthead th{padding:9px 12px;color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;background:var(--pd)!important;font-size:.67rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:right;white-space:nowrap;font-family:var(--m)}\r\nthead th:first-child{text-align:left}\r\ntbody tr{border-bottom:1px solid var(--gl)}\r\ntbody tr:last-child{border-bottom:none}\r\ntbody tr.rsel{background:#fdf3f4}\r\ntbody tr:hover{background:#fdf8f8}\r\ntbody td{padding:7px 11px;color:var(--t);text-align:right;white-space:nowrap;font-family:var(--m);font-size:.81rem}\r\ntbody td:first-child{text-align:left;font-weight:600;color:var(--pd);font-family:var(--f)}\r\n.chi{background:var(--p);color:#fff!important;font-weight:700;border-radius:4px;padding:2px 7px;display:inline-block}\r\n.cd{color:#d1d5db}\r\n.vok{color:var(--ok);font-weight:600}.vwarn{color:var(--warn);font-weight:600}.vfail{color:var(--err);font-weight:600}\r\n\r\n\/* MODAL \u2014 form note visible, texto claro *\/\r\n.mh{padding:18px 56px 14px 20px;border-bottom:1px solid var(--gl);background:linear-gradient(135deg,var(--pd),var(--p));color:#fff;position:relative}\r\n.mh h3{font-size:.97rem;font-weight:700;margin-bottom:2px;color:#fff}\r\n.mh p{font-size:.77rem;color:rgba(255,255,255,.72)}\r\n.form-note{font-size:.71rem;color:var(--ts);line-height:1.5;padding:9px 11px;background:#fef9e7;border-radius:5px;border:1px solid #fde68a;color:#92400e;display:block!important;margin-bottom:10px}\r\n.mf{padding:14px 20px 16px;background:var(--g3);border-top:1px solid var(--gl);display:flex!important;flex-direction:column;gap:10px}.modal-submit-btn{width:100%;padding:13px;font-size:.82rem;justify-content:center;border-radius:5px}.form-legal{font-size:.68rem;color:var(--ts);line-height:1.5;text-align:center;margin:0!important}\r\n\r\n\/* CARD *\/\r\n.card{background:var(--w);border-radius:var(--r);box-shadow:var(--sh);border:1px solid var(--gl);overflow:hidden}\r\n.card-h{padding:13px 16px;border-bottom:1px solid var(--gl);display:flex;align-items:center;gap:10px}\r\n.card-ico{width:24px;height:24px;background:var(--pl);border-radius:5px;display:flex;align-items:center;justify-content:center;color:var(--p);font-size:11px;flex-shrink:0}\r\n.card-step{width:26px;height:26px;border-radius:999px;background:var(--pd);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0;font-family:var(--m)}\r\n.card-title{font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.11em;color:var(--pd);flex:1}\r\n.card-body{padding:14px 16px}\r\n\r\n\/* TABS *\/\r\n.tabs{display:flex;gap:3px;padding:3px;background:var(--g3);border-radius:6px;margin-bottom:12px;border:1px solid var(--gl)}\r\n.tab{flex:1;padding:7px 8px;border:none;background:transparent;border-radius:4px;font-family:var(--f);font-size:.74rem;font-weight:600;color:var(--ts);cursor:pointer;transition:var(--tr);text-align:center}\r\n.tab.active{background:var(--w);color:var(--pd);box-shadow:0 1px 4px rgba(0,0,0,.1)}\r\n.tab:hover:not(.active){color:var(--p)}\r\n\r\n\/* PRODUCT GRID *\/\r\n.prod-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}\r\n.prod{padding:9px 11px;border-radius:6px;cursor:pointer;border:1.5px solid var(--gl);transition:var(--tr);background:var(--g3);position:relative}\r\n.prod:hover{border-color:var(--pb);background:var(--pl)}\r\n.prod.sel{border-color:var(--p);background:var(--pl)}\r\n.prod.sel::before{content:'OK';position:absolute;top:5px;right:7px;font-size:.6rem;color:var(--p);font-weight:700;letter-spacing:.04em}\r\n.prod-name{font-weight:700;font-size:.83rem;color:var(--t);font-family:var(--m);margin-bottom:2px}\r\n.prod-sub{font-size:.68rem;color:var(--ts)}\r\n.prod-tags{display:flex;gap:3px;margin-top:4px;flex-wrap:wrap}\r\n.tag{font-size:.6rem;font-weight:600;padding:1px 5px;border-radius:3px;background:rgba(74,34,40,.1);color:var(--pd);font-family:var(--m)}\r\n\r\n\/* CORREA PICKER *\/\r\n.cp{display:flex;flex-direction:column;gap:9px}\r\n.cp-row{display:grid;grid-template-columns:65px 1fr;align-items:start;gap:8px}\r\n.cp-lbl{font-size:.66rem;font-weight:700;color:var(--ts);font-family:var(--m);text-transform:uppercase;padding-top:6px}\r\n.pills{display:flex;gap:10px 12px;flex-wrap:wrap;align-items:flex-start;padding-top:4px}\r\n\r\n\/* PILLS \u2014 estado reactivo *\/\r\n.pill{padding:9px 14px 8px;border-radius:7px;border:1.5px solid var(--gl);background:var(--w);font-size:.76rem;font-weight:700;cursor:pointer;transition:var(--tr);font-family:var(--m);color:var(--g2);position:relative;text-align:center;min-width:88px;box-shadow:0 6px 14px rgba(17,24,39,.04)}\r\n.pill:hover:not(.pdis){border-color:var(--pb);color:var(--p)}\r\n.pill.active{background:var(--p);border-color:var(--p);color:#fff}\r\n.pill.pdis{opacity:.28;cursor:not-allowed;pointer-events:none;background:var(--g3);text-decoration:line-through}\r\n\/* Badge de valor\/estado sobre la pill *\/\r\n.pill[data-badge]{margin-top:14px}\r\n.pill[data-badge]::after{content:attr(data-badge);position:absolute;top:-13px;left:10px;font-size:.68rem;font-weight:800;padding:2px 8px;border-radius:5px;white-space:nowrap;font-family:var(--f);pointer-events:none;line-height:1.4;box-shadow:0 7px 14px rgba(17,24,39,.12)}\r\n.pill.pill-ok{border-color:var(--ok)}\r\n.pill.pill-ok[data-badge]::after{background:var(--ok);color:#fff}\r\n.pill.pill-warn{border-color:var(--warn)}\r\n.pill.pill-warn[data-badge]::after{background:var(--warn);color:#fff}\r\n.pill.pill-fail{border-color:var(--err);opacity:.5}\r\n.pill.pill-fail[data-badge]::after{background:var(--err);color:#fff}\r\n\r\n\/* SEP BUTTONS *\/\r\n.sg{display:grid;grid-template-columns:repeat(6,1fr);gap:3px}\r\n.sg4{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}\r\n.sb{padding:7px 3px;text-align:center;border:1.5px solid var(--gl);border-radius:5px;font-size:.71rem;font-weight:600;cursor:pointer;transition:var(--tr);background:var(--w);color:var(--g2);font-family:var(--m);position:relative}\r\n.sb:hover:not(.sdis){border-color:var(--pb);color:var(--p)}\r\n.sb.active{background:var(--p);border-color:var(--p);color:#fff}\r\n.sb.sdis{opacity:.26;cursor:not-allowed;pointer-events:none;background:var(--g3);text-decoration:line-through}\r\n.sb[data-badge]::after{content:attr(data-badge);position:absolute;top:-8px;right:-4px;font-size:.55rem;font-weight:700;padding:1px 4px;border-radius:3px;white-space:nowrap;font-family:var(--f);pointer-events:none;line-height:1.4}\r\n.sb.sb-ok{border-color:var(--ok)}\r\n.sb.sb-ok[data-badge]::after{background:var(--ok);color:#fff}\r\n.sb.sb-warn{border-color:var(--warn)}\r\n.sb.sb-warn[data-badge]::after{background:var(--warn);color:#fff}\r\n.sb.sb-fail{border-color:var(--err);opacity:.55}\r\n.sb.sb-fail[data-badge]::after{background:var(--err);color:#fff}\r\n\r\n\/* VANOS *\/\r\n.vps{display:flex;gap:5px}\r\n.vp{flex:1;padding:8px 5px;border:1.5px solid var(--gl);border-radius:6px;background:var(--w);cursor:pointer;transition:var(--tr);text-align:center}\r\n.vp:hover{border-color:var(--pb)}\r\n.vp.active{border-color:var(--p);background:var(--pl)}\r\n.vp-lbl{font-size:.66rem;font-weight:700;color:var(--ts);text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:2px}\r\n.vp.active .vp-lbl{color:var(--pd)}\r\n.vsch{display:flex;align-items:flex-end;justify-content:center;gap:2px;height:13px;margin-bottom:2px}\r\n.vseg{height:3px;background:var(--gl);border-radius:2px;flex:1;max-width:20px}\r\n.vp.active .vseg{background:var(--p)}\r\n.vsup{width:3px;height:9px;background:var(--gl);border-radius:1px}\r\n.vp.active .vsup{background:var(--pd)}\r\n\r\n\/* FORM *\/\r\n.fg{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}\r\n.fg:last-child{margin-bottom:0}\r\nlabel{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--g2);display:flex;align-items:center;gap:5px}\r\ninput,select{padding:9px 11px;border:1.5px solid var(--gl);border-radius:6px;font-family:var(--f);font-size:.87rem;color:var(--t);background:var(--w);transition:var(--tr);outline:none;width:100%}\r\ninput:focus,select:focus{border-color:var(--p);box-shadow:0 0 0 3px rgba(74,34,40,.08)}\r\n.iw{position:relative}\r\n.iu{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:.7rem;font-weight:600;color:#bbb;pointer-events:none;font-family:var(--m)}\r\n.iw input{padding-right:38px}\r\n.fr{display:grid;grid-template-columns:1fr 1fr;gap:10px}\r\n\r\n\/* TIP *\/\r\n.tip{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;background:#e5e7eb;color:#888;border-radius:50%;font-size:.58rem;font-weight:700;cursor:help;position:relative;flex-shrink:0}\r\n.tip:hover::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:var(--g1);color:#fff;padding:6px 9px;border-radius:5px;font-size:.7rem;font-weight:400;white-space:normal;min-width:190px;max-width:230px;z-index:50;box-shadow:0 4px 12px rgba(0,0,0,.2);text-align:left;line-height:1.4;pointer-events:none}\r\n\r\n\/* ALERT *\/\r\n.alert{padding:9px 13px;border-radius:6px;font-size:.78rem;margin-bottom:10px;display:none;align-items:center;gap:7px}\r\n.alert.show{display:flex}\r\n.ae{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}\r\n\r\n\/* HINT *\/\r\n.hint{background:var(--pl);border:1px solid var(--pb);border-radius:6px;padding:8px 11px;font-size:.74rem;color:var(--pd);display:flex;align-items:flex-start;gap:7px;margin-top:8px}\r\n.hint svg{flex-shrink:0;margin-top:1px}\r\n\r\n\/* BTN *\/\r\n.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 18px;border:none;border-radius:6px;font-family:var(--f);font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:var(--tr)}\r\n.btn-p{background:var(--p);color:#fff}\r\n.btn-p:hover{background:var(--pd);transform:translateY(-1px);box-shadow:0 4px 12px rgba(74,34,40,.35)}\r\n.btn-o{background:transparent;color:var(--p);border:1.5px solid var(--p)}\r\n.btn-o:hover{background:var(--pl)}\r\n.acc-btn{background:linear-gradient(135deg,var(--p) 0%,var(--pm) 100%);color:#fff;border:1px solid var(--p);box-shadow:0 14px 28px rgba(74,34,40,.22);padding:12px 18px}\r\n.acc-btn:hover{background:linear-gradient(135deg,var(--pd) 0%,var(--p) 100%);transform:translateY(-1px)}\r\n.btn-g{background:transparent;color:var(--ts);border:1.5px solid var(--gl)}\r\n.btn-g:hover{background:var(--g3);color:var(--t)}\r\n.btn-f{width:100%}\r\n.btn-s{padding:8px 13px;font-size:.73rem}\r\n\r\n\/* SEP *\/\r\nhr.sep{border:none;border-top:1px solid var(--gl);margin:12px 0}\r\n\r\n\/* DISCLAIMER *\/\r\n.disc{padding:9px 13px;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;font-size:.73rem;color:#92400e;line-height:1.5}\r\n.disc strong{display:block;margin-bottom:1px}\r\n\r\n\/* RESULT BANNER *\/\r\n.rb{background:linear-gradient(135deg,var(--pd) 0%,var(--p) 55%,var(--pm) 100%);border-radius:var(--r);padding:20px 22px;color:#fff;box-shadow:0 8px 32px rgba(74,34,40,.28);display:none;position:relative;overflow:hidden}\r\n.rb.show{display:block;animation:fadeUp .32s ease forwards}\r\n.rb::after{content:'';position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.04);pointer-events:none}\r\n.rb-ey{font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:3px}\r\n.rb-nom{font-size:1.4rem;font-weight:700;line-height:1.1;margin-bottom:2px;font-family:var(--m)}\r\n.rb-sub{font-size:.73rem;color:rgba(255,255,255,.55);margin-bottom:14px}\r\n.rb-met{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}\r\n.met{background:rgba(255,255,255,.08);border-radius:6px;padding:9px 10px;text-align:center}\r\n.met-v{font-size:1.35rem;font-weight:700;line-height:1;margin-bottom:3px;font-family:var(--m)}\r\n.met-v.ok{color:#6ee7a8}.met-v.warn{color:#fcd34d}.met-v.fail{color:#fca5a5}\r\n.met-l{font-size:.58rem;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.4);font-weight:600}\r\n.rbadge{display:inline-flex;align-items:center;gap:5px;padding:6px 13px;border-radius:20px;font-size:.75rem;font-weight:700}\r\n.bok{background:rgba(110,231,168,.18);color:#6ee7a8;border:1px solid rgba(110,231,168,.3)}\r\n.bwarn{background:rgba(252,211,77,.18);color:#fcd34d;border:1px solid rgba(252,211,77,.3)}\r\n.bfail{background:rgba(252,165,165,.18);color:#fca5a5;border:1px solid rgba(252,165,165,.3)}\r\n.bneut{background:rgba(255,255,255,.1);color:rgba(255,255,255,.55)}\r\n\r\n\r\n\/* NOTA *\/\r\n.nota{font-size:.71rem;color:var(--ts);line-height:1.5;padding:9px 13px;background:var(--g3);border-radius:6px;border-left:3px solid var(--pa);display:none}\r\n\r\n\/* CTA *\/\r\n.cta{background:linear-gradient(135deg,var(--pd) 0%,var(--p) 55%,var(--pm) 100%);border-radius:var(--r);padding:16px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 20px rgba(74,34,40,.22);border:1px solid var(--pm)}\r\n.cta-ico{width:38px;height:38px;background:rgba(255,255,255,.12);border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}\r\n.cta-c{flex:1}\r\n.cta-t{font-size:.86rem;font-weight:700;color:#fff;margin-bottom:2px}\r\n.cta-d{font-size:.71rem;color:rgba(255,255,255,.65);line-height:1.4}\r\n.cta-btn{background:#fff!important;color:var(--pd)!important;flex-shrink:0;display:inline-flex;align-items:center;gap:4px}\r\n.cta-btn:hover{background:var(--pl)!important;transform:translateY(-1px)}\r\n\r\n\/* MODAL OVERLAY \u2014 ambas clases funcionan *\/\r\n.mo{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;z-index:9000;opacity:0;pointer-events:none;transition:opacity .2s;padding:1rem;overflow-y:auto}\r\n.mo.open{opacity:1;pointer-events:all}\r\n.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex!important;align-items:center;justify-content:center;z-index:9000;padding:1rem;overflow-y:auto;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}\r\n.modal-bg.hidden{display:none!important}\r\n.modal{background:#fff;border-radius:10px;width:100%;max-width:520px;margin:auto;box-shadow:0 20px 60px rgba(0,0,0,.3);transform:translateY(12px);transition:transform .2s;overflow:hidden;position:relative}\r\n.mo.open .modal{transform:translateY(0)}\r\n.modal-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border:none;border-radius:999px;background:rgba(255,255,255,.12);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--tr)}\r\n.modal-close:hover{background:rgba(255,255,255,.2)}\r\n.check-row{display:flex;align-items:flex-start;gap:10px;font-size:.77rem;color:var(--t);line-height:1.5;margin:12px 0 10px;text-transform:none;letter-spacing:0;font-weight:500}\r\n.check-row input{width:16px;height:16px;margin-top:2px;flex-shrink:0}\r\n.hidden{display:none!important}\r\n.mb{padding:16px 20px}\r\n\r\n\/* TOAST *\/\r\n.toast{position:fixed;bottom:22px;right:22px;background:var(--g1);color:#fff;padding:11px 18px;border-radius:8px;font-size:.83rem;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:9999;opacity:0;transform:translateY(10px);transition:opacity .2s,transform .2s;pointer-events:none;border-left:3px solid var(--pa)}\r\n.toast.show{opacity:1;transform:translateY(0)}\r\n\r\n\/* ANIMACIONES *\/\r\n@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}\r\n.card.ra{animation:fadeUp .36s ease forwards;will-change:opacity,transform}\r\n\r\n\/* PROGRESO *\/\r\n.prog-wrap{height:3px;background:var(--gl);border-radius:2px;margin-bottom:14px;overflow:hidden}\r\n.prog-fill{height:100%;background:linear-gradient(90deg,var(--p),var(--pa));border-radius:2px;transition:width .3s ease;width:0%}\r\n\r\n\/* DARK MODE *\/\r\nbody.dark{--w:#1e2430;--g3:#161c27;--gl:#2d3748;--t:#e2e8f0;--ts:#94a3b8;--g2:#94a3b8;--sh:0 1px 3px rgba(0,0,0,.3),0 4px 16px rgba(0,0,0,.2);background:#0f1318}\r\nbody.dark .card,body.dark .modal{background:#1e2430;border-color:#2d3748}\r\nbody.dark .card-h,body.dark .mf{border-color:#2d3748}\r\nbody.dark input,body.dark select{background:#161c27;border-color:#2d3748;color:#e2e8f0}\r\nbody.dark .tabs{background:#161c27;border-color:#2d3748}\r\nbody.dark .tab.active{background:#2d3748;color:#e2e8f0}\r\nbody.dark .prod,body.dark .pill,body.dark .sb,body.dark .vp{background:#161c27;border-color:#2d3748}\r\nbody.dark .prod:hover,body.dark .prod.sel,body.dark .vp.active{background:rgba(74,34,40,.25)}\r\nbody.dark .pill:hover:not(.pdis),body.dark .sb:hover:not(.sdis){border-color:var(--pb);color:var(--pa)}\r\nbody.dark .pill.pdis,body.dark .sb.sdis{background:#161c27}\r\nbody.dark .disc{background:#2a2210;border-color:#5a4a20;color:#d4a853}\r\nbody.dark .nota{background:#161c27}\r\nbody.dark .mb{background:#1e2430}\r\nbody.dark tbody tr{border-color:#2d3748}\r\nbody.dark tbody tr:hover{background:rgba(74,34,40,.1)}\r\nbody.dark tbody tr.rsel{background:rgba(74,34,40,.2)}\r\nbody.dark tbody td{color:#e2e8f0}\r\nbody.dark .hint{background:rgba(74,34,40,.2);border-color:rgba(74,34,40,.5)}\r\nbody.dark .prog-wrap{background:#2d3748}\r\n\r\n\/* RESPONSIVE \u2014 ver bloque final *\/\r\nhtml{scroll-behavior:smooth}\r\n.hdr{display:none}\r\n#s-perf,#s-sw{display:flex;flex-direction:column;gap:14px}\r\n.fam-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}\r\n.fam-tabs .tab{flex:none}\r\n.form-legal{font-size:.73rem;color:var(--ts);line-height:1.6;margin-top:10px}\r\nbody.dark .hero-box{background:linear-gradient(135deg,#1a0f12 0%,#1e1215 30%,#221618 65%,#26191c 100%);border-bottom-color:var(--pm)}\r\nbody.dark .hero h1{color:#f0e4e6}\r\nbody.dark .hero p{color:#c4a8ad}\r\nbody.dark .hero-kicker{background:rgba(255,255,255,.06);color:#e8d0d4;border-color:rgba(255,255,255,.08)}\r\nbody.dark .hero-cta{background:var(--p);border-color:var(--p);color:#fff!important}\r\nbody.dark .hero-cta:hover{background:var(--pm);border-color:var(--pm);color:#fff!important}\r\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n   RESPONSIVE \u2014 TABLET 900px\r\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\r\n@media(max-width:900px){\r\n  .hero-inner{padding:38px 16px 34px}\r\n  .hero h1{font-size:2.2rem}\r\n  .fam-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}\r\n  .rb-met{grid-template-columns:repeat(2,1fr)}\r\n}\r\n\r\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n   RESPONSIVE \u2014 M\u00d3VIL 600px\r\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\r\n@media(max-width:600px){\r\n\r\n  \/* HERO *\/\r\n  .hero-box{min-height:auto}\r\n  .hero-inner{padding:26px 14px 24px}\r\n  .hero h1{font-size:1.65rem;letter-spacing:-.01em;line-height:1.1}\r\n  .hero p{font-size:.85rem;max-width:none;line-height:1.65}\r\n  .hero-cta{width:100%;justify-content:center;padding:13px 16px}\r\n  .hero-kicker{font-size:.6rem;padding:4px 9px}\r\n\r\n  \/* MAKER BAR *\/\r\n  .maker-bar-inner{padding:8px 14px;flex-wrap:wrap;gap:7px}\r\n  .maker-logo{height:14px!important;max-height:14px!important}\r\n  .maker-sep{height:13px}\r\n\r\n  \/* CALCULADORA LAYOUT *\/\r\n  .page{padding:10px 8px 40px}\r\n  .card{padding:11px 10px}\r\n  .card-h{padding:10px 12px}\r\n  .card-body{padding:10px 10px}\r\n\r\n  \/* TABS familia \u2014 2 columnas *\/\r\n  .fam-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}\r\n  .tab{padding:7px 5px;font-size:.68rem}\r\n\r\n  \/* PRODUCT LIST \u2014 1 columna *\/\r\n  .prod-grid{grid-template-columns:1fr}\r\n  .prod{padding:8px 10px}\r\n\r\n  \/* CORREA PICKER \u2014 label arriba, no al lado *\/\r\n  .cp-row{grid-template-columns:1fr;gap:4px}\r\n  .cp-lbl{padding-top:0;margin-bottom:2px}\r\n\r\n  \/* PILLS \u2014 m\u00e1s peque\u00f1as, sin min-width fijo *\/\r\n  .pills{gap:6px 8px}\r\n  .pill{min-width:64px;padding:7px 10px;font-size:.72rem}\r\n  .pill[data-badge]{margin-top:16px}\r\n  .pill-cap{font-size:.58rem;padding:1px 4px}\r\n\r\n  \/* SEPARACI\u00d3N P\u00d3RTICOS \u2014 3 col en lugar de 6 *\/\r\n  .sg{grid-template-columns:repeat(3,1fr);gap:4px}\r\n  .sg4{grid-template-columns:repeat(2,1fr);gap:4px}\r\n  .sb{padding:6px 3px;font-size:.67rem}\r\n\r\n  \/* VANOS *\/\r\n  .vps{gap:4px}\r\n  .vp{padding:7px 4px}\r\n  .vp-lbl{font-size:.6rem}\r\n\r\n  \/* FORMULARIO inputs *\/\r\n  .fr{grid-template-columns:1fr}\r\n  input,select{padding:8px 10px;font-size:.85rem}\r\n\r\n  \/* RESULTADO BANNER *\/\r\n  .rb{padding:16px 14px}\r\n  .rb-nom{font-size:1.15rem}\r\n  .rb-met{grid-template-columns:1fr 1fr}\r\n  .met-v{font-size:1.15rem}\r\n  .met-l{font-size:.55rem}\r\n\r\n  \/* TABLA *\/\r\n  table{font-size:.7rem}\r\n  thead th,tbody td{padding:5px 6px}\r\n  .tw{-webkit-overflow-scrolling:touch}\r\n\r\n  \/* CTA *\/\r\n  .cta{flex-direction:column;text-align:center;padding:14px 12px;gap:10px}\r\n  .cta-btn{width:100%;justify-content:center}\r\n  .cta-ico{display:none}\r\n\r\n  \/* SEO SECTIONS \u2014 layout limpio en m\u00f3vil *\/\r\n  .seo-section{padding:28px 0}\r\n  .seo-inner{padding:0 16px}\r\n  .seo-h2{font-size:1.12rem;line-height:1.2;margin-bottom:8px}\r\n  .seo-lead{font-size:.85rem;line-height:1.7;margin-bottom:14px;max-width:none}\r\n  .seo-body{font-size:.83rem;line-height:1.75;margin-bottom:10px}\r\n  \/* 2 columnas \u2192 1 columna siempre en m\u00f3vil *\/\r\n  .seo-2col{display:flex;flex-direction:column;gap:0}\r\n  \/* F\u00f3rmula compacta *\/\r\n  .seo-formula{padding:12px 13px;margin:12px 0;border-radius:6px}\r\n  .seo-formula code{font-size:.85rem;margin-bottom:8px;word-break:break-all}\r\n  .seo-formula ul li{font-size:.76rem;padding:3px 0}\r\n  \/* Nota *\/\r\n  .seo-note{padding:10px 12px;font-size:.75rem}\r\n  \/* Tablas SEO \u2014 scroll horizontal sin min-width forzado *\/\r\n  .seo-table-wrap{margin:12px 0 0;border-radius:6px}\r\n  .seo-table{min-width:0;width:100%;font-size:.75rem}\r\n  .seo-table thead th{padding:7px 9px;font-size:.6rem;white-space:normal}\r\n  .seo-table tbody td{padding:6px 9px;font-size:.75rem}\r\n  .seo-table tbody td.c{white-space:nowrap}\r\n  \/* FAQ *\/\r\n  .faq-q{font-size:.82rem;padding:12px 0;gap:8px;line-height:1.35}\r\n  .faq-icon{width:20px;height:20px;min-width:20px;font-size:11px}\r\n  .faq-a{font-size:.81rem;line-height:1.75}\r\n  .faq-item.open .faq-a{max-height:600px}\r\n  \/* CTA aislamiento *\/\r\n  .seo-cta-link{padding:12px 13px;gap:10px}\r\n  .seo-cta-link .scl-title{font-size:.8rem}\r\n  .seo-cta-link .scl-sub{font-size:.7rem}\r\n\r\n  \/* FOOTER *\/\r\n  .footer-inner{flex-direction:column;align-items:flex-start;gap:8px;padding:0 14px}\r\n  .footer-links{gap:4px 12px}\r\n  .footer-copy{font-size:.68rem}\r\n}\r\n\r\n\/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n   RESPONSIVE \u2014 MUY PEQUE\u00d1O 380px\r\n\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\r\n@media(max-width:380px){\r\n  .hero h1{font-size:1.4rem}\r\n  .hero-cta{font-size:.68rem}\r\n  .fam-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}\r\n  .tab{font-size:.63rem;padding:6px 4px}\r\n  .pill{min-width:54px;padding:6px 8px;font-size:.68rem}\r\n  .sg{grid-template-columns:repeat(3,1fr)}\r\n  .sg4{grid-template-columns:repeat(2,1fr)}\r\n  .rb-met{grid-template-columns:1fr}\r\n  .met-v{font-size:1.3rem}\r\n  .seo-h2{font-size:1rem;line-height:1.2}\r\n  .seo-body{font-size:.8rem}\r\n  .seo-formula code{font-size:.8rem}\r\n  .seo-formula ul li{font-size:.73rem}\r\n  .seo-table thead th{font-size:.57rem;padding:6px 7px}\r\n  .seo-table tbody td{font-size:.72rem;padding:5px 7px}\r\n  .card{padding:9px 8px}\r\n  .faq-q{font-size:.78rem}\r\n  .faq-a{font-size:.78rem}\r\n}\r\n\r\n\/* Intro block encima calculadora \u2014 mobile *\/\r\n@media(max-width:600px){\r\n  .intro-block{padding:24px 16px 20px!important;text-align:left!important}\r\n  .intro-block h2{font-size:1.05rem!important;line-height:1.2!important;margin-bottom:8px!important}\r\n  .intro-block p{font-size:.83rem!important;max-width:none!important;line-height:1.65!important}\r\n}\r\n\r\n\/* FOOTER *\/\r\n.site-footer{background:#111;border-top:3px solid var(--p);padding:22px 0 18px}\r\n.footer-inner{max-width:1100px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}\r\n.footer-copy{font-size:.72rem;color:rgba(255,255,255,.45);font-weight:600}\r\n.footer-links{display:flex;flex-wrap:wrap;gap:5px 18px;list-style:none}\r\n.footer-links a{font-size:.7rem;color:rgba(255,255,255,.38);text-decoration:none;font-weight:600;letter-spacing:.03em;transition:var(--tr)}\r\n.footer-links a:hover{color:var(--pa)}\r\n\/* footer responsive incluido en bloque unificado *\/\r\n\/* \u2500\u2500 SEO SECTIONS \u2500\u2500 *\/\r\n.seo-section{padding:52px 0;background:var(--w);border-bottom:1px solid var(--gl)}\r\n.seo-section.alt{background:#f9f7f7}\r\n\/* Ancho igual que hero-inner y calc: max-width:1100px con padding lateral *\/\r\n.seo-inner{max-width:1100px;margin:0 auto;padding:0 1.5rem}\r\n.seo-tag{display:inline-block;background:rgba(74,34,40,.08);color:var(--pd);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:3px;margin-bottom:10px;border:.5px solid rgba(74,34,40,.15)}\r\n.seo-h2{font-size:clamp(1.2rem,2.5vw,1.65rem);font-weight:800;color:var(--pd);letter-spacing:-.02em;margin:0 0 10px;line-height:1.15}\r\n.seo-h2 em{color:var(--p);font-style:normal}\r\n.seo-lead{font-size:.93rem;color:var(--g2);line-height:1.75;margin-bottom:22px;max-width:700px}\r\n.seo-body{font-size:.88rem;color:var(--g2);line-height:1.8;margin-bottom:12px}\r\n.seo-body strong{color:var(--t)}\r\n.seo-body a{color:var(--p);text-decoration:none;font-weight:600;border-bottom:1px solid rgba(74,34,40,.2)}\r\n.seo-lead a,.seo-section a:not(.seo-cta-link):not([style*=\"color:inherit\"]){color:var(--p)!important;text-decoration:none;font-weight:600}\r\n.seo-section a:not(.seo-cta-link):not([style*=\"color:inherit\"]):hover{border-bottom:1px solid var(--p)}\r\n.seo-body a:hover{border-bottom-color:var(--p)}\r\n\/* F\u00f3rmula en claro \u2014 fondo burdeos muy suave, no oscuro *\/\r\n.seo-formula{background:var(--pl);border-radius:8px;padding:18px 20px;margin:16px 0;border-left:3px solid var(--p)}\r\n.seo-formula code{display:block;font-size:1rem;font-weight:700;color:var(--pd);font-family:var(--m);margin-bottom:12px;letter-spacing:.02em}\r\n.seo-formula ul{list-style:none;padding:0;margin:0}\r\n.seo-formula ul li{font-size:.8rem;color:var(--g2);padding:4px 0;display:flex;gap:8px;border-bottom:1px solid rgba(74,34,40,.08)}\r\n.seo-formula ul li:last-child{border-bottom:none}\r\n.seo-formula ul li::before{content:'\u2014';color:var(--p);flex-shrink:0;opacity:.6}\r\n.seo-formula ul li strong{color:var(--pd)}\r\n.seo-2col{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}\r\n.seo-note{background:var(--pl);border:1px solid var(--pb);border-radius:6px;padding:12px 14px;font-size:.78rem;color:var(--pd);line-height:1.55;margin-top:14px}\r\n.seo-note a{color:var(--p);font-weight:600}\r\n\/* Tablas SEO en claro *\/\r\n.seo-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:16px 0 0;border-radius:8px;border:1px solid var(--gl)}\r\n.seo-table{width:100%;border-collapse:collapse;font-size:.83rem}\r\n.seo-table thead tr{background:var(--pl)}\r\n.seo-table thead th{padding:9px 12px;text-align:left;font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--pd);white-space:nowrap}\r\n.seo-table thead th.c{text-align:center}\r\n.seo-table tbody tr{border-top:1px solid var(--gl)}\r\n.seo-table tbody tr:nth-child(even){background:var(--g3)}\r\n.seo-table tbody tr:nth-child(odd){background:#fff}\r\n.seo-table tbody td{padding:8px 12px;color:var(--ts);font-size:.83rem}\r\n.seo-table tbody td.l{text-align:left;font-weight:600;color:var(--t)}\r\n.seo-table tbody td.c{text-align:center}\r\n.seo-table tbody td.ok{color:#16a34a;font-weight:700;text-align:center}\r\n\/* FAQ *\/\r\n.faq-item{border-bottom:1px solid var(--gl)}\r\n.faq-q{width:100%;text-align:left;padding:16px 0;background:none;border:none;font-size:.9rem;font-weight:700;color:var(--t);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;font-family:var(--f);transition:color var(--tr);line-height:1.4}\r\n.faq-q:hover{color:var(--p)}\r\n.faq-icon{width:22px;height:22px;min-width:22px;background:var(--pl);border:1.5px solid var(--pb);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--p);transition:transform .2s,background .2s}\r\n.faq-item.open .faq-icon{transform:rotate(45deg);background:var(--p);color:#fff;border-color:var(--p)}\r\n.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s ease;font-size:.86rem;color:var(--g2);line-height:1.8}\r\n.faq-item.open .faq-a{max-height:500px;padding-bottom:18px}\r\n.faq-a a{color:var(--p);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(74,34,40,.2)}\r\n.faq-a a:hover{border-bottom-color:var(--p)}\r\n\/* CTA calculadora aislamiento *\/\r\n.seo-cta-link{display:flex;align-items:center;gap:12px;background:var(--pl);border:1.5px solid var(--pb);border-radius:8px;padding:14px 16px;text-decoration:none;margin-top:14px;transition:background .15s,border-color .15s}\r\n.seo-cta-link:hover{background:#f0dde0;border-color:var(--p)}\r\n.seo-cta-link .scl-ico{font-size:1.4rem;flex-shrink:0;line-height:1}\r\n.seo-cta-link .scl-title{display:block;font-size:.85rem;font-weight:700;color:var(--pd);margin-bottom:2px}\r\n.seo-cta-link .scl-sub{display:block;font-size:.74rem;color:var(--ts)}\r\n\/* SEO responsive ya incluido en bloque @media unificado de arriba *\/\r\n\r\n\/* \u2550\u2550 MODAL PDF \u2014 overlay completo \u2550\u2550 *\/\r\n.modal-inner{background:#fff;border-radius:14px;width:100%;max-width:580px;position:relative;max-height:calc(100dvh - 2rem);max-height:calc(100vh - 2rem);overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:0 32px 100px rgba(0,0,0,.4);margin:auto}\r\n.modal-hdr{background:var(--pd);border-radius:14px 14px 0 0;padding:20px 24px 16px;position:sticky;top:0;z-index:10}\r\n.modal-hdr::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--p),var(--pm));border-radius:14px 14px 0 0}\r\n.modal-hdr h3{font-size:1.05rem;font-weight:800;color:#fff;margin:0 0 4px;padding-right:40px;line-height:1.25}\r\n.modal-hdr p{font-size:.75rem;color:rgba(255,255,255,.5);margin:0;line-height:1.5}\r\n.modal-close-btn{position:absolute;top:14px;right:16px;font-size:14px;cursor:pointer;color:rgba(255,255,255,.7);background:rgba(255,255,255,.12);border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--tr);line-height:1}\r\n.modal-close-btn:hover{background:rgba(255,255,255,.22);color:#fff}\r\n.modal-body{padding:20px 22px 18px}\r\n.modal-err-alert{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;border-radius:6px;padding:9px 12px;font-size:.78rem;margin-bottom:12px;display:none}\r\n.modal-err-alert.show{display:block}\r\n.mfield{display:flex;flex-direction:column;gap:4px;margin-bottom:13px}\r\n.mfield label{font-size:.63rem;font-weight:700;color:var(--g2);text-transform:uppercase;letter-spacing:.07em;display:flex;align-items:center;gap:6px}\r\n.mfield label .req{color:var(--p);font-size:.85rem;line-height:1;font-weight:900}\r\n.mfield label .opt{font-size:.6rem;color:var(--ts);font-weight:400;text-transform:none;letter-spacing:0;background:var(--g3);padding:1px 6px;border-radius:3px;border:1px solid var(--gl)}\r\n.mfield input,.mfield select{height:44px;padding:0 13px;font-size:16px;font-family:var(--f);font-weight:500;border:1.5px solid var(--gl);border-radius:6px;background:var(--g3);color:var(--t);transition:border-color var(--tr),box-shadow var(--tr);width:100%;-webkit-appearance:none;appearance:none;box-sizing:border-box}\r\n.mfield select{background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'\/%3E%3C\/svg%3E\");background-repeat:no-repeat;background-position:right 13px center;padding-right:38px}\r\n.mfield input:focus,.mfield select:focus{outline:none;border-color:var(--p);box-shadow:0 0 0 3px rgba(74,34,40,.1);background:#fff}\r\n.mfield input.m-err,.mfield select.m-err{border-color:var(--err)!important;box-shadow:0 0 0 3px rgba(220,38,38,.1)!important}\r\n.mfield .err-txt{font-size:.68rem;color:var(--err);margin-top:2px;display:none}\r\n.mfield .err-txt.show{display:block}\r\n.mrow2{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}\r\n.mprov{display:none;flex-direction:column;gap:4px;margin-bottom:13px}\r\n.mprov.show{display:flex}\r\n.gdpr-wrap{display:flex;align-items:flex-start;gap:10px;margin:10px 0 4px}\r\n.gdpr-wrap input[type=checkbox]{-webkit-appearance:checkbox!important;appearance:checkbox!important;width:18px;height:18px;min-width:18px;flex-shrink:0;margin-top:2px;cursor:pointer;accent-color:var(--p);border:none;padding:0;background:none;box-shadow:none}\r\n.gdpr-wrap label{font-size:.8rem;text-transform:none;letter-spacing:0;color:var(--g2);font-weight:400;cursor:pointer;line-height:1.5;flex:1;display:block}\r\n.gdpr-wrap label a{color:var(--p);text-decoration:underline}\r\n.gdpr-err{font-size:.7rem;color:var(--err);display:none;margin-bottom:8px}\r\n.gdpr-err.show{display:block}\r\n.modal-form-note{font-size:.72rem;color:#92400e;line-height:1.55;padding:9px 11px;background:#fef9e7;border-radius:5px;border:1px solid #fde68a;margin-bottom:13px}\r\n.modal-submit-btn{width:100%;height:48px;background:var(--pd);color:#fff;font-family:var(--f);font-size:.82rem;font-weight:700;border:none;border-radius:6px;cursor:pointer;letter-spacing:.06em;text-transform:uppercase;transition:background var(--tr),transform .12s;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 16px rgba(46,19,24,.22)}\r\n.modal-submit-btn:hover{background:var(--p)}\r\n.modal-submit-btn:active{transform:scale(.98)}\r\n.modal-submit-btn:disabled{background:#ccc;color:#999;cursor:not-allowed;box-shadow:none}\r\n.modal-submit-btn .spinner{width:15px;height:15px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:none;flex-shrink:0}\r\n.modal-submit-btn.loading .spinner{display:block}\r\n.modal-submit-btn.loading .btn-txt{opacity:.6}\r\n@keyframes spin{to{transform:rotate(360deg)}}\r\n.modal-legal{font-size:.65rem;color:var(--ts);margin-top:9px;line-height:1.55;text-align:center}\r\n.modal-legal a{color:var(--p);text-decoration:none}\r\n.modal-ok-wrap{padding:32px 24px;text-align:center}\r\n.modal-ok-wrap .ok-ico{font-size:2.8rem;display:block;margin-bottom:12px}\r\n.modal-ok-wrap h4{font-size:1.1rem;font-weight:800;color:var(--ok);margin-bottom:6px}\r\n.modal-ok-wrap p{font-size:.84rem;color:var(--ts);line-height:1.6}\r\n.modal-ok-detail{background:var(--g3);border:1px solid var(--gl);border-radius:7px;padding:11px 13px;margin:12px 0;font-size:.78rem;color:var(--g2);text-align:left}\r\n.modal-ok-close{display:inline-flex;align-items:center;gap:6px;background:var(--pd);color:#fff;font-family:var(--f);font-size:.8rem;font-weight:700;padding:10px 22px;border-radius:6px;border:none;cursor:pointer;margin-top:12px;letter-spacing:.04em;text-transform:uppercase;transition:background var(--tr)}\r\n.modal-ok-close:hover{background:var(--p)}\r\n@media(max-width:600px){\r\n  .modal-bg{align-items:flex-end;padding:0}\r\n  .modal-inner{border-radius:18px 18px 0 0;max-width:100%;max-height:94dvh;max-height:94vh}\r\n  .modal-hdr{border-radius:18px 18px 0 0;padding:16px 18px 14px}\r\n  .modal-hdr::before{border-radius:18px 18px 0 0}\r\n  .modal-body{padding:16px 16px 18px}\r\n  .mrow2{grid-template-columns:1fr;gap:0}\r\n  .mfield input,.mfield select{height:50px;font-size:16px}\r\n  .modal-submit-btn{height:52px;font-size:.85rem}\r\n  .modal-ok-wrap{padding:24px 16px}\r\n}\r\n<\/style>\r\n<\/head>\r\n<body>\r\n\r\n<!-- HEADER -->\r\n<div class=\"hdr\">\r\n  <div class=\"hdr-l\">\r\n    <div class=\"hdr-icon\">\r\n      <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"white\" stroke-width=\"2\"><rect x=\"4\" y=\"2\" width=\"16\" height=\"20\" rx=\"2\"\/><line x1=\"8\" y1=\"6\" x2=\"16\" y2=\"6\"\/><line x1=\"8\" y1=\"10\" x2=\"11\" y2=\"10\"\/><line x1=\"14\" y1=\"10\" x2=\"16\" y2=\"10\"\/><line x1=\"8\" y1=\"14\" x2=\"11\" y2=\"14\"\/><line x1=\"14\" y1=\"14\" x2=\"16\" y2=\"14\"\/><\/svg>\r\n    <\/div>\r\n    <div>\r\n      <span class=\"hdr-t1\">Calculadora de Sobrecargas Admisibles<\/span>\r\n      <span class=\"hdr-t2\"><\/span>\r\n    <\/div>\r\n  <\/div>\r\n  <div class=\"hdr-r\">\r\n    <button class=\"btn-dark\" onclick=\"toggleDark()\" title=\"Modo oscuro\">\r\n      <svg id=\"iDk\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z\"\/><\/svg>\r\n      <svg id=\"iLt\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" style=\"display:none\"><circle cx=\"12\" cy=\"12\" r=\"5\"\/><line x1=\"12\" y1=\"1\" x2=\"12\" y2=\"3\"\/><line x1=\"12\" y1=\"21\" x2=\"12\" y2=\"23\"\/><line x1=\"4.22\" y1=\"4.22\" x2=\"5.64\" y2=\"5.64\"\/><line x1=\"18.36\" y1=\"18.36\" x2=\"19.78\" y2=\"19.78\"\/><line x1=\"1\" y1=\"12\" x2=\"3\" y2=\"12\"\/><line x1=\"21\" y1=\"12\" x2=\"23\" y2=\"12\"\/><\/svg>\r\n    <\/button>\r\n  <\/div>\r\n<\/div>\r\n\r\n<div class=\"hero\">\r\n  <div class=\"hero-box\">\r\n    <div class=\"hero-inner\">\r\n      <div class=\"hero-kicker\">Outil technique gratuit<\/div>\r\n      <h1>Calculateur de <em style=\"color:var(--p);font-style:normal\">charge admissible<\/em> pour profil\u00e9s et panneaux sandwich<\/h1>\r\n      <p>Calculez la charge admissible des lisses C\/Z, bacs trap\u00e9zo\u00efdaux et panneaux sandwich, ou saisissez la charge pr\u00e9vue et obtenez le profil\u00e9 recommand\u00e9. Dimensionnez votre toiture ou fa\u00e7ade avant de pr\u00e9parer l'offre.<\/p>\r\n      <a class=\"hero-cta\" href=\"#calc-start\" onclick=\"scrollToCalc(event)\">Utiliser le calculateur<\/a>\r\n    <\/div>\r\n  <\/div>\r\n  <div class=\"maker-bar\">\r\n    <div class=\"maker-bar-inner\">\r\n      <div class=\"maker-brand\">\r\n        <div class=\"maker-copy\">Fabriqu\u00e9 par\u00a0:<\/div>\r\n        <span class=\"maker-sep\" aria-hidden=\"true\"><\/span>\r\n        <img class=\"maker-logo\" src=\"https:\/\/magon.es\/wp-content\/uploads\/2023\/01\/magon-empresas-calado-blanco-main.webp\" alt=\"Magon Entreprises\" loading=\"lazy\" decoding=\"async\" style=\"height:16px!important;max-height:16px!important;width:auto!important\">\r\n      <\/div>\r\n      <div class=\"maker-actions\"><\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- INTRO -->\r\n<div style=\"width:100%;background:#f0eef0;border-bottom:1px solid var(--gl)\">\r\n  <div class=\"intro-block\" style=\"max-width:1100px;margin:0 auto;padding:40px 1.5rem 36px;text-align:center\">\r\n    <div class=\"seo-tag\" style=\"margin-bottom:12px\">Outil technique gratuit<\/div>\r\n    <h2 style=\"font-size:clamp(1.15rem,2.4vw,1.6rem);font-weight:800;color:var(--pd);letter-spacing:-.02em;margin:0 0 12px;line-height:1.2\">Calculez la <em style=\"color:var(--p);font-style:normal\">charge admissible<\/em> ou v\u00e9rifiez ce que votre profil\u00e9 peut supporter<\/h2>\r\n    <p style=\"font-size:.92rem;color:var(--g2);line-height:1.75;max-width:620px;margin:0 auto\">Vous connaissez la charge et voulez savoir quel profil\u00e9 utiliser\u202f? Ou vous avez le profil\u00e9 et voulez conna\u00eetre sa capacit\u00e9\u202f? Cet outil r\u00e9pond aux deux questions instantan\u00e9ment, avec les donn\u00e9es techniques de <a href=\"https:\/\/www.magon.es\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color:var(--p);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(74,34,40,.2)\">Magon Aceros<\/a> et <a href=\"https:\/\/magon.es\/masterpanel-fabricantes-panel-sandwich\/\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color:var(--p);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(74,34,40,.2)\">Master Panel<\/a>. Vous pouvez \u00e9galement trouver le profil\u00e9 n\u00e9cessaire si vous connaissez la charge admissible pr\u00e9vue.<\/p>\r\n  <\/div>\r\n<\/div>\r\n\r\n<div style=\"width:100%;background:#f0eef0\"><div class=\"page\" id=\"calc-start\" style=\"max-width:980px;margin:0 auto;padding:20px 1.5rem 60px\">\r\n\r\n  <!-- \u2460 CATEGOR\u00cdA -->\r\n  <div class=\"card\">\r\n    <div class=\"card-h\">\r\n      <div class=\"card-ico\">\r\n        <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><path d=\"M2 20h20M4 20V10l8-8 8 8v10\"\/><\/svg>\r\n      <\/div>\r\n      <span class=\"card-step\">1<\/span><div class=\"card-title\">Type de produit<\/div>\r\n    <\/div>\r\n    <div class=\"card-body\">\r\n      <div class=\"tabs\">\r\n        <button class=\"tab active\" onclick=\"switchCat('perf')\" id=\"t-perf\">Correas C \/ Z \u00b7 Bac nervur\u00e9<\/button>\r\n        <button class=\"tab\" onclick=\"switchCat('sw')\" id=\"t-sw\">Panneau sandwich<\/button>\r\n      <\/div>\r\n      <p style=\"font-size:.73rem;color:var(--ts);line-height:1.45\" id=\"catDesc\">Selecciona la familia de perfil que quieres calcular.<\/p>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n       PERFILES \u2014 bloque completo\r\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n  <div id=\"s-perf\">\r\n\r\n    <!-- \u2461 FAMILIA -->\r\n    <div class=\"card\">\r\n      <div class=\"card-h\">\r\n        <div class=\"card-ico\">\r\n          <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"\/><rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"\/><rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"\/><rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"\/><\/svg>\r\n        <\/div>\r\n        <span class=\"card-step\">2<\/span><div class=\"card-title\">Famille et profil\u00e9<\/div>\r\n      <\/div>\r\n      <div class=\"card-body\">\r\n        <div class=\"tabs\">\r\n          <button class=\"tab active\" onclick=\"switchFam('minionda')\" id=\"t-mo\">Bac nervur\u00e9 MG<\/button>\r\n          <button class=\"tab\" onclick=\"switchFam('correaC')\" id=\"t-cc\">Lisse C<\/button>\r\n          <button class=\"tab\" onclick=\"switchFam('correaZ')\" id=\"t-cz\">Lisse Z<\/button>\r\n        <\/div>\r\n\r\n        <!-- MINIONDA -->\r\n        <div id=\"f-mo\">\r\n          <div id=\"alPerfil\" class=\"alert ae\">Selecciona un perfil.<\/div>\r\n          <div class=\"prod-grid\" id=\"prodList\"><\/div>\r\n        <\/div>\r\n\r\n        <!-- CORREA C -->\r\n        <div id=\"f-cc\" style=\"display:none\">\r\n          <p style=\"font-size:.72rem;color:var(--ts);margin-bottom:10px;line-height:1.45\">\r\n            Elige en cualquier orden. Las opciones sin datos para tu combinaci\u00f3n aparecen en gris.\r\n          <\/p>\r\n          <div class=\"cp\">\r\n            <div class=\"cp-row\"><span class=\"cp-lbl\">Altura<\/span><div class=\"pills\" id=\"phAC\"><\/div><\/div>\r\n            <div class=\"cp-row\"><span class=\"cp-lbl\">Espesor<\/span><div class=\"pills\" id=\"phEC\"><\/div><\/div>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- CORREA Z -->\r\n        <div id=\"f-cz\" style=\"display:none\">\r\n          <p style=\"font-size:.72rem;color:var(--ts);margin-bottom:10px;line-height:1.45\">\r\n            Elige en cualquier orden. Las opciones sin datos para tu combinaci\u00f3n aparecen en gris.\r\n          <\/p>\r\n          <div class=\"cp\">\r\n            <div class=\"cp-row\"><span class=\"cp-lbl\">Altura<\/span><div class=\"pills\" id=\"phAZ\"><\/div><\/div>\r\n            <div class=\"cp-row\"><span class=\"cp-lbl\">Espesor<\/span><div class=\"pills\" id=\"phEZ\"><\/div><\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- \u2462 PAR\u00c1METROS PERFILES -->\r\n    <div class=\"card\">\r\n      <div class=\"card-h\">\r\n        <div class=\"card-ico\">\r\n          <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><line x1=\"4\" y1=\"6\" x2=\"20\" y2=\"6\"\/><line x1=\"8\" y1=\"12\" x2=\"20\" y2=\"12\"\/><line x1=\"12\" y1=\"18\" x2=\"20\" y2=\"18\"\/><\/svg>\r\n        <\/div>\r\n        <span class=\"card-step\">3<\/span><div class=\"card-title\">Param\u00e8tres<\/div>\r\n      <\/div>\r\n      <div class=\"card-body\">\r\n        <div id=\"alParams\" class=\"alert ae\">Revisa los campos.<\/div>\r\n\r\n        <!-- Barra de progreso -->\r\n        <div class=\"prog-wrap\"><div class=\"prog-fill\" id=\"progFill\"><\/div><\/div>\r\n\r\n        <!-- VANOS \u2014 siempre visible -->\r\n        <div class=\"fg\">\r\n          <label>Nombre de trav\u00e9es <span class=\"tip\" data-tip=\"1 vano = apoyo simple. 2 = 1 apoyo intermedio. 3+ = multiples apoyos.\">?<\/span><\/label>\r\n          <div class=\"vps\">\r\n            <div class=\"vp active\" onclick=\"setV('1')\" id=\"vp1\">\r\n              <div class=\"vsch\"><div class=\"vsup\"><\/div><div class=\"vseg\"><\/div><div class=\"vsup\"><\/div><\/div>\r\n              <span class=\"vp-lbl\">1 trav\u00e9e<\/span>\r\n            <\/div>\r\n            <div class=\"vp\" onclick=\"setV('2')\" id=\"vp2\">\r\n              <div class=\"vsch\"><div class=\"vsup\"><\/div><div class=\"vseg\"><\/div><div class=\"vsup\"><\/div><div class=\"vseg\"><\/div><div class=\"vsup\"><\/div><\/div>\r\n              <span class=\"vp-lbl\">2 trav\u00e9es<\/span>\r\n            <\/div>\r\n            <div class=\"vp\" onclick=\"setV('3')\" id=\"vp3\">\r\n              <div class=\"vsch\"><div class=\"vsup\"><\/div><div class=\"vseg\"><\/div><div class=\"vsup\"><\/div><div class=\"vseg\"><\/div><div class=\"vsup\"><\/div><div class=\"vseg\"><\/div><div class=\"vsup\"><\/div><\/div>\r\n              <span class=\"vp-lbl\">3+ trav\u00e9es<\/span>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- MINIONDA params -->\r\n        <div id=\"pm-mo\">\r\n          <div class=\"fg\" style=\"margin-bottom:12px\">\r\n            <label>Espesor de chapa <span class=\"tip\" data-tip=\"Selecciona el espesor disponible para la chapa elegida.\">?<\/span><\/label>\r\n            <div class=\"pills\" id=\"phMO\"><\/div>\r\n          <\/div>\r\n          <div class=\"fr\">\r\n            <div class=\"fg\">\r\n              <label>Port\u00e9e libre (L) <span class=\"tip\" data-tip=\"Distance entre appuis en m\u00e8tres.\">?<\/span><\/label>\r\n              <div class=\"iw\"><input type=\"number\" id=\"luz\" step=\"0.25\" min=\"0.5\" max=\"2\" placeholder=\"Ej: 1.50\" oninput=\"evaluarBac nervur\u00e9();actualizarProg()\"><span class=\"iu\">m<\/span><\/div>\r\n            <\/div>\r\n            <div class=\"fg\" id=\"posGrp\" style=\"display:none\">\r\n              <label>Position<\/label>\r\n              <select id=\"posicion\" onchange=\"evaluarBac nervur\u00e9()\"><option value=\"A\">Pos. A \u2013 nervures vers le haut<\/option><option value=\"B\">Pos. B \u2013 nervures vers le bas<\/option><\/select>\r\n            <\/div>\r\n          <\/div>\r\n          <div id=\"hintMO\" class=\"hint\" style=\"display:none\">\r\n            <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><line x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"\/><line x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"\/><\/svg>\r\n            <span id=\"hintMOt\"><\/span>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <!-- CORREAS params \u2014 SIEMPRE VISIBLES, filtrado reactivo -->\r\n        <div id=\"pm-co\" style=\"display:none\">\r\n          <div class=\"fg\">\r\n            <label>\u00c9cart entre portiques <span class=\"tip\" data-tip=\"Distance en m\u00e8tres entre portiques.\">?<\/span><\/label>\r\n            <div class=\"sg\" id=\"sgP\">\r\n              <div class=\"sb\" onclick=\"setSep(4)\" id=\"sp4\">4 m<\/div>\r\n              <div class=\"sb\" onclick=\"setSep(5)\" id=\"sp5\">5 m<\/div>\r\n              <div class=\"sb\" onclick=\"setSep(6)\" id=\"sp6\">6 m<\/div>\r\n              <div class=\"sb\" onclick=\"setSep(7)\" id=\"sp7\">7 m<\/div>\r\n              <div class=\"sb\" onclick=\"setSep(8)\" id=\"sp8\">8 m<\/div>\r\n              <div class=\"sb\" onclick=\"setSep(9)\" id=\"sp9\">9 m<\/div>\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"fg\">\r\n            <label>\u00c9cart entre lisses <span class=\"tip\" data-tip=\"Distance entre lisses sur le portique.\">?<\/span><\/label>\r\n            <div class=\"sg4\" id=\"sgC\">\r\n              <div class=\"sb\" onclick=\"setSC(1.25)\" id=\"sc125\">1.25 m<\/div>\r\n              <div class=\"sb\" onclick=\"setSC(1.50)\" id=\"sc150\">1.50 m<\/div>\r\n              <div class=\"sb\" onclick=\"setSC(1.75)\" id=\"sc175\">1.75 m<\/div>\r\n              <div class=\"sb\" onclick=\"setSC(2.00)\" id=\"sc200\">2.00 m<\/div>\r\n            <\/div>\r\n          <\/div>\r\n          <div id=\"hintC\" class=\"hint\" style=\"display:none\">\r\n            <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><line x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"\/><line x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"\/><\/svg>\r\n            <span id=\"hintCt\"><\/span>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <hr class=\"sep\">\r\n\r\n        <div class=\"fg\" style=\"margin-bottom:12px\">\r\n          <label>Charge de r\u00e9f\u00e9rence (optionnel) <span class=\"tip\" data-tip=\"Carga total estimada: nieve + viento + uso en kg\/m&sup2;. Permite saber si el perfil es suficiente.\">?<\/span><\/label>\r\n          <div class=\"iw\"><input type=\"number\" id=\"sobrecarga\" step=\"5\" min=\"0\" max=\"2000\" placeholder=\"Ej: 80\" oninput=\"onSb()\"><span class=\"iu\">kg\/m\u00b2<\/span><\/div>\r\n        <\/div>\r\n\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n       PANEL S\u00c1NDWICH\r\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n  <div id=\"s-sw\" style=\"display:none\">\r\n    <div class=\"card\">\r\n      <div class=\"card-h\">\r\n        <div class=\"card-ico\"><svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><rect x=\"3\" y=\"3\" width=\"7\" height=\"7\"\/><rect x=\"14\" y=\"3\" width=\"7\" height=\"7\"\/><rect x=\"14\" y=\"14\" width=\"7\" height=\"7\"\/><rect x=\"3\" y=\"14\" width=\"7\" height=\"7\"\/><\/svg><\/div>\r\n        <span class=\"card-step\">2<\/span><div class=\"card-title\">Type de panneau<\/div>\r\n      <\/div>\r\n      <div class=\"card-body\">\r\n        <div class=\"tabs\">\r\n          <button class=\"tab active\" onclick=\"switchPT('masterC')\" id=\"t-mc\">Master-C Toiture<\/button>\r\n          <button class=\"tab\" onclick=\"switchPT('masterF')\" id=\"t-mf\">Master-F Fa\u00e7ade<\/button>\r\n          <button class=\"tab\" onclick=\"switchPT('masterModul')\" id=\"t-mm\">Master-Modul<\/button>\r\n          <button class=\"tab\" onclick=\"switchPT('masterFrigo')\" id=\"t-mfr\">Master-Frigo<\/button>\r\n        <\/div>\r\n        <div id=\"f-mc\"><p style=\"font-size:.73rem;color:var(--ts);margin-bottom:9px\">Panneau sandwich cubierta &middot; Nucleo PUR\/PIR &middot; Ancho util 1.000 mm<\/p><div class=\"fg\"><label>\u00c9paisseur du panneau<\/label><div class=\"pills\" id=\"pesMC\"><\/div><\/div><\/div>\r\n        <div id=\"f-mf\" style=\"display:none\"><p style=\"font-size:.73rem;color:var(--ts);margin-bottom:9px\">Panneau sandwich fachada &middot; Nucleo PUR\/PIR &middot; Ancho util 1.000 mm<\/p><div class=\"fg\"><label>\u00c9paisseur du panneau<\/label><div class=\"pills\" id=\"pesMF\"><\/div><\/div><\/div>\r\n        <div id=\"f-mm\" style=\"display:none\"><p style=\"font-size:.73rem;color:var(--ts);margin-bottom:9px\">Panneau sandwich modular &middot; Nucleo PUR\/PIR &middot; Ancho util 1.000 mm<\/p><div class=\"fg\"><label>\u00c9paisseur du panneau<\/label><div class=\"pills\" id=\"pesMM\"><\/div><\/div><\/div>\r\n        <div id=\"f-mfr\" style=\"display:none\"><p style=\"font-size:.73rem;color:var(--ts);margin-bottom:9px\">Panneau sandwich frigorifico &middot; Nucleo PUR\/PIR &middot; Ancho util 1.000 mm<\/p><div class=\"fg\"><label>\u00c9paisseur du panneau<\/label><div class=\"pills\" id=\"pesMFR\"><\/div><\/div><\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"card\">\r\n      <div class=\"card-h\">\r\n        <div class=\"card-ico\"><svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><line x1=\"4\" y1=\"6\" x2=\"20\" y2=\"6\"\/><line x1=\"8\" y1=\"12\" x2=\"20\" y2=\"12\"\/><line x1=\"12\" y1=\"18\" x2=\"20\" y2=\"18\"\/><\/svg><\/div>\r\n        <span class=\"card-step\">3<\/span><div class=\"card-title\">Port\u00e9e entre appuis<\/div>\r\n      <\/div>\r\n      <div class=\"card-body\">\r\n        <div id=\"alSW\" class=\"alert ae\">Selecciona espesor y distancia.<\/div>\r\n        <div id=\"grpSW\">\r\n          <div class=\"fg\"><label>Port\u00e9e entre appuis (L) <span class=\"tip\" data-tip=\"Distance en cm entre appuis.\">?<\/span><\/label><div id=\"swGrid\" style=\"display:grid;gap:3px\"><\/div><\/div>\r\n          <div id=\"hSW\" class=\"hint\" style=\"display:none\"><svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><line x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"\/><line x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"\/><\/svg><span id=\"hSWt\"><\/span><\/div>\r\n        <\/div>\r\n        <hr class=\"sep\">\r\n        <div class=\"fg\" style=\"margin-bottom:12px\"><label>Charge de r\u00e9f\u00e9rence (optionnel)<\/label><div class=\"iw\"><input type=\"number\" id=\"sbSW\" step=\"5\" min=\"0\" max=\"2000\" placeholder=\"Ej: 80\" oninput=\"evaluarSW()\"><span class=\"iu\">kg\/m\u00b2<\/span><\/div><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- DISCLAIMER -->\r\n  <div class=\"disc\"><strong>Avis indicatif<\/strong>R\u00e9sultats indicatifs bas\u00e9s sur les donn\u00e9es techniques de Magon Aceros et Master Panel. Ils ne constituent pas un projet technique. Le concepteur est responsable des calculs selon CTE \/ EAE \/ EC3 \/ EN14509.<\/div>\r\n\r\n  <!-- RESULTADO -->\r\n  <div class=\"rb\" id=\"resultBanner\">\r\n    <div class=\"rb-ey\">Charge admissible \u2014 profil\u00e9 s\u00e9lectionn\u00e9<\/div>\r\n    <div class=\"rb-nom\" id=\"rNom\">-<\/div>\r\n    <div class=\"rb-sub\" id=\"rSub\">-<\/div>\r\n    <div class=\"rb-met\">\r\n      <div class=\"met\"><div class=\"met-v\" id=\"rCap\">\u2014<\/div><div class=\"met-l\">Cap. admisible (kg\/m&sup2;)<\/div><\/div>\r\n      <div class=\"met\"><div class=\"met-v\" id=\"rRef\">\u2014<\/div><div class=\"met-l\">Carga referencia (kg\/m&sup2;)<\/div><\/div>\r\n      <div class=\"met\"><div class=\"met-v\" id=\"rMar\">\u2014<\/div><div class=\"met-l\">Margen de seguridad<\/div><\/div>\r\n    <\/div>\r\n    <div id=\"rBadge\" class=\"rbadge bneut\">-<\/div>\r\n  <\/div>\r\n\r\n  <!-- TABLA -->\r\n  <div class=\"card\" id=\"tablaCard\" style=\"display:none\">\r\n    <div class=\"card-h\">\r\n      <div class=\"card-ico\"><svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><line x1=\"3\" y1=\"9\" x2=\"21\" y2=\"9\"\/><line x1=\"3\" y1=\"15\" x2=\"21\" y2=\"15\"\/><line x1=\"9\" y1=\"3\" x2=\"9\" y2=\"21\"\/><\/svg><\/div>\r\n      <div class=\"card-title\" id=\"tblTit\">Tableau des charges (kg\/m\u00b2)<\/div>\r\n    <\/div>\r\n    <div class=\"card-body\" style=\"padding:0\">\r\n      <div class=\"tw\"><table><thead><tr id=\"tblH\"><\/tr><\/thead><tbody id=\"tblB\"><\/tbody><\/table><\/div>\r\n      <div style=\"padding:7px 14px 11px\"><p style=\"font-size:.68rem;color:var(--ts)\"><span id=\"tblNota\"><\/span><\/p><\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"nota\" id=\"notaTec\"><\/div>\r\n\r\n  <div id=\"accCard\" style=\"display:none\">\r\n    <div style=\"display:flex;gap:8px\">\r\n      <button class=\"btn btn-f acc-btn\" onclick=\"abrirModal()\">\r\n        <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"\/><polyline points=\"14,2 14,8 20,8\"\/><\/svg>\r\n        Descargar informe PDF\r\n      <\/button>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- CTA -->\r\n  <div class=\"cta\">\r\n    <div class=\"cta-ico\"><svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"\/><\/svg><\/div>\r\n    <div class=\"cta-c\"><div class=\"cta-t\">Besoin d'un devis r\u00e9el\u202f?<\/div><div class=\"cta-d\">Notre \u00e9quipe technique vous pr\u00e9pare un devis personnalis\u00e9 aux meilleures conditions.<\/div><\/div>\r\n    <a href=\"\/contacto\" class=\"btn btn-p btn-s cta-btn\">Demander un devis <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\"><polyline points=\"9,18 15,12 9,6\"\/><\/svg><\/a>\r\n  <\/div>\r\n\r\n<\/div><\/div><!-- \/page -->\r\n\r\n<!-- \u2550\u2550\u2550 SEO: QU\u00c9 ES LA CARGA ADMISIBLE \u2550\u2550\u2550 -->\r\n<section class=\"seo-section alt\" id=\"que-es-sobrecarga-admisible-perfiles-metalicos\">\r\n  <div class=\"seo-inner\">\r\n    <div class=\"seo-tag\">Concepts techniques<\/div>\r\n    <h2 class=\"seo-h2\">Qu'est-ce que la <em>charge admissible<\/em> et comment se calcule-t-elle selon L\/200\u202f?<\/h2>\r\n    <p class=\"seo-lead\">La <strong>charge admissible<\/strong> est la charge externe maximale \u2014vent, neige, usage\u2014 qu'un profil\u00e9 ou panneau peut recevoir sans d\u00e9passer la d\u00e9formation maximale autoris\u00e9e. Dans les structures en acier, cette limite est <strong>L\/200<\/strong>\u00a0: la fl\u00e8che ne peut d\u00e9passer la longueur de la port\u00e9e divis\u00e9e par 200.<\/p>\r\n    <p class=\"seo-body\">Le crit\u00e8re L\/200 provient de l'<strong>\u00c9tat Limite de Service (ELS)<\/strong> du <a href=\"https:\/\/www.codigotecnico.org\" target=\"_blank\" rel=\"noopener noreferrer\">Code Technique de la Construction (CTE)<\/a> et de l'<a href=\"https:\/\/eurocodes.jrc.ec.europa.eu\" target=\"_blank\" rel=\"noopener noreferrer\">Eurocode 3 (EC3), partie 1-3<\/a>. Les valeurs sont <strong>non major\u00e9es<\/strong>\u00a0: elles n'incluent pas de coefficients de s\u00e9curit\u00e9 suppl\u00e9mentaires ni le poids propre du profil\u00e9.<\/p>\r\n    <p class=\"seo-body\">En pratique, pour une lisse avec un \u00e9cartement de portiques de 6\u00a0m, la fl\u00e8che maximale admissible serait 6\u00a0000\u00a0\/\u00a0200\u00a0= <strong>30\u00a0mm<\/strong>. Plus la port\u00e9e est grande, plus la hauteur ou l'\u00e9paisseur du profil\u00e9 doit \u00eatre importante pour rester dans cette limite.<\/p>\r\n    <div class=\"seo-formula\">\r\n      <code>f<sub>m&aacute;x<\/sub> = L \/ 200<\/code>\r\n      <ul>\r\n        <li><strong>f<sub>m&aacute;x<\/sub><\/strong> &mdash; flecha m&aacute;xima admisible (mm)<\/li>\r\n        <li><strong>L<\/strong> &mdash; distancia entre apoyos (mm)<\/li>\r\n        <li>Criterio: <strong>Estado L&iacute;mite de Servicio<\/strong><\/li>\r\n        <li>Norma: <strong>EC3 parte 1-3 \/ CTE \/ EAE<\/strong><\/li>\r\n        <li>Los valores son sobrecargas <strong>no mayoradas<\/strong><\/li>\r\n        <li>El peso propio del perfil <strong>no est&aacute; incluido<\/strong><\/li>\r\n      <\/ul>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- \u2550\u2550\u2550 SEO: CORREAS C Y Z \u2550\u2550\u2550 -->\r\n<section class=\"seo-section\" id=\"correas-metalicas-c-z-cubiertas-fachadas\">\r\n  <div class=\"seo-inner\">\r\n    <div class=\"seo-tag\">Lisses C et Z<\/div>\r\n    <h2 class=\"seo-h2\"><a href=\"https:\/\/magon.es\/productos\/correas-mg-c-y-mg-z\/\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color:inherit;text-decoration:none\">Lisses MG C et Z<\/a>\u00a0: <em>comment choisir le bon profil\u00e9<\/em><\/h2>\r\n    <p class=\"seo-lead\">Les <a href=\"https:\/\/magon.es\/productos\/correas-mg-c-y-mg-z\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>lisses m\u00e9talliques C et Z de Magon Aceros<\/strong><\/a> sont des profil\u00e9s conform\u00e9s \u00e0 froid en acier S250GD pour supporter les toitures et bardages de b\u00e2timents industriels. Le choix du profil\u00e9 d\u00e9pend de trois param\u00e8tres\u00a0: <strong>\u00e9cartement des portiques, \u00e9cartement des lisses et nombre de trav\u00e9es<\/strong>.<\/p>\r\n    <p class=\"seo-body\">La <strong>lisse de type C<\/strong> travaille comme une poutre simplement appuy\u00e9e, id\u00e9ale pour les rives de toiture. La <strong>lisse de type Z<\/strong> permet le chevauchement entre pi\u00e8ces adjacentes, cr\u00e9ant une continuit\u00e9 structurelle qui augmente la capacit\u00e9 portante jusqu'\u00e0 <strong>35\u00a0% par rapport au profil\u00e9 C<\/strong> \u00e9quivalent.<\/p>\r\n    <p class=\"seo-body\">Les hauteurs disponibles vont de <strong>125 \u00e0 300\u00a0mm<\/strong> avec des \u00e9paisseurs de 2, 2,5 et 3\u00a0mm. Le calculateur filtre en temps r\u00e9el les combinaisons disposant de donn\u00e9es selon les param\u00e8tres saisis.<\/p>\r\n    <div class=\"seo-table-wrap\">\r\n      <table class=\"seo-table\">\r\n        <thead><tr>\r\n          <th>Par&aacute;metro<\/th>\r\n          <th class=\"c\">Lisse C<\/th>\r\n          <th class=\"c\">Lisse Z<\/th>\r\n        <\/tr><\/thead>\r\n        <tbody>\r\n          <tr><td class=\"l\">Tipo estructural<\/td><td class=\"c\">Apoyo simple<\/td><td class=\"c\">Viga continua<\/td><\/tr>\r\n          <tr><td class=\"l\">Alturas (mm)<\/td><td class=\"c\">125&ndash;300<\/td><td class=\"c\">125&ndash;300<\/td><\/tr>\r\n          <tr><td class=\"l\">Espesores (mm)<\/td><td class=\"c\">2 \/ 2,5 \/ 3<\/td><td class=\"c\">2 \/ 2,5 \/ 3<\/td><\/tr>\r\n          <tr><td class=\"l\">Capacidad vs C<\/td><td class=\"c\">Base<\/td><td class=\"ok\">+25&ndash;35%<\/td><\/tr>\r\n          <tr><td class=\"l\">Uso t&iacute;pico<\/td><td class=\"c\">Extremos<\/td><td class=\"c\">Vanos m&uacute;ltiples<\/td><\/tr>\r\n        <\/tbody>\r\n      <\/table>\r\n    <\/div>\r\n    <div class=\"seo-note\">La charge de r\u00e9f\u00e9rence totale doit inclure <strong>neige + vent + usage<\/strong>. Pour les b\u00e2timents industriels en Espagne, une valeur indicative est <strong>60\u2013120\u00a0kg\/m\u00b2<\/strong> selon la zone g\u00e9ographique (CTE DB-SE-AE).<\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- \u2550\u2550\u2550 SEO: CHAPA TRAPEZOIDAL Y MINIONDA \u2550\u2550\u2550 -->\r\n<section class=\"seo-section alt\" id=\"chapa-trapezoidal-minionda-cubiertas-fachadas\">\r\n  <div class=\"seo-inner\">\r\n    <div class=\"seo-tag\">Bacs acier profil\u00e9s<\/div>\r\n    <h2 class=\"seo-h2\">Bac acier <em>trap\u00e9zo\u00efdal et nervur\u00e9 MG<\/em>\u00a0: lequel choisir selon votre projet<\/h2>\r\n    <p class=\"seo-lead\">Magon Aceros fabrique quatre types de bac acier\u00a0: le <a href=\"https:\/\/magon.es\/productos\/mg-18-76\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>bac nervur\u00e9 MG\u00a018\/76<\/strong><\/a> pour les courtes port\u00e9es, et les trap\u00e9zo\u00efdaux <a href=\"https:\/\/magon.es\/productos\/mg-30-206\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>MG 30\/206<\/strong><\/a>, <a href=\"https:\/\/magon.es\/productos\/mg-30-209\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>MG 30\/209<\/strong><\/a> y <a href=\"https:\/\/magon.es\/productos\/mg-40-250\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>MG 40\/250<\/strong><\/a> pour les grandes port\u00e9es. Tous certifi\u00e9s CE selon <a href=\"https:\/\/www.une.org\/encuentra-tu-norma\/busca-tu-norma\/norma\/?c=N0047345\" target=\"_blank\" rel=\"noopener noreferrer\">UNE-EN 14782:2006<\/a>.<\/p>\r\n    <div class=\"seo-table-wrap\">\r\n      <table class=\"seo-table\">\r\n        <thead><tr>\r\n          <th>Perfil<\/th><th class=\"c\">H. onda<\/th><th class=\"c\">Vano m&aacute;x.<\/th><th class=\"c\">Posici&oacute;n<\/th><th>Uso<\/th>\r\n        <\/tr><\/thead>\r\n        <tbody>\r\n          <tr><td class=\"l\"><a href=\"https:\/\/magon.es\/productos\/mg-18-76\/\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color:var(--p);text-decoration:none;font-weight:700\">MG 18\/76<\/a><\/td><td class=\"c\">18 mm<\/td><td class=\"c\">2,0 m<\/td><td class=\"c\">&mdash;<\/td><td>Fachadas, techos<\/td><\/tr>\r\n          <tr><td class=\"l\"><a href=\"https:\/\/magon.es\/productos\/mg-30-206\/\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color:var(--p);text-decoration:none;font-weight:700\">MG 30\/206<\/a><\/td><td class=\"c\">30 mm<\/td><td class=\"c\">2,5 m<\/td><td class=\"c\">A \/ B<\/td><td>Cubiertas ind.<\/td><\/tr>\r\n          <tr><td class=\"l\"><a href=\"https:\/\/magon.es\/productos\/mg-30-209\/\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color:var(--p);text-decoration:none;font-weight:700\">MG 30\/209<\/a><\/td><td class=\"c\">30 mm<\/td><td class=\"c\">2,5 m<\/td><td class=\"c\">A \/ B<\/td><td>Fachadas est&eacute;ticas<\/td><\/tr>\r\n          <tr><td class=\"l\"><a href=\"https:\/\/magon.es\/productos\/mg-40-250\/\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color:var(--p);text-decoration:none;font-weight:700\">MG 40\/250<\/a><\/td><td class=\"c\">40 mm<\/td><td class=\"c\">2,5 m<\/td><td class=\"c\">A \/ B<\/td><td>Grandes luces<\/td><\/tr>\r\n        <\/tbody>\r\n      <\/table>\r\n    <\/div>\r\n    <p class=\"seo-body\" style=\"margin-top:16px\">La diff\u00e9rence entre <strong>position A et position B<\/strong> correspond \u00e0 l'orientation des nervures\u00a0: en position A les nervures sont vers le haut (toitures), en position B vers le bas (fa\u00e7ades). Cette orientation affecte significativement la capacit\u00e9 portante.<\/p>\r\n    <p class=\"seo-body\">Le chevauchement longitudinal rigide des profil\u00e9s MG\u00a030 et MG\u00a040 garantit l'\u00e9tanch\u00e9it\u00e9 sans risque d'ouverture sous charges de vent ou de neige. Fabriqu\u00e9s en acier <strong>S250GD<\/strong> selon <a href=\"https:\/\/www.une.org\" target=\"_blank\" rel=\"noopener noreferrer\">UNE-EN 10346<\/a>.<\/p>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- \u2550\u2550\u2550 SEO: PANEL S\u00c1NDWICH \u2550\u2550\u2550 -->\r\n<section class=\"seo-section\" id=\"panel-sandwich-master-sobrecargas-aislamiento\">\r\n  <div class=\"seo-inner\">\r\n    <div class=\"seo-tag\">Panneau sandwich<\/div>\r\n    <h2 class=\"seo-h2\">Panneau sandwich <a href=\"https:\/\/magon.es\/masterpanel-fabricantes-panel-sandwich\/\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color:inherit;text-decoration:none\">Master Panel<\/a>: <em>charge admissible et isolation<\/em> en un seul \u00e9l\u00e9ment<\/h2>\r\n    <p class=\"seo-lead\">Les panneaux sandwich de <a href=\"https:\/\/magon.es\/masterpanel-fabricantes-panel-sandwich\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Master Panel<\/strong><\/a> int\u00e8grent r\u00e9sistance structurelle et isolation thermique en un seul \u00e9l\u00e9ment avec une \u00e2me en polyur\u00e9thane PUR\/PIR. Les valeurs sont calcul\u00e9es selon <a href=\"https:\/\/www.une.org\/encuentra-tu-norma\/busca-tu-norma\/norma\/?c=N0051040\" target=\"_blank\" rel=\"noopener noreferrer\">EN 14509<\/a> para 2 vanos y chapa 0,50\/0,50 mm.<\/p>\r\n    <p class=\"seo-body\">El <a href=\"https:\/\/magon.es\/productos\/panel-sandwich-cubierta\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Master-C Toiture<\/strong><\/a> (30&ndash;120 mm) y el <a href=\"https:\/\/magon.es\/productos\/panel-sandwich-para-fachadas\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Master-F Fa\u00e7ade<\/strong><\/a> (35&ndash;100 mm) sont les panneaux de r\u00e9f\u00e9rence pour la construction industrielle. Le <a href=\"https:\/\/magon.es\/productos\/panel-sandwich-modular\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Master-Modul<\/strong><\/a> (35, 40 y 50 mm) pour les constructions modulaires, et le <a href=\"https:\/\/magon.es\/productos\/panel-sandwich-frigorifico\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>Master-Frigo<\/strong><\/a> (60&ndash;150 mm) sp\u00e9cifique pour les chambres froides.<\/p>\r\n    <p class=\"seo-body\">Pour s\u00e9lectionner le bon panneau, choisissez d'abord le type, puis l'\u00e9paisseur et enfin la port\u00e9e. Si vous saisissez une <strong>charge de r\u00e9f\u00e9rence<\/strong>, chaque \u00e9paisseur est automatiquement color\u00e9e pour indiquer si elle convient (vert), est \u00e0 la limite (jaune) ou est insuffisante (rouge).<\/p>\r\n    <a href=\"https:\/\/magon.es\/fr\/calculateur-disolation-thermique-pour-panneaux-sandwich\/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"seo-cta-link\">\r\n      <span class=\"scl-ico\">&#127777;&#65039;<\/span>\r\n      <span>\r\n        <strong class=\"scl-title\">Besoin de calculer l'isolation thermique\u00a0?<\/strong>\r\n        <span class=\"scl-sub\">Calculateur de transmittance U et \u00e9paisseur selon CTE DB-HE &rarr;<\/span>\r\n      <\/span>\r\n    <\/a>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- \u2550\u2550\u2550 FAQ \u2550\u2550\u2550 -->\r\n<section class=\"seo-section alt\" id=\"preguntas-frecuentes-sobrecargas-admisibles-perfiles\">\r\n  <div class=\"seo-inner\">\r\n    <div class=\"seo-tag\">Questions fr\u00e9quentes<\/div>\r\n    <h2 class=\"seo-h2\">Questions fr\u00e9quentes sur la <em>charge admissible des profil\u00e9s<\/em><\/h2>\r\n    <p class=\"seo-lead\">R\u00e9ponses aux questions les plus courantes sur l'utilisation du calculateur et l'application des r\u00e9sultats.<\/p>\r\n    <div>\r\n      <div class=\"faq-item\">\r\n        <button class=\"faq-q\" onclick=\"toggleFaq(this)\" aria-expanded=\"false\">Comment calculer la charge admissible d'une lisse selon la port\u00e9e\u00a0?<span class=\"faq-icon\">+<\/span><\/button>\r\n        <div class=\"faq-a\">Saisissez dans le calculateur le type de profil\u00e9, l'\u00e9cartement des portiques, l'\u00e9cartement des lisses et le nombre de trav\u00e9es. Vous obtiendrez instantan\u00e9ment la charge admissible en kg\/m\u00b2 pour chaque hauteur et \u00e9paisseur disponible, calcul\u00e9e selon le crit\u00e8re <strong>L\/200<\/strong> de l'<a href=\"https:\/\/eurocodes.jrc.ec.europa.eu\" target=\"_blank\" rel=\"noopener noreferrer\">Eurocode 3 (EC3)<\/a>.<\/div>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <button class=\"faq-q\" onclick=\"toggleFaq(this)\" aria-expanded=\"false\">Quel profil\u00e9 pour une charge de X kg\/m\u00b2 avec une port\u00e9e de Y m\u00e8tres\u00a0?<span class=\"faq-icon\">+<\/span><\/button>\r\n        <div class=\"faq-a\">S\u00e9lectionnez la famille de profil\u00e9, saisissez les param\u00e8tres d'\u00e9cartement et entrez votre charge dans le champ <strong>charge de r\u00e9f\u00e9rence<\/strong>. Le calculateur indique en <strong>\u2713 vert<\/strong> les profil\u00e9s valides, en <strong>~ jaune<\/strong> ceux \u00e0 la limite et en <strong>\u2717 rouge<\/strong> les insuffisants. Pour les b\u00e2timents industriels en Espagne, la valeur indicative habituelle est <strong>60\u2013120 kg\/m\u00b2<\/strong> selon la norme <a href=\"https:\/\/www.codigotecnico.org\" target=\"_blank\" rel=\"noopener noreferrer\">CTE DB-SE-AE<\/a>.<\/div>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <button class=\"faq-q\" onclick=\"toggleFaq(this)\" aria-expanded=\"false\">Les charges admissibles incluent-elles le poids propre du profil\u00e9\u00a0?<span class=\"faq-icon\">+<\/span><\/button>\r\n        <div class=\"faq-a\">Non. Les tableaux indiquent uniquement la <strong>charge externe admissible<\/strong> (neige, vent, usage) sans majoration. Le poids propre du profil\u00e9, de l'isolation et des finitions doit \u00eatre ajout\u00e9 s\u00e9par\u00e9ment pour obtenir la charge de conception totale.<\/div>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <button class=\"faq-q\" onclick=\"toggleFaq(this)\" aria-expanded=\"false\">Quel \u00e9cartement entre portiques est habituel dans les b\u00e2timents industriels\u00a0?<span class=\"faq-icon\">+<\/span><\/button>\r\n        <div class=\"faq-a\">Dans les b\u00e2timents industriels standard en Espagne, l'\u00e9cartement le plus courant est de <strong>5 \u00e0 7 m\u00e8tres<\/strong>. Les <a href=\"https:\/\/magon.es\/productos\/correas-mg-c-y-mg-z\/\" target=\"_blank\" rel=\"noopener noreferrer\">lisses MG C et Z<\/a> disposent de donn\u00e9es pour des \u00e9cartements de 4 \u00e0 9 m. Pour plus de 9 m, contactez l'<a href=\"https:\/\/www.magon.es\/contacto\/\" target=\"_blank\" rel=\"noopener noreferrer\">\u00e9quipe technique de Magon<\/a>.<\/div>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <button class=\"faq-q\" onclick=\"toggleFaq(this)\" aria-expanded=\"false\">Pourquoi la lisse Z supporte-t-elle plus de charge que la C de m\u00eame taille\u00a0?<span class=\"faq-icon\">+<\/span><\/button>\r\n        <div class=\"faq-a\">La <strong>correa Z<\/strong> permite el solape entre piezas contiguas, creando una <strong>viga continua<\/strong> que redistribuye los momentos flectores. Esto permite soportar hasta un 35% m&aacute;s de carga que la correa C equivalente. Siempre que sea posible, se recomienda instalar correas Z en continuidad sobre al menos 2 vanos.<\/div>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <button class=\"faq-q\" onclick=\"toggleFaq(this)\" aria-expanded=\"false\">Quand utiliser le MG\u00a040\/250 plut\u00f4t que le MG\u00a030\/206\u00a0?<span class=\"faq-icon\">+<\/span><\/button>\r\n        <div class=\"faq-a\">Le <a href=\"https:\/\/magon.es\/productos\/mg-40-250\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>MG\u00a040\/250<\/strong><\/a> a une plus grande inertie (nervure de 40\u00a0mm contre 30\u00a0mm). Utilisez-le pour des port\u00e9es proches de 2,5\u00a0m avec des charges \u00e9lev\u00e9es ou pour minimiser les lisses secondaires. Pour des port\u00e9es inf\u00e9rieures \u00e0 2\u00a0m avec des charges mod\u00e9r\u00e9es, le <a href=\"https:\/\/magon.es\/productos\/mg-30-206\/\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>MG\u00a030\/206<\/strong><\/a> ou MG\u00a030\/209 sont suffisants et plus \u00e9conomiques.<\/div>\r\n      <\/div>\r\n      <div class=\"faq-item\">\r\n        <button class=\"faq-q\" onclick=\"toggleFaq(this)\" aria-expanded=\"false\">Puis-je utiliser ce calculateur pour justifier un projet vis-\u00e0-vis de la r\u00e9glementation\u00a0?<span class=\"faq-icon\">+<\/span><\/button>\r\n        <div class=\"faq-a\">Cet outil est <strong>indicatif et non contraignant<\/strong>. Les calculs d\u00e9finitifs doivent \u00eatre r\u00e9alis\u00e9s et sign\u00e9s par un <strong>professionnel qualifi\u00e9<\/strong> (architecte, ing\u00e9nieur structure ou ing\u00e9nieur b\u00e2timent) selon CTE, EAE, EC3 et EN14509.<\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n\r\n<!-- MODAL PDF \u2014 CF7 ID 15178 -->\r\n<div class=\"modal-bg hidden\" id=\"modalPDF\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"modal-title\">\r\n  <div class=\"modal-inner\">\r\n    <!-- Cabecera -->\r\n    <div class=\"modal-hdr\">\r\n      <button class=\"modal-close-btn\" onclick=\"cerrarModal()\" aria-label=\"Fermer\">&#10005;<\/button>\r\n      <h3 id=\"modal-title\">&#128196; T\u00e9l\u00e9chargez votre rapport PDF<\/h3>\r\n      <p>Remplissez vos coordonn\u00e9es et t\u00e9l\u00e9chargez le rapport de votre calcul de charges.<\/p>\r\n    <\/div>\r\n    <!-- Formulario -->\r\n    <div id=\"modal-form-wrap\">\r\n      <div class=\"modal-body\">\r\n        <div id=\"modal-err-alert\" class=\"modal-err-alert\">Veuillez compl\u00e9ter tous les champs obligatoires.<\/div>\r\n\r\n        <div class=\"mfield\">\r\n          <label>Nom complet <span class=\"req\">*<\/span><\/label>\r\n          <input type=\"text\" id=\"m-nombre\" placeholder=\"Votre nom et pr\u00e9nom\" maxlength=\"100\" autocomplete=\"name\">\r\n          <span class=\"err-txt\" id=\"err-nombre\">Veuillez saisir votre nom.<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"mrow2\">\r\n          <div class=\"mfield\">\r\n            <label>Email <span class=\"req\">*<\/span><\/label>\r\n            <input type=\"email\" id=\"m-email\" placeholder=\"tu@correo.com\" maxlength=\"150\" autocomplete=\"email\">\r\n            <span class=\"err-txt\" id=\"err-email\">Veuillez saisir un e-mail valide.<\/span>\r\n          <\/div>\r\n          <div class=\"mfield\">\r\n            <label>T\u00e9l\u00e9phone <span class=\"opt\">Opcional<\/span><\/label>\r\n            <input type=\"tel\" id=\"m-tel\" placeholder=\"+34 600 000 000\" maxlength=\"20\" autocomplete=\"tel\">\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"mrow2\">\r\n          <div class=\"mfield\">\r\n            <label>Pays <span class=\"req\">*<\/span><\/label>\r\n            <select id=\"m-pais\" onchange=\"onModalPaisChange()\">\r\n              <option value=\"\">&#8212; S\u00e9lectionnez un pays &#8212;<\/option>\r\n              <optgroup label=\"Espa&ntilde;a\"><option value=\"Espa\u00f1a\">Espa\u00f1a<\/option><\/optgroup>\r\n              <optgroup label=\"Europa\">\r\n                <option>Alemania<\/option><option>Andorra<\/option><option>Austria<\/option><option>B\u00e9lgica<\/option><option>Bulgaria<\/option><option>Chipre<\/option><option>Croacia<\/option><option>Dinamarca<\/option><option>Eslovaquia<\/option><option>Eslovenia<\/option><option>Estonia<\/option><option>Finlandia<\/option><option>Francia<\/option><option>Grecia<\/option><option>Hungr\u00eda<\/option><option>Irlanda<\/option><option>Islandia<\/option><option>Italia<\/option><option>Letonia<\/option><option>Liechtenstein<\/option><option>Lituania<\/option><option>Luxemburgo<\/option><option>Malta<\/option><option>M\u00f3naco<\/option><option>Noruega<\/option><option>Pa\u00edses Bajos<\/option><option>Polonia<\/option><option>Portugal<\/option><option>Reino Unido<\/option><option>Rep\u00fablica Checa<\/option><option>Ruman\u00eda<\/option><option>Suecia<\/option><option>Suiza<\/option><option>Turqu\u00eda<\/option><option>Ucrania<\/option>\r\n              <\/optgroup>\r\n              <optgroup label=\"Am&eacute;rica Latina\">\r\n                <option>Argentina<\/option><option>Bolivia<\/option><option>Brasil<\/option><option>Chile<\/option><option>Colombia<\/option><option>Costa Rica<\/option><option>Cuba<\/option><option>Ecuador<\/option><option>El Salvador<\/option><option>Guatemala<\/option><option>Honduras<\/option><option>M\u00e9xico<\/option><option>Nicaragua<\/option><option>Panam\u00e1<\/option><option>Paraguay<\/option><option>Per\u00fa<\/option><option>Puerto Rico<\/option><option>Rep\u00fablica Dominicana<\/option><option>Uruguay<\/option><option>Venezuela<\/option>\r\n              <\/optgroup>\r\n              <optgroup label=\"&Aacute;frica\">\r\n                <option>Angola<\/option><option>Argelia<\/option><option>Cabo Verde<\/option><option>Camer\u00fan<\/option><option>Costa de Marfil<\/option><option>Egipto<\/option><option>Ghana<\/option><option>Guinea Ecuatorial<\/option><option>Kenia<\/option><option>Libia<\/option><option>Marruecos<\/option><option>Mozambique<\/option><option>Nigeria<\/option><option>Senegal<\/option><option>Sud\u00e1frica<\/option><option>T\u00fanez<\/option>\r\n              <\/optgroup>\r\n              <optgroup label=\"Am&eacute;rica del Norte\"><option>Canad\u00e1<\/option><option>Estados Unidos<\/option><\/optgroup>\r\n              <optgroup label=\"Oriente Medio\">\r\n                <option>Arabia Saud\u00ed<\/option><option>Catar<\/option><option>Emiratos \u00c1rabes Unidos<\/option><option>Israel<\/option><option>Jordania<\/option><option>Kuwait<\/option><option>L\u00edbano<\/option><option>Om\u00e1n<\/option>\r\n              <\/optgroup>\r\n              <optgroup label=\"Asia y Ocean&iacute;a\">\r\n                <option>Australia<\/option><option>China<\/option><option>Filipinas<\/option><option>India<\/option><option>Indonesia<\/option><option>Jap\u00f3n<\/option><option>Malasia<\/option><option>Nueva Zelanda<\/option><option>Singapur<\/option><option>Corea del Sur<\/option><option>Tailandia<\/option><option>Vietnam<\/option>\r\n              <\/optgroup>\r\n              <option value=\"Otro\">Otro<\/option>\r\n            <\/select>\r\n            <span class=\"err-txt\" id=\"err-pais\">Veuillez s\u00e9lectionner votre pays.<\/span>\r\n          <\/div>\r\n          <div class=\"mfield mprov\" id=\"m-prov-wrap\">\r\n            <label>Province<\/label>\r\n            <select id=\"m-prov\">\r\n              <option value=\"\">&#8212; S\u00e9lectionnez &#8212;<\/option>\r\n              <option>\u00c1lava<\/option><option>Albacete<\/option><option>Alicante<\/option><option>Almer\u00eda<\/option><option>Asturias<\/option><option>\u00c1vila<\/option><option>Badajoz<\/option><option>Baleares<\/option><option>Barcelona<\/option><option>Burgos<\/option><option>C\u00e1ceres<\/option><option>C\u00e1diz<\/option><option>Cantabria<\/option><option>Castell\u00f3n<\/option><option>Ceuta<\/option><option>Ciudad Real<\/option><option>C\u00f3rdoba<\/option><option>A Coru\u00f1a<\/option><option>Cuenca<\/option><option>Girona<\/option><option>Granada<\/option><option>Guadalajara<\/option><option>Guip\u00fazcoa<\/option><option>Huelva<\/option><option>Huesca<\/option><option>Ja\u00e9n<\/option><option>La Rioja<\/option><option>Las Palmas<\/option><option>Le\u00f3n<\/option><option>Lleida<\/option><option>Lugo<\/option><option>Madrid<\/option><option>M\u00e1laga<\/option><option>Melilla<\/option><option>Murcia<\/option><option>Navarra<\/option><option>Ourense<\/option><option>Palencia<\/option><option>Pontevedra<\/option><option>Salamanca<\/option><option>Santa Cruz de Tenerife<\/option><option>Segovia<\/option><option>Sevilla<\/option><option>Soria<\/option><option>Tarragona<\/option><option>Teruel<\/option><option>Toledo<\/option><option>Valencia<\/option><option>Valladolid<\/option><option>Vizcaya<\/option><option>Zamora<\/option><option>Zaragoza<\/option>\r\n            <\/select>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"mfield\">\r\n          <label>Entreprise <span class=\"opt\">Opcional<\/span><\/label>\r\n          <input type=\"text\" id=\"m-empresa\" placeholder=\"Nom de l'entreprise\" maxlength=\"120\" autocomplete=\"organization\">\r\n        <\/div>\r\n\r\n        <p class=\"modal-form-note\">Les r\u00e9sultats sont <strong>indicatifs<\/strong> et ne remplacent pas les calculs d'un professionnel qualifi\u00e9.<\/p>\r\n\r\n        <div class=\"gdpr-wrap\">\r\n          <input type=\"checkbox\" id=\"m-gdpr\">\r\n          <label for=\"m-gdpr\">J'ai lu et j'accepte la <a href=\"https:\/\/magon.es\/politica-privacidad\/\" target=\"_blank\" rel=\"noopener\">politique de confidentialit\u00e9<\/a> <strong style=\"color:var(--p)\">*<\/strong><\/label>\r\n        <\/div>\r\n        <div class=\"gdpr-err\" id=\"err-gdpr\">Vous devez accepter la politique de confidentialit\u00e9.<\/div>\r\n\r\n        <button class=\"modal-submit-btn\" id=\"modal-submit-btn\" onclick=\"enviarFormulario()\">\r\n          <span class=\"btn-txt\">T\u00e9l\u00e9charger le PDF<\/span>\r\n          <div class=\"spinner\"><\/div>\r\n        <\/button>\r\n        <p class=\"modal-legal\">En envoyant, vous acceptez que Magon vous contacte. Nous ne partageons pas vos donn\u00e9es. <a href=\"https:\/\/magon.es\/politica-privacidad\/\" target=\"_blank\" rel=\"noopener\">Privacidad<\/a>.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n    <!-- Estado OK -->\r\n    <div class=\"modal-ok-wrap hidden\" id=\"modal-ok\">\r\n      <span class=\"ok-ico\">&#10003;<\/span>\r\n      <h4>PDF t\u00e9l\u00e9charg\u00e9\u202f!<\/h4>\r\n      <div class=\"modal-ok-detail\" id=\"modal-ok-detail\"><\/div>\r\n      <p>Notre \u00e9quipe technique peut vous contacter pour un conseil sans engagement.<\/p>\r\n      <button class=\"modal-ok-close\" onclick=\"cerrarModal()\">Fermer<\/button>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<div class=\"toast\" id=\"toast\"><\/div>\r\n\r\n<!-- CF7 oculto \u2014 shortcode para que WordPress genere el nonce -->\r\n<div style=\"position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0;pointer-events:none;\" aria-hidden=\"true\">\r\n<p class=\"wpcf7-contact-form-not-found\"><strong>Erreur\u00a0:<\/strong> Formulaire de contact non trouv\u00e9\u00a0!<\/p>\r\n<\/div>\r\n\r\n<script>\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ DATOS\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nconst MINIONDA=[{id:'mg1876',nombre:'MG 18\/76',tipo:'Perfil ondulado',alturaOnda:18,ancho:1064,espesores:[0.5,0.6,0.7,0.8],hasPosition:false,maxLuz:2.0,tabla:{'1':{'0.5':{1.0:209,1.25:121,1.5:70,1.75:44,2.0:30},'0.6':{1.0:251,1.25:146,1.5:84,1.75:53,2.0:36},'0.7':{1.0:294,1.25:170,1.5:99,1.75:62,2.0:42},'0.8':{1.0:336,1.25:195,1.5:113,1.75:71,2.0:48}},'2':{'0.5':{1.0:209,1.25:134,1.5:93,1.75:68,2.0:52},'0.6':{1.0:251,1.25:161,1.5:112,1.75:82,2.0:63},'0.7':{1.0:294,1.25:188,1.5:130,1.75:96,2.0:73},'0.8':{1.0:336,1.25:215,1.5:149,1.75:110,2.0:84}},'3':{'0.5':{1.0:261,1.25:167,1.5:116,1.75:85,2.0:55},'0.6':{1.0:314,1.25:201,1.5:140,1.75:103,2.0:66},'0.7':{1.0:367,1.25:235,1.5:163,1.75:120,2.0:77},'0.8':{1.0:420,1.25:268,1.5:186,1.75:137,2.0:88}}}}];\r\nMINIONDA.push(\r\n  {id:'mg30206',nombre:'MG 30\/206',tipo:'Perfil trapezoidal',alturaOnda:30,ancho:1030,espesores:[0.5,0.6,0.7,0.8],pesos:{'0.5':4.76,'0.6':5.72,'0.7':6.67,'0.8':7.62},hasPosition:true,maxLuz:2.5,tabla:{\r\n    'A':{\r\n      '1':{'0.5':{1.0:364,1.25:233,1.5:162,1.75:119,2.0:78,2.25:55,2.5:40},'0.6':{1.0:465,1.25:297,1.5:207,1.75:152,2.0:97,2.25:68,2.5:50},'0.7':{1.0:569,1.25:364,1.5:253,1.75:186,2.0:116,2.25:82,2.5:60},'0.8':{1.0:665,1.25:425,1.5:295,1.75:217,2.0:135,2.25:95,2.5:69}},\r\n      '2':{'0.5':{1.0:370,1.25:237,1.5:165,1.75:121,2.0:93,2.25:73,2.5:62},'0.6':{1.0:494,1.25:316,1.5:219,1.75:161,2.0:123,2.25:98,2.5:79},'0.7':{1.0:604,1.25:387,1.5:268,1.75:197,2.0:151,2.25:119,2.5:97},'0.8':{1.0:706,1.25:452,1.5:314,1.75:231,2.0:177,2.25:139,2.5:113}},\r\n      '3':{'0.5':{1.0:435,1.25:279,1.5:194,1.75:142,2.0:109,2.25:86,2.5:70},'0.6':{1.0:545,1.25:349,1.5:242,1.75:178,2.0:136,2.25:108,2.5:87},'0.7':{1.0:645,1.25:413,1.5:287,1.75:211,2.0:161,2.25:127,2.5:103},'0.8':{1.0:747,1.25:478,1.5:332,1.75:244,2.0:187,2.25:148,2.5:120}}\r\n    },\r\n    'B':{\r\n      '1':{'0.5':{1.0:348,1.25:223,1.5:155,1.75:114,2.0:54,2.25:38,2.5:27},'0.6':{1.0:436,1.25:279,1.5:194,1.75:142,2.0:68,2.25:48,2.5:35},'0.7':{1.0:516,1.25:330,1.5:229,1.75:169,2.0:84,2.25:59,2.5:43},'0.8':{1.0:598,1.25:383,1.5:266,1.75:195,2.0:100,2.25:71,2.5:51}},\r\n      '2':{'0.5':{1.0:386,1.25:247,1.5:172,1.75:126,2.0:97,2.25:76,2.5:62},'0.6':{1.0:494,1.25:316,1.5:219,1.75:161,2.0:123,2.25:98,2.5:79},'0.7':{1.0:604,1.25:387,1.5:268,1.75:197,2.0:151,2.25:119,2.5:97},'0.8':{1.0:706,1.25:452,1.5:314,1.75:231,2.0:177,2.25:139,2.5:113}},\r\n      '3':{'0.5':{1.0:455,1.25:291,1.5:202,1.75:148,2.0:114,2.25:90,2.5:73},'0.6':{1.0:581,1.25:372,1.5:258,1.75:190,2.0:145,2.25:115,2.5:93},'0.7':{1.0:711,1.25:455,1.5:316,1.75:232,2.0:178,2.25:140,2.5:114},'0.8':{1.0:831,1.25:532,1.5:369,1.75:271,2.0:208,2.25:164,2.5:133}}\r\n    }\r\n  }},\r\n  {id:'mg30209',nombre:'MG 30\/209',tipo:'Perfil trapezoidal',alturaOnda:30,ancho:1045,espesores:[0.5,0.6,0.7,0.8],pesos:{'0.5':4.70,'0.6':5.63,'0.7':6.57,'0.8':7.51},hasPosition:true,maxLuz:2.5,tabla:{\r\n    'A':{\r\n      '1':{'0.5':{1.0:360,1.25:230,1.5:160,1.75:118,2.0:83,2.25:58,2.5:43},'0.6':{1.0:456,1.25:292,1.5:203,1.75:149,2.0:103,2.25:73,2.5:53},'0.7':{1.0:540,1.25:345,1.5:240,1.75:176,2.0:122,2.25:85,2.5:62},'0.8':{1.0:615,1.25:394,1.5:273,1.75:201,2.0:139,2.25:98,2.5:71}},\r\n      '2':{'0.5':{1.0:320,1.25:205,1.5:142,1.75:105,2.0:80,2.25:63,2.5:51},'0.6':{1.0:416,1.25:266,1.5:185,1.75:136,2.0:104,2.25:82,2.5:67},'0.7':{1.0:501,1.25:321,1.5:223,1.75:164,2.0:125,2.25:99,2.5:80},'0.8':{1.0:581,1.25:372,1.5:258,1.75:190,2.0:145,2.25:115,2.5:93}},\r\n      '3':{'0.5':{1.0:377,1.25:241,1.5:167,1.75:123,2.0:94,2.25:74,2.5:60},'0.6':{1.0:490,1.25:313,1.5:218,1.75:160,2.0:122,2.25:97,2.5:78},'0.7':{1.0:589,1.25:377,1.5:262,1.75:192,2.0:147,2.25:116,2.5:94},'0.8':{1.0:683,1.25:437,1.5:304,1.75:223,2.0:171,2.25:135,2.5:109}}\r\n    },\r\n    'B':{\r\n      '1':{'0.5':{1.0:301,1.25:193,1.5:134,1.75:98,2.0:52,2.25:36,2.5:27},'0.6':{1.0:392,1.25:251,1.5:174,1.75:128,2.0:68,2.25:48,2.5:35},'0.7':{1.0:472,1.25:302,1.5:210,1.75:154,2.0:85,2.25:59,2.5:43},'0.8':{1.0:546,1.25:350,1.5:243,1.75:178,2.0:101,2.25:71,2.5:52}},\r\n      '2':{'0.5':{1.0:382,1.25:245,1.5:170,1.75:125,2.0:96,2.25:76,2.5:61},'0.6':{1.0:485,1.25:310,1.5:216,1.75:158,2.0:121,2.25:96,2.5:78},'0.7':{1.0:573,1.25:367,1.5:255,1.75:187,2.0:143,2.25:113,2.5:92},'0.8':{1.0:654,1.25:418,1.5:291,1.75:213,2.0:163,2.25:129,2.5:105}},\r\n      '3':{'0.5':{1.0:450,1.25:288,1.5:200,1.75:147,2.0:112,2.25:89,2.5:72},'0.6':{1.0:571,1.25:365,1.5:254,1.75:186,2.0:143,2.25:113,2.5:91},'0.7':{1.0:674,1.25:432,1.5:300,1.75:220,2.0:169,2.25:133,2.5:108},'0.8':{1.0:769,1.25:492,1.5:342,1.75:251,2.0:192,2.25:152,2.5:123}}\r\n    }\r\n  }},\r\n  {id:'mg40250',nombre:'MG 40\/250',tipo:'Perfil trapezoidal',alturaOnda:40,ancho:1000,espesores:[0.5,0.6,0.7,0.8],pesos:{'0.5':4.90,'0.6':5.89,'0.7':6.87,'0.8':7.85},hasPosition:true,maxLuz:2.5,tabla:{\r\n    'A':{\r\n      '1':{'0.5':{1.0:500,1.25:320,1.5:222,1.75:163,2.0:125,2.25:99,2.5:75},'0.6':{1.0:633,1.25:405,1.5:281,1.75:207,2.0:158,2.25:125,2.5:93},'0.7':{1.0:769,1.25:492,1.5:342,1.75:251,2.0:192,2.25:152,2.5:112},'0.8':{1.0:897,1.25:574,1.5:399,1.75:293,2.0:224,2.25:177,2.5:129}},\r\n      '2':{'0.5':{1.0:479,1.25:307,1.5:213,1.75:156,2.0:120,2.25:95,2.5:77},'0.6':{1.0:594,1.25:380,1.5:264,1.75:194,2.0:148,2.25:117,2.5:95},'0.7':{1.0:705,1.25:451,1.5:313,1.75:230,2.0:176,2.25:139,2.5:113},'0.8':{1.0:818,1.25:523,1.5:363,1.75:267,2.0:204,2.25:162,2.5:131}},\r\n      '3':{'0.5':{1.0:564,1.25:361,1.5:250,1.75:184,2.0:141,2.25:111,2.5:90},'0.6':{1.0:698,1.25:447,1.5:310,1.75:228,2.0:175,2.25:138,2.5:112},'0.7':{1.0:829,1.25:531,1.5:368,1.75:271,2.0:207,2.25:164,2.5:133},'0.8':{1.0:962,1.25:616,1.5:428,1.75:314,2.0:241,2.25:190,2.5:154}}\r\n    },\r\n    'B':{\r\n      '1':{'0.5':{1.0:451,1.25:289,1.5:200,1.75:147,2.0:113,2.25:89,2.5:49},'0.6':{1.0:559,1.25:358,1.5:248,1.75:182,2.0:140,2.25:110,2.5:62},'0.7':{1.0:663,1.25:424,1.5:295,1.75:217,2.0:166,2.25:131,2.5:76},'0.8':{1.0:770,1.25:493,1.5:342,1.75:251,2.0:192,2.25:152,2.5:91}},\r\n      '2':{'0.5':{1.0:532,1.25:340,1.5:236,1.75:174,2.0:133,2.25:105,2.5:85},'0.6':{1.0:673,1.25:431,1.5:299,1.75:220,2.0:168,2.25:133,2.5:108},'0.7':{1.0:817,1.25:523,1.5:363,1.75:267,2.0:204,2.25:161,2.5:131},'0.8':{1.0:953,1.25:610,1.5:423,1.75:311,2.0:238,2.25:188,2.5:152}},\r\n      '3':{'0.5':{1.0:626,1.25:400,1.5:278,1.75:204,2.0:156,2.25:124,2.5:100},'0.6':{1.0:792,1.25:507,1.5:352,1.75:258,2.0:198,2.25:156,2.5:127},'0.7':{1.0:962,1.25:616,1.5:427,1.75:314,2.0:240,2.25:190,2.5:154},'0.8':{1.0:1121,1.25:717,1.5:498,1.75:366,2.0:280,2.25:221,2.5:179}}\r\n    }\r\n  }}\r\n);\r\n\r\nMINIONDA[0].fam='minionda';MINIONDA[0].calculable=true;\r\nMINIONDA[1].fam='trapezoidal';MINIONDA[1].calculable=true;\r\nMINIONDA[2].fam='trapezoidal';MINIONDA[2].calculable=true;\r\nMINIONDA[3].fam='trapezoidal';MINIONDA[3].calculable=true;\r\nconst PERFILES_CHAPA=[\r\n  MINIONDA[0],MINIONDA[1],MINIONDA[2],MINIONDA[3]\r\n];\r\nconst FAMILIAS_CHAPA={minionda:'Bac nervur\u00e9',trapezoidal:'Trap\u00e9zo\u00efdal'};\r\n\r\nconst CORREAS_C={alturas:[125,150,175,200,225,250,275,300],espesores:[2,2.5,3],tabla:{125:{2:{4:{1.25:112,1.50:93,1.75:80},5:{1.25:70,1.50:59},6:{},7:{},8:{},9:{}},2.5:{4:{1.25:137,1.50:114,1.75:98},5:{1.25:86,1.50:72,1.75:62},6:{1.25:59},7:{},8:{},9:{}},3:{4:{1.25:160,1.50:145,1.75:115},5:{1.25:101,1.50:84,1.75:72},6:{1.25:69,1.50:57},7:{},8:{},9:{}}},150:{2:{4:{1.25:144,1.50:120,1.75:103},5:{1.25:91,1.50:76,1.75:65},6:{1.25:62,1.50:52},7:{},8:{},9:{}},2.5:{4:{1.25:177,1.50:147,1.75:126},5:{1.25:112,1.50:93,1.75:80},6:{1.25:76,1.50:64,1.75:54},7:{},8:{},9:{}},3:{4:{1.25:208,1.50:173,1.75:148},5:{1.25:131,1.50:109,1.75:94},6:{1.25:90,1.50:75,1.75:64},7:{},8:{},9:{}}},175:{2:{4:{1.25:179,1.50:149,1.75:128},5:{1.25:113,1.50:94,1.75:81},6:{1.25:76,1.50:65,1.75:55},7:{},8:{},9:{}},2.5:{4:{1.25:220,1.50:183,1.75:157},5:{1.25:139,1.50:116,1.75:99},6:{1.25:95,1.50:79,1.75:68,2.00:60},7:{1.25:69},8:{},9:{}},3:{4:{1.25:259,1.50:216,1.75:175},5:{1.25:164,1.50:137,1.75:117},6:{1.25:112,1.50:94,1.75:80,2.00:70},7:{1.25:81,1.50:67,1.75:57},8:{},9:{}}},200:{2:{4:{1.25:286,1.50:239,1.75:205},5:{1.25:183,1.50:153,1.75:131},6:{1.25:127,1.50:106,1.75:91,2.00:78},7:{1.25:94,1.50:78,1.75:65,2.00:57},8:{},9:{}},2.5:{4:{1.25:352,1.50:293,1.75:251},5:{1.25:225,1.50:188,1.75:161},6:{1.25:156,1.50:130,1.75:112,2.00:96},7:{1.25:115,1.50:96,1.75:80,2.00:70},8:{1.25:70,1.50:60},9:{}},3:{4:{1.25:415,1.50:346,1.75:297},5:{1.25:266,1.50:222,1.75:190},6:{1.25:185,1.50:154,1.75:132,2.00:114},7:{1.25:136,1.50:113,1.75:95,2.00:83},8:{1.25:83,1.50:71,1.75:62},9:{}}},225:{2:{4:{1.25:332,1.50:277,1.75:237},5:{1.25:213,1.50:177,1.75:152},6:{1.25:148,1.50:123,1.75:105,2.00:92},7:{1.25:109,1.50:90,1.75:76,2.00:67},8:{1.25:67,1.50:58,1.75:50},9:{}},2.5:{4:{1.25:409,1.50:341,1.75:292},5:{1.25:262,1.50:218,1.75:187},6:{1.25:182,1.50:151,1.75:130,2.00:114},7:{1.25:134,1.50:111,1.75:94,2.00:82},8:{1.25:83,1.50:71,1.75:62},9:{1.25:64}},3:{4:{1.25:483,1.50:402,1.75:345},5:{1.25:309,1.50:258,1.75:221},6:{1.25:215,1.50:179,1.75:153,2.00:135},7:{1.25:158,1.50:131,1.75:112,2.00:98},8:{1.25:98,1.50:84,1.75:74},9:{1.25:76,1.75:65}}},250:{2:{4:{1.25:381,1.50:317,1.75:272},5:{1.25:244,1.50:203,1.75:174},6:{1.25:169,1.50:141,1.75:121,2.00:107},7:{1.25:124,1.50:104,1.75:88,2.00:77},8:{1.25:78,1.50:67,1.75:59},9:{1.25:61,1.75:52}},2.5:{4:{1.25:469,1.50:391,1.75:335},5:{1.25:300,1.50:250,1.75:214},6:{1.25:208,1.50:174,1.75:149,2.00:132},7:{1.25:153,1.50:128,1.75:109,2.00:96},8:{1.25:96,1.50:83,1.75:72},9:{1.25:75,1.50:64,1.75:56}},3:{4:{1.25:554,1.50:462,1.75:396},5:{1.25:355,1.50:296,1.75:253},6:{1.25:246,1.50:205,1.75:165,2.00:156},7:{1.25:181,1.50:151,1.75:129,2.00:113},8:{1.25:114,1.50:98,1.75:86},9:{1.25:89,1.50:76,1.75:67}}},275:{2:{4:{1.25:432,1.50:360,1.75:308},5:{1.25:276,1.50:230,1.75:197},6:{1.25:192,1.50:160,1.75:137,2.00:122},7:{1.25:141,1.50:117,1.75:101,2.00:89},8:{1.25:90,1.50:77,1.75:67},9:{1.25:71,1.50:61,1.75:53}},2.5:{4:{1.25:532,1.50:443,1.75:380},5:{1.25:341,1.50:284,1.75:243},6:{1.25:236,1.50:197,1.75:169,2.00:151},7:{1.25:145,1.50:145,1.75:124,2.00:110},8:{1.25:111,1.50:95,1.75:83},9:{1.25:88,1.50:75,1.75:64}},3:{4:{1.25:629,1.50:525,1.75:450},5:{1.25:403,1.50:336,1.75:288},6:{1.25:280,1.50:233,1.75:200,2.00:179},7:{1.25:206,1.50:171,1.75:147,2.00:130},8:{1.25:131,1.50:112,1.75:98},9:{1.25:104,1.50:89,1.75:77}}},300:{2:{4:{1.25:485,1.50:404,1.75:347},5:{1.25:311,1.50:259,1.75:222},6:{1.25:216,1.50:180,1.75:154,2.00:138},7:{1.25:158,1.50:132,1.75:115,2.00:100},8:{1.25:101,1.50:87,1.75:76},9:{1.25:79,1.75:65,2.00:59}},2.5:{4:{1.50:499,1.75:427},5:{1.25:383,1.50:319,1.75:274},6:{1.25:266,1.50:222,1.75:190,2.00:170},7:{1.25:195,1.50:163,1.75:142,2.00:124},8:{1.25:125,1.50:107,1.75:94},9:{1.25:98,1.50:84,1.75:73}},3:{5:{1.25:453,1.50:378,1.75:324},6:{1.25:315,1.50:262,1.75:225,2.00:202},7:{1.25:231,1.50:193,1.75:168,2.00:147},8:{1.25:148,1.50:127,1.75:111},9:{1.25:116,1.50:99,1.75:87}}}}};\r\n\r\nconst CORREAS_Z={alturas:[125,150,175,200,225,250,275,300],espesores:[2,2.5,3],tabla:{125:{2:{4:{1.25:107,1.50:89,1.75:76},5:{1.25:67,1.50:56},6:{},7:{},8:{},9:{}},2.5:{4:{1.25:131,1.50:109,1.75:93},5:{1.25:82,1.50:69,1.75:59},6:{1.25:56},7:{},8:{},9:{}},3:{4:{1.25:153,1.50:128,1.75:109},5:{1.25:96,1.50:80,1.75:69},6:{1.25:66,1.50:55},7:{},8:{},9:{}}},150:{2:{4:{1.25:138,1.50:115,1.75:99},5:{1.25:87,1.50:73,1.75:62},6:{1.25:60,1.50:50},7:{},8:{},9:{}},2.5:{4:{1.25:169,1.50:141,1.75:121},5:{1.25:107,1.50:89,1.75:76},6:{1.25:73,1.50:61,1.75:52},7:{},8:{},9:{}},3:{4:{1.25:199,1.50:166,1.75:142},5:{1.25:126,1.50:105,1.75:90},6:{1.25:86,1.50:71,1.75:61},7:{},8:{},9:{}}},175:{2:{4:{1.25:172,1.50:144,1.75:123},5:{1.25:109,1.50:91,1.75:78},6:{1.25:75,1.50:62,1.75:53},7:{},8:{},9:{}},2.5:{4:{1.25:212,1.50:176,1.75:151},5:{1.25:134,1.50:111,1.75:96},6:{1.25:92,1.50:76,1.75:65},7:{},8:{},9:{}},3:{4:{1.25:249,1.50:208,1.75:178},5:{1.25:158,1.50:131,1.75:113},6:{1.25:108,1.50:90,1.75:77},7:{},8:{},9:{}}},200:{2:{4:{1.25:276,1.50:230,1.75:197},5:{1.25:177,1.50:147,1.75:126},6:{1.25:123,1.50:102,1.75:88,2.00:75},7:{1.25:90,1.50:75},8:{},9:{}},2.5:{4:{1.25:339,1.50:283,1.75:242},5:{1.25:217,1.50:181,1.75:155},6:{1.25:151,1.50:126,1.75:108,2.00:93},7:{1.25:111,1.50:92,1.75:79,2.00:67},8:{},9:{}},3:{4:{1.25:400,1.50:334,1.75:286},5:{1.25:256,1.50:213,1.75:183},6:{1.25:178,1.50:148,1.75:127,2.00:110},7:{1.25:131,1.50:109,1.75:93,2.00:80},8:{},9:{}}},225:{2:{4:{1.25:320,1.50:267,1.75:229},5:{1.25:205,1.50:171,1.75:146},6:{1.25:142,1.50:119,1.75:102,2.00:89},7:{1.25:105,1.50:87,1.75:75,2.00:64},8:{},9:{}},2.5:{4:{1.25:394,1.50:328,1.75:281},5:{1.25:252,1.50:210,1.75:180},6:{1.25:175,1.50:146,1.75:125,2.00:110},7:{1.25:129,1.50:107,1.75:92,2.00:79},8:{1.25:82},9:{}},3:{4:{1.25:465,1.50:388,1.75:332},5:{1.25:298,1.50:248,1.75:213},6:{1.25:207,1.50:172,1.75:148,2.00:130},7:{1.25:152,1.50:127,1.75:108,2.00:94},8:{1.25:95,1.75:81},9:{}}},250:{2:{4:{1.25:367,1.50:306,1.75:262},5:{1.25:235,1.50:196,1.75:168},6:{1.25:163,1.50:136,1.75:117,2.00:105},7:{1.25:120,1.50:102,1.75:87,2.00:77},8:{1.25:77,1.50:66,1.75:58},9:{1.25:60}},2.5:{4:{1.25:452,1.50:377,1.75:323},5:{1.25:289,1.50:241,1.75:207},6:{1.25:201,1.50:167,1.75:143,2.00:130},7:{1.25:148,1.50:126,1.75:108,2.00:94},8:{1.25:95,1.50:82,1.75:71},9:{1.25:74,1.50:63}},3:{4:{1.25:534,1.50:445,1.75:381},5:{1.25:342,1.50:285,1.75:244},6:{1.25:237,1.50:198,1.75:170,2.00:154},7:{1.25:174,1.50:149,1.75:128,2.00:112},8:{1.25:113,1.50:97,1.75:85},9:{1.25:88,1.50:75,1.75:66}}},275:{2:{4:{1.25:417,1.50:347,1.75:298},5:{1.25:267,1.50:222,1.75:190},6:{1.25:185,1.50:154,1.75:132,2.00:121},7:{1.25:136,1.50:113,1.75:97,2.00:88},8:{1.25:87,1.50:74,1.75:67},9:{1.25:69,1.50:59,1.75:49}},2.5:{4:{1.25:513,1.50:428,1.75:367},5:{1.25:328,1.50:274,1.75:235},6:{1.25:228,1.50:190,1.75:163,2.00:149},7:{1.25:168,1.50:140,1.75:120,2.00:109},8:{1.25:107,1.50:92,1.75:82},9:{1.25:84,1.50:72,1.75:62}},3:{4:{1.25:607,1.50:506,1.75:433},5:{1.25:388,1.50:324,1.75:277},6:{1.25:270,1.50:225,1.75:193,2.00:177},7:{1.25:198,1.50:165,1.75:142,2.00:129},8:{1.25:126,1.50:108,1.75:98},9:{1.25:100,1.50:86,1.75:76}}},300:{2:{4:{1.25:468,1.50:390,1.75:335},5:{1.25:300,1.50:250,1.75:214},6:{1.25:208,1.50:174,1.75:149,2.00:137},7:{1.25:153,1.50:127,1.75:109,2.00:99},8:{1.25:98,1.50:84,1.75:75},9:{1.25:77,1.50:66,1.75:59}},2.5:{4:{1.50:481,1.75:412},5:{1.25:370,1.50:308,1.75:264},6:{1.25:257,1.50:214,1.75:183,2.00:169},7:{1.25:189,1.50:157,1.75:135,2.00:123},8:{1.25:120,1.50:103,1.75:93},9:{1.25:95,1.50:81,1.75:73}},3:{5:{1.25:437,1.50:364,1.75:312},6:{1.25:304,1.50:253,1.75:217,2.00:201},7:{1.25:223,1.50:186,1.75:159,2.00:146},8:{1.25:142,1.50:122,1.75:110},9:{1.25:112,1.50:96,1.75:86}}}}};\r\n\r\nconst MASTER_C={nombre:'Master-C Toiture',espesores:[30,40,50,60,80,100,120],pesos:{30:9.8,40:10.2,50:10.6,60:11.0,80:11.8,100:12.6,120:13.4},tabla:{30:{150:331,175:233,200:172,225:168,250:137},40:{150:409,175:297,200:225,225:213,250:176,275:149,300:127,325:109},50:{150:489,175:364,200:281,225:260,250:218,275:186,300:160,325:139,350:122,375:107},60:{175:432,200:339,225:309,250:261,275:224,300:194,325:170,350:150,375:133,400:119,450:96},80:{200:458,225:410,250:350,275:304,300:266,325:235,350:209,375:187,400:168,450:138},100:{250:442,275:386,300:340,325:302,350:271,375:243,400:220,450:182},120:{275:470,300:416,325:371,350:334,375:301,400:274,450:228}}};\r\nconst MASTER_F={nombre:'Master-F Fa\u00e7ade',espesores:[35,40,50,60,80,100],pesos:{35:9.7,40:10.1,50:10.5,60:10.9,80:11.7,100:12.5},tabla:{35:{100:399,150:240,175:195,200:161,225:135,250:115,275:98,300:85},40:{100:462,150:281,175:229,200:190,225:160,250:137,275:118,300:102,325:89},50:{150:363,175:298,200:249,225:211,250:182,275:157,300:137,325:120,350:106,375:94},60:{150:368,175:309,200:264,225:227,250:198,275:174,300:153,325:136,350:121,375:108},80:{200:431,225:370,250:322,275:282,300:249,325:222,350:198,375:178,400:160},100:{225:479,250:418,275:368,300:327,325:292,350:262,375:237,400:214}}};\r\nconst MASTER_MODUL={nombre:'Master-Modul',espesores:[35,40,50],pesos:{35:8.96,40:9.16,50:9.55},tabla:{35:{150:207,175:162,200:129,225:104,250:84,275:69,300:58,325:48},40:{150:245,175:193,200:155,225:126,250:103,275:85,300:71,325:60,350:51},50:{150:284,175:226,200:182,225:149,250:123,275:102,300:86,325:73,350:62,375:53,400:46}}};\r\nconst MASTER_FRIGO={nombre:'Master-Frigo',espesores:[60,80,100,120,150],pesos:{60:9.94,80:10.72,100:11.50,120:12.28,150:13.45},tabla:{60:{150:413,175:332,200:272,225:225,250:188,275:159,300:135,325:115,350:99,375:85,400:74,450:57},80:{175:471,200:391,225:328,250:278,275:237,300:204,325:176,350:153,375:133,400:117,450:91},100:{225:433,250:371,275:319,300:277,325:241,350:211,375:186,400:164,450:129,500:103},120:{250:466,275:404,300:352,325:309,350:272,375:241,400:214,450:171,500:138},150:{275:533,300:469,325:415,350:368,375:328,400:294,450:237,500:194}}};\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ ESTADO\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nvar S={\r\n  cat:'perf', fam:'minionda', panelTipo:'masterC',\r\n  prod:null, altC:null, espC:null,\r\n  espesor:null, vanos:'1', luz:null, posicion:'A', sobrecarga:0,\r\n  sepP:null, sepC:null,\r\n  panelEsp:null, panelDist:null,\r\n  resultado:null\r\n};\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ DARK MODE\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction setThemeIcons(isDark){\r\n  ['iDk','mDk'].forEach(function(id){\r\n    var el=document.getElementById(id);\r\n    if(el)el.style.display=isDark?'none':'';\r\n  });\r\n  ['iLt','mLt'].forEach(function(id){\r\n    var el=document.getElementById(id);\r\n    if(el)el.style.display=isDark?'':'none';\r\n  });\r\n}\r\nfunction toggleDark(){\r\n  var d=document.body.classList.toggle('dark');\r\n  sessionStorage.setItem('dk',d?'1':'0');\r\n  setThemeIcons(d);\r\n}\r\nfunction scrollToCalc(e){\r\n  if(e)e.preventDefault();\r\n  var el=document.getElementById('calc-start');\r\n  if(el)el.scrollIntoView({behavior:'smooth',block:'start'});\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ CATEGOR\u00cdA\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction switchCat(c){\r\n  S.cat=c;\r\n  document.getElementById('t-perf').classList.toggle('active',c==='perf');\r\n  document.getElementById('t-sw').classList.toggle('active',c==='sw');\r\n  document.getElementById('s-perf').style.display=c==='perf'?'':'none';\r\n  document.getElementById('s-sw').style.display=c==='sw'?'':'none';\r\n  ocultarRes();\r\n  if(c==='sw')evaluarSW();\r\n  if(c==='perf'&&isSheetFamily(S.fam))evaluarBac nervur\u00e9();\r\n  if(c==='perf'&&!isSheetFamily(S.fam))evaluarCorrea();\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ FAMILIA PERFILES\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction isSheetFamily(f){return f==='minionda'||f==='trapezoidal';}\r\nfunction getSheetProfiles(){\r\n  return PERFILES_CHAPA.filter(function(p){return p.fam===S.fam;});\r\n}\r\nfunction switchFam(f){\r\n  S.fam=f;\r\n  S.altC=null;S.espC=null;S.sepP=null;S.sepC=null;S.prod=null;S.espesor=null;S.luz=null;S.posicion='A';\r\n  document.getElementById('luz').disabled=false;\r\n  document.getElementById('luz').placeholder='Ej: 1.50';\r\n  document.getElementById('luz').value='';\r\n  document.getElementById('f-mo').style.display=isSheetFamily(f)?'':'none';\r\n  document.getElementById('f-cc').style.display=f==='correaC'?'':'none';\r\n  document.getElementById('f-cz').style.display=f==='correaZ'?'':'none';\r\n  document.getElementById('t-mo').classList.toggle('active',f==='minionda');\r\n  var ttr=document.getElementById('t-tr');if(ttr)ttr.classList.toggle('active',f==='trapezoidal');\r\n  var ttr=document.getElementById('t-tr');if(ttr)ttr.classList.toggle('active',f==='trapezoidal');\r\n  document.getElementById('t-cc').classList.toggle('active',f==='correaC');\r\n  document.getElementById('t-cz').classList.toggle('active',f==='correaZ');\r\n  document.getElementById('pm-mo').style.display=isSheetFamily(f)?'':'none';\r\n  document.getElementById('pm-co').style.display=isSheetFamily(f)?'none':'';\r\n  ocultarRes();\r\n  if(isSheetFamily(f)){renderBac nervur\u00e9();renderEspMO();evaluarBac nervur\u00e9();}\r\n  else evaluarCorrea();\r\n  actualizarProg();\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ MINIONDA\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction renderBac nervur\u00e9(){\r\n  var list=document.getElementById('prodList');list.innerHTML='';\r\n  getSheetProfiles().forEach(function(p){\r\n    var d=document.createElement('div');d.className='prod';d.id='pi_'+p.id;\r\n    d.onclick=function(){selProd(p.id);};\r\n    d.innerHTML='<div class=\"prod-name\">'+esc(p.nombre)+'<\/div><div class=\"prod-sub\">'+esc(p.tipo)+'<\/div><div class=\"prod-tags\"><span class=\"tag\">H'+p.alturaOnda+'<\/span><span class=\"tag\">'+p.ancho+'mm \u00fatil<\/span><\/div>';\r\n    d.innerHTML='<div class=\"prod-name\">'+esc(p.nombre)+'<\/div><div class=\"prod-sub\">'+esc(p.tipo)+'<\/div><div class=\"prod-tags\"><span class=\"tag\">H'+p.alturaOnda+'<\/span><span class=\"tag\">'+p.ancho+'mm util<\/span>'+(p.calculable?'<span class=\"tag\">Tabla real<\/span>':'<span class=\"tag\">Ficha tecnica<\/span>')+'<\/div>';\r\n    list.appendChild(d);\r\n  });\r\n  renderEspMO();\r\n}\r\nfunction getBac nervur\u00e9TablaByState(p){\r\n  if(!p)return null;\r\n  if(p.hasPosition)return ((p.tabla[S.posicion]||{})[S.vanos])||null;\r\n  return p.tabla[S.vanos]||null;\r\n}\r\nfunction selProd(id){\r\n  S.prod=PERFILES_CHAPA.find(function(p){return p.id===id;});\r\n  S.espesor=null;\r\n  document.querySelectorAll('.prod').forEach(function(c){c.classList.remove('sel');});\r\n  document.getElementById('pi_'+id).classList.add('sel');\r\n  document.getElementById('alPerfil').classList.remove('show');\r\n  document.getElementById('luz').max=S.prod.maxLuz;\r\n  document.getElementById('posGrp').style.display=S.prod.hasPosition?'':'none';\r\n  S.posicion='A';\r\n  document.getElementById('posicion').value='A';\r\n  document.getElementById('luz').max=S.prod.maxLuz||'';\r\n  document.getElementById('luz').disabled=!S.prod.calculable;\r\n  document.getElementById('luz').placeholder=S.prod.calculable?'Ej: 1.50':'No disponible en esta ficha';\r\n  if(!S.prod.calculable)document.getElementById('luz').value='';\r\n  document.getElementById('posGrp').style.display=S.prod.calculable&&S.prod.hasPosition?'':'none';\r\n  renderEspMO();\r\n  evaluarBac nervur\u00e9();\r\n  actualizarProg();\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ CORREA \u2014 MOTOR REACTIVO\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction renderEspMO(){\r\n  var c=document.getElementById('phMO');if(!c)return;\r\n  c.innerHTML='';\r\n  if(!S.prod){\r\n    var empty=document.createElement('div');\r\n    empty.className='pill pdis';\r\n    empty.textContent='Selecciona un perfil arriba';\r\n    c.appendChild(empty);\r\n    return;\r\n  }\r\n  S.prod.espesores.forEach(function(e){\r\n    var b=document.createElement('div');\r\n    b.className='pill';\r\n    b.textContent=e+' mm';\r\n    b.id='pMO'+String(e).replace('.','_');\r\n    b.onclick=function(){toggleEspMO(e);};\r\n    c.appendChild(b);\r\n  });\r\n}\r\nfunction toggleEspMO(e){\r\n  if(!S.prod)return;\r\n  S.espesor=(S.espesor===e)?null:e;\r\n  evaluarBac nervur\u00e9();\r\n  actualizarProg();\r\n}\r\nfunction evaluarBac nervur\u00e9(){\r\n  var hint=document.getElementById('hintMO');\r\n  var hintT=document.getElementById('hintMOt');\r\n  if(!hint||!hintT)return;\r\n  S.posicion=document.getElementById('posicion').value||'A';\r\n  if(!S.prod){\r\n    renderEspMO();\r\n    hint.style.display='none';\r\n    ocultarRes();\r\n    return;\r\n  }\r\n  if(!S.prod.calculable){\r\n    S.prod.espesores.forEach(function(e){\r\n      var el=document.getElementById('pMO'+String(e).replace('.','_'));if(!el)return;\r\n      el.classList.toggle('active',S.espesor===e);\r\n      el.removeAttribute('data-badge');\r\n      el.classList.remove('pill-ok','pill-warn','pill-fail','pdis');\r\n    });\r\n    hintT.textContent=S.prod.nota||'La ficha tecnica de este perfil no incluye tabla de sobrecargas admisibles.';\r\n    hint.style.display='';\r\n    ocultarRes();\r\n    return;\r\n  }\r\n  var sb=parseFloat(document.getElementById('sobrecarga').value)||0;\r\n  var lv=parseFloat(document.getElementById('luz').value);\r\n  var hasLuz=!isNaN(lv)&&lv>0;\r\n  var inRange=hasLuz&&lv>=0.5&&lv<=S.prod.maxLuz;\r\n  var tp=getBac nervur\u00e9TablaByState(S.prod)||{};\r\n\r\n  S.prod.espesores.forEach(function(e){\r\n    var el=document.getElementById('pMO'+String(e).replace('.','_'));if(!el)return;\r\n    el.classList.toggle('active',S.espesor===e);\r\n    el.removeAttribute('data-badge');\r\n    el.classList.remove('pill-ok','pill-warn','pill-fail','pdis');\r\n    if(S.espesor===e)return;\r\n    if(!inRange){\r\n      if(S.prod.pesos&&S.prod.pesos[String(e)]!==undefined)el.setAttribute('data-badge',String(S.prod.pesos[String(e)]).replace('.',',')+' kg\/m\u00b2');\r\n      return;\r\n    }\r\n    var fila=tp[String(e)];\r\n    if(!fila)return;\r\n    var cap=lerp(fila,lv);\r\n    if(sb>0){\r\n      if(cap>=sb*1.2){el.setAttribute('data-badge','\u2713 '+cap+' kg\/m\u00b2');el.classList.add('pill-ok');}\r\n      else if(cap>=sb){el.setAttribute('data-badge','~ '+cap+' kg\/m\u00b2');el.classList.add('pill-warn');}\r\n      else{el.setAttribute('data-badge','\u2717 '+cap);el.classList.add('pill-fail');}\r\n    } else {\r\n      el.setAttribute('data-badge',cap+' kg\/m\u00b2');\r\n    }\r\n  });\r\n\r\n  if(!hasLuz){\r\n    hintT.textContent='Indica la luz libre para comparar espesores y ver su capacidad.';\r\n    hint.style.display='';\r\n    ocultarRes();\r\n    return;\r\n  }\r\n  if(!inRange){\r\n    hintT.textContent='La luz debe estar entre 0,5 m y '+S.prod.maxLuz+' m para esta chapa.';\r\n    hint.style.display='';\r\n    ocultarRes();\r\n    return;\r\n  }\r\n  if(!S.espesor){\r\n    hintT.textContent=sb>0?'Choisissez l\\'\u00e9paisseur\u00a0: les pastilles indiquent si elles satisfont votre charge de r\u00e9f\u00e9rence.':'Choisissez l\\'\u00e9paisseur\u00a0: les pastilles affichent la charge admissible pour cette port\u00e9e.';\r\n    hint.style.display='';\r\n    ocultarRes();\r\n    return;\r\n  }\r\n\r\n  hintT.textContent='Combinaci\u00f3n lista para calcular con '+S.espesor+' mm'+(S.prod.hasPosition?' en posici\u00f3n '+S.posicion:'')+'.';\r\n  hint.style.display='';\r\n  S.luz=lv;\r\n  S.sobrecarga=sb;\r\n  hintT.textContent='Resultado actualizado automaticamente con '+S.espesor+' mm'+(S.prod.hasPosition?' en posicion '+S.posicion:'')+'.';\r\n  var filaSel=tp[String(S.espesor)];\r\n  if(!filaSel){ocultarRes();return;}\r\n  var capSel=lerp(filaSel,lv);\r\n  S.resultado={capAdmisible:capSel};\r\n  renderResBac nervur\u00e9(S.prod,capSel,sb,tp,S.espesor);\r\n}\r\nfunction getD(){return S.fam==='correaC'?CORREAS_C:CORREAS_Z;}\r\nfunction getT(){return S.fam==='correaC'?'C':'Z';}\r\n\r\n\/\/ \u00bfExiste al menos un valor en la tabla con estas restricciones? null=cualquiera\r\nfunction tieneValor(alt,esp,sp,sc){\r\n  var D=getD();\r\n  var alturas=alt?[alt]:D.alturas;\r\n  var espesores=esp?[esp]:D.espesores;\r\n  var porticos=sp?[sp]:[4,5,6,7,8,9];\r\n  var correas=sc?[sc]:[1.25,1.50,1.75,2.00];\r\n  for(var ai=0;ai<alturas.length;ai++)\r\n    for(var ei=0;ei<espesores.length;ei++)\r\n      for(var pi=0;pi<porticos.length;pi++)\r\n        for(var ci=0;ci<correas.length;ci++){\r\n          var tbl=D.tabla[alturas[ai]];\r\n          if(!tbl)continue;\r\n          var te=tbl[espesores[ei]];\r\n          if(!te)continue;\r\n          var tp=te[porticos[pi]];\r\n          if(!tp)continue;\r\n          if(tp[correas[ci]]!==undefined)return true;\r\n        }\r\n  return false;\r\n}\r\n\r\nfunction initCP(t){\r\n  var D=t==='C'?CORREAS_C:CORREAS_Z;\r\n  var cA=document.getElementById('phA'+t);cA.innerHTML='';\r\n  D.alturas.forEach(function(h){\r\n    var b=document.createElement('div');b.className='pill';b.textContent=h;\r\n    b.id='pA'+t+h;b.onclick=function(){toggleAlt(t,h);};cA.appendChild(b);\r\n  });\r\n  var cE=document.getElementById('phE'+t);cE.innerHTML='';\r\n  D.espesores.forEach(function(e){\r\n    var b=document.createElement('div');b.className='pill';b.textContent=e+' mm';\r\n    b.id='pE'+t+String(e).replace('.','_');b.onclick=function(){toggleEsp(t,e);};cE.appendChild(b);\r\n  });\r\n}\r\n\r\nfunction toggleAlt(t,h){\r\n  if(S.fam!=='correa'+t)return;\r\n  S.altC=(S.altC===h)?null:h;\r\n  evaluarCorrea();actualizarProg();\r\n}\r\nfunction toggleEsp(t,e){\r\n  if(S.fam!=='correa'+t)return;\r\n  S.espC=(S.espC===e)?null:e;\r\n  evaluarCorrea();actualizarProg();\r\n}\r\nfunction setV(v){\r\n  S.vanos=v;\r\n  ['1','2','3'].forEach(function(n){document.getElementById('vp'+n).classList.toggle('active',n===v);});\r\n  if(S.fam==='minionda')evaluarBac nervur\u00e9();\r\n  actualizarProg();\r\n}\r\nfunction setSep(v){\r\n  S.sepP=(S.sepP===v)?null:v;\r\n  evaluarCorrea();actualizarProg();\r\n}\r\nfunction setSC(v){\r\n  S.sepC=(S.sepC===v)?null:v;\r\n  evaluarCorrea();actualizarProg();\r\n}\r\n\r\nfunction evaluarCorrea(){\r\n  var D=getD();var t=getT();\r\n  var sb=parseFloat(document.getElementById('sobrecarga').value)||0;\r\n\r\n  \/\/ \u2500\u2500 HELPER: valor m\u00e1ximo para una combinaci\u00f3n de restricciones \u2500\u2500\r\n  \/\/ Devuelve el valor de la celda si la combinaci\u00f3n es \u00fanica, o el m\u00e1x si hay varias\r\n  function maxValor(alt,esp,sp,sc){\r\n    var alturas=alt?[alt]:D.alturas;\r\n    var espesores=esp?[esp]:D.espesores;\r\n    var porticos=sp?[sp]:[4,5,6,7,8,9];\r\n    var correas=sc?[sc]:[1.25,1.50,1.75,2.00];\r\n    var max=null;\r\n    for(var ai=0;ai<alturas.length;ai++)\r\n      for(var ei=0;ei<espesores.length;ei++)\r\n        for(var pi=0;pi<porticos.length;pi++)\r\n          for(var ci=0;ci<correas.length;ci++){\r\n            var v=(D.tabla[alturas[ai]]||{});\r\n            v=(v[espesores[ei]]||{});\r\n            v=(v[porticos[pi]]||{});\r\n            v=v[correas[ci]];\r\n            if(v!==undefined&&(max===null||v>max))max=v;\r\n          }\r\n    return max; \/\/ null si no hay dato\r\n  }\r\n\r\n  \/\/ \u2500\u2500 ALTURAS: filtrar por espC+sepP+sepC, y por carga si la hay \u2500\u2500\r\n  D.alturas.forEach(function(h){\r\n    var el=document.getElementById('pA'+t+h);if(!el)return;\r\n    var maxCap=maxValor(h,S.espC,S.sepP,S.sepC);\r\n    var tieneDato=maxCap!==null;\r\n    var cumpleCarga=sb<=0||maxCap===null||(maxCap>=sb);\r\n    var isActive=S.altC===h;\r\n    var disabled=!tieneDato&&!isActive;\r\n\r\n    el.classList.toggle('active',isActive);\r\n    el.classList.toggle('pdis',disabled);\r\n    \/\/ Quitar badges anteriores\r\n    el.removeAttribute('data-badge');el.classList.remove('pill-ok','pill-warn','pill-fail');\r\n    \/\/ A\u00f1adir badge de valor si sepP+sepC est\u00e1n fijos y NO hay altura elegida a\u00fan\r\n    if(!isActive&&tieneDato&&S.sepP&&S.sepC&&!S.altC){\r\n      if(sb>0){\r\n        if(maxCap>=sb*1.2){el.setAttribute('data-badge','\u2713');el.classList.add('pill-ok');}\r\n        else if(maxCap>=sb){el.setAttribute('data-badge','~');el.classList.add('pill-warn');}\r\n        else{el.setAttribute('data-badge','\u2717');el.classList.add('pill-fail');}\r\n      }\r\n    }\r\n  });\r\n\r\n  \/\/ \u2500\u2500 ESPESORES: filtrar por altC+sepP+sepC, y por carga \u2500\u2500\r\n  D.espesores.forEach(function(e){\r\n    var el=document.getElementById('pE'+t+String(e).replace('.','_'));if(!el)return;\r\n    var maxCap=maxValor(S.altC,e,S.sepP,S.sepC);\r\n    var tieneDato=maxCap!==null;\r\n    var isActive=S.espC===e;\r\n    var disabled=!tieneDato&&!isActive;\r\n\r\n    el.classList.toggle('active',isActive);\r\n    el.classList.toggle('pdis',disabled);\r\n    el.removeAttribute('data-badge');el.classList.remove('pill-ok','pill-warn','pill-fail');\r\n    \/\/ Badge de capacidad si sepP+sepC+altC fijos y no hay espesor elegido\r\n    if(!isActive&&tieneDato&&S.sepP&&S.sepC&&S.altC&&!S.espC){\r\n      if(sb>0){\r\n        if(maxCap>=sb*1.2){el.setAttribute('data-badge','\u2713 '+maxCap+' kg\/m\u00b2');el.classList.add('pill-ok');}\r\n        else if(maxCap>=sb){el.setAttribute('data-badge','~ '+maxCap+' kg\/m\u00b2');el.classList.add('pill-warn');}\r\n        else{el.setAttribute('data-badge','\u2717 '+maxCap);el.classList.add('pill-fail');}\r\n      } else {\r\n        el.setAttribute('data-badge',maxCap+' kg\/m\u00b2');\r\n      }\r\n    }\r\n  });\r\n\r\n  \/\/ \u2500\u2500 P\u00d3RTICOS \u2500\u2500\r\n  [4,5,6,7,8,9].forEach(function(p){\r\n    var el=document.getElementById('sp'+p);if(!el)return;\r\n    var ok=tieneValor(S.altC,S.espC,p,S.sepC);\r\n    el.classList.toggle('active',S.sepP===p);\r\n    el.classList.toggle('sdis',!ok&&S.sepP!==p);\r\n  });\r\n\r\n  \/\/ \u2500\u2500 SEP CORREAS \u2500\u2500\r\n  var scids={1.25:'sc125',1.50:'sc150',1.75:'sc175',2.00:'sc200'};\r\n  [1.25,1.50,1.75,2.00].forEach(function(s){\r\n    var el=document.getElementById(scids[s]);if(!el)return;\r\n    var ok=tieneValor(S.altC,S.espC,S.sepP,s);\r\n    var isActive=S.sepC!==null&&Math.abs(S.sepC-s)<0.001;\r\n    el.classList.toggle('active',isActive);\r\n    el.classList.toggle('sdis',!ok&&!isActive);\r\n  });\r\n\r\n  \/\/ \u2500\u2500 HINT \u2500\u2500\r\n  var hint=document.getElementById('hintC');\r\n  var hintT=document.getElementById('hintCt');\r\n  var falta=[];\r\n  if(!S.altC)falta.push('altura');\r\n  if(!S.espC)falta.push('espesor');\r\n  if(!S.sepP)falta.push('sep. p\u00f3rticos');\r\n  if(!S.sepC)falta.push('sep. correas');\r\n  if(S.altC||S.espC||S.sepP||S.sepC){\r\n    if(falta.length===0){\r\n      hintT.textContent='\u2713 Todo listo \u2014 resultado calculado autom\u00e1ticamente.';\r\n    } else if(S.sepP&&S.sepC&&falta.indexOf('altura')>=0&&falta.indexOf('espesor')>=0){\r\n      hintT.textContent='Choisissez hauteur et \u00e9paisseur'+(sb>0?' \u2014 celles marqu\u00e9es \u2713 satisfont votre charge de '+sb+' kg\/m\u00b2':' pour voir la charge admissible')+'.';\r\n    } else if(S.sepP&&S.sepC&&S.altC&&falta.indexOf('espesor')>=0){\r\n      hintT.textContent='Choisissez l\\'\u00e9paisseur'+(sb>0?' \u2014 la valeur indiqu\u00e9e est la charge admissible pour votre r\u00e9f\u00e9rence de '+sb+' kg\/m\u00b2':'')+'.';\r\n    } else {\r\n      hintT.textContent='Faltan: '+falta.join(', ')+'.';\r\n    }\r\n    hint.style.display='';\r\n  } else {\r\n    hint.style.display='none';\r\n  }\r\n\r\n  \/\/ \u2500\u2500 AUTOC\u00c1LCULO si completo \u2500\u2500\r\n  if(S.altC&&S.espC&&S.sepP&&S.sepC){\r\n    var tbl=D.tabla[S.altC];\r\n    if(tbl){var te=tbl[S.espC];if(te){var tp=te[S.sepP];if(tp){var cap=tp[S.sepC];if(cap!==undefined){\r\n      S.sobrecarga=sb;S.resultado={capAdmisible:cap};\r\n      renderResCorrea(t,cap,sb,D,tbl);return;\r\n    }}}}\r\n  }\r\n  ocultarRes();\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ PROGRESO\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction actualizarProg(){\r\n  var total,done;\r\n  if(S.cat==='sw'){total=2;done=(S.panelEsp?1:0)+(S.panelDist?1:0);}\r\n  else if(isSheetFamily(S.fam)){\r\n    total=S.prod&&!S.prod.calculable?2:3;\r\n    var luzV=parseFloat(document.getElementById('luz').value)||0;\r\n    done=(S.prod?1:0)+(S.espesor?1:0)+((S.prod&&S.prod.calculable&&luzV>0)?1:0);\r\n  } else {\r\n    total=4;done=(S.altC?1:0)+(S.espC?1:0)+(S.sepP?1:0)+(S.sepC?1:0);\r\n  }\r\n  document.getElementById('progFill').style.width=Math.round(done\/total*100)+'%';\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ PANEL S\u00c1NDWICH\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction initSW(){\r\n  renderPillsSW('masterC');renderPillsSW('masterF');\r\n}\r\nfunction getPanelCfg(t){\r\n  if(t==='masterC')return {data:MASTER_C,suffix:'MC',wrap:'f-mc',tab:'t-mc'};\r\n  if(t==='masterF')return {data:MASTER_F,suffix:'MF',wrap:'f-mf',tab:'t-mf'};\r\n  if(t==='masterModul')return {data:MASTER_MODUL,suffix:'MM',wrap:'f-mm',tab:'t-mm'};\r\n  return {data:MASTER_FRIGO,suffix:'MFR',wrap:'f-mfr',tab:'t-mfr'};\r\n}\r\nfunction renderPillsSW(t){\r\n  var cfg=getPanelCfg(t);\r\n  var D=cfg.data;\r\n  var c=document.getElementById('pes'+cfg.suffix);c.innerHTML='';\r\n  D.espesores.forEach(function(e){\r\n    var b=document.createElement('div');b.className='pill';\r\n    var peso=D.pesos?D.pesos[e]:null;\r\n    b.innerHTML=e+' mm'+(peso?'<span class=\"pill-cap\">'+peso+' kg\/m\u00b2<\/span>':'');\r\n    b.onclick=function(){selEspSW(t,e);};b.id='pSW'+t+e;c.appendChild(b);\r\n  });\r\n}\r\nfunction actualizarPillsSW(){\r\n  \/\/ Cuando hay dist+carga elegidas, colorear espesores\r\n  var sb=parseFloat(document.getElementById('sbSW').value)||0;\r\n  var t=S.panelTipo;\r\n  var D=t==='masterC'?MASTER_C:MASTER_F;\r\n  D.espesores.forEach(function(e){\r\n    var el=document.getElementById('pSW'+t+e);if(!el)return;\r\n    el.removeAttribute('data-badge');el.classList.remove('pill-ok','pill-warn','pill-fail');\r\n    if(el.classList.contains('active'))return;\r\n    if(sb>0&&S.panelDist){\r\n      var cap=D.tabla[e]?D.tabla[e][S.panelDist]:undefined;\r\n      if(cap===undefined)return;\r\n      if(cap>=sb*1.2){el.setAttribute('data-badge','\u2713 '+cap+' kg\/m\u00b2');el.classList.add('pill-ok');}\r\n      else if(cap>=sb){el.setAttribute('data-badge','~ '+cap+' kg\/m\u00b2');el.classList.add('pill-warn');}\r\n      else{el.setAttribute('data-badge','\u2717 '+cap);el.classList.add('pill-fail');}\r\n    } else if(S.panelDist){\r\n      var cap=D.tabla[e]?D.tabla[e][S.panelDist]:undefined;\r\n      if(cap!==undefined)el.setAttribute('data-badge',cap+' kg\/m\u00b2');\r\n    }\r\n  });\r\n}\r\nfunction switchPT(t){\r\n  S.panelTipo=t;S.panelEsp=null;S.panelDist=null;\r\n  document.getElementById('f-mc').style.display=t==='masterC'?'':'none';\r\n  document.getElementById('f-mf').style.display=t==='masterF'?'':'none';\r\n  document.getElementById('t-mc').classList.toggle('active',t==='masterC');\r\n  document.getElementById('t-mf').classList.toggle('active',t==='masterF');\r\n  document.getElementById('grpSW').style.display='none';\r\n  ocultarRes();\r\n}\r\nfunction selEspSW(t,e){\r\n  S.panelEsp=e;S.panelDist=null;\r\n  document.querySelectorAll('#pes'+(t==='masterC'?'MC':'MF')+' .pill').forEach(function(p){p.classList.remove('active');});\r\n  document.getElementById('pSW'+t+e).classList.add('active');\r\n  var D=t==='masterC'?MASTER_C:MASTER_F;\r\n  var dists=Object.keys(D.tabla[e]).map(Number).sort(function(a,b){return a-b;});\r\n  var grid=document.getElementById('swGrid');\r\n  var cols=dists.length<=4?dists.length:dists.length<=6?3:4;\r\n  grid.style.gridTemplateColumns='repeat('+cols+',1fr)';grid.innerHTML='';\r\n  dists.forEach(function(d){\r\n    var b=document.createElement('div');b.className='sb';b.textContent=d+' cm';\r\n    b.onclick=function(){selDistSW(t,e,d);};b.id='sSW'+d;grid.appendChild(b);\r\n  });\r\n  document.getElementById('grpSW').style.display='';\r\n  document.getElementById('hSW').style.display='';\r\n  document.getElementById('hSWt').textContent='Panel '+e+'mm. Distancias disponibles: '+dists[0]+'\u2013'+dists[dists.length-1]+'cm.';\r\n  actualizarProg();ocultarRes();\r\n}\r\nfunction selDistSW(t,e,d){\r\n  S.panelDist=d;\r\n  document.querySelectorAll('#swGrid .sb').forEach(function(b){b.classList.remove('active');});\r\n  var el=document.getElementById('sSW'+d);if(el)el.classList.add('active');\r\n  document.getElementById('hSWt').textContent=d+'cm seleccionado. Pulsa Calcular para ver la sobrecarga.';\r\n  actualizarPillsSW();actualizarProg();\r\n}\r\n\r\n\/\/ Versi\u00f3n reactiva visible para panel s\u00e1ndwich\r\nfunction getSWData(t){return getPanelCfg(t).data;}\r\nfunction getSWDists(t){\r\n  var map={},D=getSWData(t);\r\n  D.espesores.forEach(function(e){\r\n    Object.keys(D.tabla[e]||{}).forEach(function(d){map[d]=1;});\r\n  });\r\n  return Object.keys(map).map(Number).sort(function(a,b){return a-b;});\r\n}\r\nfunction initSW(){\r\n  renderPillsSW('masterC');\r\n  renderPillsSW('masterF');\r\n  renderPillsSW('masterModul');\r\n  renderPillsSW('masterFrigo');\r\n  renderGridSW('masterC');\r\n  evaluarSW();\r\n}\r\nfunction renderGridSW(t){\r\n  var dists=getSWDists(t);\r\n  var grid=document.getElementById('swGrid');\r\n  var cols=dists.length<=4?dists.length:dists.length<=6?3:4;\r\n  grid.style.gridTemplateColumns='repeat('+cols+',1fr)';\r\n  grid.innerHTML='';\r\n  dists.forEach(function(d){\r\n    var b=document.createElement('div');\r\n    b.className='sb';\r\n    b.textContent=d+' cm';\r\n    b.id='sSW'+d;\r\n    b.onclick=function(){toggleDistSW(d);};\r\n    grid.appendChild(b);\r\n  });\r\n}\r\nfunction actualizarPillsSW(){evaluarSW();}\r\nfunction switchPT(t){\r\n  S.panelTipo=t;S.panelEsp=null;S.panelDist=null;\r\n  ['masterC','masterF','masterModul','masterFrigo'].forEach(function(key){\r\n    var cfg=getPanelCfg(key);\r\n    document.getElementById(cfg.wrap).style.display=key===t?'':'none';\r\n    document.getElementById(cfg.tab).classList.toggle('active',key===t);\r\n  });\r\n  renderGridSW(t);\r\n  document.getElementById('hSW').style.display='none';\r\n  ocultarRes();\r\n  evaluarSW();\r\n}\r\nfunction selEspSW(t,e){\r\n  if(S.panelTipo!==t)return;\r\n  S.panelEsp=(S.panelEsp===e)?null:e;\r\n  evaluarSW();\r\n  actualizarProg();\r\n}\r\nfunction toggleDistSW(d){\r\n  S.panelDist=(S.panelDist===d)?null:d;\r\n  evaluarSW();\r\n  actualizarProg();\r\n}\r\nfunction evaluarSW(){\r\n  var D=getSWData(S.panelTipo);\r\n  var sb=parseFloat(document.getElementById('sbSW').value)||0;\r\n  D.espesores.forEach(function(e){\r\n    var el=document.getElementById('pSW'+S.panelTipo+e);if(!el)return;\r\n    var cap=S.panelDist?(D.tabla[e]||{})[S.panelDist]:undefined;\r\n    var active=S.panelEsp===e;\r\n    var available=S.panelDist?cap!==undefined:true;\r\n    el.classList.toggle('active',active);\r\n    el.classList.toggle('pdis',!available&&!active);\r\n    el.removeAttribute('data-badge');el.classList.remove('pill-ok','pill-warn','pill-fail');\r\n    if(active)return;\r\n    if(!S.panelDist){\r\n      if(D.pesos&&D.pesos[e]!==undefined)el.setAttribute('data-badge',String(D.pesos[e]).replace('.',',')+' kg\/m\u00b2');\r\n      return;\r\n    }\r\n    if(cap===undefined)return;\r\n    if(sb>0){\r\n      if(cap>=sb*1.2){el.setAttribute('data-badge','\u2713 '+cap+' kg\/m\u00b2');el.classList.add('pill-ok');}\r\n      else if(cap>=sb){el.setAttribute('data-badge','~ '+cap+' kg\/m\u00b2');el.classList.add('pill-warn');}\r\n      else{el.setAttribute('data-badge','\u2717 '+cap);el.classList.add('pill-fail');}\r\n    } else if(S.panelDist){\r\n      el.setAttribute('data-badge',cap+' kg\/m\u00b2');\r\n    }\r\n  });\r\n  getSWDists(S.panelTipo).forEach(function(d){\r\n    var el=document.getElementById('sSW'+d);if(!el)return;\r\n    var cap=S.panelEsp?(D.tabla[S.panelEsp]||{})[d]:undefined;\r\n    var active=S.panelDist===d;\r\n    var available=S.panelEsp?cap!==undefined:true;\r\n    el.classList.toggle('active',active);\r\n    el.classList.toggle('sdis',!available&&!active);\r\n    el.removeAttribute('data-badge');el.classList.remove('sb-ok','sb-warn','sb-fail');\r\n    if(active||cap===undefined)return;\r\n    if(sb>0&&S.panelEsp){\r\n      if(cap>=sb*1.2){el.setAttribute('data-badge','\u2713');el.classList.add('sb-ok');}\r\n      else if(cap>=sb){el.setAttribute('data-badge','~');el.classList.add('sb-warn');}\r\n      else{el.setAttribute('data-badge','\u2717');el.classList.add('sb-fail');}\r\n    }\r\n  });\r\n  var hint=document.getElementById('hSW');\r\n  var hintT=document.getElementById('hSWt');\r\n  if(S.panelEsp||S.panelDist){\r\n  if(S.panelEsp&&S.panelDist){\r\n      hintT.textContent='Combinaci\u00f3n lista para calcular con '+S.panelEsp+' mm y '+S.panelDist+' cm.';\r\n      hintT.textContent='Resultado actualizado automaticamente con '+S.panelEsp+' mm y '+S.panelDist+' cm.';\r\n    }else if(S.panelDist&&!S.panelEsp){\r\n      hintT.textContent=sb>0?'Choisissez l\\'\u00e9paisseur\u00a0: les pastilles indiquent si elles satisfont la charge de r\u00e9f\u00e9rence.':'Choisissez l\\'\u00e9paisseur\u00a0: les pastilles affichent la charge admissible \u00e0 cette port\u00e9e.';\r\n    }else{\r\n      hintT.textContent='Elige la distancia entre apoyos para completar la combinaci\u00f3n.';\r\n    }\r\n    hint.style.display='';\r\n  }else{\r\n    hint.style.display='none';\r\n  }\r\n  if(S.panelEsp&&S.panelDist){autoCalcSW();return;}\r\n  ocultarRes();\r\n}\r\nfunction autoCalcSW(){\r\n  var D=getSWData(S.panelTipo);\r\n  var cap=(D.tabla[S.panelEsp]||{})[S.panelDist];\r\n  if(cap===undefined){ocultarRes();return;}\r\n  var sb=parseFloat(document.getElementById('sbSW').value)||0;\r\n  S.sobrecarga=sb;S.resultado={capAdmisible:cap};\r\n  var nom=D.nombre+' '+S.panelEsp+'mm';\r\n  var sub='Espesor '+S.panelEsp+'mm \u00b7 '+S.panelDist+'cm entre apoyos \u00b7 2 vanos \u00b7 Chapa 0,50\/0,50mm';\r\n  mostrarBanner(nom,sub,cap,sb);\r\n  var dists=Object.keys(D.tabla[S.panelEsp]).map(Number).sort(function(a,b){return a-b;});\r\n  var tH=document.getElementById('tblH');var tB=document.getElementById('tblB');\r\n  tH.innerHTML='<th>Distancia (cm)<\/th><th>kg\/m\u00b2<\/th>';tB.innerHTML='';\r\n  dists.forEach(function(d){\r\n    var v=D.tabla[S.panelEsp][d];var isSel=d===S.panelDist;\r\n    var tr=document.createElement('tr');if(isSel)tr.classList.add('rsel');\r\n    var vc=v;\r\n    if(isSel)vc='<span class=\"chi\">'+v+'<\/span>';\r\n    else if(sb>0)vc='<span class=\"'+(sb<=v*0.8?'vok':sb<=v?'vwarn':'vfail')+'\">'+v+'<\/span>';\r\n    tr.innerHTML='<td>'+d+'cm<\/td><td style=\"text-align:right\">'+vc+'<\/td>';tB.appendChild(tr);\r\n  });\r\n  document.getElementById('tblTit').textContent=D.nombre+' '+S.panelEsp+'mm \u00e2\u20ac\u201d sobrecargas (kg\/m\u00b2)';\r\n  document.getElementById('tblNota').textContent='2 vanos \u00b7 L\/200 \u00b7 chapa 0,50\/0,50mm';\r\n  document.getElementById('notaTec').textContent='L\/200 \u00b7 Sobrecargas no mayoradas \u00b7 EN14509';\r\n  showTabla();\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ CALCULAR\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction onSb(){\r\n  S.sobrecarga=parseFloat(document.getElementById('sobrecarga').value)||0;\r\n  \/\/ Si hay correa activa, re-evaluar para actualizar badges\r\n  if(S.fam==='correaC'||S.fam==='correaZ') evaluarCorrea();\r\n  if(isSheetFamily(S.fam)) evaluarBac nervur\u00e9();\r\n  \/\/ Si ya hay resultado, actualizar el banner\r\n  if(S.resultado) mostrarBanner(document.getElementById('rNom').textContent,document.getElementById('rSub').textContent,S.resultado.capAdmisible,S.sobrecarga);\r\n}\r\n\r\nfunction calcular(){\r\n  var btn=document.querySelector('#s-perf .btn-p');\r\n  btn.disabled=true;document.getElementById('btnTxt').textContent='Calculando\u2026';btn.style.opacity='0.7';\r\n  setTimeout(function(){\r\n    btn.disabled=false;document.getElementById('btnTxt').textContent='Calculer la charge admissible';btn.style.opacity='';\r\n    var sb=parseFloat(document.getElementById('sobrecarga').value)||0;S.sobrecarga=sb;\r\n    var alPa=document.getElementById('alParams');var alPf=document.getElementById('alPerfil');\r\n    if(isSheetFamily(S.fam)){\r\n      if(!S.prod){alPf.classList.add('show');return;}alPf.classList.remove('show');\r\n      if(!S.prod.calculable){alPa.classList.add('show');alPa.textContent='La ficha tecnica de este perfil no incluye tabla de sobrecargas admisibles.';ocultarRes();return;}\r\n      S.posicion=document.getElementById('posicion').value||'A';\r\n      var esp=S.espesor;\r\n      var lv=parseFloat(document.getElementById('luz').value);\r\n      if(!esp||isNaN(lv)||lv<=0){alPa.classList.add('show');alPa.textContent='\u26a0 Selecciona espesor e introduce la luz libre.';return;}\r\n      alPa.classList.remove('show');\r\n      var p=S.prod;var tp=getBac nervur\u00e9TablaByState(p);\r\n      if(!tp||!tp[String(esp)]){alPa.classList.add('show');alPa.textContent='\u26a0 Sin datos para esa combinaci\u00f3n.';return;}\r\n      var fila=tp[String(esp)];\r\n      if(lv<0.5||lv>p.maxLuz){alPa.classList.add('show');alPa.textContent='\u26a0 Luz fuera de rango (0.5\u2013'+p.maxLuz+'m).';return;}\r\n      var cap=lerp(fila,lv);S.espesor=esp;S.luz=lv;S.resultado={capAdmisible:cap};\r\n      renderResBac nervur\u00e9(p,cap,sb,tp,esp);\r\n    } else {\r\n      if(!S.altC||!S.espC){alPa.classList.add('show');alPa.textContent='\u26a0 Selecciona altura y espesor.';return;}\r\n      if(!S.sepP){alPa.classList.add('show');alPa.textContent='\u26a0 Selecciona sep. de p\u00f3rticos.';return;}\r\n      if(!S.sepC){alPa.classList.add('show');alPa.textContent='\u26a0 Selecciona sep. de correas.';return;}\r\n      alPa.classList.remove('show');\r\n      var D=getD();var L=getT();\r\n      var tA=D.tabla[S.altC];if(!tA){alPa.classList.add('show');alPa.textContent='\u26a0 Sin datos.';return;}\r\n      var tE=tA[S.espC];if(!tE){alPa.classList.add('show');alPa.textContent='\u26a0 Sin datos.';return;}\r\n      var tP=tE[S.sepP];if(!tP){alPa.classList.add('show');alPa.textContent='\u26a0 Sin datos para esa sep. p\u00f3rticos.';return;}\r\n      var cap=tP[S.sepC];if(cap===undefined){alPa.classList.add('show');alPa.textContent='\u26a0 Sin datos para esa combinaci\u00f3n exacta.';return;}\r\n      S.resultado={capAdmisible:cap};\r\n      renderResCorrea(L,cap,sb,D,tA);\r\n    }\r\n  },350);\r\n}\r\n\r\nfunction calcularSW(){\r\n  var al=document.getElementById('alSW');\r\n  if(!S.panelEsp){al.classList.add('show');al.textContent='\u26a0 Selecciona espesor del panel.';return;}\r\n  if(!S.panelDist){al.classList.add('show');al.textContent='\u26a0 Selecciona la distancia entre apoyos.';return;}\r\n  al.classList.remove('show');\r\n  autoCalcSW();\r\n}\r\n\r\nfunction lerp(datos,luz){\r\n  var keys=Object.keys(datos).map(Number).sort(function(a,b){return a-b;});\r\n  if(luz<=keys[0])return datos[keys[0]];\r\n  if(luz>=keys[keys.length-1])return datos[keys[keys.length-1]];\r\n  for(var i=0;i<keys.length-1;i++){\r\n    if(luz>=keys[i]&&luz<=keys[i+1]){\r\n      var t=(luz-keys[i])\/(keys[i+1]-keys[i]);\r\n      return Math.round(datos[keys[i]]+t*(datos[keys[i+1]]-datos[keys[i]]));\r\n    }\r\n  }\r\n  return datos[keys[0]];\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ RENDER RESULTADOS\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction ocultarRes(){\r\n  S.resultado=null;\r\n  document.getElementById('resultBanner').classList.remove('show');\r\n  document.getElementById('tablaCard').style.display='none';\r\n  document.getElementById('notaTec').style.display='none';\r\n  document.getElementById('accCard').style.display='none';\r\n}\r\nfunction mostrarBanner(nom,sub,cap,req){\r\n  var b=document.getElementById('resultBanner');b.classList.remove('show');void b.offsetWidth;b.classList.add('show');\r\n  document.getElementById('rNom').textContent=nom;document.getElementById('rSub').textContent=sub;\r\n  var mg=req>0?Math.round(((cap-req)\/req)*100):null;\r\n  var rC=document.getElementById('rCap');var rR=document.getElementById('rRef');\r\n  var rM=document.getElementById('rMar');var rB=document.getElementById('rBadge');\r\n  rC.textContent=cap;rR.textContent=req>0?req:'\u2014';\r\n  if(req<=0){rM.textContent='\u2014';rM.className='met-v';rC.className='met-v';rB.className='rbadge bneut';rB.textContent='Sin carga de referencia';}\r\n  else if(req<=cap*0.8){rM.textContent='+'+mg+'%';rM.className='met-v ok';rC.className='met-v ok';rR.className='met-v';rB.className='rbadge bok';rB.innerHTML='\u2713 &nbsp;Perfil ADECUADO \u2014 margen holgado';}\r\n  else if(req<=cap){rM.textContent='+'+mg+'%';rM.className='met-v warn';rC.className='met-v warn';rR.className='met-v';rB.className='rbadge bwarn';rB.innerHTML='\u26a0 &nbsp;Pr\u00f3ximo al l\u00edmite \u2014 consulta t\u00e9cnico';}\r\n  else{rM.textContent=mg+'%';rM.className='met-v fail';rC.className='met-v fail';rR.className='met-v';rB.className='rbadge bfail';rB.innerHTML='\u2717 &nbsp;Capacidad INSUFICIENTE';}\r\n  document.getElementById('notaTec').style.display='';document.getElementById('accCard').style.display='';\r\n}\r\nfunction showTabla(){\r\n  var tc=document.getElementById('tablaCard');tc.classList.remove('ra');void tc.offsetWidth;tc.style.display='';tc.classList.add('ra');\r\n}\r\nfunction renderResBac nervur\u00e9(p,cap,req,tp,espSel){\r\n  var sub=p.tipo+' \u00b7 H'+p.alturaOnda+'mm \u00b7 e'+espSel+'mm'+(p.hasPosition?' \u00b7 Pos. '+S.posicion:'')+' \u00b7 '+S.vanos+' vano(s) \u00b7 L='+S.luz+'m';\r\n  mostrarBanner(p.nombre,sub,cap,req);\r\n  var luces=[];var seen={};p.espesores.forEach(function(e){\r\n    var f=tp[String(e)];if(!f)return;Object.keys(f).map(Number).forEach(function(l){if(!seen[l]){seen[l]=1;luces.push(l);}});\r\n  });luces.sort(function(a,b){return a-b;});\r\n  var tH=document.getElementById('tblH');var tB=document.getElementById('tblB');\r\n  tH.innerHTML='<th>Espesor<\/th>'+luces.map(function(l){return '<th>'+l+'m<\/th>';}).join('');tB.innerHTML='';\r\n  p.espesores.forEach(function(e){\r\n    var fila=tp[String(e)];if(!fila)return;var isSel=String(e)===String(espSel);\r\n    var tr=document.createElement('tr');if(isSel)tr.classList.add('rsel');\r\n    tr.innerHTML='<td>'+e+'mm<\/td>'+luces.map(function(l){\r\n      var v=fila[l];if(v===undefined)return'<td><span class=\"cd\">\u2014<\/span><\/td>';\r\n      if(isSel&&Math.abs(l-S.luz)<0.01)return'<td><span class=\"chi\">'+v+'<\/span><\/td>';\r\n      var c='';if(isSel&&req>0)c=req<=v*0.8?'vok':req<=v?'vwarn':'vfail';\r\n      return'<td class=\"'+c+'\">'+v+'<\/td>';\r\n    }).join('');tB.appendChild(tr);\r\n  });\r\n  document.getElementById('tblTit').textContent=p.nombre+' \u00b7 '+S.vanos+' vano(s) \u2014 sobrecargas (kg\/m\u00b2)';\r\n  document.getElementById('tblNota').textContent='Vano '+S.vanos+' \u00b7 L\/200 \u00b7 sobrecargas no mayoradas';\r\n  document.getElementById('notaTec').textContent='\ud83d\udccb L\/200 \u00b7 Sobrecargas no mayoradas \u00b7 Magon Aceros';\r\n  showTabla();S.resultado.tp=tp;S.prod=p;\r\n}\r\nfunction renderResCorrea(L,cap,req,D,tA){\r\n  var nom='Correa MG '+L+'-'+S.altC;\r\n  var sub=L+'-'+S.altC+' \u00b7 e'+S.espC+'mm \u00b7 P\u00f3rtico '+S.sepP+'m \u00b7 Correa c\/'+S.sepC+'m \u00b7 '+S.vanos+' vano(s)';\r\n  mostrarBanner(nom,sub,cap,req);\r\n  var tH=document.getElementById('tblH');var tB=document.getElementById('tblB');\r\n  tH.innerHTML='<th>Espesor<\/th>'+[1.25,1.50,1.75,2.00].map(function(sc){return'<th>'+sc+'m<\/th>';}).join('');tB.innerHTML='';\r\n  D.espesores.forEach(function(e){\r\n    var tE=tA[e];if(!tE)return;var tP=tE[S.sepP];var isSel=e===S.espC;\r\n    var tr=document.createElement('tr');if(isSel)tr.classList.add('rsel');\r\n    tr.innerHTML='<td>'+e+'mm<\/td>'+[1.25,1.50,1.75,2.00].map(function(sc){\r\n      if(!tP||tP[sc]===undefined)return'<td><span class=\"cd\">\u2014<\/span><\/td>';\r\n      var v=tP[sc];\r\n      if(isSel&&sc===S.sepC)return'<td><span class=\"chi\">'+v+'<\/span><\/td>';\r\n      var c='';if(isSel&&req>0)c=req<=v*0.8?'vok':req<=v?'vwarn':'vfail';\r\n      return'<td class=\"'+c+'\">'+v+'<\/td>';\r\n    }).join('');tB.appendChild(tr);\r\n  });\r\n  document.getElementById('tblTit').textContent='Correa '+L+'-'+S.altC+' \u00b7 P\u00f3rticos '+S.sepP+'m \u00b7 '+S.vanos+' vano(s) \u2014 sobrecargas (kg\/m\u00b2)';\r\n  document.getElementById('tblNota').textContent='Sep. p\u00f3rticos '+S.sepP+'m \u00b7 L\/200 \u00b7 no mayoradas';\r\n  document.getElementById('notaTec').textContent='\ud83d\udccb L\/200 \u00b7 Sobrecargas no mayoradas \u00b7 Magon Aceros';\r\n  showTabla();\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ MODAL & PDF\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nconst COUNTRIES=['Espana','Afganistan','Albania','Alemania','Andorra','Angola','Antigua y Barbuda','Arabia Saudi','Argelia','Argentina','Armenia','Australia','Austria','Azerbaiyan','Bahamas','Bangladesh','Barbados','Barein','Belgica','Belice','Benin','Bielorrusia','Birmania','Bolivia','Bosnia y Herzegovina','Botsuana','Brasil','Brunei','Bulgaria','Burkina Faso','Burundi','Butan','Cabo Verde','Camboya','Camerun','Canada','Catar','Chad','Chile','China','Chipre','Colombia','Comoras','Corea del Norte','Corea del Sur','Costa de Marfil','Costa Rica','Croacia','Cuba','Dinamarca','Dominica','Ecuador','Egipto','El Salvador','Emiratos Arabes Unidos','Eritrea','Eslovaquia','Eslovenia','Estados Unidos','Estonia','Esuatini','Etiopia','Filipinas','Finlandia','Fiyi','Francia','Gabon','Gambia','Georgia','Ghana','Granada','Grecia','Guatemala','Guinea','Guinea-Bisau','Guinea Ecuatorial','Guyana','Haiti','Honduras','Hungria','India','Indonesia','Irak','Iran','Irlanda','Islandia','Israel','Italia','Jamaica','Japon','Jordania','Kazajistan','Kenia','Kirguistan','Kiribati','Kuwait','Laos','Lesoto','Letonia','Libano','Liberia','Libia','Liechtenstein','Lituania','Luxemburgo','Macedonia del Norte','Madagascar','Malasia','Malaui','Maldivas','Mali','Malta','Marruecos','Mauricio','Mauritania','Mexico','Micronesia','Moldavia','Monaco','Mongolia','Montenegro','Mozambique','Namibia','Nauru','Nepal','Nicaragua','Niger','Nigeria','Noruega','Nueva Zelanda','Oman','Paises Bajos','Pakistan','Palaos','Panama','Papua Nueva Guinea','Paraguay','Peru','Polonia','Portugal','Reino Unido','Republica Centroafricana','Republica Checa','Republica Democratica del Congo','Republica Dominicana','Republica del Congo','Rumania','Rusia','Ruanda','Samoa','San Cristobal y Nieves','San Marino','San Vicente y las Granadinas','Santa Lucia','Santo Tome y Principe','Senegal','Serbia','Seychelles','Sierra Leona','Singapur','Siria','Somalia','Sri Lanka','Sudafrica','Sudan','Sudan del Sur','Suecia','Suiza','Surinam','Tailandia','Tanzania','Tayikistan','Timor Oriental','Togo','Tonga','Trinidad y Tobago','Tunez','Turquia','Turkmenistan','Tuvalu','Ucrania','Uganda','Uruguay','Uzbekistan','Vanuatu','Vaticano','Venezuela','Vietnam','Yemen','Yibuti','Zambia','Zimbabue'];\r\nconst SPAIN_PROVINCES=['Alava','Albacete','Alicante','Almeria','Asturias','Avila','Badajoz','Baleares','Barcelona','Burgos','Caceres','Cadiz','Cantabria','Castellon','Ciudad Real','Cordoba','Cuenca','Girona','Granada','Guadalajara','Guipuzcoa','Huelva','Huesca','Jaen','La Coruna','La Rioja','Las Palmas','Leon','Lleida','Lugo','Madrid','Malaga','Murcia','Navarra','Ourense','Palencia','Pontevedra','Salamanca','Santa Cruz de Tenerife','Segovia','Sevilla','Soria','Tarragona','Teruel','Toledo','Valencia','Valladolid','Vizcaya','Zamora','Zaragoza'];\r\nfunction fillSelect(id,items,placeholder){\r\n  var el=document.getElementById(id);if(!el)return;\r\n  el.innerHTML='';\r\n  var first=document.createElement('option');first.value='';first.textContent=placeholder;el.appendChild(first);\r\n  items.forEach(function(item){var op=document.createElement('option');op.value=item;op.textContent=item;el.appendChild(op);});\r\n}\r\nfunction onCountryChange(){\r\n  var country=sanitize(document.getElementById('iPais').value);\r\n  var wrap=document.getElementById('provWrap');\r\n  var prov=document.getElementById('iProv');\r\n  if(country==='Espana'){\r\n    wrap.classList.remove('hidden');\r\n    prov.disabled=false;\r\n  }else{\r\n    wrap.classList.add('hidden');\r\n    prov.disabled=true;\r\n    prov.value='';\r\n  }\r\n}\r\nfunction initLeadForm(){\r\n  fillSelect('iPais',COUNTRIES,'Selecciona un pais');\r\n  fillSelect('iProv',SPAIN_PROVINCES,'Selecciona una provincia');\r\n  sanitize(document.getElementById('iPais').value)='Espana';\r\n  document.getElementById('iPais').addEventListener('change',onCountryChange);\r\n  onCountryChange();\r\n}\r\n\r\n\/* \u2500\u2500 MODAL \u2500\u2500 *\/\r\nfunction abrirModal(){\r\n  var m=document.getElementById('modalPDF');\r\n  m.classList.remove('hidden');\r\n  document.getElementById('modal-form-wrap').classList.remove('hidden');\r\n  document.getElementById('modal-ok').classList.add('hidden');\r\n  document.getElementById('modal-err-alert').classList.remove('show');\r\n  document.getElementById('err-gdpr').classList.remove('show');\r\n  ['m-nombre','m-email','m-pais'].forEach(function(id){\r\n    var el=document.getElementById(id);if(el)el.classList.remove('m-err');\r\n  });\r\n  var pv=document.getElementById('m-prov-wrap');if(pv)pv.classList.remove('show');\r\n  var mi=m.querySelector('.modal-inner');if(mi)mi.scrollTop=0;\r\n  document.body.style.overflow='hidden';\r\n}\r\nfunction cerrarModal(){\r\n  document.getElementById('modalPDF').classList.add('hidden');\r\n  document.body.style.overflow='';\r\n}\r\nfunction onModalPaisChange(){\r\n  var pais=document.getElementById('m-pais').value;\r\n  var pw=document.getElementById('m-prov-wrap');\r\n  if(pais==='Espa\u00f1a'){pw.classList.add('show');}else{pw.classList.remove('show');document.getElementById('m-prov').value='';}\r\n}\r\nfunction vEmail(e){return\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(e);}\r\n\r\nfunction validarModalForm(){\r\n  var ok=true;\r\n  function setE(id,show){\r\n    var el=document.getElementById(id);var er=document.getElementById('err-'+id.replace('m-',''));\r\n    if(el)el.classList.toggle('m-err',show);\r\n    if(er)er.classList.toggle('show',show);\r\n  }\r\n  var nom=document.getElementById('m-nombre').value.trim();\r\n  var em=document.getElementById('m-email').value.trim();\r\n  var pais=document.getElementById('m-pais').value;\r\n  var gdpr=document.getElementById('m-gdpr').checked;\r\n  if(nom.length<2){setE('m-nombre',true);ok=false;}else setE('m-nombre',false);\r\n  if(!vEmail(em)){setE('m-email',true);ok=false;}else setE('m-email',false);\r\n  if(!pais){setE('m-pais',true);ok=false;}else setE('m-pais',false);\r\n  if(!gdpr){document.getElementById('err-gdpr').classList.add('show');ok=false;}\r\n  else document.getElementById('err-gdpr').classList.remove('show');\r\n  return ok;\r\n}\r\n\r\nfunction enviarFormulario(){\r\n  if(!validarModalForm()){\r\n    document.getElementById('modal-err-alert').classList.add('show');\r\n    return;\r\n  }\r\n  document.getElementById('modal-err-alert').classList.remove('show');\r\n  var btn=document.getElementById('modal-submit-btn');\r\n  btn.classList.add('loading');btn.disabled=true;\r\n\r\n  var CF7_FORM_ID='15178';\r\n  var CF7_CONTAINER=''; \/\/ page ID \u2014 se detecta desde el nonce de WP\r\n  var CF7_ENDPOINT='\/wp-json\/contact-form-7\/v1\/contact-forms\/'+CF7_FORM_ID+'\/feedback';\r\n  var SITE_KEY='6Lfi1o0nAAAAAKef__HF07S9Y26C8xyCNYh5IjlG';\r\n\r\n  \/\/ Datos del perfil seleccionado\r\n  var perfilNombre=S.resultado?\r\n    (S.cat==='sw'?'Panel '+S.panelTipo:\r\n    S.fam==='minionda'?(S.prod?S.prod.nombre:'Bac nervur\u00e9'):\r\n    ('Correa '+(S.fam==='correaC'?'C':'Z')+' '+S.altC+'\/e'+S.espC)):\r\n    'Sin calcular';\r\n  var tipoPanel=S.cat==='sw'?\r\n    ({'masterC':'Master-C (Cubierta)','masterF':'Master-F (Fachada)','masterM':'Master-Modul (Modular)','masterFr':'Master-Frigo (Frigor\u00edfico)'}[S.panelTipo]||'Panel s\u00e1ndwich'):\r\n    (S.fam==='correaC'?'Lisse C':S.fam==='correaZ'?'Lisse Z':\r\n    S.fam==='minionda'?'Bac nervur\u00e9 MG':\r\n    ['mg30206','mg30209','mg40250'].includes(S.fam)?'Chapa trapezoidal':'Perfil');\r\n  var capVal=S.resultado?S.resultado.capAdmisible+'':'-';\r\n  var datosCalculo=JSON.stringify({\r\n    familia:perfilNombre,\r\n    categoria:S.cat==='sw'?'Panel s\u00e1ndwich':'Perfil met\u00e1lico',\r\n    capacidad:capVal+' kg\/m\u00b2',\r\n    cargaRef:S.sobrecarga>0?S.sobrecarga+' kg\/m\u00b2':'no indicada',\r\n    fecha:new Date().toLocaleDateString('es-ES')\r\n  });\r\n\r\n  var datos={\r\n    nombre:sanitize(document.getElementById('m-nombre').value),\r\n    email:sanitize(document.getElementById('m-email').value),\r\n    telefono:sanitize(document.getElementById('m-tel').value),\r\n    empresa:sanitize(document.getElementById('m-empresa').value),\r\n    pais:sanitize(document.getElementById('m-pais').value),\r\n    provincia:sanitize(document.getElementById('m-prov').value),\r\n    tipo_panel:tipoPanel,\r\n    espesor:S.espesor?S.espesor+'mm':(S.panelEsp?S.panelEsp+'mm':'-'),\r\n    m2:'-',\r\n    datos_calculo:datosCalculo\r\n  };\r\n\r\n  function doSubmit(token){\r\n    var fd=new FormData();\r\n    \/\/ Obtener el nonce del shortcode CF7 oculto\r\n    var nonceEl=document.querySelector('input[name=\"_wpnonce\"]');\r\n    var unitEl=document.querySelector('input[name=\"_wpcf7_unit_tag\"]');\r\n    var containerEl=document.querySelector('input[name=\"_wpcf7_container_post\"]');\r\n    fd.set('_wpcf7',CF7_FORM_ID);\r\n    fd.set('_wpcf7_version','6.1.5');\r\n    fd.set('_wpcf7_locale','es_ES');\r\n    fd.set('_wpcf7_unit_tag',unitEl?unitEl.value:'wpcf7-f'+CF7_FORM_ID+'-o1');\r\n    fd.set('_wpcf7_container_post',containerEl?containerEl.value:'0');\r\n    if(nonceEl)fd.set('_wpnonce',nonceEl.value);\r\n    if(token)fd.set('_wpcf7_recaptcha_response',token);\r\n    fd.set('nombre',datos.nombre);\r\n    fd.set('telefono',datos.telefono);\r\n    fd.set('email',datos.email);\r\n    fd.set('empresa',datos.empresa);\r\n    fd.set('pais',datos.pais);\r\n    fd.set('provincia',datos.provincia);\r\n    fd.set('tipo_panel',datos.tipo_panel);\r\n    fd.set('espesor',datos.espesor);\r\n    fd.set('m2',datos.m2);\r\n    fd.set('datos_calculo',datos.datos_calculo);\r\n    fd.set('gdpr','acepto');\r\n\r\n    fetch(CF7_ENDPOINT,{method:'POST',body:fd,signal:AbortSignal.timeout(15000)})\r\n      .then(function(r){return r.json();})\r\n      .then(function(json){\r\n        btn.classList.remove('loading');btn.disabled=false;\r\n        if(json.status==='mail_sent'){\r\n          genPDF();\r\n          mostrarModalOk(datos.nombre,datos.email,perfilNombre,capVal);\r\n        } else {\r\n          genPDF();\r\n          mostrarModalOk(datos.nombre,datos.email,perfilNombre,capVal);\r\n        }\r\n      })\r\n      .catch(function(){\r\n        btn.classList.remove('loading');btn.disabled=false;\r\n        genPDF();\r\n        mostrarModalOk(datos.nombre,datos.email,perfilNombre,capVal);\r\n      });\r\n  }\r\n\r\n  if(typeof grecaptcha!=='undefined'){\r\n    grecaptcha.ready(function(){\r\n      grecaptcha.execute(SITE_KEY,{action:'submit'})\r\n        .then(function(token){doSubmit(token);})\r\n        .catch(function(){doSubmit('');});\r\n    });\r\n  } else {\r\n    doSubmit('');\r\n  }\r\n}\r\n\r\nfunction mostrarModalOk(nombre,email,perfil,capacidad){\r\n  document.getElementById('modal-form-wrap').classList.add('hidden');\r\n  var ok=document.getElementById('modal-ok');\r\n  ok.classList.remove('hidden');\r\n  var det=document.getElementById('modal-ok-detail');\r\n  det.innerHTML='';\r\n  var p=document.createElement('div');\r\n  var s=document.createElement('strong');s.textContent='Perfil: ';\r\n  p.appendChild(s);p.appendChild(document.createTextNode(perfil+' \u00b7 '+capacidad+' kg\/m\u00b2'));\r\n  det.appendChild(p);\r\n  var p2=document.createElement('div');p2.style.marginTop='4px';\r\n  var s2=document.createElement('strong');s2.textContent='Email: ';\r\n  p2.appendChild(s2);p2.appendChild(document.createTextNode(email));\r\n  det.appendChild(p2);\r\n  \/\/ Scroll al inicio del modal para que se vea el estado OK\r\n  var mi=document.querySelector('#modalPDF .modal-inner');\r\n  if(mi)mi.scrollTop=0;\r\n}\r\n\r\nfunction sanitize(str){\r\n  if(typeof str!=='string')return String(str||'');\r\n  return str.replace(\/[<>&\"'`]\/g,function(c){\r\n    var m={'<':'&lt;','>':'&gt;','&':'&amp;','\"':'&quot;',\"'\":'&#39;','`':'&#96;'};\r\n    return m[c]||c;\r\n  }).trim().substring(0,200);\r\n}\r\n\/* esc(): escapa texto para insertar en innerHTML de forma segura *\/\r\nfunction esc(s){\r\n  var d=document.createElement('div');\r\n  d.textContent=String(s==null?'':s);\r\n  return d.innerHTML;\r\n}\r\nfunction genPDF(){\r\n  \/* Lee los datos del formulario nuevo (m-nombre, m-email, etc.) *\/\r\n  var nom=sanitize(document.getElementById('m-nombre').value).trim();\r\n  var em=sanitize(document.getElementById('m-email').value).trim();\r\n  var tel=sanitize(document.getElementById('m-tel')?document.getElementById('m-tel').value:'').trim();\r\n  var pais=sanitize(document.getElementById('m-pais').value);\r\n  var prov=sanitize(document.getElementById('m-prov').value);\r\n  var emp=sanitize(document.getElementById('m-empresa')?document.getElementById('m-empresa').value:'').trim();\r\n\r\n  \/* Si jsPDF no est\u00e1 cargado a\u00fan, salir silenciosamente *\/\r\n  if(!window.jspdf||!window.jspdf.jsPDF)return;\r\n\r\n  var jsPDF=window.jspdf.jsPDF;\r\n  var doc=new jsPDF({orientation:'portrait',unit:'mm',format:'a4'});\r\n  var W=210,M=18,CW=W-M*2,y=0;\r\n  var burd=[74,34,40],bd=[46,19,24],go=[17,24,39],gm=[75,85,99],gc=[249,250,251],wh=[255,255,255],ao=[210,170,175];\r\n\r\n  \/\/ Header\r\n  doc.setFillColor(bd[0],bd[1],bd[2]);doc.rect(0,0,W,30,'F');\r\n  doc.setFillColor(burd[0],burd[1],burd[2]);doc.rect(0,27,W,3,'F');\r\n  doc.setFont('helvetica','bold');doc.setFontSize(11);doc.setTextColor(wh[0],wh[1],wh[2]);\r\n  doc.text('Calculadora de Sobrecargas',M,13);\r\n  doc.setFontSize(7);doc.setFont('helvetica','normal');doc.setTextColor(ao[0],ao[1],ao[2]);\r\n  doc.text('Informe de sobrecargas admisibles',M,19);\r\n  doc.setFontSize(7.5);doc.setFont('helvetica','bold');doc.setTextColor(wh[0],wh[1],wh[2]);\r\n  doc.text('SOBRECARGA ADMISIBLE',W-M,12,{align:'right'});\r\n  doc.setFont('helvetica','normal');doc.setFontSize(6.5);doc.setTextColor(ao[0],ao[1],ao[2]);\r\n  doc.text('www.magon.es \u00b7 '+new Date().toLocaleDateString('es-ES'),W-M,19,{align:'right'});\r\n  y=38;\r\n\r\n  \/\/ Aviso\r\n  doc.setFillColor(255,251,234);doc.roundedRect(M,y,CW,16,2,2,'F');\r\n  doc.setDrawColor(220,180,60);doc.roundedRect(M,y,CW,16,2,2,'S');\r\n  doc.setFillColor(200,160,20);doc.rect(M,y,3,16,'F');\r\n  doc.setFont('helvetica','bold');doc.setFontSize(6.2);doc.setTextColor(130,100,0);doc.text('AVISO \u2014 DATOS ORIENTATIVOS',M+6,y+5.5);\r\n  doc.setFont('helvetica','normal');doc.setFontSize(5.8);doc.setTextColor(110,85,0);\r\n  doc.text(doc.splitTextToSize('Resultados orientativos. No constituyen proyecto t\u00e9cnico. El proyectista es responsable de los c\u00e1lculos seg\u00fan CTE\/EAE\/EC3\/EN14509.',CW-12),M+6,y+10);\r\n  y+=22;\r\n\r\n  \/\/ Solicitante\r\n  doc.setFont('helvetica','bold');doc.setFontSize(8);doc.setTextColor(burd[0],burd[1],burd[2]);doc.text('DATOS DEL SOLICITANTE',M,y);\r\n  doc.setFillColor(burd[0],burd[1],burd[2]);doc.rect(M,y+2,CW,0.3,'F');y+=6;\r\n  [[nom,'Nombre',''],  [em,'Email',''],[tel||'\u2014','Tel\u00e9fono',prov||'\u2014'],[emp||'\u2014','Entreprise','']].forEach(function(r,i){\r\n    if(i===0){doc.setFont('helvetica','bold');doc.setFontSize(6.5);doc.setTextColor(gm[0],gm[1],gm[2]);doc.text('Nombre:',M,y);doc.setFont('helvetica','normal');doc.setTextColor(go[0],go[1],go[2]);doc.text(r[0],M+22,y);y+=5.5;}\r\n    else if(i===1){doc.setFont('helvetica','bold');doc.setTextColor(gm[0],gm[1],gm[2]);doc.text('Email:',M,y);doc.setFont('helvetica','normal');doc.setTextColor(go[0],go[1],go[2]);doc.text(r[0],M+22,y);y+=5.5;}\r\n    else if(i===2){doc.setFont('helvetica','bold');doc.setTextColor(gm[0],gm[1],gm[2]);doc.text('Tel.:',M,y);doc.setFont('helvetica','normal');doc.setTextColor(go[0],go[1],go[2]);doc.text(r[0],M+22,y);if(r[2]){doc.setFont('helvetica','bold');doc.setTextColor(gm[0],gm[1],gm[2]);doc.text('Province:',M+CW\/2,y);doc.setFont('helvetica','normal');doc.setTextColor(go[0],go[1],go[2]);doc.text(r[2],M+CW\/2+22,y);}y+=5.5;}\r\n    else if(r[0]!=='\u2014'){doc.setFont('helvetica','bold');doc.setTextColor(gm[0],gm[1],gm[2]);doc.text('Entreprise:',M,y);doc.setFont('helvetica','normal');doc.setTextColor(go[0],go[1],go[2]);doc.text(r[0],M+22,y);y+=5.5;}\r\n  });y+=4;\r\n\r\n  \/\/ Par\u00e1metros\r\n  doc.setFont('helvetica','bold');doc.setFontSize(8);doc.setTextColor(burd[0],burd[1],burd[2]);doc.text('PAR\u00c1METROS DE C\u00c1LCULO',M,y);\r\n  doc.setFillColor(burd[0],burd[1],burd[2]);doc.rect(M,y+2,CW,0.3,'F');y+=6;\r\n  var cap=S.resultado.capAdmisible;var req=S.sobrecarga;\r\n  var mg=req>0?Math.round(((cap-req)\/req)*100):null;var ok=req<=0||req<=cap;\r\n  var params=[];\r\n  if(S.cat==='sw'){\r\n    var D2=getSWData(S.panelTipo);\r\n    params=[['Tipo',D2.nombre],['Espesor',S.panelEsp+' mm'],['Dist. apoyos',S.panelDist+' cm']];\r\n  } else if(isSheetFamily(S.fam)){\r\n    params=[['Perfil',S.prod?S.prod.nombre:'\u2014'],['Espesor',(S.espesor||'\u2014')+' mm'],['Vanos',S.vanos+' vano(s)'],['Luz libre',(S.luz||'\u2014')+' m']];\r\n  } else {\r\n    var Lp=S.fam==='correaC'?'C':'Z';\r\n    params=[['Familia','Correa MG '+Lp],['Perfil',Lp+'-'+S.altC+' \u00b7 e'+S.espC+'mm'],['Vanos',S.vanos+' vano(s)'],['Sep. p\u00f3rticos',S.sepP+' m'],['\u00c9cart entre lisses',S.sepC+' m']];\r\n  }\r\n  if(req>0)params.push(['Carga referencia',req+' kg\/m\u00b2']);\r\n  if(isSheetFamily(S.fam))params.unshift(['Familia',FAMILIAS_CHAPA[S.fam]||'Perfil']);\r\n  params.forEach(function(row,i){\r\n    if(i%2===0){doc.setFillColor(gc[0],gc[1],gc[2]);doc.rect(M,y-3,CW,6.5,'F');}\r\n    doc.setFont('helvetica','bold');doc.setFontSize(6.5);doc.setTextColor(gm[0],gm[1],gm[2]);doc.text(row[0]+':',M+2,y);\r\n    doc.setFont('helvetica','normal');doc.setTextColor(go[0],go[1],go[2]);doc.text(row[1],M+44,y);y+=6.5;\r\n  });y+=5;\r\n\r\n  \/\/ Resultado hero\r\n  if(ok){doc.setFillColor(burd[0],burd[1],burd[2]);}else{doc.setFillColor(180,30,30);}\r\n  doc.roundedRect(M,y,CW,26,3,3,'F');\r\n  var hNom=S.cat==='sw'?((S.panelTipo==='masterC'?MASTER_C:MASTER_F).nombre+' '+S.panelEsp+'mm'):S.fam==='minionda'?(S.prod?S.prod.nombre:'\u2014'):('Correa '+(S.fam==='correaC'?'C':'Z')+'-'+S.altC);\r\n  doc.setFont('helvetica','bold');doc.setFontSize(7);doc.setTextColor(ao[0],ao[1],ao[2]);doc.text('RESULTADO \u2014 '+hNom,M+4,y+6);\r\n  doc.setFont('helvetica','bold');doc.setFontSize(17);doc.setTextColor(wh[0],wh[1],wh[2]);doc.text(cap+' kg\/m\u00b2',M+4,y+19);\r\n  doc.setFont('helvetica','normal');doc.setFontSize(6.5);doc.setTextColor(ao[0],ao[1],ao[2]);doc.text('Sobrecarga admisible (L\/200)',M+4,y+24.5);\r\n  var st=req<=0?'Sin ref.':(req<=cap*0.8?'ADECUADO':req<=cap?'L\u00cdMITE':'INSUFICIENTE');\r\n  doc.setFillColor(0,0,0);doc.roundedRect(W-M-42,y+6,36,12,2,2,'F');\r\n  doc.setFont('helvetica','bold');doc.setFontSize(6.5);doc.setTextColor(wh[0],wh[1],wh[2]);doc.text(st,W-M-24,y+13,{align:'center'});\r\n  y+=32;\r\n\r\n  \/\/ M\u00e9tricas\r\n  var mets=[['Cap. admisible',cap+' kg\/m\u00b2'],['Carga requerida',req>0?req+' kg\/m\u00b2':'\u2014'],['Margen',mg!==null?(mg>0?'+':'')+mg+'%':'\u2014']];\r\n  var mW=(CW-4)\/3;\r\n  mets.forEach(function(m,i){\r\n    var mx=M+i*(mW+2);\r\n    doc.setFillColor(gc[0],gc[1],gc[2]);doc.roundedRect(mx,y,mW,14,2,2,'F');\r\n    doc.setFont('helvetica','bold');doc.setFontSize(9);doc.setTextColor(burd[0],burd[1],burd[2]);doc.text(m[1],mx+mW\/2,y+8,{align:'center'});\r\n    doc.setFont('helvetica','normal');doc.setFontSize(5.2);doc.setTextColor(gm[0],gm[1],gm[2]);doc.text(m[0],mx+mW\/2,y+12,{align:'center'});\r\n  });y+=20;\r\n\r\n  \/\/ Legal\r\n  if(y<220){\r\n    doc.setFont('helvetica','bold');doc.setFontSize(7.5);doc.setTextColor(burd[0],burd[1],burd[2]);doc.text('AVISO LEGAL',M,y);\r\n    doc.setFillColor(burd[0],burd[1],burd[2]);doc.rect(M,y+2,CW,0.3,'F');y+=6;\r\n    var legal='Este informe ha sido generado mediante la herramienta de c\u00e1lculo orientativo de Magon Metales Perfilados S.A. Los resultados tienen car\u00e1cter meramente indicativo basados en datos t\u00e9cnicos de Magon Aceros y Master Panel. El t\u00e9cnico responsable deber\u00e1 verificar y firmar los c\u00e1lculos conforme a CTE, EAE, EC3, EN14509 y normativa de aplicaci\u00f3n.';\r\n    doc.setFont('helvetica','normal');doc.setFontSize(5.8);doc.setTextColor(go[0],go[1],go[2]);\r\n    doc.text(doc.splitTextToSize(legal,CW),M,y);\r\n  }\r\n\r\n  \/\/ Footer\r\n  var fY=284;doc.setFillColor(245,245,245);doc.rect(0,fY-2,W,14,'F');\r\n  doc.setFillColor(burd[0],burd[1],burd[2]);doc.rect(0,fY-2,W,1.2,'F');\r\n  doc.setFont('helvetica','normal');doc.setFontSize(5.8);doc.setTextColor(gm[0],gm[1],gm[2]);\r\n  doc.text('MAGON METALES PERFILADOS S.A. \u00b7 Pol\u00edgono La C\u00e1rdena \u00b7 45221 Esquivias (Toledo) \u00b7 +34 925 519 926 \u00b7 www.magon.es',W\/2,fY+4,{align:'center'});\r\n  doc.setTextColor(180,180,180);doc.text('Documento generado el '+new Date().toLocaleDateString('es-ES')+' \u00b7 Datos orientativos, no sustituyen c\u00e1lculos t\u00e9cnicos.',W\/2,fY+9,{align:'center'});\r\n\r\n  var fn='MAGON_Sobrecargas_'+hNom.replace(\/\\s|\\\/\/g,'_')+'_'+new Date().toISOString().slice(0,10)+'.pdf';\r\n  doc.save(fn);\r\n}\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ EASTER EGG\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n(function(){\r\n  var t=document.getElementById('toast');var ti;\r\n  document.addEventListener('contextmenu',function(e){\r\n    var tag=e.target.tagName.toLowerCase();\r\n    if(['input','select','textarea'].includes(tag))return;\r\n    e.preventDefault();clearTimeout(ti);\r\n    t.textContent='\ud83d\ude04 Buen intento :)';t.classList.add('show');\r\n    ti=setTimeout(function(){t.classList.remove('show');},2200);\r\n  });\r\n})();\r\n\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n\/\/ INIT\r\n\/\/ \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\nfunction ajustarInterfazInicial(){\r\n  var perfTab=document.getElementById('t-perf');\r\n  if(perfTab)perfTab.textContent='Lisses et bac acier profil\u00e9';\r\n  var catDesc=document.getElementById('catDesc');\r\n  if(catDesc)catDesc.textContent='S\u00e9lectionnez la famille de produit \u00e0 v\u00e9rifier.';\r\n  var famTabs=document.querySelector('#s-perf .card .tabs');\r\n  var tMo=document.getElementById('t-mo');\r\n  if(famTabs&&tMo){\r\n    famTabs.classList.add('fam-tabs');\r\n    tMo.textContent='Bac nervur\u00e9';\r\n    if(!document.getElementById('t-tr')){\r\n      var tTr=document.createElement('button');\r\n      tTr.className='tab';\r\n      tTr.id='t-tr';\r\n      tTr.textContent='Trap\u00e9zo\u00efdal';\r\n      tTr.onclick=function(){switchFam('trapezoidal');};\r\n      tMo.insertAdjacentElement('afterend',tTr);\r\n    }\r\n  }\r\n  var moLabel=document.querySelector('#pm-mo label');\r\n  if(moLabel)moLabel.innerHTML='\u00c9paisseur du profil\u00e9 <span class=\"tip\" data-tip=\"S\u00e9lectionnez l'\u00e9paisseur disponible pour le profil\u00e9 choisi.\">?<\/span>';\r\n}\r\ndocument.addEventListener('DOMContentLoaded',function(){\r\n  ajustarInterfazInicial();\r\n  renderBac nervur\u00e9();initCP('C');initCP('Z');initSW();initLeadForm();setV('1');\r\n  document.getElementById('modalPDF').addEventListener('click',function(e){\r\n    if(e.target===document.getElementById('modalPDF'))cerrarModal();\r\n  });\r\n  document.addEventListener('keydown',function(e){\r\n    if(e.key==='Escape'&&!document.getElementById('modalPDF').classList.contains('hidden'))cerrarModal();\r\n  });\r\n  sessionStorage.removeItem('dk');\r\n  document.body.classList.remove('dark');\r\n  setThemeIcons(false);\r\n});\r\n\r\n\/* \u2500\u2500 FAQ toggle \u2500\u2500 *\/\r\nfunction toggleFaq(btn){\r\n  var item=btn.closest('.faq-item');\r\n  var isOpen=item.classList.contains('open');\r\n  document.querySelectorAll('.faq-item.open').forEach(function(el){el.classList.remove('open');el.querySelector('.faq-q').setAttribute('aria-expanded','false');});\r\n  if(!isOpen){item.classList.add('open');btn.setAttribute('aria-expanded','true');}\r\n}\r\n<\/script>\r\n<script src=\"https:\/\/www.google.com\/recaptcha\/api.js?render=6Lfi1o0nAAAAAKef__HF07S9Y26C8xyCNYh5IjlG\" async defer><\/script>\r\n<!-- FOOTER -->\r\n<footer class=\"site-footer\" role=\"contentinfo\">\r\n  <div class=\"footer-inner\">\r\n    <span class=\"footer-copy\">&copy; 2026 Mag&oacute;n Entreprises. Tous droits r\u00e9serv\u00e9s.<\/span>\r\n    <nav>\r\n      <ul class=\"footer-links\">\r\n        <li><a href=\"https:\/\/www.magon.es\/aviso-legal\/\" target=\"_blank\" rel=\"noopener\">Mentions l\u00e9gales<\/a><\/li>\r\n        <li><a href=\"https:\/\/magon.es\/politica-privacidad\/\" target=\"_blank\" rel=\"noopener\">Politique de confidentialit\u00e9<\/a><\/li>\r\n        <li><a href=\"https:\/\/www.magon.es\/politica-cookies\/\" target=\"_blank\" rel=\"noopener\">Politique de cookies<\/a><\/li>\r\n      <\/ul>\r\n    <\/nav>\r\n  <\/div>\r\n<\/footer>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Calculadora de Sobrecargas Admisibles Outil technique gratuit Calculateur de charge admissible pour profil\u00e9s et panneaux sandwich Calculez la charge admissible des lisses C\/Z, bacs trap\u00e9zo\u00efdaux et panneaux sandwich, ou saisissez&#8230;<\/p>\n","protected":false},"author":10,"featured_media":15274,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"content-type":"","rs_blank_template":"","rs_page_bg_color":"","slide_template_v7":"","footnotes":""},"class_list":["post-15276","page","type-page","status-publish","has-post-thumbnail"],"_links":{"self":[{"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/pages\/15276","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/comments?post=15276"}],"version-history":[{"count":8,"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/pages\/15276\/revisions"}],"predecessor-version":[{"id":15295,"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/pages\/15276\/revisions\/15295"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/media\/15274"}],"wp:attachment":[{"href":"https:\/\/magon.es\/fr\/wp-json\/wp\/v2\/media?parent=15276"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}