/* ===================================
   SERVICE INTRO ONE BLOCK STYLES
   =================================== */

/* Main block container */
.about-tax-school-section {
    /* Inherit theme container styles */
    width: 100%;
    max-width: 100vw; /* Prevent horizontal overflow */
    margin: 0 auto;
    padding: 80px 20px 0px 20px; /* Top: 10px, Right: 20px, Bottom: 30px, Left: 40px */ /* Main padding for the entire block */
    display: flex;
    flex-direction: column;
    gap: 54px; /* Gap between hero and content sections */
    overflow-x: hidden; /* Prevent horizontal scroll */
    box-sizing: border-box; /* Include padding in width calculation */
}


/* Responsive container with theme variables - Content section */
.about-tax-school-content-container {
    max-width: var(--container-width, 1200px);
    width: 100%;
    margin: 0 auto;
    position: relative;
    display: flex;
    align-items: center;
    gap: 80px;
    padding: 0; /* No side padding - main container handles it */
    box-sizing: border-box;
}


/* Second section: Image and content side by side */
.about-tax-school-content {
    background: white;
    width: 100%;
}

/* Image on the left */
.about-tax-school-image {
    flex: 1;
    max-width: 500px;
    min-width: 0; /* Allow flex item to shrink below content size */
}

.service-image {
    width: 100%;
    height: auto;
    border-radius: 160px 0 160px 0; /* Top left and bottom right rounded */
    display: block;
    max-width: 100%; /* Ensure image doesn't exceed container */
}

/* Content on the right */
.about-tax-school-text {
    flex: 1;
    max-width: 600px;
    min-width: 0; /* Allow flex item to shrink below content size */
    display: flex;
    flex-direction: column;
    gap: 24px; /* Unified gap between main text sections */
}

/* Title container */
.about-tax-school-title-container {
    display: flex;
    flex-direction: column;
    gap: 8px; /* Reduced gap between mini title and main title */
}

/* Mini title */
.about-tax-school-mini-title {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    color: var(--primary-color, #354477);
    margin: 0;
    font-family: 'Montserrat', sans-serif;
}

/* Main title */
.about-tax-school-main-title {
    font-size: 48px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--primary-color, #354477);
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    word-wrap: break-word;
}

/* Description */
.about-tax-school-description {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.about-tax-school-description p {
    font-size: 16px;
    line-height: 1.6;
    color: var(--primary-color, #354477);
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    word-wrap: break-word;
}

/* CTA Button */
.about-tax-school-cta {
    margin-top: 8px;
}

/* Title and note container - tighter spacing */
.about-tax-school-title-note {
    display: flex;
    flex-direction: column;
    gap: 8px; /* Tighter spacing between title and note */
    margin: 0;
}

/* Section title - H2 Montserrat Bold 32px */
.about-tax-school-section-title {
    font-size: 32px;
    font-weight: 700; /* Bold */
    line-height: 1.3;
    color: var(--primary-color, #354477);
    margin: 0; /* No margin - gap handles spacing */
    font-family: 'Montserrat', sans-serif;
    word-wrap: break-word; /* Prevent long words from overflowing */
    hyphens: auto; /* Enable automatic hyphenation */
}

/* Note below title - Montserrat Semibold 14px */
.about-tax-school-note {
    font-size: 14px;
    color: #6c757d;
    margin: 0; /* No margin - gap handles spacing */
    font-family: 'Montserrat', sans-serif;
    font-weight: 600; /* Semibold */
}

/* Section description paragraph */
.about-tax-school-section-description {
    margin: 0;
}

.about-tax-school-section-description p {
    font-size: 16px;
    line-height: 1.6;
    color: #495057;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500; /* Medium weight for regular text */
    word-wrap: break-word; /* Prevent long words from overflowing */
}

/* Bold text within the paragraph */
.about-tax-school-section-description strong {
    font-weight: 700; /* Bold weight for emphasized text */
}

/* ===================================
   OVERFLOW PROTECTION & TEXT HANDLING
   =================================== */

/* Prevent text overflow on all screen sizes */
.about-tax-school-section-title,
.about-tax-school-section-description p {
    overflow-wrap: break-word;
    word-break: break-word;
    hyphens: auto;
    max-width: 100%;
}

/* Ensure containers don't cause horizontal scroll */
.about-tax-school-content {
    max-width: 100%;
    overflow: hidden;
}

/* Handle very long words or URLs */
.about-tax-school-section-description {
    overflow-wrap: break-word;
    word-break: break-word;
}

/* Ensure flex containers don't overflow */
.about-tax-school-content-container {
    min-width: 0; /* Allow flex items to shrink */
    flex-shrink: 1; /* Allow containers to shrink */
}

/* Image overflow protection */
.about-tax-school-image {
    overflow: hidden; /* Prevent image from causing overflow */
}

/* ===================================
   RESPONSIVE DESIGN - MOBILE FIRST
   ===================================
   
   BREAKPOINT STRATEGY:
   - 1600px+: Desktop default (full layout)
   - 1151px-1600px: Laptop (reduced gaps only, same fonts)
   - 768px-1150px: Tablet (columns stack, mobile layout)
   - 0px-767px: Mobile (stacked layout, reduced padding)
   =================================== */

/* Laptop - Reduced gaps and spacing only */
@media (max-width: 1600px) {
    .about-tax-school-content-container {
        gap: 60px; /* Reduce gap for smaller screens */
    }
}

/* Tablet - Columns stack and mobile layout begins at 1150px */
@media (max-width: 1150px) {
    .about-tax-school-hero-container {
        max-width: var(--wide-width, 1280px);
        padding: 0; /* No side padding - main container handles it */
    }
    
    .about-tax-school-content-container {
        max-width: var(--wide-width, 1280px);
        gap: 50px; /* Further reduce gap */
        padding: 0; /* No side padding - main container handles it */
        flex-direction: column; /* Stack columns on tablet */
        text-align: center;
    }
    
    .about-tax-school-image {
        max-width: 450px; /* Slightly smaller image */
        order: 1; /* Move image to top on tablet */
    }
    
    .about-tax-school-text {
        order: 2; /* Move text below image on tablet */
        max-width: 800px; /* Full width on tablet */
    }
    
}

/* Mobile - Optimized for small screens */
@media (max-width: 767px) {
    .about-tax-school-section {
        padding: 60px 16px 30px 16px; /* Top: 60px, Right: 16px, Bottom: 30px, Left: 16px */
        gap: 40px; /* Scaled down from 54px for mobile */
    }
    
    
    .about-tax-school-content-container {
        flex-direction: column;
        text-align: center;
        gap: 40px;
        padding: 0; /* No side padding needed - main container handles it */
    }
    
    
    .about-tax-school-section-title {
        font-size: 24px;
        padding: 0; /* No side padding - main container handles it */
    }
    
    
    
    .about-tax-school-image {
        max-width: 100%; /* Full width on mobile */
        order: 1; /* Move image to top on mobile */
    }
    
    .about-tax-school-text {
        order: 2; /* Move text below image on mobile */
        max-width: 100%; /* Full width on mobile */
    }
    
    .about-tax-school-main-title {
        font-size: 36px; /* Smaller title on mobile */
    }
    
}

/* ===================================
   ALIGNMENT SUPPORT
   =================================== */

/* Wide alignment support */
.about-tax-school-section.alignwide {
    max-width: var(--wide-width, 1280px);
}

/* Full width alignment support */
.about-tax-school-section.alignfull {
    max-width: 100%;
}
