.dania-page {
  overflow: clip;
}

.dania-page .dania-reveal {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 600ms ease-out, transform 600ms ease-out;
}

.dania-page .dania-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.dania-page .dania-text-link {
  color: var(--color-adriatic-teal);
  font-weight: 600;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.22em;
}

.dania-page .dania-text-link:hover {
  text-decoration-thickness: 2px;
  text-underline-offset: 0.35em;
}

.dania-page .surface-teal .dania-text-link {
  color: var(--color-soft-white);
}

.dania-page .dania-hero {
  padding-block: calc(var(--section-space) + 2rem) var(--section-space);
}

.dania-page .dania-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr);
  align-items: center;
}

.dania-page .dania-hero__copy {
  grid-column: 1;
  min-width: 0;
}

.dania-page .dania-breadcrumbs {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-6);
  font-size: var(--text-sm);
}

.dania-page .dania-breadcrumbs span:last-child {
  color: rgba(32, 54, 52, 0.72);
}

.dania-page .dania-hero h1 {
  max-width: 10.5ch;
  font-size: clamp(3.25rem, 5.3vw, 4.75rem);
}

.dania-page .dania-hero__lead {
  max-width: 46ch;
  font-size: var(--text-lg);
}

.dania-page .dania-hero__actions {
  align-items: center;
}

.dania-page .dania-hero__figure {
  grid-column: 3;
  min-width: 0;
  margin: 0 0 -3rem;
}

.dania-page .dania-hero__media {
  position: relative;
  min-height: 38.75rem;
  border-radius: var(--radius-xl) 0 var(--radius-xl) 0;
  box-shadow: var(--shadow-editorial);
}

.dania-page .dania-hero__media::after,
.dania-page .dania-sharing__media::after,
.dania-page .dania-finale__media::after {
  position: absolute;
  inset: 0;
  background: rgba(184, 120, 92, 0.08);
  content: "";
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--transition-ui);
}

.dania-page .dania-hero__media:hover::after,
.dania-page .dania-sharing__media:hover::after,
.dania-page .dania-finale__media:hover::after {
  opacity: 1;
}

.dania-page .dania-hero__figure figcaption {
  max-width: 34ch;
}

.dania-page .dania-language__intro {
  width: 41.6667%;
  min-width: 0;
}

.dania-page .dania-language__intro p:not(.eyebrow) {
  max-width: 50ch;
  font-size: var(--text-lg);
}

.dania-page .dania-rule {
  margin-block: var(--space-12);
}

.dania-page .dania-pillars {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-8);
}

.dania-page .dania-pillar {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  gap: var(--space-4);
  border: var(--border-subtle);
  border-radius: var(--radius-sm);
  background: var(--color-limestone);
  padding: var(--space-8);
}

.dania-page .dania-pillar__number {
  color: var(--color-adriatic-teal);
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: 0.1em;
}

.dania-page .dania-pillar h3,
.dania-page .dania-pillar p {
  margin: 0;
}

.dania-page .dania-pillar p {
  max-width: 34ch;
}

.dania-page .dania-overview__top {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr);
  align-items: end;
  gap: var(--space-8);
}

.dania-page .dania-overview__intro {
  grid-column: 1;
  min-width: 0;
}

.dania-page .dania-overview__intro p:not(.eyebrow) {
  max-width: 48ch;
  font-size: var(--text-lg);
}

.dania-page .dania-overview__note {
  grid-column: 3;
  max-width: 24ch;
  margin: 0;
  border-left: 1px solid rgba(23, 107, 105, 0.45);
  padding-left: var(--space-4);
  font-size: var(--text-sm);
}

.dania-page .dania-dish-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-8) var(--space-12);
  margin-top: var(--space-12);
}

.dania-page .dania-dish-item {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  min-width: 0;
  gap: var(--space-4);
  border-top: var(--border-subtle);
  padding-top: var(--space-6);
}

.dania-page .dania-dish-item > span {
  color: var(--color-adriatic-teal);
  font-size: var(--text-sm);
  font-weight: 600;
  letter-spacing: 0.08em;
}

.dania-page .dania-dish-item > div {
  min-width: 0;
}

.dania-page .dania-dish-item h3 {
  margin-bottom: var(--space-2);
  font-size: clamp(1.625rem, 2.2vw, 1.875rem);
}

.dania-page .dania-dish-item__meta {
  margin-bottom: var(--space-3);
  color: rgba(32, 54, 52, 0.72);
  font-size: var(--text-sm);
  letter-spacing: 0.04em;
}

.dania-page .dania-dish-item p:last-child {
  max-width: 38ch;
  margin-bottom: 0;
}

.dania-page .dania-sharing__grid {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr);
  align-items: center;
}

.dania-page .dania-sharing__copy {
  grid-column: 1;
  min-width: 0;
}

.dania-page .dania-sharing__copy > p:not(.eyebrow) {
  max-width: 46ch;
  font-size: var(--text-lg);
}

.dania-page .dania-occasions {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.dania-page .dania-occasions > div {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  min-width: 0;
  gap: var(--space-3);
  border-top: var(--border-subtle);
  padding-top: var(--space-4);
}

.dania-page .dania-occasions span {
  color: var(--color-adriatic-teal);
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.08em;
}

.dania-page .dania-occasions p {
  max-width: 31ch;
  margin: 0;
}

.dania-page .dania-sharing__figure {
  grid-column: 3;
  min-width: 0;
  margin: 0 0 -4rem;
}

.dania-page .dania-sharing__media {
  position: relative;
  min-height: 32.5rem;
  border-radius: var(--radius-xl) 0 0 0;
  box-shadow: var(--shadow-editorial);
}

.dania-page .dania-craft__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 1fr) minmax(0, 4fr);
  align-items: center;
}

.dania-page .dania-craft__figure {
  grid-column: 1;
  min-width: 0;
  margin: 0;
}

.dania-page .dania-craft__media {
  min-height: 33.75rem;
  border-radius: 0 var(--radius-xl) 0 var(--radius-xl);
}

.dania-page .dania-craft figcaption {
  color: rgba(255, 253, 248, 0.78);
}

.dania-page .dania-craft__copy {
  grid-column: 3;
  min-width: 0;
}

.dania-page .dania-craft__copy > p:not(.eyebrow) {
  max-width: 44ch;
  font-size: var(--text-lg);
}

.dania-page .dania-principles {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.dania-page .dania-principles article {
  min-width: 0;
  border-top: 1px solid rgba(255, 253, 248, 0.3);
  padding-top: var(--space-4);
}

.dania-page .dania-principles h3,
.dania-page .dania-principles p {
  margin: 0;
}

.dania-page .dania-principles h3 {
  margin-bottom: var(--space-2);
  color: var(--color-apricot);
}

.dania-page .dania-principles p {
  max-width: 34ch;
}

.dania-page .dania-finale__intro {
  width: 41.6667%;
  min-width: 0;
}

.dania-page .dania-finale__intro p:not(.eyebrow) {
  max-width: 46ch;
  font-size: var(--text-lg);
}

.dania-page .dania-finale__grid {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 3.5fr) minmax(0, 3.5fr);
  align-items: end;
  gap: var(--space-6);
  margin-top: var(--space-12);
}

.dania-page .dania-finale__figure {
  grid-column: 1;
  min-width: 0;
  margin: 0 0 -4rem;
}

.dania-page .dania-finale__media {
  position: relative;
  min-height: 35rem;
  border-radius: var(--radius-xl) 0 var(--radius-xl) 0;
  box-shadow: var(--shadow-editorial);
}

.dania-page .dania-finale__panel {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  border-radius: var(--radius-sm);
  padding: var(--space-8);
}

.dania-page .dania-finale__panel--dessert {
  grid-column: 3;
  background: var(--color-warm-chalk);
}

.dania-page .dania-finale__panel--bar {
  grid-column: 4;
  background: var(--color-sage-green);
}

.dania-page .dania-finale__panel p,
.dania-page .dania-finale__panel h3 {
  margin: 0;
}

.dania-page .dania-finale__panel p:not(.eyebrow) {
  max-width: 32ch;
}

.dania-page .dania-evening__rule {
  margin: 0 0 var(--space-8);
}

.dania-page .dania-evening__statement {
  max-width: 17ch;
  margin-bottom: var(--space-12);
  color: var(--color-adriatic-teal);
  font-family: var(--font-heading);
  font-size: clamp(4.75rem, 7vw, 7rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 0.9;
}

.dania-page .dania-evening__grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 2fr) minmax(0, 5fr);
  align-items: start;
}

.dania-page .dania-evening__interiors {
  grid-column: 1;
  min-width: 0;
}

.dania-page .dania-evening__lounge {
  grid-column: 3;
  min-width: 0;
  border-radius: var(--radius-sm);
  background: rgba(244, 240, 232, 0.78);
  padding: var(--space-6);
}

.dania-page .dania-evening__interiors p {
  max-width: 45ch;
}

.dania-page .dania-evening__lounge p {
  max-width: 42ch;
}

.dania-page .dania-evening__interiors h2,
.dania-page .dania-evening__lounge h2 {
  font-size: var(--text-2xl);
}

.dania-page .dania-cta__panel {
  display: flex;
  width: min(100%, 42.5rem);
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
  margin-inline: auto;
}

.dania-page .dania-cta__accent {
  width: 3rem;
  height: 0.25rem;
  background: var(--color-apricot);
}

.dania-page .dania-cta__panel h2,
.dania-page .dania-cta__panel p {
  margin: 0;
}

.dania-page .dania-cta__panel > p:not(.dania-cta__note) {
  max-width: 48ch;
  font-size: var(--text-lg);
}

.dania-page .dania-cta__actions {
  justify-content: center;
}

.dania-page .dania-cta__note {
  max-width: 32ch;
  font-size: var(--text-sm);
}

@media (max-width: 68.74rem) {
  .dania-page .dania-hero__grid {
    grid-template-columns: minmax(0, 3fr) minmax(0, 5fr);
    gap: var(--space-8);
  }
  .dania-page .dania-hero__figure { grid-column: 2; }
  .dania-page .dania-hero__media { min-height: 30rem; }
  .dania-page .dania-language__intro,
  .dania-page .dania-finale__intro { width: 62.5%; }
  .dania-page .dania-pillars { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dania-page .dania-pillars > :last-child { grid-column: 1 / -1; }
  .dania-page .dania-overview__top { grid-template-columns: minmax(0, 5fr) minmax(0, 3fr); }
  .dania-page .dania-overview__note { grid-column: 2; }
  .dania-page .dania-sharing__grid { grid-template-columns: minmax(0, 3fr) minmax(0, 5fr); gap: var(--space-8); }
  .dania-page .dania-sharing__figure { grid-column: 2; }
  .dania-page .dania-sharing__media { min-height: 27rem; }
  .dania-page .dania-craft__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-8); }
  .dania-page .dania-craft__figure { grid-column: 1; }
  .dania-page .dania-craft__copy { grid-column: 2; }
  .dania-page .dania-craft__media { min-height: 25rem; }
  .dania-page .dania-finale__grid { grid-template-columns: minmax(0, 3fr) minmax(0, 2.5fr) minmax(0, 2.5fr); }
  .dania-page .dania-finale__figure { grid-column: 1; }
  .dania-page .dania-finale__panel--dessert { grid-column: 2; }
  .dania-page .dania-finale__panel--bar { grid-column: 3; }
  .dania-page .dania-finale__panel { padding: var(--space-6); }
  .dania-page .dania-evening__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-8); }
  .dania-page .dania-evening__lounge { grid-column: 2; }
}

@media (max-width: 59.99rem) {
  .dania-page .dania-hero__grid,
  .dania-page .dania-sharing__grid,
  .dania-page .dania-craft__grid,
  .dania-page .dania-finale__grid {
    grid-template-columns: 1fr;
  }
  .dania-page .dania-hero__copy,
  .dania-page .dania-hero__figure,
  .dania-page .dania-sharing__copy,
  .dania-page .dania-sharing__figure,
  .dania-page .dania-craft__figure,
  .dania-page .dania-craft__copy,
  .dania-page .dania-finale__figure,
  .dania-page .dania-finale__panel--dessert,
  .dania-page .dania-finale__panel--bar { grid-column: 1; }
  .dania-page .dania-hero__figure,
  .dania-page .dania-sharing__figure,
  .dania-page .dania-finale__figure { order: -1; margin-bottom: var(--space-8); }
  .dania-page .dania-craft__figure { order: -1; }
  .dania-page .dania-hero__media { min-height: 30rem; }
  .dania-page .dania-sharing__media { min-height: 25rem; }
  .dania-page .dania-craft__media { min-height: 25rem; }
  .dania-page .dania-finale__media { min-height: 31rem; }
  .dania-page .dania-finale__panel { min-height: auto; }
}

@media (max-width: 47.99rem) {
  .dania-page .dania-reveal { opacity: 1; transform: none; }
  .dania-page .dania-hero { padding-top: var(--space-12); }
  .dania-page .dania-hero__grid { width: 100%; gap: 0; }
  .dania-page .dania-hero__figure { width: 100%; margin: 0; }
  .dania-page .dania-hero__media { min-height: clamp(26.25rem, 62vh, 35rem); border-radius: 0; }
  .dania-page .dania-hero__figure figcaption { width: min(100% - 2rem, var(--container-max)); margin: var(--space-3) auto var(--space-8); }
  .dania-page .dania-hero__copy { width: min(100% - 2rem, var(--container-max)); margin-inline: auto; }
  .dania-page .dania-breadcrumbs { order: -1; }
  .dania-page .dania-hero h1 { max-width: 12ch; font-size: 2.625rem; line-height: 1.02; }
  .dania-page .dania-hero__lead { max-width: 34ch; }
  .dania-page .dania-hero__actions { align-items: stretch; }
  .dania-page .dania-hero__actions .button,
  .dania-page .dania-hero__actions .dania-text-link { width: 100%; min-height: 2.75rem; justify-content: center; }
  .dania-page .dania-language__intro,
  .dania-page .dania-finale__intro { width: 100%; }
  .dania-page .dania-language__intro p:not(.eyebrow),
  .dania-page .dania-finale__intro p:not(.eyebrow) { max-width: 36ch; }
  .dania-page .dania-pillars { grid-template-columns: 1fr; gap: var(--space-6); }
  .dania-page .dania-pillars > :last-child { grid-column: 1; }
  .dania-page .dania-pillar { padding: var(--space-6); }
  .dania-page .dania-overview__top { grid-template-columns: 1fr; gap: var(--space-6); }
  .dania-page .dania-overview__note { grid-column: 1; }
  .dania-page .dania-dish-list { grid-template-columns: 1fr; gap: var(--space-6); }
  .dania-page .dania-dish-item { grid-template-columns: 1fr; gap: var(--space-2); }
  .dania-page .dania-dish-item > span { font-size: var(--text-xs); }
  .dania-page .dania-sharing__grid,
  .dania-page .dania-craft__grid,
  .dania-page .dania-finale__grid { width: 100%; gap: 0; }
  .dania-page .dania-sharing__figure,
  .dania-page .dania-craft__figure,
  .dania-page .dania-finale__figure { width: 100%; }
  .dania-page .dania-sharing__media,
  .dania-page .dania-craft__media,
  .dania-page .dania-finale__media { border-radius: 0; }
  .dania-page .dania-sharing__media { min-height: 0; aspect-ratio: 3 / 2; }
  .dania-page .dania-craft__media { min-height: 0; aspect-ratio: 4 / 3; }
  .dania-page .dania-finale__media { min-height: clamp(27.5rem, 64vh, 37rem); }
  .dania-page .dania-sharing__figure figcaption,
  .dania-page .dania-craft__figure figcaption,
  .dania-page .dania-finale__figure figcaption { width: min(100% - 2rem, var(--container-max)); margin-inline: auto; }
  .dania-page .dania-sharing__copy,
  .dania-page .dania-craft__copy { width: min(100% - 2rem, var(--container-max)); margin-inline: auto; padding-top: var(--space-12); }
  .dania-page .dania-craft__copy { padding-bottom: var(--space-12); }
  .dania-page .dania-finale__panel { width: min(100% - 2rem, var(--container-max)); margin: var(--space-6) auto 0; padding: var(--space-6); }
  .dania-page .dania-evening__statement { max-width: 11ch; font-size: clamp(2.75rem, 12vw, 3.25rem); }
  .dania-page .dania-evening__grid { grid-template-columns: 1fr; gap: var(--space-8); }
  .dania-page .dania-evening__interiors,
  .dania-page .dania-evening__lounge { grid-column: 1; }
  .dania-page .dania-evening__interiors p,
  .dania-page .dania-evening__lounge p { max-width: 34ch; }
  .dania-page .dania-cta__panel { width: 100%; gap: var(--space-6); }
  .dania-page .dania-cta__panel > p:not(.dania-cta__note) { max-width: 33ch; }
  .dania-page .dania-cta__actions { width: 100%; align-items: stretch; }
  .dania-page .dania-cta__actions .button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .dania-page .dania-reveal { opacity: 1; transform: none; transition: none; }
  .dania-page .dania-hero__media::after,
  .dania-page .dania-sharing__media::after,
  .dania-page .dania-finale__media::after { transition: none; }
}
