@media (max-width: 768px) {
    .item-row {
        flex-direction: column;
        gap: 1.5rem;
    }
    .item-text h3, .item-text p {
        text-align: center;
    }
    .item-image {
        display: none;
    }
    
    .pricing-cost-section {
        padding: 3rem 0;
    }
    
    .pricing-cost-section h2 {
        font-size: 2rem;
        margin-bottom: 2rem;
    }
    
    .pricing-cost-content {
        padding: 2rem 1.5rem;
    }
    
    .pricing-cost-content p {
        font-size: 1rem;
        padding-left: 1.2rem;
        margin-bottom: 1.5rem;
    }
    
    .pricing-cost-content p:first-of-type,
    .pricing-cost-content p:last-of-type {
        font-size: 1.05rem;
        padding: 1.2rem;
    }
    
    .pricing-cost-table-header th,
    .pricing-cost-table-row td {
        padding: 16px 12px;
        font-size: 0.95rem;
    }
    
    .pricing-cost-table-wrapper {
        margin: 2rem 0;
    }
    
    .companies-list-section {
        padding: 3rem 0;
    }
    
    .companies-list-section h2 {
        font-size: 2rem;
        padding-bottom: 1.5rem;
    }
    
    .companies-list-section h2::after {
        width: 80px;
    }
    
    .companies-intro {
        margin-bottom: 3rem;
    }
    
    .companies-intro p {
        font-size: 1.05rem;
        padding: 2rem 1.5rem;
    }
    
    .companies-intro p::before {
        width: 40px;
        height: 40px;
        font-size: 1.5rem;
        top: -12px;
        left: 20px;
    }
    
    .company-item {
        padding: 2.5rem 1.5rem;
        margin-bottom: 3rem;
    }
    
    .company-item h3 {
        font-size: 1.8rem;
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .company-item h3::before {
        width: 50px;
        height: 50px;
        font-size: 1.5rem;
    }
    
    .company-website-screenshot {
        margin: 2rem 0;
        border-radius: 12px;
    }
    
    .company-website-screenshot img {
        min-height: 250px;
    }
    
    .company-info-table-wrapper {
        margin: 2rem 0;
        padding-top: 20px;
    }
    
    .company-info-table-wrapper::before {
        font-size: 0.85rem;
        padding: 8px 18px;
        top: -10px;
        left: 0;
    }
    
    .company-info-table .info-label {
        width: 150px;
        padding: 18px 15px;
        font-size: 0.9rem;
    }
    
    .company-info-table .info-value {
        padding: 18px 15px;
        font-size: 1rem;
    }
    
    .company-description {
        padding: 2rem 1.5rem;
        margin: 3rem 0;
    }
    
    .company-description::before {
        width: 50px;
        height: 50px;
        font-size: 2rem;
        top: -15px;
        left: 20px;
    }
    
    .company-description p {
        font-size: 1rem;
        padding-left: 1.2rem;
    }
    
    .pros-cons-section {
        padding: 2.5rem 1.5rem;
        margin: 3rem 0;
    }
    
    .pros-cons-grid {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
    
    .pros-column,
    .cons-column {
        padding: 1.5rem;
    }
    
    .pros-column h4,
    .cons-column h4 {
        font-size: 1.5rem;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.8rem;
    }
    
    .pros-column h4::before,
    .cons-column h4::before {
        width: 35px;
        height: 35px;
        font-size: 1.3rem;
    }
    
    .pros-list li,
    .cons-list li {
        font-size: 1rem;
        padding: 0.8rem 0.8rem 0.8rem 2.2rem;
    }
    .public-reviews-section {
        margin-top: 3rem;
        padding-top: 3rem;
    }
    
    .public-reviews-section::before {
        width: 40px;
        height: 40px;
        font-size: 1.5rem;
        top: -20px;
    }
    
    .public-reviews-section h4 {
        font-size: 1.8rem;
        margin-bottom: 2.5rem;
    }
    
    .public-reviews-section h4::after {
        width: 70px;
    }
    
    .reviews-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .review-box {
        padding: 2rem 1.5rem;
    }
    
    .review-box p {
        font-size: 1rem;
        padding-left: 1.2rem;
    }
    
    .review-box p:first-child::before {
        font-size: 3rem;
        top: -5px;
    }
    
    .reviewer-name {
        font-size: 1rem !important;
    }
    
    .bottom-line-section {
        padding: 3rem 0;
    }
    
    .bottom-line-content {
        padding: 2.5rem 2rem;
    }
    
    .bottom-line-content h2 {
        font-size: 2.2rem;
        margin-bottom: 2.5rem;
        padding-bottom: 2rem;
    }
    
    .bottom-line-content h2::after {
        width: 100px;
        height: 4px;
    }
    
    .bottom-line-content p {
        font-size: 1.05rem;
        margin-bottom: 2rem;
        padding: 1.5rem 1.5rem;
        line-height: 1.8;
    }
    
    .bottom-line-content p:first-of-type {
        font-size: 1.1rem;
        padding: 1.5rem 1.5rem;
    }
    
    .bottom-line-content p:first-of-type::before {
        font-size: 1.3rem;
        top: 1.5rem;
    }
    
    .bottom-line-content p:last-child {
        font-size: 1.1rem;
        padding: 1.5rem;
    }
    
    .bottom-line-content p::before {
        left: 0.3rem;
        top: 1.5rem;
        font-size: 1rem;
    }
}