/* Shared G1Seva public-page design system. Home has its own bespoke stylesheet. */
body.g1-modern {
  --g1-ink: #142017; --g1-muted: #687263; --g1-green: #35491b; --g1-gold: #d4aa00;
  --g1-line: #e9e3ce; --g1-paper: #fffefa; color: var(--g1-ink);
  background: #f7f5e8; font-family: 'Plus Jakarta Sans', Outfit, sans-serif;
  background-image: radial-gradient(ellipse at 5% 5%,rgba(244,196,0,.09),transparent 28%),radial-gradient(ellipse at 96% 34%,rgba(91,126,45,.07),transparent 27%);
}
.g1-modern .site-header { position: sticky; z-index: 40; top: 0; height: auto; min-height: 72px; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(45,59,13,.09); box-shadow: 0 8px 28px rgba(32,43,18,.07); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.g1-modern .header-inner { width: min(1240px,calc(100% - 40px)); min-height: 72px; gap: 18px; }
.g1-modern .brand { gap: 11px; color: var(--g1-ink); text-decoration: none; }
.g1-modern .brand > img,.g1-modern .brand > .brand-mark { width: 48px; height: 48px; flex: 0 0 48px; border: 2px solid #f4c400; border-radius: 50%; object-fit: cover; box-shadow: 0 5px 15px rgba(212,169,0,.2); }
.g1-modern .brand-text strong { color: var(--g1-ink); font-size: 1.08rem; letter-spacing: -.04em; }
.g1-modern .brand-text small { color: #78805f; font-size: .62rem; font-weight: 750; letter-spacing: .075em; text-transform: uppercase; }
.g1-modern .site-nav { gap: 2px; padding: 5px; border: 1px solid #e4e5e6; border-radius: 999px; background: #f2f3f4; }
.g1-modern .site-nav > a { padding: 10px 12px; border-radius: 999px; color: #38445c; font-size: .8rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.g1-modern .site-nav > a:hover,.g1-modern .site-nav > a.active { color: var(--g1-green); background: #fff; box-shadow: 0 3px 10px rgba(25,35,18,.09); }
.g1-modern .site-nav .language-switcher,.g1-modern .site-nav .dark-toggle { display: none; }
.g1-modern .nav-toggle { display: none; }
.g1-modern .announce-bar { display: none; }
.g1-modern .private-centre-notice { padding: 9px 0; border-bottom: 1px solid rgba(212,169,0,.18); background: rgba(244,196,0,.11); color: #53613d; font-size: .74rem; font-weight: 650; }
.g1-modern .private-centre-notice .container { width: min(1240px,calc(100% - 40px)); }
.g1-modern .site-main { min-height: 0; padding: 0 0 42px; }
.g1-modern .site-main > .container { width: min(1240px,calc(100% - 40px)); }
.g1-modern .site-main .section { padding-top: clamp(26px,4vw,48px); padding-bottom: clamp(28px,4vw,48px); }
.g1-modern h1,.g1-modern h2,.g1-modern h3,.g1-modern h4 { color: #1d2b16; letter-spacing: -.035em; }
.g1-modern .panel,.g1-modern .card,.g1-modern .service-discovery-card,.g1-modern .about-trust-grid > *,
.g1-modern .contact-card,.g1-modern .contact-form,.g1-modern .track-card,.g1-modern .application-card,
.g1-modern .customer-app-card,.g1-modern .soft-panel { border-color: var(--g1-line); border-radius: 20px; background: rgba(255,255,255,.94); box-shadow: 0 10px 28px rgba(41,49,28,.055); }
.g1-modern .btn { min-height: 42px; border-radius: 12px; font-family: inherit; font-weight: 750; }
.g1-modern .btn-primary { color: #28350f; background: linear-gradient(180deg,#ffe779,#f4c400); border-color: #eac000; box-shadow: 0 8px 20px rgba(201,155,0,.18); }
.g1-modern input:not([type=checkbox]):not([type=radio]),.g1-modern select,.g1-modern textarea { border: 1px solid #dfe3d7; border-radius: 12px; background: #fff; color: #23301d; font: inherit; }
.g1-modern input:focus,.g1-modern select:focus,.g1-modern textarea:focus { outline: 3px solid rgba(244,196,0,.2); border-color: #d4aa00; }
.g1-modern .site-footer { margin-top: 0; padding: 38px 0 18px; background: #17220e; color: #f7f5e8; }
.g1-modern .site-footer .footer-grid { width: min(1240px,calc(100% - 40px)); gap: 26px; }
.g1-modern .site-footer .brand-text strong,.g1-modern .site-footer h4 { color: #fff; }
.g1-modern .site-footer .brand-text small,.g1-modern .site-footer .footer-copy,.g1-modern .site-footer .footer-links a,.g1-modern .site-footer .footer-bottom { color: rgba(255,255,255,.7); }
.g1-modern .site-footer .brand > img,.g1-modern .site-footer .brand > .brand-mark { border-color: rgba(244,196,0,.75); }
.g1-modern .site-footer .footer-links { gap: 8px; }
.g1-modern .site-footer .footer-links a:hover { color: #ffe16b; }
.g1-modern .site-footer .footer-disclaimer { color: rgba(255,255,255,.74); border-color: rgba(255,255,255,.12); border-radius: 15px; background: rgba(255,255,255,.05); }
.g1-modern .site-footer .footer-bottom { border-color: rgba(255,255,255,.1); }
.g1-modern .mobile-action-nav { display: none; }
.g1-modern .alert { border-radius: 13px; }
.g1-modern .track-page-shell { padding-top: clamp(24px,3.4vw,42px); }
.g1-modern .track-hero { grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr); gap:14px; margin-bottom:14px; }
.g1-modern .track-hero-copy,.g1-modern .track-hero-side-card { border:1px solid #e9e3ce; border-radius:22px; background:linear-gradient(145deg,#fffefa,#fff7d8); box-shadow:0 12px 30px rgba(42,51,24,.06); }
.g1-modern .track-hero-copy { padding:clamp(20px,2.8vw,30px); }
.g1-modern .track-hero-copy h1 { margin:.65rem 0 .4rem; font-size:clamp(1.8rem,3.4vw,2.5rem); }
.g1-modern .track-hero-side-card { padding:22px; }
.g1-modern .track-hero-side-card strong { margin:0 0 14px; font-size:1rem; }
.g1-modern .track-hero-steps { gap:11px; }
.g1-modern .track-hero-steps li { font-size:.8rem; }
.g1-modern .track-search-box { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px; border:1px solid #e6dfca; border-radius:20px; background:rgba(255,255,255,.94); box-shadow:0 12px 28px rgba(42,51,24,.06); }
.g1-modern .track-search-input-wrap { width:100%; grid-column:1; grid-row:1; }
.g1-modern .track-search-box .btn { grid-column:2; grid-row:1; }
.g1-modern .track-search-input-wrap { min-height:54px; border:1px solid #e5e8df; border-radius:14px; background:#fff; }
.g1-modern .track-search-prefix { color:#a17c00; }
.g1-modern .track-search-box .btn { min-width:138px; min-height:52px; color:#26350f; background:linear-gradient(180deg,#ffe779,#f4c400); border:1px solid #eac000; box-shadow:0 8px 18px rgba(201,155,0,.17); }
.g1-modern .track-legacy-details { grid-column:1 / -1; padding:2px 8px 4px; color:#687263; font-size:.76rem; }
.g1-modern .track-legacy-details summary { width:max-content; max-width:100%; cursor:pointer; color:#60704d; font-weight:700; }
.g1-modern .track-legacy-verify { display:flex; align-items:center; gap:12px; padding:10px 0 0; color:#6b7564; font-size:.76rem; font-weight:650; }
.g1-modern .track-legacy-verify input { width:150px; min-height:40px; padding:7px 10px; }
.g1-modern .track-search-note { padding-left:4px; }
.g1-modern .track-main-panel { border-radius:20px; }
.g1-modern .track-main-panel .timeline { margin:.9rem 0 .2rem; }
.g1-modern .track-main-panel .timeline-item { padding-bottom:.85rem; }
.g1-modern .track-main-panel .timeline-item strong { color:#28381c; }
.g1-modern .track-main-panel .timeline-item small { display:block; margin-top:3px; color:#738069; font-size:.75rem; }
.g1-modern .track-card-top { align-items:center; }
.g1-modern .track-status-box { padding:13px 16px; border:1px solid #ede6d4; border-radius:16px; background:#fffdf6; }
.g1-modern .track-empty-state { border-color:#eadcae; border-radius:20px; background:linear-gradient(135deg,#fffefa,#fff8df); }
.g1-modern .track-empty-icon { background:linear-gradient(135deg,#ffe779,#f4c400); color:#35491b; box-shadow:0 10px 24px rgba(201,155,0,.2); }

/* Login and registration do not use the shared public header. */
body.login-body.g1-auth-page { min-height: 100vh; padding: 28px 16px; display: grid; place-items: center; background: radial-gradient(ellipse at 12% 10%,rgba(244,196,0,.18),transparent 32%),linear-gradient(145deg,#f7f5e8,#edf0dd); font-family: 'Plus Jakarta Sans', Outfit, sans-serif; }
.g1-auth-page .login-box { width: min(100%,480px); padding: clamp(24px,5vw,42px); border: 1px solid #e9e3ce; border-radius: 26px; background: rgba(255,255,255,.96); box-shadow: 0 24px 70px rgba(39,51,22,.13); }
.g1-auth-page .login-brand { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 24px; color: #1d2b16; }
.g1-auth-page .login-brand img,.g1-auth-page .login-brand .brand-mark { width: 58px; height: 58px; border: 2px solid #f4c400; border-radius: 50%; object-fit: cover; }
.g1-auth-page .login-brand strong { font-size: 1rem; }
.g1-auth-page label > span { display: block; margin: 0 0 7px; color: #293a1d; font-size: .85rem; font-weight: 750; }
.g1-auth-page input:not([type=checkbox]) { width: 100%; min-height: 48px; padding: 11px 13px; border: 1px solid #dfe3d7; border-radius: 12px; background: #fff; font: inherit; }
.g1-auth-page .form { gap: 16px; }
.g1-auth-page .btn { min-height: 48px; border-radius: 13px; font: inherit; font-weight: 800; }
.g1-auth-page .btn-primary { color: #28350f; background: linear-gradient(180deg,#ffe779,#f4c400); border-color: #eac000; }
@media(max-width:1020px) { .g1-modern .site-nav > a { padding: 9px 9px; font-size: .74rem; } }
@media(max-width:820px) {
  .g1-modern .header-inner { width: calc(100% - 28px); min-height: 66px; }
  .g1-modern .nav-toggle { display: flex; width: 42px; height: 42px; border: 1px solid #e4e5e6; border-radius: 12px; background: #fff; }
  .g1-modern .nav-toggle span { background: #344619; }
  .g1-modern .site-nav { display: none; position: absolute; top: calc(100% + 8px); left: 14px; right: 14px; z-index: 30; flex-direction: column; align-items: stretch; padding: 10px; border-radius: 18px; background: #fff; box-shadow: 0 18px 45px rgba(25,35,18,.16); }
  .g1-modern .site-nav.open { display: flex; }
  .g1-modern .site-nav > a { padding: 12px 14px; font-size: .9rem; }
  .g1-modern .site-nav .language-switcher { display: flex; }
  .g1-modern .site-nav .dark-toggle { display: inline-flex; }
  .g1-modern .track-hero { grid-template-columns:1fr; }
  .g1-modern .site-footer .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:540px) {
  .g1-modern .brand > img,.g1-modern .brand > .brand-mark { width: 42px; height: 42px; flex-basis: 42px; }
  .g1-modern .brand-text strong { font-size: .96rem; }
  .g1-modern .brand-text small { max-width: 205px; font-size: .53rem; }
  .g1-modern .private-centre-notice .container,.g1-modern .site-main > .container { width: calc(100% - 22px); }
  .g1-modern .track-search-box { grid-template-columns:1fr; }
  .g1-modern .track-search-input-wrap,.g1-modern .track-search-box .btn,.g1-modern .track-legacy-details { grid-column:1; grid-row:auto; }
  .g1-modern .track-search-input-wrap { grid-row:1; }
  .g1-modern .track-search-box .btn { grid-row:2; width:100%; }
  .g1-modern .track-legacy-details { grid-row:3; }
  .g1-modern .track-legacy-verify { align-items:flex-start; flex-direction:column; gap:5px; }
  .g1-modern .track-legacy-verify input { width:100%; }
  .g1-modern .site-footer { padding-top: 30px; }
  .g1-modern .site-footer .footer-grid { grid-template-columns: 1fr; }
}
