/* Custom CSS Overrides */

:root {
    /* Caladrius Custom Colors */
    --cal-orange: #FDBA74;
    --cal-purple: #8B5CF6;
}

/* Restore Footer Background */
.crp-footer-bg {
    background-color: #5D2F60 !important;
}

/* Button Overrides to ensure variables are used */
.tp-btn-black.btn-cal-orange-bg .tp-btn-black-text,
.tp-btn-black.btn-cal-orange-bg .tp-btn-black-circle {
    background-color: var(--cal-orange) !important;
    color: #000 !important;
}

/* Add any other missing custom styles here */
/* Fix dark text visibility in 'Everything you need' section */
.design-project-area .design-project-title-box h4,
.design-project-area .design-project-title-box p,
.design-project-area .design-project-content h4,
.design-project-area .design-project-content p {
    color: #ffffff !important;
}

/* Ensure the area itself has the dark background if the inline style fails, though inline is present */
.design-project-area {
    color: #ffffff;
}

/* Fix shrunk description text width */
.design-project-title-box p,
.design-project-2-style .design-project-title-box p {
    max-width: 800px !important;
}

/* Fix button arrow alignment */
.tp-btn-black .tp-btn-black-circle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

.tp-btn-black .tp-btn-black-circle svg {
    margin: 0 !important;
    transform: none !important;
}

/* Fix button hover area */
.tp-btn-black-filter {
    margin: 0 !important;
    /* Ensure filter doesn't expand layout box excessively if that was the cause */
}

.tp-btn-black {
    /* Ensure the link wraps content tightly */
    display: inline-flex !important;
    align-items: center;
    vertical-align: middle;
}

/* Customize 'Let's Discuss' footer button */
.crp-footer-big-text {
    background-color: #00000030 !important;
    color: var(--cal-orange) !important;
}

.crp-footer-big-text i svg path {
    fill: var(--cal-orange) !important;
}

/* Footer final-CTA band: restore legibility (keeps Teko + cal-orange).
   The theme's barber-pole roll (text-1 plus a duplicate text-2 that slides on
   hover) assumes a short two-word label and overlapped with a full heading, so
   text-2 is removed in footer.php and the hover slide is neutralized. The
   heading is a single static line at 48px desktop (stepped down below). */
.crp-footer-big-text {
    font-size: 48px !important;
    line-height: 0.95 !important;
}
.crp-footer-big-text span {
    overflow: visible;
}
.crp-footer-big-text span span {
    padding-top: 0;
}
.crp-footer-big-text:hover span span.text-1 {
    transform: none;
}
/* Single static arrow: the theme shipped two stacked SVGs that swap on hover
   (the "arrowhead sliding the line" effect) and the 81px glyph was clipped by
   the shrunk box. Show one full arrow, no clip, no hover animation. */
.crp-footer-big-text i {
    width: 44px;
    height: 44px;
    margin-left: 24px;
    overflow: visible;
    transform: none;
    vertical-align: middle;
}
.crp-footer-big-text i svg {
    position: static;
    transform: none;
    width: 100%;
    height: auto;
    bottom: auto;
    left: auto;
}
.crp-footer-big-text i svg:last-child {
    display: none;
}
.crp-footer-big-text:hover i svg:first-child {
    transform: none;
}
@media (max-width: 991px) {
    .crp-footer-big-text {
        font-size: 38px !important;
    }
}
@media (max-width: 767px) {
    .crp-footer-big-text {
        font-size: 28px !important;
    }
}

/* Footer band eyebrow (new element above the big heading) */
.crp-footer-eyebrow {
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 16px;
    font-weight: 600;
    color: var(--cal-orange);
    margin-bottom: 16px;
}

/* Value cards: equal height within each row so a shorter card (e.g.
   "Diagnose, fix, verify") fills to match its row-mate instead of sitting
   short. Content stays top-aligned; only the card box stretches. */
.design-choose-2-style .design-choose-item {
    height: 100%;
}

/* Customizable footer copyright and legal links */
.crp-copyright-text p a span {
    color: var(--cal-orange) !important;
}

.legal-links {
    margin-top: 10px;
}

.legal-links a,
.legal-links span {
    color: rgba(255, 255, 255, 0.6) !important;
    transition: color 0.3s ease;
}

.legal-links a:hover {
    color: #ffffff !important;
}

/* Standardize footer text color and font */
.crp-footer-widget p,
.crp-footer-widget-title,
.crp-footer-widget-menu ul li a,
.crp-footer-widget-info a,
.crp-copyright-text {
    color: #ffffff !important;
    font-family: var(--tp-ff-body) !important;
    /* Ensure headings don't retain the Teko letter-spacing */
    letter-spacing: normal !important;
}

.crp-footer-widget-title {
    /* Adjust font size if standard font makes it look too small/big, but standardizing usually implies using same family */
    text-transform: none !important;
}

/* Smaller font for Headquarters text */
.hq-text {
    font-size: 1rem !important;
}

/* Fix mobile hamburger menu visibility on light-themed pages */
.header-theme-light .tp-header-bar button i {
    background-color: var(--tp-common-black) !important;
}

.header-theme-light .tp-header-bar button {
    color: var(--tp-common-black) !important;
}

/* Fix bottom padding for design-project-area on laptop/smaller resolutions */
@media (max-width: 1366px) {
    .design-project-area.design-project-2-style {
        padding-bottom: 60px !important;
    }

    /* Fix text overflow and alignment in project area */
    .design-project-area .design-project-title-box h4,
    .design-project-area .design-project-content h4 {
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        hyphens: auto !important;
    }

    /* Ensure content columns align properly */
    .design-project-area .design-project-item .row {
        align-items: center !important;
    }

    /* Make images responsive */
    .design-project-area .design-project-thumb img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* Remove excessive left padding that causes text overflow */
    .design-project-content {
        padding-left: 0 !important;
    }
}

/* Fix integrations section 3-column layout for 1200-1400px range */
@media (min-width: 1200px) and (max-width: 1399px) {

    /* Force all three columns to be equal width (33%) */
    .cr-feature-2-area .row.g-0>.col-xxl-4 {
        flex: 0 0 33.333333% !important;
        max-width: 33.333333% !important;
    }

    /* Fix ordering: left icons = 1, center heading = 2, right icons = 3 */
    .cr-feature-2-area .row.g-0>.col-xxl-4.col-xl-6:first-child {
        order: 1 !important;
    }

    .cr-feature-2-area .row.g-0>.col-xxl-4.order-xl-12 {
        order: 2 !important;
    }

    .cr-feature-2-area .row.g-0>.col-xxl-4.col-xl-6:last-child {
        order: 3 !important;
    }
}

/* Style select dropdowns to match input fields in contact forms */
.tp-contact-form-input select {
    width: 100%;
    height: 60px;
    padding: 0 20px;
    border: none;
    border-radius: 10px;
    background-color: #F5F5F5;
    font-size: 16px;
    font-weight: 400;
    color: #111;
    outline: none;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23111' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 12px;
}

.tp-contact-form-input select:focus {
    border-bottom-color: var(--cal-orange);
}

.tp-contact-form-input select option {
    padding: 10px;
    background: #fff;
    color: #111;
}

/* Hide the magic cursor black dot */
#magic-cursor,
#ball {
    display: none !important;
    visibility: hidden !important;
}

/* About page - Who We Are and Our Mission section paragraph font size */
.tp-about-area .tp-about-text p {
    font-size: 2.5rem;
    line-height: 1.4;
}

/* Team member photo cards - add frame and reduce size */
.dgm-team-thumb {
    max-width: 240px;
    margin: 0 auto;
}

.dgm-team-thumb .tp--hover-img {

    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}

.dgm-team-thumb .tp--hover-img img {
    width: 100%;
    height: auto;
    display: block;
}

/* Center align team member text and social icons */
.dgm-team-content {
    text-align: center;
    margin-top: 1.2rem;
}

.dgm-team-social {
    justify-content: center;
}

/* Platform hero (about area): the theme pulls the right column 120px left at
   >=1400px (.cst-about-right { margin-left: -120px }), which collides the
   problem paragraph into the left subhead now that both columns carry full
   copy. The cst-about-* classes are used only on the platform page, so this
   neutralizes the negative pull and keeps the right column inside its grid
   track at all widths. */
.cst-about-right {
    margin-left: 0;
}

/* Platform headings conform to the homepage display face (Onest, mixed case), 2026-07.
   Retires the condensed Phudu caps face on the platform hero, loop header, and the three
   loop-panel headings so the page renders one heading system. Scoped to platform-only
   section ancestors (no page-level body class exists); cst-section-title is shared with
   about.php, hence the .cst-about-ptb scope. Footer band and other pages untouched. */
.cst-about-ptb .cst-section-title,
.app-feature-area .tp-section-title-phudu,
.app-stack-area .app-stack-title {
    font-family: var(--tp-ff-onest);
    font-weight: 600;
    text-transform: none;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

/* About team cards: founder bio line beneath the title. The theme's team-card
   component has no bio slot; a bare <p> inherits the global 18px body paragraph
   and overpowers the 14px title. Match the card's small-text register.
   Scoped to .dgm-team-content, which is used on about.php only. */
.dgm-team-content p {
    font-size: 14px;
    line-height: 1.5;
    color: #4d5051;
    letter-spacing: -0.01em;
    margin: 0 0 15px;
}