/* ==========================================================================
   Kaizen Alloys India — V3 homepage layer (loaded after style.css)
   Restyles the template homepage into the V3 editorial-industrial system:
   Playfair Display display headings + Manrope UI/body, deep navy, controlled
   red, generous rhythm. Overrides only; template structure preserved.
   ========================================================================== */

:root {
    --kz-navy: #0e2a4a;
    --kz-navy-deep: #0a1f38;
    --kz-navy-900: #08182c;
    --kz-red: #c8102e;
    --kz-red-dark: #a50d26;
    --kz-ink: #16202e;
    --kz-text: #333f4d;
    --kz-muted: #64707e;
    --kz-rule: #e3e8ee;
    --kz-soft: #eef2f7;
    --kz-display: "Playfair Display", Georgia, serif;
    --kz-sans: "Manrope", "Segoe UI", system-ui, Arial, sans-serif;

    --color-primary: #0e2a4a;
    --color-heading-1: #16202e;
    --color-title: #16202e;
    --color-heading-dark: #16202e;
    --color-body: #333f4d;
}

body {
    font-family: var(--kz-sans) !important;
    color: var(--kz-text);
    background: #ffffff;
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6, .title { color: var(--kz-ink); }

/* Display headings in Playfair; UI subheads stay sans */
.banner-inner-two-content .title,
.title-style-two .title, .title-style-three .title, .title-style-four .title,
.about-inner-content-two .title-style-two .title {
    font-family: var(--kz-display) !important;
    font-weight: 700;
    letter-spacing: -0.015em;
}

/* --------------------------------------------------------------------------
   Header
   -------------------------------------------------------------------------- */

.header-top-area-wrapper { background: var(--kz-navy-900); }
.header-top-one-wrapper .left a,
.header-top-one-wrapper .left p,
.header-top-one-wrapper .top-nav a { color: rgba(255,255,255,.82); font-size: 13.5px; }
.header-top-one-wrapper .social-wrapper-one a { color: rgba(255,255,255,.72); }
.header-top-one-wrapper .social-wrapper-one a:hover { color: #fff; }

.header-one .header-main { background: #fff; box-shadow: 0 1px 0 var(--kz-rule); }
.header-one.header--sticky.sticky .header-main { box-shadow: 0 6px 24px rgba(12,32,58,.08); }

.kz-brand-lockup { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; }
.kz-brand-mark { height: 42px; width: 42px; object-fit: contain; flex-shrink: 0; }
.kz-brand-word {
    font-family: var(--kz-display); font-weight: 800; font-size: 21px; line-height: 1;
    letter-spacing: 0.01em; color: var(--kz-ink); white-space: nowrap;
}

.header-one .nav-area ul li.main-nav > a {
    font-family: var(--kz-sans); font-size: 15px; font-weight: 600; color: var(--kz-ink);
}
.header-one .nav-area ul li.main-nav > a:hover { color: var(--kz-navy); }
.header-one .nav-area ul li.main-nav.has-dropdown > a::after { color: var(--kz-muted); }

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */

.rts-btn { border-radius: 6px; font-family: var(--kz-sans); font-weight: 700; }
.rts-btn.btn-primary { background: var(--kz-red); border-color: var(--kz-red); color: #fff; }
.rts-btn.btn-primary:hover { background: var(--kz-red-dark); border-color: var(--kz-red-dark); color: #fff; }
.rts-btn.btn-primary.btn-white { background: #fff; border-color: #fff; color: var(--kz-navy); }
.rts-btn.btn-primary.btn-white:hover { background: var(--kz-red); border-color: var(--kz-red); color: #fff; }
.header-one-btn.quote-btn { background: var(--kz-red); border-color: var(--kz-red); color: #fff; border-radius: 6px; }
.header-one-btn.quote-btn:hover { background: var(--kz-red-dark); border-color: var(--kz-red-dark); }

/* --------------------------------------------------------------------------
   Hero banner
   -------------------------------------------------------------------------- */

.banner-inner-two-content .pre-title {
    margin-bottom: 16px; font-family: var(--kz-sans); font-size: 13px;
    font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255,255,255,.85);
}
.banner-inner-two-content .pre-title span { color: #ff8b9c; }
.banner-inner-two-content .title {
    font-size: clamp(32px, 4.2vw, 54px); line-height: 1.12; font-weight: 800; color: #fff;
    letter-spacing: -0.02em;
}
.banner-inner-two-content .disc {
    font-family: var(--kz-sans); font-size: 16.5px; line-height: 1.7; max-width: 620px;
    color: rgba(255,255,255,.85);
}
.rts-banner-area-two.bg_image::before { background: rgba(8,18,32,.62); }

/* --------------------------------------------------------------------------
   Section titles / eyebrows
   -------------------------------------------------------------------------- */

.title-style-two .title, .title-style-three .title, .title-style-four .title {
    font-size: clamp(26px, 2.9vw, 38px); line-height: 1.18; font-weight: 700;
}
.title-style-two .pre, .title-style-four .pre, .title-style-three .pre {
    display: inline-flex; align-items: center; gap: 9px;
    font-family: var(--kz-sans); font-size: 12.5px; font-weight: 800;
    letter-spacing: 0.14em; text-transform: uppercase; color: var(--kz-red); margin-bottom: 14px;
}
.title-style-two .pre::before, .title-style-four .pre::before, .title-style-three .pre::before {
    content: ""; width: 22px; height: 2px; background: var(--kz-red); display: inline-block;
}
.title-style-two .bg-content, .title-style-three .bg-title, .title-style-four .bg-content { display: none; }

/* --------------------------------------------------------------------------
   About section
   -------------------------------------------------------------------------- */

.about-between-wrapper .disc, .rts-about-area-two .disc { color: var(--kz-text); }
.counter-about-area {
    background: linear-gradient(160deg, #123457 0%, var(--kz-navy-deep) 100%);
    border-radius: 10px;
}
.counter-about-area .counter.title { font-family: var(--kz-display); color: #fff; }
.check-wrapper-area .single-check i { color: var(--kz-red); }
.check-wrapper-area .single-check p { color: var(--kz-ink); font-weight: 600; }

/* Mission / Vision / Quality cards */
.mvq-card {
    border: 1px solid var(--kz-rule); border-radius: 10px; background: #fff;
    box-shadow: 0 1px 2px rgba(12,32,58,.05), 0 8px 24px rgba(12,32,58,.05);
    transition: box-shadow .15s ease, transform .15s ease;
}
.mvq-card:hover { transform: translateY(-2px); box-shadow: 0 16px 40px rgba(12,32,58,.10); }
.mvq-card .icons { background: var(--kz-soft); border: 1px solid #dce4ec; }
.mvq-card .mvq-title { font-family: var(--kz-sans); font-weight: 800; font-size: 18px; color: var(--kz-ink); }

/* Why choose us */
.signle-consultancy .icon { background: var(--kz-soft); border: 1px solid #dce4ec; height: 58px; min-width: 58px; }
.signle-consultancy .information .title { font-family: var(--kz-sans); font-weight: 800; font-size: 18px; color: var(--kz-ink); }
.consult-details .disc { color: var(--kz-muted); }

/* --------------------------------------------------------------------------
   Product cards (case studies carousel)
   -------------------------------------------------------------------------- */

.single-case-studies-four { border-radius: 10px; overflow: hidden; border: 1px solid var(--kz-rule); background: #fff; }
.single-case-studies-four .thumbnail img { transition: transform .4s ease; }
.single-case-studies-four:hover .thumbnail img { transform: scale(1.04); }
.single-case-studies-four .inner .title {
    font-family: var(--kz-sans); font-weight: 800; font-size: 19px; color: var(--kz-ink);
}
.single-case-studies-four .eye { background: var(--kz-red); }

/* --------------------------------------------------------------------------
   Process (dark FAQ) + Industries
   -------------------------------------------------------------------------- */

.rts-faq-area .accordion-button {
    font-family: var(--kz-sans); font-size: 16px; font-weight: 700; color: var(--kz-ink);
}
.rts-faq-area .accordion-button:not(.collapsed) { color: var(--kz-navy); background: transparent; box-shadow: none; }
.rts-faq-area .accordion-body { color: var(--kz-text); }

.team-single-one-start { border-radius: 10px; overflow: hidden; }
.team-single-one-start .team-image-area img { transition: transform .4s ease; }
.team-single-one-start:hover .team-image-area img { transform: scale(1.05); }
.team-single-one-start .single-details .title { font-family: var(--kz-sans); font-weight: 800; font-size: 18px; }

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */

.rts-footer-area.footer-two { border-top: 3px solid var(--kz-red); background: var(--kz-navy-900); }
.footer-one-single-wized .wized-title img[src*="footer/01.svg"] { display: none !important; }
.footer-one-single-wized .opening-time-inner h4 {
    font-family: var(--kz-display); font-weight: 700; color: #fff; font-size: 20px;
}
.footer-one-single-wized .wized-title h5.title {
    font-family: var(--kz-sans); font-size: 13px; letter-spacing: 0.1em; text-transform: uppercase;
    color: #fff; margin-bottom: 16px; padding-bottom: 10px; position: relative;
}
.footer-one-single-wized .wized-title h5.title::after {
    content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 2px; background: var(--kz-red);
}
.footer-one-single-wized .quick-link-inner .links li a,
.footer-one-single-wized .opening-time-inner p { color: rgba(255,255,255,.68); }
.footer-one-single-wized .quick-link-inner .links li a:hover { color: #fff; }
.rts-copyright-area { border-top: 1px solid rgba(255,255,255,.1); }
.rts-copyright-area p { font-size: 13px; color: rgba(255,255,255,.55); }

/* --------------------------------------------------------------------------
   Mobile
   -------------------------------------------------------------------------- */

/* Keep RFQ visible and compact on mobile — it is a priority action */
@media (max-width: 991px) {
    .header-one .button-area .header-one-btn.quote-btn {
        display: inline-flex !important;
        align-items: center;
        padding: 8px 14px;
        font-size: 12.5px;
        border-radius: 5px;
        margin: 0 8px 0 0 !important;
    }
}

@media (max-width: 767px) {
    .kz-brand-mark { height: 34px; width: 34px; }
    .kz-brand-word { font-size: 16px; }
    .banner-inner-two-content .title { font-size: 30px; }
}
@media (max-width: 420px) {
    .kz-brand-word { font-size: 13.5px; }
    .header-one .button-area .header-one-btn.quote-btn { padding: 7px 11px; font-size: 12px; }
    .banner-inner-two-content .title { font-size: 25px; }
}
