/* DreamCode / Legend Story & Direction — all selectors scoped to this widget. */
.dc-legend-story-direction {
  --dc-sd-ink:#2e1e0f;
  --dc-sd-gap:24px;
  --dc-sd-photo-gap:24px;
  --dc-sd-duration:320ms;
  --dc-sd-lift:6px;
  background:#f2e5d4;
  color:var(--dc-sd-ink);
  isolation:isolate;
  width:100%;
  min-width:0;
}
.dc-legend-story-direction, .dc-legend-story-direction * { box-sizing:border-box; }
.dc-legend-story-direction :is(h1,h2,h3,p) { margin:0; padding:0; }
.dc-legend-story-direction :is(.dc-sd__heading,.dc-sd__paragraph,.dc-sd__cta-wrap,.dc-sd__content,.dc-sd__gallery) { min-width:0; max-width:100%; }
.dc-legend-story-direction :is(.dc-sd__heading-text,.dc-sd__paragraph-text,.dc-sd__cta-label) { overflow-wrap:anywhere; word-break:normal; }
.dc-legend-story-direction a { text-decoration:none; }
.dc-legend-story-direction a:focus-visible, .dc-legend-story-direction button:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.dc-sd__inner { max-width:1440px; margin-inline:auto; min-height:668px; padding:0 80px; position:relative; }
.dc-sd__content { position:absolute; top:0; left:80px; width:519.333px; }
.dc-sd__heading { position:absolute; top:100px; left:0; width:100%; font-family:Georgia,'Times New Roman',serif; font-size:43px; font-weight:400; letter-spacing:-.016em; line-height:1.25; color:var(--dc-sd-ink); }
.dc-sd__heading-text { display:block; max-width:100%; }
.dc-sd__paragraph { position:absolute; left:0; width:100%; color:var(--dc-sd-ink); font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.75; font-weight:400; }
.dc-sd__paragraph--intro { top:240px; }
.dc-sd__paragraph--detail { top:383px; }
.dc-sd__paragraph-text > :is(p,div) + :is(p,div) { margin-top:.7em; }
.dc-sd__cta-wrap { position:absolute; top:515px; left:0; margin:0; }
.dc-legend-story-direction .dc-sd__cta, .dc-legend-story-direction a.dc-sd__cta, .dc-legend-story-direction span.dc-sd__cta {
  display:inline-flex; align-items:center; justify-content:flex-start;
  gap:9px; min-height:36px; max-width:100%; text-decoration:none;
  background:transparent; border:0; border-radius:0; box-shadow:none;
  color:var(--dc-sd-ink); font:500 15px/1.45 Arial,Helvetica,sans-serif;
  padding:0; margin:0; overflow-wrap:anywhere;
  transition: color 180ms ease, transform 180ms ease;
}
.dc-legend-story-direction .dc-sd__cta-label { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.dc-legend-story-direction a.dc-sd__cta:hover, .dc-legend-story-direction a.dc-sd__cta:focus-visible { transform:translateX(3px); color:#8d5c36; background:transparent; }
.dc-legend-story-direction a.dc-sd__cta:active { transform:translateX(1px); }
.dc-sd__cta-icon { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:16px; height:16px; line-height:1; color:inherit; }
.dc-sd__cta-icon svg,.dc-sd__cta-icon img { display:block; width:100%; height:100%; object-fit:contain; color:inherit; }
.dc-sd__cta-icon--mask { background:currentColor; -webkit-mask:var(--dc-sd-icon) center/contain no-repeat; mask:var(--dc-sd-icon) center/contain no-repeat; }
.dc-sd__cta-icon--mask img { display:none; }
/* Trusted vector glyph paths (not a screenshot background). HTML text stays accessible and editable. */
@media (min-width:1440px) {
  .dc-sd--vector > .dc-sd__heading-text,
  .dc-sd--vector > .dc-sd__paragraph-text { position:absolute; width:1px; height:1px; overflow:hidden; white-space:nowrap; clip-path:inset(50%); }
  .dc-sd__vector { display:block; background:currentColor; -webkit-mask-size:100% 100%; mask-size:100% 100%; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; }
  .dc-sd__vector--heading { width:min(520px,100%); height:106px; -webkit-mask-image:url('../vectors/heading.svg'); mask-image:url('../vectors/heading.svg'); }
  .dc-sd__vector--intro { width:min(520px,100%); height:111px; -webkit-mask-image:url('../vectors/intro.svg'); mask-image:url('../vectors/intro.svg'); }
  .dc-sd__vector--detail { width:min(520px,100%); height:90px; -webkit-mask-image:url('../vectors/detail.svg'); mask-image:url('../vectors/detail.svg'); }
  .dc-sd--vector > .dc-sd__paragraph-text { margin:0; }
}
.dc-sd__gallery { position:absolute; left:623.333px; top:120.963px; width:736.667px; height:402.074px; }
.dc-sd__image-link { display:block; position:absolute; width:229.556px; color:#fff; background:#eadac7; cursor:zoom-in; text-decoration:none; text-align:left; overflow:hidden; border-radius:0; outline-offset:4px; transition:transform var(--dc-sd-duration) ease, box-shadow var(--dc-sd-duration) ease; }
.dc-sd__image-link--left { top:64px; left:0; height:286.944px; }
.dc-sd__image-link--center { top:0; left:253.556px; height:382.593px; }
.dc-sd__image-link--right { top:96px; left:507.111px; height:306.074px; }
.dc-sd__image-link picture, .dc-sd__image-link img { display:block; width:100%; height:100%; }
.dc-sd__image-link img { object-fit:cover; object-position:center; transition:transform calc(var(--dc-sd-duration) * 1.3) ease, opacity var(--dc-sd-duration) ease; }
.dc-sd__image-link::after { content:""; position:absolute; inset:0; pointer-events:none; background:#2e1e0f; opacity:0; transition:opacity var(--dc-sd-duration) ease; }
.dc-sd__image-link .dc-sd__zoom { position:absolute; z-index:2; bottom:12px; right:12px; display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%; color:#2e1e0f; background:rgba(242,229,212,.94); opacity:0; transform:translateY(7px); pointer-events:none; transition:opacity 200ms ease,transform 200ms ease; }
.dc-sd__zoom svg { display:block; width:20px; height:20px; }
.dc-legend-story-direction[data-dc-hover="yes"] .dc-sd__image-link:hover,
.dc-legend-story-direction[data-dc-hover="yes"] .dc-sd__image-link:focus-visible { transform:translateY(calc(-1 * var(--dc-sd-lift))); z-index:2; }
.dc-legend-story-direction[data-dc-hover="yes"] .dc-sd__image-link:hover img,
.dc-legend-story-direction[data-dc-hover="yes"] .dc-sd__image-link:focus-visible img { transform:scale(1.045); }
.dc-legend-story-direction[data-dc-hover="yes"] .dc-sd__image-link:is(:hover,:focus-visible)::after { opacity:.095; }
.dc-legend-story-direction .dc-sd__image-link:is(:hover,:focus-visible) .dc-sd__zoom { opacity:1; transform:translateY(0); }
.dc-legend-story-direction[data-dc-shadow="yes"] .dc-sd__image-link:is(:hover,:focus-visible) { box-shadow:0 16px 34px rgba(46,30,15,.19); }
.dc-sd__image-link.is-switching img { animation:dc-sd-fade var(--dc-sd-duration) ease both; }
@keyframes dc-sd-fade { from {opacity:.55;} to {opacity:1;} }
.dc-sd__numbers { position:absolute; z-index:3; top:calc(100% + 15px); left:50%; transform:translateX(-50%); display:none; align-items:center; justify-content:center; gap:6px; max-width:100%; padding:0 0 8px; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:thin; }
.dc-sd__gallery.is-ready .dc-sd__numbers { display:flex; }
.dc-legend-story-direction .dc-sd__number, .elementor .dc-legend-story-direction button.dc-sd__number {
  appearance:none; -webkit-appearance:none; display:inline-flex; align-items:center; justify-content:center;
  flex:0 0 auto; min-width:44px; min-height:44px; max-width:96px;
  border:0; border-radius:5px; box-shadow:none; padding:6px 9px; margin:0;
  text-align:center; text-decoration:none; background:#e7d6c1; color:#765f4b;
  font:500 12px/1.2 Arial,Helvetica,sans-serif; letter-spacing:.02em;
  cursor:pointer; transition:background-color 160ms ease,color 160ms ease,transform 160ms ease;
}
.dc-legend-story-direction .dc-sd__number:is(:hover,:focus-visible),
.elementor .dc-legend-story-direction button.dc-sd__number:is(:hover,:focus-visible) { color:#2e1e0f; background:#d5ba97; transform:translateY(-1px); }
.dc-legend-story-direction .dc-sd__number[aria-pressed="true"],
.elementor .dc-legend-story-direction button.dc-sd__number[aria-pressed="true"] { color:#f2e5d4; background:#2e1e0f; }
.dc-legend-story-direction .dc-sd__number:active { transform:translateY(0); }
/* When Elementor changes the reference content, keep natural card height (no Desktop clipping). */
@media (min-width:1440px) {
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__inner {
    min-height:0; padding-top:72px; padding-bottom:90px; display:grid;
    grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);
    gap:var(--dc-sd-gap); align-items:center;
  }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__content,
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__gallery {
    position:relative; inset:auto; width:auto;
  }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__heading,
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__paragraph,
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__cta-wrap {
    position:static; inset:auto;
  }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__heading { margin-bottom:32px; }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__paragraph { margin:0; }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__paragraph+.dc-sd__paragraph { margin-top:30px; }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__cta-wrap { margin-top:36px; }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__gallery {
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--dc-sd-photo-gap);
    height:auto; align-items:center; padding-bottom:58px;
  }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__image-link { position:relative; inset:auto; width:100%; height:auto; }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__image-link--left { aspect-ratio:229.556/286.944; }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__image-link--center { aspect-ratio:229.556/382.593; }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__image-link--right { aspect-ratio:229.556/306.074; }
  .dc-legend-story-direction[data-dc-flow="yes"] .dc-sd__numbers { top:auto; bottom:0; }
}

@media (max-width:1439px) {
  .dc-sd__inner { min-height:0; padding:64px 40px 82px; display:grid; grid-template-columns:minmax(0, .85fr) minmax(0,1.15fr); gap:var(--dc-sd-gap); align-items:center; }
  .dc-sd__content { position:relative; inset:auto; width:auto; align-self:center; }
  .dc-sd__heading { position:static; font-size:clamp(31px,3vw,43px); line-height:1.18; margin:0 0 32px; }
  .dc-sd__vector { display:none; }
  .dc-sd__paragraph { position:static; margin:0; width:auto; font-size:15px; line-height:1.7; }
  .dc-sd__paragraph+.dc-sd__paragraph { margin-top:30px; }
  .dc-sd__cta-wrap { position:static; margin-top:36px; }
  .dc-sd__gallery { position:relative; inset:auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--dc-sd-photo-gap); width:100%; height:auto; align-items:center; padding-bottom:58px; }
  .dc-sd__image-link { position:relative; inset:auto; width:100%; height:auto; min-width:0; }
  .dc-sd__image-link--left { aspect-ratio:229.556/286.944; }
  .dc-sd__image-link--center { aspect-ratio:229.556/382.593; }
  .dc-sd__image-link--right { aspect-ratio:229.556/306.074; }
  .dc-sd__numbers { top:auto; bottom:0; }
  .dc-sd__heading-text,.dc-sd__paragraph-text { display:block; position:static; width:auto; height:auto; overflow:visible; clip-path:none; white-space:normal; }
}
@media (max-width:1024px) {
  .dc-sd__inner { grid-template-columns:minmax(0,1fr); padding:64px 38px 74px; gap:38px; }
  .dc-sd__heading { font-size:clamp(35px,5vw,50px); max-width:740px; margin-bottom:26px; }
  .dc-sd__paragraph { max-width:790px; }
  .dc-sd__gallery { max-width:890px; }
}
@media (max-width:767px) {
  .dc-sd__inner { padding:48px 20px 56px; gap:30px; }
  .dc-sd__heading { font-size:clamp(32px,8vw,44px); line-height:1.15; letter-spacing:-.02em; margin-bottom:24px; }
  .dc-sd__paragraph { font-size:15px; line-height:1.7; }
  .dc-sd__paragraph+.dc-sd__paragraph { margin-top:20px; }
  .dc-sd__cta-wrap { margin-top:28px; }
  .dc-sd__gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding-bottom:60px; max-width:620px; }
  .dc-sd__image-link--center { order:-1; grid-column:1 / -1; aspect-ratio:16/10; }
  .dc-sd__image-link--left,.dc-sd__image-link--right { aspect-ratio:5/4; }
  .dc-sd__zoom { opacity:1 !important; transform:none !important; width:34px !important; height:34px !important; }
  .dc-sd__numbers { bottom:0; }
}
@media (max-width:375px) {
  .dc-sd__inner { padding:42px 16px 48px; }
  .dc-sd__heading { font-size:32px; }
  .dc-sd__gallery { gap:8px; }
}
@media (hover:none),(pointer:coarse) {
  .dc-sd__image-link .dc-sd__zoom { opacity:1; transform:none; }
}
@media (prefers-reduced-motion:reduce) {
  .dc-legend-story-direction *, .dc-legend-story-direction *::before, .dc-legend-story-direction *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  .dc-sd__image-link:is(:hover,:focus-visible), .dc-sd__image-link img { transform:none !important; }
}
.dc-legend-story-direction div.dc-sd__image-link { cursor:default; }
.dc-legend-story-direction div.dc-sd__image-link .dc-sd__zoom { display:none; }
