/* Selected Works: three tabs (websites, social media, ads), each a one-row carousel of three
   projects followed by a "See more" card that opens the full work on antoneta-safta.com. */
.medusa-works { --mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace; position: relative; padding: clamp(80px, 9vw, 140px) 3.2rem; color: #e0e5ef; }
.medusa-works > * { max-width: 1760px; margin-inline: auto; }
.medusa-works__label { display: flex; align-items: center; gap: 16px; margin-bottom: 22px; font: 300 10px/1.4 var(--_font-default); letter-spacing: .14em; color: #aab6c8; }
.medusa-works__label span { width: 70px; height: 1px; background: #aab6c82b; }
.medusa-works__header { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: clamp(24px, 2.6vw, 40px); }
.medusa-works h2 { margin: 0; font: 400 clamp(36px, 4.4vw, 78px)/1 var(--_font-default); letter-spacing: -.045em; color: inherit; }

/* Shared glass surface. */
.medusa-works__tab, .medusa-works__arrow, .medusa-works__stats, .medusa-works__see-all, .medusa-works__more {
  border: 1px solid #e0e5ef24; background: linear-gradient(145deg, #222c4a73, #0c122259);
  box-shadow: inset 1px 1px 0 #ffffff12; -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
}
.medusa-works__nav { display: flex; gap: 10px; }
.medusa-works__arrow { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; color: #e0e5ef; cursor: pointer; transition: border-color .3s, opacity .3s; }
.medusa-works__arrow svg { width: 18px; height: 18px; }
.medusa-works__arrow:hover { border-color: #e0e5ef66; }
.medusa-works__arrow:disabled { opacity: .35; cursor: default; }
.medusa-works__tabs, .medusa-works__tablist { display: flex; flex-wrap: wrap; gap: 10px; }
.medusa-works__tabs { margin-bottom: clamp(24px, 2.6vw, 40px); padding-top: 10px; }
/* Categories in preparation: visible, not selectable, with a corner badge. */
.medusa-works__tab--soon { position: relative; color: #8f9ab0; cursor: default; }
.medusa-works__tab--soon:hover { border-color: #e0e5ef24; color: #8f9ab0; }
.medusa-works__soon { position: absolute; top: -10px; right: -8px; padding: 4px 8px; border-radius: 20px; border: 1px solid #a58cff66; background: linear-gradient(135deg, #7657f0, #5b43c0); box-shadow: 0 4px 14px #7657f059; font: 400 8px/1 var(--mono); letter-spacing: .1em; color: #fff; white-space: nowrap; }
.medusa-works__tab { padding: clamp(10px, .9vw, 14px) clamp(20px, 2vw, 34px); border-radius: 20px; color: #c9d2e2; font: 400 clamp(12px, .95vw, 15px)/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; cursor: pointer; transition: border-color .3s, color .3s; }
.medusa-works__tab:hover { border-color: #e0e5ef66; color: #f1f3f9; }
.medusa-works__tab[aria-selected="true"] { border-color: #a58cff66; color: #fff; background: linear-gradient(135deg, #7657f0e6, #5b43c0cc); box-shadow: inset 1px 1px 0 #ffffff2e, 0 10px 30px #7657f040; }

/* Carousel: native horizontal scrolling with snap; three cards per view on desktop. */
.medusa-works__panel[hidden] { display: none; }
.medusa-works__track { overscroll-behavior-x: contain; --per-view: 3; --gap: clamp(14px, 1.4vw, 24px); display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - (var(--per-view) - 1) * var(--gap)) / var(--per-view)); gap: var(--gap); margin: 0; padding: 0 0 6px; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; }
.medusa-works__track::-webkit-scrollbar { display: none; }
.medusa-works__card { scroll-snap-align: start; min-width: 0; }

/* Website and social cards. */
.medusa-works__visual { position: relative; display: block; height: 100%; min-height: 380px; overflow: hidden; border-radius: 22px; border: 1px solid #e0e5ef1f; color: #fff; text-decoration: none; background: #151d33; }
.medusa-works__visual img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: left top; transition: transform .9s cubic-bezier(.2, .7, .2, 1); }
.medusa-works__visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, #070b14e6 100%); }
.medusa-works__visual:hover img { transform: scale(1.04); }
.medusa-works__tags, .medusa-works__name { position: absolute; z-index: 1; left: 22px; right: 22px; }
.medusa-works__tags { bottom: 62px; font: 400 10px/1.3 var(--mono); letter-spacing: .14em; text-transform: uppercase; color: #c9d2e2; }
.medusa-works__name { bottom: 22px; display: flex; align-items: center; gap: 10px; font: 400 clamp(20px, 1.7vw, 28px)/1.1 var(--_font-default); letter-spacing: -.03em; }
.medusa-works__name svg, .medusa-works__more svg, .medusa-works__see-icon svg { width: 16px; height: 16px; flex: none; }
.medusa-works__name svg { color: #c9b9ff; transition: transform .3s; }
.medusa-works__visual:hover .medusa-works__name svg { transform: translate(3px, -3px); }

/* Ads case-study boxes. */
.medusa-works__stats { display: flex; flex-direction: column; height: 100%; min-height: 380px; padding: clamp(20px, 1.8vw, 30px); border-radius: 22px; }
.medusa-works__eyebrow { margin: 0 0 12px; font: 400 10px/1.3 var(--mono); letter-spacing: .16em; text-transform: uppercase; color: #a79ac8; }
.medusa-works__stats h3 { margin: 0 0 8px; font: 400 clamp(22px, 1.8vw, 30px)/1.1 var(--_font-default); letter-spacing: -.03em; color: #f1f3f9; }
.medusa-works__headline { margin: 0 0 18px; padding-bottom: 18px; border-bottom: 1px solid #e0e5ef1f; font: 300 clamp(13px, .95vw, 15px)/1.4 var(--_font-default); color: #afb9cc; }
.medusa-works__metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0 0 20px; border: 1px solid #e0e5ef1a; border-radius: 14px; overflow: hidden; background: #e0e5ef1a; }
.medusa-works__metrics div { padding: 12px 14px; background: #0d1426; }
.medusa-works__metrics dt { margin-bottom: 6px; font: 400 9px/1.3 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: #8f9ab0; }
.medusa-works__metrics dd { margin: 0; }
.medusa-works__metrics strong { display: block; font: 400 clamp(20px, 1.6vw, 28px)/1.05 var(--_font-default); letter-spacing: -.03em; color: #f1f3f9; }
.medusa-works__delta { display: block; margin-top: 4px; font: 400 11px/1.2 var(--mono); color: #b9a8ff; }
.medusa-works__delta.is-cost { color: #8f9ab0; }
.medusa-works__flow { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.medusa-works__flow div { flex: 1; padding: 12px 14px; border: 1px solid #e0e5ef1a; border-radius: 14px; background: #0d1426; }
.medusa-works__flow span { display: block; margin-bottom: 6px; font: 400 9px/1.3 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: #8f9ab0; }
.medusa-works__flow strong { font: 400 clamp(20px, 1.6vw, 28px)/1 var(--_font-default); letter-spacing: -.03em; color: #f1f3f9; }
.medusa-works__flow-arrow { color: #b9a8ff; font-size: 18px; }
.medusa-works__more { display: inline-flex; align-self: flex-start; align-items: center; gap: 10px; margin-top: auto; padding: 11px 18px; border-radius: 20px; color: #f1f3f9; font: 400 11px/1 var(--mono); letter-spacing: .14em; text-transform: uppercase; text-decoration: none; transition: border-color .3s; }
.medusa-works__more:hover { border-color: #e0e5ef66; }

/* The fourth component: an invitation to the full portfolio. */
.medusa-works__see-all { position: relative; display: flex; flex-direction: column; justify-content: flex-end; height: 100%; min-height: 380px; padding: clamp(20px, 1.8vw, 30px); border-radius: 22px; color: #f1f3f9; text-decoration: none; background: radial-gradient(ellipse at 25% 15%, #5b3fc44d, transparent 60%), linear-gradient(145deg, #222c4a73, #0c122259); transition: border-color .3s; }
.medusa-works__see-all strong { font: 400 clamp(32px, 3vw, 52px)/1 var(--_font-default); letter-spacing: -.045em; }
.medusa-works__see-text { max-width: 26ch; margin-top: 12px; font: 300 14px/1.45 var(--_font-default); color: #afb9cc; }
.medusa-works__see-icon { position: absolute; top: clamp(20px, 1.8vw, 30px); right: clamp(20px, 1.8vw, 30px); display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; color: #fff; background: linear-gradient(135deg, #7657f0, #a58cff); box-shadow: 0 0 20px #7657f059; transition: transform .3s; }
.medusa-works__see-all:hover { border-color: #e0e5ef66; }
.medusa-works__see-all:hover .medusa-works__see-icon { transform: rotate(45deg); }
.medusa-works a:focus-visible, .medusa-works button:focus-visible { outline: 2px solid #a3b8d2; outline-offset: 3px; }
.medusa-works__sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (max-width: 1199px) { .medusa-works__track { --per-view: 2; } }
@media (max-width: 767px) {
  .medusa-works { padding-inline: 2.2rem; }
  .medusa-works__track { --per-view: 1.12; }
  .medusa-works__arrow { width: 42px; height: 42px; }
  .medusa-works__tab { min-height: 44px; }
}
