/* Lab only: a research atlas, followed by quiet editorial question plates. */
.l33-hero-header { display:grid;grid-template-columns:1.5fr 1fr;gap:65px;align-items:center;padding:25px 0 36px; }
.l33-hero-header h1 { font-size:clamp(32px,3.15vw,43px);line-height:1.5;letter-spacing:-.035em; }
.l33-hero-header h1 span { display:block; }
.l33-label { color:#9b562e;font-size:16px;line-height:1.9;margin:20px 0; }
.l33-origin { font-size:15px;line-height:1.9;color:#647b70;margin:0 0 24px; }
.l33 .p20-node-number { display:none; }
.l33-map-note { margin:22px 0 0;color:#54746b;font-size:16px;line-height:1.9; }
.l33-index { display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding-block:24px; }
.l33-index a { display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #d6dfd3;padding:18px 0;font-size:17px; }
.l33-section-heading { margin-bottom:35px;max-width:800px; }
.l33-section-heading h2 { margin:16px 0; }
.l33-topic-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px; }
.l33-topic { scroll-margin-top:110px;min-width:0;padding:34px 32px;background:linear-gradient(135deg,#fffefbf0,#edf5efcf 60%,#c6e0d1a3);border:1px solid #fff;border-radius:24px;box-shadow:inset 0 1px 1px #fff,0 6px 0 #a9cbb23d; }
.l33-topic>h3 { font-size:25px;line-height:1.6;margin:16px 0;min-height:80px;text-wrap:balance; }
.l33-topic-summary { font-size:16px;line-height:1.9;color:#54746b;min-height:94px; }
.l33-question { margin:30px -8px 24px;padding:24px 18px;min-height:168px;background:linear-gradient(120deg,#ffffffc7,#f9f2e6b0);border:1px solid #fff;border-radius:10px;box-shadow:inset 0 2px 8px #fff,0 4px 0 #afc4b332; }
.l33-question>p { font-size:13px;color:#8c6948;margin-bottom:12px; }
.l33-question h4 { font-size:21px;line-height:1.7;font-weight:500;text-wrap:balance;margin:0; }
.l33-topic--customers { background:linear-gradient(135deg,#fffefbf0,#fcf1dfd9 60%,#efc6a295); }
.l33-topic--agents { background:linear-gradient(135deg,#fffefbf0,#f0edf6d9 60%,#d4d1e2a3); }
.l33-tags { display:flex;flex-wrap:wrap;gap:8px 15px;padding:0;list-style:none;color:#527669;font-size:14px; }
.l33-tags li { border-top:1px solid #9cbca98a;padding-top:9px; }
.l33-growth { margin-top:48px;display:grid;grid-template-columns:1.15fr 1fr;gap:12px 65px;padding:40px;border-top:1px solid #d8ded2;border-bottom:1px solid #d8ded2; }
.l33-growth .eyebrow { grid-column:1/-1; }
.l33-growth h3 { font-size:30px;line-height:1.6; }
.l33-growth>p:last-child { align-self:center;font-size:17px;color:#54746b;line-height:1.9; }
.l33-format-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px; }
.l33-format-grid article { padding:24px 0;border-top:2px solid #b4c9b9; }
.l33-format-grid h3 { font-size:23px;line-height:1.6;margin-bottom:13px; }
.l33-format-grid p { font-size:16px;line-height:1.9;color:#54746b; }
.l33-article { padding:30px;background:linear-gradient(125deg,#fffffff0,#e8f1e7d6 80%,#fff2dfcc);border:1px solid #fff;border-radius:14px;box-shadow:inset 0 1px #fff,0 5px 0 #b3cfc039;min-width:0; }
.l33-article h3 { font-size:23px;line-height:1.65;margin:18px 0;text-wrap:balance; }
.l33-article>p:not(.eyebrow) { font-size:17px;line-height:1.9;color:#54746b;margin-bottom:25px; }
.l33-article .text-link { display:inline-block; }
.l33-featured { display:grid;grid-template-columns:1.3fr 1fr;gap:0 65px;padding:42px;margin-bottom:28px;background:linear-gradient(125deg,#fffdf5,#fff0dcec 48%,#d8eadddb); }
.l33-featured .eyebrow,.l33-featured h3 { grid-column:1; }
.l33-featured h3 { font-size:32px;line-height:1.5;max-width:20em; }
.l33-featured>p:not(.eyebrow) { grid-column:2;grid-row:1/3;align-self:center; }
.l33-featured .text-link { grid-column:2;justify-self:start; }
.l33-article-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.l33-close { position:relative;isolation:isolate;overflow:hidden; }
.l33 a:hover { color:#b45124; }
@media(max-width:1000px) {
 .l33-hero-header { grid-template-columns:1fr;gap:22px; }
 .l33-topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .l33-topic-summary { min-height:0; }
 .l33-topic>h3 { min-height:0; }
 .l33-format-grid,.l33-article-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .l33-featured { gap:0 35px;padding:32px; }
}

/* One research loop above one shared root system; no drifting decorative edges. */
.l33 .l35-map { border-radius:32px;background:radial-gradient(ellipse at 47% 28%,#fff9ec,#f4f8f1b0 42%,#d9eae270 76%,#edf3eb); }
.l33 .l35-map .p20-stage { height:500px;min-height:0;max-height:none;aspect-ratio:auto;margin-top:0; }
.l35-orbit { position:absolute;inset:12% 5% 13%;border-radius:50%;background:linear-gradient(145deg,#fffefbb3,#d3e4dc3d);border:1px solid #fffffff0;box-shadow:0 10px 0 -4px #bdd4c969,0 23px 35px -23px #618e7a57;transform:perspective(900px) rotateX(28deg);z-index:-1; }
.l35-roots { position:absolute;left:4%;right:4%;bottom:-2%;height:30%;z-index:-1; }
.l35-roots svg { width:100%;height:100%;overflow:visible;filter:drop-shadow(0 5px 3px #347b6c30); }
.l35-paths--narrow { display:none; }
.l33 .l35-node { border-radius:50%;padding:22px 14px;gap:10px;background:linear-gradient(135deg,#ffffffef,#d5e9dceb 55%,#93bfb2ad);box-shadow:inset 2px 2px 3px #fff,inset -6px -9px 18px #699d8d25,0 10px 0 -2px #99c0b27d,0 24px 35px -22px #336c6361; }
.l33 .l35-node--1 { background:linear-gradient(145deg,#fffef8,#ffe4bdde 60%,#ebbb87aa);box-shadow:inset 2px 2px 3px #fff,inset -9px -12px 20px #c68b4e20,0 12px 0 -3px #e4bc8d7d,0 24px 35px -22px #ac835760; }
.l33 .l35-node--2 { border-radius:42px;background:linear-gradient(140deg,#fffefb,#e9edf3df 60%,#c7cedead); }
.l33 .l35-node--3 { border-radius:60px;padding:12px 14px;gap:5px; }
.l33 .l35-node b { font-size:clamp(16px,1.75vw,23px);line-height:1.5; }
.l33 .l35-node small { font-size:14px;line-height:1.8; }
.l35-step { font-size:12px;letter-spacing:.15em;color:#89745a; }
.l33 .l35-node.is-flowing { border-color:#dd9c66;box-shadow:inset 2px 2px 3px #fff,0 10px 0 -2px #e0b38780,0 22px 32px -18px #d69f68a0; }
.l33 .l35-node[aria-pressed=true], .l33 .l35-node:focus-visible { outline:none; }
.l33 .l35-node:focus-visible b { text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px; }
.l33 .l35-map .p20-link { stroke:#b78f60;stroke-width:2.8;opacity:.75; }
.l33 .l35-map .t29-beam { stroke:#fff2c6;stroke-width:6;filter:drop-shadow(0 0 3px #dd8e4e); }
.l35-foundation { position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 28px;margin:5px 28px 20px;padding:21px 24px;border:1px solid #fff;border-radius:70px;background:linear-gradient(110deg,#ffffffe6,#dceadecc,#fff1dbb8);box-shadow:0 7px 0 -2px #a7c7b661,inset 0 2px 2px #fff; }
.l35-foundation p { font-size:16px;color:#346b60; }
.l35-foundation ul,.l35-industries ul { display:flex;flex-wrap:wrap;justify-content:center;gap:10px 20px;list-style:none;padding:0; }
.l35-foundation li { font-size:16px;color:#3e665d; }
.l35-foundation>span { font-size:13px;color:#7b846d; }
.l35-products { margin:0 28px 26px;padding-top:16px;border-top:1px solid #d1dfd2; }
.l35-products summary { cursor:pointer;font-size:15px;line-height:1.8;color:#54746b; }
.l35-products>div { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px;padding-top:20px; }
.l35-products a { font-size:15px;line-height:1.7; }
.l35-industries { display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 28px;margin-top:38px;padding:24px 0;border-top:1px solid #d3dfd1; }
.l35-industries p { font-size:16px;color:#6a7e6c; }
.l35-industries li { font-size:17px;color:#356f65; }
.l35-industries>span { flex-basis:100%;font-size:15px;color:#6a7e6c; }
@media(min-width:601px) and (max-width:1000px) {
 .l33 .l35-node b { font-size:17px; }
 .l33 .l35-node small { font-size:12px; }
 .l33-index { grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px; }
}
@media(max-width:600px) {
 .l33 .l35-map { border-radius:24px; }
 .l33 .l35-map figcaption { padding:22px 20px 0;font-size:17px; }
 .l33 .l35-map .p20-stage { height:900px; }
 .l35-paths--wide { display:none; }
 .l35-paths--narrow { display:block; }
 .l35-orbit { inset:2% 5%;transform:none; }
 .l35-roots { left:-20%;right:-20%;bottom:0;height:19%; }
 .l33 .l35-node { left:50%;padding:14px 12px;gap:6px; }
 .l33 .l35-node--0 { top:10.5%;width:64%;height:16%; }
 .l33 .l35-node--1 { top:33.8%;width:76%;height:20%; }
 .l33 .l35-node--2 { top:61%;width:78%;height:22%;border-radius:42px; }
 .l33 .l35-node--3 { top:86%;width:66%;height:12%; }
 .l33 .l35-node b { font-size:21px; }
 .l33 .l35-node small { font-size:13px; }
 .l33 .l35-node--3 b { font-size:18px; }
 .l33 .l35-node--3 small { font-size:11px; }
 .l35-foundation { margin:12px 16px 20px;border-radius:28px;padding:20px 12px;gap:12px; }
 .l35-foundation p,.l35-foundation>span { flex-basis:100%;text-align:center; }
 .l35-foundation ul { gap:10px 14px; }
 .l35-foundation li { font-size:14px; }
 .l35-products { margin-inline:20px; }
 .l35-products>div { grid-template-columns:1fr; }
 .l35-industries { display:block; }
 .l35-industries ul { justify-content:flex-start;margin:20px 0; }
}
@media(max-width:600px) {
 .l33-hero-header h1 { font-size:30px; }
 .l33-index { grid-template-columns:repeat(2,1fr);gap:0 24px; }
 .l33-index a { font-size:16px; }
 .l33-topic-grid,.l33-format-grid,.l33-article-grid { grid-template-columns:1fr; }
 .l33-topic { padding:26px 22px; }
 .l33-question { min-height:0; }
 .l33-growth { grid-template-columns:1fr;padding:30px 0;gap:20px; }
 .l33-growth h3 { font-size:27px; }
 .l33-article { padding:25px 22px; }
 .l33-featured { display:block; }
 .l33-featured h3 { font-size:27px; }
}
