/* Responsive asset reactions for a more tactile desktop experience. */
.atelier-home .manifesto-badge,
.js-motion .atelier-home .manifesto-badge.visible{
  transform:rotate(13deg);
}

@media (hover:hover) and (pointer:fine){
  .atelier-home section img,
  .atelier-home .atelier-service-art{
    transition:translate .5s cubic-bezier(.22,.8,.2,1),scale .5s cubic-bezier(.22,.8,.2,1),rotate .5s cubic-bezier(.22,.8,.2,1),filter .5s ease;
    will-change:translate,scale,rotate;
  }
  .atelier-home section img:hover{
    translate:0 -7px;
    scale:1.025;
  }
  .atelier-home .hero-endorsement{pointer-events:auto;}
  .atelier-home .hero-endorsement img:hover{
    translate:-5px -9px;
    rotate:-2deg;
    scale:1.045;
  }
  .atelier-home .manifesto-badge,
  .atelier-home .atelier-stone{
    pointer-events:auto;
  }
  .atelier-home .manifesto-badge:hover{
    translate:8px -10px;
    rotate:4deg;
    scale:1.055;
  }
  .atelier-home .atelier-stone:hover{
    translate:-6px -9px;
    rotate:-3deg;
    scale:1.045;
  }
  .atelier-home .service:hover .atelier-service-art{
    translate:0 -5px;
    scale:1.025;
  }
  .atelier-home .atelier-method-image:hover{
    translate:6px -8px;
    rotate:1deg;
    scale:1.02;
  }
  .atelier-home .founder-portrait:hover{
    translate:0 -8px;
    scale:1.018;
  }
  .atelier-home .founder-sticker:hover{
    translate:7px -9px;
    rotate:4deg;
    scale:1.06;
  }
  .atelier-home .contact-art img:hover{
    translate:-8px -8px;
    rotate:-1deg;
    scale:1.03;
  }
}

@media (prefers-reduced-motion:reduce){
  .atelier-home section img,
  .atelier-home .atelier-service-art{
    transition:none!important;
    translate:none!important;
    scale:none!important;
    rotate:none!important;
  }
}

/* Desktop hero: keep the complete scene above the ribbon. */
@media (min-width:1101px){
  .atelier-home .hero{
    background:var(--paper);
  }
  .atelier-home .hero-stage{
    height:clamp(700px,56.25vw,1080px);
    background:#f3f1eb url('assets/atelier/hero-background-v5.webp') center top/100% auto no-repeat;
  }
  .atelier-home .hero-grid{
    height:100%;
    min-height:0;
  }
  .atelier-home .ribbon-shell{
    margin-top:-30px;
    padding-top:0;
    padding-bottom:18px;
    background:linear-gradient(to bottom,transparent 0 48%,var(--paper) 48% 100%);
  }
}

/* Method artwork is split into independent physical objects. */
.atelier-home .method-art{
  position:relative;
  aspect-ratio:3/2;
  overflow:visible;
}
.atelier-home .atelier-method-layer{
  position:absolute;
  inset:0 auto auto 0;
  width:115%;
  max-width:115%;
  height:auto;
  margin-left:-10%;
  pointer-events:none;
  will-change:transform,opacity,filter;
}
.atelier-home .method-kadu-layer{z-index:1;}
.atelier-home .method-lettering-layer{z-index:2;}
.js-motion .atelier-home .method-kadu-layer.reveal{
  transform:translate3d(-16px,24px,0) scale(.975);
  transition:opacity .7s ease,transform .95s cubic-bezier(.18,.82,.2,1);
}
.js-motion .atelier-home .method-lettering-layer.reveal{
  transform:translate3d(0,-68px,0) scale(.965);
  filter:blur(2px);
  transition:opacity .72s ease .22s,transform 1.05s cubic-bezier(.16,.85,.22,1) .22s,filter .8s ease .22s;
}
.js-motion .atelier-home .method-kadu-layer.reveal.visible,
.js-motion .atelier-home .method-lettering-layer.reveal.visible{
  transform:translate3d(0,0,0) scale(1);
  filter:none;
}
@media(max-width:600px){
  .atelier-home .atelier-method-layer{
    width:110%;
    max-width:110%;
    margin-left:-5%;
  }
  .js-motion .atelier-home .method-lettering-layer.reveal{
    transform:translate3d(0,-44px,0) scale(.975);
  }
}
@media(prefers-reduced-motion:reduce){
  .atelier-home .method-art,
  .atelier-home .atelier-method-layer{
    transform:none!important;
    filter:none!important;
  }
}
