/* One visual scale for company marks; one automatic opening sequence. */
.developer-experience .developer-grid,.developer-experience .developer-grid-compact{
  grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch;
}
.developer-experience .developer-card{
  display:flex;flex-direction:column;gap:0;padding:24px;border-radius:24px;
  background:var(--adaptive-surface,#f5f2eb);border:0;min-width:0;height:auto;
}
.developer-experience .developer-card>.developer-logo,.developer-experience #developer-inteco>.developer-logo{
  display:flex;align-items:center;justify-content:center;height:120px;min-height:120px;
  width:100%;padding:20px;margin:0 0 24px;background:#fff;border-radius:16px;overflow:hidden;
}
.developer-logo-art{display:block;flex:none;position:relative;overflow:hidden;width:var(--mark-width);height:var(--mark-height)}
.developer-experience .developer-logo-art>img,.developer-experience #developer-inteco .developer-logo-art>img,.promo-showcase .promo-developer-logos .developer-logo-art>img{
  position:absolute;display:block;width:var(--source-width);height:var(--source-height);
  left:var(--source-left);top:var(--source-top);max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;background:transparent!important;border-radius:0;object-fit:fill;
}
.developer-experience .developer-project-list{margin:0}
.developer-experience .developer-project-list li{margin:0 0 10px}
.developer-experience .developer-project-list a{display:block;font-size:16px;line-height:1.6;padding:4px 0;overflow-wrap:anywhere}
.developer-experience .developer-project-more{margin:4px 0 0}
.developer-experience .developer-project-more summary{font-size:14px;line-height:1.55;min-height:36px}
.developer-experience .developer-grid-compact{padding-top:28px}
.developer-experience .content-disclosure{margin-top:28px}
.promo-showcase .promo-developer-logos a{height:120px;min-height:120px;padding:20px;background:#fff;border-radius:18px}
.promo-showcase .proof-grid h3{margin-top:28px}
.promo-showcase .experience-directory{margin:30px 0 0}
.promo-showcase .regional-teaser{
  width:calc(100% - 2 * var(--page-gutter));max-width:1180px;margin:20px auto 88px;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:48px;
  padding:44px 48px;border-radius:28px;background:var(--adaptive-surface,#ffffff66);
}
.promo-showcase .regional-teaser h2{font-size:clamp(28px,2.8vw,36px);line-height:1.2;max-width:15ch;letter-spacing:-.02em}
.promo-showcase .regional-teaser-copy>p{font-size:17px;line-height:1.7;margin:0 0 16px;max-width:48ch}
.promo-showcase .regional-teaser-copy .conversion-link{font-size:15px;line-height:1.6;padding:6px 0}
.promo-showcase .hero-scenes{position:relative;isolation:isolate;background:#0b1b2e;box-shadow:none}
.promo-showcase .is-carousel-ready .hero-scene{transition:opacity 1.8s cubic-bezier(.4,0,.2,1),visibility 0s}
.promo-showcase .is-carousel-ready .hero-scene[hidden]{transition:opacity 1.8s cubic-bezier(.4,0,.2,1),visibility 0s 1.8s}
/* Keep the outgoing photograph opaque below the new one: no dark dip mid-dissolve. */
.promo-showcase .is-carousel-ready .hero-scene.is-leaving[hidden]{opacity:1;visibility:hidden;transition:visibility 0s 1.8s;z-index:0}
.promo-showcase .hero-scene figcaption{opacity:1;transition:opacity .45s ease}
.promo-showcase .hero-scene.is-leaving figcaption{opacity:0}
.promo-showcase .hero-scene.is-active>img,.promo-showcase .hero-scene.is-leaving>img{animation:hero-film-drift 9s linear both}
.promo-showcase .hero-scene.is-leaving>img{animation-play-state:running}
@keyframes hero-film-drift{from{transform:scale(1.015)}to{transform:scale(1.055)}}
.promo-showcase .hero-scene figcaption{
  display:flex;flex-direction:column;align-items:flex-start;gap:9px;
  left:clamp(28px,4vw,56px);right:100px;bottom:clamp(28px,3vw,44px);text-align:left;
}
.promo-showcase .hero-scene figcaption>.hero-project-context{font-size:13px;line-height:1.5;font-weight:400;letter-spacing:.01em;margin:0}
.promo-showcase .hero-scene figcaption>.hero-project-name{font-size:clamp(29px,3vw,45px);line-height:1.18;letter-spacing:-.02em;max-width:none;text-align:left;color:#fff;text-decoration:none;font-weight:500}
.promo-showcase .hero-project-credit{font-size:13px;line-height:1.5;color:#fff}
.promo-showcase .hero-film-pause{
  position:absolute;right:28px;bottom:28px;z-index:3;width:44px;height:44px;display:flex;align-items:center;justify-content:center;
  border:1px solid #ffffff80;border-radius:50%;background:#0b1b2e80;backdrop-filter:blur(12px);color:#fff;font-size:18px;
}
.promo-showcase .hero-film-pause[hidden]{display:none}
.promo-showcase .hero-film-note{width:calc(100% - 40px);max-width:1000px;margin:20px auto 0;font-size:14px;line-height:1.65;text-align:center;color:var(--adaptive-muted,#2b2b2b)}
.promo-showcase .hero-film-note a{display:inline-block;margin-left:12px;text-underline-offset:4px;color:inherit}
@media(max-width:1050px){.developer-experience .developer-grid,.developer-experience .developer-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:760px){
  .promo-showcase .regional-teaser{grid-template-columns:1fr;padding:28px;gap:20px;margin-block:12px 60px}
  .promo-showcase .regional-teaser h2{max-width:18ch}
  .promo-showcase .regional-teaser-copy>p{font-size:16px}
  .promo-showcase .hero-scene figcaption{left:24px;right:80px;bottom:28px;gap:8px}
  .promo-showcase .hero-scene figcaption>.hero-project-name{font-size:30px;letter-spacing:normal}
  .promo-showcase .hero-film-pause{right:20px;bottom:28px}
  .promo-showcase .hero-film-note{font-size:13px;max-width:40ch}
  .promo-showcase .hero-film-note a{margin:6px 0 0}
  .promo-showcase .proof-grid h3{margin-top:0}
}
@media(max-width:580px){
  .developer-experience .developer-grid,.developer-experience .developer-grid-compact{grid-template-columns:1fr;gap:20px}
  .developer-experience .developer-card{padding:22px}
  .developer-experience .developer-card>.developer-logo{margin-bottom:18px;height:112px;min-height:112px}
  .promo-showcase .promo-developer-logos{grid-template-columns:1fr 1fr;gap:12px}
  .promo-showcase .promo-developer-logos a{padding:10px;height:110px;min-height:110px}
  .promo-showcase .promo-developer-logos .developer-logo-art{transform:scale(.72)}
}
@media screen and (prefers-color-scheme:dark){
  .developer-experience .developer-card{color:#f5f2eb}
  .developer-experience .developer-card a{color:#f5f2eb}
}
@media(prefers-reduced-motion:reduce){
  .promo-showcase .is-carousel-ready .hero-scene,.promo-showcase .is-carousel-ready .hero-scene[hidden],.promo-showcase .is-carousel-ready .hero-scene.is-leaving[hidden],.promo-showcase .hero-scene figcaption{transition:none}
  .promo-showcase .hero-scene.is-active>img,.promo-showcase .hero-scene.is-leaving>img{animation:none;transform:none}
}
