:root{
  --bg:#070910;
  --bg-2:#0b0f19;
  --panel:#111726;
  --panel-2:#161d2d;
  --panel-3:#0e1420;
  --ink:#f7f8fb;
  --muted:#9aa6bb;
  --line:#263149;
  --accent:#7c5cff;
  --accent-2:#35c2ff;
  --good:#4ade80;
  --warn:#fbbf24;
  --danger:#fb7185;
  --shadow:0 20px 50px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 15% 0%, rgba(124,92,255,.15), transparent 28%),
    radial-gradient(circle at 85% 5%, rgba(53,194,255,.10), transparent 28%),
    var(--bg);
  color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  min-height:100vh;
}
a{color:inherit}
button,input,textarea,select{font:inherit}
.shell{width:min(1240px,92vw);margin:0 auto}
.site-nav{
  position:sticky;top:0;z-index:50;
  background:rgba(7,9,16,.82);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;letter-spacing:.08em}
.brand-mark{
  width:34px;height:34px;border-radius:12px;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  box-shadow:0 0 26px rgba(124,92,255,.35);
}
.nav-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.nav-links a,.nav-links button{
  color:var(--muted);text-decoration:none;background:none;border:0;
  padding:10px 12px;border-radius:10px;cursor:pointer;
}
.nav-links a:hover,.nav-links button:hover{background:rgba(255,255,255,.05);color:var(--ink)}
.page{padding:38px 0 80px}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;color:var(--accent-2);font-weight:700}
.hero{padding:60px 0 34px}
.hero h1{font-size:clamp(42px,7vw,84px);line-height:.95;margin:8px 0 18px;letter-spacing:-.04em}
.hero.compact h1{font-size:clamp(36px,5vw,58px)}
.hero-copy{max-width:760px;color:var(--muted);font-size:19px;line-height:1.7}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:44px;padding:0 16px;border-radius:12px;
  border:1px solid transparent;background:linear-gradient(135deg,var(--accent),#6447e8);
  color:#fff;text-decoration:none;font-weight:700;cursor:pointer;
  box-shadow:0 10px 24px rgba(124,92,255,.22);
}
.btn:hover{transform:translateY(-1px)}
.btn.secondary{background:var(--panel-2);border-color:var(--line);box-shadow:none}
.btn.ghost{background:transparent;border-color:var(--line);box-shadow:none;color:var(--muted)}
.grid{display:grid;gap:18px}
.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{
  background:linear-gradient(180deg,rgba(22,29,45,.94),rgba(14,20,32,.94));
  border:1px solid rgba(255,255,255,.07);
  border-radius:20px;padding:22px;box-shadow:var(--shadow)
}
.card h2,.card h3{margin-top:0}
.card.soft{box-shadow:none;background:rgba(255,255,255,.025)}
.metric{font-size:38px;font-weight:800;letter-spacing:-.03em}
.metric-label{color:var(--muted);font-size:14px;margin-top:3px}
.section{margin-top:42px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:14px}
.section-head h2{margin:0;font-size:24px}
.section-head p{margin:4px 0 0;color:var(--muted)}
.status{
  display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);
  border-radius:999px;padding:6px 10px;font-size:12px;color:#dce4f4;background:#0d1421
}
.status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent-2)}
.status.good::before{background:var(--good)}
.status.warn::before{background:var(--warn)}
.status.danger::before{background:var(--danger)}
.muted{color:var(--muted)}
.kicker{font-size:13px;color:var(--muted);margin-bottom:6px}
.value{font-weight:700}
.tile-link{display:block;text-decoration:none;height:100%}
.tile-link .card{height:100%;transition:.18s ease}
.tile-link:hover .card{transform:translateY(-3px);border-color:rgba(124,92,255,.45)}
.list{display:grid;gap:10px}
.list-row{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)
}
.list-row:last-child{border-bottom:0}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:13px 12px;text-align:left;border-bottom:1px solid rgba(255,255,255,.07);white-space:nowrap}
th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
td{font-size:14px}
form.card{max-width:760px}
label{display:block;font-size:13px;color:#dce3ef;margin:4px 0 6px}
input,textarea,select{
  width:100%;padding:12px 13px;border-radius:12px;
  border:1px solid var(--line);background:#0b111c;color:#fff;outline:none
}
input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(124,92,255,.12)}
.help{font-size:12px;color:var(--muted)}
.split{display:grid;grid-template-columns:1.4fr .8fr;gap:18px}
.progress{height:9px;border-radius:999px;background:#0b111b;overflow:hidden;border:1px solid rgba(255,255,255,.05)}
.progress > span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2))}
.timeline{display:grid;gap:16px}
.timeline-item{display:grid;grid-template-columns:14px 1fr;gap:12px}
.timeline-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;background:var(--accent)}
.badge{
  display:inline-block;padding:4px 8px;border-radius:8px;background:rgba(124,92,255,.12);
  border:1px solid rgba(124,92,255,.25);font-size:12px;color:#d9d2ff
}
.empty{padding:28px;text-align:center;color:var(--muted)}
.footer{border-top:1px solid rgba(255,255,255,.06);padding:28px 0 42px;color:var(--muted);font-size:13px}
@media (max-width:900px){
  .grid.cols-4,.grid.cols-3,.grid.cols-2,.split{grid-template-columns:1fr}
  .nav-inner{height:auto;padding:14px 0;align-items:flex-start}
  .hero{padding-top:42px}
}


.brand-logo{
  display:block;
  width:190px;
  max-width:42vw;
  height:auto;
  object-fit:contain;
}


/* Client Hub: flatter, task-oriented UI */
.client-page,.ops-page{max-width:1080px;margin:0 auto}.client-page.narrow{max-width:680px}.page-heading-row{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:18px 0 28px;border-bottom:1px solid var(--line);margin-bottom:28px}.page-heading-row h1,.client-page>h1{margin:0 0 8px;font-size:clamp(34px,5vw,52px);letter-spacing:-.035em}.page-intro{margin:0;color:var(--muted);font-size:16px;line-height:1.6}.client-section,.ops-panel{padding:24px 0;border-bottom:1px solid var(--line);box-shadow:none;background:transparent}.client-section h2,.ops-panel h2{margin:0 0 6px;font-size:21px}.section-help,.client-section p,.ops-panel p{color:var(--muted);line-height:1.6}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.button-group,.row-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.text-action{color:#8fdcff;text-decoration:none;font-weight:700}.text-action:hover{text-decoration:underline}.plain-status{font-weight:700;color:#cfd7e8}.next-action{margin:16px 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.simple-list{border-top:1px solid var(--line)}.simple-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}.simple-row.unread{position:relative;padding-left:18px}.simple-row.unread:before{content:"";position:absolute;left:0;width:7px;height:7px;border-radius:50%;background:var(--accent-2)}.row-note,.field-help,.muted-text{color:var(--muted);font-size:13px;margin-top:4px}.empty-line{color:var(--muted);padding:18px 0}.notice{padding:14px 16px;border-left:3px solid var(--accent-2);background:rgba(53,194,255,.06);margin:18px 0}.notice.error{border-left-color:var(--danger);background:rgba(251,113,133,.06)}.important-section{border-left:3px solid var(--accent);padding-left:18px}.flat-form{max-width:720px}.flat-form p{margin:0 0 16px}.inline-form{display:grid;grid-template-columns:1fr 2fr auto;gap:12px;align-items:start}.signature-pad{display:block;width:100%;max-width:700px;background:white;border-radius:8px;touch-action:none;margin:8px 0 12px}.signer-summary{margin:20px 0 26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.signer-summary>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.04)}.signer-summary>div:last-child{border-bottom:0}.signer-summary span{color:var(--muted)}.agreement-check{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;margin:22px 0}.agreement-check input{width:auto;margin-top:3px}
.workflow{margin-top:18px;border-top:1px solid var(--line)}.workflow-row{display:grid;grid-template-columns:34px 1fr auto;gap:14px;align-items:start;padding:17px 0;border-bottom:1px solid var(--line);opacity:.5}.workflow-row.done{opacity:.72}.workflow-row.current{opacity:1;background:rgba(124,92,255,.055);margin:0 -14px;padding:17px 14px}.workflow-marker{font-weight:800;color:var(--muted);font-size:18px;line-height:1.3}.workflow-row.done .workflow-marker{color:var(--good)}.workflow-row.current .workflow-marker{color:var(--accent-2)}.workflow-copy strong{display:block;font-size:16px;margin-bottom:4px}.workflow-copy div{color:var(--muted);line-height:1.5}.current-label{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2)}
.environment-list{border-top:1px solid var(--line)}.environment-row{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.environment-row strong{font-size:18px}.detail-table{border-top:1px solid var(--line)}.detail-table>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}.detail-table span{color:var(--muted)}
.revision-list{border-top:1px solid var(--line)}.revision-row{display:grid;grid-template-columns:38px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}.revision-number{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#131b2a;border:1px solid var(--line);font-weight:800}.revision-content input,.revision-content textarea{margin-bottom:10px}.attachment-line{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:13px;border-top:1px solid rgba(255,255,255,.05)}.attachment-form{display:flex;gap:10px;align-items:center;margin-top:10px}.attachment-form input{margin:0}.text-button{background:none;border:0;color:#8fdcff;font-weight:700;cursor:pointer}.confirmed-scope{margin-top:10px;color:var(--muted);font-size:13px}.submit-section{padding-bottom:8px}
.billing-table{margin-top:16px;border-top:1px solid var(--line)}.billing-head,.billing-row{display:grid;grid-template-columns:2fr 1fr 1fr .8fr .5fr;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.billing-head{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.07em}
.ops-metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ops-metrics>div{padding:18px 20px;border-right:1px solid var(--line)}.ops-metrics>div:last-child{border-right:0}.ops-metrics span,.ops-status-strip span{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.ops-metrics strong{font-size:24px}.ops-status-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:22px}.ops-status-strip>div{padding:16px;border-right:1px solid var(--line)}.ops-status-strip>div:last-child{border-right:0}.notifications-panel{padding-top:30px}.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--accent);color:#fff;font-size:12px;vertical-align:2px}.notification-list{border-top:1px solid var(--line);margin-top:14px}.notification-row{display:grid;grid-template-columns:10px 1fr auto;gap:14px;align-items:center;padding:16px 8px;text-decoration:none;border-bottom:1px solid var(--line);transition:background .15s ease}.notification-row:hover{background:rgba(255,255,255,.035)}.notification-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 12px rgba(53,194,255,.55)}.notification-copy strong{display:block;margin-bottom:4px}.notification-copy div{color:var(--muted);font-size:13px}.notification-copy small{display:block;color:#6f7d96;margin-top:5px}.notification-arrow{font-size:26px;color:var(--muted)}.data-table{border-top:1px solid var(--line);margin-top:14px}.data-head,.data-row{display:grid;grid-template-columns:1.3fr 1.4fr .8fr .8fr 1.3fr;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);align-items:center}.data-head{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.invoice-table .data-head,.invoice-table .data-row{grid-template-columns:1.4fr 2fr .8fr .8fr}
@media(max-width:800px){.page-heading-row,.section-title-row,.next-action{flex-direction:column;align-items:flex-start}.workflow-row{grid-template-columns:28px 1fr}.current-label{grid-column:2}.inline-form{grid-template-columns:1fr}.billing-head{display:none}.billing-row{grid-template-columns:1fr 1fr}.billing-row span:first-child{grid-column:1/-1}.ops-metrics,.ops-status-strip{grid-template-columns:1fr 1fr}.ops-metrics>div,.ops-status-strip>div{border-bottom:1px solid var(--line)}.data-head{display:none}.data-row,.invoice-table .data-row{grid-template-columns:1fr 1fr}}


/* ============================================================
   Operations Console v2
   ============================================================ */
.ops-console{max-width:1180px;margin:0 auto}
.ops-console-header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:18px 0 26px;border-bottom:1px solid var(--line)}
.ops-console-header h1{font-size:clamp(36px,4vw,54px);margin:0;letter-spacing:-.04em}
.ops-console-header p{margin:8px 0 0;color:var(--muted);font-size:15px}
.ops-console-actions{display:flex;gap:10px;flex-wrap:wrap}
.ops-kpi-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--line);border-radius:14px;margin:24px 0 28px;overflow:hidden;background:rgba(10,15,25,.62)}
.ops-kpi{position:relative;padding:18px 18px 16px;border-right:1px solid var(--line);min-height:110px}
.ops-kpi:last-child{border-right:0}
.ops-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:transparent}
.ops-kpi.attention:before{background:var(--warn)}
.ops-kpi-label{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.ops-kpi strong{display:block;font-size:28px;letter-spacing:-.03em}
.ops-kpi small{display:block;color:#718098;font-size:11px;margin-top:6px;line-height:1.35}
.ops-console-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
.ops-console-main{min-width:0}
.ops-console-side{position:sticky;top:96px}
.ops-block{border:1px solid var(--line);border-radius:14px;background:rgba(9,14,23,.52);margin-bottom:24px;overflow:hidden}
.ops-block-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.018)}
.ops-block-head h2,.ops-notification-head h2,.ops-quick-block h2{margin:0;font-size:18px;letter-spacing:-.01em}
.ops-block-head p,.ops-notification-head p{margin:4px 0 0;color:var(--muted);font-size:12px}
.ops-link{color:#89d8ff;text-decoration:none;font-size:12px;font-weight:700}
.ops-link:hover{text-decoration:underline}
.ops-site-row{display:grid;grid-template-columns:minmax(260px,1.7fr) 130px 130px auto;gap:16px;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.055);transition:background .14s ease}
.ops-site-row:last-child{border-bottom:0}
.ops-site-row:hover{background:rgba(255,255,255,.025)}
.ops-site-primary{display:flex;align-items:center;gap:13px;min-width:0}
.ops-site-icon{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(145deg,#192338,#0d1422);border:1px solid #2b3953;color:#9edfff;font-weight:800;font-size:13px}
.ops-site-name{font-weight:750;text-decoration:none}
.ops-site-name:hover{text-decoration:underline}
.ops-site-client{display:flex;gap:6px;flex-wrap:wrap;color:var(--muted);font-size:11px;margin-top:4px}
.ops-site-client a{color:inherit;text-decoration:none}
.ops-site-meta{display:grid;gap:6px;justify-items:start}
.ops-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#67758c}
.ops-status-pill,.ops-invoice-status{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:6px;border:1px solid #2b3850;background:#111827;font-size:11px;font-weight:700;color:#cfd7e8}
.ops-status-pill.status-live{border-color:rgba(74,222,128,.3);color:#8cf0ae;background:rgba(74,222,128,.07)}
.ops-status-pill.status-development,.ops-status-pill.status-review{border-color:rgba(53,194,255,.28);color:#9fe2ff;background:rgba(53,194,255,.06)}
.ops-health{display:inline-flex;align-items:center;gap:7px;font-size:12px}
.ops-health>span{width:7px;height:7px;border-radius:50%;background:#64748b}
.ops-health.health-healthy>span{background:var(--good);box-shadow:0 0 10px rgba(74,222,128,.45)}
.ops-health.health-warning>span{background:var(--warn)}
.ops-health.health-down>span{background:var(--danger)}
.ops-row-action{font-size:12px;font-weight:700;color:#8fdcff;text-decoration:none;white-space:nowrap}
.ops-billing-head,.ops-billing-row{display:grid;grid-template-columns:1.2fr 1.8fr .8fr .7fr;gap:14px;align-items:center;padding:13px 20px}
.ops-billing-head{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#6f7d94;border-bottom:1px solid var(--line);background:rgba(255,255,255,.012)}
.ops-billing-row{border-bottom:1px solid rgba(255,255,255,.055);font-size:12px}
.ops-billing-row:last-child{border-bottom:0}
.ops-billing-row a{text-decoration:none}
.ops-billing-row a:hover{text-decoration:underline}
.ops-invoice-status.invoice-paid{color:#8cf0ae;border-color:rgba(74,222,128,.28);background:rgba(74,222,128,.06)}
.ops-invoice-status.invoice-sent,.ops-invoice-status.invoice-overdue{color:#ffd97b;border-color:rgba(251,191,36,.28);background:rgba(251,191,36,.06)}
.ops-notification-block,.ops-quick-block{border:1px solid var(--line);border-radius:14px;background:rgba(9,14,23,.68);overflow:hidden;margin-bottom:20px}
.ops-notification-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px;border-bottom:1px solid var(--line)}
.ops-notification-count{min-width:28px;height:28px;padding:0 8px;border-radius:999px;display:grid;place-items:center;background:#6d4aff;color:white;font-size:12px;font-weight:800}
.ops-notification-item{display:grid;grid-template-columns:8px 1fr auto;gap:12px;align-items:start;padding:15px 16px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.055);transition:background .14s ease}
.ops-notification-item:last-child{border-bottom:0}
.ops-notification-item:hover{background:rgba(255,255,255,.03)}
.ops-notification-indicator{width:7px;height:7px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 12px rgba(53,194,255,.55);margin-top:5px}
.ops-notification-item strong{display:block;font-size:12px;line-height:1.4}
.ops-notification-item p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
.ops-notification-item small{display:block;margin-top:6px;color:#66748b;font-size:10px}
.ops-chevron{font-size:22px;color:#61708a;line-height:1}
.ops-notification-empty{text-align:center;padding:30px 22px 34px}
.ops-checkmark{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;border:1px solid rgba(74,222,128,.3);background:rgba(74,222,128,.06);color:#7ee6a1;font-weight:900}
.ops-notification-empty strong{display:block;font-size:13px}
.ops-notification-empty span{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin-top:5px}
.ops-quick-block{padding:18px}
.ops-quick-block h2{margin-bottom:10px}
.ops-quick-block a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-top:1px solid rgba(255,255,255,.055);text-decoration:none;font-size:12px;color:#dbe3f0}
.ops-quick-block a b{color:#718099}
.ops-quick-block a:hover span{color:#8fdcff}
.ops-empty-state{padding:28px 20px;text-align:center}
.ops-empty-state strong{display:block;font-size:13px}
.ops-empty-state span{display:block;color:var(--muted);font-size:11px;margin-top:4px}
@media(max-width:980px){
  .ops-console-grid{grid-template-columns:1fr}
  .ops-console-side{position:static}
  .ops-kpi-bar{grid-template-columns:repeat(2,1fr)}
  .ops-kpi{border-bottom:1px solid var(--line)}
  .ops-site-row{grid-template-columns:1fr 110px 110px}
  .ops-row-action{grid-column:1/-1;justify-self:end}
}
@media(max-width:700px){
  .ops-console-header{align-items:flex-start;flex-direction:column}
  .ops-kpi-bar{grid-template-columns:1fr}
  .ops-kpi{border-right:0}
  .ops-site-row{grid-template-columns:1fr 1fr}
  .ops-site-primary{grid-column:1/-1}
  .ops-billing-head{display:none}
  .ops-billing-row{grid-template-columns:1fr 1fr}
  .ops-billing-row span:nth-child(2){grid-column:1/-1}
}


/* ============================================================
   Shared application tables + page system
   ============================================================ */
.app-page{padding-top:6px}
.app-header,.client-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:20px 0 24px;border-bottom:1px solid var(--line);margin-bottom:24px}
.app-header h1,.client-header h1{margin:6px 0 4px;font-size:clamp(32px,4vw,48px);letter-spacing:-.035em}
.app-header p,.client-header p{margin:0;color:var(--muted);font-size:14px}
.app-back{display:inline-block;color:#7f8ca3;text-decoration:none;font-size:12px;font-weight:700;margin-bottom:4px}
.app-back:hover{color:#a8dcff}
.compact-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:0 0 22px;background:rgba(9,14,23,.55)}
.compact-metrics>div{padding:15px 17px;border-right:1px solid var(--line)}.compact-metrics>div:last-child{border-right:0}
.compact-metrics span{display:block;color:#748198;text-transform:uppercase;letter-spacing:.07em;font-size:10px;margin-bottom:5px}.compact-metrics strong{font-size:22px}.compact-metrics .metric-text{font-size:14px;line-height:1.3}
.data-panel{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:rgba(9,14,23,.52);margin-bottom:22px}
.data-panel-head{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.016)}
.data-panel-head h2{font-size:17px;margin:0}.data-panel-head p{font-size:11px;color:var(--muted);margin:3px 0 0}
.responsive-table{width:100%;overflow:hidden}.rt-head,.rt-row{display:grid;gap:14px;align-items:center;padding:12px 16px}.rt-head{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#6f7d94;border-bottom:1px solid var(--line);background:rgba(255,255,255,.01)}.rt-row{font-size:12px;border-bottom:1px solid rgba(255,255,255,.05)}.rt-row:last-child{border-bottom:0}.rt-row:hover{background:rgba(255,255,255,.02)}.rt-primary{font-weight:750}.rt-primary a,.rt-action a{color:inherit;text-decoration:none}.rt-primary a:hover,.rt-action a:hover{text-decoration:underline}.rt-action{text-align:right;color:#8fdcff;font-weight:700}.rt-action span{color:#66748a}
.clients-table .rt-head,.clients-table .rt-row{grid-template-columns:1.45fr 1.8fr .55fr .55fr .8fr .7fr .55fr}.contact-table .rt-head,.contact-table .rt-row{grid-template-columns:1.1fr 1.6fr 1fr .7fr}.website-table .rt-head,.website-table .rt-row{grid-template-columns:1.3fr 1.4fr 1fr .8fr .65fr}.project-table .rt-head,.project-table .rt-row{grid-template-columns:1.5fr 1.2fr .7fr .6fr .6fr}.request-table .rt-head,.request-table .rt-row{grid-template-columns:1.7fr 1fr .8fr .8fr}.revision-admin-table .rt-head,.revision-admin-table .rt-row{grid-template-columns:1fr 1fr .55fr .8fr .8fr .55fr}.checklist-table .rt-head,.checklist-table .rt-row{grid-template-columns:.3fr .9fr 2fr .8fr .65fr .65fr}.mini-table .rt-head,.mini-table .rt-row{grid-template-columns:1.6fr .8fr .7fr}
.table-state{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid #2a3750;border-radius:6px;background:#111827;color:#ccd5e5;font-size:10px;font-weight:800}.table-state.good{color:#8eeaae;border-color:rgba(74,222,128,.28);background:rgba(74,222,128,.06)}.table-state.info{color:#98ddff;border-color:rgba(53,194,255,.26);background:rgba(53,194,255,.055)}.table-state.attention{color:#ffd979;border-color:rgba(251,191,36,.28);background:rgba(251,191,36,.055)}.table-state.muted{color:#929db0}
.health-text{display:inline-flex;align-items:center;gap:7px}.health-text i{width:7px;height:7px;border-radius:50%;background:#657188}.health-text.health-healthy i{background:var(--good)}.health-text.health-warning i{background:var(--warn)}.health-text.health-down i{background:var(--danger)}
.table-empty{padding:24px 18px;color:var(--muted);font-size:12px;text-align:center}.two-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.activity-feed{padding:0 18px}.activity-line{display:grid;grid-template-columns:10px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.05);align-items:start}.activity-line:last-child{border-bottom:0}.activity-dot{width:7px;height:7px;border-radius:50%;background:#51647f;margin-top:5px}.activity-line strong{font-size:12px}.activity-line p{margin:3px 0;color:var(--muted);font-size:11px}.activity-line small{color:#66748a;font-size:10px}.activity-line a{font-size:11px;color:#8fdcff;text-decoration:none}
.structured-form{border-top:1px solid var(--line)}.form-section{display:grid;grid-template-columns:250px 1fr;gap:34px;padding:26px 0;border-bottom:1px solid var(--line)}.form-section-copy h2{font-size:16px;margin:0 0 5px}.form-section-copy p{font-size:12px;color:var(--muted);line-height:1.5;margin:0}.form-fields{display:grid;gap:8px}.form-fields.two-col{grid-template-columns:1fr 1fr}.form-fields label{margin-top:6px}.form-fields small{color:var(--muted);font-size:10px}.field-span{grid-column:1/-1}.form-actions{display:flex;gap:10px;padding:22px 0}.panel-form{padding:18px}.panel-form.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.panel-form p{margin:0 0 13px}.panel-form.form-grid p{margin:0}.panel-form.form-grid button{margin-top:8px}
.action-banner,.client-action-strip,.client-support-strip{display:flex;align-items:center;justify-content:space-between;gap:22px;border:1px solid rgba(53,194,255,.22);background:rgba(53,194,255,.045);border-radius:12px;padding:18px 20px;margin-bottom:22px}.action-banner strong,.client-action-strip strong,.client-support-strip strong{font-size:14px}.action-banner p,.client-action-strip p,.client-support-strip p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.client-action-strip.attention{border-color:rgba(251,191,36,.25);background:rgba(251,191,36,.045)}
.admin-help-list{padding:8px 18px}.admin-help-list>div{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05)}.admin-help-list>div:last-child{border-bottom:0}.admin-help-list b{font-size:11px}.admin-help-list span{font-size:11px;color:var(--muted);line-height:1.5}
.revision-admin-list{padding:0 18px}.revision-admin-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.055)}.revision-request{display:grid;grid-template-columns:30px 1fr;gap:12px}.revision-index{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#111927;border:1px solid var(--line);font-size:10px;font-weight:800}.revision-request strong{font-size:12px}.revision-request p{font-size:12px;color:var(--muted);line-height:1.55;margin:5px 0}.attachment-link{display:block;font-size:10px;color:#8fdcff;margin-top:4px}.revision-scope label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#78869b}.revision-scope textarea{margin-top:6px}.panel-form-footer{padding:18px;border-top:1px solid var(--line)}.panel-form-footer textarea{margin:7px 0 12px}.table-button{border:1px solid #2a3851;background:#111827;color:#cbd5e5;border-radius:6px;padding:6px 9px;font-size:10px;font-weight:750;cursor:pointer}.table-button:hover{border-color:#4c6388;color:white}
.info-table{padding:0 18px}.info-table>div{display:grid;grid-template-columns:120px 180px 1fr;gap:18px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.05)}.info-table>div:last-child{border-bottom:0}.info-table span{color:#7b889d;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.info-table strong{font-size:11px}.info-table p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}

/* Client-facing console */
.client-console{max-width:1000px;margin:0 auto}.narrow-client{max-width:760px}.client-header{margin-bottom:20px}.client-header h1{font-size:clamp(30px,4vw,44px)}
.client-focus{border:1px solid #30405d;border-radius:13px;background:linear-gradient(135deg,rgba(28,39,62,.85),rgba(10,16,27,.85));padding:20px 22px;margin-bottom:24px}.client-focus-top{display:flex;justify-content:space-between;align-items:center;gap:14px}.client-step-label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#7c8aa1;font-weight:800}.client-focus h2{font-size:22px;margin:10px 0 16px}.client-next-step{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:15px;border-top:1px solid rgba(255,255,255,.08)}.client-next-step strong{font-size:13px}.client-next-step p{font-size:12px;color:#a5b0c2;margin:4px 0 0;line-height:1.5}.client-detail-link{display:inline-block;margin-top:15px;font-size:11px;color:#91dbff;text-decoration:none;font-weight:700}
.client-data-section{border:1px solid var(--line);border-radius:12px;background:rgba(9,14,23,.48);overflow:hidden;margin-bottom:20px}.client-section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border-bottom:1px solid var(--line)}.client-section-head h2{font-size:16px;margin:0}.client-section-head p{font-size:11px;color:var(--muted);margin:3px 0 0}.client-section-head>a{font-size:11px;color:#8fdcff;text-decoration:none;font-weight:700}
.client-table{overflow:hidden}.client-table-head,.client-row{display:grid;gap:14px;align-items:center;padding:12px 16px}.client-table-head{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#718097;border-bottom:1px solid var(--line)}.client-row{font-size:12px;border-bottom:1px solid rgba(255,255,255,.05)}.client-row:last-child{border-bottom:0}.client-row strong{font-size:12px}.client-row a{justify-self:end;color:#8fdcff;text-decoration:none;font-weight:700;font-size:11px}.client-row small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.client-table-head,.client-row{grid-template-columns:1.6fr 1.3fr .8fr .55fr}.billing-client-table .client-table-head,.billing-client-table .client-row{grid-template-columns:1.7fr .8fr .7fr .65fr .45fr}.service-client-table .client-table-head,.service-client-table .client-row{grid-template-columns:1.7fr .8fr .7fr .7fr}.requests-client-table .client-table-head,.requests-client-table .client-row{grid-template-columns:1.6fr 1fr .8fr .8fr}.updates-table .client-row{grid-template-columns:8px 1fr auto}.update-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 10px rgba(53,194,255,.4)}.client-empty{padding:22px 16px;text-align:center;color:var(--muted);font-size:12px}
.client-message{border-left:3px solid var(--accent-2);background:rgba(53,194,255,.045);padding:14px 16px;margin-bottom:18px}.client-message.error{border-color:var(--danger);background:rgba(251,113,133,.04)}.client-message strong{font-size:12px}.client-message p{font-size:11px;color:var(--muted);margin:4px 0;line-height:1.5}.client-message a{font-size:11px;color:#8fdcff}
.progress-list{padding:0 16px}.progress-line{display:grid;grid-template-columns:28px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.05);opacity:.45}.progress-line:last-child{border-bottom:0}.progress-line.done{opacity:.7}.progress-line.current{opacity:1;background:rgba(53,194,255,.035);margin:0 -16px;padding:14px 16px}.progress-symbol{font-size:15px;color:#74829a}.progress-line.done .progress-symbol{color:var(--good)}.progress-line.current .progress-symbol{color:var(--accent-2)}.progress-line strong{font-size:12px}.progress-line p{font-size:11px;color:var(--muted);line-height:1.5;margin:3px 0 0}.progress-line>span{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#8fdcff;font-weight:800}
.environment-table{padding:0 16px}.environment-entry{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.05)}.environment-entry:last-child{border-bottom:0}.environment-entry strong{font-size:13px}.environment-entry p{font-size:11px;color:var(--muted);margin:3px 0 0}.availability-text{font-size:10px;color:#758299}.status-table{padding:0 16px}.status-table>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05)}.status-table>div:last-child{border-bottom:0}.status-table span{font-size:11px;color:var(--muted)}.status-table strong{font-size:11px}
.revision-entry-list{padding:0 16px}.revision-entry{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.05)}.revision-entry-number{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#111927;border:1px solid var(--line);font-size:10px;font-weight:800}.revision-edit-grid{display:grid;grid-template-columns:.7fr 1.8fr;gap:14px}.revision-entry-body label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#7a879b}.revision-entry-body input,.revision-entry-body textarea{margin-top:5px}.compact-upload{display:flex;align-items:center;gap:10px;margin-top:8px}.compact-upload input{margin:0}.revision-add-form{display:grid;grid-template-columns:.8fr 1.8fr auto;gap:12px;padding:16px}.confirmed-scope{font-size:11px;color:#aeb8c9;margin-top:8px}.save-state{display:block;color:#6c7a90;margin-top:3px}
.document-summary,.signer-line{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:20px}.document-summary>div,.signer-line>div{padding:14px 16px;border-right:1px solid var(--line)}.document-summary>div:last-child,.signer-line>div:last-child{border-right:0}.document-summary span,.signer-line span{display:block;font-size:10px;color:#78869c;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.document-summary strong,.signer-line strong{font-size:13px}.document-body{padding:18px;font-size:12px;line-height:1.7;color:#cbd3df}.document-action{padding:16px;border-top:1px solid var(--line)}.client-form{padding:18px}.client-form p{margin:0 0 14px}.client-form small{display:block;color:var(--muted);font-size:10px;margin:5px 0 9px}.signature-pad{border:1px solid #d6dae2}
.request-type-help{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:20px}.request-type-help>div{padding:14px 16px;border-right:1px solid var(--line)}.request-type-help>div:last-child{border-right:0}.request-type-help strong{display:block;font-size:11px}.request-type-help span{display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:3px}
@media(max-width:900px){.two-panel-grid,.project-admin-grid{grid-template-columns:1fr}.form-section{grid-template-columns:1fr;gap:14px}.compact-metrics{grid-template-columns:1fr 1fr}.client-next-step,.action-banner,.client-action-strip,.client-support-strip{align-items:flex-start;flex-direction:column}.request-type-help{grid-template-columns:1fr}.request-type-help>div{border-right:0;border-bottom:1px solid var(--line)}.request-type-help>div:last-child{border-bottom:0}}
@media(max-width:720px){.rt-head,.client-table-head{display:none}.responsive-table .rt-row,.client-row{grid-template-columns:1fr 1fr!important}.rt-primary,.client-row strong:first-child{grid-column:1/-1}.rt-action{text-align:left}.form-fields.two-col,.panel-form.form-grid,.revision-edit-grid,.revision-add-form{grid-template-columns:1fr}.info-table>div{grid-template-columns:1fr}.app-header,.client-header{align-items:flex-start;flex-direction:column}.compact-metrics{grid-template-columns:1fr}.compact-metrics>div{border-right:0;border-bottom:1px solid var(--line)}.document-summary,.signer-line{grid-template-columns:1fr}.document-summary>div,.signer-line>div{border-right:0;border-bottom:1px solid var(--line)}}


/* ============================================================
   Client Intake v2
   ============================================================ */
.client-intake-page{max-width:1180px}
.intake-required-note{margin:18px 0 0;color:var(--muted);font-size:12px}.intake-required-note span{color:#ff9cae;font-weight:800}
.intake-form .form-section{grid-template-columns:220px minmax(0,1fr)}
.intake-form .form-section-copy{padding-right:24px}.intake-form .form-section-copy h2{margin-bottom:5px}.intake-form .form-section-copy p{font-size:12px;line-height:1.5}
.section-required,.optional-label{display:inline-flex;margin-top:10px;padding:4px 7px;border-radius:6px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.section-required{color:#ffb4c0;background:rgba(251,113,133,.07);border:1px solid rgba(251,113,133,.22)}
.optional-label{color:#8190a8;background:rgba(129,144,168,.06);border:1px solid rgba(129,144,168,.15)}
.required-field label:after{content:" *";color:#ff8da1}.field-wrap small,.conditional-subsection small{display:block;color:var(--muted);font-size:10px;margin-top:4px}
.choice-panel ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice-panel li{margin:0}.choice-panel label{display:flex;gap:9px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#0c1320;cursor:pointer}.choice-panel input{width:auto;margin:0}
.section-toggle,.toggle-line{display:flex!important;align-items:center;gap:9px;font-weight:700;cursor:pointer}.section-toggle{padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#0c1320}.section-toggle input,.toggle-line input{width:auto;margin:0}.nested-toggle{margin:14px 0}
.conditional-section{padding-top:16px}.conditional-section[hidden],.conditional-subsection[hidden]{display:none!important}.conditional-subsection{margin-top:10px}.compact-fields{margin-top:14px}.optional-section{transition:opacity .15s ease}
.proposal-options{display:grid;grid-template-columns:1fr 54px 1.4fr;gap:14px;align-items:stretch;margin-top:16px}.upload-panel,.paste-panel{border:1px solid var(--line);border-radius:10px;padding:16px;background:#0b111c}.upload-panel strong,.paste-panel strong{display:block;margin-bottom:4px}.upload-panel p,.paste-panel p{margin:0 0 12px;color:var(--muted);font-size:11px}.proposal-or{display:grid;place-items:center;color:#65738a;font-size:10px;font-weight:800}
.errorlist{margin:6px 0 0;padding:0;list-style:none;color:#ff9cad;font-size:11px}
@media(max-width:850px){.intake-form .form-section{grid-template-columns:1fr}.choice-panel ul,.proposal-options{grid-template-columns:1fr}.proposal-or{padding:4px}.intake-form .form-section-copy{padding-right:0}}


/* Project operations + workflow checklist */
.project-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:24px;align-items:start}
.project-layout aside{position:sticky;top:94px}
.project-value-pill{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:7px;background:rgba(53,194,255,.08);border:1px solid rgba(53,194,255,.28);color:#9fe3ff;font-size:12px;font-weight:800}
.project-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}
.project-kpis .project-status-value{font-size:17px;line-height:1.25}
.project-action-block{border-color:rgba(53,194,255,.32)}
.project-setting-row{display:grid;grid-template-columns:180px 1fr;gap:22px;padding:15px 20px;border-bottom:1px solid rgba(255,255,255,.055);align-items:start}
.project-setting-row:last-child{border-bottom:0}
.project-setting-row>span{color:var(--muted);font-size:12px}
.project-setting-row>strong{font-size:13px}
.project-setting-row.project-notes-row>div{font-size:13px;line-height:1.6;color:#dce3ef}
.project-setting-row em{color:var(--muted)}
.project-edit-form{padding:20px;max-width:none}
.project-edit-form[hidden]{display:none!important}
.revision-table .data-head,.revision-table .data-row{grid-template-columns:1fr 1fr .55fr .9fr .9fr .55fr}
.workflow-check-row{position:relative;display:grid;grid-template-columns:28px 1fr auto;gap:12px;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.055);align-items:start}
.workflow-check-row:last-child{border-bottom:0}
.workflow-check-icon{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;border:1px solid #344159;color:#7e8ca2;font-size:11px;font-weight:900;margin-top:1px}
.workflow-check-copy strong{display:block;font-size:12px;margin-bottom:4px}
.workflow-check-copy span{display:block;color:var(--muted);font-size:11px;line-height:1.5}
.workflow-check-row.done{opacity:.48}
.workflow-check-row.done .workflow-check-copy strong,.workflow-check-row.done .workflow-check-copy span{text-decoration:line-through}
.workflow-check-row.done .workflow-check-icon{color:#8cf0ae;border-color:rgba(74,222,128,.28);background:rgba(74,222,128,.06)}
.workflow-check-row.current{background:linear-gradient(90deg,rgba(53,194,255,.085),rgba(53,194,255,.015))}
.workflow-check-row.current:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent-2)}
.workflow-check-row.current .workflow-check-icon{color:#9fe3ff;border-color:rgba(53,194,255,.35);background:rgba(53,194,255,.08)}
.workflow-current{display:inline-flex;align-items:center;height:22px;padding:0 7px;border-radius:999px;background:rgba(53,194,255,.08);border:1px solid rgba(53,194,255,.25);color:#9fe3ff;text-transform:uppercase;letter-spacing:.07em;font-size:9px;font-weight:800}
@media(max-width:900px){
  .project-layout{grid-template-columns:1fr}
  .project-layout aside{position:static}
  .project-kpis{grid-template-columns:1fr 1fr}
}


/* Client revision package builder */
.revision-builder-page{max-width:1120px}
.revision-instructions ol{margin:10px 0 0 20px;padding:0;color:var(--muted);font-size:12px;line-height:1.7}
.revision-builder{overflow:hidden}
.revision-package-item{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:20px;border-bottom:1px solid rgba(255,255,255,.06)}
.revision-package-number{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid #33415a;background:#101827;color:#a6e5ff;font-size:12px;font-weight:800}
.revision-package-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.revision-package-meta>div{padding:10px 12px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.055);border-radius:8px}
.revision-package-meta span{display:block;color:#718099;font-size:9px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}
.revision-package-meta strong,.revision-package-meta a{font-size:11px}
.revision-package-meta a{color:#8fdcff;text-decoration:none;word-break:break-all}
.revision-attachments{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.055)}
.revision-attachments-title{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.revision-attachments-title strong{font-size:11px}
.revision-attachments-title span{font-size:10px;color:var(--muted)}
.attachment-list{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}
.attachment-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:6px;border:1px solid #2d3b54;background:#101827;color:#b8dcff;font-size:10px;text-decoration:none}
.existing-item-attachment-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.attachment-picker{margin:0;cursor:pointer}
.attachment-picker input{display:none}
.attachment-picker span{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px dashed #40516e;border-radius:7px;color:#9edfff;font-size:10px}
.small-btn{min-height:30px;padding:0 10px;font-size:10px}
.revision-empty{text-align:center;padding:32px 20px;border-bottom:1px solid var(--line)}
.revision-empty strong{display:block;font-size:13px}
.revision-empty span{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.revision-add-panel{padding:22px;background:linear-gradient(180deg,rgba(124,92,255,.035),rgba(255,255,255,.008))}
.revision-add-heading h3{margin:0 0 5px;font-size:16px}
.revision-add-heading p{margin:0 0 18px;color:var(--muted);font-size:11px;line-height:1.55}
.revision-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field-group.full-width{grid-column:1/-1}
.field-group label{font-size:11px;font-weight:700;margin-bottom:6px}
.multi-upload-box{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:16px;border:1px dashed #40516e;border-radius:10px;background:rgba(255,255,255,.012)}
.multi-upload-box input{width:auto;max-width:260px}
.multi-upload-box strong{display:block;font-size:11px;margin-bottom:4px}
.multi-upload-box span{display:block;color:var(--muted);font-size:10px;line-height:1.45}
.selected-files-list{display:grid;gap:5px;margin-top:8px}
.selected-file{padding:7px 9px;border-radius:6px;background:#0d1522;border:1px solid #26344c;color:#b7c4d8;font-size:10px}
.revision-add-action{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.055)}
.revision-add-action>span{color:var(--muted);font-size:10px}
.revision-submit-final{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:22px 24px;margin-top:22px;border:1px solid rgba(53,194,255,.35);border-radius:12px;background:linear-gradient(90deg,rgba(53,194,255,.06),rgba(124,92,255,.035))}
.final-submit-eyebrow{display:block;color:#8fdcff;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800;margin-bottom:5px}
.revision-submit-final h2{margin:0 0 6px;font-size:18px}
.revision-submit-final p{margin:0;color:var(--muted);font-size:11px;line-height:1.6;max-width:720px}
.final-submit-button{white-space:nowrap}
.final-submit-button:disabled{opacity:.4;cursor:not-allowed;transform:none}
@media(max-width:760px){
  .revision-package-meta,.revision-form-grid{grid-template-columns:1fr}
  .field-group.full-width{grid-column:auto}
  .revision-submit-final{grid-template-columns:1fr}
  .multi-upload-box{grid-template-columns:1fr}
}


/* ============================================================
   Revision Workspace v3
   ============================================================ */
.revision-workspace{max-width:1120px}
.revision-page-header{
  display:flex;justify-content:space-between;align-items:flex-start;gap:24px;
  padding:10px 0 26px;border-bottom:1px solid var(--line);margin-bottom:22px
}
.revision-page-header h1{font-size:42px;margin:0 0 6px;letter-spacing:-.035em}
.revision-page-header p{margin:0;color:var(--muted);font-size:14px}

.revision-guide{
  padding:15px 17px;margin-bottom:20px;border-left:3px solid var(--accent-2);
  background:linear-gradient(90deg,rgba(53,194,255,.07),rgba(53,194,255,.015))
}
.revision-guide>strong{display:block;font-size:12px;margin-bottom:10px}
.revision-guide-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.revision-guide-steps span{display:flex;gap:8px;color:var(--muted);font-size:10px;line-height:1.45}
.revision-guide-steps b{
  flex:0 0 auto;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;
  background:#132033;border:1px solid #31425d;color:#9edfff;font-size:9px
}

.revision-workspace-panel{
  border:1px solid var(--line);border-radius:12px;overflow:hidden;background:rgba(8,13,22,.6)
}
.revision-workspace-head{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:17px 20px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.015)
}
.revision-workspace-head h2{margin:0;font-size:17px}
.revision-workspace-head p{margin:4px 0 0;color:var(--muted);font-size:10px}
.revision-draft-badge{
  display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:6px;
  border:1px solid #31405a;color:#c5d1e1;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em
}

.revision-item-row{
  display:grid;grid-template-columns:38px 1fr;gap:14px;padding:20px;
  border-bottom:1px solid rgba(255,255,255,.06)
}
.revision-item-index{
  width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  border:1px solid #33415b;background:#101827;color:#9edfff;font-size:11px;font-weight:800
}
.revision-item-location{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px
}
.revision-item-location>div{
  padding:10px 12px;border:1px solid rgba(255,255,255,.055);border-radius:7px;background:rgba(255,255,255,.015)
}
.revision-item-location .revision-item-url{grid-column:1/-1}
.revision-item-location span,.revision-item-description>span{
  display:block;color:#738197;font-size:8px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px
}
.revision-item-location strong,.revision-item-location a{font-size:11px}
.revision-item-location a{color:#8fdcff;text-decoration:none}
.revision-description-edit label{font-size:10px;font-weight:700}
.revision-description-edit textarea{margin:6px 0 4px}
.revision-description-edit .save-state{color:#728197;font-size:9px}
.revision-item-description p{margin:5px 0 0;line-height:1.55;font-size:12px}

.revision-file-section{margin-top:14px;padding-top:13px;border-top:1px solid rgba(255,255,255,.055)}
.revision-file-heading{margin-bottom:9px}
.revision-file-heading strong{display:block;font-size:10px}
.revision-file-heading span{display:block;color:var(--muted);font-size:9px;margin-top:2px}
.revision-file-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:9px}
.revision-file-item{
  display:inline-flex;align-items:center;gap:6px;min-height:27px;padding:0 9px;border-radius:6px;
  border:1px solid #2a3951;background:#101827;color:#badcff;text-decoration:none;font-size:9px
}
.file-icon{color:#7ed9ff}
.revision-add-file{display:flex;gap:7px;align-items:center}
.revision-add-file input{display:none}
.revision-add-file label{
  display:inline-flex;align-items:center;min-height:29px;padding:0 10px;border:1px dashed #3b4d69;
  border-radius:6px;color:#9edfff;font-size:9px;cursor:pointer;margin:0
}
.revision-add-file button{
  min-height:29px;padding:0 10px;border-radius:6px;border:1px solid #344159;background:#151d2d;
  color:#dce4ef;font-size:9px;font-weight:700;cursor:pointer
}

.revision-empty-state{text-align:center;padding:32px 20px;border-bottom:1px solid var(--line)}
.revision-empty-state strong{display:block;font-size:12px}
.revision-empty-state span{display:block;color:var(--muted);font-size:10px;margin-top:4px}

.revision-add-section{
  padding:22px;background:linear-gradient(180deg,rgba(124,92,255,.035),rgba(255,255,255,.005))
}
.revision-add-section-head{
  display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px
}
.revision-add-section-head h2{margin:0 0 5px;font-size:17px}
.revision-add-section-head p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}
.revision-add-section-head>span{
  display:inline-flex;align-items:center;height:22px;padding:0 7px;border-radius:999px;
  border:1px solid rgba(124,92,255,.28);color:#c6baff;background:rgba(124,92,255,.06);
  font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:800
}
.revision-add-form-v2{display:block;width:100%}
.revision-fields-row{display:grid;grid-template-columns:1fr 1.4fr 1.2fr;gap:12px;margin-bottom:12px}
.revision-field{display:block}
.revision-field label{display:block;font-size:10px;font-weight:700;margin:0 0 6px}
.revision-field input,.revision-field textarea{width:100%;margin:0}
.revision-field textarea{min-height:125px}

.revision-upload-section{margin-top:14px}
.revision-upload-copy{margin-bottom:8px}
.revision-upload-copy strong{display:block;font-size:10px}
.revision-upload-copy span{display:block;color:var(--muted);font-size:9px;margin-top:2px}
.revision-upload-drop{
  display:flex;align-items:center;gap:12px;padding:15px;border:1px dashed #3b4d69;border-radius:8px;
  background:rgba(255,255,255,.012);cursor:pointer;margin:0
}
.revision-upload-drop input{display:none}
.revision-upload-icon{
  width:32px;height:32px;border-radius:7px;display:grid;place-items:center;
  border:1px solid #35455f;background:#101827;color:#8fdcff;font-size:18px
}
.revision-upload-drop strong{display:block;font-size:10px}
.revision-upload-drop small{display:block;color:var(--muted);font-size:9px;margin-top:2px}

.revision-add-footer{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding-top:16px;margin-top:16px;border-top:1px solid rgba(255,255,255,.055)
}
.revision-add-footer>div strong{display:block;font-size:10px}
.revision-add-footer>div span{display:block;color:var(--muted);font-size:9px;margin-top:3px}

.revision-final-submit{
  display:flex;justify-content:space-between;align-items:center;gap:30px;
  padding:20px 22px;margin-top:20px;border:1px solid rgba(53,194,255,.32);border-radius:10px;
  background:linear-gradient(90deg,rgba(53,194,255,.055),rgba(124,92,255,.025))
}
.revision-final-kicker{
  display:block;color:#88ddff;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:5px
}
.revision-final-submit h2{margin:0 0 5px;font-size:17px}
.revision-final-submit p{margin:0;color:var(--muted);font-size:10px;line-height:1.55;max-width:720px}
.revision-final-button{white-space:nowrap}
.revision-final-button:disabled{opacity:.38;cursor:not-allowed;transform:none}

@media(max-width:800px){
  .revision-page-header,.revision-add-footer,.revision-final-submit{flex-direction:column;align-items:flex-start}
  .revision-guide-steps{grid-template-columns:1fr 1fr}
  .revision-fields-row{grid-template-columns:1fr}
  .revision-item-location{grid-template-columns:1fr}
  .revision-item-location .revision-item-url{grid-column:auto}
}


/* Revision Workspace v4 — collapsed items + confirmation modal */
.revision-collapsed-item{border-bottom:1px solid rgba(255,255,255,.06)}
.revision-collapsed-item:last-child{border-bottom:0}
.revision-collapsed-summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px 18px}
.revision-summary-number{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:1px solid #34425b;background:#101827;color:#9edfff;font-size:10px;font-weight:800}
.revision-summary-label{display:block;color:#718098;font-size:8px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}
.revision-summary-copy strong{display:block;font-size:12px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.revision-summary-copy small{display:block;color:var(--muted);font-size:9px;margin-top:4px}
.revision-summary-actions{display:flex;align-items:center;gap:6px}
.revision-inline-action{border:0;background:transparent;color:#8fdcff;font-size:10px;font-weight:750;cursor:pointer;padding:6px 8px;border-radius:5px}
.revision-inline-action:hover{background:rgba(53,194,255,.06)}
.revision-inline-action.danger{color:#ff9cac}
.revision-inline-action.danger:hover{background:rgba(251,113,133,.07)}
.revision-edit-drawer{padding:18px 18px 20px 65px;border-top:1px solid rgba(255,255,255,.04);background:rgba(255,255,255,.012)}
.revision-edit-drawer[hidden]{display:none!important}
.revision-edit-status{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:5px}
.revision-edit-status .save-state{color:#728197;font-size:9px}
.revision-modal-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(2,6,12,.78);display:grid;place-items:center;padding:20px;backdrop-filter:blur(6px)}
.revision-modal-backdrop[hidden]{display:none!important}
.revision-modal{width:min(560px,100%);border:1px solid #31415b;border-radius:14px;background:#0b111c;box-shadow:0 24px 80px rgba(0,0,0,.55);padding:24px}
.revision-modal.small-modal{width:min(480px,100%)}
.revision-modal-kicker{display:block;color:#8fdcff;font-size:8px;text-transform:uppercase;letter-spacing:.09em;font-weight:850;margin-bottom:7px}
.revision-modal h2{margin:0 0 10px;font-size:22px;letter-spacing:-.02em}
.revision-modal p{margin:0;color:var(--muted);font-size:11px;line-height:1.65}
.revision-modal-warning{margin-top:15px;padding:11px 12px;border-left:3px solid var(--warn);background:rgba(251,191,36,.055);color:#d9c58f;font-size:10px;line-height:1.5}
.revision-modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:9px;margin-top:22px}
.danger-button{background:#a83246!important;box-shadow:none!important}
.danger-button:hover{background:#bc3b51!important}
.danger-text{color:#ff9cac}
@media(max-width:680px){
  .revision-collapsed-summary{grid-template-columns:30px 1fr}
  .revision-summary-actions{grid-column:2;justify-content:flex-start}
  .revision-edit-drawer{padding-left:18px}
  .revision-modal-actions{flex-direction:column-reverse;align-items:stretch}
  .revision-modal-actions .btn{width:100%}
}


/* ============================================================
   Revision saved-items table
   ============================================================ */
.revision-table-wrap{
  border-bottom:1px solid var(--line);
  background:rgba(5,9,16,.38)
}

.revision-table-head,
.revision-table-row{
  display:grid;
  grid-template-columns:46px minmax(300px,2.6fr) 1fr 1.15fr 70px 110px;
  gap:14px;
  align-items:center
}

.revision-table-head{
  padding:10px 18px;
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.018);
  color:#6f7e94;
  font-size:8px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase
}

.revision-table-item{
  border-bottom:1px solid rgba(255,255,255,.055)
}
.revision-table-item:last-child{
  border-bottom:0
}

.revision-table-row{
  position:relative;
  min-height:58px;
  padding:12px 18px;
  transition:
    background .14s ease,
    box-shadow .14s ease,
    transform .14s ease
}

.revision-table-row:hover{
  background:linear-gradient(
    90deg,
    rgba(53,194,255,.065),
    rgba(124,92,255,.028)
  );
  box-shadow:inset 3px 0 0 var(--accent-2)
}

.revision-table-row:hover .revision-table-issue strong{
  color:#ffffff
}

.revision-table-number{
  color:#8fdcff;
  font-size:10px;
  font-weight:800
}

.revision-table-issue{
  min-width:0
}
.revision-table-issue strong{
  display:block;
  overflow:hidden;
  color:#e5ebf4;
  font-size:11px;
  line-height:1.4;
  text-overflow:ellipsis;
  white-space:nowrap;
  transition:color .14s ease
}

.revision-table-page,
.revision-table-area,
.revision-table-files{
  overflow:hidden;
  color:#a5b1c3;
  font-size:10px;
  text-overflow:ellipsis;
  white-space:nowrap
}

.revision-table-files{
  text-align:center
}

.revision-table-actions{
  display:flex;
  justify-content:flex-end;
  gap:4px
}

/* Make the add form feel like a separate section rather than part of the table. */
.revision-add-section{
  border-top:18px solid #080d16
}

.revision-edit-drawer{
  border-top:1px solid rgba(53,194,255,.16);
  background:linear-gradient(
    180deg,
    rgba(53,194,255,.035),
    rgba(255,255,255,.01)
  )
}

@media(max-width:920px){
  .revision-table-head{
    display:none
  }

  .revision-table-row{
    grid-template-columns:32px minmax(0,1fr) auto
  }

  .revision-table-page,
  .revision-table-area,
  .revision-table-files{
    grid-column:2;
    white-space:normal
  }

  .revision-table-actions{
    grid-column:3;
    grid-row:1 / span 4;
    flex-direction:column;
    align-self:start
  }
}


/* ============================================================
   Revision Add Item modal
   ============================================================ */
.revision-head-actions{
  display:flex;
  align-items:center;
  gap:10px
}

.revision-add-item-button{
  min-height:32px;
  padding:0 12px;
  font-size:10px
}

/* Remove the old embedded add-form visual divider if previous CSS remains. */
.revision-add-section{
  border-top:0
}

.revision-add-modal{
  width:min(820px,96vw);
  max-height:90vh;
  overflow-y:auto
}

.revision-modal-header-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  margin-bottom:20px
}

.revision-modal-header-row h2{
  margin-bottom:5px
}

.revision-modal-header-row p{
  margin:0;
  color:var(--muted);
  font-size:10px
}

.revision-modal-close{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid #31415b;
  border-radius:7px;
  background:#111827;
  color:#aeb9ca;
  font-size:20px;
  line-height:1;
  cursor:pointer
}

.revision-modal-close:hover{
  color:#fff;
  border-color:#49617f
}

.revision-add-form-modal{
  display:block
}

.revision-add-form-modal .revision-fields-row{
  margin-bottom:14px
}

.revision-add-form-modal .revision-upload-section{
  margin-top:16px
}

.revision-add-modal-actions{
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.06)
}

@media(max-width:760px){
  .revision-head-actions{
    align-items:flex-end;
    flex-direction:column
  }

  .revision-add-modal{
    width:100%
  }
}


/* Voxol account security UI */
.auth-page{padding-top:28px}
.auth-form{margin-top:24px}
.auth-links{margin-top:16px;font-size:12px}
.auth-links a{color:#8fdcff;text-decoration:none;font-weight:700}
.verification-resend{margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}
.verification-resend summary{cursor:pointer;color:#9eabc0;font-size:11px;font-weight:700}
.verification-resend form{margin-top:14px;display:grid;gap:9px}
.inline-security-action{margin:0}
.table-state.bad{color:#ff9cac;border-color:rgba(251,113,133,.28);background:rgba(251,113,133,.06)}
.table-state.warning{color:#ffd97b;border-color:rgba(251,191,36,.28);background:rgba(251,191,36,.06)}

/* ============================================================
   Voxol public v4
   ============================================================ */
.public-page{width:100%;max-width:none;margin:0;padding:0}
.public-page>.section{max-width:1180px;margin-left:auto;margin-right:auto}

.public-header{
  position:sticky;top:0;z-index:900;
  border-bottom:1px solid rgba(255,255,255,.07);
  background:rgba(7,10,14,.74);
  backdrop-filter:blur(18px) saturate(145%);
  transition:background .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.public-header.is-scrolled{background:rgba(7,10,14,.95);border-color:#24303c;box-shadow:0 12px 32px rgba(0,0,0,.23)}
.public-header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.public-brand{display:flex;align-items:center;text-decoration:none;position:relative}
.public-brand::after{content:"";position:absolute;left:12%;right:12%;bottom:-10px;height:2px;background:linear-gradient(90deg,transparent,#55bdf1,transparent);opacity:0;transform:scaleX(.4);transition:.2s ease}
.public-brand:hover::after{opacity:1;transform:scaleX(1)}
.public-brand img{display:block;width:190px;height:auto;object-fit:contain}
.public-nav{display:flex;align-items:center;gap:4px}
.public-nav a{position:relative;padding:10px 13px;border-radius:8px;color:#aeb9c8;font-size:13px;font-weight:720;text-decoration:none;transition:color .15s ease,background .15s ease,transform .15s ease}
.public-nav a:not(.public-nav-login)::after{content:"";position:absolute;left:13px;right:13px;bottom:5px;height:1px;background:#67c7f7;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.public-nav a:hover{color:#fff;background:rgba(255,255,255,.04)}
.public-nav a:hover::after{transform:scaleX(1)}
.public-nav-login{margin-left:7px;border:1px solid #314154;color:#eaf2fb!important;background:rgba(255,255,255,.025)}
.public-nav-login:hover{border-color:#52718e;transform:translateY(-1px)}
.public-nav-login span{color:#75cdf9;margin-left:5px}
.public-menu-button{display:none;width:40px;height:40px;border:1px solid #314154;border-radius:9px;background:#0d141c;cursor:pointer}
.public-menu-button span{display:block;width:16px;height:1px;margin:5px auto;background:#e0e7ef}

.vx-home{--bg:#070a0e;--bg2:#0c1219;--panel:#111a25;--line:#273544;--text:#f7f9fc;--muted:#9ba9bb;--blue:#2e8fdf;--cyan:#67cafa;background:var(--bg);color:var(--text)}
.vx-hero-section{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 28%,rgba(43,139,210,.20),transparent 33%),radial-gradient(circle at 8% 15%,rgba(71,83,145,.16),transparent 28%),#080d13}
.vx-hero-bg{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:56px 56px;mask-image:linear-gradient(90deg,transparent,black 42%,black 100%)}
.vx-hero-layout{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;gap:64px;align-items:center;min-height:720px;padding-top:64px;padding-bottom:72px}
.vx-overline,.vx-section-heading>span,.vx-project-type,.vx-capability-banner>div>span,.vx-contact-inner>div>span{color:#75ccfa;font-size:10px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.vx-hero-copy h1{margin:15px 0 22px;font-size:clamp(54px,5.7vw,86px);line-height:.96;letter-spacing:-.055em;max-width:760px}
.vx-hero-copy>p{max-width:640px;margin:0;color:#a8b5c6;font-size:18px;line-height:1.72}
.vx-hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}
.vx-btn-primary,.vx-btn-ghost,.vx-btn-light,.vx-btn-outline-light{min-height:48px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;font-size:13px;font-weight:850;text-decoration:none;transition:transform .16s ease,background .16s ease,border-color .16s ease}
.vx-btn-primary{background:#f4f7fa;color:#091019}.vx-btn-primary:hover{transform:translateY(-2px);background:#fff}
.vx-btn-ghost{color:#ced8e4;border:1px solid #304052;background:#0d141c}.vx-btn-ghost:hover{transform:translateY(-2px);border-color:#5a748d;background:#111a24}.vx-btn-ghost span{color:#75cef9;margin-left:8px}
.vx-hero-proof{display:grid;grid-template-columns:repeat(4,1fr);margin-top:42px;padding-top:19px;border-top:1px solid #22303d}
.vx-hero-proof>div{padding:0 14px;border-right:1px solid #22303d}.vx-hero-proof>div:first-child{padding-left:0}.vx-hero-proof>div:last-child{border-right:0}
.vx-hero-proof strong{display:block;font-size:12px}.vx-hero-proof span{display:block;margin-top:4px;color:#728195;font-size:9px}

.vx-hero-visual{--mx:0px;--my:0px;position:relative;height:555px;border:1px solid #2a3a4a;border-radius:34px;background:radial-gradient(circle at 55% 48%,rgba(50,151,221,.17),transparent 23%),linear-gradient(145deg,#0f1721,#091016 70%);overflow:hidden;box-shadow:0 32px 90px rgba(0,0,0,.34)}
.vx-visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px);background-size:38px 38px}
.vx-visual-card{position:absolute;border:1px solid #2b3d4e;border-radius:17px;background:rgba(12,18,26,.92);backdrop-filter:blur(12px);box-shadow:0 16px 42px rgba(0,0,0,.3);transition:transform .18s ease,border-color .18s ease}
.vx-visual-card:hover{border-color:#55738e}
.vx-card-main{left:16%;top:23%;width:68%;padding:29px;transform:translate(calc(var(--mx) * -.35),calc(var(--my) * -.35))}
.vx-visual-label,.vx-visual-card>span{display:block;color:#73cafa;font-size:8px;font-weight:900;letter-spacing:.13em;margin-bottom:8px}
.vx-card-main h3{margin:0;font-size:31px;line-height:1.05}.vx-visual-lines{display:grid;gap:8px;margin-top:28px}.vx-visual-lines i{display:block;height:5px;border-radius:99px;background:linear-gradient(90deg,#2d8fdf,#66cdfa)}.vx-visual-lines i:nth-child(1){width:88%}.vx-visual-lines i:nth-child(2){width:62%}.vx-visual-lines i:nth-child(3){width:76%}
.vx-card-web{left:5%;top:8%;padding:14px 16px;transform:translate(var(--mx),var(--my))}.vx-card-software{right:5%;top:9%;padding:14px 16px;transform:translate(calc(var(--mx) * -.65),calc(var(--my) * -.65))}.vx-card-systems{right:8%;bottom:8%;padding:14px 16px;transform:translate(var(--mx),var(--my))}
.vx-visual-card strong{display:block;font-size:13px}.vx-visual-card small{display:block;margin-top:4px;color:#77869a;font-size:9px}
.vx-visual-pulse{position:absolute;border:1px solid rgba(98,195,241,.17);border-radius:50%;pointer-events:none}.pulse-one{width:425px;height:425px;left:50%;top:50%;transform:translate(-50%,-50%)}.pulse-two{width:262px;height:262px;left:50%;top:50%;transform:translate(-50%,-50%)}

.vx-contrast-band{background:#edf1f5;color:#0a1017}.vx-contrast-inner{padding-top:64px;padding-bottom:64px}.vx-contrast-inner p{max-width:1100px;margin:0;font-size:clamp(27px,3.2vw,46px);line-height:1.26;letter-spacing:-.03em;font-weight:650}
.vx-section{padding:100px 0}.vx-services-section{background:#0d131a}.vx-work-section{background:#f2f4f7;color:#0a1017}.vx-capability-section{background:#091017}
.vx-section-heading{display:grid;grid-template-columns:190px minmax(0,1fr);column-gap:32px;row-gap:12px;align-items:start;margin-bottom:44px}.vx-section-heading h2{grid-column:2;margin:0;max-width:780px;font-size:clamp(40px,4.7vw,66px);line-height:1.02;letter-spacing:-.045em}.vx-section-heading p{grid-column:2;margin:0;max-width:620px;color:#8392a5;font-size:14px;line-height:1.65}.vx-section-heading.light>span{color:#1677b8}.vx-section-heading.light p{color:#647282}
.vx-services-list{border-top:1px solid #2a3745}.vx-services-list article{display:grid;grid-template-columns:58px 1.25fr 1.55fr 34px;gap:24px;align-items:center;min-height:128px;padding:10px 6px;border-bottom:1px solid #2a3745;transition:background .15s ease,padding-left .15s ease}.vx-services-list article:hover{padding-left:16px;background:#121a23}.vx-service-index{color:#58687a;font-size:10px;font-weight:900}.vx-service-title>span{color:#66c9fa;font-size:8px;font-weight:900;letter-spacing:.12em}.vx-service-title h3{margin:6px 0 0;font-size:24px}.vx-services-list article>p{margin:0;color:#8d9bac;font-size:13px;line-height:1.65}.vx-service-arrow{justify-self:end;color:#70cefb;font-size:20px}

.vx-project-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.vx-project-card{position:relative;min-height:260px;padding:25px;border:1px solid #d0d7df;border-radius:20px;background:#fff;overflow:hidden;transition:transform .17s ease,box-shadow .17s ease}.vx-project-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(26,42,58,.12)}.vx-project-feature{grid-row:span 2;min-height:536px;padding-bottom:252px}.vx-project-number{position:absolute;right:22px;top:20px;color:#a0acb8;font-size:11px;font-weight:900}.vx-project-type{color:#1677b8}.vx-project-card h3{margin:10px 0;font-size:30px;line-height:1.08}.vx-project-card p{max-width:650px;margin:0;color:#637181;font-size:13px;line-height:1.65}.vx-project-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:17px}.vx-project-tags span{padding:6px 8px;border-radius:999px;background:#edf2f6;color:#526172;font-size:9px}
.vx-project-visual{position:absolute;left:24px;right:24px;bottom:24px;height:205px;border-radius:13px;background:#0d141c;border:1px solid #273645;overflow:hidden}.visual-encore{display:grid;grid-template-columns:82px 1fr;padding:14px;gap:14px}.vx-fake-sidebar{border-radius:8px;background:#151f2b;padding:10px;display:grid;align-content:start;gap:9px}.vx-fake-sidebar b{height:12px;border-radius:3px;background:#3c8bc2}.vx-fake-sidebar span{height:8px;border-radius:3px;background:#243342}.vx-fake-main{display:grid;gap:10px}.vx-fake-chart{height:105px;display:flex;align-items:end;gap:8px;padding:12px;border-radius:8px;background:#121c27}.vx-fake-chart i{flex:1;border-radius:4px 4px 0 0;background:#347fba}.vx-fake-chart i:nth-child(1){height:32%}.vx-fake-chart i:nth-child(2){height:61%}.vx-fake-chart i:nth-child(3){height:46%}.vx-fake-chart i:nth-child(4){height:82%}.vx-fake-chart i:nth-child(5){height:70%}.vx-fake-table{display:grid;gap:7px}.vx-fake-table span{display:block;height:12px;border-radius:4px;background:#172432}
.vx-capability-banner{display:grid;grid-template-columns:1fr .8fr;gap:52px;padding:34px 0 48px}.vx-capability-banner h2{margin:9px 0 0;font-size:clamp(36px,4vw,58px);line-height:1.03;letter-spacing:-.04em}.vx-capability-banner>p{margin:0;align-self:end;color:#8e9caf;font-size:14px;line-height:1.75}.vx-capability-strip{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;border-top:1px solid #283746;border-bottom:1px solid #283746;overflow:hidden}.vx-capability-strip span{white-space:nowrap;color:#d4dee9;font-size:13px;font-weight:750}.vx-capability-strip i{width:4px;height:4px;border-radius:50%;background:#3b91c7;flex:0 0 auto}
.vx-contact-section{background:#176fa9;color:#fff}.vx-contact-inner{min-height:315px;display:flex;align-items:center;justify-content:space-between;gap:38px}.vx-contact-inner>div>span{color:#c8ecff}.vx-contact-inner h2{margin:9px 0 0;max-width:760px;font-size:clamp(42px,5vw,70px);line-height:1;letter-spacing:-.045em}.vx-contact-actions{display:flex;gap:10px;flex-wrap:wrap}.vx-btn-light{background:#fff;color:#0b1722}.vx-btn-light:hover{transform:translateY(-2px)}.vx-btn-outline-light{border:1px solid rgba(255,255,255,.5);color:#fff}.vx-btn-outline-light:hover{transform:translateY(-2px);background:rgba(255,255,255,.08)}

.footer{background:#070a0e;border-top:1px solid #1d2834;color:#758398}

@media(max-width:1000px){.vx-hero-layout{grid-template-columns:1fr;min-height:auto}.vx-hero-visual{height:500px}.vx-project-grid{grid-template-columns:1fr}.vx-project-feature{grid-row:auto}.vx-capability-banner{grid-template-columns:1fr}}
@media(max-width:760px){.public-header-inner{min-height:66px}.public-brand img{width:150px}.public-menu-button{display:block}.public-nav{display:none;position:absolute;top:66px;left:0;right:0;padding:12px 18px 18px;flex-direction:column;align-items:stretch;background:#080d13;border-bottom:1px solid #263443}.public-header.is-open .public-nav{display:flex}.public-nav a{padding:12px}.public-nav-login{margin-left:0}.vx-hero-layout{padding-top:48px}.vx-hero-copy h1{font-size:clamp(48px,14vw,68px)}.vx-hero-proof{grid-template-columns:1fr 1fr;row-gap:14px}.vx-hero-proof>div{border-right:0;padding-left:0!important}.vx-hero-visual{height:430px}.vx-card-main{left:8%;width:84%}.vx-card-web{left:4%}.vx-card-software{right:4%}.vx-card-systems{right:4%}.vx-section-heading{grid-template-columns:1fr}.vx-section-heading h2,.vx-section-heading p{grid-column:1}.vx-services-list article{grid-template-columns:42px 1fr 24px;padding:20px 0}.vx-services-list article>p{grid-column:2/-1}.vx-project-feature{padding-bottom:240px}.vx-capability-strip{justify-content:flex-start;overflow-x:auto}.vx-contact-inner{flex-direction:column;align-items:flex-start;justify-content:center;padding-top:70px;padding-bottom:70px}}

/* ============================================================
   Voxol public v7 — light creative-tech landing
   ============================================================ */
.public-page-v7{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
main.public-page-v7 + .footer{display:none}

.vx7-header{position:sticky;top:0;z-index:1000;background:rgba(250,252,255,.9);backdrop-filter:blur(16px) saturate(150%);border-bottom:1px solid rgba(19,36,62,.07);transition:.2s ease}
.vx7-header.is-scrolled{box-shadow:0 10px 34px rgba(31,55,88,.1);background:rgba(250,252,255,.97)}
.vx7-header-inner{min-height:80px;display:grid;grid-template-columns:250px 1fr auto;align-items:center;gap:28px}
.vx7-brand img{display:block;width:210px;height:auto}
.vx7-nav{display:flex;justify-content:center;gap:5px}
.vx7-nav a{padding:10px 12px;border-radius:9px;color:#27344d;text-decoration:none;font-size:12px;font-weight:800;transition:.15s ease}
.vx7-nav a:hover{background:#edf4ff;color:#1768db}
.vx7-header-cta{min-height:44px;padding:0 16px;display:inline-flex;align-items:center;gap:9px;border-radius:12px;background:linear-gradient(135deg,#087cff,#3c55ff);color:white;text-decoration:none;font-size:12px;font-weight:900;box-shadow:0 8px 24px rgba(33,94,255,.24)}
.vx7-menu{display:none}

.vx7-site{--ink:#0f1733;--blue:#126ef8;--cyan:#1bc7e9;--violet:#8a3ffc;--paper:#f7fbff;--line:#dfe8f3;color:var(--ink);background:#fff;font-family:inherit}
.vx7-hero{position:relative;overflow:hidden;background:linear-gradient(130deg,#fbfdff 0%,#f2f8ff 62%,#eaf7ff 100%);padding:54px 0 38px}
.vx7-hero-blur{position:absolute;border-radius:50%;filter:blur(60px);opacity:.38;pointer-events:none}.vx7-blur-a{width:300px;height:300px;background:#7c8cff;left:-100px;top:40px}.vx7-blur-b{width:340px;height:340px;background:#8feaff;right:-110px;bottom:10px}
.vx7-hero-grid{position:relative;display:grid;grid-template-columns:1fr 1.02fr;gap:48px;align-items:center;min-height:560px}
.vx7-eyebrow,.vx7-section-label{font-size:9px;font-weight:950;letter-spacing:.19em;color:#246edf}
.vx7-hero-copy h1{margin:13px 0 16px;font-size:clamp(48px,5.6vw,80px);line-height:.97;letter-spacing:-.055em}
.vx7-hero-copy h1 span,.vx7-capabilities-copy h2 span,.vx7-work-heading h2 span,.vx7-why-title h2 span,.vx7-portal-copy h2 span{color:#246df1}
.vx7-hero-copy>p{max-width:600px;margin:0;color:#53627a;font-size:16px;line-height:1.67}
.vx7-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.vx7-btn-primary,.vx7-btn-secondary{min-height:46px;padding:0 18px;border-radius:12px;display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-size:12px;font-weight:900;transition:.17s ease}.vx7-btn-primary{background:linear-gradient(135deg,#0d87ff,#2d5bff);color:#fff;box-shadow:0 10px 24px rgba(32,97,255,.22)}.vx7-btn-secondary{color:#172340;border:1px solid #ccd9e8;background:rgba(255,255,255,.76)}.vx7-btn-primary:hover,.vx7-btn-secondary:hover{transform:translateY(-2px)}
.vx7-proof-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}.vx7-proof-row>div{display:grid;grid-template-columns:30px 1fr;column-gap:8px;align-items:center}.vx7-proof-icon{grid-row:1/span 2;color:#1f76f3;font-size:22px}.vx7-proof-row strong{font-size:10px}.vx7-proof-row small{font-size:9px;color:#75839a}

.vx7-feature-wrap{--mx:0px;--my:0px;position:relative;height:485px;transition:.2s ease}.vx7-laptop{position:absolute;inset:28px 5% 18px 5%;transform:translate(var(--mx),var(--my));transition:transform .12s ease}.vx7-laptop-screen{height:395px;padding:13px;border-radius:24px 24px 15px 15px;background:#101935;box-shadow:0 24px 54px rgba(24,52,91,.23);transform:perspective(900px) rotateY(-5deg) rotateX(2deg)}.vx7-browser-bar{height:30px;border-radius:10px 10px 0 0;background:#dfeaff;display:flex;align-items:center;gap:5px;padding:0 10px;color:#6480a8;font-size:8px}.vx7-browser-bar i{width:7px;height:7px;border-radius:50%;background:#ff6a67}.vx7-browser-bar i:nth-child(2){background:#ffbe3b}.vx7-browser-bar i:nth-child(3){background:#33c97f}.vx7-browser-bar span{margin-left:auto}.vx7-project-placeholder{height:calc(100% - 30px);display:grid;place-items:center;align-content:center;text-align:center;gap:7px;border:1px solid #7ba7ec;background:linear-gradient(145deg,#325fb9,#6488dd 58%,#4a6ab5);color:white;position:relative;overflow:hidden}.vx7-project-placeholder:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(255,255,255,.25),transparent 26%),linear-gradient(135deg,transparent 45%,rgba(255,255,255,.08) 46%,transparent 47%)}.vx7-placeholder-icon{font-size:40px;opacity:.8}.vx7-project-placeholder strong{font-size:21px;position:relative}.vx7-project-placeholder span{font-size:10px;opacity:.8;position:relative}.vx7-laptop-base{height:22px;width:92%;margin:0 auto;border-radius:0 0 50% 50%;background:linear-gradient(#c8d4e3,#8ca1b8);box-shadow:0 12px 18px rgba(30,58,90,.18)}
.vx7-feature-note{position:absolute;right:0;bottom:15px;width:260px;padding:17px 18px;border:1px solid rgba(48,87,145,.2);border-radius:17px;background:rgba(255,255,255,.84);backdrop-filter:blur(12px);box-shadow:0 15px 40px rgba(33,65,110,.15);transform:translate(calc(var(--mx)*-.45),calc(var(--my)*-.45));transition:transform .12s ease}.vx7-feature-note span{display:block;color:#246df1;font-size:8px;font-weight:950;letter-spacing:.14em}.vx7-feature-note strong{display:block;margin:5px 0;font-size:16px}.vx7-feature-note small{display:block;color:#6d7c91;font-size:10px;line-height:1.45}.vx7-feature-decor{position:absolute;border-radius:50%;border:2px solid rgba(119,77,255,.5)}.vx7-feature-decor.one{width:22px;height:22px;right:18px;top:30px}.vx7-feature-decor.two{width:9px;height:9px;right:50px;top:16px;background:#7d48ff}

.vx7-capabilities{background:#fff;padding:42px 0 50px;border-top:1px solid #eef2f8;border-bottom:1px solid #eef2f8}.vx7-capabilities-grid{display:grid;grid-template-columns:280px 1fr;gap:24px;align-items:stretch}.vx7-capabilities-copy h2{font-size:clamp(30px,3.3vw,47px);line-height:1.04;letter-spacing:-.04em;margin:10px 0 0}.vx7-capability-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.vx7-capability-cards article{padding:18px;border:1px solid #dbe8f6;border-radius:17px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 12px 30px rgba(47,77,118,.06);transition:.17s ease}.vx7-capability-cards article:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(47,77,118,.1)}.vx7-cap-icon{width:37px;height:37px;border-radius:10px;display:grid;place-items:center;font-weight:950;margin-bottom:14px}.vx7-cap-icon.blue{background:#dcedff;color:#1380f8}.vx7-cap-icon.violet{background:#f0e4ff;color:#8338ff}.vx7-cap-icon.cyan{background:#dcfbff;color:#03b8dd}.vx7-cap-icon.purple{background:#efe6ff;color:#7c35e9}.vx7-capability-cards h3{margin:0 0 7px;font-size:14px}.vx7-capability-cards p{margin:0;color:#66748a;font-size:11px;line-height:1.5}

.vx7-work{padding:54px 0;background:linear-gradient(180deg,#eef6ff,#f7fbff)}.vx7-work-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:22px}.vx7-work-heading h2{margin:8px 0 0;font-size:clamp(34px,4vw,54px);letter-spacing:-.045em}.vx7-work-heading>p{max-width:520px;margin:0;color:#69788e;font-size:12px;line-height:1.55}.vx7-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.vx7-project-card{padding:12px;border:1px solid #d9e4f1;border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(45,72,105,.08);transition:.17s ease}.vx7-project-card:hover{transform:translateY(-5px)}.vx7-browser-mockup{height:190px;border-radius:12px;overflow:hidden;border:1px solid rgba(45,57,76,.16)}.vx7-browser-mockup.dark{background:linear-gradient(135deg,#101931,#263c6a)}.vx7-browser-mockup.lilac{background:linear-gradient(135deg,#f6e6ff,#c9a8ff)}.vx7-browser-mockup.green{background:linear-gradient(135deg,#dff6dd,#72ba6d)}.vx7-mock-top{height:26px;background:rgba(255,255,255,.82);display:flex;gap:5px;align-items:center;padding:0 9px}.vx7-mock-top i{width:6px;height:6px;border-radius:50%;background:#f56f68}.vx7-mock-top i:nth-child(2){background:#f5b84a}.vx7-mock-top i:nth-child(3){background:#32c57c}.vx7-mock-placeholder{height:calc(100% - 26px);display:grid;place-items:center;align-content:center;text-align:center;color:white}.vx7-browser-mockup.lilac .vx7-mock-placeholder,.vx7-browser-mockup.green .vx7-mock-placeholder{color:#18233a}.vx7-mock-placeholder strong{font-size:15px}.vx7-mock-placeholder span{font-size:9px;opacity:.75;margin-top:4px}.vx7-project-copy{padding:12px 4px 4px}.vx7-project-copy h3{margin:0 0 6px;font-size:17px}.vx7-project-copy p{margin:0;color:#66758a;font-size:11px;line-height:1.5}.vx7-tag{display:inline-flex;margin-top:10px;padding:5px 7px;border-radius:999px;background:#e9f2ff;color:#126ef8;font-size:8px;font-weight:900}.vx7-tag.violet{background:#f1e7ff;color:#7a38e8}.vx7-tag.green-tag{background:#e5f6e5;color:#33853f}

.vx7-why{padding:50px 0;background:#fff}.vx7-why-grid{display:grid;grid-template-columns:330px 1fr;gap:38px;align-items:center}.vx7-why-title h2{margin:8px 0 10px;font-size:clamp(36px,4vw,54px);line-height:1;letter-spacing:-.045em}.vx7-why-title>p{margin:0;color:#65748a;font-size:12px;line-height:1.6}.vx7-why-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.vx7-why-points article{padding-left:20px;border-left:1px solid #dde6ef}.vx7-why-points article>div{color:#1b73ed;font-size:27px;margin-bottom:10px}.vx7-why-points h3{margin:0 0 6px;font-size:14px}.vx7-why-points p{margin:0;color:#748095;font-size:10px;line-height:1.5}

.vx7-portal{padding:55px 0;background:linear-gradient(120deg,#0d244a 0%,#123c76 48%,#7353c8 100%);color:#fff;position:relative;overflow:hidden}.vx7-portal:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(111,228,255,.13);right:-130px;top:-240px}.vx7-portal-grid{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:center}.vx7-section-label.light{color:#7bdfff}.vx7-portal-copy h2{margin:8px 0 10px;font-size:clamp(38px,4.6vw,62px);line-height:.98;letter-spacing:-.05em}.vx7-portal-copy h2 span{color:#7ed9ff}.vx7-portal-copy p{margin:0;color:#c8d6eb;font-size:13px;line-height:1.6}.vx7-portal-btn{display:inline-flex;margin-top:18px;min-height:43px;padding:0 14px;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.28);border-radius:10px;color:#fff;text-decoration:none;font-size:11px;font-weight:900}.vx7-portal-preview{display:grid;grid-template-columns:150px 1fr;min-height:290px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:#f8fbff;color:#17223a;overflow:hidden;box-shadow:0 24px 60px rgba(6,20,43,.24)}.vx7-portal-sidebar{padding:15px;background:#101d39;color:#cbd8ef;display:flex;flex-direction:column;gap:7px}.vx7-portal-sidebar img{width:115px;height:auto;margin-bottom:11px}.vx7-portal-sidebar span{padding:7px 8px;border-radius:6px;font-size:9px}.vx7-portal-sidebar span.active{background:#1479ff;color:white}.vx7-portal-main{padding:20px}.vx7-portal-main h3{margin:0 0 15px}.vx7-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.vx7-stat-grid div{padding:11px;border:1px solid #dfe8f3;border-radius:9px;background:white}.vx7-stat-grid small{display:block;color:#7a8799;font-size:8px}.vx7-stat-grid strong{display:block;font-size:20px;margin-top:2px}.vx7-portal-list{margin-top:12px;border-top:1px solid #e4ebf3}.vx7-portal-list span{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e4ebf3;font-size:9px}.vx7-portal-list small{color:#8a97a8}

.vx7-cta{padding:48px 0;background:linear-gradient(100deg,#f6f9ff,#dff2ff 55%,#e9dcff)}.vx7-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.vx7-cta span{font-size:9px;font-weight:950;letter-spacing:.15em;color:#206fe4}.vx7-cta h2{margin:7px 0 5px;font-size:clamp(34px,4vw,52px);letter-spacing:-.04em}.vx7-cta h2 em{color:#256cef;font-style:normal}.vx7-cta p{margin:0;color:#6f7a8d;font-size:12px}.vx7-cta-btn{min-height:46px;padding:0 17px;display:inline-flex;align-items:center;gap:8px;border-radius:11px;background:linear-gradient(135deg,#0d83ff,#3458ff);color:#fff;text-decoration:none;font-size:11px;font-weight:900;box-shadow:0 10px 25px rgba(40,82,255,.22)}
.vx7-footer{padding:20px 0;background:#fff;border-top:1px solid #e7edf5}.vx7-footer-inner{display:grid;grid-template-columns:200px 1fr auto;align-items:center;gap:30px}.vx7-footer img{width:160px}.vx7-footer nav{display:flex;justify-content:center;gap:18px}.vx7-footer a{color:#35425a;text-decoration:none;font-size:10px;font-weight:800}.vx7-footer-inner>span{font-size:9px;color:#8a95a4}

@media(max-width:1000px){.vx7-header-inner{grid-template-columns:210px 1fr auto}.vx7-brand img{width:180px}.vx7-nav{display:none}.vx7-hero-grid,.vx7-capabilities-grid,.vx7-portal-grid,.vx7-why-grid{grid-template-columns:1fr}.vx7-feature-wrap{height:450px}.vx7-capabilities-grid{gap:28px}.vx7-capability-cards{grid-template-columns:1fr 1fr}.vx7-project-grid{grid-template-columns:1fr}.vx7-browser-mockup{height:240px}.vx7-why-points{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:720px){.vx7-header-inner{grid-template-columns:1fr auto;min-height:68px}.vx7-brand img{width:150px}.vx7-header-cta{display:none}.vx7-menu{display:block;width:38px;height:38px;border:1px solid #d1ddeb;border-radius:9px;background:#fff}.vx7-menu span{display:block;width:16px;height:1px;background:#1c2941;margin:5px auto}.vx7-header.is-open .vx7-nav{display:flex;position:absolute;left:12px;right:12px;top:68px;flex-direction:column;padding:12px;background:#fff;border:1px solid #dce6f2;border-radius:12px;box-shadow:0 16px 36px rgba(38,64,98,.14)}.vx7-hero{padding-top:28px}.vx7-hero-copy h1{font-size:clamp(44px,14vw,64px)}.vx7-proof-row{grid-template-columns:1fr}.vx7-feature-wrap{height:390px}.vx7-laptop-screen{height:320px}.vx7-feature-note{width:220px}.vx7-capability-cards{grid-template-columns:1fr}.vx7-work-heading{flex-direction:column;align-items:flex-start}.vx7-why-points{grid-template-columns:1fr}.vx7-portal-preview{grid-template-columns:100px 1fr}.vx7-portal-sidebar img{width:82px}.vx7-stat-grid{grid-template-columns:1fr}.vx7-cta-inner{flex-direction:column;align-items:flex-start}.vx7-footer-inner{grid-template-columns:1fr;text-align:center}.vx7-footer nav{flex-wrap:wrap}}


/* ============================================================
   Voxol v7.1 — tighter mockup-matched proportions
   ============================================================ */
@media (min-width:1001px){

  /* HEADER — closer to the mockup's slimmer top bar */
  .vx7-header{
    background:rgba(249,252,255,.94);
  }
  .vx7-header-inner{
    min-height:64px;
    grid-template-columns:205px 1fr auto;
    gap:22px;
  }
  .vx7-brand img{
    width:174px;
  }
  .vx7-nav a{
    padding:8px 10px;
    font-size:10px;
  }
  .vx7-header-cta{
    min-height:38px;
    padding:0 14px;
    border-radius:10px;
    font-size:10px;
  }

  /* HERO — reduce scale/height and let the copy breathe horizontally */
  .vx7-hero{
    padding:30px 0 22px;
    background:
      radial-gradient(circle at 7% 62%,rgba(91,111,255,.11),transparent 24%),
      radial-gradient(circle at 90% 46%,rgba(102,218,255,.19),transparent 28%),
      linear-gradient(122deg,#fbfdff 0%,#f8fbff 48%,#eef8ff 100%);
  }
  .vx7-hero-grid{
    grid-template-columns:.92fr 1.08fr;
    gap:38px;
    min-height:455px;
  }
  .vx7-eyebrow,
  .vx7-section-label{
    font-size:7.5px;
    letter-spacing:.18em;
  }
  .vx7-hero-copy h1{
    margin:10px 0 12px;
    font-size:clamp(42px,4.65vw,61px);
    line-height:.965;
    letter-spacing:-.048em;
  }
  .vx7-hero-copy>p{
    max-width:525px;
    font-size:12.5px;
    line-height:1.58;
    color:#52617a;
  }
  .vx7-actions{
    margin-top:17px;
    gap:8px;
  }
  .vx7-btn-primary,
  .vx7-btn-secondary{
    min-height:38px;
    padding:0 13px;
    border-radius:9px;
    font-size:9.5px;
  }
  .vx7-proof-row{
    gap:10px;
    margin-top:18px;
  }
  .vx7-proof-row>div{
    grid-template-columns:22px 1fr;
    column-gap:6px;
  }
  .vx7-proof-icon{
    font-size:16px;
  }
  .vx7-proof-row strong{
    font-size:8px;
  }
  .vx7-proof-row small{
    font-size:7px;
  }

  /* FEATURED SCREEN — same visual weight, much less vertical bulk */
  .vx7-feature-wrap{
    height:365px;
  }
  .vx7-laptop{
    inset:16px 4% 12px 4%;
  }
  .vx7-laptop-screen{
    height:302px;
    padding:10px;
    border-radius:19px 19px 12px 12px;
  }
  .vx7-browser-bar{
    height:24px;
    padding:0 8px;
    font-size:6px;
  }
  .vx7-project-placeholder{
    height:calc(100% - 24px);
  }
  .vx7-placeholder-icon{
    font-size:29px;
  }
  .vx7-project-placeholder strong{
    font-size:15px;
  }
  .vx7-project-placeholder span{
    font-size:7.5px;
  }
  .vx7-laptop-base{
    height:16px;
  }
  .vx7-feature-note{
    right:0;
    bottom:5px;
    width:205px;
    padding:12px 13px;
    border-radius:13px;
  }
  .vx7-feature-note span{
    font-size:6.5px;
  }
  .vx7-feature-note strong{
    margin:3px 0;
    font-size:12px;
  }
  .vx7-feature-note small{
    font-size:7.5px;
  }
  .vx7-feature-decor.one{
    width:16px;
    height:16px;
    top:16px;
  }
  .vx7-feature-decor.two{
    width:7px;
    height:7px;
    top:8px;
  }

  /* CAPABILITIES — shorter band, more like the reference mockup */
  .vx7-capabilities{
    padding:28px 0 32px;
  }
  .vx7-capabilities-grid{
    grid-template-columns:235px 1fr;
    gap:20px;
  }
  .vx7-capabilities-copy h2{
    margin-top:7px;
    font-size:clamp(26px,2.75vw,38px);
    line-height:1.02;
  }
  .vx7-capability-cards{
    gap:8px;
  }
  .vx7-capability-cards article{
    min-height:132px;
    padding:13px;
    border-radius:14px;
    box-shadow:0 8px 20px rgba(47,77,118,.045);
  }
  .vx7-capability-cards article:nth-child(1){
    background:linear-gradient(180deg,#f5fbff,#eef8ff);
  }
  .vx7-capability-cards article:nth-child(2){
    background:linear-gradient(180deg,#fcf8ff,#f7f0ff);
  }
  .vx7-capability-cards article:nth-child(3){
    background:linear-gradient(180deg,#f3fdff,#ecfbff);
  }
  .vx7-capability-cards article:nth-child(4){
    background:linear-gradient(180deg,#fcf9ff,#f6efff);
  }
  .vx7-cap-icon{
    width:29px;
    height:29px;
    margin-bottom:10px;
    border-radius:8px;
    font-size:11px;
  }
  .vx7-capability-cards h3{
    margin-bottom:5px;
    font-size:10px;
  }
  .vx7-capability-cards p{
    font-size:8px;
    line-height:1.42;
  }

  /* SELECTED WORK — keep it prominent without becoming another giant section */
  .vx7-work{
    padding:38px 0 42px;
    background:linear-gradient(180deg,#eef7ff 0%,#f7fbff 100%);
  }
  .vx7-work-heading{
    gap:24px;
    margin-bottom:15px;
  }
  .vx7-work-heading h2{
    margin-top:6px;
    font-size:clamp(28px,3.2vw,43px);
  }
  .vx7-work-heading>p{
    max-width:430px;
    font-size:9px;
    line-height:1.45;
  }
  .vx7-project-grid{
    gap:10px;
  }
  .vx7-project-card{
    padding:9px;
    border-radius:14px;
    box-shadow:0 9px 24px rgba(45,72,105,.065);
  }
  .vx7-browser-mockup{
    height:142px;
    border-radius:9px;
  }
  .vx7-mock-top{
    height:20px;
  }
  .vx7-mock-placeholder{
    height:calc(100% - 20px);
  }
  .vx7-mock-placeholder strong{
    font-size:11px;
  }
  .vx7-mock-placeholder span{
    font-size:6.5px;
  }
  .vx7-project-copy{
    padding:8px 3px 3px;
  }
  .vx7-project-copy h3{
    margin-bottom:4px;
    font-size:13px;
  }
  .vx7-project-copy p{
    font-size:8px;
    line-height:1.42;
  }
  .vx7-tag{
    margin-top:7px;
    padding:4px 6px;
    font-size:6px;
  }

  /* WHY VOXOL — compact like the mockup */
  .vx7-why{
    padding:34px 0;
  }
  .vx7-why-grid{
    grid-template-columns:270px 1fr;
    gap:28px;
  }
  .vx7-why-title h2{
    margin:6px 0 7px;
    font-size:clamp(30px,3.15vw,43px);
  }
  .vx7-why-title>p{
    font-size:9px;
  }
  .vx7-why-points{
    gap:14px;
  }
  .vx7-why-points article{
    padding-left:14px;
  }
  .vx7-why-points article>div{
    margin-bottom:7px;
    font-size:20px;
  }
  .vx7-why-points h3{
    margin-bottom:4px;
    font-size:10px;
  }
  .vx7-why-points p{
    font-size:7.5px;
  }

  /* PORTAL — keep as a teaser, not a second hero */
  .vx7-portal{
    padding:38px 0;
    background:
      radial-gradient(circle at 88% 35%,rgba(72,218,255,.24),transparent 29%),
      linear-gradient(115deg,#102854 0%,#16498c 48%,#7157c7 100%);
  }
  .vx7-portal-grid{
    gap:34px;
  }
  .vx7-portal-copy h2{
    margin:6px 0 8px;
    font-size:clamp(31px,3.6vw,48px);
  }
  .vx7-portal-copy p{
    font-size:9.5px;
  }
  .vx7-portal-btn{
    min-height:36px;
    margin-top:13px;
    font-size:8.5px;
  }
  .vx7-portal-preview{
    min-height:225px;
    grid-template-columns:115px 1fr;
    border-radius:14px;
  }
  .vx7-portal-sidebar{
    padding:11px;
  }
  .vx7-portal-sidebar img{
    width:88px;
  }
  .vx7-portal-sidebar span{
    padding:5px 6px;
    font-size:7px;
  }
  .vx7-portal-main{
    padding:14px;
  }
  .vx7-portal-main h3{
    margin-bottom:10px;
    font-size:14px;
  }
  .vx7-stat-grid div{
    padding:8px;
  }
  .vx7-stat-grid small{
    font-size:6px;
  }
  .vx7-stat-grid strong{
    font-size:15px;
  }
  .vx7-portal-list{
    margin-top:8px;
  }
  .vx7-portal-list span{
    padding:7px 0;
    font-size:7px;
  }

  /* CTA + FOOTER */
  .vx7-cta{
    padding:32px 0;
  }
  .vx7-cta h2{
    margin:5px 0 3px;
    font-size:clamp(28px,3vw,40px);
  }
  .vx7-cta p{
    font-size:9px;
  }
  .vx7-cta-btn{
    min-height:38px;
    font-size:8.5px;
  }
  .vx7-footer{
    padding:14px 0;
  }
  .vx7-footer-inner{
    grid-template-columns:165px 1fr auto;
  }
  .vx7-footer img{
    width:132px;
  }
  .vx7-footer a{
    font-size:8px;
  }
  .vx7-footer-inner>span{
    font-size:7px;
  }
}


/* ============================================================
   Voxol v7.2 — real project screenshots
   ============================================================ */
.vx7-work{
  padding-top:46px;
  padding-bottom:68px;
}

.vx7-project-grid-real{
  align-items:start;
}

.vx7-project-card-real{
  padding:10px;
  overflow:hidden;
}

.vx7-browser-real{
  height:auto!important;
  overflow:hidden;
  background:#fff;
  border-radius:11px;
  border:1px solid rgba(40,57,79,.17);
}

.vx7-browser-real .vx7-mock-top{
  height:22px;
  flex:0 0 22px;
}

.vx7-browser-real .vx7-mock-top span{
  margin-left:auto;
  color:#718096;
  font-size:6.5px;
  font-weight:700;
}

.vx7-browser-real img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  background:#fff;
}

/* Give the real screenshots room to breathe instead of forcing them into thumbnail proportions. */
@media (min-width:1001px){
  .vx7-work{
    padding-top:42px;
    padding-bottom:82px;
  }

  .vx7-project-grid-real{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
  }

  .vx7-project-card-real{
    border-radius:15px;
  }

  .vx7-project-card-real .vx7-project-copy{
    padding:12px 5px 6px;
  }

  .vx7-project-card-real .vx7-project-copy h3{
    font-size:14px;
  }

  .vx7-project-card-real .vx7-project-copy p{
    font-size:8.25px;
    line-height:1.5;
  }
}

@media (max-width:1000px){
  .vx7-project-grid-real{
    grid-template-columns:1fr;
  }

  .vx7-browser-real img{
    width:100%;
  }
}


/* ============================================================
   Voxol v7.3 — unified custom SVG icon system
   ============================================================ */
.vx7-icon-defs{
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
}

.vx7-icon-badge,
.vx7-cap-icon,
.vx7-why-icon{
  display:grid;
  place-items:center;
}

.vx7-icon-badge svg,
.vx7-cap-icon svg,
.vx7-why-icon svg,
.vx7-portal-sidebar svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}

/* Hero micro-icons */
.vx7-proof-icon.vx7-icon-badge{
  width:24px;
  height:24px;
  padding:4px;
  border-radius:8px;
  color:#126ef8;
  background:linear-gradient(180deg,#eff7ff,#e4f0ff);
  border:1px solid #cfe1f5;
  box-shadow:0 5px 12px rgba(32,97,255,.08);
}
.vx7-proof-icon.vx7-icon-badge svg{
  width:14px;
  height:14px;
}

/* Capability cards */
.vx7-cap-icon{
  width:34px;
  height:34px;
  padding:7px;
  border:1px solid rgba(20,80,160,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}
.vx7-cap-icon svg{
  width:20px;
  height:20px;
}
.vx7-cap-icon.blue{color:#0f78ef;background:linear-gradient(180deg,#e8f5ff,#dcecff)}
.vx7-cap-icon.violet{color:#7e3ef0;background:linear-gradient(180deg,#f3e9ff,#eadcff)}
.vx7-cap-icon.cyan{color:#05acd0;background:linear-gradient(180deg,#e4fbff,#d7f6fb)}
.vx7-cap-icon.purple{color:#7739db;background:linear-gradient(180deg,#f3ebff,#e9dcff)}

/* Why Voxol icons */
.vx7-why-icon{
  width:36px;
  height:36px;
  padding:8px;
  border-radius:11px;
  color:#176fe4;
  background:linear-gradient(180deg,#f0f7ff,#e6f1ff);
  border:1px solid #d6e5f7;
  margin-bottom:9px;
}
.vx7-why-icon svg{
  width:20px;
  height:20px;
}

/* Portal sidebar icons */
.vx7-portal-sidebar span{
  display:flex;
  align-items:center;
  gap:7px;
}
.vx7-portal-sidebar span svg{
  width:13px;
  height:13px;
  flex:0 0 13px;
  opacity:.92;
}
.vx7-portal-sidebar span.active svg{
  color:#fff;
}

/* Make icon system feel more refined at desktop scale */
@media (min-width:1001px){
  .vx7-proof-icon.vx7-icon-badge{
    width:20px;
    height:20px;
    padding:4px;
    border-radius:7px;
  }
  .vx7-proof-icon.vx7-icon-badge svg{
    width:12px;
    height:12px;
  }

  .vx7-cap-icon{
    width:30px;
    height:30px;
    padding:6px;
    border-radius:9px;
  }
  .vx7-cap-icon svg{
    width:17px;
    height:17px;
  }

  .vx7-why-icon{
    width:30px;
    height:30px;
    padding:6px;
    border-radius:9px;
  }
  .vx7-why-icon svg{
    width:17px;
    height:17px;
  }

  .vx7-portal-sidebar span svg{
    width:10px;
    height:10px;
    flex-basis:10px;
  }
}


/* ============================================================
   Voxol v7.5 — capability section EXACT mockup match
   ============================================================ */
@media (min-width:1001px){
  .vx7-capabilities{
    padding:34px 0 38px!important;
    background:
      linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
  }

  .vx7-capabilities-grid{
    display:grid!important;
    grid-template-columns:240px minmax(0,1fr)!important;
    gap:18px!important;
    align-items:stretch!important;
  }

  .vx7-capabilities-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:4px 0!important;
  }

  .vx7-capabilities-copy .vx7-section-label{
    font-size:8px!important;
    line-height:1!important;
    letter-spacing:.18em!important;
    font-weight:950!important;
    color:#2472f1!important;
    margin-bottom:9px!important;
  }

  .vx7-capabilities-copy h2{
    margin:0!important;
    font-size:35px!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
    font-weight:850!important;
    color:#111936!important;
  }

  .vx7-capabilities-copy h2 span{
    color:#2d6df2!important;
  }

  .vx7-capability-cards{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
    align-items:stretch!important;
  }

  .vx7-capability-cards article{
    position:relative!important;
    min-height:146px!important;
    padding:13px 13px 36px!important;
    border-radius:14px!important;
    border:1px solid #d7e4f2!important;
    box-shadow:0 8px 22px rgba(39,69,107,.055)!important;
    overflow:hidden!important;
  }

  .vx7-capability-cards article:nth-child(1){
    background:linear-gradient(180deg,#f5fbff 0%,#edf7ff 100%)!important;
  }
  .vx7-capability-cards article:nth-child(2){
    background:linear-gradient(180deg,#fcf8ff 0%,#f7f0ff 100%)!important;
    border-color:#e7daf7!important;
  }
  .vx7-capability-cards article:nth-child(3){
    background:linear-gradient(180deg,#f2fdff 0%,#eafaff 100%)!important;
    border-color:#d6eff4!important;
  }
  .vx7-capability-cards article:nth-child(4){
    background:linear-gradient(180deg,#fdfaff 0%,#f6efff 100%)!important;
    border-color:#e8daf8!important;
  }

  .vx7-cap-icon{
    width:34px!important;
    height:34px!important;
    padding:6px!important;
    margin:0 0 9px!important;
    border-radius:8px!important;
    box-shadow:none!important;
  }

  .vx7-cap-icon svg{
    width:21px!important;
    height:21px!important;
    stroke-width:1.85!important;
  }

  .vx7-capability-cards h3{
    margin:0 0 7px!important;
    font-size:12.5px!important;
    line-height:1.06!important;
    font-weight:850!important;
    letter-spacing:-.018em!important;
    color:#111936!important;
    max-width:125px!important;
  }

  .vx7-capability-cards p{
    margin:0!important;
    max-width:145px!important;
    font-size:9.5px!important;
    line-height:1.38!important;
    font-weight:450!important;
    color:#53627a!important;
  }

  .vx7-cap-arrow{
    position:absolute!important;
    right:10px!important;
    bottom:10px!important;
    width:29px!important;
    height:29px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:50%!important;
    text-decoration:none!important;
    font-size:17px!important;
    line-height:1!important;
    font-weight:600!important;
    background:rgba(255,255,255,.62)!important;
    transition:transform .16s ease,background .16s ease!important;
  }

  .vx7-capability-cards article:nth-child(1) .vx7-cap-arrow{
    color:#2478ff!important;
    border:1.5px solid #3a85ff!important;
  }
  .vx7-capability-cards article:nth-child(2) .vx7-cap-arrow{
    color:#7b42ed!important;
    border:1.5px solid #8d55f2!important;
  }
  .vx7-capability-cards article:nth-child(3) .vx7-cap-arrow{
    color:#0bb9d8!important;
    border:1.5px solid #24c5e1!important;
  }
  .vx7-capability-cards article:nth-child(4) .vx7-cap-arrow{
    color:#8241e8!important;
    border:1.5px solid #9657ed!important;
  }

  .vx7-cap-arrow:hover{
    transform:translateX(2px)!important;
    background:#fff!important;
  }
}

@media (max-width:1000px){
  .vx7-cap-arrow{
    position:absolute;
    right:12px;
    bottom:12px;
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    text-decoration:none;
    background:#fff;
    color:#2478ff;
    border:1px solid currentColor;
  }
  .vx7-capability-cards article{
    position:relative;
    padding-bottom:48px;
  }
}


/* ============================================================
   Voxol v7.6 — selected work exact mockup treatment
   ============================================================ */
.vx7-work-heading{
  display:grid!important;
  grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr)!important;
  gap:42px!important;
  align-items:end!important;
  margin-bottom:18px!important;
}

.vx7-work-heading-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px;
  align-items:center;
}

.vx7-work-heading-actions p{
  margin:0!important;
  max-width:430px!important;
  color:#596981!important;
  font-size:11.5px!important;
  line-height:1.46!important;
}

.vx7-view-all-projects{
  min-height:40px;
  padding:0 16px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  white-space:nowrap;
  border:1.5px solid #397fe9;
  border-radius:999px;
  background:rgba(255,255,255,.66);
  color:#1b68dd;
  text-decoration:none;
  font-size:11px;
  font-weight:850;
  transition:transform .16s ease,background .16s ease,box-shadow .16s ease;
}

.vx7-view-all-projects span{
  font-size:17px;
  line-height:1;
}

.vx7-view-all-projects:hover{
  transform:translateY(-2px);
  background:#fff;
  box-shadow:0 8px 18px rgba(37,104,221,.12);
}

.vx7-project-title-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
}

.vx7-project-title-row h3{
  margin:0!important;
  flex:1;
}

.vx7-project-arrow{
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1.5px solid #3d84ef;
  background:#fff;
  color:#2473e9;
  text-decoration:none;
  font-size:18px;
  font-weight:600;
  line-height:1;
  transition:transform .15s ease,background .15s ease,box-shadow .15s ease;
}

.vx7-project-arrow:hover{
  transform:translateX(2px);
  background:#f3f8ff;
  box-shadow:0 6px 14px rgba(36,115,233,.12);
}

/* Match the larger project typography in the reference mockup */
.vx7-project-card-real .vx7-project-copy h3,
.vx7-project-copy h3{
  font-size:16.5px!important;
  line-height:1.1!important;
  font-weight:850!important;
  letter-spacing:-.018em!important;
}

.vx7-project-card-real .vx7-project-copy p,
.vx7-project-copy p{
  margin-top:6px!important;
  font-size:11.25px!important;
  line-height:1.45!important;
  color:#596981!important;
}

/* Top selected-work title also matches the mockup more closely */
.vx7-work-heading h2{
  font-size:43px!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
}

@media(max-width:1000px){
  .vx7-work-heading{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .vx7-work-heading-actions{
    grid-template-columns:1fr;
    justify-items:start;
  }

  .vx7-work-heading h2{
    font-size:36px!important;
  }

  .vx7-work-heading-actions p{
    font-size:11px!important;
  }
}


/* ============================================================
   Voxol v7.7 — Why Voxol exact mockup match
   ============================================================ */
.vx7-why{
  padding:26px 0 28px!important;
  background:#fff!important;
}

.vx7-why-grid{
  display:grid!important;
  grid-template-columns:210px minmax(0,1fr)!important;
  gap:24px!important;
  align-items:center!important;
}

.vx7-why-title .vx7-section-label{
  display:block!important;
  margin-bottom:7px!important;
  font-size:7.5px!important;
  line-height:1!important;
  letter-spacing:.18em!important;
  font-weight:950!important;
  color:#2672ef!important;
}

.vx7-why-title h2{
  margin:0!important;
  font-size:31px!important;
  line-height:.94!important;
  letter-spacing:-.043em!important;
  font-weight:850!important;
  color:#111936!important;
}

.vx7-why-title h2 span{
  color:#2b6ff3!important;
}

.vx7-why-points{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  align-items:start!important;
}

.vx7-why-points article{
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
  min-height:76px!important;
  padding:0 16px!important;
  border-left:1px solid #dfe7f0!important;
}

.vx7-why-points article:first-child{
  border-left:0!important;
  padding-left:0!important;
}

.vx7-why-points article:last-child{
  padding-right:0!important;
}

.vx7-why-icon{
  width:44px!important;
  height:44px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#2873f0!important;
  box-shadow:none!important;
  display:grid!important;
  place-items:center!important;
}

.vx7-why-icon svg{
  width:40px!important;
  height:40px!important;
  stroke-width:1.9!important;
}

.vx7-why-copy{
  min-width:0!important;
}

.vx7-why-points h3{
  margin:1px 0 5px!important;
  font-size:11.5px!important;
  line-height:1.12!important;
  font-weight:850!important;
  letter-spacing:-.01em!important;
  color:#111936!important;
}

.vx7-why-points p{
  margin:0!important;
  font-size:9.4px!important;
  line-height:1.36!important;
  font-weight:450!important;
  color:#53627a!important;
}

@media(max-width:1000px){
  .vx7-why{
    padding:34px 0!important;
  }

  .vx7-why-grid{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }

  .vx7-why-title h2{
    font-size:38px!important;
  }

  .vx7-why-points{
    grid-template-columns:1fr 1fr!important;
    gap:22px 0!important;
  }

  .vx7-why-points article:nth-child(odd){
    border-left:0!important;
    padding-left:0!important;
  }

  .vx7-why-points article{
    grid-template-columns:50px 1fr!important;
  }

  .vx7-why-icon{
    width:44px!important;
    height:44px!important;
  }

  .vx7-why-icon svg{
    width:40px!important;
    height:40px!important;
  }

  .vx7-why-points h3{
    font-size:13px!important;
  }

  .vx7-why-points p{
    font-size:10.25px!important;
  }
}

@media(max-width:680px){
  .vx7-why-points{
    grid-template-columns:1fr!important;
  }

  .vx7-why-points article{
    border-left:0!important;
    border-top:1px solid #e4eaf1!important;
    padding:15px 0 0!important;
  }

  .vx7-why-points article:first-child{
    border-top:0!important;
    padding-top:0!important;
  }
}


/* ============================================================
   Voxol v7.8 — Client Portal mockup match
   ============================================================ */
.vx7-portal{
  position:relative!important;
  overflow:hidden!important;
  padding:30px 0 28px!important;
  color:#111936!important;
  background:
    radial-gradient(circle at 82% 26%,rgba(124,91,255,.20),transparent 24%),
    radial-gradient(circle at 26% 38%,rgba(84,194,255,.22),transparent 28%),
    linear-gradient(105deg,#eef7ff 0%,#f4f7ff 48%,#e8e5ff 100%)!important;
}

.vx7-portal:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.65),transparent 35%),
    radial-gradient(circle at 95% 25%,rgba(255,255,255,.35),transparent 22%)!important;
  pointer-events:none!important;
}

.vx7-portal-grid{
  position:relative!important;
  display:grid!important;
  grid-template-columns:.72fr 1.28fr!important;
  gap:34px!important;
  align-items:center!important;
  z-index:2!important;
}

.vx7-portal-copy{
  padding-left:0!important;
}

.vx7-portal-copy .vx7-section-label.light{
  display:block!important;
  margin-bottom:7px!important;
  color:#2776ef!important;
  font-size:7.6px!important;
  line-height:1!important;
  letter-spacing:.18em!important;
  font-weight:950!important;
}

.vx7-portal-copy h2{
  margin:0 0 9px!important;
  font-size:36px!important;
  line-height:.93!important;
  letter-spacing:-.045em!important;
  font-weight:850!important;
  color:#111936!important;
}

.vx7-portal-copy h2 span{
  color:#2d6df2!important;
}

.vx7-portal-copy p{
  max-width:365px!important;
  margin:0!important;
  color:#53627a!important;
  font-size:10.5px!important;
  line-height:1.47!important;
}

.vx7-portal-btn{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  min-height:39px!important;
  margin-top:14px!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:9px!important;
  background:linear-gradient(135deg,#1488ff,#3159ff)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-size:9.6px!important;
  font-weight:900!important;
  box-shadow:0 8px 18px rgba(35,92,255,.20)!important;
}

.vx7-portal-btn span{
  font-size:14px!important;
  line-height:1!important;
}

.vx7-portal-preview{
  display:grid!important;
  grid-template-columns:125px minmax(0,1fr)!important;
  min-height:255px!important;
  border:1px solid rgba(36,69,115,.16)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#111936!important;
  overflow:hidden!important;
  box-shadow:0 18px 45px rgba(42,70,109,.16)!important;
}

.vx7-portal-sidebar{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  padding:13px 10px!important;
  background:#111d3d!important;
  color:#d8e2f4!important;
}

.vx7-portal-sidebar img{
  width:90px!important;
  height:auto!important;
  margin:0 auto 5px!important;
  filter:none!important;
}

.vx7-portal-nav{
  display:grid!important;
  gap:4px!important;
}

.vx7-portal-sidebar span{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:26px!important;
  padding:0 8px!important;
  border-radius:7px!important;
  color:#c9d5e9!important;
  font-size:7.2px!important;
  font-weight:700!important;
}

.vx7-portal-sidebar span.active{
  background:linear-gradient(135deg,#0c7cff,#2f61ff)!important;
  color:#fff!important;
}

.vx7-portal-sidebar span svg{
  width:10px!important;
  height:10px!important;
  flex:0 0 10px!important;
  stroke-width:1.8!important;
}

.vx7-portal-main{
  padding:16px!important;
  background:#fbfdff!important;
}

.vx7-portal-main-head{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  margin-bottom:11px!important;
}

.vx7-portal-main-head h3{
  margin:0!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:850!important;
  color:#111936!important;
}

.vx7-portal-main-head button{
  border:0!important;
  background:transparent!important;
  color:#9aa9bb!important;
  font-size:18px!important;
  line-height:1!important;
  cursor:default!important;
}

.vx7-stat-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
}

.vx7-stat-grid>div{
  position:relative!important;
  min-height:56px!important;
  padding:9px 36px 8px 10px!important;
  border:1px solid #dfe8f3!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 3px 8px rgba(38,61,92,.03)!important;
}

.vx7-stat-grid small{
  display:block!important;
  color:#7b8797!important;
  font-size:6.6px!important;
  line-height:1.2!important;
  margin-bottom:2px!important;
}

.vx7-stat-grid strong{
  display:block!important;
  margin:0!important;
  color:#111936!important;
  font-size:17px!important;
  line-height:1!important;
  font-weight:850!important;
}

.vx7-stat-grid svg{
  position:absolute!important;
  right:10px!important;
  top:50%!important;
  width:20px!important;
  height:20px!important;
  transform:translateY(-50%)!important;
  fill:none!important;
  stroke:#1978f7!important;
  stroke-width:1.7!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.vx7-activity{
  margin-top:12px!important;
}

.vx7-activity h4{
  margin:0 0 5px!important;
  color:#111936!important;
  font-size:9.5px!important;
  font-weight:850!important;
}

.vx7-activity-row{
  display:grid!important;
  grid-template-columns:8px 1fr auto!important;
  gap:6px!important;
  align-items:center!important;
  min-height:28px!important;
  border-top:1px solid #edf1f6!important;
  color:#47566d!important;
  font-size:7.7px!important;
}

.vx7-activity-row small{
  color:#8c98a8!important;
  font-size:6.6px!important;
}

.vx7-activity-dot{
  width:6px!important;
  height:6px!important;
  border-radius:50%!important;
}
.vx7-activity-dot.green{background:#25c57a!important}
.vx7-activity-dot.blue{background:#1e8bff!important}
.vx7-activity-dot.purple{background:#a044ff!important}

.vx7-portal-decor{
  position:absolute!important;
  width:6px!important;
  height:23px!important;
  right:-3px!important;
  border-radius:99px!important;
  transform:rotate(28deg)!important;
}
.vx7-portal-decor.one{
  top:18%!important;
  background:#195cff!important;
}
.vx7-portal-decor.two{
  top:28%!important;
  right:-13px!important;
  background:#9a40ff!important;
}

@media(max-width:1000px){
  .vx7-portal{
    padding:38px 0!important;
  }

  .vx7-portal-grid{
    grid-template-columns:1fr!important;
  }

  .vx7-portal-copy h2{
    font-size:42px!important;
  }

  .vx7-portal-copy p{
    max-width:520px!important;
    font-size:11px!important;
  }

  .vx7-portal-preview{
    grid-template-columns:110px 1fr!important;
  }
}

@media(max-width:680px){
  .vx7-portal-preview{
    grid-template-columns:1fr!important;
  }

  .vx7-portal-sidebar{
    display:none!important;
  }

  .vx7-stat-grid{
    grid-template-columns:1fr!important;
  }
}


/* ============================================================
   Voxol v7.9 — portal proportion/pixel match
   ============================================================ */
@media (min-width:1001px){

  .vx7-portal{
    padding:16px 0 14px!important;
    min-height:0!important;
    background:
      radial-gradient(circle at 87% 36%,rgba(83,201,255,.30),transparent 21%),
      radial-gradient(circle at 72% 48%,rgba(137,91,255,.20),transparent 28%),
      linear-gradient(105deg,#eef8ff 0%,#eef5ff 42%,#e7e4ff 100%)!important;
  }

  .vx7-portal-grid{
    grid-template-columns:31% 69%!important;
    gap:18px!important;
    align-items:center!important;
    min-height:230px!important;
  }

  .vx7-portal-copy{
    padding:0 0 0 2px!important;
  }

  .vx7-portal-copy .vx7-section-label.light{
    margin-bottom:6px!important;
    font-size:8.2px!important;
    letter-spacing:.19em!important;
  }

  .vx7-portal-copy h2{
    margin:0 0 7px!important;
    font-size:38px!important;
    line-height:.91!important;
    letter-spacing:-.052em!important;
  }

  .vx7-portal-copy p{
    max-width:340px!important;
    font-size:10.2px!important;
    line-height:1.42!important;
  }

  .vx7-portal-btn{
    min-height:39px!important;
    margin-top:12px!important;
    padding:0 15px!important;
    border-radius:9px!important;
    font-size:9.7px!important;
    box-shadow:0 7px 16px rgba(35,92,255,.16)!important;
  }

  .vx7-portal-preview{
    grid-template-columns:118px minmax(0,1fr)!important;
    width:100%!important;
    min-height:205px!important;
    max-height:205px!important;
    border-radius:12px!important;
    box-shadow:0 14px 30px rgba(39,64,104,.14)!important;
  }

  .vx7-portal-sidebar{
    padding:10px 9px!important;
    gap:6px!important;
  }

  .vx7-portal-sidebar img{
    width:82px!important;
    margin-bottom:3px!important;
  }

  .vx7-portal-nav{
    gap:2px!important;
  }

  .vx7-portal-sidebar span{
    min-height:23px!important;
    padding:0 7px!important;
    border-radius:6px!important;
    font-size:6.7px!important;
  }

  .vx7-portal-sidebar span svg{
    width:9px!important;
    height:9px!important;
    flex-basis:9px!important;
  }

  .vx7-portal-main{
    padding:11px 12px!important;
  }

  .vx7-portal-main-head{
    margin-bottom:8px!important;
  }

  .vx7-portal-main-head h3{
    font-size:13.5px!important;
  }

  .vx7-portal-main-head button{
    font-size:15px!important;
  }

  .vx7-stat-grid{
    gap:7px!important;
  }

  .vx7-stat-grid>div{
    min-height:44px!important;
    padding:7px 30px 6px 8px!important;
    border-radius:7px!important;
  }

  .vx7-stat-grid small{
    font-size:5.8px!important;
    margin-bottom:1px!important;
  }

  .vx7-stat-grid strong{
    font-size:15px!important;
  }

  .vx7-stat-grid svg{
    right:8px!important;
    width:17px!important;
    height:17px!important;
  }

  .vx7-activity{
    margin-top:8px!important;
  }

  .vx7-activity h4{
    margin-bottom:3px!important;
    font-size:8.5px!important;
  }

  .vx7-activity-row{
    min-height:22px!important;
    grid-template-columns:7px 1fr auto!important;
    gap:5px!important;
    font-size:6.8px!important;
  }

  .vx7-activity-row small{
    font-size:5.8px!important;
  }

  .vx7-activity-dot{
    width:5px!important;
    height:5px!important;
  }

  .vx7-portal-decor.one{
    top:29%!important;
    right:-6px!important;
    height:19px!important;
  }

  .vx7-portal-decor.two{
    top:40%!important;
    right:-15px!important;
    height:19px!important;
  }
}


/* ============================================================
   Voxol v7.10 — client portal section uses supplied pastel bg art
   ============================================================ */
.vx7-portal{
  padding:8px 0 !important;
  background:#ffffff !important;
  position:relative;
}
.vx7-portal::before{
  display:none !important;
}
.vx7-portal-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.18fr);
  gap:30px;
  align-items:center;
  min-height:320px;
  padding:30px 64px;
  background:
    url("../img/publicsite/ethereal-pastel-glassmorphism-banner.ef9b22c861b8.png") center center / cover no-repeat;
  border-radius:0;
  overflow:hidden;
}
.vx7-portal-copy{
  position:relative;
  z-index:2;
  max-width:470px;
}
.vx7-portal-copy .vx7-section-label.light{
  display:block;
  margin:0 0 10px;
  color:#2d6ff4 !important;
  font-size:11px;
  font-weight:900;
  letter-spacing:.24em;
  line-height:1;
}
.vx7-portal-copy h2{
  margin:0 0 14px;
  color:#141c38;
  font-size:clamp(44px,4.5vw,62px);
  line-height:.92;
  letter-spacing:-.055em;
  font-weight:900;
}
.vx7-portal-copy h2 span{
  color:#2f6df3 !important;
}
.vx7-portal-copy p{
  margin:0;
  max-width:430px;
  color:#53627e;
  font-size:13px;
  line-height:1.5;
}
.vx7-portal-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:40px;
  margin-top:16px;
  padding:0 18px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#2b86ff 0%,#3d56ff 100%);
  box-shadow:0 12px 24px rgba(38,112,255,.23);
  color:#fff;
  text-decoration:none;
  font-size:12px;
  font-weight:800;
}
.vx7-portal-btn span{
  font-size:18px;
  line-height:1;
}
.vx7-portal-preview{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:126px 1fr;
  min-height:250px;
  background:#ffffff;
  color:#17233b;
  border:1px solid #d7e1ef;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 18px 40px rgba(65,97,160,.10);
}
.vx7-portal-sidebar{
  padding:16px 14px 12px;
  background:linear-gradient(180deg,#08152f 0%,#0b1730 100%);
  color:#dbe7ff;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.vx7-portal-sidebar img{
  width:96px;
  height:auto;
  margin:0 auto 10px;
}
.vx7-portal-nav{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.vx7-portal-sidebar span{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:10px;
  color:#f6f9ff;
  font-size:11px;
  font-weight:700;
}
.vx7-portal-sidebar span svg{
  width:13px;
  height:13px;
  flex:0 0 13px;
  stroke-width:1.9;
}
.vx7-portal-sidebar span.active{
  color:#fff;
  background:linear-gradient(135deg,#2f83ff 0%,#3b61ff 100%);
  box-shadow:0 10px 18px rgba(38,110,255,.25);
}
.vx7-portal-main{
  padding:18px 20px 18px 18px;
  background:#ffffff;
}
.vx7-portal-main-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
}
.vx7-portal-main-head h3{
  margin:0;
  color:#151d36;
  font-size:18px;
  font-weight:850;
  letter-spacing:-.03em;
}
.vx7-portal-main-head button{
  border:0;
  background:transparent;
  color:#a5b3cb;
  font-size:16px;
  line-height:1;
  cursor:default;
}
.vx7-stat-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.vx7-stat-grid div{
  position:relative;
  min-height:74px;
  padding:12px 50px 12px 14px;
  border:1px solid #dee6f2;
  border-radius:11px;
  background:#fff;
  box-shadow:0 1px 0 rgba(12,24,46,.02);
}
.vx7-stat-grid small{
  display:block;
  margin-bottom:5px;
  color:#7b879b;
  font-size:9px;
  line-height:1.2;
}
.vx7-stat-grid strong{
  display:block;
  color:#0f1834;
  font-size:20px;
  line-height:1;
  font-weight:850;
}
.vx7-stat-grid svg{
  position:absolute;
  right:13px;
  top:50%;
  width:24px;
  height:24px;
  transform:translateY(-50%);
  color:#2d73f6;
  stroke-width:1.8;
}
.vx7-stat-grid div:nth-child(3) svg{
  color:#b048f6;
}
.vx7-activity{
  margin-top:2px;
}
.vx7-activity h4{
  margin:0 0 6px;
  color:#151d36;
  font-size:16px;
  font-weight:850;
  letter-spacing:-.02em;
}
.vx7-activity-row{
  display:grid;
  grid-template-columns:12px 1fr auto;
  align-items:center;
  gap:10px;
  min-height:39px;
  border-top:1px solid #e7ecf3;
}
.vx7-activity-row span:not(.vx7-activity-dot){
  color:#24314d;
  font-size:11px;
  font-weight:500;
}
.vx7-activity-row small{
  color:#7f8ba0;
  font-size:10px;
}
.vx7-activity-dot{
  width:8px;
  height:8px;
  border-radius:50%;
}
.vx7-activity-dot.green{background:#24ca84;}
.vx7-activity-dot.blue{background:#2096ff;}
.vx7-activity-dot.purple{background:#ac56ff;}
.vx7-portal-decor{
  display:none !important;
}

@media (max-width:1000px){
  .vx7-portal{
    padding:10px 0 !important;
  }
  .vx7-portal-grid{
    grid-template-columns:1fr;
    gap:18px;
    min-height:auto;
    padding:28px 22px;
    border-radius:20px;
  }
  .vx7-portal-copy{
    max-width:none;
  }
  .vx7-portal-copy h2{
    font-size:clamp(34px,8vw,52px);
  }
  .vx7-portal-preview{
    grid-template-columns:110px 1fr;
    min-height:unset;
  }
}

@media (max-width:720px){
  .vx7-portal-grid{
    padding:24px 16px;
  }
  .vx7-portal-copy .vx7-section-label.light{
    font-size:10px;
    letter-spacing:.18em;
  }
  .vx7-portal-copy p{
    font-size:14px;
  }
  .vx7-portal-preview{
    grid-template-columns:1fr;
  }
  .vx7-portal-sidebar{
    gap:10px;
  }
  .vx7-portal-sidebar img{
    width:108px;
    margin:0 0 4px;
  }
  .vx7-portal-nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  .vx7-stat-grid{
    grid-template-columns:1fr;
  }
  .vx7-activity-row{
    grid-template-columns:12px 1fr;
  }
  .vx7-activity-row small{
    grid-column:2;
    margin-top:-6px;
    padding-bottom:10px;
  }
}


/* ============================================================
   Voxol v7.11 — premium closing footer
   ============================================================ */
.vx7-footer{
  padding:0!important;
  background:#09111f!important;
  border-top:0!important;
  color:#fff!important;
}
.vx7-footer-shell{
  padding-top:44px;
  padding-bottom:18px;
}
.vx7-footer-main{
  display:grid;
  grid-template-columns:minmax(300px,1.45fr) repeat(2,minmax(120px,.55fr)) minmax(250px,1fr);
  gap:42px;
  align-items:start;
  padding-bottom:38px;
  border-bottom:1px solid rgba(255,255,255,.11);
}
.vx7-footer-brand-block{
  max-width:390px;
}
.vx7-footer-logo-link{
  display:inline-flex;
  align-items:center;
}
.vx7-footer-logo-link img{
  width:185px!important;
  height:auto;
  filter:brightness(0) invert(1);
  opacity:.96;
}
.vx7-footer-brand-block p,
.vx7-footer-contact p{
  margin:15px 0 0;
  color:#9eacc1;
  font-size:12px;
  line-height:1.6;
}
.vx7-footer-project-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:18px;
  color:#8ed7ff!important;
  text-decoration:none;
  font-size:11px!important;
  font-weight:850!important;
}
.vx7-footer-project-link span{
  font-size:15px;
  transition:transform .15s ease;
}
.vx7-footer-project-link:hover span{
  transform:translate(2px,-2px);
}
.vx7-footer-column{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
}
.vx7-footer-label{
  display:block;
  margin-bottom:3px;
  color:#6fd1ff;
  font-size:8px;
  line-height:1;
  font-weight:950;
  letter-spacing:.18em;
}
.vx7-footer-column a{
  color:#d8e1ee!important;
  text-decoration:none;
  font-size:11px!important;
  line-height:1.35;
  font-weight:700!important;
  transition:color .15s ease,transform .15s ease;
}
.vx7-footer-column a:hover{
  color:#fff!important;
  transform:translateX(2px);
}
.vx7-footer-contact{
  padding-left:24px;
  border-left:1px solid rgba(255,255,255,.1);
}
.vx7-footer-contact p{
  margin-top:4px;
}
.vx7-footer-pills{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:15px;
}
.vx7-footer-pills span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border:1px solid rgba(113,209,255,.2);
  border-radius:999px;
  background:rgba(79,156,255,.07);
  color:#a8dfff;
  font-size:7px;
  font-weight:900;
  letter-spacing:.06em;
}
.vx7-footer-bottom{
  min-height:54px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:22px;
  align-items:center;
  color:#78889d;
  font-size:8px;
}
.vx7-footer-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:#9eadbf;
}
.vx7-footer-status i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#57d98b;
  box-shadow:0 0 12px rgba(87,217,139,.45);
}
.vx7-footer-legal{
  display:flex;
  justify-content:flex-end;
}
.vx7-footer-legal a{
  color:#9eadbf!important;
  text-decoration:none;
  font-size:8px!important;
  font-weight:750!important;
}
.vx7-footer-legal a:hover{
  color:#fff!important;
}

@media(max-width:1000px){
  .vx7-footer-main{
    grid-template-columns:1.3fr .7fr .7fr;
  }
  .vx7-footer-contact{
    grid-column:1/-1;
    padding:22px 0 0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.1);
  }
}
@media(max-width:720px){
  .vx7-footer-shell{
    padding-top:34px;
  }
  .vx7-footer-main{
    grid-template-columns:1fr 1fr;
    gap:28px 20px;
    text-align:left!important;
  }
  .vx7-footer-brand-block,
  .vx7-footer-contact{
    grid-column:1/-1;
  }
  .vx7-footer-logo-link img{
    width:165px!important;
  }
  .vx7-footer-contact{
    padding-top:20px;
  }
  .vx7-footer-bottom{
    grid-template-columns:1fr;
    gap:8px;
    padding-top:16px;
    padding-bottom:4px;
    text-align:left;
  }
  .vx7-footer-status{
    justify-content:flex-start;
  }
  .vx7-footer-legal{
    justify-content:flex-start;
  }
}


/* ============================================================
   Voxol v7.12 — complete mobile polish pass
   ============================================================ */

/* Real three-line hamburger */
.vx7-menu{
  position:relative;
  padding:0;
}
.vx7-menu span{
  transition:transform .18s ease,opacity .18s ease;
  transform-origin:center;
}
.vx7-header.is-open .vx7-menu span:nth-child(1){
  transform:translateY(6px) rotate(45deg);
}
.vx7-header.is-open .vx7-menu span:nth-child(2){
  opacity:0;
}
.vx7-header.is-open .vx7-menu span:nth-child(3){
  transform:translateY(-6px) rotate(-45deg);
}

@media(max-width:720px){

  /* ----------------------------------------------------------
     Global mobile rhythm
     ---------------------------------------------------------- */
  .shell{
    width:min(100% - 34px,1240px)!important;
  }

  .vx7-site{
    overflow:hidden;
  }

  /* ----------------------------------------------------------
     Header / mobile menu
     ---------------------------------------------------------- */
  .vx7-header{
    position:sticky;
    top:0;
    z-index:1000;
    background:rgba(248,251,255,.96)!important;
    backdrop-filter:blur(16px) saturate(150%);
  }

  .vx7-header-inner{
    position:relative;
    min-height:68px!important;
    grid-template-columns:1fr auto!important;
    gap:14px!important;
  }

  .vx7-brand img{
    width:145px!important;
  }

  .vx7-header-cta{
    display:none!important;
  }

  .vx7-menu{
    display:grid!important;
    place-content:center;
    width:40px!important;
    height:40px!important;
    border:1px solid #cdd9e8!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:0 4px 14px rgba(34,61,94,.05);
  }

  .vx7-menu span{
    display:block!important;
    width:18px!important;
    height:1.5px!important;
    margin:2.5px auto!important;
    border-radius:999px;
    background:#17233c!important;
  }

  .vx7-header.is-open .vx7-nav{
    display:flex!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:58px!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:2px!important;
    padding:10px!important;
    border:1px solid #dce6f2!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.98)!important;
    box-shadow:0 18px 42px rgba(38,64,98,.14)!important;
  }

  .vx7-header.is-open .vx7-nav a{
    padding:11px 12px!important;
    border-radius:9px;
    color:#15213a!important;
    font-size:13px!important;
    font-weight:800!important;
  }

  .vx7-header.is-open .vx7-nav a:hover{
    background:#f0f5fb;
  }

  /* ----------------------------------------------------------
     Hero
     ---------------------------------------------------------- */
  .vx7-hero{
    padding:30px 0 34px!important;
  }

  .vx7-hero-grid{
    min-height:0!important;
    grid-template-columns:1fr!important;
    gap:34px!important;
  }

  .vx7-eyebrow{
    font-size:8px!important;
    letter-spacing:.18em!important;
  }

  .vx7-hero-copy h1{
    margin:12px 0 16px!important;
    font-size:clamp(47px,13.5vw,64px)!important;
    line-height:.96!important;
    letter-spacing:-.055em!important;
  }

  .vx7-hero-copy>p{
    max-width:none!important;
    font-size:15px!important;
    line-height:1.62!important;
  }

  .vx7-actions{
    display:grid!important;
    grid-template-columns:max-content max-content!important;
    gap:9px!important;
    margin-top:20px!important;
  }

  .vx7-btn-primary,
  .vx7-btn-secondary{
    min-height:45px!important;
    padding:0 16px!important;
    border-radius:10px!important;
    font-size:11px!important;
  }

  .vx7-proof-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-top:24px!important;
  }

  .vx7-proof-row>div{
    grid-template-columns:28px 1fr!important;
    column-gap:9px!important;
    padding:0!important;
  }

  .vx7-proof-icon.vx7-icon-badge{
    width:25px!important;
    height:25px!important;
  }

  .vx7-proof-row strong{
    font-size:10px!important;
  }

  .vx7-proof-row small{
    font-size:8px!important;
  }

  .vx7-feature-wrap{
    height:355px!important;
    margin-top:2px!important;
  }

  .vx7-laptop{
    inset:0 1% 8px!important;
  }

  .vx7-laptop-screen{
    height:290px!important;
    border-radius:18px 18px 10px 10px!important;
  }

  .vx7-feature-note{
    right:0!important;
    bottom:0!important;
    width:205px!important;
    padding:12px!important;
    border-radius:14px!important;
  }

  .vx7-feature-note strong{
    font-size:12px!important;
  }

  /* ----------------------------------------------------------
     Capabilities
     ---------------------------------------------------------- */
  .vx7-capabilities{
    padding:40px 0 44px!important;
  }

  .vx7-capabilities-grid{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }

  .vx7-capabilities-copy h2{
    max-width:520px;
    font-size:34px!important;
    line-height:1.02!important;
  }

  .vx7-capability-cards{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .vx7-capability-cards article{
    min-height:154px!important;
    padding:18px 18px 48px!important;
    border-radius:16px!important;
  }

  .vx7-cap-icon{
    width:34px!important;
    height:34px!important;
  }

  .vx7-capability-cards h3{
    max-width:none!important;
    font-size:14px!important;
    line-height:1.14!important;
  }

  .vx7-capability-cards p{
    max-width:90%!important;
    font-size:10.5px!important;
    line-height:1.48!important;
  }

  .vx7-cap-arrow{
    right:12px!important;
    bottom:12px!important;
    width:30px!important;
    height:30px!important;
  }

  /* ----------------------------------------------------------
     Selected work
     ---------------------------------------------------------- */
  .vx7-work{
    padding:42px 0 48px!important;
  }

  .vx7-work-heading{
    grid-template-columns:1fr!important;
    gap:14px!important;
    margin-bottom:18px!important;
  }

  .vx7-work-heading h2{
    font-size:35px!important;
  }

  .vx7-work-heading-actions{
    grid-template-columns:1fr!important;
    justify-items:start!important;
    gap:12px!important;
  }

  .vx7-work-heading-actions p{
    max-width:none!important;
    font-size:10.5px!important;
  }

  .vx7-view-all-projects{
    min-height:38px!important;
    padding:0 14px!important;
    font-size:10px!important;
  }

  .vx7-project-grid-real,
  .vx7-project-grid{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  .vx7-project-card-real,
  .vx7-project-card{
    padding:10px!important;
    border-radius:16px!important;
  }

  .vx7-browser-real{
    width:100%!important;
    height:auto!important;
  }

  .vx7-browser-real img{
    width:100%!important;
    height:auto!important;
  }

  .vx7-project-title-row{
    align-items:center!important;
  }

  .vx7-project-card-real .vx7-project-copy h3,
  .vx7-project-copy h3{
    font-size:17px!important;
  }

  .vx7-project-card-real .vx7-project-copy p,
  .vx7-project-copy p{
    font-size:10.5px!important;
  }

  /* ----------------------------------------------------------
     Why Voxol
     ---------------------------------------------------------- */
  .vx7-why{
    padding:42px 0 44px!important;
  }

  .vx7-why-grid{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .vx7-why-title h2{
    font-size:38px!important;
    line-height:.98!important;
  }

  .vx7-why-points{
    grid-template-columns:1fr!important;
    gap:0!important;
  }

  .vx7-why-points article{
    grid-template-columns:48px 1fr!important;
    gap:12px!important;
    min-height:auto!important;
    padding:18px 0!important;
    border-left:0!important;
    border-top:1px solid #e1e8f0!important;
  }

  .vx7-why-points article:first-child{
    border-top:0!important;
    padding-top:0!important;
  }

  .vx7-why-icon{
    width:42px!important;
    height:42px!important;
  }

  .vx7-why-icon svg{
    width:37px!important;
    height:37px!important;
  }

  .vx7-why-points h3{
    font-size:14px!important;
    margin-bottom:5px!important;
  }

  .vx7-why-points p{
    font-size:10.5px!important;
    line-height:1.5!important;
  }

  /* ----------------------------------------------------------
     Client portal
     ---------------------------------------------------------- */
  .vx7-portal{
    padding:0!important;
    background:#fff!important;
  }

  .vx7-portal-grid{
    width:calc(100% - 28px)!important;
    margin:0 auto!important;
    padding:24px 16px 16px!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
    min-height:0!important;
    border-radius:22px!important;
    background:
      url("../img/publicsite/ethereal-pastel-glassmorphism-banner.ef9b22c861b8.png") center center / cover no-repeat!important;
  }

  .vx7-portal-copy{
    max-width:none!important;
  }

  .vx7-portal-copy .vx7-section-label.light{
    margin-bottom:8px!important;
    font-size:8px!important;
  }

  .vx7-portal-copy h2{
    margin-bottom:10px!important;
    font-size:39px!important;
    line-height:.92!important;
  }

  .vx7-portal-copy p{
    max-width:none!important;
    font-size:10.5px!important;
    line-height:1.48!important;
  }

  .vx7-portal-btn{
    min-height:41px!important;
    margin-top:14px!important;
    padding:0 15px!important;
    font-size:10px!important;
  }

  .vx7-portal-preview{
    grid-template-columns:1fr!important;
    min-height:0!important;
    border-radius:14px!important;
  }

  .vx7-portal-sidebar{
    display:none!important;
  }

  .vx7-portal-main{
    padding:15px!important;
  }

  .vx7-portal-main-head h3{
    font-size:16px!important;
  }

  .vx7-stat-grid{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  .vx7-stat-grid>div{
    min-height:64px!important;
    padding:10px 42px 10px 12px!important;
  }

  .vx7-stat-grid small{
    font-size:8px!important;
  }

  .vx7-stat-grid strong{
    font-size:18px!important;
  }

  .vx7-activity h4{
    margin-top:13px!important;
    font-size:14px!important;
  }

  .vx7-activity-row{
    grid-template-columns:10px 1fr auto!important;
    min-height:34px!important;
    gap:7px!important;
  }

  .vx7-activity-row span:not(.vx7-activity-dot){
    font-size:9px!important;
  }

  .vx7-activity-row small{
    grid-column:auto!important;
    margin:0!important;
    padding:0!important;
    font-size:7.5px!important;
  }

  /* ----------------------------------------------------------
     CTA
     ---------------------------------------------------------- */
  .vx7-cta{
    padding:42px 0!important;
  }

  .vx7-cta-inner{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:22px!important;
  }

  .vx7-cta h2{
    margin-top:8px!important;
    font-size:38px!important;
    line-height:.98!important;
  }

  .vx7-cta p{
    font-size:11px!important;
    line-height:1.5!important;
  }

  .vx7-cta-btn{
    min-height:44px!important;
    padding:0 16px!important;
    font-size:10px!important;
  }

  /* ----------------------------------------------------------
     Footer
     ---------------------------------------------------------- */
  .vx7-footer-shell{
    padding-top:30px!important;
    padding-bottom:14px!important;
  }

  .vx7-footer-main{
    grid-template-columns:1fr 1fr!important;
    gap:26px 20px!important;
  }

  .vx7-footer-brand-block,
  .vx7-footer-contact{
    grid-column:1/-1!important;
  }

  .vx7-footer-logo-link img{
    width:160px!important;
  }

  .vx7-footer-brand-block p,
  .vx7-footer-contact p{
    font-size:11px!important;
  }

  .vx7-footer-column a{
    font-size:11px!important;
  }

  .vx7-footer-contact{
    padding-top:18px!important;
  }

  .vx7-footer-bottom{
    grid-template-columns:1fr!important;
    gap:8px!important;
    min-height:0!important;
    padding-top:15px!important;
  }

  .vx7-footer-status,
  .vx7-footer-legal{
    justify-content:flex-start!important;
  }
}

@media(max-width:430px){
  .shell{
    width:calc(100% - 28px)!important;
  }

  .vx7-hero-copy h1{
    font-size:45px!important;
  }

  .vx7-actions{
    grid-template-columns:1fr 1fr!important;
  }

  .vx7-btn-primary,
  .vx7-btn-secondary{
    width:100%!important;
    padding:0 10px!important;
    white-space:nowrap;
  }

  .vx7-capabilities-copy h2,
  .vx7-work-heading h2{
    font-size:31px!important;
  }

  .vx7-why-title h2,
  .vx7-cta h2{
    font-size:34px!important;
  }

  .vx7-portal-copy h2{
    font-size:36px!important;
  }

  .vx7-feature-wrap{
    height:325px!important;
  }

  .vx7-laptop-screen{
    height:266px!important;
  }

  .vx7-feature-note{
    width:185px!important;
  }

  .vx7-activity-row{
    grid-template-columns:9px 1fr!important;
  }

  .vx7-activity-row small{
    grid-column:2!important;
    margin-top:-4px!important;
    padding-bottom:6px!important;
  }
}


/* ============================================================
   Voxol v7.13 — full-width photographic hero background
   ============================================================ */
.vx7-hero{
  position:relative!important;
  min-height:500px!important;
  padding:0!important;
  overflow:hidden!important;
  background:
    url("../img/publicsite/voxol-hero-workspace.d7cd662436a8.png") center center / cover no-repeat!important;
}

.vx7-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    linear-gradient(
      90deg,
      rgba(246,250,255,.97) 0%,
      rgba(246,250,255,.95) 22%,
      rgba(246,250,255,.84) 36%,
      rgba(246,250,255,.36) 52%,
      rgba(246,250,255,.05) 68%,
      rgba(246,250,255,0) 100%
    );
  pointer-events:none;
}

.vx7-hero-blur{
  display:none!important;
}

.vx7-hero-grid{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:minmax(0, .88fr) minmax(0, 1.12fr)!important;
  gap:32px!important;
  align-items:center!important;
  min-height:500px!important;
  padding-top:40px!important;
  padding-bottom:40px!important;
}

.vx7-hero-copy{
  max-width:575px!important;
}

.vx7-hero-copy h1{
  margin:10px 0 14px!important;
  font-size:clamp(46px,4.9vw,68px)!important;
  line-height:.93!important;
  letter-spacing:-.052em!important;
}

.vx7-hero-copy>p{
  max-width:520px!important;
  color:#52627e!important;
  font-size:13.5px!important;
  line-height:1.5!important;
}

.vx7-eyebrow{
  color:#536d9c!important;
  font-size:8.5px!important;
  letter-spacing:.18em!important;
}

.vx7-actions{
  margin-top:20px!important;
}

.vx7-btn-primary,
.vx7-btn-secondary{
  min-height:40px!important;
  padding:0 16px!important;
  font-size:10.5px!important;
}

.vx7-proof-row{
  margin-top:18px!important;
  gap:16px!important;
}

.vx7-proof-row strong{
  font-size:9px!important;
}

.vx7-proof-row small{
  font-size:7.5px!important;
}

.vx7-hero-media{
  min-height:390px;
}

/* Full-bleed background on large screens, independent of the inner shell. */
@media (min-width:1400px){
  .vx7-hero{
    background-size:cover!important;
    background-position:center center!important;
  }
}

/* Tablet */
@media (max-width:1000px){
  .vx7-hero{
    min-height:560px!important;
    background-position:62% center!important;
  }

  .vx7-hero::before{
    background:
      linear-gradient(
        90deg,
        rgba(246,250,255,.98) 0%,
        rgba(246,250,255,.95) 35%,
        rgba(246,250,255,.72) 58%,
        rgba(246,250,255,.18) 78%,
        rgba(246,250,255,0) 100%
      )!important;
  }

  .vx7-hero-grid{
    grid-template-columns:1fr!important;
    min-height:560px!important;
  }

  .vx7-hero-copy{
    max-width:560px!important;
  }

  .vx7-hero-media{
    display:none!important;
  }
}

/* Mobile */
@media (max-width:720px){
  .vx7-hero{
    min-height:auto!important;
    background-position:68% center!important;
  }

  .vx7-hero::before{
    background:
      linear-gradient(
        180deg,
        rgba(246,250,255,.97) 0%,
        rgba(246,250,255,.95) 55%,
        rgba(246,250,255,.82) 78%,
        rgba(246,250,255,.64) 100%
      )!important;
  }

  .vx7-hero-grid{
    min-height:0!important;
    padding-top:34px!important;
    padding-bottom:42px!important;
  }

  .vx7-hero-copy{
    max-width:none!important;
  }

  .vx7-hero-copy h1{
    font-size:clamp(45px,13vw,61px)!important;
    line-height:.96!important;
  }

  .vx7-hero-copy>p{
    font-size:14px!important;
    line-height:1.55!important;
  }
}


/* ============================================================
   Voxol Client Login — public landing-page design
   ============================================================ */

/* Login owns its own footer, so suppress the old generic footer on this page. */
.login-page-shell + .footer{
  display:none!important;
}

.login-page-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#f4f8ff!important;
}

.vx-login-page{
  position:relative;
  overflow:hidden;
  padding:64px 0;
  background:
    radial-gradient(circle at 13% 20%,rgba(69,153,255,.19),transparent 30%),
    radial-gradient(circle at 86% 75%,rgba(122,83,255,.18),transparent 32%),
    linear-gradient(135deg,#f8fbff 0%,#eef7ff 48%,#f6f0ff 100%);
}

.vx-login-orb{
  position:absolute;
  pointer-events:none;
  border-radius:50%;
}

.vx-login-orb-a{
  width:420px;
  height:420px;
  left:-260px;
  bottom:-250px;
  background:rgba(55,116,255,.09);
}

.vx-login-orb-b{
  width:360px;
  height:360px;
  right:-210px;
  top:-230px;
  background:rgba(145,86,255,.10);
}

.vx-login-page-inner{
  position:relative;
  z-index:2;
}

.vx-login-panel{
  width:min(1040px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  overflow:hidden;
  border:1px solid rgba(64,91,132,.14);
  border-radius:24px;
  background:#fff;
  box-shadow:0 28px 75px rgba(45,75,118,.15);
}

.vx-login-main{
  padding:50px 54px 44px;
}

.vx-login-eyebrow,
.vx-login-side-label{
  display:block;
  margin-bottom:10px;
  color:#2a72f2;
  font-size:10px;
  line-height:1;
  font-weight:950;
  letter-spacing:.20em;
}

.vx-login-main h1{
  margin:0 0 10px;
  color:#111936;
  font-size:52px;
  line-height:.96;
  letter-spacing:-.055em;
  font-weight:900;
}

.vx-login-lead{
  max-width:470px;
  margin:0 0 28px;
  color:#5b6a83;
  font-size:14px;
  line-height:1.55;
}

.vx-login-alert{
  margin:0 0 17px;
  padding:11px 13px;
  border-left:3px solid #35a7ff;
  border-radius:8px;
  background:#edf8ff;
  color:#305473;
  font-size:11px;
}

.vx-login-alert.error{
  border-left-color:#e15670;
  background:#fff1f4;
  color:#b42f4a;
}

.vx-login-form{
  display:grid;
  gap:16px;
  max-width:none!important;
}

.vx-login-field label,
.vx-login-verify label{
  display:block;
  margin:0 0 7px;
  color:#18213a;
  font-size:11px;
  font-weight:850;
}

.vx-login-field input,
.vx-login-verify input{
  width:100%;
  min-height:48px;
  padding:0 14px;
  border:1px solid #d5e0ed;
  border-radius:11px;
  outline:none;
  background:#f9fbfe;
  color:#18213a;
  font-size:13px;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}

.vx-login-field input:focus,
.vx-login-verify input:focus{
  border-color:#377af3;
  background:#fff;
  box-shadow:0 0 0 4px rgba(55,122,243,.10);
}

.vx-login-field-error{
  display:block;
  margin-top:6px;
  color:#d44762;
  font-size:10px;
  font-weight:750;
}

.vx-login-actions{
  display:flex;
  align-items:center;
  gap:16px;
  margin-top:2px;
}

.vx-login-button{
  min-height:44px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:0;
  border-radius:10px;
  background:linear-gradient(135deg,#278dff 0%,#445aff 100%);
  box-shadow:0 11px 24px rgba(44,91,255,.22);
  color:#fff;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}

.vx-login-button span{
  font-size:16px;
}

.vx-login-forgot{
  color:#276bd5;
  text-decoration:none;
  font-size:10px;
  font-weight:850;
}

.vx-login-forgot:hover{
  text-decoration:underline;
}

.vx-login-verify{
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid #e2e9f2;
}

.vx-login-verify summary{
  color:#4d5c73;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}

.vx-login-verify form{
  margin-top:14px;
}

.vx-login-verify-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
}

.vx-login-verify-row button{
  min-height:44px;
  padding:0 13px;
  border:1px solid #cad8ea;
  border-radius:9px;
  background:#fff;
  color:#2363c5;
  font-size:9px;
  font-weight:850;
  cursor:pointer;
}

.vx-login-secure{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:21px;
  color:#75839a;
  font-size:9px;
  font-weight:700;
}

.vx-login-secure span{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#25c57c;
  box-shadow:0 0 0 4px rgba(37,197,124,.10);
}

.vx-login-side{
  position:relative;
  min-height:540px;
  padding:50px 46px 110px;
  color:#fff;
  background:
    radial-gradient(circle at 83% 15%,rgba(92,210,255,.26),transparent 28%),
    linear-gradient(145deg,#102754 0%,#174c91 55%,#7457c9 100%);
}

.vx-login-side::after{
  content:"";
  position:absolute;
  right:-95px;
  bottom:-115px;
  width:290px;
  height:290px;
  border-radius:50%;
  background:rgba(164,210,255,.11);
}

.vx-login-side-label{
  position:relative;
  z-index:1;
  color:#79ddff;
}

.vx-login-side h2{
  position:relative;
  z-index:1;
  max-width:390px;
  margin:0 0 14px;
  color:#fff;
  font-size:38px;
  line-height:1.02;
  letter-spacing:-.045em;
  font-weight:900;
}

.vx-login-side>p{
  position:relative;
  z-index:1;
  max-width:385px;
  margin:0;
  color:#cfdbef;
  font-size:12px;
  line-height:1.55;
}

.vx-login-benefits{
  position:relative;
  z-index:1;
  display:grid;
  margin-top:28px;
  border-top:1px solid rgba(255,255,255,.18);
}

.vx-login-benefits>div{
  display:grid;
  grid-template-columns:34px 1fr;
  gap:12px;
  padding:15px 0;
  border-bottom:1px solid rgba(255,255,255,.14);
}

.vx-login-benefit-icon{
  color:#79ddff;
  font-size:9px;
  font-weight:950;
  letter-spacing:.08em;
}

.vx-login-benefits strong{
  display:block;
  margin-bottom:3px;
  color:#fff;
  font-size:11px;
}

.vx-login-benefits small{
  display:block;
  color:#bdcce3;
  font-size:9px;
  line-height:1.45;
}

.vx-login-side-brand{
  position:absolute;
  z-index:1;
  left:46px;
  right:46px;
  bottom:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.vx-login-side-brand img{
  width:125px;
  height:auto;
  filter:brightness(0) invert(1);
  opacity:.96;
}

.vx-login-side-brand span{
  max-width:190px;
  color:#c9d5e8;
  font-size:8.5px;
  line-height:1.45;
  font-weight:700;
  text-align:right;
}

/* Footer */
.vx-login-footer{
  background:#08101d;
  color:#d7e0ed;
}

.vx-login-footer-inner{
  display:grid;
  grid-template-columns:1.7fr .7fr .7fr 1.15fr;
  gap:40px;
  padding-top:38px;
  padding-bottom:28px;
}

.vx-login-footer-brand img{
  width:180px;
  height:auto;
  filter:brightness(0) invert(1);
}

.vx-login-footer-brand p,
.vx-login-footer-about p{
  max-width:350px;
  margin:14px 0 0;
  color:#8f9daf;
  font-size:10px;
  line-height:1.55;
}

.vx-login-footer-cta{
  display:inline-flex;
  gap:7px;
  margin-top:15px;
  color:#79cfff;
  text-decoration:none;
  font-size:10px;
  font-weight:850;
}

.vx-login-footer-column>span{
  display:block;
  margin-bottom:12px;
  color:#69788e;
  font-size:8px;
  font-weight:950;
  letter-spacing:.16em;
}

.vx-login-footer-column>a{
  display:block;
  width:max-content;
  margin:0 0 9px;
  color:#c9d4e3;
  text-decoration:none;
  font-size:10px;
  font-weight:700;
}

.vx-login-footer-column>a:hover{
  color:#75ceff;
}

.vx-login-footer-tags{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:14px;
}

.vx-login-footer-tags b{
  display:inline-flex;
  min-height:22px;
  align-items:center;
  padding:0 7px;
  border:1px solid #26374e;
  border-radius:999px;
  background:#0d1828;
  color:#8191a7;
  font-size:7px;
  letter-spacing:.06em;
}

.vx-login-footer-bottom{
  min-height:54px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:22px;
  border-top:1px solid #18263a;
  color:#718096;
  font-size:8.5px;
}

.vx-login-footer-bottom>a{
  justify-self:end;
  color:#8f9db0;
  text-decoration:none;
  font-weight:700;
}

.vx-login-footer-status{
  display:inline-flex;
  align-items:center;
  gap:7px;
}

.vx-login-footer-status i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#29c67d;
  box-shadow:0 0 8px rgba(41,198,125,.35);
}

/* Responsive */
@media(max-width:900px){
  .vx-login-page{
    padding:40px 0;
  }

  .vx-login-panel{
    grid-template-columns:1fr;
    width:min(640px,100%);
  }

  .vx-login-side{
    min-height:430px;
  }

  .vx-login-footer-inner{
    grid-template-columns:1.4fr 1fr 1fr;
  }

  .vx-login-footer-about{
    grid-column:1/-1;
  }
}

@media(max-width:720px){
  .vx-login-page{
    padding:24px 0 30px;
  }

  .vx-login-panel{
    border-radius:18px;
  }

  .vx-login-main{
    padding:32px 22px 28px;
  }

  .vx-login-main h1{
    font-size:42px;
  }

  .vx-login-lead{
    margin-bottom:24px;
    font-size:13px;
  }

  .vx-login-actions{
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
  }

  .vx-login-button{
    width:100%;
  }

  .vx-login-verify-row{
    grid-template-columns:1fr;
  }

  .vx-login-verify-row button{
    width:100%;
  }

  .vx-login-side{
    min-height:410px;
    padding:34px 22px 95px;
  }

  .vx-login-side h2{
    font-size:34px;
  }

  .vx-login-side-brand{
    left:22px;
    right:22px;
    bottom:22px;
  }

  .vx-login-side-brand img{
    width:108px;
  }

  .vx-login-footer-inner{
    grid-template-columns:1fr 1fr;
    gap:26px 20px;
    padding-top:30px;
  }

  .vx-login-footer-brand,
  .vx-login-footer-about{
    grid-column:1/-1;
  }

  .vx-login-footer-bottom{
    grid-template-columns:1fr;
    gap:8px;
    padding:15px 0;
  }

  .vx-login-footer-bottom>a{
    justify-self:start;
  }
}

@media(max-width:460px){
  .vx-login-footer-inner{
    grid-template-columns:1fr;
  }

  .vx-login-footer-brand,
  .vx-login-footer-about{
    grid-column:auto;
  }
}


/* ============================================================
   Voxol shared layout — reusable header/footer + sticky footer
   SAFE MERGE: preserves login + landing page styling
   ============================================================ */
html{
  min-height:100%;
}

body{
  min-height:100vh!important;
  min-height:100dvh!important;
  display:flex!important;
  flex-direction:column!important;
}

body > main{
  flex:1 0 auto!important;
  width:100%;
}

body > .vx7-footer,
body > .footer{
  flex-shrink:0!important;
  margin-top:auto!important;
}

.public-page-v7,
.login-page-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}

.login-page-shell{
  display:flex;
  flex-direction:column;
}

.vx-login-page{
  flex:1 0 auto;
}

.app-footer{
  margin-top:auto!important;
}


/* ============================================================
   Voxol Start a Project
   ============================================================ */
.vx-project-page-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#f7faff;
}

.vx-project-intro{
  padding:70px 0 54px;
  background:
    radial-gradient(circle at 12% 12%,rgba(64,153,255,.17),transparent 28%),
    radial-gradient(circle at 90% 78%,rgba(135,84,255,.14),transparent 30%),
    linear-gradient(135deg,#f8fbff 0%,#eef7ff 48%,#f7f2ff 100%);
}

.vx-project-intro-grid{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:70px;
  align-items:end;
}

.vx-project-eyebrow,
.vx-project-side-label{
  display:block;
  margin-bottom:12px;
  color:#2872ef;
  font-size:9px;
  line-height:1;
  font-weight:950;
  letter-spacing:.21em;
}

.vx-project-intro h1{
  max-width:760px;
  margin:0;
  color:#111936;
  font-size:clamp(52px,6vw,78px);
  line-height:.94;
  letter-spacing:-.055em;
  font-weight:900;
}

.vx-project-intro h1 span{
  color:#2e70f2;
}

.vx-project-intro> .shell > div:first-child > p{
  max-width:620px;
  margin:20px 0 0;
  color:#566680;
  font-size:15px;
  line-height:1.6;
}

.vx-project-intro-note{
  display:grid;
  gap:10px;
  padding:22px 24px;
  border:1px solid rgba(70,106,160,.14);
  border-radius:18px;
  background:rgba(255,255,255,.68);
  box-shadow:0 18px 42px rgba(48,77,116,.08);
}

.vx-project-intro-note strong{
  color:#17213a;
  font-size:13px;
}

.vx-project-intro-note span{
  position:relative;
  padding-left:18px;
  color:#5e6d84;
  font-size:10px;
  line-height:1.5;
}

.vx-project-intro-note span::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#2f7cf7;
}

.vx-project-form-section{
  padding:54px 0 72px;
  background:#f7faff;
}

.vx-project-form-layout{
  display:grid;
  grid-template-columns:310px minmax(0,1fr);
  gap:44px;
  align-items:start;
}

.vx-project-form-side{
  position:sticky;
  top:105px;
  padding-top:12px;
}

.vx-project-form-side h2{
  margin:0 0 12px;
  color:#131c36;
  font-size:30px;
  line-height:1.02;
  letter-spacing:-.04em;
}

.vx-project-form-side>p{
  margin:0;
  color:#66758b;
  font-size:11px;
  line-height:1.55;
}

.vx-project-side-list{
  margin-top:25px;
  border-top:1px solid #dce5ef;
}

.vx-project-side-list>div{
  display:grid;
  grid-template-columns:30px 1fr;
  gap:11px;
  padding:16px 0;
  border-bottom:1px solid #dce5ef;
}

.vx-project-side-list b{
  color:#2876ef;
  font-size:9px;
}

.vx-project-side-list strong{
  display:block;
  margin-bottom:3px;
  color:#17213a;
  font-size:11px;
}

.vx-project-side-list small{
  display:block;
  color:#748197;
  font-size:9px;
  line-height:1.45;
}

.vx-project-form-panel{
  overflow:hidden;
  border:1px solid #d8e3f0;
  border-radius:22px;
  background:#fff;
  box-shadow:0 24px 60px rgba(48,76,112,.09);
}

.vx-project-form{
  max-width:none!important;
}

.vx-project-form-block{
  padding:28px 30px 30px;
  border-bottom:1px solid #e3eaf2;
}

.vx-project-form-block-head{
  display:grid;
  grid-template-columns:36px 1fr;
  gap:12px;
  align-items:start;
  margin-bottom:22px;
}

.vx-project-form-block-head>span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid #cfe0f5;
  border-radius:50%;
  color:#2875ef;
  background:#f3f8ff;
  font-size:9px;
  font-weight:900;
}

.vx-project-form-block-head h2{
  margin:0;
  color:#131c36;
  font-size:18px;
  line-height:1.1;
}

.vx-project-form-block-head p{
  margin:4px 0 0;
  color:#758298;
  font-size:10px;
}

.vx-project-fields{
  display:grid;
  gap:16px;
}

.vx-project-fields.two{
  grid-template-columns:1fr 1fr;
}

.vx-project-field label{
  display:block;
  margin:0 0 7px;
  color:#1b263e;
  font-size:10px;
  font-weight:850;
}

.vx-project-field input,
.vx-project-field textarea,
.vx-project-field select{
  width:100%;
  border:1px solid #d4dfec;
  border-radius:10px;
  background:#fbfcfe;
  color:#18213b;
  outline:none;
  font-size:12px;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}

.vx-project-field input,
.vx-project-field select{
  min-height:46px;
  padding:0 13px;
}

.vx-project-field textarea{
  padding:12px 13px;
  line-height:1.55;
  resize:vertical;
}

.vx-project-field input:focus,
.vx-project-field textarea:focus,
.vx-project-field select:focus{
  border-color:#3d7cf3;
  background:#fff;
  box-shadow:0 0 0 4px rgba(61,124,243,.09);
}

.vx-project-field.has-error input,
.vx-project-field.has-error textarea,
.vx-project-field.has-error select{
  border-color:#e0647c;
}

.vx-project-field-error{
  display:block;
  margin-top:5px;
  color:#c9445d;
  font-size:9px;
  font-weight:700;
}

.vx-project-radio-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.vx-project-radio{
  display:flex!important;
  align-items:center;
  gap:8px;
  min-height:42px;
  margin:0!important;
  padding:0 14px;
  border:1px solid #d7e1ed;
  border-radius:10px;
  background:#fbfcfe;
  cursor:pointer;
}

.vx-project-radio input{
  width:auto!important;
  min-height:0!important;
  margin:0!important;
}

.vx-project-radio span{
  font-size:11px;
  font-weight:750;
  color:#27334b;
}

.vx-project-form-alert{
  margin:22px 30px 0;
  padding:12px 14px;
  border-left:3px solid #e05571;
  border-radius:8px;
  background:#fff2f5;
  color:#a9364d;
  font-size:10px;
}

.vx-project-submit-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:24px 30px;
  background:#f8fbff;
}

.vx-project-submit-row strong{
  display:block;
  color:#17213a;
  font-size:12px;
}

.vx-project-submit-row p{
  margin:4px 0 0;
  color:#758298;
  font-size:9px;
}

.vx-project-submit-row button{
  min-height:46px;
  padding:0 17px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:0;
  border-radius:10px;
  background:linear-gradient(135deg,#288cff,#435cff);
  box-shadow:0 11px 24px rgba(43,92,255,.18);
  color:#fff;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}

.vx-project-submit-row button span{
  font-size:16px;
}

.vx-project-honeypot-wrap{
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

.vx-project-website-field[hidden]{
  display:none!important;
}

/* Success */
.vx-project-success{
  display:grid;
  place-items:center;
  min-height:62vh;
  padding:70px 0;
  background:
    radial-gradient(circle at 20% 15%,rgba(65,154,255,.16),transparent 30%),
    radial-gradient(circle at 85% 75%,rgba(137,83,255,.16),transparent 32%),
    linear-gradient(135deg,#f8fbff,#eef7ff 52%,#f7f1ff);
}

.vx-project-success-card{
  max-width:700px;
  margin:0 auto;
  padding:48px;
  border:1px solid rgba(65,91,134,.14);
  border-radius:24px;
  background:#fff;
  box-shadow:0 24px 65px rgba(46,74,112,.12);
  text-align:center;
}

.vx-project-success-card>span{
  color:#2873ef;
  font-size:9px;
  font-weight:950;
  letter-spacing:.2em;
}

.vx-project-success-card h1{
  margin:10px 0 12px;
  color:#111936;
  font-size:54px;
  line-height:.95;
  letter-spacing:-.05em;
}

.vx-project-success-card p{
  margin:0 auto;
  max-width:550px;
  color:#617087;
  font-size:13px;
  line-height:1.6;
}

.vx-project-success-card a{
  display:inline-flex;
  gap:8px;
  margin-top:24px;
  color:#276ee1;
  text-decoration:none;
  font-size:11px;
  font-weight:850;
}

@media(max-width:900px){
  .vx-project-intro-grid,
  .vx-project-form-layout{
    grid-template-columns:1fr;
  }

  .vx-project-form-side{
    position:static;
  }

  .vx-project-intro-grid{
    gap:30px;
  }
}

@media(max-width:720px){
  .vx-project-intro{
    padding:42px 0 34px;
  }

  .vx-project-intro h1{
    font-size:45px;
  }

  .vx-project-form-section{
    padding:32px 0 45px;
  }

  .vx-project-form-block{
    padding:22px 18px;
  }

  .vx-project-fields.two{
    grid-template-columns:1fr;
  }

  .vx-project-submit-row{
    flex-direction:column;
    align-items:stretch;
    padding:20px 18px;
  }

  .vx-project-submit-row button{
    width:100%;
  }

  .vx-project-success-card{
    padding:34px 22px;
  }

  .vx-project-success-card h1{
    font-size:44px;
  }
}


/* ============================================================
   Operations — Project Inquiries
   ============================================================ */
.ops-kpi-bar{
  grid-template-columns:repeat(6,minmax(0,1fr));
}
.ops-kpi.inquiry-attention:before{
  background:var(--accent-2);
}
.ops-inquiry-head,
.ops-inquiry-row{
  display:grid;
  grid-template-columns:1.45fr 1.1fr .75fr .65fr auto;
  gap:14px;
  align-items:center;
  padding:13px 20px;
}
.ops-inquiry-head{
  color:#6f7d94;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.012);
}
.ops-inquiry-row{
  color:inherit;
  text-decoration:none;
  font-size:12px;
  border-bottom:1px solid rgba(255,255,255,.055);
  transition:background .14s ease;
}
.ops-inquiry-row:last-child{border-bottom:0}
.ops-inquiry-row:hover{background:rgba(255,255,255,.03)}
.ops-inquiry-person strong{
  display:block;
  font-size:12px;
}
.ops-inquiry-person small,
.inquiry-admin-table small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:10px;
  line-height:1.35;
}
.ops-inquiry-status{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:0 8px;
  border:1px solid #2b3850;
  border-radius:6px;
  background:#111827;
  color:#cfd7e8;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}
.ops-inquiry-status.inquiry-new{
  color:#9fe2ff;
  border-color:rgba(53,194,255,.30);
  background:rgba(53,194,255,.07);
}
.ops-inquiry-status.inquiry-reviewing{
  color:#d5c6ff;
  border-color:rgba(124,92,255,.34);
  background:rgba(124,92,255,.08);
}
.ops-inquiry-status.inquiry-contacted{
  color:#ffd97b;
  border-color:rgba(251,191,36,.30);
  background:rgba(251,191,36,.07);
}
.ops-inquiry-status.inquiry-qualified{
  color:#8cf0ae;
  border-color:rgba(74,222,128,.30);
  background:rgba(74,222,128,.07);
}
.ops-inquiry-status.inquiry-closed,
.ops-inquiry-status.inquiry-spam{
  color:#929db0;
  border-color:#29364b;
  background:#0d1421;
}

/* Full inquiries screen */
.inquiry-admin-page,
.inquiry-detail-page{
  max-width:1180px;
  margin:0 auto;
}
.inquiry-metrics{
  grid-template-columns:repeat(5,1fr);
}
.inquiry-metric-attention{
  box-shadow:inset 2px 0 0 var(--accent-2);
}
.inquiry-filter-bar{
  max-width:none!important;
  display:grid;
  grid-template-columns:minmax(260px,1fr) 190px auto auto;
  gap:12px;
  align-items:end;
  margin:0 0 22px;
  padding:0;
}
.inquiry-filter-bar label{
  color:#7d8aa0;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.inquiry-filter-bar input,
.inquiry-filter-bar select{
  min-height:42px;
}
.inquiry-filter-bar .btn{
  min-height:42px;
}
.inquiry-admin-table .rt-head,
.inquiry-admin-table .rt-row{
  grid-template-columns:1.35fr 1.15fr .8fr .8fr .7fr .85fr .45fr;
}

/* Inquiry detail */
.inquiry-detail-header{
  align-items:center;
}
.inquiry-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:24px;
  align-items:start;
}
.inquiry-detail-grid>aside{
  position:sticky;
  top:96px;
}
.inquiry-detail-table{
  padding:0 18px;
}
.inquiry-detail-table>div{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:18px;
  padding:13px 0;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.inquiry-detail-table>div:last-child{
  border-bottom:0;
}
.inquiry-detail-table span,
.inquiry-project-meta span,
.inquiry-copy-block>span{
  color:#76849a;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.inquiry-detail-table strong{
  font-size:12px;
  overflow-wrap:anywhere;
}
.inquiry-detail-table a{
  color:#91dbff;
  text-decoration:none;
}
.inquiry-detail-table a:hover{text-decoration:underline}
.inquiry-project-summary{
  padding:18px;
}
.inquiry-project-meta{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid var(--line);
  border-radius:10px;
  overflow:hidden;
  margin-bottom:22px;
}
.inquiry-project-meta>div{
  padding:13px;
  border-right:1px solid var(--line);
}
.inquiry-project-meta>div:last-child{border-right:0}
.inquiry-project-meta strong{
  display:block;
  margin-top:5px;
  font-size:11px;
}
.inquiry-copy-block{
  padding:18px 0;
  border-top:1px solid rgba(255,255,255,.06);
}
.inquiry-copy-block p{
  max-width:760px;
  margin:8px 0 0;
  color:#c0cad9;
  font-size:12px;
  line-height:1.7;
}
.inquiry-status-panel .panel-form button{
  width:100%;
  margin-top:12px;
}
.inquiry-security-note{
  padding:16px 18px;
  border:1px solid #243149;
  border-radius:12px;
  background:rgba(9,14,23,.5);
}
.inquiry-security-note strong{
  font-size:11px;
}
.inquiry-security-note p{
  margin:5px 0 0;
  color:#718097;
  font-size:10px;
  line-height:1.55;
}

@media(max-width:1050px){
  .ops-kpi-bar{
    grid-template-columns:repeat(3,1fr);
  }
  .inquiry-detail-grid{
    grid-template-columns:1fr;
  }
  .inquiry-detail-grid>aside{
    position:static;
  }
}
@media(max-width:800px){
  .inquiry-metrics{
    grid-template-columns:1fr 1fr;
  }
  .inquiry-filter-bar{
    grid-template-columns:1fr 1fr;
  }
  .inquiry-filter-bar .btn{
    width:100%;
  }
  .inquiry-admin-table .rt-head{
    display:none;
  }
  .inquiry-admin-table .rt-row{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .inquiry-admin-table .rt-row>div:first-child{
    grid-column:1/-1;
  }
  .inquiry-project-meta{
    grid-template-columns:1fr 1fr;
  }
  .inquiry-project-meta>div:nth-child(2){
    border-right:0;
  }
  .inquiry-project-meta>div{
    border-bottom:1px solid var(--line);
  }
  .inquiry-project-meta>div:nth-last-child(-n+2){
    border-bottom:0;
  }
}
@media(max-width:700px){
  .ops-kpi-bar{
    grid-template-columns:1fr;
  }
  .ops-inquiry-head{
    display:none;
  }
  .ops-inquiry-row{
    grid-template-columns:1fr auto;
    gap:9px 14px;
  }
  .ops-inquiry-person{
    grid-column:1/-1;
  }
  .ops-inquiry-row>span:nth-child(2),
  .ops-inquiry-row>span:nth-child(3){
    color:var(--muted);
  }
  .inquiry-filter-bar{
    grid-template-columns:1fr;
  }
  .inquiry-metrics{
    grid-template-columns:1fr 1fr;
  }
}


/* ============================================================
   Client Portal UI Refresh — clearer hierarchy + lighter layers
   ============================================================ */

/* Client portal navigation */
.client-site-nav{
  background:rgba(13,22,37,.96)!important;
  border-bottom:1px solid #25364e!important;
  box-shadow:0 8px 30px rgba(0,0,0,.16);
}

.client-site-nav .nav-inner{
  min-height:78px;
}

.client-site-nav .app-brand{
  display:flex;
  align-items:center;
  padding:8px 0;
}

.client-site-nav .client-brand-logo{
  width:188px!important;
  max-width:34vw!important;
  height:auto!important;
  filter:none!important;
  background:transparent!important;
}

.client-site-nav .app-nav-links{
  gap:6px;
}

.client-site-nav .app-nav-links>a,
.client-site-nav .app-nav-links button{
  position:relative;
  min-height:38px;
  display:inline-flex;
  align-items:center;
  padding:0 13px!important;
  border-radius:9px;
  color:#aebbd0!important;
  font-size:12px;
  font-weight:700;
  transition:background .15s ease,color .15s ease;
}

.client-site-nav .app-nav-links>a:hover,
.client-site-nav .app-nav-links button:hover{
  background:#17263d!important;
  color:#fff!important;
}

.client-site-nav .app-nav-links>a.is-active{
  background:#1b2d48!important;
  color:#fff!important;
}

.client-site-nav .app-nav-links>a.is-active::after{
  content:"";
  position:absolute;
  left:13px;
  right:13px;
  bottom:4px;
  height:2px;
  border-radius:2px;
  background:#45c6ff;
}

.client-site-nav .app-logout-form{
  margin:0;
}

/* Overall dashboard canvas */
.client-dashboard{
  max-width:1080px!important;
  padding-top:18px!important;
  padding-bottom:70px;
}

body:has(.client-dashboard){
  background:
    radial-gradient(circle at 12% 0%,rgba(75,106,187,.12),transparent 26%),
    radial-gradient(circle at 88% 5%,rgba(36,151,189,.08),transparent 28%),
    #101827!important;
}

.client-dashboard-header{
  position:relative;
  margin-bottom:26px!important;
  padding:18px 2px 24px!important;
  border-bottom:1px solid #2a3b54!important;
}

.client-dashboard-header::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:62px;
  height:2px;
  background:linear-gradient(90deg,#45c6ff,#7c5cff);
}

.client-dashboard-eyebrow{
  display:block;
  margin-bottom:7px;
  color:#58ccff;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
}

.client-dashboard-header h1{
  margin:0 0 6px!important;
  color:#f7fbff;
  font-size:clamp(36px,4vw,48px)!important;
  letter-spacing:-.04em!important;
}

.client-dashboard-header p{
  color:#a7b6cb!important;
  font-size:13px!important;
}

/* Current project feature card */
.client-project-focus{
  position:relative;
  overflow:hidden;
  margin-bottom:26px!important;
  padding:0!important;
  border:1px solid #3c5474!important;
  border-radius:16px!important;
  background:#18263b!important;
  box-shadow:0 18px 45px rgba(0,0,0,.16);
}

.client-project-focus::before{
  content:"";
  position:absolute;
  right:-100px;
  top:-140px;
  width:320px;
  height:320px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(71,195,255,.12),transparent 66%);
  pointer-events:none;
}

.client-project-focus .client-focus-top{
  position:relative;
  z-index:1;
  padding:20px 22px 18px;
  border-bottom:1px solid #334862;
  background:linear-gradient(135deg,#203451,#1a2940);
}

.client-project-focus .client-focus-top>div{
  min-width:0;
}

.client-project-focus .client-step-label{
  display:block;
  margin-bottom:6px;
  color:#86a1c4;
  font-size:9px;
  letter-spacing:.13em;
}

.client-project-focus h2{
  margin:0!important;
  color:#fff;
  font-size:23px!important;
  letter-spacing:-.02em;
}

.client-project-focus .table-state.info{
  background:#153a52;
  border-color:#33749a;
  color:#9de4ff;
}

.client-project-focus .client-next-step{
  position:relative;
  z-index:1;
  min-height:112px;
  margin:0;
  padding:22px!important;
  border-top:0!important;
  background:#172338;
}

.client-next-step-copy{
  max-width:680px;
}

.client-action-label{
  display:block;
  margin-bottom:6px;
  color:#58ccff;
  font-size:8px;
  font-weight:900;
  letter-spacing:.13em;
}

.client-next-step-copy strong{
  display:block;
  color:#fff;
  font-size:15px!important;
  line-height:1.3;
}

.client-next-step-copy p{
  max-width:680px;
  margin:5px 0 0!important;
  color:#aab9cc!important;
  font-size:12px!important;
  line-height:1.55!important;
}

.client-focus-actions{
  flex-shrink:0;
}

.client-primary-action{
  min-height:43px!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,#3d7cff,#7658ef)!important;
  box-shadow:0 10px 22px rgba(80,86,238,.24)!important;
}

.client-secondary-action{
  min-height:43px!important;
  border:1px solid #405774!important;
  background:#202f45!important;
  color:#eef6ff!important;
}

.client-project-focus .client-detail-link{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0!important;
  padding:0 22px 18px;
  color:#69d3ff!important;
  font-size:10px!important;
}

.client-project-focus .client-detail-link span{
  font-size:13px;
}

/* Content sections */
.client-dashboard .client-data-section{
  margin-bottom:22px!important;
  overflow:hidden;
  border:1px solid #344760!important;
  border-radius:15px!important;
  background:#162235!important;
  box-shadow:0 12px 32px rgba(0,0,0,.10);
}

/* Make the heading a clearly separate layer from the content */
.client-dashboard .client-section-head{
  min-height:65px;
  padding:14px 18px!important;
  border-bottom:1px solid #40536d!important;
  background:#22334b!important;
}

.client-dashboard .client-section-head>div{
  min-width:0;
}

.client-section-kicker{
  display:block;
  margin-bottom:3px;
  color:#7792b5;
  font-size:8px;
  line-height:1;
  font-weight:900;
  letter-spacing:.13em;
}

.client-dashboard .client-section-head h2{
  margin:0!important;
  color:#f5f9ff;
  font-size:16px!important;
  line-height:1.2;
}

.client-dashboard .client-section-head>a{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#72d5ff!important;
  font-size:10px!important;
}

.client-dashboard .client-table{
  background:#141f31;
}

.client-dashboard .client-table-head{
  min-height:42px;
  padding:11px 18px!important;
  border-bottom:1px solid #2e4059!important;
  background:#101a2a!important;
  color:#7187a5!important;
  font-size:9px!important;
}

.client-dashboard .client-row{
  min-height:58px;
  padding:13px 18px!important;
  border-bottom:1px solid #293b54!important;
  color:#cbd6e5;
  transition:background .13s ease;
}

.client-dashboard .client-row:last-child{
  border-bottom:0!important;
}

.client-dashboard .client-row:hover{
  background:#19273b;
}

.client-dashboard .client-row strong{
  color:#f3f7fc;
  font-size:12px!important;
}

.client-dashboard .client-row small{
  margin-top:4px!important;
  color:#8798af!important;
  line-height:1.45;
}

.client-dashboard .client-row>a,
.client-dashboard .client-row>span>a{
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:#72d5ff!important;
  font-weight:800!important;
}

.client-dashboard .updates-table .client-row{
  min-height:66px;
}

.client-dashboard .updates-table .client-row.unread{
  background:linear-gradient(90deg,rgba(58,186,255,.055),transparent 50%);
}

.client-dashboard .updates-table .client-row.unread:hover{
  background:#1a293f;
}

.client-dashboard .update-dot{
  width:8px!important;
  height:8px!important;
  background:#42cbff!important;
  box-shadow:0 0 0 4px rgba(66,203,255,.08),0 0 14px rgba(66,203,255,.32)!important;
}

.client-status-pill{
  display:inline-flex;
  min-height:25px;
  align-items:center;
  padding:0 8px;
  border:1px solid #405775;
  border-radius:999px;
  background:#1d2d43;
  color:#c9d6e7;
  font-size:9px;
  font-weight:800;
}

.client-payment-amount{
  color:#fff;
  font-weight:800;
}

.client-pay-link{
  min-height:30px;
  padding:0 10px;
  border:1px solid #347499;
  border-radius:8px;
  background:#16384f;
  color:#9be4ff!important;
}

/* Empty/support states */
.client-dashboard .client-empty{
  padding:28px 18px!important;
  color:#8fa0b7!important;
}

.client-dashboard .client-support-strip{
  padding:20px 22px!important;
  border:1px solid #34526e!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#1a2d44,#17253a)!important;
  box-shadow:0 12px 32px rgba(0,0,0,.10);
}

.client-dashboard .client-support-strip strong{
  display:block;
  color:#fff;
  font-size:14px;
}

.client-dashboard .client-support-strip p{
  color:#9fb0c5!important;
}

/* Responsive portal */
@media(max-width:800px){
  .client-site-nav .nav-inner{
    min-height:auto;
    padding:12px 0!important;
  }

  .client-site-nav .client-brand-logo{
    width:150px!important;
  }

  .client-site-nav .app-nav-links{
    width:100%;
    justify-content:flex-start;
    gap:4px;
  }

  .client-project-focus .client-focus-top,
  .client-project-focus .client-next-step{
    align-items:flex-start;
  }

  .client-project-focus .client-next-step{
    flex-direction:column;
  }

  .client-focus-actions{
    width:100%;
  }
}

@media(max-width:720px){
  .client-dashboard{
    width:min(94vw,1080px)!important;
    padding-top:8px!important;
  }

  .client-dashboard-header{
    padding-top:12px!important;
  }

  .client-dashboard-header h1{
    font-size:36px!important;
  }

  .client-project-focus .client-focus-top{
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
  }

  .client-focus-actions{
    display:grid!important;
    grid-template-columns:1fr;
  }

  .client-focus-actions .btn,
  .client-next-step>.btn{
    width:100%;
  }

  .client-dashboard .client-section-head{
    min-height:58px;
  }

  .client-dashboard .client-row{
    padding:15px 16px!important;
  }
}


/* ============================================================
   Client Portal v2 — simpler, clearer, more self-explanatory
   ============================================================ */

body:has(.client-dashboard-v2){
  background:
    radial-gradient(circle at 10% 0%,rgba(74,111,184,.12),transparent 28%),
    radial-gradient(circle at 92% 8%,rgba(47,151,196,.07),transparent 30%),
    #121d2c!important;
}

.client-dashboard-v2{
  max-width:1100px!important;
  padding-top:24px!important;
}

.client-dashboard-v2 .client-dashboard-header{
  padding:18px 0 26px!important;
  margin-bottom:28px!important;
}

.client-dashboard-v2 .client-dashboard-header::after{
  display:none!important;
}

.client-dashboard-v2 .client-dashboard-header h1{
  margin:0 0 7px!important;
  font-size:44px!important;
  line-height:1!important;
}

.client-dashboard-v2 .client-dashboard-header p{
  margin:0!important;
  color:#a9b8cb!important;
  font-size:14px!important;
}

/* Simple single-line card headers */
.client-dashboard-v2 .client-card-header,
.client-dashboard-v2 .client-section-head-simple{
  min-height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 20px!important;
  border-bottom:1px solid #49607c!important;
  background:#2b405d!important;
}

.client-dashboard-v2 .client-card-header h2,
.client-dashboard-v2 .client-section-head-simple h2{
  margin:0!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1.2!important;
  letter-spacing:-.01em!important;
}

.client-dashboard-v2 .client-section-head-simple>a{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#7bdcff!important;
  font-size:10px!important;
  font-weight:800!important;
  text-decoration:none;
}

/* Current project becomes the "what do I do?" area */
.client-dashboard-v2 .client-project-focus-v2{
  padding:0!important;
  border:1px solid #49617f!important;
  background:#18283d!important;
  border-radius:16px!important;
}

.client-project-body{
  background:#18283d;
}

.client-action-box{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  padding:25px 22px;
  background:#1a2a40;
}

.client-action-copy h3{
  margin:0 0 8px;
  color:#fff;
  font-size:20px;
  line-height:1.2;
  letter-spacing:-.02em;
}

.client-action-copy>p{
  max-width:700px;
  margin:0;
  color:#b6c3d3;
  font-size:13px;
  line-height:1.6;
}

.client-simple-steps{
  display:grid;
  gap:9px;
  margin-top:18px;
}

.client-simple-steps>div{
  display:grid;
  grid-template-columns:24px 1fr;
  gap:9px;
  align-items:center;
}

.client-simple-steps b{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border:1px solid #3f6689;
  border-radius:50%;
  background:#203a55;
  color:#82dcff;
  font-size:9px;
}

.client-simple-steps span{
  color:#d3dce8;
  font-size:11px;
}

.client-focus-actions{
  min-width:220px;
  display:grid!important;
  gap:10px!important;
}

.client-focus-actions .btn{
  width:100%;
  white-space:nowrap;
}

.client-action-box-waiting{
  grid-template-columns:1fr auto;
}

.client-waiting-badge{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  padding:0 12px;
  border:1px solid #3e718e;
  border-radius:999px;
  background:#183a50;
  color:#96e5ff;
  font-size:10px;
  font-weight:800;
}

.client-project-footer{
  padding:13px 22px 17px;
  border-top:1px solid #2f435d;
  background:#17263a;
}

.client-dashboard-v2 .client-detail-link{
  margin:0!important;
  padding:0!important;
  font-size:10px!important;
}

/* Standard information sections */
.client-dashboard-v2 .client-data-section{
  margin-bottom:24px!important;
  border:1px solid #3e5570!important;
  border-radius:15px!important;
  background:#19283b!important;
}

.client-dashboard-v2 .client-section-explainer{
  padding:13px 20px;
  border-bottom:1px solid #31465f;
  background:#203149;
}

.client-dashboard-v2 .client-section-explainer p{
  margin:0;
  color:#9fb0c3;
  font-size:11px;
  line-height:1.5;
}

.client-dashboard-v2 .client-table{
  background:#18273a!important;
}

.client-dashboard-v2 .client-table-head{
  min-height:39px;
  background:#142235!important;
  border-bottom:1px solid #354b65!important;
  color:#8095b1!important;
}

.client-dashboard-v2 .client-row{
  min-height:62px;
  background:#19283b;
  border-bottom:1px solid #30445d!important;
}

.client-dashboard-v2 .client-row:hover{
  background:#1d2f47;
}

.client-dashboard-v2 .client-row strong{
  font-size:12px!important;
}

.client-dashboard-v2 .client-status-pill{
  background:#253b55;
  border-color:#4a6685;
  color:#d5dfec;
}

.client-dashboard-v2 .updates-table .client-row{
  background:linear-gradient(90deg,rgba(68,199,255,.06),#19283b 38%);
}

.client-dashboard-v2 .updates-table .client-row:hover{
  background:#1d3048;
}

.client-dashboard-v2 .client-pay-link{
  min-width:70px;
  justify-content:center;
}

.client-paid-label{
  color:#80dca0;
  font-size:10px;
  font-weight:800;
}

/* Buttons are descriptive, not cryptic */
.client-dashboard-v2 .client-primary-action,
.client-dashboard-v2 .client-secondary-action{
  min-height:45px!important;
  padding:0 16px!important;
  font-size:11px!important;
}

/* Make spacing between blocks obvious */
.client-dashboard-v2 .client-project-focus-v2,
.client-dashboard-v2 .client-data-section{
  box-shadow:0 14px 34px rgba(0,0,0,.13);
}

@media(max-width:850px){
  .client-action-box{
    grid-template-columns:1fr;
  }

  .client-focus-actions{
    width:100%;
    min-width:0;
  }

  .client-action-box-waiting{
    grid-template-columns:1fr;
  }

  .client-waiting-badge{
    width:max-content;
  }
}

@media(max-width:720px){
  .client-dashboard-v2 .client-dashboard-header h1{
    font-size:36px!important;
  }

  .client-dashboard-v2 .client-card-header,
  .client-dashboard-v2 .client-section-head-simple{
    min-height:56px;
    padding:0 16px!important;
  }

  .client-dashboard-v2 .client-card-header h2,
  .client-dashboard-v2 .client-section-head-simple h2{
    font-size:16px!important;
  }

  .client-action-box{
    padding:20px 16px;
  }

  .client-action-copy h3{
    font-size:18px;
  }

  .client-dashboard-v2 .client-section-explainer{
    padding:12px 16px;
  }

  .client-project-footer{
    padding:13px 16px 16px;
  }
}


/* Complete-vs-monthly-service decision */
.monthly-service-finalize{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:18px;
  border-top:1px solid #354a64;
  background:#142235;
}
.monthly-service-finalize strong{
  display:block;
  color:#fff;
  font-size:12px;
}
.monthly-service-finalize p{
  margin:5px 0 0;
  color:#94a6bc;
  font-size:10px;
  line-height:1.5;
}
@media(max-width:800px){
  .monthly-service-finalize{
    flex-direction:column;
    align-items:flex-start;
  }
  .monthly-service-finalize form,
  .monthly-service-finalize .btn{
    width:100%;
  }
}


/* ============================================================
   Operations Dashboard v3 — brighter admin console
   ============================================================ */
.ops-dashboard-v3{
  max-width:1220px;
  padding:22px 0 72px;
}

.ops-dashboard-v3 .ops-dashboard-header{
  align-items:flex-end;
  padding:24px 0 28px;
  margin-bottom:0;
  border-bottom:1px solid #405673;
}

.ops-dashboard-v3 .ops-dashboard-title h1{
  color:#ffffff;
  font-size:clamp(40px,4vw,56px);
  font-weight:850;
  line-height:1;
  letter-spacing:-.045em;
  text-shadow:0 4px 28px rgba(0,0,0,.18);
}

.ops-dashboard-v3 .ops-dashboard-title p{
  max-width:690px;
  margin-top:10px;
  color:#b6c5d8;
  font-size:14px;
  line-height:1.55;
}

.ops-dashboard-v3 .ops-console-actions .btn{
  min-height:40px;
  border-radius:9px;
  padding:0 15px;
}

.ops-dashboard-v3 .ops-console-actions .btn.secondary{
  background:#1b2c42;
  border-color:#3c526e;
  color:#eef5ff;
}

.ops-dashboard-v3 .ops-console-actions .btn.secondary:hover{
  background:#243a55;
  border-color:#587294;
}

/* KPI bar */
.ops-dashboard-v3 .ops-kpi-bar{
  margin:26px 0 28px;
  border:1px solid #405875;
  border-radius:15px;
  background:#17283c;
  box-shadow:0 16px 38px rgba(0,0,0,.13);
}

.ops-dashboard-v3 .ops-kpi{
  min-height:116px;
  padding:20px 18px 17px;
  border-right-color:#40536b;
  background:linear-gradient(180deg,#1b2e45,#17273a);
}

.ops-dashboard-v3 .ops-kpi:hover{
  background:linear-gradient(180deg,#203650,#1b2d43);
}

.ops-dashboard-v3 .ops-kpi-label{
  color:#93a8c1;
  font-size:10px;
  font-weight:800;
}

.ops-dashboard-v3 .ops-kpi strong{
  color:#fff;
  font-size:30px;
  font-weight:850;
}

.ops-dashboard-v3 .ops-kpi small{
  color:#8ea1b8;
  font-size:10px;
}

/* Main dashboard layout */
.ops-dashboard-v3 .ops-console-grid{
  grid-template-columns:minmax(0,1fr) 350px;
  gap:24px;
}

.ops-dashboard-v3 .ops-dashboard-card{
  border:1px solid #3b516d!important;
  border-radius:15px!important;
  background:#17283b!important;
  box-shadow:0 12px 32px rgba(0,0,0,.10);
}

.ops-dashboard-v3 .ops-block-head,
.ops-dashboard-v3 .ops-notification-head{
  min-height:67px;
  padding:16px 18px;
  border-bottom:1px solid #4a607a;
  background:#293f5b;
}

.ops-dashboard-v3 .ops-block-head h2,
.ops-dashboard-v3 .ops-notification-head h2,
.ops-dashboard-v3 .ops-quick-block h2{
  color:#fff;
  font-size:17px;
  font-weight:800;
  letter-spacing:-.015em;
}

.ops-dashboard-v3 .ops-block-head p,
.ops-dashboard-v3 .ops-notification-head p{
  color:#b0bfd1;
  font-size:10px;
  line-height:1.45;
}

.ops-dashboard-v3 .ops-link{
  color:#a6e5ff;
  font-size:11px;
}

.ops-section-count{
  display:inline-flex;
  align-items:center;
  min-height:27px;
  padding:0 9px;
  border:1px solid #526984;
  border-radius:999px;
  background:#20334b;
  color:#c9d8e9;
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.06em;
}

/* Projects */
.ops-project-head,
.ops-project-row{
  display:grid;
  grid-template-columns:minmax(230px,1.6fr) minmax(130px,1fr) minmax(140px,.95fr) 88px auto;
  gap:14px;
  align-items:center;
  padding:13px 18px;
}

.ops-project-head{
  border-bottom:1px solid #40536c;
  background:#203149;
  color:#8fa4bd;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.ops-project-row{
  min-height:66px;
  border-bottom:1px solid #31465e;
  background:#17283b;
  font-size:11px;
  transition:background .14s ease,border-color .14s ease;
}

.ops-project-row:last-child{border-bottom:0}

.ops-project-row:hover{
  background:#1d3149;
  border-bottom-color:#435b77;
}

.ops-project-primary{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.ops-project-icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid #4a6381;
  border-radius:9px;
  background:linear-gradient(145deg,#29425f,#17283c);
  color:#b6e9ff;
  font-size:12px;
  font-weight:900;
}

.ops-project-primary a{
  display:block;
  overflow:hidden;
  color:#fff;
  font-size:12px;
  font-weight:800;
  text-decoration:none;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ops-project-primary a:hover{text-decoration:underline}

.ops-project-primary small{
  display:block;
  margin-top:4px;
  overflow:hidden;
  color:#8ea1b8;
  font-size:9px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ops-project-client{
  color:#c7d3e2;
  text-decoration:none;
  font-size:10px;
}

.ops-project-client:hover{color:#fff}

.ops-project-value{
  color:#fff;
  font-size:11px;
}

.ops-project-status{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  max-width:100%;
  padding:0 8px;
  border:1px solid #435772;
  border-radius:6px;
  background:#203149;
  color:#ced8e7;
  font-size:9px;
  font-weight:850;
  line-height:1.1;
  white-space:nowrap;
}

.ops-project-status.project-status-development,
.ops-project-status.project-status-client_review{
  color:#a9e7ff;
  border-color:rgba(53,194,255,.35);
  background:rgba(53,194,255,.08);
}

.ops-project-status.project-status-awaiting_signature,
.ops-project-status.project-status-awaiting_deposit,
.ops-project-status.project-status-awaiting_final_approval,
.ops-project-status.project-status-awaiting_final_payment{
  color:#ffe095;
  border-color:rgba(251,191,36,.34);
  background:rgba(251,191,36,.075);
}

.ops-project-status.project-status-complete{
  color:#c7baff;
  border-color:rgba(124,92,255,.38);
  background:rgba(124,92,255,.09);
}

.ops-project-status.project-status-closed{
  color:#9ce8b8;
  border-color:rgba(74,222,128,.32);
  background:rgba(74,222,128,.07);
}

.ops-project-status.project-status-paused{
  color:#a7b2c2;
  border-color:#46556c;
  background:#243247;
}

/* Existing dashboard tables/list rows */
.ops-dashboard-v3 .ops-inquiry-head,
.ops-dashboard-v3 .ops-billing-head{
  border-bottom-color:#40536c;
  background:#203149;
  color:#8fa4bd;
}

.ops-dashboard-v3 .ops-inquiry-row,
.ops-dashboard-v3 .ops-site-row,
.ops-dashboard-v3 .ops-billing-row{
  border-bottom-color:#31465e;
  background:#17283b;
}

.ops-dashboard-v3 .ops-inquiry-row:hover,
.ops-dashboard-v3 .ops-site-row:hover,
.ops-dashboard-v3 .ops-billing-row:hover{
  background:#1d3149;
}

.ops-dashboard-v3 .ops-site-icon{
  border-color:#4a6381;
  background:linear-gradient(145deg,#29425f,#17283c);
  color:#b6e9ff;
}

.ops-dashboard-v3 .ops-site-name,
.ops-dashboard-v3 .ops-billing-row strong,
.ops-dashboard-v3 .ops-inquiry-person strong{
  color:#fff;
}

.ops-dashboard-v3 .ops-site-client,
.ops-dashboard-v3 .ops-inquiry-person small{
  color:#96a9c0;
}

.ops-dashboard-v3 .ops-row-action{
  color:#a8e6ff;
}

/* Right rail */
.ops-dashboard-v3 .ops-console-side{
  top:92px;
}

.ops-dashboard-v3 .ops-notification-item{
  border-bottom-color:#31465e;
  background:#17283b;
}

.ops-dashboard-v3 .ops-notification-item:hover{
  background:#1d3149;
}

.ops-dashboard-v3 .ops-notification-item strong{
  color:#fff;
}

.ops-dashboard-v3 .ops-notification-item p{
  color:#aabacd;
}

.ops-dashboard-v3 .ops-notification-empty{
  background:#17283b;
}

.ops-dashboard-v3 .ops-quick-block{
  padding:0!important;
}

.ops-dashboard-v3 .ops-quick-block h2{
  margin:0;
  padding:17px 18px;
  border-bottom:1px solid #4a607a;
  background:#293f5b;
}

.ops-dashboard-v3 .ops-quick-block a{
  padding:13px 18px;
  border-top:0;
  border-bottom:1px solid #31465e;
  background:#17283b;
  color:#dce6f2;
}

.ops-dashboard-v3 .ops-quick-block a:last-child{border-bottom:0}

.ops-dashboard-v3 .ops-quick-block a:hover{
  background:#1d3149;
}

.ops-dashboard-v3 .ops-quick-block a b{
  color:#87a0bd;
}

@media(max-width:1050px){
  .ops-dashboard-v3 .ops-console-grid{
    grid-template-columns:1fr;
  }

  .ops-dashboard-v3 .ops-console-side{
    position:static;
  }

  .ops-project-head,
  .ops-project-row{
    grid-template-columns:minmax(220px,1.5fr) 1fr minmax(130px,.9fr) 80px auto;
  }
}

@media(max-width:760px){
  .ops-dashboard-v3{
    padding-top:10px;
  }

  .ops-dashboard-v3 .ops-dashboard-header{
    align-items:flex-start;
    flex-direction:column;
  }

  .ops-dashboard-v3 .ops-console-actions{
    width:100%;
  }

  .ops-dashboard-v3 .ops-console-actions .btn{
    flex:1;
  }

  .ops-project-head{
    display:none;
  }

  .ops-project-row{
    grid-template-columns:1fr auto;
    gap:8px 14px;
    padding:16px;
  }

  .ops-project-primary{
    grid-column:1/-1;
  }

  .ops-project-client,
  .ops-project-row>span{
    grid-column:1;
  }

  .ops-project-value,
  .ops-project-row>.ops-row-action{
    grid-column:2;
    justify-self:end;
  }
}


/* ============================================================
   HOTFIX — Operations background + restore Project Operations v3
   ============================================================ */

/* Brighter application backgrounds instead of the near-black global body */
body:has(.ops-dashboard-v3){
  background:
    radial-gradient(circle at 12% 4%,rgba(89,73,184,.18),transparent 31%),
    radial-gradient(circle at 88% 9%,rgba(36,153,196,.13),transparent 31%),
    linear-gradient(135deg,#172239 0%,#111d2d 48%,#0f1c28 100%)!important;
  background-attachment:fixed!important;
}

body:has(.project-console-v3){
  background:
    radial-gradient(circle at 12% 3%,rgba(89,73,184,.17),transparent 30%),
    radial-gradient(circle at 90% 8%,rgba(37,151,194,.12),transparent 31%),
    linear-gradient(135deg,#172239 0%,#111d2d 50%,#10202c 100%)!important;
  background-attachment:fixed!important;
}

/* Restore the newer staff header treatment used by the project console */
.staff-site-nav{
  background:rgba(17,29,46,.96)!important;
  border-bottom:1px solid #3a506c!important;
  box-shadow:0 8px 30px rgba(0,0,0,.14);
}
.staff-site-nav .nav-inner{min-height:78px}
.staff-site-nav .staff-brand-logo{
  width:188px!important;
  max-width:34vw!important;
  height:auto!important;
  filter:none!important;
  background:transparent!important;
}
.staff-site-nav .app-nav-links{gap:6px}
.staff-site-nav .app-nav-links>a,
.staff-site-nav .app-nav-links button{
  position:relative;
  min-height:38px;
  display:inline-flex;
  align-items:center;
  padding:0 13px!important;
  border-radius:9px;
  color:#bcc9da!important;
  font-size:12px;
  font-weight:700;
}
.staff-site-nav .app-nav-links>a:hover,
.staff-site-nav .app-nav-links button:hover{
  background:#223750!important;
  color:#fff!important;
}
.staff-site-nav .app-nav-links>a.is-active{
  background:#29415e!important;
  color:#fff!important;
}
.staff-site-nav .app-nav-links>a.is-active::after{
  content:"";
  position:absolute;
  left:13px;
  right:13px;
  bottom:4px;
  height:2px;
  border-radius:2px;
  background:#57ccff;
}

/* Project Operations */
.project-console-v3{
  max-width:1180px;
  padding-top:18px;
  padding-bottom:70px;
}

.project-console-v3 .project-admin-header{
  padding:18px 0 26px;
  margin-bottom:24px;
  border-bottom:1px solid #405875!important;
}

.project-console-v3 .project-admin-header h1{
  margin:5px 0 6px;
  color:#fff;
  font-size:clamp(36px,4vw,50px);
  line-height:1;
}

.project-console-v3 .project-admin-header p{
  color:#b8c6d8;
}

.project-console-v3 .project-kpis{
  border-color:#405875!important;
  background:#17283c!important;
  box-shadow:0 14px 34px rgba(0,0,0,.10);
}

.project-console-v3 .project-kpis .ops-kpi{
  background:linear-gradient(180deg,#1b2f46,#18283b)!important;
  border-right-color:#40536b!important;
}

.project-console-v3 .project-kpis .ops-kpi-label{
  color:#97aac1!important;
}

.project-console-v3 .project-kpis .ops-kpi small{
  color:#8fa2b9!important;
}

.project-console-v3 .project-admin-card{
  overflow:hidden;
  border:1px solid #405875!important;
  border-radius:15px!important;
  background:#182a3e!important;
  box-shadow:0 12px 30px rgba(0,0,0,.10);
}

.project-console-v3 .project-card-header{
  min-height:60px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:0 18px;
  border-bottom:1px solid #536b86!important;
  background:#304966!important;
}

.project-console-v3 .project-card-header h2{
  margin:0!important;
  color:#fff!important;
  font-size:17px!important;
  font-weight:800;
}

.project-console-v3 .project-section-note{
  padding:12px 18px;
  border-bottom:1px solid #3b506a;
  background:#22364f;
  color:#b3c0d0;
  font-size:10px;
  line-height:1.5;
}

.project-console-v3 .project-setting-row{
  border-bottom-color:#354a63!important;
  background:#182a3e;
}

.project-console-v3 .project-setting-row>span{
  color:#9bacc0!important;
}

.project-console-v3 .revision-table .data-head{
  background:#20344d!important;
  border-bottom-color:#455c76!important;
  color:#95a8bf!important;
}

.project-console-v3 .revision-table .data-row{
  background:#182a3e!important;
  border-bottom-color:#354a63!important;
}

.project-console-v3 .revision-table .data-row:hover{
  background:#1e324a!important;
}

.project-console-v3 .workflow-check-row{
  background:#182a3e;
  border-bottom-color:#354a63!important;
}

.project-console-v3 .workflow-check-row.current{
  background:linear-gradient(90deg,rgba(53,194,255,.10),#1d3047 48%)!important;
}

.project-console-v3 .workflow-check-copy strong{
  color:#fff;
}

.project-console-v3 .workflow-check-copy span{
  color:#a8b8ca!important;
}

/* Ongoing website service card */
.project-console-v3 .monthly-service-card{
  margin-bottom:24px!important;
  border-color:#47718a!important;
}

.project-console-v3 .monthly-service-state{
  display:inline-flex;
  min-height:27px;
  align-items:center;
  padding:0 9px;
  border-radius:999px;
  font-size:9px;
  font-weight:900;
}

.project-console-v3 .monthly-service-state.active{
  color:#9cf0b6;
  border:1px solid rgba(74,222,128,.38);
  background:rgba(74,222,128,.10);
}

.project-console-v3 .monthly-service-state.pending{
  color:#ffe294;
  border:1px solid rgba(251,191,36,.38);
  background:rgba(251,191,36,.09);
}

.project-console-v3 .monthly-service-summary{
  display:grid!important;
  grid-template-columns:1.4fr .8fr .65fr 1.15fr!important;
  border-bottom:1px solid #40566f!important;
  background:#1b2e44!important;
}

.project-console-v3 .monthly-service-summary>div{
  padding:16px 18px!important;
  border-right:1px solid #40566f!important;
}

.project-console-v3 .monthly-service-summary>div:last-child{
  border-right:0!important;
}

.project-console-v3 .monthly-service-summary span{
  display:block;
  margin-bottom:6px;
  color:#91a5bd;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.project-console-v3 .monthly-service-summary strong{
  display:block;
  color:#fff;
  font-size:12px;
}

.project-console-v3 .monthly-service-setup,
.project-console-v3 .monthly-service-success{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:30px!important;
  padding:20px 18px!important;
  background:#1a2d43!important;
}

.project-console-v3 .monthly-service-setup strong,
.project-console-v3 .monthly-service-success strong{
  display:block;
  color:#fff;
  font-size:13px;
}

.project-console-v3 .monthly-service-setup p,
.project-console-v3 .monthly-service-success p{
  max-width:760px;
  margin:5px 0 0;
  color:#b5c2d2;
  font-size:11px;
  line-height:1.6;
}

.project-console-v3 .monthly-service-send{
  white-space:nowrap;
}

.project-console-v3 .monthly-service-success{
  background:rgba(74,222,128,.055)!important;
}

.project-console-v3 .monthly-service-check{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid rgba(74,222,128,.35);
  border-radius:50%;
  background:rgba(74,222,128,.10);
  color:#9cf0b6;
  font-weight:900;
}

.project-console-v3 .monthly-service-missing{
  padding:20px 18px;
  background:#1a2d43;
}

.project-console-v3 .monthly-service-missing strong{
  display:block;
  color:#fff;
  font-size:13px;
}

.project-console-v3 .monthly-service-missing p{
  margin:5px 0 14px;
  color:#aebdd0;
  font-size:11px;
}

.project-console-v3 .monthly-service-finalize{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:18px!important;
  border-top:1px solid #40566f!important;
  background:#22364f!important;
}

.project-console-v3 .monthly-service-finalize strong{
  display:block;
  color:#fff;
  font-size:12px;
}

.project-console-v3 .monthly-service-finalize p{
  margin:5px 0 0;
  color:#aab9cb;
  font-size:10px;
  line-height:1.5;
}

/* Make the operations page itself feel like the same product */
.ops-dashboard-v3 .ops-console-main,
.ops-dashboard-v3 .ops-console-side{
  position:relative;
  z-index:1;
}

.ops-dashboard-v3 .ops-dashboard-card{
  box-shadow:
    0 14px 34px rgba(0,0,0,.11),
    inset 0 1px 0 rgba(255,255,255,.015)!important;
}

@media(max-width:900px){
  .project-console-v3 .monthly-service-summary{
    grid-template-columns:1fr 1fr!important;
  }

  .project-console-v3 .monthly-service-summary>div:nth-child(2n){
    border-right:0!important;
  }

  .project-console-v3 .monthly-service-setup,
  .project-console-v3 .monthly-service-success,
  .project-console-v3 .monthly-service-finalize{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
}

@media(max-width:720px){
  .staff-site-nav .nav-inner{
    min-height:auto;
    padding:12px 0!important;
  }

  .staff-site-nav .staff-brand-logo{
    width:150px!important;
  }

  .project-console-v3 .monthly-service-summary{
    grid-template-columns:1fr!important;
  }

  .project-console-v3 .monthly-service-summary>div{
    border-right:0!important;
  }

  .project-console-v3 .monthly-service-send,
  .project-console-v3 .monthly-service-finalize form,
  .project-console-v3 .monthly-service-finalize .btn{
    width:100%;
  }
}


/* ============================================================
   Project Inquiries + Client Intake v3
   Scoped refresh — no unrelated page overrides
   ============================================================ */

/* Match the brighter Operations / Project backgrounds */
body:has(.inquiry-admin-v3),
body:has(.inquiry-detail-v3),
body:has(.client-intake-v3){
  background:
    radial-gradient(circle at 12% 4%,rgba(89,73,184,.18),transparent 31%),
    radial-gradient(circle at 88% 9%,rgba(36,153,196,.13),transparent 31%),
    linear-gradient(135deg,#172239 0%,#111d2d 48%,#0f1c28 100%)!important;
  background-attachment:fixed!important;
}

/* ---------- Shared inquiry headers ---------- */
.inquiry-admin-v3 .app-header,
.inquiry-detail-v3 .app-header,
.client-intake-v3 .app-header{
  padding:24px 0 28px;
  margin-bottom:24px;
  border-bottom:1px solid #405875;
}

.inquiry-admin-v3 .app-header h1,
.inquiry-detail-v3 .app-header h1,
.client-intake-v3 .app-header h1{
  color:#fff;
  font-size:clamp(38px,4vw,52px);
  font-weight:850;
  line-height:1;
  letter-spacing:-.04em;
}

.inquiry-admin-v3 .app-header p,
.inquiry-detail-v3 .app-header p,
.client-intake-v3 .app-header p{
  color:#b4c3d5;
}

/* ---------- Project inquiries list ---------- */
.inquiry-admin-v3 .compact-metrics{
  border-color:#405875;
  background:#17283c;
  box-shadow:0 14px 34px rgba(0,0,0,.10);
}

.inquiry-admin-v3 .compact-metrics>div{
  background:linear-gradient(180deg,#1b2f46,#18283b);
  border-right-color:#40536b;
}

.inquiry-admin-v3 .compact-metrics span{
  color:#91a5bd;
  font-weight:800;
}

.inquiry-admin-v3 .compact-metrics strong{
  color:#fff;
}

.inquiry-admin-v3 .inquiry-filter-bar{
  padding:16px;
  border:1px solid #405875;
  border-radius:14px;
  background:#1a2c41;
  box-shadow:0 10px 26px rgba(0,0,0,.08);
}

.inquiry-admin-v3 .inquiry-filter-bar label{
  color:#a8b9cc;
  font-weight:800;
}

.inquiry-admin-v3 .inquiry-filter-bar input,
.inquiry-admin-v3 .inquiry-filter-bar select{
  border-color:#49617e;
  background:#132238;
}

.inquiry-admin-v3 .inquiry-data-panel{
  border-color:#405875!important;
  background:#182a3e!important;
  box-shadow:0 12px 30px rgba(0,0,0,.10);
}

.inquiry-admin-v3 .data-panel-head{
  min-height:62px;
  border-bottom-color:#536b86;
  background:#304966;
}

.inquiry-admin-v3 .data-panel-head h2{
  color:#fff;
  font-weight:800;
}

.inquiry-admin-v3 .data-panel-head p{
  color:#b4c3d5;
}

.inquiry-admin-v3 .inquiry-admin-table .rt-head{
  background:#20344d;
  border-bottom-color:#455c76;
  color:#95a8bf;
}

.inquiry-admin-v3 .inquiry-admin-table .rt-row{
  background:#182a3e;
  border-bottom-color:#354a63;
}

.inquiry-admin-v3 .inquiry-admin-table .rt-row:hover{
  background:#1e324a;
}

.inquiry-admin-v3 .inquiry-admin-table .rt-primary a{
  color:#fff;
  font-weight:800;
}

.inquiry-admin-v3 .inquiry-admin-table small{
  color:#93a7bf;
}

/* ---------- Inquiry detail ---------- */
.inquiry-detail-v3 .eyebrow{
  color:#64d0ff;
}

.inquiry-detail-v3 .inquiry-card,
.inquiry-detail-v3 .inquiry-security-note{
  border:1px solid #405875!important;
  border-radius:14px!important;
  background:#182a3e!important;
  box-shadow:0 12px 30px rgba(0,0,0,.09);
  overflow:hidden;
}

.inquiry-detail-v3 .inquiry-card .data-panel-head{
  min-height:62px;
  border-bottom:1px solid #536b86;
  background:#304966;
}

.inquiry-detail-v3 .inquiry-card .data-panel-head h2,
.inquiry-detail-v3 .inquiry-card>h2{
  color:#fff;
  font-weight:800;
}

.inquiry-detail-v3 .inquiry-card .data-panel-head p{
  color:#b4c3d5;
}

.inquiry-detail-v3 .inquiry-detail-table{
  background:#182a3e;
}

.inquiry-detail-v3 .inquiry-detail-table>div{
  border-bottom-color:#354a63;
}

.inquiry-detail-v3 .inquiry-detail-table span,
.inquiry-detail-v3 .inquiry-project-meta span,
.inquiry-detail-v3 .inquiry-copy-block>span{
  color:#95a8bf;
}

.inquiry-detail-v3 .inquiry-detail-table strong,
.inquiry-detail-v3 .inquiry-project-meta strong{
  color:#fff;
}

.inquiry-detail-v3 .inquiry-project-summary{
  background:#182a3e;
}

.inquiry-detail-v3 .inquiry-project-meta{
  border-color:#49617e;
  background:#20344d;
}

.inquiry-detail-v3 .inquiry-project-meta>div{
  border-right-color:#49617e;
}

.inquiry-detail-v3 .inquiry-copy-block{
  border-top:1px solid #354a63;
  padding:18px 0;
}

.inquiry-detail-v3 .inquiry-copy-block:first-of-type{
  border-top:0;
}

.inquiry-detail-v3 .inquiry-copy-block p{
  color:#d5deea;
  line-height:1.65;
}

.inquiry-detail-v3 .panel-form{
  background:#182a3e;
}

.inquiry-detail-v3 .panel-form label{
  color:#d8e2ef;
  font-weight:700;
}

.inquiry-detail-v3 .panel-form select{
  border-color:#49617e;
  background:#132238;
}

.inquiry-detail-v3 .ops-quick-block{
  padding:0!important;
}

.inquiry-detail-v3 .ops-quick-block h2{
  margin:0;
  padding:17px 18px;
  border-bottom:1px solid #536b86;
  background:#304966;
  color:#fff;
}

.inquiry-detail-v3 .ops-quick-block a{
  padding:13px 18px;
  border-top:0;
  border-bottom:1px solid #354a63;
  background:#182a3e;
  color:#dce6f2;
}

.inquiry-detail-v3 .ops-quick-block a:last-child{
  border-bottom:0;
}

.inquiry-detail-v3 .ops-quick-block a:hover{
  background:#1e324a;
}

.inquiry-detail-v3 .inquiry-security-note{
  padding:18px;
}

.inquiry-detail-v3 .inquiry-security-note strong{
  color:#fff;
}

.inquiry-detail-v3 .inquiry-security-note p{
  color:#aab9cb;
  line-height:1.55;
}

/* ---------- New Client intake ---------- */
.client-intake-v3 .intake-required-note{
  padding:12px 0 18px;
  color:#b5c3d4;
}

.client-intake-v3 .structured-form{
  border-top:0;
}

.client-intake-v3 .form-section{
  margin-bottom:18px;
  padding:0;
  border:1px solid #405875;
  border-radius:14px;
  background:#182a3e;
  overflow:hidden;
}

.client-intake-v3 .form-section-copy{
  padding:20px 18px;
  background:#263d58;
  border-right:1px solid #536b86;
}

.client-intake-v3 .form-section-copy h2{
  color:#fff;
  font-size:16px;
  font-weight:800;
}

.client-intake-v3 .form-section-copy p{
  color:#b4c3d5;
}

.client-intake-v3 .form-fields{
  padding:18px;
}

.client-intake-v3 input,
.client-intake-v3 textarea,
.client-intake-v3 select{
  border-color:#49617e;
  background:#132238;
}

.client-intake-v3 .section-toggle,
.client-intake-v3 .toggle-line{
  color:#eef5ff;
}

.client-intake-v3 .section-toggle{
  border-color:#49617e;
  background:#20344d;
}

.client-intake-v3 .section-toggle:hover{
  background:#263d58;
  border-color:#607a99;
}

.client-intake-v3 .conditional-section,
.client-intake-v3 .conditional-subsection{
  margin-top:14px;
}

.client-intake-v3 .conditional-section[hidden],
.client-intake-v3 .conditional-subsection[hidden]{
  display:none!important;
}

.client-intake-v3 .proposal-options{
  border-color:#405875;
}

.client-intake-v3 .upload-panel,
.client-intake-v3 .paste-panel{
  border-color:#49617e;
  background:#15263b;
}

.client-intake-v3 .form-actions{
  padding:8px 0 24px;
}

@media(max-width:850px){
  .client-intake-v3 .form-section{
    grid-template-columns:1fr;
  }

  .client-intake-v3 .form-section-copy{
    border-right:0;
    border-bottom:1px solid #536b86;
  }
}


/* ============================================================
   Client Detail v3 — brighter operations styling
   Scoped to client detail only
   ============================================================ */

body:has(.client-detail-v3){
  background:
    radial-gradient(circle at 12% 4%,rgba(89,73,184,.18),transparent 31%),
    radial-gradient(circle at 88% 9%,rgba(36,153,196,.13),transparent 31%),
    linear-gradient(135deg,#172239 0%,#111d2d 48%,#0f1c28 100%)!important;
  background-attachment:fixed!important;
}

.client-detail-v3{
  max-width:1180px;
  padding:20px 0 70px;
}

.client-detail-v3 .app-header{
  padding:22px 0 28px;
  margin-bottom:22px;
  border-bottom:1px solid #405875;
}

.client-detail-v3 .app-header h1{
  color:#fff;
  font-size:clamp(40px,4vw,54px);
  font-weight:850;
  line-height:1;
  letter-spacing:-.045em;
}

.client-detail-v3 .app-header p{
  margin-top:8px;
  color:#b5c4d6;
  font-size:13px;
}

.client-detail-v3 .app-back{
  color:#9aacc2;
}

.client-detail-v3 .app-back:hover{
  color:#d8f1ff;
}

/* KPI strip */
.client-detail-v3 .client-detail-metrics{
  margin-bottom:22px;
  border:1px solid #405875;
  border-radius:14px;
  background:#17283c;
  box-shadow:0 14px 34px rgba(0,0,0,.10);
}

.client-detail-v3 .client-detail-metrics>div{
  padding:17px 18px;
  border-right-color:#40536b;
  background:linear-gradient(180deg,#1b2f46,#18283b);
}

.client-detail-v3 .client-detail-metrics span{
  color:#93a7bf;
  font-size:10px;
  font-weight:800;
}

.client-detail-v3 .client-detail-metrics strong{
  color:#fff;
  font-size:27px;
  font-weight:850;
}

/* Main section cards */
.client-detail-v3 .client-detail-card{
  border:1px solid #405875!important;
  border-radius:14px!important;
  background:#182a3e!important;
  box-shadow:0 12px 30px rgba(0,0,0,.09);
  overflow:hidden;
}

.client-detail-v3 .client-detail-card .data-panel-head{
  min-height:62px;
  padding:15px 17px;
  border-bottom:1px solid #536b86;
  background:#304966;
}

.client-detail-v3 .client-detail-card .data-panel-head h2{
  margin:0;
  color:#fff;
  font-size:16px;
  font-weight:800;
}

.client-detail-v3 .client-detail-card .data-panel-head p{
  margin:3px 0 0;
  color:#b3c2d4;
  font-size:10px;
}

/* Tables */
.client-detail-v3 .client-detail-card .rt-head{
  background:#20344d;
  border-bottom-color:#455c76;
  color:#95a8bf;
  font-weight:800;
}

.client-detail-v3 .client-detail-card .rt-row{
  background:#182a3e;
  border-bottom-color:#354a63;
  color:#dfe7f2;
}

.client-detail-v3 .client-detail-card .rt-row:hover{
  background:#1e324a;
}

.client-detail-v3 .client-detail-card .rt-primary,
.client-detail-v3 .client-detail-card .rt-primary a,
.client-detail-v3 .client-detail-card strong{
  color:#fff;
}

.client-detail-v3 .client-detail-card .rt-row span{
  color:#d4deea;
}

.client-detail-v3 .client-detail-card .rt-row small{
  color:#90a4bc;
}

.client-detail-v3 .client-detail-card .rt-action a{
  color:#a8e6ff;
}

.client-detail-v3 .client-detail-card .rt-action a:hover{
  color:#d9f5ff;
}

/* Status pills */
.client-detail-v3 .table-state{
  border-color:#4a5f78;
  background:#203149;
  color:#cbd6e5;
}

.client-detail-v3 .table-state.good{
  color:#9cf0b6;
  border-color:rgba(74,222,128,.36);
  background:rgba(74,222,128,.09);
}

.client-detail-v3 .table-state.info{
  color:#a8e7ff;
  border-color:rgba(53,194,255,.34);
  background:rgba(53,194,255,.08);
}

.client-detail-v3 .table-state.warning,
.client-detail-v3 .table-state.attention{
  color:#ffe294;
  border-color:rgba(251,191,36,.34);
  background:rgba(251,191,36,.08);
}

.client-detail-v3 .table-state.bad{
  color:#ffb0bf;
  border-color:rgba(251,113,133,.34);
  background:rgba(251,113,133,.08);
}

.client-detail-v3 .table-state.muted{
  color:#9eacbf;
  border-color:#47576c;
  background:#253448;
}

/* Health */
.client-detail-v3 .health-text{
  color:#d7e1ed;
}

/* Two-column service / billing cards */
.client-detail-v3 .two-panel-grid{
  gap:20px;
}

.client-detail-v3 .mini-table .rt-row strong{
  color:#fff;
}

/* Requests */
.client-detail-v3 .request-table .rt-row{
  min-height:50px;
}

/* Activity */
.client-detail-v3 .activity-feed{
  padding:0 17px;
  background:#182a3e;
}

.client-detail-v3 .activity-line{
  border-bottom-color:#354a63;
  padding:15px 0;
}

.client-detail-v3 .activity-line strong{
  color:#fff;
}

.client-detail-v3 .activity-line p{
  color:#aebdd0;
}

.client-detail-v3 .activity-line small{
  color:#7f93ab;
}

.client-detail-v3 .activity-line a{
  color:#a8e6ff;
  font-weight:700;
}

.client-detail-v3 .activity-dot{
  background:#6bcdf7;
  box-shadow:0 0 10px rgba(53,194,255,.28);
}

/* Empty states */
.client-detail-v3 .table-empty{
  padding:24px 18px;
  color:#93a5bb;
  background:#182a3e;
}

/* Improve section spacing */
.client-detail-v3>.data-panel,
.client-detail-v3>.two-panel-grid{
  margin-bottom:20px;
}

@media(max-width:900px){
  .client-detail-v3 .two-panel-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:720px){
  .client-detail-v3{
    padding-top:10px;
  }

  .client-detail-v3 .app-header{
    align-items:flex-start;
    flex-direction:column;
  }

  .client-detail-v3 .client-detail-metrics{
    grid-template-columns:1fr 1fr;
  }

  .client-detail-v3 .client-detail-metrics>div{
    border-bottom:1px solid #40536b;
  }
}


/* ============================================================
   Client Portal v3 — unified brighter portal styling
   Scoped to portal pages only
   ============================================================ */

body:has(.portal-page-v3){
  background:
    radial-gradient(circle at 12% 4%,rgba(89,73,184,.18),transparent 31%),
    radial-gradient(circle at 88% 9%,rgba(36,153,196,.13),transparent 31%),
    linear-gradient(135deg,#172239 0%,#111d2d 48%,#0f1c28 100%)!important;
  background-attachment:fixed!important;
}

.portal-page-v3{
  max-width:1100px;
  padding-top:24px;
  padding-bottom:72px;
}

/* Shared page headers */
.portal-page-v3 .client-header,
.portal-revision-v3 .revision-page-header{
  padding:22px 0 28px;
  margin-bottom:22px;
  border-bottom:1px solid #405875;
}

.portal-page-v3 .client-header h1,
.portal-revision-v3 .revision-page-header h1{
  margin:5px 0 7px;
  color:#fff;
  font-size:clamp(38px,4vw,52px);
  line-height:1;
  letter-spacing:-.04em;
  font-weight:850;
}

.portal-page-v3 .client-header p,
.portal-revision-v3 .revision-page-header p{
  color:#b5c4d6;
  font-size:13px;
}

.portal-page-v3 .app-back,
.portal-revision-v3 .text-action{
  color:#9fb2c9;
  font-weight:700;
}

.portal-page-v3 .app-back:hover,
.portal-revision-v3 .text-action:hover{
  color:#d9f4ff;
}

/* Shared cards + headers */
.portal-page-v3 .portal-card-v3,
.portal-page-v3 .client-focus,
.portal-page-v3 .client-support-strip,
.portal-page-v3 .client-action-strip,
.portal-page-v3 .document-summary,
.portal-page-v3 .signer-line,
.portal-revision-v3 .revision-guide,
.portal-revision-v3 .revision-workspace-panel,
.portal-revision-v3 .revision-final-submit,
.portal-revision-v3 .notice{
  border:1px solid #405875!important;
  border-radius:15px!important;
  background:#182a3e!important;
  box-shadow:0 12px 30px rgba(0,0,0,.10);
  overflow:hidden;
}

.portal-page-v3 .client-section-head{
  min-height:60px;
  padding:15px 17px;
  border-bottom:1px solid #536b86!important;
  background:#304966!important;
}

.portal-page-v3 .client-section-head h2{
  margin:0;
  color:#fff!important;
  font-size:16px;
  font-weight:800;
}

.portal-page-v3 .client-section-head p{
  color:#b4c3d5!important;
}

.portal-page-v3 .client-section-head a{
  color:#a9e8ff;
  font-weight:700;
}

/* Shared portal tables */
.portal-page-v3 .client-table{
  background:#182a3e;
}

.portal-page-v3 .client-table-head{
  background:#20344d!important;
  border-bottom:1px solid #455c76!important;
  color:#95a8bf!important;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.portal-page-v3 .client-row{
  border-bottom:1px solid #354a63!important;
  background:#182a3e!important;
  color:#dbe5f0;
}

.portal-page-v3 .client-row:last-child{
  border-bottom:0!important;
}

.portal-page-v3 .client-row:hover{
  background:#1e324a!important;
}

.portal-page-v3 .client-row strong{
  color:#fff;
}

.portal-page-v3 .client-row span,
.portal-page-v3 .client-row small{
  color:#aebed0;
}

.portal-page-v3 .client-row a{
  color:#a8e6ff;
  font-weight:700;
}

.portal-page-v3 .client-empty{
  padding:24px 18px;
  background:#182a3e;
  color:#96a9c0;
}

/* Overview */
.portal-dashboard-v3 .client-focus{
  margin-bottom:22px;
  padding:20px;
  background:
    linear-gradient(135deg,rgba(124,92,255,.10),rgba(53,194,255,.05)),
    #1a2d43!important;
  border-color:#4d6684!important;
}

.portal-dashboard-v3 .client-focus-top{
  padding-bottom:13px;
  border-bottom:1px solid #405875;
}

.portal-dashboard-v3 .client-step-label{
  color:#9eb1c8;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.portal-dashboard-v3 .client-focus h2{
  margin:16px 0 15px;
  color:#fff;
  font-size:23px;
  font-weight:850;
}

.portal-dashboard-v3 .client-next-step{
  padding:16px 0;
  border-top:1px solid #344b64;
  border-bottom:1px solid #344b64;
}

.portal-dashboard-v3 .client-next-step strong{
  color:#fff;
  font-size:13px;
}

.portal-dashboard-v3 .client-next-step p{
  margin:4px 0 0;
  color:#b5c3d4;
  line-height:1.55;
}

.portal-dashboard-v3 .client-detail-link{
  display:inline-block;
  margin-top:14px;
  color:#a8e6ff;
  font-weight:700;
}

.portal-dashboard-v3 .updates-table .client-row.unread{
  background:linear-gradient(90deg,rgba(53,194,255,.075),#182a3e)!important;
}

.portal-dashboard-v3 .update-dot{
  background:#56cfff;
  box-shadow:0 0 10px rgba(53,194,255,.3);
}

/* Billing */
.portal-billing-v3 .client-header .btn.secondary{
  background:#21364f;
  border-color:#4d6684;
  color:#eef6ff;
}

.portal-billing-v3 .billing-client-table .client-row,
.portal-billing-v3 .service-client-table .client-row{
  min-height:54px;
}

/* Project progress */
.portal-project-v3 .progress-list{
  background:#182a3e;
}

.portal-project-v3 .progress-line{
  border-bottom:1px solid #354a63;
  background:#182a3e;
}

.portal-project-v3 .progress-line.current{
  background:linear-gradient(90deg,rgba(53,194,255,.09),#1c3048 55%)!important;
}

.portal-project-v3 .progress-line.done{
  opacity:.78;
}

.portal-project-v3 .progress-line strong{
  color:#fff;
}

.portal-project-v3 .progress-line p{
  color:#aab9cb;
}

.portal-project-v3 .progress-line.current>span{
  color:#9fe4ff;
  border-color:rgba(53,194,255,.35);
  background:rgba(53,194,255,.08);
}

.portal-project-v3 .client-action-strip{
  margin-bottom:20px;
  padding:18px;
  background:#20344d!important;
}

.portal-project-v3 .client-action-strip.attention{
  border-color:#5c5f83!important;
  background:
    linear-gradient(135deg,rgba(124,92,255,.10),rgba(53,194,255,.04)),
    #20344d!important;
}

.portal-project-v3 .client-action-strip strong{
  color:#fff;
}

.portal-project-v3 .client-action-strip p{
  color:#b6c3d3;
}

/* Proposal */
.portal-proposal-v3 .document-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  margin-bottom:20px;
  background:#20344d!important;
}

.portal-proposal-v3 .document-summary>div{
  padding:18px;
  border-right:1px solid #4a617c;
}

.portal-proposal-v3 .document-summary>div:last-child{
  border-right:0;
}

.portal-proposal-v3 .document-summary span{
  display:block;
  margin-bottom:5px;
  color:#91a5bd;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.portal-proposal-v3 .document-summary strong{
  color:#fff;
  font-size:19px;
}

.portal-proposal-v3 .document-body{
  padding:22px;
  background:#182a3e;
  color:#d9e2ed;
  line-height:1.75;
}

.portal-proposal-v3 .document-action{
  padding:16px 18px;
  border-top:1px solid #405875;
  background:#20344d;
}

/* Signature */
.portal-sign-v3 .signer-line{
  display:grid;
  grid-template-columns:1fr 1fr;
  margin-bottom:20px;
  background:#20344d!important;
}

.portal-sign-v3 .signer-line>div{
  padding:18px;
  border-right:1px solid #4a617c;
}

.portal-sign-v3 .signer-line>div:last-child{
  border-right:0;
}

.portal-sign-v3 .signer-line span{
  display:block;
  margin-bottom:5px;
  color:#91a5bd;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.portal-sign-v3 .signer-line strong{
  color:#fff;
}

.portal-sign-v3 .client-form{
  padding:22px;
  background:#182a3e;
}

.portal-sign-v3 .client-form label{
  color:#eef5ff;
  font-weight:700;
}

.portal-sign-v3 .client-form input,
.portal-sign-v3 .client-form textarea,
.portal-sign-v3 .client-form select{
  border-color:#49617e;
  background:#132238;
}

.portal-sign-v3 .signature-pad{
  width:100%;
  max-width:100%;
  border:1px solid #55708d;
  border-radius:10px;
  background:#fff;
}

.portal-sign-v3 .agreement-check{
  margin:16px 0;
  padding:14px;
  border:1px solid #435b76;
  border-radius:10px;
  background:#20344d;
}

/* Requests */
.portal-requests-v3 .client-message{
  margin-bottom:20px;
  border:1px solid #5a6383;
  border-radius:13px;
  background:#21344d;
  color:#dfe7f1;
}

.portal-requests-v3 .client-message strong{
  color:#fff;
}

.portal-requests-v3 .requests-client-table .client-row{
  min-height:54px;
}

/* Website */
.portal-website-v3 .environment-table{
  background:#182a3e;
}

.portal-website-v3 .environment-entry{
  padding:20px 18px;
  border-bottom:1px solid #354a63;
}

.portal-website-v3 .environment-entry:last-child{
  border-bottom:0;
}

.portal-website-v3 .environment-entry strong{
  color:#fff;
  font-size:14px;
}

.portal-website-v3 .environment-entry p{
  color:#acbbcd;
}

.portal-website-v3 .availability-text{
  color:#8fa3bb;
}

.portal-website-v3 .status-table{
  background:#182a3e;
}

.portal-website-v3 .status-table>div{
  border-bottom:1px solid #354a63;
}

.portal-website-v3 .status-table span{
  color:#97a9bf;
}

.portal-website-v3 .status-table strong{
  color:#fff;
}

/* Revision workspace */
.portal-revision-v3{
  max-width:1180px;
  padding-top:24px;
  padding-bottom:72px;
}

.portal-revision-v3 .revision-guide{
  padding:18px;
  margin-bottom:20px;
  background:#20344d!important;
}

.portal-revision-v3 .revision-guide>strong{
  color:#fff;
}

.portal-revision-v3 .revision-guide-steps span{
  color:#d3deea;
}

.portal-revision-v3 .revision-workspace-panel{
  background:#182a3e!important;
}

.portal-revision-v3 .revision-workspace-head{
  padding:17px 18px;
  border-bottom:1px solid #536b86;
  background:#304966!important;
}

.portal-revision-v3 .revision-workspace-head h2{
  color:#fff;
}

.portal-revision-v3 .revision-workspace-head p{
  color:#b4c3d5;
}

.portal-revision-v3 .revision-table-head{
  background:#20344d!important;
  border-bottom:1px solid #455c76!important;
  color:#95a8bf!important;
}

.portal-revision-v3 .revision-table-item{
  border-bottom:1px solid #354a63!important;
  background:#182a3e!important;
}

.portal-revision-v3 .revision-table-row{
  background:#182a3e!important;
}

.portal-revision-v3 .revision-table-item:hover .revision-table-row{
  background:#1e324a!important;
}

.portal-revision-v3 .revision-table-issue strong{
  color:#fff;
}

.portal-revision-v3 .revision-edit-drawer{
  border-top:1px solid #405875;
  background:#20344d!important;
}

.portal-revision-v3 .revision-expanded-form input,
.portal-revision-v3 .revision-expanded-form textarea,
.portal-revision-v3 .revision-add-form-modal input,
.portal-revision-v3 .revision-add-form-modal textarea{
  border-color:#49617e;
  background:#132238;
}

.portal-revision-v3 .revision-expanded-form label,
.portal-revision-v3 .revision-add-form-modal label{
  color:#dfe8f3;
}

.portal-revision-v3 .revision-file-section,
.portal-revision-v3 .revision-upload-section{
  border-color:#445d78!important;
  background:#182a3e!important;
}

.portal-revision-v3 .revision-final-submit{
  margin-top:20px;
  padding:20px;
  background:
    linear-gradient(135deg,rgba(124,92,255,.10),rgba(53,194,255,.05)),
    #20344d!important;
}

.portal-revision-v3 .revision-final-submit h2,
.portal-revision-v3 .revision-final-submit strong{
  color:#fff;
}

.portal-revision-v3 .revision-final-submit p{
  color:#b4c3d5;
}

.portal-revision-v3 .revision-modal{
  border:1px solid #536b86;
  background:#1b2d43!important;
  box-shadow:0 24px 70px rgba(0,0,0,.45);
}

.portal-revision-v3 .revision-modal h2{
  color:#fff;
}

.portal-revision-v3 .revision-modal p{
  color:#b7c4d4;
}

.portal-revision-v3 .revision-modal-warning{
  border-color:#625e83;
  background:#263451;
  color:#dce5ef;
}

.portal-revision-v3 .revision-empty-state{
  background:#182a3e!important;
  color:#a8b7c8;
}

/* Shared portal support strip */
.portal-page-v3 .client-support-strip{
  margin-top:20px;
  padding:18px;
  background:#20344d!important;
}

.portal-page-v3 .client-support-strip strong{
  color:#fff;
}

.portal-page-v3 .client-support-strip p{
  color:#b3c1d2;
}

/* Shared buttons feel more substantial */
.portal-page-v3 .btn,
.portal-revision-v3 .btn{
  min-height:40px;
  border-radius:9px;
  font-weight:800;
}

/* Responsive portal */
@media(max-width:800px){
  .portal-page-v3{
    padding-top:12px;
  }

  .portal-page-v3 .client-header,
  .portal-revision-v3 .revision-page-header{
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
  }

  .portal-proposal-v3 .document-summary,
  .portal-sign-v3 .signer-line{
    grid-template-columns:1fr;
  }

  .portal-proposal-v3 .document-summary>div,
  .portal-sign-v3 .signer-line>div{
    border-right:0;
    border-bottom:1px solid #4a617c;
  }

  .portal-proposal-v3 .document-summary>div:last-child,
  .portal-sign-v3 .signer-line>div:last-child{
    border-bottom:0;
  }

  .portal-dashboard-v3 .client-next-step,
  .portal-project-v3 .client-action-strip,
  .portal-page-v3 .client-support-strip,
  .portal-revision-v3 .revision-final-submit{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* Stripe payment return confirmation */
.portal-payment-message{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 20px;
  padding:16px 18px;
  border:1px solid #4a617c;
  border-radius:13px;
  background:#20344d;
  box-shadow:0 10px 26px rgba(0,0,0,.08);
}
.portal-payment-message strong{
  display:block;
  color:#fff;
  font-size:14px;
}
.portal-payment-message p{
  margin:4px 0 0;
  color:#b8c5d5;
  font-size:11px;
  line-height:1.5;
}
.portal-payment-message.success{
  border-color:rgba(74,222,128,.38);
  background:rgba(38,88,67,.42);
}
.portal-payment-message.warning{
  border-color:rgba(251,191,36,.38);
  background:rgba(91,70,29,.38);
}
.portal-payment-message.error{
  border-color:rgba(251,113,133,.38);
  background:rgba(91,39,50,.38);
}
.portal-payment-message.neutral{
  border-color:#4a617c;
}
.portal-payment-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid rgba(74,222,128,.42);
  border-radius:50%;
  background:rgba(74,222,128,.11);
  color:#9cf0b6;
  font-weight:900;
}


/* ============================================================
   Admin Revision + Website Operations v3
   ============================================================ */

body:has(.revision-admin-v3),
body:has(.website-admin-v3){
  background:
    radial-gradient(circle at 12% 4%,rgba(89,73,184,.18),transparent 31%),
    radial-gradient(circle at 88% 9%,rgba(36,153,196,.13),transparent 31%),
    linear-gradient(135deg,#172239 0%,#111d2d 48%,#0f1c28 100%)!important;
  background-attachment:fixed!important;
}

.revision-admin-v3,
.website-admin-v3{
  max-width:1180px;
  padding:20px 0 72px;
}

.revision-admin-v3 .app-header,
.website-admin-v3 .app-header{
  padding:22px 0 28px;
  margin-bottom:22px;
  border-bottom:1px solid #405875;
}

.revision-admin-v3 .app-header h1,
.website-admin-v3 .app-header h1{
  margin:5px 0 7px;
  color:#fff;
  font-size:clamp(40px,4vw,54px);
  line-height:1;
  letter-spacing:-.045em;
  font-weight:850;
}

.revision-admin-v3 .app-header p,
.website-admin-v3 .app-header p{
  color:#b5c4d6;
}

/* Shared metrics */
.revision-admin-v3 .compact-metrics,
.website-admin-v3 .compact-metrics{
  margin-bottom:22px;
  border:1px solid #405875;
  border-radius:14px;
  background:#17283c;
  box-shadow:0 14px 34px rgba(0,0,0,.10);
}

.revision-admin-v3 .compact-metrics>div,
.website-admin-v3 .compact-metrics>div{
  padding:17px 18px;
  border-right-color:#40536b;
  background:linear-gradient(180deg,#1b2f46,#18283b);
}

.revision-admin-v3 .compact-metrics span,
.website-admin-v3 .compact-metrics span{
  color:#93a7bf;
  font-size:10px;
  font-weight:800;
}

.revision-admin-v3 .compact-metrics strong,
.website-admin-v3 .compact-metrics strong{
  color:#fff;
}

/* Shared admin cards */
.revision-admin-v3 .revision-admin-card,
.website-admin-v3 .website-admin-card{
  margin-bottom:20px;
  overflow:hidden;
  border:1px solid #405875!important;
  border-radius:15px!important;
  background:#182a3e!important;
  box-shadow:0 12px 30px rgba(0,0,0,.09);
}

.revision-admin-v3 .data-panel-head,
.website-admin-v3 .data-panel-head{
  min-height:62px;
  padding:15px 18px;
  border-bottom:1px solid #536b86!important;
  background:#304966!important;
}

.revision-admin-v3 .data-panel-head h2,
.website-admin-v3 .data-panel-head h2{
  color:#fff!important;
  font-size:17px;
  font-weight:800;
}

.revision-admin-v3 .data-panel-head p,
.website-admin-v3 .data-panel-head p{
  color:#b4c3d5!important;
}

/* ---------------- Revision workflow ---------------- */
.revision-status-pill{
  min-width:82px;
  justify-content:center;
}

.revision-stage-banner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:20px;
  padding:18px;
  border:1px solid #526b87;
  border-radius:14px;
  background:#20344d;
}

.revision-stage-banner.attention{
  border-color:rgba(251,191,36,.35);
  background:
    linear-gradient(135deg,rgba(251,191,36,.07),transparent),
    #20344d;
}

.revision-stage-banner.working{
  border-color:rgba(53,194,255,.35);
  background:
    linear-gradient(135deg,rgba(53,194,255,.08),transparent),
    #20344d;
}

.revision-stage-banner.success{
  border-color:rgba(74,222,128,.34);
  background:
    linear-gradient(135deg,rgba(74,222,128,.07),transparent),
    #20344d;
}

.revision-stage-kicker{
  display:block;
  margin-bottom:5px;
  color:#8fdcff;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.revision-stage-banner strong{
  display:block;
  color:#fff;
  font-size:14px;
}

.revision-stage-banner p{
  margin:5px 0 0;
  color:#b4c3d4;
  font-size:11px;
  line-height:1.55;
}

.revision-admin-list{
  background:#182a3e;
}

.revision-admin-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);
  gap:24px;
  padding:20px 18px;
  border-bottom:1px solid #354a63;
}

.revision-admin-row:last-child{
  border-bottom:0;
}

.revision-request{
  display:flex;
  align-items:flex-start;
  gap:12px;
}

.revision-index,
.revision-task-number{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid #4d6684;
  border-radius:8px;
  background:#20344d;
  color:#a8e6ff;
  font-weight:900;
}

.revision-item-label{
  display:block;
  margin-bottom:5px;
  color:#8fa4bd;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.revision-request strong{
  color:#fff;
  font-size:13px;
}

.revision-request p{
  margin:7px 0 0;
  color:#c0ccda;
  line-height:1.6;
}

.revision-admin-attachments{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:12px;
}

.revision-admin-attachments .attachment-link,
.revision-task-files a{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 9px;
  border:1px solid #48627f;
  border-radius:7px;
  background:#1d3149;
  color:#a8e6ff;
  font-size:10px;
  text-decoration:none;
}

.revision-scope label,
.revision-message-field label,
.revision-complete-form label{
  display:block;
  margin-bottom:7px;
  color:#edf5ff;
  font-weight:800;
}

.revision-scope textarea,
.revision-message-field textarea,
.revision-complete-form textarea{
  width:100%;
  border-color:#4b6380;
  background:#132238;
}

.revision-scope small,
.revision-message-field small{
  display:block;
  margin-top:5px;
  color:#8498b0;
}

.revision-admin-footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  padding:18px;
  border-top:1px solid #405875;
  background:#20344d;
}

.revision-message-field{
  flex:1;
}

.revision-checklist-head{
  justify-content:space-between;
}

.revision-work-count{
  display:inline-flex;
  min-height:27px;
  align-items:center;
  padding:0 9px;
  border:1px solid #526984;
  border-radius:999px;
  background:#20334b;
  color:#c9d8e9;
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
}

.revision-task-list{
  background:#182a3e;
}

.revision-task-card{
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  padding:18px;
  border-bottom:1px solid #354a63;
  background:#182a3e;
  transition:background .15s ease;
}

.revision-task-card:last-child{
  border-bottom:0;
}

.revision-task-card:hover{
  background:#1d3149;
}

.revision-task-card.is-complete{
  background:rgba(74,222,128,.035);
}

.revision-task-card.is-complete .revision-task-number{
  border-color:rgba(74,222,128,.32);
  background:rgba(74,222,128,.08);
  color:#9cf0b6;
}

.revision-task-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.revision-task-top strong{
  display:block;
  color:#fff;
  font-size:13px;
}

.revision-confirmed-work{
  margin-top:12px;
  padding:13px;
  border:1px solid #3e5570;
  border-radius:9px;
  background:#14253a;
}

.revision-confirmed-work>span,
.revision-task-files>span{
  display:block;
  margin-bottom:5px;
  color:#8fa4bd;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.revision-confirmed-work p{
  margin:0;
  color:#dce5ef;
  line-height:1.6;
}

.revision-task-files{
  margin-top:12px;
}

.revision-task-files>div{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.revision-task-action{
  align-self:center;
}

.revision-task-action .btn{
  white-space:nowrap;
}

.revision-complete-form{
  padding:18px;
  background:#182a3e;
}

.revision-complete-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:14px;
}

.revision-complete-actions p{
  margin:0;
  color:#9eafc2;
  font-size:10px;
}

/* ---------------- Website detail / edit ---------------- */
.website-header-actions{
  display:flex;
  align-items:center;
  gap:9px;
}

.website-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  background:#182a3e;
}

.website-detail-item{
  min-height:84px;
  padding:17px 18px;
  border-right:1px solid #354a63;
  border-bottom:1px solid #354a63;
}

.website-detail-item:nth-child(2n){
  border-right:0;
}

.website-detail-item.full{
  grid-column:1/-1;
  border-right:0;
}

.website-detail-item>span{
  display:block;
  margin-bottom:7px;
  color:#91a5bd;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.website-detail-item strong{
  display:block;
  color:#fff;
  font-size:12px;
  word-break:break-word;
}

.website-detail-item a{
  color:#a8e6ff;
  font-size:11px;
  font-weight:700;
  word-break:break-all;
  text-decoration:none;
}

.website-detail-item a:hover{
  color:#d8f5ff;
  text-decoration:underline;
}

.website-edit-card[hidden],
#website-details-view[hidden]{
  display:none!important;
}

.website-edit-card .panel-form{
  background:#182a3e;
}

.website-edit-card .panel-form p{
  margin:0;
}

.website-edit-card .panel-form label{
  color:#e8f0fa;
  font-weight:700;
}

.website-edit-card .panel-form input,
.website-edit-card .panel-form select,
.website-edit-card .panel-form textarea{
  border-color:#49617e;
  background:#132238;
}

.website-edit-actions{
  display:flex;
  justify-content:flex-end;
  gap:9px;
  padding-top:8px;
}

.website-monitoring-table{
  background:#182a3e;
}

.website-monitoring-table>div{
  border-bottom-color:#354a63!important;
}

.website-monitoring-table span{
  color:#91a5bd;
}

.website-monitoring-table strong{
  color:#fff;
}

.website-monitoring-table p{
  color:#aebdd0;
}

@media(max-width:850px){
  .revision-admin-row{
    grid-template-columns:1fr;
  }

  .revision-task-card{
    grid-template-columns:36px 1fr;
  }

  .revision-task-action{
    grid-column:2;
    justify-self:start;
  }

  .revision-admin-footer,
  .revision-complete-actions,
  .revision-stage-banner{
    align-items:flex-start;
    flex-direction:column;
  }

  .website-detail-grid{
    grid-template-columns:1fr;
  }

  .website-detail-item,
  .website-detail-item:nth-child(2n){
    border-right:0;
  }
}

@media(max-width:720px){
  .website-header-actions{
    width:100%;
  }

  .website-header-actions form,
  .website-header-actions .btn{
    flex:1;
  }

  .revision-task-top{
    flex-direction:column;
  }
}


/* ============================================================
   Logged Out / Client Hub Exit State
   ============================================================ */
body:has(.logout-page-v3){
  background:
    radial-gradient(circle at 14% 8%,rgba(89,73,184,.18),transparent 30%),
    radial-gradient(circle at 88% 10%,rgba(36,153,196,.14),transparent 32%),
    linear-gradient(135deg,#172239 0%,#111d2d 50%,#10202c 100%)!important;
  background-attachment:fixed!important;
}

.logout-page-v3{
  min-height:calc(100vh - 320px);
  display:grid;
  place-items:center;
  padding:72px 20px 88px;
}

.logout-card-v3{
  width:min(720px,100%);
  padding:44px 42px;
  border:1px solid #405875;
  border-radius:20px;
  background:
    linear-gradient(135deg,rgba(124,92,255,.085),rgba(53,194,255,.045)),
    #182a3e;
  box-shadow:
    0 24px 60px rgba(0,0,0,.20),
    inset 0 1px 0 rgba(255,255,255,.025);
}

.logout-icon-v3{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin-bottom:20px;
  border:1px solid rgba(74,222,128,.38);
  border-radius:50%;
  background:rgba(74,222,128,.09);
  color:#9cf0b6;
  font-size:20px;
  font-weight:900;
  box-shadow:0 0 24px rgba(74,222,128,.08);
}

.logout-card-v3 .eyebrow{
  color:#7dd9ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.15em;
}

.logout-card-v3 h1{
  margin:8px 0 12px;
  color:#fff;
  font-size:clamp(44px,6vw,64px);
  line-height:.98;
  letter-spacing:-.045em;
  font-weight:850;
}

.logout-copy-v3{
  max-width:560px;
  margin:0;
  color:#b7c5d5;
  font-size:16px;
  line-height:1.65;
}

.logout-actions-v3{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
}

.logout-actions-v3 .btn{
  min-width:140px;
}

@media(max-width:640px){
  .logout-page-v3{
    min-height:auto;
    padding:48px 16px 64px;
  }

  .logout-card-v3{
    padding:30px 22px;
  }

  .logout-actions-v3{
    flex-direction:column;
  }

  .logout-actions-v3 .btn{
    width:100%;
  }
}


/* ============================================================
   Public account / recovery pages — landing-page visual language
   ============================================================ */
.vx-auth-public-shell{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#f7fbff;
}

.vx-auth-public-page{
  position:relative;
  min-height:640px;
  display:grid;
  place-items:center;
  overflow:hidden;
  padding:76px 0 92px;
  background:
    radial-gradient(circle at 15% 18%,rgba(42,126,255,.15),transparent 28%),
    radial-gradient(circle at 88% 74%,rgba(136,79,255,.14),transparent 30%),
    linear-gradient(135deg,#f9fcff 0%,#edf7ff 50%,#f7f2ff 100%);
}

.vx-auth-orb{
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  filter:blur(10px);
  opacity:.8;
}
.vx-auth-orb-a{
  width:340px;
  height:340px;
  left:-150px;
  top:-130px;
  background:rgba(60,143,255,.16);
}
.vx-auth-orb-b{
  width:420px;
  height:420px;
  right:-190px;
  bottom:-210px;
  background:rgba(139,79,255,.13);
}

.vx-auth-public-inner{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:center;
}

.vx-auth-card{
  width:min(690px,100%);
  padding:42px 44px;
  border:1px solid rgba(67,105,157,.16);
  border-radius:22px;
  background:rgba(255,255,255,.90);
  box-shadow:0 28px 70px rgba(42,72,111,.13);
  backdrop-filter:blur(18px);
}

.vx-auth-kicker{
  display:block;
  margin-bottom:11px;
  color:#2371e8;
  font-size:9px;
  line-height:1;
  font-weight:950;
  letter-spacing:.20em;
}

.vx-auth-card h1{
  max-width:620px;
  margin:0;
  color:#101a39;
  font-size:clamp(44px,5.6vw,68px);
  line-height:.97;
  letter-spacing:-.052em;
  font-weight:900;
}

.vx-auth-lead{
  max-width:590px;
  margin:17px 0 0;
  color:#607089;
  font-size:15px;
  line-height:1.7;
}

.vx-auth-lead strong{
  color:#263a59;
}

.vx-auth-success-icon,
.vx-auth-mail-icon,
.vx-auth-error-icon{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  margin-bottom:18px;
  border-radius:14px;
  font-size:18px;
  font-weight:950;
}

.vx-auth-success-icon{
  border:1px solid rgba(37,167,104,.20);
  background:#ecfff5;
  color:#199359;
}

.vx-auth-mail-icon{
  border:1px solid rgba(31,113,235,.17);
  background:#edf6ff;
  color:#2371e8;
}

.vx-auth-error-icon{
  border:1px solid rgba(222,73,92,.17);
  background:#fff0f3;
  color:#d74359;
}

.vx-auth-form{
  display:grid;
  gap:16px;
  margin-top:27px;
}

.vx-auth-field label{
  display:block;
  margin:0 0 7px;
  color:#263650;
  font-size:12px;
  font-weight:850;
}

.vx-auth-field input{
  width:100%;
  min-height:48px;
  padding:0 14px;
  border:1px solid #ccd9e9;
  border-radius:11px;
  background:#fbfdff;
  color:#15213b;
  outline:none;
  transition:.16s ease;
}

.vx-auth-field input:focus{
  border-color:#3d83f7;
  box-shadow:0 0 0 4px rgba(39,115,239,.10);
}

.vx-auth-help{
  margin-top:7px;
  color:#7a879b;
  font-size:10px;
  line-height:1.55;
}
.vx-auth-help ul{
  margin:6px 0 0;
  padding-left:18px;
}

.vx-auth-field-error{
  display:block;
  margin-top:6px;
  color:#d7475d;
  font-size:10px;
  font-weight:750;
}

.vx-auth-alert{
  padding:12px 14px;
  border-radius:10px;
  background:#eef7ff;
  color:#31577e;
  font-size:11px;
  line-height:1.5;
}
.vx-auth-alert.error{
  border:1px solid rgba(222,73,92,.16);
  background:#fff1f3;
  color:#a93649;
}

.vx-auth-primary,
.vx-auth-secondary{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:0 17px;
  border-radius:11px;
  text-decoration:none;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}

button.vx-auth-primary{
  border:0;
}

.vx-auth-primary{
  width:max-content;
  background:linear-gradient(135deg,#0d83ff,#3458ff);
  color:#fff;
  box-shadow:0 10px 25px rgba(40,82,255,.22);
}

.vx-auth-primary:hover{
  transform:translateY(-1px);
}

.vx-auth-secondary{
  border:1px solid #cbd8e8;
  background:#fff;
  color:#263650;
}

.vx-auth-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
}

.vx-auth-text-link{
  display:inline-flex;
  margin-top:20px;
  color:#246fdf;
  text-decoration:none;
  font-size:11px;
  font-weight:850;
}

.vx-auth-text-link:hover{
  text-decoration:underline;
}

.vx-auth-security-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:20px;
  padding-top:17px;
  border-top:1px solid #e3eaf3;
}
.vx-auth-security-note>span{
  width:23px;
  height:23px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:#ecfff5;
  color:#199359;
  font-size:10px;
  font-weight:900;
}
.vx-auth-security-note p{
  margin:1px 0 0;
  color:#758398;
  font-size:10px;
  line-height:1.55;
}

@media(max-width:700px){
  .vx-auth-public-page{
    min-height:auto;
    padding:46px 0 64px;
  }

  .vx-auth-card{
    padding:30px 22px;
    border-radius:17px;
  }

  .vx-auth-card h1{
    font-size:clamp(38px,12vw,54px);
  }

  .vx-auth-primary{
    width:100%;
  }

  .vx-auth-actions{
    flex-direction:column;
  }

  .vx-auth-secondary{
    width:100%;
  }
}
