/* «Como funciona»: um percurso com quatro paragens. A linha avança até à etapa ativa e leva um pequeno contentor. Carrega depois de style.css. */
.process-section{background:#fff}.process-section .process-world{display:none}.process-section .process-header{background:none;backdrop-filter:none;border-bottom:0;padding-bottom:0;margin-bottom:3.4rem}.process-section .process-grid{display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding-top:.4rem}.process-section .process-grid::before{left:.55rem;right:calc(25% + .55rem);top:.95rem;height:3px;border-radius:2px;opacity:1;
background:linear-gradient(90deg,#237E5F 0 var(--process-progress),transparent var(--process-progress)),repeating-linear-gradient(90deg,#9fb2c0 0 8px,transparent 8px 15px)}.process-section .process-grid::after{content:"";position:absolute;top:.4rem;
left:calc(var(--process-progress) * .75 - 0%);width:26px;height:15px;margin-left:.1rem;border-radius:3px;background:#236186;box-shadow:inset -8px 0 0 #1a4d6a,0 2px 0 rgba(14,36,51,.15);transition:left .55s cubic-bezier(.4,.1,.2,1);z-index:2}
.process-section .process-card{min-height:0;padding:3.1rem 2rem 0 0;border:0;border-radius:0;background:none;box-shadow:none;color:#0E2433;filter:none;opacity:.5;transform:none;transition:opacity .35s ease}
.process-section .process-card.is-active,.process-section .process-card:hover{opacity:1;transform:none;box-shadow:none;background:none}.process-section .process-card::before{content:"";position:absolute;left:0;top:.45rem;width:16px;height:16px;
border-radius:50%;background:#fff;border:3px solid #9fb2c0;box-sizing:border-box;opacity:1;transition:border-color .3s,background .3s;z-index:3;inset:auto;height:16px}.process-section .process-card{position:relative}
.process-section .process-card.is-active::before{border-color:#237E5F;background:#237E5F;box-shadow:0 0 0 6px rgba(35,126,95,.18)}.process-section .process-card::after{display:none!important}.process-section .process-card-top{position:relative;display:block}
.process-section .process-card .step-number{display:block;min-width:0;height:auto;padding:0;background:none!important;border:0!important;color:transparent!important;-webkit-text-stroke:1.5px #b4c6d3;font-size:clamp(3.4rem,6vw,5.2rem);font-weight:800;
letter-spacing:-.04em;line-height:1;transition:color .35s,-webkit-text-stroke-color .35s}.process-section .process-card.is-active .step-number{color:#236186!important;-webkit-text-stroke-color:#236186}
.process-section .process-card .process-icon,.process-section .process-card.is-active .process-icon{position:absolute;right:2rem;top:.4rem;width:2.4rem;height:2.4rem;border:0;background:none;box-shadow:none;color:#237E5F}
.process-section .process-card-copy{margin-top:1.1rem;padding-top:0;border-top:0}.process-section .process-card .process-label,.process-section .process-card.is-active .process-label{color:#237E5F;font-size:.72rem;letter-spacing:.14em}
.process-section .process-card h3{font-size:1.45rem;color:#0E2433;margin:.1rem 0 0}.process-section .process-card p{color:#4b6070;font-size:.98rem;max-width:19rem}.process-section .process-card-action{display:inline-flex;gap:.5rem;margin-top:1.1rem;
padding:0 0 .15rem;border:0;border-bottom:2px solid #237E5F;border-radius:0;background:none;color:#0E2433;font-size:.88rem;font-weight:700}.process-section .process-card-action:hover{background:none;color:#237E5F}
.process-section .process-controls{margin-top:3rem;justify-content:flex-start;gap:1rem}.process-section .process-control-button{border-radius:4px;background:#fff;border-color:#9fb2c0}.process-section .process-dots button{height:4px;width:1.6rem;
border-radius:0}.process-section .process-dots button.is-active{width:3rem;background:#237E5F}@media(max-width:1100px){.process-section .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.4rem 1.5rem}
.process-section .process-grid::before,.process-section .process-grid::after{display:none}.process-section .process-card{opacity:1;padding-top:2.4rem}.process-section .process-card::before{top:0}}
@media(max-width:640px){.process-section .process-grid{display:flex}.process-section .process-card{padding-right:0}.process-section .process-card .process-icon{right:0}}
@media(prefers-reduced-motion:reduce){.process-section .process-grid::after{transition:none}}
