.eventy-firmowe-page {
  --ef-grid-gap: 1.25rem;
  overflow: clip;
}

.eventy-firmowe-page .section {
  position: relative;
}

.eventy-firmowe-page .eyebrow {
  color: currentColor;
}

.ef-hero {
  padding-block: clamp(4rem, 8vw, 8rem) clamp(4rem, 7vw, 7rem);
}

.ef-hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--ef-grid-gap);
  align-items: center;
}

.ef-hero__content {
  grid-column: 1 / span 6;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-5);
}

.ef-hero__content > * { margin: 0; }
.ef-hero__title { max-width: 12ch; font-size: clamp(4rem, 7vw, 7.5rem); line-height: .93; }
.ef-hero__lead { max-width: 31.25rem; font-size: var(--font-size-18); }
.ef-hero__actions { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-4); min-width: 0; }
.ef-hero__hint { max-width: 17rem; margin: 0; font-size: var(--font-size-14); line-height: var(--line-height-small); }
.ef-hero__media { grid-column: 8 / span 5; min-width: 0; position: relative; padding: 0 0 var(--space-6) var(--space-6); }
.ef-hero__cobalt { position: absolute; inset: var(--space-8) 0 0 var(--space-8); background: var(--color-cobalt); }
.ef-hero__image { position: relative; z-index: 1; width: 100%; max-width: 100%; aspect-ratio: 4 / 5; margin: 0; transition: transform var(--transition-base); }
.ef-hero__media:hover .ef-hero__image { transform: translateY(-3px); }

.ef-intentions__header { width: 41.666%; max-width: 33.75rem; min-width: 0; }
.ef-intentions__header > :last-child { margin-bottom: 0; }
.ef-intentions__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--ef-grid-gap); margin-top: var(--space-7); align-items: stretch; }
.ef-intention { min-width: 0; min-height: 22rem; position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-6); transition: transform var(--transition-base), box-shadow var(--transition-base); }
.ef-intention > * { margin: 0; }
.ef-intention:hover { transform: translateY(-3px); box-shadow: var(--shadow-subtle); }
.ef-intention--stone { background: var(--color-ivory); border: var(--border-subtle); }
.ef-intention--terracotta { background: var(--color-terracotta); }
.ef-intention--pistachio { background: var(--color-pistachio); }
.ef-intention__label { font-size: var(--font-size-12); font-weight: var(--font-weight-semibold); letter-spacing: var(--tracking-label); line-height: var(--line-height-small); }
.ef-intention__number { position: absolute; top: var(--space-4); right: var(--space-5); color: rgb(32 42 50 / .14); font-family: var(--font-heading); font-size: 5rem; font-weight: var(--font-weight-bold); line-height: 1; }
.ef-intention h3 { max-width: 13ch; font-size: clamp(1.5rem, 2vw, 2rem); }
.ef-intention p { max-width: 100%; font-size: var(--font-size-16); }
.ef-intentions__closing { max-width: 38rem; margin: var(--space-6) 0 0; font-size: var(--font-size-18); }

.ef-formats__header { width: 41.666%; max-width: 35rem; min-width: 0; }
.ef-formats__header > :last-child { margin-bottom: 0; }
.ef-formats__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--ef-grid-gap); margin-top: var(--space-7); }
.ef-format { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding: var(--space-6); }
.ef-format > * { margin: 0; }
.ef-format h3 { max-width: 14ch; font-size: var(--font-size-24); }
.ef-format p { max-width: 26.25rem; }
.ef-format--integration { grid-column: span 3; background: var(--color-ivory); border: var(--border-subtle); }
.ef-format--team { grid-column: span 3; min-height: 21rem; background: var(--color-pistachio); }
.ef-format--jubilee { grid-column: span 3; background: var(--color-burgundy); color: var(--color-ivory); }
.ef-format--jubilee h3 { color: currentColor; }
.ef-format--theme { grid-column: span 3; background: var(--color-terracotta); }
.ef-format__line { width: 3rem; height: 3px; background: var(--color-cobalt); }
.ef-format__label { font-size: var(--font-size-14); font-weight: var(--font-weight-semibold); letter-spacing: var(--tracking-label); }
.ef-format--casino { grid-column: span 7; min-height: 22rem; position: relative; overflow: hidden; background: var(--color-pistachio); }
.ef-format--casino h3 { max-width: 17ch; }
.ef-format--casino p:not(.eyebrow) { max-width: 29.375rem; }
.ef-format__corner { width: 7.5rem; height: 7.5rem; position: absolute; right: 0; bottom: 0; background: var(--color-cobalt); }
.ef-format--custom { grid-column: span 5; justify-content: center; background: var(--color-cobalt); color: var(--color-white); }
.ef-format--custom h3 { color: currentColor; }
.ef-format--custom p { max-width: 25rem; }
.ef-format--custom a, .ef-casino__note a { font-family: var(--font-heading); font-weight: var(--font-weight-semibold); text-underline-offset: .22em; }
.ef-format--custom a:hover, .ef-casino__note a:hover { color: currentColor; }

.ef-variables__header { width: 50%; max-width: 37.5rem; min-width: 0; }
.ef-variables__header > :last-child { margin-bottom: 0; }
.ef-variables__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--ef-grid-gap); align-items: start; margin-top: var(--space-7); }
.ef-variables__image { grid-column: 1 / span 8; width: 100%; max-width: 100%; aspect-ratio: 3 / 2; margin: 0; }
.ef-variables__notes { grid-column: 9 / span 4; min-width: 0; display: flex; flex-direction: column; gap: var(--space-4); }
.ef-variable { min-width: 0; display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-3); padding: var(--space-5); background: var(--color-ivory); }
.ef-variable > * { min-width: 0; }
.ef-variable h3 { font-size: var(--font-size-24); }
.ef-variable p { margin-bottom: 0; font-size: var(--font-size-16); }
.ef-variable__number { font-family: var(--font-heading); font-size: var(--font-size-24); font-weight: var(--font-weight-bold); line-height: 1; }
.ef-variable--cobalt { background: var(--color-cobalt); color: var(--color-white); }
.ef-variable--cobalt h3 { color: currentColor; }
.ef-variable--terracotta { background: var(--color-terracotta); }

.ef-production__header { width: 41.666%; max-width: 35rem; min-width: 0; }
.ef-production__header > :last-child { margin-bottom: 0; }
.ef-production__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--ef-grid-gap); align-items: start; margin-top: var(--space-7); }
.ef-production__item { min-width: 0; min-height: 18rem; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); border-top: 1px solid var(--color-ink); padding: var(--space-5) 0 0; }
.ef-production__item > * { margin: 0; }
.ef-production__item span { font-family: var(--font-heading); font-size: var(--font-size-32); font-weight: var(--font-weight-bold); line-height: 1; }
.ef-production__item h3 { max-width: 12ch; font-size: var(--font-size-24); }
.ef-production__item p { max-width: 22.5rem; font-size: var(--font-size-16); }
.ef-production__item--materials { background: var(--color-stone); padding: var(--space-5); border-top: 0; }
.ef-production__item--materials::after { width: 2.5rem; height: 1rem; content: ""; background: var(--color-pistachio); }
.ef-production__item--detail { margin-top: var(--space-7); background: var(--color-pistachio); padding: var(--space-5); border-top: 0; }

.ef-casino { background: var(--color-ivory); }
.ef-casino__top { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--ef-grid-gap); align-items: start; }
.ef-casino__content { grid-column: 1 / span 6; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.ef-casino__content > * { margin: 0; }
.ef-casino__content h2 { max-width: 10.5ch; }
.ef-casino__content h3 { max-width: 17ch; margin-top: var(--space-3); font-size: var(--font-size-24); }
.ef-casino__content p:not(.eyebrow) { max-width: 32.5rem; }
.ef-casino__image { grid-column: 8 / span 5; width: 100%; max-width: 100%; aspect-ratio: 4 / 5; margin: var(--space-7) 0 0; transition: transform var(--transition-base); }
.ef-casino__image:hover { transform: translateY(-3px); }
.ef-casino__bottom { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--ef-grid-gap); margin-top: var(--space-7); }
.ef-casino__story { grid-column: 1 / span 7; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); background: var(--color-burgundy); color: var(--color-ivory); padding: var(--space-6); }
.ef-casino__story > * { margin: 0; }
.ef-casino__story h3 { color: currentColor; max-width: 18ch; }
.ef-casino__story p:not(.eyebrow) { max-width: 31rem; }
.ef-casino__note { grid-column: 8 / span 5; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); background: var(--color-pistachio); padding: var(--space-6); }
.ef-casino__note > * { margin: 0; }
.ef-casino__note h3 { max-width: 13ch; font-size: var(--font-size-24); }
.ef-casino__note p { max-width: 28.75rem; }

.ef-process { color: var(--color-white); }
.ef-process__header { width: 50%; max-width: 35rem; min-width: 0; }
.ef-process__header h2 { color: currentColor; }
.ef-process__header > :last-child { margin-bottom: 0; }
.ef-process__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--ef-grid-gap); position: relative; margin-top: var(--space-7); }
.ef-process__grid::before { position: absolute; z-index: 0; top: 1.5rem; right: 8%; left: 8%; height: 1px; content: ""; background: rgb(255 255 255 / .55); }
.ef-process__card { z-index: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); background: var(--color-ivory); color: var(--color-ink); padding: var(--space-5); }
.ef-process__card > * { margin: 0; }
.ef-process__card span { display: grid; width: 3rem; min-width: 3rem; height: 3rem; place-items: center; background: var(--color-cobalt); color: var(--color-white); font-family: var(--font-heading); font-weight: var(--font-weight-bold); }
.ef-process__card h3 { max-width: 12ch; font-size: var(--font-size-24); }
.ef-process__card p { font-size: var(--font-size-16); }
.ef-process__card--burgundy { background: var(--color-burgundy); color: var(--color-ivory); }
.ef-process__card--burgundy h3 { color: currentColor; }
.ef-process__card--burgundy span { background: var(--color-ivory); color: var(--color-burgundy); }

.ef-cta { padding-top: var(--section-space-compact); }
.ef-cta__panel { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--ef-grid-gap); position: relative; overflow: hidden; background: var(--color-terracotta); padding: clamp(var(--space-6), 5vw, var(--space-9)); }
.ef-cta__content { grid-column: 1 / span 6; z-index: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); }
.ef-cta__content > * { margin: 0; }
.ef-cta__content h2 { max-width: 12ch; }
.ef-cta__content p:not(.eyebrow) { max-width: 32.5rem; }
.ef-cta__shape { grid-column: 11 / span 2; align-self: end; min-width: 0; height: 7rem; background: var(--color-cobalt); }

[data-ef-reveal] { opacity: 0; transform: translateY(18px); transition: opacity 320ms cubic-bezier(.22, 1, .36, 1), transform 320ms cubic-bezier(.22, 1, .36, 1); }
[data-ef-reveal].is-visible { opacity: 1; transform: translateY(0); }

@media (max-width: 65.56rem) {
  .eventy-firmowe-page { --ef-grid-gap: 1rem; }
  .ef-hero__grid, .ef-variables__layout, .ef-casino__top, .ef-casino__bottom, .ef-cta__panel { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .ef-hero__content { grid-column: 1 / span 5; }
  .ef-hero__media { grid-column: 6 / span 3; padding-left: var(--space-4); }
  .ef-hero__title { font-size: clamp(3.5rem, 7.5vw, 5.5rem); }
  .ef-formats__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .ef-format--integration, .ef-format--team, .ef-format--jubilee, .ef-format--theme { grid-column: span 4; }
  .ef-format--casino { grid-column: span 8; }
  .ef-format--custom { grid-column: span 8; }
  .ef-variables__image { grid-column: 1 / span 8; }
  .ef-variables__notes { grid-column: 1 / span 8; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .ef-variable:nth-child(1) { grid-column: 1 / span 4; }
  .ef-variable:nth-child(2) { grid-column: 5 / span 4; }
  .ef-variable:nth-child(3) { grid-column: 3 / span 4; }
  .ef-production__grid, .ef-process__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ef-production__item, .ef-process__card { min-height: 0; }
  .ef-production__item--detail { margin-top: 0; }
  .ef-casino__content { grid-column: 1 / span 5; }
  .ef-casino__image { grid-column: 6 / span 3; margin-top: var(--space-5); }
  .ef-casino__story { grid-column: 1 / span 5; }
  .ef-casino__note { grid-column: 6 / span 3; }
  .ef-cta__content { grid-column: 1 / span 8; }
  .ef-cta__shape { display: none; }
}

@media (max-width: 61.19rem) {
  .ef-hero__grid { grid-template-columns: 1fr; }
  .ef-hero__content, .ef-hero__media { grid-column: 1; width: 100%; }
  .ef-hero__content { max-width: 42.5rem; }
  .ef-hero__media { max-width: 32rem; padding-left: 0; }
  .ef-hero__cobalt { inset: var(--space-6) calc(var(--space-6) * -1) 0 0; }
  .ef-casino__top { grid-template-columns: 1fr; }
  .ef-casino__content, .ef-casino__image { grid-column: 1; width: 100%; }
  .ef-casino__content { max-width: 40rem; }
  .ef-casino__image { max-width: 32rem; margin-top: 0; }
  .ef-casino__bottom { grid-template-columns: 1fr; }
  .ef-casino__story, .ef-casino__note { grid-column: 1; width: 100%; }
  .ef-casino__story { max-width: 48rem; }
  .ef-casino__note { max-width: 36rem; }
}

@media (max-width: 56.19rem) {
  .ef-intentions__header, .ef-formats__header, .ef-variables__header, .ef-production__header, .ef-process__header { width: 62.5%; }
  .ef-intentions__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ef-intention:nth-child(3) { grid-column: 1 / span 2; }
}

@media (max-width: 47.99rem) {
  .eventy-firmowe-page { --ef-grid-gap: 1rem; }
  .ef-hero { padding-block: var(--space-8) var(--space-7); }
  .ef-hero__content { gap: var(--space-4); }
  .ef-hero__title { max-width: 12ch; font-size: clamp(3rem, 13vw, 4.25rem); line-height: .96; }
  .ef-hero__lead { font-size: var(--font-size-16); }
  .ef-hero__actions { width: 100%; flex-direction: column; align-items: stretch; gap: var(--space-3); }
  .ef-hero__hint { max-width: 100%; }
  .ef-hero__media { max-width: 100%; margin-top: var(--space-4); padding: 0; }
  .ef-hero__cobalt { position: absolute; inset: var(--space-6) calc(var(--container-padding) * -1) calc(var(--space-6) * -1); }
  .ef-hero__image { aspect-ratio: 4 / 5; }
  .ef-intentions__header, .ef-formats__header, .ef-variables__header, .ef-production__header, .ef-process__header { width: 100%; max-width: 100%; }
  .ef-intentions__grid, .ef-production__grid, .ef-process__grid { grid-template-columns: 1fr; }
  .ef-intention, .ef-intention:nth-child(3) { grid-column: 1; width: 100%; min-height: 13.75rem; padding: var(--space-5); }
  .ef-intention h3 { max-width: 15ch; }
  .ef-formats__grid { grid-template-columns: 1fr; }
  .ef-format, .ef-format--integration, .ef-format--team, .ef-format--jubilee, .ef-format--theme, .ef-format--casino, .ef-format--custom { grid-column: 1; width: 100%; min-height: 0; padding: var(--space-5); }
  .ef-format--casino { min-height: 18.75rem; }
  .ef-format h3 { max-width: 16ch; }
  .ef-variables__layout { grid-template-columns: 1fr; margin-top: var(--space-6); }
  .ef-variables__image, .ef-variables__notes { grid-column: 1; width: 100%; }
  .ef-variables__notes { display: flex; gap: var(--space-3); }
  .ef-variable, .ef-variable:nth-child(1), .ef-variable:nth-child(2), .ef-variable:nth-child(3) { grid-column: auto; width: 100%; padding: var(--space-4); }
  .ef-variable h3 { font-size: var(--font-size-18); }
  .ef-production__grid { margin-top: var(--space-6); gap: 0; }
  .ef-production__item { width: 100%; min-height: 0; padding: var(--space-5) 0; }
  .ef-production__item--materials, .ef-production__item--detail { padding: var(--space-5); }
  .ef-casino__content { gap: var(--space-4); }
  .ef-casino__content h2 { max-width: 13ch; }
  .ef-casino__image { max-width: 100%; }
  .ef-casino__bottom { margin-top: var(--space-5); }
  .ef-casino__story, .ef-casino__note { padding: var(--space-5); }
  .ef-process { padding-inline: 0; }
  .ef-process__header, .ef-process__grid { width: min(100% - (2 * var(--container-padding)), var(--container-max)); margin-inline: auto; }
  .ef-process__grid { margin-top: var(--space-6); gap: var(--space-3); }
  .ef-process__grid::before { top: 1.5rem; bottom: 1.5rem; left: 2.5rem; width: 1px; height: auto; }
  .ef-process__card { width: 100%; display: grid; grid-template-columns: 3rem minmax(0, 1fr); column-gap: var(--space-4); row-gap: var(--space-3); padding: var(--space-4); }
  .ef-process__card span { grid-row: 1 / span 2; }
  .ef-process__card h3 { align-self: end; max-width: 100%; }
  .ef-process__card p { grid-column: 2; }
  .ef-cta { padding-bottom: var(--space-8); }
  .ef-cta .container { width: 100%; }
  .ef-cta__panel { grid-template-columns: 1fr; padding: var(--space-6) var(--container-padding); }
  .ef-cta__content { grid-column: 1; width: 100%; }
  .ef-cta__content h2 { max-width: 13ch; }
}

@media (prefers-reduced-motion: reduce) {
  [data-ef-reveal] { opacity: 1; transform: none; transition: none; }
  .ef-hero__media:hover .ef-hero__image, .ef-casino__image:hover, .ef-intention:hover { transform: none; }
}
