/* ==============================================================
   LEGAL CENTRE — Header & Footer Precision V3
   Targeted final authority for readability + interaction visibility.
   Screen-only. No document/PDF/Template Studio changes.
   ============================================================== */

:root{
  --lchf-ink:#18251f;
  --lchf-text:#31453a;
  --lchf-muted:#5d6f65;
  --lchf-green:#087443;
  --lchf-green-deep:#075335;
  --lchf-green-dark:#043c28;
  --lchf-soft:#f2f8f4;
  --lchf-line:#dfe8e3;
}

@media screen{
  /* ---------- DESKTOP HEADER ---------- */
  @media (min-width:901px){
    html body .lcbank-header .lcbank-actions a,
    html body .lcbank-header .lcbank-actions button{
      min-height:38px!important;
      padding:0 7px!important;
      border-radius:9px!important;
      color:var(--lchf-text)!important;
      font-size:13px!important;
      font-weight:700!important;
      line-height:1.25!important;
      letter-spacing:-.012em!important;
      opacity:1!important;
      text-shadow:none!important;
      transition:color .18s ease,background-color .18s ease,box-shadow .18s ease!important;
    }
    html body .lcbank-header .lcbank-actions .lcbank-discover-trigger{
      color:var(--lchf-green-deep)!important;
      font-weight:800!important;
    }
    @media (hover:hover) and (pointer:fine){
      html body .lcbank-header .lcbank-actions a:hover,
      html body .lcbank-header .lcbank-actions button:hover,
      html body .lcbank-header .lcbank-actions .lcbank-discover-trigger:hover{
        color:var(--lchf-green-deep)!important;
        background:#eef7f2!important;
        box-shadow:inset 0 0 0 1px rgba(8,116,67,.06)!important;
      }
    }
    html body .lcbank-header .lcbank-actions a:focus-visible,
    html body .lcbank-header .lcbank-actions button:focus-visible{
      color:var(--lchf-green-deep)!important;
      background:#eef7f2!important;
      outline:2px solid rgba(8,116,67,.35)!important;
      outline-offset:2px!important;
    }
    html body .lcbank-header .lcbank-actions small{
      font-size:10.5px!important;
      color:inherit!important;
      opacity:.78!important;
    }

    /* Search */
    html body .lcbank-header .lcf-mobile-search-form input{
      color:#22342b!important;
      font-size:12.5px!important;
      font-weight:560!important;
      line-height:1.35!important;
      opacity:1!important;
    }
    html body .lcbank-header .lcf-mobile-search-form input::placeholder{
      color:#6f7e76!important;
      opacity:1!important;
    }
    html body .lcbank-header .lcf-mobile-search-form button{
      color:#26372e!important;
      font-size:11.5px!important;
      font-weight:750!important;
      background:#fff!important;
    }
    @media (hover:hover) and (pointer:fine){
      html body .lcbank-header .lcf-mobile-search-form button:hover{
        color:var(--lchf-green-deep)!important;
        background:#edf7f1!important;
      }
    }
    html body .lcbank-header .lcf-mobile-search-form button:focus-visible{
      color:var(--lchf-green-deep)!important;
      background:#edf7f1!important;
      outline:2px solid rgba(8,116,67,.30)!important;
    }

    /* Cart */
    html body .lcbank-header .lcf-service-cart-link{
      color:#2e4037!important;
      font-size:12px!important;
      font-weight:720!important;
      opacity:1!important;
    }
    html body .lcbank-header .lcf-service-cart-link span,
    html body .lcbank-header .lcf-service-cart-link svg{
      color:#2e4037!important;
      opacity:1!important;
    }
    @media (hover:hover) and (pointer:fine){
      html body .lcbank-header .lcf-service-cart-link:hover{
        color:var(--lchf-green-deep)!important;
        background:#f0f7f3!important;
        border-color:#bad6c7!important;
      }
      html body .lcbank-header .lcf-service-cart-link:hover span,
      html body .lcbank-header .lcf-service-cart-link:hover svg{
        color:var(--lchf-green-deep)!important;
      }
    }
    html body .lcbank-header .lcf-service-cart-link:focus-visible{
      color:var(--lchf-green-deep)!important;
      background:#f0f7f3!important;
      outline:2px solid rgba(8,116,67,.30)!important;
      outline-offset:2px!important;
    }

    /* Account button is rendered through ::before in Shell Repair V1.1. */
    html body .lcbank-header .lcbank-account-zone .lc-account-trigger[data-lc-account-trigger]{
      color:#fff!important;
      background:var(--lchf-green)!important;
      border-color:var(--lchf-green)!important;
      opacity:1!important;
    }
    html body .lcbank-header .lcbank-account-zone .lc-account-trigger[data-lc-account-trigger]::before{
      color:#fff!important;
      font-size:12px!important;
      font-weight:760!important;
      line-height:1!important;
      opacity:1!important;
      text-shadow:none!important;
    }
    html body .lcbank-header .lcbank-account-zone .lc-account-trigger[data-lc-account-trigger]:hover,
    html body .lcbank-header .lcbank-account-zone .lc-account-trigger[data-lc-account-trigger].is-open,
    html body .lcbank-header .lcbank-account-zone .lc-account-trigger[data-lc-account-trigger]:focus-visible{
      color:#fff!important;
      background:var(--lchf-green-dark)!important;
      border-color:var(--lchf-green-dark)!important;
    }
    html body .lcbank-header .lcbank-account-zone .lc-account-trigger[data-lc-account-trigger]:hover::before,
    html body .lcbank-header .lcbank-account-zone .lc-account-trigger[data-lc-account-trigger].is-open::before,
    html body .lcbank-header .lcbank-account-zone .lc-account-trigger[data-lc-account-trigger]:focus-visible::before{
      color:#fff!important;
    }

    /* Dropdown / mega menu typography and states. */
    html body .lcbank-header .lc-top-panel-tab,
    html body .lcbank-header .lcfi-mega-side-title{
      color:#2e3c35!important;
      font-size:13px!important;
      line-height:1.4!important;
    }
    html body .lcbank-header .lc-top-link-card b,
    html body .lcbank-header .lcfi-mega-main a{
      font-size:13px!important;
      line-height:1.4!important;
    }
    html body .lcbank-header .lc-top-link-card small,
    html body .lcbank-header .lc-top-panel-head p,
    html body .lcbank-header .lc-top-panel-help p{
      color:#5f7066!important;
      font-size:12px!important;
      line-height:1.5!important;
    }
    @media (hover:hover) and (pointer:fine){
      html body .lcbank-header .lc-top-panel-tab:hover,
      html body .lcbank-header .lc-top-panel-tab.is-active,
      html body .lcbank-header .lcfi-mega-side-title:hover{
        color:var(--lchf-green-deep)!important;
        background:#edf7f1!important;
      }
      html body .lcbank-header .lc-top-link-card:hover,
      html body .lcbank-header .lc-account-links a:hover{
        color:var(--lchf-green-deep)!important;
        background:#f1f8f4!important;
      }
      html body .lcbank-header .lc-top-link-card:hover b,
      html body .lcbank-header .lc-top-link-card:hover small{
        color:inherit!important;
      }
    }
  }

  /* ---------- MOBILE HEADER ---------- */
  @media (max-width:900px){
    html body .lcbank-header :where(a,button,input){font-size:12px}
    html body .lcbank-header .lcbank-brand img{max-height:42px!important}
    html body .lc-mobile-hdfc-quick,
    html body .lc-mobile-feature-links a{
      color:#2b3d34!important;
      font-size:13px!important;
      line-height:1.4!important;
    }
    html body .lc-mobile-hdfc-quick:focus-visible,
    html body .lc-mobile-feature-links a:focus-visible{
      color:var(--lchf-green-deep)!important;
      background:#edf7f1!important;
    }
  }

  /* ---------- FOOTER: LIGHT SURFACE, DARK READABLE TEXT ---------- */
  html body .lcf-footer{
    color:var(--lchf-ink)!important;
  }
  html body .lcf-footer .lcf-footer-brand p{
    color:#43564b!important;
    font-size:14px!important;
    line-height:1.7!important;
    opacity:1!important;
  }
  html body .lcf-footer .lcf-email{
    color:var(--lchf-green-deep)!important;
    font-size:14px!important;
    font-weight:800!important;
    opacity:1!important;
  }
  html body .lcf-footer .lcf-footer-brand li{
    color:#34483d!important;
    font-size:13px!important;
    line-height:1.55!important;
  }
  html body .lcf-footer .lcf-footer-grid>div>h4{
    color:#15251d!important;
    font-size:16px!important;
    line-height:1.3!important;
  }
  html body .lcf-footer .lcf-footer-grid>div>a{
    display:block!important;
    width:max-content!important;
    max-width:100%!important;
    padding:3px 6px!important;
    margin:5px -6px!important;
    border-radius:7px!important;
    color:#44584d!important;
    font-size:14px!important;
    font-weight:600!important;
    line-height:1.5!important;
    opacity:1!important;
    text-shadow:none!important;
    transition:color .16s ease,background-color .16s ease,transform .16s ease!important;
  }
  @media (hover:hover) and (pointer:fine){
    /* Explicitly overrides the older Contrast Guard white-on-hover rule. */
    html body .lcf-footer .lcf-footer-grid>div>a:hover,
    html body .lcf-footer .lcf-email:hover,
    html body .lcf-footer .lcf-footer-bottom a:hover{
      color:var(--lchf-green-deep)!important;
      background:#eaf5ef!important;
      text-decoration:none!important;
    }
    html body .lcf-footer .lcf-footer-grid>div>a:hover{
      transform:translateX(2px)!important;
    }
  }
  html body .lcf-footer a:focus-visible{
    color:var(--lchf-green-deep)!important;
    background:#eaf5ef!important;
    outline:2px solid rgba(8,116,67,.32)!important;
    outline-offset:2px!important;
  }
  html body .lcf-footer .lcf-footer-trust b{
    color:#22352b!important;
    font-size:13px!important;
    line-height:1.35!important;
  }
  html body .lcf-footer .lcf-footer-trust small{
    color:#5d6f65!important;
    font-size:12px!important;
    line-height:1.45!important;
    opacity:1!important;
  }
  html body .lcf-footer .lcf-disclaimer{
    color:#5d5148!important;
    font-size:12.5px!important;
    line-height:1.7!important;
    opacity:1!important;
  }
  html body .lcf-footer .lcf-footer-bottom,
  html body .lcf-footer .lcf-footer-bottom a{
    color:#5c6d64!important;
    font-size:12.5px!important;
    line-height:1.5!important;
    opacity:1!important;
  }
  html body .lcf-footer .lcf-footer-bottom a{
    padding:3px 5px!important;
    border-radius:6px!important;
  }

  /* Help strip immediately above footer. */
  html body .lcf-help .lcf-help-card h3{
    color:#172820!important;
    font-size:20px!important;
  }
  html body .lcf-help .lcf-help-card p{
    color:#52655a!important;
    font-size:14px!important;
  }
  html body .lcf-help .lcf-help-card .btn.btn-primary,
  html body .lcf-help .lcf-help-card .btn.btn-primary:hover,
  html body .lcf-help .lcf-help-card .btn.btn-primary:focus-visible{
    color:#fff!important;
  }

  @media (max-width:720px){
    html body .lcf-footer .lcf-footer-grid>div>a{font-size:13.5px!important}
    html body .lcf-footer .lcf-footer-brand p{font-size:13.5px!important}
    html body .lcf-footer .lcf-footer-brand li{font-size:12.5px!important}
    html body .lcf-footer .lcf-footer-trust b{font-size:12.5px!important}
    html body .lcf-footer .lcf-footer-trust small{font-size:11.5px!important}
    html body .lcf-footer .lcf-disclaimer,
    html body .lcf-footer .lcf-footer-bottom,
    html body .lcf-footer .lcf-footer-bottom a{font-size:12px!important}
  }
}

@media print{
  /* Header/footer precision is screen UI only. */
}
