.practice{display:block;background:linear-gradient(160deg,#081513,#07100f 70%)}
.journey-intro{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:65px}
.journey-intro h2{font:500 clamp(42px,5.1vw,78px)/1.09 General;letter-spacing:-.045em;margin:0}
.journey-intro h2 em{font-style:normal;color:#9fb9a8}
.journey-intro>p{font-size:clamp(18px,1.65vw,24px);line-height:1.5;color:#b8c9c0;margin:0 0 5px;max-width:390px}
.journey{position:relative}
.journey-step{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:65px;align-items:center;padding:60px 0;border-top:1px solid #a3c2b221}
.journey-copy h3{font:500 clamp(29px,3vw,44px)/1.14 General;letter-spacing:-.04em;margin:0 0 22px;color:#e3eee7}
.journey-copy p{font-size:clamp(17px,1.6vw,22px);line-height:1.6;margin:0 0 28px;color:#b0c3b8}
.journey-copy>span{display:block;font-size:14px;color:#a4d0b7;padding-left:18px;border-left:2px solid #9ebfad}
.journey-scene{min-width:0;width:100%;position:relative;color:#d4e7dc}
.journey-visual{display:none}
.journey-sticky{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:clamp(60px,7vw,110px)}
.journey-sticky .journey-step{display:flex;grid-column:1;min-height:clamp(270px,40svh,390px);padding:50px 0;transition:opacity .6s ease}
.journey-sticky .journey-step:not(.is-current){opacity:.72}
.journey-sticky .journey-visual{display:block;position:sticky;top:calc(var(--header-height) + max(35px,9svh));align-self:start;grid-column:2;grid-row:1/span 4;height:clamp(320px,48svh,530px);margin-top:20px;perspective:1100px}
.journey-sticky .journey-scene{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;opacity:0;transform:translateY(26px) rotateX(5deg);transition:opacity .65s ease,transform .9s cubic-bezier(.16,1,.3,1),visibility 0s .65s;pointer-events:none;visibility:hidden}
.journey-sticky .journey-scene.is-current{opacity:1;transform:none;visibility:visible;transition-delay:0s}
.brief-inputs,.launch-words,.launch-disciplines{display:flex;justify-content:space-between;gap:12px;font-size:clamp(16px,1.7vw,25px)}
.brief-inputs span{flex:1;text-align:center}
.brief-routes{display:block;width:100%;height:130px;margin-top:22px}
.brief-result{text-align:center;padding-top:20px}
.brief-result>span{font:500 clamp(33px,3.5vw,55px)/1.1 General;letter-spacing:-.04em}
.brief-result p{font-size:16px;color:#93b29f;margin:16px 0 0}
.direction-layer{display:flex;align-items:baseline;justify-content:space-between;gap:22px;padding:30px 20px;border-top:1px solid #a6c8b559;background:linear-gradient(95deg,#c3ecda0a,transparent);will-change:transform}
.direction-layer:nth-child(2){margin-left:24px}.direction-layer:nth-child(3){margin-left:48px}
.direction-layer strong{font:500 clamp(23px,2.5vw,37px)/1.15 General;letter-spacing:-.04em}
.direction-layer span{color:#a8bdb1;font-size:14px;text-align:right;line-height:1.4}
.scene-note{font-size:14px;line-height:1.6;color:#a2bbab;margin:28px 0 0;text-align:center}
.journey-product img{display:block;width:100%;height:auto;border:1px solid #a6c0b733;box-shadow:0 25px 50px -22px #000b}
.launch-words{padding:0 24px;color:#deeee4;font:500 clamp(24px,2.7vw,40px)/1.2 General;letter-spacing:-.035em}
.launch-route{display:block;width:100%;height:auto;margin:22px 0 0;overflow:visible}
.launch-disciplines{padding:0 24px;color:#9bbcab;font-size:14px;margin-top:12px}
.offerings{margin-top:65px;padding-top:50px;border-top:1px solid #a3c2b240}
.offerings>h3{font:500 34px/1.2 General;letter-spacing:-.04em;margin:0 0 35px}
.offering{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:50px;align-items:center;padding:27px 0;border-top:1px solid #a3c2b221}
.offering h4{font:500 clamp(22px,2.35vw,34px)/1.25 General;letter-spacing:-.025em;margin:0}
.offering ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:0;color:#afc2b7;font-size:15px;line-height:1.5}
.work-title{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.work-title h2{font-size:clamp(46px,5.6vw,85px)}
.work-title>div>p:only-child{max-width:440px}
.journey-static .journey-scene,.journey-static .journey-step{transition:none}
@media(max-width:900px){
 .journey-intro{display:block;margin-bottom:45px}.journey-intro>p{margin-top:28px}
 .journey-step{gap:35px;padding:48px 0}
 .journey-copy h3{font-size:32px}.journey-copy p{font-size:18px}
 .direction-layer{padding:25px 10px;gap:12px}.direction-layer:nth-child(2){margin-left:10px}.direction-layer:nth-child(3){margin-left:20px}
 .direction-layer strong{font-size:25px}.direction-layer span{font-size:13px;max-width:120px}
 .brief-routes{height:100px}
 .offering{grid-template-columns:1fr;gap:17px;padding:25px 0}
 .work-title h2{font-size:clamp(40px,6vw,60px)}
}
@media(max-width:600px){
 .journey-intro h2{font-size:clamp(36px,9.5vw,55px)}
 .journey-intro>p{font-size:19px}
 .journey-step{display:flex;flex-direction:column;align-items:stretch;gap:40px;padding:38px 0 45px}
 .journey-copy h3{font-size:32px;margin-bottom:15px}.journey-copy p{font-size:18px;margin-bottom:18px}
 .journey-scene{padding:10px 0}
 .brief-inputs{font-size:16px}.brief-result>span{font-size:35px}
 .brief-result p{font-size:14px}.brief-routes{height:85px}
 .direction-layer{padding:22px 12px}.direction-layer strong{font-size:27px}
 .launch-words{font-size:clamp(22px,6.5vw,28px);padding:0 10px}.launch-disciplines{padding:0 10px;font-size:13px}
 .scene-note{font-size:13px;margin-top:22px}
 .offerings{margin-top:25px;padding-top:35px}.offerings>h3{font-size:30px;margin-bottom:28px}
 .offering ul{grid-template-columns:1fr;gap:5px;font-size:16px}.offering h4{font-size:25px}
 .work-title h2{font-size:clamp(39px,10vw,57px)}
}
@media(prefers-reduced-motion:reduce){.journey-scene,.journey-step{transition:none!important}.direction-layer,.journey-product{transform:none!important}}
