/* ===== About Us Page ===== */

/* Shared section-title style (duplicated here, not imported from careers-page.css,
   so this page has no cross-page CSS dependency) */
.sec-title-center {
    text-align: center;
    max-width: 600px;
    margin: 0 auto 40px;
}

.sec-title-center h2 {
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 12px;
}

.sec-title-center p {
    font-size: 15px;
    color: #666;
    margin: 0;
}

.about-intro-section {
    padding: 70px 0 50px;
}

.about-intro-heading {
    font-size: 26px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 20px;
}

.about-intro-lead {
    font-size: 17px;
    color: #333;
    line-height: 1.8;
    margin: 0 0 18px;
    text-align: justify;
}

.about-intro-lead a {
    color: #17a4e9;
    font-weight: 600;
}

.about-intro-text {
    font-size: 15px;
    color: #666;
    line-height: 1.8;
    margin: 0;
    text-align: justify;
}

.about-intro-text strong {
    color: #1a1a1a;
}

.about-intro-image {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    line-height: 0;
}

.about-intro-image img {
    width: 100%;
    display: block;
}

/* Stats strip */
.about-stats-section {
    padding: 20px 0 60px;
}

.about-stat-card {
    background: #f5fbff;
    border: 1px solid #e4f2fc;
    border-radius: 10px;
    padding: 25px 20px;
    text-align: center;
    height: 100%;
    margin-bottom: 20px;
}

.about-stat-card strong {
    display: block;
    font-size: 32px;
    font-weight: 700;
    color: #17a4e9;
    margin-bottom: 8px;
}

.about-stat-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 6px;
}

.about-stat-sub {
    display: block;
    font-size: 12px;
    color: #888;
}

/* Our Team */
.about-team-section {
    background: #f9fbfd;
    padding: 60px 0;
}

.about-team-image {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    line-height: 0;
    margin-bottom: 40px;
}

.about-team-image img {
    width: 100%;
    display: block;
}

.about-pillar-card {
    background: #fff;
    border-radius: 10px;
    padding: 32px 25px;
    text-align: center;
    box-shadow: 0 5px 25px rgba(0,0,0,0.06);
    height: 100%;
    margin-bottom: 25px;
}

.about-pillar-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: #17a4e9;
    color: #fff;
    font-size: 22px;
    margin-bottom: 18px;
}

.about-pillar-card h5 {
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 12px;
}

.about-pillar-card p {
    font-size: 14px;
    color: #666;
    line-height: 1.7;
    margin: 0;
    text-align: justify;
}

/* Why Choose Us */
.about-why-section {
    padding: 70px 0;
}

.about-why-image {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
    line-height: 0;
}

.about-why-image img {
    width: 100%;
    display: block;
}

.about-why-heading {
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 22px;
}

.about-why-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.about-why-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 15px;
    color: #555;
    line-height: 1.6;
    margin-bottom: 16px;
}

.about-why-list li:last-child {
    margin-bottom: 0;
}

.about-why-list li i {
    color: #17a4e9;
    font-size: 17px;
    margin-top: 2px;
    flex-shrink: 0;
}

.about-why-list li span {
    flex: 1;
    min-width: 0;
}

.about-why-list li strong {
    color: #1a1a1a;
}

/* Closing statement */
.about-closing {
    text-align: center;
    max-width: 700px;
    margin: 60px auto 0;
    padding-top: 45px;
    border-top: 1px solid #eef2f6;
}

.about-closing p {
    font-size: 15.5px;
    color: #555;
    line-height: 1.8;
    margin: 0 0 8px;
    text-align: justify;
}

.about-closing-cta {
    font-weight: 700;
    color: #1a1a1a;
    font-size: 17px;
    margin: 0 0 22px !important;
}

/* Extra bottom breathing room so the fixed scroll-to-top button never
   visually sits on top of the last row of content on short pages */
.about-stats-section {
    margin-bottom: 10px;
}

/* The scroll-to-top button is position:fixed (from the base theme), so it
   floats over whatever content happens to pass beneath it while scrolling.
   Fading it to low opacity when idle, then bringing it to full opacity on
   hover/focus, keeps it usable without visually colliding with page text. */
.scroll-to-top {
    opacity: 0.5;
    transition: opacity 0.2s ease;
}

.scroll-to-top:hover,
.scroll-to-top:focus {
    opacity: 1;
}

@media (max-width: 767px) {
    .about-closing {
        margin-top: 40px;
        padding-top: 30px;
    }
}
