/* Homepage notice sits below the floating header, in normal hero flow, never sticky. */
body[data-home-experience] .steel-hero{box-sizing:border-box;flex-direction:column;align-items:stretch;padding-top:98px;min-height:clamp(680px,calc(100svh - 100px),1050px);height:auto;max-height:none}
body[data-home-experience] .steel-hero-copy{align-self:flex-start;padding-top:32px}
body[data-home-experience] .steel-notice{position:relative;z-index:3;flex:none;min-width:0;pointer-events:auto;background:#f7f7f3;color:#10265e;padding:0 6vw;border-bottom:1px solid #10265e25;font-family:'madefor-text',Arial,sans-serif}
.steel-notice *,.steel-notice-dialog *{box-sizing:border-box}
.steel-notice-trigger{display:grid;grid-template-columns:155px minmax(0,1fr) 44px;align-items:center;gap:24px;width:100%;min-height:64px;padding:10px 0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}
.steel-notice-meta{display:flex;flex-direction:column;gap:5px;min-width:0}
.steel-notice-date{font:11px/1.5 'madefor-text',Arial,sans-serif;letter-spacing:.04em;color:#5c6f8b;overflow-wrap:anywhere}
.steel-notice-label{display:flex;align-items:center;gap:16px;margin:0;font:12px/1.5 'madefor-text',Arial,sans-serif;letter-spacing:.16em;color:#10265e}
.steel-notice-label>span{font-size:11px;letter-spacing:.06em;color:#5c6f8b}
.steel-notice-title{font-size:clamp(15px,1.3vw,18px);font-weight:500;line-height:1.7;letter-spacing:.035em;overflow-wrap:anywhere;white-space:pre-line}
.steel-notice-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #10265e40;border-radius:50%;font:26px/1 Arial,sans-serif;transition:background .18s,color .18s}
.steel-notice-trigger:hover .steel-notice-arrow{background:#10265e;color:#fff}
.steel-notice-trigger:focus-visible,.steel-notice-dialog button:focus-visible{outline:3px solid #366eac;outline-offset:5px}
body.notice-open{overflow:hidden}
.steel-notice-dialog{box-sizing:border-box;width:min(760px,calc(100% - 48px));max-width:760px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);margin:auto;padding:0;border:1px solid #d7dfe8;background:#f7f7f3;color:#10265e;overflow:hidden;box-shadow:0 22px 90px #071a3b30;font-family:'madefor-text',Arial,sans-serif}
.steel-notice-dialog::backdrop{background:#071a3b9e}
.steel-notice-sheet{display:flex;flex-direction:column;max-height:inherit;padding:32px 48px 40px}
.steel-notice-content{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.steel-notice-content:focus-visible{outline:2px solid #366eac;outline-offset:3px}
.steel-notice-toolbar{flex:none;background:#f7f7f3;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}
.steel-notice-close{display:flex;align-items:center;justify-content:center;flex:none;width:48px;height:48px;min-width:48px;min-height:48px;padding:0;border:1px solid #10265e40;background:transparent;color:#10265e;cursor:pointer;font:32px/1 Arial,sans-serif}
.steel-notice-dialog h2{margin:0 0 28px;font-size:clamp(22px,2.4vw,30px);font-weight:500;line-height:1.7;letter-spacing:.025em;overflow-wrap:anywhere;white-space:pre-line}
.steel-notice-dialog h2:focus{outline:none}
.steel-notice-body p{margin:0 0 22px;font-size:15px;line-height:2.1;letter-spacing:.025em;overflow-wrap:anywhere;white-space:pre-wrap}
.steel-notice-body p:last-child{margin-bottom:0}
.steel-notice-close:hover{background:#e5ebf1}
@media(max-width:750px){body[data-home-experience] .steel-hero{padding-top:92px;min-height:clamp(620px,92svh,780px)}body[data-home-experience] .steel-hero-copy{padding-top:30px}body[data-home-experience] .steel-notice{padding:0 16px}.steel-notice-trigger{grid-template-columns:minmax(0,1fr) 24px;gap:2px 8px;min-height:48px;padding:6px 0}.steel-notice-trigger .steel-notice-meta{grid-column:1;gap:0}.steel-notice-trigger .steel-notice-label{display:none}.steel-notice-trigger .steel-notice-date{font-size:10.5px;line-height:1.4}.steel-notice-label>span{font-size:10px}.steel-notice-title{grid-column:1;font-size:14px;line-height:1.5;letter-spacing:.015em}.steel-notice-arrow{grid-column:2;grid-row:1 / 3;width:24px;height:24px;border:0;font-size:22px}.steel-notice-dialog{width:calc(100% - 28px);max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px)}.steel-notice-sheet{padding:20px 22px 28px}.steel-notice-toolbar{margin-bottom:22px}.steel-notice-dialog h2{font-size:21px;margin-bottom:24px}.steel-notice-body p{font-size:14px;line-height:2}}
/* A restrained mobile text link with a compact translucent background.
   The background stays behind the left-aligned group and grows with wrapped copy. */
@media(max-width:750px){
 body[data-home-experience] .steel-notice{padding:0;background:transparent;color:#fff;border:0;box-shadow:none}
 .steel-notice .steel-notice-trigger{width:fit-content;max-width:min(320px,calc(100% - 12px));grid-template-columns:minmax(0,1fr) 20px;gap:2px 6px;padding:6px 8px 6px 7vw;background:#10265ec7;border-radius:0;box-shadow:none}
 .steel-notice .steel-notice-date{color:#d6e0eb}
 .steel-notice .steel-notice-title{color:#fff;font-size:13px;font-weight:400}
 .steel-notice .steel-notice-arrow{width:20px;height:22px;border:0;border-radius:0;background:transparent;color:#fff;font-size:20px}
 .steel-notice .steel-notice-trigger:hover .steel-notice-arrow{background:transparent;color:#fff}
 .steel-notice .steel-notice-trigger:hover .steel-notice-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
 .steel-notice .steel-notice-trigger:focus-visible{outline:2px solid #d6e0eb;outline-offset:4px}
}
/* Native modal focus/inert/close lifecycle stays immediate and interruption-safe. */
.steel-notice-dialog[open]{animation:steel-notice-enter .24s cubic-bezier(.22,1,.36,1) both}
.steel-notice-dialog[open]::backdrop{animation:steel-notice-backdrop-enter .24s ease-out both}
@keyframes steel-notice-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes steel-notice-backdrop-enter{from{background:#071a3b00}to{background:#071a3b9e}}
@media(prefers-reduced-motion:reduce){.steel-notice-arrow{transition:none}.steel-notice-dialog[open],.steel-notice-dialog[open]::backdrop{animation:none}}

/* Pointer-restored focus is retained but unframed; blur/keyboard clears this state. */
.steel-notice .steel-notice-trigger[data-pointer-restored]:focus{outline:none}
