/* EU AI Act: split hero with a commit-record card, a numbered record list,
   and a traceability statement. Brand tokens only, one accent. */

.ea-main{overflow:clip}
.ea-link{font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;color:var(--ink)}
.ea-link:hover{color:var(--signal)}
.ea-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:34px}

/* Hero */
.ea-hero{max-width:1240px;margin:0 auto;padding:clamp(40px,5vw,72px) clamp(20px,4vw,48px) clamp(56px,7vw,92px);
  display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,5vw,72px);align-items:center}
.ea-hero h1{font-size:clamp(34px,4.5vw,64px);line-height:1.03;letter-spacing:-.04em;max-width:16ch;margin:0}
.ea-lede{margin-top:26px;font-size:clamp(17px,1.7vw,20px);line-height:1.55;color:var(--fg-505a52);max-width:54ch}

/* Commit-record card (light) */
.ea-card{margin:0;border:1px solid var(--line-strong);border-radius:14px;overflow:hidden;background:var(--paper);box-shadow:0 20px 50px -34px rgba(40,40,30,.4)}
.ea-card-top{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line);background:var(--sage)}
.ea-card-top span{font:500 13px var(--code);color:var(--ink)}
.ea-badge{font:600 11px var(--code) !important;letter-spacing:.06em;text-transform:uppercase;color:var(--signal-text) !important;background:color-mix(in srgb,var(--signal) 13%,transparent);padding:4px 9px;border-radius:5px}
.ea-card-body{margin:0;padding:8px 20px 14px}
.ea-card-body>div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}
.ea-card-body>div:last-child{border-bottom:0}
.ea-card-body dt{font:500 13px var(--code);color:var(--muted)}
.ea-card-body dd{margin:0;font:500 13.5px var(--code);color:var(--ink)}

/* Record list */
.ea-needs{max-width:1240px;margin:0 auto;padding:clamp(20px,3vw,40px) clamp(20px,4vw,48px) clamp(56px,7vw,92px)}
.ea-needs-head{max-width:46ch;margin-bottom:8px;padding-bottom:40px;border-bottom:2px solid var(--ink)}
.ea-needs-head h2{font-size:clamp(28px,3.4vw,48px);letter-spacing:-.035em;max-width:18ch}
.ea-needs-head p{margin-top:16px;font-size:17px;line-height:1.55;color:var(--muted)}
.ea-list{list-style:none;margin:0;padding:0;counter-reset:ea}
.ea-list li{display:grid;grid-template-columns:260px 1fr;gap:clamp(24px,4vw,64px);align-items:baseline;padding:30px 0;border-bottom:1px solid var(--line)}
.ea-k{font:600 clamp(18px,1.9vw,23px)/1.2 var(--display);letter-spacing:-.02em;position:relative;padding-left:40px}
.ea-k::before{counter-increment:ea;content:counter(ea,decimal-leading-zero);position:absolute;left:0;top:3px;font:500 13px var(--code);color:var(--signal-text)}
.ea-list p{margin:0;font-size:16px;line-height:1.62;color:var(--fg-505a52);max-width:58ch}

/* Statement */
.ea-stand{background:var(--sage);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.ea-stand-inner{max-width:1240px;margin:0 auto;padding:clamp(60px,7vw,104px) clamp(20px,4vw,48px);
  display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,6vw,80px);align-items:center}
.ea-stand blockquote{margin:0;font:600 clamp(30px,4vw,54px)/1.08 var(--display);letter-spacing:-.035em;color:var(--ink);max-width:16ch}
.ea-stand p{margin:0;font-size:17px;line-height:1.65;color:var(--fg-53624e)}

/* Close */
.ea-close{max-width:1240px;margin:0 auto;padding:clamp(56px,7vw,92px) clamp(20px,4vw,48px) 70px;
  display:grid;grid-template-columns:1.3fr auto;gap:48px;align-items:center}
.ea-close h2{font-size:clamp(30px,3.6vw,50px);letter-spacing:-.035em;max-width:15ch}
.ea-close p{margin:18px 0 0;font-size:17px;line-height:1.55;color:var(--fg-505a52);max-width:50ch}
.ea-close p a{color:var(--signal-text);text-decoration:underline;text-underline-offset:3px}
.ea-mascot{width:clamp(180px,22vw,290px);height:auto;justify-self:end}

@media(max-width:860px){
  .ea-hero{grid-template-columns:1fr;gap:32px}
  .ea-list li{grid-template-columns:1fr;gap:10px}
  .ea-stand-inner{grid-template-columns:1fr;gap:22px}
  .ea-stand blockquote{max-width:none}
  .ea-close{grid-template-columns:1fr;gap:30px}
  .ea-mascot{justify-self:start;width:190px}
}
@media(prefers-reduced-motion:reduce){.ea-main *{transition:none!important}}
