/* Remote Gravity — approved November 10 design; static production styles. */
:root {
  --ground:#F6F6F4;
  --surface:#FFFFFF;
  --sunk:#ECE7DA;
  --sunk-2:#E4DECF;
  --ink:#121418;
  --ink-2:#3D424D;
  --ink-3:#5C6371;
  --rule:#1A1A18;
  --brand:#FFD009;
  --on-brand:#1A1A18;
  --heading:#12203A;
  --navy:#12203A;
  --line:#E0DDD5;
  --line-soft:#F0EEE9;
  --navy-raised:#1C2E50;
  --navy-line:#2A3D63;
  --navy-muted:#AEBBD2;
  --navy-faint:#8E9CB6;
  --stamp:#0F0F0E;
  --sans:'Schibsted Grotesk',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:20px
}

body {
  margin:0;
  padding:0
}

img {
  max-width:100%
}

a {
  color:inherit
}

a:hover {
  opacity:.88
}

a:focus-visible,.btn:focus-visible {
  outline:2px solid var(--navy);
  outline-offset:3px
}

.on-navy a:focus-visible,.navy-top a:focus-visible {
  outline-color:var(--brand)
}

.mono {
  font-family:var(--mono)
}

.st {
  display:inline-block;
  padding:3px 9px;
  border:1.5px solid var(--rule);
  color:var(--ink);
  font:500 11px/16px var(--mono);
  letter-spacing:.05em;
  text-transform:uppercase;
  white-space:nowrap
}

.st.ch {
  background:var(--brand);
  border-color:var(--brand);
  color:var(--on-brand)
}

.st.un {
  border-style:dashed
}

.st.sl {
  background:var(--sunk);
  border-color:var(--ink-3);
  color:var(--ink-3)
}

.q .st {
  border-color:#fff;
  color:#fff
}

.q .st.ch {
  border-color:var(--brand);
  color:var(--on-brand)
}

.photo {
  position:relative;
  margin:0;
  border:1px solid var(--navy-line);
  background:repeating-linear-gradient(135deg,var(--sunk) 0,var(--sunk) 10px,var(--sunk-2) 10px,var(--sunk-2) 20px);
  overflow:hidden
}

.photo .lbl {
  position:absolute;
  top:10px;
  left:10px;
  font:400 12px/16px var(--sans);
  color:var(--ink-3)
}

.photo .stamp {
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:8px 10px;
  background:var(--stamp);
  color:#fff;
  font:400 11px/16px var(--mono)
}

.pilot {
  display:inline-block;
  padding:1px 7px;
  border:1px solid var(--heading);
  border-radius:4px;
  color:var(--heading);
  font:600 12px/18px var(--sans);
  letter-spacing:.01em;
  white-space:nowrap
}

.cap {
  display:flex;
  flex-wrap:wrap;
  gap:4px 16px;
  align-items:baseline;
  justify-content:space-between;
  padding:18px 0;
  border-top:1px solid var(--line);
  text-decoration:none;
  color:inherit
}

.cap b {
  font-size:22px;
  line-height:30px;
  font-weight:600;
  color:var(--heading)
}

.cap span.d {
  font-size:16px;
  line-height:24px;
  color:var(--ink-3)
}

.sd {
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--c);
  margin-right:8px;
  vertical-align:1px
}

.btn {
  display:inline-block;
  background:var(--brand);
  color:var(--on-brand);
  text-decoration:none;
  font:600 16px/20px var(--sans);
  padding:14px 24px;
  border-radius:8px
}

.btn.ghost {
  background:none;
  color:var(--heading);
  border:1.5px solid var(--heading);
  padding:12.5px 22.5px
}

.btn:hover.ghost {
  opacity:1;
  background:var(--surface)
}

.page {
  background:var(--ground);
  color:var(--ink);
  font-family:var(--sans);
  min-width:0
}

.navy-top {
  background:var(--navy);
  color:#fff
}

.site-header-div {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  padding:22px clamp(20px,5vw,72px);
  max-width:calc(1296px + (2 * clamp(20px,5vw,72px)));
  margin:0 auto
}

.site-header-a {
  display:block;
  line-height:0
}

.site-header-img {
  height:40px;
  width:auto;
  display:block
}

.site-header-nav {
  display:flex;
  gap:28px;
  align-items:center;
  flex-wrap:wrap;
  font-size:15px
}

.site-header-a-verify {
  color:var(--navy-muted);
  text-decoration:none
}

.site-header-nav .nav-login {
  color:#fff;
  font-weight:600;
  text-decoration:none
}

.site-header-span-pilot {
  margin-left:4px
}

.navy-top .pilot {
  border-color:var(--navy-muted);
  color:var(--navy-muted)
}

.site-header-a-request-a-demo {
  padding:11px 18px;
  font-size:15px
}

.hero-div {
  display:flex;
  flex-wrap:wrap;
  gap:56px;
  align-items:center;
  padding:56px clamp(20px,5vw,72px) 80px;
  max-width:calc(1296px + (2 * clamp(20px,5vw,72px)));
  margin:0 auto
}

.hero-div-2 {
  flex:1.15 1 460px;
  min-width:0
}

.hero-h1 {
  margin:0;
  font-size:clamp(36px,4.4vw,64px);
  line-height:1.06;
  letter-spacing:-.025em;
  font-weight:600;
  color:#fff
}

.hero-span {
  display:block
}

.hero-span.accent {
  color:var(--brand)
}

.hero-p {
  margin:28px 0 0;
  font-size:20px;
  line-height:1.55;
  color:var(--navy-muted);
  max-width:560px
}

.hero-cta {
  display:flex;
  gap:28px;
  align-items:center;
  flex-wrap:wrap;
  margin-top:40px
}

.hero-a-request-a-demo {
  font-size:17px;
  padding:16px 28px
}

.hero-a-see-a-sample {
  color:#fff;
  font-size:16px;
  font-weight:500;
  text-decoration:underline;
  text-underline-offset:4px
}

.hero-div-place {
  flex:1 1 460px;
  min-width:0
}

.hero-div-place-2 {
  display:flex;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  align-items:baseline;
  padding-bottom:12px;
  color:#fff
}

.hero-span-place {
  font-weight:600;
  font-size:16px
}

.hero-span-ex-02 {
  font-weight:500;
  font-size:14px
}

.hero-span-synthetic-example {
  font-size:12px;
  color:var(--navy-faint)
}

.hero-photos {
  display:flex;
  gap:12px;
  flex-wrap:wrap
}

.hero-figure {
  margin:0;
  flex:1 1 200px;
  min-width:0
}

.hero-photo {
  height:auto;
  aspect-ratio:4/3
}

.hero-figcaption {
  margin-top:10px;
  font-size:14px;
  line-height:20px;
  color:var(--navy-muted)
}

.hero-div-changed {
  position:absolute;
  left:25%;
  top:14%;
  width:44%;
  height:50%;
  border:2px solid #fff;
  box-shadow:0 0 0 1px rgba(18,32,58,.45),inset 0 0 0 1px rgba(18,32,58,.25)
}

.hero-span-changed {
  position:absolute;
  top:-2px;
  left:-2px;
  transform:translateY(-100%);
  background:var(--brand);
  color:var(--on-brand);
  font:500 11px/14px var(--mono);
  padding:2px 6px;
  letter-spacing:.05em
}

.hero-finding {
  margin-top:16px;
  background:#fff;
  color:var(--ink);
  border:1px solid var(--line);
  padding:18px 20px;
  display:flex;
  flex-direction:column;
  gap:14px
}

.hero-finding-2 {
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  align-items:flex-start
}

.hero-span-changed-2 {
  margin-top:2px
}

.hero-span-location-differs {
  flex:1 1 260px;
  min-width:0;
  font-weight:600;
  font-size:16px;
  line-height:24px
}

.hero-last {
  display:flex;
  gap:8px 12px;
  flex-wrap:wrap;
  align-items:center;
  font-size:14px;
  line-height:20px
}

.muted {
  color:var(--ink-3)
}

.hero-span-days {
  font-weight:500;
  font-size:13px;
  letter-spacing:.04em
}

.example-disclaimer {
  margin:18px 0 0;
  color:var(--navy-faint);
  font-size:12px;
  line-height:18px;
  flex:1 1 100%
}

.sec {
  padding:0 clamp(20px,5vw,72px)
}

.sec-in {
  max-width:1296px;
  margin:0 auto;
  padding:88px 0 104px
}

.sec-in.tight {
  padding:0 0 112px
}

.sec-bar {
  display:flex;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  border-top:1px solid var(--line);
  padding-top:14px;
  font-size:14px;
  line-height:20px
}

.sec-bar b {
  font-weight:600;
  color:var(--heading)
}

.sec-h2 {
  margin:40px 0 0;
  font-size:clamp(30px,3.8vw,54px);
  line-height:1.08;
  letter-spacing:-.02em;
  font-weight:600;
  color:var(--heading);
  max-width:880px;
  text-wrap:balance
}

.sec-p {
  margin:22px 0 0;
  font-size:19px;
  line-height:1.55;
  color:var(--ink-2);
  max-width:640px
}

.benefits {
  margin:48px 0 0;
  padding:0;
  list-style:none;
  border-bottom:1px solid var(--line)
}

.note {
  margin:16px 0 0;
  font-size:14px;
  line-height:20px;
  color:var(--ink-3);
  max-width:620px
}

.comparison-table {
  width:100%;
  border-collapse:collapse;
  text-align:left
}

.comparison-table th,.comparison-table td {
  border-bottom:1px solid var(--line);
  padding:20px 20px 20px 0;
  vertical-align:middle
}

.comparison-table thead th {
  color:var(--ink-3);
  font-size:12px;
  line-height:16px;
  font-weight:500;
  padding-top:10px;
  padding-bottom:10px
}

.comparison-table tbody th {
  width:92px;
  font-size:13px;
  font-weight:400
}

.comparison-table td:nth-child(2) {
  font-size:20px;
  line-height:28px;
  font-weight:600
}

.comparison-table td:nth-child(3) {
  width:250px;
  font:400 12px/20px var(--mono);
  color:var(--ink-3)
}

.comparison-table td:nth-child(4) {
  width:120px;
  padding-right:0
}

.visually-hidden {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip-path:inset(50%);
  white-space:nowrap;
  border:0
}

.v-grid {
  display:flex;
  flex-wrap:wrap;
  gap:64px;
  margin-top:44px;
  align-items:flex-start
}

.v-col {
  flex:1 1 380px;
  min-width:0
}

.v-h2 {
  margin:0;
  font-size:clamp(28px,3.2vw,44px);
  line-height:1.1;
  letter-spacing:-.02em;
  font-weight:600;
  color:var(--heading);
  text-wrap:balance
}

.v-p {
  margin:20px 0 0;
  font-size:19px;
  line-height:1.55;
  color:var(--ink-2);
  max-width:520px
}

.v-ul {
  margin:36px 0 0;
  padding:0;
  list-style:none;
  max-width:520px
}

.v-li {
  padding:14px 0;
  border-top:1px solid var(--line)
}

.v-li.last {
  border-bottom:1px solid var(--line)
}

.v-li-t {
  font-size:17px;
  line-height:24px;
  font-weight:600
}

.v-li-d {
  font-size:14px;
  line-height:20px;
  color:var(--ink-3)
}

.report {
  flex:1 1 500px;
  min-width:0;
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden
}

.report-head {
  display:flex;
  justify-content:space-between;
  gap:8px 12px;
  flex-wrap:wrap;
  align-items:center;
  padding:14px 20px;
  border-bottom:1px solid var(--line-soft)
}

.report-sub {
  font-weight:400;
  color:var(--ink-3)
}

.report-ex {
  font-size:13px
}

.report-approved {
  font-size:13px;
  font-weight:600;
  color:#1B7341
}

.report-conf {
  padding:20px 20px 0;
  display:flex;
  gap:14px;
  align-items:center
}

.report-tick {
  flex:0 0 auto;
  width:36px;
  height:36px;
  border-radius:50%;
  background:#E2F3E8;
  display:inline-flex;
  align-items:center;
  justify-content:center
}

.report-conf-t {
  font-size:22px;
  line-height:28px;
  font-weight:600;
  color:var(--heading)
}

.report-photos {
  display:flex;
  gap:8px;
  padding:18px 20px 0;
  flex-wrap:wrap
}

.report-photo {
  flex:1 1 110px;
  height:112px;
  border-color:var(--line);
  border-radius:8px
}

.report-photo .lbl {
  top:8px;
  left:8px
}

.report-count {
  padding:8px 20px 0;
  font-size:11.5px;
  line-height:16px;
  color:var(--ink-3);
  letter-spacing:.02em
}

.report-map {
  padding:18px 20px 0
}

.report-map>svg {
  display:block;
  border:1px solid var(--line);
  border-radius:8px;
  background:#EFEDE7
}

.report-key {
  display:flex;
  flex-wrap:wrap;
  gap:4px 18px;
  margin-top:8px;
  font-size:12px;
  line-height:16px;
  color:var(--ink-2)
}

.report-key svg {
  display:inline-block;
  vertical-align:-1px;
  margin-right:6px
}

.report-quote {
  padding:16px 20px 0
}

.report-quote blockquote {
  margin:0;
  padding:2px 0 2px 14px;
  border-left:3px solid var(--heading);
  font-size:16px;
  line-height:24px;
  color:var(--ink)
}

.report-quote div {
  margin-top:6px;
  padding-left:17px;
  font-size:12px;
  line-height:16px;
  color:var(--ink-3)
}

.report dl {
  margin:14px 0 0;
  padding:0 20px 8px
}

.report dl div {
  display:flex;
  gap:16px;
  justify-content:space-between;
  padding:11px 0;
  border-top:1px solid var(--line-soft);
  font-size:14px;
  line-height:20px
}

.report dd {
  margin:0;
  font-weight:600
}

.report-foot {
  display:flex;
  justify-content:space-between;
  gap:8px 12px;
  flex-wrap:wrap;
  padding:12px 20px;
  border-top:1px solid var(--line-soft);
  font-size:12px;
  line-height:16px;
  color:var(--ink-3)
}

.m-h2 {
  margin:40px 0 0;
  font-size:clamp(34px,4.6vw,66px);
  line-height:1.05;
  letter-spacing:-.025em;
  font-weight:600;
  color:var(--heading);
  max-width:900px;
  text-wrap:balance
}

.m-p {
  margin:22px 0 0;
  font-size:19px;
  line-height:1.55;
  max-width:660px;
  color:var(--ink-2)
}

.m-ask {
  display:flex;
  gap:16px 24px;
  flex-wrap:wrap;
  align-items:center;
  margin-top:32px
}

.m-ask span {
  max-width:420px;
  font-size:14px;
  line-height:20px;
  color:var(--ink-3)
}

.steps {
  display:flex;
  flex-wrap:wrap;
  gap:12px 24px;
  margin:52px 0 0;
  padding:0;
  list-style:none
}

.steps li {
  flex:1 1 170px;
  border-top:2px solid var(--line);
  padding-top:14px
}

.steps li.key {
  border-top-color:var(--heading)
}

.steps .n {
  font-size:13px;
  line-height:16px;
  font-weight:500;
  color:var(--ink-3);
  font-variant-numeric:tabular-nums
}

.steps .t {
  margin-top:12px;
  font-size:17px;
  line-height:24px;
  font-weight:600
}

.steps li.key .n {
  font-weight:600;
  color:var(--heading)
}

.steps li.key .t {
  color:var(--heading)
}

.queue {
  margin-top:56px;
  background:var(--navy);
  color:#fff
}

.queue-head {
  display:flex;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  align-items:baseline;
  padding:16px 20px;
  border-bottom:1px solid var(--navy-line)
}

.queue-head b {
  font-size:22px;
  line-height:28px;
  font-weight:600
}

.queue-head span {
  font-size:12px;
  line-height:16px;
  font-weight:500;
  color:var(--navy-faint)
}

.queue-row {
  display:flex;
  gap:12px 16px;
  flex-wrap:wrap;
  align-items:center;
  padding:16px 20px;
  border-bottom:1px solid var(--navy-line)
}

.queue-row:last-child {
  border-bottom:0
}

.queue-id {
  flex:0 0 56px;
  font-size:13px;
  color:var(--navy-faint)
}

.queue-txt {
  flex:1 1 280px;
  min-width:0;
  font-size:16px;
  line-height:24px
}

.o-li {
  padding:13px 0;
  border-top:1px solid var(--line);
  font-size:16px;
  line-height:24px;
  font-weight:500
}

.o-rec {
  margin:28px 0 0;
  padding-top:16px;
  border-top:1px solid var(--line);
  max-width:520px;
  font-size:15px;
  line-height:22px;
  color:var(--ink-2)
}

.o-rec b {
  font-weight:600;
  color:var(--ink)
}

.req {
  flex:1 1 500px;
  min-width:0;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  overflow:hidden
}

.req-head {
  display:flex;
  justify-content:space-between;
  gap:8px 12px;
  flex-wrap:wrap;
  align-items:baseline;
  padding:14px 18px 0
}

.req-head b {
  font-size:20px;
  line-height:28px;
  font-weight:600;
  color:var(--heading)
}

.req-head span {
  font-size:12px;
  line-height:16px;
  color:var(--ink-3)
}

.req-tabs {
  display:flex;
  gap:20px;
  flex-wrap:nowrap;
  overflow-x:auto;
  padding:8px 18px 0;
  border-bottom:1px solid var(--line);
  font-size:13px;
  line-height:16px;
  font-weight:500;
  color:var(--ink-3)
}

.req-tabs span {
  padding:8px 0 10px;
  white-space:nowrap
}

.req-tabs span.on {
  margin-bottom:-1px;
  border-bottom:2px solid var(--heading);
  color:var(--ink);
  font-weight:600
}

.req-tabs span.on b {
  color:var(--heading)
}

.req-row {
  display:flex;
  gap:8px 14px;
  flex-wrap:wrap;
  align-items:center;
  padding:14px 18px;
  border-bottom:1px solid var(--line-soft)
}

.req-who {
  flex:1 1 150px;
  min-width:0
}

.req-name {
  font-size:15px;
  line-height:20px;
  font-weight:600
}

.req-id {
  font-size:11.5px;
  line-height:16px;
  color:var(--ink-3);
  margin-top:2px
}

.req-off {
  flex:1 1 130px;
  min-width:0;
  font-size:14px;
  line-height:20px
}

.req-assign {
  display:inline-flex;
  align-items:center;
  gap:6px;
  height:28px;
  padding:0 10px;
  border:1px dashed #8F8A7F;
  border-radius:6px;
  color:var(--heading);
  font-weight:600;
  font-size:13px
}

.req-st {
  flex:1 1 130px;
  min-width:0;
  font-size:13px;
  line-height:20px;
  font-weight:600;
  color:#3F4A5C
}

.req-st.pend {
  color:#8A5300
}

.req-foot {
  display:flex;
  gap:8px 16px;
  flex-wrap:wrap;
  padding:12px 18px;
  background:var(--surface);
  font-size:12px;
  line-height:16px;
  color:var(--ink-3)
}

.closing {
  background:var(--navy);
  color:#fff;
  padding:0 clamp(20px,5vw,72px)
}

.closing-in {
  max-width:1296px;
  margin:0 auto;
  padding:104px 0 96px
}

.closing-p {
  margin:0;
  font-size:clamp(28px,3.8vw,54px);
  line-height:1.12;
  letter-spacing:-.02em;
  font-weight:600;
  max-width:1000px;
  text-wrap:balance
}

.closing-p span {
  color:var(--brand)
}

.closing-cta {
  margin-top:44px
}

.site-footer {
  background:var(--navy);
  color:#fff;
  padding:0 clamp(20px,5vw,72px)
}

.site-footer-in {
  max-width:1296px;
  margin:0 auto;
  padding:24px 0 56px;
  display:flex;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
  align-items:center;
  border-top:1px solid var(--navy-line)
}

.site-footer-img {
  height:34px;
  width:auto;
  display:block
}

.site-footer-span {
  font-size:14px;
  line-height:20px;
  color:var(--navy-muted);
  max-width:560px;
  flex:1 1 300px
}

.seal {
  display:flex;
  align-items:center;
  gap:12px;
  font-size:13px;
  line-height:18px;
  color:var(--navy-muted)
}

.seal img {
  width:88px;
  height:88px;
  object-fit:contain;
  background:#fff;
  border-radius:8px;
  padding:6px
}

@media (max-width:700px) {
  .sec-in {
  padding:56px 0 64px
}
.sec-in.tight {
  padding:0 0 64px
}
.hero-div {
  padding-bottom:48px
}
.closing-in {
  padding:72px 0 64px
}
.v-grid {
  gap:40px
}
.site-header-nav {
  gap:16px;
  width:100%
}
.site-header-nav .btn {
  margin-left:auto
}
.comparison-table thead {
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip-path:inset(50%)
}
.comparison-table,.comparison-table tbody {
  display:block
}
.comparison-table tr {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px 16px;
  padding:20px 0;
  border-bottom:1px solid var(--line)
}
.comparison-table tbody th,.comparison-table td {
  border:0;
  padding:0;
  width:auto
}
.comparison-table td:nth-child(2) {
  grid-area:2/1/auto/-1
}
.comparison-table td:nth-child(3) {
  grid-area:3/1/auto/-1;
  width:auto
}
.comparison-table td:nth-child(4) {
  grid-area:1/2;
  width:auto
}

}

.photo img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover
}

.report-photo .lbl {
  background:rgba(255,255,255,.88);
  padding:1px 6px;
  border-radius:4px
}


/* Small layout details from the approved reference. */
.benefits-pilot {
  margin-left:6px;
  vertical-align:3px
}

.assumption-in {
  padding-top:24px
}

.comparison-wrap {
  margin-top:56px
}

.report-title {
  color:var(--ink)
}

.dot-approved {
  --c:#2E9E5B
}

.monitor-bar {
  align-items:center
}

.monitor-pilot {
  margin-left:8px
}

.monitor-cta {
  font-size:16px
}

.dot-active {
  --c:#7A8496
}

.dot-pending {
  --c:#B87D00
}

.request-last {
  border-bottom:0
}

.request-footer {
  border-top:1px solid var(--line-soft)
}


/* Existing keyboard navigation, plus reduced-motion support. */
.req-tabs:focus-visible { outline: 2px solid var(--navy); outline-offset: -2px; }
main:focus  {
   outline: none;

}

.skip-link  {
   position: absolute;
   left: 16px;
   top: -100px;
   z-index: 10;
   padding: 12px 20px;
   background: #ffd009;
   color: #12203a;
   font: 600 16px/1.4 system-ui, sans-serif;

}

.skip-link:focus  {
   top: 12px;

}

@media (prefers-reduced-motion: reduce)  {
   html  {
   scroll-behavior: auto;

}

}

