
.nosotros-lock{display:grid;place-items:center;width:48px;height:52px;color:var(--gold-500);margin:.15rem auto 0;outline-offset:5px}.nosotros-lock svg{width:34px;height:38px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .55s var(--ease),filter .4s,color .4s}.nosotros-lock .lock-shackle{transform-origin:14px 22px;transition:transform .55s var(--ease)}.nosotros-lock:is(:hover,:focus-visible){color:var(--gold-300)}.nosotros-lock:is(:hover,:focus-visible) svg{transform:translateY(-2px);filter:drop-shadow(0 0 5px color-mix(in srgb,var(--gold-500) 70%,transparent))}.nosotros-lock:is(:hover,:focus-visible) .lock-shackle{transform:translateY(-3px) rotate(-8deg)}.nosotros-lock:focus-visible{outline:1px solid var(--gold-500);border-radius:5px}.nosotros .nosotros-portrait{width:clamp(12rem,25vw,29rem)}
@media(min-width:768px){.nosotros .section-container{padding-top:clamp(8rem,20svh,13rem);padding-bottom:2rem}.nosotros-stage{gap:clamp(1.5rem,3.5svh,2.8rem)}.nosotros-description .nosotros-closing{margin-top:clamp(1.2rem,3svh,2.5rem)}.nosotros-lock{margin-top:clamp(.8rem,2svh,1.8rem)}}
@media(max-width:767px){.nosotros .nosotros-portrait{width:68vw}.nosotros .nosotros-portrait--left{left:-11vw}.nosotros .nosotros-portrait--right{right:-11vw}.nosotros .nosotros-portraits{height:clamp(11rem,30svh,18.5rem);flex-basis:clamp(11rem,30svh,18.5rem)}.nosotros-lock{height:40px;width:44px}.nosotros-lock svg{height:32px;width:29px}}
@media(max-height:700px) and (max-width:767px){.nosotros .nosotros-portraits{height:27svh;flex-basis:27svh;min-height:8rem}.nosotros-lock{height:32px}}
@media(max-height:650px){.nosotros-stage{gap:1rem}}
@media(min-width:1024px){.footer-columns{grid-template-columns:1.4fr 1fr 1fr}}
@media(prefers-reduced-motion:reduce){.nosotros-lock svg,.nosotros-lock .lock-shackle{transition:none;transform:none!important}}
/* A single positioning owner: GSAP animates the slides; CSS defines only geometry. */
.process-section{position:relative;height:100vh;height:100svh;min-height:0;overflow:clip}
.process-container{position:relative;height:100%;max-width:var(--container-max);margin:auto;padding:calc(var(--section-label-top) + 2rem) var(--gutter) clamp(1.5rem,5svh,3rem);display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:clamp(.75rem,2svh,1.3rem);align-content:center}
.process-container>.standard-heading{text-align:center}.process-container .standard-label>span{transform-origin:left}
.process-list{position:relative;list-style:none;padding:0;margin:0;min-height:0;width:100%;max-width:72rem;justify-self:center;touch-action:pan-y}
.process-step{position:absolute;inset:0;display:grid;place-items:center;opacity:0;pointer-events:none;transform:none;will-change:transform,opacity}
.process-step:first-child{opacity:1}
.process-media{position:relative;width:min(58%,34rem);height:auto;max-height:100%;aspect-ratio:16/10;overflow:hidden;border-radius:12px;isolation:isolate;border:1px solid var(--border)}
.process-photo{position:absolute;inset:0}.process-photo img{display:block;width:100%;height:100%;object-fit:cover}
.process-overlay{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,color-mix(in srgb,var(--navy-900) 70%,transparent),transparent 65%),color-mix(in srgb,var(--navy-900) 20%,transparent)}
.process-placeholder{height:100%;display:grid;place-items:center;background:var(--navy-800)}.process-placeholder svg{width:28%;height:40%;fill:none;stroke:var(--gold-500);stroke-width:1;opacity:.3}
.process-copy{display:none}
.process-caption{position:relative;isolation:isolate;min-height:5.2rem;text-align:center;display:flex;flex-direction:column;justify-content:center;gap:.5rem}
.process-caption-number{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:5rem;font-weight:900;color:var(--navy-200);opacity:.06;z-index:-1;line-height:1}
.process-caption h3{margin:0;font-size:clamp(1.05rem,1.65vw,1.7rem);line-height:1.2;font-weight:700;letter-spacing:-.02em}
.process-caption p{margin:0;color:var(--navy-200);font-size:clamp(.75rem,1vw,.95rem);line-height:1.5}
.process-controls{display:flex;align-items:center;justify-content:center;gap:.75rem}
.process-controls>button{width:44px;height:44px;border:0;background:transparent;position:relative;isolation:isolate;color:var(--gold-500);font-size:.85rem;transition:color .35s,text-shadow .35s}
.process-controls>button::before{content:'';position:absolute;inset:5px;border:1px solid var(--border);border-radius:50%;z-index:-1;transition:border-color .35s,box-shadow .35s,background .35s}
.process-controls>button:is(:hover,:focus-visible){color:var(--gold-300);text-shadow:0 0 9px var(--gold-500)}.process-controls>button:is(:hover,:focus-visible)::before{border-color:var(--gold-500);background:color-mix(in srgb,var(--gold-500) 8%,transparent);box-shadow:0 0 12px color-mix(in srgb,var(--gold-500) 25%,transparent)}
.process-dots{display:flex}.process-dots button{display:grid;place-items:center;width:44px;height:44px;background:transparent}.process-dots span{width:6px;height:6px;border:1px solid var(--navy-300);border-radius:50%;transition:background .3s,transform .3s,box-shadow .3s}.process-dots button[aria-current=true] span{background:var(--gold-500);border-color:var(--gold-500);transform:scale(1.3)}.process-dots button:is(:hover,:focus-visible) span{background:var(--gold-300);border-color:var(--gold-300);box-shadow:0 0 9px color-mix(in srgb,var(--gold-500) 60%,transparent)}
.process-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:767px){.process-media{width:76%;aspect-ratio:4/3}.process-container{padding-bottom:1.5rem;gap:.6rem}.process-caption{min-height:4.5rem}.process-caption h3{font-size:1.05rem}.process-controls{gap:.35rem}}
@media(max-height:650px){.process-container{gap:.4rem;padding-bottom:1rem}.process-caption{min-height:3.5rem}.process-caption h3{font-size:1rem}.process-caption p{font-size:.7rem}}
