.upcoming-techne { padding: 104px 0; background: var(--cream); }
.banner-heading { display: flex; align-items: end; justify-content: space-between; margin-bottom: 34px; }
.banner-heading h2 { margin: 0; font-size: clamp(42px, 5vw, 71px); line-height: .9; letter-spacing: -.065em; }.banner-heading h2 span { color: #0b9561; }
.techne-banner { position: relative; overflow: hidden; border-radius: 22px; background: #00684f; box-shadow: 0 18px 42px rgba(0, 72, 52, .18); }
.techne-banner::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0, 78, 56, .54), rgba(0, 46, 37, .18)); pointer-events: none; }
.techne-banner > img { width: 100%; min-height: 310px; display: block; object-fit: cover; object-position: center; filter: hue-rotate(72deg) saturate(.93) brightness(.83); }
.banner-note { position: absolute; z-index: 2; right: 26px; bottom: 24px; width: 194px; padding: 17px; color: var(--ink); background: var(--lime); border: 1px solid rgba(255,255,255,.4); border-radius: 12px; box-shadow: 0 8px 20px rgba(0, 36, 29, .25); }
.banner-note span { display: block; margin-bottom: 7px; color: #286549; font: 700 9px "DM Mono", monospace; letter-spacing: .04em; text-transform: uppercase; }.banner-note strong { display: block; font-size: 18px; line-height: 1.02; letter-spacing: -.045em; }.banner-note a { display: inline-block; margin-top: 14px; color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--ink); padding-bottom: 3px; font-size: 11px; font-weight: 700; }.banner-note b { margin-left: 4px; }
@media (max-width: 800px) { .upcoming-techne { padding: 75px 0; }.techne-banner > img { min-height: 280px; object-position: 42% center; } }
@media (max-width: 500px) { .upcoming-techne { padding: 64px 0; }.banner-heading { display: block; margin-bottom: 25px; }.techne-banner { border-radius: 16px; }.techne-banner > img { min-height: 320px; object-position: 52% center; }.banner-note { right: 14px; bottom: 14px; width: 172px; padding: 14px; } }
