/* /contact/ decorative layers (markup from _build/decor/contact.py). Everything is aria-hidden,
   pointer-events:none and sits behind content inside its own section. */
.dzc-layer, .dzc-layer * { pointer-events: none; }
.dzc-layer { position: absolute; inset: 0; z-index: -1; }
.dzc { position: absolute; display: block; overflow: hidden; }

/* ---------- intro: a little location map in each margin ---------- */
.page-intro { overflow: clip; }
.dzc-map { top: 50%; width: min(240px, calc(50vw - 470px)); height: auto; aspect-ratio: 240 / 300; transform: translateY(-50%); display: none; }
.dzc-map--l { right: calc(50% + 450px); }
.dzc-map--r { left: calc(50% + 450px); }
.dzc-mini { left: 50%; bottom: 4px; width: 220px; height: auto; aspect-ratio: 280 / 80; transform: translateX(-50%); opacity: .9; }
.page-intro:has(.dzc-mini) { padding-bottom: calc(clamp(10px, 2vw, 24px) + 74px); }
@media (min-width: 1240px) {
  .dzc-map { display: block; }
  .dzc-mini { display: none; }
  .page-intro:has(.dzc-mini) { padding-bottom: clamp(10px, 2vw, 24px); }
}

/* ---------- booking band: ridges in, stars above, hills out ---------- */
#rezervare {
  --dzc-top: clamp(62px, 9vw, 130px);
  --dzc-bot: clamp(62px, 9vw, 130px);
  padding-top: calc(var(--dzc-top) + clamp(44px, 5vw, 80px));
  padding-bottom: calc(var(--dzc-bot) + clamp(48px, 6vw, 100px));
}
.dzc-ridge { left: 0; width: 100%; }
.dzc-ridge--top { top: -1px; height: calc(var(--dzc-top) + 1px); }
.dzc-ridge--bot { bottom: -1px; height: calc(var(--dzc-bot) + 1px); }
.dzc-shade { position: absolute; left: 0; right: 0; }
.dzc-shade--top { top: calc(var(--dzc-top) - 4px); height: clamp(110px, 14vw, 220px); background: linear-gradient(#13201a, rgba(19, 32, 26, 0)); }
.dzc-shade--bot { bottom: 0; height: calc(var(--dzc-bot) + clamp(90px, 10vw, 160px)); background: linear-gradient(to top, #13201a calc(var(--dzc-bot) * .55), rgba(19, 32, 26, 0)); }
.dzc-stars--band { left: 0; top: var(--dzc-top); width: 100%; height: clamp(40px, 5vw, 80px); }
.dzc-stars--side { top: calc(var(--dzc-top) + clamp(40px, 5vw, 80px)); bottom: var(--dzc-bot); width: calc(50% - 612px); height: auto; display: none; }
.dzc-stars--l { left: 0; }
.dzc-stars--r { right: 0; }
@media (min-width: 1400px) { .dzc-stars--side { display: block; } }
.dzc-mist { position: absolute; bottom: calc(var(--dzc-bot) * .55); width: 70%; height: 90px; border-radius: 50%;
  background: radial-gradient(closest-side, rgba(244, 237, 224, .09), rgba(244, 237, 224, 0)); }
.dzc-mist--a { left: -12%; }
.dzc-mist--b { right: -14%; bottom: calc(var(--dzc-bot) * .3); opacity: .8; }

/* ---------- gallery: topo lines + a postage stamp in the empty corner ---------- */
main > .pmosaic--light { isolation: isolate; overflow: hidden; }
.dzc-topo { top: 0; right: 0; width: min(520px, calc(50% - 170px)); height: auto; aspect-ratio: 480 / 260; }
.dzc-stamp { top: calc(clamp(80px, 11vw, 150px) - 20px); right: max(var(--gutter), calc(50% - 640px + 56px)); width: clamp(240px, 21vw, 310px); height: auto; aspect-ratio: 360 / 300; display: none; filter: drop-shadow(0 14px 18px rgba(19, 32, 26, .10)); }
.dzc-sprig { top: clamp(14px, 3vw, 30px); right: var(--gutter); width: clamp(110px, 16vw, 150px); height: auto; aspect-ratio: 200 / 120; }
@media (min-width: 1100px) {
  .dzc-stamp { display: block; }
  .dzc-sprig { display: none; }
}
@media (max-width: 1099px) { .dzc-topo { width: auto; height: clamp(76px, 10.5vw, 120px); } }
@media (max-width: 640px) { .dzc-topo { opacity: .7; } }

/* ---------- motion (optional, gentle) ---------- */
@media (prefers-reduced-motion: no-preference) {
  .dzc-tw { animation: dzc-tw 5s ease-in-out infinite; animation-delay: calc(var(--d, 0s) * -1); }
  .dzc-mist--a { animation: dzc-drift 38s ease-in-out infinite alternate; }
  .dzc-mist--b { animation: dzc-drift 52s ease-in-out infinite alternate-reverse; }
  .dzc-road { animation: dzc-road 6s linear infinite; }
}
@keyframes dzc-tw { 0%, 100% { opacity: .9; } 50% { opacity: .25; } }
@keyframes dzc-drift { from { transform: translateX(-4%); } to { transform: translateX(8%); } }
@keyframes dzc-road { to { stroke-dashoffset: -22; } }
