/* =========================
   RESET
========================= */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
}

/* =========================
   BRAND COLORS
========================= */
:root {
    --brand-blue: #afbce0;
    --brand-orange: #F97316;
    --text-dark: #334155;
    --border-light: #e5e7eb;
    --bg-light: #f8fafc;
}

/* =========================
   BODY
========================= */
body {
    background: #ffffff;
    color: var(--text-dark);
    line-height: 1.6;
}

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

/* =========================
   SERVICES ICON SECTION (OLD / OPTIONAL)
========================= */
.services-icons {
    padding: 60px 0;
    background: linear-gradient(180deg,
            #9fa8b5 0%,
            #b9b0b6 45%,
            #d8c2c2 100%);
}

.services-grid {
    display: flex;
    justify-content: center;
    gap: 50px;
    text-align: center;
    flex-wrap: wrap;
}

.icon-box {
    max-width: 260px;
}

.icon-box a {
    text-decoration: none;
    color: var(--text-dark);
}

/* ICON */
.circle {
    width: 110px;
    height: 110px;
    margin: 0 auto 10px;
    background: #9e9e9e;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

.circle img {
    width: 46px;
    filter: brightness(0) invert(1);
}

.icon-box h4 {
    font-size: 14px;
    font-weight: 600;
}

.icon-box:hover .circle {
    transform: translateY(-4px);
}

/* =========================================
   BOOK ICON NAV (BOOKS + CONSULTANCY)
========================================= */

.book-icon-nav {
    padding: 70px 0;
    background: linear-gradient(
        180deg,
        #99a4b4 0%,
        #bba7b5 45%,
        #c1a7a7 100%
    );
    overflow-x: hidden; /* prevent mobile overflow */
}

/* LINK */
.book-icon-link {
    text-decoration: none;
    color: var(--text-dark);
    display: inline-block;
    text-align: center;
    transition: transform 0.3s ease;
}

.book-icon-link:hover {
    transform: translateY(-6px);
}

/* ICON CIRCLE */
.book-icon-img {
    width: 120px;
    height: 120px;
    margin: 0 auto 15px;
    background: var(--brand-blue);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;

    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    transition: background 0.3s ease, transform 0.3s ease;
}

.book-icon-img img {
    width: 48px;
    height: auto;
    filter: brightness(0) invert(1);
}

/* TITLE */
.book-icon-link h6 {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    max-width: 240px;
    margin: 0 auto;
    text-align: center;
}

/* HOVER */
.book-icon-link:hover .book-icon-img {
    background: var(--brand-orange);
    transform: scale(1.05);
}

/* =========================================
   RESPONSIVE FIXES (CRITICAL)
========================================= */

/* Tablet + Mobile: center stacked columns */
@media (max-width: 991px) {

    .book-icon-nav .col-md-4 {
        display: flex;
        justify-content: center;
    }

    .book-icon-link {
        width: 100%;
        max-width: 260px;
    }
}

/* Mobile: fix g-5 overflow */
@media (max-width: 576px) {

    /* neutralize Bootstrap gutter overflow */
    .book-icon-nav .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .book-icon-nav .row > * {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .book-icon-img {
        width: 95px;
        height: 95px;
    }

    .book-icon-img img {
        width: 40px;
    }

    .book-icon-link h6 {
        font-size: 14px;
    }
}


/* =========================
   ART OF LIVING SECTION
========================= */
.art-living-section {
    background: #f9fafb;
}

/* CARD */
.art-card {
    background: #ffffff;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    padding: 25px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);

    /* IMPORTANT FIXES */
    height: auto;
    /* let content decide height */
    overflow: visible;
    /* DO NOT hide content */
    word-wrap: break-word;
}

/* TEXT */
.art-card p {
    font-size: 15px;
    margin-bottom: 12px;
    line-height: 1.7;
}

/* HEADINGS (prevent clipping) */
.art-card h4,
.art-card h6 {
    margin-top: 0;
}

/* IMAGE */
.art-card img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
}

/* LIST */
.art-list {
    padding-left: 18px;
}

.art-list li {
    font-size: 17px;
    margin-bottom: 10px;
    line-height: 1.6;
}

/* =========================
   RESPONSIVE
========================= */

/* Tablet */
@media (max-width: 991px) {
    .art-card {
        padding: 22px;
    }
}

/* Mobile */
@media (max-width: 576px) {

    .art-living-section {
        padding-left: 0;
        padding-right: 0;
    }

    .art-card {
        margin: 0 6px;
        padding: 16px;
    }

    .art-card h4 {
        font-size: 17px;
    }

    .art-card p,
    .art-list li {
        font-size: 15px;
        text-align: left;
    }
}

/* =========================
   STRUCTURAL SECTION
========================= */
.structural-section {
    background: #f9fafb;
}

.structural-card {
    background: #ffffff;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 22px;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.05);
    height: auto;
}

/* IMAGE */
.structural-img {
    border: 2px solid #9bb89a;
    border-radius: 10px;
    padding: 6px;
}

.structural-img img {
    width: 80%;       /* adjust: 60%, 70%, 80% */
    max-width: 350px; /* controls max size */
    height: auto;
    border-radius: 10px;
    margin: 0 auto;
    display: block;
}
/* Optional: spacing */
.structural-img {
    margin: 15px 0;
}
/* TEXT */
.structural-card h5 {
    font-size: 18px;
}

.structural-card p {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 12px;
}

/* =========================
   RESPONSIVE
========================= */

/* Tablet */
@media (max-width: 991px) {
    .structural-card {
        padding: 20px;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .structural-card {
        padding: 16px;
    }

    .structural-card h5 {
        font-size: 17px;
    }

    .structural-card p {
        font-size: 14px;
    }
}
/* =========================
   REAL ESTATE SECTION
========================= */
.realestate-section {
    background: #f9fafb;
}

.realestate-card {
    background: #ffffff;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 22px;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.05);

    /* ✅ NEW (for bottom text alignment) */
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* IMAGE */
.realestate-img {
    border-radius: 10px;
    overflow: hidden;
}

.realestate-img img {
    width: 100%;
    height: auto;
    display: block;

    /* keep centered */
    margin: 0 auto;
}

/* TITLE – BOTTOM CENTER FIX */
.realestate-card h5 {
    margin-top: auto;        /* ✅ pushes title to bottom */
    text-align: center;      /* ✅ center horizontally */
}

/* LIST */
.realestate-list {
    padding-left: 18px;
}

.realestate-list li {
    font-size: 15px;
    margin-bottom: 14px;
    line-height: 1.7;
}

/* TEXT */
.realestate-card p {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 12px;
}

/* =========================
   RESPONSIVE
========================= */

/* Tablet */
@media (max-width: 991px) {
    .realestate-card {
        padding: 20px;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .realestate-card {
        padding: 16px;
    }

    .realestate-card h5 {
        font-size: 16px;
    }

    .realestate-card p,
    .realestate-list li {
        font-size: 15px;
    }
}

/* =========================
   IMAGE SIZE CONTROL (SAFE OVERRIDES)
========================= */

/* ART OF LIVING IMAGES */
.art-card img {
    max-width: 90%;
    margin: 0 auto 12px;
}

/* STRUCTURAL SECTION IMAGES */
.structural-img img {
    max-width: 85%;
    margin: 0 auto;
}

/* REAL ESTATE IMAGES */
.realestate-img img {
    max-width: 82%;
}

/* MOBILE IMAGE CONTROL */
@media (max-width: 576px) {
    .art-card img,
    .structural-img img,
    .realestate-img img {
        max-width: 80%;
    }
}

/* force */
