
/* v66 — luxury wow effects for main banner */
@keyframes heroSoftFloat {
  0%,100% { transform: translate3d(0,0,0); }
  50% { transform: translate3d(0,-8px,0); }
}
@keyframes heroGlowPulse {
  0%,100% { opacity: .56; transform: scale(1); }
  50% { opacity: .92; transform: scale(1.06); }
}
@keyframes heroMediaDrift {
  0% { transform: scale(1.04) translate3d(0,0,0); }
  50% { transform: scale(1.08) translate3d(-1.2%, 0, 0); }
  100% { transform: scale(1.04) translate3d(0,0,0); }
}
@keyframes heroShineSweep {
  0% { transform: translateX(-140%) skewX(-24deg); opacity: 0; }
  12% { opacity: .88; }
  34% { transform: translateX(200%) skewX(-24deg); opacity: 0; }
  100% { transform: translateX(200%) skewX(-24deg); opacity: 0; }
}
@keyframes heroLineSlide {
  0%,100% { transform: scaleX(.82); opacity: .3; }
  50% { transform: scaleX(1.04); opacity: .8; }
}
@keyframes heroFadeUp {
  from { opacity: 0; transform: translate3d(0,28px,0); }
  to { opacity: 1; transform: translate3d(0,0,0); }
}

.hero-atelier-stage{
  isolation:isolate;
  perspective: 1600px;
}
.hero-atelier-stage::before,
.hero-atelier-stage::after{
  content:"";
  position:absolute;
  z-index:-1;
  border-radius:50%;
  filter: blur(40px);
  pointer-events:none;
}
.hero-atelier-stage::before{
  width:420px;
  height:420px;
  left:18%;
  top:8%;
  background:radial-gradient(circle, rgba(215,189,154,.18) 0%, rgba(215,189,154,0) 72%);
  animation:heroGlowPulse 8s ease-in-out infinite;
}
.hero-atelier-stage::after{
  width:360px;
  height:360px;
  right:10%;
  bottom:12%;
  background:radial-gradient(circle, rgba(73,47,28,.12) 0%, rgba(73,47,28,0) 72%);
  animation:heroGlowPulse 10s ease-in-out infinite reverse;
}

.hero-atelier-copy,
.hero-atelier-visual,
.hero-atelier-aside{
  animation: heroFadeUp .9s cubic-bezier(.2,.8,.2,1) both;
}
.hero-atelier-visual{ animation-delay: .08s; }
.hero-atelier-aside{ animation-delay: .16s; }

.hero-atelier-copy{
  transform-style: preserve-3d;
}
.hero-atelier-copy::before{
  animation: heroSoftFloat 7s ease-in-out infinite;
}
.hero-atelier-copy::after{
  background:
    linear-gradient(145deg, rgba(255,255,255,.88), rgba(255,255,255,.10) 46%),
    radial-gradient(circle at 10% 12%, rgba(255,255,255,.72), rgba(255,255,255,0) 20%);
}
.hero-atelier-copy h1,
.hero-atelier-copy p,
.hero-atelier-copy-bottom,
.hero-atelier-eyebrow{
  position:relative;
  z-index:2;
}
.hero-atelier-copy h1{
  text-shadow: 0 1px 0 rgba(255,255,255,.7);
}
.hero-atelier-copy p{
  max-width: 33rem;
}
.hero-atelier-copy-footer{
  position:relative;
}
.hero-atelier-copy-footer::before{
  content:"";
  position:absolute;
  left:0;
  top:-1px;
  width:100%;
  height:1px;
  transform-origin:left center;
  background:linear-gradient(90deg, rgba(130,99,67,.62), rgba(130,99,67,.08));
  animation:heroLineSlide 6s ease-in-out infinite;
}

.hero-atelier-primary,
.hero-atelier-secondary,
.hero-atelier-tail,
.hero-atelier-spec-card,
.hero-atelier-note{
  position:relative;
  overflow:hidden;
}
.hero-atelier-primary::before,
.hero-atelier-secondary::before,
.hero-atelier-tail::before{
  content:"";
  position:absolute;
  top:-20%;
  left:-30%;
  width:40%;
  height:140%;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.38), rgba(255,255,255,0));
  transform:translateX(-140%) skewX(-24deg);
}
.hero-atelier-primary::before{ animation: heroShineSweep 7.2s ease-in-out infinite; }
.hero-atelier-secondary::before{ animation: heroShineSweep 8.6s ease-in-out infinite 1.8s; }
.hero-atelier-tail::before{ animation: heroShineSweep 9.2s ease-in-out infinite 1.1s; }

.hero-atelier-primary{
  background:linear-gradient(135deg,#17110d 0%, #271c14 48%, #100c09 100%);
  box-shadow:0 18px 34px rgba(20,13,9,.18), inset 0 1px 0 rgba(255,255,255,.08);
}
.hero-atelier-secondary{
  backdrop-filter: blur(16px);
}
.hero-atelier-primary:hover,
.hero-atelier-secondary:hover,
.hero-atelier-tail:hover{
  box-shadow:0 20px 36px rgba(36,22,12,.15);
}

.hero-atelier-visual{
  transform-style:preserve-3d;
}
.hero-atelier-media{
  animation: heroMediaDrift 18s ease-in-out infinite;
}
.hero-atelier-visual::after{
  content:"";
  position:absolute;
  inset:-15% auto -15% -35%;
  width:42%;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.18), rgba(255,255,255,0));
  transform:skewX(-22deg);
  filter: blur(4px);
  opacity:.6;
  animation: heroShineSweep 12s ease-in-out infinite 2s;
}
.hero-atelier-visual-overlay{
  background:
    linear-gradient(180deg, rgba(13,9,7,.12) 0%, rgba(13,9,7,.40) 56%, rgba(13,9,7,.72) 100%),
    radial-gradient(circle at 78% 16%, rgba(248,233,210,.22), rgba(248,233,210,0) 30%),
    radial-gradient(circle at 16% 68%, rgba(253,246,237,.10), rgba(253,246,237,0) 24%),
    linear-gradient(90deg, rgba(18,13,10,.48) 0%, rgba(18,13,10,.14) 38%, rgba(18,13,10,0) 65%);
}
.hero-atelier-visual-frame{
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.06), 0 0 0 1px rgba(255,255,255,.05);
}
.hero-atelier-visual-label,
.hero-atelier-visual-footer span{
  box-shadow: 0 12px 26px rgba(23,14,10,.16), inset 0 1px 0 rgba(255,255,255,.12);
}
.hero-atelier-visual-label{
  animation: heroSoftFloat 7s ease-in-out infinite 1s;
}

.hero-atelier-note{
  background:
    radial-gradient(circle at top right, rgba(208,164,106,.16), rgba(208,164,106,0) 30%),
    linear-gradient(180deg,#201813 0%, #15100d 100%);
  box-shadow:0 22px 56px rgba(38,26,17,.14), inset 0 1px 0 rgba(255,255,255,.04);
}
.hero-atelier-note::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(145deg, rgba(255,255,255,.04), rgba(255,255,255,0) 40%);
  pointer-events:none;
}
.hero-atelier-spec-grid{
  position:relative;
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.46), rgba(255,255,255,0) 24%),
    linear-gradient(180deg,#f8f3ec 0%, #eee4d7 100%);
}
.hero-atelier-spec-card{
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  box-shadow:0 10px 24px rgba(41,28,17,.05), inset 0 1px 0 rgba(255,255,255,.56);
}
.hero-atelier-spec-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 28px rgba(41,28,17,.10);
  border-color:rgba(121,92,63,.18);
}
.hero-atelier-tail{
  background:
    linear-gradient(180deg,#fffdf8 0%, #f3eadf 100%),
    radial-gradient(circle at top left, rgba(255,255,255,.46), rgba(255,255,255,0) 24%);
}

@media (prefers-reduced-motion: reduce){
  .hero-atelier-stage::before,
  .hero-atelier-stage::after,
  .hero-atelier-copy,
  .hero-atelier-visual,
  .hero-atelier-aside,
  .hero-atelier-copy::before,
  .hero-atelier-primary::before,
  .hero-atelier-secondary::before,
  .hero-atelier-tail::before,
  .hero-atelier-visual::after,
  .hero-atelier-media,
  .hero-atelier-visual-label,
  .hero-atelier-copy-footer::before {
    animation:none !important;
  }
}

@media (max-width: 980px){
  .hero-atelier-stage::before{
    width:260px; height:260px; left:0; top:16%;
  }
  .hero-atelier-stage::after{
    width:220px; height:220px; right:0; bottom:0;
  }
  .hero-atelier-copy,
  .hero-atelier-visual,
  .hero-atelier-note,
  .hero-atelier-spec-grid,
  .hero-atelier-tail{
    box-shadow:0 18px 44px rgba(34,22,12,.11);
  }
}
