:root {
  --green: #00533c;
  --green-2: #0a6a4e;
  --green-3: #e8f2ee;
  --gold: #b88624;
  --gold-2: #d3aa55;
  --ink: #0c1c18;
  --muted: #68736f;
  --line: #dfe6e3;
  --soft: #f6f8f7;
  --white: #fff;
  --danger: #9e392f;
  --warning: #a66a0c;
  --shadow: 0 20px 60px rgba(0, 43, 31, 0.09);
  --radius: 18px;
}
*:focus-visible{outline:3px solid #d2a64d;outline-offset:3px}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: #fff; font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { cursor: pointer; }
.demo-banner { padding: 8px 16px; background: #12231e; color: #d9e6e1; font-size: 12px; text-align: center; letter-spacing: .01em; }
.shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.narrow { width: min(820px, calc(100% - 40px)); }
.site-header { position: sticky; top: 0; z-index: 50; height: 86px; display: flex; align-items: center; justify-content: space-between; padding: 0 max(24px, calc((100vw - 1180px)/2)); background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(0,83,60,.09); backdrop-filter: blur(15px); }
.brand { display: flex; align-items: center; gap: 14px; min-width: 290px; }
.brand img { width: 155px; height: 62px; object-fit: contain; object-position: left center; }
.brand-sub { display: flex; flex-direction: column; border-left: 1px solid var(--line); padding-left: 14px; line-height: 1.15; }
.brand-sub strong { font-size: 13px; color: var(--green); }
.brand-sub span { margin-top: 5px; color: var(--muted); font-size: 10px; letter-spacing: .04em; text-transform: uppercase; }
.main-nav { display: flex; align-items: center; gap: 28px; font-size: 14px; font-weight: 600; }
.main-nav a:hover { color: var(--green); }
.nav-app { border: 1px solid var(--green); color: var(--green); padding: 11px 16px; border-radius: 999px; }
.mobile-nav-button { display: none; border: 0; background: transparent; font-size: 26px; color: var(--green); }
.page { display: none; }
.page.active { display: block; }
.hero { min-height: 710px; display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: 72px; padding-top: 70px; padding-bottom: 70px; }
.eyebrow { color: var(--gold); text-transform: uppercase; font-size: 12px; font-weight: 700; letter-spacing: .16em; margin-bottom: 14px; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: Georgia, "Times New Roman", serif; }
.hero h1 { font-size: clamp(48px, 6vw, 78px); letter-spacing: -.045em; line-height: .99; margin-bottom: 28px; }
.hero h1 span { color: var(--green); }
.hero-lead { font-size: 19px; line-height: 1.65; color: #4d5a56; max-width: 720px; }
.hero-actions { display: flex; gap: 12px; margin: 32px 0 38px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 20px; border-radius: 10px; font-weight: 700; font-size: 14px; border: 1px solid transparent; transition: .18s ease; }
.button.primary { background: var(--green); color: #fff; box-shadow: 0 8px 24px rgba(0,83,60,.18); }
.button.primary:hover { transform: translateY(-1px); background: var(--green-2); }
.button.ghost { border-color: #cbd6d2; background: #fff; color: var(--ink); }
.button.ghost:hover { border-color: var(--green); color: var(--green); }
.button.small { min-height: 38px; padding: 0 14px; font-size: 13px; }
.button.full { width: 100%; }
.trust-strip { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; border-top: 1px solid var(--line); padding-top: 22px; }
.trust-strip div { display: flex; flex-direction: column; gap: 5px; }
.trust-strip strong { font-size: 13px; color: var(--green); }
.trust-strip span { font-size: 11px; color: var(--muted); line-height: 1.5; }
.card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); }
.elevated { box-shadow: var(--shadow); }
.hero-panel { padding: 28px; }
.panel-topline { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--muted); text-transform: uppercase; font-weight: 700; letter-spacing: .08em; margin-bottom: 20px; }
.status-dot { width: 8px; height: 8px; border-radius: 50%; background: #2ea36b; box-shadow: 0 0 0 5px #e5f7ed; }
.flow-step { display: grid; grid-template-columns: 36px 1fr 24px; gap: 14px; align-items: center; padding: 18px 0; border-top: 1px solid #edf1ef; }
.flow-step > span { width: 34px; height: 34px; border-radius: 10px; background: #f1f4f2; color: var(--muted); display: grid; place-items: center; font-size: 12px; font-weight: 700; }
.flow-step b, .flow-step small { display: block; }
.flow-step b { font-size: 14px; margin-bottom: 4px; }
.flow-step small { color: var(--muted); font-size: 12px; }
.flow-step em { font-style: normal; color: #a0aaa6; text-align: center; }
.flow-step.done > span { background: var(--green-3); color: var(--green); }
.flow-step.done em { color: var(--green); }
.flow-step.active { background: linear-gradient(90deg, rgba(232,242,238,.9), transparent); margin: 0 -15px; padding: 18px 15px; border-radius: 12px; border-top-color: transparent; }
.flow-step.active > span { background: var(--green); color: #fff; }
.flow-step.active em { color: var(--gold); }
.engine-note { background: #fbf7ef; border: 1px solid #eadcc1; color: #70571e; font-size: 12px; line-height: 1.55; padding: 14px; border-radius: 10px; margin-top: 18px; }
.section-block { padding: 90px 0; }
.section-heading { margin-bottom: 36px; max-width: 780px; }
.section-heading.compact { max-width: 680px; }
.section-heading h2, .split-section h2, .page-hero h1, .cndp-card h2 { font-size: clamp(34px, 4vw, 50px); line-height: 1.12; letter-spacing: -.03em; margin-bottom: 16px; }
.section-heading p, .split-section p, .page-hero p { color: var(--muted); line-height: 1.7; font-size: 17px; }
.service-grid { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.service-card { padding: 26px; min-height: 270px; border-right: 1px solid var(--line); display: flex; flex-direction: column; }
.service-card:last-child { border-right: 0; }
.service-card > span { color: var(--gold); font-size: 12px; font-weight: 700; }
.service-card h3 { font-family: Georgia, "Times New Roman", serif; font-size: 21px; margin: 52px 0 12px; }
.service-card p { color: var(--muted); font-size: 13px; line-height: 1.6; flex: 1; }
.service-card a { color: var(--green); font-size: 13px; font-weight: 700; }
.split-section { display: grid; grid-template-columns: 1fr 1fr; gap: 75px; align-items: center; }
.pill-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 25px; }
.pill-row span { border: 1px solid var(--line); background: var(--soft); border-radius: 999px; padding: 8px 11px; font-size: 12px; }
.trace-card { padding: 22px; box-shadow: var(--shadow); }
.trace-line { display: grid; grid-template-columns: 110px 1fr auto; gap: 14px; align-items: center; padding: 15px; border: 1px solid #e8eeeb; border-radius: 12px; }
.trace-line small { color: var(--muted); }
.trace-line strong { font-size: 13px; }
.trace-line span { color: var(--green); font-size: 12px; font-weight: 700; }
.trace-line.highlight { background: var(--green); color: #fff; border-color: var(--green); }
.trace-line.highlight small, .trace-line.highlight span { color: #dff3eb; }
.trace-arrow { color: #9eaaa6; text-align: center; padding: 5px; }
.legal-callout { margin-top: 20px; margin-bottom: 100px; padding: 26px 30px; border: 1px solid #eadcc1; border-radius: var(--radius); background: #fffaf0; display: flex; align-items: center; gap: 40px; justify-content: space-between; }
.legal-callout strong { display: block; color: #785b1d; margin-bottom: 7px; }
.legal-callout p { margin: 0; color: #725f39; line-height: 1.55; font-size: 13px; max-width: 800px; }
.legal-callout a { white-space: nowrap; color: var(--green); font-weight: 700; font-size: 13px; }
.page-hero { padding: 100px 0 58px; text-align: center; }
.method-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 50px; padding-bottom: 70px; }
.method-steps { border-top: 1px solid var(--line); }
.method-step { display: grid; grid-template-columns: 54px 1fr; gap: 20px; padding: 28px 0; border-bottom: 1px solid var(--line); }
.method-step > span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: var(--green-3); color: var(--green); font-weight: 700; }
.method-step h3 { margin-bottom: 8px; font-size: 18px; }
.method-step p { margin: 0; color: var(--muted); line-height: 1.65; font-size: 14px; }
.framework-card { align-self: start; padding: 26px; position: sticky; top: 110px; }
.framework-card h3 { font-family: Georgia, "Times New Roman", serif; font-size: 23px; }
.framework-item { padding: 18px 0; border-top: 1px solid var(--line); }
.framework-item b { color: var(--green); font-size: 13px; }
.framework-item p { margin: 6px 0 0; font-size: 13px; color: var(--muted); line-height: 1.6; }
.disclaimer-box { background: #fff8e9; border: 1px solid #eadcc1; padding: 15px; border-radius: 10px; margin-top: 14px; }
.disclaimer-box strong { font-size: 12px; color: #795a18; }
.disclaimer-box p { margin: 6px 0 0; color: #6f5b32; font-size: 11px; line-height: 1.55; }
.outcome-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.outcome { border: 1px solid var(--line); border-radius: 14px; padding: 20px; }
.outcome b { display: block; margin-bottom: 8px; }
.outcome p { margin: 0; font-size: 12px; line-height: 1.55; color: var(--muted); }
.outcome.pass { border-top: 4px solid #2a8a5f; }.outcome.conditional { border-top: 4px solid #c38a23; }.outcome.review { border-top: 4px solid #a8682f; }.outcome.fail { border-top: 4px solid #9d3b32; }
.pricing-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); }
.pricing-table { width: 100%; border-collapse: collapse; min-width: 760px; }
.pricing-table th { background: #f4f7f5; font-size: 12px; color: var(--muted); text-align: left; padding: 16px 20px; border-bottom: 1px solid var(--line); }
.pricing-table td { padding: 18px 20px; border-bottom: 1px solid var(--line); font-size: 14px; }
.pricing-table tr:last-child td { border-bottom: 0; }
.pricing-table td b, .pricing-table td small { display: block; }
.pricing-table td small { color: var(--muted); margin-top: 4px; }
.price-featured { color: var(--green); font-weight: 800; background: #f5faf8; }
.pricing-cards { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; padding: 42px 0 100px; }
.price-card { border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; display: flex; flex-direction: column; position: relative; }
.price-card.featured { border: 2px solid var(--green); box-shadow: var(--shadow); }
.popular { position: absolute; right: 20px; top: 18px; background: var(--green); color: #fff; border-radius: 999px; padding: 5px 9px; font-size: 10px; font-weight: 700; }
.price-card > div > span { text-transform: uppercase; letter-spacing: .12em; font-size: 11px; color: var(--gold); font-weight: 700; }
.price-card h3 { font-size: 30px; margin: 12px 0 7px; }
.price-card h3 small { font-size: 12px; color: var(--muted); font-weight: 500; }
.price-card p { color: var(--muted); font-size: 13px; min-height: 40px; }
.price-card ul { list-style: none; padding: 20px 0; margin: 0; flex: 1; border-top: 1px solid var(--line); }
.price-card li { padding: 7px 0; font-size: 13px; }
.price-card li:before { content: "✓"; color: var(--green); margin-right: 9px; font-weight: 700; }
.security-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding-bottom: 42px; }
.security-column { padding: 30px; border-radius: var(--radius); border: 1px solid var(--line); }
.security-column.launch { background: #f5faf8; border-color: #cde0d8; }
.security-column.later { background: #fafbfa; }
.phase-label { display: inline-block; background: var(--green); color: #fff; padding: 5px 8px; border-radius: 999px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.phase-label.muted { background: #7f8c87; }
.security-column h2 { font-size: 27px; margin: 18px 0 24px; }
.security-item { padding: 16px 0; border-top: 1px solid rgba(0,83,60,.12); }
.security-item b { font-size: 14px; color: var(--green); }
.security-item p { margin: 5px 0 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.cndp-card { margin-bottom: 100px; padding: 32px; display: grid; grid-template-columns: 1fr 260px; gap: 45px; align-items: center; }
.cndp-card h2 { font-size: 31px; }
.cndp-card p { margin: 0; color: var(--muted); line-height: 1.65; }
.compliance-status { background: #fff8e9; border: 1px solid #eadcc1; border-radius: 14px; padding: 20px; display: flex; flex-direction: column; }
.compliance-status span { color: #786137; font-size: 11px; text-transform: uppercase; font-weight: 700; letter-spacing: .08em; }
.compliance-status strong { font-size: 20px; color: #8e6312; margin: 9px 0; }
.compliance-status small { color: #786a4d; line-height: 1.5; }
.app-page { background: #f3f6f4; min-height: calc(100vh - 116px); }
.app-page + .site-footer { display: none; }
.app-shell { display: grid; grid-template-columns: 235px 1fr; min-height: calc(100vh - 116px); }
.app-sidebar { background: #0d221b; color: #dfe9e5; padding: 22px 18px; display: flex; flex-direction: column; position: sticky; top: 86px; height: calc(100vh - 86px); }
.sidebar-brand { padding: 0 4px 22px; border-bottom: 1px solid rgba(255,255,255,.1); }
.sidebar-brand img { width: 145px; height: 52px; object-fit: contain; object-position: left; filter: brightness(0) invert(1); opacity: .92; }
.sidebar-brand span { display: block; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: #9db5ab; margin-top: 6px; }
.app-sidebar nav { display: flex; flex-direction: column; gap: 5px; padding-top: 22px; }
.app-sidebar nav a { padding: 11px 12px; border-radius: 9px; font-size: 13px; color: #b6c7c0; }
.app-sidebar nav a:hover, .app-sidebar nav a.active { background: rgba(255,255,255,.09); color: #fff; }
.sidebar-user { margin-top: auto; display: flex; align-items: center; gap: 10px; padding: 13px 6px; border-top: 1px solid rgba(255,255,255,.1); }
.avatar { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--gold); color: #fff; font-weight: 700; }
.sidebar-user b, .sidebar-user small { display: block; }.sidebar-user b { font-size: 12px; }.sidebar-user small { color: #839c92; margin-top: 3px; font-size: 10px; }
.app-content { padding: 38px 44px 70px; min-width: 0; }
.app-topbar, .report-topbar { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 28px; }
.app-topbar small, .report-topbar small { color: var(--muted); }
.app-topbar h1, .report-topbar h1 { font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; font-size: 28px; letter-spacing: -.03em; margin: 4px 0 0; }
.metric-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.metric { padding: 20px; }
.metric span, .metric b, .metric small { display: block; }
.metric span { color: var(--muted); font-size: 11px; text-transform: uppercase; font-weight: 700; letter-spacing: .06em; }
.metric b { font-size: 28px; margin: 10px 0 6px; }.metric small { color: #8b9692; font-size: 11px; }
.app-grid { display: grid; grid-template-columns: 1fr 310px; gap: 16px; margin-top: 18px; }
.table-card, .review-queue { padding: 22px; }
.card-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.card-heading h2 { font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; font-size: 17px; margin: 0; }.card-heading p { margin: 4px 0 0; color: var(--muted); font-size: 11px; }.card-heading a { color: var(--green); font-size: 12px; font-weight: 700; }
.analysis-list { border-top: 1px solid var(--line); }
.analysis-row { display: grid; grid-template-columns: 42px 1fr auto 60px; align-items: center; gap: 12px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.doc-icon { width: 38px; height: 38px; border-radius: 10px; background: var(--green-3); color: var(--green); display: grid; place-items: center; font-size: 10px; font-weight: 800; }
.analysis-main b, .analysis-main small { display: block; }.analysis-main b { font-size: 13px; }.analysis-main small { color: var(--muted); font-size: 10px; margin-top: 4px; }
.status { display: inline-flex; align-items: center; border-radius: 999px; padding: 5px 8px; font-size: 9px; font-weight: 800; white-space: nowrap; text-transform: uppercase; letter-spacing: .05em; }
.status.expert { background: #e6f5ee; color: #166642; }.status.review { background: #fff2d6; color: #8a5c00; }.status.ai { background: #e8eef8; color: #315686; }.status.draft { background: #edf0ef; color: #6a7571; }
.analysis-row time { color: #97a09d; font-size: 10px; text-align: right; }
.queue-item { display: flex; align-items: center; gap: 11px; padding: 13px 0; border-top: 1px solid var(--line); }.queue-item b, .queue-item small { display: block; }.queue-item b { font-size: 12px; }.queue-item small { color: var(--muted); font-size: 10px; margin-top: 4px; }
.severity { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; font-size: 10px; font-weight: 800; }.severity.medium { background:#fff1d2;color:#966200 }.severity.high { background:#f8e1df;color:#9a312a }.severity.low { background:#e6f4ee;color:#277151 }
.text-link { display: block; color: var(--green); font-weight: 700; font-size: 11px; margin-top: 16px; }
.analysis-form-page { max-width: 1100px; }
.analysis-form { display: flex; flex-direction: column; gap: 16px; }
.form-section { padding: 24px; }
.form-heading { display: grid; grid-template-columns: 38px 1fr; gap: 12px; align-items: start; margin-bottom: 22px; }.form-heading > span { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--green); color: #fff; font-size: 11px; font-weight: 700; }.form-heading h2 { font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:17px;margin:1px 0 3px}.form-heading p { margin:0;color:var(--muted);font-size:11px; }
.choice-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.choice { position:relative;border:1px solid var(--line);border-radius:12px;padding:17px;cursor:pointer;transition:.15s }.choice:hover,.choice.selected{border-color:var(--green);background:#f4faf7}.choice input{position:absolute;right:12px;top:12px;accent-color:var(--green)}.choice b,.choice small{display:block}.choice b{font-size:13px;margin-bottom:6px}.choice small{font-size:10px;color:var(--muted);line-height:1.45}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-grid label{font-size:11px;font-weight:700;color:#5d6965}.field-grid select{width:100%;margin-top:7px;padding:12px;border:1px solid #ccd7d3;border-radius:9px;background:#fff;color:var(--ink)}
.info-line{margin-top:16px;background:#f7faf8;border:1px solid var(--line);border-radius:10px;padding:12px;color:var(--muted);font-size:11px;line-height:1.55}
.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1.5px dashed #b7c8c1;border-radius:14px;padding:40px 20px;background:#fafcfb;cursor:pointer}.upload-zone:hover{border-color:var(--green);background:#f5faf8}.upload-zone input{display:none}.upload-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--green-3);color:var(--green);font-size:21px;margin-bottom:11px}.upload-zone b{font-size:13px}.upload-zone small{color:var(--muted);font-size:10px;margin-top:6px}.file-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.file-pill{border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:10px;background:#fff}.compact-form{padding-bottom:16px}.review-option-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-option{position:relative;border:1px solid var(--line);border-radius:12px;padding:15px;display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;cursor:pointer}.review-option.selected{border-color:var(--green);background:#f4faf7}.review-option input{accent-color:var(--green)}.review-option b,.review-option small{display:block}.review-option b{font-size:12px}.review-option small{color:var(--muted);font-size:10px;margin-top:4px}.review-option strong{font-size:12px;color:var(--green)}
.form-submit-row{display:flex;align-items:center;gap:24px;justify-content:space-between;padding:10px 4px}.consent{font-size:10px;color:var(--muted);line-height:1.5;max-width:700px}.consent input{margin-right:6px;accent-color:var(--green)}
.processing{padding:24px;margin-top:18px;display:flex;align-items:center;gap:16px}.processing[hidden]{display:none}.spinner{width:34px;height:34px;border:3px solid #d7e5df;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.processing h2{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:15px;margin:0 0 5px}.processing p{margin:0;color:var(--muted);font-size:11px}
.report-actions{display:flex;gap:8px}.report-meta{display:flex;gap:7px;margin-top:8px}.report-meta span{background:#e9eeec;color:#5d6864;padding:5px 7px;border-radius:999px;font-size:9px}.report-status-card{display:flex;justify-content:space-between;align-items:center;padding:24px;margin-bottom:16px}.report-status-card h2{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:24px;margin:10px 0 6px}.report-status-card p{margin:0;color:var(--muted);font-size:11px}.confidence{text-align:right}.confidence span,.confidence b,.confidence small{display:block}.confidence span{text-transform:uppercase;font-size:9px;color:var(--muted);font-weight:700;letter-spacing:.08em}.confidence b{font-size:31px;color:var(--green);margin:3px 0}.confidence small{font-size:9px;color:var(--muted)}
.report-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:16px}.report-section{padding:22px;margin-bottom:16px}.finding{display:grid;grid-template-columns:30px 1fr auto;gap:12px;padding:14px 0;border-top:1px solid var(--line);align-items:start}.finding>span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:11px}.finding b{font-size:12px}.finding p{margin:4px 0;color:var(--muted);font-size:10px;line-height:1.5}.finding small{color:#8d9793;font-size:9px}.finding em{font-style:normal;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.finding.pass>span{background:#e7f5ee;color:#23734f}.finding.pass em{color:#23734f}.finding.review>span{background:#fff1d5;color:#8a5b00}.finding.review em{color:#8a5b00}.finding.conditional>span{background:#f8ead7;color:#8c5d20}.finding.conditional em{color:#8c5d20}
.ratio{padding:15px 0;border-top:1px solid var(--line)}.ratio>div:first-child{display:flex;justify-content:space-between;font-size:11px}.ratio b{color:var(--green)}.bar{height:6px;background:#e8eeeb;border-radius:999px;margin:8px 0;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold));border-radius:999px}.ratio small{color:var(--muted);font-size:9px}.financial-note{background:#f6f8f7;border-radius:10px;padding:12px;margin-top:10px}.financial-note b{font-size:11px}.financial-note p{margin:5px 0 0;color:var(--muted);font-size:9px;line-height:1.5}
.evidence-table{border:1px solid var(--line);border-radius:10px;overflow:hidden}.evidence-head,.evidence-row{display:grid;grid-template-columns:1.1fr .8fr 1.3fr .6fr;gap:12px;padding:11px 13px}.evidence-head{background:#f3f6f4;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.evidence-row{font-size:10px;border-top:1px solid var(--line)}.reviewer-card{display:grid;grid-template-columns:1fr 270px;gap:30px;align-items:center}.reviewer-card h2{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:19px;margin-bottom:7px}.reviewer-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.review-signoff{background:#f5faf8;border:1px solid #d4e4dd;border-radius:12px;padding:15px}.review-signoff span,.review-signoff b,.review-signoff small{display:block}.review-signoff span{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:700}.review-signoff b{font-size:12px;margin:6px 0}.review-signoff small{font-size:9px;color:var(--muted)}.report-disclaimer{font-size:9px;color:#7c8582;line-height:1.55;padding:0 5px 15px}
.site-footer { background: #0b2019; color: #c4d3cd; padding: 55px 0 20px; }
.footer-grid { display: grid; grid-template-columns: 1.6fr .7fr 1.2fr 1.2fr; gap: 48px; }
.footer-brand img { width: 190px; height: 70px; object-fit: contain; object-position: left; filter: brightness(0) invert(1); }
.footer-brand p { max-width: 300px; font-size: 12px; line-height: 1.6; color: #91a79e; }
.footer-grid > div > b { display: block; color: #fff; font-size: 12px; margin-bottom: 14px; }
.footer-grid a { display: block; font-size: 11px; color: #91a79e; padding: 4px 0; }
.footer-grid p, .footer-grid small { color: #91a79e; font-size: 11px; line-height: 1.55; margin: 0; }
.footer-grid strong { color: #d7e4df; }
.footer-bottom { display: flex; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.09); margin-top: 38px; padding-top: 18px; color: #708a80; font-size: 10px; }

@media (max-width: 980px) {
  .main-nav { display: none; position: absolute; right: 18px; top: 78px; background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow); border-radius: 12px; padding: 16px; flex-direction: column; align-items: stretch; gap: 10px; min-width: 220px; }
  .main-nav.open { display: flex; }
  .mobile-nav-button { display: block; }
  .brand-sub { display: none; }
  .hero { grid-template-columns: 1fr; min-height: auto; gap: 35px; }
  .service-grid { grid-template-columns: 1fr 1fr; }.service-card:nth-child(2){border-right:0}.service-card{border-bottom:1px solid var(--line)}
  .split-section,.method-grid,.security-grid,.cndp-card { grid-template-columns: 1fr; }
  .framework-card { position: static; }
  .outcome-grid { grid-template-columns: 1fr 1fr; }
  .pricing-cards { grid-template-columns: 1fr; }
  .app-shell { grid-template-columns: 1fr; }
  .app-sidebar { display: none; }
  .metric-grid { grid-template-columns: 1fr 1fr; }
  .app-grid,.report-grid { grid-template-columns: 1fr; }
  .choice-grid { grid-template-columns: 1fr 1fr; }
  .site-header { padding-left: 20px; padding-right: 20px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px) {
  .shell,.narrow { width: min(100% - 28px, 1180px); }
  .demo-banner { font-size: 10px; }
  .site-header { height: 72px; }.brand img{width:130px;height:50px}.main-nav{top:66px}
  .hero { padding-top: 50px; }.hero h1{font-size:45px}.hero-lead{font-size:16px}.trust-strip{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}
  .service-grid,.outcome-grid { grid-template-columns: 1fr; }.service-card{border-right:0}.split-section{gap:35px}.legal-callout{flex-direction:column;align-items:flex-start}
  .page-hero { padding-top: 65px; }.page-hero h1,.section-heading h2,.split-section h2{font-size:34px}
  .app-content { padding: 25px 15px 50px; }.app-topbar,.report-topbar{align-items:flex-start;gap:14px;flex-direction:column}.metric-grid{grid-template-columns:1fr 1fr}.analysis-row{grid-template-columns:38px 1fr}.analysis-row .status,.analysis-row time{display:none}.choice-grid,.field-grid,.review-option-row{grid-template-columns:1fr}.form-submit-row{flex-direction:column;align-items:stretch}.report-status-card{align-items:flex-start;gap:20px;flex-direction:column}.confidence{text-align:left}.reviewer-card{grid-template-columns:1fr}.evidence-head,.evidence-row{grid-template-columns:1fr 1fr}.evidence-head span:nth-child(n+3),.evidence-row span:nth-child(n+3){display:none}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:7px}.pricing-table-wrap{border-radius:12px}
}
@media print {
  .demo-banner,.site-header,.app-sidebar,.report-actions,.site-footer { display:none !important; }
  .page { display:none !important; }.page#report{display:block !important}.app-page{background:#fff}.app-shell{display:block}.app-content{padding:0}.report-section,.report-status-card{break-inside:avoid}.report-page{font-size:11px}
}

/* --- Premium multilingual / trust layer --- */
:root {
  --navy: #0b1d2a;
  --navy-2: #132a3a;
  --paper: #fbfaf7;
  --gold-soft: #f3ead8;
  --green-deep: #003f2f;
  --shadow-premium: 0 24px 70px rgba(8, 34, 27, .11);
}
body {
  background:
    radial-gradient(circle at 12% 0%, rgba(184,134,36,.055), transparent 23%),
    radial-gradient(circle at 88% 8%, rgba(0,83,60,.05), transparent 22%),
    #fff;
}
.site-header {
  box-shadow: 0 10px 40px rgba(10,35,28,.035);
  background: rgba(255,255,255,.965);
}
.brand img { width: 168px; height: 66px; }
.main-nav { gap: 21px; }
.main-nav a { position: relative; }
.main-nav a:not(.nav-app):not(.nav-contact)::after {
  content: ""; position: absolute; left: 0; right: 100%; bottom: -9px; height: 2px;
  background: linear-gradient(90deg,var(--green),var(--gold)); transition: .2s ease;
}
.main-nav a:not(.nav-app):not(.nav-contact):hover::after,.main-nav a.current:not(.nav-app):not(.nav-contact)::after{right:0}
.nav-contact { padding: 10px 14px; border-radius: 999px; background: #f4f7f5; border: 1px solid var(--line); }
.nav-contact:hover { background: var(--green-3); border-color: #c6ddd4; }
.nav-app { background: linear-gradient(135deg,var(--green-deep),var(--green-2)); color:#fff; border:0; box-shadow:0 10px 24px rgba(0,83,60,.17); }
.nav-app:hover { color:#fff !important; transform: translateY(-1px); }
.language-switcher { display:flex; align-items:center; gap:4px; margin-left:18px; padding:4px; border:1px solid var(--line); border-radius:999px; background:#f8faf9; }
.lang-btn { border:0; background:transparent; color:#66736e; min-width:34px; height:30px; padding:0 9px; border-radius:999px; font-size:11px; font-weight:800; letter-spacing:.02em; }
.lang-btn.active { background:#fff; color:var(--green); box-shadow:0 3px 10px rgba(0,43,31,.09); }
.lang-btn[data-lang="ar"] { font-family:Tahoma,Arial,sans-serif; min-width:58px; }
.hero { position:relative; }
.hero::before { content:""; position:absolute; inset:35px -4vw auto auto; width:420px; height:420px; border-radius:50%; background:radial-gradient(circle,rgba(184,134,36,.08),rgba(184,134,36,0) 68%); pointer-events:none; }
.hero-panel { box-shadow: var(--shadow-premium); border-color: rgba(0,83,60,.13); background:linear-gradient(180deg,#fff,#fcfdfc); }
.card { border-color: rgba(19,55,44,.12); }
.service-card { transition:.2s ease; background:linear-gradient(180deg,#fff,#fdfefd); }
.service-card:hover { transform:translateY(-3px); box-shadow:0 18px 50px rgba(0,43,31,.07); z-index:2; }
.eyebrow { color:#9a6b14; }
.button.primary { background:linear-gradient(135deg,var(--green-deep),var(--green-2)); }
.button.whatsapp-button { background:#1f8f5f; color:#fff; border:1px solid #1f8f5f; }
.button.whatsapp-button:hover { background:#18794f; }

.experts-hero,.contact-hero { padding-bottom:42px; }
.experts-layout { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(300px,.7fr); gap:22px; padding-bottom:26px; }
.expert-profile-card { display:grid; grid-template-columns:330px 1fr; overflow:hidden; box-shadow:var(--shadow-premium); }
.expert-photo-wrap { position:relative; min-height:520px; background:linear-gradient(160deg,var(--green-deep),var(--navy)); overflow:hidden; }
.expert-photo { width:100%; height:100%; object-fit:cover; display:block; }
.expert-photo-wrap::after { content:""; position:absolute; inset:auto 0 0; height:46%; background:linear-gradient(transparent,rgba(0,35,26,.56)); pointer-events:none; }
.expert-verified { position:absolute; z-index:2; left:18px; bottom:18px; background:rgba(255,255,255,.94); color:var(--green); border:1px solid rgba(255,255,255,.55); padding:8px 11px; border-radius:999px; font-size:11px; font-weight:800; box-shadow:0 8px 24px rgba(0,0,0,.11); }
.expert-profile-copy { padding:38px; }
.expert-profile-copy h2 { font-size:38px; margin-bottom:9px; }
.expert-title { color:var(--green); font-weight:700; font-size:14px !important; }
.expert-profile-copy > p { color:var(--muted); line-height:1.75; font-size:15px; }
.credential-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin:28px 0; }
.credential-grid > div { border:1px solid var(--line); border-radius:12px; padding:15px; background:#fafcfb; }
.credential-grid span,.credential-grid strong,.credential-grid small { display:block; }
.credential-grid span { color:#9a6b14; font-size:10px; text-transform:uppercase; letter-spacing:.1em; font-weight:800; }
.credential-grid strong { margin:7px 0 4px; font-size:14px; }
.credential-grid small { color:var(--muted); font-size:11px; }
.expert-actions { display:flex; flex-wrap:wrap; gap:10px; }
.review-principles { padding:28px; align-self:start; background:linear-gradient(180deg,#0d281f,#10233a); color:#fff; border-color:transparent; box-shadow:var(--shadow-premium); }
.review-principles .eyebrow { color:#e0b860; }
.review-principles h3 { font-family:Georgia,"Times New Roman",serif; font-size:24px; line-height:1.35; }
.principle { border-top:1px solid rgba(255,255,255,.13); padding:18px 0; }
.principle b { color:#f6ead0; font-size:13px; }
.principle p { color:#b8c7c2; font-size:12px; line-height:1.6; margin:5px 0 0; }
.experts-note { margin-bottom:100px; padding:20px 24px; border:1px solid #eadcc1; border-radius:14px; background:linear-gradient(90deg,#fffaf0,#fff); display:flex; gap:20px; align-items:flex-start; }
.experts-note strong { color:#785b1d; white-space:nowrap; }
.experts-note p { margin:0; color:#715f3c; font-size:12px; line-height:1.6; }

.contact-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; padding-bottom:28px; }
.contact-card { padding:22px; display:grid; grid-template-columns:48px 1fr auto; gap:14px; align-items:center; transition:.2s ease; }
.contact-card:hover { transform:translateY(-3px); border-color:#c5d9d1; }
.contact-card.whatsapp-card { background:linear-gradient(180deg,#f4fbf7,#fff); }
.contact-icon { width:46px; height:46px; border-radius:14px; display:grid; place-items:center; background:var(--green-3); color:var(--green); font-size:20px; font-weight:800; }
.contact-card small,.contact-card strong { display:block; }
.contact-card small { color:#9a6b14; font-size:10px; text-transform:uppercase; letter-spacing:.11em; font-weight:800; }
.contact-card strong { margin:4px 0; font-size:15px; }
.contact-card p { margin:0; color:var(--muted); font-size:11px; }
.contact-card em { font-style:normal; color:var(--green); font-size:20px; }
.contact-panel { margin:18px auto 100px; padding:34px; display:flex; justify-content:space-between; align-items:center; gap:30px; background:linear-gradient(135deg,#fbfaf7,#f4f8f6); box-shadow:var(--shadow); }
.contact-panel h2 { font-size:31px; margin-bottom:10px; }
.contact-panel p { color:var(--muted); max-width:720px; line-height:1.65; margin:0; }
.contact-panel-actions { display:flex; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.floating-whatsapp { position:fixed; right:22px; bottom:22px; z-index:70; display:flex; align-items:center; gap:8px; padding:12px 16px; border-radius:999px; background:#1f8f5f; color:#fff; box-shadow:0 14px 38px rgba(18,105,69,.3); font-size:12px; font-weight:800; border:1px solid rgba(255,255,255,.25); }
.floating-whatsapp span { width:22px; height:22px; border-radius:50%; background:rgba(255,255,255,.18); display:grid; place-items:center; }
.floating-whatsapp:hover { transform:translateY(-2px); }
.footer-domain { display:block; margin-top:15px !important; color:#d7e4df !important; letter-spacing:.04em; }
.site-footer { background:linear-gradient(145deg,#071a14,#0a2330); }
.footer-brand img { filter:none; background:#fff; border-radius:12px; padding:5px 10px; width:205px; height:76px; }

[dir="rtl"] body { font-family:Tahoma,Arial,sans-serif; }
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] .service-card h3,[dir="rtl"] .framework-card h3,[dir="rtl"] .review-principles h3 { font-family:Tahoma,Arial,sans-serif; letter-spacing:0; }
[dir="rtl"] .brand-sub { border-left:0; border-right:1px solid var(--line); padding-left:0; padding-right:14px; }
[dir="rtl"] .brand img,[dir="rtl"] .sidebar-brand img { object-position:right center; }
[dir="rtl"] .main-nav a:not(.nav-app):not(.nav-contact)::after { left:100%; right:0; }
[dir="rtl"] .main-nav a:not(.nav-app):not(.nav-contact):hover::after,[dir="rtl"] .main-nav a.current:not(.nav-app):not(.nav-contact)::after { left:0; }
[dir="rtl"] .language-switcher { margin-left:0; margin-right:18px; }
[dir="rtl"] .pricing-table th { text-align:right; }
[dir="rtl"] .price-card li:before { margin-right:0; margin-left:9px; }
[dir="rtl"] .floating-whatsapp { right:auto; left:22px; }
[dir="rtl"] .expert-verified { left:auto; right:18px; }
[dir="rtl"] .footer-brand img { object-position:center; }
[dir="rtl"] .trace-line { grid-template-columns:auto 1fr 110px; }
[dir="rtl"] .flow-step { grid-template-columns:24px 1fr 36px; }
[dir="rtl"] .flow-step > span { grid-column:3; grid-row:1; }
[dir="rtl"] .flow-step > div { grid-column:2; grid-row:1; }
[dir="rtl"] .flow-step > em { grid-column:1; grid-row:1; }

@media (max-width:1180px){
  .site-header{padding-left:20px;padding-right:20px}.main-nav{gap:14px;font-size:13px}.language-switcher{margin-left:8px}.brand{min-width:250px}.brand-sub span{display:none}
}
@media (max-width:980px){
  .language-switcher{margin-left:auto;margin-right:10px}.main-nav .nav-contact{display:block}.expert-profile-card{grid-template-columns:280px 1fr}.experts-layout{grid-template-columns:1fr}.review-principles{position:static}.contact-grid{grid-template-columns:1fr}.contact-panel{align-items:flex-start;flex-direction:column}.contact-panel-actions{justify-content:flex-start}
}
@media (max-width:700px){
  .language-switcher{gap:2px;padding:3px}.lang-btn{padding:0 7px;min-width:30px}.lang-btn[data-lang="ar"]{min-width:48px}.expert-profile-card{grid-template-columns:1fr}.expert-photo-wrap{min-height:440px}.expert-profile-copy{padding:25px}.credential-grid{grid-template-columns:1fr}.experts-note{flex-direction:column}.contact-card{grid-template-columns:44px 1fr}.contact-card em{display:none}.floating-whatsapp b{display:none}.floating-whatsapp{padding:12px}.floating-whatsapp span{width:24px;height:24px}.footer-brand img{width:180px}
}


/* Operational MVP additions */
.demo-banner { display:flex; align-items:center; justify-content:center; gap:8px; }
.demo-banner.online .status-dot { background:#3cab76; box-shadow:0 0 0 4px rgba(60,171,118,.12); }
.demo-banner.degraded .status-dot { background:#c58d2b; box-shadow:0 0 0 4px rgba(197,141,43,.12); }
.demo-banner.offline .status-dot { background:#b84e4e; box-shadow:0 0 0 4px rgba(184,78,78,.12); }
.operational-fields { margin-top:14px; }
.field-grid input, .field-grid textarea { width:100%; box-sizing:border-box; margin-top:7px; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); font:inherit; padding:11px 12px; outline:none; }
.field-grid textarea { min-height:96px; resize:vertical; }
.field-grid input:focus, .field-grid textarea:focus { border-color:#84a99a; box-shadow:0 0 0 3px rgba(0,91,65,.08); }
.button.danger { color:#9c3333; border-color:#e7c2c2; }
.button.danger:hover { background:#fff5f5; }
.finding.info { background:#f6f8f9; border-color:#dfe6e8; }
.status.awaiting { background:#fff1d8; color:#8b5c00; }
.status.degraded { background:#fff1d8; color:#8b5c00; }
.status.error { background:#feeaea; color:#9f3030; }
.api-error { margin-top:14px; padding:13px 14px; border-radius:10px; background:#fff0f0; border:1px solid #efcccc; color:#913535; font-size:12px; line-height:1.55; }
.report-empty { color:var(--muted); font-size:11px; padding:10px 0; }
.reviewer-shell { min-height:100vh; background:#f3f6f4; padding:36px 20px; }
.reviewer-wrap { max-width:1180px; margin:0 auto; }
.reviewer-header { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.reviewer-header img { width:150px; height:auto; }
.reviewer-grid { display:grid; grid-template-columns:360px 1fr; gap:18px; align-items:start; }
.reviewer-list { padding:0; overflow:hidden; }
.reviewer-list h2, .review-workspace h2 { font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; font-size:18px; margin:0; }
.reviewer-list-head { padding:18px; border-bottom:1px solid var(--line); }
.reviewer-case { display:block; width:100%; text-align:left; border:0; background:#fff; padding:14px 18px; border-bottom:1px solid var(--line); cursor:pointer; color:var(--ink); }
.reviewer-case:hover, .reviewer-case.active { background:#f5faf8; }
.reviewer-case b, .reviewer-case span, .reviewer-case small { display:block; }
.reviewer-case span { color:var(--green); font-size:10px; font-weight:800; text-transform:uppercase; margin-bottom:4px; }
.reviewer-case small { color:var(--muted); margin-top:4px; }
.review-workspace { padding:22px; }
.review-fields { display:grid; gap:13px; margin-top:18px; }
.review-fields label { font-size:11px; font-weight:700; color:#3e4945; }
.review-fields input, .review-fields select, .review-fields textarea { width:100%; box-sizing:border-box; margin-top:6px; border:1px solid var(--line); border-radius:9px; padding:11px 12px; font:inherit; background:#fff; }
.review-fields textarea { min-height:140px; resize:vertical; }
.review-findings { display:grid; gap:8px; margin-top:18px; }
.review-finding { border:1px solid var(--line); border-radius:10px; padding:12px; background:#fff; }
.review-finding b { display:block; margin-bottom:4px; }
.review-finding small { color:var(--muted); }
.review-actions { display:flex; gap:10px; margin-top:18px; }

@media (max-width: 820px) {
  .reviewer-grid { grid-template-columns:1fr; }
  .reviewer-header { align-items:flex-start; flex-direction:column; }
  .report-actions { flex-wrap:wrap; }
}

/* =========================================================
   Qistas 2.0 — institutional trust, client login & privacy
   ========================================================= */
:root{
  --q-navy:#071922;
  --q-navy-2:#0b2630;
  --q-emerald:#00533c;
  --q-emerald-2:#087154;
  --q-gold:#c69a43;
  --q-ivory:#fbfaf6;
}

/* Header: never stack words inside navigation controls */
.site-header{height:88px;gap:14px}
.main-nav{gap:14px;flex-wrap:nowrap;white-space:nowrap}
.main-nav a{white-space:nowrap;line-height:1.15;flex:0 0 auto}
.nav-contact,.nav-app{white-space:nowrap!important;min-height:42px;display:inline-flex;align-items:center}
.language-switcher{flex:0 0 auto}

/* Stronger first impression without changing the underlying content structure */
#home > .hero{
  color:#fff;
  background:
    radial-gradient(circle at 82% 22%,rgba(198,154,67,.17),transparent 28%),
    radial-gradient(circle at 12% 92%,rgba(32,127,93,.18),transparent 30%),
    linear-gradient(132deg,#06171f 0%,#09292c 54%,#063b2e 100%);
  box-shadow:0 0 0 100vmax #071f25;
  clip-path:inset(0 -100vmax);
  min-height:720px;
}
#home > .hero .eyebrow{color:#e3bd72}
#home > .hero h1 span{color:#d9b66a}
#home > .hero .hero-lead{color:#d7e2de}
#home > .hero .button.ghost{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.25);color:#fff}
#home > .hero .button.ghost:hover{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.42)}
#home > .hero .trust-strip{border-top-color:rgba(255,255,255,.16);grid-template-columns:repeat(4,1fr)}
#home > .hero .trust-strip strong{color:#f4d795}
#home > .hero .trust-strip span{color:#b9cbc5}
#home > .hero .hero-panel{background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(249,252,250,.97));color:var(--ink);border:1px solid rgba(218,238,229,.35);box-shadow:0 34px 90px rgba(0,0,0,.3)}
#home > .hero::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to right,transparent,black 45%,black 75%,transparent)}
.hero-copy,.hero-panel{position:relative;z-index:2}

/* Institutional cards */
.service-grid,.trace-card,.pricing-table-wrap,.price-card,.expert-profile-card,.contact-panel,.contact-card{box-shadow:0 16px 45px rgba(6,41,31,.055)}
.section-block:nth-of-type(even){position:relative}
.section-block:nth-of-type(even)::before{content:"";position:absolute;top:25px;bottom:25px;left:50%;width:100vw;transform:translateX(-50%);background:#fcfcf9;z-index:-1}

/* Expert photo: use supplied professional photograph and keep subject framed */
.expert-photo{object-position:center 32%}
.expert-photo-wrap{min-height:560px;background:#0a2730}
.expert-profile-card{border-color:rgba(9,65,48,.14)}

/* Confidentiality / NDA */
.privacy-hero{padding-bottom:44px}
.privacy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:30px}
.privacy-card{padding:28px;min-height:310px;display:flex;flex-direction:column;align-items:flex-start;background:linear-gradient(180deg,#fff,#fcfdfc)}
.privacy-card h2{font-size:27px;margin:28px 0 12px}
.privacy-card p{color:var(--muted);font-size:14px;line-height:1.72;flex:1}
.privacy-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--green-3);color:var(--green);font-weight:800;font-size:12px}
.privacy-note{margin:10px auto 100px;padding:24px 28px;border-radius:16px;border:1px solid #e8d8ba;background:linear-gradient(90deg,#fff9ee,#fff);display:grid;grid-template-columns:180px 1fr;gap:26px;align-items:start}
.privacy-note strong{color:#76591d}
.privacy-note p{margin:0;color:#6b5b3d;font-size:13px;line-height:1.65}

/* Login / account */
.auth-page{background:linear-gradient(140deg,#06171f 0%,#08282c 55%,#073e30 100%);min-height:calc(100vh - 88px);padding:72px 0 90px}
.auth-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.65fr);gap:70px;align-items:center}
.auth-brand-panel{color:#fff}
.auth-brand-panel>img{width:235px;height:88px;object-fit:contain;object-position:left center;background:#fff;border-radius:14px;padding:7px 12px;margin-bottom:42px}
.auth-brand-panel .eyebrow{color:#e2bd73}
.auth-brand-panel h1{font-size:clamp(44px,5vw,68px);line-height:1.02;letter-spacing:-.04em;margin-bottom:22px}
.auth-brand-panel>p{color:#c3d2cd;font-size:17px;line-height:1.7;max-width:650px}
.auth-trust-list{display:grid;gap:12px;margin-top:30px}
.auth-trust-list span{position:relative;padding-left:28px;color:#dbe5e1;font-size:13px}
.auth-trust-list span::before{content:"✓";position:absolute;left:0;top:-2px;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:rgba(219,185,112,.16);color:#e5c378;font-weight:800}
.auth-card{padding:32px;background:rgba(255,255,255,.985);box-shadow:0 34px 100px rgba(0,0,0,.33);border-color:rgba(255,255,255,.2)}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#f1f5f3;border-radius:12px;margin-bottom:24px}
.auth-tab{border:0;background:transparent;border-radius:9px;padding:11px 12px;font-weight:800;color:#697570}
.auth-tab.active{background:#fff;color:var(--green);box-shadow:0 4px 14px rgba(0,60,43,.08)}
.auth-form{display:none;gap:16px}
.auth-form.active{display:grid}
.auth-form label{display:grid;gap:7px;font-size:12px;font-weight:800;color:#46524e}
.auth-form input{width:100%;border:1px solid #cbd6d2;border-radius:10px;padding:12px 13px;outline:none;background:#fff;color:var(--ink)}
.auth-form input:focus{border-color:#7da697;box-shadow:0 0 0 3px rgba(0,83,60,.07)}
.auth-form small{font-size:10px;color:var(--muted);font-weight:500}
.auth-message{margin-top:14px;padding:11px 12px;border-radius:9px;background:#fff2f2;color:#8f3434;font-size:11px;line-height:1.5}
.auth-message.success{background:#edf8f2;color:#216a4c}
.auth-privacy{font-size:10px!important;color:#87918d!important;line-height:1.55!important;margin:18px 0 0!important}
.dashboard-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}

/* App trust polish */
.app-page{background:#f4f7f5}
.app-sidebar{background:linear-gradient(180deg,#071b1f,#092b27)}
.sidebar-brand span{color:#d9e5e0}
.app-sidebar nav a{white-space:nowrap}
.metric.card,.table-card,.review-queue,.form-section,.report-section,.report-status-card{border-color:#dce5e1;box-shadow:0 8px 28px rgba(6,47,35,.035)}

/* Footer */
.site-footer{background:linear-gradient(140deg,#041410,#071e22 60%,#082f27)}
.footer-bottom{align-items:center}

[dir="rtl"] .auth-brand-panel>img{object-position:right center}
[dir="rtl"] .auth-trust-list span{padding-left:0;padding-right:28px}
[dir="rtl"] .auth-trust-list span::before{left:auto;right:0}

@media (max-width:1120px){
  .main-nav{display:none;position:absolute;right:18px;top:78px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:16px;flex-direction:column;align-items:stretch;gap:9px;min-width:235px;white-space:normal}
  .main-nav.open{display:flex}
  .mobile-nav-button{display:block}
  .brand-sub{display:none}
  .brand{min-width:0}
  .language-switcher{margin-left:auto}
  [dir="rtl"] .main-nav{right:auto;left:18px}
}
@media (max-width:900px){
  #home > .hero .trust-strip{grid-template-columns:1fr 1fr}
  .privacy-grid{grid-template-columns:1fr}
  .auth-shell{grid-template-columns:1fr;gap:34px}
  .auth-brand-panel>img{margin-bottom:24px}
  .auth-page{padding-top:44px}
}
@media (max-width:620px){
  #home > .hero .trust-strip{grid-template-columns:1fr}
  .privacy-note{grid-template-columns:1fr;gap:8px}
  .auth-card{padding:22px}
  .auth-brand-panel h1{font-size:42px}
  .dashboard-actions{justify-content:flex-start}
}

/* Billing / payment handoff */
.billing-page{padding-bottom:80px}
.billing-intro{padding:26px 28px;display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:18px;background:linear-gradient(120deg,#fff,#f8fbf9)}
.billing-intro h2{font-size:26px;margin:0 0 8px}.billing-intro p{margin:0;color:var(--muted);max-width:760px;font-size:13px;line-height:1.65}
.payment-provider-status{display:inline-flex;align-items:center;justify-content:center;min-width:210px;padding:10px 14px;border-radius:999px;background:#fff6e7;color:#76591d;border:1px solid #ead8b4;font-size:11px;font-weight:800;text-align:center;white-space:nowrap}
.payment-provider-status.connected{background:#edf8f2;color:#176343;border-color:#cbe7d8}
.billing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.billing-service{padding:22px;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 10px 32px rgba(6,47,35,.04)}
.billing-service span{font-size:10px;color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.billing-service h3{font-size:15px;line-height:1.45;margin:12px 0 8px}.billing-service p{font-family:Georgia,'Times New Roman',serif;color:var(--green);font-size:25px;font-weight:700;margin:0 0 22px}.billing-service .button{width:100%}
.billing-message{margin-top:18px;padding:18px 20px;font-size:13px;line-height:1.6}.billing-message.manual{background:#fffaf0;border-color:#ead8b4;color:#64532f}.billing-message.error{background:#fff3f2;border-color:#efd1ce;color:#873c35}.billing-inline-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.billing-help{margin-top:18px;padding:24px 26px;display:flex;justify-content:space-between;gap:25px;align-items:center}.billing-help h3{margin:0 0 6px}.billing-help p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.billing-help-actions{display:flex;gap:8px;flex:0 0 auto}
@media(max-width:980px){.billing-grid{grid-template-columns:1fr 1fr}.billing-intro,.billing-help{align-items:flex-start;flex-direction:column}.payment-provider-status{min-width:0}.billing-help-actions{flex-wrap:wrap}}
@media(max-width:620px){.billing-grid{grid-template-columns:1fr}.billing-help-actions{width:100%}.billing-help-actions .button{flex:1}}
[dir="rtl"] .billing-intro,[dir="rtl"] .billing-help{text-align:right}

/* Production workflows */
.auth-link{border:0;background:transparent;color:var(--green);font:inherit;font-weight:700;cursor:pointer;padding:10px;text-align:center}
.auth-link:hover{text-decoration:underline}.auth-form>p{color:var(--muted);font-size:13px;line-height:1.65}
.account-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:20px}.account-page .form-section{margin:0}.account-page .form-section>.button{margin-top:16px;margin-inline-end:8px}
.nda-workflow{margin:24px auto 90px;padding:26px;display:flex;align-items:center;justify-content:space-between;gap:30px}.nda-workflow[hidden]{display:none}.nda-workflow h2{font-family:Georgia,"Times New Roman",serif;color:var(--green);margin:5px 0}.nda-workflow p{color:var(--muted);margin:0}.nda-actions,.nda-actions form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nda-actions input[type=file]{display:none}
.document-links{display:flex;gap:10px;flex-wrap:wrap}.document-link{display:inline-flex;padding:10px 13px;border:1px solid var(--line);border-radius:9px;color:var(--green);font-weight:700;background:#f8faf9}.document-link:hover{background:var(--green-3)}
.billing-history{margin-top:20px}.payment-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.payment-row:first-child{border-top:0}.payment-row b,.payment-row small{display:block}.payment-row small{color:var(--muted);margin-top:3px}.status.pending{background:#fff7e6;color:#8a6218}.status.paid{background:#eaf7f0;color:#196746}.status.failed,.status.cancelled{background:#fff0ee;color:#9a3529}
.legal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-bottom:90px}.legal-grid .card{padding:24px}.legal-grid h2{font-family:Georgia,"Times New Roman",serif;color:var(--green)}
.review-finding details{margin-top:8px}.review-finding pre{white-space:pre-wrap;max-height:260px;overflow:auto;background:#f4f7f5;padding:12px;border-radius:8px;font-size:11px}.review-finding-editors{display:grid;gap:15px;margin:12px 0 20px}.review-finding-editor{border:1px solid var(--line);border-radius:12px;padding:16px}.review-finding-editor legend{padding:0 7px;color:var(--green);font-weight:800}.review-finding-editor label{display:grid;gap:5px;font-size:11px;font-weight:700;margin-bottom:10px}.review-finding-editor input,.review-finding-editor textarea,.review-finding-editor select{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff}.review-finding-editor textarea{min-height:85px}.nda-list-head{border-top:1px solid var(--line);margin-top:16px}.footer-bottom a{color:inherit}.footer-bottom a:hover{color:#fff}

@media(max-width:820px){.account-grid,.legal-grid{grid-template-columns:1fr}.nda-workflow{align-items:flex-start;flex-direction:column}.payment-row{grid-template-columns:1fr auto}.payment-row .status{grid-column:1/-1;justify-self:start}}
@media(max-width:620px){.nda-actions,.nda-actions form{width:100%;align-items:stretch;flex-direction:column}.nda-actions .button{width:100%;justify-content:center}.evidence-table{overflow-x:auto}.evidence-head,.evidence-row{min-width:680px}.report-actions{width:100%}.report-actions .button{flex:1}.payment-row{grid-template-columns:1fr}}
