/* The customer journey uses the existing site components and official assets. */
.journey-page {
  --cream: #f6f7f3;
  --paper: #fdfefb;
  --sand: #e9eee8;
  --ink: #1b3029;
  --ink-soft: #506159;
  --ink-mute: #546459;
  --forest: #154e3d;
  --forest-deep: #123d31;
  --green: #246b50;
  --section-pad: clamp(5rem, 7vw, 7.5rem);
  --fs-h2: clamp(2.25rem, 3.7vw, 3.7rem);
  --fs-lead: clamp(1.0625rem, 1.3vw, 1.18rem);
  --shell: 76rem;
  color: var(--ink);
  background: var(--cream);
}
.journey-page h1, .journey-page h2 {font-weight:600; letter-spacing:-.052em; line-height:1.06; text-wrap:balance;}
.journey-page h2 em {font-weight:500;}
.journey-page .site-header {inset:0 0 auto;}
.journey-page .nav-shell {max-width:90rem; width:100%; min-height:5.25rem; padding:.9rem clamp(1.25rem, 4vw, 4rem); border:0; border-bottom:1px solid #dde5dd; border-radius:0; box-shadow:none; background:rgba(246,247,243,.94); backdrop-filter:blur(16px);}
.journey-page .site-header.is-scrolled .nav-shell {background:rgba(246,247,243,.97); box-shadow:none;}
.journey-page .brand-logo {width:9.75rem; height:auto;}
.journey-page .nav-links {gap:1.5rem;}
.journey-page .nav-links a {font-size:.78rem; font-weight:500;}
.journey-page .nav-cta {min-height:2.8rem; font-size:.78rem; padding-left:1.1rem;}
.journey-page .button {min-height:3.25rem; font-size:.88rem; font-weight:600;}
.journey-page .button-icon {width:2.15rem; height:2.15rem;}
.journey-page .entrance {
  position:relative; isolation:isolate; display:flex; flex-direction:column; align-items:stretch; gap:0;
  max-width:none; min-height:max(52rem,100svh); height:auto; max-height:none;
  padding:6.75rem 1.25rem 1.25rem; overflow:hidden; text-align:center;
  background:radial-gradient(ellipse at 50% 65%, #e5efdf 0, #f6f7f3 62%);
}
.entrance-heading {position:relative; z-index:2; flex:none; pointer-events:none;}
.entrance-label {font-size:.74rem; margin:0 0 1.1rem; letter-spacing:.13em; color:var(--green);}
.journey-page .entrance h1 {font-size:clamp(3.2rem,5.65vw,5.7rem); font-weight:500; line-height:1.01; margin:0;}
.journey-page .entrance h1 em {display:inline-block; font-size:1.08em; padding-top:.06em;}
.journey-page .entrance .hero-lead {max-width:38rem; font-size:1.02rem; margin:1.2rem auto 0; line-height:1.65;}
.entrance-stage {position:relative; z-index:0; width:100%; height:auto; flex:1 1 22rem; min-height:22rem; margin:.5rem 0; cursor:pointer;}
.entrance-stage canvas {position:absolute; inset:0; width:100%; height:100%; outline:none;}
.entrance-fallback {position:absolute; left:50%; top:0; height:100%; width:auto; max-width:none; transform:translateX(-50%); object-fit:contain; opacity:1; transition:opacity .4s;}
.entrance-stage.is-ready .entrance-fallback {opacity:0;}
.entrance-glow {position:absolute; inset:12% 25% 4%; border-radius:50%; background:radial-gradient(ellipse,#b6d7b733,transparent 65%); pointer-events:none;}
.entrance-stage.is-ready .entrance-glow {display:none;}
.entrance-actions {position:relative; z-index:3; flex:none; display:flex; flex-direction:column; align-items:center; gap:.6rem;}
.entrance-skip {min-height:2.5rem; display:flex; align-items:center; gap:.65rem; color:var(--ink-soft); font-size:.76rem; text-underline-offset:5px; text-decoration-color:#a7b8ad;}
.entrance-skip:hover {color:var(--forest);}
.entrance-foot {position:relative; flex:none; min-height:1.25rem; margin:1.25rem 2.75vw 0; display:flex; align-items:center; justify-content:space-between; gap:1rem;}
.journey-page .entrance-foot .development-note {margin:0; font-size:.67rem;}
.scroll-cue {display:flex; align-items:center; gap:.85rem; font-size:.68rem; color:var(--ink-soft);}
.scroll-cue i {font-size:1.2rem; font-style:normal;}
.entrance.is-opening .entrance-heading {opacity:.2; transform:translateY(-12px); transition:opacity .8s,transform .8s;}
.chapter-label {display:flex; align-items:center; justify-content:center; gap:.85rem; margin:0 0 1.5rem; color:var(--green); font-size:.75rem; font-weight:500;}
.chapter-label > span {display:grid; place-items:center; width:1.7rem; height:1.7rem; border:1px solid #b4c7b6; border-radius:50%; font-family:'Geist Mono',monospace; font-size:.64rem;}
.journey-page .what-section {padding:var(--section-pad) var(--gutter) 4.5rem; text-align:center; background:var(--paper);}
.journey-page .what-copy h2 {max-width:none;}
.journey-page .what-copy {display:block; text-align:center;}
.journey-page .what-copy .section-lead {max-width:43rem; margin:1.4rem auto 0;}
.checkpoint-path {max-width:65rem; margin:3.75rem auto 0; display:grid; grid-template-columns:1fr .5fr 1.2fr .5fr 1fr; align-items:center; gap:1rem; min-height:10rem;}
.path-end {display:flex; align-items:center; flex-direction:column; gap:.55rem;}
.path-end strong {font-size:.88rem; font-weight:600;}
.path-end > span:last-child {font-size:.7rem; color:var(--ink-mute);}
.document-symbol,.record-symbol {display:block; width:2.8rem; height:3.6rem; border:1px solid #9aafa0; border-radius:2px; padding:1rem .6rem .6rem; margin-bottom:.5rem; background:linear-gradient(120deg,#fff,#e8f0e7); box-shadow:5px 5px 0 #eaf0e9; transform:rotate(-5deg);}
.record-symbol {transform:rotate(3deg); border-left:4px solid #7d9c81;}
.document-symbol i,.record-symbol i {display:block; height:1px; margin:.4rem 0; background:#8eaa95;}
.document-symbol i:last-child,.record-symbol i:last-child {width:65%;}
.path-checkpoint {position:relative; min-height:9.25rem; display:flex; flex-direction:column; gap:1.5rem; align-items:center; justify-content:center; border:1px solid #c3d6c3; background:linear-gradient(145deg,#fcfff9,#e2eede); border-radius:1.4rem; box-shadow:inset 0 1px 0 white,0 20px 40px #19482d0c;}
.path-checkpoint img {width:10rem; height:auto;}
.path-checkpoint span {font-size:.66rem; color:var(--ink-soft);}
.path-connector {height:1px; position:relative; background:#bfcebf; overflow:visible;}
.path-connector::after {content:''; width:5px; height:5px; border-top:1px solid #98b399; border-right:1px solid #98b399; transform:rotate(45deg); position:absolute; right:0; top:-2px;}
.path-connector i {position:absolute; left:0; top:-2px; width:6px; height:5px; border-radius:4px; background:#367854; opacity:0;}
.what-section.is-in-view .path-connector i {animation:request-travel 3s ease-in-out 1;}
.what-section.is-in-view .path-connector-out i {animation-delay:1.5s;}
@keyframes request-travel {0%{left:0;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:100%;opacity:0}}
.journey-page .answer-rail {grid-template-columns:repeat(3,1fr); max-width:60rem; gap:1.5rem; margin:3rem auto 0; border-top:1px solid var(--line);}
.journey-page .answer {position:relative; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:.5rem; margin:0; padding:1.5rem .6rem .75rem; background:none; border:0; border-radius:0; text-align:center;}
.journey-page .answer strong {font:inherit;font-size:.86rem;font-weight:600;text-transform:none;letter-spacing:0;}
.journey-page .answer > span:last-child {width:100%; font-size:.75rem; color:var(--ink-soft);}
.answer-dot {width:5px; height:5px; border-radius:50%; background:#3c7753;}
.answer-hold .answer-dot {background:#a17936;}
.answer-deny .answer-dot {background:#a36657;}
.editorial-link {display:inline-flex; align-items:center; min-height:2.75rem; gap:1.7rem; font-size:.82rem; margin-top:1.8rem; text-decoration:none; border-bottom:1px solid #a9c0ac;}
.editorial-link:hover {color:var(--green); border-color:var(--green);}
.journey-page .story-stakes {color:var(--ink); background:#eaf0e7; display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,5.5rem); align-items:center; padding:clamp(3rem,5vw,5.5rem) max(var(--gutter), calc((100vw - 76rem)/2));}
.stakes-photo {margin:0; position:relative; height:36rem; border-radius:1px 8rem 1px 1px; overflow:hidden;}
.stakes-photo img {width:100%; height:100%; object-fit:cover; object-position:57% center;}
.stakes-content .chapter-label {justify-content:flex-start;}
.journey-page .stakes-content h2 {font-size:clamp(2.25rem,3.3vw,3.35rem);}
.stakes-content .section-lead {font-size:1rem; margin-top:1.5rem;}
.stakes-questions {margin-top:2rem;}
.stakes-questions p {display:flex; gap:1rem; align-items:baseline; font-size:.88rem; border-top:1px solid #bacabb; margin:0; padding:1rem 0;}
.stakes-questions p span {font-family:'Geist Mono',monospace; color:#506557; font-size:.75rem;}
.stakes-close {font-size:.88rem; max-width:27rem; color:var(--ink-soft); margin:1.5rem 0 0;}
.stakes-close strong {color:var(--forest); font-weight:600;}
.journey-page .example-section {padding:var(--section-pad) var(--gutter) 4.5rem; background:var(--paper);}
.journey-page .section-heading {display:block; text-align:center;}
.journey-page .section-heading h2 {max-width:none;}
.journey-page .section-heading .section-lead {margin:1.3rem auto 0; max-width:38rem;}
.example-disclosure {text-align:center; font-size:.72rem; color:var(--ink-mute); margin:1rem 0 2.5rem;}
.journey-page .product-workspace {padding:0; background:transparent; border:0; border-radius:0; box-shadow:none; grid-template-columns:1.15fr 1fr; gap:1.8rem 3rem;}
.journey-page .scenario-tabs {grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); background:#eef2ec; padding:.4rem; gap:.3rem; border:1px solid #d7e1d5; border-radius:.8rem;}
.journey-page .scenario-tabs button {min-width:0; min-height:4.5rem; height:auto; align-content:center; grid-template-columns:auto 1fr; gap:.35rem .7rem; padding:.85rem 1rem; border:1px solid transparent; color:var(--ink-soft); border-radius:.5rem;}
.journey-page .scenario-tabs button:hover {background:#e2eadf;}
.journey-page .scenario-tabs button[aria-selected=true] {background:var(--paper); border-color:#d4dfd0; color:var(--forest); box-shadow:0 2px 5px #123e2510;}
.journey-page .scenario-index {color:#506557; grid-row:1/3;}
.journey-page .scenario-name {font-size:.83rem; font-weight:600;}
.journey-page .mini-status {grid-column:2; color:#506557; font-size:.7rem;}
.journey-page .scenario-tabs button[aria-selected=true] .mini-status {color:var(--green);}
.journey-page .decision-panel {padding:1.35rem .2rem 0; border-radius:0; background:transparent;}
.journey-page .decision-panel h3 {font-size:1.4rem; font-weight:600; max-width:none;}
.journey-page .decision-panel blockquote {font-family:'Source Serif 4',Georgia,serif; font-size:1.3rem; font-style:italic; line-height:1.45; border:0; padding:0; margin:1.5rem 0; color:var(--ink-soft);}
.journey-page .panel-ref {font-size:.67rem;}
.journey-page .request-facts {display:block; margin:1.5rem 0; border:0;}
.journey-page .request-facts div {display:grid; padding:.7rem 0; grid-template-columns:6.5rem 1fr; gap:.75rem; border:0; border-top:1px solid #d6e0d2;}
.journey-page .request-facts dt {font-size:.72rem;}
.journey-page .request-facts dd {font-size:.85rem;}
.journey-page .decision-result {display:block; padding:1.15rem 1.3rem; background:#edf3e9; border:0; border-left:2px solid #709475; border-radius:0 .5rem .5rem 0;}
.journey-page .decision-result > p:last-child {font-size:.83rem; margin:.65rem 0 0;}
.journey-page .status-badge,.journey-page .result-label strong {font-size:.64rem;}
.journey-page .product-workspace .receipt-section {padding:1.4rem 0 0; display:block; grid-template-columns:none; background:none; max-width:none; width:auto; margin:0; align-self:start;}
.journey-page .receipt-copy {max-width:none; margin:0 0 1.25rem; text-align:left;}
.journey-page .receipt-copy h3 {font-size:1.05rem; font-weight:600;}
.journey-page .receipt-copy .section-lead {font-size:.8rem; margin:.55rem 0 0;}
.journey-page .receipt-card {padding:1.3rem 1.5rem; margin:0; border:1px solid #d9e2d4; border-radius:3px; background:#fcfdf8; box-shadow:5px 5px 0 #e8eee4,6px 6px 0 #ced9c8,12px 20px 28px #213e2310; transform:rotate(1.25deg);}
.journey-page .receipt-card header {padding:0 0 1rem; background:none; border:0; border-bottom:1px solid #d4e0d0; border-radius:0;}
.journey-page .receipt-card .receipt-logo {width:7.5rem; height:auto;}
.journey-page .receipt-card dl {padding:0; background:none; border-radius:0;}
.journey-page .receipt-card dl div {padding:.75rem 0; grid-template-columns:5.5rem 1fr; gap:.7rem;}
.journey-page .receipt-card dt {font-size:.7rem;}
.journey-page .receipt-card dd {font-size:.78rem;}
.journey-page .receipt-card footer {padding:1rem 0 0; border-top:1px dashed #bccdb6; color:var(--ink-mute); background:none; font-size:.6rem;}
.journey-page .receipt-result {font-size:.62rem;}
.journey-page .example-section .scope-note {text-align:center; max-width:var(--shell); margin:2.5rem auto 0; font-size:.75rem; padding-top:1.5rem;}
.journey-page .about-section {padding:5rem max(var(--gutter),calc((100vw - 76rem)/2)); gap:4rem; background:#eff2eb;}
.journey-page .about-photo {height:32rem; border-radius:1px; overflow:hidden;}
.journey-page .about-photo img {height:100%; width:100%; object-fit:cover;}
.journey-page .about-copy h2 {max-width:none; font-size:clamp(2.25rem,3.3vw,3.4rem);}
.journey-page .about-copy > p {font-size:1rem;}
.journey-page .about-copy .eyebrow {font-size:.7rem; letter-spacing:.07em;}
.journey-page .about-copy .about-status {padding:0; background:none; border:0; color:var(--ink-soft); font-size:.9rem;}
.journey-page .about-mark img {width:11rem; height:auto;}
.journey-page .program-section {display:block;padding:var(--section-pad) max(var(--gutter),calc((100vw - 76rem)/2));background:var(--paper);text-align:center;}
.journey-page .program-copy {max-width:50rem;margin:0 auto;}
.journey-page .program-copy .section-lead {max-width:43rem;margin-left:auto;margin-right:auto;}
.journey-page .program-copy h2 {max-width:none;}
.journey-page .program-terms h3 {font-weight:600; font-size:1.35rem;}
.journey-page .program-terms p {font-size:.86rem;}
.journey-page .program-fineprint {font-size:.72rem;}
.journey-page .final-cta {padding:5rem var(--gutter); background:#e0ebdc; color:var(--ink);}
.journey-page .final-cta h2 {max-width:none; font-size:clamp(2.3rem,4.8vw,4.7rem);}
.journey-page .final-cta h2 em {color:var(--green);}
.journey-page .final-cta .button {margin-top:2rem; color:var(--paper); background:var(--forest);}
.journey-page .site-footer {display:grid; grid-template-columns:1fr 1fr; gap:1.5rem 4rem; padding:3rem max(var(--gutter),calc((100vw - 76rem)/2)) 1.5rem; background:var(--cream); border-top:1px solid #d5e0d0;}
.journey-page .site-footer > p {font-size:.8rem; max-width:31rem; grid-column:1; margin:0;}
.journey-page .site-footer > nav {grid-column:2; grid-row:1/3; justify-content:flex-end; align-content:start; gap:.8rem 1.4rem;}
.journey-page .site-footer > nav a {font-size:.73rem;}
.journey-page .footer-marks {grid-column:1/-1; justify-content:flex-start; gap:2rem; padding-top:1.5rem;}
.journey-page .footer-marks img {max-width:10rem; max-height:3.7rem;}
.journey-page .footer-legal {grid-column:1/-1; display:block; padding-top:1.5rem;}
.journey-page .footer-legal p {max-width:none; font-size:.65rem; line-height:1.65;}
.journey-page .footer-bottom {grid-column:1/-1;}
.journey-page .reveal {transition-duration:550ms;}
.journey-page :focus-visible {outline:3px solid #8e6324; outline-offset:5px;}

@media(min-width:1600px){.journey-page .entrance {min-height:max(58rem,100svh);}}
@media(max-width:1100px){
  .journey-page .nav-links {gap:1rem;}
  .journey-page .nav-links a {font-size:.7rem;}
  .journey-page .story-stakes,.journey-page .about-section {gap:2.5rem;}
  .journey-page .product-workspace {column-gap:2rem;}
}
@media(max-width:767px){
  .journey-page {--gutter:1.25rem; --section-pad:4.5rem;}
  .journey-page .nav-shell {min-height:4.5rem;}
  .journey-page .brand-logo {width:8.4rem;}
  .journey-page .mobile-menu {background:var(--cream); padding-top:6rem;}
  .journey-page .entrance {height:100svh; min-height:49rem; max-height:60rem; padding:6.2rem 1.1rem 4rem;}
  .entrance-label {font-size:.66rem; margin-bottom:1.15rem;}
  .journey-page .entrance h1 {font-size:clamp(2.6rem,9.6vw,4.3rem); line-height:1.07;}
  .journey-page .entrance .hero-lead {font-size:.91rem; max-width:25rem; line-height:1.6; margin-top:1.05rem;}
  .desktop-break {display:none;}
  .entrance-stage {height:49%; min-height:20rem; bottom:8rem; width:140%; left:-20%;}
  .entrance-actions {bottom:4.1rem; gap:.45rem;}
  .entrance-foot {bottom:1.2rem; justify-content:center;}
  .journey-page .entrance-foot .development-note {font-size:.62rem;}
  .scroll-cue {display:none;}
  .journey-page .entrance .button {min-height:3.1rem;}
  .entrance-skip {font-size:.72rem;}
  .journey-page .what-section {padding-bottom:3.5rem;}
  .journey-page .what-copy h2 {font-size:2.35rem;}
  .journey-page .what-copy .section-lead {font-size:1rem;}
  .chapter-label {font-size:.68rem; gap:.6rem;}
  .checkpoint-path {grid-template-columns:1fr; gap:1rem; margin-top:2.5rem;}
  .path-connector {width:1px; height:1.5rem; margin:auto;}
  .path-connector::after {bottom:0; top:auto; right:-2px; transform:rotate(135deg);}
  .path-connector i {display:none;}
  .path-checkpoint {min-height:6.5rem; max-width:18rem; width:100%; margin:auto; gap:.8rem; border-radius:1rem;}
  .path-end {gap:.35rem;}
  .document-symbol,.record-symbol {width:2.2rem; height:2.7rem; padding:.55rem .4rem; margin-bottom:.4rem;}
  .journey-page .answer-rail {grid-template-columns:1fr; gap:0; margin-top:2rem;}
  .journey-page .answer {display:grid;grid-template-columns:.35rem 6rem 1fr;padding:1rem 0;gap:.65rem;text-align:left;align-items:baseline;border-bottom:1px solid var(--line);}
  .journey-page .answer strong {font-size:.81rem;}
  .journey-page .answer > span:last-child {font-size:.79rem; line-height:1.5;}
  .journey-page .story-stakes {display:flex; flex-direction:column; padding:0 0 3.5rem; gap:2.5rem;}
  .stakes-photo {width:100%; height:23rem; border-radius:0 0 4rem 0;}
  .stakes-photo img {object-position:55% 35%;}
  .stakes-content {padding:0 1.4rem;}
  .stakes-content .chapter-label {justify-content:center;}
  .journey-page .stakes-content h2 {text-align:center; font-size:2.3rem;}
  .stakes-content .section-lead {font-size:1rem;}
  .stakes-questions p {font-size:.82rem;}
  .journey-page .product-workspace {display:block; margin-top:1.75rem;}
  .journey-page .scenario-tabs {grid-template-columns:1fr; gap:.25rem;}
  .journey-page .scenario-tabs button {grid-template-columns:1.2rem 1fr; padding:.8rem .65rem; gap:.5rem; min-height:3.25rem;}
  .journey-page .scenario-name {font-size:.85rem;}
  .journey-page .scenario-index {grid-row:auto; font-size:.64rem;}
  .journey-page .mini-status {display:none;}
  .journey-page .decision-panel {padding:2rem 0 0;}
  .journey-page .request-facts div {grid-template-columns:5.2rem 1fr;}
  .journey-page .request-facts dd {font-size:.8rem;}
  .journey-page .decision-panel h3 {font-size:1.25rem;}
  .journey-page .product-workspace .receipt-section {margin-top:1rem; padding-top:1.5rem;}
  .journey-page .receipt-card {margin:.5rem .6rem 0 0; padding:1.2rem; transform:rotate(.75deg);}
  .journey-page .receipt-card dl div {grid-template-columns:4.8rem 1fr;}
  .journey-page .receipt-card dd {font-size:.74rem;}
  .journey-page .receipt-card .receipt-logo {width:7.5rem;}
  .journey-page .about-section {display:flex; flex-direction:column; padding:0 0 3.5rem; gap:2.5rem;}
  .journey-page .about-photo {height:23rem; width:100%; border-radius:0 0 0 4rem;}
  .journey-page .about-copy {padding:0 1.4rem;}
  .journey-page .about-copy h2 {font-size:2.3rem;}
  .journey-page .about-copy > p {font-size:.95rem;}
  .journey-page .about-mark {margin-top:1.5rem;}
  .journey-page .program-section {padding:3.5rem 1.4rem; gap:2rem;}
  .journey-page .program-copy h2 {font-size:2.4rem;}
  .journey-page .program-terms {margin-top:1rem;}
  .journey-page .program-terms li {padding:1.15rem 0;}
  .journey-page .final-cta {padding:4rem 1.25rem;}
  .journey-page .final-cta h2 {font-size:2.4rem;}
  .journey-page .site-footer {display:flex; flex-direction:column; padding:2.5rem 1.4rem 1.25rem; gap:1.3rem;}
  .journey-page .site-footer > nav {justify-content:flex-start; padding:0;}
  .journey-page .footer-legal {padding-top:1rem;}
  .journey-page .footer-marks {padding-top:0; gap:1rem;}
}
@media(prefers-reduced-motion:reduce){
  .journey-page:not(.motion-enabled) *, .journey-page:not(.motion-enabled) *::before, .journey-page:not(.motion-enabled) *::after {animation:none!important; transition:none!important; scroll-behavior:auto!important;}
  .journey-page:not(.motion-enabled) .reveal {opacity:1!important; transform:none!important;}
  .journey-page:not(.motion-enabled) .entrance.is-opening .entrance-heading {opacity:1; transform:none;}
}

/* Footer brand placement and founder heading refinement. */
.journey-page .about-copy h2{text-align:center;margin-inline:auto}
.journey-page .site-footer>nav{grid-row:1}
.journey-page .footer-marks{justify-content:center;align-items:center;gap:3rem;padding:2rem 0 2.5rem;margin-top:.5rem;border-bottom:0}
.journey-page .footer-marks img{width:190px;height:auto;max-width:none;max-height:none;object-fit:contain}
.journey-page .footer-marks picture img{width:230px;height:auto;max-height:none}
@media(max-width:700px){.journey-page .footer-marks{width:100%;gap:1.5rem;flex-wrap:wrap;padding:1.75rem 0 3rem}.journey-page .footer-marks img{width:150px}.journey-page .footer-marks picture img{width:185px}}

/* Readable, expandable footer notices. */
.journey-page .site-footer{display:flex;flex-direction:column;align-items:center;gap:28px;padding:48px max(24px,calc((100vw - 1080px)/2)) 24px}
.journey-page .site-footer>nav{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 28px;text-align:center;padding:0}
.journey-page .site-footer>nav a{font-size:13px;line-height:1.6}
.journey-page .footer-brand{align-self:center}
.journey-page .footer-legal{width:100%;max-width:860px;padding:0;border:0;text-align:left}
.journey-page .footer-legal details{border-bottom:1px solid #b8af9c;padding:0}
.journey-page .footer-legal details:first-child{border-top:1px solid #b8af9c}
.journey-page .footer-legal summary{display:flex;justify-content:space-between;align-items:center;gap:24px;list-style:none;cursor:pointer;padding:18px 0;font-size:15px;line-height:1.5;color:#2c4338;font-weight:500}
.journey-page .footer-legal summary::-webkit-details-marker{display:none}
.journey-page .footer-legal summary::after{content:'+';font-size:23px;font-weight:400}
.journey-page .footer-legal details[open] summary::after{content:'−'}
.journey-page .footer-legal p{font-size:14px;line-height:1.85;color:#4c584f;max-width:75ch;margin:0;padding:0 24px 22px 0}
.journey-page .site-footer>small{text-align:center;font-size:12px;line-height:1.7}
.journey-page .footer-marks{width:100%;border:0;margin:0;padding:8px 0 28px}
@media(max-width:700px){.journey-page .site-footer{padding:36px 24px 24px;gap:24px}.journey-page .site-footer>nav{justify-content:center;gap:14px 22px}.journey-page .footer-legal summary{font-size:14px}.journey-page .footer-legal p{font-size:14px;padding-right:0}}

/* Hold the first screen until the visitor enters through the doors. */
html.entrance-locked,body.entrance-locked{overflow:hidden!important;overscroll-behavior:none}
.journey-page.entrance-locked .entrance{height:100dvh;min-height:0;max-height:none;padding-top:110px}
.journey-page.entrance-locked .entrance h1{font-size:clamp(30px,4.2vw,58px);max-width:1100px;margin-inline:auto}
.journey-page.entrance-locked .entrance .hero-lead{font-size:clamp(14px,1.4vw,18px);max-width:780px;margin:18px auto 0;line-height:1.6}
.journey-page.entrance-locked .entrance-stage{height:49%;min-height:0;bottom:70px}
.journey-page.entrance-locked .entrance-actions{bottom:22px}
@media(max-width:700px){.journey-page.entrance-locked .entrance{padding:98px 20px 0}.journey-page.entrance-locked .entrance h1{font-size:clamp(28px,7.2vw,40px)}.journey-page.entrance-locked .entrance .hero-lead{font-size:14px;max-width:440px;margin-top:14px}.journey-page.entrance-locked .entrance-stage{height:44%;bottom:77px}.journey-page.entrance-locked .entrance-actions{bottom:20px}}

.journey-page.entrance-locked .entrance-stage{height:42%}@media(max-width:700px){.journey-page.entrance-locked .entrance-stage{height:36%}}

/* Shared dimensional emblem and a single footer brand row. */
.journey-page .button-icon img{display:block;width:26px;height:29px;object-fit:contain;filter:drop-shadow(0 2px 1px #102e2466)}
.journey-page .footer-marks{flex-wrap:wrap;gap:36px}
.journey-page .footer-marks .footer-brand{display:flex;align-items:center;margin:0;padding:0}
.journey-page .footer-marks .footer-brand .brand-logo{width:210px;height:auto;max-width:100%}
@media(max-width:700px){.journey-page .footer-marks .footer-brand{flex-basis:100%;justify-content:center}.journey-page .footer-marks .footer-brand .brand-logo{width:180px}}
/* The architecture owns the lower entrance; copy stays in its own space above. */
.journey-page.entrance-locked .entrance{display:block;padding:104px 24px 0;height:100dvh;min-height:0;overflow:hidden}
.journey-page.entrance-locked .entrance-heading{position:relative;z-index:2;max-width:1200px;margin:0 auto}
.journey-page.entrance-locked .entrance h1{font-size:clamp(32px,3.5vw,54px);line-height:1.04}
.journey-page.entrance-locked .entrance .hero-lead{max-width:840px;font-size:16px;line-height:1.5;margin:16px auto 0}
.journey-page.entrance-locked .entrance>.entrance-stage{position:absolute;left:0;top:280px;bottom:0;width:100%;height:auto;min-height:0;margin:0;flex:none}
.journey-page.entrance-locked .entrance>.entrance-actions{position:absolute;left:calc(50% + 180px);right:auto;top:66%;bottom:auto;margin:0;transform:translateY(-50%)}
.journey-page.entrance-locked .entrance>.entrance-actions:before{content:'';position:absolute;right:calc(100% + 12px);top:50%;width:54px;height:1px;background:#6a8b7466}
.journey-page.entrance-locked .entrance-foot{display:none}
@media(max-width:767px){.journey-page.entrance-locked .entrance{padding:94px 20px 0}.journey-page.entrance-locked .entrance h1{font-size:clamp(27px,6.4vw,38px)}.journey-page.entrance-locked .entrance .hero-lead{font-size:14px;line-height:1.5;max-width:470px;margin-top:12px}.journey-page.entrance-locked .entrance>.entrance-stage{top:290px;bottom:20px;left:-20%;width:140%}.journey-page.entrance-locked .entrance>.entrance-actions{left:auto;right:18px;top:75%}.journey-page.entrance-locked .entrance>.entrance-actions .button{padding:10px 13px;font-size:12px;min-height:44px}.journey-page.entrance-locked .entrance>.entrance-actions:before{width:22px;right:calc(100% + 6px)}}
@media(max-height:680px) and (min-width:768px){.journey-page.entrance-locked .entrance{padding-top:90px}.journey-page.entrance-locked .entrance h1{font-size:36px}.journey-page.entrance-locked .entrance>.entrance-stage{top:225px}.journey-page.entrance-locked .entrance .hero-lead{font-size:14px}}
/* Keep the entry invitation below the sconce and visually secondary. */
.journey-page.entrance-locked .entrance>.entrance-actions{top:79%}
.journey-page.entrance-locked .entrance>.entrance-actions .button{background:#ece5d8e8;color:#355342;border:1px solid #bcb5a3;box-shadow:0 2px 5px #423c2910;font-size:13px;min-height:44px;padding:10px 15px}
.journey-page.entrance-locked .entrance>.entrance-actions .button:hover{background:#f6f0e4;color:#214632;border-color:#8e9b86}
.journey-page.entrance-locked .entrance>.entrance-actions .button-icon{background:none;width:24px;height:26px}
.journey-page.entrance-locked .entrance>.entrance-actions .button-icon img{width:21px;height:24px;filter:none}
.journey-page.entrance-locked .entrance>.entrance-actions:before{display:none}
@media(max-width:767px){.journey-page.entrance-locked .entrance>.entrance-actions{top:79%;right:18px}}
/* Center the invitation on the entrance steps. */
.journey-page.entrance-locked .entrance>.entrance-actions{left:50%;right:auto;top:auto;bottom:28px;transform:translateX(-50%)}
@media(max-width:767px){.journey-page.entrance-locked .entrance>.entrance-actions{left:50%;right:auto;top:auto;bottom:58px;transform:translateX(-50%)}}

/* Give the official footer lockup its full intended width. */
.journey-page .footer-marks .footer-brand{width:300px;min-width:300px;flex:0 0 300px;justify-content:center}.journey-page .footer-marks .footer-brand .brand-logo{width:300px;max-width:none;height:auto}.journey-page .footer-marks{gap:40px;align-items:center}@media(max-width:700px){.journey-page .footer-marks .footer-brand{width:270px;min-width:270px;flex-basis:100%}.journey-page .footer-marks .footer-brand .brand-logo{width:270px}}

/* Product film: preserve the full frame and keep the story below it. */
.journey-page .story-stakes.product-story{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:auto;min-height:0;max-height:none;padding:40px 30px 85px;background:#eee8dd;overflow:visible}
.journey-page .story-stakes.product-story .stakes-photo{position:relative;inset:auto;width:min(100%,1280px);height:auto;aspect-ratio:16/9;z-index:0;border-radius:12px;box-shadow:0 20px 60px #50483316}
.journey-page .product-story .stakes-photo::after{display:none}
.journey-page .product-story .stakes-photo img,.journey-page .product-story .stakes-photo video{object-fit:contain;object-position:center;transform:none}
.journey-page .product-story .stakes-content{padding-top:55px;transform:none;color:#294132}
.journey-page .product-story .stakes-content h2{font-size:clamp(30px,4vw,53px);color:#294132}
.journey-page .product-story .stakes-content h2 em{color:#48624c}
.journey-page .product-story .stakes-content .section-lead{color:#465d4a;max-width:820px;font-size:20px}
.journey-page .product-story .film-control{right:20px;bottom:35px}
@media(max-width:700px){.journey-page .story-stakes.product-story{padding:20px 12px 55px}.journey-page .product-story .stakes-content{padding:35px 12px 0}.journey-page .product-story .stakes-content .section-lead{font-size:17px}.journey-page .product-story .film-control{right:8px;bottom:20px;padding:6px 10px;font-size:11px}}

.journey-page .product-story .narrated-film video{opacity:1;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform:none}.journey-page .product-story .narrated-film{background:#122219}

/* The completed film is the first view after the entrance journey. */
.journey-page #hospitals.product-story{gap:0;padding:24px 30px 65px;scroll-margin-top:5.5rem}
.journey-page #hospitals.product-story .stakes-photo{order:0;margin:0;aspect-ratio:16/9;max-width:1100px}
.journey-page #hospitals.product-story .stakes-content{order:1;padding-top:36px}
.journey-page #hospitals.product-story:focus{outline:none}
@media(max-width:700px){.journey-page #hospitals.product-story{padding:18px 12px 45px}.journey-page #hospitals.product-story .stakes-content{padding-top:28px}}
