/* Robot buttons retain their original illustration footprint. */
button.robot { position: relative; padding: 0; border: 0; border-radius: 20px; background: transparent; color: var(--robot-light); font: inherit; line-height: 0; pointer-events: auto; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
button.robot:disabled { opacity: 1; cursor: default; }
.robot-ready { cursor: pointer; }
.robot-ready > svg { transition: filter .25s; }
.robot-hover > svg, .robot-reacting > svg { filter: drop-shadow(0 0 13px color-mix(in srgb, var(--robot-light) 40%, transparent)); }
.robot:focus-visible { outline: 2px solid var(--robot-light); outline-offset: 4px; }
.robot-reaction { position: absolute; z-index: 6; bottom: 98%; left: 50%; width: max-content; max-width: 190px; padding: 9px 12px; border: 1px solid #b9e6dd55; border-radius: 12px 12px 12px 3px; background: #132736; color: #f0fffb; font-size: 12px; line-height: 1.4; box-shadow: 0 7px 25px #0004; transform: translate(-50%, 5px); opacity: 0; visibility: hidden; transition: opacity .2s, transform .2s; pointer-events: none; }
.robot-hover .robot-reaction, .robot-reacting .robot-reaction { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.robot-touch-hint { position: absolute; right: 12%; bottom: 14%; display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid #a5e4dc50; border-radius: 50%; background: #0d1e2b; font-size: 13px; line-height: 1; opacity: .7; transition: opacity .2s; pointer-events: none; }
.robot-hover .robot-touch-hint, .robot-reacting .robot-touch-hint { opacity: 0; }
.service-robot-art { z-index: 3; opacity: 1; }
.service-robot-art .robot-reaction { bottom: auto; top: 92%; max-width: 160px; font-size: 11px; padding: 6px 9px; }
.service-robot-art .robot-touch-hint { width: 17px; height: 17px; font-size: 10px; right: 2%; bottom: 18%; }
.service-card-link::after { content: ""; position: absolute; inset: 0; border-radius: inherit; z-index: 1; }
.service-card:focus-within { border-color: var(--accent); }
.service-card:focus-within .service-card-link { color: var(--accent); }
.robot-gallery-art { padding-top: 12px; }
.robot-gallery-card { overflow: visible; }
.robot-gallery-card .robot-reaction { max-width: 165px; }
.page-hero-robot .robot-reaction { left: auto; right: 0; transform: translateY(5px); }
.page-hero-robot .robot-hover .robot-reaction, .page-hero-robot .robot-reacting .robot-reaction { transform: translateY(0); }
.work-robot .robot-reaction { left: auto; right: 0; transform: translateY(5px); }
.work-robot .robot-hover .robot-reaction, .work-robot .robot-reacting .robot-reaction { transform: translateY(0); }
.cta-robot-label:hover { background: #71ead51a; border-color: var(--accent); }

/* Hover poses are distinct from the short click performances. */
.robot--nova.robot-hover .bot-head { animation: none; transform: rotate(-8deg); }
.robot--nova.robot-hover .bot-arm-right { animation: bot-wave 2.4s ease-in-out infinite; }
.robot--orbit.robot-hover .orbit-drift { animation: orbit-drift 2.2s ease-in-out infinite; }
.robot--orbit.robot-hover .orbit-eye { animation: none; transform: translate(var(--gaze-x, 0px), var(--gaze-y, 0px)); }
.robot--dash.robot-hover .dash-balance { animation: dash-balance 1.5s ease-in-out infinite; }
.robot--dash.robot-hover .dash-wheel { animation-duration: 1.2s; }
.robot--prism.robot-hover .prism-shards { animation: prism-shards 1.5s ease-in-out infinite; }
.robot--prism.robot-hover .prism-scan { opacity: 1; filter: drop-shadow(0 0 5px #e9caff); }
.robot--atlas.robot-hover .atlas-hub { animation-duration: 3s; }
.robot--atlas.robot-hover .atlas-legs-a, .robot--atlas.robot-hover .atlas-legs-b { animation-duration: 1s; }
.robot--forge.robot-hover .forge-crane { animation: forge-crane 2s ease-in-out infinite; }
.robot--aero.robot-hover .aero-rotor { animation-duration: .7s; }
.robot--aero.robot-hover .aero-flight { animation: aero-flight 1.8s ease-in-out infinite; }
.robot--echo.robot-hover .echo-sway { animation: echo-sway 1.8s ease-in-out infinite; }
.robot--echo.robot-hover .echo-broadcast { stroke-width: 3; }
.robot--pixel.robot-hover .pixel-hands { animation-duration: .35s; }
.robot--pixel.robot-hover .pixel-terminal { animation: pixel-tilt 2s ease-in-out infinite; }
.robot--bolt.robot-hover .bolt-tail { animation-duration: .6s; }
.robot--bolt.robot-hover .bolt-head { animation: none; transform: rotate(-10deg); }

.robot--nova.robot-reacting .bot-float { animation: robot-hop 1.1s ease-in-out 2; }
.robot--nova.robot-reacting .bot-arm-right { animation: high-five 2.6s ease-in-out; }
.robot--orbit.robot-reacting .orbit-drift { animation: orbit-roll 2.6s ease-in-out; }
.robot--dash.robot-reacting .dash-balance { animation: dash-wheelie 2.6s ease-in-out; }
.robot--dash.robot-reacting .dash-wheel { animation-duration: .5s; }
.robot--prism.robot-reacting .prism-hover { animation: prism-power 2.6s ease-in-out; }
.robot--prism.robot-reacting .prism-shards { transform-origin: 100px 120px; animation: prism-burst 2.6s ease-in-out; }
.robot--atlas.robot-reacting .atlas-body { animation: atlas-dance .45s ease-in-out 6; }
.robot--atlas.robot-reacting .atlas-legs-a, .robot--atlas.robot-reacting .atlas-legs-b { animation-duration: .35s; }
.robot--forge.robot-reacting .forge-crane { animation: forge-grab 2.6s ease-in-out; }
.robot--forge.robot-reacting .forge-claw { animation: forge-claw .6s ease-in-out 4; }
.robot--aero.robot-reacting .aero-flight { animation: aero-takeoff 2.6s ease-in-out; }
.robot--aero.robot-reacting .aero-rotor { animation-duration: .35s; }
.robot--echo.robot-reacting .echo-sway { animation: echo-happy 2.6s ease-in-out; }
.robot--echo.robot-reacting .echo-equalizer path { animation-duration: .4s; }
.robot--pixel.robot-reacting .pixel-terminal { animation: pixel-celebrate .65s ease-in-out 4; }
.robot--pixel.robot-reacting .pixel-hands { animation: pixel-type .25s ease-in-out 10; }
.robot--bolt.robot-reacting .bolt-head { animation: bolt-nod .65s ease-in-out 4; }
.robot--bolt.robot-reacting .bolt-tail { animation-duration: .28s; }
.robot--bolt.robot-reacting .bolt-body { animation: robot-hop .65s ease-in-out 4; }
@keyframes high-five { 0%,100% { transform: rotate(-8deg); } 20%,70% { transform: rotate(-150deg); } 35%,55% { transform: rotate(-128deg); } }
@keyframes robot-hop { 0%,100% { transform: translateY(0); } 40% { transform: translateY(-10px); } }
@keyframes orbit-roll { 0%,100% { transform: translateY(0) rotate(0); } 30% { transform: translateY(-12px) rotate(-20deg); } 75% { transform: translateY(-7px) rotate(360deg); } 99% { transform: translateY(0) rotate(360deg); } }
@keyframes dash-wheelie { 0%,100% { transform: rotate(0); } 25%,65% { transform: translateX(8px) rotate(-20deg); } 80% { transform: translateX(-5px) rotate(8deg); } }
@keyframes prism-power { 0%,100% { transform: translateY(0) scale(1); } 45%,65% { transform: translateY(-12px) scale(1.08); } }
@keyframes prism-burst { 0%,100% { transform: scale(1); } 45%,65% { transform: scale(1.18) rotate(10deg); } }
@keyframes atlas-dance { 0%,100% { transform: translateX(-3px) rotate(-2deg); } 50% { transform: translateX(3px) rotate(2deg); } }
@keyframes forge-grab { 0%,100% { transform: rotate(0); } 30% { transform: rotate(22deg); } 65% { transform: rotate(-18deg); } }
@keyframes aero-takeoff { 0%,100% { transform: translateY(0); } 35% { transform: translateY(-24px) rotate(-7deg); } 60% { transform: translateY(-20px) rotate(7deg); } 80% { transform: translateY(-14px); } }
@keyframes echo-happy { 0%,100% { transform: rotate(0); } 20%,60% { transform: rotate(-9deg); } 40%,80% { transform: rotate(9deg); } }
@keyframes pixel-celebrate { 0%,100% { transform: translateY(0) rotate(-3deg); } 50% { transform: translateY(-7px) rotate(3deg); } }
@keyframes bolt-nod { 0%,100% { transform: rotate(0); } 50% { transform: rotate(-13deg) translateY(2px); } }
@media (max-width: 650px) {
  .robot-reaction { font-size: 11px; max-width: 150px; }
  .page-hero-robot .robot-reaction { bottom: auto; top: 100%; }
}

/* A compact, recognizable toolkit row. Logos stay local to the site. */
.tools-section { padding-block: 64px; border-bottom: 1px solid var(--line); }
.tools-heading { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 30px; }
.tools-heading h2 { font-size: 36px; margin-top: 10px; }
.tools-heading p { font-size: 16px; line-height: 1.7; }
.tools-row { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border: 1px solid var(--line); border-radius: 16px; overflow: hidden; background: #0e1823; }
.tool-card { position: relative; display: flex; align-items: flex-start; flex-direction: column; gap: 10px; padding: 24px 20px; border-right: 1px solid var(--line); transition: background .25s; }
.tool-card:last-child { border-right: 0; }
.tool-card img { width: 34px; height: 34px; object-fit: contain; filter: invert(1); margin-bottom: 7px; }
.tool-card strong { font-size: 17px; line-height: 1.3; }
.tool-card > span:not(.tool-arrow) { font-size: 12px; color: #a6b7c5; line-height: 1.5; }
.tool-card .tool-arrow { position: absolute; top: 20px; right: 16px; color: var(--accent); opacity: 0; transform: translate(-4px,4px); transition: opacity .2s,transform .2s; }
.tool-card:hover, .tool-card:focus-visible { background: #192a35; }
.tool-card:hover .tool-arrow, .tool-card:focus-visible .tool-arrow { opacity: 1; transform: none; }
.tools-note { font-size: 12px; margin-top: 18px; color: #91a4b3; }

/* Brand showcase cards and sample identities are separate from case-study data. */
.client-section { background: radial-gradient(ellipse at 50% 0, #142333, transparent 65%), #0b131d; border-block: 1px solid #203040; }
.sample-label { display: inline-block; color: #9bb5c5; font-size: 12px; margin-top: 17px; padding: 7px 11px; border: 1px solid #a8c3d433; border-radius: 30px; }
.client-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; align-items: start; }
.client-card { --client-color: #8de3cf; background: #14212a; border: 1px solid #30404f; border-radius: 15px; transition: border-color .2s, background .2s; overflow: hidden; }
.client--clysar { --client-color: #f2b4b9; }
.client--avaibe { --client-color: #be94ff; }
.client--dictation { --client-color: #a6c9ff; }
.client--asterlane { --client-color: #a5c8ff; }
.client--solvexa { --client-color: #e8d49b; }
.client--kinetra { --client-color: #a6cba2; }
.client-card summary { display: flex; flex-direction: column; align-items: center; position: relative; padding: 27px 10px 23px; cursor: pointer; list-style: none; min-height: 206px; }
.client-card summary::-webkit-details-marker { display: none; }
.client-logo { display: grid; place-items: center; width: 48px; height: 48px; flex-shrink: 0; color: var(--client-color); margin-bottom: 17px; transition: transform .25s; }
.client-logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.client--clysar .client-logo { width: min(120px, 100%); }
.client--dictation .client-logo img { border-radius: 11px; }
.client-wordmark { display: grid; place-items: center; min-height: 44px; max-width: 100%; text-align: center; font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: -.5px; }
.client--avaibe .client-wordmark, .client--kinetra .client-wordmark { letter-spacing: 1px; text-transform: uppercase; font-size: 17px; }
.client--dictation .client-wordmark { font-size: 16px; max-width: 140px; letter-spacing: -.2px; }
.client--asterlane .client-wordmark { font-family: Georgia, serif; font-weight: 400; font-size: 22px; }
.client-industry { display: grid; place-items: center; min-height: 33px; font-size: 11px; line-height: 1.5; color: #a8b7c4; margin-top: 10px; text-align: center; }
.client-expand { position: absolute; right: 12px; top: 9px; color: #819aa9; font-size: 18px; }
.client-card:hover, .client-card[open] { border-color: var(--client-color); background: #1a2a36; }
.client-card:hover .client-logo { transform: translateY(-4px) rotate(-5deg); }
.client-card[open] .client-expand { transform: rotate(45deg); }
.client-card > p { font-size: 13px; padding: 0 16px 20px; line-height: 1.7; color: #bbcbd6; }
.client-card > p > span { display: block; color: var(--client-color); font: 10px/1.5 var(--mono); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 7px; }
.client-instruction { font-size: 12px; margin-top: 24px; text-align: center; color: #9bb0bf; }

/* The possibilities lab works entirely in the visitor's browser. */
.project-explorer { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #34495b; border-radius: 24px; background: #101b28; overflow: hidden; box-shadow: 0 25px 80px #0002; }
.explorer-controls { padding: 38px; }
.explorer-topline, .blueprint-topline { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.lab-badge { display: flex; align-items: center; gap: 7px; color: #a9d5ca; font-size: 10px; border: 1px solid #48766b66; border-radius: 20px; padding: 4px 9px; }
.lab-badge .status-dot { width: 4px; height: 4px; }
.explorer-controls h2 { font-size: clamp(34px, 3.5vw, 48px); margin: 25px 0 16px; line-height: 1.15; }
.explorer-controls > p { font-size: 16px; line-height: 1.7; }
.explorer-options { border: 0; margin: 30px 0 0; padding: 0; min-width: 0; }
.explorer-options legend { padding: 0; font-size: 14px; font-weight: 600; margin-bottom: 15px; color: #d7e4ea; }
.explorer-options legend > span { color: #7eb0b3; font-family: var(--mono); font-size: 11px; margin-right: 10px; }
.goal-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.goal-choice { display: grid; grid-template-columns: 30px 1fr; gap: 10px; align-items: center; position: relative; padding: 17px 14px; color: #c9d5e1; background: #0b1520; border: 1px solid #314151; border-radius: 10px; text-align: left; line-height: 1.5; transition: background .2s,border-color .2s; }
.goal-choice .robot-icon { width: 28px; height: 28px; }
.goal-choice > span:nth-child(2) { font-size: 14px; max-width: 115px; }
.choice-check { position: absolute; right: 8px; top: 4px; color: var(--accent); opacity: 0; font-size: 13px; }
.goal-choice[aria-pressed="true"] { background: #183934; border-color: #79cfba; color: #edfffa; }
.goal-choice[aria-pressed="true"] .choice-check { opacity: 1; }
.goal-choice:hover { border-color: #7fbaa9; }
.stage-choices { display: flex; flex-wrap: wrap; gap: 8px; }
.stage-choices button { padding: 9px 12px; border-radius: 30px; border: 1px solid #354858; background: transparent; color: #aebece; font-size: 12px; line-height: 1.6; }
.stage-choices button[aria-pressed="true"] { color: #e2fff8; background: #23473f; border-color: #72b7a6; }
.explorer-controls .explorer-note { margin-top: 24px; color: #8fa7b8; font-size: 12px; }
.explorer-jump { display: none; }
.explorer-result { position: relative; padding: 30px 34px 22px; border-left: 1px solid #34495b; background: radial-gradient(ellipse at 50% 20%, #26434d66, transparent 65%), #0b1621; }
.blueprint-topline { border-bottom: 1px solid #52728644; padding-bottom: 15px; }
.blueprint-topline .mono { font-size: 10px; color: #9cbdc9; }
.blueprint-code { font: 10px/1.5 var(--mono); color: #6c94a8; }
.explorer-visual { position: relative; height: 126px; display: grid; place-items: center; margin: 6px 0 4px; }
.lab-core { position: relative; width: 66px; height: 66px; display: grid; place-items: center; border: 1px solid #9ae8d173; border-radius: 18px; background: linear-gradient(135deg,#5fa69d44,#112e3d); box-shadow: 0 0 35px #71ead515,inset 0 0 16px #a8e8dd15; transform: rotate(-9deg); animation: lab-hover 6s ease-in-out infinite; }
.lab-core .robot-icon { width: 39px; height: 39px; transform: rotate(9deg); }
.lab-orbit { position: absolute; width: 206px; height: 80px; border: 1px solid #628e9e66; border-radius: 50%; transform: rotate(-18deg); }
.lab-orbit-secondary { width: 143px; height: 103px; transform: rotate(30deg); border-style: dashed; border-color: #8b91cc50; }
.lab-node { position: absolute; width: 8px; height: 8px; background: #9ee4d4; box-shadow: 0 0 14px #9ee4d455; border-radius: 2px; animation: bot-light 5s infinite; }
.lab-node-a { left: calc(50% - 100px); top: 75px; }
.lab-node-b { left: calc(50% + 92px); top: 36px; background: #adb3ed; animation-delay: -2s; }
.lab-node-c { left: calc(50% - 45px); top: 15px; width: 5px; height: 5px; animation-delay: -3s; }
.explorer-result-copy > .eyebrow { font-size: 10px; letter-spacing: 1.4px; }
.explorer-result h3 { margin: 9px 0 10px; font-size: 27px; }
.explorer-result-copy > p { font-size: 14px; line-height: 1.7; }
.deliverable-chips { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 16px; }
.deliverable-chips span { font-size: 10px; line-height: 1.6; padding: 5px 9px; border: 1px solid #53748555; border-radius: 6px; color: #bcd4dc; background: #8bacbb0a; }
.explorer-roadmap { list-style: none; margin: 22px 0; padding: 0; }
.explorer-roadmap li { display: flex; gap: 14px; position: relative; padding: 0 0 14px; }
.explorer-roadmap li:last-child { padding-bottom: 0; }
.explorer-roadmap li > span { font: 10px/28px var(--mono); text-align: center; color: #9cdbcf; width: 28px; height: 28px; flex-shrink: 0; border: 1px solid #446a70; border-radius: 50%; background: #142c35; }
.explorer-roadmap li:not(:last-child)::before { content: ""; position: absolute; height: calc(100% - 28px); border-left: 1px dashed #446a70; left: 14px; top: 28px; }
.explorer-roadmap strong { font-size: 14px; line-height: 1.5; color: #d6e9ef; }
.explorer-roadmap p { font-size: 13px; line-height: 1.6; margin-top: 3px; }
.explorer-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 24px; border-top: 1px solid #38526280; padding-top: 13px; }
.explorer-actions .text-link { font-size: 13px; gap: 13px; }
.copy-plan { background: transparent; border: 0; color: #9ed9cc; font-size: 12px; padding: 8px 0; }
.copy-plan:hover { color: #e4fff5; }
.explorer-result-copy > .explorer-feedback { color: #9fd8cb; font-size: 11px; min-height: 18px; margin-top: 10px; }
.direct-contact-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; margin-top: 36px; }
.direct-contact-card { border: 1px solid #2e4354; padding: 28px; border-radius: 16px; background: #101c28; }
a.direct-contact-card:hover { border-color: var(--accent); background: #152b35; }
.direct-contact-card .eyebrow { font-size: 10px; letter-spacing: 1px; }
.direct-contact-card h2 { font-size: 22px; margin: 18px 0 12px; }
.direct-contact-card h2 span { color: var(--accent); }
.direct-contact-card p { font-size: 16px; color: #d1e1e8; overflow-wrap: anywhere; }
.direct-contact-card > span:last-child { display: block; margin-top: 12px; font-size: 13px; color: #91a7b9; line-height: 1.7; }
.conversation-section { display: grid; grid-template-columns: 1fr 1.25fr; gap: 70px; }
.conversation-section h2 { font-size: 34px; margin: 14px 0 20px; }
.conversation-section > div > p { font-size: 16px; line-height: 1.8; }
.conversation-topics details { border-bottom: 1px solid #354858; padding: 18px 0; }
.conversation-topics summary { cursor: pointer; list-style: none; display: flex; gap: 20px; justify-content: space-between; font-size: 17px; line-height: 1.6; }
.conversation-topics summary::-webkit-details-marker { display: none; }
.conversation-topics summary span { color: var(--accent); }
.conversation-topics details[open] summary span { transform: rotate(45deg); }
.conversation-topics p { font-size: 15px; padding: 15px 30px 5px 0; }
@keyframes lab-hover { 0%,100% { transform: translateY(0) rotate(-9deg); } 50% { transform: translateY(-6px) rotate(-3deg); } }
@media (max-width: 1100px) {
  .client-grid, .tools-row { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .tool-card:nth-child(3) { border-right: 0; }
  .tool-card:nth-child(-n+3) { border-bottom: 1px solid var(--line); }
  .explorer-controls { padding: 28px; }
  .explorer-result { padding: 26px; }
  .goal-choice { padding: 14px 11px; gap: 8px; }
  .goal-choice > span:nth-child(2) { font-size: 13px; }
  .direct-contact-grid { gap: 14px; }
  .direct-contact-card { padding: 22px; }
  .direct-contact-card p { font-size: 14px; }
}
@media (max-width: 800px) {
  .explorer-jump { display: inline-flex; margin-top: 20px; }
  .project-explorer { grid-template-columns: 1fr; }
  .explorer-result { border-left: 0; border-top: 1px solid #34495b; padding: 28px; }
  .goal-choice > span:nth-child(2) { font-size: 15px; max-width: none; }
  .explorer-controls h2 br { display: none; }
  .explorer-controls h2 { max-width: 420px; }
  .direct-contact-grid { grid-template-columns: 1fr; }
  .conversation-section { grid-template-columns: 1fr; gap: 25px; }
}
@media (max-width: 650px) {
  .tools-section { padding-block: 45px; }
  .tools-heading { display: block; }
  .tools-heading h2 { font-size: 32px; }
  .tools-heading p { margin-top: 15px; font-size: 15px; }
  .tools-heading p br { display: none; }
  .tools-row, .client-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tool-card { padding: 22px 16px; border-bottom: 1px solid var(--line); }
  .tool-card:nth-child(3) { border-right: 1px solid var(--line); }
  .tool-card:nth-child(2n) { border-right: 0; }
  .tool-card:nth-last-child(-n+2) { border-bottom: 0; }
  .tool-card strong { font-size: 16px; }
  .tool-card > span:not(.tool-arrow) { font-size: 11px; }
  .tools-note, .client-instruction { font-size: 11px; line-height: 1.8; }
  .client-grid { gap: 12px; }
  .client-card summary { padding: 24px 9px 20px; min-height: 170px; }
  .sample-label { font-size: 11px; }
  .explorer-controls, .explorer-result { padding: 24px 20px; }
  .project-explorer { border-radius: 16px; }
  .explorer-controls h2 { font-size: 34px; }
  .explorer-topline > .eyebrow { font-size: 9px; letter-spacing: 1px; }
  .lab-badge { font-size: 9px; padding: 3px 7px; }
  .goal-choice { grid-template-columns: 24px 1fr; gap: 8px; padding: 14px 10px; }
  .goal-choice .robot-icon { width: 24px; height: 24px; }
  .goal-choice > span:nth-child(2) { font-size: 13px; }
  .stage-choices button { font-size: 12px; padding: 8px 10px; }
  .explorer-result h3 { font-size: 25px; }
  .explorer-actions { gap: 8px 16px; }
  .explorer-actions .text-link { font-size: 12px; }
  .direct-contact-card p { font-size: 16px; }
  .conversation-section h2 { font-size: 31px; }
  .conversation-topics summary { font-size: 16px; }
}
@media (max-width: 360px) {
  .goal-choice { grid-template-columns: 1fr; min-height: 100px; gap: 10px; }
  .goal-choice > span:nth-child(2) { font-size: 14px; }
}
