/* Dense editorial rows: real artwork, explicit taxonomy, and paired project context. */
#selected.r30-selected > header { display:grid; grid-template-columns:1fr 1fr; gap:6px 24px; align-items:end; }
#selected.r30-selected > header > .eyebrow { grid-column:1/-1; }
#selected.r30-selected > header > p:not(.eyebrow) { justify-self:end; }
.r31-collection { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; align-items:start; }
.r31-collection[data-mixed-view] { display:block; }
.r31-collection[hidden],.r31-mix-row[hidden],.r31-collection [data-record][hidden],#strategy-report[hidden] { display:none!important; }
.r31-mix-row { display:grid; grid-template-columns:repeat(var(--r31-count,4),minmax(0,1fr)); gap:18px; align-items:start; margin-bottom:20px; }
.r31-mix-row > [data-record] { grid-row:auto!important; min-width:0; }
.r31-card-tags { display:flex; align-items:center; flex-wrap:wrap; gap:7px; padding:11px 14px; background:#fff; border-bottom:1px solid #e2e8ee; }
.r31-card-tags button { padding:4px 9px; border:1px solid #cad8e7; background:#f8fafc; color:#304f70; font-size:14px; line-height:1.4; border-radius:4px; font-weight:550; cursor:pointer; }
.r31-card-tags button:first-child { margin-right:auto; }
.r31-card-tags .r31-kind-work { color:#0657e8; background:#edf3ff; border-color:#adc8f5; }
.r31-card-tags .r31-kind-case { color:#08766f; background:#e7f4f1; border-color:#a3cfc6; }
.r31-card-tags button[aria-pressed=true] { background:#0756ff; color:white; border-color:#0756ff; }
.r31-card-tags button:focus-visible,.r31-kind-tabs button:focus-visible { outline:3px solid #61aeff; outline-offset:2px; }
.r31-kind-tabs { display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
.r31-kind-tabs button { padding:8px 13px; border:1px solid #c9d8e8; border-radius:4px; background:#fff; color:#304f70; cursor:pointer; }
.r31-kind-tabs button[aria-pressed=true] { background:#142f4b; color:white; border-color:#142f4b; }
#selected .folio-toolbar { flex-wrap:wrap; }
#selected .r31-kind-tabs { padding-left:14px; border-left:1px solid #dce5ee; }
.r31-collection .r30-case-visual { height:220px; background:#e8edf1; }
.r31-collection .r30-case-visual::before { display:none; }
.r31-collection .r30-case-visual img { object-fit:contain; background:#e8edf1; }
.r31-collection a.r30-case-visual { display:block; position:relative; overflow:hidden; }
.r31-collection .r30-case-visual[data-cover-fit=cover] img { object-fit:cover; }
.r31-collection .r30-case-visual.r31-case-logo,.r31-collection .r30-case-visual.r31-case-logo img { background:#d5c8a8; }
.r31-collection .r30-case-visual > span:last-child { font-size:12px; }
.r31-collection .r30-case-copy > p,.r31-report-copy p { font-size:16px; line-height:1.65; }
.r31-collection .r30-case-origin { font-size:12px; }
.r31-library-anchors { height:0; overflow:hidden; }
.r31-collection .r25-compact-card.r24-work .r24-work-media > button,.r31-collection .r25-compact-card.r24-work .r24-work-media > a { height:220px!important; max-height:220px!important; }
.r31-collection .r24-work-reading,.r31-collection .r30-case-copy { padding:16px; }
.r31-collection .r24-work-title h3,.r31-collection .r30-case-copy > h3 { font-size:18px!important; line-height:1.4!important; }
.r31-collection .r24-work-reading > p { font-size:16px!important; line-height:1.65!important; }
.r31-food-cover { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2px; width:100%; height:220px; background:#192536; }
.r31-collection .r31-food-work.r24-work .r31-food-cover > a { display:block; width:100%; position:relative; background:#eee8dc!important; }
.r31-collection .r31-food-work.r24-work .r31-food-cover img { object-fit:contain!important; width:100%; height:100%; }
.r31-food-cover > a > span { position:absolute; bottom:0; left:0; right:0; padding:7px 3px; font-size:12px; text-align:center; color:#fff; background:#152536e6; }
.r31-food-album { padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid #d9e3ed; }
.r31-food-album h4 { font-size:18px; margin:10px 0; }
.r31-food-album li { font-size:15px; line-height:1.7; margin-bottom:5px; }
.r31-food-album .matrix-r18-variants { grid-template-columns:repeat(2,minmax(0,1fr)); }
.r31-food-album .matrix-r18-variant img { width:100%; height:auto!important; object-fit:contain; }
/* Reports are service deliverables, illustrated by their actual pages. */
#strategy-report.r31-home-reports { display:grid; grid-template-columns:minmax(200px,.8fr) minmax(0,2fr); gap:28px; align-items:center; padding:26px 0; margin:26px 0; border-block:1px solid #cbd9e6; background:transparent; }
.r31-report-intro .eyebrow { font-size:12px; letter-spacing:.1em; margin:0; }
.r31-report-intro h2 { font-size:28px; line-height:1.2; margin:9px 0 13px; }
.r31-report-intro p:not(.eyebrow) { font-size:16px; color:#4c657c; line-height:1.65; margin:0 0 12px; }
.r31-report-intro > a { font-size:14px; color:#0756ff; font-weight:650; }
.r31-home-report-examples { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.r31-home-report-example { display:grid; grid-template-columns:86px minmax(0,1fr); gap:18px; padding:18px; background:#fff; border:1px solid #ccd9e5; border-radius:6px; align-items:center; color:#17344e; }
.r31-home-report-example > img { width:86px; height:122px; object-fit:contain; box-shadow:5px 5px 0 #e7edf2; background:white; }
.r31-home-report-example span { font-size:12px; color:#577387; }
.r31-home-report-example h3 { font-size:18px; line-height:1.4; margin:5px 0 9px; }
.r31-home-report-example p { font-size:14px; line-height:1.6; color:#536b80; margin:0 0 9px; }
.r31-home-report-example b { font-size:14px; color:#0756ff; }
.r31-home-report-examples > span { display:none; }
.r31-report-card { min-width:0; border:1px solid #cbd9e5; border-radius:10px; overflow:hidden; background:#fff; }
.r31-report-visual { height:220px; display:flex; justify-content:center; position:relative; padding:17px 0 27px; background:#e6edf0; box-sizing:border-box; }
.r31-report-visual img { height:100%; width:auto; object-fit:contain; box-shadow:6px 5px 0 #ccd9e1; }
.r31-report-visual > span { position:absolute; bottom:8px; font-size:12px; color:#456172; }
.r31-report-copy { padding:16px; }
.r31-report-copy h3 { font-size:18px; line-height:1.4; margin:0 0 10px; }
.r31-report-copy .r31-report-purpose { color:#164d63; font-weight:550; font-size:16px; line-height:1.7; margin-bottom:15px; }
.r31-report-copy dl { margin:0; }
.r31-report-copy dl > div { margin-bottom:10px; }
.r31-report-copy dt { font-size:12px; color:#5a778d; margin-bottom:4px; }
.r31-report-copy dd { margin:0; font-size:14px; line-height:1.65; color:#38536b; }
.r31-report-copy > a { display:block; color:#0756ff; font-size:14px; font-weight:650; border-top:1px solid #d8e2e9; padding-top:12px; margin-top:14px; }
.r31-report-copy > small { display:block; font-size:12px; color:#697e8f; line-height:1.6; margin-top:8px; }
/* AI value becomes one precise editorial panel, rather than scattered links and footnotes. */
#ai-advantages .m15-home-benefits { gap:0; border:1px solid #35516a; border-radius:4px; padding:0!important; margin-top:24px; background:linear-gradient(110deg,#10263c,#0c1c2e); }
.r31-ai-value { position:relative; display:block; color:#f1f6ff; padding:25px; min-width:0; overflow:hidden; }
.r31-ai-value + .r31-ai-value { border-left:1px solid #35516a; }
.r31-ai-index { color:#88b1ce; font-size:12px; letter-spacing:.07em; }
.r31-ai-value h3 { color:#f1f6ff; font-size:24px; letter-spacing:-.025em; line-height:1.35; margin:15px 0 11px; }
#ai-advantages .r31-ai-value p { color:#a9c4db; font-size:16px; line-height:1.8; margin:0; }
.r31-ai-notation { display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin:24px 0; min-height:38px; }
#ai-advantages .r31-ai-notation span,#ai-advantages .r31-ai-notation b { display:inline-block; padding:6px 8px; border:1px solid #4c718e; border-radius:3px; font-size:12px; color:#a9cbe2; margin:0; font-weight:400; background:#18374e; }
#ai-advantages .r31-ai-notation b { border-color:#6998bc; color:#d0f2ff; background:#194d72; }
.r31-ai-notation i { height:1px; width:17px; background:#6bb1d7; position:relative; overflow:hidden; }
.r31-ai-notation i::after { content:''; width:8px; height:1px; position:absolute; background:#d2fcff; animation:r31-link-current 2.8s linear infinite; }
.r31-ai-value > strong { display:block; font-size:14px; color:#b3d9ee; font-weight:500; }
.r31-ai-value::before { content:''; position:absolute; left:0; top:0; width:33%; height:1px; background:linear-gradient(90deg,transparent,#81cff2,transparent); animation:r31-edge-scan 7s ease-in-out infinite; }
#ai-advantages .m15-home-apps { display:flex; justify-content:space-between; gap:20px; align-items:center; border:0; padding:22px 0 16px!important; }
#ai-advantages .m15-home-apps > div > span { font-size:12px; color:#83a7c4; }
#ai-advantages .m15-home-apps nav { display:flex; flex-wrap:wrap; gap:18px; margin-top:7px; }
#ai-advantages .m15-home-apps nav a { font-size:14px; color:#c1dcee; }
#ai-advantages .m15-home-apps > .r31-ai-team { flex-shrink:0; font-size:14px; background:#163b61; color:#d0e8fb; border:1px solid #477395; padding:11px 16px; border-radius:3px; }
.r31-ai-boundary { margin:0; border-top:1px solid #293f53; padding-top:13px; font-size:12px; line-height:1.8; color:#819db4; }
@keyframes r31-link-current { from { transform:translateX(-8px); } to { transform:translateX(24px); } }
@keyframes r31-edge-scan { 0%,100% { transform:translateX(-100%); } 65% { transform:translateX(350%); } }
@media(hover:hover) and (prefers-reduced-motion:no-preference) { .r31-ai-value { transition:background .3s; }.r31-ai-value:hover { background:#163b565e; }.r31-home-report-example { transition:border-color .25s,box-shadow .25s; }.r31-home-report-example:hover { border-color:#6c93b7;box-shadow:0 6px 22px #17385510; } }
@media(max-width:1100px) { .r31-mix-row { grid-template-columns:repeat(var(--r31-count,4),minmax(230px,1fr)); overflow-x:auto; padding-bottom:12px; scroll-snap-type:x proximity; scrollbar-width:thin; scrollbar-color:#5178a2 #e6edf3; }.r31-mix-row > [data-record] { scroll-snap-align:start; }.r31-collection:not([data-mixed-view]) { grid-template-columns:repeat(3,minmax(0,1fr)); }.r31-home-report-example { grid-template-columns:70px 1fr; gap:12px; padding:14px; }.r31-home-report-example > img { width:70px; height:100px; } }
@media(max-width:800px) { .r31-collection:not([data-mixed-view]) { grid-template-columns:repeat(2,minmax(0,1fr)); }#strategy-report.r31-home-reports { grid-template-columns:1fr; gap:18px; }.r31-report-intro { max-width:600px; }#selected.r30-selected > header { grid-template-columns:1fr; }#selected.r30-selected > header > p:not(.eyebrow) { justify-self:start; }.r31-ai-value { padding:20px; }.r31-ai-value h3 { font-size:21px; }#ai-advantages .m15-home-benefits { grid-template-columns:1fr; }.r31-ai-value + .r31-ai-value { border-left:0; border-top:1px solid #35516a; }.r31-ai-notation { margin:17px 0; }#ai-advantages .m15-home-apps { align-items:flex-start; flex-direction:column; } }
@media(max-width:520px) { .r31-mix-row { grid-template-columns:repeat(var(--r31-count,4),minmax(260px,84vw)); gap:12px; }.r31-collection:not([data-mixed-view]) { grid-template-columns:1fr; }.r31-home-report-examples { grid-template-columns:1fr; }.r31-home-report-example { grid-template-columns:86px 1fr; }.r31-home-report-example > img { width:86px;height:122px; } }
@media(prefers-reduced-motion:reduce) { .r31-ai-value::before,.r31-ai-notation i::after { animation:none!important; }.r31-ai-value,.r31-home-report-example { transition:none; } }
