/* Dla mediow — a calm, editable press room built from native blocks. */
.media-page { overflow: hidden; }
.media-page__content { width: 100%; max-width: none !important; margin: 0; }
.media-page__content > * { margin-block: 0; }
.media-inner { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.media-hero { position: relative; padding: clamp(4rem, 9vw, 7.5rem) 0 clamp(3.5rem, 7vw, 6rem); background: linear-gradient(125deg, #f1fffd 0%, #f8f5fb 52%, #eee8ff 100%); }
.media-hero::after { content: ''; position: absolute; right: -100px; bottom: -190px; width: 430px; height: 430px; border-radius: 50%; background: linear-gradient(145deg, rgba(0,209,178,.19), rgba(109,40,217,.18)); }
.media-hero .media-inner { position: relative; z-index: 1; }
.media-eyebrow { margin: 0 0 .9rem; color: #08766a; font-size: .76rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.media-hero h1 { max-width: 820px; margin: 0 0 1.1rem; font-size: clamp(2.5rem, 6vw, 5.2rem); line-height: .98; letter-spacing: -.045em; }
.media-hero__lead { max-width: 720px; margin: 0; color: var(--color-ink-soft); font-size: clamp(1.05rem, 2vw, 1.35rem); line-height: 1.65; }
.media-section { padding: clamp(3.5rem, 7vw, 6rem) 0; }
.media-section--soft { background: #faf8fc; }
.media-intro-grid { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(0, 1.35fr); gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.media-intro-grid > *, .media-downloads > * { margin-block: 0 !important; }
.media-contact { overflow: hidden; border: 1px solid var(--color-line); border-radius: 30px; background: #fff; box-shadow: 0 18px 50px rgba(28,21,47,.1); }
.media-contact figure { margin: 0; aspect-ratio: 1 / 1; overflow: hidden; background: #f2eef6; }
.media-contact figure img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 26%; }
.media-contact__body { padding: clamp(1.35rem, 3vw, 2rem); }
.media-contact__body h2 { margin: .35rem 0 .45rem; font-size: clamp(1.45rem, 2.5vw, 2rem); }
.media-contact__body p { margin: 0; color: var(--color-ink-soft); line-height: 1.6; }
.media-page__content .media-contact__mail { display: inline-flex; align-items: center; gap: .5rem; margin-top: 1rem; color: #5e2c91; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.media-contact__mail:hover { text-decoration: underline; text-underline-offset: .25em; }
.media-about h2, .media-download-heading h2, .media-social-heading h2 { margin: .3rem 0 1rem; font-size: clamp(2rem, 4vw, 3.4rem); letter-spacing: -.035em; }
.media-about p:not(.media-eyebrow), .media-download-heading p:not(.media-eyebrow), .media-social-heading p:not(.media-eyebrow) { max-width: 720px; color: var(--color-ink-soft); font-size: 1.05rem; line-height: 1.75; }
.media-about .wp-block-buttons { margin-top: 1.5rem; }
.media-download-heading { margin-bottom: 2rem; }
.media-downloads { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.media-download-card { margin: 0 !important; }
.media-download-card a { position: relative; display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 1rem; min-height: 112px; padding: 1.25rem; border: 1px solid #e0d8ea; border-radius: 22px; background: #fff; color: var(--color-ink); text-decoration: none; box-shadow: 0 10px 28px rgba(38,25,64,.06); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.media-download-card a::before { content: '↓'; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 15px; background: var(--grad-brand-soft); color: #5e2c91; font-size: 1.3rem; font-weight: 700; }
.media-download-card strong { display: block; font-size: 1rem; line-height: 1.3; }
.media-download-card small { display: block; margin-top: .25rem; color: var(--color-ink-soft); font-size: .78rem; }
.media-download-card a > span:last-child { color: #6d28d9; font-size: 1.15rem; }
.media-download-card a:hover { transform: translateY(-3px); border-color: #bca5d8; box-shadow: 0 16px 34px rgba(38,25,64,.11); }
.media-download-card a:focus-visible, .media-social:focus-visible, .media-contact__mail:focus-visible { outline: 3px solid var(--c-purple); outline-offset: 4px; }
.media-social-heading { margin-bottom: 2rem; }
.media-socials { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.media-page__content .media-social { display: grid; grid-template-columns: 50px minmax(0, 1fr) auto; align-items: center; gap: 1rem; min-height: 116px; padding: 1.25rem; border: 1px solid var(--color-line); border-radius: 22px; background: #fff; color: var(--color-ink); text-decoration: none; transition: transform .2s ease, border-color .2s ease; }
.media-social:hover { transform: translateY(-3px); border-color: #bca5d8; }
.media-social__icon { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 16px; background: var(--grad-brand); color: #fff; }
.media-social strong, .media-social small { display: block; }
.media-social strong { font-size: 1.05rem; }
.media-social small { margin-top: .25rem; color: var(--color-ink-soft); font-size: .8rem; line-height: 1.45; }
.media-social__arrow { color: #6d28d9; font-size: 1.2rem; }
.media-final { padding: clamp(3rem, 6vw, 5rem) 0; }
.media-final__box { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: clamp(1.7rem, 4vw, 3.2rem); border-radius: 30px; background: #101321; color: #fff; }
.media-final h2 { max-width: 680px; margin: 0; color: #fff; font-size: clamp(1.7rem, 3.5vw, 2.8rem); }
.media-page__content .wp-block-button__link { color: #fff; text-decoration: none; }
.media-page__content .media-about .is-style-outline .wp-block-button__link { border: 1.5px solid #5e2c91; background: transparent; color: #5e2c91; }
.media-page__content .media-final .wp-block-button__link { white-space: nowrap; border-radius: 999px; background: var(--grad-brand); color: #fff; font-weight: 700; text-decoration: none; }
@media (max-width: 760px) {
  .media-inner { width: min(100% - 32px, 1180px); }
  .media-intro-grid { grid-template-columns: 1fr; }
  .media-contact { max-width: 430px; }
  .media-downloads, .media-socials { grid-template-columns: 1fr; }
  .media-final__box { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 420px) {
  .media-download-card a, .media-social { grid-template-columns: 44px minmax(0, 1fr) auto; gap: .75rem; padding: 1rem; }
  .media-download-card a::before, .media-social__icon { width: 44px; height: 44px; border-radius: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .media-download-card a, .media-social { transition: none; }
}
