/*
for subtitle title

es-card-header
es-card-title


*/
.es-card-title {
    padding-top: 0 !important;
}
html.light .marketReport .right_wrapper .accordion-item {
    background-color: #ffffff !important;
    border: 0 !important;
}
html.light .marketReport .right_wrapper .accordion-button {
    background-color: transparent !important;
    color: #232323 !important;
}
html.light .marketReport .right_wrapper .accordion-header {
    border: 1px solid #bbbbbb !important;
}
html.light .marketReport .overview_box h6 {
    color: #232323;
}
html.light .marketReport .sub_overview h6 {
    color: #343434;
}
html.light .marketReport .overview_box span {
    font-weight: 700;
}
html.light .marketReport .overview_box {
    background: #f1f1f1;
}
html.light .marketReport .description_box {
    background: #f1f1f1;;
    color: #343434;
}
html.light .marketReport .description_box h6 {
    color: #343434 !important;
}
html.light .marketReport .right_wrapper .bg_table {
    background: transparent;
    border: 1px solid #d4d4d4;
}
html.light .marketReport .right_wrapper .table_Theme .table .thead {
    background: rgb(177, 177, 177, 0.6);
}
html.light .marketReport .right_wrapper .table_Theme .table tr {
    background: rgb(245, 245, 245);
    color: #232323;
}
html.light .marketReport .right_wrapper .table_Theme {
    color: #232323 !important;
}
html.light .marketReport .side_bar {
    background: #F7F7F7;
    margin-top: 100px;
}
html.light .marketReport .side_bar svg path {
    fill: #000000;
}
html.light .marketReport .side_button {
    background: #F7f7f7;
    border: 1px solid #bbbbbb;
}
html.light .marketReport .side_button.active {
    background: #232323;
    color: #ffffff;
}
html.light .marketReport .side_button.active svg path {
    fill: #ffffff;
}
html.light .marketReport .side_button {
    color: #000000;
}
html.light .marketReport .side_button.active::before,
html.light .marketReport .side_button::before {
    content: '';
    border: none;
    background: none;
}

.account_Wrapper .step_button,
.marketReport .side_button{
    border-radius: 4px;
    background: #222222;
    display: flex;
    gap: 8px;
    padding: 14px 19px;
    align-items: center;
    width: 100%;
    color: #A4A4A4;
    cursor: pointer;
    border: 1px solid transparent;
    position: relative;
}
.account_Wrapper .step_button::before,
.marketReport .side_button::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 4px;
    border: 1px solid transparent;
    background: linear-gradient(360deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.5) 100%);
    -webkit-mask: 
        linear-gradient(#fff 0 0) padding-box, 
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: destination-out;
    mask-composite: exclude;
}
.account_Wrapper .step_button.active,
.marketReport .side_button.active{
    border-radius: 4px;
    background: #FFFFFF;
    color: #232323;
    border: 1px solid transparent;
    position: relative;
}
.marketReport .side_bar{
    display: flex;
    align-items: start;
    flex-flow: column;
    gap: 0px;
    justify-content: start;
    width: 100%;
    max-width: 400px;
    height: calc(100vh - 220px);
    background: #232323;
    padding: 0px;
    border-right: 1px solid;
    border-image-slice: 1;
    border-image-source: linear-gradient(180deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.15) 100%);
}

.marketReport .side_button.active .black_fill{
    fill: #000000;
}
.marketReport_container{
    position: relative;
}
.marketReport .side_bar{
    position: sticky;
    top: 96px;
    height: 100%;
    z-index: 10; 
    overflow: visible;
}

.marketReport .side_bar_scroll{
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 20px;
    padding-right: 15px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Custom scrollbar for sidebar */
.marketReport .side_bar_scroll::-webkit-scrollbar {
    width: 6px;
}

.marketReport .side_bar_scroll::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 3px;
}

.marketReport .side_bar_scroll::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
}

.marketReport .side_bar_scroll::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.5);
}
.marketReport .right_wrapper .accordion-item{
    padding-bottom: 20px;
}
.marketReport .right_wrapper .accordion-item:last-child{
    padding-bottom: 0;
}
.marketReport .right_wrapper{
/*    padding: 30px 50px 0px 30px;*/
    width: 100%;
    overflow: hidden;
}
.marketReport .right_wrapper .accordion-button{
    background: #000 !important;
    color: #ffffff !important;
    box-shadow: none !important;
    font-size: 16px;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 0px;
    padding: 20px;
}
.marketReport .right_wrapper .accordion-item{ 
    background-color: #000 !important;
    border: 0 !important;
}
.marketReport .right_wrapper .accordion-header {
    border: 1px solid #555555 !important;
    border-radius: 8px;
    overflow: hidden;
}
.marketReport .right_wrapper .accordion-body{
    padding: 0;
}
.marketReport .right_wrapper .overview-accordion{
    margin-top: 35px;
    gap: 30px;
}
.marketReport .overview_box{
    display: flex;
    flex-direction: column;
    gap: 36px;
    padding: 20px 20px 40px;
    background: #232323;
    border-radius: 10px;
    width: 50%;
    height: 100%;
}
.marketReport .sub_overview{
    display: flex;
    align-items: center;
    gap: 20px;
}
.marketReport .overview_box h6{
    font-weight: 700;
    font-size: 16px;
    line-height: normal;
    letter-spacing: 0px;
    margin-bottom: 0;
    color: #ffffff;
}
.marketReport .sub_overview h6{
    color: #D4D4D4;
    font-weight: 400 !important;
}
.marketReport .overview_box span{
    color: #81BF98;
    font-weight: 700;
}
.marketReport .barchart{
    width: 100% !important;
    max-width: 50%;
    max-height: 350px !important;
}
.marketReport .description_box{
    color: #D4D4D4;
    letter-spacing: 0px;
    font-size: 14px;
    line-height: normal;
    background: #232323;
    padding: 20px;
    margin-top: 20px;
    border-radius: 10px;
}

.marketReport .side_bar {
    position: sticky;
    top: 80px;
    height: calc(100vh - 80px);
    z-index: 10;
    overflow: visible;
}

.marketReport .industry-title h2 {
    font-size: 16px;
    font-weight: 600;
    color: #666 !important;
    margin-bottom: 20px;
}

.marketReport.marketReport .right_wrapper
{
    margin-top: 80px;
    overflow: visible;
/*    padding: 10px 50px 0px 30px;*/
    width: 100%;
} 
 
.industry-title{
    position: sticky !important;
    top: 75px;
    z-index: 999;
    background: #ffff;
    padding: 15px 35px;
    right: 20px;
    height: 50px;
}

html.light h1, html.light h2, html.light h3 {
    color: #81BF98 !important;
}

html.light .marketReport .right_wrapper .accordion-item {
    padding: 30px;
}

html.light .marketReport .right_wrapper .accordion-button {
    background-color: #81BF98 !important;
    color: #fff !important;
}
 
/* Main Content */
.main-content {
    padding: 2rem;
}

.section {
    margin-bottom: 3rem;
    padding: 2rem 0;
    border-bottom: 1px solid #e2e8f0;
}

.section:last-child {
    border-bottom: none;
}

.section h2 {
    font-size: 2rem;
    color: #2d3748;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 3px solid #5a9b7d;
}

.section h3 {
    font-size: 1.5rem;
    color: #4a5568;
    margin-bottom: 1rem;
}

.section h4 {
    font-size: 1.2rem;
    color: #2d3748;
    margin-bottom: 0.5rem;
}
 

.module-section-subtitle {
    
    font-size: var(--subheading-size) !important;
    font-weight: var(--font-medium) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0 auto 2rem auto;
    max-width: 720px;
    text-align: center;
}

/* Grid Layouts */
.summary-grid,
.market-metrics-grid,
.highlights-grid,
.competitors-grid,
.regions-grid,
.segments-grid,
.verticals-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
    margin: 1.5rem 0;
}

.summary-card,
.metric-card,
.competitor-card,
.region-card,
.segment-card,
.vertical-card {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
    
    
    transition: transform 0.2s ease;
}

.summary-card:hover,
.metric-card:hover,
.competitor-card:hover,
.region-card:hover,
.segment-card:hover,
.vertical-card:hover {
    transform: translateY(-2px);
    
}

.metric-value-large {
    font-size: 2rem;
    font-weight: 700;
    color: #5a9b7d;
    margin: 0.5rem 0;
}

/* Opportunities and Threats */
.opportunities-threats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    margin: 2rem 0;
}

.opportunities,
.threats {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
}
 
.opportunity-item,
.threat-item {
    margin-bottom: 1rem;
    padding: 1rem;
    background: white;
    border-radius: 6px;
    
}

.timeline,
.likelihood {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    background: #e2e8f0;
    border-radius: 4px;
    font-size: 0.8rem;
    font-weight: 600;
    margin-top: 0.5rem;
}

/* Charts Container */
.charts-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.chart-card {
    background: white;
    padding: 1.5rem;
    border-radius: 8px;
    
    border: 1px solid #e2e8f0;
}

.chart-card h3 {
    text-align: center;
    margin-bottom: 1rem;
    color: #2d3748;
}

.chart-card canvas {
    max-height: 400px;
    width: 100% !important;
    height: auto !important;
}

/* SVG Chart Styles */
.chart-card .svg-chart {
    width: 100%;
    height: auto;
    max-width: 100%;
}

.chart-card .chart-container-interactive {
    position: relative;
    cursor: pointer;
}



.chart-card .chart-container-interactive:hover::before {
    opacity: 1;
    transform: scale(1);
}

/* SVG Chart Element Styles */
:root {
    --chart-color-1: #5a9b7d;
    --chart-color-2: #4a8b6d;
    --chart-color-3: #6aab8d;
    --chart-color-4: #ff876f;
    --chart-color-5: #4a9b7d;
    --chart-color-6: #ffce56;
}

.chart-color-1 {
    fill: var(--chart-color-1);
    stroke: var(--chart-color-1);
}

.chart-color-2 {
    fill: var(--chart-color-2);
    stroke: var(--chart-color-2);
}

.chart-color-3 {
    fill: var(--chart-color-3);
    stroke: var(--chart-color-3);
}

.chart-color-4 {
    fill: var(--chart-color-4);
    stroke: var(--chart-color-4);
}

.chart-color-5 {
    fill: var(--chart-color-5);
    stroke: var(--chart-color-5);
}

.chart-color-6 {
    fill: var(--chart-color-6);
    stroke: var(--chart-color-6);
}

.svg-chart .chart-title {
    
    font-size: 18px;
    font-weight: bold;
    fill: #666666;
}

.svg-chart .grid-line {
    stroke: #e5e7eb;
    stroke-width: 1;
}

.svg-chart .axis-label {
    fill: #6b7280;
    font-size: 12px;
    font-family: var(--primary-font);
}

.svg-chart .axis-line {
    stroke: #4a5568;
    stroke-width: 1.5;
}

.svg-chart .legend-label {
    font-size: 14px;
    fill: #4a5568;
    font-family: var(--primary-font);
}

.svg-chart .bar-value-label {
    font-size: 12px;
    fill: #4a5568;
    font-weight: 600;
}

/* Pie Chart Specific Styles */
.svg-chart .pie-chart path {
    stroke: white;
    stroke-width: 2;
    transition: opacity 0.3s ease;
}

.svg-chart .pie-chart path:hover {
    opacity: 0.8;
}

.chart-zoom-text {
    margin-top: 0.5rem;
    font-size: 0.875rem;
    color: #9ca3af;
}

/* Porter's Five Forces */
.porter-forces {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}

.force-category {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
    
}

.force-strength {
    display: inline-block;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-weight: 600;
    margin-bottom: 1rem;
}

.strength-low {
    background: #c6f6d5;
    color: #22543d;
}

.strength-medium {
    background: #fef5e7;
    color: #744210;
}

.strength-high {
    background: #fed7d7;
    color: #742a2a;
}
 

.factor-item {
    background: white;
    padding: 0.75rem;
    border-radius: 4px;
    font-size: 0.9rem;
}

/* Risk Assessment */
.risk-categories {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    margin: 2rem 0;
}

.risk-category {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
}

.risk-item {
    background: white;
    padding: 1rem;
    margin: 1rem 0;
    border-radius: 6px;
    
}

.risk-metrics {
    display: flex;
    gap: 1rem;
    margin: 0.5rem 0;
}

.probability,
.impact {
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.8rem;
    font-weight: 600;
}

.prob-low, .impact-low {
    background: #c6f6d5;
    color: #22543d;
}

.prob-medium, .impact-medium {
    background: #fef5e7;
    color: #744210;
}

.prob-high, .impact-high {
    background: #fed7d7;
    color: #742a2a;
}

.mitigation {
    margin-top: 0.5rem;
    padding: 0.75rem;
    background: #e6fffa;
    border-radius: 4px;
}

/* Strategic Recommendations */
.recommendations-grid,
.strategy-grid,
.implications-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
    margin: 1.5rem 0;
}

.recommendation-item,
.strategy-item,
.implication-item {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
    
}

.recommendation-number {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background: #5a9b7d;
    color: white;
    border-radius: 50%;
    text-align: center;
    line-height: 2rem;
    font-weight: 600;
    margin-right: 1rem;
    vertical-align: top;
}

/* Value Chain */
.value-chain-overview {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin: 2rem 0;
}

.chain-stage {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
    
}

.stage-item {
    background: white;
    padding: 1rem;
    margin: 1rem 0;
    border-radius: 6px;
    
}

.stage-metrics {
    display: flex;
    gap: 1rem;
    margin: 0.5rem 0;
}

.value-added,
.margin-level {
    padding: 0.25rem 0.5rem;
    background: #e2e8f0;
    border-radius: 4px;
    font-size: 0.8rem;
    font-weight: 600;
}

/* Pricing Analysis */
.pricing-overview {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
    margin: 2rem 0;
}

.pricing-model,
.price-elasticity,
.value-opportunities {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
    
}

.elasticity-drivers {
    margin: 1rem 0;
}

.driver-item {
    background: white;
    padding: 0.75rem;
    margin: 0.5rem 0;
    border-radius: 4px;
    font-size: 0.9rem;
}

/* Technology and Trends */
.technology-overview,
.trends-overview {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
    
    margin: 1.5rem 0;
}

.trend-item {
    background: white;
    padding: 1rem;
    margin: 1rem 0;
    border-radius: 6px;
    
}

/* Growth Projections */
.growth-metrics {
    margin: 1.5rem 0;
}

.growth-timeline {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 1rem;
}

.year-metric {
    background: white;
    padding: 1rem;
    border-radius: 6px;
    text-align: center;
    
}

.year {
    display: block;
    font-weight: 600;
    color: #4a5568;
}

.value {
    display: block;
    font-size: 1.2rem;
    font-weight: 700;
    color: #5a9b7d;
    margin-top: 0.5rem;
}

/* Takeaways */
.takeaways-list {
    margin: 1.5rem 0;
}

.takeaway-item {
    display: flex;
    align-items: flex-start;
    margin: 1rem 0;
    padding: 1rem;
    background: #f7fafc;
    border-radius: 6px;
    
}

.takeaway-number {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background: #5a9b7d;
    color: white;
    border-radius: 50%;
    text-align: center;
    line-height: 2rem;
    font-weight: 600;
    margin-right: 1rem;
    flex-shrink: 0;
}

.strategic-recommendations-list {
    margin: 1.5rem 0;
}

.strategic-recommendation-item {
    background: #f7fafc;
    padding: 1.5rem;
    margin: 1rem 0;
    border-radius: 8px;
    
}

.recommendation-details {
    margin-top: 1rem;
}

.detail-item {
    margin: 0.5rem 0;
    padding: 0.5rem;
    background: white;
    border-radius: 4px;
}

.implementation-priorities {
    margin: 2rem 0;
}

.priorities-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
    margin: 1.5rem 0;
}

.priority-item {
    background: #f7fafc;
    padding: 1.5rem;
    border-radius: 8px;
    
}

/* Footer */
.footer {
    background: #2d3748;
    color: #e2e8f0;
    padding: 2rem;
    text-align: center;
}

.footer-content p {
    margin: 0.5rem 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .container {
        margin: 0;
        
    }
    .industry-title{
        top: 70px !important;
        padding: 10px;
        height: auto !important;
    }
    .marketReport .industry-title h2 {
        padding-left: 20px;
        font-size: 16px;
        margin-top: 20px;
        margin-bottom: 0;
    }
    .main-content {
        padding: 1rem;
    }
    
    .header-content h1 {
        font-size: 2rem;
    }
    
    .nav-list {
        flex-direction: column;
        align-items: center;
    }
    
    .nav-list a {
        width: 100%;
        text-align: center;
    }
    
    .summary-grid,
    .market-metrics-grid,
    .highlights-grid,
    .competitors-grid,
    .regions-grid,
    .segments-grid,
    .verticals-grid {
        grid-template-columns: 1fr;
    }
    
    .opportunities-threats {
        grid-template-columns: 1fr;
    }
    
    .charts-container {
        grid-template-columns: 1fr;
    }
    
    .porter-forces,
    .risk-categories {
        grid-template-columns: 1fr;
    }
    
    .recommendations-grid,
    .strategy-grid,
    .implications-grid {
        grid-template-columns: 1fr;
    }
    
    .value-chain-overview {
        grid-template-columns: 1fr;
    }
    
    .pricing-overview {
        grid-template-columns: 1fr;
    }
    
    .growth-timeline {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .priorities-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .header {
        padding: 1rem 0;
    }
    
    .header-content h1 {
        font-size: 1.5rem;
    }
    
    .subtitle {
        font-size: 1rem;
    }
    
    .report-meta {
        flex-direction: column;
        gap: 0.5rem;
    }
    
    .section h2 {
        font-size: 1.5rem;
    }
    
    .growth-timeline {
        grid-template-columns: 1fr;
    }
}

/* Enhanced Strategic Recommendations */
.strategic-recommendations {
    margin-top: 30px;
}

.recommendations-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 25px;
    margin: 25px 0;
}

.recommendation-item {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    padding: 25px;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.recommendation-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.recommendation-item:hover {
    transform: translateY(-3px);
    
}

.recommendation-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    text-align: center;
    line-height: 1;
    font-weight: bold;
    font-size: 16px;
    margin-right: 20px;
    vertical-align: top;
    
}

.recommendation-content {
    display: inline-block;
    width: calc(100% - 70px);
    vertical-align: top;
}

.recommendation-content h4 {
    margin: 0 0 15px 0;
    color: #2d3748;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 600;
}

.capability-investment {
    margin-top: 20px;
    padding: 20px;
    background: linear-gradient(135deg, #f0fff4 0%, #e6fffa 100%);
    border-radius: 8px;
    position: relative;
}

.capability-investment::before {
    content: '💡';
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 20px;
}

.capability-investment h5 {
    margin: 0 0 15px 0;
    color: #2d3748;
    font-size: 15px;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.capability-investment h5::before {
    content: '🎯';
    margin-right: 8px;
    font-size: 16px;
}

.capability-investment p {
    margin: 0;
    color: #4a5568;
    line-height: 1.6;
    font-size: 14px;
}

.capability-investment ul {
    margin: 0;
    padding-left: 20px;
}

.capability-investment li {
    margin: 8px 0;
    color: #4a5568;
    line-height: 1.5;
    position: relative;
}

.capability-investment li::marker {
    color: #48bb78;
}

/* Implementation Framework */
.implementation-framework {
    margin-top: 30px;

} 
.framework-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin-top: 25px;
}

.framework-item {
    background: white;
    padding: 20px;
    border-radius: 8px;
    
    transition: transform 0.2s ease;
}

.framework-item:hover {
    transform: translateY(-2px);
    
}

.framework-item h4 {
    margin: 0 0 10px 0;
    color: #2d3748;
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.framework-item h4::before {
    content: '📋';
    margin-right: 8px;
    font-size: 16px;
}

.framework-item p {
    margin: 0;
    color: #4a5568;
    line-height: 1.5;
    font-size: 14px;
}

.takeaways-section {
    margin-top: 30px;
}

.takeaways-list-extra {
    display: flex;
    flex-direction: column;
    gap: 20px; 
    margin-bottom: 30px;
}

.takeaways-item-extra {
    display: flex;
    border: 1px solid #00000021;
    gap: 15px;
    align-items: center;
    padding: 10px;
    border-radius: 15px
}

.takeaways-text {
    line-height: 25px !important;
    color: #666;
}
.takeaways-text p{
    font-size: 18px;
    font-weight: 400;
    line-height: 25px !important;
}

/* Responsive Design for Strategic Recommendations */
@media (max-width: 768px) {
    .recommendation-item {
        padding: 20px;
    }
    .development-item .item-number {
        margin: 0 auto !important;
    }

    .factor-item .item-number {
        margin: 0 auto !important;
    }
    .insight-content h4 {
        font-size: 20px !important;
    }
    .foot_wrap {
        padding: 20px 20px 30px 20px !important;
    }
    .recommendation-number {
        width: 35px;
        height: 35px;
        font-size: 14px;
        margin-right: 15px;
    }
    
    .recommendation-content {
        width: calc(100% - 60px);
    }
    
    .recommendation-content h4 {
        font-size: 16px;
    }
    
    .framework-grid {
        grid-template-columns: 1fr;
    }
}

/* Sustainability Practices */
.sustainability-overview {
    margin: 30px 0;
}

.sustainability-categories {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
    margin: 25px 0;
}

.sustainability-category {
    background: linear-gradient(135deg, #f0fff4 0%, #e6fffa 100%);
    padding: 20px;
    border-radius: 10px;
    
    transition: transform 0.2s ease;
}

.sustainability-category:hover {
    transform: translateY(-2px);
    
}

.sustainability-category h4 {
    margin: 0 0 15px 0;
    color: #2d3748;
    font-size: 16px;
    font-weight: 600;
}

.sustainability-category p {
    margin: 0;
    color: #4a5568;
    line-height: 1.6;
    font-size: 14px;
}

.company-sustainability {
    margin: 30px 0;
}

.sustainability-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin: 25px 0;
}

.sustainability-item {
    background: white;
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    
}

.sustainability-item h4 {
    margin: 0 0 15px 0;
    color: #2d3748;
    font-size: 15px;
    font-weight: 600;
}

.sustainability-item p {
    margin: 0;
    color: #4a5568;
    line-height: 1.5;
    font-size: 14px;
}

.sustainability-benefits {
    margin: 30px 0;
}

.benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin: 25px 0;
}

.benefit-item {
    background: linear-gradient(135deg, #f7fafc 0%, #edf2f7 100%);
    padding: 20px;
    border-radius: 10px;
    
    
    transition: transform 0.2s ease;
}

.benefit-item:hover {
    transform: translateY(-2px);
    
}

.benefit-item h4 {
    margin: 0 0 15px 0;
    color: #2d3748;
    font-size: 15px;
    font-weight: 600;
}

.benefit-item p {
    margin: 0;
    color: #4a5568;
    line-height: 1.5;
    font-size: 14px;
}

/* Responsive Design for Sustainability */
@media (max-width: 768px) {
    .sustainability-categories,
    .sustainability-grid,
    .benefits-grid {
        grid-template-columns: 1fr;
    }
    
    .sustainability-category,
    .sustainability-item,
    .benefit-item {
        padding: 15px;
    }
}

/* Print Styles for Sustainability */
@media print {
    .sustainability-category,
    .sustainability-item,
    .benefit-item {
        page-break-inside: avoid;
        
        border: 1px solid #ddd;
    }
    
    .sustainability-category {
        background: #f8f9fa !important;
    }
    
    .benefit-item {
        background: #f8f9fa !important;
    }
}

  
.metric-icon {
    font-size: 32px;
    margin-bottom: 15px;
    text-align: center;
}

.metric-content {
    text-align: center;
}

.metric-content h3 {
    margin: 0 0 8px 0;
    color: #2d3748;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 1px;
}

.metric-subtitle {
    color: #718096;
    font-size: 12px;
    font-weight: 500;
    
    letter-spacing: 0.5px;
    margin-bottom: 15px;
}

.metric-value-enhanced {
    font-size: 28px;
    font-weight: 800;
    color: #2d3748;
    margin: 15px 0;
    line-height: 1.2;
}

.metric-description {
    color: #4a5568;
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 15px;
}

.metric-trend {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 12px;
    background: rgba(90, 155, 125, 0.1);
    border-radius: 20px;
    margin-top: 15px;
}

.trend-indicator {
    font-size: 16px;
}

.trend-text {
    color: #5a9b7d;
    font-size: 12px;
    font-weight: 600;
    
    letter-spacing: 0.5px;
}

  

/* Responsive Design for Enhanced Market Sizing */
@media (max-width: 768px) {
    .market-metrics-enhanced {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .metric-card-enhanced {
        padding: 20px;
    }
    
    .metric-content h3 {
        font-size: 20px;
    }
    
    .metric-value-enhanced {
        font-size: 24px;
    }
    
    .market-insights {
        grid-template-columns: 1fr;
    }
}

/* Print Styles for Enhanced Market Sizing */
@media print {
    .metric-card-enhanced {
        page-break-inside: avoid;
        
        border: 1px solid #ddd;
        background: #f8f9fa !important;
    }
    
    .insight-card {
        page-break-inside: avoid;
        
        border: 1px solid #ddd;
        background: #f8f9fa !important;
    }
}

/* Enhanced Market Introduction - Professional Version */
.market-introduction-enhanced {
    margin: 30px 0;
    animation: fadeInUp 0.6s ease-out;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }
    100% {
        background-position: 1000px 0;
    }
}

.intro-hero {
    background: #ffffff;
    padding: 50px 40px;
    border-radius: 16px;
    margin-bottom: 40px;
    
    position: relative;
    overflow: hidden;
    border: 2px solid #f0f4f8;
}

 

.intro-hero::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(90, 155, 125, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

.hero-content {
    position: relative;
    z-index: 2;
    text-align: center;
}

.hero-icon {
    font-size: 48px;
    margin-bottom: 20px;
    display: block;
    opacity: 0.8;
}

.hero-content h3 {
    margin: 0 0 25px 0;
    font-size: 32px;
    font-weight: 700;
    color: #000000;
    position: relative;
    display: inline-block;
}

.hero-content h3::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #5a9b7d 0%, #4a8b6d 100%);
    border-radius: 2px;
}

.hero-description {
    width: 100%;
    margin: 0 auto;
    text-align: left;
    padding: 20px;
}

.hero-description p {
    margin: 0 0 20px 0;
    font-size: 16px;
    line-height: 1.8;
    color: #666666;
    font-weight: 400;
}

.hero-description p:last-child {
    margin-bottom: 0 !important;
}

.company-context-enhanced {
    margin-top: 50px;
    animation: fadeInUp 0.8s ease-out 0.2s both;
}

.context-header {
    padding: 15px;
    border-radius: 15px;
    text-align: left;
    margin-bottom: 30px;
    border: 1px solid #666666B2;
}

.context-header h3 {
    margin: 0 0 12px 0;
    color: #000;
    font-size: 26px;
    font-weight: 600; 
}

 
.context-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
    margin: 30px 0;
}

.context-cards-4tab {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.context-card {
    background: #ffffff;
    padding: 35px 30px;
    border-radius: 16px;
    border: 2px solid transparent;
    
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}
 
.card-content-main {
    padding: 20px;
}
.card-icon-wrapper {
    padding-bottom: 15px;
}

.card-icon-wrapper-extra {
    display: flex;
    justify-content: space-between;
}
 
.card-content h4 {
    margin: 0 0 18px 0;
    color: #000000;
    font-size: 22px;
    font-weight: 600;
    text-align: left;
    letter-spacing: -0.5px;
    padding-bottom: 15px;
    border-bottom: 1px solid #D9D9D9;
}

.card-content-bit-small h4 {
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 28px;
}

.card-content-bit-small h5 {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #666;
    margin-bottom: 15px;
}

.card-content-extra {
    padding: 20px;
}

.card-content-border-none h4 {
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

.card-content-up {
    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 10px;
}
.card-content-up p {
    font-size: 14px;
}
.card-content-up h4 {
    margin-bottom: 0;
    font-size: 20px;
    font-weight: 600;
    color: #666666;
}

.card-content-down {
    padding-top: 15px;
}
.card-content-down p {
    font-size: 14px;
    color: #666666;
}
.card-content-down h5 {
    margin-bottom: 0;
    font-size: 20px;
    font-weight: 700;
    color: #666666;
}

.card-content-no-bb h4{
    border-bottom: none !important;
    padding-bottom: 0;
}
.item-number-no-bb {
    border: none !important;
}


.card-content p {
    margin: 0 0 20px 0;
    color: #4a5568;
    line-height: 1.7;
    font-size: 15px;
    text-align: center;
}
 
.card-highlight {
    background: #81BF98;
    padding: 8px;
    text-align: center;
    text-transform: lowercase;
    border-radius: 8px;
}

.highlight-icon {
    font-size: 18px;
}

.highlight-text {
    color: #fff !important;
    font-size: 12px;
    font-weight: 700;
    
    letter-spacing: 1px;
}

 
.strategic-significance .highlight-text {
    color: #44337a;
}

.market-insights-summary {
    margin-top: 50px;  
    margin-bottom: 0;
    border-radius: 16px; 
    
    position: relative;
    overflow: hidden; 
}

 

.insights-header {
    text-align: center;
    margin-bottom: 30px;
}

.insights-header h4 {
    margin: 0 0 10px 0;
    color: #000000;
    font-size: 28px;
    font-weight: 700;
    position: relative;
    display: inline-block;
}

.insights-header h4::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    height: 3px;
    background: linear-gradient(90deg, #5a9b7d 0%, #4a8b6d 100%);
    border-radius: 2px;
}

.insights-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
}

.insight-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 20px;
    background: white;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

 
 
.insight-text {
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1;
}

.insight-text strong {
    color: #000000;
    font-size: 16px;
    font-weight: 600;
}

.insight-text span {
    color: #718096;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 500;
}

/* Responsive Design for Professional Market Introduction */
@media (max-width: 992px) {
    .industry-title{
        top: 70px; 
        height: 0;
    }
    .context-cards {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    
    .insights-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .intro-hero {
        padding: 35px 25px;
    }
    
    .marketReport .side_bar {
        display: none;
    }

    .hero-content h3 {
        font-size: 26px;
    }
    
    .hero-description p {
        font-size: 15px;
    }
    
    .context-header h3 {
        font-size: 20px;
    }


    .card-content h4 {
        font-size: 18px;
        font-weight: 600;
    }

    
    
    .market-insights-summary {
        margin: 0;
        padding: 0;
    }

    .context-cards {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .context-card {
        padding: 25px 20px;
    }
    
 
    
    .insights-grid {
        grid-template-columns: 1fr;
    }
    
    .insight-item {
        padding: 15px !important;
    }
     
    
    .insights-header h4 {
        font-size: 24px;
    }
}

/* Print Styles for Professional Market Introduction */
@media print {
    .intro-hero {
        background: #ffffff !important;
        color: #2d3748 !important;
        page-break-inside: avoid;
        
        border: 1px solid #ddd;
    }
   
    
    .context-card {
        page-break-inside: avoid;
        
        border: 1px solid #ddd;
        background: #ffffff !important;
    }
    
    .market-insights-summary {
        background: #f8f9fa !important;
        page-break-inside: avoid;
        border: 1px solid #ddd;
    }
    
    .insight-item {
        
        border: 1px solid #ddd;
        background: white !important;
    }
}

/* Typography Consistency Overrides */
/* Ensure all section headers use consistent styling */
.section h2 {
    
    font-size: var(--h2-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    border-bottom: 2px solid var(--accent-color) !important;
    padding-bottom: 8px !important;
    margin: 0 0 20px 0 !important;
}

/* Card headers */
.card h3,
.card h4,
.card h5 {
    
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
}

.card h3 {
    font-size: var(--h3-size) !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 15px 0 !important;
}

.card h4 {
    font-size: var(--h4-size) !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 12px 0 !important;
}

.card h5 {
    font-size: var(--h5-size) !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 10px 0 !important;
}

/* Card content */
.card p {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0 0 15px 0 !important;
}

/* Enhanced sections typography */
.metric-content h3,
.context-content h3,
.insight-text strong,
.recommendation-content h4,
.framework-item h4,
.sustainability-category h4,
.benefit-item h4 {
    
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
}

.metric-content h3 {
    font-size: var(--h3-size) !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 15px 0 !important;
}

.context-content h3,
.recommendation-content h4,
.framework-item h4,
.sustainability-category h4,
.benefit-item h4 {
    font-size: var(--h4-size) !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 12px 0 !important;
}

.insight-text strong {
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 22px;
    margin: 0 0 4px 0 !important;
}

/* Content text */
.metric-description,
.card-content p,
.insight-text span,
.recommendation-content p,
.framework-item p,
.sustainability-category p,
.region-content p,
.benefit-item p { 
    font-weight: 400;
    text-align: left;
    font-size: 14px !important;
    color: #666666 !important;
    margin: 0 0 15px 0 !important;
}

.insight-text span {
    font-size: 14px !important;
    color: #666666 !important;
    margin: 0 !important;
}

/* Special elements */
.metric-value-enhanced {
    
    font-size: var(--h2-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
}

.metric-subtitle {
    
    font-size: var(--caption-size) !important;
    font-weight: var(--font-medium) !important;
    color: var(--muted-color) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.trend-text {
    
    font-size: var(--caption-size) !important;
    font-weight: var(--font-medium) !important;
    color: var(--accent-color) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.highlight-text {
    
    font-size: var(--caption-size) !important;
    font-weight: var(--font-medium) !important; 
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.context-subtitle {
    
    font-size: var(--small-size) !important;
    font-weight: var(--font-normal) !important;
    color: var(--muted-color) !important;
    font-style: italic !important;
}

/* Hero section */
.hero-content h3 {
    
    font-size: var(--h2-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 25px 0 !important;
}
 
/* Navigation */
.navigation a {
    
    font-size: var(--small-size) !important;
    font-weight: var(--font-medium) !important;
    color: #666666 !important;
}

.navigation a:hover {
    color: var(--accent-color) !important;
}

/* Footer */
.footer p {
    
    font-size: var(--small-size) !important;
    font-weight: var(--font-normal) !important;
    color: var(--muted-color) !important;
}

/* Print styles for typography */
@media print {
    h1, h2, h3, h4, h5, h6 {
        
        color: #666666 !important;
    }
    
    p, li, span, div {
        
        color: #666666 !important;
    }
    
    .card h3, .card h4, .card h5 {
        
        color: #666666 !important;
    }
    
    .card p {
        
        color: #666666 !important;
    }
}

/* Industry Highlights Section - Professional Design */
.industry-highlights-professional {
    margin: 2rem 0;
    padding: 0;
}

.industry-highlights-professional .section-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.industry-highlights-professional .section-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.industry-highlights-professional .section-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.industry-highlights-professional .section-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 600px;
    margin: 0 auto;
}

/* Main Grid Layout */
.highlights-main-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    margin-bottom: 4rem;
}

 
.column-description {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-normal) !important;
    margin: 0;
}

/* Development and Factor Items */
.developments-list,
.factors-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding: 20px;
}


.developments-list-extra {
    padding: 0 !important;
    gap: 0 !important;
}

.development-item-extra {
    align-items: center !important;
}

.development-item,
.factor-item {
    display: flex;
    border: 1px solid #00000021;
    gap: 10px;
    align-items: flex-start;
    padding: 10px;
    border-radius: 15px; 
}
 
.item-number {
    flex-shrink: 0;
    width: 32px;
    height: 32px; 
    color: #666666;
    border: 1px solid #00000021;
    border-radius: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    
    font-size: var(--small-size) !important;
    font-weight: var(--font-semibold) !important;
    line-height: 1 !important;
}

.item-content {
    flex: 1;
}

 

/* Strategic Positioning Section */
.strategic-positioning {
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    border-radius: 16px;
    padding: 3rem 2rem;
    margin: 0 1rem;
}

.positioning-header {
    text-align: center;
    margin-bottom: 2.5rem;
}

.positioning-title {
    
    font-size: var(--subheading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.positioning-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 500px;
    margin: 0 auto;
}

.positioning-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.positioning-card {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
    text-align: center;
}

.positioning-card:hover {
    transform: translateY(-4px);
    
}
 
.card-title {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.card-description {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .highlights-main-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .positioning-cards {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

@media (max-width: 768px) {
    .industry-highlights-professional .section-header {
        margin-bottom: 2rem;
    }
    
    .highlights-column {
        padding: 1.5rem;
    }
    
    .strategic-positioning {
        padding: 2rem 1rem;
        margin: 0 0.5rem;
    }
    
    .development-item,
    .factor-item {
        padding: 1rem;
        flex-direction: column;
        text-align: center;
    }
     
}

/* Market Analysis Section - Professional Design */
.market-analysis-professional {
    margin: 2rem 0;
    padding: 0;
}

/* MA Header */
.ma-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.ma-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.ma-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.ma-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}
  
/* Porter's Five Forces Section - Professional Design */
.porter-professional {
    margin-top: 2rem;
    padding: 0;
}

/* Porter Header */
.porter-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.porter-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.porter-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.porter-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

/* Assessment Highlight */
.porter-assessment-highlight {
    background: linear-gradient(135deg, #f8fafc 0%, #e8f4f8 100%);
    border-radius: 16px;
    padding: 2.5rem;
    margin: 0 1rem 3rem 1rem;
    border: 1px solid #e2e8f0;
}

.assessment-main {
    display: flex;
    gap: 2rem;
    align-items: flex-start;
}

.assessment-score-card { 
    background: white;
    border-radius: 12px;
    padding: 20px;
    
    border: 1px solid #e8ecf0; 
    min-width: 220px;
    height: -webkit-fill-available;
}

 

.score-icon svg {
    margin-bottom: 10px;
}

.score-content {
    padding: 0;
}

.score-label {
    
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    line-height: var(--line-normal) !important;
    letter-spacing: 0.5px;
    padding-bottom: 10px;
    border-bottom: 1px solid #6666665E;
}

.score-value {
    
    font-size: 24px !important;
    font-weight: 500 !important;
    color: #666666 !important;
    line-height: 1 !important;
    margin: 0.5rem 0;
    display: block;
    padding-top: 10px;
}

.score-number {
    
    font-size: 26px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    line-height: 1 !important;
    display: block;
    border: 1px solid #6666665E;
    width: fit-content;
    padding: 5px;
    border-radius: 8px;
    margin-top: 10px;
}

.assessment-insights {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.insight-item {
    display: flex;
    gap: 10px;
    background: white;
    padding: 5px 15px;
    border-radius: 15px;
    
}
 

.insight-content {
    flex: 1;
}

.insight-content h4 {
    
    font-size: 22px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}
.assessment-insights {
    gap: 20px;
}
.insight-content p {
    
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
}

/* Charts Section */
.porter-charts-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    margin: 0 0 3rem 0;
}

.porter-chart-card {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
}

.chart-header {
    margin-bottom: 1.5rem;
    text-align: center;
}

.chart-title {
    
    font-size: var(--subheading-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0;
}

.chart-subtitle {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-normal) !important;
    margin: 0;
}

/* Forces Grid */
.porter-forces-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem; 
}

.force-card {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.force-card:hover {
    transform: translateY(-3px);
    
}

.force-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid #f1f5f9;
}

.force-icon {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.force-icon-new {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.force-icon-supplier {
    background: linear-gradient(135deg, #8b5cf6, #7c3aed);
}


.force-icon-substitute {
    background: linear-gradient(135deg, #f59e0b, #d97706);
}

.force-icon-rivalry {
    background: linear-gradient(135deg, #ef4444, #dc2626);
}

.force-icon svg {
    width: 20px;
    height: 20px;
}

.force-title-section {
    flex: 1;
}

.force-title {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0;
}

.force-badge {
    margin-bottom: 15px;
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: 6px;
    
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

.force-badge-high {
    background: #FEE2DF;
    color: #E43333;
    border: 1px solid var(--border, #E43333);
}

.force-badge-medium {
    background: #FFF7D7;
    border: 1px solid var(--border2, #F39C12);
    color: #F39C12;
}

.force-badge-low {
    background: #007D2E30;
    color: #00772C;
    border: 1px solid var(--border3, #00772C);
}


.ra-badge.ra-badge-major.high {
    background: #FEE2DF;
    color: #E43333;
    border: 1px solid var(--border, #E43333);
}

.ra-badge.ra-badge-major.medium {
    background: #FFF7D7;
    border: 1px solid var(--border2, #F39C12);
    color: #F39C12;
}

.ra-badge.ra-badge-major.low {
    background: #007D2E30;
    color: #00772C;
    border: 1px solid var(--border3, #00772C);
}

.vc-margin-high {
    background: #FEE2DF !important;
    color: #E43333 !important;
    border: 1px solid var(--border, #E43333) !important;
}

.vc-margin-medium {
    background: #FFF7D7 !important;
    border: 1px solid var(--border2, #F39C12) !important;
    color: #F39C12 !important;
}

.vc-margin-low {
    background: #007D2E30 !important;
    color: #00772C !important;
    border: 1px solid var(--border3, #00772C) !important;
}

.force-analysis {
    margin-top: 15px !important;
    padding-top: 10px;
    border-top: 1px solid #7373734A;
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0 0 1.5rem 0;
}

.force-factors {
    margin-bottom: 1rem;
}

.force-factors-extra {
    margin-bottom: 0;
}

.factors-title {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.75rem 0;
}

.factor-chip {
    display: inline-block;
    padding: 0.5rem 1rem;
    border-radius: 10px;
    margin-bottom: 10px;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #666666 !important;
    line-height: 22px !important;
    border: 1px solid #e2e8f0;
    width: 100%;
}

.force-trend {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 10px;
    border-radius: 6px;
    margin-top: 1rem;
    width: fit-content;
    border: 1px solid #7373734A;
}

.trend-label {
    
    font-size: var(--small-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: 1 !important;
}

.trend-value {
    
    font-size: var(--small-size) !important;
    font-weight: var(--font-semibold) !important;
    line-height: 1 !important; 
    border-radius: 12px;
}

.trend-increasing {
    color: #81BF98;
}

.trend-stable {
    color: #81BF98;
}

.trend-decreasing {
    color: #81BF98;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .industry-title{
        top: 63px !important; 
    }
    .porter-forces-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1024px) {
    .assessment-main {
        flex-direction: column;
    }
    
    .assessment-score-card {
        width: 100%;
        max-width: none;
    }
    
    .porter-charts-section {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .porter-assessment-highlight {
        padding: 1.5rem;
        margin: 0 0.5rem 2rem 0.5rem;
    }
    
    .force-card {
        padding: 1.5rem;
    }
    
    .porter-forces-grid {
        padding: 0 0.5rem;
    }
}

/* Future Scenarios Section - Professional Design */
.future-scenarios-professional {
    margin-top: 2rem;
    padding: 0;
}

.fs-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.fs-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.fs-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.fs-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

.fs-scenarios-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    padding: 0 1rem;
    margin-bottom: 3rem;
}

.fs-scenario-card {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.fs-scenario-card:hover {
    transform: translateY(-4px);
    
}

.fs-optimistic {
    border-top: 4px solid #10b981;
}

.fs-likely {
    border-top: 4px solid #3b82f6;
}

.fs-challenging {
    border-top: 4px solid #f59e0b;
}

.fs-card-header {
    text-align: center;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid #f1f5f9;
}

.fs-scenario-icon {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.fs-scenario-title {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.fs-probability-badge {
    text-align: center;
    padding: 0.75rem;
    background: #f8fafc;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.fs-probability-label {
    
    font-size: var(--small-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    
    letter-spacing: 0.5px;
}

.fs-probability-value {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    margin-left: 0.5rem;
}

.fs-card-content h4 {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.75rem 0;
}

.fs-card-content p {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0 0 1.5rem 0;
}

.fs-card-content p:last-child {
    margin-bottom: 0;
}

.fs-recommendations {
    margin-top: 3rem;
}

/* Drivers & Restraints Section - Professional Design */
.drivers-restraints-professional {
    margin: 2rem 0;
    padding: 0;
}

.dr-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.dr-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.dr-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.dr-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

.dr-drivers-section,
.dr-restraints-section {
    margin: 0;
}

.dr-section-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.dr-header-icon {
    width: 64px;
    height: 64px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.dr-icon-negative {
    background: linear-gradient(135deg, #ef4444, #dc2626);
}

.dr-header-icon svg {
    width: 28px;
    height: 28px;
}

.dr-section-title {
    
    font-size: var(--subheading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0;
}

.dr-section-subtitle {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-normal) !important;
    margin: 0;
}

.dr-main-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    margin: 0 0 3rem 0;
}

.dr-content-card {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.dr-content-card:hover {
    transform: translateY(-4px);
    
}
 

.dr-text {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
}

/* List Styles for Drivers & Restraints */
.dr-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.dr-list-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.25rem;
    padding: 0.75rem;
    border-radius: 8px;
    transition: background-color 0.2s ease;
}

.dr-list-item:last-child {
    margin-bottom: 0;
}

.dr-list-item:hover {
    background-color: #f8fafc;
}

.dr-bullet {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 2px;
}


.dr-bullet-negative {
    background: linear-gradient(135deg, #ef4444, #dc2626);
    color: white;
}

.dr-bullet svg {
    width: 14px;
    height: 14px;
}

.dr-item-text {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    flex: 1;
}

/* Responsive Design for Drivers & Restraints */
@media (max-width: 992px) {
    .dr-main-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .dr-section-header {
        gap: 1rem;
    }
    
    .dr-header-icon {
        width: 56px;
        height: 56px;
    }
    
    .dr-implications-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

@media (max-width: 768px) {
    .dr-content-card {
        padding: 1.5rem;
    }
    
    .dr-implications {
        padding: 0;
    }
    .region-characteristic {
        padding: 5px 10px !important;
    }
    .ca-strengths {
        border-right: none !important;
    }
    .score-label {
        font-size: 20px !important;
    }
    .score-number {
        font-size: 22px;
    }
    .ms-share-value{
        font-size: 20px !important;
    }
    .dr-list-item {
        gap: 0.75rem;
    }
    
    .dr-bullet {
        width: 24px;
        height: 24px;
    }
}
 
/* Market Segmentation Section - Professional Design */
.market-segmentation-professional {
    margin: 2rem 0;
    padding: 0;
}

.ms-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.ms-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.ms-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.ms-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

/* Segments Grid */
.ms-segments-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    margin: 0 0 3rem 0;
}

 

.ms-segment-card:hover {
    transform: translateY(-4px);
    
    border-left-width: 5px;
}

.ms-card-header {
    padding: 1.5rem 1.5rem 1rem 1.5rem;
    border-bottom: 1px solid #e9ecef;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.ms-segment-name {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
    flex: 1;
}

.ms-market-share {
    background: #EAEAEA38;
    border: 1px solid #6666665E;
    border-radius: 6px;
    width: fit-content;
    padding: 5px 10px;
    
}

.ms-share-value {
    font-size: 26px;
    font-weight: 600;
    color: #666666 !important;
    line-height: 1 !important; 
}

.ms-share-label {
    
    font-size: 0.7rem !important;
    font-weight: var(--font-medium) !important;
    color: var(--muted-color) !important;
    
    letter-spacing: 0.5px;
    line-height: 1 !important;
}

.ms-card-body {
    padding: 1rem 1.5rem 1.5rem 1.5rem;
}

.ms-segment-description {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0;
}

/* Targeting Strategy Section */
.ms-targeting-strategy {
    margin: 2rem 0 2rem 0;
    padding: 2.5rem;
    background: linear-gradient(135deg, #f8fafc 0%, #e8f4f8 100%);
    border-radius: 16px;
    border: 1px solid #e2e8f0;
}

.ms-strategy-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.ms-strategy-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

.ms-strategy-title {
    
    font-size: var(--subheading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.ms-strategy-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}
 

.ms-strategy-label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid #f1f5f9;
}

.ms-strategy-label svg {
    color: #5a9b7d;
    flex-shrink: 0;
}

.ms-strategy-label span {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
}

.ms-strategy-content {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0;
}

/* Responsive Design for Market Segmentation */
@media (max-width: 1200px) {
    .ms-strategy-grid {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }
}

@media (max-width: 992px) {
    .ms-segments-grid {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }
    
    .ms-card-header {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .ms-market-share {
        align-self: flex-end;
    }
}

@media (max-width: 768px) {
    .ms-targeting-strategy {
        padding: 1.5rem;
    }
    
    .ms-strategy-header {
        flex-direction: column;
        text-align: center;
    }
    
   
}

/* Executive Summary Section - Professional Design */
.executive-summary-professional {
    margin: 2rem 0;
    padding: 0;
}

.es-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.es-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.es-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.es-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

/* Top Grid - Market Overview & Investment Thesis */
.es-top-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    margin: 0 0 2rem 0;
}

.es-card {
    background: white;
    border-radius: 12px;
    padding: 0;
    
    border: 1px solid #e8ecf0;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    overflow: hidden;
}

.es-card:hover {
    transform: translateY(-4px);
    
}

 
.es-card-header {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0px;
    border-bottom: 1px solid #f1f5f9;
    justify-content: center;
    background: #81BF981A;
}

.es-card-header-extra {
    justify-content: space-between !important;
    padding: 10px 20px !important;
    display: flex;
    align-items: center;
    flex-flow: wrap;
}

.ra-badge {
    background: #fff;
    color: #666666;
    width: fit-content;
    height: max-content;
    border: 1px solid #7373734A;
    border-radius: 8px;
    padding: 5px 10px;
}

span.ra-badge {
    font-size: 12px;
}

.es-card-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}
 
.es-card-title {
    font-weight: 600; 
    font-size: 22px;  
    color: #81BF98;
    margin-bottom: 0;
}

.es-card-title span {
    font-size: 16px;
    color: #666666;
}
.es-card-body {
    padding: 1.5rem;
}

.es-info-row {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    border: 1px solid #00000021;
    border-radius: 15px;
    padding: 10px;
}

.es-info-row-dark {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    border: 1px solid #00000021;
    border-radius: 15px;
    padding: 10px;
    background: #F8F8F8;
}


 
.es-info-row-extra {
    margin-bottom: 0 !important;
}
/*.es-info-row:last-child {
    margin-bottom: 0;
}*/
.es-info-label { 
    font-size: 18px !important;
    border-bottom: 1px solid #6666664D;
    color: #666666 !important; 
    letter-spacing: 0.5px;
}

.es-info-value {
    
    font-size: 14px !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
}

.es-thesis-text {
    
    font-size: 14px !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0 0 1.5rem 0;
    padding-bottom: 20px;
}

.es-bottom-line {
    background: #f8fafc;
    padding: 1.25rem;
    border-radius: 8px;
}

.es-bottom-line-label {
    display: flex;
    align-items: center;
    gap: 0.5rem; 
}

.es-bottom-line-label svg {
    color: #10b981;
}

.es-bottom-line-label span { 
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #666666 !important;
    letter-spacing: 0.5px;
}

.es-bottom-line-text {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0;
}

/* Bottom Grid - Opportunities & Threats */
.es-bottom-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    margin: 0 0 2rem 0;
}

.es-section {
    background: white;
    border-radius: 12px;
    padding: 0;
    
    border: 1px solid #e8ecf0;
    overflow: hidden;
}
 
.es-section-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: #f8fafc;
    border-bottom: 1px solid #e8ecf0;
}

.es-section-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}


.es-section-title {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.es-items-container {
    padding: 1.5rem;
}

.es-item-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #666666;
}

.es-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.5rem;
    border-radius: 6px;
    
    font-size: 0.8125rem !important;
    font-weight: var(--font-medium) !important;
    line-height: 1 !important;
}

.es-opportunity-row{
    display: flex;
    flex-flow: wrap;
    align-items: self-start;
    gap: 20px;
    justify-content: space-between;
}
 
.key-op-left {
    width: 63%;
}
.es-timeline-badge {
    background: #81BF981A;
    color: #81BF98;
    border: 1px solid #81BF98;
    width: fit-content;
}

.es-timeline-badge svg {
    color: #81BF98;
}

.es-likelihood-badge {
    background: #fee2e2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.es-likelihood-badge svg {
    color: #666666;
}

.es-badge.es-timeline-badge.Long-term {
    background: #FEE2DF !important;
    color: #E43333 !important;
    border: 1px solid #E43333 !important;
}
.es-badge.es-timeline-badge.Long-term svg path {
    fill: #E43333;
}

.es-badge.es-timeline-badge.Medium-term {
    background: #FFF7D7 !important;
    border: 1px solid #F39C12 !important;
    color: #F39C12 !important;
}
.es-badge.es-timeline-badge.Medium-term svg path {
    fill: #F39C12;
}

.es-badge.es-timeline-badge.Short-term {
    background: #007D2E30 !important;
    color: #00772C !important;
    border: 1px solid #00772C !important;
}
.es-badge.es-timeline-badge.Short-term svg path {
    fill: #00772C;
}



.es-likelihood-high {
    background: #FEE2DF !important;
    color: #E43333 !important;
    border: 1px solid #E43333 !important;
}
.es-likelihood-high svg path {
    fill: #E43333;
}

.es-likelihood-medium {
    background: #FFF7D7 !important;
    border: 1px solid #F39C12 !important;
    color: #F39C12 !important;
}
.es-likelihood-medium svg path {
    fill: #F39C12;
}

.es-likelihood-low {
    background: #007D2E30 !important;
    color: #00772C !important;
    border: 1px solid #00772C !important;
}
.es-likelihood-low svg path {
    fill: #00772C;
}
/* Responsive Design for Executive Summary */
@media (max-width: 992px) {
    .es-top-grid,
    .es-bottom-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

@media (max-width: 768px) {
    .es-card-header,
    .es-section-header {
        padding: 10px;
    }
    
    .es-card-body,
    .es-items-container {
        padding: 15px;
    }

    .es-card-title {
        font-size: 20px;
    }
    
    .key-op-left {
        width: 100%;
    }

    .es-bottom-grid {
        margin-bottom: 0;
    }

    .executive-summary-professional {
        margin-bottom: 0;
    }
    .es-info-row:last-child {
        margin-bottom: 10px;
    }
    .es-bottom-line {
        padding: 1rem;
    }
}

/* Vertical Segmentation Section - Professional Design */
.vertical-segmentation-professional {
    margin: 2rem 0;
    padding: 0;
}

.vs-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.vs-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.vs-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.vs-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

/* Verticals Grid */
.vs-verticals-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 2rem;
    margin: 0 0 3rem 0;
}

.vs-verticals-grid-extra {
    margin-top: 30px;
}
 
.vs-card-icon {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    margin-bottom: 1.25rem;
}

.vs-card-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.vs-vertical-name {
    
    font-size: 1.25rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.75rem 0;
}

.vs-market-share-badge {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem;
    background: #f8fafc;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.vs-market-share-badge svg {
    color: #5a9b7d;
    flex-shrink: 0;
}

.vs-share-value {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #5a9b7d !important;
    line-height: 1 !important;
}

.vs-share-label {
    
    font-size: 0.75rem !important;
    font-weight: var(--font-medium) !important;
    color: var(--muted-color) !important;
    
    letter-spacing: 0.5px;
}
 
.vs-example-label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.vs-example-label svg {
    color: #10b981;
    flex-shrink: 0;
}

.vs-example-label span {
    
    font-size: 0.875rem !important;
    font-weight: var(--font-semibold) !important;
    color: #10b981 !important;
    
    letter-spacing: 0.5px;
}

.vs-example-text {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0;
}

/* Company Strategy Section - Enhanced */
.vs-strategy-section {
    margin: 3rem 1rem 2rem 1rem;
    padding: 3rem;
    background: linear-gradient(135deg, #f8fafc 0%, #eff6ff 100%);
    border-radius: 20px;
    border: 1px solid #e0e7ff;
    
}

.vs-strategy-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
}

.vs-strategy-icon-large {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    
}

.vs-strategy-header-text {
    text-align: left;
}

.vs-strategy-main-title {
    
    font-size: 1.75rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0;
}

.vs-strategy-subtitle {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: var(--muted-color) !important;
    line-height: var(--line-normal) !important;
    margin: 0;
}

.vs-strategy-grid-enhanced {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

.vs-strategy-card-enhanced {
    background: white;
    border-radius: 16px;
    overflow: hidden;
    
    transition: all 0.3s ease;
    border: 1px solid #e8ecf0;
}

.vs-strategy-card-enhanced:hover {
    transform: translateY(-5px);
    
}

.vs-card-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: #fafbfc;
    border-bottom: 1px solid #e8ecf0;
}

.vs-card-icon-wrapper {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.vs-icon-priorities {
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
}


.vs-icon-resources {
    background: linear-gradient(135deg, #f59e0b, #d97706);
}

.vs-icon-competitive {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.vs-icon-growth {
    background: linear-gradient(135deg, #8b5cf6, #7c3aed);
}

.vs-card-title {
    
    font-size: 1.125rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
    flex: 1;
}

.vs-card-body {
    padding: 1.5rem;
}

.vs-card-content {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0;
}

.vs-card-footer {
    padding: 1rem 1.5rem;
    background: #f8fafc;
    border-top: 1px solid #f1f5f9;
}

.vs-card-badge {
    background: #EAEAEA57;
    color: #666666;
    width: fit-content;
    height: max-content;
    border: 1px solid #7373734A;
    border-radius: 10px;
    padding: 0 5px;
    font-size: 12px;
}

 
.vs-card-badge.high-priority {
    background: #FDECEC;
    color: #C0392B;
    border: 1px solid var(--border, #C0392B);
}
.vs-card-badge.resources,
.ra-badge-significant {
    background: #FFF7D7;
    color: #F39C12;
    border: 1px solid var(--border2, #F39C12);
}
.vs-card-badge.action-plan {
    background: #EBF5FB;
    color: #21618C;
    border: 1px solid var(--border4, #21618C);
}
.vs-card-badge.competitive,
.ra-badge-major {
    background: #F5EBFA;
    color: #7D3C98;
    border: 1px solid var(--Border5, #7D3C98);
}
.vs-card-badge.growth-plan,
.ra-badge-emerging {
    background: #E9F7EF;
    color: #1E8449;
    border: 1px solid var(--border3, #1E8449)
}
 

/* Responsive Design for Vertical Segmentation */
@media (max-width: 1200px) {
    .vs-verticals-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .vs-strategy-grid-enhanced {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 992px) {
    .vs-verticals-grid,
    .vs-strategy-grid-enhanced {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }
    
    .vs-strategy-section {
        padding: 2rem;
    }
    
    .vs-strategy-header {
        flex-direction: column;
        text-align: center;
    }
    
    .vs-strategy-header-text {
        text-align: center;
    }
}

@media (max-width: 768px) {
    .vs-vertical-card,
    .vs-strategy-section {
        padding: 1.5rem;
    }
    
    .vs-card-icon {
        width: 48px;
        height: 48px;
    }
    
    .vs-strategy-card-enhanced {
        margin-bottom: 1rem;
    }
    
    .vs-card-header {
        padding: 1.25rem;
    }
    
    .vs-card-body {
        padding: 1.25rem;
    }
    
    .vs-card-footer {
        padding: 0.875rem 1.25rem;
    }
}

/* Regional Analysis Section - Professional Design */
.regional-analysis-professional {
    margin: 2rem 0;
    padding: 0;
}

.ra-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    margin-bottom: 3rem; 
}

.ra-header-icon {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    
}

.ra-header-text {
    text-align: left;
}

.ra-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0;
}

.ra-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-normal) !important;
    margin: 0;
}

/* Regional Cards Grid */
.ra-regions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 2rem;
    margin: 0 1rem 3rem 1rem;
}

.ra-region-card {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    
    border: 1px solid #e8ecf0;
    
    transition: all 0.3s ease;
}

.ra-region-card:hover {
    transform: translateY(-5px);
    
    border-left-width: 6px;
}

.ra-card-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: #fafbfc;
    border-bottom: 1px solid #e8ecf0;
}

.ra-region-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.ra-region-name {
    
    font-size: 1.125rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
    flex: 1;
}

.ra-card-body {
    padding: 1.5rem;
}

.ra-market-share-display {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: #f8fafc;
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    margin-bottom: 1.25rem;
}

.ra-share-icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.ra-share-content {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1;
}

.ra-share-label {
    
    font-size: 0.75rem !important;
    font-weight: var(--font-medium) !important;
    color: var(--muted-color) !important;
    
    letter-spacing: 0.5px;
    line-height: 1 !important;
}

.ra-share-value {
    
    font-size: 1.75rem !important;
    font-weight: var(--font-bold) !important;
    color: #5a9b7d !important;
    line-height: 1 !important;
}

.ra-description {
    margin-top: 0.5rem;
}

.ra-description-text {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0;
    padding-bottom: 15px;
}
 

/* Regional Strategy Section */
.ra-strategy-section {
    margin: 0 1rem 3rem 1rem;
    padding: 2rem;
    background: linear-gradient(135deg, #f8fafc 0%, #eff6ff 100%);
    border-radius: 16px;
    border: 1px solid #e0e7ff;
}

.ra-strategy-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.ra-strategy-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

.ra-strategy-title {
    
    font-size: var(--subheading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.ra-strategy-content {
    background: white;
    padding: 1.5rem;
    border-radius: 10px;
}

.ra-strategy-content p {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0;
}

/* Responsive Design for Regional Analysis */
@media (max-width: 1200px) {
    .ra-regions-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 992px) {
    .ra-regions-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .ra-header {
        flex-direction: column;
        text-align: center;
    }
    
    .ra-header-text {
        text-align: center;
    }
}

@media (max-width: 768px) {
   
    
    .ra-strategy-section {
        padding: 1.5rem;
    }
    
    .ra-market-share-display {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* Competitive Analysis Section - Professional Design */
.competitive-analysis-professional {
    margin: 2rem 0;
    padding: 0;
}

.ca-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.ca-header-icon {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    
}

.ca-header-text {
    text-align: left;
}

.ca-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0;
}

.ca-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-normal) !important;
    margin: 0;
}

/* Competitors Grid */
.ca-competitors-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 2rem;
    margin: 0 0 3rem 0;
}

.ca-competitor-card {
    background: white;
    border-radius: 14px;
    overflow: hidden;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
    position: relative;
}

 
.ca-card-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: #fafbfc;
    border-bottom: 1px solid #e8ecf0;
}

.ca-competitor-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, #5a9b7d, #4a8b6d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.ca-header-content {
    flex: 1;
}

.ca-competitor-name {
    
    font-size: 1.125rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0;
}

.ca-metrics-row {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.ca-market-share {
    
    font-size: 1.25rem !important;
    font-weight: var(--font-bold) !important;
    color: #5a9b7d !important;
    line-height: 1 !important;
}

.ca-threat-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    
    font-size: 0.75rem !important;
    font-weight: var(--font-semibold) !important;
    
    letter-spacing: 0.5px;
    line-height: 1 !important;
}

.ca-threat-badge svg {
    flex-shrink: 0;
}

.ca-threat-badge.ca-threat-high {
    background: #FEE2DF;
    color: #E43333;
    border: 1px solid var(--border, #E43333);
}
 

.ca-threat-badge.ca-threat-medium {
    background: #FFF7D7;
    color: #F39C12;
    border: 1px solid var(--border2, #F39C12);
}
 

.ca-threat-badge.ca-threat-low {
    background: #81BF98;
    color: #fff;
    border: 1px solid #81BF98;
}
 


.score-value.High {
    color: #E43333 !important;
}

.score-value.Medium {
    color: #F39C12 !important;
}

.score-value.Low {
    color: #81BF98 !important;
}


.score-number.High {
    background: #FEE2DF;
    color: #E43333;
    border: 1px solid var(--border, #E43333);
}
 

.score-number.Medium {
    background: #FFF7D7;
    color: #F39C12;
    border: 1px solid var(--border2, #F39C12);
}
 

.score-number.Low {
    background: #81BF98;
    color: #fff;
    border: 1px solid #81BF98;
}




.ca-card-body {
    padding: 1.5rem;
}

/* Positioning Section */
 

.ca-section-label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.ca-section-label svg {
    color: #5a9b7d;
    flex-shrink: 0;
}

.ca-section-label span {
    
    font-size: 0.875rem !important;
    font-weight: var(--font-semibold) !important;
    color: var(--muted-color) !important;
    
    letter-spacing: 0.5px;
}

.ca-positioning-text {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin: 0;
}

/* SWOT Section */
.ca-swot-section {
    padding: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    border: 1px solid #6666665E;
    border-radius: 12px;
}

 
.ca-strengths {
    border-right: 1px solid #6666665E;
    padding-right: 10px;
}
.ca-swot-header {
    display: flex;
    align-items: center;
    gap: 0.5rem; 
    padding-bottom: 0.5rem; 
}

.ca-strengths .ca-swot-header svg {
    color: #10b981;
}

.ca-weaknesses .ca-swot-header svg {
    color: #ef4444;
}

.ca-swot-header span {
    
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #666666 !important;
    
    letter-spacing: 0.3px;
}

.ca-swot-content {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.ca-swot-item {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    
    font-size: 0.875rem !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: 1.5 !important;
}

.ca-strength-item svg {
    color: #10b981;
    margin-top: 2px;
    flex-shrink: 0;
}

.ca-weakness-item svg {
    color: #ef4444;
    margin-top: 2px;
    flex-shrink: 0;
}

.ca-swot-item span {
    flex: 1;
}

/* Responsive Design for Competitive Analysis */
@media (max-width: 1200px) {
    .ca-competitors-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 992px) {
    .ca-competitors-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .ca-header {
        flex-direction: column;
        text-align: center;
    }
    
    .ca-header-text {
        text-align: center;
    }
}

@media (max-width: 768px) {
    .ca-card-header,
    .ca-card-body {
        padding: 1.25rem;
    }
    
    .ca-swot-section {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .ca-competitor-icon {
        width: 40px;
        height: 40px;
    }
}

/* Affinity Groups Section - Professional Design */
.affinity-professional {
    margin: 2rem 0;
    padding: 0;
}

.affinity-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.affinity-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    position: relative;
}

.affinity-title::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #666666, var(--accent-color));
    border-radius: 2px;
}

.affinity-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

.affinity-groups-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
    padding: 0 1rem;
    margin-bottom: 3rem;
    align-items: stretch;
}

.affinity-group-card {
    background: white;
    border-radius: 16px;
    padding: 0;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.affinity-group-card:hover {
    transform: translateY(-8px);
    
}

.affinity-tech {
    border-top: 5px solid #3b82f6;
}

.affinity-tech .affinity-card-header {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.affinity-quality {
    border-top: 5px solid #8b5cf6;
}

.affinity-quality .affinity-card-header {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}

.affinity-budget {
    border-top: 5px solid #10b981;
}

.affinity-budget .affinity-card-header {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.affinity-card-header {
    text-align: center;
    padding: 2.5rem 2rem 2rem 2rem;
    color: white;
    position: relative;
}

.affinity-icon {
    font-size: 4rem;
    margin-bottom: 1rem;
    filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.2));
}

.affinity-group-name {
    
    font-size: 1.4rem !important;
    font-weight: var(--font-bold) !important;
    color: white !important;
    line-height: var(--line-tight) !important;
    margin: 0;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.affinity-metrics {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 0;
    margin-bottom: 20px;
}

.affinity-metric {
    text-align: left;
    padding: 10px;
    background: #EAEAEA63;
    border-radius: 8px;
    position: relative;
    border: 1px solid #6666665E;
}
 

.affinity-metric-extra .metric-value {
    font-size: 26px !important;
    font-weight: 600 !important;
}



.metric-label {
    display: block;
    
    font-size: 14px !important;
    font-weight: var(--font-bold) !important;
    color: #94a3b8 !important;
    
    letter-spacing: 1px;
    margin-bottom: 0;
}

.metric-value {
    display: block;
    
    font-size: 1.75rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: 1 !important;
}

.affinity-details {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 2rem;
    flex: 1;
}

.affinity-detail-item {
    padding: 1.25rem 0;
    border-bottom: 1px solid #f1f5f9;
}

.affinity-detail-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.affinity-detail-item h4 {
    
    font-size: 0.85rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.75rem 0;
    
    letter-spacing: 0.5px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

 
.affinity-detail-item p {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0;
}

.affinity-strategy {
    margin-top: 3rem;
}

.affinity-strategy-header {
    text-align: center;
    margin-bottom: 2.5rem;
}

.affinity-strategy-title {
    
    font-size: var(--subheading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.affinity-strategy-subtitle {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
}

.affinity-strategy-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.affinity-strategy-card {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    
    text-align: center;
    transition: all 0.3s ease;
}

.affinity-strategy-card:hover {
    transform: translateY(-3px);
    
}

.strategy-icon {
    font-size: 2.5rem;
    margin-bottom: 1rem;
}

.affinity-strategy-card h4 {
    
    font-size: var(--large-size) !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.affinity-strategy-card p {
    
    font-size: var(--body-size) !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
}

/* Responsive Designs */
@media (max-width: 1024px) {
    .fs-scenarios-grid,
    .dr-implications-grid,
    .affinity-groups-grid,
    .affinity-strategy-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .affinity-strategy {
        padding: 2rem 1rem;
        margin: 0 0.5rem;
    }
    
    .affinity-metrics {
        flex-direction: column;
        gap: 0.5rem;
    }
}

/* Economic & Demographic Trends Professional Styling */
.economic-demographic-professional {
    padding-top: 3rem;
}

.edt-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.edt-header-icon {
    width: 4rem;
    height: 4rem;
    margin: 0 auto 1.5rem;
    color: var(--accent-color);
    stroke-width: 1.5;
}

.edt-header h3 {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.edt-header p {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

.edt-indicators-section,
.edt-demographic-section,
.edt-impact-section {
    margin-bottom: 2rem; 
}

.edt-section-title {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid #e8ecf0;
}

.edt-section-title .section-icon {
    width: 2rem;
    height: 2rem;
    color: var(--accent-color);
    flex-shrink: 0;
}

.edt-section-title h4 {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.edt-analysis-card {
    background: linear-gradient(135deg, #f8fafc 0%, #e8f4f8 100%);
    padding: 1.5rem 2rem;
    border-radius: 8px;
    margin-bottom: 2rem;
}

.edt-analysis-card p {
    
    font-size: 1rem !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
}

.edt-indicators-grid,
.edt-demographic-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.edt-indicator-card,
.edt-demo-card {
    background: white;
    border-radius: 12px;
    padding: 2rem 1.5rem;
    
    border: 1px solid #e8ecf0;
    text-align: center;
    transition: all 0.3s ease;
}

.edt-indicator-card:hover,
.edt-demo-card:hover {
    transform: translateY(-4px);
    
}

.edt-indicator-card .indicator-icon,
.edt-demo-card .demo-icon {
    width: 3rem;
    height: 3rem;
    margin: 0 auto 1rem;
    padding: 0.75rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.edt-indicator-card .indicator-icon {
    background: #f0f9ff;
}

.edt-indicator-card .indicator-icon.positive {
    background: #dcfce7;
}

.edt-indicator-card .indicator-icon.positive svg {
    color: #10b981;
}

.edt-indicator-card .indicator-icon.negative {
    background: #fee2e2;
}

.edt-indicator-card .indicator-icon.negative svg {
    color: #ef4444;
}

.edt-demo-card .demo-icon {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.edt-indicator-card .indicator-icon svg,
.edt-demo-card .demo-icon svg {
    width: 1.5rem;
    height: 1.5rem;
    color: #3b82f6;
}

.edt-demo-card .demo-icon svg {
    color: white;
}

.edt-indicator-card h5,
.edt-demo-card h5 {
    
    font-size: 0.85rem !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.75rem 0;
    
    letter-spacing: 0.5px;
}

.indicator-value,
.demo-value {
    font-size: 26px !important;
    font-weight: 600 !important;
    color: #000 !important;
    line-height: 1 !important;
    margin-bottom: 5px;
}


.tech-metrics-extra {
    display: flex;
    gap: 10px;
    align-items: flex-end;
    background: #EAEAEA63;
    padding: 5px 10px;
    width: fit-content;
    border: 1px solid #6666665E;
    border-radius: 6px;
}
 

.indicator-label {
    
    font-size: 0.75rem !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    
    letter-spacing: 0.5px;
}

.edt-impact-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.edt-impact-card {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.edt-impact-card:hover {
    transform: translateY(-4px);
    
}

.edt-impact-card .impact-icon {
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: 1.5rem;
    padding: 0.875rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.edt-impact-card .impact-icon.opportunity {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.edt-impact-card .impact-icon.strategy {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}

.edt-impact-card .impact-icon.timing {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.edt-impact-card .impact-icon svg {
    width: 2rem;
    height: 2rem;
    color: white;
}

.edt-impact-card h5 {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.edt-impact-card p {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0;
}

/* Financial Benchmarking Professional Styling */
.financial-benchmarking-professional {
    padding-top: 3rem;
}

.fb-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.fb-header-icon {
    width: 4rem;
    height: 4rem;
    margin: 0 auto 1.5rem;
    color: var(--accent-color);
    stroke-width: 1.5;
}

.fb-header h3 {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.fb-header p {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}
 

.fb-section-title {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid #e8ecf0;
}

.fb-section-title .section-icon {
    width: 2rem;
    height: 2rem;
    color: var(--accent-color);
    flex-shrink: 0;
}

.fb-section-title h4 {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.fb-metrics-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-bottom: 2rem;
}

.fb-metric-card {
    background: white;
    border-radius: 12px;
    padding: 2rem 1.5rem;
    
    border: 1px solid #e8ecf0;
    text-align: center;
    transition: all 0.3s ease;
    border-top: 4px solid var(--accent-color);
}

.fb-metric-card:hover {
    transform: translateY(-4px);
    
}

.fb-metric-card .metric-icon {
    width: 3.5rem;
    height: 3.5rem;
    margin: 0 auto 1.5rem;
    padding: 0.875rem;
    border-radius: 12px;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.fb-metric-card .metric-icon svg {
    width: 2rem;
    height: 2rem;
    color: white;
}

.fb-metric-card h5 {
    
    font-size: 0.9rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
    
    letter-spacing: 0.5px;
}

.fb-metric-card .metric-value {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: 1.2 !important;
    margin: 0;
}

.fb-benchmark-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.fb-benchmark-card {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.fb-benchmark-card:hover {
    transform: translateY(-4px);
    
}

.fb-benchmark-card .benchmark-icon {
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: 1.5rem;
    padding: 0.875rem;
    border-radius: 12px;
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.fb-benchmark-card .benchmark-icon svg {
    width: 2rem;
    height: 2rem;
    color: white;
}

.fb-benchmark-card h5 {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.fb-benchmark-card p {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0;
}
 

/* Market Entry Strategy Professional Styling */
.market-entry-professional {
    padding-top: 3rem;
}

.mes-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.mes-header-icon {
    width: 4rem;
    height: 4rem;
    margin: 0 auto 1.5rem;
    color: var(--accent-color);
    stroke-width: 1.5;
}

.mes-header h3 {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.mes-header p {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

.mes-assessment-section,
.mes-strategy-section,
.mes-barriers-section,
.mes-success-section {
    margin-bottom: 3rem; 
}

.mes-section-title {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid #e8ecf0;
}

.mes-section-title .section-icon {
    width: 2rem;
    height: 2rem;
    color: var(--accent-color);
    flex-shrink: 0;
}

.mes-section-title h4 {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.mes-assessment-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    margin-bottom: 2rem;
}

.mes-assessment-card {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.mes-assessment-card:hover {
    transform: translateY(-6px);
    
}

.mes-assessment-card .assessment-icon {
    width: 4rem;
    height: 4rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mes-assessment-card .assessment-icon svg {
    width: 2rem;
    height: 2rem;
    color: white;
}

.mes-assessment-card h5 {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.mes-assessment-card p {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0;
}

.mes-recommended-card {
    background: white;
    border-radius: 16px;
    padding: 2.5rem;
    
    border: 1px solid #e8ecf0;
}

.strategy-header {
    margin-bottom: 2rem;
}

.strategy-badge {
    display: inline-block;
    background: linear-gradient(135deg, var(--accent-color) 0%, #2563eb 100%);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    
    font-size: 0.85rem !important;
    font-weight: var(--font-semibold) !important;
    
    letter-spacing: 0.5px;
    margin-bottom: 1rem;
}

.strategy-header h5 {
    
    font-size: 1.3rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}
 
.sub-title-res {
    font-size: 18px;
    padding-bottom: 10px;
    font-weight: 400;
    color: #666666;
}

.strategy-advantages:last-child,
.strategy-implementation:last-child,
.strategy-resources:last-child {
    margin-bottom: 0;
}

.strategy-advantages h6,
.strategy-implementation h6,
.strategy-resources h6 {
    
    font-size: 1rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    margin: 0 0 0.75rem 0;
}

.strategy-advantages p,
.strategy-resources p {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0;
}

.implementation-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.implementation-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid #f1f5f9;
}

.implementation-list li:last-child {
    border-bottom: none;
}

.implementation-list li svg {
    width: 1.25rem;
    height: 1.25rem;
    color: var(--accent-color);
    flex-shrink: 0;
    margin-top: 0.25rem;
}

.implementation-list li span {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
}

.mes-barriers-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.mes-barrier-card {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.mes-barrier-card:hover {
    transform: translateY(-6px);
    
}

.barrier-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1rem;
    gap: 1rem;
}

.barrier-header h5 {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.barrier-level {
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    
    font-size: 0.75rem !important;
    font-weight: var(--font-bold) !important;
    
    letter-spacing: 0.5px;
    white-space: nowrap;
}

.barrier-level.low {
    background: #dcfce7;
    color: #059669;
}

.barrier-level.medium {
    background: #fef3c7;
    color: #d97706;
}

.barrier-level.high {
    background: #fee2e2;
    color: #dc2626;
}

.mes-barrier-card p {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 0 1rem 0;
}

.barrier-strategy {
    background: #f8fafc;
    padding: 1rem;
    border-radius: 8px;
    
    font-size: 0.9rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
}

.barrier-strategy strong {
    color: #666666;
    font-weight: var(--font-semibold) !important;
}

.mes-success-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

.mes-success-card {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.mes-success-card:hover {
    transform: translateY(-6px);
    
}

.mes-success-card .success-icon {
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: 1.5rem;
    padding: 0.875rem;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--accent-color) 0%, #2563eb 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.mes-success-card .success-icon svg {
    width: 2rem;
    height: 2rem;
    color: white;
}

.mes-success-card h5 {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.mes-success-card p {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0;
}

/* Responsive Design for Market Entry Strategy */
@media (max-width: 1024px) {
    .mes-assessment-grid {
        grid-template-columns: 1fr;
    }
    
    .mes-barriers-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .mes-barriers-grid,
    .mes-success-grid {
        grid-template-columns: 1fr;
    }
    
    .mes-header h3 {
        font-size: 1.75rem !important;
    }
    
    .mes-section-title h4 {
        font-size: 1.25rem !important;
    }
}

/* Regional Segmentation Professional Styling */
.regional-segmentation-professional {
    padding-top: 3rem;
}

.rs-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.rs-header-icon {
    width: 4rem;
    height: 4rem;
    margin: 0 auto 1.5rem;
    color: var(--accent-color);
    stroke-width: 1.5;
}

.rs-header h3 {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.rs-header p {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

 
.rs-section-title {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid #e8ecf0;
}

.rs-section-title .section-icon {
    width: 2rem;
    height: 2rem;
    color: var(--accent-color);
    flex-shrink: 0;
}

.rs-section-title h4 {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.rs-regions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
}

.rs-region-card {
    background: white;
    border-radius: 16px;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.rs-region-card:hover {
    transform: translateY(-6px);
    
}

.region-header {
    padding: 2rem;
    color: white;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.region-header svg {
    width: 2.5rem;
    height: 2.5rem;
    flex-shrink: 0;
}

.region-header h5 {
    
    font-size: 1.2rem !important;
    font-weight: var(--font-bold) !important;
    color: white !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.region-content {
    padding: 20px;
    flex: 1;
}

.region-metric {
    background: #f8fafc;
    padding: 1rem 1.5rem;
    border-radius: 8px;
    margin-bottom: 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.metric-label {
    
    font-size: 0.85rem !important;
    font-weight: var(--font-semibold) !important;
    color: #666666 !important;
    
    letter-spacing: 0.5px;
}

.metric-value {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: var(--accent-color) !important;
}

.region-detail {
    margin-bottom: 15px;
}

.region-detail h6 { 
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #666666 !important;
    margin: 0 0 5px 0;
    
    letter-spacing: 0.5px;
}

.region-detail p { 
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #666 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

.region-characteristic {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 5px;
    border-radius: 8px;
    border: 1px solid #6666665E;
    margin-top: 15px;
}
 
.region-characteristic span {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #666666 !important;
    line-height: 1.6 !important;
}

/* Regulatory Environment Professional Styling */
.regulatory-environment-professional {
    padding-top: 3rem;
}

.re-header {
    text-align: center;
    margin-bottom: 3rem;
    padding: 0 1rem;
}

.re-header-icon {
    width: 4rem;
    height: 4rem;
    margin: 0 auto 1.5rem;
    color: var(--accent-color);
    stroke-width: 1.5;
}

.re-header h3 {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.re-header p {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-normal) !important;
    color: #666666 !important;
    line-height: var(--line-relaxed) !important;
    margin: 0;
    max-width: 700px;
    margin: 0 auto;
}

.re-categories-section,
.re-implications-section {
    margin-bottom: 3rem; 
}

.re-section-title {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 3px solid #e8ecf0;
}

.re-section-title .section-icon {
    width: 2rem;
    height: 2rem;
    color: var(--accent-color);
    flex-shrink: 0;
}

.re-section-title h4 {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0;
}

.re-categories-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

.re-category-card {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.re-category-card:hover {
    transform: translateY(-6px);
    
}

.re-category-card .category-icon {
    width: 4rem;
    height: 4rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.re-category-card .category-icon svg {
    width: 2rem;
    height: 2rem;
    color: white;
}

.category-number {
    position: absolute;
    top: -0.5rem;
    right: -0.5rem;
    background: white;
    color: #666666;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    
    font-size: 0.85rem !important;
    font-weight: var(--font-bold) !important;
    
}

.re-category-card h5 {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1.5rem 0;
}

.category-summary {
    margin-top: 1rem;
}

.summary-points {
    list-style: none;
    padding: 0;
    margin: 0;
}

.summary-points li {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-bottom: 1px solid #f1f5f9;
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
}

.summary-points li:last-child {
    border-bottom: none;
}


.re-implications-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

.re-implication-card {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    
    border: 1px solid #e8ecf0;
    transition: all 0.3s ease;
}

.re-implication-card:hover {
    transform: translateY(-6px);
    
}

.re-implication-card .implication-icon {
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: 1.5rem;
    padding: 0.875rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.re-implication-card .implication-icon svg {
    width: 2rem;
    height: 2rem;
    color: white;
}

.re-implication-card h5 {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0;
}

.re-implication-card p {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .re-categories-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .rs-header h3,
    .re-header h3 {
        font-size: 1.75rem !important;
    }
    
    .rs-section-title h4,
    .re-section-title h4 {
        font-size: 1.25rem !important;
    }
    
    .re-implications-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   VALUE CHAIN ANALYSIS - PROFESSIONAL DESIGN
   ======================================== */

.vc-column-header {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #7373734A;
    border-radius: 15px;
    padding: 20px;
}

.vc-column-header h3{
    color: #000;
}
.vc-column-title {
    margin-bottom: 0;
    font-size: 22px;
    font-weight: 600;
    color: #000 !important;
}
.value-chain-professional {
    background: #ffffff;
    border-radius: 16px; 
    margin-top: 2rem;
    
}

/* Section Header */
.vc-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 3px solid #e8ecf0;
}

.vc-header-icon {
    width: 4rem;
    height: 4rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.vc-header-icon svg {
    color: white;
    stroke-width: 2;
}

.vc-header-text {
    flex: 1;
}

.vc-title {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0 !important;
}

.vc-subtitle {
    
    font-size: 1.05rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: var(--line-normal) !important;
    margin: 0 !important;
}

/* Value Chain Stages Grid */
.vc-stages-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 3rem;
}

.vc-column {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

 

.vc-column-icon {
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
    
}

.vc-upstream .vc-column-icon svg {
    color: #3b82f6;
}

.vc-midstream .vc-column-icon svg {
    color: #8b5cf6;
}

.vc-downstream .vc-column-icon svg {
    color: #ec4899;
}
 

/* Stage Cards */
.vc-stages {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.vc-stage-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 1.75rem;
    transition: all 0.3s ease;
    
}

.vc-stage-card:hover {
    transform: translateY(-4px);
    
    border-color: #cbd5e1;
}

.vc-card-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.vc-stage-number {
    width: 2.25rem;
    height: 2.25rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--primary-font);
    font-size: 0.95rem;
    font-weight: var(--font-bold);
    
    flex-shrink: 0;
}

.vc-stage-title {
    
    font-size: 1.1rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.vc-stage-description {
    
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 0 1.25rem 0 !important;
}

 .vc-stage-metrics {
    padding-bottom: 15px;
    display: flex;
    gap: 15px;
 }
 .vc-metric-badge {
    background: #fff;
    color: #666666;
    width: fit-content;
    height: max-content;
    border: 1px solid #7373734A;
    border-radius: 8px;
    padding: 0 10px;
 }

/* Value Chain Dynamics Section */
 
.vc-dynamics-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.vc-dynamics-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.vc-dynamics-icon svg {
    color: white;
    stroke-width: 2;
}

.vc-dynamics-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.vc-dynamics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
}

.vc-dynamic-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 2rem;
    transition: all 0.3s ease;
    
}

.vc-dynamic-card:hover {
    transform: translateY(-4px);
    
    border-color: #cbd5e1;
}

.vc-dynamic-icon {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
}

.vc-dynamic-icon svg {
    color: white;
    stroke-width: 2;
}

.vc-power {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    
}

.vc-margin-dist {
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);
    
}

.vc-dependencies {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
    
}

.vc-disruption {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    
}

.vc-dynamic-title {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0 !important;
}

.vc-dynamic-description {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Responsive Design - Value Chain */
@media (max-width: 1200px) {
    .vc-stages-grid {
        grid-template-columns: 1fr;
    }
    
    .vc-column {
        padding-bottom: 2rem;
        border-bottom: 2px solid #e8ecf0;
    }
    
    .vc-column:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }
}

@media (max-width: 768px) {
    .marketReport_container {
        padding: 0 !important;
    }

    html.light .marketReport .right_wrapper .accordion-item {
        padding: 20px !important;
    } 

    .regional-segmentation-professional {
        margin-top: 20px !important;
    }
    
    .vc-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .vc-title {
        font-size: 1.65rem !important;
    }
    
    .vc-subtitle {
        font-size: 0.95rem !important;
    }
    
    .vc-stages-grid {
        gap: 1.5rem;
    }
    
    .vc-stage-card {
        padding: 1.25rem;
    }
    
    .vc-dynamics-grid {
        grid-template-columns: 1fr;
    }
    
    .vc-dynamics-title {
        font-size: 1.35rem !important;
    }
}

@media (max-width: 480px) {
    .vc-header-icon {
        width: 3rem;
        height: 3rem;
    }
    
    .vc-header-icon svg {
        width: 32px;
        height: 32px;
    }
    
    .vc-title {
        font-size: 1.45rem !important;
    }
    
    .vc-stage-metrics {
        flex-direction: column;
    }
     
}

/* ========================================
   TECHNOLOGY ADVANCEMENTS - PROFESSIONAL DESIGN
   ======================================== */

.tech-metrics {
    display: flex;
    gap: 10px;
}

.tech-metric {
    border: 1px solid #7373734A;
    padding: 2px 10px;
    border-radius: 6px;
    margin-bottom: 10px;
    width: fit-content;
}

.technology-professional {
    background: #ffffff;
    border-radius: 16px; 
    margin: 2rem 0;
    
}

/* Section Header */
.tech-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 3px solid #e8ecf0;
}

.tech-header-icon {
    width: 4rem;
    height: 4rem;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.tech-header-icon svg {
    color: white;
    stroke-width: 2;
}

.tech-header-text {
    flex: 1;
}

.tech-title {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0 !important;
}

.tech-subtitle {
    
    font-size: 1.05rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: var(--line-normal) !important;
    margin: 0 !important;
}

/* Technology Overview Section */
.tech-overview-section {
    background: linear-gradient(135deg, #f8fafc 0%, #e8ecf0 100%);
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    padding: 2rem;
    margin-bottom: 3rem;
}

.tech-overview-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.overview-icon {
    width: 3rem;
    height: 3rem;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.overview-icon svg {
    color: white;
    stroke-width: 2;
}

.tech-overview-title {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.tech-overview-content {
    padding-left: 4rem;
}

.tech-overview-description {
    
    font-size: 1rem !important;
    font-weight: var(--font-normal) !important;
    color: #475569 !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

/* Technology Strategy Section */
.tech-strategy-section {
    margin-top: 3rem;
}

.tech-strategy-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.strategy-header-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.strategy-header-icon svg {
    color: white;
    stroke-width: 2;
}

.tech-strategy-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

/* Technology Strategy Grid */
 
.item-content-extra .es-info-value {
    margin-bottom: 0 !important;
}

.development-item-extra {
    display: flex;
    border: 1px solid #00000021;
    gap: 10px;
    align-items: center;
    padding: 10px;
    border-radius: 15px; 
    margin-bottom: 10px;
}

/* Implementation Timeline */
.implementation-timeline {
    list-style: none;
    padding: 0;
    margin: 0;
    counter-reset: timeline-counter;
}

.timeline-step {
    position: relative;
    padding: 1rem 0 1rem 3rem;
    counter-increment: timeline-counter;
}

.timeline-step:last-child {
    border-left-color: transparent;
}
 

.step-text {
    font-family: var(--primary-font);
    font-size: 0.95rem;
    font-weight: var(--font-normal);
    color: #475569;
    line-height: 1.6;
    display: block;
}

.implementation-text {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #475569 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Investment, Advantage, and Timing Content */
.investment-content,
.advantage-content,
.timing-content {
    padding: 0.5rem;
}

.investment-text,
.advantage-text,
.timing-text {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #475569 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Responsive Design - Technology Advancements */
@media (max-width: 1200px) {
    .tech-strategy-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

@media (max-width: 768px) {
    
    .tech-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .tech-title {
        font-size: 1.65rem !important;
    }
    
    .tech-subtitle {
        font-size: 0.95rem !important;
    }
    
    .tech-overview-content {
        padding-left: 0;
    }
    
    .tech-strategy-grid {
        grid-template-columns: 1fr;
    }
    
    .tech-strategy-title {
        font-size: 1.35rem !important;
    }
}

@media (max-width: 480px) {
    .tech-header-icon {
        width: 3rem;
        height: 3rem;
    }
    
    .tech-header-icon svg {
        width: 32px;
        height: 32px;
    }
    
    .tech-title {
        font-size: 1.45rem !important;
    }
    
    .tech-overview-section {
        padding: 1.25rem;
    }
    
    .tech-strategy-card {
        padding: 1.25rem;
    }
    
    .timeline-step {
        padding-left: 2.5rem;
    }
}

/* ========================================
   CUSTOMER TRENDS - PROFESSIONAL DESIGN
   ======================================== */

.customer-trends-professional {
    background: #ffffff;
    border-radius: 16px; 
    margin: 2rem 0;
    
}

/* Section Header */
.ct-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 3px solid #e8ecf0;
}

.ct-header-icon {
    width: 4rem;
    height: 4rem;
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.ct-header-icon svg {
    color: white;
    stroke-width: 2;
}

.ct-header-text {
    flex: 1;
}

.ct-title {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0 !important;
}

.ct-subtitle {
    
    font-size: 1.05rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: var(--line-normal) !important;
    margin: 0 !important;
}

/* Customer Trends Section */
.ct-trends-section {
    margin-bottom: 3rem;
}

.ct-trends-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 1.5rem;
}

.ct-trend-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 2rem;
    transition: all 0.3s ease;
    
    position: relative;
}
 

.ct-trend-card:hover {
    transform: translateY(-4px);
    
    border-color: #cbd5e1;
}


.trend-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}

.trend-number {
    width: 2.5rem;
    height: 2.5rem;
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);
    color: white;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--primary-font);
    font-size: 1.1rem;
    font-weight: var(--font-bold);
    
}

.trend-icon {
    width: 2.5rem;
    height: 2.5rem;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.trend-icon svg {
    color: white;
    stroke-width: 2;
}

.trend-title {
    
    font-size: 1.25rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0 !important;
}

.trend-description {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 0 1.5rem 0 !important;
}

/* Trend Impact Box */
.trend-impact-box {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border: 1px solid #bae6fd;
    border-radius: 10px;
    padding: 1.25rem;
}

.impact-label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--primary-font);
    font-size: 0.875rem;
    font-weight: var(--font-bold);
    color: #0369a1;
    
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.impact-label svg {
    width: 16px;
    height: 16px;
    color: #0369a1;
}

.impact-text {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-medium) !important;
    color: #0c4a6e !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Implications Section */
.ct-implications-section {
    margin-top: 3rem; 
}

.ct-implications-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.implications-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.implications-icon svg {
    color: white;
    stroke-width: 2;
}

.ct-implications-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.ct-implications-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
}

.ct-implication-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 2rem;
    transition: all 0.3s ease;
    
}

.ct-implication-card:hover {
    transform: translateY(-4px);
    
    border-color: #cbd5e1;
}

.implication-card-icon {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    
}

.implication-card-icon svg {
    color: white;
    stroke-width: 2;
}

.ct-icon-strategic {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.ct-icon-timing {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.ct-icon-investment {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.implication-card-title {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0 !important;
}

.implication-card-text {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Charts Section */
.ct-charts-section {
    margin-top: 3rem;
    padding-top: 3rem;
    border-top: 3px solid #e8ecf0;
}

.ct-charts-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.charts-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #ec4899 0%, #db2777 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.charts-icon svg {
    color: white;
    stroke-width: 2;
}

.ct-charts-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.ct-charts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 2rem;
}

.ct-chart-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 1.75rem;
    transition: all 0.3s ease;
    
}

.ct-chart-card:hover {
    
    border-color: #cbd5e1;
}

.chart-card-header {
    margin-bottom: 1.5rem;
}

.chart-card-title {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0 !important;
}

.chart-card-subtitle {
    
    font-size: 0.875rem !important;
    font-weight: var(--font-normal) !important;
    color: #94a3b8 !important;
    line-height: var(--line-normal) !important;
    margin: 0 !important;
}

/* Responsive Design - Customer Trends */
@media (max-width: 1200px) {
    .ct-trends-grid {
        grid-template-columns: 1fr;
    }
    
    .ct-charts-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
   
    .ct-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .ct-title {
        font-size: 1.65rem !important;
    }
    
    .ct-subtitle {
        font-size: 0.95rem !important;
    }
    
    .ct-implications-grid {
        grid-template-columns: 1fr;
    }
    
    .ct-implications-title,
    .ct-charts-title {
        font-size: 1.35rem !important;
    }
}

@media (max-width: 480px) {
    .ct-header-icon {
        width: 3rem;
        height: 3rem;
    }
    
    .ct-header-icon svg {
        width: 32px;
        height: 32px;
    }
    
    .ct-title {
        font-size: 1.45rem !important;
    }
    
    .ct-trend-card {
        padding: 1.25rem;
    }
    
    .ct-implication-card {
        padding: 1.25rem;
    }
    
    .ct-chart-card {
        padding: 1.25rem;
    }
}

/* ========================================
   PRICING ANALYSIS - PROFESSIONAL DESIGN
   ======================================== */

.pricing-analysis-professional {
    background: #ffffff;
    border-radius: 16px; 
    margin: 2rem 0;
    
}

/* Section Header */
.pa-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 3px solid #e8ecf0;
}

.pa-header-icon {
    width: 4rem;
    height: 4rem;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.pa-header-icon svg {
    color: white;
    stroke-width: 2;
}

.pa-header-text {
    flex: 1;
}

.pa-title {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0 !important;
}

.pa-subtitle {
    
    font-size: 1.05rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: var(--line-normal) !important;
    margin: 0 !important;
}

/* Pricing Overview Section */
.pa-overview-section {
    margin-bottom: 3rem;
}

.pa-overview-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 1.5rem;
}

.pa-overview-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s ease;
    
    position: relative;
}


.overview-card-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.overview-card-icon {
    width: 3rem;
    height: 3rem;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    
    flex-shrink: 0;
}

.overview-card-icon svg {
    color: white;
    stroke-width: 2;
}

.pa-icon-models {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.pa-icon-elasticity {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.pa-icon-value {
    background: linear-gradient(135deg, #ec4899 0%, #db2777 100%);
}

.overview-card-title {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.overview-card-body {
    padding-left: 0.5rem;
}

/* Pricing Detail Items */
.pricing-detail-item {
    margin-bottom: 1rem;
}

.pricing-detail-item:last-child {
    margin-bottom: 0;
}

.detail-label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--primary-font);
    font-size: 0.875rem;
    font-weight: var(--font-bold);
    color: #475569;
    
    letter-spacing: 0.5px;
    margin-bottom: 0.5rem;
}

.detail-label svg {
    color: #94a3b8;
}

.detail-value {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 0 1rem 0 !important;
}

.model-description {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 0 1.25rem 0 !important;
    padding: 1rem;
    background: #f8fafc;
    border-radius: 8px;
}

/* Elasticity Level Badge */
.elasticity-level-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    border: 1px solid #93c5fd;
    border-radius: 8px;
    margin-bottom: 1rem;
}

.badge-label {
    font-family: var(--primary-font);
    font-size: 0.875rem;
    font-weight: var(--font-bold);
    color: #1e40af;
}

.badge-value {
    font-family: var(--primary-font);
    font-size: 0.95rem;
    font-weight: var(--font-bold);
    color: #1e3a8a;
}

.elasticity-analysis {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 0 1.25rem 0 !important;
}

/* Elasticity Drivers */
.elasticity-drivers-section {
    margin: 1.25rem 0;
}

.drivers-title {
    
    font-size: 0.875rem !important;
    font-weight: var(--font-bold) !important;
    color: #475569 !important;
    
    letter-spacing: 0.5px;
    margin: 0 0 0.75rem 0 !important;
}

.drivers-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.driver-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem;
    background: #f8fafc;
    border-radius: 6px;
    margin-bottom: 0.5rem;
    font-family: var(--primary-font);
    font-size: 0.9rem;
    font-weight: var(--font-normal);
    color: #475569;
    transition: all 0.2s ease;
}

.driver-item:last-child {
    margin-bottom: 0;
}

.driver-item:hover {
    background: #e8ecf0;
    transform: translateX(4px);
}

.driver-item svg {
    color: #10b981;
    flex-shrink: 0;
}

.segment-variations {
    margin-top: 1.25rem;
}

/* Value Detail Boxes */
.value-detail-box {
    margin-bottom: 1rem;
}

.value-detail-box:last-child {
    margin-bottom: 0;
}

/* Recommendations Section */
.pa-recommendations-section {
    margin-top: 3rem; 
}

.pa-recommendations-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.recommendations-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.recommendations-icon svg {
    color: white;
    stroke-width: 2;
}

.pa-recommendations-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.pa-recommendations-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
}

.pa-recommendation-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 2rem;
    transition: all 0.3s ease;
    
}

.pa-recommendation-card:hover {
    transform: translateY(-4px);
    
    border-color: #cbd5e1;
}

.recommendation-icon-wrapper {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    
}

.recommendation-icon-wrapper svg {
    color: white;
    stroke-width: 2;
}

.pa-rec-strategy {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}

.pa-rec-optimization {
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);
}

.pa-rec-timeline {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
}

.recommendation-title {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0 !important;
}

.recommendation-text {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Charts Section */
.pa-charts-section {
    margin-top: 3rem;
    padding-top: 3rem;
    border-top: 3px solid #e8ecf0;
}

.pa-charts-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.pa-charts-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.pa-charts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 2rem;
}

.pa-chart-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 1.75rem;
    transition: all 0.3s ease;
    
}

.pa-chart-card:hover {
    
    border-color: #cbd5e1;
}

/* Responsive Design - Pricing Analysis */
@media (max-width: 1200px) {
    .pa-overview-grid {
        grid-template-columns: 1fr;
    }
    
    .pa-charts-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
     
    .vc-column-header {
        padding: 10px !important;
    }
    .pa-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .pa-title {
        font-size: 1.65rem !important;
    }
    
    .pa-subtitle {
        font-size: 0.95rem !important;
    }
    
    .pa-recommendations-grid {
        grid-template-columns: 1fr;
    }
    
    .pa-recommendations-title,
    .pa-charts-title {
        font-size: 1.35rem !important;
    }
}

@media (max-width: 480px) {
    .pa-header-icon {
        width: 3rem;
        height: 3rem;
    }
    
    .pa-header-icon svg {
        width: 32px;
        height: 32px;
    }
    
    .pa-title {
        font-size: 1.45rem !important;
    }
    
    .pa-overview-card {
        padding: 1.25rem;
    }
    
    .pa-recommendation-card {
        padding: 1.25rem;
    }
    
    .pa-chart-card {
        padding: 1.25rem;
    }
}

/* ========================================
   GROWTH PROJECTIONS - PROFESSIONAL DESIGN
   ======================================== */

.growth-projections-professional {
    background: #ffffff;
    border-radius: 16px; 
    margin: 2rem 0;
    
}

/* Section Header */
.gp-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
    border-bottom: 3px solid #e8ecf0;
}

.gp-header-icon {
    width: 4rem;
    height: 4rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.gp-header-icon svg {
    color: white;
    stroke-width: 2;
}

.gp-header-text {
    flex: 1;
}

.gp-title {
    
    font-size: 2rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0 !important;
}

.gp-subtitle {
    
    font-size: 1.05rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: var(--line-normal) !important;
    margin: 0 !important;
}

/* Growth Overview Section */
.gp-overview-section {
    background: linear-gradient(135deg, #f8fafc 0%, #e8ecf0 100%);
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    padding: 2rem;
    margin-bottom: 3rem;
}

.gp-overview-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.gp-overview-section .overview-icon {
    width: 3rem;
    height: 3rem;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.gp-overview-section .overview-icon svg {
    color: white;
    stroke-width: 2;
}

.gp-overview-title {
    
    font-size: 1.5rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.gp-overview-content {
    padding-left: 4rem;
}

.gp-overview-description {
    
    font-size: 1rem !important;
    font-weight: var(--font-normal) !important;
    color: #475569 !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

/* Company Addressable Market Section */
.gp-market-section {
    margin-bottom: 3rem;
}

.gp-market-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.market-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.market-icon svg {
    color: white;
    stroke-width: 2;
}

.gp-market-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

/* Market Timeline */
.gp-market-timeline {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1.5rem;
}

.gp-year-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 1.75rem;
    text-align: center;
    transition: all 0.3s ease;
    
    position: relative;
    overflow: hidden;
}

.year-badge {
    display: inline-block;
    padding: 0.5rem 1rem;
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    border: 1px solid #93c5fd;
    border-radius: 8px;
    font-family: var(--primary-font);
    font-size: 0.875rem;
    font-weight: var(--font-bold);
    color: #1e40af;
    margin-bottom: 1rem;
}

.value-display {
    margin: 1.25rem 0;
}

.value-amount {
    font-family: var(--primary-font);
    font-size: 2rem;
    font-weight: var(--font-bold);
    color: #666666;
    line-height: 1;
}

.value-unit {
    font-family: var(--primary-font);
    font-size: 1.25rem;
    font-weight: var(--font-semibold);
    color: #64748b;
    margin-left: 0.25rem;
}
 
.growth-indicator.positive {
    padding-top: 10px;
    color: #166534;
}

.growth-indicator.positive svg {
    color: #16a34a;
}

.growth-indicator.negative {
    background: #fee2e2;
    color: #991b1b;
}

.growth-indicator.negative svg {
    color: #dc2626;
}

/* Implications Section */
.gp-implications-section {
    margin-top: 3rem; 
}

.gp-implications-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.gp-implications-section .implications-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.gp-implications-section .implications-icon svg {
    color: white;
    stroke-width: 2;
}

.gp-implications-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.gp-implications-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
}

.gp-implication-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 2rem;
    transition: all 0.3s ease;
    
}

.gp-implication-card:hover {
    transform: translateY(-4px);
    
    border-color: #cbd5e1;
}

.implication-icon-wrapper {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    
}

.implication-icon-wrapper svg {
    color: white;
    stroke-width: 2;
}

.gp-icon-market {
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);
}

.gp-icon-timing {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.gp-icon-strategy {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}

.implication-title {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0 !important;
}

.implication-text {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Charts Section */
.gp-charts-section {
    margin-top: 3rem;
    padding-top: 3rem;
    border-top: 3px solid #e8ecf0;
}

.gp-charts-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.gp-charts-section .charts-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #ec4899 0%, #db2777 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.gp-charts-section .charts-icon svg {
    color: white;
    stroke-width: 2;
}

.gp-charts-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.gp-charts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 2rem;
}

.gp-chart-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 1.75rem;
    transition: all 0.3s ease;
    
}

.gp-chart-card:hover {
    
    border-color: #cbd5e1;
}

/* Responsive Design - Growth Projections */
@media (max-width: 1200px) {
    .edt-demographic-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    .fb-metrics-grid {
        grid-template-columns: repeat(1, 1fr) !important;
    }
    
    .gp-charts-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
 
    .gp-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    .edt-demographic-grid {
        grid-template-columns: repeat(1, 1fr) !important;
    }
    .gp-title {
        font-size: 1.65rem !important;
    }
    
    .gp-subtitle {
        font-size: 0.95rem !important;
    }
    
    .gp-overview-content {
        padding-left: 0;
    }
    
    .gp-market-timeline {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
    
    .gp-implications-grid {
        grid-template-columns: 1fr;
    }
    
    .gp-overview-title,
    .gp-market-title,
    .gp-implications-title,
    .gp-charts-title {
        font-size: 1.35rem !important;
    }
}

@media (max-width: 480px) {
    .gp-header-icon {
        width: 3rem;
        height: 3rem;
    }
    
    .gp-header-icon svg {
        width: 32px;
        height: 32px;
    }
    
    .gp-title {
        font-size: 1.45rem !important;
    }
    
    .gp-overview-section {
        padding: 1.25rem;
    }
    
    .gp-year-card {
        padding: 1.25rem;
    }
    
    .value-amount {
        font-size: 1.5rem;
    }
    
    .gp-implication-card {
        padding: 1.25rem;
    }
    
    .gp-chart-card {
        padding: 1.25rem;
    }
}

/* ========================================
   RISK ASSESSMENT - PROFESSIONAL DESIGN
   ======================================== */

.risk-assessment-professional {
    background: #ffffff;
    border-radius: 16px; 
    margin: 2rem 0;
    
}

/* Section Header */
.ra-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.75rem;
    margin-bottom: 30px; 
}

.ra-header-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
    flex-wrap: wrap;
    text-align: center;
}

.ra-header-icon {
    width: 4rem;
    height: 4rem;
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.ra-header-icon svg {
    color: white;
    width: 30px;
    height: 30px;
}

.ra-header-text {
    max-width: 520px;
}

.ra-title {
    
    font-size: var(--heading-size) !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 0.5rem 0 !important;
}

.ra-subtitle {
    
    font-size: var(--subheading-size) !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: var(--line-relaxed) !important;
    margin: 0 auto !important;
}

.ra-header-summary {
    width: 100%;
}

.summary-stats {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: center;
}

.stat-item {
    min-width: 140px;
    padding: 1rem 1.25rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    text-align: center;
    
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.stat-item:hover {
    transform: translateY(-4px);
    
}

.insight-item-extra {
    padding: 20px;
}
.insight-item .stat-value {
    background: #f3f4f6;
    border: 1px solid #6666665E;
    padding: 0px 18px;
    font-size: 26px;
    font-weight: 600;
    border-radius: 8px;
    color: #333;
    min-width: 32px;
    text-align: center;
}

.insight-item .stat-label {
    font-size: 22px;
    color: #333;
    font-weight: 600;
}

.stat-item.stat-total .stat-value {
    color: #2563eb;
}

 

.stat-high .stat-value {
    background: #FEE2DF;
    color: #E43333;
    border: 1px solid var(--border, #E43333);
}

.stat-medium .stat-value {
    background: #FFF7D7;
    border: 1px solid var(--border2, #F39C12);
    color: #F39C12;
}

.stat-low .stat-value {
    background: #007D2E30;
    color: #00772C;
    border: 1px solid var(--border3, #00772C);
}

/* Risk Categories Section */
.ra-categories-section {
    margin-bottom: 3rem;
}

.ra-categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.ra-category-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 2rem;
    transition: all 0.3s ease;
    
    position: relative;
    overflow: hidden;
}


.category-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 2px solid #e8ecf0;
}

.category-icon {
    width: 3rem;
    height: 3rem;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    
    flex-shrink: 0;
}

.category-icon svg {
    color: white;
    stroke-width: 2;
}

.ra-operational .category-icon {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.ra-market .category-icon {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.ra-regulatory .category-icon {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}

.ra-financial .category-icon {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.category-title {
    
    font-size: 1.35rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.category-risks {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Risk Cards */
.ra-risk-card { 
    border: 1px solid #e8ecf0;
    border-radius: 10px;
    padding: 20px;
    transition: all 0.3s ease;
    margin-bottom: 20px;
}

.ra-risk-card:last-child {
    margin-bottom: 0 !important;
}
.ra-risk-card:hover {
    background: white;
    
    border-color: #cbd5e1;
}

.risk-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.risk-name {
    
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin-bottom: 0 !important;
    flex: 1;
}

.risk-score {
    flex-shrink: 0;
}

.score-badge {
    display: inline-block;
    padding: 0 10px;
    border-radius: 6px;
    font-family: var(--primary-font);
    font-size: 0.875rem;
    font-weight: var(--font-bold);
    white-space: nowrap;
}

.score-high {
    background: #fee2e2;
    color: #991b1b;
    border: 1px solid #fca5a5;
}

.score-medium {
    background: #fef3c7;
    color: #92400e;
    border: 1px solid #fde047;
}

.score-low {
    background: #dcfce7;
    color: #166534;
    border: 1px solid #86efac;
}

.risk-description {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 0 1.25rem 0 !important;
}

.risk-metrics {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
}

.metric-badge {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 10px;
    border-radius: 8px;
    font-family: var(--primary-font);
    font-size: 0.85rem;
    font-weight: var(--font-medium);
    transition: all 0.2s ease;
    width: fit-content;
}

.metric-badge svg {
    flex-shrink: 0;
}

/* Probability Badges */
.prob-high {
    background: #FEE2DF;
    color: #E43333;
    border: 1px solid var(--border, #E43333);
}
 

.prob-medium {
    background: #FFF7D7;
    border: 1px solid var(--border2, #F39C12);
    color: #F39C12;
}

 

.prob-low {
    background: #007D2E30;
    color: #00772C;
    border: 1px solid var(--border3, #00772C);
}

  
/* Impact Badges */
.impact-high {
    background: #FEE2DF;
    color: #E43333;
    border: 1px solid var(--border, #E43333);
}
 
.impact-medium {
    background: #FFF7D7;
    border: 1px solid var(--border2, #F39C12);
    color: #F39C12;
}

 
.impact-low {
    background: #007D2E30;
    color: #00772C;
    border: 1px solid var(--border3, #00772C);
}

.affinity-metric-High {
    background: #FEE2DF;
    color: #E43333;
    border: 1px solid var(--border, #E43333);
}
 
.affinity-metric-Medium {
    background: #FFF7D7;
    border: 1px solid var(--border2, #F39C12);
    color: #F39C12;
}

 
.affinity-metric-Low {
    background: #007D2E30;
    color: #00772C;
    border: 1px solid var(--border3, #00772C);
}
 

/* Mitigation Box */
.mitigation-box {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border: 1px solid #bae6fd;
    border-radius: 10px;
    padding: 1.25rem;
}

.mitigation-label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--primary-font);
    font-size: 0.875rem;
    font-weight: var(--font-bold);
    color: #0369a1;
    
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.mitigation-label svg {
    width: 16px;
    height: 16px;
    color: #0369a1;
}

.mitigation-text {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-medium) !important;
    color: #0c4a6e !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Systemic Risk Analysis Section */
.ra-systemic-section {
    margin-top: 3rem; 
}

.ra-systemic-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.systemic-icon {
    width: 3.5rem;
    height: 3.5rem;
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.systemic-icon svg {
    color: white;
    stroke-width: 2;
}

.ra-systemic-title {
    
    font-size: 1.65rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 !important;
}

.ra-systemic-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
}

.ra-systemic-card {
    background: white;
    border: 1px solid #e8ecf0;
    border-radius: 12px;
    padding: 2rem;
    transition: all 0.3s ease;
    
}

.ra-systemic-card:hover {
    transform: translateY(-4px);
    
    border-color: #cbd5e1;
}

.systemic-card-icon {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    
}

.systemic-card-icon svg {
    color: white;
    stroke-width: 2;
}

.ra-icon-interdependencies {
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);
}

.ra-icon-warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.ra-icon-profile {
    background: linear-gradient(135deg, #ec4899 0%, #db2777 100%);
}

.systemic-card-title {
    
    font-size: 1.15rem !important;
    font-weight: var(--font-bold) !important;
    color: #666666 !important;
    line-height: var(--line-tight) !important;
    margin: 0 0 1rem 0 !important;
}

.systemic-card-text {
    
    font-size: 0.95rem !important;
    font-weight: var(--font-normal) !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Responsive Design - Risk Assessment */
@media (max-width: 1200px) {
    .ra-categories-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
    
    .ra-systemic-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

@media (max-width: 768px) {
    .insight-item .stat-value {
        font-size: 20px !important;
        padding: 0px 13px !important;
    }
    
    .ra-header {
        flex-direction: column;
        align-items: center;
        gap: 1.5rem;
        text-align: center;
    }
    
    .ra-header-content {
        justify-content: center;
        text-align: center;
    }
    
    .ra-title {
        font-size: 1.65rem !important;
    }
    
    .ra-subtitle {
        font-size: 0.95rem !important;
    }
    
    .summary-stats {
        justify-content: center;
    }
    
    .stat-item {
        min-width: 120px;
    }
    
    .ra-categories-grid {
        grid-template-columns: 1fr;
    }
    
    .ra-systemic-grid {
        grid-template-columns: 1fr;
    }
    
    .ra-systemic-title {
        font-size: 1.35rem !important;
    }
}

@media (max-width: 480px) {
    .ra-header-icon {
        width: 3rem;
        height: 3rem;
    }
    
    .ra-header-icon svg {
        width: 32px;
        height: 32px;
    }
    
    .ra-title {
        font-size: 1.45rem !important;
    }
    
    .summary-stats {
        flex-direction: column;
        align-items: stretch;
    }
    
    .stat-item {
        width: 100%;
    }
    
    .ra-category-card {
        padding: 1.25rem;
    }
    
    .ra-risk-card {
        padding: 1.25rem;
    }
    
    .risk-metrics {
        flex-direction: column;
    }
     
    
    .ra-systemic-card {
        padding: 1.25rem;
    }
}
