#home-design-showcase { padding:0; }
#home-design-showcase .rv-proposal { --rv-paper:#e4e9ef; --rv-surface:#f5f7fa; --rv-ink:#191f26; --rv-muted:#4c5b6c; --rv-line:#bac6d2; --rv-button:#191f26; --rv-button-ink:#fff; background:var(--rv-paper); color:var(--rv-ink); padding:0; font:15px/1.5 "DM Sans",sans-serif; border-radius:8px; }
#home-design-showcase * { box-sizing:border-box; }
#home-design-showcase .rv-heading { margin-bottom:24px; padding-right:45px; }
#home-design-showcase .rv-eyebrow { display:block; font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; color:var(--rv-muted); }
#home-design-showcase h2 { font:600 32px/1.12 "DM Sans",sans-serif; letter-spacing:-.035em; margin:9px 0 10px; color:var(--rv-ink); }
#home-design-showcase p { margin:0; }
#home-design-showcase .rv-heading p { color:var(--rv-muted); max-width:570px; }
#home-design-showcase .rv-showcase { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(165px,1fr); gap:25px; align-items:center; }
#home-design-showcase .rv-layout-pair { background:#fff; color:#263f50; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:14px 10px 10px; border:1px solid var(--rv-line); border-radius:5px; gap:6px 12px; }
#home-design-showcase figure { margin:0; min-width:0; }
#home-design-showcase img { width:100%; height:230px; object-fit:contain; display:block; }
#home-design-showcase figcaption { text-align:center; font-size:12px; font-weight:600; margin-top:8px; }
#home-design-showcase .rv-scale { grid-column:1/-1; text-align:center; font-size:11px; color:#536374; margin-top:5px; }
#home-design-showcase h3 { font:600 27px/1.12 "DM Sans",sans-serif; letter-spacing:-.03em; margin:13px 0 12px; color:var(--rv-ink); }
#home-design-showcase [data-description] { color:var(--rv-muted); min-height:50px; }
#home-design-showcase a { color:var(--rv-ink); font-weight:600; text-decoration:none; }
#home-design-showcase a:hover { text-decoration:underline; text-underline-offset:4px; }
#home-design-showcase [data-detail] { display:inline-flex; gap:12px; margin-top:19px; border-bottom:1px solid var(--rv-line); padding-bottom:4px; font-size:14px; }
#home-design-showcase .rv-controls { display:flex; align-items:center; gap:15px; margin-top:24px; }
#home-design-showcase button { font:inherit; color:var(--rv-ink); background:transparent; border:1px solid var(--rv-line); border-radius:4px; min-height:42px; }
#home-design-showcase .rv-controls button { width:42px; }
#home-design-showcase [data-count] { color:var(--rv-muted); font-size:12px; font-variant-numeric:tabular-nums; }
#home-design-showcase .rv-design-picker { display:flex; flex-wrap:wrap; gap:6px; margin:16px 0 25px; }
#home-design-showcase .rv-design-picker button { font-size:12px; padding:8px 12px; }
#home-design-showcase .rv-design-picker button[aria-pressed="true"] { color:var(--rv-button-ink); background:var(--rv-button); border-color:var(--rv-button); }
#home-design-showcase .rv-flow { border-top:1px solid var(--rv-line); padding-top:20px; }
#home-design-showcase .rv-local-intro { max-width:850px; margin-bottom:20px; }
#home-design-showcase .rv-local-intro h3 { margin:8px 0 12px; }
#local-ai-title { scroll-margin-top:100px; }
#home-design-showcase .rv-local-intro > p { color:var(--rv-muted); font-size:15px; line-height:1.65; }
#home-design-showcase .rv-local-architecture { margin:0 0 26px; }
#home-design-showcase .rv-local-boundary { border:1px solid var(--rv-line); border-radius:5px; padding:18px; background:var(--rv-surface); }
#home-design-showcase .rv-local-boundary-label { font-size:12px; font-weight:600; color:var(--rv-muted); margin-bottom:16px; }
#home-design-showcase .rv-local-roles { display:grid; grid-template-columns:minmax(0,1fr) 104px minmax(0,1fr) 104px minmax(0,1fr); align-items:center; }
#home-design-showcase .rv-local-role { align-self:stretch; border-left:3px solid #496778; padding:6px 12px; }
#home-design-showcase .rv-local-role h4 { margin:0 0 9px; font-size:16px; font-weight:600; line-height:1.3; color:var(--rv-ink); }
#home-design-showcase .rv-local-role p { color:var(--rv-muted); font-size:13px; line-height:1.7; }
#home-design-showcase .rv-local-connection { text-align:center; color:var(--rv-muted); padding:0 8px; }
#home-design-showcase .rv-local-connection span { display:block; font-size:11px; }
#home-design-showcase .rv-local-connection span:last-child { font-size:24px; line-height:1.5; }
#home-design-showcase .rv-local-architecture figcaption { text-align:left; font-size:13px; font-weight:400; line-height:1.6; padding-top:12px; color:var(--rv-muted); max-width:900px; }
@media(max-width:850px) {
  #home-design-showcase .rv-local-roles { grid-template-columns:1fr; gap:10px; }
  #home-design-showcase .rv-local-connection { display:flex; align-items:center; justify-content:center; gap:12px; }
  #home-design-showcase .rv-local-connection span:last-child { transform:rotate(90deg); }
  #home-design-showcase .rv-local-role { padding:4px 12px; }
}
#home-design-showcase .rv-flow-title { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:7px; margin-bottom:16px; }
#home-design-showcase .rv-flow-title > span:last-child { font-size:11px; color:var(--rv-muted); }
#home-design-showcase ol { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); list-style:none; padding:0; margin:0; gap:16px; }
#home-design-showcase li { position:relative; border-top:2px solid var(--rv-ink); padding-top:9px; min-width:0; }
#home-design-showcase li:not(:last-child)::after { content:'→'; position:absolute; right:-15px; top:-14px; color:var(--rv-muted); }
#home-design-showcase li b { display:block; font-size:12px; }
#home-design-showcase li span { display:block; color:var(--rv-muted); font-size:11px; margin-top:4px; }
#home-design-showcase .rv-checks { color:var(--rv-muted); font-size:11px; margin-top:16px; }
#home-design-showcase .rv-actions { display:flex; flex-wrap:wrap; gap:16px 22px; align-items:center; margin-top:22px; }
#home-design-showcase .rv-primary { background:var(--rv-button); color:var(--rv-button-ink); padding:13px 17px; border-radius:4px; display:inline-flex; align-items:center; gap:22px; font-size:14px; }
#home-design-showcase .rv-consulting { font-size:13px; }
@media(max-width:540px) { #home-design-showcase .rv-proposal { padding:20px 16px; } #home-design-showcase h2 { font-size:28px; } #home-design-showcase .rv-showcase { grid-template-columns:1fr; gap:18px; } #home-design-showcase img { height:195px; } #home-design-showcase .rv-design-copy { position:relative; } #home-design-showcase h3 { margin:8px 0; } #home-design-showcase [data-description] { min-height:0; } #home-design-showcase .rv-controls { margin-top:14px; } #home-design-showcase ol { grid-template-columns:1fr; gap:10px; } #home-design-showcase li { display:grid; grid-template-columns:100px 1fr; gap:12px; border-top:0; border-left:2px solid var(--rv-line); padding:4px 0 4px 12px; } #home-design-showcase li:not(:last-child)::after { content:'↓'; left:-7px; right:auto; top:auto; bottom:-13px; } #home-design-showcase li span { margin:0; } }
#home-design-showcase [hidden] { display:none !important; }
#home-design-showcase button { cursor:pointer; }
#home-design-showcase :is(a,button):focus-visible { outline:3px solid #263f50; outline-offset:4px; }

/* Portfolio evidence and implementation approach share one desktop row. */
#home-design-showcase .rv-proposal { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:start; }
#home-design-showcase .rv-portfolio-column { min-width:0; }
#home-design-showcase .rv-heading { padding-right:0; margin-bottom:20px; }
#home-design-showcase .rv-heading h2 { font-size:30px; }
#home-design-showcase .rv-heading p { font-size:14px; }
#home-design-showcase .rv-showcase { grid-template-columns:1fr; gap:16px; }
#home-design-showcase .rv-layout-pair img { height:250px; }
#home-design-showcase .rv-design-copy { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:0 14px; align-items:center; }
#home-design-showcase .rv-design-copy > .rv-eyebrow { grid-column:1/-1; }
#home-design-showcase .rv-design-copy h3 { font-size:25px; margin:8px 0; }
#home-design-showcase [data-description] { min-height:0; font-size:14px; }
#home-design-showcase [data-detail] { margin-top:12px; justify-self:start; }
#home-design-showcase .rv-controls { grid-column:2; grid-row:2 / 4; margin-top:0; gap:10px; }
#home-design-showcase .rv-design-picker { margin:16px 0 0; }
#home-design-showcase .rv-flow { border-top:0; border-left:1px solid var(--rv-line); padding:0 0 0 32px; min-width:0; }
#home-design-showcase .rv-local-intro { margin-bottom:16px; }
#home-design-showcase .rv-local-intro h3 { font-size:25px; }
#home-design-showcase .rv-local-intro > p { font-size:14px; line-height:1.6; }
#home-design-showcase .rv-local-boundary { padding:14px; }
#home-design-showcase .rv-local-boundary-label { margin-bottom:12px; }
#home-design-showcase .rv-local-roles { grid-template-columns:1fr; gap:7px; }
#home-design-showcase .rv-local-role { display:grid; grid-template-columns:110px minmax(0,1fr); gap:12px; align-items:center; padding:6px 10px; }
#home-design-showcase .rv-local-role h4 { font-size:14px; margin:0; }
#home-design-showcase .rv-local-role p { font-size:12px; line-height:1.55; }
#home-design-showcase .rv-local-connection { display:flex; align-items:center; justify-content:center; gap:10px; }
#home-design-showcase .rv-local-connection span:last-child { transform:rotate(90deg); font-size:18px; line-height:1; }
#home-design-showcase .rv-local-architecture { margin-bottom:20px; }
#home-design-showcase .rv-local-architecture figcaption { font-size:12px; line-height:1.55; }
#home-design-showcase .rv-flow-title { margin-bottom:12px; }
#home-design-showcase .rv-flow-title > span:last-child { display:block; flex-basis:100%; }
#home-design-showcase ol { gap:12px; }
#home-design-showcase li b { font-size:11px; }
#home-design-showcase li span { font-size:11px; }
@media(max-width:1050px) {
  #home-design-showcase .rv-proposal { grid-template-columns:1fr; gap:30px; }
  #home-design-showcase .rv-flow { border-left:0; border-top:1px solid var(--rv-line); padding:24px 0 0; }
}
@media(max-width:540px) {
  #home-design-showcase .rv-proposal { padding:0; }
  #home-design-showcase .rv-heading h2 { font-size:28px; }
  #home-design-showcase .rv-layout-pair img { height:210px; }
  #home-design-showcase .rv-design-copy { grid-template-columns:1fr; }
  #home-design-showcase .rv-controls { grid-column:1; grid-row:auto; margin-top:14px; }
  #home-design-showcase .rv-local-role { grid-template-columns:95px minmax(0,1fr); gap:10px; }
  #home-design-showcase li b { font-size:12px; }
}
