/* Basis v25 — "x-ray of a business": lenses open the blueprint of the
   restaurant where each basis lives; the price corridor narrows alongside. */
.basis25-grid{display:grid;grid-template-columns:minmax(0,4.4fr) minmax(0,7.6fr);gap:clamp(36px,4.5vw,80px);align-items:center;padding-block:clamp(64px,8vw,120px)}
.basis25 h2{font-size:clamp(34px,3.5vw,58px)}
.basis25 .basis24-eyebrow{margin-bottom:20px}
.basis25 .basis24-intro{margin-top:18px;font-size:14px}
.basis25-meter{margin-top:26px;border-top:1px solid var(--b-ink);padding-top:16px}
.basis25 .basis24-value{margin-top:14px}
.basis25 .basis24-value strong{font-size:clamp(48px,4.6vw,80px)}
.basis25 .basis24-value small{margin-left:.3em}
.basis25 .basis24-note{margin-top:8px;font-size:13px}
.basis25 .basis24-scale{margin-top:22px}
.basis25-steps{margin-top:22px}
.basis25-steps li{grid-template-columns:40px 1fr 26px;gap:12px;padding:11px 0}
.basis25-steps .basis24-num{font-size:20px}
.basis25-steps strong{font-size:15px;margin-top:2px}
.basis25-steps p{font-size:12px;margin-top:3px}
.basis25-steps .basis24-check svg{width:24px;height:24px}

.basis25-stage{position:relative;margin:0;aspect-ratio:3/2;overflow:hidden;border-radius:6px;background:#23272b;container-type:inline-size;isolation:isolate}
.basis25-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.basis25-photo{transform-origin:60% 60%}
.basis25-xray{pointer-events:none}
.basis25-xray--full{clip-path:circle(calc(var(--rf, 0) * 1cqw) at 55% 62%)}
.basis25-lens--a{clip-path:circle(calc(var(--r, 0) * 1cqw) at 80% 56%)}
.basis25-lens--b{clip-path:circle(calc(var(--r, 0) * 1cqw) at 21% 74%)}
.basis25-lens--c{clip-path:circle(calc(var(--r, 0) * 1cqw) at 58% 70%)}
.basis25-ring{position:absolute;z-index:2;width:calc(var(--r, 0) * 2cqw);height:calc(var(--r, 0) * 2cqw);border-radius:50%;transform:translate(-50%,-50%);border:1.5px solid #f5921e;box-shadow:0 0 0 1px rgb(255 255 255 / .25),inset 0 0 0 1px rgb(255 255 255 / .2);pointer-events:none;opacity:var(--ring-o, 1)}
.basis25-ring--a{left:80%;top:56%}.basis25-ring--b{left:21%;top:74%}.basis25-ring--c{left:58%;top:70%}
/* Liquid-glass labels over the photograph. */
.basis25-chip,.basis25-callout{position:absolute;z-index:3;margin:0;color:#fff;border:1px solid rgb(255 255 255 / .55);
  background:linear-gradient(155deg,rgb(255 255 255 / .18),rgb(255 255 255 / .05) 45%,rgb(20 24 28 / .12));
  -webkit-backdrop-filter:blur(3px) saturate(1.45) brightness(.85);backdrop-filter:blur(3px) saturate(1.45) brightness(.85);
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .55),0 8px 24px rgb(0 0 0 / .18);text-shadow:0 1px 2px rgb(0 0 0 / .5),0 0 14px rgb(0 0 0 / .35)}
.basis25-chip{left:18px;top:18px;display:flex;align-items:center;gap:9px;padding:8px 13px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.basis25-chip i{width:6px;height:6px;border-radius:50%;background:#f5921e;box-shadow:0 0 0 3px rgb(245 146 30 / .3)}
.basis25-callout{padding:11px 15px;border-radius:14px;font-size:12px;line-height:1.4;max-width:46%}
.basis25-callout b{display:block;margin-bottom:2px;font-size:13px;font-weight:700}
.basis25-callout--a{right:3.5%;top:22%}
.basis25-callout--b{left:3.5%;top:43%}
.basis25-callout--c{left:44%;bottom:5%}

/* Pinned on every screen size when motion is allowed. */
.basis24-motion .basis25{height:calc(100svh + 190svh)}
.basis24-motion .basis25 .basis24-pin{position:sticky;top:0;height:100svh;display:flex;align-items:center;overflow:hidden}
.basis24-motion .basis25-grid{width:min(100% - 96px,1344px);padding-block:28px}
@media (max-height:860px) and (min-width:1001px){.basis25 .basis24-intro{display:none}.basis25-steps p{display:none}.basis25-meter{margin-top:18px}}

@media (max-width:1000px){
  .basis25-grid{grid-template-columns:1fr;gap:18px;padding-block:56px}
  .basis25-side{display:contents}
  .basis25 .basis24-eyebrow{order:1;margin:0}
  .basis25 h2{order:2;font-size:clamp(28px,7.6vw,40px)}
  .basis25 .basis24-intro{display:none}
  .basis25-stage{order:3}
  .basis25-meter{order:4;margin-top:0;padding-top:12px}
  .basis25-steps{order:5;margin-top:0}
  .basis24-motion .basis25{height:calc(100svh + 170svh)}
  .basis24-motion .basis25 .basis24-pin{position:sticky;height:100svh;display:flex}
  .basis24-motion .basis25-grid{width:calc(100% - 40px);padding-block:14px;gap:12px}
  .basis25 .basis24-value{margin-top:6px}
  .basis25 .basis24-value strong{font-size:clamp(38px,11vw,54px)}
  .basis25 .basis24-scale{margin-top:12px}
  .basis25 .basis24-track{height:22px}.basis25 .basis24-band{height:22px}
  .basis25-steps li{padding:7px 0;grid-template-columns:30px 1fr 22px;gap:10px}
  .basis25-steps p,.basis25-steps b{display:none}
  .basis25-steps strong{font-size:13px;margin:0}
  .basis25-steps .basis24-num{font-size:15px}
  .basis25-callout{font-size:10px;padding:7px 10px;border-radius:10px}
  .basis25-callout b{font-size:11px}
  .basis25-chip{left:10px;top:10px;font-size:9px;padding:6px 10px}
}
@media (max-width:1000px) and (max-height:700px){
  .basis25 .basis24-eyebrow,.basis25 .basis24-note{display:none}
  .basis25-steps li{padding:5px 0}
}
