/* Apply font globally */
body {
    font-family: "Inter", "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
 :root{
     --bg: #ffffff;
     --card: #ffffff;
     --muted: #6b7280;
     --accent: #06b6d4;
     font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
}
 *{
    box-sizing:border-box;
    margin:0;
    padding:0
}
 html,body{
    height:100%
}
 body{
     margin:0;
     min-height:100%;
     background: var(--bg);
     display:flex;
     flex-direction:column;
     -webkit-font-smoothing:antialiased;
     color:#111;
}
/* Header */
 header{
     background:#FFFFFF;
     padding:14px 40px;
     display:flex;
     justify-content:space-between;
     align-items:center;
     border-bottom: 1px solid #000;
     position:sticky;
     top:0;
     z-index:10;
}
 header .logo{
     font-weight:700;
     font-size:22px;
     color:var(--accent);
}
 nav a{
     margin-left:24px;
     color:#111;
     font-weight:500;
     text-decoration:none;
     font-size:15px;
}
 nav a:hover{
    color:var(--accent)
}
/* Main container */
 main{
     flex:1;
     display:flex;
     align-items:center;
     justify-content:center;
     padding:40px 20px;
}
 .container{
     width:100%;
     max-width:1080px;
     display:grid;
     grid-template-columns:1fr 400px;
     gap:28px;
     align-items:center;
     margin-top: -80px;
}
 .brand h1{
    margin:0 0 8px 0;
    font-size:32px;
    line-height:1.2;
    color:#111
}
 .brand p{
    margin:0;
    color:var(--muted);
    font-size:15px
}
/* Chrome, Safari, Edge */
 input:-webkit-autofill {
     -webkit-box-shadow: 0 0 0px 1000px #FFFFFF inset !important;
     -webkit-text-fill-color: #111 !important;
    /* text color */
     transition: background-color 5000s ease-in-out 0s;
}
/* Firefox */
 input:-moz-autofill {
     box-shadow: 0 0 0px 1000px #FFFFFF inset !important;
     -moz-text-fill-color: #111 !important;
}
/* Card */
 .card{
     margin-top: 70px;
     padding:28px;
     background: #FFFFFF;
     border-radius:14px;
     box-shadow: 0 6px 20px rgba(0,0,0,0.2);
}
 form{
    width:100%;
}
 .title{
    font-size:30px;
    margin:0 0 6px 0;
    color:#111
}
 .subtitle{
    color:var(--muted);
    font-size:13px;
    margin:0 0 30px 0
}
 .input{
    position:relative;
    margin-bottom:14px
}
 .input input{
     width:100%;
    padding:14px 44px 14px 14px;
    border-radius:10px;
     border:1px solid #000;
    background:#fff;
    color:#111;
    outline:none;
    font-size:15px;
}
 .input label{
     position:absolute;
    left:12px;
    background:#fff;
    padding:2px 8px;
    border-radius:8px;
    font-size:12px;
    color:var(--muted);
     transform:translateY(-50%);
}
 .input .icon{
    position:absolute;
    right:10px;
    top:50%;
    transform:translateY(-50%);
    opacity:0.9;
    cursor:pointer;
    font-size:18px
}
 .input .icon-user{
    position:absolute;
    right:10px;
    top:40%;
    transform:translateY(-50%);
    opacity:0.9;
    cursor:pointer;
    font-size:18px
}
 .row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:12px
}
 .checkbox{
    display:flex;
    gap:8px;
    align-items:center;
    color:var(--muted);
    font-size:14px
}
 .btn{
     display:inline-block;
    padding:12px 18px;
    border-radius:10px;
    border:0;
    font-weight:600;
    font-size:15px;
    cursor:pointer;
     background:linear-gradient(90deg,var(--accent),#7c3aed);
    color:#fff;
    width:100%;
     box-shadow:0 8px 20px rgba(0,0,0,0.15);
}
 .btn-verify{
     display:inline-block;
    padding:12px 18px;
    border-radius:10px;
    border:0;
    font-weight:600;
    font-size:15px;
    cursor:pointer;
     background:linear-gradient(90deg,var(--accent),red);
    color:#fff;
    width:100%;
     box-shadow:0 8px 20px rgba(0,0,0,0.15);
}
 .alt{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-top:14px
}
 .social{
     padding:10px 12px;
    border-radius:10px;
    border:1px solid #ddd;
    background:#fff;
    cursor:pointer;
    font-weight:600 
}
 .muted-link{
    color:var(--muted);
    font-size:14px;
    text-decoration:none
}
 .muted-link:hover{
    text-decoration:underline
}
 @media (max-width:880px){
     .container{
        grid-template-columns:1fr;
    }
     .carousel{
        height:180px
    }
}
 .error{
    border-color:#ff8a8a
}
 .error-msg{
    color:#e11d48;
    font-size:13px;
    margin-top:6px
}
/* Footer */
 footer{
     background:#f9fafb;
     padding:16px 40px;
     border-top:1px solid #eee;
     text-align:center;
     font-size:14px;
     color:var(--muted);
}
 footer .socials{
    margin-top:8px;
}
 footer .socials a{
    margin:0 8px;
    color:var(--muted);
    text-decoration:none;
    font-size:18px
}
 footer .socials a:hover{
    color:var(--accent)
}
 * {
    box-sizing: border-box
}
 .mySlides {
    display: none
}
 img {
     vertical-align: middle;
     border-radius: 15px;
}
/* Slideshow container */
 .slideshow-container {
     max-width: 1000px;
     position: relative;
     margin: auto;
     box-shadow: 0 6px 20px rgba(0,0,0,0.2);
     border-radius: 15px;
}
/* Next & previous buttons */
 .prev, .next {
     cursor: pointer;
     position: absolute;
     top: 50%;
     width: auto;
     padding: 16px;
     margin-top: -22px;
     color: white;
     font-weight: bold;
     font-size: 18px;
     transition: 0.6s ease;
     border-radius: 0 3px 3px 0;
     user-select: none;
}
/* Position the "next button" to the right */
 .next {
     right: 0;
     border-radius: 3px 0 0 3px;
}
/* On hover, add a black background color with a little bit see-through */
 .prev:hover, .next:hover {
     background-color: rgba(0,0,0,0.8);
}
 .text {
     font-weight: bold;
     position: absolute;
     bottom: 10px;
     left: 10px;
}
 .readMoreBtn {
     background: #031270;
     color: #FFF;
     border: none;
     padding: 4px 10px;
     border-radius: 6px;
     font-size: 12px;
     font-weight: bold;
     cursor: pointer;
}
 .readMoreBtn:hover {
     background: red;
}
/* Number text (1/3 etc) */
 .numbertext {
     color: #f2f2f2;
     font-size: 12px;
     padding: 8px 12px;
     position: absolute;
     top: 0;
}
/* The dots/bullets/indicators */
 .dot {
     cursor: pointer;
     height: 15px;
     width: 15px;
     margin: 0 2px;
     background-color: #bbb;
     border-radius: 50%;
     display: inline-block;
     transition: background-color 0.6s ease;
}
 .active, .dot:hover {
     background-color: #717171;
}
/* Fading animation */
 .fade {
     animation-name: fade;
     animation-duration: 1.5s;
}
 @keyframes fade {
     from {
        opacity: .4
    }
     to {
        opacity: 1
    }
}
/* On smaller screens, decrease text size */
 @media only screen and (max-width: 300px) {
     .prev, .next,.text {
        font-size: 11px
    }
}
 .d-none{
     display: none;
}
/* OTP Input Container */
 .input-otp {
     display: flex;
     justify-content: center;
     gap: 12px;
    /* बॉक्स के बीच की दूरी */
     margin-bottom: 20px;
}
/* OTP Input Box */
 .input-otp input {
     width: 59px;
    /* चौड़ाई */
     height: 59px;
    /* ऊँचाई */
     text-align: center;
    /* टेक्स्ट सेंट्रल */
     font-size: 22px;
    /* बड़ा टेक्स्ट */
     border-radius: 10px;
    /* गोल किनारे */
     border: 2px solid #ccc;
     outline: none;
     transition: border 0.3s, box-shadow 0.3s;
}
/* Focus State */
 .input-otp input:focus {
     border-color: #06b6d4;
    /* थीम रंग */
     box-shadow: 0 0 5px rgba(6,182,212,0.5);
}
/* Error State */
 .input-otp input.error {
     border-color: #e11d48;
     box-shadow: 0 0 5px rgba(225,29,72,0.5);
}
/* Placeholder Centered */
 .input-otp input::placeholder {
     text-align: center;
     color: #aaa;
}