/* Homepage closing section, scoped independently of shared site footers. */
body.home-ambient .closing-platforms{background:#fff;color:#080d10;padding:110px 0 120px}
.closing-platforms__heading{padding:0 12px 32px}
.closing-platforms__heading p,.closing-platforms__item a,.closing-platforms__item--cta span{font:600 13px/1.2 'Bricolage Nav',Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.closing-platforms__heading p{margin:0 0 16px;color:#62686a}
.closing-platforms__heading h2{margin:0;max-width:1040px;font:440 34px/1.25 'Bricolage Menu',Arial,sans-serif;letter-spacing:-.025em}
.closing-platforms__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #e7e8e8}
.closing-platforms__item{min-width:0;min-height:220px;display:flex;flex-direction:column;align-items:flex-start;padding:20px 12px 24px;border-right:1px solid #e7e8e8;border-bottom:1px solid #e7e8e8}
.closing-platforms__item h3{margin:0;font:600 clamp(21px,3vw,30px)/1.1 'Bricolage Nav',Arial,sans-serif;letter-spacing:-.04em;overflow-wrap:anywhere}
.closing-platforms__item p{max-width:250px;margin:20px 0;color:#64696b;font:400 15px/1.5 'Albert Proof',Arial,sans-serif}
.closing-platforms__item a{margin-top:auto;padding:0 0 5px;color:inherit;border-bottom:1px solid currentColor;text-decoration:none}
.closing-platforms__item a span{display:inline-block;margin-left:8px;transition:transform .25s}
.closing-platforms__item a:hover span,.closing-platforms__item a:focus-visible span{transform:translate(3px,-3px)}
.closing-platforms__item--cta{margin:10px;background:#f3f4f4;border:0;border-radius:12px;padding:22px}
.closing-platforms__item--cta strong{display:block;margin-top:16px;font:440 30px/1.1 'Bricolage Menu',Arial,sans-serif;letter-spacing:-.04em}
body.home-ambient .home-close{background:#080d10;color:#fff;font-family:'Albert Proof',Arial,sans-serif}
.home-close__hero{padding:100px 12px 48px;border-bottom:1px solid rgba(255,255,255,.1)}
.home-close__cta{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;text-decoration:none}
.home-close__cta-copy{position:relative;display:block;min-width:0;font:440 clamp(48px,10vw,160px)/1.02 'Bricolage Menu',Arial,sans-serif;letter-spacing:-.055em}
.home-close__cta-hover{display:none}
.home-close__cta>.site-icon{width:clamp(70px,11vw,160px);height:clamp(70px,11vw,160px);flex:none;transition:transform .3s ease}
.home-close__cta:hover>.site-icon,.home-close__cta:focus-visible>.site-icon{transform:translate(8px,-8px)}
.home-close__content{display:grid;grid-template-columns:1fr;gap:48px;padding:60px 12px}
.home-close__nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.home-close__nav a{color:#fff;text-decoration:none;font:440 21px/1.2 'Bricolage Menu',Arial,sans-serif;letter-spacing:-.03em}
.home-close__nav a:hover,.home-close__nav a:focus-visible{text-decoration:underline;text-underline-offset:5px}
.home-close__socials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-content:start}
.home-close__socials a{height:60px;display:grid;place-items:center;border-radius:8px;background:#1b2124;color:#fff;transition:background .2s}
.home-close__socials a:hover,.home-close__socials a:focus-visible{background:#dd3d06}
.home-close__socials svg{width:17px;height:17px}
.home-close__contacts{display:grid;gap:8px;align-content:start}
.home-close__contacts a{min-width:0;min-height:100px;display:grid;grid-template-columns:1fr auto;gap:18px;padding:20px 16px;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#fff;text-decoration:none;transition:background .2s}
.home-close__contacts a:hover,.home-close__contacts a:focus-visible{background:#1b2124}
.home-close__contacts a span:first-child{grid-column:1/-1;color:#aeb4b6}
.home-close__contacts a strong,.home-close__contacts a span{font:600 13px/1.2 'Bricolage Nav',Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;overflow-wrap:anywhere}
.home-close__more{margin:0 12px;border-top:1px solid rgba(255,255,255,.12)}
.home-close__more summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:24px 0;font:600 13px/1.2 'Bricolage Nav',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.home-close__more summary::-webkit-details-marker{display:none}
.home-close__more[open] summary span{transform:rotate(45deg)}
.home-close__more .ftr__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding:12px 0 40px;border:0}
.home-close__more .ftr__col{display:flex;flex-direction:column;gap:12px}
.home-close__more .ftr__col h3{margin:0;color:#aeb4b6;font:600 11px/1.2 'Bricolage Nav',Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.home-close__more .ftr__col a{color:#fff;font:400 14px/1.35 'Albert Proof',Arial,sans-serif;text-decoration:none}
.home-close__more .ftr__col a:hover{text-decoration:underline}
.home-close__more .ftr__social-icon{display:none}
.home-close__bottom{display:flex;flex-wrap:wrap;gap:24px;padding:32px 12px 48px;border-top:1px solid rgba(255,255,255,.12);font:600 12px/1.6 'Bricolage Nav',Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.home-close__bottom nav{display:flex;flex-wrap:wrap;gap:16px}
.home-close__bottom a{color:#fff;text-decoration:none}
.home-close__bottom a:hover{text-decoration:underline}
.home-close__lang{display:flex;gap:8px}
.home-close__bottom p{flex-basis:100%;margin:0;color:#aeb4b6;font:400 12px/1.5 'Albert Proof',Arial,sans-serif;letter-spacing:0;text-transform:none}
.home-close a:focus-visible,.home-close summary:focus-visible,.closing-platforms a:focus-visible{outline:2px solid #dd3d06;outline-offset:4px}
@media(min-width:768px){.closing-platforms__heading{padding:0 24px 40px}.closing-platforms__heading h2{font-size:52px}.closing-platforms__item{min-height:300px;padding:24px}.home-close__hero{padding:150px 24px 80px}.home-close__content{grid-template-columns:1fr 1fr;gap:60px;padding:80px 24px}.home-close__contacts{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.home-close__more{margin:0 24px}.home-close__more .ftr__cols{grid-template-columns:repeat(5,minmax(0,1fr))}.home-close__bottom{padding:40px 24px 56px}}
@media(min-width:993px){body.home-ambient .closing-platforms{padding:160px 0 200px}.closing-platforms__heading{padding:0 32px 40px}.closing-platforms__heading h2{font-size:68px;line-height:1.2}.closing-platforms__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.closing-platforms__item{min-height:350px;padding:24px 32px}.closing-platforms__item--cta{padding:32px}.closing-platforms__item--cta strong{font-size:48px}.home-close__hero{padding:200px 32px 100px}.home-close__content{grid-template-columns:1fr 1fr 1.5fr;gap:32px;padding:100px 32px}.home-close__socials{grid-template-columns:repeat(4,60px)}.home-close__contacts{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.home-close__contacts a:last-child{grid-column:1/-1}.home-close__more{margin:0 32px}.home-close__bottom{padding:40px 32px 56px}.home-close__email{margin-left:auto}}
@media(min-width:993px) and (hover:hover){.home-close__cta-hover{display:block;position:absolute;inset:0;opacity:0;transform:translateY(12%);transition:opacity .3s,transform .3s}.home-close__cta-default{display:block;transition:opacity .3s,transform .3s}.home-close__cta:hover .home-close__cta-default,.home-close__cta:focus-visible .home-close__cta-default{opacity:0;transform:translateY(-12%)}.home-close__cta:hover .home-close__cta-hover,.home-close__cta:focus-visible .home-close__cta-hover{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.closing-platforms__item a span,.home-close__cta-default,.home-close__cta-hover,.home-close__cta>.site-icon,.home-close__socials a,.home-close__contacts a{transition:none!important}}
@media(max-width:992px){.home-close__cta-default{display:none}.home-close__cta-mobile{display:block}}
@media(min-width:993px){.home-close__cta-copy{width:62%;font-size:clamp(116px,11.8056vw,220px);line-height:1}.home-close__cta-mobile{display:none}}
@media(max-width:767px){.home-close__cta-copy{width:48%;max-width:210px}.home-close__cta>.site-icon{width:clamp(80px,25vw,120px);height:clamp(80px,25vw,120px)}}
.closing-platforms__item--cta{transition:background .25s,color .25s}
.closing-platforms__item--cta:hover,.closing-platforms__item--cta:focus-within{background:#dd3d06;color:#fff}
@media(prefers-reduced-motion:reduce){.closing-platforms__item--cta{transition:none}}
/* Reference breakpoints: compact awards-style grid through 1180px. */
@media(max-width:1180px){.closing-platforms__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.closing-platforms__heading{padding:0 12px 32px}.closing-platforms__heading h2{font-size:34px;line-height:1.25}.closing-platforms__item{min-height:220px;padding:16px 12px 24px}.closing-platforms__item--cta{padding:22px}.closing-platforms__item--cta strong{font-size:30px}}
@media(min-width:1181px){.closing-platforms__heading{padding:0 2.222vw 2.778vw}.closing-platforms__heading h2{font-size:4.722vw}.closing-platforms__item{min-height:24.444vw;padding:1.667vw 2.222vw}.closing-platforms__item--cta{padding:2.222vw}}
@media(max-width:992px){.home-close__hero{padding:100px 12px 48px}.home-close__cta-copy{font-size:53px;line-height:1.2}.home-close__content{grid-template-columns:1fr;gap:48px;padding:60px 12px}.home-close__socials{grid-template-columns:repeat(3,minmax(0,1fr))}.home-close__contacts{grid-column:auto;grid-template-columns:1fr}.home-close__more{margin:0 12px}.home-close__bottom{padding:32px 12px 48px}}
@media(min-width:993px) and (max-width:1180px){.home-close__cta-copy{font-size:53px;line-height:1.2;width:auto}.home-close__hero{padding:150px 24px 80px}}
.closing-platforms__item--cta{min-height:0}

/* Retained homepage FAQ uses the same numbered-row treatment as inner pages. */
body.home-ambient .fq2 { background:#fff !important; color:#080d10; padding:clamp(100px,13.8889vw,200px) 0; }
body.home-ambient .fq2 > .wrap { max-width:none; padding:0 2.2222vw; }
body.home-ambient .fq2__inner,body.home-ambient .fq2__head,body.home-ambient .fq2__intro { display:block; }
body.home-ambient .fq2__eyebrow { margin:0 0 24px; color:#656b6d; }
body.home-ambient .fq2__title { max-width:72.2222vw; color:#080d10; font:440 4.7222vw/1.2 'Bricolage Menu',Arial,sans-serif; letter-spacing:-.025em; }
body.home-ambient .fq2__lead { margin:24px 0 0; color:#565c5e; }
body.home-ambient .fq2__grid { display:block; margin-top:40px; counter-reset:home-faq-row; }
body.home-ambient .fq2__column { display:block; margin:0; padding:0; }
body.home-ambient .fq2__item { list-style:none; counter-increment:home-faq-row; border-top:1px solid #dfe2e2; }
body.home-ambient .fq2__column:last-child .fq2__item:last-child { border-bottom:1px solid #dfe2e2; }
body.home-ambient .fq2 .fq2__details,body.home-ambient .fq2 .fq2__details[open] { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
body.home-ambient .fq2__summary { display:grid; grid-template-columns:26% minmax(0,1fr) auto; gap:0 20px; align-items:start; padding:28px 0; color:#080d10; font:400 1.5972vw/1.35 'Albert Proof',Arial,sans-serif; }
body.home-ambient .fq2__summary::before { content:counter(home-faq-row,decimal-leading-zero); color:#777e80; font:600 12px/1.5 'Bricolage Nav',Arial,sans-serif; }
body.home-ambient .fq2__summary::after { content:'More +'; color:#080d10; font:600 12px/1.5 'Bricolage Nav',Arial,sans-serif; text-transform:uppercase; letter-spacing:.08em; white-space:nowrap; }
html[lang^="es"] body.home-ambient .fq2__summary::after { content:'Más +'; }
body.home-ambient .fq2__details[open] .fq2__summary::after { content:'Less −'; }
html[lang^="es"] body.home-ambient .fq2__details[open] .fq2__summary::after { content:'Menos −'; }
body.home-ambient .fq2__icon { display:none; }
body.home-ambient .fq2 .fq2__summary,body.home-ambient .fq2 .fq2__details[open] .fq2__summary { color:#080d10; }
body.home-ambient .fq2__answer { max-width:56ch; margin:0 0 28px calc(26% + 20px); color:#565c5e; font-size:clamp(17px,1.25vw,24px); line-height:1.5; }
body.home-ambient .fq2__summary:focus-visible { outline:2px solid #dd3d06; outline-offset:-2px; }
@media(max-width:1180px) { body.home-ambient .fq2__title { max-width:1040px; font-size:34px; line-height:1.25; } body.home-ambient .fq2__summary { font-size:23px; } }
@media(max-width:992px) { body.home-ambient .fq2 { padding:100px 0; } body.home-ambient .fq2 > .wrap { padding:0 12px; } body.home-ambient .fq2__eyebrow { margin-bottom:16px; } body.home-ambient .fq2__grid { margin-top:32px; } body.home-ambient .fq2__summary { grid-template-columns:minmax(0,1fr) auto; gap:16px; padding:24px 0; font-size:20px; line-height:1.45; } body.home-ambient .fq2__summary::before { grid-column:1/-1; } body.home-ambient .fq2__answer { margin:0 0 24px; } }

/* The homepage projects rise behind the rounded hero on larger screens. */
body.home-ambient .hero-shell{border-radius:0 0 32px 32px}
@media (min-width:993px){
  body.home-ambient .hero-shell{z-index:2;border-radius:0 0 clamp(80px,5.5556vw,107px) clamp(80px,5.5556vw,107px)}
  body.home-ambient.home-overlap-ready .hero-shell{margin-bottom:-100vh}
  body.home-ambient.home-overlap-ready .result-work{position:relative;margin-top:100vh;margin-bottom:0}
  body.home-ambient.home-overlap-pinning .result-work{position:sticky;top:0;margin-top:0;margin-bottom:100vh}
  body.home-ambient.home-overlap-ready .hero-shell:has(+ .result-work:focus-within){z-index:auto}
  body.home-ambient.home-overlap-ready .result-work:focus-within{z-index:3}
}

/* Keep the sticky service tabs below the fixed header, including its logo. */
body.home-ambient .services-story{z-index:0}
/* An open navigation must sit above sticky homepage sections. */
body.home-ambient .hero-shell:has(.nav:is(.is-mega-open,.is-open)),
body.home-ambient.home-overlap-ready .hero-shell:has(.nav:is(.is-mega-open,.is-open)){z-index:50}

/* Match the header to the surface passing beneath it, keeping the hero dark. */
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .nav__row{background:#fff;color:#080d10}
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .brand img:not(.brand__icon){filter:invert(1)}
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .nav__links a,
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .nav__search,
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .nav__lang,
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .nav__lang a,
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .nav__lang [aria-current]{color:#080d10}
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .btn--nav{background:#080d10;color:#fff}
body.home-ambient .nav.is-on-light:not(.is-open):not(.is-mega-open) .nav__menu-toggle{background:#f0f0f0;color:#080d10}

/* Keep the desktop hero background separate so the fixed nav remains un-clipped. */
@media(min-width:993px){
 body.home-ambient .hero-shell{isolation:isolate;background:transparent}
 body.home-ambient .hero-shell::before{content:'';position:absolute;inset:0;z-index:-1;background:#080d10;border-radius:inherit}
}

/* Rounded collaboration footer with a continuous top edge. */
body.home-ambient footer.home-close{position:relative;isolation:isolate;overflow:visible;background:#fff;border-radius:0}
body.home-ambient footer.home-close::before{content:"";position:absolute;inset:0;z-index:-1;background:#080d10;border-radius:32px 32px 0 0}
@media(min-width:993px){
 body.home-ambient footer.home-close::before{border-radius:80px 80px 0 0}
}
@media(min-width:1181px){body.home-ambient footer.home-close::before{border-radius:clamp(65.6111px,5.5556vw,106.667px) clamp(65.6111px,5.5556vw,106.667px) 0 0}}

/* Progressive desktop collaboration CTA: staggered lettering and two arrows. */
.home-close__hero{position:relative}
.home-close__hitarea{position:absolute;inset:0;z-index:0}
.home-close__cta{position:relative;z-index:1}
.home-close__arrow{position:relative;display:block;overflow:hidden;width:clamp(70px,11vw,160px);height:clamp(70px,11vw,160px);flex:none}
.home-close__arrow .site-icon{position:absolute;inset:0;width:100%;height:100%;transition:none}
.home-close__cta.is-enhanced .home-close__arrow .site-icon{transition:transform .3s ease .5s}
.home-close__arrow .home-close__arrow-old{inset:auto;left:-10%;top:-10%;width:120%;height:120%}
.home-close__arrow .home-close__arrow-next{inset:auto;left:-50%;top:-50%;width:200%;height:200%;transform:translateY(75%)}
.home-close__cta.is-active .home-close__arrow-old{transform:translateY(-100%)}
.home-close__cta.is-active .home-close__arrow-next{transform:translateY(0)}
.home-close__pointer{position:fixed;left:0;top:0;z-index:9999;width:clamp(160px,14.7222vw,283px);height:clamp(139px,12.7778vw,246px);transform:translate(-50%,-50%);pointer-events:none;opacity:0;transition:opacity .2s ease}
.home-close__pointer.is-visible{opacity:1}
.home-close__pointer img{position:absolute;top:0;left:0;width:100%;height:84%;object-fit:cover;object-position:center;border-radius:12px;background:#1b2124}
.home-close__pointer-badge{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:clamp(42px,4.1667vw,80px);height:clamp(42px,4.1667vw,80px);display:grid;place-items:center;border-radius:8px;background:#dd3d06;color:#fff}
.home-close__pointer-badge .site-icon{width:20px;height:20px}
@media(min-width:993px){
 .home-close__cta.is-enhanced .home-close__cta-default,.home-close__cta.is-enhanced .home-close__cta-hover{display:block;opacity:1;transform:none;transition:none}
 .home-close__cta.is-enhanced .home-close__cta-hover{position:absolute;inset:0;pointer-events:none}
 .home-close__word{display:inline-flex;white-space:nowrap}
 .home-close__letter{display:inline-block;will-change:transform,opacity}
 .home-close__cta.is-enhanced .home-close__letter{transition:transform 380ms cubic-bezier(.33,0,.2,1),opacity 380ms ease;transition-delay:var(--letter-delay,0ms)}
 .home-close__cta.is-enhanced .home-close__cta-hover .home-close__letter{transform:translateY(60%);opacity:0}
 .home-close__cta.is-enhanced.is-active .home-close__cta-default .home-close__letter{transform:translateY(-60%);opacity:0}
 .home-close__cta.is-enhanced.is-active .home-close__cta-hover .home-close__letter{transform:translateY(0);opacity:1}
 .home-close__cta.is-enhanced:hover .home-close__cta-default,.home-close__cta.is-enhanced:focus-visible .home-close__cta-default,.home-close__cta.is-enhanced:hover .home-close__cta-hover,.home-close__cta.is-enhanced:focus-visible .home-close__cta-hover{opacity:1;transform:none}
}
@media(max-width:992px){.home-close__arrow{width:140px;height:140px}.home-close__arrow .home-close__arrow-old{display:none}.home-close__arrow .home-close__arrow-next{transform:none}}
@media(max-width:767px){.home-close__arrow{width:clamp(110px,35.9vw,140px);height:clamp(110px,35.9vw,140px)}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.home-close__hero.has-preview,.home-close__hero.has-preview .home-close__cta{cursor:none}}
@media(prefers-reduced-motion:reduce){.home-close__letter,.home-close__arrow .site-icon,.home-close__pointer{transition:none!important;transition-delay:0ms!important}.home-close__pointer{display:none!important}}

/* Give the animated phrases the full space beside the arrow on desktop. */
@media(min-width:993px){.home-close__cta-copy{width:auto;flex:1 1 auto}}
/* Social cards use the same responsive geometry as the shared footer. */
.home-close__socials{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;width:calc(25vw - 32px)}
.home-close__socials a{flex:0 0 60px;width:60px;height:60px;border-radius:8px;background:rgba(255,255,255,.08);color:#fff;transition:background-color .3s,color .3s}
.home-close__socials a:is(:hover,:focus-visible){background:#fff;color:#080d10}
.home-close__socials svg{width:15px;height:15px}
@media(min-width:993px){.home-close__content{grid-template-columns:1fr 1.31fr 1.64fr}}
@media(min-width:1181px){
 .home-close__content{gap:2.2222vw;padding-left:2.2222vw;padding-right:2.2222vw}
 .home-close__socials{width:22.5vw;gap:.55556vw}
 .home-close__socials a{flex-basis:4.16667vw;width:4.16667vw;height:4.16667vw;border-radius:.55556vw}
 .home-close__socials svg{width:1.04167vw;height:1.04167vw}
}
@media(max-width:992px){.home-close__socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.home-close__socials a{width:100%;height:60px}}
@media(prefers-reduced-motion:reduce){.home-close__socials a{transition:none}}
/* On smaller screens, the white section beneath the hero shows through its rounded corners. */
@media(max-width:992px){body.home-ambient{background:#fff}}

/* Keep the mobile contact arrow comfortably sized and light. */
@media(max-width:992px){
 .home-close__arrow,.home-close__cta>.site-icon{width:64px;height:64px}
 .home-close__arrow .home-close__arrow-next{left:0;top:0;width:100%;height:100%;stroke-width:1.25}
}

@media(min-width:993px){
 .home-close__arrow,.home-close__cta>.site-icon{width:clamp(64px,5.5556vw,96px);height:clamp(64px,5.5556vw,96px)}
 .home-close__arrow .home-close__arrow-old,.home-close__arrow .home-close__arrow-next{left:0;top:0;width:100%;height:100%;stroke-width:1.25}
 .home-close__arrow .home-close__arrow-next{transform:translateY(100%)}
 .home-close__cta.is-active .home-close__arrow-next{transform:translateY(0)}
}

/* Match the reference arrow area while keeping the arrow itself lighter. */
@media(max-width:1180px){.home-close__arrow,.home-close__cta>.site-icon{width:140px;height:140px}}
@media(min-width:1181px){.home-close__arrow,.home-close__cta>.site-icon{width:9.7222vw;height:9.7222vw}}
.home-close__arrow .home-close__arrow-old,.home-close__arrow .home-close__arrow-next{left:-25%;top:-25%;width:150%;height:150%;stroke-width:1.25}
@media(max-width:992px){.home-close__arrow .home-close__arrow-next{transform:none}}
@media(min-width:993px){.home-close__arrow .home-close__arrow-next{transform:translateY(83.333%)}.home-close__cta.is-active .home-close__arrow-next{transform:translateY(0)}}

@media(max-width:767px){.home-close__cta{gap:0}}


/* The homepages use the same enhanced footer as inner pages. */
/* Shared inner-page footer; original links remain visible without JavaScript. */
html body footer.ftr--reference, html.has-ambient body footer.ftr--reference { background:#080d10; color:#fff; }
.ftr--reference .ftr__inner { max-width:none; padding:0 32px 56px; }
.ftr--reference .ftr__label { padding-top:clamp(100px,13vw,200px); margin:0 0 24px; color:#aeb4b6; }
.ftr--reference .ftr__say--link { font-family:'Bricolage Menu',Arial,sans-serif; font-size:clamp(48px,9vw,150px); font-weight:440; letter-spacing:-.055em; line-height:1.02; }
.ftr--reference .ftr__words,.ftr--reference .ftr__end { background:none; color:#fff; -webkit-text-fill-color:currentColor; }
.ftr--reference .ftr__end { white-space:normal; }
.ftr--reference .ftr__rule { margin-top:clamp(48px,7vw,100px); }
.ftr-reference__content { display:grid; grid-template-columns:1fr 1fr 1.5fr; gap:32px; padding:100px 0; }
.ftr-reference__nav { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.ftr-reference__nav a { color:#fff; text-decoration:none; font:440 24px/1.2 'Bricolage Menu',Arial,sans-serif; letter-spacing:-.03em; }
.ftr-reference__nav a:hover,.ftr-reference__nav a:focus-visible { text-decoration:underline; text-underline-offset:5px; }
.ftr-reference__socials { display:grid; grid-template-columns:repeat(4,60px); gap:8px; align-content:start; }
.ftr-reference__socials .ftr__social { display:grid !important; place-items:center; width:60px; height:60px; border-radius:8px; background:#1b2124; color:#fff; font-size:0; transition:background .2s; }
.ftr-reference__socials .ftr__social:hover,.ftr-reference__socials .ftr__social:focus-visible { background:#dd3d06; }
.ftr-reference__socials .ftr__social-icon { background:none; color:#fff; }
.ftr-reference__contact { display:grid; align-content:start; gap:8px; }
.ftr--reference .ftr__reach { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0; padding:0; border:0; }
.ftr--reference .ftr__reach a { display:flex; align-items:end; min-width:0; min-height:100px; padding:18px 16px; border:1px solid #ffffff20; border-radius:8px; color:#fff; font:600 13px/1.4 'Bricolage Nav',Arial,sans-serif; overflow-wrap:anywhere; text-decoration:none; }
.ftr--reference .ftr__reach a:hover { background:#1b2124; }
.ftr--reference .ftr__meta-row { margin:0; padding:22px 16px; border:1px solid #ffffff20; border-radius:8px; }
.ftr--reference .ftr__meta-row .ftr__meta,.ftr--reference .ftr__status { font-size:13px; }
.ftr-reference__more { border-top:1px solid #ffffff20; }
.ftr-reference__more summary { display:flex; justify-content:space-between; align-items:center; padding:24px 0; cursor:pointer; list-style:none; color:#fff; font:600 13px/1.2 'Bricolage Nav',Arial,sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.ftr-reference__more summary::-webkit-details-marker { display:none; }
.ftr-reference__more summary span { font-size:24px; transition:transform .2s; }
.ftr-reference__more[open] summary span { transform:rotate(45deg); }
.ftr--reference .ftr__cols { padding:16px 0 40px; margin:0; border:0; }
.ftr--reference .ftr__base { padding-top:40px; border-top:1px solid #ffffff20; }
.ftr--reference a:focus-visible,.ftr--reference summary:focus-visible { outline:2px solid #dd3d06; outline-offset:4px; }
@media(max-width:992px) { .ftr-reference__content { grid-template-columns:1fr 1fr; gap:48px; padding:80px 0; } .ftr-reference__contact { grid-column:1/-1; } }
@media(max-width:767px) { .ftr--reference .ftr__inner { padding:0 12px 48px; } .ftr-reference__content { grid-template-columns:1fr; gap:40px; padding:60px 0; } .ftr-reference__contact { grid-column:auto; } .ftr-reference__socials { grid-template-columns:repeat(4,minmax(0,1fr)); } .ftr-reference__socials .ftr__social { width:100%; } .ftr--reference .ftr__reach { grid-template-columns:1fr; } .ftr--reference .ftr__say--link { font-size:clamp(42px,10vw,72px); } }
@media(prefers-reduced-motion:reduce) { .ftr-reference__more summary span,.ftr-reference__socials .ftr__social { transition:none; } }


/* Rounded collaboration footer with a continuous top edge. */
html body footer.ftr--reference, html.has-ambient body footer.ftr--reference{position:relative;isolation:isolate;overflow:visible;background:#fff;border-radius:0}
html body footer.ftr--reference::before{content:"";position:absolute;inset:0;z-index:-1;background:#080d10;border-radius:32px 32px 0 0}
@media(min-width:993px){
 html body footer.ftr--reference::before{border-radius:80px 80px 0 0}
}
@media(min-width:1181px){html body footer.ftr--reference::before{border-radius:clamp(65.6111px,5.5556vw,106.667px) clamp(65.6111px,5.5556vw,106.667px) 0 0}}
/* Footer social cards: dimensions, ordering and hover follow the reference. */
.ftr-reference__socials{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;width:calc(25vw - 32px)}
.ftr-reference__socials .ftr__social{flex:0 0 60px;width:60px;height:60px;border-radius:8px;background:rgba(255,255,255,.08);color:#fff;transition:background-color .3s,color .3s}
.ftr-reference__socials .ftr__social-icon{background:transparent;color:inherit}
.ftr-reference__socials .ftr__social-icon .site-icon{width:15px;height:15px}
.ftr-reference__socials .ftr__social:is(:hover,:focus-visible){background:#fff;color:#080d10}
.ftr-reference__socials .ftr__social:is(:hover,:focus-visible) .ftr__social-icon{background:transparent;color:inherit}
@media(min-width:993px){.ftr-reference__content{grid-template-columns:1fr 1.31fr 1.64fr}}
@media(min-width:1181px){
 .ftr--reference .ftr__inner{padding-left:2.2222vw;padding-right:2.2222vw}
 .ftr-reference__content{gap:2.2222vw}
 .ftr-reference__socials{width:22.5vw;gap:.55556vw}
 .ftr-reference__socials .ftr__social{flex-basis:4.16667vw;width:4.16667vw;height:4.16667vw;border-radius:.55556vw}
 .ftr-reference__socials .ftr__social-icon .site-icon{width:1.04167vw;height:1.04167vw}
}
@media(max-width:992px){
 .ftr--reference .ftr__inner{padding-left:12px;padding-right:12px}
 .ftr-reference__content{grid-template-columns:1fr;gap:48px}
 .ftr-reference__contact{grid-column:auto}
 .ftr-reference__socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
 .ftr-reference__socials .ftr__social{width:100%;height:60px}
}
@media(prefers-reduced-motion:reduce){.ftr-reference__socials .ftr__social{transition:none}}

/* Inner-page collaboration CTA, using the homepage interaction and LER imagery. */
footer.ftr--reference .home-close__hero{position:relative;margin:0 -12px;padding:100px 12px 48px;border-bottom:1px solid rgba(255,255,255,.08)}
footer.ftr--reference .home-close__hitarea{position:absolute;inset:0;z-index:0}
footer.ftr--reference .home-close__cta{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;text-decoration:none}
footer.ftr--reference .home-close__cta-copy{position:relative;display:block;min-width:0;font:440 53px/1.2 'Bricolage Menu',Arial,sans-serif;letter-spacing:-.01em}
footer.ftr--reference .home-close__cta-default,footer.ftr--reference .home-close__cta-hover{display:none}
footer.ftr--reference .home-close__cta-mobile{display:block}
footer.ftr--reference .home-close__cta>.site-icon{width:140px;height:140px;flex:none}
footer.ftr--reference .home-close__arrow{position:relative;display:block;overflow:hidden;width:140px;height:140px;flex:none}
footer.ftr--reference .home-close__arrow .site-icon{position:absolute;inset:0;width:100%;height:100%;transition:none}
footer.ftr--reference .home-close__arrow .home-close__arrow-old{display:none;inset:auto;left:-10%;top:-10%;width:120%;height:120%}
footer.ftr--reference .home-close__arrow .home-close__arrow-next{inset:auto;left:-50%;top:-50%;width:200%;height:200%;transform:none}
footer.ftr--reference .home-close__break{display:none}
body:not(.home-ambient) .home-close__pointer{position:fixed;left:0;top:0;z-index:9999;width:clamp(160px,14.7222vw,283px);height:clamp(139px,12.7778vw,246px);transform:translate(-50%,-50%);pointer-events:none;opacity:0;transition:opacity .2s ease}
body:not(.home-ambient) .home-close__pointer.is-visible{opacity:1}
body:not(.home-ambient) .home-close__pointer img{position:absolute;top:0;left:0;width:100%;height:84%;object-fit:cover;object-position:center;border-radius:12px;background:#1b2124}
body:not(.home-ambient) .home-close__pointer-badge{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:clamp(42px,4.1667vw,80px);height:clamp(42px,4.1667vw,80px);display:grid;place-items:center;border-radius:8px;background:#dd3d06;color:#fff}
body:not(.home-ambient) .home-close__pointer-badge .site-icon{width:20px;height:20px}
@media(max-width:767px){
 footer.ftr--reference .home-close__cta-copy{width:48%;max-width:210px}
 html[lang^="es"] footer.ftr--reference .home-close__cta-copy{width:auto;max-width:none;flex:1 1 0;font-size:clamp(30px,9vw,53px)}
}
@media(min-width:993px){
 footer.ftr--reference .home-close__hero{margin:0 -32px;padding:200px 24px 100px}
 footer.ftr--reference .home-close__cta-copy{width:auto;flex:1 1 auto}
 footer.ftr--reference .home-close__cta-mobile{display:none}
 footer.ftr--reference .home-close__cta.is-enhanced .home-close__cta-default,footer.ftr--reference .home-close__cta.is-enhanced .home-close__cta-hover{display:block;opacity:1;transform:none}
 footer.ftr--reference .home-close__cta.is-enhanced .home-close__cta-hover{position:absolute;inset:0;pointer-events:none}
 footer.ftr--reference .home-close__word{display:inline-flex;white-space:nowrap}
 footer.ftr--reference .home-close__letter{display:inline-block;will-change:transform,opacity}
 footer.ftr--reference .home-close__cta.is-enhanced .home-close__letter{transition:transform 380ms cubic-bezier(.33,0,.2,1),opacity 380ms ease;transition-delay:var(--letter-delay,0ms)}
 footer.ftr--reference .home-close__cta.is-enhanced .home-close__cta-hover .home-close__letter{transform:translateY(60%);opacity:0}
 footer.ftr--reference .home-close__cta.is-enhanced.is-active .home-close__cta-default .home-close__letter{transform:translateY(-60%);opacity:0}
 footer.ftr--reference .home-close__cta.is-enhanced.is-active .home-close__cta-hover .home-close__letter{transform:translateY(0);opacity:1}
 footer.ftr--reference .home-close__arrow .home-close__arrow-old{display:block}
 footer.ftr--reference .home-close__arrow .home-close__arrow-next{transform:translateY(75%)}
 footer.ftr--reference .home-close__cta.is-enhanced .home-close__arrow .site-icon{transition:transform .3s ease .5s}
 footer.ftr--reference .home-close__cta.is-active .home-close__arrow-old{transform:translateY(-100%)}
 footer.ftr--reference .home-close__cta.is-active .home-close__arrow-next{transform:translateY(0)}
}
@media(min-width:1181px){
 footer.ftr--reference .home-close__hero{margin:0 -2.2222vw;padding:13.8889vw 2.2222vw 6.9444vw}
 footer.ftr--reference .home-close__cta-copy{font-size:11.8056vw;line-height:1}
 footer.ftr--reference .home-close__arrow{width:9.7222vw;height:9.7222vw}
 footer.ftr--reference .home-close__break{display:block}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){footer.ftr--reference .home-close__hero.has-preview,footer.ftr--reference .home-close__hero.has-preview .home-close__cta{cursor:none}}
@media(prefers-reduced-motion:reduce){footer.ftr--reference .home-close__letter,footer.ftr--reference .home-close__arrow .site-icon,body:not(.home-ambient) .home-close__pointer{transition:none!important;transition-delay:0ms!important}body:not(.home-ambient) .home-close__pointer{display:none!important}}


/* Use the existing sprite in the no-script footer, and scale the mobile arrow. */
body:not(.home-ambient) footer.ftr:not(.ftr--reference) .ftr__say::after{content:none}
body:not(.home-ambient) footer.ftr:not(.ftr--reference) .ftr__say .ftr__end{display:block;background:none;color:#fff;-webkit-text-fill-color:currentColor;font-size:0;line-height:0;padding:0;margin:0}
body:not(.home-ambient) footer.ftr:not(.ftr--reference) .ftr__say .ftr__arrow{display:inline-flex;width:140px;height:140px;border:0;margin:0;background:none}
body:not(.home-ambient) footer.ftr:not(.ftr--reference) .ftr__say .ftr__arrow .site-icon{width:100%;height:100%}
@media(max-width:992px){
 footer.ftr--reference .home-close__arrow,footer.ftr--reference .home-close__cta>.site-icon{width:64px;height:64px}
 footer.ftr--reference .home-close__arrow .home-close__arrow-next{left:0;top:0;width:100%;height:100%;stroke-width:1.25}
 body:not(.home-ambient) footer.ftr:not(.ftr--reference) .ftr__say .ftr__arrow{width:64px;height:64px}
}

@media(min-width:993px){
 footer.ftr--reference .home-close__arrow,footer.ftr--reference .home-close__cta>.site-icon{width:clamp(64px,5.5556vw,96px);height:clamp(64px,5.5556vw,96px)}
 footer.ftr--reference .home-close__arrow .home-close__arrow-old,footer.ftr--reference .home-close__arrow .home-close__arrow-next{left:0;top:0;width:100%;height:100%;stroke-width:1.25}
 footer.ftr--reference .home-close__arrow .home-close__arrow-next{transform:translateY(100%)}
 footer.ftr--reference .home-close__cta.is-active .home-close__arrow-next{transform:translateY(0)}
 body:not(.home-ambient) footer.ftr:not(.ftr--reference) .ftr__say .ftr__arrow{width:clamp(64px,5.5556vw,96px);height:clamp(64px,5.5556vw,96px)}
}

/* Match the reference footer arrow area without the oversized mobile graphic. */
@media(max-width:1180px){footer.ftr--reference .home-close__arrow,footer.ftr--reference .home-close__cta>.site-icon,body:not(.home-ambient) footer.ftr:not(.ftr--reference) .ftr__say .ftr__arrow{width:140px;height:140px}}
@media(min-width:1181px){footer.ftr--reference .home-close__arrow,footer.ftr--reference .home-close__cta>.site-icon,body:not(.home-ambient) footer.ftr:not(.ftr--reference) .ftr__say .ftr__arrow{width:9.7222vw;height:9.7222vw}}
footer.ftr--reference .home-close__arrow .home-close__arrow-old,footer.ftr--reference .home-close__arrow .home-close__arrow-next{left:-25%;top:-25%;width:150%;height:150%;stroke-width:1.25}
@media(max-width:992px){footer.ftr--reference .home-close__arrow .home-close__arrow-next{transform:none}}
@media(min-width:993px){footer.ftr--reference .home-close__arrow .home-close__arrow-next{transform:translateY(83.333%)}footer.ftr--reference .home-close__cta.is-active .home-close__arrow-next{transform:translateY(0)}}

@media(max-width:767px){footer.ftr--reference .home-close__cta{gap:0}}
/* Keep inherited footer text identical to the inner-page footer. */
body.home-ambient footer.ftr--reference{font-family:Matter,system-ui,sans-serif}
