/* ============================================
   SERVICE HERO - Premium Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.service-hero {
    padding: 40px 0 50px 0;
    background: #FCFCFB;
    position: relative;
    overflow: hidden;
}

/* Subtle Background Decoration */
.service-hero::before {
    content: '';
    position: absolute;
    top: -20%;
    right: -10%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

.service-hero::after {
    content: '';
    position: absolute;
    bottom: -20%;
    left: -10%;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.02) 0%, transparent 70%);
    pointer-events: none;
}

/* ============================================
   LEFT COLUMN - CONTENT
   ============================================ */
.service-hero .col-lg-6:first-child {
    padding-right: 30px;
}

/* ----- Badge ----- */
.service-hero-badge {
    display: inline-block;
    background: rgba(200, 169, 107, 0.10);
    color: #C8A96B;
    padding: 5px 20px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 12px;
    border: 1px solid rgba(200, 169, 107, 0.08);
    transition: all 0.3s ease;
}

.service-hero-badge:hover {
    background: rgba(200, 169, 107, 0.18);
    transform: translateY(-2px);
}

/* ----- Title ----- */
.service-hero-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.8rem;
    color: #0B0B0B;
    line-height: 1.15;
    letter-spacing: -0.5px;
    margin: 0 0 14px 0;
}

.service-hero-title .gold {
    color: #C8A96B;
    position: relative;
}

.service-hero-title .gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

/* ----- Description ----- */
.service-hero-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1.02rem;
    color: #6B6B6B;
    line-height: 1.8;
    margin: 0 0 28px 0;
    max-width: 540px;
}

/* ----- CTA Button ----- */
.service-hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #C8A96B;
    color: #0B0B0B;
    padding: 14px 34px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.92rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: none;
    box-shadow: 0 4px 20px rgba(200, 169, 107, 0.2);
    position: relative;
    overflow: hidden;
}

/* Shimmer Effect */
.service-hero-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-hero-btn:hover::before {
    left: 100%;
}

.service-hero-btn:hover {
    background: #9E8149;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.35);
    text-decoration: none;
}

.service-hero-btn i {
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.service-hero-btn:hover i {
    transform: scale(1.1);
}

.service-hero-btn span {
    position: relative;
    z-index: 1;
}

/* ============================================
   RIGHT COLUMN - IMAGE
   ============================================ */
.service-hero-image {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(11, 11, 11, 0.08);
    border: 3px solid rgba(200, 169, 107, 0.10);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    background: #F7F5F0;
}

.service-hero-image:hover {
    transform: scale(1.01) translateY(-4px);
    box-shadow: 0 28px 72px rgba(11, 11, 11, 0.14);
    border-color: rgba(200, 169, 107, 0.25);
}

/* Image Shimmer Overlay */
.service-hero-image::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.04), transparent);
    z-index: 2;
    animation: serviceImageShimmer 7s infinite;
    pointer-events: none;
}

@keyframes serviceImageShimmer {
    0% { left: -60%; }
    100% { left: 120%; }
}

/* Image Badge */
.service-hero-image .image-badge {
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: rgba(11, 11, 11, 0.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    color: #FCFCFB;
    padding: 8px 16px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-size: 0.7rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    z-index: 3;
    border: 1px solid rgba(200, 169, 107, 0.08);
}

.service-hero-image .image-badge i {
    color: #C8A96B;
    font-size: 0.7rem;
}

.service-hero-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    display: block;
    transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-hero-image:hover img {
    transform: scale(1.03);
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .service-hero {
        padding: 30px 0 40px 0;
    }

    .service-hero .col-lg-6:first-child {
        padding-right: 0;
    }

    .service-hero-title {
        font-size: 2.2rem;
    }

    .service-hero-text {
        font-size: 0.95rem;
        max-width: 100%;
    }

    .service-hero-image img {
        height: 300px;
    }

    .service-hero::before,
    .service-hero::after {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .service-hero {
        padding: 20px 0 30px 0;
    }

    .service-hero .row {
        flex-direction: column-reverse;
    }

    .service-hero-title {
        font-size: 1.8rem;
        text-align: center;
    }

    .service-hero-text {
        font-size: 0.9rem;
        text-align: center;
        padding: 0 4px;
    }

    .service-hero-badge {
        display: table;
        margin: 0 auto 10px auto;
        font-size: 0.55rem;
        padding: 3px 14px;
    }

    .service-hero-btn {
        display: flex;
        width: 100%;
        justify-content: center;
        padding: 12px 24px;
        font-size: 0.88rem;
        max-width: 320px;
        margin: 0 auto;
    }

    .service-hero-image {
        border-radius: 14px;
        margin-bottom: 6px;
    }

    .service-hero-image img {
        height: 220px;
    }

    .service-hero-image .image-badge {
        bottom: 14px;
        right: 14px;
        padding: 6px 14px;
        font-size: 0.6rem;
    }

    .service-hero-image .image-badge i {
        font-size: 0.6rem;
    }

    .service-hero-image::after {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .service-hero {
        padding: 16px 0 24px 0;
    }

    .service-hero-title {
        font-size: 1.5rem;
    }

    .service-hero-text {
        font-size: 0.85rem;
    }

    .service-hero-btn {
        font-size: 0.82rem;
        padding: 10px 18px;
    }

    .service-hero-image img {
        height: 180px;
    }

    .service-hero-image {
        border-radius: 12px;
        border-width: 2px;
    }

    .service-hero-image .image-badge {
        bottom: 10px;
        right: 10px;
        padding: 4px 10px;
        font-size: 0.5rem;
    }

    .service-hero-image .image-badge i {
        font-size: 0.5rem;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .service-hero-image {
        transition: none;
    }
    .service-hero-image:hover {
        transform: none;
    }
    .service-hero-image:hover img {
        transform: none;
    }
    .service-hero-image::after {
        animation: none;
        display: none;
    }
    .service-hero-btn {
        transition: none;
    }
    .service-hero-btn:hover {
        transform: none;
    }
    .service-hero-btn::before {
        display: none;
    }
    .service-hero-badge:hover {
        transform: none;
    }
}
/* ============================================
   SERVICE CONTENT - Premium Full Screen
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.service-content {
    padding: 30px 0 60px 0;
    background: #FCFCFB;
    position: relative;
    overflow: hidden;
}

/* Background Pattern - Subtle Gold Grid */
.service-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(circle at 20% 50%, rgba(200, 169, 107, 0.02) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(200, 169, 107, 0.015) 0%, transparent 40%),
        radial-gradient(circle at 50% 80%, rgba(200, 169, 107, 0.01) 0%, transparent 60%);
    pointer-events: none;
    z-index: 0;
}

/* Top Accent Line */
.service-content .accent-line {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    opacity: 0.3;
    margin-bottom: 30px;
}

/* ----- Wrapper - Full Width Desktop ----- */
.service-content-wrapper {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 40px;
    position: relative;
    z-index: 1;
}

/* ============================================
   HEADINGS - Premium
   ============================================ */

/* ----- H2 - Main Section Headings ----- */
.service-content-wrapper h2 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #0B0B0B;
    margin: 50px 0 18px 0;
    line-height: 1.2;
    letter-spacing: -0.5px;
    position: relative;
    padding-bottom: 18px;
    padding-left: 0;
}

/* Gold Underline with Decorative Dot */
.service-content-wrapper h2::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-content-wrapper h2::before {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 20px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.3;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-content-wrapper h2:hover::after {
    width: 100px;
}

.service-content-wrapper h2:hover::before {
    width: 40px;
    opacity: 0.5;
}

/* First H2 - No top margin */
.service-content-wrapper h2:first-of-type {
    margin-top: 0;
}

/* ----- H3 - Subheadings ----- */
.service-content-wrapper h3 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1.5rem;
    color: #0B0B0B;
    margin: 34px 0 14px 0;
    line-height: 1.3;
    letter-spacing: -0.2px;
    padding-left: 0;
    position: relative;
}

/* Small Gold Dot Before H3 */
.service-content-wrapper h3::before {
    content: '';
    position: absolute;
    left: -16px;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #C8A96B;
    opacity: 0.3;
}

/* ----- H4 - Small Headings ----- */
.service-content-wrapper h4 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1.15rem;
    color: #0B0B0B;
    margin: 24px 0 8px 0;
    line-height: 1.3;
    letter-spacing: -0.1px;
}

/* ============================================
   PARAGRAPHS - Premium Readability
   ============================================ */
.service-content-wrapper p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1.05rem;
    color: #333333;
    line-height: 2;
    margin-bottom: 18px;
    max-width: 100%;
}

/* First Paragraph - Larger & Premium */
.service-content-wrapper p:first-of-type {
    font-size: 1.15rem;
    color: #0B0B0B;
    font-weight: 450;
    padding: 20px 28px;
    background: rgba(247, 245, 240, 0.5);
    border-radius: 12px;
    border-left: 4px solid #C8A96B;
    margin-bottom: 28px;
}

/* Paragraph with Gold Accent */
.service-content-wrapper p strong {
    font-weight: 600;
    color: #0B0B0B;
}

.service-content-wrapper p .highlight-gold {
    color: #C8A96B;
    font-weight: 500;
}

/* ============================================
   LISTS - Premium Grid
   ============================================ */

/* ----- Unordered List ----- */
.service-content-wrapper ul {
    list-style: none;
    padding: 0;
    margin: 20px 0 28px 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

/* List Items - Premium Cards */
.service-content-wrapper ul li {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.98rem;
    color: #333333;
    padding: 16px 20px 16px 50px;
    position: relative;
    line-height: 1.7;
    background: #F7F5F0;
    border-radius: 12px;
    border: 1px solid rgba(229, 229, 229, 0.3);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(11, 11, 11, 0.02);
}

/* Gold Diamond Bullet */
.service-content-wrapper ul li::before {
    content: '◆';
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    color: #C8A96B;
    font-size: 0.7rem;
    transition: all 0.4s ease;
}

/* Hover Effect - Premium */
.service-content-wrapper ul li:hover {
    background: #FCFCFB;
    border-color: #C8A96B;
    transform: translateX(6px) translateY(-3px);
    box-shadow: 0 8px 24px rgba(200, 169, 107, 0.08);
}

.service-content-wrapper ul li:hover::before {
    transform: translateY(-50%) scale(1.3);
    color: #C8A96B;
}

/* Strong/Bold in Lists */
.service-content-wrapper ul li strong {
    font-weight: 600;
    color: #0B0B0B;
}

/* ----- Ordered List - Premium Steps ----- */
.service-content-wrapper ol {
    padding: 0;
    margin: 20px 0 28px 0;
    counter-reset: step;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.service-content-wrapper ol li {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.98rem;
    color: #333333;
    padding: 16px 22px 16px 62px;
    position: relative;
    line-height: 1.7;
    background: #F7F5F0;
    border-radius: 12px;
    border: 1px solid rgba(229, 229, 229, 0.3);
    counter-increment: step;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(11, 11, 11, 0.02);
}

/* Step Number - Premium Gold Circle */
.service-content-wrapper ol li::before {
    content: counter(step);
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: linear-gradient(135deg, #C8A96B, #E3C98F);
    color: #0B0B0B;
    font-size: 0.8rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Poppins', sans-serif;
    box-shadow: 0 4px 12px rgba(200, 169, 107, 0.2);
    transition: all 0.4s ease;
}

/* Step Number Hover */
.service-content-wrapper ol li:hover::before {
    transform: translateY(-50%) scale(1.12);
    box-shadow: 0 6px 20px rgba(200, 169, 107, 0.3);
}

.service-content-wrapper ol li:hover {
    background: #FCFCFB;
    border-color: #C8A96B;
    transform: translateX(6px) translateY(-3px);
    box-shadow: 0 8px 24px rgba(200, 169, 107, 0.08);
}

/* ============================================
   BLOCKQUOTE - Premium Quote
   ============================================ */
.service-content-wrapper blockquote {
    background: linear-gradient(135deg, #F7F5F0, #FCFCFB);
    border-left: 4px solid #C8A96B;
    padding: 24px 32px;
    margin: 28px 0;
    border-radius: 0 16px 16px 0;
    font-family: 'Poppins', sans-serif;
    font-size: 1.05rem;
    color: #333333;
    line-height: 1.9;
    font-style: italic;
    position: relative;
    box-shadow: 0 4px 20px rgba(11, 11, 11, 0.04);
}

.service-content-wrapper blockquote::before {
    content: '"';
    position: absolute;
    top: 4px;
    left: 16px;
    font-size: 3.5rem;
    color: rgba(200, 169, 107, 0.12);
    font-family: Georgia, serif;
    line-height: 1;
}

.service-content-wrapper blockquote p {
    margin-bottom: 0;
    padding-left: 28px;
    font-size: 1rem;
}

/* ============================================
   DIVIDERS - Premium
   ============================================ */
.service-content-wrapper hr {
    border: none;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(200, 169, 107, 0.15), #E5E5E5, rgba(200, 169, 107, 0.15), transparent);
    margin: 42px 0;
    position: relative;
}

.service-content-wrapper hr::after {
    content: '◆';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: #C8A96B;
    font-size: 0.6rem;
    background: #FCFCFB;
    padding: 0 16px;
    opacity: 0.3;
}

/* ============================================
   IMAGES INSIDE CONTENT
   ============================================ */
.service-content-wrapper img {
    max-width: 100%;
    height: auto;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(11, 11, 11, 0.08);
    margin: 24px 0;
    border: 1px solid rgba(200, 169, 107, 0.06);
    transition: all 0.4s ease;
}

.service-content-wrapper img:hover {
    transform: scale(1.01);
    box-shadow: 0 12px 48px rgba(11, 11, 11, 0.12);
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .service-content {
        padding: 20px 0 40px 0;
    }

    .service-content-wrapper {
        max-width: 100%;
        padding: 0 24px;
    }

    .service-content-wrapper h2 {
        font-size: 2rem;
        margin: 38px 0 14px 0;
        padding-bottom: 14px;
    }

    .service-content-wrapper h3 {
        font-size: 1.3rem;
    }

    .service-content-wrapper p {
        font-size: 0.98rem;
    }

    .service-content-wrapper p:first-of-type {
        font-size: 1.05rem;
        padding: 16px 20px;
    }

    .service-content-wrapper ul {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .service-content-wrapper ul li {
        font-size: 0.92rem;
        padding: 14px 16px 14px 42px;
    }

    .service-content-wrapper ul li::before {
        left: 14px;
    }

    .service-content-wrapper ol li {
        font-size: 0.92rem;
        padding: 14px 16px 14px 54px;
    }

    .service-content-wrapper ol li::before {
        width: 26px;
        height: 26px;
        font-size: 0.7rem;
        left: 14px;
    }

    .service-content-wrapper blockquote {
        padding: 18px 24px;
        font-size: 0.98rem;
    }

    .service-content-wrapper blockquote p {
        font-size: 0.95rem;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .service-content {
        padding: 16px 0 30px 0;
    }

    .service-content-wrapper {
        padding: 0 16px;
    }

    .service-content .accent-line {
        height: 2px;
        margin-bottom: 20px;
    }

    .service-content-wrapper h2 {
        font-size: 1.6rem;
        margin: 30px 0 12px 0;
        padding-bottom: 10px;
    }

    .service-content-wrapper h2::after {
        width: 40px;
        height: 2px;
    }

    .service-content-wrapper h2::before {
        bottom: -4px;
        width: 16px;
        height: 2px;
    }

    .service-content-wrapper h2:hover::after {
        width: 60px;
    }

    .service-content-wrapper h2:hover::before {
        width: 30px;
    }

    .service-content-wrapper h3 {
        font-size: 1.1rem;
        margin: 24px 0 10px 0;
        padding-left: 14px;
    }

    .service-content-wrapper h3::before {
        left: -2px;
        width: 4px;
        height: 4px;
    }

    .service-content-wrapper h4 {
        font-size: 0.98rem;
        margin: 18px 0 6px 0;
    }

    .service-content-wrapper p {
        font-size: 0.92rem;
        line-height: 1.9;
        margin-bottom: 14px;
    }

    .service-content-wrapper p:first-of-type {
        font-size: 0.96rem;
        padding: 14px 16px;
        border-left-width: 3px;
        margin-bottom: 20px;
    }

    .service-content-wrapper ul {
        grid-template-columns: 1fr;
        gap: 8px;
        margin: 14px 0 20px 0;
    }

    .service-content-wrapper ul li {
        font-size: 0.88rem;
        padding: 10px 14px 10px 36px;
        border-radius: 10px;
    }

    .service-content-wrapper ul li::before {
        left: 12px;
        font-size: 0.6rem;
    }

    .service-content-wrapper ul li:hover {
        transform: translateX(4px) translateY(-2px);
    }

    .service-content-wrapper ol {
        gap: 8px;
        margin: 14px 0 20px 0;
    }

    .service-content-wrapper ol li {
        font-size: 0.88rem;
        padding: 10px 14px 10px 44px;
        border-radius: 10px;
    }

    .service-content-wrapper ol li::before {
        width: 22px;
        height: 22px;
        font-size: 0.6rem;
        left: 12px;
    }

    .service-content-wrapper ol li:hover {
        transform: translateX(4px) translateY(-2px);
    }

    .service-content-wrapper blockquote {
        padding: 14px 16px 14px 20px;
        margin: 18px 0;
        font-size: 0.92rem;
        border-left-width: 3px;
        border-radius: 0 12px 12px 0;
    }

    .service-content-wrapper blockquote::before {
        font-size: 2.2rem;
        top: 2px;
        left: 10px;
    }

    .service-content-wrapper blockquote p {
        padding-left: 16px;
        font-size: 0.88rem;
    }

    .service-content-wrapper hr {
        margin: 28px 0;
    }

    .service-content-wrapper hr::after {
        font-size: 0.5rem;
        padding: 0 12px;
    }

    .service-content-wrapper img {
        border-radius: 12px;
        margin: 16px 0;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .service-content {
        padding: 12px 0 24px 0;
    }

    .service-content-wrapper {
        padding: 0 12px;
    }

    .service-content-wrapper h2 {
        font-size: 1.3rem;
        margin: 24px 0 10px 0;
        padding-bottom: 8px;
    }

    .service-content-wrapper h2::after {
        width: 30px;
        height: 2px;
    }

    .service-content-wrapper h2::before {
        display: none;
    }

    .service-content-wrapper h2:hover::after {
        width: 50px;
    }

    .service-content-wrapper h3 {
        font-size: 0.98rem;
        margin: 18px 0 8px 0;
        padding-left: 12px;
    }

    .service-content-wrapper h3::before {
        width: 3px;
        height: 3px;
    }

    .service-content-wrapper p {
        font-size: 0.85rem;
        margin-bottom: 10px;
    }

    .service-content-wrapper p:first-of-type {
        font-size: 0.88rem;
        padding: 10px 12px;
        border-left-width: 2px;
    }

    .service-content-wrapper ul li {
        font-size: 0.82rem;
        padding: 8px 10px 8px 30px;
        border-radius: 8px;
    }

    .service-content-wrapper ul li::before {
        left: 10px;
        font-size: 0.5rem;
    }

    .service-content-wrapper ol li {
        font-size: 0.82rem;
        padding: 8px 10px 8px 36px;
        border-radius: 8px;
    }

    .service-content-wrapper ol li::before {
        width: 18px;
        height: 18px;
        font-size: 0.5rem;
        left: 10px;
    }

    .service-content-wrapper blockquote {
        padding: 10px 12px 10px 16px;
        font-size: 0.85rem;
    }

    .service-content-wrapper blockquote::before {
        font-size: 1.8rem;
        top: 0;
        left: 8px;
    }

    .service-content-wrapper blockquote p {
        font-size: 0.82rem;
        padding-left: 12px;
    }

    .service-content-wrapper hr {
        margin: 20px 0;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .service-content-wrapper h2::after {
        transition: none;
    }
    .service-content-wrapper h2::before {
        transition: none;
    }
    .service-content-wrapper h2:hover::after {
        width: 60px;
    }
    .service-content-wrapper h2:hover::before {
        width: 20px;
    }
    .service-content-wrapper ul li {
        transition: none;
    }
    .service-content-wrapper ul li:hover {
        transform: none;
    }
    .service-content-wrapper ul li::before {
        transition: none;
    }
    .service-content-wrapper ol li {
        transition: none;
    }
    .service-content-wrapper ol li:hover {
        transform: none;
    }
    .service-content-wrapper ol li::before {
        transition: none;
    }
    .service-content-wrapper img {
        transition: none;
    }
    .service-content-wrapper img:hover {
        transform: none;
    }
}
/* ============================================
   SERVICE FEATURES - Premium Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.service-features {
    padding: 60px 0 70px 0;
    background: #F7F5F0;
    position: relative;
    overflow: hidden;
}

/* Background Pattern - Subtle Gold Accent */
.service-features::before {
    content: '';
    position: absolute;
    top: -20%;
    right: -10%;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.04) 0%, transparent 70%);
    pointer-events: none;
}

.service-features::after {
    content: '';
    position: absolute;
    bottom: -20%;
    left: -10%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

/* ----- Wrapper ----- */
.service-features-wrapper {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

/* ============================================
   HEADER
   ============================================ */
.service-features-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.2rem;
    color: #0B0B0B;
    text-align: center;
    margin: 0 0 8px 0;
    letter-spacing: -0.5px;
    position: relative;
}

.service-features-title .gold {
    color: #C8A96B;
}

.service-features-title .gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

.service-features-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 10px auto 30px auto;
    position: relative;
}

.service-features-line::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    animation: lineShimmer 3s ease-in-out infinite;
    border-radius: 4px;
}

@keyframes lineShimmer {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

/* ============================================
   FEATURES GRID
   ============================================ */
.service-features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* ============================================
   FEATURE ITEM - Premium Card
   ============================================ */
.service-feature-item {
    background: #FCFCFB;
    border-radius: 16px;
    padding: 22px 20px 20px 20px;
    border: 1px solid rgba(229, 229, 229, 0.3);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    box-shadow: 0 2px 8px rgba(11, 11, 11, 0.02);
}

/* Gold Accent Border - Top */
.service-feature-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    opacity: 0;
    transition: all 0.5s ease;
}

/* Gold Glow Effect */
.service-feature-item::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.05) 0%, transparent 70%);
    border-radius: 50%;
    transition: all 0.6s ease;
    pointer-events: none;
}

/* Hover Effects */
.service-feature-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 40px rgba(11, 11, 11, 0.08);
    border-color: rgba(200, 169, 107, 0.15);
}

.service-feature-item:hover::before {
    opacity: 1;
}

.service-feature-item:hover::after {
    width: 300px;
    height: 300px;
}

/* ----- Feature Icon ----- */
.service-feature-item .feature-icon {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(200, 169, 107, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #C8A96B;
    font-size: 1.2rem;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    z-index: 1;
}

.service-feature-item:hover .feature-icon {
    background: #C8A96B;
    color: #0B0B0B;
    transform: scale(1.08) rotate(-4deg);
    box-shadow: 0 4px 16px rgba(200, 169, 107, 0.25);
}

/* ----- Feature Text ----- */
.service-feature-item .feature-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.92rem;
    color: #333333;
    line-height: 1.6;
    flex: 1;
    position: relative;
    z-index: 1;
}

.service-feature-item .feature-text strong {
    font-weight: 600;
    color: #0B0B0B;
}

/* ============================================
   ANIMATION - Staggered Entrance
   ============================================ */
.service-feature-item {
    animation: featureFadeIn 0.6s ease-out both;
}

.service-feature-item:nth-child(1) { animation-delay: 0.05s; }
.service-feature-item:nth-child(2) { animation-delay: 0.10s; }
.service-feature-item:nth-child(3) { animation-delay: 0.15s; }
.service-feature-item:nth-child(4) { animation-delay: 0.20s; }
.service-feature-item:nth-child(5) { animation-delay: 0.25s; }
.service-feature-item:nth-child(6) { animation-delay: 0.30s; }

@keyframes featureFadeIn {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .service-features {
        padding: 50px 0 60px 0;
    }

    .service-features-title {
        font-size: 2rem;
    }

    .service-features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .service-feature-item {
        padding: 18px 16px 16px 16px;
        gap: 12px;
    }

    .service-feature-item .feature-icon {
        width: 38px;
        height: 38px;
        font-size: 1rem;
        border-radius: 10px;
    }

    .service-feature-item .feature-text {
        font-size: 0.88rem;
    }

    .service-features::before,
    .service-features::after {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .service-features {
        padding: 40px 0 50px 0;
    }

    .service-features-title {
        font-size: 1.6rem;
    }

    .service-features-line {
        width: 35px;
        height: 2px;
        margin: 8px auto 20px auto;
    }

    .service-features-grid {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
        padding: 0 4px;
    }

    .service-feature-item {
        padding: 14px 12px 12px 12px;
        border-radius: 12px;
        gap: 10px;
        flex-direction: row;
        align-items: center;
    }

    .service-feature-item .feature-icon {
        width: 32px;
        height: 32px;
        font-size: 0.85rem;
        border-radius: 8px;
        flex-shrink: 0;
    }

    .service-feature-item .feature-text {
        font-size: 0.82rem;
        line-height: 1.5;
    }

    .service-feature-item:hover {
        transform: translateY(-3px);
    }

    .service-feature-item::after {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .service-features {
        padding: 32px 0 40px 0;
    }

    .service-features-title {
        font-size: 1.3rem;
    }

    .service-features-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        padding: 0 2px;
    }

    .service-feature-item {
        padding: 10px 8px 10px 8px;
        border-radius: 10px;
        gap: 8px;
        border-width: 1px;
    }

    .service-feature-item .feature-icon {
        width: 26px;
        height: 26px;
        font-size: 0.7rem;
        border-radius: 6px;
    }

    .service-feature-item .feature-text {
        font-size: 0.7rem;
        line-height: 1.4;
    }

    .service-feature-item::before {
        height: 2px;
    }

    .service-feature-item:hover {
        transform: translateY(-2px);
    }

    .service-features-line {
        width: 25px;
        margin: 6px auto 16px auto;
    }
}

/* ============================================
   ALTERNATE LAYOUT - Single Column (Optional)
   ============================================ */
@media (max-width: 350px) {
    .service-features-grid {
        grid-template-columns: 1fr;
        max-width: 280px;
        margin: 0 auto;
    }

    .service-feature-item {
        padding: 12px 14px;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .service-feature-item {
        animation: none;
        opacity: 1;
        transform: none;
    }
    .service-feature-item {
        transition: none;
    }
    .service-feature-item:hover {
        transform: none;
    }
    .service-feature-item::before {
        transition: none;
    }
    .service-feature-item::after {
        transition: none;
    }
    .service-feature-item .feature-icon {
        transition: none;
    }
    .service-features-line::after {
        animation: none;
    }
}
/* ============================================
   SERVICE FAQ - Premium Accordion
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.service-faq {
    padding: 60px 0 70px 0;
    background: #FCFCFB;
    position: relative;
    overflow: hidden;
}

/* Background Pattern - Subtle Gold Accent */
.service-faq::before {
    content: '';
    position: absolute;
    top: -20%;
    right: -10%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

.service-faq::after {
    content: '';
    position: absolute;
    bottom: -20%;
    left: -10%;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.02) 0%, transparent 70%);
    pointer-events: none;
}

/* ----- Wrapper ----- */
.service-faq-wrapper {
    max-width: 820px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

/* ============================================
   HEADER
   ============================================ */
.service-faq-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.2rem;
    color: #0B0B0B;
    text-align: center;
    margin: 0 0 8px 0;
    letter-spacing: -0.5px;
}

.service-faq-title .gold {
    color: #C8A96B;
}

.service-faq-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 10px auto 32px auto;
    position: relative;
}

.service-faq-line::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    animation: lineShimmer 3s ease-in-out infinite;
    border-radius: 4px;
}

@keyframes lineShimmer {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

/* ============================================
   FAQ LIST
   ============================================ */
.service-faq-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ============================================
   FAQ ITEM - Premium Card
   ============================================ */
.service-faq-item {
    background: #F7F5F0;
    border-radius: 14px;
    border: 1px solid rgba(229, 229, 229, 0.3);
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(11, 11, 11, 0.02);
}

.service-faq-item:hover {
    border-color: rgba(200, 169, 107, 0.12);
    box-shadow: 0 4px 16px rgba(11, 11, 11, 0.04);
}

/* Active State */
.service-faq-item.active {
    background: #FCFCFB;
    border-color: rgba(200, 169, 107, 0.2);
    box-shadow: 0 4px 20px rgba(200, 169, 107, 0.06);
}

.service-faq-item.active .service-faq-question {
    color: #C8A96B;
}

.service-faq-item.active .service-faq-arrow {
    transform: rotate(180deg);
    color: #C8A96B;
}

.service-faq-item.active .service-faq-answer {
    max-height: 400px;
    padding: 0 24px 20px 24px;
    opacity: 1;
}

/* ============================================
   QUESTION
   ============================================ */
.service-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 24px;
    cursor: pointer;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1rem;
    color: #0B0B0B;
    transition: all 0.3s ease;
    user-select: none;
    gap: 16px;
    position: relative;
}

/* Gold Left Border Indicator */
.service-faq-question::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
    height: 0;
    background: linear-gradient(180deg, #C8A96B, #E3C98F);
    border-radius: 0 4px 4px 0;
    transition: all 0.4s ease;
}

.service-faq-item.active .service-faq-question::before {
    height: 60%;
}

.service-faq-question:hover {
    color: #C8A96B;
}

.service-faq-question:hover::before {
    height: 60%;
}

.service-faq-question span {
    flex: 1;
    line-height: 1.4;
}

/* ----- Arrow Icon ----- */
.service-faq-arrow {
    color: #6B6B6B;
    font-size: 0.85rem;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    flex-shrink: 0;
    width: 20px;
    text-align: center;
}

/* ============================================
   ANSWER
   ============================================ */
.service-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0 24px;
    opacity: 0;
}

.service-faq-answer p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.95rem;
    color: #6B6B6B;
    line-height: 1.8;
    margin: 0;
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .service-faq {
        padding: 50px 0 60px 0;
    }

    .service-faq-title {
        font-size: 2rem;
    }

    .service-faq-question {
        font-size: 0.95rem;
        padding: 16px 20px;
    }

    .service-faq-answer p {
        font-size: 0.9rem;
    }

    .service-faq-item.active .service-faq-answer {
        padding: 0 20px 18px 20px;
    }

    .service-faq::before,
    .service-faq::after {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .service-faq {
        padding: 40px 0 50px 0;
    }

    .service-faq-title {
        font-size: 1.6rem;
    }

    .service-faq-line {
        width: 35px;
        height: 2px;
        margin: 8px auto 24px auto;
    }

    .service-faq-list {
        gap: 10px;
    }

    .service-faq-item {
        border-radius: 12px;
    }

    .service-faq-question {
        font-size: 0.88rem;
        padding: 14px 16px;
        gap: 12px;
    }

    .service-faq-arrow {
        font-size: 0.75rem;
        width: 16px;
    }

    .service-faq-answer p {
        font-size: 0.85rem;
    }

    .service-faq-item.active .service-faq-answer {
        padding: 0 16px 14px 16px;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .service-faq {
        padding: 32px 0 40px 0;
    }

    .service-faq-title {
        font-size: 1.3rem;
    }

    .service-faq-question {
        font-size: 0.8rem;
        padding: 12px 14px;
        gap: 10px;
    }

    .service-faq-answer p {
        font-size: 0.8rem;
    }

    .service-faq-item.active .service-faq-answer {
        padding: 0 14px 12px 14px;
    }

    .service-faq-line {
        width: 25px;
        margin: 6px auto 18px auto;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .service-faq-item {
        transition: none;
    }
    .service-faq-answer {
        transition: none;
    }
    .service-faq-arrow {
        transition: none;
    }
    .service-faq-item.active .service-faq-answer {
        transition: none;
    }
    .service-faq-question::before {
        transition: none;
    }
    .service-faq-line::after {
        animation: none;
    }
}
/* ============================================
   SERVICE CTA - Premium Dark Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.service-cta {
    padding: 60px 0 70px 0;
    background: #0B0B0B;
    position: relative;
    overflow: hidden;
    border-top: 2px solid rgba(200, 169, 107, 0.06);
    border-bottom: 2px solid rgba(200, 169, 107, 0.06);
}

/* Background Glow Effect */
.service-cta::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.06) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
    animation: ctaGlowPulse 4s ease-in-out infinite;
}

@keyframes ctaGlowPulse {
    0%, 100% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.6;
    }
    50% {
        transform: translate(-50%, -50%) scale(1.1);
        opacity: 1;
    }
}

/* Floating Decor Circles */
.service-cta::after {
    content: '';
    position: absolute;
    top: -80px;
    right: -80px;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    border: 1px solid rgba(200, 169, 107, 0.03);
    pointer-events: none;
    animation: ctaFloat1 20s ease-in-out infinite;
}

@keyframes ctaFloat1 {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33% { transform: translate(-15px, 20px) scale(1.05); }
    66% { transform: translate(15px, -10px) scale(0.95); }
}

/* ----- Wrapper ----- */
.service-cta-wrapper {
    max-width: 720px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
}

/* ============================================
   TITLE
   ============================================ */
.service-cta-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #FCFCFB;
    line-height: 1.2;
    letter-spacing: -0.5px;
    margin: 0 0 12px 0;
}

.service-cta-title .gold {
    color: #C8A96B;
    position: relative;
}

.service-cta-title .gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

/* ============================================
   TEXT
   ============================================ */
.service-cta-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1.02rem;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.8;
    margin: 0 0 30px 0;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
}

/* ============================================
   BUTTONS
   ============================================ */
.service-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
}

/* ----- Primary Button ----- */
.service-cta-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #C8A96B;
    color: #0B0B0B;
    padding: 14px 34px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: none;
    box-shadow: 0 4px 24px rgba(200, 169, 107, 0.2);
    position: relative;
    overflow: hidden;
}

/* Shimmer Effect */
.service-cta-btn-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-cta-btn-primary:hover::before {
    left: 100%;
}

.service-cta-btn-primary:hover {
    background: #9E8149;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.35);
    text-decoration: none;
}

.service-cta-btn-primary i {
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.service-cta-btn-primary:hover i {
    transform: scale(1.1);
}

.service-cta-btn-primary span {
    position: relative;
    z-index: 1;
}

/* ----- Secondary Button ----- */
.service-cta-btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: transparent;
    color: #FCFCFB;
    padding: 14px 34px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid rgba(255, 255, 255, 0.12);
}

.service-cta-btn-secondary:hover {
    border-color: #C8A96B;
    color: #C8A96B;
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(200, 169, 107, 0.05);
    text-decoration: none;
}

.service-cta-btn-secondary i {
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.service-cta-btn-secondary:hover i {
    transform: scale(1.05);
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .service-cta {
        padding: 50px 0 60px 0;
    }

    .service-cta-title {
        font-size: 2rem;
    }

    .service-cta-text {
        font-size: 0.95rem;
        padding: 0 16px;
    }

    .service-cta::before {
        width: 400px;
        height: 400px;
    }

    .service-cta::after {
        width: 180px;
        height: 180px;
        top: -60px;
        right: -60px;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .service-cta {
        padding: 40px 0 50px 0;
    }

    .service-cta-title {
        font-size: 1.6rem;
    }

    .service-cta-text {
        font-size: 0.9rem;
        padding: 0 12px;
        margin-bottom: 24px;
    }

    .service-cta-buttons {
        flex-direction: column;
        align-items: center;
        gap: 12px;
        padding: 0 16px;
    }

    .service-cta-btn-primary,
    .service-cta-btn-secondary {
        width: 100%;
        max-width: 340px;
        justify-content: center;
        padding: 12px 24px;
        font-size: 0.88rem;
    }

    .service-cta::before {
        width: 280px;
        height: 280px;
    }

    .service-cta::after {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .service-cta {
        padding: 32px 0 40px 0;
    }

    .service-cta-title {
        font-size: 1.3rem;
    }

    .service-cta-text {
        font-size: 0.82rem;
        padding: 0 8px;
    }

    .service-cta-btn-primary,
    .service-cta-btn-secondary {
        font-size: 0.8rem;
        padding: 10px 18px;
        max-width: 280px;
    }

    .service-cta::before {
        width: 200px;
        height: 200px;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .service-cta::before {
        animation: none;
    }
    .service-cta::after {
        animation: none;
    }
    .service-cta-btn-primary {
        transition: none;
    }
    .service-cta-btn-primary:hover {
        transform: none;
    }
    .service-cta-btn-primary::before {
        display: none;
    }
    .service-cta-btn-secondary {
        transition: none;
    }
    .service-cta-btn-secondary:hover {
        transform: none;
    }
}
/* ============================================
   DYNAMIC LOCATION PAGE - Premium Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ============================================
   SECTION 1: HERO
   ============================================ */
.location-hero {
    padding: 40px 0 50px 0;
    background: #FCFCFB;
    position: relative;
    overflow: hidden;
}

.location-hero::before {
    content: '';
    position: absolute;
    top: -20%;
    right: -10%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

.location-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(200, 169, 107, 0.10);
    color: #C8A96B;
    padding: 5px 20px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 12px;
    border: 1px solid rgba(200, 169, 107, 0.08);
}

.location-hero-badge i {
    font-size: 0.6rem;
}

.location-hero-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.6rem;
    color: #0B0B0B;
    line-height: 1.15;
    letter-spacing: -0.5px;
    margin: 0 0 14px 0;
}

.location-hero-title .gold {
    color: #C8A96B;
}

.location-hero-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #6B6B6B;
    line-height: 1.8;
    margin: 0 0 28px 0;
    max-width: 540px;
}

.location-hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #C8A96B;
    color: #0B0B0B;
    padding: 14px 34px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.92rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 20px rgba(200, 169, 107, 0.2);
    position: relative;
    overflow: hidden;
}

.location-hero-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s ease;
}

.location-hero-btn:hover::before {
    left: 100%;
}

.location-hero-btn:hover {
    background: #9E8149;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.35);
    text-decoration: none;
}

.location-hero-image {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(11, 11, 11, 0.08);
    border: 3px solid rgba(200, 169, 107, 0.10);
    transition: all 0.5s ease;
}

.location-hero-image:hover {
    transform: scale(1.01) translateY(-4px);
    box-shadow: 0 28px 72px rgba(11, 11, 11, 0.14);
    border-color: rgba(200, 169, 107, 0.25);
}

.location-hero-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    display: block;
    transition: transform 0.8s ease;
}

.location-hero-image:hover img {
    transform: scale(1.03);
}

.location-hero-image-badge {
    position: absolute;
    bottom: 20px;
    right: 20px;
    background: rgba(11, 11, 11, 0.7);
    backdrop-filter: blur(12px);
    color: #FCFCFB;
    padding: 8px 18px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(200, 169, 107, 0.08);
}

.location-hero-image-badge i {
    color: #C8A96B;
}

/* ============================================
   SECTION 2: CONTENT
   ============================================ */
.location-content {
    padding: 20px 0 50px 0;
    background: #FCFCFB;
    position: relative;
}

.location-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 2px;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    border-radius: 4px;
}

.location-content-wrapper {
    max-width: 860px;
    margin: 0 auto;
    padding: 0 16px;
}

.location-content-wrapper h2 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2rem;
    color: #0B0B0B;
    margin: 38px 0 16px 0;
    line-height: 1.25;
    padding-bottom: 14px;
    position: relative;
}

.location-content-wrapper h2::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    transition: width 0.4s ease;
}

.location-content-wrapper h2:hover::after {
    width: 80px;
}

.location-content-wrapper h2:first-of-type {
    margin-top: 0;
}

.location-content-wrapper h3 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1.35rem;
    color: #0B0B0B;
    margin: 30px 0 12px 0;
}

.location-content-wrapper p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #333333;
    line-height: 1.9;
    margin-bottom: 16px;
}

.location-content-wrapper p:first-of-type {
    font-size: 1.05rem;
    color: #0B0B0B;
    padding: 20px 28px;
    background: rgba(247, 245, 240, 0.5);
    border-radius: 12px;
    border-left: 4px solid #C8A96B;
    margin-bottom: 28px;
}

.location-content-wrapper ul {
    list-style: none;
    padding: 0;
    margin: 18px 0 24px 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.location-content-wrapper ul li {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.95rem;
    color: #333333;
    padding: 12px 16px 12px 44px;
    position: relative;
    line-height: 1.6;
    background: #F7F5F0;
    border-radius: 10px;
    border: 1px solid rgba(229, 229, 229, 0.3);
    transition: all 0.3s ease;
}

.location-content-wrapper ul li::before {
    content: '◆';
    position: absolute;
    left: 16px;
    top: 12px;
    color: #C8A96B;
    font-size: 0.65rem;
    transition: all 0.3s ease;
}

.location-content-wrapper ul li:hover {
    background: #FCFCFB;
    border-color: rgba(200, 169, 107, 0.15);
    transform: translateX(4px);
    box-shadow: 0 4px 12px rgba(11, 11, 11, 0.04);
}

.location-content-wrapper ul li strong {
    font-weight: 600;
    color: #0B0B0B;
}

/* ============================================
   SECTION 3: SERVICES OFFERED
   ============================================ */
.location-services {
    padding: 60px 0 70px 0;
    background: #F7F5F0;
    position: relative;
    overflow: hidden;
}

.location-services::before {
    content: '';
    position: absolute;
    top: -20%;
    right: -10%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.04) 0%, transparent 70%);
    pointer-events: none;
}

.location-services-wrapper {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.location-services-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.2rem;
    color: #0B0B0B;
    text-align: center;
    margin: 0 0 8px 0;
}

.location-services-title .gold {
    color: #C8A96B;
}

.location-services-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 10px auto 30px auto;
    position: relative;
}

.location-services-line::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    animation: lineShimmer 3s ease-in-out infinite;
    border-radius: 4px;
}

@keyframes lineShimmer {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

.location-services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.location-service-item {
    background: #FCFCFB;
    border-radius: 14px;
    padding: 18px 16px 16px 16px;
    border: 1px solid rgba(229, 229, 229, 0.3);
    transition: all 0.4s ease;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: 0 2px 8px rgba(11, 11, 11, 0.02);
}

.location-service-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(11, 11, 11, 0.06);
    border-color: rgba(200, 169, 107, 0.12);
}

.location-service-icon {
    color: #C8A96B;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.location-service-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.92rem;
    color: #333333;
    line-height: 1.5;
}

/* ============================================
   SECTION 4: WHY CHOOSE (Dark)
   ============================================ */
.location-why-choose {
    padding: 60px 0 70px 0;
    background: #0B0B0B;
    position: relative;
    overflow: hidden;
}

.location-why-choose::before {
    content: '';
    position: absolute;
    top: -30%;
    right: -15%;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.05) 0%, transparent 70%);
    pointer-events: none;
}

.location-why-wrapper {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.location-why-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.2rem;
    color: #FCFCFB;
    text-align: center;
    margin: 0 0 8px 0;
}

.location-why-title .gold {
    color: #C8A96B;
}

.location-why-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 10px auto 30px auto;
    position: relative;
}

.location-why-line::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    animation: lineShimmer 3s ease-in-out infinite;
    border-radius: 4px;
}

.location-why-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.location-why-item {
    background: rgba(255, 255, 255, 0.03);
    border-radius: 14px;
    padding: 18px 16px 16px 16px;
    border: 1px solid rgba(255, 255, 255, 0.04);
    transition: all 0.4s ease;
    display: flex;
    align-items: center;
    gap: 12px;
}

.location-why-item:hover {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(200, 169, 107, 0.08);
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
}

.location-why-icon {
    color: #C8A96B;
    font-size: 1rem;
    flex-shrink: 0;
}

.location-why-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.92rem;
    color: rgba(255, 255, 255, 0.75);
    line-height: 1.5;
}

.location-why-item:hover .location-why-text {
    color: rgba(255, 255, 255, 0.9);
}

/* ============================================
   SECTION 5: FAQ
   ============================================ */
.location-faq {
    padding: 60px 0 70px 0;
    background: #FCFCFB;
    position: relative;
    overflow: hidden;
}

.location-faq::before {
    content: '';
    position: absolute;
    top: -20%;
    right: -10%;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

.location-faq-wrapper {
    max-width: 820px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.location-faq-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.2rem;
    color: #0B0B0B;
    text-align: center;
    margin: 0 0 8px 0;
}

.location-faq-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 10px auto 32px auto;
    position: relative;
}

.location-faq-line::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    animation: lineShimmer 3s ease-in-out infinite;
    border-radius: 4px;
}

.location-faq-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.location-faq-item {
    background: #F7F5F0;
    border-radius: 14px;
    border: 1px solid rgba(229, 229, 229, 0.3);
    overflow: hidden;
    transition: all 0.4s ease;
    box-shadow: 0 2px 8px rgba(11, 11, 11, 0.02);
}

.location-faq-item:hover {
    border-color: rgba(200, 169, 107, 0.12);
}

.location-faq-item.active {
    background: #FCFCFB;
    border-color: rgba(200, 169, 107, 0.2);
    box-shadow: 0 4px 20px rgba(200, 169, 107, 0.06);
}

.location-faq-item.active .location-faq-question {
    color: #C8A96B;
}

.location-faq-item.active .location-faq-arrow {
    transform: rotate(180deg);
    color: #C8A96B;
}

.location-faq-item.active .location-faq-answer {
    max-height: 300px;
    padding: 0 24px 20px 24px;
    opacity: 1;
}

.location-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 24px;
    cursor: pointer;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1rem;
    color: #0B0B0B;
    transition: all 0.3s ease;
    user-select: none;
    gap: 16px;
}

.location-faq-question:hover {
    color: #C8A96B;
}

.location-faq-question span {
    flex: 1;
}

.location-faq-arrow {
    color: #6B6B6B;
    font-size: 0.85rem;
    transition: all 0.4s ease;
    flex-shrink: 0;
}

.location-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: all 0.5s ease;
    padding: 0 24px;
    opacity: 0;
}

.location-faq-answer p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.95rem;
    color: #6B6B6B;
    line-height: 1.8;
    margin: 0;
}

/* ============================================
   SECTION 6: CTA
   ============================================ */
.location-cta {
    padding: 60px 0 70px 0;
    background: #0B0B0B;
    position: relative;
    overflow: hidden;
    border-top: 2px solid rgba(200, 169, 107, 0.06);
    border-bottom: 2px solid rgba(200, 169, 107, 0.06);
}

.location-cta::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.06) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
    animation: ctaPulse 4s ease-in-out infinite;
}

@keyframes ctaPulse {
    0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.6; }
    50% { transform: translate(-50%, -50%) scale(1.1); opacity: 1; }
}

.location-cta-wrapper {
    max-width: 720px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
}

.location-cta-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #FCFCFB;
    line-height: 1.2;
    letter-spacing: -0.5px;
    margin: 0 0 12px 0;
}

.location-cta-title .gold {
    color: #C8A96B;
}

.location-cta-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.8;
    margin: 0 0 30px 0;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
}

.location-cta-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
}

.location-cta-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #C8A96B;
    color: #0B0B0B;
    padding: 14px 34px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all 0.4s ease;
    box-shadow: 0 4px 24px rgba(200, 169, 107, 0.2);
    position: relative;
    overflow: hidden;
}

.location-cta-btn-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s ease;
}

.location-cta-btn-primary:hover::before {
    left: 100%;
}

.location-cta-btn-primary:hover {
    background: #9E8149;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.35);
    text-decoration: none;
}

.location-cta-btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: transparent;
    color: #FCFCFB;
    padding: 14px 34px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all 0.4s ease;
    border: 2px solid rgba(255, 255, 255, 0.12);
}

.location-cta-btn-secondary:hover {
    border-color: #C8A96B;
    color: #C8A96B;
    transform: translateY(-3px);
    text-decoration: none;
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .location-hero {
        padding: 30px 0 40px 0;
    }

    .location-hero-title {
        font-size: 2.2rem;
    }

    .location-hero-image img {
        height: 280px;
    }

    .location-services-grid,
    .location-why-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }

    .location-services,
    .location-why-choose,
    .location-faq,
    .location-cta {
        padding: 50px 0 60px 0;
    }

    .location-services-title,
    .location-why-title,
    .location-faq-title {
        font-size: 2rem;
    }

    .location-cta-title {
        font-size: 2rem;
    }

    .location-content-wrapper ul {
        grid-template-columns: 1fr;
    }

    .location-content-wrapper h2 {
        font-size: 1.7rem;
    }

    .location-hero::before,
    .location-services::before,
    .location-faq::before,
    .location-why-choose::before {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .location-hero {
        padding: 20px 0 30px 0;
    }

    .location-hero .row {
        flex-direction: column-reverse;
    }

    .location-hero-title {
        font-size: 1.8rem;
        text-align: center;
    }

    .location-hero-text {
        font-size: 0.92rem;
        max-width: 100%;
        text-align: center;
    }

    .location-hero-badge {
        display: table;
        margin: 0 auto 10px auto;
        font-size: 0.55rem;
        padding: 3px 14px;
    }

    .location-hero-btn {
        display: flex;
        width: 100%;
        justify-content: center;
        max-width: 320px;
        margin: 0 auto;
        padding: 12px 24px;
        font-size: 0.88rem;
    }

    .location-hero-image img {
        height: 200px;
    }

    .location-hero-image-badge {
        bottom: 12px;
        right: 12px;
        padding: 5px 14px;
        font-size: 0.65rem;
    }

    .location-content {
        padding: 12px 0 30px 0;
    }

    .location-content-wrapper {
        padding: 0 12px;
    }

    .location-content-wrapper h2 {
        font-size: 1.4rem;
        margin: 28px 0 12px 0;
        padding-bottom: 10px;
    }

    .location-content-wrapper h2::after {
        width: 35px;
        height: 2px;
    }

    .location-content-wrapper h3 {
        font-size: 1.1rem;
    }

    .location-content-wrapper p {
        font-size: 0.9rem;
    }

    .location-content-wrapper p:first-of-type {
        font-size: 0.95rem;
        padding: 14px 16px;
        border-left-width: 3px;
    }

    .location-content-wrapper ul li {
        font-size: 0.85rem;
        padding: 10px 14px 10px 36px;
    }

    .location-content-wrapper ul li::before {
        left: 12px;
        top: 10px;
        font-size: 0.55rem;
    }

    .location-services,
    .location-why-choose,
    .location-faq,
    .location-cta {
        padding: 40px 0 50px 0;
    }

    .location-services-title,
    .location-why-title,
    .location-faq-title {
        font-size: 1.6rem;
    }

    .location-services-line,
    .location-why-line,
    .location-faq-line {
        width: 35px;
        height: 2px;
        margin: 8px auto 20px auto;
    }

    .location-services-grid,
    .location-why-grid {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        padding: 0 4px;
    }

    .location-service-item,
    .location-why-item {
        padding: 12px 10px;
        border-radius: 10px;
        gap: 10px;
    }

    .location-service-text,
    .location-why-text {
        font-size: 0.82rem;
    }

    .location-why-text {
        color: rgba(255, 255, 255, 0.7);
    }

    .location-faq-question {
        font-size: 0.88rem;
        padding: 14px 16px;
    }

    .location-faq-answer p {
        font-size: 0.85rem;
    }

    .location-faq-item.active .location-faq-answer {
        padding: 0 16px 14px 16px;
    }

    .location-cta-title {
        font-size: 1.6rem;
    }

    .location-cta-text {
        font-size: 0.9rem;
        padding: 0 12px;
    }

    .location-cta-buttons {
        flex-direction: column;
        align-items: center;
        padding: 0 16px;
    }

    .location-cta-btn-primary,
    .location-cta-btn-secondary {
        width: 100%;
        max-width: 320px;
        justify-content: center;
        padding: 12px 24px;
        font-size: 0.88rem;
    }

    .location-cta::before {
        width: 280px;
        height: 280px;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .location-hero-title {
        font-size: 1.5rem;
    }

    .location-hero-image img {
        height: 160px;
    }

    .location-services-title,
    .location-why-title,
    .location-faq-title {
        font-size: 1.3rem;
    }

    .location-cta-title {
        font-size: 1.3rem;
    }

    .location-services-grid,
    .location-why-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .location-service-item,
    .location-why-item {
        padding: 8px 8px;
        border-radius: 8px;
        gap: 8px;
    }

    .location-service-text,
    .location-why-text {
        font-size: 0.72rem;
    }

    .location-service-icon,
    .location-why-icon {
        font-size: 0.75rem;
    }

    .location-content-wrapper h2 {
        font-size: 1.2rem;
    }

    .location-content-wrapper p:first-of-type {
        font-size: 0.88rem;
        padding: 10px 12px;
    }

    .location-faq-question {
        font-size: 0.78rem;
        padding: 12px 14px;
    }

    .location-faq-answer p {
        font-size: 0.78rem;
    }

    .location-cta-btn-primary,
    .location-cta-btn-secondary {
        font-size: 0.8rem;
        padding: 10px 18px;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .location-hero-image {
        transition: none;
    }
    .location-hero-image:hover {
        transform: none;
    }
    .location-hero-image:hover img {
        transform: none;
    }
    .location-hero-btn {
        transition: none;
    }
    .location-hero-btn:hover {
        transform: none;
    }
    .location-hero-btn::before {
        display: none;
    }
    .location-services-line::after,
    .location-why-line::after,
    .location-faq-line::after {
        animation: none;
    }
    .location-service-item {
        transition: none;
    }
    .location-service-item:hover {
        transform: none;
    }
    .location-why-item {
        transition: none;
    }
    .location-why-item:hover {
        transform: none;
    }
    .location-faq-item {
        transition: none;
    }
    .location-faq-answer {
        transition: none;
    }
    .location-cta-btn-primary {
        transition: none;
    }
    .location-cta-btn-primary:hover {
        transform: none;
    }
    .location-cta-btn-secondary {
        transition: none;
    }
    .location-cta-btn-secondary:hover {
        transform: none;
    }
    .location-cta::before {
        animation: none;
    }
}

/* ============================================
   BLOG LISTING - Professional Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ============================================
   SECTION 1: HEADER
   ============================================ */
.blog-header {
    padding: 40px 0 30px 0;
    background: #FCFCFB;
}

.blog-header-content {
    max-width: 780px;
    margin: 0 auto;
    text-align: center;
}

.blog-badge {
    display: inline-block;
    background: rgba(200, 169, 107, 0.12);
    color: #C8A96B;
    padding: 5px 20px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
    border: 1px solid rgba(200, 169, 107, 0.15);
}

.blog-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.6rem;
    color: #0B0B0B;
    line-height: 1.15;
    letter-spacing: -0.5px;
    margin: 0 0 6px 0;
}

.blog-title-gold {
    color: #C8A96B;
    position: relative;
}

.blog-title-gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

.blog-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 8px auto 14px auto;
}

.blog-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #6B6B6B;
    line-height: 1.8;
    max-width: 620px;
    margin: 0 auto;
}

/* ============================================
   SECTION 2: BLOG GRID
   ============================================ */
.blog-grid-section {
    padding: 30px 0 60px 0;
    background: #F7F5F0;
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

/* ============================================
   BLOG CARD
   ============================================ */
.blog-card {
    background: #FCFCFB;
    border-radius: 16px;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 12px rgba(11, 11, 11, 0.04);
    border: 1px solid rgba(229, 229, 229, 0.3);
}

.blog-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 48px rgba(11, 11, 11, 0.08);
    border-color: rgba(200, 169, 107, 0.15);
}

.blog-card-link {
    display: block;
    text-decoration: none;
    height: 100%;
}

/* ----- Card Image ----- */
.blog-card-image {
    position: relative;
    overflow: hidden;
    height: 210px;
}

.blog-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.blog-card:hover .blog-card-image img {
    transform: scale(1.05);
}

/* Gold Overlay */
.blog-card-image::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60%;
    background: linear-gradient(180deg, transparent, rgba(11, 11, 11, 0.15));
    pointer-events: none;
}

/* ----- Date Badge ----- */
.blog-card-date {
    position: absolute;
    bottom: 14px;
    left: 16px;
    background: rgba(11, 11, 11, 0.65);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    color: #FCFCFB;
    padding: 5px 14px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-size: 0.7rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    z-index: 2;
}

.blog-card-date i {
    font-size: 0.65rem;
}

/* ----- Card Body ----- */
.blog-card-body {
    padding: 20px 22px 22px 22px;
    display: flex;
    flex-direction: column;
    height: calc(100% - 210px);
}

/* ----- Title ----- */
.blog-card-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1.1rem;
    color: #0B0B0B;
    line-height: 1.3;
    margin: 0 0 8px 0;
    transition: color 0.3s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.blog-card:hover .blog-card-title {
    color: #C8A96B;
}

/* ----- Excerpt ----- */
.blog-card-excerpt {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.9rem;
    color: #6B6B6B;
    line-height: 1.7;
    margin: 0 0 16px 0;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ----- Read More Button ----- */
.blog-card-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.85rem;
    color: #0B0B0B;
    transition: all 0.3s ease;
    padding: 6px 0;
    border-bottom: 2px solid transparent;
    align-self: flex-start;
}

.blog-card-btn i {
    font-size: 0.7rem;
    transition: all 0.3s ease;
}

.blog-card:hover .blog-card-btn {
    color: #C8A96B;
    border-bottom-color: #C8A96B;
}

.blog-card:hover .blog-card-btn i {
    transform: translateX(4px);
}

/* ============================================
   EMPTY STATE
   ============================================ */
.blog-empty {
    text-align: center;
    padding: 60px 20px;
}

.blog-empty i {
    font-size: 3rem;
    color: rgba(200, 169, 107, 0.2);
    margin-bottom: 16px;
}

.blog-empty h3 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1.4rem;
    color: #0B0B0B;
    margin: 0 0 8px 0;
}

.blog-empty p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #6B6B6B;
}

/* ============================================
   PAGINATION
   ============================================ */
.blog-pagination {
    margin-top: 40px;
}

.pagination-list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.pagination-list li {
    display: inline-block;
}

.pagination-number {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border-radius: 10px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 0.9rem;
    color: #0B0B0B;
    text-decoration: none;
    transition: all 0.3s ease;
    border: 1px solid rgba(229, 229, 229, 0.4);
    background: #FCFCFB;
}

.pagination-number:hover {
    background: rgba(200, 169, 107, 0.08);
    border-color: rgba(200, 169, 107, 0.15);
    text-decoration: none;
    color: #0B0B0B;
}

.pagination-number.active {
    background: #C8A96B;
    color: #0B0B0B;
    border-color: #C8A96B;
    font-weight: 600;
}

.pagination-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    font-family: 'Poppins', sans-serif;
    color: #0B0B0B;
    text-decoration: none;
    transition: all 0.3s ease;
    border: 1px solid rgba(229, 229, 229, 0.4);
    background: #FCFCFB;
}

.pagination-arrow:hover {
    background: #C8A96B;
    color: #0B0B0B;
    border-color: #C8A96B;
    text-decoration: none;
}

.pagination-arrow i {
    font-size: 0.8rem;
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .blog-title {
        font-size: 2.2rem;
    }

    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .blog-header {
        padding: 30px 0 20px 0;
    }

    .blog-grid-section {
        padding: 20px 0 50px 0;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .blog-title {
        font-size: 1.8rem;
    }

    .blog-badge {
        font-size: 0.55rem;
        padding: 3px 14px;
    }

    .blog-line {
        width: 35px;
        height: 2px;
    }

    .blog-subtitle {
        font-size: 0.92rem;
        padding: 0 16px;
    }

    .blog-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        max-width: 420px;
        margin: 0 auto;
    }

    .blog-card-image {
        height: 180px;
    }

    .blog-card-body {
        padding: 16px 18px 18px 18px;
    }

    .blog-card-title {
        font-size: 1rem;
    }

    .blog-card-excerpt {
        font-size: 0.85rem;
        -webkit-line-clamp: 3;
    }

    .blog-card-date {
        font-size: 0.6rem;
        padding: 4px 12px;
        bottom: 10px;
        left: 12px;
    }

    .blog-card-btn {
        font-size: 0.8rem;
    }

    .blog-grid-section {
        padding: 16px 0 40px 0;
    }

    .blog-empty i {
        font-size: 2.5rem;
    }

    .blog-empty h3 {
        font-size: 1.2rem;
    }

    .pagination-number {
        min-width: 36px;
        height: 36px;
        font-size: 0.82rem;
    }

    .pagination-arrow {
        width: 36px;
        height: 36px;
    }

    .pagination-list {
        gap: 4px;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .blog-title {
        font-size: 1.4rem;
    }

    .blog-badge {
        font-size: 0.5rem;
        padding: 2px 12px;
    }

    .blog-subtitle {
        font-size: 0.85rem;
    }

    .blog-card-image {
        height: 160px;
    }

    .blog-card-body {
        padding: 14px 14px 16px 14px;
    }

    .blog-card-title {
        font-size: 0.92rem;
    }

    .blog-card-excerpt {
        font-size: 0.8rem;
        -webkit-line-clamp: 2;
    }

    .blog-card-date {
        font-size: 0.55rem;
        padding: 3px 10px;
        bottom: 8px;
        left: 10px;
    }

    .blog-card-btn {
        font-size: 0.75rem;
    }

    .pagination-number {
        min-width: 32px;
        height: 32px;
        font-size: 0.75rem;
        border-radius: 8px;
    }

    .pagination-arrow {
        width: 32px;
        height: 32px;
        border-radius: 8px;
    }

    .pagination-arrow i {
        font-size: 0.7rem;
    }

    .pagination-list {
        gap: 3px;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .blog-card {
        transition: none;
    }
    .blog-card:hover {
        transform: none;
    }
    .blog-card-image img {
        transition: none;
    }
    .blog-card:hover .blog-card-image img {
        transform: none;
    }
    .blog-card-btn i {
        transition: none;
    }
    .blog-card:hover .blog-card-btn i {
        transform: none;
    }
    .pagination-number {
        transition: none;
    }
    .pagination-arrow {
        transition: none;
    }
}
/* ============================================
   BLOG SINGLE - Professional Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.blog-single {
    padding: 30px 0 60px 0;
    background: #FCFCFB;
    position: relative;
}

/* ----- Back Button ----- */
.blog-single-back {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 0.9rem;
    color: #0B0B0B;
    padding: 8px 22px;
    border-radius: 50px;
    border: 2px solid #C8A96B;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    margin-bottom: 24px;
}

.blog-single-back:hover {
    background: #C8A96B;
    color: #0B0B0B;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(200, 169, 107, 0.2);
}

.blog-single-back i {
    font-size: 0.75rem;
    transition: all 0.3s ease;
}

.blog-single-back:hover i {
    transform: translateX(-4px);
}

/* ============================================
   FEATURED IMAGE
   ============================================ */
.blog-single-image {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 28px;
    box-shadow: 0 12px 40px rgba(11, 11, 11, 0.06);
    border: 3px solid rgba(200, 169, 107, 0.10);
    transition: all 0.4s ease;
}

.blog-single-image:hover {
    border-color: rgba(200, 169, 107, 0.2);
}

.blog-single-image img {
    width: 100%;
    height: 440px;
    object-fit: cover;
    display: block;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.blog-single-image:hover img {
    transform: scale(1.02);
}

/* Image Overlay */
.blog-single-image-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, transparent, rgba(11, 11, 11, 0.15));
    pointer-events: none;
}

/* Image Badge */
.blog-single-image-badge {
    position: absolute;
    bottom: 18px;
    left: 20px;
    background: rgba(11, 11, 11, 0.65);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    color: #FCFCFB;
    padding: 6px 18px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-size: 0.75rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    z-index: 2;
}

.blog-single-image-badge i {
    color: #C8A96B;
    font-size: 0.7rem;
}

/* ============================================
   HEADER
   ============================================ */
.blog-single-header {
    margin-bottom: 28px;
}

.blog-single-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.6rem;
    color: #0B0B0B;
    line-height: 1.2;
    letter-spacing: -0.5px;
    margin: 0 0 14px 0;
}

.blog-single-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.blog-single-meta-item {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.85rem;
    color: #6B6B6B;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.blog-single-meta-item i {
    color: #C8A96B;
    font-size: 0.75rem;
}

.blog-single-meta-divider {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #E5E5E5;
}

/* ============================================
   CONTENT
   ============================================ */
.blog-single-content {
    max-width: 100%;
}

.blog-single-content h2 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 1.8rem;
    color: #0B0B0B;
    margin: 38px 0 14px 0;
    line-height: 1.3;
    padding-bottom: 12px;
    border-bottom: 2px solid rgba(200, 169, 107, 0.08);
    position: relative;
}

.blog-single-content h2::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 50px;
    height: 2px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
}

.blog-single-content h3 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1.3rem;
    color: #0B0B0B;
    margin: 28px 0 10px 0;
    line-height: 1.3;
}

.blog-single-content h4 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1.1rem;
    color: #0B0B0B;
    margin: 20px 0 8px 0;
}

.blog-single-content p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #333333;
    line-height: 1.9;
    margin-bottom: 16px;
}

.blog-single-content p:first-of-type {
    font-size: 1.05rem;
    color: #0B0B0B;
}

.blog-single-content ul {
    list-style: none;
    padding: 0;
    margin: 16px 0 20px 0;
}

.blog-single-content ul li {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.95rem;
    color: #333333;
    padding: 8px 0 8px 30px;
    position: relative;
    line-height: 1.7;
}

.blog-single-content ul li::before {
    content: '◆';
    position: absolute;
    left: 0;
    top: 8px;
    color: #C8A96B;
    font-size: 0.6rem;
}

.blog-single-content ul li strong {
    font-weight: 600;
    color: #0B0B0B;
}

.blog-single-content ol {
    padding: 0;
    margin: 16px 0 20px 0;
    counter-reset: step;
}

.blog-single-content ol li {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.95rem;
    color: #333333;
    padding: 8px 0 8px 40px;
    position: relative;
    line-height: 1.7;
    counter-increment: step;
}

.blog-single-content ol li::before {
    content: counter(step);
    position: absolute;
    left: 0;
    top: 8px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: linear-gradient(135deg, #C8A96B, #E3C98F);
    color: #0B0B0B;
    font-size: 0.7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Poppins', sans-serif;
}

.blog-single-content strong {
    font-weight: 600;
    color: #0B0B0B;
}

.blog-single-content blockquote {
    background: #F7F5F0;
    border-left: 4px solid #C8A96B;
    padding: 18px 24px;
    margin: 24px 0;
    border-radius: 0 12px 12px 0;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    color: #333333;
    line-height: 1.9;
    font-style: italic;
    position: relative;
}

.blog-single-content blockquote::before {
    content: '"';
    position: absolute;
    top: 6px;
    left: 12px;
    font-size: 2.5rem;
    color: rgba(200, 169, 107, 0.1);
    font-family: Georgia, serif;
    line-height: 1;
}

.blog-single-content blockquote p {
    padding-left: 20px;
    margin-bottom: 0;
}

/* ============================================
   POST NAVIGATION
   ============================================ */
.blog-single-navigation {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 20px;
    margin: 40px 0 48px 0;
    padding-top: 32px;
    border-top: 1px solid rgba(229, 229, 229, 0.5);
}

.blog-single-nav-item {
    flex: 1;
}

.blog-single-nav-prev {
    text-align: left;
}

.blog-single-nav-next {
    text-align: right;
}

.blog-single-nav-link {
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-decoration: none;
    padding: 8px 0;
    transition: all 0.3s ease;
}

.blog-single-nav-link:hover {
    text-decoration: none;
}

.blog-single-nav-label {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 0.8rem;
    color: #6B6B6B;
    transition: color 0.3s ease;
}

.blog-single-nav-link:hover .blog-single-nav-label {
    color: #C8A96B;
}

.blog-single-nav-prev .blog-single-nav-label i {
    margin-right: 6px;
    transition: all 0.3s ease;
}

.blog-single-nav-link:hover .blog-single-nav-prev .blog-single-nav-label i {
    transform: translateX(-4px);
}

.blog-single-nav-next .blog-single-nav-label i {
    margin-left: 6px;
    transition: all 0.3s ease;
}

.blog-single-nav-link:hover .blog-single-nav-next .blog-single-nav-label i {
    transform: translateX(4px);
}

.blog-single-nav-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.95rem;
    color: #0B0B0B;
    transition: color 0.3s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.blog-single-nav-link:hover .blog-single-nav-title {
    color: #C8A96B;
}

.blog-single-nav-empty {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.85rem;
    color: #B0B0B0;
    display: inline-block;
    padding: 8px 0;
}

.blog-single-nav-divider {
    width: 1px;
    background: rgba(229, 229, 229, 0.5);
    flex-shrink: 0;
}

/* ============================================
   CTA
   ============================================ */
.blog-single-cta {
    background: #0B0B0B;
    border-radius: 20px;
    padding: 44px 48px;
    text-align: center;
    border: 1px solid rgba(200, 169, 107, 0.06);
    position: relative;
    overflow: hidden;
}

.blog-single-cta::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.06) 0%, transparent 70%);
    pointer-events: none;
}

.blog-single-cta-icon {
    font-size: 2.5rem;
    color: rgba(200, 169, 107, 0.15);
    margin-bottom: 8px;
}

.blog-single-cta-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 1.5rem;
    color: #FCFCFB;
    margin: 0 0 8px 0;
}

.blog-single-cta-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.8;
    margin: 0 0 20px 0;
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
}

.blog-single-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #C8A96B;
    color: #0B0B0B;
    padding: 14px 34px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.92rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 20px rgba(200, 169, 107, 0.2);
    position: relative;
    overflow: hidden;
}

.blog-single-cta-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s ease;
}

.blog-single-cta-btn:hover::before {
    left: 100%;
}

.blog-single-cta-btn:hover {
    background: #9E8149;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.35);
    text-decoration: none;
}

.blog-single-cta-btn i {
    font-size: 0.9rem;
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .blog-single {
        padding: 20px 0 50px 0;
    }

    .blog-single-title {
        font-size: 2.2rem;
    }

    .blog-single-image img {
        height: 320px;
    }

    .blog-single-content h2 {
        font-size: 1.6rem;
    }

    .blog-single-content h3 {
        font-size: 1.2rem;
    }

    .blog-single-cta {
        padding: 34px 32px;
    }

    .blog-single-cta-title {
        font-size: 1.3rem;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .blog-single {
        padding: 16px 0 40px 0;
    }

    .blog-single-back {
        font-size: 0.8rem;
        padding: 6px 16px;
        margin-bottom: 18px;
    }

    .blog-single-image {
        border-radius: 12px;
        margin-bottom: 20px;
    }

    .blog-single-image img {
        height: 220px;
    }

    .blog-single-image-badge {
        font-size: 0.6rem;
        padding: 4px 14px;
        bottom: 12px;
        left: 14px;
    }

    .blog-single-title {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }

    .blog-single-meta-item {
        font-size: 0.75rem;
    }

    .blog-single-content h2 {
        font-size: 1.3rem;
        margin: 28px 0 10px 0;
        padding-bottom: 8px;
    }

    .blog-single-content h2::after {
        width: 35px;
    }

    .blog-single-content h3 {
        font-size: 1.05rem;
        margin: 22px 0 8px 0;
    }

    .blog-single-content h4 {
        font-size: 0.95rem;
    }

    .blog-single-content p {
        font-size: 0.92rem;
        line-height: 1.8;
    }

    .blog-single-content p:first-of-type {
        font-size: 0.96rem;
    }

    .blog-single-content ul li {
        font-size: 0.88rem;
        padding: 6px 0 6px 24px;
    }

    .blog-single-content ul li::before {
        top: 6px;
        font-size: 0.5rem;
    }

    .blog-single-content ol li {
        font-size: 0.88rem;
        padding: 6px 0 6px 32px;
    }

    .blog-single-content ol li::before {
        width: 20px;
        height: 20px;
        font-size: 0.6rem;
        top: 6px;
    }

    .blog-single-content blockquote {
        padding: 12px 16px;
        font-size: 0.92rem;
        border-left-width: 3px;
        margin: 18px 0;
    }

    .blog-single-content blockquote::before {
        font-size: 2rem;
        top: 4px;
        left: 8px;
    }

    .blog-single-content blockquote p {
        padding-left: 14px;
    }

    .blog-single-navigation {
        flex-direction: column;
        gap: 12px;
        margin: 28px 0 36px 0;
        padding-top: 24px;
    }

    .blog-single-nav-item {
        flex: none;
        width: 100%;
    }

    .blog-single-nav-prev {
        text-align: left;
    }

    .blog-single-nav-next {
        text-align: left;
    }

    .blog-single-nav-divider {
        display: none;
    }

    .blog-single-nav-title {
        font-size: 0.88rem;
    }

    .blog-single-nav-label {
        font-size: 0.75rem;
    }

    .blog-single-cta {
        padding: 28px 20px;
        border-radius: 16px;
    }

    .blog-single-cta-title {
        font-size: 1.1rem;
    }

    .blog-single-cta-text {
        font-size: 0.88rem;
        padding: 0 4px;
    }

    .blog-single-cta-btn {
        padding: 12px 24px;
        font-size: 0.85rem;
        width: 100%;
        justify-content: center;
        max-width: 320px;
    }

    .blog-single-cta-icon {
        font-size: 2rem;
    }

    .blog-single-cta::before {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .blog-single-title {
        font-size: 1.3rem;
    }

    .blog-single-image img {
        height: 180px;
    }

    .blog-single-content h2 {
        font-size: 1.1rem;
    }

    .blog-single-content h3 {
        font-size: 0.95rem;
    }

    .blog-single-content p {
        font-size: 0.85rem;
    }

    .blog-single-content p:first-of-type {
        font-size: 0.88rem;
    }

    .blog-single-content ul li {
        font-size: 0.82rem;
        padding: 4px 0 4px 20px;
    }

    .blog-single-content ol li {
        font-size: 0.82rem;
        padding: 4px 0 4px 28px;
    }

    .blog-single-content ol li::before {
        width: 18px;
        height: 18px;
        font-size: 0.5rem;
        top: 4px;
    }

    .blog-single-content blockquote {
        padding: 10px 12px;
        font-size: 0.85rem;
    }

    .blog-single-content blockquote p {
        padding-left: 10px;
    }

    .blog-single-nav-title {
        font-size: 0.82rem;
    }

    .blog-single-cta {
        padding: 20px 16px;
    }

    .blog-single-cta-title {
        font-size: 1rem;
    }

    .blog-single-cta-text {
        font-size: 0.82rem;
    }

    .blog-single-cta-btn {
        font-size: 0.8rem;
        padding: 10px 18px;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .blog-single-back {
        transition: none;
    }
    .blog-single-back:hover {
        transform: none;
    }
    .blog-single-image img {
        transition: none;
    }
    .blog-single-image:hover img {
        transform: none;
    }
    .blog-single-cta-btn {
        transition: none;
    }
    .blog-single-cta-btn:hover {
        transform: none;
    }
    .blog-single-cta-btn::before {
        display: none;
    }
    .blog-single-nav-link {
        transition: none;
    }
}
/* ============================================
   BLOG SINGLE - NAVIGATION CARDS
   ============================================ */

/* ----- Navigation Cards Container ----- */
.blog-single-navigation-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin: 40px 0 48px 0;
    padding-top: 32px;
    border-top: 1px solid rgba(229, 229, 229, 0.5);
}

/* ----- Single Navigation Card ----- */
.blog-single-nav-card {
    display: block;
    text-decoration: none;
    border-radius: 14px;
    overflow: hidden;
    background: #F7F5F0;
    border: 1px solid rgba(229, 229, 229, 0.3);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    box-shadow: 0 2px 8px rgba(11, 11, 11, 0.02);
}

.blog-single-nav-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 36px rgba(11, 11, 11, 0.08);
    border-color: rgba(200, 169, 107, 0.15);
    text-decoration: none;
    background: #FCFCFB;
}

/* Gold Accent Border */
.blog-single-nav-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    opacity: 0;
    transition: all 0.4s ease;
    z-index: 2;
}

.blog-single-nav-card:hover::before {
    opacity: 1;
}

/* ----- Label ----- */
.blog-single-nav-card-label {
    display: block;
    padding: 10px 16px 6px 16px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #6B6B6B;
    transition: color 0.3s ease;
}

.blog-single-nav-card:hover .blog-single-nav-card-label {
    color: #C8A96B;
}

.blog-single-nav-card-prev .blog-single-nav-card-label {
    text-align: left;
}

.blog-single-nav-card-next .blog-single-nav-card-label {
    text-align: right;
}

.blog-single-nav-card-label i {
    font-size: 0.6rem;
}

/* ----- Inner Content ----- */
.blog-single-nav-card-inner {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 0 16px 16px 16px;
}

.blog-single-nav-card-prev .blog-single-nav-card-inner {
    flex-direction: row;
}

.blog-single-nav-card-next .blog-single-nav-card-inner {
    flex-direction: row-reverse;
}

/* ----- Thumbnail Image ----- */
.blog-single-nav-card-image {
    width: 80px;
    height: 80px;
    border-radius: 10px;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid rgba(200, 169, 107, 0.06);
    transition: all 0.4s ease;
}

.blog-single-nav-card:hover .blog-single-nav-card-image {
    border-color: rgba(200, 169, 107, 0.2);
}

/* ----- Content ----- */
.blog-single-nav-card-content {
    flex: 1;
    min-width: 0;
}

.blog-single-nav-card-prev .blog-single-nav-card-content {
    text-align: left;
}

.blog-single-nav-card-next .blog-single-nav-card-content {
    text-align: right;
}

/* ----- Title ----- */
.blog-single-nav-card-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.92rem;
    color: #0B0B0B;
    line-height: 1.3;
    margin: 0 0 4px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.3s ease;
}

.blog-single-nav-card:hover .blog-single-nav-card-title {
    color: #C8A96B;
}

/* ----- Read More ----- */
.blog-single-nav-card-read {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 0.75rem;
    color: #6B6B6B;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: all 0.3s ease;
}

.blog-single-nav-card:hover .blog-single-nav-card-read {
    color: #C8A96B;
}

.blog-single-nav-card-read i {
    font-size: 0.6rem;
    transition: all 0.3s ease;
}

.blog-single-nav-card:hover .blog-single-nav-card-read i {
    transform: translateX(4px);
}

/* ----- Empty State ----- */
.blog-single-nav-empty-state {
    text-align: center;
    padding: 20px 0;
    margin: 40px 0 48px 0;
    border-top: 1px solid rgba(229, 229, 229, 0.5);
}

.blog-single-nav-empty-state p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.95rem;
    color: #6B6B6B;
    margin: 0;
}

.blog-single-nav-empty-state a {
    color: #C8A96B;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
}

.blog-single-nav-empty-state a:hover {
    color: #9E8149;
    text-decoration: underline;
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 767px) {
    .blog-single-navigation-cards {
        grid-template-columns: 1fr;
        gap: 16px;
        margin: 28px 0 36px 0;
        padding-top: 24px;
    }

    .blog-single-nav-card-inner {
        padding: 0 14px 14px 14px;
        gap: 12px;
    }

    .blog-single-nav-card-label {
        font-size: 0.6rem;
        padding: 8px 14px 4px 14px;
        letter-spacing: 1px;
    }

    .blog-single-nav-card-image {
        width: 64px;
        height: 64px;
        border-radius: 8px;
    }

    .blog-single-nav-card-title {
        font-size: 0.85rem;
    }

    .blog-single-nav-card-read {
        font-size: 0.7rem;
    }

    .blog-single-nav-card-next .blog-single-nav-card-inner {
        flex-direction: row;
    }

    .blog-single-nav-card-next .blog-single-nav-card-content {
        text-align: left;
    }

    .blog-single-nav-card-next .blog-single-nav-card-label {
        text-align: left;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .blog-single-navigation-cards {
        gap: 12px;
        margin: 20px 0 28px 0;
    }

    .blog-single-nav-card-inner {
        padding: 0 10px 10px 10px;
        gap: 10px;
    }

    .blog-single-nav-card-label {
        font-size: 0.55rem;
        padding: 6px 10px 2px 10px;
        letter-spacing: 0.5px;
    }

    .blog-single-nav-card-image {
        width: 52px;
        height: 52px;
        border-radius: 6px;
    }

    .blog-single-nav-card-title {
        font-size: 0.78rem;
    }

    .blog-single-nav-card-read {
        font-size: 0.65rem;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .blog-single-nav-card {
        transition: none;
    }
    .blog-single-nav-card:hover {
        transform: none;
    }
    .blog-single-nav-card::before {
        transition: none;
    }
    .blog-single-nav-card-read i {
        transition: none;
    }
    .blog-single-nav-card:hover .blog-single-nav-card-read i {
        transform: none;
    }
}
/* ============================================
   SERVICES LISTING - Professional Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ============================================
   SECTION 1: HEADER
   ============================================ */
.services-header-section {
    padding: 40px 0 30px 0;
    background: #FCFCFB;
}

.services-header-content {
    max-width: 780px;
    margin: 0 auto;
    text-align: center;
}

.services-badge {
    display: inline-block;
    background: rgba(200, 169, 107, 0.12);
    color: #C8A96B;
    padding: 5px 20px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
    border: 1px solid rgba(200, 169, 107, 0.15);
}

.services-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.6rem;
    color: #0B0B0B;
    line-height: 1.15;
    letter-spacing: -0.5px;
    margin: 0 0 6px 0;
}

.services-title-gold {
    color: #C8A96B;
    position: relative;
}

.services-title-gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

.services-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 8px auto 14px auto;
}

.services-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #6B6B6B;
    line-height: 1.8;
    max-width: 620px;
    margin: 0 auto;
}

/* ============================================
   SECTION 2: SERVICES GRID
   ============================================ */
.services-grid-section {
    padding: 30px 0 60px 0;
    background: #F7F5F0;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

/* ============================================
   SERVICE CARD - Image Background
   ============================================ */
.service-card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    min-height: 380px;
    background-size: cover;
    background-position: center;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 16px rgba(11, 11, 11, 0.04);
    animation: serviceCardFade 0.6s ease-out both;
}

@keyframes serviceCardFade {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}

.service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 60px rgba(11, 11, 11, 0.12);
}

/* ----- Gradient Overlay ----- */
.service-card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        180deg,
        rgba(11, 11, 11, 0.10) 0%,
        rgba(11, 11, 11, 0.30) 20%,
        rgba(11, 11, 11, 0.55) 45%,
        rgba(11, 11, 11, 0.78) 70%,
        rgba(11, 11, 11, 0.92) 88%,
        rgba(11, 11, 11, 0.97) 100%
    );
    z-index: 1;
    transition: all 0.5s ease;
}

.service-card:hover .service-card-overlay {
    background: linear-gradient(
        180deg,
        rgba(11, 11, 11, 0.15) 0%,
        rgba(11, 11, 11, 0.35) 20%,
        rgba(11, 11, 11, 0.60) 45%,
        rgba(11, 11, 11, 0.82) 70%,
        rgba(11, 11, 11, 0.94) 88%,
        rgba(11, 11, 11, 0.98) 100%
    );
}

/* ----- Gold Accent Border ----- */
.service-card-accent {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    z-index: 3;
    opacity: 0;
    transition: all 0.5s ease;
}

.service-card:hover .service-card-accent {
    opacity: 1;
}

/* ----- Content ----- */
.service-card-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 28px 24px 24px 24px;
    z-index: 2;
    display: flex;
    flex-direction: column;
}

/* ----- Icon ----- */
.service-card-icon {
    font-size: 2.2rem;
    margin-bottom: 10px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    background: rgba(11, 11, 11, 0.35);
    width: 56px;
    height: 56px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.service-card:hover .service-card-icon {
    transform: scale(1.05) rotate(-4deg);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}

/* ----- Title ----- */
.service-card-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 1.3rem;
    color: #FCFCFB;
    margin: 0 0 6px 0;
    line-height: 1.2;
    transition: color 0.3s ease;
}

.service-card:hover .service-card-title {
    color: #C8A96B;
}

/* ----- Divider ----- */
.service-card-divider {
    width: 30px;
    height: 2px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 4px;
    margin-bottom: 12px;
    transition: all 0.4s ease;
}

.service-card:hover .service-card-divider {
    width: 50px;
    background: #C8A96B;
}

/* ----- Features ----- */
.service-card-features {
    list-style: none;
    padding: 0;
    margin: 0 0 14px 0;
}

.service-card-features li {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.7);
    padding: 3px 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.service-card-features li i {
    color: #C8A96B;
    font-size: 0.7rem;
}

/* ----- Button ----- */
.service-card-btn {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 8px;
    background: transparent;
    color: #FCFCFB;
    padding: 8px 20px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.85rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid rgba(255, 255, 255, 0.12);
    opacity: 0.85;
    transform: translateY(4px);
}

.service-card-btn i {
    font-size: 0.7rem;
    transition: all 0.3s ease;
}

.service-card:hover .service-card-btn {
    opacity: 1;
    transform: translateY(0);
    border-color: #C8A96B;
}

.service-card-btn:hover {
    background: #C8A96B;
    color: #0B0B0B;
    border-color: #C8A96B;
    text-decoration: none;
}

.service-card-btn:hover i {
    transform: translateX(4px);
}

/* ============================================
   SECTION 3: CTA
   ============================================ */
.services-cta {
    padding: 60px 0 70px 0;
    background: #0B0B0B;
    position: relative;
    overflow: hidden;
    border-top: 2px solid rgba(200, 169, 107, 0.06);
    border-bottom: 2px solid rgba(200, 169, 107, 0.06);
}

.services-cta-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.06) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
    animation: ctaGlowPulse 4s ease-in-out infinite;
}

@keyframes ctaGlowPulse {
    0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.6; }
    50% { transform: translate(-50%, -50%) scale(1.1); opacity: 1; }
}

.services-cta-wrapper {
    max-width: 680px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
}

.services-cta-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #FCFCFB;
    line-height: 1.2;
    letter-spacing: -0.5px;
    margin: 0 0 12px 0;
}

.services-cta-title-gold {
    color: #C8A96B;
}

.services-cta-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.8;
    margin: 0 0 28px 0;
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
}

.services-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #C8A96B;
    color: #0B0B0B;
    padding: 14px 36px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 24px rgba(200, 169, 107, 0.2);
    position: relative;
    overflow: hidden;
}

.services-cta-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s ease;
}

.services-cta-btn:hover::before {
    left: 100%;
}

.services-cta-btn:hover {
    background: #9E8149;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.35);
    text-decoration: none;
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .services-title {
        font-size: 2.2rem;
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .service-card {
        min-height: 320px;
    }

    .service-card-content {
        padding: 22px 20px 20px 20px;
    }

    .service-card-icon {
        width: 48px;
        height: 48px;
        font-size: 1.8rem;
    }

    .service-card-title {
        font-size: 1.15rem;
    }

    .service-card-features li {
        font-size: 0.8rem;
    }

    .services-cta-title {
        font-size: 2rem;
    }

    .services-header-section {
        padding: 30px 0 20px 0;
    }

    .services-grid-section {
        padding: 20px 0 50px 0;
    }

    .services-cta {
        padding: 50px 0 60px 0;
    }

    .services-cta-glow {
        width: 350px;
        height: 350px;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .services-title {
        font-size: 1.8rem;
    }

    .services-badge {
        font-size: 0.55rem;
        padding: 3px 14px;
    }

    .services-line {
        width: 35px;
        height: 2px;
    }

    .services-subtitle {
        font-size: 0.92rem;
        padding: 0 16px;
    }

    .services-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        max-width: 420px;
        margin: 0 auto;
    }

    .service-card {
        min-height: 280px;
    }

    .service-card-content {
        padding: 18px 16px 16px 16px;
    }

    .service-card-icon {
        width: 40px;
        height: 40px;
        font-size: 1.4rem;
        border-radius: 10px;
        margin-bottom: 8px;
    }

    .service-card-title {
        font-size: 1rem;
    }

    .service-card-divider {
        width: 20px;
        margin-bottom: 8px;
    }

    .service-card-features li {
        font-size: 0.75rem;
        padding: 2px 0;
    }

    .service-card-btn {
        font-size: 0.78rem;
        padding: 6px 16px;
        opacity: 1;
        transform: translateY(0);
    }

    .service-card:hover .service-card-btn {
        transform: translateY(0);
    }

    .services-cta {
        padding: 40px 0 50px 0;
    }

    .services-cta-title {
        font-size: 1.6rem;
    }

    .services-cta-text {
        font-size: 0.9rem;
        padding: 0 16px;
    }

    .services-cta-btn {
        padding: 12px 28px;
        font-size: 0.88rem;
        width: 100%;
        justify-content: center;
        max-width: 320px;
    }

    .services-cta-glow {
        width: 250px;
        height: 250px;
    }

    .services-header-section {
        padding: 20px 0 16px 0;
    }

    .services-grid-section {
        padding: 16px 0 40px 0;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .services-title {
        font-size: 1.4rem;
    }

    .services-badge {
        font-size: 0.5rem;
        padding: 2px 12px;
    }

    .services-subtitle {
        font-size: 0.85rem;
    }

    .service-card {
        min-height: 240px;
        border-radius: 14px;
    }

    .service-card-content {
        padding: 14px 14px 14px 14px;
    }

    .service-card-icon {
        width: 34px;
        height: 34px;
        font-size: 1.2rem;
        border-radius: 8px;
        margin-bottom: 6px;
    }

    .service-card-title {
        font-size: 0.9rem;
    }

    .service-card-divider {
        width: 16px;
        margin-bottom: 6px;
    }

    .service-card-features li {
        font-size: 0.7rem;
        padding: 1px 0;
    }

    .service-card-btn {
        font-size: 0.7rem;
        padding: 4px 14px;
        gap: 4px;
    }

    .services-cta-title {
        font-size: 1.3rem;
    }

    .services-cta-text {
        font-size: 0.82rem;
    }

    .services-cta-btn {
        font-size: 0.82rem;
        padding: 10px 20px;
    }

    .services-cta-glow {
        width: 180px;
        height: 180px;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .service-card {
        animation: none;
        opacity: 1;
        transform: none;
    }
    .service-card {
        transition: none;
    }
    .service-card:hover {
        transform: none;
    }
    .service-card-overlay {
        transition: none;
    }
    .service-card-accent {
        transition: none;
    }
    .service-card-icon {
        transition: none;
    }
    .service-card-divider {
        transition: none;
    }
    .service-card-btn {
        transition: none;
    }
    .service-card-btn:hover {
        transform: none;
    }
    .services-cta-btn {
        transition: none;
    }
    .services-cta-btn:hover {
        transform: none;
    }
    .services-cta-btn::before {
        display: none;
    }
    .services-cta-glow {
        animation: none;
    }
}
/* ============================================
   SERVICE AREAS - Professional Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ============================================
   SECTION 1: HEADER
   ============================================ */
.areas-header-section {
    padding: 40px 0 30px 0;
    background: #FCFCFB;
}

.areas-header-content {
    max-width: 780px;
    margin: 0 auto;
    text-align: center;
}

.areas-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(200, 169, 107, 0.12);
    color: #C8A96B;
    padding: 5px 20px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
    border: 1px solid rgba(200, 169, 107, 0.15);
}

.areas-badge i {
    font-size: 0.6rem;
}

.areas-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.6rem;
    color: #0B0B0B;
    line-height: 1.15;
    letter-spacing: -0.5px;
    margin: 0 0 6px 0;
}

.areas-title-gold {
    color: #C8A96B;
    position: relative;
}

.areas-title-gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

.areas-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 8px auto 14px auto;
}

.areas-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #6B6B6B;
    line-height: 1.8;
    max-width: 620px;
    margin: 0 auto;
}

/* ============================================
   SECTION 2: MAP
   ============================================ */
.areas-map-section {
    padding: 0 0 30px 0;
    background: #FCFCFB;
}

.areas-map-wrapper {
    background: #F7F5F0;
    border-radius: 16px;
    padding: 30px;
    text-align: center;
    border: 1px solid rgba(229, 229, 229, 0.3);
    transition: all 0.3s ease;
}

.areas-map-wrapper:hover {
    border-color: rgba(200, 169, 107, 0.15);
    box-shadow: 0 4px 16px rgba(11, 11, 11, 0.04);
}

.areas-map-icon {
    font-size: 2.8rem;
    color: #C8A96B;
    margin-bottom: 8px;
}

.areas-map-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #6B6B6B;
    margin: 0;
}

/* ============================================
   SECTION 3: LOCATIONS GRID
   ============================================ */
.areas-grid-section {
    padding: 20px 0 50px 0;
    background: #F7F5F0;
}

.areas-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

/* ============================================
   AREA CARD - Image Background
   ============================================ */
.area-card-link {
    display: block;
    text-decoration: none;
    animation: areaCardFade 0.5s ease-out both;
}

@keyframes areaCardFade {
    from { opacity: 0; transform: translateY(25px); }
    to { opacity: 1; transform: translateY(0); }
}

.area-card {
    position: relative;
    border-radius: 14px;
    overflow: hidden;
    min-height: 220px;
    background-size: cover;
    background-position: center;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 16px rgba(11, 11, 11, 0.04);
}

.area-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 48px rgba(11, 11, 11, 0.12);
}

/* ----- Gradient Overlay ----- */
.area-card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        180deg,
        rgba(11, 11, 11, 0.10) 0%,
        rgba(11, 11, 11, 0.30) 20%,
        rgba(11, 11, 11, 0.60) 50%,
        rgba(11, 11, 11, 0.80) 75%,
        rgba(11, 11, 11, 0.92) 90%,
        rgba(11, 11, 11, 0.97) 100%
    );
    z-index: 1;
    transition: all 0.5s ease;
}

.area-card:hover .area-card-overlay {
    background: linear-gradient(
        180deg,
        rgba(11, 11, 11, 0.15) 0%,
        rgba(11, 11, 11, 0.35) 20%,
        rgba(11, 11, 11, 0.65) 50%,
        rgba(11, 11, 11, 0.85) 75%,
        rgba(11, 11, 11, 0.94) 90%,
        rgba(11, 11, 11, 0.98) 100%
    );
}

/* ----- Gold Accent Border ----- */
.area-card-accent {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    z-index: 3;
    opacity: 0;
    transition: all 0.5s ease;
}

.area-card:hover .area-card-accent {
    opacity: 1;
}

/* ----- Content ----- */
.area-card-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px 18px 18px 18px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* ----- Icon ----- */
.area-card-icon {
    font-size: 1.2rem;
    color: #FCFCFB;
    margin-bottom: 6px;
    background: rgba(11, 11, 11, 0.30);
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(6px);
    border: 1px solid rgba(255, 255, 255, 0.06);
    transition: all 0.4s ease;
}

.area-card:hover .area-card-icon {
    background: #C8A96B;
    color: #0B0B0B;
    transform: scale(1.05) rotate(-4deg);
    box-shadow: 0 4px 16px rgba(200, 169, 107, 0.25);
}

/* ----- Title ----- */
.area-card-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 1.05rem;
    color: #FCFCFB;
    margin: 0 0 4px 0;
    line-height: 1.2;
    transition: color 0.3s ease;
}

.area-card:hover .area-card-title {
    color: #C8A96B;
}

/* ----- Divider ----- */
.area-card-divider {
    width: 25px;
    height: 2px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 4px;
    margin-bottom: 8px;
    transition: all 0.4s ease;
}

.area-card:hover .area-card-divider {
    width: 40px;
    background: #C8A96B;
}

/* ----- Button ----- */
.area-card-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.7);
    transition: all 0.4s ease;
    opacity: 0.7;
    transform: translateY(4px);
}

.area-card-btn i {
    font-size: 0.6rem;
    transition: all 0.3s ease;
}

.area-card:hover .area-card-btn {
    opacity: 1;
    transform: translateY(0);
    color: #C8A96B;
}

.area-card:hover .area-card-btn i {
    transform: translateX(4px);
}

/* ============================================
   SECTION 4: CITY BADGES
   ============================================ */
.areas-badges-section {
    padding: 30px 0 50px 0;
    background: #FCFCFB;
}

.areas-badges-wrapper {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

.areas-badges-label {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.85rem;
    color: #6B6B6B;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 16px;
}

.areas-badges-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.areas-badge-item {
    display: inline-block;
    padding: 8px 22px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 0.88rem;
    color: #0B0B0B;
    text-decoration: none;
    border: 2px solid #C8A96B;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.areas-badge-item:hover {
    background: #C8A96B;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 4px 16px rgba(200, 169, 107, 0.25);
    text-decoration: none;
}

/* ============================================
   SECTION 5: CTA
   ============================================ */
.areas-cta {
    padding: 60px 0 70px 0;
    background: #0B0B0B;
    position: relative;
    overflow: hidden;
    border-top: 2px solid rgba(200, 169, 107, 0.06);
    border-bottom: 2px solid rgba(200, 169, 107, 0.06);
}

.areas-cta-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.06) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
    animation: ctaGlowPulse 4s ease-in-out infinite;
}

@keyframes ctaGlowPulse {
    0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.6; }
    50% { transform: translate(-50%, -50%) scale(1.1); opacity: 1; }
}

.areas-cta-wrapper {
    max-width: 680px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
}

.areas-cta-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #FCFCFB;
    line-height: 1.2;
    letter-spacing: -0.5px;
    margin: 0 0 12px 0;
}

.areas-cta-title-gold {
    color: #C8A96B;
}

.areas-cta-text {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.8;
    margin: 0 0 28px 0;
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
}

.areas-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #C8A96B;
    color: #0B0B0B;
    padding: 14px 36px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 24px rgba(200, 169, 107, 0.2);
    position: relative;
    overflow: hidden;
}

.areas-cta-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s ease;
}

.areas-cta-btn:hover::before {
    left: 100%;
}

.areas-cta-btn:hover {
    background: #9E8149;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.35);
    text-decoration: none;
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .areas-title {
        font-size: 2.2rem;
    }

    .areas-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
    }

    .area-card {
        min-height: 190px;
    }

    .area-card-content {
        padding: 16px 14px 14px 14px;
    }

    .area-card-icon {
        width: 30px;
        height: 30px;
        font-size: 1rem;
    }

    .area-card-title {
        font-size: 0.95rem;
    }

    .area-card-btn {
        font-size: 0.7rem;
    }

    .areas-cta-title {
        font-size: 2rem;
    }

    .areas-header-section {
        padding: 30px 0 20px 0;
    }

    .areas-grid-section {
        padding: 16px 0 40px 0;
    }

    .areas-cta {
        padding: 50px 0 60px 0;
    }

    .areas-cta-glow {
        width: 350px;
        height: 350px;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .areas-title {
        font-size: 1.8rem;
    }

    .areas-badge {
        font-size: 0.55rem;
        padding: 3px 14px;
    }

    .areas-line {
        width: 35px;
        height: 2px;
    }

    .areas-subtitle {
        font-size: 0.92rem;
        padding: 0 16px;
    }

    .areas-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
        max-width: 420px;
        margin: 0 auto;
    }

    .area-card {
        min-height: 170px;
        border-radius: 12px;
    }

    .area-card-content {
        padding: 14px 12px 12px 12px;
    }

    .area-card-icon {
        width: 26px;
        height: 26px;
        font-size: 0.85rem;
        border-radius: 8px;
        margin-bottom: 4px;
    }

    .area-card-title {
        font-size: 0.85rem;
    }

    .area-card-divider {
        width: 18px;
        margin-bottom: 6px;
    }

    .area-card-btn {
        font-size: 0.65rem;
        opacity: 1;
        transform: translateY(0);
    }

    .area-card:hover .area-card-btn {
        transform: translateY(0);
    }

    .areas-map-wrapper {
        padding: 20px;
        border-radius: 12px;
    }

    .areas-map-icon {
        font-size: 2.2rem;
    }

    .areas-map-text {
        font-size: 0.9rem;
    }

    .areas-badges-section {
        padding: 20px 0 40px 0;
    }

    .areas-badges-label {
        font-size: 0.75rem;
    }

    .areas-badges-grid {
        gap: 8px;
    }

    .areas-badge-item {
        padding: 6px 16px;
        font-size: 0.8rem;
    }

    .areas-cta {
        padding: 40px 0 50px 0;
    }

    .areas-cta-title {
        font-size: 1.6rem;
    }

    .areas-cta-text {
        font-size: 0.9rem;
        padding: 0 16px;
    }

    .areas-cta-btn {
        padding: 12px 28px;
        font-size: 0.88rem;
        width: 100%;
        justify-content: center;
        max-width: 320px;
    }

    .areas-cta-glow {
        width: 250px;
        height: 250px;
    }

    .areas-grid-section {
        padding: 12px 0 32px 0;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .areas-title {
        font-size: 1.4rem;
    }

    .areas-badge {
        font-size: 0.5rem;
        padding: 2px 12px;
    }

    .areas-subtitle {
        font-size: 0.85rem;
    }

    .areas-grid {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        max-width: 320px;
    }

    .area-card {
        min-height: 150px;
        border-radius: 10px;
    }

    .area-card-content {
        padding: 10px 10px 10px 10px;
    }

    .area-card-icon {
        width: 22px;
        height: 22px;
        font-size: 0.7rem;
        border-radius: 6px;
        margin-bottom: 3px;
    }

    .area-card-title {
        font-size: 0.75rem;
    }

    .area-card-divider {
        width: 14px;
        height: 1.5px;
        margin-bottom: 4px;
    }

    .area-card-btn {
        font-size: 0.58rem;
        gap: 4px;
    }

    .area-card-btn i {
        font-size: 0.5rem;
    }

    .areas-badge-item {
        padding: 4px 12px;
        font-size: 0.7rem;
        border-width: 1.5px;
    }

    .areas-cta-title {
        font-size: 1.3rem;
    }

    .areas-cta-text {
        font-size: 0.82rem;
    }

    .areas-cta-btn {
        font-size: 0.82rem;
        padding: 10px 20px;
    }

    .areas-cta-glow {
        width: 180px;
        height: 180px;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .area-card-link {
        animation: none;
        opacity: 1;
        transform: none;
    }
    .area-card {
        transition: none;
    }
    .area-card:hover {
        transform: none;
    }
    .area-card-overlay {
        transition: none;
    }
    .area-card-accent {
        transition: none;
    }
    .area-card-icon {
        transition: none;
    }
    .area-card-divider {
        transition: none;
    }
    .area-card-btn {
        transition: none;
    }
    .areas-badge-item {
        transition: none;
    }
    .areas-badge-item:hover {
        transform: none;
    }
    .areas-cta-btn {
        transition: none;
    }
    .areas-cta-btn:hover {
        transform: none;
    }
    .areas-cta-btn::before {
        display: none;
    }
    .areas-cta-glow {
        animation: none;
    }
}
/* ============================================
   BEFORE/AFTER SECTION - GALLERY PAGE
   ============================================ */

.before-after-section {
    background: #F7F5F0;
    padding: 60px 0 50px;
    border-radius: 20px;
    margin-top: 40px;
}

.before-after-header {
    text-align: center;
    margin-bottom: 40px;
}

.before-after-tag {
    display: inline-block;
    background: rgba(200, 169, 107, 0.15);
    color: #C8A96B;
    padding: 4px 18px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
    border: 1px solid rgba(200, 169, 107, 0.2);
}

.before-after-tag i {
    margin-right: 6px;
}

.before-after-title {
    color: #0B0B0B;
    font-size: 36px;
    font-weight: 800;
    margin-bottom: 8px;
}

.before-after-title span {
    color: #C8A96B;
}

.before-after-divider {
    width: 60px;
    height: 3px;
    background: #C8A96B;
    margin: 0 auto 12px;
    border-radius: 4px;
}

.before-after-subtitle {
    color: #777777;
    font-size: 17px;
}

.before-after-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    max-width: 1100px;
    margin: 0 auto;
}

.ba-item .before-after-container {
    aspect-ratio: 4 / 3;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #E5E5DD;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
    cursor: ew-resize;
    position: relative;
    width: 100%;
}

.ba-item .before-after-container:hover {
    border-color: #C8A96B;
    box-shadow: 0 8px 30px rgba(200, 169, 107, 0.15);
}

/* Responsive */
@media (max-width: 992px) {
    .before-after-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .before-after-grid {
        grid-template-columns: 1fr 1fr;
        gap: 15px;
    }
    .before-after-title {
        font-size: 28px;
    }
}

@media (max-width: 576px) {
    .before-after-grid {
        grid-template-columns: 1fr;
        max-width: 400px;
        margin: 0 auto;
    }
    .before-after-title {
        font-size: 24px;
    }
}

/* =====================================================
   BEFORE & AFTER SLIDER
   ===================================================== */
.section-before-after{
    padding:100px 0;
    background:#FCFCFB;
    position:relative;
    overflow:hidden;
}
/* Halka gold glow background */
.section-before-after::before{
    content:'';
    position:absolute;
    top:-160px;right:-160px;
    width:520px;height:520px;border-radius:50%;
    background:radial-gradient(circle,rgba(200,169,107,.08),transparent 70%);
    pointer-events:none;
}
.section-before-after .container{
    max-width:1240px;margin:0 auto;padding:0 24px;
    position:relative;z-index:1;
}

/* ---------- Header ---------- */
.ba-header{text-align:center;max-width:640px;margin:0 auto 48px;}
.ba-badge{
    display:inline-flex;align-items:center;gap:14px;
    color:#A8894C;
    font-size:11.5px;font-weight:600;
    letter-spacing:2.4px;text-transform:uppercase;
    margin-bottom:20px;
}
.ba-badge::before,
.ba-badge::after{
    content:'';width:30px;height:1px;background:rgba(200,169,107,.55);
}
.ba-title{
    font-size:clamp(28px,4.4vw,46px);
    font-weight:700;letter-spacing:-1.2px;line-height:1.15;
    color:#0B0B0B;margin:0;
}
.ba-title-gold{color:#C8A96B;}
.ba-subtitle{
    color:#78786F;font-weight:300;
    font-size:clamp(14px,1.6vw,16.5px);line-height:1.75;
    margin:16px auto 0;max-width:520px;
}

/* ---------- Stage ---------- */
.ba-slider-wrapper{position:relative;}
.ba-slider-container{
    position:relative;width:100%;
    aspect-ratio:16/9;
    border-radius:18px;overflow:hidden;
    background:#F4F2ED;
    border:1px solid #E8E6E0;
    box-shadow:0 26px 70px rgba(11,11,11,.10);
    cursor:ew-resize;
    touch-action:pan-y;
    user-select:none;-webkit-user-select:none;
    outline:none;
}
.ba-slider-container:focus-visible{box-shadow:0 0 0 3px #C8A96B;}

.ba-image{position:absolute;inset:0;}
.ba-image img{
    width:100%;height:100%;
    object-fit:cover;display:block;
    pointer-events:none;-webkit-user-drag:none;
}
.ba-image-after{z-index:1;}                 /* neeche: After (full) */
.ba-image-before{                            /* upar: Before (left side) */
    z-index:2;
    clip-path:inset(0 50% 0 0);
    transition:clip-path .09s linear;
}
.ba-slider-container.is-dragging .ba-image-before{transition:none;}

/* ---------- Labels ---------- */
.ba-label{
    position:absolute;bottom:22px;z-index:4;
    display:inline-flex;align-items:center;
    padding:8px 20px;border-radius:50px;
    font-size:11.5px;font-weight:500;
    letter-spacing:1.6px;text-transform:uppercase;
    backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
    pointer-events:none;
    transition:opacity .3s ease;
}
.ba-label.is-faded{opacity:0;}
.ba-label-before{
    left:22px;
    background:rgba(11,11,11,.58);
    color:rgba(255,255,255,.9);
    border:1px solid rgba(255,255,255,.12);
}
.ba-label-after{
    right:22px;
    background:rgba(200,169,107,.92);
    color:#fff;
    border:1px solid rgba(255,255,255,.18);
}

/* ---------- Handle ---------- */
.ba-handle{
    position:absolute;top:0;left:50%;z-index:6;
    width:2px;height:100%;
    background:rgba(255,255,255,.96);
    transform:translateX(-50%);
    box-shadow:0 0 0 1px rgba(11,11,11,.10),0 0 26px rgba(11,11,11,.26);
    pointer-events:none;
    transition:left .09s linear;
}
.ba-slider-container.is-dragging .ba-handle{transition:none;}
.ba-handle-circle{
    position:absolute;top:50%;left:50%;
    transform:translate(-50%,-50%);
    width:60px;height:60px;border-radius:50%;
    background:rgba(255,255,255,.97);
    color:#A8894C;font-size:16px;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 8px 26px rgba(11,11,11,.22);
    transition:transform .3s cubic-bezier(.4,0,.2,1),
               background .3s ease, color .3s ease;
}
.ba-slider-container:hover .ba-handle-circle{
    background:#C8A96B;color:#fff;
    transform:translate(-50%,-50%) scale(1.06);
}
.ba-slider-container.is-dragging .ba-handle-circle{
    background:#C8A96B;color:#fff;
    transform:translate(-50%,-50%) scale(.93);
}

/* Halka pulse jab tak user drag na kare */
.ba-handle-circle::after{
    content:'';position:absolute;inset:-6px;
    border-radius:50%;border:1px solid rgba(200,169,107,.55);
    animation:baPulse 2.4s ease-out infinite;
}
.ba-slider-container.is-touched .ba-handle-circle::after{display:none;}
@keyframes baPulse{
    0%{transform:scale(.9);opacity:.8;}
    70%{transform:scale(1.35);opacity:0;}
    100%{opacity:0;}
}

/* ---------- Hint ---------- */
.ba-instructions{
    position:absolute;top:22px;left:50%;
    transform:translateX(-50%);z-index:5;
    display:inline-flex;align-items:center;gap:9px;
    padding:8px 18px;border-radius:50px;
    background:rgba(11,11,11,.5);color:#fff;
    font-size:11.5px;font-weight:400;letter-spacing:.8px;
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    pointer-events:none;
    transition:opacity .4s ease,transform .4s ease;
}
.ba-slider-container.is-touched .ba-instructions{
    opacity:0;transform:translateX(-50%) translateY(-8px);
}

/* ---------- Footer link ---------- */
.ba-footer{text-align:center;margin-top:44px;}
.ba-gallery-link{
    display:inline-flex;align-items:center;gap:12px;
    padding:15px 38px;border-radius:50px;
    background:#0B0B0B;color:#fff;
    font-size:14px;font-weight:600;letter-spacing:.3px;
    text-decoration:none;
    transition:all .3s cubic-bezier(.4,0,.2,1);
}
.ba-gallery-link i{transition:transform .3s cubic-bezier(.4,0,.2,1);}
.ba-gallery-link:hover{
    background:#C8A96B;color:#0B0B0B;
    transform:translateY(-2px);
    box-shadow:0 12px 30px rgba(200,169,107,.32);
}
.ba-gallery-link:hover i{transform:translateX(5px);}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width:991px){
    .section-before-after{padding:76px 0;}
    .ba-header{margin-bottom:38px;}
    .ba-slider-container{aspect-ratio:4/3;border-radius:16px;}
    .ba-handle-circle{width:54px;height:54px;font-size:15px;}
}

@media (max-width:600px){
    .section-before-after{padding:58px 0;}
    .section-before-after .container{padding:0 16px;}
    .ba-slider-container{aspect-ratio:4/3;border-radius:14px;}
    .ba-handle-circle{width:48px;height:48px;font-size:13px;}
    .ba-label{
        font-size:9.5px;padding:6px 14px;
        bottom:14px;letter-spacing:1.1px;
    }
    .ba-label-before{left:14px;}
    .ba-label-after{right:14px;}
    .ba-instructions{top:14px;font-size:9.5px;padding:6px 14px;gap:7px;}
    .ba-footer{margin-top:32px;}
    .ba-gallery-link{width:100%;justify-content:center;padding:14px 24px;}
}

@media (max-width:420px){
    .ba-slider-container{aspect-ratio:1/1;}
}

@media (prefers-reduced-motion:reduce){
    .ba-image-before,.ba-handle,.ba-handle-circle,
    .ba-gallery-link,.ba-gallery-link i{transition:none !important;}
    .ba-handle-circle::after{animation:none;display:none;}
}

/* ============================================
   CERTIFICATION SECTION - Image Only Cards
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.section-certifications {
    padding: 60px 0 70px 0;
    background: #FCFCFB;
    position: relative;
    overflow: hidden;
}

/* Background Decor */
.section-certifications::before {
    content: '';
    position: absolute;
    top: -20%;
    right: -10%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

.section-certifications::after {
    content: '';
    position: absolute;
    bottom: -20%;
    left: -10%;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.02) 0%, transparent 70%);
    pointer-events: none;
}

/* ============================================
   SECTION HEADER
   ============================================ */
.cert-header {
    text-align: center;
    margin-bottom: 36px;
    position: relative;
    z-index: 1;
}

.cert-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(200, 169, 107, 0.12);
    color: #C8A96B;
    padding: 5px 20px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
    border: 1px solid rgba(200, 169, 107, 0.15);
}

.cert-badge i {
    font-size: 0.55rem;
}

.cert-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #0B0B0B;
    letter-spacing: -0.5px;
    margin: 0 0 6px 0;
}

.cert-title-gold {
    color: #C8A96B;
    position: relative;
}

.cert-title-gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

.cert-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 8px auto 14px auto;
    position: relative;
}

.cert-line::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    animation: lineShimmer 3s ease-in-out infinite;
    border-radius: 4px;
}

@keyframes lineShimmer {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

.cert-subtitle {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.98rem;
    color: #6B6B6B;
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.7;
}

/* ============================================
   CERTIFICATION GRID - 4 Columns
   ============================================ */
.cert-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    position: relative;
    z-index: 1;
}

/* ============================================
   CERTIFICATION CARD - Image Only
   ============================================ */
.cert-card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 16px rgba(11, 11, 11, 0.04);
    aspect-ratio: 1 / 1;
    background: #F7F5F0;
}

.cert-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 16px 48px rgba(11, 11, 11, 0.10);
}

/* ----- Card Inner - Image Background ----- */
.cert-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.cert-card:hover .cert-card-inner {
    transform: scale(1.05);
}

/* ----- Gradient Overlay (Subtle) ----- */
.cert-card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        180deg,
        rgba(11, 11, 11, 0) 0%,
        rgba(11, 11, 11, 0) 40%,
        rgba(11, 11, 11, 0.05) 70%,
        rgba(11, 11, 11, 0.10) 100%
    );
    transition: all 0.4s ease;
}

.cert-card:hover .cert-card-overlay {
    background: linear-gradient(
        180deg,
        rgba(11, 11, 11, 0) 0%,
        rgba(11, 11, 11, 0) 30%,
        rgba(11, 11, 11, 0.08) 60%,
        rgba(11, 11, 11, 0.15) 100%
    );
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .section-certifications {
        padding: 50px 0 60px 0;
    }

    .cert-title {
        font-size: 2rem;
    }

    .cert-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .section-certifications::before,
    .section-certifications::after {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .section-certifications {
        padding: 40px 0 50px 0;
    }

    .cert-header {
        margin-bottom: 28px;
    }

    .cert-title {
        font-size: 1.6rem;
    }

    .cert-badge {
        font-size: 0.55rem;
        padding: 3px 14px;
    }

    .cert-subtitle {
        font-size: 0.88rem;
        padding: 0 16px;
    }

    .cert-line {
        width: 35px;
        height: 2px;
    }

    .cert-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        max-width: 420px;
        margin: 0 auto;
    }

    .cert-card {
        border-radius: 12px;
        aspect-ratio: 1 / 1;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .section-certifications {
        padding: 32px 0 40px 0;
    }

    .cert-title {
        font-size: 1.3rem;
    }

    .cert-badge {
        font-size: 0.5rem;
        padding: 2px 12px;
    }

    .cert-subtitle {
        font-size: 0.82rem;
    }

    .cert-grid {
        gap: 10px;
        max-width: 320px;
    }

    .cert-card {
        border-radius: 10px;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .cert-card {
        transition: none;
    }
    .cert-card:hover {
        transform: none;
    }
    .cert-card-inner {
        transition: none;
    }
    .cert-card:hover .cert-card-inner {
        transform: none;
    }
    .cert-line::after {
        animation: none;
    }
}
/* =====================================================
   IDEL DESIGNS — SERVICES SECTION
   Palette: #0B0B0B / #333 / #6B6B6B / #E5E5E5
            #F7F5F0 / #FCFCFB / #C8A96B / #9E8149 / #E3C98F
   ===================================================== */
.idl-svc{
    --idl-black:#0B0B0B;
    --idl-dark:#333333;
    --idl-mid:#6B6B6B;
    --idl-light:#E5E5E5;
    --idl-offwhite:#F7F5F0;
    --idl-white:#FCFCFB;
    --idl-gold:#C8A96B;
    --idl-gold-dark:#9E8149;
    --idl-gold-light:#E3C98F;
    --idl-ease:cubic-bezier(.4,0,.2,1);
    --idl-sh-sm:0 2px 4px rgba(0,0,0,.04);
    --idl-sh-md:0 8px 20px rgba(0,0,0,.06);
    --idl-sh-lg:0 16px 40px rgba(0,0,0,.08);

    background:var(--idl-offwhite);
    padding:100px 0;
    position:relative;
    overflow:hidden;
}
/* Bohot halka gold glow — 5% rule ke andar */
.idl-svc::before{
    content:'';
    position:absolute;top:-180px;right:-180px;
    width:520px;height:520px;border-radius:50%;
    background:radial-gradient(circle,rgba(200,169,107,.10),transparent 70%);
    pointer-events:none;
}
.idl-svc__container{
    max-width:1280px;margin:0 auto;padding:0 24px;
    position:relative;z-index:1;
}

/* ---------- HEADER ---------- */
.idl-svc__head{text-align:center;max-width:640px;margin:0 auto 56px;}
.idl-svc__badge{
    display:inline-flex;align-items:center;gap:14px;
    color:var(--idl-gold-dark);
    font-size:11.5px;font-weight:600;
    letter-spacing:2.4px;text-transform:uppercase;
}
.idl-svc__badge::before,
.idl-svc__badge::after{
    content:'';width:30px;height:1px;
    background:rgba(200,169,107,.55);
}
.idl-svc__title{
    font-size:clamp(28px,4.2vw,44px);
    font-weight:700;letter-spacing:-1.2px;line-height:1.15;
    color:var(--idl-black);margin:16px 0 0;
}
.idl-svc__line{
    display:block;width:56px;height:2px;
    background:linear-gradient(90deg,var(--idl-gold),var(--idl-gold-light));
    border-radius:2px;margin:20px auto 0;
}
.idl-svc__sub{
    color:var(--idl-mid);font-weight:300;
    font-size:clamp(14px,1.5vw,16.5px);line-height:1.8;
    margin:20px auto 0;max-width:540px;
}

/* ---------- GRID ---------- */
.idl-svc__grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:26px;
}
/* 5 cards ka balanced layout: 2 bari upar, 3 chhoti neeche */
.idl-svc__card:nth-child(-n+2){grid-column:span 3;}
.idl-svc__card:nth-child(n+3){grid-column:span 2;}
/* Agar aapke services 5 se kam/zyada hon to sirf ye 2 lines hata dein,
   aur neeche wali line uncomment kar dein:
   .idl-svc__grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));}
   .idl-svc__card{grid-column:auto;} */

/* ---------- CARD ---------- */
.idl-svc__card{
    position:relative;display:block;
    min-height:340px;
    border-radius:16px;overflow:hidden;
    text-decoration:none;
    background:var(--idl-dark);
    box-shadow:var(--idl-sh-md);
    transition:transform .45s var(--idl-ease),
               box-shadow .45s var(--idl-ease);
    isolation:isolate;
}
.idl-svc__card:nth-child(-n+2){min-height:400px;}
.idl-svc__card:hover{
    transform:translateY(-6px);
    box-shadow:var(--idl-sh-lg),0 22px 50px rgba(11,11,11,.14);
}
.idl-svc__card:focus-visible{
    outline:none;
    box-shadow:0 0 0 3px var(--idl-gold),var(--idl-sh-lg);
}

/* Image layer */
.idl-svc__media{
    position:absolute;inset:0;z-index:1;
    background-size:cover;background-position:center;
    background-repeat:no-repeat;
    transform:scale(1.02);
    transition:transform 1s var(--idl-ease),filter .5s var(--idl-ease);
    filter:saturate(.92);
}
.idl-svc__card:hover .idl-svc__media{
    transform:scale(1.10);
    filter:saturate(1.05);
}

/* Dark gradient overlay — text readability */
.idl-svc__shade{
    position:absolute;inset:0;z-index:2;
    background:linear-gradient(
        to top,
        rgba(11,11,11,.94) 0%,
        rgba(11,11,11,.72) 26%,
        rgba(11,11,11,.34) 55%,
        rgba(11,11,11,.10) 78%,
        rgba(11,11,11,.28) 100%
    );
    transition:opacity .45s var(--idl-ease);
}
.idl-svc__card:hover .idl-svc__shade{opacity:.94;}

/* Gold gradient — sirf hover par, bohot halka */
.idl-svc__glow{
    position:absolute;inset:0;z-index:3;
    background:linear-gradient(
        to top,
        rgba(200,169,107,.34) 0%,
        rgba(200,169,107,.10) 42%,
        transparent 72%
    );
    opacity:0;
    transition:opacity .45s var(--idl-ease);
}
.idl-svc__card:hover .idl-svc__glow{opacity:1;}

/* Gold bottom line — hover par grow */
.idl-svc__card::after{
    content:'';
    position:absolute;left:0;bottom:0;z-index:6;
    width:100%;height:3px;
    background:linear-gradient(90deg,var(--idl-gold),var(--idl-gold-light));
    transform:scaleX(0);transform-origin:left;
    transition:transform .5s var(--idl-ease);
}
.idl-svc__card:hover::after{transform:scaleX(1);}

/* ---------- CONTENT ---------- */
.idl-svc__body{
    position:relative;z-index:5;
    display:flex;flex-direction:column;align-items:flex-start;
    height:100%;justify-content:flex-end;
    padding:30px 28px 32px;
}
.idl-svc__icon{
    width:52px;height:52px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    background:rgba(252,252,251,.12);
    border:1px solid rgba(252,252,251,.22);
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    color:var(--idl-gold-light);font-size:19px;
    margin-bottom:18px;
    transition:all .4s var(--idl-ease);
}
.idl-svc__card:hover .idl-svc__icon{
    background:var(--idl-gold);
    border-color:var(--idl-gold);
    color:var(--idl-black);
    transform:translateY(-3px);
}
.idl-svc__name{
    color:var(--idl-white);
    font-size:21px;font-weight:600;
    letter-spacing:-.4px;line-height:1.35;
    margin:0 0 16px;
}
.idl-svc__card:nth-child(-n+2) .idl-svc__name{font-size:24px;}

.idl-svc__cta{
    display:inline-flex;align-items:center;gap:9px;
    padding:10px 22px;border-radius:50px;
    background:transparent;
    border:1px solid rgba(252,252,251,.35);
    color:var(--idl-white);
    font-size:12.5px;font-weight:600;letter-spacing:.4px;
    transition:all .35s var(--idl-ease);
}
.idl-svc__cta i{font-size:10px;transition:transform .35s var(--idl-ease);}
.idl-svc__card:hover .idl-svc__cta{
    background:var(--idl-gold);
    border-color:var(--idl-gold);
    color:var(--idl-black);
}
.idl-svc__card:hover .idl-svc__cta i{transform:translateX(4px);}

/* Corner number */
.idl-svc__num{
    position:absolute;top:24px;right:26px;z-index:5;
    color:rgba(252,252,251,.32);
    font-size:13px;font-weight:600;letter-spacing:1.5px;
    transition:color .4s var(--idl-ease);
}
.idl-svc__card:hover .idl-svc__num{color:var(--idl-gold-light);}

/* ---------- FOOTER BUTTON ---------- */
.idl-svc__foot{text-align:center;margin-top:52px;}
.idl-svc__all{
    display:inline-flex;align-items:center;gap:11px;
    padding:15px 40px;border-radius:50px;
    background:var(--idl-gold);
    color:var(--idl-black);
    font-size:14px;font-weight:700;letter-spacing:.3px;
    text-decoration:none;
    box-shadow:0 6px 18px rgba(200,169,107,.26);
    transition:all .35s var(--idl-ease);
}
.idl-svc__all i{font-size:11px;transition:transform .35s var(--idl-ease);}
.idl-svc__all:hover{
    background:var(--idl-gold-dark);
    color:var(--idl-black);
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(158,129,73,.30);
}
.idl-svc__all:hover i{transform:translateX(5px);}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width:1024px){
    .idl-svc{padding:80px 0;}
    .idl-svc__grid{grid-template-columns:repeat(2,1fr);gap:22px;}
    .idl-svc__card,
    .idl-svc__card:nth-child(-n+2),
    .idl-svc__card:nth-child(n+3){grid-column:span 1;min-height:320px;}
    .idl-svc__card:nth-child(-n+2) .idl-svc__name{font-size:21px;}
    /* Agar aakhri card akela reh jaye to poori width */
    .idl-svc__card:last-child:nth-child(odd){grid-column:span 2;min-height:280px;}
}

@media (max-width:767px){
    .idl-svc{padding:64px 0;}
    .idl-svc__container{padding:0 18px;}
    .idl-svc__head{margin-bottom:38px;}
    .idl-svc__grid{grid-template-columns:1fr;gap:18px;}
    .idl-svc__card,
    .idl-svc__card:last-child:nth-child(odd){
        min-height:290px;grid-column:span 1;border-radius:14px;
    }
    .idl-svc__body{padding:24px 22px 26px;}
    .idl-svc__icon{width:46px;height:46px;font-size:17px;margin-bottom:14px;}
    .idl-svc__name,
    .idl-svc__card:nth-child(-n+2) .idl-svc__name{font-size:19px;margin-bottom:14px;}
    .idl-svc__num{top:18px;right:20px;font-size:12px;}
    .idl-svc__foot{margin-top:36px;}

    /* Touch devices par hover nahi hota — gold state default rakho */
    .idl-svc__cta{
        background:var(--idl-gold);
        border-color:var(--idl-gold);
        color:var(--idl-black);
    }
    .idl-svc__card::after{transform:scaleX(1);}
}

@media (max-width:480px){
    .idl-svc__all{width:100%;justify-content:center;padding:14px 24px;}
    .idl-svc__card{min-height:260px;}
}

@media (prefers-reduced-motion:reduce){
    .idl-svc *{transition:none !important;}
    .idl-svc__media{transform:none !important;}
}

/* =====================================================
   IDEL DESIGNS — SERVICE AREAS SECTION
   ===================================================== */
.idl-area{
    --idl-black:#0B0B0B;
    --idl-dark:#333333;
    --idl-mid:#6B6B6B;
    --idl-light:#E5E5E5;
    --idl-offwhite:#F7F5F0;
    --idl-white:#FCFCFB;
    --idl-gold:#C8A96B;
    --idl-gold-dark:#9E8149;
    --idl-gold-light:#E3C98F;
    --idl-ease:cubic-bezier(.4,0,.2,1);
    --idl-sh-md:0 8px 20px rgba(0,0,0,.06);
    --idl-sh-lg:0 16px 40px rgba(0,0,0,.08);

    background:var(--idl-white);
    padding:100px 0;
    position:relative;
    overflow:hidden;
}
/* Halka gold glow (left side) — services section se alternate */
.idl-area::before{
    content:'';
    position:absolute;bottom:-200px;left:-180px;
    width:540px;height:540px;border-radius:50%;
    background:radial-gradient(circle,rgba(200,169,107,.09),transparent 70%);
    pointer-events:none;
}
.idl-area__container{
    max-width:1280px;margin:0 auto;padding:0 24px;
    position:relative;z-index:1;
}

/* ---------- HEADER ---------- */
.idl-area__head{text-align:center;max-width:640px;margin:0 auto 54px;}
.idl-area__badge{
    display:inline-flex;align-items:center;gap:14px;
    color:var(--idl-gold-dark);
    font-size:11.5px;font-weight:600;
    letter-spacing:2.4px;text-transform:uppercase;
}
.idl-area__badge::before,
.idl-area__badge::after{
    content:'';width:30px;height:1px;background:rgba(200,169,107,.55);
}
.idl-area__title{
    font-size:clamp(27px,4vw,42px);
    font-weight:700;letter-spacing:-1.1px;line-height:1.18;
    color:var(--idl-black);margin:16px 0 0;
}
.idl-area__line{
    display:block;width:56px;height:2px;
    background:linear-gradient(90deg,var(--idl-gold),var(--idl-gold-light));
    border-radius:2px;margin:20px auto 0;
}
.idl-area__sub{
    color:var(--idl-mid);font-weight:300;
    font-size:clamp(14px,1.5vw,16.5px);line-height:1.8;
    margin:20px auto 0;max-width:520px;
}

/* ---------- GRID ---------- */
.idl-area__grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:26px;
}

/* ---------- CARD ---------- */
.idl-area__card{
    position:relative;display:block;
    aspect-ratio:4/5;
    border-radius:16px;overflow:hidden;
    text-decoration:none;background:var(--idl-dark);
    box-shadow:var(--idl-sh-md);
    isolation:isolate;
    transition:transform .45s var(--idl-ease),
               box-shadow .45s var(--idl-ease);
    /* stagger entrance */
    opacity:0;transform:translateY(24px);
    animation:idlAreaIn .7s var(--idl-ease) forwards;
    animation-delay:var(--idl-delay,0s);
}
@keyframes idlAreaIn{to{opacity:1;transform:translateY(0);}}

.idl-area__card:hover{
    transform:translateY(-7px);
    box-shadow:var(--idl-sh-lg),0 24px 52px rgba(11,11,11,.15);
}
.idl-area__card:focus-visible{
    outline:none;
    box-shadow:0 0 0 3px var(--idl-gold),var(--idl-sh-lg);
}

/* Image */
.idl-area__media{
    position:absolute;inset:0;z-index:1;
    background-size:cover;background-position:center;
    transform:scale(1.03);
    filter:saturate(.88) brightness(.96);
    transition:transform 1.05s var(--idl-ease),filter .55s var(--idl-ease);
}
.idl-area__card:hover .idl-area__media{
    transform:scale(1.12);
    filter:saturate(1.05) brightness(1);
}

/* Dark gradient (readability) */
.idl-area__shade{
    position:absolute;inset:0;z-index:2;
    background:linear-gradient(
        to top,
        rgba(11,11,11,.95) 0%,
        rgba(11,11,11,.74) 24%,
        rgba(11,11,11,.36) 52%,
        rgba(11,11,11,.12) 76%,
        rgba(11,11,11,.34) 100%
    );
    transition:opacity .45s var(--idl-ease);
}
.idl-area__card:hover .idl-area__shade{opacity:.93;}

/* Gold gradient — sirf hover */
.idl-area__glow{
    position:absolute;inset:0;z-index:3;
    background:linear-gradient(
        to top,
        rgba(200,169,107,.36) 0%,
        rgba(200,169,107,.11) 44%,
        transparent 74%
    );
    opacity:0;
    transition:opacity .45s var(--idl-ease);
}
.idl-area__card:hover .idl-area__glow{opacity:1;}

/* Gold accent line — top */
.idl-area__accent{
    position:absolute;top:0;left:0;z-index:6;
    width:100%;height:3px;
    background:linear-gradient(90deg,var(--idl-gold),var(--idl-gold-light));
    transform:scaleX(0);transform-origin:left;
    transition:transform .5s var(--idl-ease);
}
.idl-area__card:hover .idl-area__accent{transform:scaleX(1);}

/* ---------- CONTENT ---------- */
.idl-area__body{
    position:relative;z-index:5;
    display:flex;flex-direction:column;
    height:100%;justify-content:space-between;
    padding:24px 24px 26px;
}
.idl-area__top{
    display:flex;align-items:center;justify-content:space-between;
}
.idl-area__pin{
    width:44px;height:44px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    background:rgba(252,252,251,.13);
    border:1px solid rgba(252,252,251,.24);
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    color:var(--idl-gold-light);font-size:16px;
    transition:all .4s var(--idl-ease);
}
.idl-area__card:hover .idl-area__pin{
    background:var(--idl-gold);
    border-color:var(--idl-gold);
    color:var(--idl-black);
    transform:translateY(-2px);
}
.idl-area__num{
    color:rgba(252,252,251,.34);
    font-size:12.5px;font-weight:600;letter-spacing:1.6px;
    transition:color .4s var(--idl-ease);
}
.idl-area__card:hover .idl-area__num{color:var(--idl-gold-light);}

.idl-area__foot-in{display:block;}
.idl-area__city{
    color:var(--idl-white);
    font-size:22px;font-weight:600;
    letter-spacing:-.4px;line-height:1.3;
    margin:0 0 6px;
}
.idl-area__meta{
    display:block;
    color:rgba(252,252,251,.55);
    font-size:11.5px;font-weight:300;letter-spacing:.6px;
    margin-bottom:16px;
}

/* CTA — desktop par hover se reveal */
.idl-area__cta{
    display:inline-flex;align-items:center;gap:9px;
    padding:9px 20px;border-radius:50px;
    background:transparent;
    border:1px solid rgba(252,252,251,.34);
    color:var(--idl-white);
    font-size:12px;font-weight:600;letter-spacing:.4px;
    transition:all .35s var(--idl-ease);
}
.idl-area__cta i{font-size:10px;transition:transform .35s var(--idl-ease);}
.idl-area__card:hover .idl-area__cta{
    background:var(--idl-gold);
    border-color:var(--idl-gold);
    color:var(--idl-black);
}
.idl-area__card:hover .idl-area__cta i{transform:translateX(4px);}

/* ---------- FOOTER BUTTON ---------- */
.idl-area__foot{text-align:center;margin-top:52px;}
.idl-area__all{
    display:inline-flex;align-items:center;gap:11px;
    padding:15px 40px;border-radius:50px;
    background:transparent;
    border:1px solid var(--idl-gold);
    color:var(--idl-black);
    font-size:14px;font-weight:600;letter-spacing:.3px;
    text-decoration:none;
    transition:all .35s var(--idl-ease);
}
.idl-area__all i{font-size:11px;color:var(--idl-gold-dark);transition:all .35s var(--idl-ease);}
.idl-area__all:hover{
    background:var(--idl-gold);
    border-color:var(--idl-gold);
    color:var(--idl-black);
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(200,169,107,.28);
}
.idl-area__all:hover i{color:var(--idl-black);transform:translateX(5px);}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width:1024px){
    .idl-area{padding:80px 0;}
    .idl-area__grid{grid-template-columns:repeat(2,1fr);gap:22px;}
    .idl-area__card{aspect-ratio:1/1;}
    .idl-area__city{font-size:20px;}
}

@media (max-width:767px){
    .idl-area{padding:64px 0;}
    .idl-area__container{padding:0 18px;}
    .idl-area__head{margin-bottom:38px;}
    .idl-area__grid{grid-template-columns:repeat(2,1fr);gap:14px;}
    .idl-area__card{aspect-ratio:3/4;border-radius:13px;}
    .idl-area__body{padding:18px 16px 20px;}
    .idl-area__pin{width:38px;height:38px;font-size:14px;}
    .idl-area__num{font-size:11px;}
    .idl-area__city{font-size:17px;margin-bottom:4px;}
    .idl-area__meta{font-size:10px;margin-bottom:12px;}
    .idl-area__cta{padding:8px 15px;font-size:11px;gap:7px;}
    .idl-area__foot{margin-top:34px;}

    /* Touch par hover nahi — gold state default */
    .idl-area__cta{
        background:var(--idl-gold);
        border-color:var(--idl-gold);
        color:var(--idl-black);
    }
    .idl-area__accent{transform:scaleX(1);}
}

@media (max-width:420px){
    .idl-area__grid{grid-template-columns:1fr;gap:16px;max-width:380px;margin:0 auto;}
    .idl-area__card{aspect-ratio:16/10;}
    .idl-area__city{font-size:20px;}
    .idl-area__cta{font-size:12px;padding:9px 20px;}
    .idl-area__all{width:100%;justify-content:center;padding:14px 22px;}
}

@media (prefers-reduced-motion:reduce){
    .idl-area *{transition:none !important;}
    .idl-area__card{animation:none;opacity:1;transform:none;}
    .idl-area__media{transform:none !important;}
}
/* =====================================================
   HERO — MOBILE BACKGROUND IMAGE
   Desktop par purani image (inline style) chalti rahegi,
   991px se neeche ye mobile image override kar degi.
   ===================================================== */

@media (max-width: 991px){
    .hero-section .hero-bg{
        background-image: url('/assets/images/hero-bg-mobile.jpg') !important;
        background-position: center center;
        background-size: cover;
        background-repeat: no-repeat;
    }

    /* Portrait image me subject aksar upar hota hai —
       zaroorat ho to position adjust karein */
    /* .hero-section .hero-bg{ background-position: center 25%; } */
}

/* Chhoti phones — thoda aur zoom, taake subject center me rahe */
@media (max-width: 575px){
    .hero-section .hero-bg{
        background-position: center 30%;
    }
}

/* Mobile par text readability ke liye overlay ko
   left-to-right ki jagah bottom-to-top kar dein */
@media (max-width: 991px){
    .hero-section .hero-gradient-overlay{
        background: linear-gradient(
            to top,
            rgba(11,11,11,.94) 0%,
            rgba(11,11,11,.80) 30%,
            rgba(11,11,11,.55) 60%,
            rgba(11,11,11,.35) 100%
        );
    }
}



/* =====================================================
   IDEL DESIGNS — FOOTER
   ===================================================== */
.idl-ft{
    --if-black:#0B0B0B;
    --if-dark:#141414;
    --if-mid:#6B6B6B;
    --if-white:#FCFCFB;
    --if-gold:#C8A96B;
    --if-gold-dark:#9E8149;
    --if-gold-light:#E3C98F;
    --if-txt:rgba(252,252,251,.62);
    --if-line:rgba(252,252,251,.10);
    --if-ease:cubic-bezier(.4,0,.2,1);

    background:var(--if-black);
    color:var(--if-txt);
    font-family:'Poppins',sans-serif;
    position:relative;
}
.idl-ft__container{max-width:1280px;margin:0 auto;padding:0 24px;}

/* ---------- CTA STRIP ---------- */
.idl-ft__cta{
    background:linear-gradient(135deg,#151515 0%,#0B0B0B 60%,#221C11 100%);
    border-bottom:1px solid var(--if-line);
    position:relative;overflow:hidden;
}
.idl-ft__cta::before{
    content:'';position:absolute;top:-60%;right:-6%;
    width:420px;height:420px;border-radius:50%;
    background:radial-gradient(circle,rgba(200,169,107,.13),transparent 70%);
    pointer-events:none;
}
.idl-ft__cta-in{
    position:relative;z-index:1;
    display:flex;align-items:center;justify-content:space-between;
    gap:32px;padding:44px 0;
}
.idl-ft__cta-txt h3{
    color:var(--if-white);
    font-size:clamp(20px,2.6vw,27px);font-weight:600;
    letter-spacing:-.5px;margin:0 0 6px;
}
.idl-ft__cta-txt p{
    font-size:13.5px;font-weight:300;color:var(--if-txt);margin:0;
}
.idl-ft__cta-act{display:flex;gap:12px;flex-shrink:0;}

.idl-ft__btn{
    display:inline-flex;align-items:center;gap:9px;
    padding:14px 30px;border-radius:50px;
    background:var(--if-gold);color:var(--if-black);
    font-size:13.5px;font-weight:600;letter-spacing:.2px;
    text-decoration:none;white-space:nowrap;
    border:1px solid var(--if-gold);
    transition:all .3s var(--if-ease);
}
.idl-ft__btn:hover{
    background:var(--if-gold-dark);border-color:var(--if-gold-dark);
    color:var(--if-black);transform:translateY(-2px);
    box-shadow:0 10px 26px rgba(200,169,107,.24);
}
.idl-ft__btn--ghost{
    background:transparent;border-color:rgba(252,252,251,.24);color:var(--if-white);
}
.idl-ft__btn--ghost:hover{
    background:rgba(252,252,251,.06);
    border-color:var(--if-gold);color:var(--if-gold-light);
    box-shadow:none;
}

/* ---------- MAIN ---------- */
.idl-ft__main{padding:64px 0 52px;}
.idl-ft__grid{
    display:grid;
    grid-template-columns:1.7fr 1fr 1.1fr 1.5fr;
    gap:44px 36px;
}

/* Brand */
.idl-ft__logo{display:inline-block;line-height:0;margin-bottom:20px;}
.idl-ft__logo img{height:56px;width:auto;max-width:220px;object-fit:contain;}
.idl-ft__logo-fb{display:flex;flex-direction:column;line-height:1.2;}
.idl-ft__logo-name{
    color:var(--if-white);font-size:22px;font-weight:700;letter-spacing:-.5px;
}
.idl-ft__logo-name span{color:var(--if-gold);}
.idl-ft__logo-tag{
    color:var(--if-mid);font-size:10px;letter-spacing:1.6px;
    text-transform:uppercase;margin-top:5px;
}
.idl-ft__about{
    font-size:13.5px;font-weight:300;line-height:1.85;
    color:var(--if-txt);margin:0 0 22px;max-width:330px;
}

.idl-ft__rating{
    display:inline-flex;align-items:center;gap:10px;
    padding:9px 16px;border-radius:50px;
    background:rgba(200,169,107,.09);
    border:1px solid rgba(200,169,107,.20);
    margin-bottom:24px;
}
.idl-ft__stars{display:flex;gap:2px;color:var(--if-gold);font-size:11px;}
.idl-ft__rating-txt{font-size:11.5px;color:rgba(252,252,251,.72);font-weight:300;}
.idl-ft__rating-txt strong{color:var(--if-white);font-weight:600;}

.idl-ft__social{display:flex;gap:9px;flex-wrap:wrap;}
.idl-ft__social a{
    width:38px;height:38px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    background:rgba(252,252,251,.05);
    border:1px solid var(--if-line);
    color:rgba(252,252,251,.62);font-size:13px;
    text-decoration:none;
    transition:all .3s var(--if-ease);
}
.idl-ft__social a:hover{
    background:var(--if-gold);border-color:var(--if-gold);
    color:var(--if-black);transform:translateY(-3px);
    box-shadow:0 8px 18px rgba(200,169,107,.26);
}

/* Headings */
.idl-ft__head{
    color:var(--if-white);
    font-size:12px;font-weight:600;
    letter-spacing:1.8px;text-transform:uppercase;
    margin:0 0 22px;padding-bottom:12px;
    position:relative;
}
.idl-ft__head::after{
    content:'';position:absolute;left:0;bottom:0;
    width:26px;height:2px;border-radius:2px;
    background:linear-gradient(90deg,var(--if-gold),var(--if-gold-light));
}

/* Link lists */
.idl-ft__links{list-style:none;margin:0;padding:0;}
.idl-ft__links li{margin-bottom:11px;}
.idl-ft__links a{
    display:inline-flex;align-items:center;
    color:var(--if-txt);font-size:13.5px;font-weight:300;
    text-decoration:none;
    transition:color .28s var(--if-ease),transform .28s var(--if-ease);
}
.idl-ft__links a::before{
    content:'';width:0;height:1px;background:var(--if-gold);
    margin-right:0;transition:all .28s var(--if-ease);
}
.idl-ft__links a:hover{color:var(--if-gold-light);}
.idl-ft__links a:hover::before{width:12px;margin-right:8px;}

/* Contact */
.idl-ft__contact{list-style:none;margin:0 0 22px;padding:0;}
.idl-ft__contact li{
    display:flex;align-items:flex-start;gap:13px;
    margin-bottom:16px;
    font-size:13.5px;font-weight:300;line-height:1.65;
    color:var(--if-txt);
}
.idl-ft__contact a{color:var(--if-txt);text-decoration:none;transition:color .28s var(--if-ease);}
.idl-ft__contact a:hover{color:var(--if-gold-light);}
.idl-ft__ico{
    width:34px;height:34px;border-radius:9px;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    background:rgba(200,169,107,.10);
    border:1px solid rgba(200,169,107,.18);
    color:var(--if-gold);font-size:12px;
    transition:all .3s var(--if-ease);
}
.idl-ft__contact li:hover .idl-ft__ico{
    background:var(--if-gold);color:var(--if-black);border-color:var(--if-gold);
}

.idl-ft__lic{
    display:inline-flex;align-items:center;gap:8px;
    font-size:11px;font-weight:300;letter-spacing:.4px;
    color:rgba(252,252,251,.45);
}
.idl-ft__lic i{color:var(--if-gold);font-size:12px;}

/* ---------- BOTTOM ---------- */
.idl-ft__bottom{
    border-top:1px solid var(--if-line);
    background:rgba(0,0,0,.35);
}
.idl-ft__bottom-in{
    display:flex;align-items:center;justify-content:space-between;
    gap:18px;padding:22px 0;flex-wrap:wrap;
}
.idl-ft__copy{
    font-size:12px;font-weight:300;color:rgba(252,252,251,.48);margin:0;
}
.idl-ft__copy strong{color:rgba(252,252,251,.78);font-weight:500;}

.idl-ft__legal{display:flex;align-items:center;gap:22px;}
.idl-ft__legal a{
    font-size:12px;font-weight:300;
    color:rgba(252,252,251,.48);text-decoration:none;
    position:relative;
    transition:color .28s var(--if-ease);
}
.idl-ft__legal a:not(:last-child)::after{
    content:'';position:absolute;right:-12px;top:50%;
    transform:translateY(-50%);
    width:1px;height:11px;background:var(--if-line);
}
.idl-ft__legal a:hover{color:var(--if-gold-light);}

.idl-ft__credit{margin:0;}
.idl-ft__credit a{
    display:inline-flex;align-items:center;gap:7px;
    font-size:12px;font-weight:300;
    color:rgba(252,252,251,.48);text-decoration:none;
    transition:color .28s var(--if-ease);
}
.idl-ft__credit i{color:var(--if-gold);font-size:11px;}
.idl-ft__credit strong{font-weight:500;}
.idl-ft__credit a:hover{color:var(--if-gold-light);}

/* ---------- BACK TO TOP ---------- */
.idl-ft__top{
    position:fixed;left:24px;bottom:24px;z-index:1100;
    width:46px;height:46px;border-radius:50%;
    border:1px solid rgba(200,169,107,.35);
    background:var(--if-black);color:var(--if-gold);
    font-size:14px;cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    opacity:0;visibility:hidden;transform:translateY(14px);
    transition:all .35s var(--if-ease);
}
.idl-ft__top.is-on{opacity:1;visibility:visible;transform:translateY(0);}
.idl-ft__top:hover{
    background:var(--if-gold);color:var(--if-black);border-color:var(--if-gold);
    transform:translateY(-3px);
    box-shadow:0 10px 24px rgba(200,169,107,.3);
}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width:1100px){
    .idl-ft__grid{grid-template-columns:1.5fr 1fr 1fr;gap:40px 30px;}
    .idl-ft__col--contact{grid-column:1 / -1;}
    .idl-ft__contact{
        display:grid;grid-template-columns:repeat(2,1fr);gap:14px 26px;margin-bottom:18px;
    }
    .idl-ft__contact li{margin-bottom:0;}
}

@media (max-width:768px){
    .idl-ft__cta-in{flex-direction:column;text-align:center;padding:36px 0;gap:22px;}
    .idl-ft__cta-act{width:100%;flex-direction:column;}
    .idl-ft__btn{width:100%;justify-content:center;}

    .idl-ft__main{padding:48px 0 40px;}
    .idl-ft__grid{grid-template-columns:1fr 1fr;gap:34px 24px;}
    .idl-ft__col--brand{grid-column:1 / -1;text-align:center;}
    .idl-ft__about{margin-inline:auto;}
    .idl-ft__social{justify-content:center;}
    .idl-ft__col--contact{grid-column:1 / -1;}
    .idl-ft__contact{grid-template-columns:1fr;}

    .idl-ft__bottom-in{flex-direction:column;text-align:center;gap:14px;padding:24px 0;}
    .idl-ft__top{left:auto;right:24px;bottom:88px;width:42px;height:42px;}
}

@media (max-width:480px){
    .idl-ft__container{padding:0 18px;}
    .idl-ft__grid{gap:30px 18px;}
    .idl-ft__head{font-size:11px;margin-bottom:18px;}
    .idl-ft__links a,.idl-ft__contact li{font-size:12.5px;}
    .idl-ft__legal{gap:18px;flex-wrap:wrap;justify-content:center;}
    .idl-ft__top{bottom:84px;right:18px;}
}

@media (prefers-reduced-motion:reduce){
    .idl-ft *{transition:none !important;}
}

/* ============================================
   ABOUT US HOME SECTION - Premium Design
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.about-home-section {
    padding: 60px 0 70px 0;
    background: #FCFCFB;
    position: relative;
    overflow: hidden;
}

/* ----- Background Decorations ----- */
.about-home-bg-dots {
    position: absolute;
    top: 10%;
    right: 5%;
    width: 300px;
    height: 300px;
    background-image: radial-gradient(rgba(200, 169, 107, 0.04) 1px, transparent 1px);
    background-size: 20px 20px;
    pointer-events: none;
    z-index: 0;
}

.about-home-bg-glow {
    position: absolute;
    bottom: -20%;
    left: -10%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.03) 0%, transparent 70%);
    pointer-events: none;
    z-index: 0;
}

/* ============================================
   WRAPPER
   ============================================ */
.about-home-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
    position: relative;
    z-index: 1;
}

/* ============================================
   LEFT COLUMN - IMAGE (Medium Ratio)
   ============================================ */
.about-home-image-col {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.about-home-image-frame {
    position: relative;
    width: 100%;
    max-width: 520px;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(11, 11, 11, 0.08);
    border: 3px solid rgba(200, 169, 107, 0.08);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    background: #F7F5F0;
}

/* Image - Medium Ratio (4:3) */
.about-home-image-frame img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    aspect-ratio: 4 / 3;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-home-image-frame:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 64px rgba(11, 11, 11, 0.12);
    border-color: rgba(200, 169, 107, 0.15);
}

.about-home-image-frame:hover img {
    transform: scale(1.02);
}

/* ----- Image Overlay (Subtle) ----- */
.about-home-image-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40%;
    background: linear-gradient(180deg, transparent, rgba(11, 11, 11, 0.06));
    z-index: 2;
    pointer-events: none;
}

/* ----- Shimmer Effect ----- */
.about-home-image-shimmer {
    position: absolute;
    top: 0;
    left: -100%;
    width: 60%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.06) 50%,
        transparent 100%
    );
    z-index: 3;
    animation: shimmer 6s infinite;
    pointer-events: none;
}

@keyframes shimmer {
    0% { left: -60%; }
    100% { left: 120%; }
}

/* ----- Image Badge (Floating) ----- */
.about-home-image-badge {
    position: absolute;
    bottom: 20px;
    left: 20px;
    z-index: 4;
    background: rgba(11, 11, 11, 0.70);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-radius: 12px;
    padding: 12px 18px;
    border: 1px solid rgba(200, 169, 107, 0.08);
    display: flex;
    align-items: center;
    gap: 14px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
    animation: floatBadge 4s ease-in-out infinite;
}

@keyframes floatBadge {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}

.about-home-badge-icon {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: rgba(200, 169, 107, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #C8A96B;
    font-size: 0.85rem;
}

.about-home-badge-content {
    display: flex;
    flex-direction: column;
}

.about-home-badge-number {
    font-family: 'Poppins', sans-serif;
    font-size: 1.3rem;
    font-weight: 800;
    color: #C8A96B;
    line-height: 1.1;
}

.about-home-badge-label {
    font-family: 'Poppins', sans-serif;
    font-size: 0.6rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ----- Corner Decoration ----- */
.about-home-image-corner {
    position: absolute;
    bottom: -4px;
    right: -4px;
    width: 40px;
    height: 40px;
    border-right: 3px solid rgba(200, 169, 107, 0.15);
    border-bottom: 3px solid rgba(200, 169, 107, 0.15);
    border-radius: 0 0 14px 0;
    z-index: 2;
    pointer-events: none;
}

/* ============================================
   RIGHT COLUMN - CONTENT
   ============================================ */
.about-home-content-col {
    padding-left: 10px;
}

.about-home-content {
    max-width: 560px;
}

/* ----- Header ----- */
.about-home-header {
    margin-bottom: 18px;
}

.about-home-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(200, 169, 107, 0.08);
    color: #C8A96B;
    padding: 5px 18px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
    border: 1px solid rgba(200, 169, 107, 0.06);
}

.about-home-badge i {
    font-size: 0.5rem;
}

.about-home-title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #0B0B0B;
    line-height: 1.15;
    letter-spacing: -0.5px;
    margin: 0 0 6px 0;
}

.about-home-title-gold {
    color: #C8A96B;
    position: relative;
}

.about-home-title-gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

.about-home-line {
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin-top: 8px;
    position: relative;
}

.about-home-line::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    animation: lineShimmer 3s ease-in-out infinite;
    border-radius: 4px;
}

@keyframes lineShimmer {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

/* ----- Description ----- */
.about-home-description {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 1rem;
    color: #6B6B6B;
    line-height: 1.9;
    margin: 0 0 22px 0;
}

/* ============================================
   FEATURE CARDS
   ============================================ */
.about-home-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 26px;
}

.about-home-feature {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #F7F5F0;
    border-radius: 12px;
    padding: 12px 16px;
    border: 1px solid rgba(229, 229, 229, 0.2);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.about-home-feature::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 0;
    background: linear-gradient(180deg, #C8A96B, #E3C98F);
    border-radius: 0 4px 4px 0;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.about-home-feature:hover::before {
    height: 100%;
}

.about-home-feature:hover {
    background: #FCFCFB;
    border-color: rgba(200, 169, 107, 0.12);
    transform: translateX(4px);
    box-shadow: 0 4px 16px rgba(11, 11, 11, 0.04);
}

.about-home-feature-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: rgba(200, 169, 107, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #C8A96B;
    font-size: 0.9rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.about-home-feature:hover .about-home-feature-icon {
    background: #C8A96B;
    color: #0B0B0B;
    transform: scale(1.05);
}

.about-home-feature-content {
    display: flex;
    flex-direction: column;
}

.about-home-feature-number {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.9rem;
    color: #0B0B0B;
    line-height: 1.2;
}

.about-home-feature-label {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.7rem;
    color: #6B6B6B;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ============================================
   CTA BUTTON
   ============================================ */
.about-home-cta {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: #C8A96B;
    color: #0B0B0B;
    padding: 14px 32px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.92rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 20px rgba(200, 169, 107, 0.15);
    position: relative;
    overflow: hidden;
}

.about-home-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    transition: left 0.6s ease;
}

.about-home-cta:hover::before {
    left: 100%;
}

.about-home-cta:hover {
    background: #9E8149;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.3);
    text-decoration: none;
}

.about-home-cta i {
    font-size: 0.85rem;
    transition: all 0.3s ease;
}

.about-home-cta:hover i {
    transform: translateX(4px);
}

/* ============================================
   RESPONSIVE - TABLETS
   ============================================ */
@media (max-width: 991px) {
    .about-home-section {
        padding: 50px 0 60px 0;
    }

    .about-home-wrapper {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .about-home-image-frame {
        max-width: 100%;
    }

    .about-home-image-frame img {
        aspect-ratio: 4 / 3;
    }

    .about-home-content-col {
        padding-left: 0;
    }

    .about-home-content {
        max-width: 100%;
    }

    .about-home-title {
        font-size: 2rem;
    }

    .about-home-bg-dots,
    .about-home-bg-glow {
        display: none;
    }
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 767px) {
    .about-home-section {
        padding: 40px 0 48px 0;
    }

    .about-home-wrapper {
        gap: 24px;
    }

    .about-home-image-frame {
        border-radius: 16px;
        max-width: 100%;
    }

    .about-home-image-frame img {
        aspect-ratio: 4 / 3;
    }

    .about-home-image-badge {
        bottom: 14px;
        left: 14px;
        padding: 10px 14px;
        gap: 10px;
        border-radius: 10px;
    }

    .about-home-badge-icon {
        width: 28px;
        height: 28px;
        font-size: 0.7rem;
        border-radius: 8px;
    }

    .about-home-badge-number {
        font-size: 1.1rem;
    }

    .about-home-badge-label {
        font-size: 0.5rem;
    }

    .about-home-title {
        font-size: 1.6rem;
    }

    .about-home-title-gold::after {
        bottom: 0;
        height: 2px;
    }

    .about-home-line {
        width: 35px;
        height: 2px;
    }

    .about-home-description {
        font-size: 0.92rem;
    }

    .about-home-features {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .about-home-feature {
        padding: 10px 12px;
        border-radius: 10px;
        gap: 10px;
    }

    .about-home-feature::before {
        width: 2px;
    }

    .about-home-feature:hover {
        transform: translateX(2px);
    }

    .about-home-feature-icon {
        width: 28px;
        height: 28px;
        font-size: 0.7rem;
        border-radius: 8px;
    }

    .about-home-feature-number {
        font-size: 0.78rem;
    }

    .about-home-feature-label {
        font-size: 0.58rem;
    }

    .about-home-cta {
        padding: 12px 24px;
        font-size: 0.85rem;
        width: 100%;
        justify-content: center;
    }

    .about-home-image-shimmer {
        display: none;
    }

    .about-home-image-corner {
        width: 30px;
        height: 30px;
        border-width: 2px;
        bottom: -3px;
        right: -3px;
    }
}

/* ============================================
   RESPONSIVE - SMALL MOBILE
   ============================================ */
@media (max-width: 400px) {
    .about-home-section {
        padding: 32px 0 40px 0;
    }

    .about-home-title {
        font-size: 1.3rem;
    }

    .about-home-badge {
        font-size: 0.5rem;
        padding: 3px 14px;
    }

    .about-home-image-frame {
        border-radius: 12px;
    }

    .about-home-image-frame img {
        aspect-ratio: 4 / 3;
    }

    .about-home-image-badge {
        bottom: 10px;
        left: 10px;
        padding: 8px 12px;
        gap: 8px;
        border-radius: 8px;
    }

    .about-home-badge-icon {
        width: 22px;
        height: 22px;
        font-size: 0.55rem;
        border-radius: 6px;
    }

    .about-home-badge-number {
        font-size: 0.9rem;
    }

    .about-home-badge-label {
        font-size: 0.45rem;
    }

    .about-home-features {
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }

    .about-home-feature {
        padding: 8px 10px;
        border-radius: 8px;
        gap: 8px;
    }

    .about-home-feature-icon {
        width: 22px;
        height: 22px;
        font-size: 0.6rem;
        border-radius: 6px;
    }

    .about-home-feature-number {
        font-size: 0.7rem;
    }

    .about-home-feature-label {
        font-size: 0.5rem;
    }

    .about-home-cta {
        font-size: 0.78rem;
        padding: 10px 18px;
    }

    .about-home-image-corner {
        width: 20px;
        height: 20px;
        border-width: 1.5px;
        bottom: -2px;
        right: -2px;
        border-radius: 0 0 8px 0;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .about-home-image-frame {
        transition: none;
    }
    .about-home-image-frame:hover {
        transform: none;
    }
    .about-home-image-frame:hover img {
        transform: none;
    }
    .about-home-image-shimmer {
        animation: none;
        display: none;
    }
    .about-home-image-badge {
        animation: none;
    }
    .about-home-line::after {
        animation: none;
    }
    .about-home-feature {
        transition: none;
    }
    .about-home-feature::before {
        transition: none;
    }
    .about-home-feature:hover {
        transform: none;
    }
    .about-home-cta {
        transition: none;
    }
    .about-home-cta:hover {
        transform: none;
    }
    .about-home-cta::before {
        display: none;
    }
}

/* ============================================
   BEFORE & AFTER SLIDER - PREMIUM STYLING
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Section Container ----- */
.idl-ba {
    padding: 60px 0 70px 0;
    background: #F7F5F0;
    position: relative;
    overflow: hidden;
}

.idl-ba::before {
    content: '';
    position: absolute;
    top: -30%;
    right: -10%;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.04) 0%, transparent 70%);
    pointer-events: none;
}

.idl-ba::after {
    content: '';
    position: absolute;
    bottom: -20%;
    left: -10%;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(200, 169, 107, 0.03) 0%, transparent 70%);
    pointer-events: none;
}

.idl-ba__container {
    max-width: 900px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    padding: 0 16px;
}

/* ============================================
   HEADER
   ============================================ */
.idl-ba__head {
    text-align: center;
    margin-bottom: 32px;
}

.idl-ba__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(200, 169, 107, 0.12);
    color: #C8A96B;
    padding: 5px 20px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
    border: 1px solid rgba(200, 169, 107, 0.15);
}

.idl-ba__badge i {
    font-size: 0.55rem;
}

.idl-ba__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 2.4rem;
    color: #0B0B0B;
    letter-spacing: -0.5px;
    margin: 0 0 6px 0;
}

.idl-ba__gold {
    color: #C8A96B;
    position: relative;
}

.idl-ba__gold::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    opacity: 0.4;
}

.idl-ba__line {
    display: block;
    width: 50px;
    height: 3px;
    background: linear-gradient(90deg, #C8A96B, #E3C98F);
    border-radius: 4px;
    margin: 8px auto 14px auto;
    position: relative;
}

.idl-ba__line::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, transparent, #C8A96B, #E3C98F, #C8A96B, transparent);
    animation: baLineShine 3s ease-in-out infinite;
    border-radius: 4px;
}

@keyframes baLineShine {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

.idl-ba__sub {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.98rem;
    color: #6B6B6B;
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.7;
}

/* ============================================
   SLIDER STAGE
   ============================================ */
.idl-ba__stage {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 16px 48px rgba(11, 11, 11, 0.10);
    border: 2px solid rgba(200, 169, 107, 0.10);
    background: #0B0B0B;
    cursor: ew-resize;
    user-select: none;
    -webkit-user-select: none;
    touch-action: none;
    outline: none;
}

.idl-ba__stage:focus-visible {
    border-color: #C8A96B;
    box-shadow: 0 0 0 4px rgba(200, 169, 107, 0.2), 0 16px 48px rgba(11, 11, 11, 0.10);
}

/* ----- Layers ----- */
.idl-ba__layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.idl-ba__layer img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    pointer-events: none;
}

.idl-ba__layer--after {
    z-index: 1;
}

.idl-ba__layer--before {
    z-index: 2;
    clip-path: inset(0 50% 0 0);
    transition: clip-path 0.05s ease;
}

/* ============================================
   LABELS - Elegant & Minimal
   ============================================ */
.idl-ba__tag {
    position: absolute;
    bottom: 20px;
    padding: 5px 14px;
    border-radius: 6px;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 5;
    pointer-events: none;
}

.idl-ba__tag--before {
    left: 20px;
    background: rgba(11, 11, 11, 0.55);
    color: rgba(255, 255, 255, 0.7);
    border-left: 2px solid #E74C3C;
}

.idl-ba__tag--after {
    right: 20px;
    background: rgba(200, 169, 107, 0.10);
    color: #C8A96B;
    border-right: 2px solid #C8A96B;
}

/* ============================================
   HANDLE - Premium Gold
   ============================================ */
.idl-ba__handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%;
    background: #C8A96B;
    z-index: 10;
    transform: translateX(-50%);
    cursor: ew-resize;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.idl-ba__handle::before {
    content: '';
    position: absolute;
    top: 0;
    left: -10px;
    width: 22px;
    height: 100%;
    background: radial-gradient(ellipse, rgba(200, 169, 107, 0.08) 0%, transparent 70%);
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.idl-ba__handle:hover::before {
    opacity: 1;
}

.idl-ba__handle:hover {
    background: #E3C98F;
}

/* ----- Knob ----- */
.idl-ba__knob {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #C8A96B;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0B0B0B;
    font-size: 0.75rem;
    box-shadow: 0 4px 16px rgba(200, 169, 107, 0.25);
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    flex-shrink: 0;
    position: relative;
    z-index: 2;
}

.idl-ba__knob i {
    font-size: 0.7rem;
    transition: all 0.3s ease;
}

.idl-ba__handle:hover .idl-ba__knob {
    background: #E3C98F;
    transform: scale(1.06);
    box-shadow: 0 6px 24px rgba(200, 169, 107, 0.35);
}

.idl-ba__handle:hover .idl-ba__knob i {
    transform: scale(1.05);
}

.idl-ba__knob::after {
    content: '';
    position: absolute;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
    border-radius: 50%;
    border: 1.5px solid rgba(200, 169, 107, 0.10);
    animation: baPulse 2.5s ease-in-out infinite;
}

@keyframes baPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.12); opacity: 0.4; }
}

/* ============================================
   HINT - Small & Elegant
   ============================================ */
.idl-ba__hint {
    position: absolute;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 6;
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.6rem;
    color: rgba(255, 255, 255, 0.35);
    background: rgba(11, 11, 11, 0.25);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    padding: 4px 12px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.02);
    opacity: 0;
    transition: opacity 0.6s ease;
    pointer-events: none;
    letter-spacing: 0.3px;
}

.idl-ba__stage:hover .idl-ba__hint {
    opacity: 1;
}

.idl-ba__hint i {
    color: #C8A96B;
    font-size: 0.55rem;
    animation: baArrowSlide 2s ease-in-out infinite;
}

@keyframes baArrowSlide {
    0%, 100% { transform: translateX(0); opacity: 1; }
    50% { transform: translateX(4px); opacity: 0.3; }
}

/* ============================================
   FOOTER - Gallery Link
   ============================================ */
.idl-ba__foot {
    text-align: center;
    margin-top: 28px;
}

.idl-ba__link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: transparent;
    color: #0B0B0B;
    padding: 12px 32px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 0.92rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid #C8A96B;
    position: relative;
    overflow: hidden;
}

.idl-ba__link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(200, 169, 107, 0.08), transparent);
    transition: left 0.6s ease;
}

.idl-ba__link:hover::before {
    left: 100%;
}

.idl-ba__link:hover {
    background: #C8A96B;
    color: #0B0B0B;
    transform: translateY(-3px);
    box-shadow: 0 8px 28px rgba(200, 169, 107, 0.30);
    text-decoration: none;
}

.idl-ba__link i {
    font-size: 0.8rem;
    transition: all 0.3s ease;
}

.idl-ba__link:hover i {
    transform: translateX(4px);
}

.idl-ba__link span {
    position: relative;
    z-index: 1;
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 991px) {
    .idl-ba {
        padding: 50px 0 60px 0;
    }

    .idl-ba__title {
        font-size: 2rem;
    }

    .idl-ba__stage {
        aspect-ratio: 4 / 3;
        border-radius: 14px;
    }

    .idl-ba__knob {
        width: 32px;
        height: 32px;
        font-size: 0.7rem;
    }

    .idl-ba__knob i {
        font-size: 0.65rem;
    }

    .idl-ba__tag {
        font-size: 0.55rem;
        padding: 4px 12px;
        bottom: 16px;
    }

    .idl-ba__tag--before {
        left: 16px;
    }

    .idl-ba__tag--after {
        right: 16px;
    }

    .idl-ba__link {
        padding: 10px 26px;
        font-size: 0.85rem;
    }

    .idl-ba__hint {
        font-size: 0.55rem;
        padding: 3px 10px;
        bottom: 12px;
    }

    .idl-ba::before,
    .idl-ba::after {
        display: none;
    }
}

@media (max-width: 767px) {
    .idl-ba {
        padding: 40px 0 50px 0;
    }

    .idl-ba__head {
        margin-bottom: 24px;
    }

    .idl-ba__title {
        font-size: 1.6rem;
    }

    .idl-ba__badge {
        font-size: 0.55rem;
        padding: 3px 14px;
    }

    .idl-ba__sub {
        font-size: 0.88rem;
        padding: 0 16px;
    }

    .idl-ba__line {
        width: 35px;
        height: 2px;
    }

    .idl-ba__stage {
        aspect-ratio: 4 / 3;
        border-radius: 12px;
        border-width: 2px;
    }

    .idl-ba__handle {
        width: 2px;
    }

    .idl-ba__knob {
        width: 28px;
        height: 28px;
        font-size: 0.6rem;
    }

    .idl-ba__knob i {
        font-size: 0.55rem;
    }

    .idl-ba__knob::after {
        display: none;
    }

    .idl-ba__tag {
        font-size: 0.5rem;
        padding: 3px 10px;
        bottom: 12px;
    }

    .idl-ba__tag--before {
        left: 12px;
    }

    .idl-ba__tag--after {
        right: 12px;
    }

    .idl-ba__hint {
        font-size: 0.5rem;
        padding: 3px 10px;
        bottom: 10px;
        opacity: 1;
        gap: 4px;
    }

    .idl-ba__hint i {
        font-size: 0.5rem;
    }

    .idl-ba__stage:hover .idl-ba__hint {
        opacity: 1;
    }

    .idl-ba__foot {
        margin-top: 20px;
    }

    .idl-ba__link {
        padding: 10px 22px;
        font-size: 0.82rem;
        width: 100%;
        justify-content: center;
        max-width: 280px;
    }
}

@media (max-width: 400px) {
    .idl-ba {
        padding: 32px 0 40px 0;
    }

    .idl-ba__title {
        font-size: 1.3rem;
    }

    .idl-ba__badge {
        font-size: 0.5rem;
        padding: 2px 12px;
    }

    .idl-ba__sub {
        font-size: 0.82rem;
    }

    .idl-ba__stage {
        aspect-ratio: 1 / 1;
        border-radius: 10px;
    }

    .idl-ba__knob {
        width: 24px;
        height: 24px;
        font-size: 0.5rem;
    }

    .idl-ba__knob i {
        font-size: 0.5rem;
    }

    .idl-ba__tag {
        font-size: 0.45rem;
        padding: 2px 8px;
        bottom: 10px;
    }

    .idl-ba__tag--before {
        left: 10px;
    }

    .idl-ba__tag--after {
        right: 10px;
    }

    .idl-ba__hint {
        font-size: 0.45rem;
        padding: 2px 8px;
        bottom: 8px;
        gap: 3px;
    }

    .idl-ba__hint i {
        font-size: 0.45rem;
    }

    .idl-ba__link {
        padding: 8px 18px;
        font-size: 0.75rem;
        max-width: 220px;
        gap: 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .idl-ba__line::after {
        animation: none;
    }
    .idl-ba__knob::after {
        animation: none;
    }
    .idl-ba__hint i {
        animation: none;
    }
    .idl-ba__knob {
        transition: none;
    }
    .idl-ba__handle:hover .idl-ba__knob {
        transform: none;
    }
    .idl-ba__link {
        transition: none;
    }
    .idl-ba__link:hover {
        transform: none;
    }
    .idl-ba__link::before {
        display: none;
    }
}

/* ============================================
   IDEL AI ASSISTANT - CHAT WIDGET
   Idel Designs Inc.
   Font: Poppins
   Color Scheme: Black #0B0B0B | Gold #C8A96B
   ============================================ */

/* ----- Container ----- */
.idel-chat {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 9999;
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* ============================================
   FAB (Floating Action Button)
   ============================================ */
.idel-chat__fab {
    position: relative;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #C8A96B;
    border: none;
    box-shadow: 0 4px 20px rgba(200, 169, 107, 0.35);
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    color: #0B0B0B;
}

.idel-chat__fab:hover {
    transform: scale(1.08);
    box-shadow: 0 8px 32px rgba(200, 169, 107, 0.45);
}

.idel-chat__fab:active {
    transform: scale(0.92);
}

/* ----- Fab Ring Pulse ----- */
.idel-chat__fab-ring {
    position: absolute;
    top: -4px;
    left: -4px;
    right: -4px;
    bottom: -4px;
    border-radius: 50%;
    border: 2px solid rgba(200, 169, 107, 0.15);
    animation: fabPulse 2.5s ease-in-out infinite;
}

@keyframes fabPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.15); opacity: 0.4; }
}

/* ----- Fab Icons ----- */
.idel-chat__fab-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.idel-chat__fab-icon svg {
    width: 28px;
    height: 28px;
}

.idel-chat__fab-icon--close {
    position: absolute;
    opacity: 0;
    transform: scale(0.5) rotate(-90deg);
}

.idel-chat__fab.is-open .idel-chat__fab-icon--open {
    opacity: 0;
    transform: scale(0.5) rotate(90deg);
}

.idel-chat__fab.is-open .idel-chat__fab-icon--close {
    opacity: 1;
    transform: scale(1) rotate(0deg);
}

/* ----- Online Dot ----- */
.idel-chat__dot {
    position: absolute;
    top: 2px;
    right: 2px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #2ECC71;
    border: 2px solid #FCFCFB;
    animation: dotPulse 2s ease-in-out infinite;
}

@keyframes dotPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.2); opacity: 0.7; }
}

/* ============================================
   BACKDROP (Mobile)
   ============================================ */
.idel-chat__backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(11, 11, 11, 0.3);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 8;
}

.idel-chat__backdrop.is-visible {
    opacity: 1;
    visibility: visible;
}

/* ============================================
   PANEL
   ============================================ */
.idel-chat__panel {
    position: absolute;
    bottom: 72px;
    right: 0;
    width: 380px;
    max-width: calc(100vw - 32px);
    height: 560px;
    max-height: calc(100vh - 120px);
    background: #FCFCFB;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(11, 11, 11, 0.15), 0 0 0 1px rgba(200, 169, 107, 0.05);
    display: flex;
    flex-direction: column;
    opacity: 0;
    transform: translateY(16px) scale(0.96);
    pointer-events: none;
    transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
    overflow: hidden;
    z-index: 9;
}

.idel-chat__panel.is-open {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: all;
}

/* ============================================
   HEADER
   ============================================ */
.idel-chat__head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: #0B0B0B;
    border-bottom: 2px solid rgba(200, 169, 107, 0.08);
    flex-shrink: 0;
}

.idel-chat__avatar {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(200, 169, 107, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #C8A96B;
}

.idel-chat__avatar svg {
    width: 20px;
    height: 20px;
}

.idel-chat__ident {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.idel-chat__ident strong {
    font-size: 0.9rem;
    font-weight: 600;
    color: #FCFCFB;
    line-height: 1.2;
}

.idel-chat__status {
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.5);
    display: flex;
    align-items: center;
    gap: 4px;
}

.idel-chat__status i {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #2ECC71;
    animation: dotPulse 2s ease-in-out infinite;
}

.idel-chat__min {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.06);
    border: none;
    color: rgba(255, 255, 255, 0.4);
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
}

.idel-chat__min:hover {
    background: rgba(255, 255, 255, 0.1);
    color: #FCFCFB;
}

/* ============================================
   BODY (Messages)
   ============================================ */
.idel-chat__body {
    flex: 1;
    overflow-y: auto;
    padding: 16px 18px 12px 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    scroll-behavior: smooth;
}

/* Custom Scrollbar */
.idel-chat__body::-webkit-scrollbar {
    width: 4px;
}

.idel-chat__body::-webkit-scrollbar-track {
    background: transparent;
}

.idel-chat__body::-webkit-scrollbar-thumb {
    background: rgba(200, 169, 107, 0.2);
    border-radius: 10px;
}

.idel-chat__body::-webkit-scrollbar-thumb:hover {
    background: rgba(200, 169, 107, 0.3);
}

/* ----- Intro ----- */
.idel-chat__intro {
    text-align: center;
    padding: 8px 0 14px 0;
}

.idel-chat__intro-icon {
    display: inline-block;
    font-size: 1.8rem;
    color: #C8A96B;
    margin-bottom: 6px;
}

.idel-chat__intro h4 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1rem;
    color: #0B0B0B;
    margin: 0 0 4px 0;
}

.idel-chat__intro p {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.85rem;
    color: #6B6B6B;
    line-height: 1.6;
    margin: 0;
}

/* ============================================
   MESSAGES
   ============================================ */
.idel-msg {
    display: flex;
    flex-direction: column;
    max-width: 88%;
    animation: msgSlide 0.3s ease-out;
}

@keyframes msgSlide {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

.idel-msg--bot {
    align-self: flex-start;
}

.idel-msg--user {
    align-self: flex-end;
}

.idel-msg__bubble {
    padding: 10px 14px;
    border-radius: 14px;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.88rem;
    line-height: 1.6;
    word-wrap: break-word;
}

.idel-msg--bot .idel-msg__bubble {
    background: #F7F5F0;
    color: #333333;
    border-bottom-left-radius: 4px;
}

.idel-msg--user .idel-msg__bubble {
    background: #C8A96B;
    color: #0B0B0B;
    border-bottom-right-radius: 4px;
}

.idel-msg__time {
    font-size: 0.6rem;
    color: #B0B0B0;
    margin-top: 4px;
    padding: 0 4px;
    font-weight: 400;
}

.idel-msg--user .idel-msg__time {
    text-align: right;
}

/* ----- Typing Indicator ----- */
.idel-msg--typing .idel-msg__bubble {
    padding: 12px 16px;
    display: flex;
    align-items: center;
    gap: 4px;
    background: #F7F5F0;
}

.idel-typing-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #6B6B6B;
    animation: typingBounce 1.4s infinite ease-in-out both;
}

.idel-typing-dot:nth-child(1) { animation-delay: -0.32s; }
.idel-typing-dot:nth-child(2) { animation-delay: -0.16s; }
.idel-typing-dot:nth-child(3) { animation-delay: 0; }

@keyframes typingBounce {
    0%, 80%, 100% { transform: scale(0.6); opacity: 0.4; }
    40% { transform: scale(1); opacity: 1; }
}

/* ============================================
   SUGGESTED CHIPS
   ============================================ */
.idel-chat__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px 18px 12px 18px;
    border-top: 1px solid rgba(229, 229, 229, 0.3);
    flex-shrink: 0;
}

.idel-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 14px;
    border-radius: 50px;
    background: #F7F5F0;
    border: 1px solid rgba(229, 229, 229, 0.3);
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.72rem;
    color: #333333;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.idel-chip i {
    font-size: 0.6rem;
    color: #C8A96B;
}

.idel-chip:hover {
    background: #C8A96B;
    color: #0B0B0B;
    border-color: #C8A96B;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(200, 169, 107, 0.2);
}

.idel-chip:hover i {
    color: #0B0B0B;
}

/* ============================================
   FOOTER (Composer)
   ============================================ */
.idel-chat__foot {
    padding: 8px 16px 12px 16px;
    border-top: 1px solid rgba(229, 229, 229, 0.3);
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.idel-chat__input {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    background: #F7F5F0;
    border-radius: 14px;
    padding: 4px 4px 4px 14px;
    border: 1px solid rgba(229, 229, 229, 0.3);
    transition: all 0.3s ease;
}

.idel-chat__input:focus-within {
    border-color: #C8A96B;
    box-shadow: 0 0 0 3px rgba(200, 169, 107, 0.08);
}

.idel-chat__input textarea {
    flex: 1;
    border: none;
    background: transparent;
    padding: 8px 0;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.85rem;
    color: #0B0B0B;
    resize: none;
    min-height: 20px;
    max-height: 80px;
    outline: none;
    line-height: 1.5;
}

.idel-chat__input textarea::placeholder {
    color: #B0B0B0;
}

.idel-chat__send {
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #C8A96B;
    border: none;
    color: #0B0B0B;
    font-size: 0.85rem;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.idel-chat__send:hover:not(:disabled) {
    background: #9E8149;
    transform: scale(1.05);
}

.idel-chat__send:disabled {
    opacity: 0.3;
    cursor: not-allowed;
    transform: none;
}

.idel-chat__note {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    font-size: 0.6rem;
    color: #B0B0B0;
    text-align: center;
}

.idel-chat__note strong {
    font-weight: 600;
    color: #6B6B6B;
}

.idel-chat__note a {
    color: #C8A96B;
    text-decoration: none;
    font-weight: 500;
}

.idel-chat__note a:hover {
    text-decoration: underline;
}

/* ============================================
   RESPONSIVE - MOBILE
   ============================================ */
@media (max-width: 480px) {
    .idel-chat {
        bottom: 16px;
        right: 16px;
    }

    .idel-chat__panel {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        max-height: 100vh;
        width: 100%;
        max-width: 100%;
        border-radius: 0;
        transform: translateY(20px) scale(0.96);
    }

    .idel-chat__panel.is-open {
        transform: translateY(0) scale(1);
    }

    .idel-chat__fab {
        width: 50px;
        height: 50px;
    }

    .idel-chat__fab-icon svg {
        width: 24px;
        height: 24px;
    }

    .idel-chat__head {
        padding: 14px 16px;
    }

    .idel-chat__body {
        padding: 12px 14px 10px 14px;
    }

    .idel-chat__chips {
        padding: 6px 14px 10px 14px;
        gap: 4px;
    }

    .idel-chip {
        font-size: 0.65rem;
        padding: 4px 10px;
    }

    .idel-chat__foot {
        padding: 6px 12px 10px 12px;
    }

    .idel-chat__input {
        padding: 2px 2px 2px 12px;
    }

    .idel-chat__input textarea {
        font-size: 0.82rem;
        padding: 6px 0;
    }

    .idel-chat__send {
        width: 30px;
        height: 30px;
        font-size: 0.75rem;
    }

    .idel-chat__backdrop.is-visible {
        display: none;
    }
}

/* ============================================
   ACCESSIBILITY - Reduced Motion
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    .idel-chat__fab-ring {
        animation: none;
    }
    .idel-chat__dot {
        animation: none;
    }
    .idel-chat__panel {
        transition: none;
    }
    .idel-msg {
        animation: none;
    }
    .idel-typing-dot {
        animation: none;
    }
    .idel-chat__fab {
        transition: none;
    }
}

