/*
  Sinioo — Trust‑Vault Protocol
  Responsive layout + modern header with hamburger menu
*/

/* Base */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root{
  --text:#0a0a0a;
  --sub:#6b7280;
  --muted:#9ca3af;
  --border:#e5e7eb;
  --white:#ffffff;
  --light:#f9fafb;
  --shadow: 0 12px 40px rgba(0,0,0,.08);
  --radius: 16px;
}
html{ scroll-behavior:smooth; }
body{ font-family:'Inter', sans-serif; background:var(--white); color:var(--text); }

/* Layout helpers */
a{ color:inherit; }
.btn-reset{ appearance:none; border:none; background:none; padding:0; font:inherit; cursor:pointer; }

/* Header */
nav{
  position:fixed;
  top:0; left:0; right:0;
  z-index:100;
  min-height: calc(72px + env(safe-area-inset-top, 0px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: env(safe-area-inset-top, 0px) 1.5rem 0;
  background:rgba(255,255,255,.92);
  backdrop-filter: blur(14px);
  border-bottom:1px solid var(--border);
}

.nav-left{ display:flex; align-items:center; gap:.9rem; }
.logo{ display:flex; align-items:center; gap:.6rem; text-decoration:none; }
.logo-img{ width:36px; height:36px; object-fit:cover; display:block; filter: brightness(1.8) contrast(1.1); }

/* Make sure dashboard/profile nav + buttons are readable */
nav a.btn-ghost,
nav a.nav-ghost,
.nav-drawer a.nav-ghost,
.nav-right a.nav-ghost{
  color: var(--text);
}

/* Ensure profile/sign-out buttons are readable when their backgrounds are dark */
.sign-out-btn,
#signOutBtn{
  background: #0a0a0a !important;
  color: #ffffff !important;
  border-color: #ffffff !important;
}

#signOutBtn svg{ color: #ffffff !important; }

#signOutBtn:hover{
  background: #111111 !important;
  border-color: #ffffff !important;
}

.logo-word{ font-family:'Instrument Serif', serif; font-size:1.25rem; letter-spacing:-.02em; color:var(--text); font-weight:700; }

/* Beta badge */
.beta-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.65rem;
  background: var(--text);
  color: var(--white);
  font-family: 'Inter', sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
  margin-left: 0.5rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  vertical-align: middle;
}

.beta-badge-large {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.35rem 0.85rem;
  background: var(--text);
  color: var(--white);
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-radius: 999px;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  vertical-align: middle;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
}

.nav-right{ display:flex; align-items:center; gap:1rem; }

.nav-btn{
  font-family:'Inter', sans-serif;
  font-size:.9rem;
  font-weight:600;
  color:#fff;
  background:var(--text);
  border:none;
  cursor:pointer;
  padding:.55rem 1rem;
  border-radius:10px;
}
.nav-btn:hover{ opacity:.9; }

/* Hamburger */
.hamburger{
  width:42px; height:42px;
  border-radius:12px;
  border:1px solid var(--border);
  background:var(--white);
  display:none;
  align-items:center;
  justify-content:center;
  box-shadow: 0 4px 18px rgba(0,0,0,.04);
}
.hamburger .lines{ width:18px; height:12px; position:relative; }
.hamburger .lines span{
  position:absolute; left:0; right:0;
  height:2px;
  background:var(--text);
  border-radius:2px;
  transition: transform .18s ease, top .18s ease, opacity .18s ease;
}
.hamburger .lines span:nth-child(1){ top:0; }
.hamburger .lines span:nth-child(2){ top:5px; }
.hamburger .lines span:nth-child(3){ top:10px; }
.hamburger.open .lines span:nth-child(1){ top:5px; transform: rotate(45deg); }
.hamburger.open .lines span:nth-child(2){ opacity:0; }
.hamburger.open .lines span:nth-child(3){ top:5px; transform: rotate(-45deg); }

/* Mobile drawer */
.nav-drawer{
  position:fixed;
  top:72px; left:0; right:0;
  z-index:99;
  background:rgba(255,255,255,.98);
  backdrop-filter: blur(12px);
  border-bottom:1px solid var(--border);
  display:none;
}
.nav-drawer.open{ display:block; }
.nav-drawer .drawer-inner{ padding: 1rem 1.25rem 1.25rem; }
.nav-drawer a, .nav-drawer button{ width:100%; }
.nav-drawer .drawer-grid{ display:grid; gap:.75rem; }

/* Mobile drawer items: make them look like solid buttons (no weird separators) */
.nav-drawer .drawer-grid{ gap:.6rem; }
.nav-drawer .nav-ghost{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:.75rem 1rem;
  background:transparent;
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:none;
}


.nav-ghost{
  font-family:'Inter', sans-serif;
  font-size:.9rem;
  font-weight:600;
  color:var(--text);
  background:transparent;
  border:1px solid var(--border);
  border-radius:12px;
  padding:.6rem 1rem;
  text-decoration: none;
}

/* Hero */
.hero{ padding: 116px 1.5rem 72px; max-width: 1040px; margin: 0 auto; }
.hero h1{
  font-family:'Instrument Serif', serif;
  font-size: clamp(2.4rem, 5.8vw, 4.8rem);
  font-weight: 500;
  line-height:1.06;
  letter-spacing:-.03em;
  margin-bottom: 1.2rem;
}
.hero p{
  font-size: 1.1rem;
  color: var(--sub);
  font-weight: 350;
  line-height:1.8;
  max-width: 640px;
  margin-bottom: 2.2rem;
}
.hero-actions{ display:flex; align-items:center; gap:1rem; flex-wrap:wrap; }

.page-404-shell{ padding: 3rem 1.5rem; text-align: center; }
.error-hero{ display:flex; align-items:center; justify-content:center; padding: 2rem 0; }
.error-card{ width: 100%; max-width: 640px; padding: 2.2rem 1.75rem; margin: 0 auto; border-radius: 28px; background: rgba(255,255,255,.96); border: 1px solid rgba(15,23,42,.08); box-shadow: 0 18px 44px rgba(15,23,42,.08); }
.error-card .eyebrow{ font-size:.85rem; letter-spacing:.35em; text-transform: uppercase; color: #d63031; margin-bottom:1.25rem; font-weight:700; }
.error-card h1{ font-family:'Instrument Serif', serif; font-size: clamp(2.2rem, 4.5vw, 3.6rem); line-height:1.05; margin-bottom:1rem; color: var(--text); }
.error-card .section-text{ font-size:1rem; color: var(--muted); line-height:1.85; margin:0 auto 1rem; max-width: 610px; }
.error-actions{ display:flex; flex-wrap:wrap; justify-content:center; gap:1rem; margin:1.75rem auto 0; }
.error-actions a{ min-width: 170px; width: auto; max-width: 240px; white-space: nowrap; }

.btn-primary{
  font-family:'Inter', sans-serif;
  font-size: .95rem;
  font-weight:700;
  color:#fff;
  background: #0a0a0a;
  border:none;
  cursor:pointer;
  padding: .8rem 1.5rem;
  border-radius: 12px;
  box-shadow: 0 4px 14px rgba(0,0,0,.18);
  letter-spacing: -.01em;
  transition: all .22s ease;
}
.btn-primary:hover{ opacity:.92; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(0,0,0,.25); }
.btn-primary:active{ transform: translateY(0); }
.btn-primary:disabled{ opacity:.5; cursor:not-allowed; transform:none; box-shadow:none; }
.btn-secondary{
  font-family:'Inter', sans-serif;
  font-size: .95rem;
  font-weight:700;
  color: var(--text);
  background: transparent;
  border:1px solid var(--border);
  cursor:pointer;
  padding: .8rem 1.5rem;
  border-radius: 12px;
  text-decoration: none;
  transition: all .22s ease;
}
.btn-secondary:hover{ background: var(--light); }
.btn-ghost{
  font-family:'Inter', sans-serif;
  font-size: .95rem;
  font-weight:700;
  color: var(--text);
  background: transparent;
  border:1px solid var(--border);
  cursor:pointer;
  padding: .8rem 1.5rem;
  border-radius: 12px;
  text-decoration: none;
}
.btn-ghost:hover{ background: var(--light); }

/* Nav link icon spacing (force consistent icon/text gap even if HTML has inline gap) */
nav a.btn-ghost,
nav a.nav-ghost,
.nav-drawer a.nav-ghost,
.nav-right a.btn-ghost,
.nav-right a.nav-ghost {
  gap: 10px !important;
}

/* Ensure SVGs inside nav links have consistent sizing */
nav a.btn-ghost svg,
nav a.nav-ghost svg,
nav a.nav-btn svg,
.nav-drawer a.nav-ghost svg {
  flex-shrink: 0;
}

/* Products */
.products{ border-top: 1px solid var(--border); margin-top: 1.25rem; }
.product{
  display:flex;
  align-items:stretch;
  justify-content:space-between;
  gap: 1.25rem;
  padding: 1.6rem 1.5rem;
  border-bottom: 1px solid var(--border);
  text-decoration:none;
  color:inherit;
  transition: background .15s ease;
}
.product:hover{ background: var(--light); }
.product[aria-disabled="true"]{ cursor: default; }

.product > div:first-child{ flex: 1; }
.product-tag{
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  color: var(--muted);
}
.product-name{
  font-family:'Instrument Serif', serif;
  font-size:1.75rem;
  font-weight: 500;
  margin-top:.35rem;
}
.product-desc{ font-size:.92rem; color: var(--sub); font-weight:350; line-height:1.65; margin-top:.7rem; max-width: 680px; }

.product-status{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap: .6rem;
  min-width: 180px;
  text-align:left;
}

.dot{ display:inline-block; width:9px; height:9px; border-radius:50%; margin-right:10px; vertical-align:middle; }

/* Footer */
footer{
  padding: 2.5rem 1.5rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-top: 1px solid var(--border);
  gap: 1rem;
}
.footer-logo{ display:flex; align-items:center; gap:.65rem; text-decoration:none; }
.footer-word{ font-family:'Instrument Serif', serif; font-size:1rem; color: var(--muted); }
.footer-links{ display:flex; gap: 1.5rem; align-items:center; }
.footer-links a{ font-size:.9rem; color: var(--muted); text-decoration:none; font-weight:600; }
.footer-links a:hover{ color: var(--sub); }
.footer-links a.footer-social{ display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:8px; background: #0A66C2; color: #ffffff; border:1px solid transparent; padding:0; transition: background .2s ease, transform .2s ease; }
.footer-links a.footer-social:hover{ background: #004182; transform: scale(1.05); }
.footer-links a.footer-social svg{ width:16px; height:16px; fill: currentColor; }
.footer-links a.footer-social.linkedin{ box-shadow: 0 4px 12px rgba(10,102,194,.12); }
.footer-copy{ font-size:.9rem; color: var(--muted); font-weight:600; }

/* Make footer social icons smaller on mobile */
@media (max-width: 600px) {
  .footer-links a.footer-social {
    width: 24px !important;
    height: 24px !important;
    border-radius: 6px !important;
    padding: 0 !important;
  }
  .footer-links a.footer-social svg {
    width: 12px !important;
    height: 12px !important;
  }
  .footer-links a.footer-social:hover{ transform: none !important; }
}

.page-404-footer {
  width: 100%;
  padding: 2rem 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  border-top: 1px solid var(--border);
  background: rgba(255,255,255,.96);
}
.footer-404-content {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  max-width: 720px;
  padding: 1rem 1.25rem;
  border: 1px solid var(--border);
  border-radius: 24px;
  background: var(--white);
  box-shadow: 0 12px 38px rgba(15, 23, 42, 0.08);
}
.footer-404-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  font-size: 1.75rem;
  background: rgba(255, 77, 79, 0.12);
  color: #ff4d4f;
}
.footer-404-text {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  color: var(--text);
}
.footer-404-subtext {
  margin: 0;
  font-size: .95rem;
  color: var(--muted);
}





.overlay{ display:none; position:fixed; inset:0; z-index:300; background: rgba(0,0,0,.25); backdrop-filter: blur(6px); align-items:center; justify-content:center; }
.overlay.open{ display:flex; }
.modal{
  background: var(--white);
  border-radius: 18px;
  padding: 2.2rem 1.8rem;
  width: 100%;
  max-width: 440px;
  margin: 1.25rem;
  position: relative;
  box-shadow: var(--shadow);
  border:1px solid var(--border);
}
.modal-x{
  position:absolute;
  top:14px; right:14px;
  width:34px; height:34px;
  border-radius:12px;
  background: var(--light);
  border: none;
  cursor:pointer;
  font-size:1.2rem;
  color: var(--sub);
  display:flex;
  align-items:center;
  justify-content:center;
}
.m-title{ font-family:'Instrument Serif', serif; font-size:1.6rem; font-weight:600; margin-bottom:.25rem; }
.m-sub{ font-size:.95rem; color:var(--sub); margin-bottom:1.4rem; font-weight:450; }
.m-label{ font-size:.85rem; font-weight:700; color:var(--sub); display:block; margin-bottom:6px; }
.m-input{
  font-family:'Inter', sans-serif;
  font-size:.95rem;
  background: var(--light);
  border:1px solid var(--border);
  color:var(--text);
  border-radius: 12px;
  padding: .8rem 1rem;
  width:100%;
  outline:none;
  margin-bottom:.85rem;
}
.m-input:focus{ border-color:#6b7280; }
.m-btn{
  font-family:'Inter', sans-serif;
  font-size: .95rem;
  font-weight:800;
  color:#fff;
  background: var(--text);
  border:none;
  cursor:pointer;
  padding: .9rem;
  width:100%;
  border-radius: 12px;
  margin-top:.25rem;
}
.m-btn:hover{ opacity:.92; }
.m-btn:disabled{ opacity:.5; cursor:not-allowed; }
.m-footer{ text-align:center; margin-top:1rem; font-size:.9rem; color:var(--sub); font-weight:600; }
.m-footer a{ color:var(--text); text-decoration:none; }
.m-msg{ font-size:.9rem; margin-bottom:.75rem; line-height: 1.6; }
.m-err{ color:#dc2626; }
.m-ok{ color:#16a34a; }

/* Legal pages */
.page{ display:grid; grid-template-columns: 1.2fr .9fr; min-height: calc(100vh - 72px); }
:root{ --pad-x: 2.5rem; }

nav.nav-legal{ position: sticky; top:0; z-index:100; padding:0 var(--pad-x); height:72px; background: rgba(255,255,255,.95); }


.page-header{ padding: 5rem var(--pad-x) 3.5rem; border-bottom: 1px solid var(--border); }
.page-label{ font-size:.9rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin-bottom: 1rem; }
.page-title{ font-family:'Instrument Serif', serif; font-size: clamp(2rem, 5vw, 3.6rem); font-weight:600; line-height:1.1; letter-spacing:-.02em; margin-bottom:1rem; }
.page-meta{ display:block; font-size:.95rem; color: var(--text); font-weight:650; line-height:1.6; margin-top:0.5rem; }
.page-meta span{ display:block; white-space: normal; }
.content{ max-width: 820px; margin:0 auto; padding: 3.5rem var(--pad-x) 5rem; }
.section{ margin-bottom: 3rem; animation: fadeInUp 0.5s ease-out both; }
.section:nth-child(1) { animation-delay: 0.1s; }
.section:nth-child(2) { animation-delay: 0.2s; }
.section:nth-child(3) { animation-delay: 0.3s; }
.section:nth-child(4) { animation-delay: 0.4s; }
.section:nth-child(5) { animation-delay: 0.5s; }
.section:nth-child(6) { animation-delay: 0.6s; }
.section:nth-child(7) { animation-delay: 0.7s; }
.section:nth-child(8) { animation-delay: 0.8s; }
.section:last-child{ margin-bottom: 0; }

.content h2,
.section h2{
  font-family:'Instrument Serif', serif;
  font-size: 1.65rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  margin-bottom: 1.1rem;
  padding-top: 0;
  border-top: none;
  color: var(--text);
}

.section-desc {
  font-size: 1.05rem;
  color: var(--sub);
  line-height: 1.85;
  font-weight: 450;
  margin-bottom: 2rem;
  max-width: 720px;
}

.content p{ font-size: 1.02rem; color: var(--sub); line-height:1.9; font-weight: 450; margin-bottom: 1.1rem; }
.content p:last-child{ margin-bottom:0; }
.content p strong{ color:var(--text); font-weight:700; }

/* Legal pages smooth scrolling */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}

/* Legal page table of contents */
.legal-toc {
  background: var(--light);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 1.5rem 1.75rem;
  margin-bottom: 2.5rem;
  max-width: 100%;
}

.legal-toc-title {
  font-family: 'Instrument Serif', serif;
  font-size: 1.15rem;
  font-weight: 600;
  margin-bottom: 0.85rem;
  color: var(--text);
  letter-spacing: -0.01em;
}

.legal-toc-list {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 0.5rem;
  padding: 0;
  margin: 0;
}

.legal-toc-list li {
  font-size: 0.92rem;
  line-height: 1.6;
  font-weight: 500;
}

.legal-toc-list a {
  color: var(--sub);
  text-decoration: none;
  transition: color 0.2s ease;
  display: inline-block;
  padding: 0.15rem 0.25rem;
  margin: -0.15rem -0.25rem;
  border-radius: 4px;
}

.legal-toc-list a:hover {
  color: var(--text);
  background: var(--border);
}

/* Legal section styling enhancements */
.content .section {
  position: relative;
  scroll-margin-top: 100px;
}

.content .section > h2 {
  font-family: 'Instrument Serif', serif;
  font-size: 1.75rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  margin-bottom: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--border);
  color: var(--text);
}

.content .section > h3 {
  font-family: 'Inter', sans-serif;
  font-size: 1.12rem;
  font-weight: 700;
  color: var(--text);
  margin-top: 1.75rem;
  margin-bottom: 0.75rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.content .section ul {
  margin: 0.75rem 0 1.25rem 1.25rem;
  line-height: 1.85;
}

.content .section ul li {
  margin-bottom: 0.5rem;
  font-size: 1.02rem;
  color: var(--sub);
  font-weight: 450;
}

.content .section ul li::marker {
  color: var(--text);
  font-weight: 700;
}

.content .section ul li strong {
  color: var(--text);
}

.content .section p {
  margin-bottom: 1.1rem;
}

.content .section p:last-of-type {
  margin-bottom: 1.5rem;
}

/* Nested lists styling */
.content .section ul ul {
  margin-top: 0.5rem;
  margin-bottom: 0.75rem;
}

.content .section ul ul li {
  font-size: 1rem;
}

/* Definition lists (for terms) */
.content .section dl {
  margin: 1rem 0;
}

.content .section dt {
  font-weight: 700;
  color: var(--text);
  margin-top: 0.75rem;
  margin-bottom: 0.35rem;
  font-size: 1.02rem;
}

.content .section dd {
  margin-left: 1.25rem;
  margin-bottom: 0.75rem;
  color: var(--sub);
  line-height: 1.8;
}

/* Code/inline code */
.content .section code {
  font-family: 'SF Mono', 'Consolas', monospace;
  font-size: 0.9em;
  background: var(--light);
  color: var(--text);
  padding: 0.15rem 0.4rem;
  border-radius: 4px;
  border: 1px solid var(--border);
}

/* Links in legal content */
.content .section a:not(.btn-primary):not(.btn-secondary):not(.contact-btn):not(.contact-link) {
  color: var(--text);
  text-decoration: underline;
  text-decoration-color: var(--border);
  text-underline-offset: 2px;
  transition: all 0.2s ease;
}

.content .section a:not(.btn-primary):not(.btn-secondary):not(.contact-btn):not(.contact-link):hover {
  color: var(--text);
  text-decoration-color: var(--text);
}

/* Legal notice box */
.legal-notice {
  background: linear-gradient(135deg, #fef3c7 0%, #fef9c3 100%);
  border: 1px solid #f59e0b;
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  margin: 1.5rem 0;
}

.legal-notice-title {
  font-weight: 700;
  color: #92400e;
  margin-bottom: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.legal-notice-title svg {
  width: 20px;
  height: 20px;
  color: #d97706;
}

.legal-notice p {
  margin: 0;
  font-size: 0.95rem;
  color: #78350f;
}

/* Key summary box (for Terms) */
.legal-summary {
  background: linear-gradient(135deg, #e0f2fe 0%, #dbeafe 100%);
  border: 1px solid #0ea5e9;
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  margin: 1.5rem 0;
}

.legal-summary-title {
  font-weight: 700;
  color: #075985;
  margin-bottom: 0.75rem;
  font-size: 1.05rem;
}

.legal-summary ul {
  margin: 0;
  padding-left: 1.25rem;
}

.legal-summary ul li {
  margin-bottom: 0.35rem;
  font-size: 0.95rem;
}

.legal-summary ul li::marker {
  color: #0284c7;
}

/* Print styles */
@media print {
  nav, .hamburger, .nav-drawer, footer {
    display: none !important;
  }

  body {
    background: white;
    color: black;
    font-size: 12pt;
  }

  .page-header {
    padding: 2rem 0 1.5rem;
    border-bottom: 2px solid #000;
  }

  .page-title {
    font-size: 1.5rem;
    color: black;
  }

  .content {
    padding: 1.5rem 0;
    max-width: 100%;
  }

  .legal-toc {
    display: none;
  }

  .section {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .section h2 {
    font-size: 1.25rem;
    border-bottom: 1px solid #000;
    padding-bottom: 0.25rem;
  }

  .section h3 {
    font-size: 1.1rem;
    margin-top: 1.25rem;
  }

  .section a {
    text-decoration: none;
    color: #000 !important;
  }

  .section a[href]:after {
    content: " (" attr(href) ")";
    font-size: 0.8rem;
    color: #666;
  }
}



.legal-toc-title {
  font-family: 'Instrument Serif', serif;
  font-size: 1.15rem;
  font-weight: 600;
  margin-bottom: 0.85rem;
  color: var(--text);
  letter-spacing: -0.01em;
}

.legal-toc-list {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 0.5rem;
  padding: 0;
  margin: 0;
}

.legal-toc-list li {
  font-size: 0.92rem;
  line-height: 1.6;
  font-weight: 500;
}

.legal-toc-list a {
  color: var(--sub);
  text-decoration: none;
  transition: color 0.2s ease;
  display: inline-block;
  padding: 0.15rem 0.25rem;
  margin: -0.15rem -0.25rem;
  border-radius: 4px;
}

.legal-toc-list a:hover {
  color: var(--text);
  background: var(--border);
}

/* Legal section styling enhancements */
.content .section {
  position: relative;
  scroll-margin-top: 100px;
}

.content .section > h2 {
  font-family: 'Instrument Serif', serif;
  font-size: 1.75rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  margin-bottom: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--border);
  color: var(--text);
}

.content .section > h3 {
  font-family: 'Inter', sans-serif;
  font-size: 1.12rem;
  font-weight: 700;
  color: var(--text);
  margin-top: 1.75rem;
  margin-bottom: 0.75rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.content .section ul {
  margin: 0.75rem 0 1.25rem 1.25rem;
  line-height: 1.85;
}

.content .section ul li {
  margin-bottom: 0.5rem;
  font-size: 1.02rem;
  color: var(--sub);
  font-weight: 450;
}

.content .section ul li::marker {
  color: var(--text);
  font-weight: 700;
}

.content .section ul li strong {
  color: var(--text);
}

.content .section p {
  margin-bottom: 1.1rem;
}

.content .section p:last-of-type {
  margin-bottom: 1.5rem;
}

/* Nested lists styling */
.content .section ul ul {
  margin-top: 0.5rem;
  margin-bottom: 0.75rem;
}

.content .section ul ul li {
  font-size: 1rem;
}

/* Definition lists (for terms like in section 2) */
.content .section dl {
  margin: 1rem 0;
}

.content .section dt {
  font-weight: 700;
  color: var(--text);
  margin-top: 0.75rem;
  margin-bottom: 0.35rem;
  font-size: 1.02rem;
}

.content .section dd {
  margin-left: 1.25rem;
  margin-bottom: 0.75rem;
  color: var(--sub);
  line-height: 1.8;
}

/* Code/inline code styling */
.content .section code {
  font-family: 'SF Mono', 'Consolas', monospace;
  font-size: 0.9em;
  background: var(--light);
  color: var(--text);
  padding: 0.15rem 0.4rem;
  border-radius: 4px;
  border: 1px solid var(--border);
}

/* Links in legal content */
.content .section a:not(.btn-primary):not(.btn-secondary):not(.contact-btn):not(.contact-link) {
  color: var(--text);
  text-decoration: underline;
  text-decoration-color: var(--border);
  text-underline-offset: 2px;
  transition: all 0.2s ease;
}

.content .section a:not(.btn-primary):not(.btn-secondary):not(.contact-btn):not(.contact-link):hover {
  color: var(--text);
  text-decoration-color: var(--text);
}

/* Strong/important text */
.content .section strong {
  font-weight: 700;
  color: var(--text);
}

.emphasized {
  font-weight: 700;
  color: var(--text);
}

/* Legal notice box */
.legal-notice {
  background: linear-gradient(135deg, #fef3c7 0%, #fef9c3 100%);
  border: 1px solid #f59e0b;
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  margin: 1.5rem 0;
}

.legal-notice-title {
  font-weight: 700;
  color: #92400e;
  margin-bottom: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.legal-notice-title svg {
  width: 20px;
  height: 20px;
  color: #d97706;
}

.legal-notice p {
  margin: 0;
  font-size: 0.95rem;
  color: #78350f;
}

/* Last updated footer in legal sections */
.legal-last-updated {
  font-size: 0.85rem;
  color: var(--muted);
  margin-top: 0.5rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--border);
  font-style: italic;
}

/* Responsive adjustments for legal pages */
@media (max-width: 768px) {
  .legal-toc-list {
    grid-template-columns: 1fr;
  }

  .content .section > h2 {
    font-size: 1.5rem;
  }

  .content .section > h3 {
    font-size: 1.05rem;
  }
}

/* Print styles for legal documents */
@media print {
  nav, .hamburger, .nav-drawer, footer {
    display: none !important;
  }

  body {
    background: white;
    color: black;
    font-size: 12pt;
  }

  .page-header {
    padding: 2rem 0 1.5rem;
    border-bottom: 2px solid #000;
  }

  .page-title {
    font-size: 1.5rem;
    color: black;
  }

  .content {
    padding: 1.5rem 0;
    max-width: 100%;
  }

  .section {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .section h2 {
    font-size: 1.25rem;
    border-bottom: 1px solid #000;
    padding-bottom: 0.25rem;
  }

  .section h3 {
    font-size: 1.1rem;
    margin-top: 1.25rem;
  }

  .section a {
    text-decoration: none;
    color: #000 !important;
  }

  .section a[href]:after {
    content: " (" attr(href) ")";
    font-size: 0.8rem;
    color: #666;
  }
}

/* Founder & CEO section */
.founder-section .founder-profile {
  display: flex;
  gap: 2rem;
  align-items: flex-start;
  margin-top: 1.5rem;
}

.founder-section .founder-img {
  width: 160px;
  height: 160px;
  border-radius: 12px;
  object-fit: cover;
  flex-shrink: 0;
}

.founder-section .founder-bio {
  flex: 1;
}

.founder-section .founder-name {
  font-size: 1.1rem;
  color: var(--text);
  font-weight: 600;
  margin-bottom: 0.5rem;
}

/* About page specific enhancements */
.hero-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 3.5rem;
  align-items: center;
  margin-bottom: 2rem;
}

.hero-content h2 {
  font-family: 'Instrument Serif', serif;
  font-size: clamp(2rem, 4.5vw, 3rem);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin-bottom: 1.5rem;
  color: var(--text);
}

.hero-content .lead {
  font-size: 1.1rem;
  line-height: 1.85;
  color: var(--sub);
  font-weight: 500;
  margin-bottom: 1.25rem;
}

.hero-image img {
  width: 100%;
  height: auto;
  border-radius: 16px;
  box-shadow: var(--shadow);
  object-fit: cover;
}

/* Founder section */
.founder-wrapper {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  background: var(--light);
  padding: 1.75rem;
  border-radius: 16px;
  border: 1px solid var(--border);
}

.founder-avatar {
  width: 120px;
  height: 120px;
  border-radius: 12px;
  object-fit: cover;
  flex-shrink: 0;
  border: 2px solid var(--border);
}

.founder-content h3 {
  font-family: 'Instrument Serif', serif;
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
  color: var(--text);
}

.founder-role {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--muted);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.founder-content p {
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 1rem;
}

.founder-content p:last-child {
  margin-bottom: 0;
}

/* Process steps */
.process-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
  margin-top: 2rem;
}

.step {
  position: relative;
  padding: 1.5rem;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 14px;
  transition: all 0.2s ease;
}

.step:hover {
  border-color: var(--text);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  transform: translateY(-2px);
}

.step-number {
  position: absolute;
  top: -12px;
  left: -12px;
  width: 32px;
  height: 32px;
  background: var(--text);
  color: var(--white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.step-content h3 {
  font-family: 'Instrument Serif', serif;
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: var(--text);
  padding-left: 1rem;
}

.step-content p {
  font-size: 0.95rem;
  line-height: 1.75;
  color: var(--sub);
  margin-bottom: 0;
}

/* Features grid */
.features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1.25rem;
  margin-top: 1.5rem;
}

.feature {
  padding: 1.5rem;
  background: var(--light);
  border-radius: 12px;
  border: 1px solid transparent;
  transition: all 0.2s ease;
}

.feature:hover {
  border-color: var(--border);
  background: var(--white);
}

.feature h3 {
  font-family: 'Instrument Serif', serif;
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: var(--text);
}

.feature p {
  font-size: 0.92rem;
  line-height: 1.7;
  color: var(--sub);
  margin-bottom: 0;
}

/* Values strip */
.values-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1.25rem;
  margin-top: 1.5rem;
}

.value-item {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 1.25rem;
  background: var(--light);
  border-radius: 12px;
  border-left: 3px solid var(--text);
}

.value-word {
  font-family: 'Instrument Serif', serif;
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--text);
}

.value-def {
  font-size: 0.9rem;
  color: var(--sub);
  line-height: 1.6;
  font-weight: 450;
}

/* Leadership section */
.leadership-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.leader {
  text-align: center;
  padding: 1.5rem;
  background: var(--light);
  border-radius: 12px;
  border: 1px solid var(--border);
}

.leader img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 1rem;
  border: 3px solid var(--white);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.leader h3 {
  font-family: 'Instrument Serif', serif;
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
  color: var(--text);
}

.leader .role {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--muted);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 0.75rem;
}

.leader p {
  font-size: 0.9rem;
  color: var(--sub);
  line-height: 1.7;
  margin-bottom: 0;
}

/* CTA section */
.cta-inner {
  text-align: center;
  padding: 2.5rem 2rem;
  background: linear-gradient(135deg, var(--light) 0%, #f0f9ff 100%);
  border-radius: 20px;
  border: 1px solid var(--border);
  margin-top: 2rem;
}

.cta-inner h2 {
  font-family: 'Instrument Serif', serif;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--text);
}

.cta-inner p {
  font-size: 1.05rem;
  color: var(--sub);
  line-height: 1.8;
  max-width: 600px;
  margin: 0 auto 2rem;
  font-weight: 450;
}

.cta-buttons {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

.cta-buttons .btn-primary,
.cta-buttons .btn-secondary {
  padding: 0.9rem 2rem;
  font-size: 1rem;
  font-weight: 700;
  border-radius: 12px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.cta-buttons .btn-primary {
  background: var(--text);
  color: var(--white);
  border: none;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}

.cta-buttons .btn-primary:hover {
  opacity: 0.9;
  transform: translateY(-1px);
}

.cta-buttons .btn-secondary {
  background: transparent;
  color: var(--text);
  border: 1px solid var(--border);
}

.cta-buttons .btn-secondary:hover {
  background: var(--white);
  border-color: var(--text);
}

/* Contact section */
.contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  align-items: start;
}

.contact-info h2 {
  font-family: 'Instrument Serif', serif;
  font-size: 1.75rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--text);
  border-top: none;
  padding-top: 0;
}

.contact-info p {
  font-size: 1rem;
  line-height: 1.8;
  color: var(--sub);
  margin-bottom: 1rem;
}

.contact-info p strong {
  color: var(--text);
  font-weight: 700;
}

.contact-info a {
  color: var(--text);
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid var(--border);
  transition: border-color 0.2s;
}

.contact-info a:hover {
  border-bottom-color: var(--text);
}

.contact-cta {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 1rem;
}

.contact-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 1.5rem;
  background: var(--text);
  color: var(--white);
  text-decoration: none;
  font-weight: 700;
  font-size: 1rem;
  border-radius: 12px;
  border: none;
  transition: all 0.2s ease;
}

.contact-btn:hover {
  opacity: 0.9;
  transform: translateY(-1px);
}

.contact-link {
  display: inline-flex;
  align-items: center;
  color: var(--text);
  font-weight: 600;
  text-decoration: none;
  font-size: 0.95rem;
  padding: 0.75rem 1rem;
  border: 1px solid var(--border);
  border-radius: 10px;
  transition: all 0.2s ease;
}

.contact-link:hover {
  background: var(--light);
  border-color: var(--text);
}

/* Mobile adjustments for about page */
@media (max-width: 768px) {
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .hero-content h2 {
    font-size: 1.75rem;
  }

  .founder-wrapper {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 1rem;
  }

  .founder-avatar {
    width: 140px;
    height: 140px;
  }

  .process-steps {
    grid-template-columns: 1fr;
  }

  .features-grid {
    grid-template-columns: 1fr;
  }

  .values-strip {
    grid-template-columns: 1fr;
  }

  .contact-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .cta-buttons {
    flex-direction: column;
  }

  .cta-buttons .btn-primary,
  .cta-buttons .btn-secondary {
    width: 100%;
    text-align: center;
  }

  .contact-cta {
    align-items: stretch;
  }

  .contact-btn,
  .contact-link {
    text-align: center;
    justify-content: center;
  }
}

.page-left{ padding: 5.5rem var(--pad-x) 4rem; border-right:1px solid var(--border); display:flex; flex-direction:column; justify-content:space-between; }
.page-right{ padding: 5.5rem var(--pad-x) 4rem; background: var(--light); }
.page-title em{ font-style: italic; }
.page-body{ font-size: 1.02rem; color:var(--sub); line-height:1.9; font-weight:450; max-width: 420px; margin-bottom: 3rem; }
.page-left .page-title{ margin-bottom: 1.6rem; }
.page-label, .page-title, .page-body{ max-width: 640px; }

.contact-type{ font-size:.9rem; font-weight:800; letter-spacing:.10em; text-transform:uppercase; color:var(--muted); margin-bottom:.65rem; }
.contact-value{ font-size:1.05rem; color:var(--text); text-decoration:none; font-weight:800; }
.contact-value:hover{ opacity:.6; }
.contact-note{ font-size:.95rem; color:var(--muted); font-weight:450; }
.left-footer{ font-size:.95rem; color:var(--muted); font-weight:650; }

.form-title{ font-family:'Instrument Serif', serif; font-size:1.75rem; font-weight:650; margin-bottom:.5rem; letter-spacing:-.01em; }
.form-sub{ font-size:1.05rem; color:var(--sub); margin-bottom:2.5rem; font-weight:450; }
.form-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 1.1rem; margin-bottom: 1rem; }
.form-field{ display:flex; flex-direction:column; gap:6px; margin-bottom: 1rem; }
.form-field.full{ grid-column: 1 / -1; }
label{ font-size:.9rem; font-weight:750; color:var(--sub); }
input, textarea, select{
  font-family:'Inter', sans-serif;
  font-size: 1rem;
  font-weight: 450;
  background: var(--white);
  border: 1px solid var(--border);
  color: var(--text);
  border-radius: 12px;
  padding: .8rem 1rem;
  width:100%;
  outline:none;
  transition: border-color .2s;
}
input:focus, textarea:focus, select:focus{ border-color:#6b7280; }
textarea{ min-height: 160px; resize: vertical; line-height:1.7; }
select{ cursor:pointer; }

.submit-btn{
  font-family:'Inter', sans-serif;
  font-size:1rem;
  font-weight:900;
  color:#fff;
  background: #0a0a0a;
  border:none;
  cursor:pointer;
  padding: .95rem 1.6rem;
  border-radius: 12px;
  transition: all .22s ease;
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top: .6rem;
  box-shadow: 0 4px 16px rgba(0,0,0,.2);
  letter-spacing: -.01em;
}
.submit-btn:hover{ opacity:.92; transform: translateY(-1px); box-shadow: 0 6px 22px rgba(0,0,0,.28); }
.submit-btn:active{ transform: translateY(0); }
.submit-btn:disabled{ opacity:.5; cursor:not-allowed; transform:none; box-shadow:none; }

.form-msg{ font-size: 1rem; margin-top:1rem; line-height: 1.6; }
.form-ok{ color:#16a34a; }
.form-error{ color:#dc2626; }
.form-note{ font-size:.92rem; color: var(--muted); margin-top: .85rem; font-weight: 450; }

/* FAQ Accordion */
.faq-accordion {
  max-width: 800px;
  margin: 0 auto;
}

.faq-item {
  border-bottom: 1px solid var(--border);
  margin-bottom: 0;
}

.faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: left;
  background: transparent;
  border: none;
  padding: 1.25rem 0;
  cursor: pointer;
  font-family: 'Inter', sans-serif;
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--text);
  transition: all 0.2s ease;
  position: relative;
}

.faq-question:hover {
  color: var(--sub);
}

.faq-question:focus {
  outline: none;
  color: var(--sub);
}

.faq-question.active {
  color: var(--text);
}

.faq-question span {
  flex: 1;
  padding-right: 1rem;
}

.faq-icon {
  flex-shrink: 0;
  color: var(--muted);
  transition: transform 0.3s ease;
}

.faq-question.active .faq-icon {
  transform: rotate(180deg);
  color: var(--text);
}

.faq-answer {
  padding-bottom: 1.25rem;
  animation: fadeIn 0.3s ease;
}

.faq-answer p {
  margin-bottom: 0.75rem;
  font-size: 1.02rem;
  line-height: 1.75;
}

.faq-answer ul {
  margin: 0.75rem 0;
  padding-left: 1.25rem;
}

.faq-answer ul li {
  margin-bottom: 0.5rem;
  padding-left: 0;
  position: relative;
}

.faq-answer ul li::before {
  content: '•';
  position: absolute;
  left: -1.25rem;
  color: var(--muted);
  font-weight: 700;
}

.faq-answer code {
  background: var(--light);
  padding: 0.2rem 0.4rem;
  border-radius: 4px;
  font-family: 'SF Mono', 'Consolas', monospace;
  font-size: 0.9em;
  color: var(--text);
}

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

/* Mobile FAQ */

  .faq-answer {
    padding-bottom: 1rem;
  }

  .faq-answer p {
    font-size: 0.98rem;
    line-height: 1.7;
  }

  .faq-icon {
    width: 18px;
    height: 18px;
  }

/* Verify page specific layout - single column */
.verify-page {
  display: block !important;
  min-height: calc(100vh - 72px);
  padding-top: 72px; /* offset fixed header */
}

.verify-page > .search-section,
.verify-page > .results-section {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

.verify-page > .search-section {
  padding: 3rem 1rem 2.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

/* Index page search section (reuses verify page styles) */
.search-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 3rem 1rem 2.5rem;
  text-align: center;
}

.search-section .search-title {
  font-family: 'Instrument Serif', serif;
  font-size: clamp(2.4rem, 5.8vw, 4.8rem);
  font-weight: 500;
  line-height: 1.06;
  letter-spacing: -0.03em;
  color: var(--text);
  margin: 0;
}

.search-section .search-subtitle {
  max-width: 640px;
  font-size: 1.1rem;
  color: var(--sub);
  font-weight: 350;
  line-height: 1.7;
  margin: 0 auto 2rem;
}

/* Shared search form styles */
#indexSearchForm,
#verifyForm {
  position: relative;
  max-width: 720px;
  width: 100%;
  margin: 0 auto;
}

.search-box,
#indexSearchForm > div,
#verifyForm > div {
  display: flex;
  align-items: center;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 28px;
  padding: 0 1.25rem;
  box-shadow: 0 2px 6px rgba(0,0,0,.06);
  transition: all .2s ease;
  gap: 0;
  overflow: hidden;
  position: relative;
}

.search-icon,
#indexSearchForm .search-icon,
#verifyForm .search-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--muted);
  flex-shrink: 0;
}

.search-divider,
#indexSearchForm .search-divider,
#verifyForm .search-divider {
  width: 1px;
  background: var(--border);
  height: 24px;
  margin: 0 0.5rem;
  flex-shrink: 0;
}

.search-box:hover,
#indexSearchForm > div:hover,
#verifyForm > div:hover {
  box-shadow: 0 4px 14px rgba(0,0,0,.12);
  border-color: #c2c2c2;
}

.search-box:focus-within,
#indexSearchForm > div:focus-within,
#verifyForm > div:focus-within {
  box-shadow: 0 6px 20px rgba(0,0,0,.18), 0 0 0 3px rgba(47,249,36,.15);
  border-color: #2ff924;
  outline: none;
}

.search-input,
#indexSearchInput,
#verifyQuery {
  border: none !important;
  background: transparent !important;
  padding: .75rem 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  flex: 1;
  font-size: 1.05rem;
  font-weight: 400;
}

.search-input:focus,
#indexSearchInput:focus,
#verifyQuery:focus {
  outline: none;
  border-color: transparent !important;
  box-shadow: none !important;
}

.search-input::placeholder,
#indexSearchInput::placeholder,
#verifyQuery::placeholder {
  color: var(--muted);
  opacity: 0.85;
  font-weight: 400;
}

.search-btn,
#verifyBtn {
  margin-top: 0;
  border-radius: 0;
  padding: .9rem 1.5rem;
  background: transparent;
  color: var(--text);
  font-weight: 500;
  font-size: .95rem;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: all .15s ease;
  position: relative;
  overflow: hidden;
}

.search-btn:hover,
#verifyBtn:hover {
  background: var(--light);
  color: var(--text);
}

.search-btn:active,
#verifyBtn:active {
  transform: scale(0.96);
}

.search-btn svg,
#verifyBtn svg {
  transition: transform .2s ease;
}

.search-btn:hover svg,
#verifyBtn:hover svg {
  transform: translateX(2px);
}

.verify-page > .results-section {
  min-height: 400px;
  padding: 2.5rem 1rem 1rem;
}

/* Results container – top section (verified records) */
.results-container {
  width: 100%;
  margin-bottom: 0;
  padding-bottom: 2rem;
  border-bottom: 1px solid var(--border);
}

.results-container .results-section-header {
  margin-bottom: 1.5rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--border);
}

/* Individual verification card spacing */
.results-container .verification-card {
  margin-bottom: 1.5rem;
}

/* No internal results – professional messaging with breathing room */
.results-container .no-internal-results {
  padding: 2.5rem 1.5rem;
  text-align: center;
  color: var(--sub);
  border: 1px dashed var(--border);
  border-radius: 16px;
  background: var(--light);
  font-size: 0.95rem;
  line-height: 1.7;
  margin-bottom: 3rem; /* Generous space before web results */
}

.results-container .no-internal-results h3 {
  font-family: 'Instrument Serif', serif;
  font-size: 1.4rem;
  color: var(--text);
  margin-bottom: 0.5rem;
  font-weight: 500;
  letter-spacing: -0.01em;
}

.results-container .no-internal-results p {
  margin: 0;
  font-size: 0.95rem;
  color: var(--sub);
  line-height: 1.7;
}

.results-container .no-internal-results strong {
  color: var(--text);
  font-weight: 600;
}

/* Google results wrapper additional spacing */
.google-results-wrapper .results-section-header {
  margin-bottom: 1.25rem;
}

/* Ensure smooth transition between result sections */
#verifyResults + .google-results-wrapper {
  animation: fadeInUp 0.4s ease-out;
}

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

/* Center empty state under search */
#verifyEmpty {
  max-width: 600px;
  margin: 2rem auto 0;
  text-align: center;
  padding: 2rem 1rem;
}

#verifyEmpty .empty-title {
  font-family: 'Instrument Serif', serif;
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--text);
  margin-bottom: 0.5rem;
}

#verifyEmpty .empty-text {
  font-size: 1rem;
  color: var(--sub);
  font-weight: 350;
  line-height: 1.65;
}

/* Search stats – refined typography */
#searchStats {
  text-align: center;
  margin: 1.25rem 0 2rem;
  font-size: 0.95rem;
  color: var(--sub);
  font-weight: 350;
  letter-spacing: 0.01em;
}

#searchStats strong {
  color: var(--text);
  font-weight: 600;
}

/* Count display (e.g. 12345678910) */
#resultCount {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  font-family: 'SF Mono', 'Consolas', monospace;
  font-size: 1rem;
  font-weight: 800;
  color: var(--text);
  white-space: nowrap;
}

#resultCount strong {
  font-size: 1.05rem;
}

@media (max-width: 768px) {
  #resultCount {
    font-size: 0.9rem;
  }
}

/* Google-style search bar */
#verifyForm {
  position: relative;
  max-width: 720px;
  width: 100%;
  margin: 0 auto;
}

#verifyForm > div {
  display: flex;
  align-items: center;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 28px;
  padding: 0 1.25rem;
  box-shadow: 0 2px 6px rgba(0,0,0,.06);
  transition: all .2s ease;
  gap: 0;
  overflow: hidden;
  position: relative;
}

#verifyForm > div:hover {
  box-shadow: 0 4px 14px rgba(0,0,0,.12);
  border-color: #c2c2c2;
}

#verifyForm > div:focus-within {
  box-shadow: 0 6px 20px rgba(0,0,0,.18), 0 0 0 3px rgba(47,249,36,.15);
  border-color: #2ff924;
  outline: none;
}

#verifyForm input {
  border: none !important;
  background: transparent !important;
  padding: .75rem 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  flex: 1;
  font-size: 1.05rem;
  font-weight: 400;
}

#verifyForm input:focus {
  outline: none;
  border-color: transparent !important;
  box-shadow: none !important;
}

#verifyForm input::placeholder {
  color: var(--muted);
  opacity: 0.85;
  font-weight: 400;
}

#verifyForm button[type="submit"] {
  margin-top: 0;
  border-radius: 0;
  padding: .9rem 1.5rem;
  background: transparent;
  color: var(--text);
  font-weight: 500;
  font-size: .95rem;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: all .15s ease;
  position: relative;
  overflow: hidden;
}

#verifyForm button[type="submit"]:hover {
  background: var(--light);
  color: var(--text);
}

#verifyForm button[type="submit"]:active {
  transform: scale(0.96);
}

#verifyForm button[type="submit"] svg {
  transition: transform .2s ease;
}

#verifyForm button[type="submit"]:hover svg {
  transform: translateX(2px);
}

/* Stats */
#searchStats {
  font-size: .85rem;
  color: var(--muted);
  margin-top: .75rem;
}

#verifyForm > div {
  display: flex;
  align-items: center;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 28px;
  padding: 0 1.25rem;
  box-shadow: 0 2px 6px rgba(0,0,0,.06);
  transition: all .2s ease;
  gap: 0;
  overflow: hidden;
}

#verifyForm > div:hover {
  box-shadow: 0 4px 14px rgba(0,0,0,.12);
  border-color: #c2c2c2;
}

#verifyForm > div:focus-within {
  box-shadow: 0 6px 20px rgba(0,0,0,.15);
  border-color: #2ff924;
  outline: none;
}

#verifyForm input {
  border: none !important;
  background: transparent !important;
  padding: .75rem 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  flex: 1;
  font-size: 1.05rem;
}

#verifyForm input:focus {
  outline: none;
  border-color: transparent !important;
}

#verifyForm input::placeholder {
  color: var(--muted);
  opacity: 0.85;
}

#verifyForm button[type="submit"] {
  margin-top: 0;
  border-radius: 0;
  padding: .9rem 1.5rem;
  background: transparent;
  color: var(--text);
  font-weight: 500;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: all .15s ease;
}

#verifyForm button[type="submit"]:hover {
  background: var(--light);
  color: var(--text);
}

#verifyForm button[type="submit"]:active {
  transform: scale(0.96);
}

/* Verify page results and cards */
.search-result-card,
.result-card,
.verification-card {
  display: flex;
  flex-direction: column;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 1.5rem;
  margin-bottom: 1rem;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
  transition: transform .2s ease, box-shadow .2s ease;
}

/* Hover effect on desktop (complementary to media query) */
.search-result-card:hover,
.result-card:hover,
.verification-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
}

/* Verification Card: Header with logo */
.verification-card .v-card-header {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1rem;
}

.verification-card .v-company-logo {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  object-fit: cover;
  flex-shrink: 0;
  border: 1px solid var(--border);
  background: var(--light);
}

.verification-card .v-person-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: 0.45rem;
  padding: 0.3rem 0.65rem;
  font-size: 0.82rem;
  color: var(--text);
  background: rgba(15, 118, 110, 0.08);
  border: 1px solid rgba(15, 118, 110, 0.16);
  border-radius: 999px;
}

.verification-card .v-header-info {
  flex: 1;
  min-width: 0;
}

.verification-card .v-status-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.5rem;
  gap: 0.75rem;
   flex-wrap: wrap;
 }

  .verification-card .v-company {
    font-family: 'Instrument Serif', serif;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.2;
    color: var(--text);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
  }

  .verification-card .v-person-avatar {
    width: 80px;
    height: 80px;
    border-radius: 999px;
    object-fit: cover;
    flex-shrink: 0;
    border: 1px solid var(--border);
    background: var(--light);
  }

  .verification-card .v-card-header-person {
    align-items: center;
  }

  .verification-card .v-person-role,
  .verification-card .v-person-location {
    margin: 0.35rem 0 0;
    font-size: 0.95rem;
    line-height: 1.4;
    color: var(--text-light);
  }

  .verification-card .v-person-role {
    color: var(--text);
    font-weight: 600;
  }

  /* Flag emoji for countries */
  .verification-card .v-flag-emoji {
    font-size: 2rem;
    line-height: 1;
    vertical-align: middle;
  }

  /* Capital name pill — matches beta badge style */
  .verification-card .v-capital-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.18rem 0.45rem;
    background: var(--text);
    color: var(--white);
    font-family: 'Inter', sans-serif;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    border-radius: 999px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    vertical-align: middle;
  }

  /* Country meta line */
  .verification-card .v-capital,
  .verification-card .v-meta-line {
    font-size: 0.82rem;
    color: var(--text-light);
    margin-top: 0.18rem;
  }
  .verification-card .v-capital,
  .verification-card .v-meta-label {
    font-weight: 600;
    color: var(--sub);
  }

/* Status badge (verified/pending) */
.verification-card .status-badge {
  display: inline-flex;
  align-items: center;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
  padding: 0.25rem 0.6rem;
  line-height: 1;
  vertical-align: middle;
}
.verification-card .status-verified {
  color: #059669;
  background: #d1fae5;
  border: 1px solid #a7f3d0;
}
.verification-card .status-pending {
  color: #d97706;
  background: #fef3c7;
  border: 1px solid #fcd34d;
}
.verification-card .status-rejected {
  color: #dc2626;
  background: #fee2e2;
  border: 1px solid #fca5a5;
}

/* Verified by Sinioo badge */
.verification-card .verified-badge {
  display: inline-flex;
  align-items: center;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #059669;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  border-radius: 999px;
  padding: 0.2rem 0.5rem;
  margin-top: 0.25rem;
  vertical-align: middle;
}

.verification-card .v-summary {
  font-size: 0.95rem;
  color: var(--sub);
  line-height: 1.65;
  font-weight: 350;
  margin-top: 0.5rem;
}

/* Credential ID in status row */
.verification-card .credential-id {
  font-family: 'SF Mono', 'Consolas', monospace;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--muted);
  letter-spacing: 0.03em;
}

/* Verification Card: Details grid */
.verification-card .v-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 0.75rem;
  padding: 1rem 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  margin-bottom: 1rem;
}

.verification-card .v-detail-item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.verification-card .v-detail-label {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}

 .verification-card .v-detail-value {
   font-size: 0.95rem;
   color: var(--text);
   font-weight: 450;
   word-break: break-all;
   display: flex;
   align-items: center;
   gap: 0.5rem;
 }

 .verification-card .v-company-profile {
   margin-top: 0.75rem;
   padding: 0.75rem 0;
   border-top: 1px solid var(--border);
 }
 .verification-card .v-detail-label-full {
   font-size: 0.85rem;
   font-weight: 700;
   letter-spacing: 0.06em;
   text-transform: uppercase;
   color: var(--sub);
   margin-bottom: 0.5rem;
 }

 .verification-card .v-founder-cell {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.verification-card .v-founder-avatar {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid var(--border);
  flex-shrink: 0;
}

/* Verification Card: Social Links */
 .verification-card .v-social-links {
   display: flex;
   gap: 0.5rem;
   flex-wrap: wrap;
 }
 .verification-card .v-social-links a {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 32px;
   height: 32px;
   padding: 0;
   background: var(--light);
   border: 1px solid var(--border);
   border-radius: 8px;
   text-decoration: none;
   color: var(--text);
   transition: all 0.15s ease;
 }
  .verification-card .v-social-links a.v-social-icon {
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 8px;
  }

  /* Brand-colored social icons - inline style var overrides */
  .verification-card .v-social-icon[style*="color"],
  .verification-card .v-social-hold-btn[style*="--brand-color"] {
    transition: all 0.2s ease;
  }
  .verification-card .v-social-icon[style*="color"]:hover,
  .verification-card .v-social-hold-btn[style*="--brand-color"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  }
  .verification-card .v-social-hold-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    background: var(--light);
    border: 1px solid var(--border);
    border-radius: 10px;
    text-decoration: none;
    color: var(--text);
    transition: all 0.15s ease;
  }
  .verification-card .v-social-hold-btn:hover {
    background: var(--border);
    transform: translateY(-1px);
  }
  .verification-card .v-social-hold-btn .v-social-icon {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .verification-card .v-social-hold-btn .v-social-icon svg {
    width: 20px;
    height: 20px;
  }
  .verification-card .v-social-hold-btn.v-social-linkedin { border-left: 3px solid #0077B5; }
  .verification-card .v-social-hold-btn.v-social-instagram { border-left: 3px solid #E4405F; }
  .verification-card .v-social-hold-btn.v-social-x { border-left: 3px solid #000000; }
  .verification-card .v-social-hold-btn.v-social-tiktok { border-left: 3px solid #000000; }
  .verification-card .v-social-hold-btn.v-social-facebook { border-left: 3px solid #1877F2; }
  .verification-card .v-social-hold-btn.v-social-website { border-left: 3px solid #0d47a1; }
  .verification-card .v-social-hold-btn.v-social-youtube { border-left: 3px solid #FF0000; }
  .verification-card .v-social-hold-btn.v-social-github { border-left: 3px solid #333333; }
  .verification-card .v-social-hold-btn[style*="--brand-color"] {
    border-left: 4px solid var(--brand-color);
    color: var(--brand-color);
  }

  /* Social hold section (company card full-width social buttons drawer) */
  .verification-card .v-social-hold-section {
    margin-top: 1rem;
    padding: 1rem;
    background: var(--light);
    border-radius: 12px;
  }
  .verification-card .v-social-heading {
    font-size: 0.95rem;
    margin: 0 0 0.75rem 0;
    font-weight: 600;
    color: var(--text);
  }
  .verification-card .v-social-hold-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

/* Verification Card: Health Panel */
.verification-card .v-health-panel {
  background: var(--light);
  border-radius: 12px;
  padding: 1rem;
  margin-bottom: 1rem;
}

.verification-card .v-health-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.75rem;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--muted);
}

.verification-card .v-health-score {
  font-size: 1.4rem;
  font-weight: 700;
}

.verification-card .v-health-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
  gap: 1rem;
}

.verification-card .v-health-item {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  text-align: center;
  padding: 0.5rem;
  background: var(--white);
  border-radius: 8px;
  border: 1px solid var(--border);
}

.verification-card .v-health-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.verification-card .v-health-value {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--text);
}

/* Verification Card: Footer */
.verification-card .v-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.75rem;
  border-top: 1px solid var(--border);
  gap: 1rem;
  flex-wrap: wrap;
}

.verification-card .v-credential-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  font-size: 0.85rem;
  color: var(--sub);
  font-weight: 400;
}

.verification-card .v-credential-meta strong {
  color: var(--text);
  font-weight: 700;
}

.verification-card .v-credential-meta code {
  font-family: 'SF Mono', 'Consolas', monospace;
  background: var(--light);
  padding: 0.15rem 0.4rem;
  border-radius: 4px;
  font-size: 0.82rem;
  color: var(--text);
}

/* Expand Button */
.verification-card .v-expand-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 0.5rem 1rem;
  font-family: 'Inter', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--text);
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.verification-card .v-expand-btn:hover {
  background: var(--light);
  border-color: var(--text);
}

.verification-card .v-expand-btn .v-expand-icon {
  transition: transform 0.3s ease;
}

.verification-card .v-expand-btn[aria-expanded="true"] .v-expand-icon {
  transform: rotate(180deg);
}

.verification-card .v-expand-btn .v-expand-text {
  display: inline;
}

/* Expandable Drawer */
.verification-card .v-drawer {
  display: none;
  margin-top: 1rem;
  border-radius: 12px;
  overflow: hidden;
  background: var(--light);
  border: 1px solid var(--border);
}

.verification-card .v-drawer.open {
  display: block;
}

.verification-card .v-drawer-inner {
  padding: 1.25rem;
}

.verification-card .v-full-report {
  max-width: 600px;
}

.verification-card .v-section-title {
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.verification-card .v-metrics-table {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 1rem;
}

.verification-card .v-metric-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.6rem 0.75rem;
  background: var(--white);
  border-radius: 8px;
  border: 1px solid var(--border);
}

.verification-card .v-metric-label {
  font-size: 0.92rem;
  color: var(--sub);
  font-weight: 400;
}

.verification-card .v-metric-value {
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--text);
}

.verification-card .v-report-note {
  font-size: 0.85rem;
  color: var(--muted);
  line-height: 1.6;
  font-weight: 350;
  margin: 0;
}

/* Country image gallery */
.verification-card .v-image-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}
.verification-card .v-image-item {
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--border);
  background: var(--light);
}
.verification-card .v-image-item img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}
.verification-card .v-image-item img:hover {
  transform: scale(1.02);
}

/* Skeleton loading */
.skeleton-loader {
  display: block;
  max-width: 1100px;
  margin: 0 auto;
}

.result-card.skeleton {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 1.5rem;
  margin-bottom: 1rem;
}

.skeleton-logo {
  width: 72px;
  height: 72px;
  border-radius: 12px;
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  flex-shrink: 0;
}

.skeleton-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.skeleton-line {
  height: 1rem;
  border-radius: 6px;
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}

.skeleton-line.long { width: 80%; }
.skeleton-line.medium { width: 60%; }
.skeleton-line.full { width: 100%; }

@keyframes shimmer {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* Mobile */
@media (max-width: 900px){
  .hero{ padding-top: 108px; }
  .product{ flex-direction:column; }
  .product-status{ min-width: auto; }
  footer{ flex-direction:column; align-items:flex-start; }
  .footer-links{ flex-direction:column; gap: .75rem; }
  .footer-links a{ width:100%; }
  .page{ grid-template-columns: 1fr; }
  .page-left{ border-right:none; border-bottom:1px solid var(--border); padding: 4.5rem 1.5rem 3.5rem; }
  .page-right{ padding: 3.5rem 1.5rem; }
  :root{ --pad-x: 1.5rem; }

  /* Verify page mobile specific */
  .search-section { padding: 2rem 0 1.5rem; }
  .search-title { font-size: clamp(1.6rem, 6vw, 2.2rem); }
  #verifyForm .submit-btn { padding: .65rem 1.25rem; font-size: .9rem; }
  .search-result-card { padding: 1.25rem !important; margin-bottom: .75rem !important; }
  .search-result-card img[width="72"] { width: 56px !important; height: 56px !important; }
  .search-result-card h3 { font-size: 1.25rem !important; }
  .search-result-card .btn-primary, .search-result-card .btn-ghost { padding: .5rem 1rem !important; font-size: .85rem !important; }

  /* Verification Card Mobile */
  .verification-card { padding: 1.25rem; }
  .verification-card .v-card-header { gap: 0.85rem; }
  .verification-card .v-company-logo { width: 64px; height: 64px; }
  .verification-card .v-company { font-size: 1.3rem; }
  .verification-card .v-details { grid-template-columns: 1fr 1fr; gap: 0.75rem; padding: 0.85rem 0; }
  .verification-card .v-health-grid { grid-template-columns: repeat(3, 1fr); gap: 0.5rem; }
  .verification-card .v-health-item { padding: 0.4rem; }
  .verification-card .v-health-value { font-size: 1rem; }
  .verification-card .v-footer { flex-direction: column; align-items: flex-start; gap: 0.75rem; }
  .verification-card .v-credential-meta { flex-direction: column; gap: 0.35rem; font-size: 0.82rem; }
  .verification-card .v-expand-btn { width: 100%; justify-content: center; }
  .verification-card .v-metric-row { padding: 0.5rem; }
  .verification-card .v-metric-label { font-size: 0.85rem; }
  .verification-card .v-metric-value { font-size: 0.9rem; }

  /* Google result card mobile adjustments */
  .google-result-card .v-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }

  .google-result-card .v-visit-btn {
    width: 100%;
    text-align: center;
    justify-content: center;
    display: flex;
  }
}

@media (max-width: 768px) {
  .nav-right{ display:none; }
  .hamburger{ display:flex; }
  .nav-drawer{ display:none; }
  .hero{ padding: 104px 1.25rem 56px; }
  .hero h1{ font-size: 1.95rem; }
  .hero p{ font-size: 1.02rem; }

  /* Home: keep section paddings consistent with verify/apply spacing */
  .explanation-section{ padding: 2.25rem 1rem !important; }
  .explanation-section > h2{ font-size: 1.6rem !important; margin-bottom: 1.1rem !important; }
  .product{ padding: 1.1rem 1rem !important; }
  .product-name{ font-size: 1.3rem !important; }
  .product-desc{ font-size: 1rem !important; }


  /* Verify page mobile specific */
  .page { padding: 0 1rem 2rem !important; max-width: 100% !important; }
  .search-section { padding: 1.5rem 0 1rem; }
  .search-title { font-size: 1.75rem; }
  
  #verifyForm { max-width: 100%; }
  #verifyForm > div {
    padding: 0 1rem;
    border-radius: 24px;
    gap: 0;
  }
  #verifyForm input {
    font-size: 1rem;
    padding: .65rem 0 !important;
  }
  #verifyForm button[type="submit"] {
    padding: .65rem 1rem !important;
    font-size: .85rem !important;
    gap: 4px;
  }
  #verifyForm button[type="submit"] span {
    display: inline;
  }
  #verifyForm button[type="submit"] svg {
    width: 14px;
    height: 14px;
  }
   #verifyForm input::placeholder { font-size: .95rem; }
     
   /* Index search mobile */
   #indexSearchForm { max-width: 100%; }
   #indexSearchForm > div {
     padding: 0 1rem;
     border-radius: 24px;
   }
   #indexSearchForm input {
     font-size: 1rem;
     padding: .65rem 0 !important;
   }
   #indexSearchForm button[type="submit"] {
     padding: .65rem 1rem !important;
     font-size: .85rem !important;
   }
   #indexSearchForm button[type="submit"] span {
     display: inline;
   }
   #indexSearchForm button[type="submit"] svg {
     width: 14px;
     height: 14px;
   }
   #indexSearchForm input::placeholder { font-size: .95rem; }

   /* Result cards stacked */
   .search-result-card { 
     padding: 1rem !important; 
   }
   .search-result-card > div:first-child { gap: .75rem !important; }
   .search-result-card img { 
     width: 48px !important; 
     height: 48px !important; 
     min-width: 48px !important;
   }
   .search-result-card h3 { font-size: 1.15rem !important; }
   .search-result-card p { font-size: .95rem !important; line-height: 1.6; }
   .search-result-card .btn-primary, 
   .search-result-card .btn-ghost { 
     padding: .45rem .85rem !important; 
     font-size: .8rem !important; 
     min-width: 44px;
     justify-content: center;
   }
   .search-result-card > div:first-child { flex-direction: row !important; align-items: flex-start; }
    
    /* Technical health panel mobile */
    .search-result-card .health-panel {
      padding: .75rem !important;
    }
    .search-result-card .health-header {
      font-size: .75rem !important;
    }
    .search-result-card .health-metrics {
      gap: .5rem !important;
      flex-wrap: wrap !important;
    }
    .search-result-card .health-metric {
      min-width: 80px !important;
    }
    .search-result-card .health-metric-label {
      font-size: .7rem !important;
    }
     .search-result-card .health-metric-value {
       font-size: 1rem !important;
     }

     /* Founder section mobile */
     .founder-section .founder-profile {
       flex-direction: column;
       gap: 1rem;
       align-items: center;
       text-align: center;
     }

     .founder-section .founder-img {
       width: 140px;
       height: 140px;
     }

      .founder-section .founder-name {
        font-size: 1rem;
      }


      /* Unified card mobile adjustments */
      .google-result-card .v-footer {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
      }

      .google-result-card .v-visit-btn {
        width: 100%;
        text-align: center;
        justify-content: center;
      }

      /* Reduce source badge size on mobile */
      .result-source-badge {
        font-size: 0.6rem;
        padding: 0.15rem 0.4rem;
      }

     .google-result-card .v-source-url {
        font-size: 0.75rem;
      }

  /* Verify page image sizes + alignment (professional placement) */
  .verification-card .v-company-logo{
    width:72px;
    height:72px;
    object-fit:cover;
    flex-shrink:0;
    display:block;
  }

  .verification-card .v-health-panel img{
    width:100%;
    height:auto;
    display:block;
    object-fit:contain;
  }

  /* ===== Web (Google CSE) mobile responsive fixes (Verify page) ===== */
  #webResultsContainer,
  #googleResultsContainer {
     padding-left: 0 !important;
     padding-right: 0 !important;
   }

   #webResultsContainer .gsc-result,
   #googleResultsContainer .gsc-result {
     padding: 1rem !important;
     margin-bottom: 1rem !important;
     border-radius: 14px;
   }

   #webResultsContainer .gs-title,
   #googleResultsContainer .gs-title {
     font-size: 1.1rem !important;
   }

   #webResultsContainer .gs-snippet,
   #googleResultsContainer .gs-snippet {
     font-size: 0.92rem !important;
     line-height: 1.6 !important;
     margin-top: 0.5rem !important;
     margin-bottom: 0.6rem !important;
   }

   #webResultsContainer .gs-visibleUrl,
   #webResultsContainer .gsc-url,
   #googleResultsContainer .gs-visibleUrl,
   #googleResultsContainer .gsc-url {
     font-size: 0.78rem !important;
   }

   /* Make the section header stack nicely on mobile */
   .results-section-header {
     flex-direction: column;
     align-items: flex-start;
     gap: 0.6rem;
   }
}

/* Small desktop/tablet */
@media (min-width: 769px) and (max-width: 1024px) {
  .page { padding: 0 2rem 3rem; }
  .search-result-card { padding: 1.35rem; }
}

/* Desktop */
@media (min-width: 1025px) {
  .search-result-card:hover {
    box-shadow: 0 12px 32px rgba(0,0,0,.1);
    transform: translateY(-3px);
  }
}

/* Extra wide screens */
@media (min-width: 1280px) {
  .page { max-width: 1400px; }
}

/* High contrast / accessibility */
@media (prefers-reduced-motion: reduce) {
  .search-result-card { transition: none; transform: none; }
  .search-result-card button { transition: none; }
  #verifyForm .submit-btn:hover { transform: none; box-shadow: none; }
}

/* Touch devices */
@media (hover: none) and (pointer: coarse) {
  .search-result-card {
    border: 2px solid var(--border);
  }
  .search-result-card:active {
    border-color: var(--text);
    transform: scale(0.99);
  }
}

/* Verify page e‑signature badge (inner content only) */
.verify-page .esign-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1rem;
  padding: 0.5rem 1rem;
  background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
  border: 1px solid #bbf7d0;
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 600;
  color: #166534;
  box-shadow: 0 2px 8px rgba(34,197,94,.08);
}

   .verify-page .esign-badge svg {
      color: #16a34a;
      flex-shrink: 0;
    }


   /* Hide Google CSE hidden searchbox on verify page */
   .verify-page .cse-hidden-searchbox {
     position: absolute !important;
     left: -9999px !important;
     top: -9999px !important;
     width: 1px !important;
     height: 1px !important;
     opacity: 0 !important;
     pointer-events: none !important;
     overflow: hidden !important;
   }

/* ==========================================
   UNIFIED SEARCH RESULTS
   ========================================== */

/* Results groups (separating internal vs web) */
.results-group {
   margin-bottom: 2.5rem;
 }

/* ============================================
   SEARCH RESULTS SECTION HEADERS
   ============================================ */

.results-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.25rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--border);
  flex-wrap: wrap;
  gap: 0.75rem;
}

.results-section-header .section-title {
  font-family: 'Inter', sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--text);
  margin: 0;
  letter-spacing: 0.01em;
}

.results-section-header .section-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem 0.6rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-radius: 999px;
  background: #ecfdf5;
  color: #059669;
  border: 1px solid #a7f3d0;
}

.results-section-header .section-badge.google-badge {
  background: #fef2f2;
  color: #dc2626;
  border-color: #fca5a5;
}

/* Results-group-title removed – using results-section-header */

.results-badge:last-child {
  background: #eef2ff;
  color: #4f46e5;
  border-color: #c7d2fe;
}

.results-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Web result card */
.web-result-card {
  padding: 1.25rem 1.5rem;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 14px;
  transition: box-shadow 0.25s ease, transform 0.2s ease;
}

.web-result-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}

.web-result-header {
  margin-bottom: 0.4rem;
}

.web-result-source {
  font-size: 0.8rem;
  color: var(--muted);
  font-weight: 500;
}

.web-result-title {
  font-family: 'Instrument Serif', serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.3;
  margin-bottom: 0.4rem;
}

.web-result-title a {
  color: #1a0dab;
  text-decoration: none;
  transition: color 0.15s ease;
}

.web-result-title a:hover {
  color: #0d47a1;
  text-decoration: underline;
}

.web-result-snippet {
  font-size: 0.9rem;
  color: var(--sub);
  line-height: 1.6;
  font-weight: 350;
  margin-bottom: 0.5rem;
}

.web-result-footer {
  padding-top: 0.5rem;
}

.web-result-url {
  font-size: 0.8rem;
  color: var(--muted);
  font-family: 'SF Mono', 'Consolas', monospace;
  word-break: break-all;
  text-decoration: none;
}

.web-result-url:hover {
  color: var(--text);
  text-decoration: underline;
}

/* Hide skeleton when results are rendered */
#verifySkeleton[hidden] {
  display: none !important;
}

/* ============================================
   GOOGLE CSE RESULTS – PROFESSIONAL SINIOO STYLING
   ============================================ */

/* Unified results container – both internal and web results */
.unified-results {
  width: 100%;
  margin-bottom: 0;
  padding-bottom: 2rem;
}

.unified-results .results-section-header {
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--border);
}

.unified-results .results-section-header .section-title {
  font-family: 'Inter', sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--text);
  margin: 0;
  letter-spacing: 0.01em;
}

.unified-results .results-section-header .section-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem 0.6rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-radius: 999px;
}

.unified-results .section-badge.verified-badge {
  background: #ecfdf5;
  color: #059669;
  border: 1px solid #a7f3d0;
}

.unified-results .section-badge.unverified-badge {
  background: #fef2f2;
  color: #dc2626;
  border: 1px solid #fca5a5;
}

/* Result source badge – appears on each card */
.result-source-badge {
  display: inline-flex;
  align-items: center;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
  padding: 0.2rem 0.5rem;
  margin-bottom: 0.5rem;
}

.result-source-badge.verified-source {
  background: #ecfdf5;
  color: #059669;
  border: 1px solid #a7f3d0;
}

.result-source-badge.unverified-source {
  background: #fef2f2;
  color: #dc2626;
  border: 1px solid #fca5a5;
}

/* Unified card base – matches .verification-card styling */
.unified-result-card {
  display: flex;
  flex-direction: column;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.unified-result-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

/* Google result card specifics – match verification-card structure */
.google-result-card .v-company {
  font-family: 'Instrument Serif', serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--text);
  margin: 0 0 0.25rem 0;
}

.google-result-link {
  color: var(--text);
  text-decoration: none;
  transition: color 0.2s ease;
}

.google-result-link:hover {
  color: #0d47a1;
  text-decoration: underline;
}

.v-source-url {
  font-size: 0.8rem;
  color: var(--muted);
  font-family: 'SF Mono', 'Consolas', monospace;
  word-break: break-all;
  display: block;
  margin-top: 0.15rem;
}

.unified-result-card .v-summary {
  font-size: 0.95rem;
  color: var(--sub);
  line-height: 1.65;
  font-weight: 350;
  margin-top: 0.5rem;
}

.unified-result-card .v-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 0.75rem;
  padding: 1rem 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  margin-bottom: 1rem;
}

.unified-result-card .v-detail-item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.unified-result-card .v-detail-label {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}

.unified-result-card .v-detail-value code {
  font-family: 'SF Mono', 'Consolas', monospace;
  background: var(--light);
  padding: 0.15rem 0.4rem;
  border-radius: 4px;
  font-size: 0.82rem;
}

.unified-result-card .v-detail-value code {
  font-family: 'SF Mono', 'Consolas', monospace;
  background: var(--light);
  padding: 0.15rem 0.4rem;
  border-radius: 4px;
  font-size: 0.82rem;
}

.unified-result-card .status-badge {
  display: inline-flex;
  align-items: center;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: 999px;
  padding: 0.25rem 0.6rem;
  line-height: 1;
  vertical-align: middle;
}

.status-verified {
  color: #059669;
  background: #d1fae5;
  border: 1px solid #a7f3d0;
}

 .status-unverified {
   color: #dc2626;
   background: #fee2e2;
   border: 1px solid #fca5a5;
 }

 .unverified-card .v-company a {
   color: #1a0dab;
   text-decoration: none;
   transition: color 0.15s ease;
 }

 .unverified-card .v-company a:hover {
   color: #0d47a1;
   text-decoration: underline;
 }

 .unified-result-card .v-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.75rem;
  border-top: 1px solid var(--border);
}

.unified-result-card .v-credential-meta {
  font-size: 0.85rem;
  color: var(--sub);
  font-weight: 400;
}

.unified-result-card .v-credential-meta strong {
  color: var(--text);
  font-weight: 700;
}

.unified-result-card .v-founder {
  display: block;
  font-size: 0.95rem;
  color: var(--sub);
  font-weight: 450;
  margin-top: 0.15rem;
}

.unified-result-card .v-footer-link {
  display: flex;
  align-items: center;
}

.unified-result-card .v-visit-btn {
  font-family: 'Inter', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: #059669;
  background: transparent;
  border: 1px solid #a7f3d0;
  border-radius: 10px;
  padding: 0.5rem 1rem;
  text-decoration: none;
  transition: all 0.2s ease;
}

.unified-result-card .v-visit-btn:hover {
  background: #ecfdf5;
  border-color: #059669;
}

.unified-result-card .v-credential-meta strong {
  color: var(--text);
  font-weight: 700;
}

.unified-result-card .v-footer-link {
  display: flex;
  align-items: center;
}

.unified-result-card .v-visit-btn {
  font-family: 'Inter', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: #059669;
  background: transparent;
  border: 1px solid #a7f3d0;
  border-radius: 10px;
  padding: 0.5rem 1rem;
  text-decoration: none;
  transition: all 0.2s ease;
}

.unified-result-card .v-visit-btn:hover {
  background: #ecfdf5;
  border-color: #059669;
}

/* Founder avatar in results */
.unified-result-card .v-founder-cell {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.unified-result-card .v-founder-avatar {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid var(--border);
  flex-shrink: 0;
}

/* No results message */
.no-results-message {
  padding: 2rem 1.5rem;
  text-align: center;
  color: var(--sub);
  border: 1px dashed var(--border);
  border-radius: 16px;
  background: var(--light);
  margin-bottom: 3rem;
}

.no-results-message p {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.7;
}

.no-results-message strong {
  color: var(--text);
  font-weight: 600;
}

/* Hide Google CSE search box (keep results visible) */
.gcse-searchbox-only {
  position: absolute !important;
  left: -99999px !important;
  top: -99999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  visibility: hidden !important;
  z-index: -9999 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

/* Unified results sections separation */
.unified-results + .unified-results {
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid var(--border);
}

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

.google-results-wrapper .results-section-header {
  margin-bottom: 1.5rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--border);
}

/* CSE fallback error message */
#cseFallbackMessage {
  text-align: center;
  padding: 2.5rem 1.5rem;
  color: var(--sub);
  background: var(--light);
  border-radius: 16px;
  border: 1px dashed var(--border);
  margin-top: 1rem;
}
#cseFallbackMessage p {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
}
#cseFallbackMessage strong {
  color: var(--text);
}

/* Main results container */
#googleResultsContainer .gsc-results {
  display: flex;
  flex-direction: column;
  gap: 0;
  background: transparent;
  padding: 0;
}

/* Individual result card – for CSE results (visible web container) */
#webResultsContainer .gsc-result,
#googleResultsContainer .gsc-result {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 1.5rem;
  position: relative;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  margin-bottom: 1.5rem;
}

#webResultsContainer .gsc-result:hover,
#googleResultsContainer .gsc-result:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

/* Result header: title within CSE results */
#webResultsContainer .gsc-result .gs-title,
#googleResultsContainer .gsc-result .gs-title {
  font-family: 'Instrument Serif', serif;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 0 0.5rem 0;
  display: inline;
}

#webResultsContainer .gsc-result .gs-title a,
#googleResultsContainer .gsc-result .gs-title a {
  color: var(--text);
  text-decoration: none;
  transition: color 0.2s ease;
}

#webResultsContainer .gsc-result .gs-title a:hover,
#googleResultsContainer .gsc-result .gs-title a:hover {
  color: #0d47a1;
  text-decoration: underline;
}

/* Snippet typography */
#webResultsContainer .gsc-result .gs-snippet,
#googleResultsContainer .gsc-result .gs-snippet {
  font-size: 0.95rem;
  color: var(--sub);
  line-height: 1.7;
  font-weight: 350;
  margin: 0.75rem 0;
  max-width: 100%;
}

/* URL display */
#webResultsContainer .gsc-result .gs-visibleUrl,
#webResultsContainer .gsc-result .gsc-url,
#googleResultsContainer .gsc-result .gs-visibleUrl,
#googleResultsContainer .gsc-result .gsc-url {
  font-size: 0.8rem;
  color: var(--muted);
  font-family: 'SF Mono', 'Consolas', monospace;
  word-break: break-all;
  margin-top: 0.5rem;
  display: block;
}

#webResultsContainer .gsc-result .gs-visibleUrl:hover,
#webResultsContainer .gsc-result .gsc-url:hover,
#googleResultsContainer .gsc-result .gs-visibleUrl:hover,
#googleResultsContainer .gsc-result .gsc-url:hover {
  color: var(--text);
  text-decoration: underline;
}

#googleResultsContainer .gsc-result:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

/* Result header: title + badge on same line */
#googleResultsContainer .gsc-result .gs-title {
  font-family: 'Instrument Serif', serif;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 0 0.5rem 0;
  display: inline;
}

#googleResultsContainer .gsc-result .gs-title a {
  color: var(--text);
  text-decoration: none;
  transition: color 0.2s ease;
}

#googleResultsContainer .gsc-result .gs-title a:hover {
  color: #0d47a1;
  text-decoration: underline;
}

/* Snippet with refined typography */
#googleResultsContainer .gsc-result .gs-snippet {
  font-size: 0.95rem;
  color: var(--sub);
  line-height: 1.7;
  font-weight: 350;
  margin: 0.75rem 0;
  max-width: 100%;
}

/* URL display – subtle, monospace */
#googleResultsContainer .gsc-result .gs-visibleUrl,
#googleResultsContainer .gsc-result .gsc-url {
  font-size: 0.8rem;
  color: var(--muted);
  font-family: 'SF Mono', 'Consolas', monospace;
  word-break: break-all;
  margin-top: 0.5rem;
  display: block;
}

/* Not verified by Sinioo badge – prominent but clean */
#webResultsContainer .gsc-result .not-verified-badge,
#googleResultsContainer .gsc-result .not-verified-badge {
  display: inline-flex;
  align-items: center;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #dc2626;
  background: #fef2f2;
  border: 1px solid #fca5a5;
  border-radius: 999px;
  padding: 0.25rem 0.65rem;
  margin: 0 0 0.5rem 0;
  line-height: 1;
  vertical-align: middle;
  box-shadow: 0 1px 2px rgba(220, 38, 38, 0.06);
}

/* Alert when no internal verification records found */
.no-records-alert {
  padding: 1.25rem 1.5rem;
  background: var(--light);
  border: 1px solid var(--border);
  border-radius: 12px;
  margin-bottom: 1.5rem;
  line-height: 1.6;
  color: var(--sub);
  font-size: 0.95rem;
}
.no-records-alert strong {
  color: var(--text);
}

/* Unverified result warning frame */
#webResultsContainer .gsc-result.unverified-frame {
  border: 1px solid #fca5a5;
  border-left: 4px solid #dc2626;
  background: #fef2f2;
}

/* Hide Google CSE search box entirely – we use Sinioo's */
.gcse-searchbox,
.gsc-search-box,
.gsc-control-cse .gsc-search-box,
.gsc-control-cse .gsc-search-box-wrapper,
.gsc-control-cse .gsc-search-box-top,
iframe[title*="Search Box"],
iframe[title*="search box"] {
  display: none !important;
  height: 0 !important;
  width: 0 !important;
  max-height: 0 !important;
  max-width: 0 !important;
  opacity: 0 !important;
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
  overflow: hidden !important;
  pointer-events: none !important;
  visibility: hidden !important;
  z-index: -9999 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

/* Ensure CSE result links open in new tabs (safety net) */
#googleResultsContainer a[target="_blank"] {
  color: var(--text);
  /* Links already have target="_blank" from CSE config */
}

/* Remove extra margins from Google's internal layout */
#googleResultsContainer .gsc-result > div {
  margin-bottom: 0 !important;
}

#googleResultsContainer .gsc-result > div:first-child {
  margin-bottom: 0.5rem !important;
}

/* Ensure clean spacing between result elements */
#googleResultsContainer .gsc-result .gs-title {
  margin-bottom: 0.4rem;
}

#googleResultsContainer .gsc-result .gs-snippet + .gs-visibleUrl,
#googleResultsContainer .gsc-result .gs-snippet + .gsc-url {
  margin-top: 0.5rem;
}

/* Pagination styling if needed */
#googleResultsContainer .gsc-results .gsc-cursor-box .gsc-cursor {
  background: var(--text);
  color: var(--white);
  border-radius: 999px;
  padding: 0.35rem 0.85rem;
  font-size: 0.85rem;
}

#googleResultsContainer .gsc-results .gsc-cursor-box .gsc-cursor.current {
  background: var(--text);
  color: var(--white);
}

/* Better spacing for embedded iframe results */
#googleResultsContainer .gsc-results-wrapper {
  width: 100% !important;
  overflow: visible !important;
}

/* Ensure results container takes full width */
#googleResultsContainer {
  width: 100%;
  overflow: visible;
}

/* Global result list cleanup */
#googleResultsContainer .gsc-results-wrapper #googleResultsContainer,
#googleResultsContainer .gsc-results-wrapper .gsc-results {
  width: 100% !important;
}

/* ========== SUCCESS MODAL ENHANCEMENTS ========== */
.success-overlay {
  position: fixed;
  top: 0; left: 0; width: 100%; height: 100%;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(8px);
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  animation: fadeIn 0.3s ease;
}

.success-overlay.open {
  display: flex;
}

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

.success-modal {
  background: var(--white);
  border-radius: 24px;
  padding: 3rem 2.5rem;
  max-width: 480px;
  width: 90%;
  text-align: center;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.25);
  animation: scaleIn 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  position: relative;
}

@keyframes scaleIn {
  from { transform: scale(0.9) translateY(20px); opacity: 0; }
  to { transform: scale(1) translateY(0); opacity: 1; }
}

.success-icon {
  margin-bottom: 1.5rem;
}

.success-checkmark {
  color: #10b981;
  display: inline-block;
  animation: checkBounce 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes checkBounce {
  0% { transform: scale(0); }
  50% { transform: scale(1.2); }
  100% { transform: scale(1); }
}

.success-title {
  font-family: 'Instrument Serif', serif;
  font-size: 2rem;
  margin-bottom: 0.75rem;
  color: var(--text);
}

.success-message {
  color: var(--sub);
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 1.5rem;
}

.success-application-id {
  background: var(--offwhite);
  padding: 1rem;
  border-radius: 12px;
  margin-bottom: 1.5rem;
  text-align: left;
}

.credential-label {
  display: block;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--muted);
  margin-bottom: 0.5rem;
}

.credential-display {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  background: var(--white);
  padding: 0.75rem 1rem;
  border-radius: 8px;
  border: 1px solid var(--border);
}

.credential-display code {
  font-family: 'Fira Code', 'Consolas', monospace;
  font-size: 0.95rem;
  color: var(--text);
  word-break: break-all;
}

.copy-btn {
  background: none;
  border: 1px solid var(--border);
  padding: 0.5rem;
  border-radius: 8px;
  cursor: pointer;
  color: var(--text-light);
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}

.copy-btn:hover {
  background: var(--offwhite);
  color: var(--text);
  border-color: var(--text);
}

.success-actions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.success-btn {
  background: var(--black);
  color: var(--white);
  border: none;
  padding: 1rem 1.5rem;
  border-radius: 12px;
  font-weight: 600;
  font-size: 1rem;
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s;
  text-decoration: none;
  display: inline-block;
}

.success-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
}

.success-btn.pulse {
  animation: pulse-btn 2s ease-in-out;
}

@keyframes pulse-btn {
  0%, 100% { box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.4); }
  50% { box-shadow: 0 0 0 10px rgba(0, 0, 0, 0); }
}

.success-btn.secondary {
  background: var(--light);
  color: var(--text);
  border: 1px solid var(--border);
}

.success-btn.secondary:hover {
  background: var(--border);
  box-shadow: none;
}

.success-tip {
  margin-top: 1.5rem;
  font-size: 0.8rem;
  color: var(--muted);
  font-style: italic;
}

/* NEW badge for fresh verifications */
.v-status-row {
  position: relative;
}
.new-badge {
  position: absolute;
  top: -8px;
  right: -8px;
  background: #10b981;
  color: white;
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.25rem 0.5rem;
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(16, 185, 129, 0.4);
  animation: pulse-green 2s ease-in-out 3;
  white-space: nowrap;
}

/* Country flag in verification card header */
.v-country-flag {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 1.4rem;
  margin-top: 0.25rem;
  font-weight: 500;
  color: var(--text);
}
.v-meta-line,
.v-capital {
  font-size: 0.82rem;
  color: var(--text-light);
  margin-top: 0.18rem;
}
/* Capital badge — Beta style (black pill with white text) */
.v-capital-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.18rem 0.45rem;
  background: var(--text);
  color: var(--white);
  font-family: 'Inter', sans-serif;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  vertical-align: middle;
}
.v-meta-label {
  font-weight: 600;
  color: var(--sub);
  margin-right: 0.25rem;
}
@keyframes pulse-green {
  0%, 100% { transform: scale(1); box-shadow: 0 2px 8px rgba(16, 185, 129, 0.4); }
  50% { transform: scale(1.05); box-shadow: 0 4px 12px rgba(16, 185, 129, 0.6); }
}


/* NEW badge for fresh verifications */
.v-status-row {
  position: relative;
}
.new-badge {
  position: absolute;
  top: -8px;
  right: -8px;
  background: #10b981;
  color: white;
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.25rem 0.5rem;
  border-radius: 6px;
   box-shadow: 0 2px 8px rgba(16, 185, 129, 0.4);
   animation: pulse-green 2s ease-in-out 3;
 }
 @keyframes pulse-green {
   0%, 100% { transform: scale(1); box-shadow: 0 2px 8px rgba(16, 185, 129, 0.4); }
   50% { transform: scale(1.05); box-shadow: 0 4px 12px rgba(16, 185, 129, 0.6); }
 }

 /* Information page category tabs */
 .category-tabs {
   display: flex;
   gap: 0.5rem;
   flex-wrap: wrap;
 }

 .category-tab {
   padding: 0.6rem 1.25rem;
   border-radius: 10px;
   border: 1.5px solid var(--border, #e5e7eb);
   background: white;
   cursor: pointer;
   font-weight: 600;
   font-size: 0.9rem;
   color: var(--text);
   transition: all 0.2s ease;
   font-family: 'Inter', sans-serif;
   box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
   position: relative;
   overflow: hidden;
 }

 .category-tab::after {
   content: '';
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: linear-gradient(135deg, #0d47a1 0%, #1565c0 100%);
   opacity: 0;
   transition: opacity 0.2s ease;
 }

 .category-tab:hover {
   border-color: #0d47a1;
   color: #0d47a1;
   transform: translateY(-1px);
   box-shadow: 0 4px 12px rgba(13, 71, 161, 0.15);
 }

 .category-tab:hover::after {
   opacity: 0;
 }

 .category-tab.active {
   background: linear-gradient(135deg, #0d47a1 0%, #1565c0 100%);
   color: white;
   border-color: #0d47a1;
   box-shadow: 0 4px 12px rgba(13, 71, 161, 0.25);
   transform: translateY(-1px);
 }

 .category-tab.active::after {
   opacity: 0;
 }

 .category-tab:focus {
   outline: none;
   border-color: #0d47a1;
   box-shadow: 0 0 0 3px rgba(13, 71, 161, 0.15);
 }

 /* Smooth category transitions */
 .category-tab {
   -webkit-tap-highlight-color: transparent;
   touch-action: manipulation;
 }

 .category-tab:active {
   transform: scale(0.98);
 }

 /* Enhanced search input */
 #infoSearchInput {
   transition: all 0.2s ease;
   width: 100%;
   padding: 0.75rem 1rem 0.75rem 2.75rem;
   border: 1.5px solid var(--border, #e5e7eb);
   border-radius: 10px;
   font-size: 0.95rem;
   font-family: 'Inter', sans-serif;
   outline: none;
   background: white;
   box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
   color: var(--text);
 }

  #infoSearchInput:focus {
    border-color: #0d47a1;
    box-shadow: 0 2px 12px rgba(13, 71, 161, 0.18), inset 0 1px 0 rgba(13, 71, 161, 0.08);
    transform: translateY(-1px);
  }

 #infoSearchInput::placeholder {
   color: var(--muted);
   opacity: 0.7;
 }

 #infoSearchInput:focus::placeholder {
   opacity: 0.5;
 }

 /* Info page search container */
 .info-search-container {
   flex: 1;
   min-width: 300px;
   max-width: 520px;
   position: relative;
 }

 .info-search-icon {
   position: absolute;
   left: 1rem;
   top: 50%;
   transform: translateY(-50%);
   color: var(--muted);
   pointer-events: none;
   display: flex;
   align-items: center;
   justify-content: center;
 }

 .info-search-icon svg {
   width: 18px;
   height: 18px;
 }

 .info-results-count {
   font-size: 0.85rem;
   color: var(--muted);
   font-weight: 500;
   min-width: 100px;
   text-align: right;
   padding: 0.5rem 0;
 }

 /* Video gallery inside verification cards */
 .v-video-gallery {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
   gap: 1rem;
   margin-top: 0.75rem;
 }
 .v-video-item video {
   width: 100%;
   border-radius: 8px;
   border: 1px solid var(--border);
 }
 .v-video-duration {
   display: inline-block;
   font-size: 0.75rem;
   background: rgba(0,0,0,0.6);
   color: #fff;
   padding: 0.2rem 0.4rem;
   border-radius: 4px;
   margin-top: 0.25rem;
 }

 /* Gallery sections on information page */
 .gallery-section-title {
   font-family: 'Instrument Serif', serif;
   font-size: 1.5rem;
   margin: 2rem 0 1rem;
   color: var(--text);
   scroll-margin-top: 2rem;
 }
 .gallery-grid {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
   gap: 1rem;
   margin-bottom: 2rem;
 }
 .gallery-item .gallery-flag {
   font-size: 3rem;
   text-align: center;
   line-height: 1;
   padding: 0.5rem 0;
 }
 .gallery-item:hover {
   transform: translateY(-4px);
   box-shadow: 0 8px 20px rgba(0,0,0,0.12);
 }
 .gallery-item img, .gallery-item video {
   width: 100%;
   height: 140px;
   object-fit: cover;
   display: block;
 }
 .gallery-item .gallery-label {
   padding: 0.5rem;
   font-size: 0.9rem;
   text-align: center;
   background: #fafafa;
   color: var(--text);
 }
 .gallery-loading {
   grid-column: 1 / -1;
   text-align: center;
   padding: 2rem;
   color: var(--sub);
   font-style: italic;
 }

 /* Section separator */
 .section-separator {
   border: 0;
   border-top: 1px solid var(--border);
   margin: 1.5rem 0;
 }

 /* Details panel close button */
 .details-close-btn {
   background: none;
   border: none;
   font-size: 1.2rem;
   cursor: pointer;
   margin-bottom: 1rem;
   color: var(--text);
 }
 .details-close-btn:hover { color: var(--sub); }

 /* Nav drawer ghost links */
 .nav-ghost {
   text-decoration: none;
   text-align: left;
 }

 /* Gallery tabs */
 .gallery-tabs {
   display: flex;
   gap: 1rem;
   margin: 1.5rem 0;
 }
 .gallery-tab {
   background: var(--white);
   border: 2px solid var(--border);
   border-radius: 8px;
   padding: 0.6rem 1.5rem;
   font-size: 1rem;
   font-weight: 500;
   cursor: pointer;
   transition: all 0.2s ease;
   color: var(--text);
   outline: none;
 }
 .gallery-tab:hover {
   border-color: #000;
   color: #000;
 }
 .gallery-tab:focus-visible {
   box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.2);
   border-color: #000;
 }
 .gallery-tab.active {
   background: #000;
   color: white;
   border-color: #000;
   font-weight: 600;
 }
 .gallery-tab-panel {
   display: none;
 }
 .gallery-tab-panel.active {
   display: block;
 }

 /* Modal / Lightbox */
 .media-modal {
   position: fixed;
   top: 0; left: 0;
   width: 100vw; height: 100vh;
   background: rgba(0,0,0,0.92);
   z-index: 99999;
   display: none;
   justify-content: center;
   align-items: center;
   padding: 2rem;
   box-sizing: border-box;
 }
 .media-modal.active {
   display: flex;
 }
 .modal-close-btn {
   position: absolute;
   top: 1rem;
   right: 1.5rem;
   background: none;
   border: none;
   color: #fff;
   font-size: 3rem;
   line-height: 1;
   cursor: pointer;
   z-index: 100000;
 }
 .modal-close-btn:hover { color: #ff6b6b; }
 #modalContent {
   max-width: 90vw;
   max-height: 90vh;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 1rem;
 }
 #modalContent img, #modalContent video {
   max-width: 100%;
   max-height: 80vh;
   object-fit: contain;
   border-radius: 8px;
   box-shadow: 0 8px 30px rgba(0,0,0,0.5);
 }
 #modalContent .modal-caption {
   color: #fff;
   font-size: 1.1rem;
   text-align: center;
 }
  .modal-content-inner {
    max-width: 90vw;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }

/* Authentication-based navigation visibility */
body.logged-out .nav-user-only,
body.logged-in .nav-guest-only {
  display: none !important;
}

body.logged-out .nav-guest-only,
body.logged-in .nav-user-only {
  display: inline-flex !important;
}

/* Override any inline display styles */
body.logged-in .nav-guest-only[style],
body.logged-out .nav-user-only[style] {
  display: none !important;
}

/* Ensure mobile drawer items also respect auth state */
body.logged-out .nav-drawer .nav-user-only,
body.logged-in .nav-drawer .nav-guest-only {
  display: none !important;
}

body.logged-out .nav-drawer .nav-guest-only,
body.logged-in .nav-drawer .nav-user-only {
  display: flex !important;
}

/* Override inline styles in mobile drawer */
body.logged-in .nav-drawer .nav-guest-only[style],
body.logged-out .nav-drawer .nav-user-only[style] {
  display: none !important;
}

/* Navigation item ordering based on authentication state */
/* Desktop nav (flex) */
.nav-right > .nav-guest-only[data-nav="home"] { order: 1; }
.nav-right > .nav-guest-only[data-nav="about"] { order: 2; }
.nav-right > .nav-guest-only[data-nav="faq"] { order: 5; }
.nav-right > .nav-guest-only[data-nav="signin"] { order: 7; }

.nav-right > .nav-user-only[data-nav="dashboard"] { order: 1; }
.nav-right > .nav-user-only[data-nav="profile"] { order: 2; }

.nav-right > .nav-common[data-nav="search"] { order: 3; }
.nav-right > .nav-common[data-nav="information"] { order: 4; }
.nav-right > .nav-common[data-nav="apply"] { order: 6; }

/* Mobile drawer (grid) */
.nav-drawer .drawer-grid > .nav-guest-only[data-nav="home"] { order: 1; }
.nav-drawer .drawer-grid > .nav-guest-only[data-nav="about"] { order: 2; }
.nav-drawer .drawer-grid > .nav-guest-only[data-nav="faq"] { order: 5; }
.nav-drawer .drawer-grid > .nav-guest-only[data-nav="signin"] { order: 7; }

.nav-drawer .drawer-grid > .nav-user-only[data-nav="dashboard"] { order: 1; }
.nav-drawer .drawer-grid > .nav-user-only[data-nav="profile"] { order: 2; }

.nav-drawer .drawer-grid > .nav-common[data-nav="search"] { order: 3; }
.nav-drawer .drawer-grid > .nav-common[data-nav="information"] { order: 4; }
.nav-drawer .drawer-grid > .nav-common[data-nav="apply"] { order: 6; }

