.dhf-weekend-entry { background: #fbf1dd; padding: 64px 24px; color: #173b52; }
.dhf-weekend-entry__inner { max-width: 1120px; margin: auto; display: grid; grid-template-columns: 1.2fr .7fr; gap: 56px; align-items: center; }
.dhf-weekend-entry__brand { color: #2f756f; font-weight: 800; margin: 0 0 12px; }
.dhf-weekend-entry h2 { margin: 0 0 16px; font-size: clamp(36px, 5vw, 60px); line-height: 1.08; font-weight: 800; }
.dhf-weekend-entry p { line-height: 1.65; }
.dhf-weekend-entry__slogan { font-weight: 700; margin: 16px 0 24px; }
.dhf-weekend-entry__button { display: inline-block; border-radius: 12px; background: #2f756f; color: white; padding: 16px 24px; font-weight: 700; text-decoration: none; }
.dhf-weekend-entry__button:hover { background: #255e59; }
.dhf-weekend-entry__button:focus-visible { outline: 3px solid #173b52; outline-offset: 4px; }
.dhf-weekend-entry__share { display: block; min-height: 44px; margin-top: 12px; padding: 8px 0; border: 0; background: transparent; color: #2f756f; font: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.dhf-weekend-entry__share:focus-visible { outline: 3px solid #173b52; outline-offset: 4px; }
.dhf-weekend-entry__share:disabled { opacity: .55; cursor: default; }
.dhf-weekend-entry__share-status { margin: 0 0 8px; color: #2f756f; font-size: 14px; }
.dhf-weekend-entry__share-fallback { width: 100%; max-width: 440px; padding: 12px; border: 1px solid #2f756f; border-radius: 8px; background: #fffdf7; color: #173b52; font: inherit; }
.dhf-weekend-entry img { display: block; width: 100%; max-width: 330px; height: auto; justify-self: center; border-radius: 22px; box-shadow: 0 18px 40px #173b521a; }
.dhf-weekend-entry [hidden] { display: none !important; }
@media (max-width: 720px) {
  .dhf-weekend-entry { padding: 44px 20px; }
  .dhf-weekend-entry__inner { grid-template-columns: 1fr; gap: 28px; }
  .dhf-weekend-entry img { max-width: 280px; }
}
