/* OSM v0.3 — Quiénes Somos. Original design, owned assets, scoped animations. */
.about-page{--ag:#2f4f4f;--ai:#102020;--am:#526464;--al:rgba(47,79,79,.19);overflow:hidden;background:white}
.about-page .about-container{width:min(1190px,calc(100% - 80px));margin:0 auto}
.about-hero{position:relative;isolation:isolate;overflow:hidden;min-height:440px;background:#fff;display:flex;align-items:center}
.about-grid-background{position:absolute;inset:0;z-index:-2;background:linear-gradient(rgba(47,79,79,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(47,79,79,.04) 1px,transparent 1px);background-size:86px 86px;mask-image:linear-gradient(#000 0%,transparent 100%);animation:aboutGridDrift 26s linear infinite}
.about-hero-inner{width:min(1320px,calc(100% - 80px));position:relative;margin:auto;padding:70px 0 72px}
.about-kicker{font-weight:800;font-size:10px;letter-spacing:.4em;color:var(--ag);display:flex;align-items:center;justify-content:center;gap:22px;animation:aboutFade .9s .1s both}
.about-kicker-rule{display:inline-block;background:var(--ag);width:48px;height:2px;transform-origin:center;animation:aboutRule 4s ease-in-out infinite}
.about-kicker-rule:last-child{animation-delay:-2s}
.about-display{font-weight:900;text-align:center;margin:20px auto 0;font-size:clamp(56px,8.6vw,140px);line-height:1;letter-spacing:-.07em;white-space:nowrap}
.about-fill{display:inline-block;color:var(--ag);animation:aboutWordIn 1.15s cubic-bezier(.16,1,.3,1) .2s both}
.about-stroke{display:inline-block;color:transparent;-webkit-text-stroke:1.6px var(--ag);animation:aboutWordIn 1.15s cubic-bezier(.16,1,.3,1) .4s both,aboutOutline 7s ease-in-out 1.7s infinite}
.about-heading-track{display:flex;align-items:center;gap:10px;width:min(520px,68%);margin:27px auto 0;animation:aboutFade 1.1s .8s both}
.about-heading-track span{height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(47,79,79,.32))}.about-heading-track span:last-child{transform:rotate(180deg)}
.about-heading-track i{width:9px;height:9px;border:1.5px solid var(--ag);transform:rotate(45deg);animation:aboutDiamond 4s ease-in-out infinite}
.about-hero-lower{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-top:64px;position:relative;z-index:2;animation:aboutFade 1s 1.2s both}
.about-hero-lower p{margin:0;font-size:11px;line-height:1.8;letter-spacing:.17em;color:var(--am);font-weight:700}.about-hero-lower strong{color:var(--ag)}
.about-scroll-link{display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid var(--ag);padding-bottom:12px;color:var(--ag);font-size:10px;letter-spacing:.18em;font-weight:900;transition:gap .3s ease}.about-scroll-link:hover{gap:34px}.about-scroll-link span{font-size:19px;font-weight:300}
.about-drawing{position:absolute;z-index:-1;inset:auto -4% 0 auto;width:min(410px,33vw);height:170px;opacity:.21;pointer-events:none}
.draw-column{position:absolute;bottom:0;width:22%;height:80%;border:1px solid var(--ag);background:repeating-linear-gradient(0deg,transparent 0 23px,rgba(47,79,79,.45) 24px 25px);transform-origin:bottom;animation:aboutBuilding 6s cubic-bezier(.16,1,.3,1) infinite}
.draw-col-1{left:6%;height:60%}.draw-col-2{left:39%;height:99%;animation-delay:-1.5s}.draw-col-3{right:4%;height:72%;animation-delay:-3s}
.draw-beam{position:absolute;top:12px;left:0;width:100%;height:1px;background:var(--ag);animation:aboutLineScan 6s linear infinite}
.draw-pulse{position:absolute;top:8px;left:40%;width:8px;height:8px;border:1px solid var(--ag);border-radius:50%;animation:aboutDiamond 3s infinite}
.about-section-id{display:flex;align-items:center;gap:16px;font-weight:900;color:var(--ag);font-size:10px;letter-spacing:.26em;white-space:nowrap}.about-line{display:inline-block;width:72px;height:1px;background:rgba(47,79,79,.32)}
.about-intro{padding:94px 0 99px;background:#f8faf9;border-block:1px solid rgba(47,79,79,.07)}
.about-intro-grid{display:grid;grid-template-columns:1fr 2.1fr;gap:58px}
.about-intro .about-section-id{padding-top:13px;align-self:start}
.about-intro-title{margin:0 0 32px;font-size:clamp(40px,5.05vw,72px);line-height:.99;letter-spacing:-.065em;color:var(--ai);font-weight:900}
.about-intro-title em{font-style:normal;color:var(--ag)}
.about-intro-copy>p{max-width:780px;color:var(--am);font-size:clamp(16px,1.32vw,19px);line-height:1.85;margin:0}
.about-pillars{display:flex;gap:9px;flex-wrap:wrap;margin-top:37px}.about-pillars span{border:1px solid rgba(47,79,79,.2);padding:11px 13px;color:var(--ag);font-size:10px;letter-spacing:.16em;font-weight:900}
.about-founders{padding:98px 0 105px;position:relative;background:white}
.about-founders-heading{display:grid;grid-template-columns:1fr 2.1fr;gap:8px 58px;align-items:start;margin-bottom:68px}
.about-founders-heading .about-section-id{grid-row:span 2;padding-top:10px}.about-founders-heading h2{margin:0;font-size:clamp(34px,4.3vw,60px);font-weight:900;letter-spacing:-.055em;line-height:1.03;color:var(--ai)}
.about-founders-heading h2 span{color:var(--ag)}.about-founders-heading p{margin:16px 0 0;color:var(--am);font-size:14px;letter-spacing:.02em}
.founder{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(42px,6vw,102px)}
.founder-portrait{position:relative;padding:13px;background:linear-gradient(135deg,#f1f4f3,white 50%,#edf2f1);border:1px solid var(--al);box-shadow:0 22px 60px rgba(25,50,50,.065);isolation:isolate}
.founder-portrait-stage{position:relative;overflow:hidden;aspect-ratio:1/1;background:#e4e9e7;clip-path:polygon(0 0,97% 0,100% 3%,100% 100%,3% 100%,0 97%)}
.founder-portrait-stage img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transform:scale(1.035);filter:saturate(.82);animation:aboutPortrait 17s ease-in-out infinite alternate;transition:filter .7s}
.founder-b .founder-portrait-stage img{animation-duration:19s;animation-delay:-4s}
.founder-portrait:hover img{filter:saturate(1.12) contrast(1.05)}
.founder-scan{pointer-events:none;position:absolute;inset:-1px;z-index:2;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.22) 51%,transparent 65%);transform:translateX(-120%);animation:aboutScan 9s ease-in-out infinite}
.founder-b .founder-scan{animation-delay:-4s}
.founder-portrait .corner{position:absolute;z-index:3;width:56px;height:56px;pointer-events:none;animation:aboutCorner 5.6s ease-in-out infinite}
.founder-portrait .c-tl{left:-2px;top:-2px;border-left:3px solid var(--ag);border-top:3px solid var(--ag)}
.founder-portrait .c-br{right:-2px;bottom:-2px;border-right:3px solid var(--ag);border-bottom:3px solid var(--ag);animation-delay:-2.8s}
.portrait-caption{position:absolute;left:13px;right:13px;bottom:-31px;display:flex;justify-content:space-between;gap:10px;color:#728380;font-size:9px;font-weight:800;letter-spacing:.16em}
.founder-copy{padding:12px 0}.founder-index{display:flex;align-items:center;gap:16px;color:var(--ag);font-weight:900;font-size:10px;letter-spacing:.25em;margin:0 0 27px}
.founder-index span{height:1px;width:64px;background:rgba(47,79,79,.38)}
.founder-copy h3{margin:0;color:var(--ai);font-size:clamp(43px,5.2vw,72px);font-weight:900;line-height:.93;letter-spacing:-.055em}
.founder-copy h3 span{color:var(--ag)}
.founder-role{display:inline-block;margin:20px 0 29px;background:#f2f5f4;border-left:2px solid var(--ag);color:var(--ag);font-weight:900;font-size:10px;letter-spacing:.2em;padding:9px 14px}
.founder-copy p{margin:0;color:var(--am);line-height:1.85;font-size:clamp(14px,1.1vw,16px)}
.founder-copy p em{color:var(--ag)}
.founder-sig{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--al);margin-top:28px;padding-top:16px;color:#758b85;font-weight:800;font-size:9px;letter-spacing:.13em}
.founder-sig svg{width:74px;height:18px;flex:none;fill:none;stroke:var(--ag);stroke-width:1.6;stroke-dasharray:125;stroke-dashoffset:125;transition:stroke-dashoffset 1.4s ease}
.founder:hover .founder-sig svg,.founder-sig svg.is-drawn{stroke-dashoffset:0}
.founder-divider{display:flex;align-items:center;gap:16px;padding:95px 0 84px;width:100%}
.founder-divider span{height:1px;background:linear-gradient(90deg,transparent,rgba(47,79,79,.19));flex:1}.founder-divider span:last-child{transform:rotate(180deg)}
.founder-divider i{width:10px;height:10px;border:1px solid var(--ag);transform:rotate(45deg);animation:aboutDiamond 4.5s ease-in-out infinite}
.about-closing{position:relative;isolation:isolate;overflow:hidden;background:var(--ag);color:white;padding:99px 0 90px}
.about-closing-grid{position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.16;background:repeating-linear-gradient(0deg,transparent 0 76px,rgba(255,255,255,.28) 76px 77px),repeating-linear-gradient(90deg,transparent 0 76px,rgba(255,255,255,.28) 76px 77px);mask-image:linear-gradient(90deg,transparent,black)}
.closing-kicker{font-size:10px;letter-spacing:.35em;font-weight:900;color:#c8ded7;margin:0 0 25px}
.about-closing h2{font-size:clamp(43px,6.5vw,98px);letter-spacing:-.07em;line-height:.96;margin:0 0 44px;font-weight:900}
.about-closing h2 span{color:transparent;-webkit-text-stroke:1.4px rgba(243,255,252,.85)}
.about-closing-bottom{border-top:1px solid rgba(255,255,255,.32);padding-top:28px;display:flex;justify-content:space-between;align-items:end;gap:28px}
.about-closing-bottom p{font-size:16px;line-height:1.7;max-width:480px;color:#d4e4df;margin:0}
.about-closing-bottom a{font-weight:900;font-size:10px;letter-spacing:.12em;white-space:nowrap;border-bottom:1px solid #bed8ce;padding-bottom:11px;display:flex;align-items:center;gap:22px;transition:gap .2s}
.about-closing-bottom a:hover{gap:30px}
.about-closing-bottom a span{font-size:22px;font-weight:400}
/* Scroll-controlled motion: visible by default when JS unavailable */
.about-page.motion-ready .about-reveal{opacity:0;transform:translate3d(0,32px,0);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1)}
.about-page.motion-ready .about-reveal[data-move="left"]{transform:translate3d(-36px,0,0)}
.about-page.motion-ready .about-reveal[data-move="right"]{transform:translate3d(36px,0,0)}
.about-page.motion-ready .about-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
@keyframes aboutWordIn{from{opacity:0;transform:translateY(40px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes aboutOutline{0%,100%{-webkit-text-stroke-color:#2f4f4f}50%{-webkit-text-stroke-color:#8ca6a0}}
@keyframes aboutFade{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@keyframes aboutRule{0%,100%{transform:scaleX(.35);opacity:.45}50%{transform:scaleX(1);opacity:1}}
@keyframes aboutDiamond{0%,100%{opacity:.35;scale:.76}50%{opacity:1;scale:1}}
@keyframes aboutGridDrift{to{background-position:86px 86px,86px 86px}}
@keyframes aboutBuilding{0%,12%{transform:scaleY(.1);opacity:.1}45%,78%{transform:scaleY(1);opacity:.8}100%{transform:scaleY(1);opacity:.24}}
@keyframes aboutLineScan{0%{transform:translateY(0);opacity:0}40%{opacity:.8}90%,100%{transform:translateY(155px);opacity:0}}
@keyframes aboutPortrait{0%{transform:scale(1.035) translate(0,0)}50%{transform:scale(1.095) translate(-.6%,-.6%)}100%{transform:scale(1.04) translate(.3%,-.7%)}}
@keyframes aboutScan{0%,37%{transform:translateX(-120%)}60%,100%{transform:translateX(120%)}}
@keyframes aboutCorner{0%,100%{width:21px;height:21px;opacity:.5}50%{width:60px;height:60px;opacity:1}}
@media(max-width:1000px){.founder{gap:48px}.founder-copy h3{font-size:clamp(38px,5vw,61px)}.about-founders-heading{grid-template-columns:1fr 1.8fr;gap:20px}.about-intro-grid{grid-template-columns:1fr 1.8fr;gap:30px}}
@media(max-width:760px){.about-page .about-container{width:calc(100% - 34px)}.about-hero{min-height:390px}.about-hero-inner{width:calc(100% - 34px);padding:70px 0 45px}.about-kicker{font-size:9px;letter-spacing:.2em;gap:12px}.about-kicker-rule{width:30px}.about-display{font-size:clamp(47px,10.5vw,78px)}.about-drawing{width:48vw;height:130px}.about-hero-lower{margin-top:64px}.about-intro{padding:66px 0}.about-intro-grid,.about-founders-heading{grid-template-columns:1fr;gap:22px}.about-founders-heading .about-section-id{grid-row:auto}.about-founders{padding:70px 0 77px}.about-founders-heading{margin-bottom:46px}.founder{grid-template-columns:1fr;gap:46px}.founder .founder-portrait{grid-row:1}.founder .founder-copy{grid-row:2}.founder-portrait{width:min(560px,100%);margin:auto}.founder-divider{padding:77px 0 66px}.founder-copy h3{font-size:clamp(39px,8vw,65px)}.about-closing{padding:70px 0}.about-closing-bottom{flex-direction:column;align-items:flex-start}.about-closing-bottom a{white-space:normal}}
@media(max-width:480px){.about-display{font-size:clamp(40px,10.8vw,56px);letter-spacing:-.065em}.about-hero-lower{flex-direction:column;align-items:flex-start;gap:24px}.about-intro-title{font-size:clamp(35px,10vw,50px)}.founder-copy h3{font-size:clamp(39px,10.5vw,53px)}.founder-portrait{padding:9px}.portrait-caption{left:9px;right:9px;font-size:8px}.about-closing h2{font-size:clamp(37px,9vw,56px)}}
@media(prefers-reduced-motion:reduce){.about-page *, .about-page *::before,.about-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.about-page.motion-ready .about-reveal{opacity:1!important;transform:none!important}}

/* v0.4: shared page title from page-titles.css, no duplicated intro space */
.about-page .about-founders{padding-top:clamp(52px,6vw,84px)}
