/* Custom Styles */

/* 3D Button Effect for CTAs */
.btn-3d {
    transition: all 0.1s;
    box-shadow: 0px 5px 0px 0px rgba(0,0,0,0.2);
}

.btn-3d:active {
    transform: translateY(3px);
    box-shadow: 0px 2px 0px 0px rgba(0,0,0,0.2);
}

/* Diagonal Stripes Pattern for backgrounds */
.bg-stripes {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-size: 1rem 1rem;
}

/* Triangle for speech bubbles or section dividers */
.triangle-down {
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #fff;
    margin: 0 auto;
}

/* Crown Icon Styles base */
.crown-badge {
    position: relative;
    display: inline-block;
}

.crown-badge::before {
    content: '\f521'; /* FontAwesome crown */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    color: #ffd700;
    font-size: 1.5rem;
}

/* Pricing Cards */
.price-card {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.price-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.price-card-main {
    border: 3px solid #00a3e0;
}

.price-card-main .price-tag {
    background-color: #00a3e0;
}

/* Custom Select Arrow */
#service-select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1.5em;
    padding-right: 2.5rem;
}
