@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --w56-ink: #070706;
  --w56-ink-2: #0d0d0b;
  --w56-panel: #111310;
  --w56-bone: #f0eadc;
  --w56-muted: #aaa597;
  --w56-line: rgba(240, 234, 220, 0.14);
  --w56-line-strong: rgba(240, 234, 220, 0.28);
  --w56-gold: #f5b94c;
  --w56-gold-pale: #ffe9ad;
  --w56-red: #b64b2d;
  --w56-display: 'Aptos Display', 'Segoe UI Variable Display', 'Manrope', sans-serif;
  --w56-arabic: 'IBM Plex Sans Arabic', Tahoma, sans-serif;
  --w56-mono: 'DM Mono', 'Cascadia Mono', monospace;
}

html:has(.w56-onboard),
body.w56-canvas {
  margin: 0;
  background: var(--w56-ink);
  color: var(--w56-bone);
}

body.w56-canvas {
  min-width: 320px;
  overflow-x: clip;
}

.w56-canvas-content,
.w56-canvas-content > * {
  margin: 0;
}

.w56-canvas--home,
.w56-canvas--home .w56-canvas-content,
.w56-home-shell,
.w56-home-frame {
  width: 100%;
  height: 100dvh;
}

.w56-canvas--home {
  overflow: hidden;
}

.w56-home-frame {
  display: block;
  border: 0;
  background: var(--w56-ink);
}

.admin-bar .w56-home-shell,
.admin-bar .w56-home-frame {
  height: calc(100dvh - 32px);
}

.w56-onboard,
.w56-onboard * {
  box-sizing: border-box;
}

.w56-onboard {
  min-height: 100dvh;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 50% 18%, rgba(83, 96, 91, 0.12), transparent 42rem),
    radial-gradient(circle at 78% -8%, rgba(245, 185, 76, 0.06), transparent 36rem),
    linear-gradient(145deg, #111513 0%, #080b0a 48%, #030504 100%);
  color: var(--w56-bone);
  font-family: var(--w56-display);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

.w56-onboard::before {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.26;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.014) 1px, transparent 1px);
  background-size: 54px 54px;
  content: '';
  mask-image: linear-gradient(to bottom, #000, transparent 75%);
}

.w56-onboard a {
  color: inherit;
  text-decoration: none;
}

.w56-onboard h1,
.w56-onboard h2,
.w56-onboard h3,
.w56-onboard input,
.w56-onboard textarea,
.w56-onboard select,
.w56-onboard button {
  font-family: var(--w56-display);
}

.w56-progress {
  position: fixed;
  inset: 0 0 auto;
  z-index: 100;
  height: 2px;
  background: rgba(255,255,255,.06);
}

.w56-progress span {
  display: block;
  width: 100%;
  height: 100%;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--w56-gold), var(--w56-gold-pale));
  box-shadow: 0 0 18px rgba(227,165,46,.7);
}

.w56-onboard[dir="rtl"] .w56-progress span { transform-origin: right; }

.w56-field.has-value .w56-label { color: var(--w56-gold-pale); }

.w56-nav {
  position: relative;
  z-index: 5;
  display: grid;
  min-height: 86px;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 0 clamp(1.25rem, 4vw, 4.5rem);
  border-bottom: 1px solid var(--w56-line);
}

.w56-brand {
  justify-self: start;
  font-size: 1.4rem;
  font-weight: 800;
  letter-spacing: -.07em;
}

.w56-brand span { font-weight: 600; }
.w56-brand i { color: var(--w56-gold); font-style: normal; }

.w56-nav-meta {
  display: flex;
  gap: 1rem;
  align-items: center;
  color: var(--w56-muted);
  font-family: var(--w56-mono);
  font-size: .62rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.w56-nav-meta b {
  color: var(--w56-gold);
  font-weight: 500;
}

.w56-back {
  justify-self: end;
  color: var(--w56-muted) !important;
  font-size: .82rem;
  transition: color 180ms ease;
}

.w56-back:hover { color: var(--w56-bone) !important; }
.w56-back span { margin-left: .35rem; color: var(--w56-gold); }

.w56-onboard main {
  position: relative;
  z-index: 1;
}

.w56-intro {
  display: grid;
  width: min(100% - clamp(2.5rem, 8vw, 9rem), 92rem);
  min-height: min(76vh, 760px);
  grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr);
  gap: 4rem;
  align-items: end;
  margin: 0 auto;
  padding: clamp(7rem, 13vw, 12rem) 0 clamp(5rem, 9vw, 8rem);
}

.w56-kicker,
.w56-section-head > p,
.w56-step-rail > p {
  margin: 0 0 1.35rem;
  color: var(--w56-gold);
  font-family: var(--w56-mono);
  font-size: .68rem;
  font-weight: 500;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.w56-intro h1 {
  max-width: 11ch;
  margin: 0;
  font-size: clamp(4.25rem, 9vw, 9rem);
  font-weight: 700;
  letter-spacing: -.075em;
  line-height: .84;
  text-transform: uppercase;
}

.w56-intro h1 em {
  color: transparent;
  font-style: normal;
  -webkit-text-stroke: 1px rgba(241,236,223,.6);
}

.w56-intro-copy {
  padding-bottom: .8rem;
  border-bottom: 1px solid var(--w56-line-strong);
}

.w56-intro-copy p {
  max-width: 32rem;
  margin: 0 0 2.25rem;
  color: #bbbcb3;
  font-size: clamp(1.05rem, 1.6vw, 1.35rem);
}

.w56-intro-copy span {
  color: var(--w56-muted);
  font-family: var(--w56-mono);
  font-size: .65rem;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.w56-form-layout {
  display: grid;
  width: min(100% - clamp(2.5rem, 8vw, 9rem), 92rem);
  grid-template-columns: 15rem minmax(0, 1fr);
  gap: clamp(3rem, 7vw, 8rem);
  margin: 0 auto;
  padding-bottom: 9rem;
}

.w56-step-rail {
  position: sticky;
  top: 2.5rem;
  height: fit-content;
  padding-top: 6.2rem;
}

.w56-step-rail ol {
  padding: 0;
  margin: 0;
  list-style: none;
}

.w56-step-rail li {
  border-top: 1px solid var(--w56-line);
}

.w56-step-rail li:last-child { border-bottom: 1px solid var(--w56-line); }

.w56-step-rail a {
  display: grid;
  grid-template-columns: 2.2rem 1fr;
  gap: .25rem;
  padding: .8rem 0;
  color: #6f726a;
  font-size: .73rem;
  transition: color 180ms ease, padding 180ms ease;
}

.w56-step-rail a span {
  color: #5a4b2d;
  font-family: var(--w56-mono);
  font-size: .58rem;
}

.w56-step-rail li.is-active a,
.w56-step-rail a:hover {
  padding-left: .45rem;
  color: var(--w56-bone);
}

.w56-step-rail li.is-active a span { color: var(--w56-gold); }

.w56-form-section {
  display: grid;
  grid-template-columns: minmax(14rem, .8fr) minmax(0, 1.3fr);
  gap: clamp(2rem, 5vw, 5rem);
  padding: clamp(5rem, 9vw, 8rem) 0;
  border-top: 1px solid var(--w56-line);
  scroll-margin-top: 2rem;
}

.w56-section-head > p span {
  display: inline-grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  margin-right: .75rem;
  border: 1px solid rgba(227,165,46,.35);
  border-radius: 50%;
}

.w56-section-head h2 {
  max-width: 10ch;
  margin: 0 0 1.2rem;
  font-size: clamp(2.25rem, 4.3vw, 4.5rem);
  font-weight: 650;
  letter-spacing: -.055em;
  line-height: .94;
}

.w56-section-head > div {
  max-width: 28rem;
  color: var(--w56-muted);
  font-size: 1.02rem;
  line-height: 1.65;
}

.w56-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.1rem 1.2rem;
  align-content: start;
}

.w56-field {
  display: grid;
  min-width: 0;
  gap: .7rem;
}

.w56-field--wide { grid-column: 1 / -1; }

.w56-label {
  color: #aaa99f;
  font-family: var(--w56-mono);
  font-size: .72rem;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.w56-label span { color: var(--w56-gold); }

.w56-field input,
.w56-field textarea,
.w56-field select {
  width: 100%;
  min-height: 3.8rem;
  border: 0;
  border-bottom: 1px solid var(--w56-line-strong);
  border-radius: 0;
  outline: none;
  padding: .75rem 0;
  background: transparent;
  color: var(--w56-bone);
  font-family: var(--w56-display);
  font-size: 1.05rem;
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

.w56-field textarea {
  min-height: 8rem;
  resize: vertical;
}

.w56-field input:focus,
.w56-field textarea:focus,
.w56-field select:focus {
  border-color: var(--w56-gold);
  box-shadow: 0 1px 0 var(--w56-gold), 0 14px 30px -24px rgba(227,165,46,.8);
}

.w56-field input::placeholder,
.w56-field textarea::placeholder { color: #70736b; }
.w56-field select { color-scheme: dark; }

.w56-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .7rem;
  padding: 0;
  margin: 0;
  border: 0;
}

.w56-service-grid label { cursor: pointer; }
.w56-service-grid input { position: absolute; opacity: 0; pointer-events: none; }

.w56-service-grid label > span {
  position: relative;
  display: grid;
  min-height: 7.5rem;
  align-content: space-between;
  padding: 1rem;
  overflow: hidden;
  border: 1px solid var(--w56-line);
  background: rgba(255,255,255,.014);
  color: #aaa99f;
  font-size: .9rem;
  transition: color 200ms ease, border-color 200ms ease, background 200ms ease, transform 200ms ease;
}

.w56-service-grid label > span::before {
  position: absolute;
  inset: auto -15% -55% auto;
  width: 7rem;
  height: 7rem;
  border: 1px solid rgba(227,165,46,.16);
  border-radius: 50%;
  content: '';
}

.w56-service-grid b {
  color: #6e5932;
  font-family: var(--w56-mono);
  font-size: .58rem;
  font-weight: 500;
}

.w56-service-grid i {
  position: absolute;
  right: .8rem;
  bottom: .85rem;
  width: .45rem;
  height: .45rem;
  border: 1px solid #65675f;
  border-radius: 50%;
  box-shadow: 0 0 0 4px var(--w56-ink), 0 0 0 5px #393b36;
}

.w56-service-grid input:checked + span {
  transform: translateY(-3px);
  border-color: var(--w56-gold);
  background: linear-gradient(145deg, rgba(227,165,46,.14), rgba(227,165,46,.025));
  color: var(--w56-gold-pale);
  box-shadow: 0 14px 36px -24px rgba(227,165,46,.8);
}

.w56-service-grid input:checked + span i {
  border-color: var(--w56-gold-pale);
  background: var(--w56-gold-pale);
  box-shadow: 0 0 12px var(--w56-gold), 0 0 0 4px var(--w56-ink), 0 0 0 5px var(--w56-gold);
}

.w56-service-grid input:focus-visible + span { outline: 2px solid var(--w56-gold-pale); outline-offset: 3px; }

.w56-submit {
  display: grid;
  gap: 2rem;
  padding: clamp(4rem, 8vw, 7rem) clamp(1.25rem, 4vw, 4rem);
  border: 1px solid rgba(227,165,46,.35);
  background:
    radial-gradient(circle at 85% 20%, rgba(227,165,46,.12), transparent 16rem),
    #0b0e0b;
}

.w56-submit > div {
  display: flex;
  gap: 2rem;
  align-items: end;
  justify-content: space-between;
}

.w56-submit p {
  max-width: 10ch;
  margin: 0;
  font-size: clamp(2.5rem, 5vw, 5.25rem);
  font-weight: 650;
  letter-spacing: -.06em;
  line-height: .92;
}

.w56-submit > div > span {
  max-width: 24rem;
  color: var(--w56-muted);
  font-size: .85rem;
}

.w56-consent {
  display: flex;
  max-width: 44rem;
  gap: .8rem;
  align-items: flex-start;
  color: #aaa99f;
  cursor: pointer;
  font-size: .78rem;
}

.w56-consent input { margin-top: .25rem; accent-color: var(--w56-gold); }

.w56-submit button {
  display: flex;
  min-height: 4.4rem;
  align-items: center;
  justify-content: space-between;
  border: 0;
  padding: 0 1.4rem;
  background: var(--w56-gold);
  color: var(--w56-ink);
  cursor: pointer;
  font-family: var(--w56-mono);
  font-size: .72rem;
  font-weight: 500;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: background 180ms ease, transform 180ms ease;
}

.w56-submit button:hover { transform: translateY(-2px); background: var(--w56-gold-pale); }
.w56-submit button span { font-size: 1.4rem; }

.w56-honeypot {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
}

.screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(1px,1px,1px,1px) !important;
}

.w56-reveal {
  opacity: 0;
  filter: blur(8px);
  transform: translateY(42px);
  transition: opacity 800ms cubic-bezier(.16,1,.3,1), filter 900ms cubic-bezier(.16,1,.3,1), transform 900ms cubic-bezier(.16,1,.3,1);
}

.w56-reveal.is-visible {
  opacity: 1;
  filter: blur(0);
  transform: none;
}

.w56-success {
  display: grid;
  min-height: calc(100dvh - 86px);
  place-content: center;
  justify-items: start;
  padding: 8vw;
}

.w56-success h1 {
  max-width: 10ch;
  margin: 0 0 2rem;
  font-size: clamp(4rem, 10vw, 10rem);
  font-weight: 700;
  letter-spacing: -.08em;
  line-height: .82;
  text-transform: uppercase;
}

.w56-success > p:not(.w56-kicker) { max-width: 42rem; color: var(--w56-muted); font-size: 1.1rem; }
.w56-success > a { margin-top: 2rem; color: var(--w56-gold); font-family: var(--w56-mono); font-size: .75rem; text-transform: uppercase; }

@media (max-width: 1000px) {
  .w56-intro { grid-template-columns: 1fr; gap: 3rem; align-items: end; }
  .w56-form-layout { grid-template-columns: 1fr; }
  .w56-step-rail { position: relative; top: auto; display: none; }
  .w56-form-section { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
  .w56-nav { min-height: 72px; grid-template-columns: 1fr auto; padding-inline: 1.1rem; }
  .w56-nav-meta { display: none; }
  .w56-brand { font-size: 1.25rem; }
  .w56-back { font-size: .72rem; }
  .w56-intro,
  .w56-form-layout { width: calc(100% - 2.2rem); }
  .w56-intro { min-height: 70svh; padding: 7rem 0 4.5rem; }
  .w56-intro h1 { font-size: clamp(3.3rem, 17vw, 5rem); }
  .w56-form-section { gap: 2.5rem; padding: 4.5rem 0; }
  .w56-section-head h2 { font-size: clamp(2.4rem, 12vw, 3.8rem); }
  .w56-fields { grid-template-columns: 1fr; }
  .w56-field--wide { grid-column: auto; }
  .w56-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .w56-service-grid label > span { min-height: 6.4rem; }
  .w56-submit { margin-inline: -1.1rem; padding: 3.5rem 1.1rem; border-inline: 0; }
  .w56-submit > div { display: grid; }
  .w56-submit p { font-size: 2.9rem; }
}

@media (max-width: 782px) {
  .admin-bar .w56-home-shell,
  .admin-bar .w56-home-frame { height: calc(100dvh - 46px); }
}

@media (prefers-reduced-motion: reduce) {
  .w56-reveal { opacity: 1; filter: none; transform: none; transition: none; }
  .w56-onboard * { scroll-behavior: auto !important; }
}

/* V4 circuit system */
.w56-onboard[dir="rtl"],
.w56-onboard[dir="rtl"] h1,
.w56-onboard[dir="rtl"] h2,
.w56-onboard[dir="rtl"] input,
.w56-onboard[dir="rtl"] textarea,
.w56-onboard[dir="rtl"] select,
.w56-onboard[dir="rtl"] button {
  font-family: var(--w56-arabic);
}

.w56-onboard[dir="rtl"] {
  line-height: 1.75;
}

.w56-ambient {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  opacity: .55;
}

.w56-ambient::before,
.w56-ambient::after {
  position: absolute;
  border: 1px solid rgba(240,234,220,.045);
  border-radius: 50%;
  content: '';
}

.w56-ambient::before {
  top: 7rem;
  left: 50%;
  width: min(78vw, 76rem);
  aspect-ratio: 1;
  transform: translateX(-50%);
}

.w56-ambient::after {
  top: 17rem;
  left: 50%;
  width: min(56vw, 52rem);
  aspect-ratio: 1;
  transform: translateX(-50%);
}

.w56-ambient > span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background: linear-gradient(to bottom, transparent, rgba(245,185,76,.08) 22%, rgba(240,234,220,.04) 72%, transparent);
}

.w56-ambient > i {
  position: absolute;
  left: calc(50% - 4px);
  width: 9px;
  height: 9px;
  border: 1px solid rgba(245,185,76,.36);
  border-radius: 50%;
  background: var(--w56-ink);
  box-shadow: 0 0 18px rgba(245,185,76,.16);
}

.w56-ambient > i:nth-child(1) { top: 26vh; }
.w56-ambient > i:nth-child(2) { top: 52vh; }
.w56-ambient > i:nth-child(3) { top: 79vh; }

.w56-nav {
  position: relative;
  min-height: 88px;
  border-color: rgba(240,234,220,.12);
  background: linear-gradient(to bottom, rgba(7,7,6,.9), rgba(7,7,6,.45), transparent);
}

.w56-brand {
  display: inline-flex;
  align-items: baseline;
  direction: ltr;
  font-size: 1.52rem;
  font-weight: 800;
  letter-spacing: -.065em;
}

.w56-brand strong,
.w56-brand span { font-weight: 800; }

.w56-nav-actions {
  display: flex;
  justify-self: end;
  gap: 1rem;
  align-items: center;
}

.w56-language {
  display: inline-flex;
  min-height: 2.75rem;
  gap: .55rem;
  align-items: center;
  border: 1px solid var(--w56-line-strong);
  padding: 0 .85rem;
  color: var(--w56-muted) !important;
  font-size: .72rem;
  transition: color 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.w56-language b {
  color: var(--w56-gold);
  font-family: var(--w56-mono);
  font-size: .58rem;
  letter-spacing: .08em;
}

.w56-language:hover {
  border-color: var(--w56-gold);
  color: var(--w56-bone) !important;
  box-shadow: 0 0 1.5rem rgba(245,185,76,.12);
}

.w56-intro {
  position: relative;
  min-height: min(82svh, 800px);
  padding-top: clamp(8rem, 15vw, 13rem);
}

.w56-intro::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--w56-line-strong) 18%, var(--w56-line-strong) 82%, transparent);
  content: '';
}

.w56-intro-heading {
  position: relative;
  z-index: 1;
}

.w56-intro h1 {
  max-width: 9ch;
  font-size: clamp(4.1rem, 8.6vw, 8.6rem);
  font-weight: 800;
  letter-spacing: -.07em;
  line-height: .87;
  text-wrap: balance;
}

.w56-onboard[dir="rtl"] .w56-intro h1 {
  max-width: 8ch;
  letter-spacing: -.035em;
  line-height: 1.03;
}

.w56-intro h1 span,
.w56-intro h1 em {
  display: inline-block;
  animation: w56-title-in 900ms cubic-bezier(.16,1,.3,1) both;
}

.w56-intro h1 em { animation-delay: 120ms; }

.w56-intro-copy {
  position: relative;
  z-index: 1;
  border-bottom-color: var(--w56-line-strong);
}

.w56-intro-circuit {
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto 1fr;
  gap: .65rem;
  align-items: center;
  margin-bottom: 2.2rem;
  color: var(--w56-gold);
  font-family: var(--w56-mono);
  font-size: .6rem;
  letter-spacing: .1em;
}

.w56-intro-circuit i {
  height: 1px;
  background: rgba(245,185,76,.38);
}

.w56-intro-circuit b {
  width: .52rem;
  height: .52rem;
  border: 1px solid var(--w56-gold);
  border-radius: 50%;
  box-shadow: 0 0 12px rgba(245,185,76,.35);
}

.w56-form-layout {
  position: relative;
  z-index: 1;
}

.w56-step-rail {
  padding-top: 5.3rem;
}

.w56-step-rail ol {
  position: relative;
}

.w56-step-rail ol::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 1.03rem;
  width: 1px;
  background: var(--w56-line);
  content: '';
}

.w56-onboard[dir="rtl"] .w56-step-rail ol::before {
  right: 1.03rem;
  left: auto;
}

.w56-step-rail li,
.w56-step-rail li:last-child { border: 0; }

.w56-step-rail a {
  position: relative;
  grid-template-columns: 2.2rem 1fr auto;
  min-height: 3.35rem;
  align-items: center;
  padding: .55rem 0;
}

.w56-step-rail a > span {
  position: relative;
  z-index: 1;
  display: grid;
  width: 2.1rem;
  height: 2.1rem;
  place-items: center;
  border: 1px solid var(--w56-line);
  border-radius: 50%;
  background: var(--w56-ink);
  transition: border-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

.w56-step-rail a > i {
  width: .42rem;
  height: .42rem;
  border: 1px solid #3f413b;
  border-radius: 50%;
}

.w56-step-rail li.is-active a,
.w56-step-rail a:hover { padding-left: 0; }

.w56-step-rail li.is-active a > span {
  border-color: var(--w56-gold);
  box-shadow: 0 0 1rem rgba(245,185,76,.2);
}

.w56-step-rail li.is-active a > i {
  border-color: var(--w56-gold-pale);
  background: var(--w56-gold);
  box-shadow: 0 0 12px rgba(245,185,76,.65);
}

.w56-form {
  position: relative;
}

.w56-form::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -2.6rem;
  width: 1px;
  background: linear-gradient(to bottom, transparent, rgba(245,185,76,.28) 5%, rgba(245,185,76,.12) 92%, transparent);
  content: '';
}

.w56-onboard[dir="rtl"] .w56-form::before {
  right: -2.6rem;
  left: auto;
}

.w56-form-section {
  position: relative;
  min-height: 34rem;
  border-top-color: rgba(240,234,220,.13);
}

.w56-form-section::before {
  position: absolute;
  top: 5.55rem;
  left: -2.9rem;
  width: .62rem;
  height: .62rem;
  border: 1px solid var(--w56-gold);
  border-radius: 50%;
  background: var(--w56-ink);
  box-shadow: 0 0 0 .35rem var(--w56-ink), 0 0 1.2rem rgba(245,185,76,.32);
  content: '';
}

.w56-onboard[dir="rtl"] .w56-form-section::before {
  right: -2.9rem;
  left: auto;
}

.w56-section-head > p {
  display: flex;
  gap: .72rem;
  align-items: center;
}

.w56-section-head > p span {
  flex: 0 0 auto;
  margin: 0;
}

.w56-section-head h2 {
  font-weight: 780;
  text-transform: uppercase;
}

.w56-onboard[dir="rtl"] .w56-section-head h2,
.w56-onboard[dir="rtl"] .w56-submit p,
.w56-onboard[dir="rtl"] .w56-success h1 {
  letter-spacing: -.025em;
  line-height: 1.1;
  text-transform: none;
}

.w56-field input,
.w56-field textarea,
.w56-field select {
  border-bottom-color: rgba(240,234,220,.25);
  caret-color: var(--w56-gold);
}

.w56-field input:hover,
.w56-field textarea:hover,
.w56-field select:hover { border-color: rgba(245,185,76,.55); }

.w56-service-grid label > span {
  min-height: 8.6rem;
  grid-template-rows: auto 1fr auto;
  gap: .55rem;
  border-color: rgba(240,234,220,.14);
  background: linear-gradient(145deg, rgba(255,255,255,.022), rgba(255,255,255,.006));
}

.w56-service-grid label > span::before {
  display: none;
}

.w56-service-grid strong {
  align-self: center;
  font-size: .86rem;
  font-weight: 650;
}

.w56-service-grid svg {
  width: calc(100% - 1.25rem);
  height: 1.15rem;
  overflow: visible;
}

.w56-service-grid svg path {
  fill: none;
  stroke: #59594f;
  stroke-linecap: square;
  stroke-linejoin: miter;
  stroke-width: 1.25;
  transition: stroke 200ms ease, filter 200ms ease;
}

.w56-service-grid input:checked + span svg path {
  stroke: var(--w56-gold-pale);
  filter: drop-shadow(0 0 4px rgba(245,185,76,.75));
}

.w56-service-grid i {
  right: 1rem;
  bottom: .92rem;
}

.w56-onboard[dir="rtl"] .w56-service-grid i {
  right: auto;
  left: 1rem;
}

.w56-submit {
  position: relative;
  overflow: hidden;
  border-color: rgba(245,185,76,.42);
  background:
    radial-gradient(circle at 82% 20%, rgba(245,185,76,.14), transparent 18rem),
    linear-gradient(145deg, #111410, #080a08);
  box-shadow: 0 2rem 8rem -4rem rgba(245,185,76,.35);
}

.w56-submit::before {
  position: absolute;
  top: 0;
  right: 12%;
  width: 18rem;
  height: 1px;
  background: var(--w56-gold);
  box-shadow: 0 0 20px rgba(245,185,76,.8);
  content: '';
}

.w56-submit button {
  background: var(--w56-gold);
}

.w56-success-signal {
  display: flex;
  width: min(32rem, 72vw);
  align-items: center;
  gap: .8rem;
  margin-bottom: 3rem;
  color: var(--w56-gold);
  font-family: var(--w56-mono);
  font-size: .65rem;
  letter-spacing: .13em;
}

.w56-success-signal i { flex: 1; height: 1px; background: var(--w56-gold); box-shadow: 0 0 12px rgba(245,185,76,.5); }
.w56-success-signal i:nth-of-type(2) { flex: 0 0 .7rem; height: .7rem; border: 1px solid var(--w56-gold-pale); border-radius: 50%; background: var(--w56-gold); }

@keyframes w56-title-in {
  from { opacity: 0; filter: blur(12px); transform: translateY(.38em) rotateX(14deg); }
  to { opacity: 1; filter: blur(0); transform: none; }
}

@media (max-width: 1000px) {
  .w56-form::before,
  .w56-form-section::before { display: none; }
  .w56-form-section { min-height: auto; }
}

@media (max-width: 700px) {
  .w56-nav { min-height: 76px; }
  .w56-nav-actions { gap: .45rem; }
  .w56-language { min-height: 2.5rem; padding-inline: .7rem; }
  .w56-language span,
  .w56-back { display: none; }
  .w56-intro { min-height: 76svh; padding-top: 7.5rem; }
  .w56-intro h1 { font-size: clamp(3.45rem, 16.5vw, 5.2rem); }
  .w56-onboard[dir="rtl"] .w56-intro h1 { font-size: clamp(3rem, 14vw, 4.7rem); }
  .w56-intro-circuit { margin-bottom: 1.5rem; }
  .w56-section-head h2 { max-width: 13ch; }
  .w56-service-grid { gap: .55rem; }
  .w56-service-grid label > span { min-height: 7.5rem; padding: .82rem; }
  .w56-service-grid strong { font-size: .78rem; }
  .w56-submit { margin-bottom: 2rem; }
}

@media (prefers-reduced-motion: reduce) {
  .w56-intro h1 span,
  .w56-intro h1 em { animation: none; }
}

/* Website brief v2 */
.w56-onboard {
  overflow-x: clip;
  overflow-y: visible;
}

.w56-form-layout {
  align-items: start;
}

.w56-step-rail {
  top: max(1.25rem, env(safe-area-inset-top));
  max-height: calc(100svh - 2.5rem);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
}

.w56-step-rail::-webkit-scrollbar { display: none; }

.w56-step-rail > p {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
}

.w56-step-rail > p > span {
  color: #6e5932;
  font-size: .56rem;
  letter-spacing: .08em;
}

.w56-step-rail li.has-input a > i {
  border-color: rgba(245,185,76,.58);
  background: rgba(245,185,76,.25);
}

.w56-step-rail li.is-active a {
  color: var(--w56-bone);
}

.w56-step-rail li.is-active a::after {
  position: absolute;
  right: 1.25rem;
  left: 2.55rem;
  bottom: .25rem;
  height: 1px;
  transform-origin: left;
  background: linear-gradient(90deg, var(--w56-gold), transparent);
  content: '';
  animation: w56-rail-signal 420ms cubic-bezier(.16,1,.3,1) both;
}

.w56-onboard[dir="rtl"] .w56-step-rail li.is-active a::after {
  right: 2.55rem;
  left: 1.25rem;
  transform-origin: right;
  background: linear-gradient(-90deg, var(--w56-gold), transparent);
}

.w56-choice-field {
  display: grid;
  gap: 1rem;
  padding: .3rem 0 0;
  margin: 0;
  border: 0;
}

.w56-choice-field legend {
  margin-bottom: 1rem;
  color: #aaa99f;
  font-family: var(--w56-mono);
  font-size: .73rem;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.w56-onboard[dir="rtl"] .w56-choice-field legend {
  font-family: var(--w56-arabic);
  letter-spacing: 0;
}

.w56-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
}

.w56-choice-grid--compact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.w56-choice-grid label {
  cursor: pointer;
}

.w56-choice-grid input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.w56-choice-grid label > span {
  position: relative;
  display: flex;
  min-height: 3.7rem;
  gap: .8rem;
  align-items: center;
  justify-content: space-between;
  border: 1px solid var(--w56-line);
  padding: .75rem .9rem;
  background: rgba(255,255,255,.012);
  color: #9f9f96;
  font-size: .9rem;
  line-height: 1.35;
  transition: border-color 180ms ease, color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.w56-choice-grid label > span i {
  flex: 0 0 auto;
  width: .55rem;
  height: .55rem;
  border: 1px solid #56584f;
  border-radius: 50%;
}

.w56-choice-grid input:checked + span {
  border-color: var(--w56-gold);
  background: rgba(245,185,76,.075);
  color: var(--w56-gold-pale);
  box-shadow: inset 3px 0 0 var(--w56-gold), 0 0 1.5rem rgba(245,185,76,.08);
}

.w56-onboard[dir="rtl"] .w56-choice-grid input:checked + span {
  box-shadow: inset -3px 0 0 var(--w56-gold), 0 0 1.5rem rgba(245,185,76,.08);
}

.w56-choice-grid input:checked + span i {
  border-color: var(--w56-gold-pale);
  background: var(--w56-gold);
  box-shadow: 0 0 10px rgba(245,185,76,.65);
}

.w56-choice-grid input:focus-visible + span {
  outline: 2px solid var(--w56-gold-pale);
  outline-offset: 3px;
}

.w56-upload-intro {
  border-inline-start: 1px solid var(--w56-gold);
  padding-inline-start: 1rem;
  color: var(--w56-muted);
  font-size: .85rem;
  line-height: 1.6;
}

.w56-upload-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .7rem;
}

.w56-upload {
  position: relative;
  display: block;
  cursor: pointer;
}

.w56-upload > input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.w56-upload > span {
  position: relative;
  display: grid;
  min-height: 10rem;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr auto;
  gap: .45rem 1rem;
  align-content: start;
  border: 1px dashed rgba(240,234,220,.25);
  padding: 1.15rem;
  overflow: hidden;
  background: rgba(255,255,255,.012);
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.w56-upload > span::after {
  position: absolute;
  right: -2.2rem;
  bottom: -2.2rem;
  width: 6rem;
  height: 6rem;
  border: 1px solid rgba(245,185,76,.12);
  border-radius: 50%;
  content: '';
}

.w56-onboard[dir="rtl"] .w56-upload > span::after {
  right: auto;
  left: -2.2rem;
}

.w56-upload b {
  color: var(--w56-bone);
  font-size: .92rem;
  font-weight: 650;
}

.w56-upload small {
  grid-column: 1;
  color: #797b73;
  font-size: .72rem;
  line-height: 1.45;
}

.w56-upload i {
  grid-column: 2;
  grid-row: 1 / 3;
  color: var(--w56-gold);
  font-size: 1.25rem;
  font-style: normal;
}

.w56-upload em {
  grid-column: 1 / -1;
  align-self: end;
  color: #6f726a;
  font-family: var(--w56-mono);
  font-size: .57rem;
  font-style: normal;
  letter-spacing: .04em;
}

.w56-onboard[dir="rtl"] .w56-upload em { font-family: var(--w56-arabic); }

.w56-onboard[dir="rtl"] .w56-step-rail a {
  font-size: .86rem;
}

.w56-onboard[dir="rtl"] .w56-section-head > div {
  font-size: 1.08rem;
}

.w56-onboard[dir="rtl"] .w56-label,
.w56-onboard[dir="rtl"] .w56-choice-field legend {
  font-size: .8rem;
}

.w56-onboard[dir="rtl"] .w56-choice-grid label > span {
  font-size: 1rem;
}

.w56-onboard[dir="rtl"] .w56-upload-intro {
  font-size: .92rem;
}

.w56-onboard[dir="rtl"] .w56-upload b {
  font-size: 1rem;
}

.w56-onboard[dir="rtl"] .w56-upload small {
  font-size: .8rem;
}

.w56-upload:hover > span,
.w56-upload:focus-within > span,
.w56-upload.has-files > span {
  border-color: var(--w56-gold);
  background: rgba(245,185,76,.055);
  box-shadow: 0 0 1.6rem rgba(245,185,76,.08);
}

.w56-upload.has-files em { color: var(--w56-gold-pale); }
.w56-upload.has-error > span { border-color: var(--w56-red); }
.w56-upload.has-error em { color: #e58b73; }

@keyframes w56-rail-signal {
  from { transform: scaleX(0); opacity: 0; }
  to { transform: scaleX(1); opacity: 1; }
}

@media (max-width: 1000px) {
  .w56-step-rail { max-height: none; overflow: visible; }
}

@media (max-width: 700px) {
  .w56-choice-grid,
  .w56-choice-grid--compact,
  .w56-upload-grid { grid-template-columns: 1fr; }
  .w56-upload > span { min-height: 8.5rem; }
}
