:root {
--raahni-purple: #3c3282;
--raahni-gold: #f5b947;
--topbar-bg: #111111;
--bg-cream: #faf3eb;
--text-dark: #1a1a1a;
--white: #ffffff;
}

* {
box-sizing: border-box;
margin: 0;
padding: 0;
}

body {
font-family: "Mulish", sans-serif;
background: var(--bg-cream);
color: var(--text-dark);
}

a {
text-decoration: none;
color: inherit;
}

/* ========== TOP BAR ========== */

.topbar {background: var(--topbar-bg);color: var(--white);font-size: 12px;letter-spacing: 0.06em;text-transform: uppercase;}
.topbar-inner {margin: 0 auto;padding: 6px 25px;display: flex;justify-content: space-between;align-items: center;}
.topbar-left,.topbar-right {display: flex;align-items: center;gap: 24px;flex-wrap: wrap;}
.topbar-item {display: inline-flex;align-items: center;gap: 8px;}
.topbar-item svg {width: 14px;height: 14px;flex-shrink: 0;}
.topbar-item span.email {text-transform: capitalize;}
.topbar-item a {display: flex;align-items: center;gap: 5px; color: #fdf8f4; font-weight: 700;}
.topbar-social-label {opacity: 1;font-size: 11px;font-weight: bolder;letter-spacing: 1.1px;text-transform: uppercase;}
.social-links {display: inline-flex;gap: 14px;align-items: center;}
.main-header {background: #fdf8f4;border-bottom: 1px solid #e7ded6; height: 78px; justify-content: center; display: flex;   gap: 10px; }
.main-header-inner {margin: 0 auto;padding: 0px 25px;display: flex;align-items: center;justify-content: space-between;gap: 35px;}
.icon-circle {position: relative;width: 60px;height: 60px;align-items: center;justify-content: center;display: flex;}
.icon-circle .circleRound {width: 46px;height: 46px;border-radius: 50%;border: 1px dashed #c0b2a4;display: inline-flex;align-items: center;
justify-content: center;cursor: pointer;width: 60px;height: 60px;display: flex;align-items: center;justify-content: center;border-radius: 100%;
position: absolute;border: 1px dashed #c3beb6;transform: rotate(0);transform-origin: center;transition: transform 0.9s cubic-bezier(0.45, 0, 0.55, 1);}
.icon-circle .circleRound:hover {transform: rotate(90deg);}
.icon-circle svg {stroke: #936d42;}
.icon-circle.v1 svg {stroke: #000;height: 32px;}
.site-logo img {height: 60px;max-width: 100%;}
.main-nav-desktop {flex: 1;display: flex;align-items: center;justify-content: center;gap: 55px; height:100%;}
.nav-left,.nav-right {display: flex;align-items: center;gap: 42px;text-transform: uppercase;font-size: 13px;letter-spacing: 0.6px;font-weight: 500;
height:100%;
}
.nav-link {position: relative;padding-bottom: 0px;}
.nav-link span {border-bottom: 2px solid transparent;padding-bottom: 2px;font-weight: 700;font-family: Mulish, sans-serif;font-size: 13px;
line-height: 1.692307;transition: 0.4s cubic-bezier(0.45, 0, 0.55, 1);}
.nav-link.active span,.nav-link:hover span {transition: transform 0.9s cubic-bezier(0.45, 0, 0.55, 1);}
.nav-link::before {content: "Рюд";color: var(--raahni-gold);font-size: 14px;position: absolute;left: -16px;
top: 0;transform: rotate(0);transform-origin: center;transition: transform 0.9s cubic-bezier(0.45, 0, 0.55, 1);}
.nav-link:hover::before {transform: rotate(90deg);}
.cta-btn {padding: 10px 24px;border-radius: 0;background: var(--raahni-purple);color: var(--white);text-transform: uppercase;
font-size: 13px;letter-spacing: 0.14em;border: none;cursor: pointer;white-space: nowrap;padding: 12px 30px;font-size: 12px;line-height: 1.66666;
display: flex;}
.cta-btn:hover {opacity: 0.9;}
.cta-btn .nav-link::before {top: 1px;}
.main-header-mobile {display: none;max-width: 1200px;margin: 0 auto;padding: 10px 16px;align-items: center;justify-content: space-between;gap: 16px;}
.menu-toggle {border: none;background: none;padding: 0;}
.mobile-menu-overlay {position: fixed;inset: 0;background: radial-gradient(circle at top, #373c52 0, #05050a 45%, #000 100%);color: #fff;
z-index: 999;display: none;flex-direction: column;padding: 24px;background: url(../images/side-area-background-1.jpg) no-repeat;height: 100vh;}
.mobile-menu-header {display: flex;justify-content: flex-end;}
.mobile-close-btn {border: none;background: none;padding: 0;cursor: pointer;}
.mobile-close-btn .icon-circle {border-color: rgba(255, 255, 255, 0.5);}
.mobile-close-btn svg {stroke: #f6d7a2;}
.mobile-menu-body {margin-top: 40px;}
.mobile-nav-list {list-style: none;display: flex;flex-direction: column;gap: 18px;font-size: 16px;letter-spacing: 0.14em;text-transform: uppercase;}
.mobile-nav-link {position: relative;padding-bottom: 4px;display: inline-flex;align-items: center;gap: 6px;}
.mobile-nav-link span {border-bottom: 1px solid var(--raahni-gold);padding-bottom: 3px;}
.mobile-nav-link svg {width: 20px;height: 16px;stroke: #fff;}
.mobile-submenu {list-style: none;margin-top: 8px;margin-left: 0;font-size: 12px;letter-spacing: 0.12em;text-transform: capitalize;display: none;}
.mobile-submenu li {margin-bottom: 6px;}
.mobile-submenu a {border-bottom: 0px solid rgba(245, 185, 71, 0.6);padding-bottom: 2px;}
.mobile-cta {margin-top: 32px;}
.mobile-cta .cta-btn {width: 100%;text-align: center;}
.mobile-menu-overlay.open {display: flex;}
.mobile-submenu.open {display: block;}
.nav-dropdown {position: relative;padding-bottom: 4px;}
.nav-dropdown:hover .dropdown-menu {opacity: 1;visibility: visible;transform: translateY(0);}
.dropdown-menu {position: absolute;top: 52px;left: -30px;background: #000;padding: 14px 20px;min-width: 220px;border-radius: 2px;opacity: 0;
visibility: hidden;transform: translateY(10px);transition: 0.25s ease;z-index: 50;text-transform: capitalize;}
.dropdown-menu a {color: #fff;display: flex;align-items: center;font-size: 14px;padding: 6px 0;gap: 8px;}
.dropdown-menu a span {color: var(--raahni-gold, #f5b947);}
.dropdown-menu a:hover {opacity: 0.8;}
.down-icon {transition: 0.2s;}
.nav-dropdown:hover .down-icon {transform: rotate(180deg);}
.nav-link {    position: relative;  display: flex;  height: 100%; align-items: center;}
.nav-link span {position: relative;padding-bottom: 3px;}
.topbar-item a span {position: relative;}
.nav-link span::before,
.topbar-item a span::before {content: "";position: absolute;left: 0;bottom: 0;height: 1px;
width: 0%;background: var(--raahni-gold, #f5b947);transition: width 0.35s ease;}
.nav-link:hover span::before,
.nav-link.active span::before,
.topbar-item a:hover span::before {width: 100%;}
.raahni-footer {background: #faf5ef;color: #4b3f3b;border-top: 1px solid #c3beb6;}
.raahni-footer small {color: #a8948e; font-size: 12px; font-family: Mulish, sans-serif; font-style: italic;}
.footer-title.v1 {color: #936d42;}
.footer-title {font-weight: 700;margin-bottom: 30px;color: #3c3282;letter-spacing: 1px;font-family: "Forum", sans-serif;
font-weight: 400;font-size: 24px;}
.raahni-footer p {margin: 6px 0;font-size: 15px;}
.raahni-footer p a {display: flex;align-items: center;}
.newsletter-input {border-radius: 0;padding: 15px;}
.submit-btn {background: #000;color: #fff;border-radius: 0;}
.footer-bottom {font-size: 11px;margin-top: 0px !important ;display: flex;justify-content: center;align-items: center;vertical-align: middle;gap: 10px;}
.footer-bottom span.ms-2 {text-transform: uppercase;font-size: 13px;letter-spacing: 1px;color: rgb(227 181 90);}
.back-to-top {position: fixed;bottom: 30px;right: 30px;color: #fff;border: none;padding: 12px 18px;border-radius: 50px;font-size: 14px;
cursor: pointer;display: none;transition: 0.3s;background: none; }
.fLogo {margin-top: 60px;}
.raahni-footer p {margin-bottom: 20px;}
.raahni-footer p a {margin: 6px 0;font-size: 15px;display: flex;align-items: center;gap: 8px; color: #433e37; font-weight: 600;}
.raahni-footer p svg {transform: rotate(0);transition: transform 0.4s cubic-bezier(0.45, 0, 0.55, 1);display: block;width: 11px;height: 13px;}
.raahni-footer p:hover svg {transform: rotate(90deg);}
.raahni-footer p a span {position: relative;}
.raahni-footer p a span::before {content: "";position: absolute;left: 0;bottom: 0;height: 1px;width: 0%;
background: #936d42; transition: width 0.35s ease;}
.raahni-footer p a:hover span::before {width: 100%;}
.back-to-top span {position: absolute;top: 40px;color: #fff;right: 40px;font-size: 12px;font-family: Mulish, sans-serif;font-weight: 700;color: #e3b55a;text-transform: uppercase;line-height: normal;}
.back-to-top svg {transform: rotate(0);transition: transform 0.4s cubic-bezier(0.45, 0, 0.55, 1);}
.back-to-top svg:hover {transform: rotate(90deg);}
.flexSec {display: flex;justify-content: center;gap: 10px;margin-left: 12px;}
.mShow {display: none;}
.mainSection {width: 100%;padding: 0;margin: 0;background: #f7f9fc;}
.leftImageSection {background: #041a33;height: auto;display: flex;justify-content: center;align-items: center;}
.leftImage {width: 100%;height: 600px;object-fit: cover;}
.rightBlankSection {padding: 15px 40px;}
.right-wrapper {width: 100%;}
.rightBlankSection .right-wrapper {padding-top:50px;}

.right-wrapper .title {font-size: 42px;font-weight: 700;font-family: 'Mulish', sans-serif;color: #1d1d1d;}
.right-wrapper .desc {font-size: 16px;margin: 15px 0 30px;color: #555;}
.emailBox input {height: 54px;border: 1px solid #d9d9d9;}
.emailBox button {height: 54px;background: #006AFF;border: none;padding: 0 25px;font-weight: 600;letter-spacing: .5px;}
/*.leftImageSection {background: url(../images/pandit.png) no-repeat 100%;}*/
.quote-text {color:#fff;}
.author {color:rgba(255, 255, 255, 0.5);}
.leftImageSection .carousel  {width:60%;}
.fa-quote-left {font-size: 40px;color: #ffffff;   opacity: .9;}
.tech-icons     {display: flex; gap: 20px; font-size: 30px; padding-top: 50px;}
.tech-icons i   {color: #fff;    transition: color 0.3s ease;}
.tech-icons i:hover {color: #0066cc;}
.leftImageSection .carousel .carousel-indicators {    bottom: -45px; gap:15px}
.leftImageSection .carousel .carousel-indicators button {width: 10px;    height: 10px; border-radius:50%;}

.wizard-container {
max-width: 900px;
margin: auto;
background: white;
padding:10px 30px;
border-radius:12px;
box-shadow:0 4px 15px rgba(0,0,0,0.1);
}

.wizard-header {
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:20px;
}

.back-btn {
background:none;
border:none;
font-size:15px;
color:#666;
cursor:pointer;
}
.save-btn {
padding: 11px 30px;
font-size: 16px;
color: white;
border-radius: 8px;
}

.save-btn:hover {

}

.step-count {
font-size:16px;
font-weight:600;
}

.tab-title {
font-size:26px;
font-weight:700;
margin-bottom:25px;
}

.step {
display:none;
}

.step.active {
display:block;
}

.form-grid {
display:grid;
grid-template-columns: repeat(auto-fit, minmax(250px,1fr));
gap:20px;
}


.form-grid1 {
display:flex;
grid-template-columns: repeat(auto-fit, minmax(250px,1fr));
gap:20px;
}

.form-group {
display:flex;
flex-direction:column;
}

.form-group.full {
grid-column:1 / -1;
}

label {
font-weight:600;
margin-bottom:5px;
}

input, select, textarea, .form-multi-select-input-group {
padding:12px;
border-radius:8px;
border:1px solid #ccc;
font-size:15px;
padding: 12px 14px;
font-size: 15px;
border-radius: 8px;
border: 1.5px solid #d1c7b5;
background-color: #fdf8f4;;
outline: none;
}
.form-multi-select-input-group {padding:5px;}

textarea {
resize:none;
}

.note {
font-size:12px;
color:#888;
}


.input-group .submit-btn:hover {background: #000;color:#fff;}

.wizard-footer {
margin-top: 30px;
text-align: right;
display: flex;
align-items: flex-end;
width: 100%;
gap: 10px;
justify-content: end;

}

.next-btn {
padding: 6px 14px;
font-size: 14px;
background: var(--raahni-purple);
color:white;
border:none;
border-radius:8px;
cursor:pointer;
}
.next-btn:disabled {
    opacity: 0.6;
}

.next-btn:hover {
background:#c50711;
}

.cert-row {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 10px;
}

.cert-upload {
flex: 1;
}

.add-cert-btn {
margin-top: 10px;
padding: 8px 20px;
background: #008d84;
color: #fff;
border: none;
border-radius: 6px;
cursor: pointer;
}

.add-cert-btn:hover {
background: #006f66;
}

.remove-cert {
background: #ff4d4d;
color: #fff;
border: none;
border-radius: 50%;
width: 30px;
height: 30px;
cursor: pointer;
font-size: 16px;
line-height: 1;
}

.remove-cert:hover {
background: #d93636;
}

.week-nav {
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 25px;
gap: 20px;
}

.week-range {
background: #f1f3f7;
padding: 10px 25px;
border-radius: 8px;
font-weight: 600;
font-size: 18px;
}

.week-btn {
background: none;
border: none;
font-size: 20px;
cursor: pointer;
padding: 5px 10px;
}

.availability-table {
display: flex;
flex-direction: column;
gap: 15px;
}

.day-row {
display: flex;
align-items: center;
gap: 15px;
flex-wrap: wrap;
}

.day-name {
width: 120px;
font-weight: 600;
}

.time-slot {
display: flex;
align-items: center;
gap: 10px;
}

.time-slot input {
padding: 8px 12px;
border-radius: 6px;
border: 1px solid #ccc;
width: 150px;
}

.add-slot-btn {
background: #e5f6ff;
border: 1px solid #b2e0ff;
color: #0083c8;
font-weight: bold;
padding: 5px 10px;
border-radius: 6px;
cursor: pointer;
font-size: 18px;
}

.add2 {margin-top:30px;}

/* Document Upload Grid */
.doc-row {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 10px;
}

.doc-row select,
.doc-row input[type="file"] {
flex: 1;
}

/* Remove Button */
.remove-doc {
background: #fff1f1;
border: 1px solid #d33;
color: #d33;
font-size: 14px;
padding: 3px 7px;
cursor: pointer;
border-radius: 4px;
}

.remove-doc:hover {
background: #d33;
color: white;
}

/* Add More Button */
.add-doc-btn {
margin-top: 0px;
width: 100%;
display: block;
padding: 10px;
text-align: center;
border: 1px solid #000;
background: #f8f8f8;
cursor: pointer;
border-radius: 6px;
}

.add-doc-btn:hover {
background: #eee;
}

/* Mobile Fix */
@media (max-width: 768px) {
.doc-row {
flex-direction: column;
align-items: flex-start;
}

.remove-doc {
align-self: flex-end;
margin-top: -8px;
}
}

.doc-upload {padding: 8px;}
.upload-row {
display: flex;
align-items: center;
gap: 15px;
margin-bottom: 15px;
}

.label {
font-weight: bold;
margin-bottom: 8px;
display: block;
}



.upload-box {
padding: 12px 14px;
font-size: 15px;
border-radius: 8px;
border: 1.5px solid #d1c7b5;
background-color: #fdf8f4;
outline: none;
}

.upload-box:hover { opacity: 0.85; }

input[type="file"] {
display: none;
}

.btn-add,
.btn-remove {
width: 32px;
height: 32px;
border: none;
cursor: pointer;
border-radius: 5px;
font-size: 20px;
color: #fff;
}

.btn-add { background: #4CAF50; }
.btn-remove { background: #d9534f; }

.file-name {
font-size: 13px;
color: #444;
max-width: 250px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.upload-row.t1 div:nth-child(1) {width:180px;}
.upload-row.t1 div:nth-child(2) {width:270px;}
.upload-row.t1 select {width:100%;}
.upload-box {width:300px;}
.upload-row {align-items: baseline;}

/* Grid for upper part of step */
.form-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 24px;
margin-bottom: 24px;
}

.form-group {
display: flex;
flex-direction: column;
gap: 6px;
}

.form-group label {
font-weight: 600;
font-size: 14px;
}

/* Card-style certification section */
.cert-section.card {
border-radius: 12px;
border: 1px solid #e3e6eb;
box-shadow: 0 3px 8px rgba(15, 23, 42, 0.06);
background: #fdf8f4;
}
.cert-section.card .form-group  {width:85%;}

/* Title spacing */
.cert-title {
font-size: 18px;
font-weight: 700;
margin-bottom: 18px;
}

/* Two-column layout for doc type + file upload */
.cert-upload-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 20px;
margin-bottom: 16px;
}

/* Top action buttons (Reset / Upload) */
.cert-actions-top {
display: flex;
justify-content: flex-end;
gap: 10px;
}

/* Uploaded list */
.uploaded-title {
font-size: 14px;
font-weight: 600;
margin-bottom: 14px;
}

.uploaded-cert-list {
display: flex;
flex-direction: column;
gap: 12px;
}

/* Single uploaded row */
.uploaded-cert-item {
display: block;
justify-content: space-between;
align-items: center;
padding: 12px 16px;
border-radius: 10px;
border: 1px solid #e5e7eb;
background-color: #fafafa;
gap: 16px;
}

.uploaded-cert-item .cert-meta {
display: flex;
flex-direction: column;
gap: 2px;
}

.cert-doc-type {
font-weight: 600;
font-size: 14px;
}

.cert-file-name {
font-size: 13px;
color: #4b5563;
}

.cert-updated {
font-size: 12px;
color: #9ca3af;
}

/* Right-side buttons */
.cert-actions {
display: flex;
gap: 8px;
flex-shrink: 0;
}

.cert-actions button, .cert-actions .btn-sm {padding:5px; font-size:10px;}

/* Responsive tweak */
@media (max-width: 576px) {
.uploaded-cert-item {
flex-direction: column;
align-items: flex-start;
}

.cert-actions {
width: 100%;
justify-content: flex-start;
flex-wrap: wrap;
}
}

.profile-upload-wrapper {
display: flex;
align-items: center;
gap: 16px;
}

.profile-avatar {
width: 48px;
height: 48px;
border-radius: 50%;
overflow: hidden;
background: #f3f3f3;
flex-shrink: 0;
border:1px solid #ccc;
}

.profile-avatar img {
width: 100%;
height: 100%;
object-fit: contain;
display: block;
}

.profile-actions {
display: flex;
flex-direction: column;
gap: 4px;
}

.profile-buttons .btn + .btn {
margin-left: 6px;
}

.profile-help {
font-size: 12px;
color: #6c757d;
}

.error-msg {
font-size: 12px;
color: #d9534f;
}

.has-error {
outline: 1px solid #d9534f;
}

.form-group.has-error {outline:none;}

@media (max-width: 576px) {
.profile-upload-wrapper {
align-items: flex-start;
}
}


@media (max-width: 991px) {
.topbar-inner {padding-inline: 12px;font-size: 11px;}
.main-header-inner {display: none;}
.main-header-mobile {display: flex;}
.topbar {display: none;}
.site-logo img {height: 44px;}
.mobile-cta {display: none;}
.mShow {display: inline;}
.mHide {display: none;}
.footer-bottom {display: inline-grid;}
.rightBlankSection {    padding: 15px 10px;}
.upload-row {display: inline-grid;}
.wrapBtn {display:flex;gap: 7px;}
.wizard-container {    padding: 10px;}
}

select {
padding-right: 30px; /* Increase right padding to move arrow right */
background-position: right 10px center; /* Position arrow 10px from right edge */
background-repeat: no-repeat;
}

select {
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
padding-right: 30px;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 10px center; /* Arrow positioned 10px from right */
}


/* Overlay */
.profile-modal-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.75);
display: none;
align-items: center;
justify-content: center;
z-index: 9999;
}

/* Popup box */
.profile-modal {
background: #fff;
padding: 15px;
border-radius: 12px;
max-width: 380px;
width: 90%;
position: relative;
text-align: center;
animation: fadeIn 0.3s ease-in-out;
}

/* Preview image */
.profile-modal img {
width: 100%;
border-radius: 12px;
}

/* Close button */
.close-preview {
position: absolute;
top: -10px;
right: -10px;
background: #936d42;
color: #fff;
width: 26px;
height: 26px;
font-size: 20px;
border-radius: 50%;
line-height: 24px;
cursor: pointer;
text-align: center;
}

@keyframes fadeIn {
from {opacity: 0; transform: scale(0.9);}
to {opacity: 1; transform: scale(1);}
}

.uploadSec small.text-muted {font-size:10px;}
.attachDoc {display: flex;  gap: 10px;  padding: 5px 10px;  border: 1px solid #ccc;  border-radius: 5px;background: #fff; }
.attached-file-display {display: flex;  align-items: center; gap: 30px;position:relative;}
.remove-attached-file {background: none;width: 17px; height: 18px; font-size: 10px;border-radius: 50%; position: absolute; left: 0; top: 0px;}
.attached-file-display .file-info {display: flex; gap: 5px; align-items: center;justify-content: center;font-size: 11px;}
.cert-actions-top .btn-primary {background: var(--raahni-purple);}
.cert-actions-top button {padding:5px; font-size:10px;}



/* ----- WIZARD PROGRESS BAR ----- */
.wizard-progress {
margin: 30px 0 24px;
}

.wizard-progress-track {
position: relative;
height: 4px;
background: #e5dfd0; /* light beige like Raahni */
border-radius: 999px;
overflow: hidden;
}

.wizard-progress-bar {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 0;
background: #3C3282; /* Raahni purple */
transition: width 0.3s ease;
}

.wizard-progress-steps {
display: flex;
justify-content: space-between;
margin-top: 5px;
font-size: 12px;
color: #8a7a5a;
gap: 20px;
display: grid;
}

.wizard-progress-steps span {    
display: flex;
align-items: center;
gap: 15px;
font-size:16px;

}

.wizard-step-dot label {
width: 26px;
height: 26px;
border-radius: 50%;
border: 1px solid #c8b079; /* gold-ish */
display: flex;
align-items: center;
justify-content: center;
background: #fff;
font-weight: 600;
transition: all 0.3s ease;
margin-bottom:0;
}

.wizard-step-dot.active label {
background: #3C3282;
color: #fff;
border-color: #3C3282;
box-shadow: 0 0 0 3px rgba(60, 50, 130, 0.15);
}


/*login */

.login-container {
padding: 120px 30px;
max-width: 600px;
width: 100%;
margin:auto;

}

.login-container .input-group {gap:0}
.login-container .header {text-align: center;margin-bottom: 30px; display:block; background:none;}

.header h1 {
font-size: 28px;
color: #333;
margin-bottom: 10px;
font-weight: 600;
}

.header p {
color: #666;
font-size: 14px;
}

.checkbox-container {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 25px;
}

.checkbox-container input[type="checkbox"] {
width: 20px;
height: 20px;
margin-right: 8px;
cursor: pointer;
accent-color: #3c3282;
}

.checkbox-container label {
color: #333;
font-size: 15px;
cursor: pointer;
user-select: none;
margin:0;
}

.input-group {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 20px;
}

.country-selector {
display: flex;
align-items: center;
gap: 8px;
padding: 14px 16px;
border: 1px solid #ddd;
border-radius: 30px;
background: white;
cursor: pointer;
min-width: 85px;
}

.country-selector img {
width: 24px;
height: 18px;
}

.country-selector span {
font-size: 18px;
}

.input-field {
flex: 1;
padding: 14px 20px;
border: 1px solid #ddd;
border-radius: 30px;
font-size: 15px;
outline: none;
transition: border-color 0.3s;
}

.input-field:focus {
border-color: #3c3282;
}

.input-field::placeholder {
color: #999;
}

.btn-request-otp {
background:#3c3282;
color: white;
border: 1px solid #3c3282;
padding: 14px 35px;
border-radius: 0 30px 30px 0 !important;
font-size: 15px;
font-weight: 500;
cursor: pointer;
transition: transform 0.2s, box-shadow 0.2s;
white-space: nowrap;
}

.btn-request-otp:hover {
transform: inherit;
box-shadow: 0 4px 12px rgba(124, 95, 184, 0.3);
}

.btn-request-otp:active {
transform: translateY(0);
}

/* OTP Screen Styles */
.otp-screen {
display: none;
}

.otp-screen.active {
display: block;
}

.otp-header {
text-align: center;
margin-bottom: 30px;
}

.otp-header h2 {
font-size: 26px;
color: #333;
margin-bottom: 10px;
font-weight: 600;
}

.otp-header p {
color: #666;
font-size: 14px;
}

.otp-header p span {
color: #3c3282;
font-weight: 500;
}

.otp-inputs {
display: flex;
justify-content: center;
gap: 12px;
margin-bottom: 20px;
}

.otp-input {
width: 50px;
height: 50px;
text-align: center;
font-size: 24px;
font-weight: 500;
border: 2px solid #3c3282;
border-radius: 8px;
outline: none;
transition: all 0.3s;
}

.otp-input:focus {
border-color: #3c3282;
box-shadow: 0 0 0 3px rgba(124, 95, 184, 0.1);
}

.otp-input:not(:placeholder-shown) {
border-color: #3c3282;
}

.resend-text {
text-align: center;
color: #666;
font-size: 14px;
margin-bottom: 20px;
}

.resend-text span {
color: #3c3282;
font-weight: 500;
}

.btn-verify {
width: 100%;
background: #e0e0e0;
color: #999;
border: none;
padding: 14px;
border-radius: 8px;
font-size: 16px;
font-weight: 500;
cursor: not-allowed;
transition: all 0.3s;
margin-bottom: 15px;
}

.btn-verify.active {
background: #3c3282;
color: white;
cursor: pointer;
}

.btn-verify.active:hover {
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(124, 95, 184, 0.3);
}

.btn-change {
width: 100%;
background: white;
color: #3c3282;
border: 2px solid #3c3282;
padding: 14px;
border-radius: 8px;
font-size: 16px;
font-weight: 500;
cursor: pointer;
transition: all 0.3s;
}

.btn-change:hover {
background: #f9f7fc;
}

.login-screen {
display: block;
}

.login-screen.hidden {
display: none;
}
.login-screen .country-selector {padding:12px 16px;}


@media (max-width: 480px) {
.login-container {
padding: 30px 20px;
}

.header h1 {
font-size: 24px;
}

.otp-input {
width: 45px;
height: 45px;
font-size: 20px;
}

.input-group {
flex-direction: column;
}

.country-selector {
width: 100%;
justify-content: center;
}

.btn-request-otp {
width: 100%;
}
}


.leftImageSection.v1 {align-items: flex-start;}
.rightBlankSection.v1 { align-items: flex-start !important;}
.wizard-step-dot.active {color:#3c3282;     font-weight: 700;}
.raahni-footer .input-group {gap:0}
.raahni-footer .newsletter-input {border-color: #aaa59d; background-color: #fff !important; color: #433e37 !important; 
border-radius: 0;padding: 25px 24px;  font-weight: 400;
font-family: Mulish, sans-serif; border-width: 1px;   border-style: solid;}
.raahni-footer .submit-btn {background: #000;    color: #fff;    border-radius: 0;    padding: 16px 35px;    width: 200px; font-family: Mulish, sans-serif;
font-weight: 700;    font-size: 13px;    letter-spacing: 0.1em;}
.raahni-footer .sumbit-m-text{position:relative; top: -2px;}
.raahni-footer .sumbit-m-text:before {    content: ""; position: absolute;left: 0; bottom: -4px; height: 1px; width: 0%;    background: #936d42;    transition: width 0.35s ease;}    
.raahni-footer .submit-btn:hover  .sumbit-m-text:before {width:100%;}



/* Global reset */
* {
box-sizing: border-box;

margin: 0;
padding: 0;
}

/* Background image only */
body {
background: url("assest/background/Desktop\ -\ 4.png") no-repeat center
center/cover;
/*min-height: 100vh;*/
/*display: flex;*/
/*justify-content: center;*/
/*align-items: center;*/
}

/* Form Container */
.form-wrapper {
background: #ffffff;
border: 1px solid #d8d3c4;
border-radius: 10px;
padding: 40px 50px;
max-width: 750px;
width: 90%;

}

/* Title */
h2 {
font-size: 40px;
color: #3c3282;
margin-bottom: 20px;
text-align: center;
font-weight: 700;
}

/* Grid layout */
.form-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px 30px;
}

/* Make email span both columns */
.form-group.full {
grid-column: span 2;
}

/* Labels */
label {
display: block;
margin-bottom: 6px;
font-size: 15px;
color: #3a3733;
}

/* Inputs and selects */
input,
select {
width: 100%;
padding: 10px 12px;
font-size: 15px;
border-radius: 6px;
border: 1px solid #d1c7b5;
background-color: #f8f2e7;
outline: none;
transition: 0.2s ease;
}

input:focus,
select:focus {
border-color: #c5b798;
}

/* Button */
button {
/*margin-top: 30px;*/
/*width: 100%;*/
padding: 12px;
border: none;
background-color: #2f2c28;
color: white;
font-size: 16px;
border-radius: 6px;
cursor: pointer;
transition: background 0.3s ease;
}

/*button:hover {*/
/*  background-color: #4a443f;*/
/*}*/

/* Responsive */
@media (max-width: 650px) {
.form-grid {
grid-template-columns: 1fr;
}

.form-group.full {
grid-column: span 1;
}

.form-wrapper {
padding: 30px 25px;
}
}

/* ============================
THANK YOU PAGE - FULL WIDTH FIX
============================ */
.thankyou-page {
background: url("assest/background/Desktop - 4.png") no-repeat center
center/cover;
min-height: 100vh;
padding: 30px 0 40px;
color: #2d2b28;
font-family: "Poppins", sans-serif;
}

.thankyou-title {
text-align: center;
font-size: 56px;
font-weight: 700;
color: #189d11;
}

.thankyou-subtext {
text-align: center;
font-size: 20px;
font-weight: 400px;
margin-bottom: 10px;
}

.thankyou-description {
text-align: center;
font-size: 20px;
line-height: 1.5;
margin: 0 auto 20px;
max-width: 1200px;
font-weight: 400px;
}

/* Manglik Section */
.manglik-section {
text-align: center;
margin-bottom: 40px;
}

.manglik-section h2 {
font-size: 40px;
font-weight: 700;
margin-bottom: 10px;
color: #a81010;
}

.manglik-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
padding: 0 50px;
}

.manglik-card {
background: #f8f2e7;
border: 1px solid #d1c7b5;
border-radius: 8px;
padding: 20px 10px;
text-align: center;
}

.manglik-card h3 {
font-size: 22px;
font-weight: 700;
margin-bottom: 10px;
color: black;
}

.manglik-card h3 span {
color: #007d00;
font-weight: 700;
font-size: 22px;
}

.manglik-card p {
font-size: 14px;
line-height: 1.6;
font-weight: 400;
}

/* Prediction section — 3-column desktop layout with left column stacked (Physical above Health),
Family and Education occupy middle and right columns and span both rows. */
.prediction-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto auto;
grid-template-areas:
"physical family education"
"health   family education";
gap: 20px;
padding: 0 50px;
width: 100%;
}

/* Map items by their DOM order (keeps your HTML unchanged):
1 => Physical, 2 => Family, 3 => Health, 4 => Education */
.prediction-grid > .prediction-card:nth-child(1) {
grid-area: physical;
}
.prediction-grid > .prediction-card:nth-child(2) {
grid-area: family;
}
.prediction-grid > .prediction-card:nth-child(3) {
grid-area: health;
}
.prediction-grid > .prediction-card:nth-child(4) {
grid-area: education;
}

/* Ensure all cards stretch to fill their grid area */
.prediction-card {
background: #f8f2e7;
border: 1px solid #d1c7b5;
border-radius: 8px;
padding: 25px 20px;
text-align: center;
align-self: stretch;
}

/* keep heading styles intact */
.prediction-card h4 {
font-size: 28px;
font-weight: 700;
color: #2f2c28;
margin-bottom: 10px;
}

/* mobile/smaller screens revert to single column (unchanged) */
@media (max-width: 950px) {
.prediction-grid {
grid-template-columns: 1fr;
grid-template-areas:
"physical"
"family"
"health"
"education";
padding: 0 20px;
gap: 20px;
}

/* Footer */
.thankyou-footer {
text-align: center;
margin-top: 40px;
}

.back-btn {
display: inline-block;
background-color: #3c3282;
color: white;
text-decoration: none;
padding: 10px 25px;
border-radius: 6px;
font-size: 15px;
transition: background 0.3s ease;
}

.back-btn:hover {
background-color: #4a443f;
}

/* Responsive Adjustments */
@media (max-width: 950px) {
.manglik-grid {
grid-template-columns: 1fr;
padding: 0 20px;
}

.prediction-grid {
grid-template-columns: 1fr;
padding: 0 20px;
}

.thankyou-title {
font-size: 32px;
}

.thankyou-page {
padding: 40px 0 60px;
}
}
}


:root {
--raahni-purple: #3c3282;
--raahni-gold: #f5b947;
--topbar-bg: #111111;
--bg-cream: #faf3eb;
--text-dark: #1a1a1a;
--white: #ffffff;
}

* {
box-sizing: border-box;
margin: 0;
padding: 0;
}

body {
font-family: "Mulish", sans-serif;
background: var(--bg-cream);
color: var(--text-dark);
}

a {
text-decoration: none;
color: inherit;
}

/* ========== TOP BAR ========== */

.topbar {background: var(--topbar-bg);color: var(--white);font-size: 12px;letter-spacing: 0.06em;text-transform: uppercase;}
.topbar-inner {margin: 0 auto;padding: 7px 23px;display: flex;justify-content: space-between;align-items: center;}
.topbar-left,.topbar-right {display: flex;align-items: center;gap: 24px;flex-wrap: wrap;}
.topbar-item {display: inline-flex;align-items: center;gap: 8px;}
.topbar-item svg {width: 14px;height: 14px;flex-shrink: 0;}
.topbar-item span.email {text-transform: none;}
.topbar-item a {display: flex;align-items: center;gap: 5px; color: #fdf8f4; font-weight: 700;}
.topbar-item a:hover {color:inherit; text-decoration:none;}
.topbar-social-label {opacity: 1;font-size: 11px;font-weight: bolder;letter-spacing: 1.1px;text-transform: uppercase;}
.social-links {display: inline-flex;gap: 14px;align-items: center;}
.main-header {background: #fdf8f4;border-bottom: 1px solid #e7ded6; height: 78px; justify-content: center; display: flex;   gap: 10px; }
.main-header-inner {margin: 0 auto;padding: 0px 25px;display: flex;align-items: center;justify-content: space-between;gap: 35px;}
.icon-circle {position: relative;width: 60px;height: 60px;align-items: center;justify-content: center;display: flex;}
.icon-circle .circleRound {width: 46px;height: 46px;border-radius: 50%;border: 1px dashed #c0b2a4;display: inline-flex;align-items: center;
justify-content: center;cursor: pointer;width: 60px;height: 60px;display: flex;align-items: center;justify-content: center;border-radius: 100%;
position: absolute;border: 1px dashed #c3beb6;transform: rotate(0);transform-origin: center;transition: transform 0.9s cubic-bezier(0.45, 0, 0.55, 1);}
.icon-circle .circleRound:hover {transform: rotate(90deg);}
.icon-circle svg {stroke: #936d42;}
.icon-circle.v1 svg {stroke: #000;height: 22px;}
.site-logo img {height: 60px;max-width: 100%;}
.main-nav-desktop {flex: 1;display: flex;align-items: center;justify-content: center;gap: 55px; height:100%;}
.nav-left,.nav-right {display: flex;align-items: center;gap: 42px;text-transform: uppercase;font-size: 13px;letter-spacing: 0.6px;font-weight: 500;height:100%;}
.nav-link {position: relative;}
.nav-link span {border-bottom: 2px solid transparent;padding-bottom: 2px;font-weight: 700;font-family: Mulish, sans-serif;font-size: 13px;
line-height: 1.692307;transition: 0.4s cubic-bezier(0.45, 0, 0.55, 1);}
.nav-link.active span,.nav-link:hover span {transition: transform 0.9s cubic-bezier(0.45, 0, 0.55, 1);}
.nav-link::before {    content: "✦"; color: var(--raahni-gold);font-size: 14px;position: absolute;left: -16px;
top: 25px;transform: rotate(0);transform-origin: center;transition: transform 0.9s cubic-bezier(0.45, 0, 0.55, 1);}
.nav-link:hover::before {transform: rotate(90deg);}
.nav-link:hover {text-decoration: none; color:inherit;}

.cta-btn {padding: 10px 24px;border-radius: 0;background: var(--raahni-purple);color: var(--white);text-transform: uppercase;
font-size: 13px;letter-spacing: 0.14em;border: none;cursor: pointer;white-space: nowrap;padding: 12px 30px;font-size: 12px;line-height: 1.66666;
display: flex;}
.cta-btn:hover {opacity: 0.9;}
.cta-btn .nav-link::before {top: 1px;}
.main-header-mobile {display: none;max-width: 1200px;margin: 0 auto;padding: 10px 16px;align-items: center;justify-content: space-between;gap: 16px;}
.menu-toggle {border: none;background: none;padding: 0;}
.mobile-menu-overlay {position: fixed;inset: auto;background: radial-gradient(circle at top, #373c52 0, #05050a 45%, #000 100%);color: #fff;
z-index: 999;display: none;flex-direction: column;padding: 24px;background: url(../images/side-area-background-1.jpg) no-repeat;height: 100vh;}
.mobile-menu-header {display: flex;justify-content: flex-end;}
.mobile-close-btn {border: none;background: none;padding: 0;cursor: pointer;}
.mobile-close-btn .icon-circle {border-color: rgba(255, 255, 255, 0.5);}
.mobile-close-btn svg {stroke: #f6d7a2;}
.mobile-menu-body {margin-top: 40px;}
.mobile-nav-list {list-style: none;display: flex;flex-direction: column;gap: 18px;font-size: 16px;letter-spacing: 0.14em;text-transform: uppercase;}
.mobile-nav-link {position: relative;padding-bottom: 4px;display: inline-flex;align-items: center;gap: 6px; font-family: Mulish, sans-serif;
font-size: 19px; font-weight: 700;}
.mobile-nav-link span {border-bottom: 1px solid #936d42 ;padding-bottom: 3px;}
.mobile-nav-link svg {width: 20px;height: 16px;stroke: #fff;}
.mobile-submenu {list-style: none;margin-top: 8px;margin-left: 0;font-size: 12px;letter-spacing: 0.12em;text-transform: capitalize;display: none;}
.mobile-submenu li {margin-bottom: 6px;}
.mobile-submenu a {border-bottom: 0px solid rgba(245, 185, 71, 0.6);padding-bottom: 2px;     font-family: Mulish, sans-serif;
font-size: 17px; line-height: 1.2631578947em;}

.mobile-cta {margin-top: 32px;}
.mobile-cta .cta-btn {width: 100%;text-align: center;}
.mobile-menu-overlay.open {display: flex;}
.mobile-submenu.open {display: block;}
.nav-dropdown {position: relative;padding-bottom: 0px; display: flex;   height: 100%;   align-items: center;}
.nav-dropdown:hover .dropdown-menu {opacity: 1;visibility: visible;transform: translateY(0); display:block;}
.dropdown-menu {position: absolute;top: 74px;left: -30px;background: #000;padding: 14px 20px;min-width: 220px;border-radius: 2px;opacity: 0;
visibility: hidden;transform: translateY(10px);transition: 0.25s ease;z-index: 50;text-transform: capitalize;}
.dropdown-menu a {color: #fff;display: flex;align-items: center;font-size: 14px;padding: 6px 0;gap: 8px; padding-left:15px;}
.dropdown-menu a span {color: var(--raahni-gold, #f5b947); position:absolute;     left: 14px;}
.dropdown-menu a:hover {text-decoration:none;}
.down-icon {transition: 0.2s;}
.nav-dropdown:hover .down-icon {transform: rotate(180deg);}
.nav-link {position: relative; display: flex;   height: 100%;   align-items: center;}
.nav-link span {position: relative;padding-bottom: 0px;}
.topbar-item a span {position: relative;     font-size: 11px;}
.nav-link span::before,
.topbar-item a span::before {content: "";position: absolute;left: 0;bottom: 0;height: 1px;
width: 0%;background: var(--raahni-gold, #f5b947);transition: width 0.35s ease;}
.nav-link:hover span::before,
.nav-link.active span::before,
.topbar-item a:hover span::before {width: 100%;}
.raahni-footer {background: #fdf8f4;color: #4b3f3b;border-top: 1px solid #c3beb6;}
.raahni-footer small {color: #a8948e; font-size: 12px; font-family: Mulish, sans-serif; font-style: italic;}
.footer-title.v1 {color: #936d42;}
.footer-title {font-weight: 700;margin-bottom: 30px;color: #3c3282;letter-spacing: 1px;font-family: "Forum", sans-serif;
font-weight: 400;font-size: 24px;}
.raahni-footer p {margin: 6px 0;font-size: 15px;}
.raahni-footer p a {display: flex;align-items: center;}
.newsletter-input {border-radius: 0;padding: 15px;}
.submit-btn {background: #000;color: #fff;border-radius: 0;}
.footer-bottom {font-size: 11px;margin-top: 50px !important ;display: flex;justify-content: space-between;align-items: center;vertical-align: middle;gap: 10px;}
.footer-bottom .flexSec {top: 0px; position: relative;     display: inline;}
.qBlocksec {text-align: left;    font-weight: 400;    text-transform: uppercase;    font-size: 11px;    letter-spacing: 1px;padding-bottom: 0;
display: block;}
.flogo1 {    width: 30%;}
.footer-bottom .flexSec span.ms-2 {display:block;}
.footer-bottom span.ms-2 {text-transform: uppercase;font-size: 13px;letter-spacing: 1px;color: rgb(147 109 66);     padding-bottom: 10px;       }
.back-to-top {position: fixed;bottom: 30px;right: 30px;color: #fff;border: none;padding: 12px 18px;border-radius: 50px;font-size: 14px;
cursor: pointer;display: none;transition: 0.3s;background: none; z-index:9;}
.fLogo {margin-top: 60px;}
.raahni-footer p {margin-bottom: 20px;}
.raahni-footer p a {margin: 6px 0;font-size: 13px;display: flex;align-items: center;gap: 8px; color: #433e37; font-weight: 600;
font-family: Mulish, sans-serif;font-weight: 700;   font-size: 13px;line-height: 1.692307;   color: #070506;letter-spacing: .1em;}
.raahni-footer p svg {transform: rotate(0);transition: transform 0.4s cubic-bezier(0.45, 0, 0.55, 1);display: block;width: 11px;height: 13px;}
.raahni-footer p:hover svg {transform: rotate(90deg);}
.raahni-footer p a span {position: relative;     color: #433e37;}
.raahni-footer p a span::before {content: "";position: absolute;left: 0;bottom: 0;height: 1px;width: 0%;
background: #936d42; transition: width 0.35s ease;}
.raahni-footer p a:hover span::before {width: 100%;}
.back-to-top span {position: absolute;top: 40px;color: #fff;right: 40px;font-size: 12px;font-family: Mulish, sans-serif;font-weight: 700;color: #e3b55a;text-transform: uppercase;line-height: normal;}
.back-to-top svg {transform: rotate(0);transition: transform 0.4s cubic-bezier(0.45, 0, 0.55, 1);}
.back-to-top svg:hover {transform: rotate(90deg);}
.flexSec {display: flex;justify-content: center;gap: 10px;margin-left: 12px;}
.mShow {display: none;}
.mainSection {width: 100%;padding: 0;margin: 0;background: #f7f9fc;}
.leftImageSection {height: 600px; display: flex;justify-content: center;align-items: center;     background-position: center;  
background-size: cover; background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.9)), 
url('../images/pandit.png');border-radius:12px;   }
.leftImage {width: 100%;height: 600px;object-fit: cover;}
.rightBlankSection {padding:0;}
.spacefse {width:35%;}
.right-wrapper {width: 100%;}
.right-wrapper .title {font-size: 42px;font-weight: 700;font-family: 'Mulish', sans-serif;color: #1d1d1d;}
.right-wrapper .desc {font-size: 16px;margin: 15px 0 30px;color: #555;}
.emailBox input {height: 54px;border: 1px solid #d9d9d9;}
.emailBox button {height: 54px;background: #006AFF;border: none;padding: 0 25px;font-weight: 600;letter-spacing: .5px;}
/*.leftImageSection {background: url(../images/side-area-background-1.jpg) no-repeat 100%;}*/
.quote-text {color:#fff; font-size:22px;}
.author {color:rgba(255, 255, 255, 0.6); font-size:20px;}
.leftImageSection .carousel  {width:60%; height:350px;}
.fa-quote-left {font-size: 40px;color: #ffffff;   opacity: .9;}
.tech-icons     {display: flex; gap: 20px; font-size: 30px; padding-top: 50px;}
.tech-icons i   {color: #fff;    transition: color 0.3s ease;}
.tech-icons i:hover {color: #0066cc;}
.leftImageSection .carousel .carousel-indicators {    bottom: -45px;}
.leftImageSection .carousel .carousel-indicators button {width: 10px;    height: 10px; border-radius:50%; padding:0;}
.leftImageSection .carousel .carousel-indicators button {background:#ccc;}
.leftImageSection .carousel .carousel-indicators button.active {background:#000;}
.wizard-container {
max-width: 900px;
margin: auto;
background: transparent;
padding:0px 30px;
/*border-radius:12px;*/
box-shadow:none;
}

.wizard-header {
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:20px;
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
border-bottom: 1px dashed #e3b55a;
padding-bottom: 0;
height: 40px;
}

.back-btn {
background:none;
border:none;
font-size:15px;
color:#666;
cursor:pointer;
padding-top: 0;
padding-left: 0;
}
.save-btn {
padding: 11px 30px;
font-size: 16px;
color: white;
border-radius: 8px;
}

.save-btn:hover {

}

.step-count {
font-size:16px;
font-weight:600;
}

.tab-title {
font-size:22px;
font-weight:700;
margin-bottom:25px;
text-align: left;
position: absolute;
top: 52px;
right: 30px;

}

.form-grid.sec1 {margin-top:55px;}

.step {
display:none;
}

.step.active {
display:block;
}

.form-grid {
display:grid;
grid-template-columns: repeat(auto-fit, minmax(250px,1fr));
gap:20px;
}


.form-grid1 {
display:flex;
grid-template-columns: repeat(auto-fit, minmax(250px,1fr));
gap:20px;
}

.form-group {
display:flex;
flex-direction:column;
}

.form-group.full {
grid-column:1 / -1;
}

label {
font-weight:600;
margin-bottom:5px;
}

input, select, textarea, .dropdown-selected , .form-multi-select-input-group {
padding:12px;
border-radius:8px;
border:1px solid #ccc;
font-size:15px;
padding: 8px 14px;
font-size: 15px;
border-radius: 8px;
border: 1.5px solid #d1c7b5;
background-color: #fdf8f4;;
outline: none;
cursor: pointer;
}
.form-multi-select-input-group {padding:5px;}

textarea {
resize:none;
}

.note {
font-size:12px;
color:#888;
}


.input-group .submit-btn:hover {background: #000;color:#fff;}

.wizard-footer {
margin-top: 30px;
text-align: right;
display: flex;
align-items: flex-end;
width: 100%;
gap: 10px;
justify-content: end;

}

.next-btn {
padding: 6px 14px;
font-size: 14px;
background: var(--raahni-purple);
color:white;
border:none;
border-radius:8px;
cursor:pointer;
}

.next-btn:hover {
background: var(--raahni-purple); 
opacity: 0.9;
}

.cert-row {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 10px;
}

.cert-upload {
flex: 1;
}

.add-cert-btn {
margin-top: 10px;
padding: 8px 20px;
background: #008d84;
color: #fff;
border: none;
border-radius: 6px;
cursor: pointer;
}

.add-cert-btn:hover {
background: #006f66;
}

.remove-cert {
background: #ff4d4d;
color: #fff;
border: none;
border-radius: 50%;
width: 30px;
height: 30px;
cursor: pointer;
font-size: 16px;
line-height: 1;
}

.remove-cert:hover {
background: #d93636;
}

.week-nav {
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 25px;
gap: 20px;
}

.week-range {
background: #f1f3f7;
padding: 10px 25px;
border-radius: 8px;
font-weight: 600;
font-size: 18px;
}

.week-btn {
background: none;
border: none;
font-size: 20px;
cursor: pointer;
padding: 5px 10px;
}

.availability-table {
display: flex;
flex-direction: column;
gap: 15px;
}

.day-row {
display: flex;
align-items: center;
gap: 15px;
flex-wrap: wrap;
}

.day-name {
width: 120px;
font-weight: 600;
}

.time-slot {
display: flex;
align-items: center;
gap: 10px;
}

.time-slot input {
padding: 8px 12px;
border-radius: 6px;
border: 1px solid #ccc;
width: 150px;
}

.add-slot-btn {
background: #e5f6ff;
border: 1px solid #b2e0ff;
color: #0083c8;
font-weight: bold;
padding: 5px 10px;
border-radius: 6px;
cursor: pointer;
font-size: 18px;
}

.add2 {margin-top:30px;}

/* Document Upload Grid */
.doc-row {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 10px;
}

.doc-row select,
.doc-row input[type="file"] {
flex: 1;
}

/* Remove Button */
.remove-doc {
background: #fff1f1;
border: 1px solid #d33;
color: #d33;
font-size: 14px;
padding: 3px 7px;
cursor: pointer;
border-radius: 4px;
}

.remove-doc:hover {
background: #d33;
color: white;
}

/* Add More Button */
.add-doc-btn {
margin-top: 0px;
width: 100%;
display: block;
padding: 10px;
text-align: center;
border: 1px solid #000;
background: #f8f8f8;
cursor: pointer;
border-radius: 6px;
}

.add-doc-btn:hover {
background: #eee;
}

/* Mobile Fix */
@media (max-width: 768px) {
.doc-row {
flex-direction: column;
align-items: flex-start;
}

.remove-doc {
align-self: flex-end;
margin-top: -8px;
}
}

.doc-upload {padding: 8px;}
.upload-row {
display: flex;
align-items: center;
gap: 15px;
margin-bottom: 15px;
}

.label {
font-weight: bold;
margin-bottom: 8px;
display: block;
}



.upload-box {
padding: 8px 14px;
font-size: 15px;
border-radius: 8px;
border: 1.5px solid #d1c7b5;
background-color: #fdf8f4;
outline: none;
}

.upload-box:hover { opacity: 0.85; }

input[type="file"] {
display: none;
}

.btn-add,
.btn-remove {
width: 32px;
height: 32px;
border: none;
cursor: pointer;
border-radius: 5px;
font-size: 20px;
color: #fff;
display: flex;
justify-content: center;
align-items: center;
}

.btn-add { background: #3c3282; }
.btn-remove { background: #d9534f; }

.file-name {
font-size: 13px;
color: #444;
max-width: 250px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.upload-row.t1 div:nth-child(1) {width:180px;     font-size: 14px;}
.upload-row.t1 div:nth-child(2) {width:250px;     font-size: 14px;}
.upload-row.t1 select {width:100%;}
.upload-box {width:auto;}
.upload-row {align-items: baseline;}

/* Grid for upper part of step */
.form-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap:0 24px;

}

.form-group {
display: flex;
flex-direction: column;
gap: 6px;
}

.form-group label {
font-weight: 600;
font-size: 14px;
}

/* Card-style certification section */
.cert-section.card {
border-radius: 12px;
border: 1px solid #e3e6eb;
box-shadow: 0 3px 8px rgba(15, 23, 42, 0.06);
background: #fdf8f4;
}
.cert-section.card .form-group  {width:92%;}
.cert-section .form-select {padding: 8px 10px;  font-size: 12px;}

/* Title spacing */
.cert-title {
font-size: 18px;
font-weight: 700;
margin-bottom: 18px;
}

/* Two-column layout for doc type + file upload */
.cert-upload-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 20px;
margin-bottom: 16px;
}

/* Top action buttons (Reset / Upload) */
.cert-actions-top {
display: flex;
justify-content: flex-end;
gap: 10px;
}

/* Uploaded list */
.uploaded-title {
font-size: 14px;
font-weight: 600;
margin-bottom: 14px;
}

.uploaded-cert-list {
display: flex;
flex-direction: column;
gap: 12px;
font-size: 12px;
}

/* Single uploaded row */
.uploaded-cert-item {
display: block;
justify-content: space-between;
align-items: center;
padding: 12px 16px;
border-radius: 10px;
border: 1px solid #e5e7eb;
background-color: #fafafa;
gap: 16px;
}

.uploaded-cert-item .cert-meta {
display: flex;
flex-direction: column;
gap: 2px;
}

.cert-doc-type {
font-weight: 600;
font-size: 14px;
}

.cert-file-name {
font-size: 13px;
color: #4b5563;
}

.cert-updated {
font-size: 12px;
color: #9ca3af;
}

/* Right-side buttons */
.cert-actions {
display: flex;
gap: 3px;
flex-shrink: 0;
}

.cert-actions button {padding:5px; font-size:10px;}

/* Responsive tweak */
@media (max-width: 576px) {
.uploaded-cert-item {
flex-direction: column;
align-items: flex-start;
}

.cert-actions {
width: 100%;
justify-content: flex-start;
flex-wrap: wrap;
}
}

.profile-upload-wrapper {
display: flex;
align-items: center;
gap: 16px;
}

.profile-avatar {
width: 48px;
height: 48px;
border-radius: 50%;
overflow: hidden;
background: #f3f3f3;
flex-shrink: 0;
border:1px solid #ccc;
}

.profile-avatar img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.profile-actions {
display: flex;
flex-direction: column;
gap: 4px;
}

.profile-buttons .btn + .btn {
margin-left: 0px;
}

.profile-buttons .btn {padding: 5px 8px;border-radius: 7px;   background: #e3b55a;
border: 1px solid #e3b55a;  color: #000; font-size: 10px;}
.profile-buttons .btn.text-danger {background:none; border:0;}
.profile-help {
font-size: 12px;
color: #6c757d;
}

.error-msg {
font-size: 12px;
color: #d9534f;
}

.has-error {
outline: 1px solid #d9534f;
}

@media (max-width: 576px) {
.profile-upload-wrapper {
align-items: flex-start;
}
}


@media (max-width: 991px) {
.topbar-inner {padding-inline: 12px;font-size: 11px;}
.main-header-inner {display: none;}
.main-header-mobile {display: flex; width:100%;}
.astro-form .form-grid , .astro-form .form-group {gap: 5px !important; }
.topbar {display: none;}
.site-logo img {height: 44px;}
.mobile-cta {display: none;}
.mShow {display: inline;}
.mHide {display: none;}
.footer-bottom {display: inline-grid;}
.rightBlankSection {    padding: 15px 10px;}
.upload-row {display: inline-grid;}
.wrapBtn {display:flex;gap: 7px;}
.wizard-container {    padding: 10px;}
.raahni-footer .input-group {    align-items: baseline; display: block;}
.raahni-footer .submit-btn {margin-top:15px;}
.otp_sighin {padding:0 !important;}
.flogo1 {padding: 50px 15px 30px; }
.back-to-top {    right: 0px;}
.mlefqblock {padding-left:20px;}

}

select {
padding-right: 30px; /* Increase right padding to move arrow right */
background-position: right 10px center; /* Position arrow 10px from right edge */
background-repeat: no-repeat;
}

select {
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
padding-right: 30px;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 10px center; /* Arrow positioned 10px from right */
}


/* Overlay */
.profile-modal-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.75);
display: none;
align-items: center;
justify-content: center;
z-index: 9999;
}

/* Popup box */
.profile-modal {
background: #fff;
padding: 15px;
border-radius: 12px;
max-width: 380px;
width: 90%;
position: relative;
text-align: center;
animation: fadeIn 0.3s ease-in-out;
}

/* Preview image */
.profile-modal img {
width: 100%;
border-radius: 12px;
}

/* Close button */
.close-preview {
position: absolute;
top: -10px;
right: -10px;
background: #936d42;
color: #fff;
width: 26px;
height: 26px;
font-size: 20px;
border-radius: 50%;
line-height: 24px;
cursor: pointer;
text-align: center;
}

@keyframes fadeIn {
from {opacity: 0; transform: scale(0.9);}
to {opacity: 1; transform: scale(1);}
}

.uploadSec small.text-muted {font-size:12px;}
.attachDoc {display: flex;  gap: 10px;  padding: 5px 10px;  border: 1px solid #ccc;  border-radius: 5px;background: #fff; }
.attached-file-display {display: flex;  align-items: center; gap: 30px;position:relative;}
.remove-attached-file {background: none;width: 17px; height: 18px; font-size: 10px;border-radius: 50%; position: absolute; left: 0; top: 0px;}
.attached-file-display .file-info {display: flex; gap: 5px; align-items: center;justify-content: center;font-size: 11px;}
.cert-actions-top .btn-primary {background: var(--raahni-purple);}
.cert-actions-top button {padding:5px; font-size:12px;}



/* ----- WIZARD PROGRESS BAR ----- */
.wizard-progress {
margin: auto;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
}

.wizard-progress-track {
position: relative;
height: 4px;
background: #e5dfd0; /* light beige like Raahni */
border-radius: 999px;
overflow: hidden;
}

.wizard-progress-bar {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 0;
background: #3C3282; /* Raahni purple */
transition: width 0.3s ease;
}

.wizard-progress-steps {
display: flex;
justify-content: space-between;
margin-top: 5px;
font-size: 12px;
color: #ccc;
gap: 20px;
display: grid;
}

.wizard-progress-steps span {    
display: flex;
align-items: center;
gap: 15px;
font-size:16px;
cursor:pointer;

}

.wizard-step-dot label {
width: 26px;
height: 26px;
border-radius: 50%;
border: 0px solid #c8b079; /* gold-ish */
display: flex;
align-items: center;
justify-content: center;
background: #fff;
font-weight: 600;
transition: all 0.3s ease;
margin-bottom:0;
    line-height: 0;
}

.wizard-step-dot.active label {
background: #f5b947;
color: #000;
border-color: #3C3282;
box-shadow: 0 0 0 3px rgba(60, 50, 130, 0.15);
}


/*login */

.login-container {
padding: 120px 30px;
max-width: 600px;
width: 100%;
margin: auto;
height: 100%;
display: flex;
width: 100%;
justify-content: center;
align-items: center;

}

.login-container .input-group {gap:0}
.login-container .header {text-align: center;margin-bottom: 30px; display:block; background:none;}

.header h1 {
font-size: 28px;
color: #333;
margin-bottom: 10px;
font-weight: 600;
}

.header p {
color: #666;
font-size: 14px;
}

.checkbox-container {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 25px;
}

.checkbox-container input[type="checkbox"] {
width: 20px;
height: 20px;
margin-right: 8px;
cursor: pointer;
accent-color: #3c3282;
margin:0 10px;
}

.checkbox-container label {
color: #333;
font-size: 15px;
cursor: pointer;
user-select: none;
margin:0;
}

.input-group {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 20px;
}

.country-selector {
display: flex;
align-items: center;
gap: 8px;
padding: 14px 16px;
border: 1px solid #ddd;
border-radius: 30px;
background: white;
cursor: pointer;
min-width: 85px;
}

.country-selector img {
width: 24px;
height: 18px;
}

.country-selector span {
font-size: 18px;
}

.input-field {
flex: 1;
padding: 14px 20px;
border: 1px solid #ddd;
border-radius: 30px;
font-size: 15px;
outline: none;
transition: border-color 0.3s;
}

.input-field:focus {
border-color: #3c3282;
}

.input-field::placeholder {
color: #999;
}

.btn-request-otp {
background:#3c3282;
color: white;
border: 1px solid #3c3282;
padding: 14px 35px;
border-radius: 30px;
font-size: 15px;
font-weight: 500;
cursor: pointer;
transition: transform 0.2s, box-shadow 0.2s;
white-space: nowrap;
}

.btn-request-otp:hover {
transform: inherit;
box-shadow: 0 4px 12px rgba(124, 95, 184, 0.3);
}

.btn-request-otp:active {
transform: translateY(0);
}

/* OTP Screen Styles */
.otp-screen {
display: none;
}

.otp-screen.active {
display: block;
}

.otp-header {
text-align: center;
margin-bottom: 30px;
}

.otp-header h2 {
font-size: 26px;
color: #333;
margin-bottom: 10px;
font-weight: 600;
}

.otp-header p {
color: #666;
font-size: 14px;
}

.otp-header p span {
color: #3c3282;
font-weight: 500;
}

.otp-inputs {
display: flex;
justify-content: center;
gap: 12px;
margin-bottom: 20px;
}

.otp-input {
width: 50px;
height: 50px;
text-align: center;
font-size: 24px;
font-weight: 500;
border: 2px solid #3c3282;
border-radius: 8px;
outline: none;
transition: all 0.3s;
}

.otp-input:focus {
border-color: #3c3282;
box-shadow: 0 0 0 3px rgba(124, 95, 184, 0.1);
}

.otp-input:not(:placeholder-shown) {
border-color: #3c3282;
}

.resend-text {
text-align: center;
color: #666;
font-size: 14px;
margin-bottom: 20px;
}

.resend-text span {
color: #3c3282;
font-weight: 500;
}

.btn-verify {
width: 100%;
background: #e0e0e0;
color: #999;
border: none;
padding: 14px;
border-radius: 8px;
font-size: 16px;
font-weight: 500;
cursor: not-allowed;
transition: all 0.3s;
margin-bottom: 15px;
}

.btn-verify.active {
background: #3c3282;
color: white;
cursor: pointer;
}

.btn-verify.active:hover {
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(124, 95, 184, 0.3);
}

.btn-change {
width: 100%;
background: white;
color: #3c3282;
border: 2px solid #3c3282;
padding: 14px;
border-radius: 8px;
font-size: 16px;
font-weight: 500;
cursor: pointer;
transition: all 0.3s;
}

.btn-change:hover {
background: #f9f7fc;
}

.login-screen {
display: block;
}

.login-screen.hidden {
display: none;
}
.login-screen .country-selector {padding:12px 16px;}


@media (max-width: 480px) {
.login-container {
padding: 30px 20px;
}

.header h1 {
font-size: 24px;
}

.otp-input {
width: 40px;
height: 40px;
font-size: 16px;
}

.input-group {
flex-direction: column;
}

.country-selector {
width: 100%;
justify-content: center;
}

.btn-request-otp {
width: 100%;
}
}


.leftImageSection.v1 { align-items: flex-start;}
.rightBlankSection.v1 { align-items: flex-start !important;}
.wizard-step-dot.active {color:#fff;     font-weight: 700;}

.raahni-footer .newsletter-input {border-color: #aaa59d; background-color: #fff !important; color: #433e37 !important; border-radius: 0;
padding: 25px 24px;  font-weight: 400; font-family: Mulish, sans-serif; border-width: 1px;   border-style: solid; font-size: 18px;}

.raahni-footer .submit-btn {background: #000;    color: #fff;    border-radius: 0; padding: 15px 23px; width: 120px; font-family: Mulish, sans-serif;
font-weight: 700;    font-size: 13px;    letter-spacing: 0.1em;}
.raahni-footer .sumbit-m-text{position:relative; top: -2px;}
.raahni-footer .sumbit-m-text:before {    content: ""; position: absolute;left: 0; bottom: -4px; height: 1px; width: 0%;    background: #936d42;    transition: width 0.35s ease;}    
.raahni-footer .submit-btn:hover  .sumbit-m-text:before {width:100%;}
.raahni-footer .input-group {gap:0;    margin-bottom: 5px;     flex-wrap: nowrap;}
.raahni-footer .container {padding-left: 100px; padding-right: 100px; padding-top: 40px;padding-bottom: 20px; width:100%; max-width: 100%;}
.raahni-footer p a:hover {text-decoration:none;}
.qodef-grid-inner .qodef-grid-item:nth-child(1) {width:287px; padding:0; padding-bottom:50px;}
.qodef-grid-inner .qodef-grid-item:nth-child(2) {width:287px; padding:0}
.qodef-grid-inner .qodef-grid-item:nth-child(3) {width:253px; padding:0}
.qodef-grid-inner .qodef-grid-item:nth-child(4) {width:322px; padding:0}
.qodef-grid-inner .qodef-grid-item:nth-child(1) .fLogo {max-width: 234px;  position: absolute;  bottom: 0;}

@media (max-width: 650px) {
.raahni-footer .container {padding-left: 7%; padding-right: 7%;padding-top: 40px; padding-bottom: 60px;}
.qodef-grid-inner .qodef-grid-item:nth-child(1) {width:100%;}
.qodef-grid-inner .qodef-grid-item:nth-child(2) {width:100%;}
.qodef-grid-inner .qodef-grid-item:nth-child(3) {width:100%;}
.qodef-grid-inner .qodef-grid-item:nth-child(4) {width:100%;}
.raahni-footer .container .row { margin-right: 0;    margin-left: 0;}
.qodef-grid-inner .qodef-grid-item:nth-child(2), .qodef-grid-inner .qodef-grid-item:nth-child(3) {padding-bottom:50px;}
}


.fullscreen-search-holder {
background-image: url(https://raahni.com/wp-content/uploads/2023/05/search-img2.jpg);
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
background-color: #070506;
z-index: 100;
display:none;
}
.fullscreen-search-holder.open {display:block;}

.fullscreen-search-holder .qodef-svg--rays {
color: #fdf8f4;
margin-bottom: 27px;
}

.fullscreen-search-holder .qodef-fullscreen-search-title {
font-family: Forum, sans-serif;
font-weight: 400;
text-transform: uppercase;
font-size: 68px;
line-height: 1.0588235294em;
letter-spacing: .05em;
color: #fff;
font-size: 54px;
line-height: 1.1481481481em;
width: 900px;
display: flex;
text-align: center;
max-width: 100%;
margin:auto;
margin-bottom: 52px;
}

.fullscreen-search-holder .qodef-m-form {
position: relative;
width: 720px;
max-width: 100%;
display: grid;
grid-template-columns: minmax(0, 100%) minmax(0, auto);  
margin: auto;
}

.fullscreen-search-m-inner {text-align:center; padding-top: 150px;}
.fullscreen-search-holder .qodef-m-form input {
margin: 0;    font-size: 15px; color: #c3beb6; line-height: 1.6em; background: #070506 !important;    padding: 0 29px; border-color: #6a6255;
border-radius:0; opacity:1;}
.fullscreen-search-holder .qodef-m-form input::placeholder  {color: #c3beb6;}
.fullscreen-search-holder .qodef-m-form input:focus {border:1px solid #ca9d75;color: #c3beb6; box-shadow:none;}
.fullscreen-search-holder .qodef-m-form a.btn {
position: relative;
display: inline-flex;
align-items: center;
width: auto;
font-family: Mulish, sans-serif;
font-weight: 700;
font-size: 13px;
line-height: 1.692307;
color: #070506;
letter-spacing: .1em;
margin: 0;
text-decoration: none;
text-transform: uppercase;
border-radius: 0;
outline: 0;
transition: color .3s ease-out, background-color .3s ease-out, border-color .3s ease-out;
cursor: pointer;
padding: 19px 33px;

color: #000;
background-color: #fff;
border: 1px solid transparent;
}
.fullscreen-search-holder .qodef-m-form a.btn .qodef-m-icon {position: relative;top: 3px;   left: -10px;}
.fullscreen-search-holder .qodef-m-form a.btn .qodef-m-icon svg {color:#936d42;}

@media only screen and (max-width: 1440px) {
.fullscreen-search-holder .qodef-fullscreen-search-title {
font-size: 58px;
}
}
@media (max-width: 991px) {
.raahni-footer .submit-btn {width:150px;}
.mobile-nav-link:hover {color:#fff; text-decoration:none;} 
.mobile-menu-overlay {
position: fixed;
top: 0;
right: -410px; /* Start off-screen to the right */
width: 410px;
height: 100vh;
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 100px 25px !important;
background-color: #070506;
overflow-y: auto;
overflow-x: hidden;
z-index: 9999;
transition: right 0.6s cubic-bezier(0.77, 0, 0.175, 1);
background-image: url(https://raahni.com/wp-content/uploads/2023/04/side-area-background-1.jpg);
background-repeat: no-repeat;
background-size: cover;
}
.mobile-menu-overlay.open {right: 0; width:100%; }
.mobile-submenu li {font-size:16px;}
.mobile-submenu a span {display:none;}

}

.raahni-footer .col-md-3:nth-child(1) {}
.raahni-footer .col-md-3:nth-child(2) {width:265px;}
.raahni-footer .col-md-3:nth-child(3) {width:260px;}
.raahni-footer .col-md-3:nth-child(4) {width:322px;}
.mobile-close-btn {position: absolute; right: 20px; top: 10px;}
@media (max-width: 991px) {
.raahni-footer .newsletter-input {width:100%;}
.leftImageSection .carousel .carousel-indicators {bottom:-27px; }
.country-selector, .input-field, .btn-request-otp {border-radius: 30px !important;}
.login-container .input-group {    gap: 18px;}
.raahni-footer .col-md-3:nth-child(2) {width: 100%; margin-top: 50px;}
.raahni-footer .col-md-3:nth-child(3) {width: 100%; margin-top: 50px;}
.raahni-footer .col-md-3:nth-child(4) {width: 100%; margin-top: 50px;}
}

.astbg1 { width: 100%;   height: 100%;  padding: 50px !important; background:url(../images/formbBG.png) no-repeat;  background-size: cover;}
.astbg1 .shadow1 {border: 1px solid #d8d3c4; padding: 40px;  border-radius: 12px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);}     
.astbg2 {  width: 100%;   height: 100%; background-position: 0 100%; background-size: cover; padding: 50px !important; background:#fff; }    










/*-----------------------*/
/* Input Error Styling */
.input-error {
color: #fff;
font-size: 13px;
margin-top: 5px;
display: flex;
align-items: center;
gap: 5px;
animation: slideDown 0.3s ease;
position: fixed;
top: 10px;
right: 0;
background: #f5b947;
padding: 10px;
border-radius: 10px 0 0 10px !important;
padding-right:40px;
}

.input-error::before {
content: '⚠';
font-size: 14px;
}

input.error {
border-color: #dc3545 !important;
animation: shake 0.3s ease;
}

@keyframes slideDown {
from {
opacity: 0;
transform: translateY(-5px);
}
to {
opacity: 1;
transform: translateY(0);
}
}

@keyframes shake {
0%, 100% { transform: translateX(0); }
25% { transform: translateX(-5px); }
75% { transform: translateX(5px); }
}

/* Login Stepper Indicator */
.login-stepper {
display: flex;
align-items: center;
justify-content: center;
gap: 15px;
margin-bottom: 30px;
}

.stepper-step {
display: flex;
align-items: center;
gap: 8px;
}

.stepper-circle {
width: 35px;
height: 35px;
border-radius: 50%;
background: #e9ecef;
color: #6c757d;
display: flex;
align-items: center;
justify-content: center;
font-weight: 600;
font-size: 14px;
transition: all 0.3s ease;
}

.stepper-circle.active {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
color: white;
box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
}

.stepper-circle.completed {
background: #28a745;
color: white;
}

.stepper-circle.completed::before {
content: '✓';
}

.stepper-line {
width: 40px;
height: 2px;
background: #e9ecef;
transition: all 0.3s ease;
}

.stepper-line.active {
background: linear-gradient(90deg, #667eea 0%, #764ba2 100%);
}

.stepper-label {
font-size: 12px;
color: #6c757d;
margin-top: 5px;
text-align: center;
}

.stepper-step.active .stepper-label {
color: #667eea;
font-weight: 600;
}

.otp-message {
margin-top: 10px;
padding: 10px 15px;
border-radius: 4px;
font-size: 14px;
font-weight: 500;
text-align: center;
animation: slideDown 0.3s ease;
position: fixed;
top: 10px;
right: 0;
background: #f5b947;
padding: 10px;
padding-right:40px;
border-radius: 10px 0 0 10px !important;
}

.otp-message.success {
background: #f5b947;
color: #fff;

}

.otp-message.error {
background-color: #f8d7da;
color: #721c24;
border: 1px solid #f5c6cb;
}
.flex.type02 {display: flex;    justify-content: left;    align-items: center; margin-bottom: 15px;}
.flex.type02 input {width: auto; margin-top: 0;   margin-right: 15px;}
.flex.type02 label {margin-bottom: 0;}
.form-multi-select-options {font-size: 12px !important;}
/*input:required, select:required, textarea:required {*/
/*    border: 1px solid rgb(220, 53, 69);*/
/*}*/



.form-group.filled input:required {border:1.5px solid #d1c7b5;}

/*-----------------------*/


/* ============================================
CUSTOM NOTIFICATION STYLES (Stepper-like)
============================================ */

.custom-notification , .validation-toast {
position: fixed;
top: 10px;
right: 20px !important;
/*transform: translateX(-50%);*/
background: white;
border-radius: 12px;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
padding: 16px 20px;
display: flex;
align-items: center;
justify-content: space-between;
z-index: 10000;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
background: #f5b947 !important;
padding: 10px !important;
padding-right:40px !important;
border-radius: 10px 0 0 10px !important;
color:#fff;
border-left: 0 !important;

}

.custom-notification.show {
top: 10px;
}

.notification-content {
display: flex;
align-items: center;
gap: 12px;
flex: 1;
}

.notification-icon {
font-size: 22px;
display: none;
align-items: center;
justify-content: center;

}

.notification-message {
font-size: 14px;
font-weight: 500;
color: #333;
line-height: 1.4;
}

.notification-close {
background: none;
border: none;
display:none !important;
color: #666;
cursor: pointer;
padding: 4px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 4px;
transition: all 0.2s;
}

.notification-close:hover {
background: #f0f0f0;
color: #333;
}

/* Notification Types */
.custom-notification.success {
border-left-color: #28a745;
}

.custom-notification.success .notification-icon {
color: #28a745;
}

.custom-notification.error {
border-left-color: #dc3545;
}

.custom-notification.error .notification-icon {
color: #dc3545;
}

.custom-notification.warning {
border-left-color: #ffc107;
}

.custom-notification.warning .notification-icon {
color: #ffc107;
}

.custom-notification.info {
border-left-color: #17a2b8;
}

.custom-notification.info .notification-icon {
color: #17a2b8;
}

/* Confirmation Notification */
.custom-notification.confirm {
border-left-color: #3c3282;
flex-direction: column;
align-items: stretch;
gap: 12px;
}

.custom-notification.confirm .notification-icon {
color: #3c3282;
}

.notification-actions {
display: flex;
gap: 8px;
justify-content: flex-end;
}

.notification-btn {
padding: 8px 16px;
border: none;
border-radius: 6px;
font-size: 13px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s;
}

.btn-cancel {
background: #f0f0f0;
color: #666;
}

.btn-cancel:hover {
background: #e0e0e0;
}

.btn-confirm {
background: #dc3545;
color: white;
}

.btn-confirm:hover {
background: #c82333;
}

/* Mobile Responsive */
@media (max-width: 576px) {
.custom-notification {
min-width: calc(100% - 32px);
max-width: calc(100% - 32px);
left: 16px;
transform: translateX(0);
}

.custom-notification.show {
top: 16px;
}

.notification-message {
font-size: 13px;
}
}

.validation-toast .toast-close {top:5px !important; background:#fff !important;}

/* Required indicator - visible by default */
.required-indicator {
color: #dc3545;
font-size: 12px;
float: right;
font-weight: 600;
display: inline !important; /* Show by default */
}

/* Hide required when field is filled or valid */
.form-group.filled .required-indicator,
.form-group.valid .required-indicator {
display: none !important;
}

/* Show required when field has error */
.form-group.has-error .required-indicator {
display: inline !important;
}
.headingFormtl {position: absolute;  left: 0; font-size: 25px; right: 0; }
.form-group.has-error .dropdown-selected {border-color:#dc3545;}




.form-multi-select-cleaner::before, .form-multi-select-indicator::before {content: "\25BC"; color: #000; font-size: 12px; }
.form-multi-select-indicator::before {background-color:transparent; -webkit-mask:inherit; }
.custom-dropdown {position: relative;width: 100%;}
.form-multi-select-cleaner::before {font-size: 14px; background: black;}

.dropdown-selected {
/*padding: 10px 15px;*/
/*border: 1px solid #ccc;*/
/*border-radius: 4px;*/
/*background: #fff;*/
/*cursor: pointer;*/
/*position: relative;*/
/*transition: all 0.3s ease;*/
}

.dropdown-selected:hover {
border-color: #999;
}

.dropdown-selected::after {
content: "\25BC";
position: absolute;
right: 15px;
top: 50%;
transform: translateY(-50%);
font-size: 12px;
color: #555;
}

.dropdown-selected.active::after {
transform: translateY(-50%) rotate(180deg);
}

.dropdown-options {
position: absolute;
top: 100%;
left: 0;
right: 0;
background: #fff;
border: 1px solid #ccc;
border-top: none;
border-radius: 0 0 4px 4px;
max-height: 200px;
overflow-y: auto;
display: none;
z-index: 1000;
box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.dropdown-options.show {
display: block;
}

.dropdown-option {
padding: 10px 15px;
cursor: pointer;
transition: background 0.2s ease;
font-size: 12px;
}

.dropdown-option:hover {
background: #f5f5f5;
}

.dropdown-option.selected {
background: #337ab7;
color: #fff;
}

.toast-message strong {font-size:14px;}

@media (min-width: 1400px) {
.mainSection-wrap {max-width:80%;}
}
@media (max-width: 991px) {
.astbg1 {padding: 20px !important;}
.astbg2 {padding: 20px !important;}
.quote-text {font-size: 15px;}
.headingFormtl {position: relative; font-size: 18px; padding-top:20px;}
.rightBlankSection .headingFormtl {position: absolute;}

.login-container {padding-top:0;}
.otp-screen {padding-bottom: 30px;}
.leftImageSection {height:300px;}
.author { font-size: 16px;}
.tab-title { font-size: 15px; top: 72px; right: 12px;}
.wizard-container { padding: 0;}
.upload-row.t1 div:nth-child(1) {    width: 115px; }
.upload-row .upload-box {font-size:0; margin: 0; padding: 5px 25px;}
.upload-row {display: flex; align-items: center; align-items: flex-start;}
.upload-row.t1 div:nth-child(2) {width:auto;}
.upload-row.t1 select {width: 100%;  font-size: 10px;   padding-left: 6px;}
.back-btn {    font-size: 12px;}
.form-group label .error-message {display:inline-block !important;}
.leftImageSection .carousel  {height:auto;}
.wizard-footer {position: fixed; bottom: 0;  left: 0;  width: 100%;  padding: 20px; background: #fdf8f4;
    z-index: 999;}
.input-error { padding-right:20px;}
}


/* Wizard Progress Step Dots - Enhanced States */
.wizard-step-dot {
    cursor: pointer;
    transition: all 0.3s ease;
    opacity: 0.6;
}

.wizard-step-dot:hover {
    opacity: 0.8;
    transform: translateY(-2px);
}

.wizard-step-dot.active {
    opacity: 1;
    font-weight: 600;
}

.wizard-step-dot.active label {
    background: #f5b947;
    color: white;
}

.wizard-step-dot.completed {
    opacity: 1;
    cursor: pointer;
    position: relative;
}

.wizard-step-dot.completed label {
    background: #4caf50; /* Green for completed */
    color: white;
}

/*.wizard-step-dot.completed::after {*/
/*    content: '✓';*/
/*    position: absolute;*/
/*    top: 50%;*/
/*    left: 50%;*/
/*    transform: translate(-50%, -50%);*/
/*    font-size: 10px;*/
/*    color: white;*/
/*    font-weight: bold;*/
/*}*/

/* Prevent clicking on future steps */
.wizard-step-dot:not(.active):not(.completed) {
    cursor: not-allowed;
    opacity: 0.4;
}






/* Terms and Conditions Checkbox Wrapper */
.terms-checkbox-wrapper {
    margin-top: 20px;
    padding: 15px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    text-align: center;
    display: contents;
    justify-content: center;
}
.terms-checkbox-wrapper .terms-checkbox {margin:0 !important;}

.terms-checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
    user-select: none;
}

.terms-checkbox {
    width: 20px;
    height: 20px;
    min-width: 20px;
    cursor: pointer;
    accent-color: #7c5fb8;
    margin-top: 2px;
}

.checkbox-text {
    color: #666;
    font-size: 14px;
    line-height: 1.5;
}

.terms-link {
    color: #3c3282;
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}

.terms-link:hover {
    color: #3c3282;
    opacity:0.5;
    text-decoration: underline;
}

/* Terms and Conditions Modal */
.terms-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(5px);
    z-index: 99999;
    animation: fadeIn 0.3s ease;
}

.terms-modal.open {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.terms-modal-content {
    background: white;
    border-radius: 12px;
    max-width: 700px;
    width: 100%;
    max-height: 85vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 10px 50px rgba(0, 0, 0, 0.3);
    animation: slideUp 0.3s ease;
}

@keyframes slideUp {
    from {
        transform: translateY(50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.terms-modal-header {
    padding: 20px 25px;
    border-bottom: 2px solid #f0f0f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(135deg, #3c3282 0%, #7c5fb8 100%);
    border-radius: 12px 12px 0 0;
}

.terms-modal-header h2 {
    color: white;
    margin: 0;
    font-size: 24px;
    font-weight: 700;
}

.terms-close-btn {
    background: rgba(255, 255, 255, 0.2);
    border: none;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    color: white;
    font-size: 20px;
}

.terms-close-btn:hover {
    background: rgba(255, 255, 255, 0.3);
    transform: rotate(90deg);
}

.terms-modal-body {
    padding: 30px 25px;
    overflow-y: auto;
    flex: 1;
    position: relative;
    color: #333;
    line-height: 1.8;
}

.terms-modal-body h3 {
    color: #3c3282;
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 15px;
    font-weight: 700;
}

.terms-modal-body h4 {
    color: #7c5fb8;
    font-size: 16px;
    margin-top: 25px;
    margin-bottom: 12px;
    font-weight: 600;
}

.terms-modal-body p {
    margin-bottom: 15px;
    color: #555;
    font-size: 14px;
}

.terms-modal-body ul {
    padding-left: 20px;
    margin-bottom: 20px;
}

.terms-modal-body ul li {
    margin-bottom: 12px;
    color: #555;
    font-size: 14px;
}

.terms-modal-body strong {
    color: #3c3282;
    font-weight: 600;
}

/* Custom Scrollbar for Terms Modal */
.terms-modal-body::-webkit-scrollbar {
    width: 8px;
}

.terms-modal-body::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.terms-modal-body::-webkit-scrollbar-thumb {
    background: #7c5fb8;
    border-radius: 10px;
}

.terms-modal-body::-webkit-scrollbar-thumb:hover {
    background: #3c3282;
}

/* Scroll Indicator */
.scroll-indicator {
    position: sticky;
    bottom: -35px;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(255, 255, 255, 1) 70%, rgba(255, 255, 255, 0));
    padding: 20px 0 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    color: #7c5fb8;
    font-weight: 600;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.scroll-indicator.hidden {
    opacity: 0;
}

.scroll-indicator i {
    font-size: 24px;
    animation: bounce 2s infinite;
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
    60% {
        transform: translateY(-5px);
    }
}

.terms-modal-footer {
    padding: 20px 25px;
    border-top: 2px solid #f0f0f0;
    background: #f9f9f9;
    border-radius: 0 0 12px 12px;
}

.btn-accept-terms {
    width: 100%;
    padding: 15px;
    background: linear-gradient(135deg, #3c3282 0%, #7c5fb8 100%);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.btn-accept-terms:hover:not(:disabled) {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(124, 95, 184, 0.4);
}

.btn-accept-terms:disabled {
    background: #ccc;
    cursor: not-allowed;
    opacity: 0.6;
}

.btn-accept-terms:not(:disabled) {
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(124, 95, 184, 0.7);
    }
    50% {
        box-shadow: 0 0 0 10px rgba(124, 95, 184, 0);
    }
}

/* Responsive Design */
@media (max-width: 768px) {
    .terms-modal {
        padding: 10px;
    }
    
    .terms-modal-content {
        max-height: 90vh;
    }
    
    .terms-modal-header h2 {
        font-size: 20px;
    }
    
    .terms-modal-body {
        padding: 20px 15px;
    }
    
    .terms-modal-body h3 {
        font-size: 18px;
    }
    
    .terms-modal-body h4 {
        font-size: 15px;
    }
    
    .terms-modal-body p,
    .terms-modal-body ul li {
        font-size: 13px;
    }
    
    .terms-modal-footer {
        padding: 15px;
    }
    
    .btn-accept-terms {
        padding: 12px;
        font-size: 14px;
    }
}

/* Error state for checkbox */
.terms-checkbox-wrapper.error {
    border: 2px solid #dc3545;
    animation: shake 0.5s;
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
    20%, 40%, 60%, 80% { transform: translateX(5px); }
}

.terms-error-message {
    color: #dc3545;
    font-size: 13px;
    margin-top: 8px;
    display: block;
    animation: fadeIn 0.3s ease;
}

@media (max-width: 768px) {
.custom-notification , .validation-toast {
 right:0 !important;   
}
.dateofBirth {width:100% !important;}
.back-to-top {bottom: 70px;}
.profile-actions {margin-top: 8px;}
}

.btn-verify-check {
width: 100%;
background: var(--raahni-purple);
color: #FFF;
border: none;
padding: 14px;
border-radius: 8px;
font-size: 16px;
font-weight: 500;
cursor: not-allowed;
transition: all 0.3s;
margin-bottom: 15px;
}

.btn-verify-check.active {
background: #3c3282;
color: white;
cursor: pointer;
}

.btn-verify-check.active:hover {
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(124, 95, 184, 0.3);
}


.wizard-step-dot {
    pointer-events: none;
    opacity: 0.4;
    cursor: not-allowed;
}

/* Dots unlocked */
.dot-navigation-enabled .wizard-step-dot {
    pointer-events: auto;
    opacity: 1;
    cursor: pointer;
}





.back-btn-step {
    background: none;        /* remove background */
    border: none;            /* remove border */
    padding: 0;
    margin-right: 12px;
    font-size: 14px;
    font-weight: 500;
    color: #333;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}

/* Hover effect */
.back-btn-step:hover {
    color: #000;
    text-decoration: underline;
}

/* Title alignment */
.tab-title {
    display: flex;
    align-items: center;
    gap: 10px;
}

.back-btn-step {
    color: #666;
    font-size: 13px;
}

@media (min-width: 768px) and (max-width: 1024px) {

    label.attachDoc {
    margin-top: 30px;
}
}