/* Typography & Spacing Styling */
.tracking-widest {
    letter-spacing: 0.3em;
}

.reflection-btn {
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.reflection-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(0, 185, 185, 0.2) !important;
    background-color: #008a8a !important;
}

/* Smooth Fade Effect */
.carousel-fade .carousel-item {
    transition-duration: 0.8s;
    transition-property: opacity;
}

/* Base styling for both props */
.prop-img {
    position: absolute;
    opacity: 0.8;
    pointer-events: none;
    z-index: 1;
    width: 300px;
    /* Controlled width */
    height: 550px;
    /* Forced height for vertical shape */
    object-fit: cover;
    /* Ensures image doesn't stretch weirdly */
}

/* Positioning & Rounding for Top Right */
.prop-img-right {
    top: 0;
    right: 0;
    /* Rounds only the bottom corners */
    border-bottom-left-radius: 150px;
    border-bottom-right-radius: 150px;
}

/* Positioning & Rounding for Bottom Left */
.prop-img-left {
    bottom: 0;
    left: 0;
    /* Rounds only the top corners */
    border-top-left-radius: 150px;
    border-top-right-radius: 150px;
}

/* Mobile Responsive Rules */
@media (max-width: 768px) {
    .prop-img-right {
        display: none;
    }

    .prop-img-left {
        display: block;
        position: static;
        margin: 0 auto;
    }

    section.py-5 {
        display: flex;
        flex-direction: column;
    }

    .display-4 {
        font-size: 2.2rem;
    }

    .lead {
        font-size: 1.1rem;
    }
}