:root {
  --ink: #171915;
  --paper: #f1efe8;
  --moss: #294137;
  --acid: #d8ed67;
  --line-light: rgba(255,255,255,.38);
  --serif: "Iowan Old Style", "Palatino Linotype", Palatino, Baskerville, Georgia, serif;
  --sans: Inter, "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }
html, body { width: 100%; min-height: 100%; background: var(--ink); }
body { margin: 0; color: var(--paper); font-family: var(--sans); overflow: hidden; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
::selection { color: var(--ink); background: var(--acid); }

.skip-link { position: fixed; top: 1rem; left: 1rem; z-index: 100; padding: .75rem 1rem; color: var(--ink); background: var(--acid); transform: translateY(-160%); }
.skip-link:focus { transform: none; }
.eyebrow { margin: 0; font-size: .64rem; line-height: 1.4; text-transform: uppercase; letter-spacing: .17em; font-weight: 700; }

.topbar { position: fixed; z-index: 30; top: 0; left: 0; width: 100%; height: 76px; padding: 18px 28px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; color: #fff; }
.brand { display: inline-flex; width: max-content; align-items: center; gap: .7rem; font-size: .8rem; font-weight: 700; letter-spacing: .18em; }
.brand img { width: 30px; filter: brightness(0) invert(1); }
.topbar-note { margin: 0; font-size: .62rem; letter-spacing: .14em; text-transform: uppercase; }
.site-menu { justify-self: end; display: flex; gap: .5rem; align-items: center; }
.plain-button { appearance: none; min-height: 42px; display: inline-flex; align-items: center; gap: 1.3rem; padding: .72rem .9rem; border: 1px solid rgba(255,255,255,.72); border-radius: 99px; background: rgba(12,14,12,.38); box-shadow: 0 8px 28px rgba(0,0,0,.14); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); cursor: pointer; font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; transition: color .25s ease, background .25s ease, border-color .25s ease, transform .25s ease; }
.direction-icon { width: 18px; height: 18px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.45; stroke-linecap: square; stroke-linejoin: miter; transition: transform .25s ease; }
.plain-button:hover .direction-icon, .plain-button:focus-visible .direction-icon { transform: translate(2px,-2px); }
.plain-button:hover, .plain-button:focus-visible { color: var(--ink); border-color: var(--acid); background: var(--acid); transform: translateY(-2px); outline: none; }
.menu-brief { color: var(--ink); border-color: var(--acid); background: var(--acid); }
.menu-brief:hover, .menu-brief:focus-visible { background: #e8f78d; }

.spatial-archive { position: relative; width: 100%; height: 100svh; min-height: 560px; overflow: hidden; isolation: isolate; touch-action: pan-y; user-select: none; }
.project-deck { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; overflow: hidden; }
.project-slide { position: absolute; inset: 0; width: 100%; height: 100%; overflow: hidden; opacity: 0; visibility: hidden; pointer-events: none; transform: translate3d(3.25%,0,0) scale(1.008); transition: opacity .56s ease, transform .86s cubic-bezier(.22,.72,.16,1), visibility 0s .86s; will-change: opacity, transform; }
.project-slide.is-before { transform: translate3d(-3.25%,0,0) scale(1.008); }
.project-slide.is-current { z-index: 2; opacity: 1; visibility: visible; pointer-events: auto; transform: translate3d(0,0,0) scale(1); transition-delay: 0s; }
.project-slide[hidden] { display: none; }
.project-open { appearance: none; position: relative; display: block; width: 100%; height: 100%; padding: 0; border: 0; background: #30342e; cursor: zoom-in; overflow: hidden; text-align: left; }
.project-open > img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.018); transition: transform 1.05s cubic-bezier(.22,.72,.16,1), filter .45s ease; backface-visibility: hidden; }
.project-slide.is-current .project-open > img { transform: scale(1); }
.project-open:hover > img { filter: saturate(.82); }
.image-shade { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(4,7,5,.38),transparent 35%,rgba(4,7,5,.73) 100%), linear-gradient(90deg,rgba(4,7,5,.48),transparent 52%); pointer-events: none; }
.project-number { position: absolute; top: 16%; right: clamp(1.2rem,4vw,4rem); writing-mode: vertical-rl; font-size: .6rem; letter-spacing: .16em; }
.project-title { position: absolute; left: clamp(1.2rem,4vw,4rem); right: clamp(1.2rem,4vw,4rem); bottom: clamp(7.6rem,15vh,10rem); display: flex; align-items: baseline; gap: 1.3rem; opacity: 0; transform: translateY(30px); transition: opacity .55s .32s, transform .7s .3s; }
.project-slide.is-current .project-title { opacity: 1; transform: none; }
.project-title b { font-family: var(--serif); font-size: clamp(3.5rem,8vw,8.5rem); line-height: .78; font-weight: 400; letter-spacing: -.055em; }
.project-title small { font-size: .63rem; text-transform: uppercase; letter-spacing: .13em; }
.project-action { position: absolute; right: clamp(1.2rem,4vw,4rem); bottom: clamp(7.8rem,15vh,10.2rem); display: flex; gap: 3rem; align-items: center; padding: .8rem 0; border-bottom: 1px solid rgba(255,255,255,.6); font-size: .63rem; text-transform: uppercase; letter-spacing: .13em; }

.archive-manifesto { position: absolute; z-index: 3; top: 18%; left: clamp(1.2rem,4vw,4rem); width: min(40rem,46vw); pointer-events: none; transition: opacity .5s, transform .6s; }
.archive-manifesto.is-muted { opacity: 0; transform: translateY(-16px); }
.archive-manifesto h1 { margin: 1.2rem 0 1.5rem; font-family: var(--serif); font-size: clamp(4.4rem,8.4vw,9rem); line-height: .78; font-weight: 400; letter-spacing: -.065em; }
.archive-manifesto h1 span { display: block; }
.archive-manifesto h1 span:last-child { padding-left: clamp(1rem,8vw,8rem); white-space: nowrap; }
.archive-manifesto > p:last-child { width: min(100%,31rem); margin: 0; font-size: clamp(.86rem,1.15vw,1.05rem); line-height: 1.55; }

.archive-controls { position: absolute; z-index: 5; left: clamp(1.2rem,4vw,4rem); right: clamp(1.2rem,4vw,4rem); bottom: 1.5rem; min-height: 58px; display: grid; grid-template-columns: minmax(190px,24vw) auto; justify-content: space-between; align-items: center; gap: 1.5rem; border-top: 1px solid var(--line-light); }
.rail-status { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .9rem; font-size: .62rem; letter-spacing: .13em; }
.rail-status i { height: 1px; background: rgba(255,255,255,.28); }
.rail-status i b { display: block; width: var(--progress,33.333%); height: 100%; background: var(--acid); transition: width .6s ease; }
.rail-buttons { justify-self: end; display: flex; }
.rail-buttons button { appearance: none; width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.55); background: rgba(0,0,0,.08); cursor: pointer; font-size: 1rem; transition: background .25s,color .25s; }
.rail-buttons button + button { border-left: 0; }
.rail-buttons button:hover { color: var(--ink); background: var(--acid); }
.interaction-note { position: absolute; z-index: 4; right: clamp(1.2rem,4vw,4rem); top: 19%; margin: 0; font-size: .58rem; letter-spacing: .13em; text-transform: uppercase; writing-mode: vertical-rl; }
.interaction-note i { display: inline-block; margin-top: .6rem; color: var(--acid); font-style: normal; animation: nudge-y 1.8s infinite ease-in-out; }
.mobile-note { display: none; }

dialog { margin: 0; max-width: none; max-height: none; width: 100%; height: 100%; border: 0; padding: 0; color: var(--ink); background: var(--paper); user-select: text; }
dialog::backdrop { background: rgba(12,13,11,.6); backdrop-filter: blur(8px); }
dialog[open] { animation: dialog-in .55s cubic-bezier(.2,.75,.2,1); }
.dialog-close { position: fixed; z-index: 10; top: 1.2rem; right: 1.4rem; border: 1px solid currentColor; border-radius: 99px; padding: .7rem .9rem; color: inherit; background: rgba(241,239,232,.88); cursor: pointer; font-size: .66rem; text-transform: uppercase; letter-spacing: .1em; }
.project-dialog, .studio-dialog { grid-template-columns: 1.45fr 1fr; }
.project-dialog[open], .studio-dialog[open] { display: grid; }
.dialog-image, .material-figure { min-height: 100svh; margin: 0; position: relative; overflow: hidden; }
.dialog-image img, .material-figure img { width: 100%; height: 100%; object-fit: cover; }
.material-figure figcaption { position: absolute; left: 1.3rem; bottom: 1.3rem; padding: .55rem .7rem; color: var(--ink); background: var(--paper); font-size: .58rem; text-transform: uppercase; letter-spacing: .12em; }
.dialog-copy, .studio-copy { padding: clamp(5rem,8vw,8rem) clamp(2rem,5vw,6rem); display: flex; flex-direction: column; justify-content: center; }
.dialog-copy h2, .studio-copy h2, .brief-step h2 { margin: 1.5rem 0 2rem; font-family: var(--serif); font-size: clamp(3.4rem,5.8vw,6.4rem); line-height: .88; font-weight: 400; letter-spacing: -.05em; }
.dialog-description, .studio-copy > p:not(.eyebrow) { max-width: 37rem; line-height: 1.65; color: rgba(23,25,21,.7); }
.dialog-copy dl { margin: 3rem 0 0; }
.dialog-copy dl div { display: grid; grid-template-columns: 1fr 1fr; padding: .85rem 0; border-top: 1px solid rgba(23,25,21,.24); font-size: .68rem; text-transform: uppercase; letter-spacing: .1em; }
.dialog-copy dd { margin: 0; }
.studio-copy ol { list-style: none; margin: 2.5rem 0 0; padding: 0; border-top: 1px solid rgba(23,25,21,.24); }
.studio-copy li { display: grid; grid-template-columns: 2.8rem 1fr 1.5fr; align-items: baseline; gap: 1rem; padding: .9rem 0; border-bottom: 1px solid rgba(23,25,21,.24); }
.studio-copy li span, .studio-copy li small { font-size: .61rem; text-transform: uppercase; letter-spacing: .1em; opacity: .6; }
.studio-copy li b { font-family: var(--serif); font-size: 1.25rem; font-weight: 400; }
.studio-brief { appearance: none; display: flex; justify-content: space-between; width: 100%; margin-top: 2.4rem; padding: 1rem 0; border: 0; border-bottom: 2px solid var(--ink); background: none; cursor: pointer; text-align: left; font-family: var(--serif); font-size: clamp(1.5rem,2.2vw,2.2rem); }

.brief-dialog { background: var(--moss); color: var(--paper); }
.brief-close { background: var(--moss); }
.brief-form { width: min(100% - 3rem,980px); min-height: 100svh; margin: 0 auto; padding: 2rem 0 3rem; display: grid; grid-template-rows: auto auto 1fr auto; }
.brief-head { display: flex; justify-content: space-between; align-items: center; }
.brief-head img { filter: brightness(0) invert(1); }
.brief-head p { margin: 0; font-family: var(--serif); font-size: 1.3rem; }
.brief-progress { height: 1px; margin-top: 1.5rem; background: rgba(255,255,255,.2); }
.brief-progress i { display: block; width: 33.333%; height: 100%; background: var(--acid); transition: width .5s; }
.brief-step { display: none; align-self: center; padding: 4rem 0 2rem; }
.brief-step.is-current { display: block; animation: reveal-up .55s ease both; }
.brief-step h2 { max-width: 55rem; margin-bottom: 3rem; }
.choice-list { border-top: 1px solid rgba(255,255,255,.25); }
.choice-list button { appearance: none; width: 100%; display: flex; justify-content: space-between; padding: 1rem .2rem; border: 0; border-bottom: 1px solid rgba(255,255,255,.25); color: inherit; background: none; text-align: left; cursor: pointer; font-family: var(--serif); font-size: clamp(1.4rem,2.3vw,2rem); transition: padding .25s,color .25s; }
.choice-list button:hover { padding-left: .9rem; color: var(--acid); }
.choice-list span { font-family: var(--sans); font-size: .63rem; }
.brief-step label { display: grid; grid-template-columns: 12rem 1fr; align-items: end; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.28); }
.brief-step label span { font-size: .65rem; text-transform: uppercase; letter-spacing: .12em; }
.brief-step input { min-width: 0; padding: .4rem 0; border: 0; outline: 0; color: var(--paper); background: none; font-family: var(--serif); font-size: clamp(1.35rem,2.4vw,2rem); }
.brief-step input::placeholder { color: rgba(255,255,255,.35); }
.brief-next, .brief-submit, .brief-restart { margin-top: 2rem; padding: 1rem 1.2rem; border: 0; color: var(--ink); background: var(--acid); cursor: pointer; text-transform: uppercase; letter-spacing: .1em; font-size: .68rem; }
.brief-submit { display: inline-flex; align-items: center; gap: .85rem; }
.brief-step > small { display: block; margin-top: 1rem; color: rgba(255,255,255,.5); }
.brief-back { justify-self: start; align-self: end; border: 0; padding: .6rem 0; color: rgba(255,255,255,.65); background: none; cursor: pointer; font-size: .68rem; text-transform: uppercase; letter-spacing: .1em; }
.brief-success p:not(.eyebrow) { max-width: 40rem; line-height: 1.6; color: rgba(255,255,255,.7); }

@keyframes dialog-in { from { opacity: 0; transform: translateY(25px); } }
@keyframes reveal-up { from { opacity: 0; transform: translateY(22px); } }
@keyframes nudge-y { 50% { transform: translateY(7px); } }

@media (max-width: 820px) {
  .topbar { height: 70px; padding: 12px 14px; grid-template-columns: auto 1fr; gap: .75rem; background: linear-gradient(180deg,rgba(8,10,8,.72),transparent); }
  .topbar-note { display: none; }
  .site-menu { gap: .35rem; }
  .plain-button { min-height: 44px; gap: .6rem; padding: .7rem .78rem; font-size: .56rem; letter-spacing: .08em; }
  .menu-studio i { display: none; }
  .spatial-archive { min-height: 520px; touch-action: pan-y; }
  .project-open > img { object-position: center; }
  .image-shade { background: linear-gradient(180deg,rgba(4,7,5,.48),transparent 36%,rgba(4,7,5,.82) 100%); }
  .archive-manifesto { top: 15%; left: 1.2rem; width: calc(100% - 2.4rem); }
  .archive-manifesto h1 { margin: 1rem 0 1.2rem; font-size: clamp(3.8rem,18vw,6rem); line-height: .82; }
  .archive-manifesto h1 span:last-child { padding-left: 0; white-space: normal; }
  .archive-manifesto > p:last-child { max-width: 26rem; font-size: .84rem; }
  .project-number { top: 14%; }
  /* Keep the project identity and its action on separate mobile rows. */
  .project-title { bottom: 10.4rem; display: block; }
  .project-title b { display: block; font-size: clamp(3.5rem,17vw,5.4rem); }
  .project-title small { display: block; margin-top: .6rem; }
  .project-action { right: 1.2rem; bottom: calc(5.15rem + env(safe-area-inset-bottom)); min-width: 132px; min-height: 48px; justify-content: space-between; gap: 1rem; padding: 0 1rem; border: 1px solid rgba(255,255,255,.72); border-radius: 99px; background: rgba(12,14,12,.48); box-shadow: 0 10px 30px rgba(0,0,0,.2); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); font-size: .58rem; }
  .project-action .direction-icon { width: 17px; height: 17px; }
  .project-open:active .project-action { color: var(--ink); border-color: var(--acid); background: var(--acid); transform: scale(.97); }
  .archive-controls { left: 1.2rem; right: 1.2rem; bottom: calc(1rem + env(safe-area-inset-bottom)); grid-template-columns: minmax(0,1fr) auto; gap: 1rem; }
  .rail-status { min-width: 0; }
  .rail-buttons button { width: 46px; height: 46px; }
  .interaction-note { display: none; }
  .desktop-note { display: none; }
  .mobile-note { display: inline; }
  .interaction-note i { margin: 0 0 0 .5rem; animation: none; }
  .project-dialog[open], .studio-dialog[open] { display: block; overflow-y: auto; }
  .dialog-image, .material-figure { min-height: 54svh; height: 54svh; }
  .dialog-copy, .studio-copy { min-height: 46svh; padding: 3rem 1.25rem 4rem; }
  .dialog-copy h2, .studio-copy h2 { font-size: clamp(3.6rem,16vw,5rem); }
  .dialog-close { top: .9rem; right: .9rem; }
  .studio-copy li { grid-template-columns: 2.2rem 1fr; }
  .studio-copy li small { grid-column: 2; }
  .brief-form { width: calc(100% - 2.5rem); padding: 1.1rem 0 calc(1.5rem + env(safe-area-inset-bottom)); }
  .brief-head { padding-right: 6rem; }
  .brief-step { padding: 2.6rem 0 1rem; }
  .brief-step h2 { margin-bottom: 2rem; font-size: clamp(2.8rem,12.5vw,4.4rem); }
  .brief-step label { grid-template-columns: 1fr; gap: .4rem; }
}

@media (max-width: 390px) {
  .brand span { display: none; }
  .brand { gap: 0; }
  .plain-button { padding-inline: .68rem; }
  .menu-brief { gap: .45rem; }
  .archive-manifesto h1 { font-size: clamp(3.5rem,17vw,4.6rem); }
  .archive-manifesto > p:last-child { max-width: 21rem; }
  .project-title { bottom: 10.2rem; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}


.concept-credit { position: absolute; z-index: 6; left: 50%; bottom: calc(.3rem + env(safe-area-inset-bottom)); width: max-content; max-width: calc(100% - 2rem); margin: 0; transform: translateX(-50%); color: rgba(255,255,255,.62); text-align: center; white-space: nowrap; font-size: .47rem; line-height: 1.2; letter-spacing: .08em; text-transform: uppercase; }
.concept-credit a { display: inline-flex; align-items: center; gap: .25rem; color: var(--acid); }
.concept-credit svg { width: 10px; height: 10px; fill: none; stroke: currentColor; stroke-width: 1.2; }
@media (max-width: 700px) { .concept-credit { bottom: calc(.18rem + env(safe-area-inset-bottom)); max-width: calc(100% - 1.5rem); overflow: hidden; text-overflow: ellipsis; font-size: .4rem; letter-spacing: .04em; } }


/* Cinematic interaction language shared with the Leyla Tan portfolio. */
.spatial-archive::after {
  content: "";
  position: absolute;
  z-index: 9;
  inset: 0;
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(90deg, transparent 0%, rgba(216,237,103,.2) 44%, rgba(241,239,232,.32) 50%, transparent 58%);
  transform: translateX(-110%);
}
.spatial-archive.is-switching-next::after { animation: archive-wipe-next .72s cubic-bezier(.76,0,.24,1) both; }
.spatial-archive.is-switching-prev::after { animation: archive-wipe-prev .72s cubic-bezier(.76,0,.24,1) both; }
.rail-buttons button.is-advancing { animation: rail-press-next .5s cubic-bezier(.2,.8,.2,1) both; }
.rail-prev.is-advancing { animation-name: rail-press-prev; }
.project-open.is-launching .project-action,
.plain-button.is-launching,
.studio-brief.is-launching {
  animation: control-launch .48s cubic-bezier(.2,.8,.2,1) both;
}
.project-open.is-launching > img { filter: saturate(.72) brightness(.82); transform: scale(1.025); }

dialog[open] { animation: none; }
.project-dialog.is-opening,
.studio-dialog.is-opening,
.brief-dialog.is-opening {
  animation: mihenk-dialog-reveal .84s cubic-bezier(.76,0,.24,1) both;
}
.project-dialog.is-opening::backdrop,
.studio-dialog.is-opening::backdrop,
.brief-dialog.is-opening::backdrop { animation: mihenk-backdrop-in .5s ease both; }
.project-dialog.is-opening .dialog-image img,
.studio-dialog.is-opening .material-figure img { animation: mihenk-image-in 1.05s cubic-bezier(.2,.75,.2,1) both; }
.project-dialog.is-opening .dialog-copy,
.studio-dialog.is-opening .studio-copy,
.brief-dialog.is-opening .brief-form { animation: mihenk-content-in .68s .2s cubic-bezier(.22,.61,.36,1) both; }
.project-dialog.is-opening .dialog-close,
.studio-dialog.is-opening .dialog-close,
.brief-dialog.is-opening .dialog-close { animation: mihenk-control-in .45s .34s ease both; }
.project-dialog.is-closing,
.studio-dialog.is-closing,
.brief-dialog.is-closing {
  pointer-events: none;
  animation: mihenk-dialog-hide .6s cubic-bezier(.76,0,.24,1) both;
}
.project-dialog.is-closing::backdrop,
.studio-dialog.is-closing::backdrop,
.brief-dialog.is-closing::backdrop { animation: mihenk-backdrop-out .48s ease both; }
.project-dialog.is-closing .dialog-copy,
.studio-dialog.is-closing .studio-copy,
.brief-dialog.is-closing .brief-form { animation: mihenk-content-out .4s ease both; }
.dialog-close.is-pressing { animation: close-press .4s cubic-bezier(.2,.8,.2,1) both; }

@keyframes archive-wipe-next {
  0% { opacity: 0; transform: translateX(-110%); }
  35% { opacity: 1; }
  100% { opacity: 0; transform: translateX(110%); }
}
@keyframes archive-wipe-prev {
  0% { opacity: 0; transform: translateX(110%); }
  35% { opacity: 1; }
  100% { opacity: 0; transform: translateX(-110%); }
}
@keyframes rail-press-next {
  0% { transform: translateX(0) scale(1); }
  42% { transform: translateX(4px) scale(.9); color: var(--ink); background: var(--acid); }
  100% { transform: translateX(0) scale(1); }
}
@keyframes rail-press-prev {
  0% { transform: translateX(0) scale(1); }
  42% { transform: translateX(-4px) scale(.9); color: var(--ink); background: var(--acid); }
  100% { transform: translateX(0) scale(1); }
}
@keyframes control-launch {
  0% { transform: translateY(0) scale(1); }
  45% { transform: translateY(1px) scale(.9); }
  100% { transform: translateY(-2px) scale(1.025); }
}
@keyframes mihenk-dialog-reveal {
  from { clip-path: circle(0 at var(--reveal-x,50%) var(--reveal-y,50%)); }
  to { clip-path: circle(var(--reveal-radius,150vmax) at var(--reveal-x,50%) var(--reveal-y,50%)); }
}
@keyframes mihenk-dialog-hide {
  from { clip-path: circle(var(--reveal-radius,150vmax) at var(--reveal-x,50%) var(--reveal-y,50%)); opacity: 1; }
  to { clip-path: circle(0 at var(--reveal-x,50%) var(--reveal-y,50%)); opacity: .72; }
}
@keyframes mihenk-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes mihenk-backdrop-out { from { opacity: 1; } to { opacity: 0; } }
@keyframes mihenk-image-in {
  from { transform: scale(1.1); filter: saturate(.65) brightness(.76); }
  to { transform: scale(1); filter: none; }
}
@keyframes mihenk-content-in {
  from { opacity: 0; transform: translateY(28px); }
  to { opacity: 1; transform: none; }
}
@keyframes mihenk-content-out { to { opacity: 0; transform: translateY(22px); } }
@keyframes mihenk-control-in {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: none; }
}
@keyframes close-press {
  0% { transform: scale(1); }
  45% { transform: scale(.86) rotate(-2deg); }
  100% { transform: scale(1.03); }
}
