.project-art.pulse { background:radial-gradient(ellipse at 70% 22%,#a87539,#4e3019 62%,#20140b); overflow:hidden; isolation:isolate; }
.project-art.pulse::before,.project-art.pulse::after { display:none; }
.lotto-cover-image { position:absolute; width:68%; height:115%; object-fit:cover; object-position:top; top:22%; left:31%; border-radius:12px; transform:rotate(-9deg); box-shadow:-14px 15px 30px #160c0870; }
.project-card > .aplisens-card-logo { width:130px; height:48px; overflow:hidden; }
.project-card > .aplisens-card-logo img { position:absolute; left:0; top:50%; width:100%; height:auto; transform:translateY(-50%); mix-blend-mode:multiply; }
.project-card .project-art .aplisens-logo-frame { display:none; }
.project-card > .lotto-card-logo { width:82px; height:54px; object-fit:contain; background:transparent; padding:0; border-radius:0; }
.lotto-hero { position:relative; isolation:isolate; height:540px; overflow:hidden; border-radius:28px; }
.lotto-hero .detail-art { position:absolute; inset:0; width:100%; height:100%; margin:0; border-radius:0; }
.lotto-hero .project-art { position:absolute; inset:0; width:100%; height:100%; transform:none; border-radius:0; }
.lotto-hero .lotto-cover-image { width:49%; height:115%; left:54%; top:11%; transform:rotate(-6deg); }
.lotto-hero-copy { position:absolute; top:37%; left:6%; width:47%; pointer-events:none; }
.lotto-hero-copy h1 { font-size:clamp(38px,5vw,66px); line-height:1.08; margin:0 0 24px; font-weight:400; }
.lotto-hero-copy > p { max-width:320px; font-size:24px; line-height:1.4; color:#ffe3be; }
.lotto-hero-logo { position:absolute; left:6%; top:8%; width:104px; height:auto; }
.lotto-cover-image[role=button] { cursor:zoom-in; }
.lotto-research .case-figure a { height:220px; background:#fff; }
.lotto-research .case-figure img { height:100%; max-height:none; object-fit:cover; object-position:top; }
.lotto-comparison { max-width:none; }
.lotto-comparison img { max-height:none; border-radius:16px; }
.lotto-decisions { display:grid; grid-template-columns:1fr 1fr; gap:32px; padding:0; margin:32px 0; list-style:none; }
.lotto-decisions li { display:flex; align-items:flex-start; gap:16px; }
.lotto-decisions li > span { flex:0 0 32px; height:32px; border-radius:50%; display:grid; place-items:center; background:#f28b2c22; color:#ffce8e; font-size:16px; }
.lotto-decisions h3 { font-size:18px; margin:8px 0 8px; }
.lotto-decisions p { margin:0; color:#ebd2b8; font-size:16px; line-height:1.7; }
.lotto-result { display:flex; align-items:center; gap:24px; margin:40px 0 16px; padding:24px; background:#ffebd20b; border-radius:20px; }
.lotto-result strong { font-size:44px; font-weight:400; color:#ffd9a3; flex-shrink:0; }
.lotto-result p { font-size:16px; line-height:1.7; color:#ebd2b8; margin:0; }
.lotto-devices { display:grid; grid-template-columns:1.75fr 1fr; align-items:start; gap:32px; margin:32px 0; }
.lotto-devices .case-figure { margin:0; width:100%; }
.lotto-devices img { max-height:700px; object-fit:contain; object-position:top; }
.aplisens-case .case-figure img { border-radius:16px; }
.tubi-case:not(.aplisens-case) .case-node { color:#fff !important; }
:root { --rich-espresso:#150b06; --bg:#150b06; }
body { background-color:#150b06; }
@media(max-width:700px){
 .lotto-hero { height:510px; border-radius:22px; }
 .lotto-hero-logo { top:5%; left:7%; width:82px; }
 .lotto-hero-copy { top:20%; left:7%; width:86%; }
 .lotto-hero-copy h1 { font-size:38px; max-width:300px; }
 .lotto-hero-copy > p { font-size:20px; max-width:230px; }
 .lotto-hero .lotto-cover-image { width:75%; left:32%; top:57%; height:90%; }
 .lotto-decisions { grid-template-columns:1fr; gap:24px; }
 .lotto-result { align-items:flex-start; flex-direction:column; gap:16px; padding:24px; }
 .lotto-devices { gap:16px; grid-template-columns:1.4fr 1fr; }
 .lotto-devices img { max-height:none; }
 .lotto-research .case-figure a { height:240px; }
}
/* Round the actual audit screenshots, including portrait-format evidence. */
.aplisens-case:not(.lotto-case) .case-figure { max-width:640px; }
.aplisens-case:not(.lotto-case) .case-figure picture { display:block; border-radius:16px; overflow:hidden; }
.aplisens-case:not(.lotto-case) .case-figure img { max-height:none; }
.aplisens-case:not(.lotto-case) .audit-mockups .case-figure:last-child img { max-height:400px; }
/* Brand marks sit on the front plane; outcomes float one layer closer to the artwork. */
.project-card > .lotto-card-logo { width:52px; height:52px; padding:8px; border-radius:15px; background:#fff1df; object-fit:contain; }
.project-card > .aplisens-card-logo { left:18px; width:86px; height:42px; background:#ffebd2; }
.project-card .project-badge.badge-forma { background:#ffebd2; }
.lotto-card-metrics { position:absolute; left:40%; top:23%; z-index:3; display:flex; flex-wrap:wrap; gap:8px; max-width:56%; transform:translateZ(38px); transition:transform .32s ease; pointer-events:none; }
.lotto-card-metrics span { font-size:14px; line-height:1.2; color:#baf0cb; background:#173d2cf2; padding:8px 8px; border-radius:20px; box-shadow:0 6px 15px #140b0633; white-space:nowrap; }
.project-card.is-tilting .lotto-card-metrics { transform:translateZ(48px); }
.lotto-before-after { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin:32px 0; align-items:start; }
.lotto-before-after .case-figure { margin:0; }
.lotto-before-after .case-figure img { max-height:none; height:auto; width:100%; }
.lotto-annotated { position:relative; }
.lotto-section-pins { position:absolute; inset:0 0 34px; pointer-events:none; }
.lotto-section-pins > span { position:absolute; right:-12px; width:28px; height:28px; display:grid; place-items:center; background:#ffebd2; color:#29180d; border-radius:50%; font-size:14px; box-shadow:0 3px 12px #170d0855; }
.lotto-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin:32px 0 16px; }
.lotto-metrics > div { display:flex; flex-direction:column; gap:8px; }
.lotto-metrics dt { color:#ebd2b8; font-size:14px; line-height:1.5; }
.lotto-metrics dd { order:-1; margin:0; color:#baf0cb; font-size:clamp(23px,3vw,34px); line-height:1.2; font-weight:400; }
.audit-status .lotto-metrics-note { font-size:14px; line-height:1.6; color:#d7c5b2; }
@media(max-width:700px){
 .lotto-metrics { grid-template-columns:1fr 1fr; gap:24px; }
 .lotto-before-after { gap:16px; }
 .lotto-section-pins > span { right:-8px; width:23px; height:23px; }
 .lotto-card-metrics,.project-card.is-tilting .lotto-card-metrics { transform:none; }
}
@media(prefers-reduced-motion:reduce){.lotto-card-metrics{transition:none}}
/* A shared, quieter perspective for the landing page and its floating results. */
.project-card .lotto-cover-image { left:25%; top:26%; width:76%; height:111%; transform-origin:50% 30%; transform:perspective(750px) rotateX(24deg) rotateY(-12deg) rotateZ(-9deg); }
.lotto-card-metrics { left:43%; top:25%; gap:8px; max-width:54%; transform-origin:50% 30%; transform:translateZ(38px) perspective(750px) rotateX(24deg) rotateY(-12deg) rotateZ(-9deg); }
.project-card.is-tilting .lotto-card-metrics { transform:translateZ(48px) perspective(750px) rotateX(24deg) rotateY(-12deg) rotateZ(-9deg); }
.lotto-card-metrics span { background:#c4f5e6; color:#00583e; box-shadow:0 6px 16px #0b332544; }
.lotto-hero-logo { padding:8px; background:#fff1df; border-radius:18px; box-sizing:content-box; }
.lotto-metrics dd { color:#3af09b; font-size:clamp(22px,2.5vw,30px); }
.lotto-comparison-layout { position:relative; display:grid; grid-template-columns:1fr 1.3fr 1fr; gap:40px; max-width:870px; margin:32px auto; align-items:start; }
.lotto-comparison-layout .case-figure { margin:0; }
.lotto-comparison-layout .case-figure img { max-height:none; width:100%; height:auto; }
.lotto-comparison-layout .lotto-decisions { grid-template-columns:1fr; gap:24px; margin:0; padding:0; }
.lotto-comparison-layout .lotto-decisions li { display:block; }
.lotto-comparison-layout .lotto-decisions h3 { font-size:16px; margin:0 0 8px; color:#ffd9a3; }
.lotto-comparison-layout .lotto-decisions p { font-size:14px; line-height:1.55; }
.lotto-comparison-arrows { position:absolute; width:100%; height:100%; inset:0; pointer-events:none; overflow:visible; }
@media(max-width:899px){
 .lotto-comparison-layout { grid-template-columns:1fr 1fr; gap:24px; max-width:600px; }
 .comparison-old { grid-column:1; grid-row:1; }
 .comparison-new { grid-column:2; grid-row:1; }
 .lotto-comparison-layout .lotto-decisions { grid-column:1 / -1; grid-template-columns:1fr 1fr; }
 .lotto-comparison-arrows { display:none; }
}
@media(max-width:700px){
 .lotto-card-metrics,.project-card.is-tilting .lotto-card-metrics { transform:perspective(750px) rotateX(24deg) rotateY(-12deg) rotateZ(-9deg); }
 .lotto-hero-logo { padding:8px; border-radius:14px; }
}
@media(max-width:450px){.lotto-comparison-layout .lotto-decisions{grid-template-columns:1fr}}

/* Coordinated comparison accents and compact, staggered card metrics. */
.lotto-hero-logo { width:104px; height:104px; object-fit:contain; padding:16px; box-sizing:border-box; }
.project-card .lotto-cover-image { top:18%; left:28%; width:68%; height:103%; }
.lotto-card-metrics { top:27%; left:39%; display:grid; gap:16px; max-width:58%; }
.lotto-card-metrics span { font-weight:600; width:max-content; }
.lotto-card-metrics span:nth-child(2) { margin-left:32px; }
.lotto-decisions li:nth-child(1) h3 { color:#ffd28a; }
.lotto-decisions li:nth-child(2) h3 { color:#a5dec9; }
.lotto-decisions li:nth-child(3) h3 { color:#a9cafa; }
.lotto-decisions li:nth-child(4) h3 { color:#eab7e3; }
.lotto-decisions li:nth-child(5) h3 { color:#f6ac93; }
.lotto-decisions li:nth-child(6) h3 { color:#d1d793; }
.audit-counts .severity-0 dd { color:#3af09b; }
@media(max-width:700px) { .lotto-hero-logo { width:76px; height:76px; padding:8px; } }
