/* Shared conversion journeys: editorial context, readable forms, existing contracts. */
.experience-page .conversion-shell {
  display:grid; grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  max-width:1240px; margin:40px auto 72px; border:1px solid #dce1d9;
  border-radius:20px; overflow:hidden; background:#fff;
}
.experience-page .conversion-editorial {
  min-width:0; margin:0; padding:44px 40px; border:0; border-radius:0;
  background:#101815; color:#f6f7f2; position:relative;
  display:flex; flex-direction:column; align-items:flex-start;
}
.experience-page .conversion-editorial::after {
  content:""; position:absolute; width:180px; height:180px; right:-94px; bottom:40px;
  border:1px solid #425044; border-radius:50%; pointer-events:none;
  box-shadow:0 0 0 20px #101815,0 0 0 21px #344237,0 0 0 41px #101815,0 0 0 42px #29372d;
}
.experience-page .conversion-editorial > * { position:relative; z-index:1; }
.experience-page .conversion-expanded-context { display:flex; flex:1; flex-direction:column; width:100%; }
.experience-page .conversion-mobile-next { display:none; }
.experience-page .conversion-editorial .conversion-back {
  display:inline-flex; gap:12px; align-items:center; min-height:44px; color:#c4cec5;
  text-decoration:none; font-size:13px; margin:-8px 0 52px;
}
.experience-page .conversion-editorial .conversion-back:hover { color:#d8ff58; }
.experience-page .conversion-editorial .eyebrow { color:#d8ff58; font-size:11px; margin-bottom:18px; }
.experience-page .conversion-editorial h1,
.experience-page .conversion-editorial > h2 {
  color:#f6f7f2; font-size:clamp(2.5rem,4vw,3.8rem); font-weight:780;
  letter-spacing:-.055em; line-height:1.06; max-width:11ch; margin:0 0 24px;
}
.experience-page .conversion-editorial > h2 em { font-style:normal; color:#d8ff58; }
.experience-page .conversion-editorial .conversion-editorial-lead { color:#c4cec5; font-size:16px; line-height:1.65; max-width:36ch; margin:0; }
.experience-page .conversion-editorial .conversion-journey { list-style:none; padding:0; margin:44px 0 40px; width:100%; }
.experience-page .conversion-journey li { display:flex; gap:18px; padding:19px 0; border-top:1px solid #344138; }
.experience-page .conversion-step-number { color:#9aab9d; font-size:13px; padding-top:3px; font-variant-numeric:tabular-nums; }
.experience-page .conversion-journey li[aria-current] .conversion-step-number { color:#d8ff58; }
.experience-page .conversion-journey strong { display:block; font-size:15px; font-weight:650; color:#e5eae3; }
.experience-page .conversion-journey li[aria-current] strong { color:#d8ff58; }
.experience-page .conversion-journey li div > span { display:block; color:#aebcaf; font-size:12px; margin-top:4px; }
.experience-page .conversion-editorial-note { display:flex; gap:15px; align-items:flex-start; margin-top:auto; padding-top:24px; border-top:1px solid #344138; width:100%; }
.experience-page .conversion-editorial-note > .material-symbols { color:#d8ff58; font-size:22px; margin-top:3px; }
.experience-page .conversion-editorial-note p { font-size:12px; line-height:1.7; color:#c4cec5; margin:0; }
.experience-page .conversion-form-panel { min-width:0; padding:48px 48px 36px; background:#fff; }
.experience-page .conversion-form-heading > .eyebrow { font-size:10px; margin-bottom:10px; color:#4d6140; }
.experience-page .conversion-form-heading h2,
.experience-page .conversion-form-heading h1 { font-size:clamp(2rem,3vw,2.7rem); line-height:1.1; letter-spacing:-.045em; color:#101815; margin:0 0 18px; }
.experience-page .conversion-form-heading > p:not(.eyebrow) { color:#576256; font-size:14px; line-height:1.65; margin:0; max-width:55ch; }
.experience-page .conversion-shell .conversion-form { padding:0; margin:26px 0 0; background:transparent; border:0; border-radius:0; }
.experience-page .conversion-fields-help { font-size:12px; color:#64705f; margin-bottom:22px; }
.experience-page .conversion-form .field { margin-bottom:21px; }
.experience-page .conversion-form .field > label,
.experience-page .conversion-form legend { font-size:13px; color:#263426; }
.experience-page .conversion-form .field input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),
.experience-page .conversion-form .field select,
.experience-page .conversion-form .field textarea { background:#f6f7f2; border-color:#7e8b7c; border-radius:8px; min-height:48px; color:#101815; }
.experience-page .conversion-form .field .help { font-size:12px; color:#5b6757; margin-top:8px; }
.experience-page .conversion-form .help ul { margin-block:8px 0; padding-left:18px; }
.experience-page .conversion-form .help li { margin-bottom:4px; }
.experience-page .conversion-form #id_roles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.experience-page .conversion-form #id_roles label { padding:12px 9px; border:1px solid #7e8b7c; border-radius:8px; min-height:48px; display:flex; align-items:center; font-size:12px; font-weight:600; background:#fff; gap:5px; }
.experience-page .conversion-form #id_roles label:has(:checked) { border-color:#57723f; background:#edf3e4; color:#304a22; }
.experience-page .conversion-form .field input[type=checkbox] { width:18px; height:18px; min-height:18px; accent-color:#405a2b; margin:3px 7px 3px 0; }
.experience-page .conversion-form .field .check { font-size:12px; font-weight:500; line-height:1.65; }
.experience-page .conversion-form .error-summary { border-radius:8px; font-size:14px; }
.experience-page .conversion-form .button[type=submit] { width:100%; justify-content:space-between; min-height:52px; padding-inline:20px; font-size:14px; margin-top:4px; }
.experience-page .conversion-privacy-link { font-size:11px; line-height:1.6; margin:14px 0 0; text-align:center; }
.experience-page .conversion-privacy-link a { color:#57634f; }
.experience-page .conversion-before-submit { font-size:12px; line-height:1.7; padding:12px 14px; border-left:2px solid #698a4d; background:#f2f5ec; }
.experience-page .conversion-account-link { font-size:13px; border-top:1px solid #e0e5da; margin:24px 0 0; padding-top:20px; text-align:center; }
.experience-page .conversion-account-link a { color:#344d25; font-weight:650; }
.experience-page .conversion-proposal { width:100%; padding-top:24px; margin-top:24px; border-top:1px solid #405044; }
.experience-page .conversion-proposal h2 { font-size:24px; color:#f6f7f2; margin:0 0 8px; }
.experience-page .conversion-proposal p { color:#c4cec5; font-size:13px; }
.experience-page .conversion-proposal .facts { display:block; margin:20px 0; }
.experience-page .conversion-proposal .facts > div { margin-top:16px; padding:0; border:0; background:transparent; }
.experience-page .conversion-proposal .facts dt { color:#aebcaf; font-size:11px; }
.experience-page .conversion-proposal .facts dd { color:#eef1e9; font-size:14px; }
.experience-page .conversion-proposal .proposal-context-details { border-color:#405044; }
.experience-page .conversion-proposal .proposal-context-details summary,
.experience-page .conversion-proposal .proposal-context-details a { color:#d8ff58; }
.experience-page .conversion-proposal .proposal-context-details .help { color:#c4cec5; }
.experience-page .conversion-login .login-aside { align-self:stretch; }
.experience-page .conversion-login .conversion-editorial-note { margin-top:64px; }
.experience-page .conversion-login .login-links { display:flex; flex-direction:column; align-items:flex-start; gap:8px; margin:24px 0 0; }
.experience-page .conversion-login .login-links a { min-height:44px; display:inline-flex; align-items:center; font-size:13px; color:#405a2b; }

/* Editorial guides use the same geometry, with content from the real role workflow. */
.experience-page .conversion-guide-breadcrumb { max-width:1280px; padding:22px 40px; margin:auto; display:flex; flex-wrap:wrap; gap:10px; align-items:center; font-size:12px; color:#64705f; }
.experience-page .conversion-guide-breadcrumb a { min-height:44px; display:inline-flex; align-items:center; }
.experience-page.conversion-guide .conversion-guide-hero { max-width:1280px; margin:0 auto 30px; padding:56px; background:#101815; color:#f6f7f2; border-radius:18px; border:0; gap:64px; align-items:center; grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr); }
.experience-page.conversion-guide .guide-hero-copy .eyebrow { color:#d8ff58; margin:0 0 20px; }
.experience-page.conversion-guide .guide-hero h1 { color:#f6f7f2; font-size:clamp(2.7rem,4.8vw,4.6rem); max-width:15ch; line-height:1.02; margin:0 0 24px; letter-spacing:-.055em; }
.experience-page.conversion-guide .guide-hero .lead { color:#c4cec5; font-size:17px; line-height:1.7; max-width:43ch; }
.experience-page.conversion-guide .guide-hero .actions { gap:16px 24px; margin:28px 0 0; }
.experience-page.conversion-guide .guide-hero .actions > a:not(.button) { color:#e0e9da; font-size:13px; }
.experience-page.conversion-guide .guide-hero .guide-summary { position:relative; margin:0; padding:0 0 0 36px; border:0; border-left:1px solid #3e4a40; border-radius:0; background:transparent; box-shadow:none; }
.experience-page.conversion-guide .guide-summary .eyebrow { color:#b2c39d; font-size:10px; margin:20px 0 12px; }
.experience-page.conversion-guide .guide-summary h2 { color:#f6f7f2; font-size:26px; max-width:16ch; margin-bottom:14px; }
.experience-page.conversion-guide .guide-summary p:not(.eyebrow) { color:#c4cec5; font-size:14px; }
.experience-page.conversion-guide .guide-summary a { color:#d8ff58; font-size:13px; }
.experience-page .conversion-guide-visual { width:190px; height:190px; display:grid; place-items:center; border:1px solid #4a5c44; border-radius:50%; box-shadow:inset 0 0 0 16px #101815,inset 0 0 0 17px #344237; }
.experience-page .conversion-guide-visual span { font-size:72px; font-weight:750; letter-spacing:-.07em; line-height:1; color:#d8ff58; }
.experience-page.conversion-guide .guide-steps { list-style:none; padding:0; margin:30px 0 0; gap:36px; }
.experience-page.conversion-guide .guide-step { padding:26px 0 0; border-top:1px solid #b6c0ae; }
.experience-page.conversion-guide .guide-step .role-number { font-size:56px; line-height:1; font-weight:750; color:#526f37; margin:0 0 26px; }
.experience-page.conversion-guide .guide-step h3 { font-size:23px; }
.experience-page.conversion-guide .guide-step p { font-size:15px; line-height:1.75; }
.experience-page.conversion-guide .guide-expectations .grid { gap:20px; }
.experience-page.conversion-guide .guide-expectations .card { padding:24px; border-color:#dce1d5; box-shadow:none; }
.experience-page.conversion-guide .guide-expectations h3 { font-size:18px; }
.experience-page.conversion-guide .guide-expectations .card p { font-size:14px; }
.experience-page.conversion-guide .guide-footer { padding:40px; border:0; border-radius:16px; max-width:1200px; margin:24px auto 64px; background:#e9efde; }
.experience-page.conversion-guide .guide-footer h2 { font-size:32px; max-width:24ch; }

/* Access recovery shares the form language and preserves its delivery status. */
.experience-page .conversion-recovery { max-width:680px; margin:48px auto 72px; padding:36px; border:1px solid #dce1d5; border-top:4px solid #101815; border-radius:14px; background:#fff; }
.experience-page .conversion-recovery > .eyebrow { color:#4d6140; font-size:11px; }
.experience-page .conversion-recovery h1 { font-size:clamp(2rem,4vw,3rem); line-height:1.08; letter-spacing:-.045em; }
.experience-page .conversion-recovery > p { font-size:15px; }
.experience-page .conversion-recovery .form-card { background:transparent; padding:0; border:0; }
.experience-page .conversion-recovery .quiet { padding:16px; background:#f3f5ec; font-size:13px; }
.experience-page .conversion-recovery .back { min-height:44px; display:inline-flex; align-items:center; margin-bottom:20px; }

@media(min-width:980px) {
  .experience-page .conversion-signup .conversion-editorial { padding-top:48px; }
}
@media(max-width:1320px) {
  .experience-page .conversion-shell { margin-inline:28px; }
  .experience-page.conversion-guide .conversion-guide-hero { margin-inline:28px; }
  .experience-page.conversion-guide .guide-footer { margin-inline:28px; }
}
@media(max-width:1050px) {
  .experience-page .conversion-shell { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
  .experience-page .conversion-editorial { padding:32px 28px; }
  .experience-page .conversion-form-panel { padding:36px 28px; }
  .experience-page .conversion-form #id_roles { grid-template-columns:1fr; gap:6px; }
  .experience-page.conversion-guide .conversion-guide-hero { padding:40px; gap:36px; }
}
@media(max-width:820px) {
  .experience-page .conversion-shell { grid-template-columns:1fr; margin:24px 20px 48px; border-radius:14px; }
  .experience-page .conversion-editorial { padding:28px; }
  .experience-page .conversion-editorial .conversion-back { margin-bottom:24px; }
  .experience-page .conversion-editorial h1,
  .experience-page .conversion-editorial > h2 { max-width:18ch; font-size:42px; margin-bottom:16px; }
  .experience-page .conversion-editorial .conversion-editorial-lead { max-width:52ch; font-size:14px; }
  .experience-page .conversion-editorial .conversion-journey { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:28px 0 0; }
  .experience-page .conversion-journey li { display:block; padding-top:12px; }
  .experience-page .conversion-step-number { display:block; margin-bottom:6px; }
  .experience-page .conversion-journey strong { font-size:12px; }
  .experience-page .conversion-journey li div > span { font-size:11px; }
  .experience-page .conversion-editorial-note { margin-top:20px; padding-top:18px; }
  .experience-page .conversion-form-panel { padding:28px; }
  .experience-page .conversion-form #id_roles { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .experience-page .conversion-login .conversion-editorial-note { margin-top:24px; }
  .experience-page.conversion-guide .conversion-guide-hero { grid-template-columns:1fr; margin:0 20px 20px; padding:32px 28px; gap:32px; }
  .experience-page.conversion-guide .guide-hero h1 { font-size:46px; max-width:17ch; }
  .experience-page.conversion-guide .guide-hero .guide-summary { padding:24px 0 0; border-left:0; border-top:1px solid #3e4a40; }
  .experience-page .conversion-guide-visual { display:none; }
  .experience-page.conversion-guide .guide-summary h2 { max-width:none; }
  .experience-page.conversion-guide .guide-summary .eyebrow { margin-top:0; }
  .experience-page.conversion-guide .guide-steps { grid-template-columns:1fr; gap:24px; }
  .experience-page.conversion-guide .guide-step { position:relative; padding-left:66px; }
  .experience-page.conversion-guide .guide-step .role-number { position:absolute; left:0; top:26px; font-size:36px; }
  .experience-page.conversion-guide .guide-step h3 { font-size:21px; }
  .experience-page.conversion-guide .guide-footer { margin:20px 20px 48px; padding:28px; }
  .experience-page .conversion-guide-breadcrumb { padding:12px 24px; }
  .experience-page .conversion-recovery { margin:28px 20px 48px; padding:28px; }
}
@media(max-width:480px) {
  .experience-page .conversion-shell { margin:16px 16px 40px; }
  .experience-page .conversion-editorial { padding:24px 22px; }
  .experience-page .conversion-editorial h1,
  .experience-page .conversion-editorial > h2 { font-size:36px; }
  .experience-page .conversion-editorial .conversion-back { margin-bottom:20px; }
  .experience-page .conversion-editorial-note { gap:10px; }
  .experience-page .conversion-editorial-note p { font-size:11px; }
  .experience-page .conversion-form-panel { padding:26px 22px; }
  .experience-page .conversion-form-heading h2,
  .experience-page .conversion-form-heading h1 { font-size:30px; }
  .experience-page .conversion-form #id_roles { grid-template-columns:1fr; }
  .experience-page .conversion-journey li div > span { display:none; }
  .experience-page .conversion-proposal h2 { font-size:21px; }
  .experience-page.conversion-guide .conversion-guide-hero { margin-inline:16px; padding:28px 24px; }
  .experience-page.conversion-guide .guide-hero h1 { font-size:38px; }
  .experience-page.conversion-guide .guide-hero .lead { font-size:15px; }
  .experience-page.conversion-guide .guide-hero .actions { align-items:stretch; }
  .experience-page.conversion-guide .guide-hero .actions .button { width:100%; }
  .experience-page.conversion-guide .guide-footer { margin-inline:16px; padding:24px; }
  .experience-page.conversion-guide .guide-footer h2 { font-size:28px; }
  .experience-page .conversion-recovery { margin-inline:16px; padding:24px; }
}
@media(max-width:760px) {
  .experience-page .conversion-signup .conversion-editorial { padding:18px 22px 24px; }
  .experience-page .conversion-signup .conversion-editorial::after { display:none; }
  .experience-page .conversion-signup .conversion-editorial .conversion-back { margin:0 0 12px; min-height:44px; font-size:12px; }
  .experience-page .conversion-signup .conversion-editorial > .eyebrow { margin:0 0 10px; font-size:10px; }
  .experience-page .conversion-signup .conversion-editorial h1 { font-size:32px; max-width:none; margin:0; line-height:1.06; }
  .experience-page .conversion-signup .conversion-editorial .conversion-editorial-lead,
  .experience-page .conversion-signup .conversion-expanded-context { display:none; }
  .experience-page .conversion-signup .conversion-form-panel { padding:22px; }
  .experience-page .conversion-signup .conversion-form-heading > .eyebrow { display:none; }
  .experience-page .conversion-signup .conversion-form-heading h2 { font-size:26px; margin:0 0 10px; }
  .experience-page .conversion-signup .conversion-form-heading > p:not(.eyebrow) { font-size:12px; line-height:1.65; }
  .experience-page .conversion-signup .conversion-form { margin-top:18px; }
  .experience-page .conversion-signup .conversion-fields-help { font-size:11px; line-height:1.5; margin:0 0 14px; }
  .experience-page .conversion-signup .conversion-form .field { margin-bottom:18px; }
  .experience-page .conversion-mobile-next { display:block; margin-top:24px; padding-top:8px; border-top:1px solid #dce1d5; }
  .experience-page .conversion-mobile-next > summary { display:list-item; min-height:44px; padding:12px 0; font-size:12px; font-weight:650; color:#405a2b; cursor:pointer; }
  .experience-page .conversion-mobile-next p,
  .experience-page .conversion-mobile-next li { font-size:12px; line-height:1.7; color:#576256; }
  .experience-page .conversion-mobile-next ol { margin:8px 0 14px; padding-left:18px; }
  .experience-page .conversion-mobile-next .proposal-summary-compact { padding-top:14px; }
}
@media(prefers-reduced-motion:reduce) {
  .experience-page .conversion-shell *, .experience-page.conversion-guide * { scroll-behavior:auto; transition:none; animation:none; }
}
