.signage-v2-main { --sign-mockup-scale:min(50px,calc((100vw - 68px)/20)); max-width:1240px; margin:auto; padding:54px 24px 90px; }
.signage-v2-intro { max-width:790px; margin-bottom:52px; }
.signage-v2-intro h1 { font-size:clamp(3rem,7vw,5.6rem); line-height:.98; margin:15px 0 22px; }
.signage-v2-intro p { max-width:720px; margin:0; color:var(--muted); font-size:1.1rem; }
.signage-v2-row { display:grid; grid-template-columns:minmax(280px,.78fr) minmax(420px,1.22fr); gap:clamp(38px,7vw,96px); align-items:center; padding:70px 0; border-top:1px solid var(--line); }
.signage-v2-copy { min-width:0; }
.signage-v2-type { display:inline-flex; padding:9px 14px; border-radius:8px; background:var(--navy); color:#fff; font:700 .78rem/1 "Space Grotesk",sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.signage-v2-format { margin:16px 0 0; color:var(--teal); font:700 1.05rem/1.2 "Space Grotesk",sans-serif; }
.signage-v2-copy h2 { margin:17px 0 12px; font-size:clamp(1.8rem,3vw,2.45rem); line-height:1.08; }
.signage-v2-copy > p:not(.signage-v2-format) { margin:0; color:var(--muted); font-size:1.02rem; line-height:1.65; }
.signage-v2-copy h3 { margin:30px 0 12px; font-size:1rem; letter-spacing:-.015em; }
.signage-v2-list { display:grid; gap:9px; margin:0; padding:0; list-style:none; }
.signage-v2-list li { position:relative; padding-left:27px; color:var(--ink); }
.signage-v2-list li::before { content:"✓"; position:absolute; left:0; top:1px; width:18px; height:18px; border-radius:50%; display:grid; place-items:center; background:#e5f7f4; color:#087579; font-size:.7rem; font-weight:700; }
.signage-v2-note { display:grid; gap:7px; margin-top:30px; padding:20px; border-radius:15px; background:var(--surface); border-left:4px solid var(--teal); }
.signage-v2-note strong,.signage-v2-insights strong { color:var(--navy); font-family:"Space Grotesk",sans-serif; }
.signage-v2-note span,.signage-v2-insights span { color:var(--muted); font-size:.89rem; line-height:1.55; }
.signage-v2-visual { position:relative; min-width:0; margin:0; padding:clamp(18px,3vw,36px); border-radius:28px; display:grid; place-items:center; background:radial-gradient(circle at 50% 42%,#fff 0,#f5f8f8 68%,#edf3f3 100%); }
.signage-v2-visual img { display:block; width:auto; max-width:100%; height:auto; object-fit:contain; filter:drop-shadow(0 16px 20px rgba(16,45,56,.14)); }
.signage-v2-row[aria-labelledby="compact-v2-title"] .signage-v2-visual img { width:calc(var(--sign-mockup-scale)*7); }
.signage-v2-row[aria-labelledby="standard-v2-title"] .signage-v2-visual img { width:calc(var(--sign-mockup-scale)*10); }
.signage-v2-row[aria-labelledby="information-v2-title"] .signage-v2-visual img { width:calc(var(--sign-mockup-scale)*20); }
.signage-v2-landscape { grid-column:1 / -1; margin-top:12px; }
.signage-v2-featured { position:relative; }
.signage-v2-featured::before { content:""; position:absolute; z-index:-1; inset:24px -24px; border-radius:28px; background:#f8fbfb; }
.signage-v2-recommendation { position:absolute; z-index:1; top:20px; right:20px; padding:8px 11px; border-radius:999px; background:var(--teal); color:#fff; font-size:.7rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.signage-v2-row-info { align-items:start; }
.signage-v2-row-info .signage-v2-copy { grid-column:1 / -1; display:grid; grid-template-columns:minmax(250px,.85fr) minmax(340px,1.15fr); column-gap:clamp(40px,7vw,90px); }
.signage-v2-row-info .signage-v2-copy > :not(.signage-v2-insights) { grid-column:1; }
.signage-v2-insights { grid-column:2; grid-row:1 / span 8; display:grid; align-content:start; gap:12px; }
.signage-v2-insights aside { display:grid; gap:6px; padding:18px 20px; border:1px solid var(--line); border-radius:15px; background:#fff; }
@media (max-width:850px) {
  .signage-v2-main { padding-top:34px; }
  .signage-v2-row { grid-template-columns:1fr; gap:34px; padding:54px 0; }
  .signage-v2-copy { max-width:680px; }
  .signage-v2-visual { padding:24px 16px; }
  .signage-v2-featured::before { inset:16px -12px; }
  .signage-v2-row-info .signage-v2-copy { grid-template-columns:1fr; }
  .signage-v2-row-info .signage-v2-copy > :not(.signage-v2-insights),.signage-v2-insights { grid-column:1; }
  .signage-v2-insights { grid-row:auto; margin-top:30px; }
  .signage-v2-landscape { grid-column:auto; margin-top:0; }
}
@media (max-width:620px) {
  .signage-v2-main { padding:28px 18px 60px; }
  .signage-v2-intro { margin-bottom:34px; }
  .signage-v2-intro p { font-size:1rem; }
  .signage-v2-row { padding:44px 0; }
  .signage-v2-visual { border-radius:20px; padding:16px 8px; }
  .signage-v2-recommendation { position:static; justify-self:start; margin:0 0 14px 8px; }
  .signage-v2-note,.signage-v2-insights aside { padding:17px; }
}
