
.media-page .breadcrumbs { margin:0; padding:14px 0; }
.media-page .breadcrumbs a { display:inline-flex; align-items:center; min-height:44px; }
.media-page .media-intro { background:linear-gradient(135deg,var(--paper-2),#fff); padding:38px 0 42px; border-bottom:1px solid var(--line); }
.media-page .media-intro h1 { font-size:clamp(25px,5vw,40px); }
.media-page .media-lead { font-size:15px; text-align:left; }
.media-page .media-lead a,
.media-page .media-note a,
.media-page .media-context a { color:var(--key-d); text-decoration:underline; text-underline-offset:3px; }
.media-jump { display:flex; flex-wrap:wrap; gap:8px; max-width:760px; margin:22px auto 0; }
.media-jump a { display:inline-flex; align-items:center; min-height:44px; padding:8px 13px; background:#fff; border:1px solid var(--line); border-radius:5px; font-size:13px; font-weight:700; }
.media-page :is(section,article,[id]) { scroll-margin-top:96px; }
.media-page #confirmed-coverage { padding:42px 0; }
.media-page .media-links { grid-template-columns:minmax(0,1fr); gap:22px; margin-top:24px; }
.media-page .media-link { display:flex; flex-direction:column; min-width:0; padding:0; overflow:hidden; border-radius:14px; background:#fff; box-shadow:0 4px 18px rgba(16,41,60,.06); }
.media-page .media-link:hover { border-color:var(--line); }
.media-card-body { display:flex; flex-direction:column; align-items:flex-start; flex:1; min-width:0; padding:22px; }
.media-thumbnail { flex:none; width:100%; aspect-ratio:16/9; background:var(--paper-2); border-bottom:1px solid var(--line); }
.media-thumbnail img { display:block; width:100%; height:100%; aspect-ratio:16/9; object-fit:contain; }
.media-kind { display:inline-block; margin-bottom:12px; padding:4px 9px; border-radius:4px; background:var(--key-t); color:var(--key-d); font-size:12px; font-weight:700; }
.media-page .media-link .outlet { display:block; margin:0 0 4px; font-size:15px; letter-spacing:.04em; }
.media-page .media-link .date { display:block; margin:0 0 12px; color:var(--ink-2); font-size:13px; }
.media-page .media-link .ttl { font-size:17px; line-height:1.7; overflow-wrap:anywhere; }
.media-page .media-link .desc { font-size:14px; line-height:1.9; }
.media-art-note { max-width:760px; margin:10px auto 0; color:var(--ink-2); font-size:12px; line-height:1.8; text-align:left; }
.media-page .media-featured { border-color:#bbd3de; background:#f3f8fb; }
.media-featured-photo { margin:0; background:#e8f0f4; align-self:start; }
.media-featured-photo img { display:block; width:100%; height:auto; object-fit:contain; }
.media-featured-photo figcaption { padding:10px 14px; color:var(--ink-2); font-size:12px; line-height:1.7; }
.media-page .media-featured .ttl { font-size:clamp(18px,2.2vw,23px); line-height:1.65; }
.media-page .media-featured .media-card-body { justify-content:center; }
.media-kind-new { background:var(--key-d); color:#fff; }
.media-page .media-link-text { border-top:3px solid #bdd2df; }
.media-page .media-context { margin:12px 0; color:var(--ink-2); font-size:13px; line-height:1.85; }
.media-page .media-context a { display:inline-flex; align-items:center; min-height:44px; }
.media-page .media-link .open { display:inline-flex; align-items:center; gap:10px; min-height:44px; margin-top:auto; padding:8px 0; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.media-page .media-featured .open { margin-top:10px; padding:10px 16px; border-radius:7px; background:var(--key-d); color:#fff; text-decoration:none; }
.media-page .media-featured .open:hover { background:var(--dark); }
.media-page #pending-coverage { background:var(--paper-2); }
.media-page #pending-coverage .media-kind { background:var(--line); color:var(--ink-2); }
.media-services { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; max-width:1060px; margin:24px auto 0; }
.media-service { display:block; min-width:0; padding:24px; border:1px solid var(--line); border-radius:5px; background:var(--paper-2); }
.media-service > span { color:var(--ink-2); font-size:13px; }
.media-service h3 { margin:8px 0 12px; font-size:19px; }
.media-service p { margin:0 0 18px; color:var(--ink-2); font-size:14px; line-height:1.85; }
.media-service b { color:var(--key-d); font-size:14px; }
.media-service:hover { border-color:var(--key); }
.media-page a:focus-visible { outline:3px solid var(--key); outline-offset:4px; }
@media(min-width:760px) {
  .media-page .media-intro { padding:50px 0; }
  .media-page .media-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .media-page .media-featured { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); grid-column:1/-1; align-items:center; }
  .media-featured-photo { align-self:center; }
  .media-page .media-featured .media-card-body { padding:26px; }
  .media-services { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(min-width:1040px) {
  .media-page .media-links { grid-template-columns:repeat(6,minmax(0,1fr)); }
  .media-page .media-link-tv { grid-column:span 3; }
  
  .media-page .media-link-text { grid-column:span 3; }
  .media-page .media-link-text .ttl { font-size:16px; }
}
@media(max-width:359px) {
  .media-card-body { padding:18px; }
  .media-page .media-featured .ttl { font-size:18px; }
}
