/* Montserrat Google Font — loaded via PHP enqueue */
.byld-eq4-banner, .byld-eq4-outer, .byld-eq4-outer * {
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

/* =============================================================
   BYLD EQ4 ASSESSMENT — FRONTEND CSS
   All rules use !important to beat theme overrides.
   ============================================================= */

/* ---- BANNER ---- */
.byld-eq4-banner {
    display: block !important;
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    background: #1e293b !important;
    padding: 60px 24px 52px !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

.byld-eq4-banner-inner {
    display: block !important;
    max-width: 680px !important;
    margin: 0 auto !important;
}

.byld-eq4-banner-tag {
    display: inline-block !important;
    background: rgba(255,255,255,0.08) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    color: #94a3b8 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 5px 16px !important;
    border-radius: 50px !important;
    margin-bottom: 16px !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

.byld-eq4-banner-h1 {
    display: block !important;
    font-size: 42px !important;
    font-weight: 800 !important;
    color: #f8fafc !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    line-height: 1.15 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    border: none !important;
    background: none !important;
}

.byld-eq4-banner-sub {
    display: block !important;
    font-size: 15px !important;
    color: #94a3b8 !important;
    line-height: 1.7 !important;
    margin: 0 auto 28px !important;
    max-width: 520px !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

/* Scale bar */
.byld-eq4-scalebar {
    display: -webkit-inline-flex !important;
    display: inline-flex !important;
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
    -webkit-align-items: center !important;
    align-items: center !important;
    gap: 12px !important;
    background: rgba(255,255,255,0.05) !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    padding: 12px 20px !important;
    border-radius: 10px !important;
}

.byld-eq4-scaletxt {
    display: block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    white-space: nowrap !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

.byld-eq4-scalenums {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
    -webkit-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
    gap: 4px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.byld-eq4-scalenum {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-align-items: center !important;
    align-items: center !important;
    -webkit-justify-content: center !important;
    justify-content: center !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    float: none !important;
    line-height: 1 !important;
}

/* ---- FORM OUTER ---- */
.byld-eq4-outer {
    display: block !important;
    background: #f1f5f9 !important;
    padding: 32px 20px 60px !important;
    box-sizing: border-box !important;
}

.byld-eq4-outer * {
    box-sizing: border-box !important;
}

#byld-eq4-form {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: column !important;
    flex-direction: column !important;
    gap: 20px !important;
    max-width: 880px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
}

/* ---- SECTION CARD ---- */
.byld-eq4-section {
    display: block !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06), 0 4px 16px rgba(0,0,0,0.06) !important;
    border: 1px solid #e2e8f0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Section header */
.byld-eq4-sec-head {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
    -webkit-align-items: flex-start !important;
    align-items: flex-start !important;
    -webkit-justify-content: space-between !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 20px 24px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e2e8f0 !important;
}

.byld-eq4-sec-head-left {
    display: block !important;
    flex: 1 !important;
}

.byld-eq4-sec-num {
    display: inline-block !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    padding: 3px 10px !important;
    border-radius: 50px !important;
    margin-bottom: 6px !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

.byld-eq4-sec-title {
    display: block !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    line-height: 1.2 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    border: none !important;
    background: none !important;
}

.byld-eq4-sec-desc {
    display: block !important;
    font-size: 13px !important;
    color: #64748b !important;
    margin: 0 !important;
    line-height: 1.5 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

/* Score badge */
.byld-eq4-sec-score {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: column !important;
    flex-direction: column !important;
    -webkit-align-items: center !important;
    align-items: center !important;
    -webkit-justify-content: center !important;
    justify-content: center !important;
    padding: 10px 16px !important;
    border-radius: 10px !important;
    min-width: 72px !important;
    flex-shrink: 0 !important;
    gap: 2px !important;
}

.byld-eq4-score-n {
    display: block !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    line-height: 1 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

.byld-eq4-score-d {
    display: block !important;
    font-size: 10px !important;
    color: rgba(255,255,255,0.7) !important;
    font-weight: 600 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

/* ---- QUESTION ROW ---- */
.byld-eq4-qrow {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
    -webkit-align-items: center !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 14px 24px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    background: #ffffff !important;
    margin: 0 !important;
    transition: background 0.12s !important;
}

.byld-eq4-qrow:last-of-type {
    border-bottom: none !important;
}

.byld-eq4-qrow.byld-answered {
    background: #f8fafc !important;
}

/* Question text — left column */
.byld-eq4-qtxt {
    flex: 0 0 280px !important;
    font-size: 13.5px !important;
    color: #1e293b !important;
    line-height: 1.55 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.byld-eq4-qnum {
    display: inline-block !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    margin-right: 6px !important;
    background: #f1f5f9 !important;
    padding: 2px 5px !important;
    border-radius: 4px !important;
    vertical-align: middle !important;
    font-style: normal !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

/* Scale — right column */
.byld-eq4-qscale {
    flex: 1 !important;
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
    -webkit-align-items: center !important;
    align-items: center !important;
    gap: 8px !important;
}

.byld-eq4-scalelbl {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #94a3b8 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    white-space: nowrap !important;
    min-width: 52px !important;
    flex-shrink: 0 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    display: block !important;
    line-height: 1.3 !important;
}

.byld-eq4-scalelbl:first-child { text-align: right !important; }
.byld-eq4-scalelbl:last-child  { text-align: left !important; }

/* Radio button group — MUST BE HORIZONTAL */
.byld-eq4-radios {
    flex: 1 !important;
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
    -webkit-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
    -webkit-justify-content: space-between !important;
    justify-content: space-between !important;
    -webkit-align-items: center !important;
    align-items: center !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}

/* Label wrapper */
.byld-eq4-rl {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: column !important;
    flex-direction: column !important;
    -webkit-align-items: center !important;
    align-items: center !important;
    cursor: pointer !important;
    margin: 0 !important;
    padding: 2px !important;
    float: none !important;
    line-height: 1 !important;
}

/* Hide native radio completely */
.byld-eq4-rl input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    pointer-events: none !important;
}

/* Custom circle */
.byld-eq4-rb {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-align-items: center !important;
    align-items: center !important;
    -webkit-justify-content: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    border: 2px solid #d1d5db !important;
    background: #f9fafb !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #6b7280 !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    line-height: 1 !important;
    text-align: center !important;
    float: none !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

.byld-eq4-rl:hover .byld-eq4-rb {
    border-color: var(--rc, #2563eb) !important;
    background: rgba(37,99,235,0.07) !important;
    color: var(--rc, #2563eb) !important;
    transform: scale(1.1) !important;
}

.byld-eq4-rl input[type="radio"]:checked + .byld-eq4-rb {
    background: var(--rc, #2563eb) !important;
    border-color: var(--rc, #2563eb) !important;
    color: #ffffff !important;
    transform: scale(1.15) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
}

/* ---- DETAILS CARD ---- */
.byld-eq4-fields {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: row !important;
    flex-direction: row !important;
    -webkit-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    padding: 22px 24px 12px !important;
}

.byld-eq4-field {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: column !important;
    flex-direction: column !important;
    gap: 6px !important;
    flex: 0 0 calc(50% - 8px) !important;
    min-width: 200px !important;
}

.byld-eq4-label {
    display: block !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #374151 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    margin: 0 !important;
}

.byld-eq4-input {
    display: block !important;
    width: 100% !important;
    padding: 11px 14px !important;
    border: 1.5px solid #d1d5db !important;
    border-radius: 8px !important;
    background: #f9fafb !important;
    font-size: 14px !important;
    color: #1e293b !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    outline: none !important;
    transition: border-color 0.18s, box-shadow 0.18s !important;
    margin: 0 !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

.byld-eq4-input:focus {
    border-color: #2563eb !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(37,99,235,0.1) !important;
}

.byld-eq4-input::placeholder { color: #9ca3af !important; }

/* Footer: progress + submit */
.byld-eq4-foot {
    padding: 16px 24px 24px !important;
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: column !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.byld-eq4-prog-wrap {
    display: -webkit-flex !important;
    display: flex !important;
    -webkit-flex-direction: column !important;
    flex-direction: column !important;
    gap: 5px !important;
}

.byld-eq4-prog-bar {
    display: block !important;
    height: 6px !important;
    background: #e2e8f0 !important;
    border-radius: 100px !important;
    overflow: hidden !important;
    width: 100% !important;
}

.byld-eq4-prog-fill {
    display: block !important;
    height: 6px !important;
    width: 0% !important;
    background: linear-gradient(90deg,#2563eb,#7c3aed) !important;
    border-radius: 100px !important;
    transition: width 0.35s ease !important;
}

.byld-eq4-prog-txt {
    display: block !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    margin: 0 !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

/* Submit button */
.byld-eq4-btn {
    display: inline-block !important;
    background: #2563eb !important;
    color: #ffffff !important;
    border: none !important;
    padding: 14px 40px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
    letter-spacing: 0.3px !important;
    transition: background 0.18s, transform 0.18s, box-shadow 0.18s !important;
    box-shadow: 0 4px 12px rgba(37,99,235,0.3) !important;
    text-decoration: none !important;
    line-height: 1 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    width: auto !important;
    align-self: flex-start !important;
}

.byld-eq4-btn:not([disabled]):hover {
    background: #1d4ed8 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(37,99,235,0.4) !important;
    color: #ffffff !important;
}

.byld-eq4-btn[disabled] {
    background: #94a3b8 !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
    transform: none !important;
    opacity: 0.7 !important;
}

/* Feedback message */
.byld-eq4-msg {
    display: block !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #ef4444 !important;
    margin: 0 !important;
    min-height: 16px !important;
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

.byld-eq4-msg.byld-ok { color: #16a34a !important; }

/* ---- RESPONSIVE ---- */
@media screen and (max-width: 820px) {
    .byld-eq4-qrow {
        -webkit-flex-direction: column !important;
        flex-direction: column !important;
        -webkit-align-items: flex-start !important;
        align-items: flex-start !important;
        padding: 14px 16px !important;
    }
    .byld-eq4-qtxt { flex: none !important; width: 100% !important; }
    .byld-eq4-qscale { width: 100% !important; }
    .byld-eq4-scalelbl { min-width: 44px !important; font-size: 9px !important; }
    .byld-eq4-rb { width: 30px !important; height: 30px !important; font-size: 11px !important; }
    .byld-eq4-sec-head { -webkit-flex-direction: column !important; flex-direction: column !important; padding: 16px !important; }
    .byld-eq4-fields { padding: 16px !important; }
    .byld-eq4-field { flex: 0 0 100% !important; }
}

@media screen and (max-width: 480px) {
    .byld-eq4-banner-h1 { font-size: 28px !important; }
    .byld-eq4-scalenums { gap: 3px !important; }
    .byld-eq4-scalenum { width: 26px !important; height: 26px !important; font-size: 11px !important; }
    .byld-eq4-rb { width: 28px !important; height: 28px !important; font-size: 10px !important; }
    .byld-eq4-outer { padding: 20px 10px 48px !important; }
    .byld-eq4-btn { width: 100% !important; text-align: center !important; padding: 14px 20px !important; }
}

/* ============================================================
   RESULT PAGE — UNCHANGED
   ============================================================ */
.assesmentpart2{padding:40px 0}.aalpading0{padding-top:0}.dtcibgc{background:#f4f4f4}
.btnnewc{display:inline-block;background:#e05c0a;color:#fff!important;padding:12px 35px;font-size:1rem;font-weight:700;border:none;border-radius:4px;cursor:pointer;text-decoration:none;margin-bottom:20px}
.btnnewc:hover{background:#c44e08;color:#fff!important}
.bgcwww{background:#fff}.demodonload{padding:30px;border-radius:6px;box-shadow:0 2px 12px rgba(0,0,0,.08);margin:20px 0}.dresult{font-family:Arial,sans-serif}
.dtcilogol{text-align:center;padding:15px 0}.dtcilogol img,.byldlc img{max-height:45px;width:auto}
.sectd{position:relative;overflow:hidden}.imgbox img{width:100%;height:auto;display:block}
.dtciun{position:absolute;bottom:20px;left:20px}.lsbtn{background:rgba(224,92,10,.9);color:#fff;padding:8px 20px;font-size:1.1rem;font-weight:700;border-radius:3px}
.tblcon{font-size:1.1rem;font-weight:700;color:#2c3e50;padding:15px 0 8px;text-transform:uppercase;border-bottom:2px solid #e05c0a;margin-bottom:12px}
.ccmdc h4{font-size:.9rem;color:#333;margin:6px 0}.clred{color:#e03030}.clorg{color:#e05c0a}
.ptt-5{padding-top:5px}.ptt-10{padding-top:10px}.ptt-20{padding-top:20px}.ptt-30{padding-top:30px}.ptt-40{padding-top:40px}.ptt-50{padding-top:50px}.ptt-100{padding-top:100px}.pbb-10{padding-bottom:10px}.pbb-60{padding-bottom:60px}.mtt-5{margin-top:5px}.mtt-10{margin-top:10px}.pad00{padding:0}.pabb1{page-break-after:always}
.hfor{margin-top:30px;padding:20px 0;border-top:1px solid #eee}.byldlc.cclmc{margin-bottom:10px}.marrcv{margin-bottom:12px}.ccmdc2{background:#fff;padding:15px 0}
.tblx1{width:100%;border-collapse:collapse;margin-bottom:15px}.tblx1 th{background:#2c3e50;color:#fff;padding:10px 12px;font-size:.9rem;text-align:left}.tblx1 td{padding:10px 12px;border-bottom:1px solid #eee;font-size:.88rem;line-height:1.6;vertical-align:top}
.ajoot1{width:75%}.ajoot2{font-size:1.5rem;font-weight:700;color:#e05c0a}
.tmmcolor{background:#2c3e50;padding:15px}.tblcx2{width:100%;border-collapse:collapse}
.tblcx2 th{background:#1a252f;color:#fff;padding:10px 14px;font-size:.9rem;text-align:left}.tblcx2 td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.1);color:#eee;font-size:.85rem;line-height:1.6;vertical-align:top}
.tblcx2 h5{color:#e05c0a;margin:0 0 6px;font-size:.88rem}.tblcx2 p{margin:0;font-size:.83rem;color:#ccc}
.ajcbg{background:#f8f8f8;padding:20px;border-radius:6px;margin:20px 0}.ajwh h4{font-size:1rem;font-weight:700;color:#2c3e50;margin:0 0 8px}.ajwh p{font-size:.85rem;color:#555}
.cckv span{display:inline-block;background:#fff;border:1px solid #e05c0a;color:#333;font-size:.82rem;padding:4px 10px;border-radius:3px;margin:3px 3px 3px 0}
.rs-estimate{background:#fff;border-left:4px solid #e05c0a;padding:12px 16px;margin-bottom:12px;border-radius:0 4px 4px 0}
.rs-estimate h4.tclbg{font-size:.9rem;color:#2c3e50;font-weight:700;margin:0 0 8px}
.estimate-info{list-style:disc;padding-left:20px;margin:0}.estimate-info li{font-size:.85rem;color:#555;margin-bottom:4px}
.ajp{padding:0 5px}.ajjcvb img{max-width:100%;height:auto}.text-center{text-align:center}
@media print{.btnnewc,.byld-eq4-btn{display:none!important}.demodonload{box-shadow:none;border:1px solid #ddd}}
