/* ===== Shared polish for Zoho Solutions pages =====
   Applies to: zoho-book, zoho-crm, zoho-people, zoho-creator-custom-app,
   one, marketing-automation, finance-plus, services, odoo, contact-us */

/* Hide the decorative dotted-square shapes behind dashboard images on Zoho pages */
.feature-section .dot-mask,
.feature-section .circle-shape-3,
.feature-section [class*="dm-size"],
.feature-section [class*="dm-wh"] {
    display: none !important;
}

/* Force pure white on content sections that were "whitish" — leave dark heroes alone */
.feature-section,
.testimonial-section,
section.bg-white,
section.bg-light,
section.bg-light-subtle {
    background-color: #ffffff !important;
}

/* Section headings */
.feature-section h2,
.feature-section h3.h3,
section .section-heading h2 {
    font-weight: 800;
    color: #001E40;
    letter-spacing: -0.02em;
    font-size: clamp(26px, 2.8vw, 36px);
    margin-bottom: 12px;
}
.feature-section .section-heading p,
.feature-section h2 + p,
.feature-section .mb-5.text-center {
    color: #4b5563;
    font-size: 16px;
    line-height: 1.65;
    max-width: 640px;
    margin: 0 auto 30px;
}

/* Shared eyebrow chip (in case it gets used inline) */
.feature-section .section-eyebrow,
.testimonial-section .section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 14px;
    background: linear-gradient(90deg, rgba(0,114,181,0.10), rgba(15,207,255,0.10));
    border: 1px solid rgba(0,43,92,0.18);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    color: #0072B5;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    margin-bottom: 14px;
}
.feature-section .section-eyebrow::before,
.testimonial-section .section-eyebrow::before {
    content: ""; width: 6px; height: 6px; border-radius: 50%;
    background: #0FCFFF;
    box-shadow: 0 0 0 3px rgba(15,207,255,0.25);
}

/* Polished feature cards */
.feature-section .feature-card {
    background: #fff !important;
    border: 1px solid rgba(0, 43, 92, 0.08) !important;
    border-radius: 18px !important;
    padding: 28px 24px !important;
    position: relative;
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
    box-shadow: 0 6px 18px -10px rgba(0, 43, 92, 0.10) !important;
}
.feature-section .feature-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 4px;
    background: linear-gradient(90deg, #0072B5, #0FCFFF);
    opacity: 0;
    transition: opacity .3s ease;
}
.feature-section .feature-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px -18px rgba(0, 43, 92, 0.20) !important;
    border-color: rgba(0, 114, 181, 0.25) !important;
}
.feature-section .feature-card:hover::before { opacity: 1; }

.feature-section .icon-box {
    width: 60px !important;
    height: 60px !important;
    border-radius: 16px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px !important;
    font-size: 22px;
    transition: transform .3s ease;
}
.feature-section .feature-card:hover .icon-box { transform: scale(1.08) rotate(-4deg); }
.feature-section .icon-box .icon-xs,
.feature-section .icon-box .rq-svg-icon,
.feature-section .icon-box i { font-size: 22px; }
.feature-section .icon-box .rq-svg-icon { width: 24px; height: 24px; }

.feature-section .feature-card h3,
.feature-section .feature-card h5 {
    font-weight: 700;
    color: #001E40;
    font-size: 17px;
    margin-bottom: 8px;
}
.feature-section .feature-card p,
.feature-section .feature-content p {
    color: #5b6473;
    font-size: 14.5px;
    line-height: 1.6;
    margin-bottom: 12px;
}

/* Link with icon (View Details style) */
.feature-section .link-with-icon {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #0072B5 !important;
    font-weight: 600;
    font-size: 14px;
    transition: gap .25s ease, color .25s ease;
    text-decoration: none;
}
.feature-section .link-with-icon:hover {
    gap: 10px;
    color: #005a91 !important;
}

/* Soft icon backgrounds — refined */
.bg-primary-soft   { background: rgba(0,114,181,0.10) !important; color: #0072B5 !important; }
.bg-success-soft   { background: rgba(16,185,129,0.10) !important; color: #10b981 !important; }
.bg-danger-soft    { background: rgba(220,53,69,0.10)  !important; color: #dc3545 !important; }
.bg-warning-soft   { background: rgba(249,115,22,0.10) !important; color: #f97316 !important; }
.bg-info-soft      { background: rgba(15,207,255,0.10) !important; color: #0FCFFF !important; }
.bg-dark-soft      { background: rgba(31,41,55,0.08)   !important; color: #1f2937 !important; }
.text-primary { color: #0072B5 !important; }
.text-success { color: #10b981 !important; }
.text-danger  { color: #dc3545 !important; }
.text-warning { color: #f97316 !important; }
.text-info    { color: #0FCFFF !important; }
.text-dark    { color: #1f2937 !important; }

/* Polish feature row "image + text" sections */
.feature-section .pr-lg-4 .bg-white {
    border: 1px solid rgba(0,43,92,0.08);
    border-radius: 20px !important;
    box-shadow: 0 12px 30px -18px rgba(0,43,92,0.20);
    transition: transform .3s ease, box-shadow .3s ease;
}
.feature-section .pr-lg-4 .bg-white:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 40px -18px rgba(0,43,92,0.25);
}
.feature-section .pr-lg-4 .bg-white img {
    border-radius: 14px !important;
}

/* Checked-list (✅ Feature) style — replace with cleaner version */
.feature-section ul.list-unstyled li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 0;
    font-size: 15px;
    color: #1f2937;
}
.feature-section ul.list-unstyled li:first-letter {
    font-size: inherit;
}

/* Testimonial cards */
.testimonial-section .swiper-slide > div {
    border-radius: 18px !important;
    border: 1px solid rgba(0,43,92,0.08) !important;
    background: #fff;
    padding: 32px !important;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.testimonial-section .swiper-slide > div:hover {
    transform: translateY(-4px);
    border-color: rgba(0,114,181,0.25) !important;
    box-shadow: 0 22px 40px -18px rgba(0,43,92,0.18);
}

/* Section padding scaling */
@media (max-width: 991.98px) {
    .feature-section.ptb-120 { padding-top: 70px !important; padding-bottom: 70px !important; }
    .feature-section.ptb-80 { padding-top: 50px !important; padding-bottom: 50px !important; }
    .testimonial-section.ptb-120 { padding-top: 60px !important; padding-bottom: 60px !important; }
}
@media (max-width: 767.98px) {
    .feature-section.ptb-120 { padding-top: 50px !important; padding-bottom: 50px !important; }
    .feature-section.ptb-80 { padding-top: 40px !important; padding-bottom: 40px !important; }
    .feature-section .feature-card { padding: 22px 18px !important; }
    .feature-section .icon-box { width: 52px !important; height: 52px !important; }
    .feature-section h2, .feature-section h3.h3 { font-size: 24px !important; }
}
