.profor-modules-widget,.profor-modules-widget *{box-sizing:border-box}.profor-modules-widget{--profor-yellow:#edb458;--profor-teal:#21b6af;--profor-navy:#061a40;--profor-cream:#f7f7f7;--profor-white:#fff;--navy-700:#0e2a5c;--navy-050:#f1f3f8;--yellow-500:#edb458;--yellow-600:#d29a45;--teal-700:#0e7a75;--teal-600:#199b95;--fg-1:#061a40;--fg-2:#3a4253;--fg-3:#6b7280;--bg-page:#f7f7f7;--border-subtle:#e2e5eb;--border-default:#c5ccd6;--font-display:"Montserrat","Helvetica Neue",Arial,sans-serif;--font-body:"Roboto","Helvetica Neue",Arial,sans-serif;--radius-md:10px;--shadow-1:0 1px 2px rgba(6,26,64,.06),0 1px 1px rgba(6,26,64,.04);--shadow-2:0 4px 12px rgba(6,26,64,.08),0 1px 2px rgba(6,26,64,.04);--shadow-3:0 10px 30px rgba(6,26,64,.1),0 4px 8px rgba(6,26,64,.05);--ease-standard:cubic-bezier(.2,.0,.2,1);background:var(--bg-page);color:var(--fg-1);font-family:var(--font-body);padding:8px 0 84px}.profor-modules-widget img{display:block;max-width:100%}.profor-modules-widget button{cursor:pointer;font-family:inherit}.profor-modules-widget a{color:var(--teal-700);text-decoration:none}.profor-modules-widget h2{color:var(--profor-navy);font-family:var(--font-display);font-size:30px;font-weight:700;line-height:1.1;margin:0 0 8px}.profor-modules-widget .accent-bar{background:var(--yellow-500);height:4px;margin-bottom:16px;width:64px}.profor-modules-widget .modules-inner{margin:0 auto;max-width:1140px;padding:0 40px}.profor-modules-widget .modules-inner>p{color:var(--fg-2);font-size:16px;margin:0 0 26px;max-width:60ch}.profor-modules-widget .tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.profor-modules-widget .tab-btn{align-items:center;background:#fff;border:1.5px solid var(--border-default);border-radius:999px;color:var(--fg-2);display:inline-flex;font-family:var(--font-display);font-size:14px;font-weight:700;gap:8px;padding:9px 15px 9px 18px;transition:all .2s var(--ease-standard)}.profor-modules-widget .tab-btn.active{background:var(--profor-navy);border-color:var(--profor-navy);color:#fff}.profor-modules-widget .tab-badge{background:var(--navy-050);border-radius:999px;color:var(--fg-3);font-size:12px;font-weight:700;padding:1px 8px}.profor-modules-widget .tab-btn.active .tab-badge{background:hsla(0,0%,100%,.22);color:#fff}.profor-modules-widget .module-count{color:var(--fg-3);font-family:var(--font-display);font-size:13px;font-weight:600;margin:0 0 18px}.profor-modules-widget .module-grid{display:grid;gap:22px;grid-template-columns:repeat(3,1fr)}.profor-modules-widget .module-card{background:#fff;border:1px solid var(--border-subtle);border-radius:16px;box-shadow:var(--shadow-1);display:flex;flex-direction:column;gap:11px;padding:24px;text-align:left;transition:transform .2s var(--ease-standard),box-shadow .2s var(--ease-standard);width:100%}.profor-modules-widget .module-card:hover{box-shadow:var(--shadow-2);transform:translateY(-4px)}.profor-modules-widget .module-cat{align-items:center;display:flex;gap:8px}.profor-modules-widget .module-cat .dot{border-radius:999px;flex:none;height:9px;width:9px}.profor-modules-widget .module-cat span.label{font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.profor-modules-widget .module-card h3{color:var(--profor-navy);font-family:var(--font-display);font-size:18px;font-weight:700;line-height:1.25;margin:0}.profor-modules-widget .module-card p{color:var(--fg-2);flex:1;font-size:14px;line-height:1.6;margin:0}.profor-modules-widget .module-card .more{color:var(--teal-700);font-family:var(--font-display);font-size:13px;font-weight:700;margin-top:2px}.profor-modules-widget .btn{align-items:center;border:1.5px solid transparent;border-radius:var(--radius-md);display:inline-flex;font-family:var(--font-display);font-size:14px;font-weight:700;gap:8px;padding:11px 20px;text-decoration:none;transition:background .12s var(--ease-standard)}.profor-modules-widget .btn-primary{background:var(--yellow-500);color:var(--profor-navy)}.profor-modules-widget .btn-primary:hover{background:var(--yellow-600)}.profor-modules-widget .modal-overlay{align-items:center;background:rgba(6,26,64,.55);display:none;height:100%;inset:0;justify-content:center;padding:24px;position:fixed;width:100%;z-index:2000}.profor-modules-widget .modal-overlay.open{display:flex}.profor-modules-widget .modal-box{background:#fff;border-radius:20px;box-shadow:var(--shadow-3);max-height:85vh;max-width:100%;overflow-y:auto;width:660px}.profor-modules-widget .modal-inner{padding:34px 40px 30px}.profor-modules-widget .modal-top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:8px}.profor-modules-widget .modal-cat{align-items:center;display:flex;gap:9px}.profor-modules-widget .modal-cat .dot{border-radius:999px;height:10px;width:10px}.profor-modules-widget .modal-cat span.label{font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.profor-modules-widget .modal-close{background:var(--navy-050);border:0;border-radius:999px;color:var(--fg-2);flex:none;font-size:16px;height:34px;line-height:1;width:34px}.profor-modules-widget .modal-inner h2{font-size:27px;margin:0 0 18px}.profor-modules-widget .modal-inner p.para{color:var(--fg-2);font-size:15.5px;line-height:1.7;margin:0 0 14px}.profor-modules-widget .modal-bullets{display:flex;flex-direction:column;gap:9px;list-style:none;margin:2px 0 14px;padding:0}.profor-modules-widget .modal-bullets li{align-items:flex-start;color:var(--fg-2);display:flex;font-size:15px;gap:10px;line-height:1.55}.profor-modules-widget .modal-bullets li .dash{color:var(--teal-600);flex:none;font-weight:700}.profor-modules-widget .modal-footer{align-items:center;border-top:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;margin-top:22px;padding-top:20px}.profor-modules-widget .modal-footer span{color:var(--fg-3);font-size:13px;max-width:34ch}@media (max-width:900px){.profor-modules-widget .module-grid{grid-template-columns:1fr 1fr}}@media (max-width:620px){.profor-modules-widget .module-grid{grid-template-columns:1fr}.profor-modules-widget .modules-inner{padding:0 20px}}