/* Public home: archival engineering direction. Kept separate from cabinet styles. */
body[data-platform-role="public"] { background:#121313; }
body[data-platform-role="public"] .product-shell,
body[data-platform-role="public"] .app-shell { width:100%; min-height:100vh; padding:0; background:#121313; }
body[data-platform-role="public"] .product-shell::before,
body[data-platform-role="public"] .product-shell::after { display:none; }
body[data-platform-role="public"] .public-home {
  --home-ink:#121313;
  --home-paper:#ece9e0;
  --home-paper-dark:#d9d5ca;
  --home-chalk:#f5f2ea;
  --home-muted:#aaa8a1;
  --home-red:#a33b2b;
  --home-red-on-dark:#d66e58;
  --home-green:#5a7a5e;
  --home-line:rgba(245,242,234,.26);
  overflow:hidden;
  background:var(--home-ink);
  color:var(--home-chalk);
  font-family:"Segoe UI",Arial,sans-serif;
  letter-spacing:0;
}
body[data-platform-role="public"] .public-home * { letter-spacing:0; }
body[data-platform-role="public"] .public-home__masthead {
  position:sticky;
  top:0;
  z-index:20;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:28px;
  height:78px;
  min-height:78px;
  border-bottom:1px solid var(--home-line);
  background:#121313;
  padding:0 clamp(22px,5vw,76px);
}
body[data-platform-role="public"] .public-home__brand,
body[data-platform-role="public"] .public-footer__brand {
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--home-chalk);
  font-family:Impact,"Arial Black",sans-serif;
  font-size:29px;
  font-weight:900;
  line-height:1;
  text-decoration:none;
}
body[data-platform-role="public"] .public-home__brand-image { width:32px; height:38px; overflow:visible; background:transparent; }
body[data-platform-role="public"] .public-home__brand-image img { width:100%; height:100%; object-fit:contain; transform:none; }
body[data-platform-role="public"] .public-home__nav { display:flex; align-items:center; gap:26px; }
body[data-platform-role="public"] .public-home__nav a,
body[data-platform-role="public"] .public-home__masthead-action {
  color:#d8d5cd;
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
body[data-platform-role="public"] .public-home__nav a { border-bottom:1px solid transparent; padding:4px 0; }
body[data-platform-role="public"] .public-home__nav a:hover { border-color:var(--home-red); color:#fff; }
body[data-platform-role="public"] .public-home__masthead-action {
  justify-self:end;
  border:1px solid rgba(245,242,234,.7);
  padding:10px 13px;
}
body[data-platform-role="public"] .public-home__masthead-action:hover { border-color:var(--home-red); background:var(--home-red); color:#fff; }

body[data-platform-role="public"] .public-home__hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);
  min-height:690px;
  background:#171918 url("./assets/graphite-texture.png") center/570px repeat;
}
body[data-platform-role="public"] .public-home__hero::before,
body[data-platform-role="public"] .public-home__workflow-heading::after,
body[data-platform-role="public"] .public-home__workflow li::after,
body[data-platform-role="public"] .public-home__proofline::before { display:none; content:none; }
body[data-platform-role="public"] .public-home__hero-copy {
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:82px clamp(28px,6vw,92px) 64px;
}
body[data-platform-role="public"] .eyebrow {
  margin:0;
  color:#d9d5cc;
  font-family:ui-monospace,"Cascadia Code",monospace;
  font-size:11px;
  font-weight:750;
  line-height:1.35;
  text-transform:uppercase;
}
body[data-platform-role="public"] .public-home__hero-copy .eyebrow { color:#e0dcd2; }
body[data-platform-role="public"] .public-home__hero-copy h1 {
  max-width:760px;
  margin:25px 0 0;
  color:var(--home-chalk);
  font-family:Impact,"Arial Black",sans-serif;
  font-size:82px;
  font-weight:900;
  line-height:.88;
  letter-spacing:0;
  -webkit-text-fill-color:currentColor;
}
body[data-platform-role="public"] .public-home__lead {
  max-width:570px;
  margin:28px 0 0;
  border-left:2px solid var(--home-red);
  color:#e2dfd8;
  padding-left:16px;
  font-size:16px;
  line-height:1.55;
}
body[data-platform-role="public"] .public-home__hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:19px; margin-top:30px; }
body[data-platform-role="public"] .public-home .button {
  min-height:46px;
  border:1px solid var(--home-chalk);
  border-radius:0;
  background:var(--home-chalk);
  color:#141514;
  padding:12px 17px;
  font-size:13px;
  font-weight:800;
  box-shadow:none;
}
body[data-platform-role="public"] .public-home .button:hover { border-color:var(--home-red); background:var(--home-red); color:#fff; transform:none; }
body[data-platform-role="public"] .public-home .button:active { transform:scale(.97); }
body[data-platform-role="public"] .public-home__text-action { color:var(--home-chalk); font-size:13px; font-weight:750; text-decoration:none; }
body[data-platform-role="public"] .public-home__text-action:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
body[data-platform-role="public"] .public-home__brief {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-width:760px;
  margin:50px 0 0;
  border-top:1px solid var(--home-line);
  padding:0;
}
body[data-platform-role="public"] .public-home__brief > div { min-width:0; padding:15px 14px 0 0; }
body[data-platform-role="public"] .public-home__brief > div + div { border-left:1px solid var(--home-line); padding-left:14px; }
body[data-platform-role="public"] .public-home__brief dt { color:#e0dcd3; font-family:ui-monospace,"Cascadia Code",monospace; font-size:10px; font-weight:750; text-transform:uppercase; }
body[data-platform-role="public"] .public-home__brief dd { margin:7px 0 0; color:#f2efe8; font-size:12px; line-height:1.4; }
body[data-platform-role="public"] .public-home__hero-art {
  position:relative;
  display:block;
  min-height:500px;
  overflow:hidden;
  border-left:1px solid var(--home-line);
  background:#101111 url("./assets/graphite-texture.png") center/500px repeat;
}
body[data-platform-role="public"] .public-home__hero-art::before,
body[data-platform-role="public"] .public-home__hero-art::after { position:absolute; z-index:1; background:rgba(245,242,234,.25); content:""; }
body[data-platform-role="public"] .public-home__hero-art::before { top:12%; bottom:9%; left:18%; width:1px; }
body[data-platform-role="public"] .public-home__hero-art::after { right:8%; bottom:23%; left:8%; height:1px; }
body[data-platform-role="public"] .public-home__hero-dossiers {
  position:absolute;
  z-index:2;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:70% center;
  opacity:.76;
  filter:grayscale(1) contrast(1.1) brightness(.72);
  transform:none;
}
body[data-platform-role="public"] .public-home__hero-norm-card {
  position:absolute;
  z-index:3;
  top:14%;
  left:12%;
  display:grid;
  gap:11px;
  width:min(340px,61%);
  border:1px solid #232321;
  background:#e9e5da url("./assets/paper-texture.png") center/390px repeat;
  color:#151615;
  padding:24px 24px 22px;
  box-shadow:14px 16px 0 rgba(0,0,0,.28);
  transform:rotate(-3deg);
}
body[data-platform-role="public"] .public-home__hero-norm-card span { color:#665c50; font-family:ui-monospace,"Cascadia Code",monospace; font-size:10px; font-weight:800; text-transform:uppercase; }
body[data-platform-role="public"] .public-home__hero-norm-card strong { font-family:Impact,"Arial Black",sans-serif; font-size:42px; font-weight:900; line-height:.91; }
body[data-platform-role="public"] .public-home__hero-norm-card small { color:#37473b; font-size:12px; font-weight:700; line-height:1.35; }
body[data-platform-role="public"] .public-home__hero-norm-card i { position:absolute; top:-12px; right:18px; border:1px solid var(--home-red); background:#e9e5da; color:#963e2d; padding:4px 6px; font-family:ui-monospace,"Cascadia Code",monospace; font-size:10px; font-style:normal; font-weight:800; }
body[data-platform-role="public"] .public-home__hero-trace { position:absolute; z-index:4; right:9%; bottom:11%; display:flex; align-items:center; gap:8px; color:#f5f2ea; font-family:ui-monospace,"Cascadia Code",monospace; font-size:10px; font-weight:750; }
body[data-platform-role="public"] .public-home__hero-trace b { display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--home-red); border-radius:50%; background:var(--home-paper); color:#181817; font-size:9px; }
body[data-platform-role="public"] .public-home__hero-trace i { width:54px; height:1px; background:#f5f2ea; }

body[data-platform-role="public"] .public-home__proofline {
  display:grid;
  grid-template-columns:repeat(5,max-content) minmax(300px,1fr);
  align-items:center;
  gap:12px;
  min-height:94px;
  background:var(--home-paper);
  color:#161716;
  padding:18px clamp(22px,5vw,76px);
}
body[data-platform-role="public"] .public-home__proofline p { margin:0; font-size:12px; font-weight:800; }
body[data-platform-role="public"] .public-home__proofline i { width:16px; height:1px; background:#76695a; }
body[data-platform-role="public"] .public-home__proofline small { grid-column:1 / -1; color:#57534c; font-size:11px; line-height:1.4; }

body[data-platform-role="public"] .public-home__modules,
body[data-platform-role="public"] .public-home__normative,
body[data-platform-role="public"] .public-home__access { padding:108px max(24px,calc((100% - 1220px)/2)); }
body[data-platform-role="public"] .public-home__modules { background:var(--home-paper) url("./assets/paper-texture.png") center/640px repeat; color:#151615; }
body[data-platform-role="public"] .public-home__modules > header,
body[data-platform-role="public"] .public-home__normative > header { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.55fr); gap:20px 70px; max-width:1120px; }
body[data-platform-role="public"] .public-home__modules > header .eyebrow,
body[data-platform-role="public"] .public-home__normative > header .eyebrow { color:#5a5047; }
body[data-platform-role="public"] .public-home__modules h2,
body[data-platform-role="public"] .public-home__normative h2,
body[data-platform-role="public"] .public-home__trust h2,
body[data-platform-role="public"] .public-home__workflow h2,
body[data-platform-role="public"] .public-home__access h2 {
  margin:6px 0 0;
  font-family:Impact,"Arial Black",sans-serif;
  font-weight:900;
  line-height:.93;
  -webkit-text-fill-color:currentColor;
}
body[data-platform-role="public"] .public-home__modules h2,
body[data-platform-role="public"] .public-home__normative h2 { grid-column:1; max-width:680px; font-size:62px; }
body[data-platform-role="public"] .public-home__modules > header > p:last-child,
body[data-platform-role="public"] .public-home__normative > header > p:last-child { grid-column:2; grid-row:1 / span 2; align-self:end; margin:0; color:#484641; font-size:15px; line-height:1.55; }
body[data-platform-role="public"] .public-home__module-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-top:55px; border-top:1px solid #252623; border-bottom:1px solid #252623; }
body[data-platform-role="public"] .public-home__module {
  display:flex;
  flex-direction:column;
  min-height:355px;
  border:0;
  border-left:1px solid #252623;
  background:transparent;
  color:#191a18;
  padding:22px 18px 19px;
}
body[data-platform-role="public"] .public-home__module:first-child { border-left:0; }
body[data-platform-role="public"] .public-home__module--norm { background:#181917 url("./assets/graphite-texture.png") center/460px repeat; color:#f5f2ea; }
body[data-platform-role="public"] .public-home__module--calculator { background:#dfe5dd url("./assets/paper-texture.png") center/440px repeat; }
body[data-platform-role="public"] .public-home__module--estimate { background:#eadbd0 url("./assets/paper-texture.png") center/440px repeat; }
body[data-platform-role="public"] .public-home__module p { margin:0; color:var(--home-red); font-family:ui-monospace,"Cascadia Code",monospace; font-size:10px; font-weight:800; text-transform:uppercase; }
body[data-platform-role="public"] .public-home__module--norm p { color:var(--home-red-on-dark); }
body[data-platform-role="public"] .public-home__module h3 { margin:60px 0 16px; font-family:Impact,"Arial Black",sans-serif; font-size:35px; font-weight:900; line-height:.94; }
body[data-platform-role="public"] .public-home__module > span { font-size:13px; line-height:1.48; }
body[data-platform-role="public"] .public-home__module strong { margin-top:auto; border-top:1px solid currentColor; padding-top:14px; font-size:12px; line-height:1.4; }
body[data-platform-role="public"] .public-home__module footer { margin-top:16px; color:inherit; font-family:ui-monospace,"Cascadia Code",monospace; font-size:10px; font-weight:700; line-height:1.45; }
body[data-platform-role="public"] .public-home__modules-note { max-width:820px; margin:28px 0 0; border-left:2px solid var(--home-red); color:#4b4944; padding-left:15px; font-size:13px; line-height:1.5; }

body[data-platform-role="public"] .public-home__workflow {
  position:relative;
  display:block;
  overflow:hidden;
  background:#121313 url("./assets/graphite-texture.png") center/550px repeat;
  color:#f5f2ea;
  padding:116px max(24px,calc((100% - 1220px)/2));
}
body[data-platform-role="public"] .public-home__workflow::after { position:absolute; right:-5%; bottom:-10px; left:42%; height:220px; background:url("./assets/operators-stencil-transparent.png") center bottom/contain no-repeat; content:""; opacity:.14; pointer-events:none; }
body[data-platform-role="public"] .public-home__workflow-heading,
body[data-platform-role="public"] .public-home__workflow ol,
body[data-platform-role="public"] .public-home__workflow-lead { position:relative; z-index:1; }
body[data-platform-role="public"] .public-home__workflow .eyebrow { color:#e2dfd7; }
body[data-platform-role="public"] .public-home__workflow-heading { display:grid; grid-template-columns:minmax(250px,.52fr) minmax(0,1fr); gap:34px; align-items:end; }
body[data-platform-role="public"] .public-home__workflow-heading .eyebrow { grid-column:1; align-self:start; }
body[data-platform-role="public"] .public-home__workflow h2 { grid-column:2; width:100%; max-width:none; font-size:64px; }
body[data-platform-role="public"] .public-home__workflow ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:54px 0 0; padding:0; list-style:none; }
body[data-platform-role="public"] .public-home__workflow li { display:grid; grid-template-columns:42px minmax(0,1fr); gap:15px; min-height:192px; border:1px solid #292a27; background:#ece9e0 url("./assets/paper-texture.png") center/360px repeat; color:#171817; padding:21px 19px; box-shadow:9px 10px 0 rgba(0,0,0,.2); }
body[data-platform-role="public"] .public-home__workflow li:nth-child(2),
body[data-platform-role="public"] .public-home__workflow li:nth-child(5) { transform:translateY(18px); }
body[data-platform-role="public"] .public-home__workflow li:nth-child(3),
body[data-platform-role="public"] .public-home__workflow li:nth-child(6) { transform:translateY(36px); }
body[data-platform-role="public"] .public-home__workflow li b { color:var(--home-red); font-family:ui-monospace,"Cascadia Code",monospace; font-size:12px; }
body[data-platform-role="public"] .public-home__workflow li strong { display:block; color:#171817; font-size:18px; font-weight:800; }
body[data-platform-role="public"] .public-home__workflow li span { display:block; margin-top:8px; color:#4d4d48; font-size:13px; line-height:1.45; }
body[data-platform-role="public"] .public-home__workflow-lead { max-width:600px; margin:76px 0 0 auto; border-left:2px solid var(--home-red); color:#ece9e0; padding-left:15px; font-size:14px; line-height:1.5; }

body[data-platform-role="public"] .public-home__normative { background:var(--home-paper-dark) url("./assets/paper-texture.png") center/680px repeat; color:#171817; }
body[data-platform-role="public"] .public-home__normative-board {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.92fr) 150px minmax(0,.92fr);
  align-items:center;
  gap:24px;
  min-height:470px;
  margin-top:54px;
  border:1px solid #272724;
  background:#282a28 url("./assets/concept-tender-workspace.png") center/cover no-repeat;
  padding:46px;
}
body[data-platform-role="public"] :is(.public-home__requirement-card,.public-home__norm-card) { min-height:310px; border:1px solid #272724; background:#f0ece3 url("./assets/paper-texture.png") center/390px repeat; color:#161716; padding:24px; box-shadow:10px 12px 0 rgba(0,0,0,.19); }
body[data-platform-role="public"] .public-home__norm-card { background:#ece8de url("./assets/paper-texture.png") center/390px repeat; transform:rotate(1.2deg); }
body[data-platform-role="public"] :is(.public-home__requirement-card,.public-home__norm-card) > p { margin:0; color:#8b3a2d; font-family:ui-monospace,"Cascadia Code",monospace; font-size:10px; font-weight:800; text-transform:uppercase; }
body[data-platform-role="public"] :is(.public-home__requirement-card,.public-home__norm-card) h3 { margin:24px 0 26px; font-family:Impact,"Arial Black",sans-serif; font-size:29px; font-weight:900; line-height:.98; }
body[data-platform-role="public"] .public-home__norm-card strong { display:block; margin:-13px 0 21px; color:#426247; font-size:12px; line-height:1.4; }
body[data-platform-role="public"] :is(.public-home__requirement-card,.public-home__norm-card) dl { display:grid; gap:10px; margin:0; border-top:1px solid #77736c; padding-top:12px; }
body[data-platform-role="public"] :is(.public-home__requirement-card,.public-home__norm-card) dl div { display:grid; grid-template-columns:76px minmax(0,1fr); gap:9px; }
body[data-platform-role="public"] :is(.public-home__requirement-card,.public-home__norm-card) dt { color:#605c54; font-size:11px; font-weight:800; }
body[data-platform-role="public"] :is(.public-home__requirement-card,.public-home__norm-card) dd { margin:0; color:#242521; font-size:12px; line-height:1.38; }
body[data-platform-role="public"] .public-home__evidence-link { display:grid; justify-items:center; gap:10px; color:#f7f4ed; font-family:ui-monospace,"Cascadia Code",monospace; font-size:10px; font-weight:750; line-height:1.35; text-align:center; }
body[data-platform-role="public"] .public-home__evidence-link i { width:100%; height:1px; background:#f7f4ed; }
body[data-platform-role="public"] .public-home__evidence-link i::before { display:block; width:18px; height:18px; margin:-9px auto 0; border:2px solid var(--home-red); border-radius:50%; background:#e6e1d5; content:""; }
body[data-platform-role="public"] .public-home__normative-notes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:32px; border-top:1px solid #706c64; padding-top:18px; }
body[data-platform-role="public"] .public-home__normative-notes b { display:block; color:#7a3227; font-size:12px; }
body[data-platform-role="public"] .public-home__normative-notes span { display:block; margin-top:8px; color:#393a36; font-size:13px; line-height:1.46; }

body[data-platform-role="public"] .public-home__trust { background:#171817 url("./assets/graphite-texture.png") center/560px repeat; color:#f3f0e9; padding:102px max(24px,calc((100% - 1220px)/2)); }
body[data-platform-role="public"] .public-home__trust > h2 { max-width:850px; font-size:64px; }
body[data-platform-role="public"] .public-home__trust > div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:56px; border-top:1px solid var(--home-line); }
body[data-platform-role="public"] .public-home__trust article { min-height:172px; border-left:1px solid var(--home-line); padding:20px 23px; }
body[data-platform-role="public"] .public-home__trust article:first-child { border-left:0; padding-left:0; }
body[data-platform-role="public"] .public-home__trust h3 { margin:0; color:#fff; font-size:18px; font-weight:800; }
body[data-platform-role="public"] .public-home__trust p { margin:12px 0 0; color:#dedbd3; font-size:14px; line-height:1.5; }
body[data-platform-role="public"] .public-home__trust small { display:block; max-width:940px; margin-top:33px; border-left:2px solid var(--home-red); color:#dedbd3; padding-left:15px; font-size:12px; line-height:1.5; }

body[data-platform-role="public"] .public-home__access { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:0; max-width:none; margin:0; background:var(--home-paper) url("./assets/paper-texture.png") center/650px repeat; color:#171817; }
body[data-platform-role="public"] .public-home__access section { min-width:0; padding:0 60px 0 0; }
body[data-platform-role="public"] .public-home__access section + section { border-left:1px solid #6c6962; padding:0 0 0 60px; }
body[data-platform-role="public"] .public-home__access .eyebrow { color:#6d675d; }
body[data-platform-role="public"] .public-home__access h2 { font-size:50px; }
body[data-platform-role="public"] .public-home__access p:not(.eyebrow):not(.public-home__hint) { max-width:500px; margin:15px 0 0; color:#44443f; font-size:14px; line-height:1.52; }
body[data-platform-role="public"] .public-home__access form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:27px; }
body[data-platform-role="public"] .public-home__access label { display:grid; gap:7px; color:#33342f; font-size:12px; font-weight:800; }
body[data-platform-role="public"] .public-home__access input { width:100%; min-height:44px; border:1px solid #68665f; border-radius:0; background:#f7f4ed; color:#151615; padding:10px; font:inherit; }
body[data-platform-role="public"] .public-home__access input:focus { outline:2px solid var(--home-red); outline-offset:2px; border-color:#151615; box-shadow:none; }
body[data-platform-role="public"] .public-home__access form .button { grid-column:1 / -1; justify-self:start; margin-top:4px; border-color:#151615; background:#151615; color:#f8f5ee; }
body[data-platform-role="public"] .public-home__access form .button:hover { border-color:var(--home-red); background:var(--home-red); }
body[data-platform-role="public"] .public-home__recovery { color:#32332f; font-size:12px; font-weight:750; }
body[data-platform-role="public"] .public-home__hint { min-height:19px; margin:10px 0 0; color:#982f25; font-size:12px; font-weight:700; }
body[data-platform-role="public"] .public-home__access-guidance { padding-bottom:33px; }
body[data-platform-role="public"] .public-home__access-steps { display:grid; gap:0; margin:28px 0 0; padding:0; list-style:none; border-top:1px solid #79766e; }
body[data-platform-role="public"] .public-home__access-steps li { display:grid; grid-template-columns:36px minmax(0,1fr); gap:12px; border-bottom:1px solid #79766e; padding:13px 0; }
body[data-platform-role="public"] .public-home__access-steps b { color:var(--home-red); font-family:ui-monospace,"Cascadia Code",monospace; font-size:11px; }
body[data-platform-role="public"] .public-home__access-steps span { color:#4c4c47; font-size:13px; line-height:1.42; }
body[data-platform-role="public"] .public-home__access-steps strong { display:block; color:#191a18; font-size:13px; }
body[data-platform-role="public"] .public-home__access .button--ghost { display:inline-flex; margin-top:23px; border-color:#171817; background:#171817; color:#f7f4ed; }

body[data-platform-role="public"] .public-footer { background:#101111 url("./assets/graphite-texture.png") center/560px repeat; color:#f4f1eb; padding:54px max(24px,calc((100% - 1220px)/2)) 26px; }
body[data-platform-role="public"] .public-footer__top { display:grid; grid-template-columns:minmax(190px,.8fr) minmax(260px,1.2fr); gap:28px; align-items:center; border-bottom:1px solid var(--home-line); padding-bottom:28px; }
body[data-platform-role="public"] .public-footer__brand img { width:34px; height:38px; object-fit:contain; }
body[data-platform-role="public"] .public-footer__top > p { max-width:420px; margin:0; color:#d7d4cd; font-size:14px; line-height:1.45; }
body[data-platform-role="public"] .public-footer__groups { display:grid; grid-template-columns:1fr 1fr; gap:34px; padding:31px 0; }
body[data-platform-role="public"] .public-footer__groups section { display:grid; gap:8px; }
body[data-platform-role="public"] .public-footer__groups h2 { margin:0 0 5px; color:#fff; font-size:13px; font-weight:800; }
body[data-platform-role="public"] .public-footer__groups a,
body[data-platform-role="public"] .public-footer__groups span { color:#d7d4cd; font-size:13px; line-height:1.4; text-decoration:none; }
body[data-platform-role="public"] .public-footer__groups a:hover { color:#fff; text-decoration:underline; text-underline-offset:3px; }
body[data-platform-role="public"] .public-footer__notice { max-width:890px; margin:0; border-left:2px solid var(--home-red); color:#e0ddd6; padding-left:15px; font-size:12px; line-height:1.5; }
body[data-platform-role="public"] .public-footer__bottom { margin-top:28px; border-top:1px solid var(--home-line); color:#aaa79f; padding-top:16px; font-size:11px; }

@media (max-width:1040px) {
  body[data-platform-role="public"] .public-home__hero { grid-template-columns:1fr; }
  body[data-platform-role="public"] .public-home__hero-art { min-height:480px; border-top:1px solid var(--home-line); border-left:0; }
  body[data-platform-role="public"] .public-home__modules > header,
  body[data-platform-role="public"] .public-home__normative > header { grid-template-columns:1fr; }
  body[data-platform-role="public"] .public-home__modules > header > p:last-child,
  body[data-platform-role="public"] .public-home__normative > header > p:last-child { grid-column:1; grid-row:auto; }
  body[data-platform-role="public"] .public-home__workflow-heading { grid-template-columns:1fr; }
  body[data-platform-role="public"] .public-home__workflow h2 { grid-column:1; }
  body[data-platform-role="public"] .public-home__workflow ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-platform-role="public"] .public-home__module-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-platform-role="public"] .public-home__module:nth-child(3) { border-left:0; border-top:1px solid #252623; }
  body[data-platform-role="public"] .public-home__module:nth-child(4) { border-top:1px solid #252623; }
}

@media (max-width:680px) {
  body[data-platform-role="public"] .public-home__masthead { grid-template-columns:1fr auto; gap:12px; height:66px; min-height:66px; padding:0 18px; }
  body[data-platform-role="public"] .public-home__brand { font-size:24px; }
  body[data-platform-role="public"] .public-home__brand-image { width:25px; height:31px; }
  body[data-platform-role="public"] .public-home__nav { display:none; }
  body[data-platform-role="public"] .public-home__masthead-action { min-height:44px; padding:8px 12px; font-size:10px; }
  body[data-platform-role="public"] .public-home__hero-copy { padding:62px 24px 44px; }
  body[data-platform-role="public"] .public-home__hero-copy h1 { font-size:56px; }
  body[data-platform-role="public"] .public-home__lead { margin-top:23px; font-size:14px; }
  body[data-platform-role="public"] .public-home__brief { grid-template-columns:1fr; margin-top:36px; }
  body[data-platform-role="public"] .public-home__brief > div { padding:12px 0; }
  body[data-platform-role="public"] .public-home__brief > div + div { border-top:1px solid var(--home-line); border-left:0; padding-left:0; }
  body[data-platform-role="public"] .public-home__hero-art { min-height:355px; }
  body[data-platform-role="public"] .public-home__hero-norm-card { top:11%; left:8%; width:245px; padding:20px; }
  body[data-platform-role="public"] .public-home__hero-norm-card strong { font-size:34px; }
  body[data-platform-role="public"] .public-home__hero-trace { right:20px; bottom:17px; }
  body[data-platform-role="public"] .public-home__hero-trace span { display:none; }
  body[data-platform-role="public"] .public-home__proofline { grid-template-columns:repeat(2,minmax(0,1fr)); min-height:0; gap:0; padding:20px 24px; }
  body[data-platform-role="public"] .public-home__proofline p { min-width:0; border-bottom:1px solid rgba(118,105,90,.38); padding:9px 8px 9px 0; font-size:10px; line-height:1.35; }
  body[data-platform-role="public"] .public-home__proofline i { display:none; }
  body[data-platform-role="public"] .public-home__proofline small { grid-column:1 / -1; margin-top:6px; }
  body[data-platform-role="public"] .public-home__modules,
  body[data-platform-role="public"] .public-home__normative,
  body[data-platform-role="public"] .public-home__access,
  body[data-platform-role="public"] .public-home__workflow,
  body[data-platform-role="public"] .public-home__trust { padding:68px 24px; }
  body[data-platform-role="public"] .public-home__modules h2,
  body[data-platform-role="public"] .public-home__normative h2,
  body[data-platform-role="public"] .public-home__workflow h2,
  body[data-platform-role="public"] .public-home__trust > h2 { font-size:46px; }
  body[data-platform-role="public"] .public-home__module-list { grid-template-columns:1fr; margin-top:39px; }
  body[data-platform-role="public"] .public-home__module,
  body[data-platform-role="public"] .public-home__module:nth-child(3),
  body[data-platform-role="public"] .public-home__module:nth-child(4) { min-height:280px; border-top:1px solid #252623; border-left:0; }
  body[data-platform-role="public"] .public-home__module:first-child { border-top:0; }
  body[data-platform-role="public"] .public-home__module h3 { margin-top:44px; }
  body[data-platform-role="public"] .public-home__workflow-heading { gap:19px; }
  body[data-platform-role="public"] .public-home__workflow ol { grid-template-columns:1fr; gap:12px; margin-top:34px; }
  body[data-platform-role="public"] .public-home__workflow li,
  body[data-platform-role="public"] .public-home__workflow li:nth-child(-n+2) { min-height:0; transform:none; }
  body[data-platform-role="public"] .public-home__workflow-lead { margin-top:30px; }
  body[data-platform-role="public"] .public-home__workflow::after { right:-18%; left:-18%; height:130px; opacity:.09; }
  body[data-platform-role="public"] .public-home__normative-board { grid-template-columns:1fr; gap:24px; min-height:0; margin-top:38px; padding:24px; }
  body[data-platform-role="public"] .public-home__evidence-link { min-height:40px; }
  body[data-platform-role="public"] .public-home__evidence-link i { width:1px; height:30px; }
  body[data-platform-role="public"] .public-home__evidence-link i::before { margin:-1px 0 0 -9px; }
  body[data-platform-role="public"] :is(.public-home__requirement-card,.public-home__norm-card) { min-height:0; padding:20px; }
  body[data-platform-role="public"] .public-home__norm-card { transform:none; }
  body[data-platform-role="public"] .public-home__normative-notes,
  body[data-platform-role="public"] .public-home__trust > div { grid-template-columns:1fr; }
  body[data-platform-role="public"] .public-home__normative-notes { gap:17px; }
  body[data-platform-role="public"] .public-home__trust > div { margin-top:38px; }
  body[data-platform-role="public"] .public-home__trust article,
  body[data-platform-role="public"] .public-home__trust article:first-child { min-height:0; border-top:1px solid var(--home-line); border-left:0; padding:20px 0; }
  body[data-platform-role="public"] .public-home__trust article:first-child { border-top:0; padding-top:0; }
  body[data-platform-role="public"] .public-home__access { display:block; }
  body[data-platform-role="public"] .public-home__access section { padding:0; }
  body[data-platform-role="public"] .public-home__access section + section { margin-top:53px; border-top:1px solid #6c6962; border-left:0; padding:53px 0 0; }
  body[data-platform-role="public"] .public-home__access h2 { font-size:42px; }
  body[data-platform-role="public"] .public-home__access form { grid-template-columns:1fr; }
  body[data-platform-role="public"] .public-home__access form .button { width:100%; }
  body[data-platform-role="public"] .public-footer { padding:42px 24px 22px; }
  body[data-platform-role="public"] .public-footer__top,
  body[data-platform-role="public"] .public-footer__groups { grid-template-columns:1fr; }
  body[data-platform-role="public"] .public-footer__groups { gap:26px; padding:27px 0; }
}

@media (prefers-reduced-motion:reduce) {
  body[data-platform-role="public"] .public-home *,
  body[data-platform-role="public"] .public-home *::before,
  body[data-platform-role="public"] .public-home *::after { scroll-behavior:auto; transition:none; }
}
