/* Homepage section 4: the AI & software chapter. A diamond portal opens on a pinned scene where scattered work is read and sorted onto one board.
   Without .is-live (no JS, reduced motion) the section is a plain block showing the finished board. */

.ai-ch,.ai-zone,.ai-marker{
  --ai-void:#020814;
  --ai-card:#0a2242;
  --ai-line:#44adfe24;
  --ai-grid:#44adfe0f;
  --ai-sky:#44ADFE;
  --ai-mute:#8ea6bf;
  --ai-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --ox-navy:#042953;
  --ox-blue:#0062D6;
  --ox-sky:#44ADFE;
}
.ai-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ai-ch{position:relative;background:var(--ai-void);color:#eaf4ff}
.ai-ch :focus-visible{outline:3px solid var(--ai-sky);outline-offset:3px}
.ai-ch :where(p){margin:0}
.ai-ch-rim,.ai-ch-seed{display:none}
.ai-ch-world{position:relative}

/* One night sky behind every AI section (this chapter, #methode and the next-step section).
   Each layer fades out before the top and bottom edges, so stacked sections meet without a seam. */
.ai-ch-world,.op.ai-zone,.op.is-live .op-stage,.ai-next.ai-zone{
  background-color:var(--ai-void);
  background-image:
    radial-gradient(circle,#e1f3ff61 .7px,transparent 1px),
    radial-gradient(circle,#81bbf742 .6px,transparent 1px),
    radial-gradient(circle,#ffffff4b .5px,transparent 1px),
    radial-gradient(ellipse 34% 36% at 82% 32%,#1b5c8640,transparent 75%),
    radial-gradient(ellipse 35% 36% at 15% 68%,#123d6c45,transparent 75%),
    radial-gradient(ellipse 46% 44% at 52% 50%,transparent 94%,#87c8ff14 96%,transparent 98%),
    radial-gradient(ellipse 72% 50% at 50% 50%,#0b2446,#051329 45%,var(--ai-void));
  background-size:151px 137px,213px 189px,287px 241px,auto,auto,auto,auto;
  background-position:18px 29px,97px 75px,41px 118px,0 0,0 0,0 0,0 0;
}
.ai-ch-inner{display:grid;gap:clamp(1.5rem,3vw,2.25rem);padding-block:clamp(4.5rem,9vw,7rem)}

/* Heading */
.ai-ch-head{display:grid;gap:1.4rem 3rem;align-items:end}
.ai-ch-stamp{display:inline-flex;align-items:center;gap:.7rem;margin-bottom:1rem;font-family:var(--ai-mono);font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#a9d8ff}
.ai-ch-stamp-num{display:grid;place-items:center;min-width:2.1rem;height:1.6rem;padding:0 .4rem;border:1px solid #44adfe66;border-radius:.35rem;background:#44adfe1a;color:var(--ai-sky);font-weight:600}
.ai-ch h2{max-width:17ch;margin:0;color:#fff;font-size:clamp(2.05rem,4.4vw,3.4rem);line-height:1.04;letter-spacing:-.045em}
.ai-ch h2 em{display:block;font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.01em;color:#8fcbff}
.ai-ch-problems{display:grid;gap:.6rem;margin:0;padding:0;list-style:none}
.ai-ch-problems li{display:flex;align-items:baseline;gap:.85rem;color:#c9dbee;font-size:1rem;line-height:1.4}
.ai-num{position:relative;flex:none;width:1.7rem;font-family:var(--ai-mono);font-size:.72rem;font-weight:500;color:var(--ai-sky)}
.ai-num span,.ai-num svg{transition:opacity .35s ease,transform .35s cubic-bezier(.2,.8,.2,1)}
.ai-num svg{position:absolute;left:0;top:50%;width:1.05rem;height:1.05rem;opacity:0;transform:translateY(-50%) scale(.6)}

/* Board */
.ai-ch-scene{position:relative}
.ai-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.ai-col{position:relative;display:flex;flex-direction:column;gap:.55rem;min-width:0;padding:.6rem}
.ai-col::before{content:'';position:absolute;inset:0;border:1px solid var(--ai-line);border-radius:.9rem;background:linear-gradient(180deg,#0b2446b3,#06162c66);opacity:var(--board,1)}
.ai-col-head{position:relative;display:flex;align-items:center;gap:.5rem;padding:.15rem .2rem;font-family:var(--ai-mono);font-size:.62rem;font-weight:500;line-height:1.25;letter-spacing:.06em;text-transform:uppercase;color:var(--ai-mute);opacity:var(--board,1)}
.ai-col-dot{flex:none;width:.45rem;height:.45rem;border-radius:50%;background:var(--c);box-shadow:0 0 .6rem var(--c)}
.ai-col-head b{flex:none;margin-left:auto;min-width:1.45rem;padding:.12rem .35rem;border-radius:.3rem;background:#ffffff0f;color:#dbe9f7;font-weight:500;text-align:center;font-variant-numeric:tabular-nums}
.ai-col-head b.is-bump{animation:ai-bump .4s cubic-bezier(.2,.8,.2,1)}
.ai-col-body{position:relative;display:grid;gap:.5rem}
.ai-pair{position:relative}
.ai-item{position:relative}
.ai-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.1rem .6rem;padding:.6rem .65rem;border:1px solid #44adfe24;border-radius:.7rem;background:var(--ai-card);box-shadow:0 .9rem 1.6rem -1.1rem #000c}
.ai-card-icon{grid-row:span 3;align-self:start;display:none;place-items:center;width:1.85rem;height:1.85rem;border-radius:.5rem;background:color-mix(in srgb,var(--c) 16%,transparent);color:var(--c)}
.ai-card-icon svg{width:1rem;height:1rem}
.ai-card strong{overflow:hidden;font-family:Manrope,sans-serif;font-size:.84rem;font-weight:800;line-height:1.2;letter-spacing:-.01em;color:#fff;text-overflow:ellipsis;white-space:nowrap}
.ai-card small{font-size:.72rem;line-height:1.3;color:var(--ai-mute)}
.ai-card-src{margin-bottom:.1rem;font-family:var(--ai-mono);font-size:.58rem;font-weight:500;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:var(--c)}
.ai-ghost{position:relative;display:grid;gap:.45rem;padding:.75rem .7rem;border:1px dashed #44adfe24;border-radius:.7rem;opacity:calc(var(--board,1) * .7)}
.ai-ghost i{height:.38rem;border-radius:1rem;background:#44adfe14}
.ai-ghost i:last-child{width:55%}
.ai-badge{position:absolute;top:-.6rem;right:.55rem;padding:.14rem .45rem;border-radius:999px;background:var(--ai-sky);color:#02142b;font-family:var(--ai-mono);font-size:.58rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 0 0 .2rem var(--ai-void)}
.ai-raw,.ai-item--dupe,.ai-scan{display:none}

/* Footer: sample-data note and CTAs */
.ai-ch-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:1rem 1.5rem}
.ai-ch-actions{display:flex;flex-wrap:wrap;gap:.65rem}
.ai-btn-ghost{border-color:#ffffff3d;background:#ffffff08;color:#fff}
.ai-btn-ghost:hover{border-color:#fff;background:#ffffff14;transform:translateY(-2px)}

/* ---------- Live: pinned stage driven by ai-chapter.js ---------- */
.ai-ch.is-live{--ai-run:260svh;height:calc(100svh + var(--ai-run));background:#fff}
.ai-ch.is-live.is-open{background:var(--ai-void)}
.is-live .ai-ch-stage{position:sticky;top:0;height:100svh;overflow:hidden;background:#fff}
.is-live .ai-ch-stage::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,#0429531a 1px,transparent 1.3px);background-size:1.5rem 1.5rem;background-position:center;-webkit-mask-image:radial-gradient(ellipse 55% 50% at 50% 50%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 55% 50% at 50% 50%,#000 20%,transparent 75%);pointer-events:none}
/* The portal: the world clipped to a diamond, inside a thin bright edge and a soft two-step glow. */
.is-live .ai-ch-world,.is-live .ai-ch-rim,.is-live .ai-ch-rim::before,.is-live .ai-ch-rim::after{position:absolute;inset:0;clip-path:polygon(50% calc(50% - var(--r)),calc(50% + var(--r)) 50%,50% calc(50% + var(--r)),calc(50% - var(--r)) 50%)}
.is-live .ai-ch-world,.is-live .ai-ch-rim{z-index:1}
.is-live .ai-ch-world{--r:var(--portal,0px);opacity:var(--world,1)}
.is-live .ai-ch-rim{--r:var(--portal-glow,23px);display:block;background:#44adfe14}
.is-live .ai-ch-rim::after{--r:var(--portal-halo,15px);content:'';background:#44adfe24}
.is-live .ai-ch-rim::before{--r:var(--portal-rim,9px);content:'';z-index:1;background:linear-gradient(135deg,#8fd0ff,var(--ai-sky) 45%,var(--ox-blue))}
.is-live.is-open .ai-ch-world{clip-path:none}
.is-live.is-open .ai-ch-rim{display:none}
.is-live .ai-ch-seed{position:absolute;left:50%;top:calc(50% + var(--portal-glow,23px) + 1rem);display:flex;align-items:center;gap:.55rem;font-family:var(--ai-mono);font-size:.68rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;color:var(--ox-navy);opacity:var(--seed,1);transform:translateX(-50%)}
.is-live .ai-ch-seed b{color:var(--ox-blue);font-weight:600}
.is-live .ai-ch-inner{box-sizing:border-box;height:100%;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(.85rem,2.2vh,1.5rem);padding-block:clamp(3.5rem,8.5vh,5.75rem) clamp(1rem,3vh,1.75rem);transform:scale(var(--zoom,1));transform-origin:50% 45%}
.is-live .ai-ch-head{opacity:var(--title,0);transform:translateY(calc((1 - var(--title,0)) * 1.25rem))}
.is-live .ai-ch-problems li{opacity:0;transform:translateX(-.6rem);transition:opacity .45s ease,transform .45s cubic-bezier(.2,.8,.2,1)}
.is-live .ai-ch-problems li.is-on{opacity:1;transform:none}
.is-live .ai-ch-problems.is-done .ai-num span{opacity:0;transform:scale(.6)}
.is-live .ai-ch-problems.is-done .ai-num svg{opacity:1;transform:translateY(-50%)}
.is-live .ai-ch-problems.is-done li{color:#eaf4ff}
.is-live .ai-ch-scene{display:flex;flex-direction:column;justify-content:center}
.is-live .ai-item{z-index:1;will-change:transform}
.is-live .ai-item.is-flying{z-index:3}
.is-live .ai-card{opacity:calc(var(--f,0) * 1.6 - .6)}
.is-live .ai-badge{opacity:0;transform:scale(.6);transition:opacity .3s ease,transform .35s cubic-bezier(.3,1.6,.5,1)}
.is-live .is-merged .ai-badge{opacity:1;transform:none}
.is-live .ai-item--dupe{display:block;position:absolute;inset:0}
.is-live [data-ai-lite]{display:none}
.is-live .ai-scan{display:block;position:absolute;top:-1.25rem;bottom:-1.25rem;left:0;z-index:4;width:2px;background:linear-gradient(transparent,var(--ai-sky) 12%,#fff 50%,var(--ai-sky) 88%,transparent);box-shadow:0 0 1.1rem .15rem #44adfe99;opacity:var(--scan-o,0);transform:translateX(var(--scan-x,0px));pointer-events:none}
.is-live .ai-scan::before{content:'';position:absolute;top:0;right:2px;bottom:0;width:8rem;background:linear-gradient(90deg,transparent,#44adfe1c)}
.is-live .ai-ch-actions{opacity:var(--cta,0);transform:translateY(calc((1 - var(--cta,0)) * 1rem))}
.is-live:not(.is-cta) .ai-ch-actions{pointer-events:none}
.is-live .ai-ch-actions:focus-within{opacity:1;transform:none}
.is-live .ai-ch-foot{gap:.75rem}
.is-live .ai-ch-actions{flex-wrap:nowrap;width:100%}
.is-live .ai-ch-actions .ox-btn{flex:1 1 0;min-width:0;min-height:2.85rem;padding:.55rem .8rem;font-size:.82rem;text-align:center}
.is-live .ai-ch-actions svg{display:none}
.is-live .ai-ch-problems li{font-size:.88rem}
.is-live .ai-ch-problems{gap:.35rem}
.is-live .ai-card small,.is-live .ai-ghost{display:none}

/* Raw items: what the work looks like before it is sorted */
.is-live .ai-raw{display:block;position:absolute;left:50%;top:50%;width:var(--w,14em);font-size:var(--raw,.74rem);opacity:calc(1 - var(--f,0) * 1.5);transform:translate(-50%,-50%) scale(calc(1 - .22 * var(--f,0)));pointer-events:none}
.ai-raw-body{position:relative;border-radius:.75em;box-shadow:0 1.4em 2.6em -1em #000000b3,0 0 0 1px #ffffff14;outline:2px solid transparent;outline-offset:.3em;transition:outline-color .3s ease}
.is-live.is-near .ai-raw-body{animation:ai-bob var(--bob,6s) ease-in-out var(--bob-d,0s) infinite alternate}
.is-read .ai-raw-body{outline-color:var(--ai-sky)}
.ai-tag{position:absolute;left:50%;bottom:100%;margin-bottom:.9em;display:inline-flex;align-items:center;gap:.45em;padding:.35em .7em;border:1px solid #44adfe80;border-radius:999px;background:#031a36f0;color:#c4e6ff;font-family:var(--ai-mono);font-size:.82em;font-weight:500;white-space:nowrap;opacity:0;transform:translate(-50%,.4em);transition:opacity .3s ease,transform .35s cubic-bezier(.2,.8,.2,1)}
.ai-tag::before{content:'';width:.42em;height:.42em;transform:rotate(45deg);background:var(--ai-sky)}
.is-read .ai-tag{opacity:1;transform:translate(-50%,0)}

.ai-raw--mail{--w:16em}
.ai-raw--mail .ai-raw-body{padding:.9em 1em;background:#fff;color:#1d2b3a}
.ai-mail-top{font-size:.78em;color:#6c7e8f}
.ai-mail-subject{margin:.3em 0 .2em;font-family:Manrope,sans-serif;font-size:1.05em;font-weight:800;letter-spacing:-.01em;color:#0b1f38}
.ai-mail-snippet{font-size:.86em;color:#5b6b7b}
.ai-raw--sheet{--w:15em}
.ai-raw--sheet .ai-raw-body{overflow:hidden;background:#fff;color:#1d2b3a;font-family:var(--ai-mono);font-size:.84em}
.ai-sheet-bar{padding:.55em .8em;background:#1d6f42;color:#fff;font-size:.92em}
.ai-sheet-row{display:grid;grid-template-columns:1.3fr 1fr .6fr;border-top:1px solid #e3e8ee}
.ai-sheet-row span{padding:.42em .6em;border-left:1px solid #e3e8ee}
.ai-sheet-row span:first-child{border-left:0}
.ai-sheet-row.is-hit{background:#fff3b0}
.ai-raw--sms{--w:14em}
.ai-raw--sms .ai-raw-body{display:grid;gap:.45em;justify-items:end;padding:.2em;background:transparent;box-shadow:none}
.ai-sms-photo{width:7.5em;height:5em;border-radius:1em 1em .3em 1em;background:linear-gradient(160deg,#c9b8a3,#8a7766 55%,#5e5146);box-shadow:0 1em 2em -1em #000a}
.ai-sms-bubble{padding:.6em .9em;border-radius:1.1em 1.1em .3em 1.1em;background:#30c75a;color:#fff;font-size:1.05em;font-weight:600;box-shadow:0 1em 2em -1em #000a}
.ai-sms-meta{font-size:.75em;color:#9fb3c8}
.ai-raw--voice{--w:15em}
.ai-raw--voice .ai-raw-body{padding:.75em .95em;border-radius:1.4em;background:#f3f6fa;color:#1d2b3a}
.ai-voice-label{font-size:.76em;color:#6c7e8f}
.ai-voice-row{display:flex;align-items:center;gap:.6em;margin-top:.45em}
.ai-voice-play{position:relative;flex:none;width:2em;height:2em;border-radius:50%;background:var(--ox-blue)}
.ai-voice-play::after{content:'';position:absolute;left:.78em;top:.6em;border-style:solid;border-width:.4em 0 .4em .62em;border-color:transparent transparent transparent #fff}
.ai-wave{display:flex;flex:1;align-items:center;gap:.18em;height:1.8em}
.ai-wave i{flex:1;border-radius:1em;background:#9db4cc}
.ai-wave i:nth-child(1),.ai-wave i:nth-child(13){height:30%}.ai-wave i:nth-child(2),.ai-wave i:nth-child(8){height:65%}.ai-wave i:nth-child(3),.ai-wave i:nth-child(11){height:100%}.ai-wave i:nth-child(4),.ai-wave i:nth-child(14){height:45%}.ai-wave i:nth-child(5),.ai-wave i:nth-child(9){height:80%}.ai-wave i:nth-child(6),.ai-wave i:nth-child(12){height:55%}.ai-wave i:nth-child(7),.ai-wave i:nth-child(10){height:90%}
.ai-voice-row b{font-family:var(--ai-mono);font-size:.8em;font-weight:500;color:#41566b}
.ai-raw--note{--w:10.5em}
.ai-raw--note .ai-raw-body{padding:1.1em 1em 1.5em;border-radius:.15em;background:linear-gradient(170deg,#ffe98a,#ffd84d 70%,#f2c638);color:#3d3000;font-family:'Instrument Serif',Georgia,serif;font-size:1.3em;font-style:italic;line-height:1.15}
.ai-raw--pdf{--w:14.5em}
.ai-raw--pdf .ai-raw-body{display:flex;align-items:center;gap:.8em;padding:.8em .9em;background:#fff;color:#1d2b3a}
.ai-pdf-icon{display:grid;flex:none;place-items:end center;width:2.6em;height:3.2em;padding-bottom:.35em;border-radius:.3em;background:#fbe9e9;color:#fff;font-family:var(--ai-mono);font-size:.78em;font-weight:600;box-shadow:inset 0 -1.15em 0 #e5484d}
.ai-raw--pdf p{display:grid;gap:.15em;min-width:0}
.ai-raw--pdf b{overflow:hidden;font-family:var(--ai-mono);font-size:.84em;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.ai-raw--pdf p>span{font-size:.75em;color:#7a8a9a}
.ai-raw--invoice{--w:12.5em}
.ai-raw--invoice .ai-raw-body{padding:.95em 1em 1.1em;background:#fffdf6;color:#1d2b3a}
.ai-invoice-title{font-family:var(--ai-mono);font-size:.86em;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.ai-invoice-lines{display:grid;gap:.45em;margin-top:.7em}
.ai-invoice-lines i{height:.35em;border-radius:1em;background:#e1e6ec}
.ai-invoice-lines i:nth-child(2){width:70%}
.ai-invoice-lines i:nth-child(3){width:45%}
.ai-invoice-stamp{position:absolute;right:.7em;bottom:.9em;padding:.15em .5em;border:2px solid #e5484d;border-radius:.3em;color:#e5484d;font-family:var(--ai-mono);font-size:.82em;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transform:rotate(-12deg)}
.ai-raw--cal{--w:9.5em}
.ai-raw--cal .ai-raw-body{overflow:hidden;background:#fff;color:#1d2b3a;text-align:center}
.ai-cal-head{padding:.35em;background:#e5484d;color:#fff;font-family:var(--ai-mono);font-size:.78em;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.ai-cal-day{font-family:Manrope,sans-serif;font-size:2.4em;font-weight:800;line-height:1.15;letter-spacing:-.04em;color:#0b1f38}
.ai-cal-note{padding:0 .6em .7em;font-size:.82em;color:#5b6b7b}
.ai-raw--form{--w:14em}
.ai-raw--form .ai-raw-body{overflow:hidden;padding-bottom:.85em;background:#fff;color:#1d2b3a}
.ai-form-bar{display:flex;gap:.3em;padding:.5em .7em;background:#edf1f5}
.ai-form-bar i{width:.5em;height:.5em;border-radius:50%;background:#c3ccd6}
.ai-form-title{padding:.6em .85em .2em;font-family:Manrope,sans-serif;font-size:.98em;font-weight:800;color:#0b1f38}
.ai-form-field{display:flex;justify-content:space-between;gap:.5em;margin:.35em .85em 0;padding:.35em .55em;border:1px solid #dfe5ec;border-radius:.35em;font-size:.78em;color:#7a8a9a}
.ai-form-field b{font-weight:600;color:#1d2b3a}
.ai-form-send{height:1.5em;margin:.55em .85em 0;border-radius:.35em;background:var(--ox-blue)}

@keyframes ai-bob{from{transform:translateY(-.35em) rotate(-.7deg)}to{transform:translateY(.35em) rotate(.7deg)}}
@keyframes ai-bump{40%{transform:scale(1.35);background:color-mix(in srgb,var(--c) 45%,transparent)}}

/* ---------- AI mode for the rest of the page ---------- */
.ai-marker{position:fixed;left:0;top:50%;z-index:60;display:flex;align-items:center;gap:.6rem;padding:.95rem .3rem;border:1px solid #44adfe40;border-right:0;border-radius:.55rem 0 0 .55rem;background:#020c1ce6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#d6ebff;font-family:var(--ai-mono);font-size:.58rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;writing-mode:vertical-rl;opacity:0;transform:translate(-100%,-50%) rotate(180deg);pointer-events:none;transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1)}
.ai-marker::after{content:'';width:.42rem;height:.42rem;transform:rotate(45deg);background:var(--ai-sky);box-shadow:0 0 .6rem var(--ai-sky)}
.ai-marker b{color:var(--ai-sky);font-weight:600}
html.is-ai-mode .ai-marker{opacity:1;transform:translate(0,-50%) rotate(180deg)}
.ai-zone{background-image:linear-gradient(var(--ai-grid) 1px,transparent 1px),linear-gradient(90deg,var(--ai-grid) 1px,transparent 1px);background-size:3rem 3rem;background-position:center top}

@media (min-width:720px){
  .ai-ch.is-live{--ai-run:340svh}
  .is-live [data-ai-lite]{display:block}
  .ai-marker{padding:1.2rem .45rem;font-size:.64rem}
  .ai-col{padding:.7rem}
  .ai-col-head{font-size:.66rem;letter-spacing:.1em}
  .ai-card{padding:.75rem .8rem}
  .ai-card-src{font-size:.6rem}
  .ai-ghost{padding-left:3.1rem}
  .ai-card strong{font-size:.9rem}
  .ai-card small{font-size:.76rem}
  .ai-card{grid-template-columns:auto minmax(0,1fr)}
  .ai-card-icon{display:grid;width:2rem;height:2rem}
  .is-live .ai-raw{--raw:.84rem}
  .is-live .ai-ch-actions{width:auto}
  .is-live .ai-ch-actions .ox-btn{flex:0 1 auto;padding:.6rem 1.05rem;font-size:.86rem}
  .is-live .ai-ch-actions svg{display:block}
  .is-live .ai-ch-problems li{font-size:1rem}
  .is-live .ai-ch-problems{gap:.6rem}
  .is-live .ai-card small{display:block}
  .is-live .ai-ghost{display:grid}
}
@media (min-width:900px){
  .ai-ch-head{grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr)}
  .ai-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
  .is-live .ai-raw{--raw:.9rem}
}
/* Short phones: keep the pinned scene inside one screen. */
@media (max-width:719.98px) and (max-height:760px){
  .is-live .ai-ch-problems{display:none}
  .is-live .ai-ch h2{font-size:1.85rem}
}
@media (prefers-reduced-motion:reduce){
  .ai-marker,.ai-num span,.ai-num svg{transition:none}
}
