/* Mountain / peak process journey. All presentation lives in this existing stylesheet. */
.sss-site .sss-process {
 --text-primary:#17261d; --text-secondary:#6b6253; --brand:#bf963d; --brand-dark:#805b16; --accent:#bf963d; --border:#e5dac5;
 position:relative; isolation:isolate; overflow:hidden;
 padding-bottom:0;
 background:radial-gradient(ellipse at 78% 20%,#f1dfb199,transparent 50%),linear-gradient(150deg,#fffdf9,#f7edd5);
}
.sss-process .sss-heading-row {align-items:flex-start;margin-bottom:0;}
.sss-process .sss-heading-row > p {margin-top:0;}
.sss-process .sss-mountain-journey {position:relative;width:100%;height:clamp(600px,40vw,800px);margin:clamp(12px,2vw,32px) 0 0;isolation:isolate;}
@media (min-width:1025px) {
 .sss-process .sss-mountain-journey {margin-top:-32px;}
}
.sss-mountain-landscape {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.sss-mountain-connection {fill:none;stroke:url(#sss-mountain-route);stroke-width:2;stroke-dasharray:2 4;stroke-linecap:round;}
.sss-mountain-stages {position:absolute;inset:0;list-style:none;margin:0;padding:0;}
.sss-mountain-step {--peak-color:#805b16;position:absolute;left:var(--peak-x);top:var(--peak-y);width:15%;transform:translate(-50%,-50%);text-align:center;}
.sss-mountain-step:nth-child(1) {--peak-x:10%;--peak-y:78%;}
.sss-mountain-step:nth-child(2) {--peak-x:25.5%;--peak-y:70.4%;--peak-color:#123b29;}
.sss-mountain-step:nth-child(3) {--peak-x:41%;--peak-y:62%;--peak-color:#486345;}
.sss-mountain-step:nth-child(4) {--peak-x:56.5%;--peak-y:53.6%;--peak-color:#805b16;}
.sss-mountain-step:nth-child(5) {--peak-x:72%;--peak-y:44%;--peak-color:#35543a;}
.sss-mountain-step:nth-child(6) {--peak-x:87.5%;--peak-y:32.8%;}
.sss-mountain-copy {position:absolute;bottom:calc(100% + 18px);left:0;width:100%;padding-inline:8px;}
.sss-mountain-number {display:block;color:var(--peak-color);font-size:1.15rem;font-weight:800;margin-bottom:8px;line-height:1.1;}
.sss-site .sss-mountain-copy h3 {font-size:1rem;line-height:1.25;letter-spacing:-.025em;color:#17261d;margin:0 0 7px;font-weight:750;}
.sss-site .sss-mountain-copy p {font-size:clamp(.76rem,.85vw,.95rem);line-height:1.5;color:#6b6253;margin:0 auto;max-width:230px;overflow-wrap:break-word;}
.sss-mountain-icon {position:relative;display:grid;place-items:center;width:64px;height:64px;margin:auto;border:3px solid #ffffffed;border-radius:50%;color:white;background:linear-gradient(145deg,color-mix(in srgb,var(--peak-color),white 26%),var(--peak-color));box-shadow:0 9px 24px color-mix(in srgb,var(--peak-color) 24%,transparent),inset 0 2px 3px #ffffff45;transition:transform .3s ease,box-shadow .3s ease;}
.sss-mountain-icon .sss-icon {width:29px;height:29px;stroke-width:1.6;}
.sss-mountain-step:hover .sss-mountain-icon,.sss-mountain-step.is-current .sss-mountain-icon {transform:scale(1.08);box-shadow:0 0 0 7px color-mix(in srgb,var(--peak-color) 10%,transparent),0 12px 30px color-mix(in srgb,var(--peak-color) 32%,transparent);}
.sss-mountain-journey.is-inview .sss-mountain-icon {animation:sss-peak-arrive .65s ease both;animation-delay:calc(var(--step-index)*.12s);}
@keyframes sss-peak-arrive {from {opacity:0;translate:0 14px;scale:.85;}to {opacity:1;translate:0 0;scale:1;}}
@media (min-width:761px) and (max-width:1024px) {
 .sss-process .sss-mountain-journey {height:650px;margin-top:-10px;}
 .sss-site .sss-mountain-copy p {font-size:.72rem;line-height:1.45;}
 .sss-mountain-icon {width:54px;height:54px;}
 .sss-mountain-copy {left:0;width:100%;padding-inline:3px;}
}
@media (min-width:761px) and (max-width:860px) {
 /* At narrow tablet widths the final step has the tallest copy block. Give the
    complete journey enough clearance so its number never meets the intro text. */
 .sss-process .sss-mountain-journey {margin-top:64px;}
}
@media (max-width:760px) {
 .sss-process .sss-mountain-journey {height:auto;margin-top:clamp(28px,8vw,40px);padding-bottom:clamp(120px,24vw,180px);}
 .sss-mountain-landscape {top:auto;bottom:0;height:clamp(350px,75vw,480px);opacity:.65;mask-image:linear-gradient(transparent,#000 55%);}
 .sss-mountain-landscape .sss-mountain-connection,.sss-mountain-waypoints {display:none;}
 .sss-mountain-stages {--journey-gutter:clamp(16px,4.2vw,28px);position:relative;display:grid;gap:22px;width:100%;max-width:640px;margin:0 auto;padding:0 var(--journey-gutter);}
 .sss-mountain-stages::before {content:"";position:absolute;left:calc(var(--journey-gutter) + 29px);top:35px;bottom:35px;border-left:2px dashed #c7d5e1;}
 .sss-mountain-step {position:relative;left:auto;top:auto;display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:16px;width:100%;transform:none;text-align:left;}
 .sss-mountain-copy {position:relative;inset:auto;z-index:1;grid-column:2;grid-row:1;width:auto;min-width:0;min-height:124px;padding:13px 14px;border:1px solid rgba(255,255,255,.82);border-radius:14px;background:rgba(255,253,249,.8);box-shadow:0 8px 24px rgba(6,50,88,.1),inset 0 1px 0 rgba(255,255,255,.72);-webkit-backdrop-filter:blur(14px) saturate(130%);backdrop-filter:blur(14px) saturate(130%);}
 .sss-mountain-number {font-size:.93rem;margin-bottom:5px;}
 .sss-site .sss-mountain-copy p {font-size:.83rem;max-width:none;margin:0;color:#6b6253;text-shadow:0 1px 1px rgba(255,255,255,.72);}
 .sss-mountain-icon {grid-column:1;grid-row:1;width:58px;height:58px;margin:auto;}
}
@media (prefers-reduced-motion:reduce) {
 .sss-mountain-journey.is-inview .sss-mountain-icon {animation:none;}
 .sss-mountain-icon {transition:none;}
}
