/* Amsi Pro Narrow: fuentes servidas por la web, sin depender de instalaciones locales. */
@font-face{font-family:PackmanDisplay;src:url('../fonts/AmsiProNarw-Ultra.ttf') format('truetype');font-style:normal;font-weight:900;font-display:swap}
@font-face{font-family:PackmanDisplay;src:url('../fonts/AmsiProNarw-UltraItalic.ttf') format('truetype');font-style:italic;font-weight:900;font-display:swap}
@font-face{font-family:PackmanText;src:url('../fonts/AmsiProNarw-XLight.ttf') format('truetype');font-style:normal;font-weight:300;font-display:swap}
:root{--purple:#5c0f8b;--green:#80bc00;--light-green:#c3dd8c;--lilac:#af87c5;--white:#fff;--black:#000;--display:PackmanDisplay,'Arial Narrow',Arial,sans-serif;--text:PackmanText,'Arial Narrow',Arial,sans-serif;--pad:clamp(24px,5vw,90px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--purple);background:var(--white);font-family:var(--text);font-weight:300;font-size:20px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;height:auto;display:block}p{margin:0 0 22px}h1,h2,h3{font-family:var(--display);font-weight:900;line-height:1.02;margin:0;letter-spacing:-.035em}h1,h2{text-transform:uppercase}h2{font-size:clamp(40px,4.2vw,68px)}h3{font-size:28px}em{font-style:italic}::selection{background:var(--light-green);color:var(--purple)}a:focus-visible,button:focus-visible{outline:3px solid var(--lilac);outline-offset:6px}.skip-link{position:fixed;left:15px;top:-100px;z-index:30;background:white;padding:14px 20px}.skip-link:focus{top:15px}.header{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:10px var(--pad);height:112px;background:white;position:sticky;top:0;z-index:20;border-bottom:1px solid #5c0f8b15}.brand{width:162px;flex-shrink:0}.header-right{display:flex;flex-direction:column;gap:18px;align-items:flex-end}.utility{display:flex;align-items:center;gap:48px;font-size:13px}.utility>span{font-size:10px;letter-spacing:1.4px;font-family:var(--text)}.utility>a{display:flex;gap:13px}nav{display:flex;gap:34px;align-items:center;font-family:var(--text);font-size:13px}nav>a:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{border:1px solid var(--purple);padding:10px 19px;border-radius:50px;display:flex;align-items:center;gap:30px}.nav-cta:hover{background:var(--purple);color:white;text-decoration:none}.menu-toggle{display:none}
.hero{background:var(--green);position:relative;isolation:isolate;overflow:hidden;text-align:center;min-height:645px;display:flex;align-items:center;justify-content:center;padding:60px var(--pad) 94px}.motifs{position:absolute;inset:0;width:100%;height:100%;z-index:-1;color:var(--purple);opacity:.15;pointer-events:none}.hero-content{width:100%;max-width:1050px}.eyebrow{font-family:var(--text);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;margin-bottom:25px}.hero h1{font-size:clamp(58px,7.4vw,112px);line-height:.97;letter-spacing:-.028em}.hero h1 em{color:var(--purple)}.hero-copy{font-size:24px;line-height:1.4;margin:27px auto 28px}.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:17px}.pill{font-family:var(--text);display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid transparent;border-radius:50px;min-height:49px;padding:13px 24px;font-size:12px;font-weight:500;transition:transform .2s,background .2s,color .2s}.pill span{font-size:20px;line-height:1}.pill:hover{transform:translateY(-3px)}.pill-purple{background:var(--purple);color:white}.pill-purple:hover{background:#400b62}.pill-outline{border-color:var(--purple);color:var(--purple)}.pill-outline:hover{background:white}.pill-white{background:white;color:var(--purple)}.pill-white:hover{background:var(--light-green)}.scroll-cue{position:absolute;bottom:22px;left:calc(50% - 20px);width:40px;height:42px;font-family:var(--text);font-size:35px;line-height:1;font-weight:300}
.section{padding:85px var(--pad)}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:50px;margin-bottom:46px}.section-heading .eyebrow{margin-bottom:17px}.section-heading h2{font-size:clamp(38px,3.8vw,58px)}.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.solution-card{min-width:0}.card-visual{height:275px;position:relative;display:block;overflow:hidden}.card-visual img{width:100%;height:100%;object-fit:cover;object-position:center 60%;transition:transform .5s}.card-visual:hover img{transform:scale(1.045)}.visual-tag{position:absolute;left:16px;top:16px;font-family:var(--text);font-size:8px;letter-spacing:.8px;padding:8px 11px;background:white;color:var(--purple);z-index:1}.visual-arrow{position:absolute;bottom:16px;right:16px;width:35px;height:35px;border-radius:50%;background:white;display:grid;place-items:center;font-size:22px;font-family:var(--text)}.paper-visual{background:var(--lilac)}.paper-visual svg{width:100%;height:100%;transition:transform .5s}.paper-visual:hover svg{transform:rotate(-4deg) scale(1.03)}.idea-visual{background:var(--purple);color:var(--light-green)}.idea-type{display:block;position:absolute;left:30px;bottom:20px;font-family:var(--display);font-weight:900;font-size:75px;line-height:.85;letter-spacing:-2px;transform:rotate(-5deg)}.idea-type em{color:var(--white)}.card-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:25px 0 14px}.card-title h3{font-size:30px;text-transform:uppercase}.card-title>span{font-family:var(--text);font-size:10px}.solution-card>p{font-size:20px;line-height:1.45;margin-bottom:19px}.underlined{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-family:var(--text);font-size:11px;padding-bottom:5px;border-bottom:1px solid var(--purple)}.underlined span{font-size:18px}.image-note{font-family:var(--text);font-size:9px;letter-spacing:.2px;color:#65546f;margin:32px 0 0}
.about{display:grid;grid-template-columns:1fr 1fr;background:var(--light-green)}.about-photo{position:relative;min-height:600px;overflow:hidden}.about-photo>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.photo-caption{position:absolute;bottom:25px;left:30px;background:white;padding:9px 14px;font-family:var(--text);font-size:9px;letter-spacing:1px}.about-copy{padding:65px clamp(28px,5vw,80px)}.about h2{font-size:clamp(60px,6.2vw,96px);margin-bottom:28px;line-height:.95}.about h2 em{font-size:.92em}.about .intro{font-size:27px;line-height:1.25}.about-copy>p:not(.eyebrow):not(.intro){font-size:20px}.about .pill{margin-top:4px}.statement-band{display:flex;justify-content:space-around;align-items:center;gap:20px;padding:30px 3%;background:var(--purple);color:var(--light-green);font-family:var(--display);font-weight:900;font-size:clamp(26px,3.4vw,53px);line-height:1.1;overflow:hidden}.band-flower{font-family:var(--text);font-size:.9em;color:var(--lilac)}.process .section-heading{align-items:flex-end}.process .section-heading>p{max-width:340px;font-size:21px;margin-bottom:0}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;margin-top:55px}.process-grid article{border-top:1px solid var(--lilac);padding-top:20px}.step-number{display:block;font-family:var(--display);font-size:60px;font-weight:900;color:var(--green);line-height:1;margin-bottom:18px}.process h3{font-size:29px;margin-bottom:16px}.process-grid p{font-size:20px;margin:0}
.contact{background:var(--purple);color:white;padding:45px var(--pad) 75px}.contact-top{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid #af87c566;padding-bottom:30px;margin-bottom:55px}.contact-top .eyebrow{margin:0;color:var(--light-green)}.contact-top>span{font-family:var(--text);font-size:9px;letter-spacing:1px}.contact-top>span span{font-size:22px;margin-left:20px}.contact-main{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.contact h2{font-size:clamp(49px,5.8vw,88px);line-height:.98}.contact h2 em{color:var(--light-green)}.contact-action p{font-size:24px}.email-link{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:clamp(26px,3vw,44px);line-height:1.2;color:var(--light-green);padding-bottom:12px;border-bottom:1px solid var(--lilac);white-space:nowrap}.email-link span{font-size:27px;font-family:var(--text)}.contact-action .pill{margin-top:24px}.footer{padding:40px var(--pad) 18px;background:white}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:30px}.footer-brand{width:165px;flex-shrink:0}.footer-main>p{margin:0;font-size:21px;line-height:1.3}.footer-main>p strong{font-family:var(--display);font-weight:900}.footer-links{display:flex;gap:25px;font-size:17px}.top-link{display:flex;gap:20px;font-family:var(--text);font-size:10px}.top-link span{font-size:20px}.footer-bottom{border-top:1px solid #5c0f8b25;padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-family:var(--text);font-size:9px}
@media(min-width:1650px){:root{--pad:max(70px,calc((100vw - 1480px)/2))}.hero{min-height:720px}.card-visual{height:330px}}
@media(max-width:1050px){.utility{gap:20px}.utility>span{display:none}nav{gap:22px;font-size:12px}.hero{min-height:600px}.solution-grid{gap:25px}.card-visual{height:240px}.card-title h3{font-size:25px}.about-copy{padding:50px 35px}.about-photo{min-height:590px}.about .intro{font-size:24px}.process .section-heading>p{font-size:19px}.contact-main{gap:40px}.footer-main{gap:22px}.footer-links{gap:15px}.footer-main>p{font-size:19px}}
@media(max-width:760px){html{scroll-padding-top:88px}.header{height:88px;padding:8px 24px;gap:20px}.brand{width:126px}.utility{display:none}.menu-toggle{display:flex;align-items:center;gap:17px;border:1px solid var(--purple);border-radius:50px;background:white;color:var(--purple);padding:9px 16px;font-family:var(--text);font-size:12px}.menu-toggle span{font-size:17px}nav{display:none;position:absolute;top:87px;left:0;right:0;padding:22px 24px 26px;background:white;flex-direction:column;align-items:stretch;gap:18px;border-bottom:1px solid var(--lilac);font-size:15px}nav.is-open{display:flex}.nav-cta{justify-content:space-between}.hero{min-height:590px;padding:65px 24px 95px}.hero h1{font-size:clamp(44px,9.7vw,72px);line-height:1.01}.hero .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:31px}.hero-copy{font-size:22px;margin:28px auto;max-width:320px}.hero-copy br{display:none}.motifs{opacity:.11}.hero-actions{gap:13px}.pill{padding:13px 20px;font-size:11px;gap:22px;min-height:47px}.hero-actions .pill{min-width:225px}.scroll-cue{bottom:25px}.section{padding:55px 24px}.section-heading{align-items:flex-start;gap:24px;flex-direction:column;margin-bottom:32px}.section-heading h2{font-size:39px}.eyebrow{font-size:8px;letter-spacing:1.5px}.solution-grid{grid-template-columns:1fr;gap:42px}.card-visual{height:290px}.card-title{margin-top:20px;margin-bottom:12px}.card-title h3{font-size:32px}.solution-card>p{font-size:21px;max-width:500px}.idea-type{font-size:86px;left:35px;bottom:23px}.paper-visual svg{max-width:480px;display:block;margin:auto}.image-note{line-height:1.7;margin-top:30px}.about{grid-template-columns:1fr}.about-photo{min-height:440px}.about-photo>img{object-position:center 57%}.photo-caption{bottom:20px;left:24px;font-size:8px}.about-copy{padding:46px 24px 50px}.about h2{font-size:70px;max-width:100%;margin-bottom:24px}.about .intro{font-size:27px}.about-copy>p:not(.eyebrow):not(.intro){font-size:22px}.statement-band{padding:24px 20px;gap:10px;font-size:clamp(15px,4vw,28px);justify-content:space-between}.band-flower{font-size:.85em}.process .section-heading{align-items:start}.process .section-heading>p{font-size:22px;max-width:100%}.process-grid{grid-template-columns:1fr;gap:32px;margin-top:35px}.process-grid article{position:relative;padding-left:62px;padding-top:25px}.step-number{position:absolute;left:0;top:25px;font-size:39px}.process h3{font-size:29px;margin-bottom:13px}.process-grid p{font-size:21px}.contact{padding:35px 24px 52px}.contact-top{padding-bottom:23px;margin-bottom:35px}.contact-top>span{font-size:7px;max-width:150px;text-align:right}.contact-top>span span{margin-left:10px;font-size:15px}.contact-main{grid-template-columns:1fr;gap:30px}.contact h2{font-size:clamp(46px,12.5vw,75px)}.contact-action p{font-size:23px}.email-link{font-size:clamp(25px,7.4vw,36px);gap:12px}.email-link span{font-size:23px}.footer{padding:30px 24px 18px}.footer-main{flex-wrap:wrap;gap:25px}.footer-brand{width:130px}.footer-main>p{font-size:21px;margin-left:auto}.footer-links{width:100%;gap:28px;font-size:19px}.top-link{margin-left:auto}.footer-bottom{flex-direction:column;gap:8px;font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Textos principales en negro, según el manual de marca. */
.solution-card>p,.about-copy>p:not(.eyebrow),.process-grid p,.process .section-heading>p{color:var(--black)}


/* Amsi del manual también en navegación, botones y textos de apoyo. */
nav{font-size:20px}.pill{font-size:18px;font-weight:300}.underlined{font-size:17px}.eyebrow{font-size:13px;font-weight:300}.visual-tag{font-size:12px}.utility{font-size:17px}.utility>span{font-size:12px}.card-title>span{font-size:14px}.image-note{font-size:13px}.top-link{font-size:15px}.footer-bottom{font-size:12px}.contact-top>span{font-size:13px}.photo-caption{font-size:13px}
@media(max-width:760px){.menu-toggle{font-size:17px}.hero .eyebrow,.eyebrow{font-size:11px}.pill{font-size:18px}.visual-tag{font-size:12px}.contact-top>span{font-size:10px}.photo-caption{font-size:11px}.footer-bottom{font-size:11px}.hero-actions .pill{min-width:225px}.contact-top .eyebrow{font-size:11px}}

/* Movimiento de presentación: entradas breves, una sola vez, sin ocultar secciones. */
@keyframes packman-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes packman-bag-drift{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-12px) rotate(2deg)}}
@keyframes packman-cue{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@keyframes packman-menu{from{opacity:0;transform:translateY(-9px)}to{opacity:1;transform:translateY(0)}}
.motion-ready .hero-enter{animation:packman-enter .76s cubic-bezier(.22,.68,.2,1) var(--entrance-delay,0ms) backwards}
.motion-ready .reveal-enter{animation:packman-enter .66s cubic-bezier(.22,.68,.2,1) var(--reveal-delay,0ms) backwards}
.motion-ready .motifs>g>use{transform-box:fill-box;transform-origin:center;animation:packman-bag-drift 3.6s ease-in-out 1 backwards}
.motion-ready .motifs>g:nth-of-type(2)>use{animation-delay:.12s}
.motion-ready .motifs>g:nth-of-type(3)>use{animation-delay:.24s}
.motion-ready .motifs>g:nth-of-type(4)>use{animation-delay:.36s}
.motion-ready .motifs>g:nth-of-type(5)>use{animation-delay:.48s}
.motion-ready .motifs>g:nth-of-type(6)>use{animation-delay:.6s}
.motion-ready .scroll-cue>span{display:block;animation:packman-cue 1.25s ease-in-out .6s 3}
.pill,.nav-cta,.menu-toggle{transition:transform .25s cubic-bezier(.2,.65,.25,1),background-color .25s ease,color .25s ease,box-shadow .25s ease}
.pill>span,.nav-cta>span,.underlined>span,.email-link>span{display:inline-block;transition:transform .25s cubic-bezier(.2,.65,.25,1)}
.card-visual{transition:transform .35s cubic-bezier(.2,.65,.25,1),box-shadow .35s ease}
.visual-arrow{transition:transform .3s ease,background-color .3s ease}
.idea-type{transition:transform .45s cubic-bezier(.2,.65,.25,1)}
.email-link{transition:color .25s ease,border-color .25s ease}
@media(hover:hover) and (pointer:fine){
  .motion-ready .pill:hover,.motion-ready .nav-cta:hover{transform:translateY(-3px);box-shadow:0 8px 22px #5c0f8b1f}
  .motion-ready .pill:hover>span,.motion-ready .nav-cta:hover>span{transform:translate(3px,-2px)}
  .motion-ready .underlined:hover>span{transform:translateX(5px)}
  .motion-ready .solution-card:hover .card-visual,.motion-ready .solution-card:focus-within .card-visual{transform:translateY(-5px);box-shadow:0 12px 26px #5c0f8b18}
  .motion-ready .solution-card:hover .visual-arrow{transform:rotate(7deg);background:var(--light-green)}
  .motion-ready .idea-visual:hover .idea-type{transform:rotate(-2deg) translateY(-4px)}
  .motion-ready .email-link:hover>span{transform:translate(4px,-4px)}
}
.pill:active,.nav-cta:active{transform:translateY(0)}
@media(max-width:760px){.motion-ready nav.is-open{animation:packman-menu .22s ease-out}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .pill:hover,.nav-cta:hover,.card-visual:hover img,.paper-visual:hover svg{transform:none}
}
@media print{*,*::before,*::after{animation:none!important;transition:none!important}}
