.stagehero{position:relative;display:grid;overflow:hidden;min-height:500px;background:var(--color-text, #39364f)}.stagehero-media{position:absolute;inset:0}.stagehero-media img{width:100%;height:100%;object-fit:cover;display:block}.stagehero-ph{position:absolute;inset:0;display:grid;place-items:center}.stagehero-ph-grid{position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.12) 0 1px,transparent 1px 84px),repeating-linear-gradient(0deg,rgba(255,255,255,.12) 0 1px,transparent 1px 84px)}.stagehero-ph-label{position:relative;z-index:1;color:#fff9;font-weight:800;font-size:clamp(22px,4vw,42px);letter-spacing:-.02em;text-align:center;padding:0 24px;max-width:20ch}.stagehero .veil{position:absolute;inset:0;background:linear-gradient(180deg,#39364f80,#39364f47 42%,#39364fe6)}.stagehero-note{position:absolute;top:12px;right:16px;z-index:3;font-size:11px;color:#ffffffd9;text-shadow:0 1px 4px rgba(57,54,79,.6)}.stagehero-in{position:relative;z-index:2;align-self:end;width:100%;max-width:1280px;margin:0 auto;padding:40px 32px}.stagehero-in h1{font-size:clamp(36px,6.2vw,72px);line-height:.98;margin:14px 0;max-width:18ch;color:#fff;letter-spacing:-.04em;font-weight:700}.stagehero-lead{color:#ffffffe0;font-size:17.5px;max-width:56ch;margin:0;line-height:1.55}.badge{display:inline-block;background:var(--color-accent-contrast, #ffffff);color:var(--color-accent, #0033a0);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:6px 13px;border-radius:var(--radius-badge, 360px)}.badge.sec{background:var(--color-secondary, #d8232a);color:#fff}.dock{position:sticky;bottom:0;z-index:30;display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:13px 32px;background:#fffffff2;backdrop-filter:blur(10px);border-top:1px solid var(--color-border, #dbdae3);box-shadow:var(--shadow-md, rgba(0, 0, 0, .02) 0px 0px 0px 1px, rgba(0, 0, 0, .07) 0px 4px 12px 0px)}.dock-info b{display:block;font-size:18px;font-weight:800;letter-spacing:-.025em;color:var(--color-text, #39364f)}.dock-info small{display:block;font-size:11.5px;font-weight:500;color:var(--color-text-muted, #585163);margin-top:3px}.dock-sp{flex:1 1 auto}.dock-btn{display:inline-block;font-size:14px;font-weight:700;padding:10px 20px;border-radius:var(--radius-button, 360px);background:var(--color-accent, #0033a0);color:var(--color-accent-contrast, #ffffff);border:1px solid var(--color-accent, #0033a0);white-space:nowrap}.dock-btn:hover{background:var(--color-accent-hover, #00277a);border-color:var(--color-accent-hover, #00277a)}.dock-btn.ghost{background:transparent;color:var(--color-accent, #0033a0);border-color:var(--color-border, #dbdae3)}.dock-btn.ghost:hover{background:var(--color-accent-tint, rgba(0, 51, 160, .08))}.mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;grid-auto-rows:minmax(196px,auto);grid-auto-flow:dense}.mosaic.mosaic-3{grid-template-columns:repeat(3,minmax(0,1fr))}.tile{position:relative;min-width:0;border-radius:var(--radius-card, 16px);overflow:hidden;min-height:196px;display:grid;background:var(--color-surface-elevated, #f8f7fa)}.tile.w2{grid-column:span 2}.tile.h2{grid-row:span 2;min-height:404px}.tile-pic{position:absolute;inset:0}.tile-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.tile:hover .tile-pic img{transform:scale(1.04)}.tile .veil{position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(57,54,79,.9) 100%)}.tile-cap{position:relative;z-index:2;align-self:end;padding:16px}.tile-cap h3{margin:0;font-size:19px;color:#fff;letter-spacing:-.02em;font-weight:700}.tile-meta{display:block;font-size:12px;color:#ffffffd9;margin-top:2px}.tile-note{position:absolute;top:10px;left:12px;z-index:2;font-size:10.5px;color:#ffffffd9;text-shadow:0 1px 4px rgba(57,54,79,.6)}.tile.tile-txt{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #dbdae3);padding:20px;display:flex;flex-direction:column}.tile-txt .tile-kicker{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-subtle, #6f7287);margin-bottom:auto;padding-bottom:12px}.tile-txt h3{margin:0;font-size:19px;color:var(--color-text, #39364f);letter-spacing:-.02em;font-weight:700}.tile-txt p{margin:8px 0 0;font-size:13.5px;line-height:1.6;color:var(--color-text-body, #484559)}.tile-txt .tile-sub{margin-top:10px;font-size:12px;color:var(--color-text-muted, #585163)}.tile.tile-txt:hover{border-color:var(--color-accent, #0033a0)}.story{display:grid;grid-template-columns:1fr 1fr;background:var(--color-surface-elevated, #f8f7fa);border-top:1px solid var(--color-border, #dbdae3);border-bottom:1px solid var(--color-border, #dbdae3)}.story-pic{position:relative;min-height:420px;overflow:hidden}.story-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.story-txt{padding:48px 40px;align-self:center}.story-txt h2{margin:14px 0 8px;font-size:clamp(25px,3.1vw,34px);letter-spacing:-.03em;color:var(--color-text, #39364f)}.story-txt p{color:var(--color-text-muted, #585163);max-width:64ch;margin:0 0 22px;font-size:15.5px;line-height:1.6}@media(max-width:900px){.mosaic,.mosaic.mosaic-3{grid-template-columns:repeat(2,minmax(0,1fr))}.tile.h2{grid-row:span 1;min-height:196px}.story{grid-template-columns:minmax(0,1fr)}.story-pic{min-height:260px}.story-txt{padding:34px 22px}}@media(max-width:560px){.stagehero{min-height:420px}.stagehero-in{padding:28px 16px}.dock{padding:12px 16px;gap:10px}.mosaic,.mosaic.mosaic-3{grid-template-columns:minmax(0,1fr)}.tile.w2{grid-column:span 1}}
