/* Shared public/auth presentation, aligned with the Visawaale reference portal. */
:is(.vw-public,.vw-auth,.vw-utility) { --vw-red:#ed0828; --vw-navy:#0c1d36; --vw-line:#dfe5ee; color:#0b1732; background:#fafcfe; font-family:Arial,Helvetica,sans-serif!important; }
:is(.vw-public,.vw-auth,.vw-utility) * { box-sizing:border-box; }
:is(.vw-public,.vw-auth,.vw-utility) :is(h1,h2,h3,h4,h5,h6) { color:#0b1732; font-family:Arial,Helvetica,sans-serif!important; font-weight:700; line-height:1.2; }
:is(.vw-public,.vw-auth,.vw-utility) :is(input,select,textarea,button) { font-family:inherit; }
:is(.vw-public,.vw-auth,.vw-utility) :is(.form-control,.form-select,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),select,textarea) { border:1px solid #cfd7e4; border-radius:7px; background-color:#fcfdff; color:#14213c; min-height:40px; max-width:100%; box-shadow:none; }
:is(.vw-public,.vw-auth,.vw-utility) :is(input,select,textarea):focus { border-color:#ed0828; outline:2px solid #ed08281c; outline-offset:1px; }
:is(.vw-public,.vw-auth,.vw-utility) :is(input[type=checkbox],input[type=radio]) { accent-color:#ed0828; }
:is(.vw-public,.vw-auth,.vw-utility) :is(.btn-primary,.btn-danger,.homec-btn,.primary-btn1,.ecom-wc__button,button[type=submit],input[type=submit]) { background:linear-gradient(110deg,#fa1833,#d40020)!important; border-color:#ed0828!important; color:white!important; border-radius:8px; font-weight:600; box-shadow:none; }
:is(.vw-public,.vw-auth,.vw-utility) :is(.btn-primary,.homec-btn,.primary-btn1):hover { filter:brightness(.94); }
:is(.vw-public,.vw-auth,.vw-utility) :is(.card,.modal-content,.white-box,.homec-sidebar,.homec-blog__single,.homec-property,.homec-contact__form,.homec-dashboard__inner) { background:white; border:1px solid var(--vw-line); border-radius:14px; box-shadow:0 4px 12px #1629410a; }
:is(.vw-public,.vw-auth,.vw-utility) :is(.card-header,.modal-header) { background:#f6f8fb; border-bottom:1px solid var(--vw-line); }
.vw-public .vw-site-content { min-height:55vh; }
.vw-public .homec-header { background:white!important; border-bottom:1px solid var(--vw-line); box-shadow:0 3px 14px #14233f0a; }
.vw-public .homec-header__middle { background:white!important; padding:14px 3%!important; }
.vw-public .homec-header__logo img { width:180px; max-width:100%; height:auto; object-fit:contain; }
.vw-public .homec-header :is(.nav-menu>li>a,.large-menu a) { color:#0b1732!important; font-family:Arial,Helvetica,sans-serif; font-size:13px; font-weight:600; }
.vw-public .homec-header :is(.nav-menu>li>a,.large-menu a):hover { color:#ed0828!important; }
.vw-public .homec-header__top { background:#0c1d36!important; color:white; }
.vw-public .homec-header__top a { color:white!important; }
.vw-public :is(.homec-breadcrumb,.breadcrumb-area,.breadcrumbs) { background:linear-gradient(100deg,#0c1d36e8,#0c1d3688),url('../images/home-v2/hero.png') center 52%/cover!important; padding:64px 0!important; }
.vw-public :is(.homec-breadcrumb,.breadcrumb-area,.breadcrumbs) :is(h1,h2,h3,a,li,p) { color:white!important; }
.vw-public :is(.homec-section__title,.section-title h2) { letter-spacing:-.5px; }
.vw-public :is(.footer-section,.footer-area) { background:linear-gradient(120deg,#0b192b,#172b42)!important; color:#e6edf5; padding-top:40px; }
.vw-public :is(.footer-section,.footer-area) :is(h3,h4,h5,a,p,li,span) { color:#e6edf5!important; }
.vw-public :is(.footer-section,.footer-area) .footer-logo img { width:170px; height:auto; }
.vw-public :is(.footer-section,.footer-area) a:hover { color:#ff647a!important; }
:is(.vw-public,.vw-utility) table { width:100%; border-collapse:separate; border-spacing:0; font-size:13px; }
:is(.vw-public,.vw-utility) th { background:#eef2f7; color:#0b1732; padding:13px 12px; font-weight:700; }
:is(.vw-public,.vw-utility) td { padding:12px; border-bottom:1px solid #e5eaf2; }
.vw-public .pagination :is(.active a,.active span) { background:#ed0828!important; border-color:#ed0828!important; }
.vw-auth { min-height:100vh; background:radial-gradient(ellipse at top right,#fbe9ed,transparent 55%),#f5f8fc; }
.vw-auth .new-login-register { display:flex; min-height:100vh; height:auto!important; }
.vw-auth .new-login-register .lg-info-panel { position:relative!important; width:46%!important; min-height:100vh; background:linear-gradient(180deg,#0c1d3640,#0c1d36ef),url('../images/home-v2/hero.png') 65% center/cover!important; }
.vw-auth .lg-info-panel .inner-panel { background:transparent!important; min-height:100%; }
.vw-auth .lg-info-panel .lg-content { position:absolute; left:8%; right:8%; bottom:12%; }
.vw-auth .lg-info-panel .lg-content h2 { color:white; font-size:26px; line-height:1.65; }
.vw-auth .new-login-box { position:relative!important; margin:auto!important; width:54%!important; max-width:620px; padding:48px!important; float:none!important; }
.vw-auth .white-box { padding:32px!important; }
.vw-auth .new-login-box .box-title { font-size:30px; margin-bottom:12px; }
.vw-auth .ecom-wc { background:transparent!important; min-height:100vh; }
.vw-auth .ecom-wc__form { padding:48px 6%!important; }
.vw-auth .ecom-wc__form-inner { background:white; border:1px solid #dfe5ee; border-radius:18px; padding:32px; box-shadow:0 8px 30px #14233f0a; }
.vw-auth .ecom-wc__form-title { font-size:30px; }
.vw-auth .ecom-wc__form-title span { font-size:15px; font-weight:400; color:#55617a; line-height:1.5; margin-top:12px; }
.vw-auth :is(.ecom-wc__inner,.ecom-wc__image) { background:linear-gradient(#0c1d3630,#0c1d36ad),url('../images/home-v2/hero.png') center/cover!important; }
.vw-utility { min-height:100vh; padding:32px 16px; background:linear-gradient(145deg,#f5f8fc,#fff0f2); }
.vw-utility>.container,.vw-utility>.card { background:white; padding:32px; border:1px solid #dfe5ee; border-radius:16px; box-shadow:0 8px 25px #14233f0a; }
.vw-utility button { background:#ed0828; }
@media(max-width:991px) { .vw-public .homec-header__middle { padding:10px 16px!important; } .vw-public .homec-header__logo img { width:150px; } .vw-auth .new-login-box { padding:24px!important; } }
@media(max-width:767px) { .vw-auth .new-login-register { display:block; } .vw-auth .new-login-register .lg-info-panel { width:100%!important; min-height:200px; } .vw-auth .lg-info-panel .lg-content { display:none; } .vw-auth .new-login-box { width:100%!important; padding:20px!important; } .vw-auth .white-box,.vw-auth .ecom-wc__form-inner { padding:24px 20px!important; } .vw-auth .ecom-wc__form { padding:24px 4%!important; } .vw-public :is(.homec-breadcrumb,.breadcrumb-area,.breadcrumbs) { padding:36px 0!important; } .vw-public h1 { font-size:30px; } .vw-public .table-responsive { overflow-x:auto; } .vw-utility>.container,.vw-utility>.card { padding:22px; margin-top:24px!important; } }
/* Legacy page variants share the same content treatment. */
.vw-public :is(.breadcrumb-section,.breadcrumbs__content) { background:linear-gradient(100deg,#0c1d36d9,#0c1d3640),url('../images/home-v2/hero.png') center/cover!important; min-height:220px!important; height:260px!important; padding:48px 0!important; }
.vw-public :is(.breadcrumb-section,.breadcrumbs__content) :is(h1,h2,h3,p,a,li) { color:white!important; }
.vw-public :is(.contact-card,.facility-card,.team-card,.accordion-item,.homec-accordion__single) { border:1px solid #dfe5ee!important; border-radius:12px!important; background:white!important; box-shadow:0 4px 12px #14233f08; }
.vw-public :is(.home2-about-section,.homec-faq-bg) { background:#fafcfe!important; }
.vw-public .eg-section-tag { background:#fff0f2!important; color:#ed0828!important; border-radius:24px; padding:7px 14px; }
.vw-public .eg-section-tag svg { display:none; }
.vw-auth :is(.btn-info,.btn-success) { background:linear-gradient(110deg,#fa1833,#d40020)!important; border-color:#ed0828!important; color:white!important; border-radius:8px!important; }
.vw-auth .ecom-wc__button { background:transparent!important; border:0!important; }
@media(max-width:767px) { .vw-public :is(.breadcrumb-section,.breadcrumbs__content) { min-height:170px!important; height:190px!important; } }
.vw-auth .new-login-register .lg-info-panel { background-color:#0c1d36!important; }
.vw-auth :is(#sendOtpBtn,#verifyOtpBtn) { flex:none; padding:10px 14px!important; font-size:13px; min-height:42px; height:auto; }
.vw-auth .form-group__input>input { min-width:0; padding:10px 12px!important; }
@media(max-width:767px) { .vw-auth .ecom-wc__form { width:100%!important; margin:0!important; padding:20px 0!important; } .vw-auth .ecom-wc__form-inner { width:100%!important; max-width:none!important; } .vw-auth .ecom-wc__form-main { width:100%!important; } .vw-auth .ecom-wc__form-title { font-size:27px; } }
