/* Custom Styles */
html{
    scroll-behavior: smooth;
}
body {
    background-color: #F7F3EF;
    color: #2F2F2F;
    font-family: 'Inter', sans-serif;
    -webkit-font-smoothing: antialiased;
}

.gold-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 60px 0;
}

.gold-divider::before,
.gold-divider::after {
    content: "";
    flex: 1;
    height: 1px;
    background-color: #C7A97B;
    opacity: 0.4;
}

.gold-dot {
    width: 6px;
    height: 6px;
    background-color: #C7A97B;
    border-radius: 50%;
    margin: 0 20px;
}

.btn-premium {
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(143, 175, 154, 0.2);
}

.btn-premium:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px -10px rgba(95, 125, 110, 0.4);
    background-color: #5F7D6E !important;
    color: white !important;
}

.btn-premium:active {
    transform: translateY(0);
}

/* Custom Scrollbar Styles */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #F7F3EF;
}

::-webkit-scrollbar-thumb {
    background: #8FAF9A;
    border-radius: 10px;
    border: 2px solid #F7F3EF;
}

::-webkit-scrollbar-thumb:hover {
    background: #5F7D6E;
}

/* Firefox */
* {
    scrollbar-width: thin;
    scrollbar-color: #8FAF9A #F7F3EF;
}

.fade-in-section {
    opacity: 0;
    animation: fadeIn 1.2s ease-out forwards;
}

.stagger-1 { animation-delay: 0.2s; }
.stagger-2 { animation-delay: 0.4s; }
.stagger-3 { animation-delay: 0.6s; }
.stagger-4 { animation-delay: 0.8s; }
.stagger-5 { animation-delay: 1.0s; }


/* Extracted from index.html style block */
/* Custom Premium Additions */
        body {
            background-color: #F7F3EF;
            color: #2F2F2F;
            font-family: 'Inter', sans-serif;
            overflow-x: hidden;
        }

        .font-serif {
            font-family: 'Playfair Display', serif;
        }

        .gold-glow {
            box-shadow: 0 10px 30px -10px rgba(199, 169, 123, 0.3);
        }

        .gold-border {
            border-color: rgba(199, 169, 123, 0.2);
        }

        .sage-glow {
            box-shadow: 0 10px 30px -10px rgba(143, 175, 154, 0.3);
        }

        /* Testimonial slider transitions */
        .carousel-track {
            display: flex;
            transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
            width: 100%;
        }

        .carousel-slide {
            flex: 0 0 100%;
            width: 100%;
        }

        /* FAQ Accordion Transition */
        .faq-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), padding 0.4s ease;
        }

        .faq-item.active .faq-content {
            max-height: 350px;
        }

        .faq-item.active .faq-icon-line-vertical {
            transform: rotate(90deg);
            opacity: 0;
        }

/* ==========================================================================
   Iris Images Alignment & Sizing Consistency
   ========================================================================== */

/* Section 2: THE BODY. THE STORY. THE SIGNS. */

/* Section 3: Case Studies */
.iris-case-1 {
    object-fit: cover;
    object-position: 50.0% 50.0%;
    transform: scale(1.1);
}

.iris-case-2 {
    object-fit: cover;
    object-position: 50.0% 49.3%;
}

.iris-case-3 {
    object-fit: cover;
    object-position: 45.7% 49.7%;
}

.iris-case-4 {
    object-fit: cover;
    object-position: 33.5% 50.0%;
    transform: scale(1.02);
}

/* Section 8: WHY THIS. WHY NOW. */
/* Section 10: Final Section */
.iris-sec10-1 {
    object-fit: cover;
    object-position: 53.9% 48.2%;
    transform: scale(1.2);
}

.iris-sec10-2 {
    object-fit: cover;
    object-position: 23.3% 73.8%;
    transform: scale(1.2);
}

