/* =====================================================
   Assessment Results Page
   Global Layout
===================================================== */

.assessment-results-page {
    background: #ffffff;
}


/* =====================================================
   Sections
===================================================== */

.assessment-results-page section {
    padding: 20px 0;
}

.assessment-results-page section:nth-child(even) {
    background: #f8fafc;
}


/* =====================================================
   Container
===================================================== */

.assessment-results-page .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}


/* =====================================================
   Section Headings
===================================================== */

.assessment-results-page .section-heading {
    max-width: 850px;
    margin: 60px auto 60px;
    text-align: center;
}

.assessment-results-page .section-eyebrow {

    display: inline-block;

    margin-bottom: 18px;

    color: #b18024;

    font-size: .85rem;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;

}

.assessment-results-page .section-heading h2 {

    margin: 0 0 24px;

    color: #051f45;

    font-size: clamp(2rem,4vw,3rem);

    line-height: 1.2;

    font-weight: 700;

}

.assessment-results-page .section-text {

    max-width: 760px;

    margin: 0 auto;

    color: #5a6178;

    font-size: 1.125rem;

    line-height: 1.8;

}


/* =====================================================
   Cards
===================================================== */

.assessment-results-page .card,
.overall-score-card,
.score-card,
.recommendation-card,
.roadmap-card,
.next-step-card,
.disclaimer-card {

    background: #ffffff;

    border: 1px solid #e5e9ef;

    border-radius: 16px;

    box-shadow: 0 15px 40px rgba(5,31,69,.06);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;

}


/* =====================================================
   Buttons
===================================================== */

.assessment-results-page .btn-primary {

    display: inline-block;

    padding: 16px 36px;

    background: #b18024;

    color: #ffffff;

    border-radius: 8px;

    font-weight: 700;

    text-decoration: none;

    transition: all .3s ease;

}

.assessment-results-page .btn-primary:hover {

    background: #8f6518;

    color: #ffffff;

    transform: translateY(-2px);

}


/* =====================================================
   Progress Bars
===================================================== */

.progress-track,
.score-progress-track {

    position: relative;

    width: 100%;

    height: 12px;

    background: #e8edf3;

    border-radius: 999px;

    overflow: hidden;

}

.progress-fill,
.score-progress-fill {

    height: 100%;

    width: 0;

    border-radius: 999px;

    transition: width 1.5s ease;

}

.progress-fill.rating-stable,
.score-progress-fill.success {

    background: #2e8b57;

}

.progress-fill.rating-moderate,
.score-progress-fill.warning {

    background: #d89b1d;

}

.progress-fill.rating-high,
.score-progress-fill.danger {

    background: #b83232;

}


/* =====================================================
   Status Badges
===================================================== */

.category-status,
.recommendation-label {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding: 8px 14px;

    border-radius: 999px;

    font-size: .8rem;

    font-weight: 700;

    letter-spacing: .5px;

    text-transform: uppercase;

}

.success {

    background: rgba(46,139,87,.12);

    color: #2e8b57;

}

.warning {

    background: rgba(216,155,29,.15);

    color: #b18024;

}

.danger {

    background: rgba(184,50,50,.12);

    color: #b83232;

}


/* =====================================================
   Lists
===================================================== */

.assessment-results-page ul {

    margin: 0;

    padding-left: 22px;

}

.assessment-results-page li {

    margin-bottom: 12px;

    color: #5a6178;

    line-height: 1.8;

}


/* =====================================================
   Tables
===================================================== */

.summary-table {

    width: 100%;

}

.summary-row {

    display: grid;

    grid-template-columns: 2fr 120px 220px;

    align-items: center;

    gap: 20px;

    padding: 18px 0;

    border-bottom: 1px solid #edf1f5;

}

.summary-row:last-child {

    border-bottom: none;

}


/* =====================================================
   Utility Classes
===================================================== */

.text-center {
    text-align: center;
}

.mb-20 {
    margin-bottom: 20px;
}

.mb-40 {
    margin-bottom: 40px;
}

.mb-60 {
    margin-bottom: 60px;
}

.mt-40 {
    margin-top: 40px;
}

.mt-60 {
    margin-top: 60px;
}


/* =====================================================
   Images
===================================================== */

.assessment-results-page img {

    max-width: 100%;

    height: auto;

    display: block;

}


/* =====================================================
   Links
===================================================== */

.assessment-results-page a {

    color: #b18024;

    transition: color .3s ease;

}

.assessment-results-page a:hover {

    color: #8f6518;

}




/* =====================================================
   Assessment Results Summary
===================================================== */

.assessment-results-summary {
    background: #ffffff;
}


/* =====================================================
   Summary Grid
===================================================== */

.results-summary-grid {

    display: flex;

    justify-content: center;

    margin-bottom: 70px;

}


/* =====================================================
   Overall Score
===================================================== */

.overall-score {

    display: flex;

    flex-direction: column;

    align-items: center;

    margin: 35px 0 25px;

}

.score-number {

    font-size: clamp(4.5rem, 10vw, 6rem);

    font-weight: 800;

    line-height: .9;

    color: #051f45;

}

.score-max {

    margin-top: 12px;

    font-size: 1rem;

    text-transform: uppercase;

    letter-spacing: 2px;

    color: #5a6178;

    font-weight: 600;

}

.score-label {

    margin-bottom: 20px;

    text-align: center;

    text-transform: uppercase;

    letter-spacing: 3px;

    font-size: .9rem;

    font-weight: 700;

    color: #5a6178;

}

.overall-score-card {

    width: 100%;
    max-width: 900px;

    padding: 55px 60px;

    text-align: center;

}

/* =====================================================
   Rating Colors
===================================================== */

.overall-score-card.rating-stable {

    border-top: 6px solid #2e8b57;

}

.overall-score-card.rating-moderate {

    border-top: 6px solid #b18024;

}

.overall-score-card.rating-high {

    border-top: 6px solid #b83232;

}

/* =====================================================
   Summary Rating
===================================================== */

.summary-rating h3 {

    margin-bottom: 20px;

    color: #051f45;

    font-size: 2rem;

}

.summary-rating p {

    max-width: 650px;

    margin: 0 auto;

    color: #5a6178;

    line-height: 1.8;

}


/* =====================================================
   Divider
===================================================== */

.summary-divider {

    width: 100%;
    height: 1px;

    margin: 40px 0;

    background: #e5e9ef;

}


/* =====================================================
   Highlights
===================================================== */

.summary-highlights {

    display: grid;

    gap: 18px;

}

.summary-item {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 22px 28px;

    background: #f8fafc;

    border-left: 5px solid #b18024;

    border-radius: 10px;

}

.summary-title {

    color: #5a6178;

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: 1px;

    font-size: .85rem;

}

.summary-item strong {

    color: #051f45;

    font-size: 1.2rem;

    font-weight: 700;

}


/* =====================================================
   Overall Progress
===================================================== */

.overall-progress {

    margin-bottom: 70px;

}

.progress-header {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 15px;

    color: #051f45;

    font-weight: 700;

}

.progress-track {

    height: 18px;

    background: #e7ecf1;

    border-radius: 999px;

    overflow: hidden;

}

.progress-fill {

    height: 100%;

}


/* =====================================================
   Performance Scale
===================================================== */

.performance-scale {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 25px;

    margin-bottom: 70px;

}

.performance-level {

    padding: 30px;

    text-align: center;

    background: #f8fafc;

    border-radius: 12px;

    border: 1px solid #e5e9ef;

}

.performance-score {

    display: block;

    margin-bottom: 12px;

    color: #b18024;

    font-size: 1.6rem;

    font-weight: 700;

}

.performance-label {

    display: block;

    color: #051f45;

    line-height: 1.5;

    font-weight: 600;

}


/* =====================================================
   Key Insight
===================================================== */

.key-insight-box {

    padding: 60px;

    text-align: center;

    background: linear-gradient(
        135deg,
        #051f45,
        #12315e
    );

    border-radius: 18px;

    box-shadow: 0 24px 60px rgba(5,31,69,.18);

}

.key-insight-box .section-eyebrow {

    color: #d9b15b;

}

.key-insight-box h2 {

    margin: 20px 0;

    color: #ffffff;

    font-size: clamp(2rem, 4vw, 2.8rem);

}

.key-insight-box h2 span {

    color: #d9b15b;

}

.key-insight-box p {

    max-width: 760px;

    margin: 0 auto;

    color: rgba(255,255,255,.92);

    font-size: 1.05rem;

    line-height: 1.9;

}




/* =====================================================
   Assessment Score Cards
===================================================== */

.assessment-score-cards {
    background: #f8fafc;
}


/* =====================================================
   Score Card Grid
===================================================== */

.score-card-grid {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 35px;

}


/* =====================================================
   Individual Score Card
===================================================== */

.score-card {

    display: flex;

    flex-direction: column;

    padding: 35px;

    background: #ffffff;

    border: 1px solid #e5e9ef;

    border-radius: 16px;

    box-shadow: 0 15px 40px rgba(5,31,69,.06);

    transition: all .3s ease;

}

.score-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 24px 55px rgba(5,31,69,.12);

}


/* =====================================================
   Status Border Colors
===================================================== */

.score-card.success {

    border-top: 6px solid #2e8b57;

}

.score-card.warning {

    border-top: 6px solid #b18024;

}

.score-card.danger {

    border-top: 6px solid #b83232;

}


/* =====================================================
   Header
===================================================== */

.score-card-header {

    display: flex;

    justify-content: space-between;

    align-items: flex-start;

    gap: 20px;

    margin-bottom: 30px;

}

.score-card-header h3 {

    margin: 0;

    color: #051f45;

    font-size: 1.45rem;

    line-height: 1.35;

    flex: 1;

}


/* =====================================================
   Status Badge
===================================================== */

.category-status {

    flex-shrink: 0;

    padding: 8px 14px;

    border-radius: 999px;

    font-size: .75rem;

    font-weight: 700;

    letter-spacing: .5px;

    text-transform: uppercase;

}


/* =====================================================
   Score Display
===================================================== */

.category-score {

    display: flex;

    align-items: baseline;

    margin-bottom: 25px;

}

.score-value {

    color: #051f45;

    font-size: 3.5rem;

    font-weight: 700;

    line-height: 1;

}

.score-total {

    margin-left: 6px;

    color: #5a6178;

    font-size: 1.4rem;

    font-weight: 600;

}


/* =====================================================
   Progress Bar
===================================================== */

.score-progress {

    margin-bottom: 30px;

}

.score-progress-track {

    height: 12px;

    background: #e6ebf0;

    border-radius: 999px;

    overflow: hidden;

}

.score-progress-fill {

    height: 100%;

    border-radius: 999px;

    transition: width 1.6s ease;

}


/* =====================================================
   Category Description
===================================================== */

.category-description {

    margin-bottom: 30px;

    color: #5a6178;

    line-height: 1.8;

}


/* =====================================================
   Recommendation
===================================================== */

.category-recommendation {

    margin-top: auto;

    padding-top: 25px;

    border-top: 1px solid #edf1f5;

}

.category-recommendation h4 {

    margin-bottom: 12px;

    color: #051f45;

    font-size: 1rem;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1px;

}

.category-recommendation p {

    margin: 0;

    color: #5a6178;

    line-height: 1.8;

}


/* =====================================================
   Results Legend
===================================================== */

.results-legend {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 25px;

    margin-top: 70px;

}

.legend-item {

    display: flex;

    align-items: center;

    gap: 15px;

    padding: 24px;

    background: #ffffff;

    border-radius: 12px;

    border: 1px solid #e5e9ef;

}

.legend-indicator {

    width: 18px;

    height: 18px;

    border-radius: 50%;

    flex-shrink: 0;

}

.legend-indicator.success {

    background: #2e8b57;

}

.legend-indicator.warning {

    background: #b18024;

}

.legend-indicator.danger {

    background: #b83232;

}

.legend-item strong {

    color: #051f45;

    font-size: 1rem;

}

.legend-item span:last-child {

    color: #5a6178;

    line-height: 1.5;

}




/* =====================================================
   Assessment Recommendations
===================================================== */

.assessment-recommendations {
    background: #ffffff;
}


/* =====================================================
   Recommendation Overview
===================================================== */

.recommendation-overview {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 35px;

    margin-bottom: 70px;

}


/* =====================================================
   Recommendation Cards
===================================================== */

.recommendation-primary{

    background:#ffffff;

    border:1px solid #e5e9ef;

    border-top:6px solid #b18024;

    border-radius:18px;

    padding:48px 55px;

    box-shadow:0 15px 40px rgba(5,31,69,.06);

}

.recommendation-primary h2{

    margin:12px 0 28px;

    color:#051f45;

    font-size:2.3rem;

    line-height:1.2;

}

.recommendation-primary h2 span{

    display:block;

    margin-top:12px;

    color:#b18024;

    font-size:3rem;

    font-weight:700;

}

.recommendation-primary p{

    margin:0;

    max-width:900px;

    color:#5a6178;

    font-size:1.1rem;

    line-height:1.9;

}



/* =====================================================
   Consulting Message
===================================================== */

.consulting-message {

    margin-bottom: 70px;

    padding: 60px;

    text-align: center;

    border-radius: 18px;

    color: #ffffff;

    box-shadow: 0 24px 60px rgba(5,31,69,.18);

}

.consulting-success {

    background: linear-gradient(
        135deg,
        #2e8b57,
        #3ca66d
    );

}

.consulting-warning {

    background: linear-gradient(
        135deg,
        #b18024,
        #d19d36
    );

}

.consulting-danger {

    background: linear-gradient(
        135deg,
        #7f1d1d,
        #b83232
    );

}

.consulting-message h2 {

    margin-bottom: 25px;

    color: #ffffff;

    font-size: clamp(2rem,4vw,2.8rem);

}

.consulting-message p {

    max-width: 850px;

    margin: 0 auto;

    color: rgba(255,255,255,.92);

    font-size: 1.1rem;

    line-height: 1.9;

}


/* =====================================================
   Category Summary
===================================================== */

.category-summary{

    margin-top:70px;

}

.category-summary h2{

    margin-bottom:40px;

    text-align:center;

    color:#051f45;

    font-size:2.4rem;

}

.summary-table{

    display:flex;

    flex-direction:column;

    gap:28px;

}

.summary-row{

    display:grid;

    grid-template-columns:1fr auto auto;

    grid-template-areas:
        "title score status"
        "description description description";

    gap:22px 30px;

    align-items:center;

    padding:30px 34px;

    background:#ffffff;

    border:1px solid #e5e9ef;

    border-radius:16px;

    box-shadow:0 10px 28px rgba(5,31,69,.05);

}


.summary-category{

    color:#051f45;

    font-size:1.35rem;

    font-weight:700;

    line-height:1.35;

}

.summary-score{

    min-width:100px;

    text-align:center;

    padding:12px 18px;

    border-radius:999px;

    background:#f7f3ea;

    color:#b18024;

    font-size:1.4rem;

    font-weight:700;

}

.summary-status{

    min-width:220px;

    text-align:center;

    padding:12px 18px;

    border-radius:999px;

    font-size:.8rem;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

}

.summary-status.success{

    background:rgba(46,139,87,.12);

    color:#2e8b57;

}

.summary-status.warning{

    background:rgba(177,128,36,.14);

    color:#b18024;

}

.summary-status.danger{

    background:rgba(184,50,50,.12);

    color:#b83232;

}




/* =====================================================
   Assessment Next Steps
===================================================== */

.assessment-next-steps {
    background: #f8fafc;
}


/* =====================================================
   Next Steps Grid
===================================================== */

.next-steps-grid {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 35px;

    margin-bottom: 80px;

}


/* =====================================================
   Next Step Card
===================================================== */

.next-step-card {

    position: relative;

    padding: 40px 35px;

    background: #ffffff;

    border: 1px solid #e5e9ef;

    border-radius: 16px;

    box-shadow: 0 15px 40px rgba(5,31,69,.06);

    transition: all .3s ease;

}

.next-step-card:hover {

    transform: translateY(-8px);

    border-color: #b18024;

    box-shadow: 0 24px 60px rgba(5,31,69,.12);

}


/* =====================================================
   Step Number
===================================================== */

.step-number {

    width: 60px;

    height: 60px;

    margin-bottom: 25px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #b18024;

    color: #ffffff;

    border-radius: 50%;

    font-size: 1.5rem;

    font-weight: 700;

}

.next-step-card h3 {

    margin-bottom: 18px;

    color: #051f45;

    font-size: 1.45rem;

}

.next-step-card p {

    margin: 0;

    color: #5a6178;

    line-height: 1.8;

}


/* =====================================================
   Assessment Review CTA
===================================================== */

.assessment-review-box {

    margin-top: 20px;

    border-radius: 20px;

    overflow: hidden;

    background: linear-gradient(
        135deg,
        #051f45,
        #12315e
    );

    box-shadow: 0 24px 60px rgba(5,31,69,.18);

}

.assessment-review-content {

    max-width: 800px;

    margin: 0 auto;

    padding: 50px 50px;

    text-align: center;

}

.assessment-review-content .section-eyebrow {

    color: #d7b15b;

}

.assessment-review-content h2 {

    margin: 20px 0 25px;

    color: #ffffff;

    font-size: clamp(2rem,4vw,3rem);

}

.assessment-review-content p {

    margin: 0 auto 35px;

    max-width: 720px;

    color: rgba(255,255,255,.92);

    font-size: 1.1rem;

    line-height: 1.9;

}


/* =====================================================
   Benefits List
===================================================== */

.assessment-review-list {

    display: grid;

    grid-template-columns: repeat(2,1fr);

    gap: 18px 40px;

    margin: 0 0 45px;

    padding: 20px;

    list-style: none;

    text-align: left;

}

.assessment-review-list li {

    position: relative;

    padding-left: 32px;

    color: rgba(255,255,255,.92);

    line-height: 1.7;

}

.assessment-review-list li::before {

    content: "\2714";

    position: absolute;

    left: 0;

    top: 0;

    color: #d7b15b;

    font-weight: 700;

    font-size: 1.1rem;

}


/* =====================================================
   CTA Button
===================================================== */

.assessment-review-content .btn-primary {

    display: inline-block;

    padding: 16px 36px;

    background: #b18024;

    color: #ffffff;

    border-radius: 8px;

    text-decoration: none;

    font-weight: 700;

    transition: all .3s ease;

}

.assessment-review-content .btn-primary:hover {

    background: #ffffff;

    color: #051f45;

    transform: translateY(-3px);

}



/* =====================================================
   Assessment Disclaimer
===================================================== */

.assessment-disclaimer {
    padding: 90px 0;
    background: #ffffff;
}


/* =====================================================
   Disclaimer Card
===================================================== */

.disclaimer-card {

    max-width: 900px;

    margin: 0 auto;

    padding: 50px;

    background: #f8fafc;

    border: 1px solid #e5e9ef;

    border-left: 6px solid #b18024;

    border-radius: 16px;

    box-shadow: 0 12px 30px rgba(5,31,69,.05);

}

.disclaimer-card h2 {

    margin-bottom: 20px;

    color: #051f45;

    font-size: 2rem;

}

.disclaimer-card p {

    margin-bottom: 18px;

    color: #5a6178;

    line-height: 1.9;

}

.disclaimer-card p:last-child {

    margin-bottom: 0;

}


/* =====================================================
   Disclaimer Icon
===================================================== */

.disclaimer-header {

    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 25px;

}

.disclaimer-icon {

    width: 60px;

    height: 60px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    background: rgba(177,128,36,.12);

    color: #b18024;

    border-radius: 50%;

    font-size: 1.6rem;

    font-weight: 700;

}


/* =====================================================
   Disclaimer List
===================================================== */

.disclaimer-list {

    margin: 30px 0;

    padding: 0;

    list-style: none;

}

.disclaimer-list li {

    position: relative;

    padding-left: 28px;

    margin-bottom: 14px;

    color: #5a6178;

    line-height: 1.8;

}

.disclaimer-list li::before {

    content: "";

    position: absolute;

    left: 0;

    top: 12px;

    width: 8px;

    height: 8px;

    background: #b18024;

    border-radius: 50%;

}


/* =====================================================
   Closing Statement
===================================================== */

.disclaimer-footer {

    margin-top: 35px;

    padding-top: 25px;

    border-top: 1px solid #dfe5eb;

}

.disclaimer-footer strong {

    display: block;

    margin-bottom: 12px;

    color: #051f45;

    font-size: 1.05rem;

}

.disclaimer-footer p {

    margin: 0;

    color: #5a6178;

}


