.award-page { background: #f5f5f3; color: #252525; }
.award-shell { width: min(1160px, calc(100% - 64px)); margin: 0 auto; padding-bottom: 100px; }
.award-intro { padding: 64px 0 54px; }
.award-intro__eyebrow { color: #a72335; font: 700 1.3rem/1.5 Arial, sans-serif; letter-spacing: .16em; }
.award-intro h1 { margin-top: 16px; font-size: clamp(3.2rem, 4vw, 5.4rem); font-weight: 700; line-height: 1.4; }
.award-intro__lead { margin-top: 28px; font-size: 2.2rem; font-weight: 700; line-height: 1.7; }
.award-intro__text { margin-top: 16px; font-size: 1.6rem; line-height: 2; }
.award-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }
.award-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e2e2df; border-radius: 12px; background: #fff; }
.award-card__heading { flex: 1; padding: 28px; }
.award-card__contest { font-size: 1.4rem; line-height: 1.7; overflow-wrap: anywhere; }
.award-card__prize { margin-top: 14px; padding-left: 12px; border-left: 3px solid #a72335; color: #a72335; font-size: 2.6rem; font-weight: 700; line-height: 1.5; overflow-wrap: anywhere; }
.award-card h2 { margin-top: 14px; font-size: 1.5rem; font-weight: 400; line-height: 1.6; overflow-wrap: anywhere; }
.award-card__video { aspect-ratio: 16 / 9; background: #141414; }
.award-card__video iframe { display: block; width: 100%; height: 100%; border: 0; }
.award-card__unavailable, .award-empty { padding: 32px; background: #fff; font-size: 1.6rem; line-height: 1.8; }
@media (max-width: 768px) {
 .award-shell { width: calc(100% - 40px); padding-bottom: 60px; }
 .award-intro { padding: 36px 0; }
 .award-intro__lead { font-size: 1.8rem; }
 .award-intro__text { font-size: 1.4rem; }
 .award-grid { grid-template-columns: 1fr; gap: 24px; }
 .award-card__heading { padding: 24px 20px; }
 .award-card__prize { font-size: 2.2rem; }
 .award-card h2 { font-size: 1.4rem; }
}

/* 全受賞作品のサムネイルを使った全幅ビジュアル */
.award-intro--hero { position: relative; isolation: isolate; display: grid; align-items: center; width: 100%; min-height: clamp(440px, 43vw, 680px); padding: 72px 0; overflow: hidden; background: #14151b; color: #fff; }
.award-intro__image { position: absolute; inset: 0; z-index: -2; display: block; width: 100%; height: 100%; object-fit: cover; }
.award-intro--hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(8,12,22,.86), rgba(8,12,22,.52) 55%, rgba(8,12,22,.22)); }
.award-intro__content { width: min(1160px, calc(100% - 64px)); margin: 0 auto; }
.award-intro--hero .award-intro__eyebrow { color: #fff; }
.award-intro--hero h1 { color: #fff; text-shadow: 0 2px 18px #0006; }
.award-intro--hero .award-intro__text { max-width: 640px; }
.award-page .award-shell > .breadcrumbs { padding-top: 24px; padding-bottom: 32px; }
@media (max-width: 768px) {
 .award-intro--hero { min-height: 460px; padding: 56px 0; }
 .award-intro__content { width: calc(100% - 40px); }
 .award-intro__image { object-position: center; }
 .award-intro--hero::before { background: rgba(8,12,22,.64); }
 .award-intro--hero .award-intro__text br { display: none; }
}
.award-page .article-under { width: 100%; max-width: none; margin: 10px 0 0; }
@media (max-width: 768px) {
 .award-page .article-under { margin-top: 10px; }
}

.award-shell--breadcrumbs { padding-bottom: 0; }
.award-intro--hero + .award-shell { padding-top: 40px; }
@media (max-width: 768px) {
 .award-intro--hero + .award-shell { padding-top: 28px; }
}
