:root{
  --cx-orange:#ff7a1a;
  --cx-gold:#ffc04a;
  --cx-purple:#9a63f2;
  --cx-purple-soft:#6a3ca3;
  --cx-card:#100b0d;
  --cx-card-2:#080709;
  --cx-text:#fff4e9;
  --cx-muted:#cdbeb5;
  --cx-line:rgba(255,137,35,.46);
  --cx-purple-line:rgba(157,99,242,.58);
  --cx-shadow:0 24px 65px rgba(0,0,0,.48);
}

/* Shared cinematic card grammar */
.cinematic-card,
.ref-choice-card,
.ref-trust-row article,
.ref-story-editor,
.ref-story-review,
.ref-freeflow-form,
.ref-freeflow-review,
.company-group,
.story-row,
.story-article,
.story-side .glass-card,
.story-section,
.info-card,
.policy-card{
  position:relative;
  border:1px solid var(--cx-line)!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 82% 5%,rgba(255,127,28,.12),transparent 26%),
    linear-gradient(155deg,rgba(35,15,14,.96),rgba(10,8,10,.98) 70%)!important;
  box-shadow:var(--cx-shadow),inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:hidden;
}

.cinematic-card::before,
.ref-choice-card::before,
.ref-trust-row article::before,
.ref-story-editor::before,
.ref-story-review::before,
.ref-freeflow-form::before,
.ref-freeflow-review::before,
.company-group::before,
.story-row::before,
.story-article::before,
.story-side .glass-card::before,
.story-section::before,
.info-card::before,
.policy-card::before{
  content:"";
  position:absolute;
  z-index:0;
  left:9%;right:9%;top:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--cx-gold),var(--cx-orange),transparent);
  opacity:.8;
}

.cinematic-card>*,
.ref-choice-card>*,
.ref-trust-row article>*,
.ref-story-editor>*,
.ref-story-review>*,
.ref-freeflow-form>*,
.ref-freeflow-review>*,
.company-group>*,
.story-row>*,
.story-article>*,
.story-side .glass-card>*,
.story-section>*,
.info-card>*,
.policy-card>*{position:relative;z-index:1}

[data-tone="purple"],
.ref-free-choice,
.ref-journey-card.purple{
  border-color:var(--cx-purple-line)!important;
  background:
    radial-gradient(circle at 82% 5%,rgba(138,82,235,.18),transparent 28%),
    linear-gradient(155deg,rgba(28,18,45,.96),rgba(9,7,13,.99) 72%)!important;
}

.card-interactive,
.ref-choice-card,
.story-row,
.ref-journey-card{
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,filter .28s ease;
}

.card-interactive:hover,
.card-interactive:focus-visible,
.ref-choice-card:hover,
.ref-choice-card:focus-within,
.story-row:hover,
.story-row:focus-visible{
  transform:translateY(-8px);
  border-color:rgba(255,190,74,.9)!important;
  box-shadow:0 30px 80px rgba(0,0,0,.58),0 0 28px rgba(255,112,20,.18)!important;
}

/* Home: visual first, fewer signals */
.ref-home-hero{min-height:500px;gap:28px}
.ref-home-copy{padding-left:34px}
.ref-home-copy h1{max-width:680px;font-size:clamp(2.5rem,4.7vw,5.5rem)}
.ref-home-copy p{max-width:520px}
.ref-home-art{display:none}
.ref-home-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.ref-explore-link{display:inline-flex;min-height:48px;align-items:center;padding:0 4px;color:#ffd19a;font-weight:800;font-size:.85rem}
.ref-explore-link:hover,.ref-explore-link:focus-visible{color:#fff}

.ref-home-card-stage{
  position:relative;
  min-height:430px;
  perspective:1400px;
  isolation:isolate;
}
.ref-home-card-stage::before{
  content:"";
  position:absolute;
  left:7%;right:7%;bottom:20px;height:145px;
  border:1px solid rgba(255,112,22,.4);
  border-radius:50%;
  transform:rotateX(72deg);
  box-shadow:0 0 70px rgba(255,91,17,.16),inset 0 0 38px rgba(113,66,255,.12);
}
.ref-home-card-stage::after{
  content:"";
  position:absolute;
  left:20%;right:20%;bottom:58px;height:50px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,126,29,.36),rgba(116,66,240,.16) 42%,transparent 72%);
  filter:blur(13px);
}
.ref-home-core{
  position:absolute;
  z-index:2;
  left:50%;bottom:52px;
  width:190px;height:255px;
  transform:translateX(-50%);
  filter:drop-shadow(0 20px 30px rgba(0,0,0,.45));
}
.ref-home-core svg{width:100%;height:100%;display:block;mask-image:linear-gradient(#000 75%,transparent)}
.ref-home-signal-card{
  --float-delay:0s;
  position:absolute;
  z-index:3;
  width:145px;height:205px;
  padding:8px;
  border:1px solid var(--cx-line);
  border-radius:18px;
  background:linear-gradient(160deg,rgba(47,17,15,.96),rgba(8,7,9,.98));
  box-shadow:0 22px 55px rgba(0,0,0,.5),0 0 22px rgba(255,102,20,.12);
  overflow:hidden;
  animation:cx-float 7s ease-in-out infinite var(--float-delay);
  transition:translate .25s ease,scale .25s ease,border-color .25s ease;
}
.ref-home-signal-card[data-tone="purple"]{border-color:var(--cx-purple-line);background:linear-gradient(160deg,rgba(36,22,59,.96),rgba(8,7,12,.98))}
.ref-home-signal-card svg{width:100%;height:145px;border-radius:13px;background:#18090a;display:block}
.ref-home-signal-card strong{display:block;padding:10px 7px 3px;font-size:.82rem;text-align:center}
.ref-home-signal-card:hover,.ref-home-signal-card:focus-visible{z-index:8;translate:0 -12px;scale:1.05;border-color:var(--cx-gold)}
.ref-home-signal-card:nth-of-type(1){left:2%;top:130px;transform:rotate(-8deg);--float-delay:-1s}
.ref-home-signal-card:nth-of-type(2){left:20%;top:45px;transform:rotate(-4deg);--float-delay:-3s}
.ref-home-signal-card:nth-of-type(3){left:50%;top:12px;transform:translateX(-50%);--float-delay:-5s}
.ref-home-signal-card:nth-of-type(4){right:20%;top:45px;transform:rotate(4deg);--float-delay:-2s}
.ref-home-signal-card:nth-of-type(5){right:2%;top:130px;transform:rotate(8deg);--float-delay:-4s}

.ref-theme-signal{
  display:grid;
  grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr) auto;
  align-items:center;
  gap:22px;
  margin-top:-12px;
  padding:22px 26px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(22,18,19,.94),rgba(7,7,8,.95));
}
.ref-theme-signal h2{margin:0;font-size:1.2rem}
.ref-theme-signal p{margin:5px 0 0;color:var(--cx-muted);font-size:.76rem}
.ref-theme-signal-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.ref-theme-signal-list a{padding:8px 12px;border:1px solid rgba(255,145,38,.26);border-radius:999px;background:rgba(255,118,20,.055);color:#ffd095;font-size:.74rem}
.ref-theme-signal-list a:hover,.ref-theme-signal-list a:focus-visible{border-color:var(--cx-gold);background:rgba(255,126,22,.12);color:#fff}
.ref-theme-signal .ref-explore-pill{position:static;transform:none;white-space:nowrap}

.ref-trust-row{background:transparent!important;border:0!important;padding:0!important;gap:12px}
.ref-trust-row article{padding:14px 16px;min-height:86px}
.ref-trust-row article p{display:none}
.ref-trust-row .ref-round-icon{width:42px;height:42px;font-size:1rem}
.ref-trust-row h3{font-size:.78rem}

/* Share route cards */
.ref-choice-main{padding-top:42px}
.ref-choice-heading p{margin-top:8px}
.ref-choice-kicker{margin:0 0 10px!important;color:var(--cx-orange)!important;font-size:.67rem!important;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
.ref-choice-grid{max-width:980px;gap:20px}
.ref-choice-card{border-radius:24px!important}
.ref-choice-image{height:230px;position:relative}
.ref-card-emblem{position:absolute;left:18px;top:18px;width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(255,191,75,.7);border-radius:50%;background:rgba(31,12,12,.86);color:var(--cx-gold);font-weight:900;box-shadow:0 0 22px rgba(255,113,21,.22)}
.ref-free-choice .ref-card-emblem{border-color:rgba(169,113,245,.75);color:#d7bdff;background:rgba(35,19,54,.88)}
.ref-choice-body{padding:22px 24px 24px}
.ref-choice-body h2{font-size:clamp(1.35rem,2vw,1.85rem)}
.ref-choice-body>p:not(.ref-choice-label){margin:11px 0 18px;font-size:.86rem}

/* Guided: airborne ensemble formation */
.ref-guided-main{padding-top:18px;overflow:visible}
.ref-story-heading{margin-bottom:8px}
.ref-story-heading h1{font-size:clamp(1.9rem,3vw,3.25rem)}
.ref-story-heading span{font-size:.76rem}
.ref-guided-progress{
  width:min(620px,calc(100% - 32px));
  margin:0 auto 4px;
  padding:9px 14px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:center;
  border:1px solid rgba(255,135,31,.28);
  border-radius:999px;
  background:rgba(9,8,9,.82);
  backdrop-filter:blur(14px);
}
.ref-guided-progress p{margin:0;white-space:nowrap;font-size:.7rem}
.ref-progress-track{height:5px}
.ref-journey-deck{
  position:relative;
  display:block;
  width:min(100%,1500px);
  min-height:515px;
  padding:0;
  overflow:visible;
  perspective:1500px;
  isolation:isolate;
}
.ref-journey-deck::before{
  content:"";
  position:absolute;
  left:4%;right:4%;bottom:15px;height:145px;
  border:1px solid rgba(255,106,18,.38);
  border-radius:50%;
  transform:rotateX(74deg);
  box-shadow:0 0 58px rgba(255,94,16,.12),inset 0 0 34px rgba(111,61,241,.14);
}
.ref-journey-deck::after{
  content:"";
  position:absolute;
  left:18%;right:18%;bottom:42px;height:54px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,116,20,.38),rgba(119,65,240,.2) 44%,transparent 74%);
  filter:blur(14px);
}
.ref-journey-card{
  --x:50%;--y:40px;--ry:0deg;--rz:0deg;--scale:1;
  position:absolute;
  z-index:3;
  left:var(--x);top:54px;
  width:176px;height:360px;
  padding:8px 10px 14px;
  border-radius:20px;
  background:linear-gradient(165deg,rgba(48,16,15,.98),rgba(8,7,9,.99) 72%);
  box-shadow:0 28px 62px rgba(0,0,0,.52),0 0 18px rgba(255,101,17,.11);
  transform:translateX(-50%) translateY(var(--y)) rotateY(var(--ry)) rotateZ(var(--rz)) scale(var(--scale));
  transform-origin:50% 100%;
  animation:cx-card-drift 8s ease-in-out infinite;
}
.ref-journey-card:nth-child(1){--x:6%;--y:112px;--ry:25deg;--rz:-8deg;--scale:.8;animation-delay:-1s}
.ref-journey-card:nth-child(2){--x:18%;--y:64px;--ry:17deg;--rz:-5deg;--scale:.88;animation-delay:-3s}
.ref-journey-card:nth-child(3){--x:30%;--y:28px;--ry:9deg;--rz:-2deg;--scale:.95;animation-delay:-5s}
.ref-journey-card:nth-child(4){--x:42%;--y:0px;--scale:1.03;animation-delay:-2s}
.ref-journey-card:nth-child(5){--x:58%;--y:0px;--scale:1.03;animation-delay:-4s}
.ref-journey-card:nth-child(6){--x:70%;--y:28px;--ry:-9deg;--rz:2deg;--scale:.95;animation-delay:-6s}
.ref-journey-card:nth-child(7){--x:82%;--y:64px;--ry:-17deg;--rz:5deg;--scale:.88;animation-delay:-2.5s}
.ref-journey-card:nth-child(8){--x:94%;--y:112px;--ry:-25deg;--rz:8deg;--scale:.8;animation-delay:-4.5s}
.ref-journey-card .ref-art-svg{height:190px;border-radius:14px}
.ref-card-icon{top:170px;left:14px;width:40px;height:40px}
.ref-journey-card h2{margin:29px 7px 0;font-size:.84rem}
.ref-journey-card p{margin:9px 7px 0;font-size:.66rem;line-height:1.35;color:var(--cx-muted)}
.ref-card-status{margin:10px 7px 0;font-size:.57rem;letter-spacing:.07em}
.ref-journey-card:hover,.ref-journey-card:focus-visible,.ref-journey-card.is-active{
  z-index:20;
  transform:translateX(-50%) translateY(calc(var(--y) - 34px)) rotateY(0) rotateZ(0) scale(1.06);
  border-color:var(--cx-gold)!important;
  box-shadow:0 36px 84px rgba(0,0,0,.65),0 0 32px rgba(255,116,21,.28)!important;
  animation-play-state:paused;
}
.ref-journey-card.is-active::after{
  content:"";position:absolute;left:35%;right:35%;bottom:-42px;height:62px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,182,47,.72),transparent 68%);filter:blur(8px)
}
.ref-story-editor,.ref-story-review{width:min(980px,calc(100% - 28px));margin-top:6px}

/* Free-flow: visual intro, writing first */
.ref-freeflow-main{padding-top:20px}
.ref-freeflow-intro{width:min(1080px,calc(100% - 28px));display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:28px}
.ref-freeflow-intro .ref-story-heading{text-align:left;margin:0;padding-left:14px}
.ref-freeflow-intro .ref-story-heading::before{display:none}
.ref-freeflow-art{width:100%;height:280px;margin:0}
.ref-route-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:4px 0 16px}
.ref-route-strip span{padding:8px 12px;border:1px solid rgba(157,99,242,.32);border-radius:999px;background:rgba(138,82,235,.07);color:#ddc9ff;font-size:.7rem}
.ref-freeflow-features{display:none!important}
.ref-freeflow-form{margin-top:0}
.ref-form-intro{align-items:end}
.ref-form-intro>p{max-width:430px;font-size:.8rem}

/* Employer stories: image-led cards inside compact groups */
.directory-hero{padding-top:105px}
.directory-hero .display-title{font-size:clamp(2.6rem,5vw,5.8rem)}
.directory-hero .lede{max-width:650px}
.directory-tools{padding:16px!important}
.company-list{display:grid;gap:14px}
.company-group{padding:0!important}
.company-group summary{padding:16px 18px!important}
.company-group[open]{padding-bottom:18px!important}
.story-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px!important;
  padding:0 16px!important;
}
.story-row{
  display:grid!important;
  grid-template-columns:86px 1fr auto!important;
  gap:12px!important;
  align-items:center!important;
  min-height:126px;
  padding:10px!important;
}
.story-thumb{width:86px;height:104px;border-radius:15px;overflow:hidden;background:#190b0d;border:1px solid rgba(255,145,35,.22)}
.story-thumb svg{width:100%;height:100%;display:block}
.story-row h3{margin:7px 0 5px!important;font-size:.92rem!important;line-height:1.25}
.story-row p{margin:0!important;font-size:.65rem!important;line-height:1.4}
.story-row .chip{font-size:.58rem;padding:.35rem .5rem}
.story-arrow{align-self:center}

/* Story reading: chapter cards, not a wall of text */
.story-detail-layout{gap:18px!important}
.story-article{padding:22px!important}
.story-title-block{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px;align-items:center;margin-bottom:14px}
.story-title-block h1{margin-bottom:.7rem!important}
.story-hero-visual{height:250px;margin:0;border:1px solid rgba(255,143,36,.34);border-radius:20px;overflow:hidden;background:#17090b;box-shadow:0 18px 45px rgba(0,0,0,.38)}
.story-hero-visual svg{width:100%;height:100%;display:block}
.story-article h1{font-size:clamp(2.2rem,4vw,4.6rem)!important}
.story-article .summary{max-width:720px}
.story-section{padding:18px 20px!important;margin:12px 0!important}
.story-section h2{font-size:1.25rem!important;margin:.35rem 0 .55rem!important}
.story-section p{margin:0!important;line-height:1.65!important}
.story-side{gap:12px!important}
.story-side .glass-card{padding:16px!important}
.story-side h3{margin-top:0}

/* More and Privacy: progressive disclosure */
.info-hero,.policy-grid{max-width:1180px}
.info-hero .display-title{font-size:clamp(2.6rem,5vw,5.8rem)}
.info-stack{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding-bottom:5rem}
.info-card,.policy-card{display:block!important;padding:0!important}
.info-card summary,.policy-card summary{
  min-height:128px;
  display:grid;
  grid-template-columns:58px 1fr auto;
  gap:15px;
  align-items:center;
  padding:18px;
  cursor:pointer;
  list-style:none;
}
.info-card summary::-webkit-details-marker,.policy-card summary::-webkit-details-marker{display:none}
.info-card summary::after,.policy-card summary::after{content:"+";width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,154,44,.35);border-radius:50%;color:var(--cx-gold)}
.info-card[open] summary::after,.policy-card[open] summary::after{content:"–"}
.info-card summary h2,.policy-card summary h2{margin:.15rem 0 .35rem!important;font-size:1.18rem!important}
.info-card summary p,.policy-card summary p{margin:0!important;color:var(--cx-muted);font-size:.76rem;line-height:1.45}
.info-card .info-icon,.policy-card .info-icon{width:52px;height:52px;border-radius:16px;font-size:1.2rem}
.card-detail{padding:0 20px 20px 92px;color:var(--cx-muted);line-height:1.7}
.card-detail ul{padding-left:1.1rem;margin:.2rem 0}
.policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;padding-bottom:5rem}

@keyframes cx-float{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes cx-card-drift{0%,100%{margin-top:0}50%{margin-top:-7px}}

@media(max-width:1220px){
  .ref-home-hero{grid-template-columns:.85fr 1.15fr}
  .ref-home-signal-card{width:126px;height:184px}.ref-home-signal-card svg{height:127px}
  .ref-journey-deck{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-height:auto;padding:14px 16px 24px}
  .ref-journey-deck::before,.ref-journey-deck::after{display:none}
  .ref-journey-card,.ref-journey-card:nth-child(n){position:relative;left:auto;top:auto;width:auto;height:345px;transform:none;animation:none}
  .ref-journey-card:hover,.ref-journey-card:focus-visible,.ref-journey-card.is-active{transform:translateY(-8px) scale(1.02)}
  .story-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
  .ref-home-hero{grid-template-columns:1fr;min-height:auto}
  .ref-home-copy{padding:36px 20px 8px}
  .ref-home-card-stage{min-height:370px}
  .ref-theme-signal{grid-template-columns:1fr;text-align:center}
  .ref-theme-signal .ref-explore-pill{justify-self:center}
  .ref-freeflow-intro{grid-template-columns:1fr}.ref-freeflow-intro .ref-story-heading{text-align:center;padding-left:0}
  .ref-freeflow-art{height:240px}
  .info-stack,.policy-grid{grid-template-columns:1fr!important}
  .story-list{grid-template-columns:1fr}
  .story-title-block{grid-template-columns:1fr}.story-hero-visual{height:220px}
}

@media(max-width:760px){
  .ref-home-card-stage{display:flex;gap:10px;overflow-x:auto;min-height:auto;padding:16px 12px 24px;scroll-snap-type:x mandatory}
  .ref-home-card-stage::before,.ref-home-card-stage::after,.ref-home-core{display:none}
  .ref-home-signal-card,.ref-home-signal-card:nth-of-type(n){position:relative;left:auto;right:auto;top:auto;flex:0 0 150px;transform:none;animation:none;scroll-snap-align:center}
  .ref-theme-signal{padding:18px 14px}.ref-theme-signal-list{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}.ref-theme-signal-list a{flex:0 0 auto}
  .ref-trust-row{grid-template-columns:repeat(2,1fr)!important}.ref-trust-row article{min-height:74px;padding:10px}.ref-trust-row article p{display:none}
  .ref-choice-grid{gap:14px}.ref-choice-image{height:190px}
  .ref-guided-progress{grid-template-columns:1fr auto}.ref-guided-progress .ref-progress-track{grid-column:1/-1;grid-row:2}.ref-progress-counts{text-align:right}
  .ref-journey-deck{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:14px 14px 24px;gap:12px}
  .ref-journey-card,.ref-journey-card:nth-child(n){flex:0 0 min(78vw,260px);height:360px;scroll-snap-align:center}
  .ref-journey-card:hover,.ref-journey-card:focus-visible,.ref-journey-card.is-active{transform:translateY(-4px)}
  .ref-form-intro{display:block}.ref-form-intro>p{margin-top:8px}
  .story-row{grid-template-columns:70px 1fr auto!important}.story-thumb{width:70px;height:90px}
  .card-detail{padding:0 16px 18px}
  .info-card summary,.policy-card summary{grid-template-columns:48px 1fr auto;padding:15px}.info-card .info-icon,.policy-card .info-icon{width:44px;height:44px}
}

@media(max-width:440px){
  .ref-trust-row{grid-template-columns:1fr!important}
  .story-row{grid-template-columns:62px 1fr!important}.story-arrow{display:none}.story-thumb{width:62px;height:82px}
}

@media(prefers-reduced-motion:reduce){
  .ref-home-signal-card,.ref-journey-card{animation:none!important}
  .card-interactive,.ref-choice-card,.story-row,.ref-journey-card{transition:none!important}
  .card-interactive:hover,.card-interactive:focus-visible,.ref-choice-card:hover,.story-row:hover,.ref-journey-card:hover,.ref-journey-card:focus-visible,.ref-journey-card.is-active{transform:none!important}
  .ref-home-signal-card:hover,.ref-home-signal-card:focus-visible{translate:0 0;scale:1}
}
