/* -------------------------------
   ABOUT US PAGE
-------------------------------- */

#about-page {
    max-width: 100%;
}


/* =========================
   GENERAL SECTION SPACING
========================= */

.about-section {
    margin: clamp(60px, 8vw, 100px) 0;
}


.about-section + .about-section {
    border-top: 1px solid #e3e3e3;
    padding-top: clamp(40px, 5vw, 60px);
}


/* =========================
   ABOUT INTRO
========================= */

.about-intro {

    background: #f6f8f3;
    padding: clamp(50px, 6vw, 80px)
             clamp(20px, 4vw, 40px);

    margin: 0;
}


.about-intro .about-inner {

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(40px, 6vw, 100px);
    flex-wrap: wrap;
    max-width: 1400px;
    margin: auto;
}


/* Text */

.about-intro .about-text {

    flex: 1 1 500px;
    max-width: 800px;
    text-align: left;
    line-height: 1.7;
}


.about-intro .about-text h1 {
    color: var(--primary);
    margin-bottom: 30px;
    margin-left: clamp(0px, 6vw, 100px);
}

.about-intro .about-text p {
    max-width: 900px;
    margin-bottom: 20px;
    text-align: justify;
    margin-left: clamp(0px, 6vw, 100px);
    line-height: 1.7;
}


/* Image */

.about-intro .about-image {
    
    flex: 1 1 420px;
    display: flex;
    justify-content: center;
}


.about-intro .about-image img {

    width: 100%;
    max-width: min(570px,100%);
    border-radius:18px;
    box-shadow:0 10px 40px rgba(0,0,0,0.12);
}



/* =========================
   PHILOSOPHY
========================= */

.about-philosophy {

    display:flex;
    justify-content:flex-start;
    align-items:center;
    width:100%;
    min-height:600px;
    padding:clamp(20px,4vw,40px);
    position:relative;
    overflow:hidden;
    background-image:url("../images/about_us/phylosophy1.png");
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}



/* Card */

.philosophy-text {

    max-width:650px;
    padding:clamp(25px,3vw,40px);
    border-radius:16px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    background:#f6f8f3;
    margin-inline:clamp(15px,4vw,50px);
    position:relative;
    z-index:2;
}


.philosophy-text h2 {

    color: var(--primary);
    margin-bottom: 30px;
}


.philosophy-text p {

    font-family:CoFo Sans, sans-serif;
    font-size:clamp(15px,1.4vw,17px);
    line-height:1.7;
}


.philosophy-quote {

    margin:30px 0;
    padding-left:20px;
    font-size:clamp(16px,2vw,20px);
    font-style:italic;
    font-weight:500;
    color:#6b7f4e;
    border-left:4px solid #8fae6c;
}




/* =========================
   WHY CHOOSE US
========================= */

.about-why {

    display:flex;
    justify-content:center;
    width:100%;
    padding:
    clamp(100px,12vw,200px)
    clamp(20px,4vw,40px);
    box-sizing:border-box;
    background:#3a3b3be1;
    min-height:200px;
}



.about-why .why-container {

    display:flex;
    width:100%;
    max-width:1400px;
    align-items:flex-start;
    flex-wrap:wrap;
    gap:clamp(30px,5vw,60px);
}



.about-why .why-title {

    flex:1 1 320px;
    margin-left:clamp(0px,5vw,6%);
}


.about-why .why-title h2 {

    font-family:CoFo Sans,sans-serif;
    font-size:clamp(30px,3.5vw,42px);
    color:#f9f7f7dd;
    margin:0;
}



.why-text ul {
    list-style: disc;
    padding-left: 20px;
    margin: 0;
    columns: 3;
    column-gap: clamp(25px, 4vw, 50px);
}

.why-text ul li {
    color: #f9f7f7dd;
    font-weight: 500;
    font-size: clamp(15px, 1.4vw, 17px);
    line-height: 1.6;
    margin-bottom: 10px;
    break-inside: avoid;
}

.why-text ul li::marker {
    color: #f9f7f7dd;
}



/* =========================
   SERVICE AREAS
========================= */


.service-areas {

    background:#f6f8f3;
    padding:
    clamp(50px,6vw,80px)
    clamp(20px,4vw,40px);
    margin:1px auto;
    box-shadow:0 8px 30px rgba(0,0,0,0.08);
}



.service-areas-content {

    display:flex;
    align-items:flex-start;
    gap:clamp(25px,4vw,40px);
    flex-wrap:wrap;
    min-height:380px;
    max-width:1400px;
    margin:auto;
}



.service-map {

    flex:1.1 1 420px;
}



#leaflet-map {

    width:100%;
    height:380px;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
}



.service-map {
    flex: 1.35 1 480px;
}

.service-text {
    flex: 0.9 1 400px;
}


.service-text h2 {

    color: var(--primary);
    margin-bottom: 30px;
    text-align: center;
}




.areas-list {

    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:clamp(12px,2vw,20px);
    margin-bottom:20px;
}



.service-text .areas-list span {

    background:#5b5b58bb;
    color:#fff;
    font-weight:600;
    padding:10px 20px;
    border-radius:30px;
    font-size:clamp(15px,1.4vw,17px);
    transition:.3s ease;
    text-align:center;
}



.areas-note {

    font-size:clamp(15px,1.4vw,17px);
    line-height:1.6;
    text-align:center;
}


/* =========================
   MOBILE TOP SPACING
========================= */

@media(max-width:600px){

    .about-intro {

        padding-top:100px;

    }

}



/* =========================
   SMALL ADJUSTMENTS
========================= */


@media(max-width:900px){
    .why-text ul{
        columns:2;

    }

}

@media(max-width:600px){
    .why-text ul{
        columns:1;

    }

}