@font-face{font-family:Estedad;src:url("fonts/Estedad-VF.ttf") format("truetype");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Kohinoor;src:url("fonts/Kohinoor-Arabic-Semibold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
:root{--ink:#202238;--muted:#686a78;--paper:#fffaf7;--surface:#fff;--plum:#5e537c;--violet:#766de5;--sage:#669b89;--peach:#f2a684;--line:rgba(42,43,67,.12);--shadow:0 22px 60px rgba(45,42,70,.09);--r:28px}
html{scroll-behavior:smooth}body{font-family:Estedad,system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.9}.np-page{overflow:hidden}.np-shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.np-section{padding:104px 0;position:relative}.np-section:nth-of-type(even){background:linear-gradient(180deg,rgba(118,109,229,.025),rgba(102,155,137,.025))}
.np-hero{padding:56px 0 72px;background:radial-gradient(circle at 15% 18%,rgba(242,166,132,.16),transparent 34%),radial-gradient(circle at 84% 20%,rgba(118,109,229,.13),transparent 35%),linear-gradient(180deg,#fffaf7 0%,#fff 100%)}.np-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center}.np-eyebrow,.np-kicker{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(118,109,229,.18);background:rgba(255,255,255,.74);padding:7px 13px;border-radius:999px;color:var(--plum);font-size:13px;font-weight:700;letter-spacing:-.01em}.np-hero h1{font-family:Kohinoor,Estedad,sans-serif;font-size:clamp(44px,5vw,72px);line-height:1.22;letter-spacing:-.045em;margin:18px 0;max-width:720px}.np-lead{font-size:18px;color:#555868;max-width:760px;margin:0 0 22px}.np-prize{border-right:4px solid var(--peach);background:linear-gradient(90deg,rgba(242,166,132,.06),rgba(118,109,229,.055));border-radius:18px;padding:16px 18px;color:#38394c}.np-prize-hero{font-size:16.5px;margin:24px 0}.np-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.np-btn{font:inherit;text-decoration:none;border-radius:14px;padding:13px 18px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.np-btn:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid rgba(118,109,229,.35);outline-offset:3px}.np-btn-primary{background:linear-gradient(135deg,#5d557e,#6f67d8);color:#fff;box-shadow:0 12px 26px rgba(103,95,193,.2)}.np-btn-primary:hover{transform:translateY(-1px)}.np-btn-ghost{background:#fff;color:var(--ink);border-color:var(--line)}.np-hero-visual{position:relative;min-width:0}.np-photo-frame{margin:0;border-radius:34px;overflow:hidden;background:#eee;box-shadow:var(--shadow);position:relative}.np-photo-frame img{display:block;width:100%;height:min(520px,54vw);object-fit:cover}.np-photo-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 54%,rgba(30,30,50,.58));pointer-events:none}.np-photo-frame figcaption{position:absolute;z-index:2;right:22px;bottom:20px;left:22px;color:#fff;font-size:14px}.np-shell-note{position:absolute;left:-20px;top:30px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border:1px solid rgba(118,109,229,.17);border-radius:16px;padding:11px 14px;box-shadow:0 14px 34px rgba(50,48,80,.1);font-size:12px;font-weight:700}.np-shell-line{display:inline-block;width:30px;height:8px;border:2px solid var(--violet);border-radius:50%;margin-left:7px;vertical-align:middle}
.np-section-head{max-width:800px;margin-bottom:42px}.np-section-head.np-center{text-align:center;margin-inline:auto}.np-section-head h2,.np-final h2{font-family:Kohinoor,Estedad,sans-serif;font-size:clamp(32px,4vw,48px);line-height:1.32;letter-spacing:-.035em;margin:13px 0 14px}.np-section-head p{color:var(--muted);font-size:16.5px}.np-hook{font-size:20px!important;color:var(--ink)!important;font-weight:650}.np-bridge{display:inline-flex;margin-top:20px;color:var(--plum);text-decoration:none;font-weight:700;gap:8px}
.np-spectrum-canvas{display:grid;grid-template-columns:320px 1fr;gap:54px;align-items:center}.np-tooth-orbit{width:270px;height:300px;display:grid;place-items:center;position:relative;margin:auto}.np-tooth-orbit svg{width:160px;z-index:2;fill:rgba(255,255,255,.86);stroke:#5f5b78;stroke-width:4;filter:drop-shadow(0 14px 26px rgba(44,42,68,.09))}.np-orbit-ring{position:absolute;border:1px solid rgba(118,109,229,.18);border-radius:50%}.np-orbit-ring.r1{inset:55px}.np-orbit-ring.r2{inset:28px;border-color:rgba(102,155,137,.15)}.np-orbit-ring.r3{inset:0;border-color:rgba(242,166,132,.14)}.np-spectrum-steps{list-style:none;padding:0;margin:0;display:grid;gap:14px}.np-spectrum-steps li{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:start;padding:18px 19px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.76)}.np-step-no{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#f2efff;color:#5b5482;font-weight:800}.np-spectrum-steps h3{margin:0 0 5px;font-size:17px}.np-spectrum-steps p{margin:0;color:var(--muted);font-size:14.5px}
.np-space-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.np-space-state{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:0 12px 40px rgba(45,42,70,.05)}.np-space-state h3{margin:6px 0;font-size:20px}.np-space-state p{margin:0;color:var(--muted);font-size:14.5px}.np-state-label{font-size:12px;font-weight:800;color:var(--plum);background:#f4f1fb;border-radius:999px;padding:5px 10px}.np-profile-diagram{height:210px;position:relative;border-radius:24px;background:linear-gradient(180deg,#fbf9ff,#f8f7f4);overflow:hidden}.np-profile-tooth{position:absolute;width:96px;height:154px;border-radius:48% 43% 38% 38%;background:#fff;right:62px;top:28px;box-shadow:inset -10px 0 18px rgba(115,110,145,.07),0 10px 28px rgba(60,58,80,.07);border:2px solid #dbd8e5}.np-profile-ceramic{position:absolute;width:24px;height:132px;border-radius:45% 80% 80% 44%;background:linear-gradient(180deg,#d9d2ff,#bdb5f0);right:47px;top:38px;opacity:.82}.np-contour-line{position:absolute;width:5px;height:158px;border-radius:50%;border-right:2px dashed rgba(70,68,95,.35);right:41px;top:24px}.is-balanced .np-profile-space{position:absolute;width:12px;height:124px;background:rgba(242,166,132,.26);right:54px;top:42px;border-radius:50%}.is-balanced .np-profile-ceramic{right:52px;width:18px;background:linear-gradient(180deg,#cceae0,#9fd0bf)}.is-balanced .np-contour-line{right:42px}.np-factors{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.np-factors span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 14px;font-size:13px;color:#515364}
.np-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.np-arch-visual{height:380px;border-radius:34px;border:1px solid var(--line);background:radial-gradient(circle at 50% 24%,rgba(118,109,229,.08),transparent 38%),#fff;position:relative;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;padding:48px 26px 72px;gap:8px;box-shadow:var(--shadow)}.np-arch-line{position:absolute;left:8%;right:8%;top:48%;height:100px;border-top:3px solid rgba(95,83,124,.18);border-radius:50%}.np-mini-tooth{width:70px;height:112px;border:2px solid #dedbe6;background:linear-gradient(180deg,#fff,#f7f4ef);border-radius:48% 48% 37% 37%;margin:auto;position:relative;z-index:2;box-shadow:0 8px 18px rgba(45,42,70,.07)}.np-mini-tooth span{position:absolute;top:125px;right:50%;transform:translateX(50%);white-space:nowrap;font-size:12px;color:#66687a}.np-mini-tooth.low{transform:scale(.86)}.np-mini-tooth.back{transform:translateY(14px)}.np-mini-tooth.room{transform:scale(.94)}.np-mini-tooth.forward{transform:translateY(-8px) scale(1.08);border-color:#e8c6b8}.np-arch-scale{position:absolute;bottom:18px;left:24px;right:24px;display:flex;justify-content:space-between;font-size:12px}.np-arch-scale b{color:#4c8a74}.np-arch-scale small{color:#9a6e61}
.np-truth{background:radial-gradient(circle at 50% 20%,rgba(118,109,229,.11),transparent 32%),linear-gradient(180deg,#fff,#faf9ff)}.np-toggle-card{max-width:1000px;margin:auto;border:1px solid var(--line);background:rgba(255,255,255,.92);border-radius:30px;padding:18px;box-shadow:var(--shadow)}.np-toggle-controls{display:flex;justify-content:center;gap:8px;background:#f3f1f6;padding:6px;border-radius:15px;width:max-content;max-width:100%;margin:0 auto 22px}.np-toggle-controls button{font:inherit;border:0;background:transparent;color:#666779;padding:9px 15px;border-radius:11px;cursor:pointer}.np-toggle-controls button.is-active{background:#fff;color:var(--ink);box-shadow:0 5px 16px rgba(40,38,70,.08)}.np-toggle-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;align-items:center}.np-toggle-visual{min-height:380px;border-radius:24px;background:linear-gradient(180deg,#f7f5fb,#f4f6f1);position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:center;padding-bottom:70px}.np-fixed-tooth{position:absolute;width:170px;height:245px;right:calc(50% - 80px);top:54px;border-radius:48% 45% 38% 38%;background:#fff;border:2px solid #dedbe4;box-shadow:0 22px 38px rgba(42,40,65,.08)}.np-veneer-shell{position:absolute;width:30px;height:205px;right:calc(50% - 107px);top:74px;border-radius:65% 100% 100% 55%;background:linear-gradient(180deg,#c9c2fa,#ada2e6);transition:all .28s ease}.np-target-contour{position:absolute;width:190px;height:260px;right:calc(50% - 98px);top:44px;border:2px dashed rgba(74,72,98,.32);border-radius:49% 46% 39% 39%}.np-prep-zone{position:absolute;left:0;top:26px;width:0;height:180px;background:rgba(242,166,132,.42);border-radius:60%;transition:width .28s ease}.np-visual-caption{position:absolute;bottom:20px;left:20px;right:20px;text-align:center}.np-visual-caption strong{display:block;font-size:15px}.np-visual-caption span{display:block;font-size:12px;color:#6b6b79;margin-top:4px}.np-state-copy{display:none}.np-state-copy.no-space-copy{display:block}.np-toggle-card[data-prep-state="controlled"] .np-prep-zone{width:12px}.np-toggle-card[data-prep-state="controlled"] .np-veneer-shell{right:calc(50% - 94px);width:24px;background:linear-gradient(180deg,#bfe2d6,#8dc7b4)}.np-toggle-card[data-prep-state="controlled"] .np-state-copy.no-space-copy{display:none}.np-toggle-card[data-prep-state="controlled"] .np-state-copy.controlled-copy{display:block}.np-toggle-copy{padding:24px}.np-toggle-copy h3{font-size:23px;margin:0 0 10px}.np-toggle-copy p{color:var(--muted)}
.np-design-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.np-design-steps article{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;position:relative}.np-design-steps article>span{position:absolute;top:13px;left:13px;width:30px;height:30px;border-radius:50%;background:#f0eef9;display:grid;place-items:center;color:#655e90;font-weight:800}.np-design-icon{height:125px;margin:12px 0 16px;border-radius:18px;position:relative;background:#f7f5fa;overflow:hidden}.np-design-icon:before{content:"";position:absolute;width:62px;height:95px;border-radius:48% 45% 38% 38%;background:#fff;border:2px solid #ddd9e5;right:50%;top:15px;transform:translateX(50%)}.np-design-icon.target:after,.np-design-icon.diff:after,.np-design-icon.prep:after{content:"";position:absolute;width:72px;height:104px;border:2px dashed rgba(118,109,229,.45);border-radius:48% 45% 38% 38%;right:50%;top:10px;transform:translateX(50%)}.np-design-icon.diff:before{transform:translateX(42%)}.np-design-icon.prep:after{border-color:rgba(102,155,137,.6)}.np-design-icon.prep:before{box-shadow:inset 8px 0 0 rgba(242,166,132,.28)}.np-design-steps h3{margin:0;font-size:16px}.np-design-steps p{font-size:13px;color:var(--muted);margin:5px 0 0}
.enamel-split{align-items:stretch}.np-layer-visual{border-radius:34px;background:linear-gradient(160deg,#faf8ff,#f4f8f5);border:1px solid var(--line);padding:54px;display:flex;flex-direction:column;justify-content:center;gap:10px;box-shadow:var(--shadow)}.np-layer{min-height:74px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-weight:800;position:relative}.np-layer.ceramic{background:linear-gradient(135deg,#d6cffb,#bbb1f1);color:#443d73}.np-layer.bond{background:linear-gradient(135deg,#f5d4c5,#efb598);color:#744c3e;min-height:38px}.np-layer.enamel{background:linear-gradient(135deg,#eef3ef,#d5e7de);color:#3c6758}.np-layer-note{text-align:center;font-size:13px;color:var(--muted);margin-top:8px}.np-sources{margin-top:22px;border-top:1px solid var(--line);padding-top:14px}.np-sources summary{cursor:pointer;color:var(--plum);font-weight:700}.np-sources ul{padding-right:20px;color:var(--muted);font-size:13px}.np-sources a{color:inherit}
.np-rail-line{max-width:980px;margin:0 auto;position:relative}.np-rail-line:before{content:"";position:absolute;right:54px;top:35px;bottom:35px;width:2px;background:linear-gradient(var(--violet),var(--sage),var(--peach));opacity:.35}.np-rail-line article{display:grid;grid-template-columns:108px 1fr;gap:22px;padding:24px 0;position:relative}.np-rail-dot{width:78px;height:78px;border-radius:50%;background:#fff;border:1px solid var(--line);display:grid;place-items:center;font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--plum);z-index:2;box-shadow:0 10px 26px rgba(45,42,70,.07)}.np-rail-line h3{margin:4px 0 8px;font-size:21px}.np-rail-line p{margin:0 0 8px;color:var(--muted)}.np-rail-line strong{font-size:14px}.np-final-resolver{max-width:900px;margin:20px auto 0;text-align:center}
.np-final{padding:90px 0 110px;background:radial-gradient(circle at 15% 35%,rgba(242,166,132,.15),transparent 32%),linear-gradient(135deg,#312f4c,#4b456a);color:#fff}.np-final-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.np-final p{color:rgba(255,255,255,.76)}.np-final .np-kicker{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff}.np-contact-panel{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:26px;padding:24px;backdrop-filter:blur(12px)}.np-contact-panel>span:first-child{display:block;color:rgba(255,255,255,.7);font-size:13px}.np-contact-panel>strong{display:block;font-size:28px;margin:5px 0 16px}.np-contact-actions{display:flex;gap:9px;flex-wrap:wrap}.np-contact-panel .np-btn-ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.16)}.np-mother-link{display:block;color:#fff;text-decoration:none;margin-top:20px;border-top:1px solid rgba(255,255,255,.12);padding-top:16px;font-size:14px}.np-copy-status{font-size:12px;color:#d9f5e8;margin-top:7px}.np-mobile-call{display:none}
@media (max-width:980px){.np-hero-grid,.np-split,.np-final-grid,.np-toggle-layout{grid-template-columns:1fr}.np-spectrum-canvas{grid-template-columns:1fr}.np-space-grid{grid-template-columns:1fr}.np-space-state{grid-template-columns:180px 1fr}.np-design-steps{grid-template-columns:repeat(2,1fr)}.np-hero-visual{max-width:760px;margin:auto}.np-shell-note{left:12px}}
@media (max-width:767px){.np-shell{width:min(100% - 28px,720px)}.np-section{padding:68px 0}.np-hero{padding:26px 0 52px}.np-hero-grid{gap:28px}.np-hero h1{font-size:clamp(34px,10.2vw,46px);line-height:1.28;margin-top:14px}.np-lead{font-size:15.5px;line-height:1.9}.np-prize-hero{margin:18px 0 16px}.np-hero-actions{display:grid}.np-btn{width:100%;box-sizing:border-box}.np-photo-frame img{height:360px}.np-shell-note{display:none}.np-section-head{margin-bottom:28px}.np-section-head h2,.np-final h2{font-size:30px}.np-spectrum-canvas{gap:22px}.np-tooth-orbit{width:220px;height:220px}.np-tooth-orbit svg{width:120px}.np-spectrum-steps li{grid-template-columns:40px 1fr;padding:15px}.np-step-no{width:34px;height:34px}.np-space-state{grid-template-columns:1fr}.np-profile-diagram{height:180px}.np-factors{gap:7px}.np-arch-visual{height:auto;min-height:430px;grid-template-columns:repeat(2,1fr);padding:40px 20px 85px;row-gap:72px}.np-arch-line{display:none}.np-mini-tooth span{top:118px}.np-arch-scale{flex-direction:column;gap:2px}.np-toggle-card{padding:12px}.np-toggle-controls{width:100%;display:grid;grid-template-columns:1fr 1fr}.np-toggle-controls button{font-size:12.5px;padding:10px 7px}.np-toggle-visual{min-height:330px}.np-fixed-tooth{width:145px;height:215px;right:calc(50% - 68px)}.np-veneer-shell{right:calc(50% - 93px);height:180px}.np-toggle-card[data-prep-state="controlled"] .np-veneer-shell{right:calc(50% - 82px)}.np-toggle-copy{padding:14px 6px 6px}.np-design-steps{grid-template-columns:1fr}.np-layer-visual{padding:28px}.np-rail-line:before{right:29px}.np-rail-line article{grid-template-columns:70px 1fr;gap:14px}.np-rail-dot{width:58px;height:58px;font-size:8px}.np-rail-line h3{font-size:18px}.np-rail-line p{font-size:14px}.np-final{padding:72px 0 86px}.np-contact-actions{display:grid}.np-mobile-call{display:flex}.np-desktop-call{display:none}}
@media (max-width:390px){.np-shell{width:calc(100% - 24px)}.np-hero h1{font-size:33px}.np-photo-frame img{height:320px}.np-section-head h2,.np-final h2{font-size:28px}.np-space-state{padding:18px}.np-arch-visual{padding-inline:12px}.np-mini-tooth{width:62px;height:104px}.np-toggle-visual{min-height:310px}.np-fixed-tooth{width:132px;height:200px;right:calc(50% - 61px)}.np-veneer-shell{right:calc(50% - 84px)}.np-toggle-card[data-prep-state="controlled"] .np-veneer-shell{right:calc(50% - 74px)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.np-btn,.np-veneer-shell,.np-prep-zone{transition:none!important}}
/* Draft QA patch: keep accessibility skip link off-canvas until keyboard focus. */
body .skip{
  position:fixed!important;
  top:8px!important;
  right:8px!important;
  z-index:10000!important;
  transform:translateY(-180%)!important;
  opacity:0!important;
  pointer-events:none!important;
}
body .skip:focus{
  transform:none!important;
  opacity:1!important;
  pointer-events:auto!important;
  background:#fff!important;
  color:#202238!important;
  padding:8px 12px!important;
  border-radius:10px!important;
  box-shadow:0 8px 24px rgba(32,34,56,.18)!important;
}

.np-hero-bridge{margin:14px 0 0;color:var(--plum);font-size:13.5px;font-weight:700}
.np-factor-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 22px}
.np-factor-details>div{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:16px;padding:13px 15px}
.np-factor-details dt{font-weight:800;color:var(--ink);font-size:14px;margin-bottom:3px}
.np-factor-details dd{margin:0;color:var(--muted);font-size:13px;line-height:1.8}
.np-expert-questions{margin:14px 0 18px;padding:0;list-style:none;display:grid;gap:8px}
.np-expert-questions li{position:relative;padding-right:22px;color:#4f5162}
.np-expert-questions li:before{content:"";position:absolute;right:0;top:.8em;width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,var(--violet),var(--sage))}
@media (max-width:767px){.np-factor-details{grid-template-columns:1fr}.np-hero-bridge{font-size:12.5px}}

/* M1 Canary — semi-real ceramic-shell explainer */
.np-ceramic-demo{
  min-height:520px;
  padding:18px 18px 16px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  background:
    radial-gradient(circle at 30% 20%,rgba(255,255,255,.98),rgba(255,255,255,.42) 28%,transparent 48%),
    linear-gradient(155deg,#f8f6fb 0%,#f1f4f2 100%);
}
.np-demo-badge{
  position:absolute;
  top:16px;
  right:16px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  gap:7px;
  width:max-content;
  max-width:calc(100% - 32px);
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(80,73,115,.11);
  box-shadow:0 8px 22px rgba(47,43,70,.06);
  color:#5d5870;
  font-size:11.5px;
  font-weight:750;
  backdrop-filter:blur(8px);
}
.np-demo-badge span{
  width:20px;
  height:7px;
  border:2px solid #8f83d0;
  border-radius:50%;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.8);
}
.np-demo-svg{
  display:block;
  width:100%;
  height:345px;
  margin:8px auto 0;
  overflow:visible;
}
.np-demo-veneer{
  --np-seat-x:0px;
  transform-box:fill-box;
  transform-origin:center center;
  transform:translateX(-92px) translateY(5px) rotate(-7deg) scale(1.045);
  opacity:.97;
}
.np-demo-callout,.np-demo-depth-cue{opacity:1}
.np-ceramic-demo.is-settled .np-demo-veneer{
  transform:translateX(var(--np-seat-x)) translateY(0) rotate(0) scale(1);
}
.np-ceramic-demo.is-playing .np-demo-veneer{
  animation:npVeneerSeat 2.8s cubic-bezier(.22,.72,.22,1) both;
}
.np-ceramic-demo.is-playing .np-demo-callout{
  animation:npCalloutFade 2.8s ease both;
}
.np-ceramic-demo.is-playing .np-demo-depth-cue{
  animation:npDepthFade 2.8s ease both;
}
.np-toggle-card[data-prep-state="controlled"] .np-demo-veneer{--np-seat-x:12px}
.np-toggle-card[data-prep-state="controlled"] .np-demo-prep-zone{
  opacity:.48;
  transition:opacity .35s ease .15s;
}
.np-toggle-card[data-prep-state="controlled"] .np-demo-contour{
  stroke:#6a9f8d;
  opacity:.68;
}
.np-toggle-card[data-prep-state="no-space"] .np-demo-contour{
  stroke:#927c95;
  opacity:.48;
}
@keyframes npVeneerSeat{
  0%{transform:translateX(-92px) translateY(5px) rotate(-7deg) scale(1.045)}
  22%{transform:translateX(-92px) translateY(5px) rotate(-7deg) scale(1.045)}
  46%{transform:translateX(-54px) translateY(2px) rotate(-4deg) scale(1.028)}
  72%{transform:translateX(-16px) translateY(0) rotate(-1.5deg) scale(1.012)}
  88%{transform:translateX(calc(var(--np-seat-x) + 3px)) translateY(0) rotate(.5deg) scale(.998)}
  100%{transform:translateX(var(--np-seat-x)) translateY(0) rotate(0) scale(1)}
}
@keyframes npCalloutFade{
  0%,32%{opacity:1;transform:translateX(0)}
  58%{opacity:.22;transform:translateX(8px)}
  100%{opacity:0;transform:translateX(12px)}
}
@keyframes npDepthFade{
  0%,28%{opacity:.72}
  62%,100%{opacity:.14}
}
.np-demo-status{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin:0 0 9px;
}
.np-demo-step{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:5px 7px;
  border:1px solid rgba(72,67,98,.09);
  border-radius:11px;
  background:rgba(255,255,255,.64);
  color:#797586;
  font-size:10.5px;
  text-align:center;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.np-demo-step b{
  width:19px;
  height:19px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#efedf5;
  color:#655f82;
  font-size:10px;
}
.np-ceramic-demo[data-demo-phase="1"] .np-demo-step:nth-child(1),
.np-ceramic-demo[data-demo-phase="2"] .np-demo-step:nth-child(2),
.np-ceramic-demo[data-demo-phase="3"] .np-demo-step:nth-child(3){
  background:#fff;
  color:#373448;
  border-color:rgba(118,109,229,.22);
  transform:translateY(-1px);
  box-shadow:0 7px 18px rgba(53,48,83,.06);
}
.np-demo-replay{
  align-self:center;
  border:0;
  background:transparent;
  color:#625b82;
  font:700 11.5px Estedad,system-ui,sans-serif;
  padding:5px 9px;
  border-radius:9px;
  cursor:pointer;
}
.np-demo-replay:hover{background:rgba(118,109,229,.07)}
.np-demo-replay:focus-visible{outline:3px solid rgba(118,109,229,.28);outline-offset:2px}
.np-ceramic-demo .np-visual-caption{
  position:static;
  inset:auto;
  margin-top:7px;
  text-align:center;
}
.np-ceramic-demo .np-visual-caption strong{font-size:14px}
.np-ceramic-demo .np-visual-caption span{font-size:11.5px;line-height:1.75;max-width:370px;margin:3px auto 0}
@media(max-width:767px){
  .np-ceramic-demo{min-height:450px;padding:14px 10px 13px}
  .np-demo-svg{height:285px;margin-top:14px}
  .np-demo-badge{top:11px;right:11px;font-size:10.5px}
  .np-demo-status{gap:4px}
  .np-demo-step{font-size:9.3px;min-height:32px;padding:4px}
  .np-demo-step b{width:17px;height:17px;font-size:9px}
  .np-ceramic-demo .np-visual-caption strong{font-size:13.2px}
  .np-ceramic-demo .np-visual-caption span{font-size:10.8px}
}
@media(prefers-reduced-motion:reduce){
  .np-demo-veneer,.np-demo-callout,.np-demo-depth-cue,.np-demo-prep-zone,.np-demo-step{animation:none!important;transition:none!important}
  .np-demo-veneer{transform:translateX(var(--np-seat-x)) translateY(0) rotate(0) scale(1)!important}
  .np-demo-callout{opacity:0!important}
  .np-demo-depth-cue{opacity:.14!important}
}

/* M2 Working Draft — real ceramic reference */
.np-real-material{
  margin-top:26px;
  padding-top:24px;
  border-top:1px solid rgba(54,51,78,.10);
  display:grid;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);
  gap:22px;
  align-items:start;
}
.np-real-material-copy{
  padding:12px 6px 0;
}
.np-real-kicker{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(118,109,229,.14);
  color:#625b82;
  font-size:11.5px;
  font-weight:800;
}
.np-real-material-copy h3{
  margin:11px 0 8px;
  font-family:Kohinoor,Estedad,sans-serif;
  font-size:24px;
  line-height:1.45;
  color:var(--ink);
}
.np-real-material-copy p{
  margin:0;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.95;
}
.np-real-material-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.np-real-card{
  margin:0;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(54,51,78,.10);
  border-radius:20px;
  box-shadow:0 12px 28px rgba(44,41,68,.06);
}
.np-real-photo{
  aspect-ratio:1/1;
  position:relative;
  overflow:hidden;
  background:#f3f1f2;
}
.np-real-photo>img:first-child{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.np-real-watermark{
  position:absolute;
  right:12px;
  bottom:10px;
  width:104px;
  height:auto;
  opacity:.44;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.18));
  pointer-events:none;
}
.np-real-card figcaption{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:11px 13px 12px;
}
.np-real-card figcaption b{
  font-size:13px;
  color:#363449;
}
.np-real-card figcaption span{
  font-size:11px;
  color:#777383;
}
@media(max-width:767px){
  .np-real-material{
    grid-template-columns:1fr;
    gap:14px;
    margin-top:20px;
    padding-top:20px;
  }
  .np-real-material-copy{padding:0}
  .np-real-material-copy h3{font-size:21px}
  .np-real-material-copy p{font-size:12.8px}
  .np-real-material-grid{grid-template-columns:1fr 1fr;gap:8px}
  .np-real-card{border-radius:16px}
  .np-real-watermark{width:78px;right:8px;bottom:7px}
  .np-real-card figcaption{display:block;padding:9px 10px 10px}
  .np-real-card figcaption b,.np-real-card figcaption span{display:block}
  .np-real-card figcaption span{margin-top:2px;font-size:10px}
}
@media(max-width:359px){
  .np-real-material-grid{grid-template-columns:1fr}
}

/* M3 Working Draft — real user-supplied veneer assets inside the motion layer */
.np-ceramic-demo{isolation:isolate}
.np-ceramic-demo .np-demo-veneer,
.np-ceramic-demo .np-demo-callout,
.np-ceramic-demo .np-demo-depth-cue{
  opacity:0!important;
  pointer-events:none!important;
}
.m3-real-asset-stage{
  position:absolute;
  z-index:4;
  top:54px;
  left:0;
  right:0;
  height:292px;
  overflow:hidden;
  pointer-events:none;
}
.m3-real-shell{
  position:absolute;
  overflow:hidden;
  filter:drop-shadow(0 13px 18px rgba(50,45,72,.16));
  transform-origin:50% 55%;
}
.m3-real-shell img{
  position:absolute;
  display:block;
  width:460px;
  max-width:none;
  height:auto;
  top:-48px;
  mix-blend-mode:screen;
  opacity:.98;
}
.m3-shell-front{
  width:126px;
  height:184px;
  left:8%;
  top:21px;
  opacity:1;
  transform:rotate(-2deg) scale(1);
}
.m3-shell-front img{left:-135px}
.m3-shell-side{
  --m3-seat-left:31%;
  width:94px;
  height:184px;
  left:10%;
  top:23px;
  opacity:0;
  transform:rotate(-7deg) scale(1.04);
}
.m3-shell-side img{left:-232px}
.m3-underside-inset{
  position:absolute;
  left:7%;
  top:202px;
  width:92px;
  height:66px;
  overflow:hidden;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.88);
  background:#11131d;
  box-shadow:0 10px 22px rgba(37,32,55,.14);
  opacity:.94;
}
.m3-underside-inset img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:58% 52%;
}
.np-toggle-card[data-prep-state="controlled"] .m3-shell-side{
  --m3-seat-left:34%;
}
.np-ceramic-demo.is-playing .m3-shell-front{animation:m3FrontExit 2.8s ease both}
.np-ceramic-demo.is-playing .m3-shell-side{animation:m3SideSeat 2.8s cubic-bezier(.22,.72,.22,1) both}
.np-ceramic-demo.is-playing .m3-underside-inset{animation:m3InsetFade 2.8s ease both}
.np-ceramic-demo.is-settled .m3-shell-front{opacity:0}
.np-ceramic-demo.is-settled .m3-shell-side{
  opacity:1;
  left:var(--m3-seat-left);
  transform:rotate(0) scale(1);
}
.np-ceramic-demo.is-settled .m3-underside-inset{opacity:0}
@keyframes m3FrontExit{
  0%,19%{opacity:1;transform:translateX(0) rotate(-2deg) scale(1)}
  34%{opacity:.26;transform:translateX(16px) rotate(-1deg) scale(.985)}
  45%,100%{opacity:0;transform:translateX(25px) rotate(0) scale(.975)}
}
@keyframes m3SideSeat{
  0%,20%{opacity:0;left:10%;transform:rotate(-7deg) scale(1.04)}
  31%{opacity:.92;left:11%;transform:rotate(-6deg) scale(1.035)}
  55%{opacity:.98;left:19%;transform:rotate(-3deg) scale(1.02)}
  76%{opacity:1;left:27%;transform:rotate(-1deg) scale(1.006)}
  90%{left:calc(var(--m3-seat-left) + 1.2%);transform:rotate(.4deg) scale(.997)}
  100%{opacity:1;left:var(--m3-seat-left);transform:rotate(0) scale(1)}
}
@keyframes m3InsetFade{
  0%,26%{opacity:.94;transform:translateY(0) scale(1)}
  45%{opacity:.24;transform:translateY(4px) scale(.98)}
  56%,100%{opacity:0;transform:translateY(7px) scale(.96)}
}
@media(max-width:767px){
  .m3-real-asset-stage{top:51px;height:242px}
  .m3-real-shell img{width:390px;top:-42px}
  .m3-shell-front{width:108px;height:156px;left:6%;top:18px}
  .m3-shell-front img{left:-114px}
  .m3-shell-side{width:80px;height:156px;left:8%;top:20px}
  .m3-shell-side img{left:-197px}
  .m3-shell-side{--m3-seat-left:32%}
  .np-toggle-card[data-prep-state="controlled"] .m3-shell-side{--m3-seat-left:35%}
  .m3-underside-inset{left:5%;top:171px;width:78px;height:56px;border-radius:13px}
}
@media(prefers-reduced-motion:reduce){
  .m3-shell-front{opacity:0!important;animation:none!important}
  .m3-shell-side{
    opacity:1!important;
    left:var(--m3-seat-left)!important;
    transform:none!important;
    animation:none!important;
  }
  .m3-underside-inset{opacity:0!important;animation:none!important}
}

/* M3 mask refinement — black studio background is converted to transparency */
.m3-real-shell>svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}
.m3-real-shell svg image{
  position:static!important;
  width:768px!important;
  height:512px!important;
  max-width:none!important;
  top:auto!important;
  left:auto!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

/* M3 seat-position refinement after visual QA */
.m3-shell-side{--m3-seat-left:20%}
.np-toggle-card[data-prep-state="controlled"] .m3-shell-side{--m3-seat-left:23%}
@media(max-width:767px){
  .m3-shell-side{--m3-seat-left:21%}
  .np-toggle-card[data-prep-state="controlled"] .m3-shell-side{--m3-seat-left:24%}
}

/* M3.1 isolated refinement — taller side-profile seating */
.m3-shell-side{
  width:122px;
  height:222px;
  top:5px;
}
@media(max-width:767px){
  .m3-shell-side{
    width:104px;
    height:194px;
    top:5px;
  }
}

/* M3.1 edited side-profile asset */
.m3-shell-side > .m3-side-edited{
  position:static!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center!important;
  top:auto!important;
  left:auto!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  filter:drop-shadow(0 11px 15px rgba(52,47,74,.14));
}

/* M3.1 final seat-path refinement — shell sits on outer facial contour */
.m3-shell-side{--m3-seat-left:9%}
.np-toggle-card[data-prep-state="controlled"] .m3-shell-side{--m3-seat-left:12%}
@keyframes m3SideSeat{
  0%,20%{opacity:0;left:-4%;transform:rotate(-7deg) scale(1.04)}
  31%{opacity:.92;left:-1%;transform:rotate(-6deg) scale(1.035)}
  55%{opacity:.98;left:3%;transform:rotate(-3deg) scale(1.02)}
  76%{opacity:1;left:7%;transform:rotate(-1deg) scale(1.006)}
  90%{left:calc(var(--m3-seat-left) + .8%);transform:rotate(.35deg) scale(.998)}
  100%{opacity:1;left:var(--m3-seat-left);transform:rotate(0) scale(1)}
}
@media(max-width:767px){
  .m3-shell-side{--m3-seat-left:8%}
  .np-toggle-card[data-prep-state="controlled"] .m3-shell-side{--m3-seat-left:11%}
}

/* M4 — realistic side-profile prep scene */
.np-ceramic-demo{
  background:#030303!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 24px 54px rgba(13,10,19,.2)!important;
}
.np-ceramic-demo .np-demo-badge{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#464057!important;
  box-shadow:0 8px 22px rgba(0,0,0,.24)!important;
}
.m4-scene-svg{
  width:100%!important;
  height:345px!important;
  margin:0!important;
  display:block!important;
  overflow:hidden!important;
}
.m4-tooth-intact,.m4-tooth-prep,.m4-seat-guide{
  transition:opacity .32s ease,transform .32s ease;
  transform-origin:center;
}
.np-toggle-card[data-prep-state="no-space"] .m4-tooth-intact{opacity:1}
.np-toggle-card[data-prep-state="no-space"] .m4-tooth-prep{opacity:0}
.np-toggle-card[data-prep-state="no-space"] .m4-seat-guide{opacity:.18}
.np-toggle-card[data-prep-state="controlled"] .m4-tooth-intact{opacity:0}
.np-toggle-card[data-prep-state="controlled"] .m4-tooth-prep{opacity:1}
.np-toggle-card[data-prep-state="controlled"] .m4-seat-guide{opacity:.64}
.np-toggle-card[data-prep-state="controlled"] .m4-target-tooth{transform:translateX(2px)}
.m3-real-asset-stage{
  top:46px!important;
  height:292px!important;
  z-index:7!important;
}
.m3-shell-front,.m3-underside-inset{
  display:none!important;
}
.m3-shell-side{
  width:120px!important;
  height:226px!important;
  top:30px!important;
  left:4%!important;
  opacity:0;
  --m3-seat-left:40%;
}
.np-toggle-card[data-prep-state="controlled"] .m3-shell-side{
  --m3-seat-left:46%;
}
.m3-shell-side>.m3-side-edited{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 12px 16px rgba(0,0,0,.46)) brightness(1.06) contrast(1.02)!important;
}
.np-ceramic-demo.is-playing .m3-shell-side{
  animation:m4VeneerSeat 2.8s cubic-bezier(.22,.72,.22,1) both!important;
}
.np-ceramic-demo.is-settled .m3-shell-side{
  opacity:1!important;
  left:var(--m3-seat-left)!important;
  transform:rotate(0) scale(1)!important;
}
@keyframes m4VeneerSeat{
  0%,18%{opacity:1;left:4%;transform:rotate(-7deg) scale(1.04)}
  34%{opacity:1;left:14%;transform:rotate(-5deg) scale(1.03)}
  58%{opacity:1;left:27%;transform:rotate(-2.8deg) scale(1.018)}
  78%{opacity:1;left:36%;transform:rotate(-1deg) scale(1.006)}
  92%{left:calc(var(--m3-seat-left) + 1%);transform:rotate(.3deg) scale(.998)}
  100%{opacity:1;left:var(--m3-seat-left);transform:rotate(0) scale(1)}
}
.np-demo-status{
  position:relative;
  z-index:10;
  margin-top:-2px!important;
}
.np-demo-step{
  background:rgba(255,255,255,.96)!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#655f72!important;
}
.np-ceramic-demo[data-demo-phase="1"] .np-demo-step:nth-child(1),
.np-ceramic-demo[data-demo-phase="2"] .np-demo-step:nth-child(2),
.np-ceramic-demo[data-demo-phase="3"] .np-demo-step:nth-child(3){
  background:#fff!important;
  color:#272333!important;
  border-color:rgba(118,109,229,.36)!important;
}
.np-demo-replay{
  color:#d9d4e8!important;
}
.np-ceramic-demo .np-visual-caption strong{color:#fff!important}
.np-ceramic-demo .np-visual-caption span{color:rgba(255,255,255,.72)!important}
.np-toggle-card[data-prep-state="controlled"] .np-visual-caption strong::before{
  content:"فضای کنترل‌شده · ";
  color:#e4ba9d;
}
@media(max-width:767px){
  .m4-scene-svg{height:285px!important}
  .m3-real-asset-stage{top:42px!important;height:240px!important}
  .m3-shell-side{
    width:100px!important;
    height:188px!important;
    top:28px!important;
    --m3-seat-left:39%;
  }
  .np-toggle-card[data-prep-state="controlled"] .m3-shell-side{--m3-seat-left:45%}
}
@media(prefers-reduced-motion:reduce){
  .m4-tooth-intact,.m4-tooth-prep,.m4-seat-guide{transition:none!important}
  .m3-shell-side{
    animation:none!important;
    opacity:1!important;
    left:var(--m3-seat-left)!important;
    transform:none!important;
  }
}

/* M4 refinement 02 — continuous veneer path and profile fit */
.m3-shell-side{
  left:4%!important;
  --m4-seat-x:205%;
  transform:translateX(0) rotate(-7deg) scale(1.04)!important;
}
.np-toggle-card[data-prep-state="controlled"] .m3-shell-side{
  --m4-seat-x:220%;
}
.np-ceramic-demo.is-playing .m3-shell-side{
  animation:m4VeneerSeat2 2.8s cubic-bezier(.22,.72,.22,1) both!important;
}
.np-ceramic-demo.is-settled .m3-shell-side{
  left:4%!important;
  opacity:1!important;
  transform:translateX(var(--m4-seat-x)) rotate(0) scale(1)!important;
}
@keyframes m4VeneerSeat2{
  0%,14%{opacity:1;transform:translateX(0) rotate(-7deg) scale(1.04)}
  34%{opacity:1;transform:translateX(calc(var(--m4-seat-x)*.28)) rotate(-5deg) scale(1.03)}
  58%{opacity:1;transform:translateX(calc(var(--m4-seat-x)*.62)) rotate(-2.5deg) scale(1.016)}
  78%{opacity:1;transform:translateX(calc(var(--m4-seat-x)*.86)) rotate(-.8deg) scale(1.005)}
  92%{opacity:1;transform:translateX(calc(var(--m4-seat-x)*1.015)) rotate(.25deg) scale(.998)}
  100%{opacity:1;transform:translateX(var(--m4-seat-x)) rotate(0) scale(1)}
}
@media(max-width:767px){
  .m3-shell-side{
    --m4-seat-x:180%;
  }
  .np-toggle-card[data-prep-state="controlled"] .m3-shell-side{
    --m4-seat-x:195%;
  }
}
@media(prefers-reduced-motion:reduce){
  .m3-shell-side{
    left:4%!important;
    transform:translateX(var(--m4-seat-x))!important;
  }
}

/* M4 refinement 03 — valid continuous transform path */
.m3-shell-side{
  --m4-x1:70px;
  --m4-x2:145px;
  --m4-x3:215px;
  --m4-x4:245px;
}
.np-toggle-card[data-prep-state="controlled"] .m3-shell-side{
  --m4-x1:75px;
  --m4-x2:155px;
  --m4-x3:230px;
  --m4-x4:265px;
}
.np-ceramic-demo.is-playing .m3-shell-side{
  animation:m4VeneerSeat3 2.8s cubic-bezier(.22,.72,.22,1) both!important;
}
.np-ceramic-demo.is-settled .m3-shell-side{
  transform:translateX(var(--m4-x4)) rotate(0) scale(1)!important;
}
@keyframes m4VeneerSeat3{
  0%,14%{opacity:1;transform:translateX(0) rotate(-7deg) scale(1.04)}
  34%{opacity:1;transform:translateX(var(--m4-x1)) rotate(-5deg) scale(1.03)}
  58%{opacity:1;transform:translateX(var(--m4-x2)) rotate(-2.5deg) scale(1.016)}
  78%{opacity:1;transform:translateX(var(--m4-x3)) rotate(-.8deg) scale(1.005)}
  92%{opacity:1;transform:translateX(calc(var(--m4-x4) + 4px)) rotate(.25deg) scale(.998)}
  100%{opacity:1;transform:translateX(var(--m4-x4)) rotate(0) scale(1)}
}
@media(max-width:767px){
  .m3-shell-side{
    --m4-x1:50px;
    --m4-x2:100px;
    --m4-x3:150px;
    --m4-x4:170px;
  }
  .np-toggle-card[data-prep-state="controlled"] .m3-shell-side{
    --m4-x1:55px;
    --m4-x2:110px;
    --m4-x3:160px;
    --m4-x4:185px;
  }
}
@media(prefers-reduced-motion:reduce){
  .m3-shell-side{
    transform:translateX(var(--m4-x4))!important;
  }
}

/* M4 refinement 04 — animate the veneer child, keep parent at final seat */
.m3-shell-side{
  opacity:1!important;
  transform:none!important;
}
.np-toggle-card[data-prep-state="no-space"] .m3-shell-side{
  left:40%!important;
}
.np-toggle-card[data-prep-state="controlled"] .m3-shell-side{
  left:46%!important;
}
.m3-shell-side>.m3-side-edited{
  transform-origin:50% 55%!important;
  transform:translateX(-220%) rotate(-7deg) scale(1.04);
  opacity:1!important;
}
.np-ceramic-demo.is-playing .m3-shell-side{
  animation:none!important;
}
.np-ceramic-demo.is-playing .m3-shell-side>.m3-side-edited{
  animation:m4VeneerChildSeat 2.8s cubic-bezier(.22,.72,.22,1) both!important;
}
.np-ceramic-demo.is-settled .m3-shell-side{
  transform:none!important;
}
.np-ceramic-demo.is-settled .m3-shell-side>.m3-side-edited{
  transform:translateX(0) rotate(0) scale(1)!important;
}
@keyframes m4VeneerChildSeat{
  0%,14%{transform:translateX(-220%) rotate(-7deg) scale(1.04)}
  34%{transform:translateX(-155%) rotate(-5deg) scale(1.03)}
  58%{transform:translateX(-85%) rotate(-2.5deg) scale(1.016)}
  78%{transform:translateX(-28%) rotate(-.8deg) scale(1.005)}
  92%{transform:translateX(4%) rotate(.25deg) scale(.998)}
  100%{transform:translateX(0) rotate(0) scale(1)}
}
@media(max-width:767px){
  .np-toggle-card[data-prep-state="no-space"] .m3-shell-side{left:39%!important}
  .np-toggle-card[data-prep-state="controlled"] .m3-shell-side{left:45%!important}
}
@media(prefers-reduced-motion:reduce){
  .m3-shell-side>.m3-side-edited{
    animation:none!important;
    transform:none!important;
  }
}

/* M4A CANARY — photo-textured profile scene, isolated from M4 */
.m4-scene-svg,
.m3-real-asset-stage{display:none!important}
.m4a-photo-scene{
  position:relative;
  width:100%;
  height:345px;
  margin:0;
  overflow:hidden;
  border-radius:24px 24px 0 0;
  background:#020202;
}
.m4a-photo-svg{
  display:block;
  width:100%;
  height:100%;
}
.m4a-intact-photo,.m4a-prep-photo,.m4a-prep-edge,.m4a-seat-guide{
  transition:opacity .28s ease;
}
.np-toggle-card[data-prep-state="no-space"] .m4a-intact-photo{opacity:1}
.np-toggle-card[data-prep-state="no-space"] .m4a-prep-photo,
.np-toggle-card[data-prep-state="no-space"] .m4a-prep-edge{opacity:0}
.np-toggle-card[data-prep-state="no-space"] .m4a-seat-guide{opacity:.25}
.np-toggle-card[data-prep-state="controlled"] .m4a-intact-photo{opacity:0}
.np-toggle-card[data-prep-state="controlled"] .m4a-prep-photo,
.np-toggle-card[data-prep-state="controlled"] .m4a-prep-edge{opacity:1}
.np-toggle-card[data-prep-state="controlled"] .m4a-seat-guide{opacity:.72}
.m4a-veneer{
  --m4a-seat-left:52%;
  position:absolute;
  z-index:7;
  left:8%;
  top:86px;
  width:108px;
  height:220px;
  object-fit:contain;
  filter:drop-shadow(0 16px 18px rgba(0,0,0,.58)) brightness(1.03);
  transform-origin:50% 55%;
  transform:rotate(-8deg) scale(1.04);
  opacity:1;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-veneer{--m4a-seat-left:57%}
.np-ceramic-demo.is-playing .m4a-veneer{
  animation:m4aVeneerSeat 2.8s cubic-bezier(.22,.72,.22,1) both;
}
.np-ceramic-demo.is-settled .m4a-veneer{
  left:var(--m4a-seat-left);
  transform:rotate(0) scale(1);
}
@keyframes m4aVeneerSeat{
  0%,14%{left:8%;transform:rotate(-8deg) scale(1.04)}
  34%{left:22%;transform:rotate(-5deg) scale(1.03)}
  58%{left:37%;transform:rotate(-2.5deg) scale(1.016)}
  78%{left:48%;transform:rotate(-.8deg) scale(1.006)}
  92%{left:calc(var(--m4a-seat-left) + 1%);transform:rotate(.3deg) scale(.998)}
  100%{left:var(--m4a-seat-left);transform:rotate(0) scale(1)}
}
@media(max-width:767px){
  .m4a-photo-scene{height:285px}
  .m4a-veneer{
    top:73px;
    width:88px;
    height:180px;
    --m4a-seat-left:51%;
  }
  .np-toggle-card[data-prep-state="controlled"] .m4a-veneer{--m4a-seat-left:56%}
}
@media(prefers-reduced-motion:reduce){
  .m4a-intact-photo,.m4a-prep-photo,.m4a-prep-edge,.m4a-seat-guide{transition:none!important}
  .m4a-veneer{animation:none!important;left:var(--m4a-seat-left)!important;transform:none!important}
}

/* M4A texture tuning — one clinical source, two tissue states */
.m4a-natural-photo,.m4a-intact-photo{
  filter:brightness(1.04) contrast(.98) saturate(.86);
}
.m4a-prep-photo{
  filter:brightness(.90) contrast(1.05) saturate(.66);
}

/* M4A v2 — dedicated real enamel/prep textures in profile geometry */
.m4a-photo-svg{display:none!important}
.m4a-v2-scene{
  display:block;
  width:100%;
  height:100%;
}
.m4a-veneer{
  --m4a-seat-left:47%;
  top:82px!important;
  width:106px!important;
  height:226px!important;
  left:6%!important;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-veneer{
  --m4a-seat-left:50%;
}
.np-toggle-card[data-prep-state="no-space"] .m4a-v2-scene image[href*="prep-texture"]{
  opacity:0;
}
.np-toggle-card[data-prep-state="no-space"] .m4a-v2-scene .m4a-prep-edge{
  opacity:0;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v2-guide{
  opacity:.78;
}
@keyframes m4aVeneerSeat{
  0%,14%{left:6%;transform:rotate(-8deg) scale(1.04)}
  34%{left:18%;transform:rotate(-5deg) scale(1.03)}
  58%{left:31%;transform:rotate(-2.5deg) scale(1.016)}
  78%{left:42%;transform:rotate(-.8deg) scale(1.006)}
  92%{left:calc(var(--m4a-seat-left) + .7%);transform:rotate(.25deg) scale(.998)}
  100%{left:var(--m4a-seat-left);transform:rotate(0) scale(1)}
}
@media(max-width:767px){
  .m4a-veneer{
    top:68px!important;
    width:87px!important;
    height:186px!important;
    --m4a-seat-left:46%;
  }
  .np-toggle-card[data-prep-state="controlled"] .m4a-veneer{--m4a-seat-left:49%}
}

/* M4A v3 — explicit intact-target vs prepared-target states */
.m4a-target-intact,
.m4a-target-prep,
.m4a-prep-edge,
.m4a-prep-outline,
.m4a-v2-guide{
  transition:opacity .28s ease;
}
.np-toggle-card[data-prep-state="no-space"] .m4a-target-intact{opacity:1!important}
.np-toggle-card[data-prep-state="no-space"] .m4a-target-prep,
.np-toggle-card[data-prep-state="no-space"] .m4a-prep-edge,
.np-toggle-card[data-prep-state="no-space"] .m4a-prep-outline{opacity:0!important}
.np-toggle-card[data-prep-state="no-space"] .m4a-v2-guide{opacity:.24!important}
.np-toggle-card[data-prep-state="controlled"] .m4a-target-intact{opacity:0!important}
.np-toggle-card[data-prep-state="controlled"] .m4a-target-prep{opacity:1!important}
.np-toggle-card[data-prep-state="controlled"] .m4a-prep-edge{opacity:.56!important}
.np-toggle-card[data-prep-state="controlled"] .m4a-prep-outline{opacity:.72!important}
.np-toggle-card[data-prep-state="controlled"] .m4a-v2-guide{opacity:.78!important}

.m4a-veneer{--m4a-seat-left:56%!important}
.np-toggle-card[data-prep-state="controlled"] .m4a-veneer{--m4a-seat-left:57.5%!important}

@media(max-width:767px){
  .m4a-veneer{--m4a-seat-left:55%!important}
  .np-toggle-card[data-prep-state="controlled"] .m4a-veneer{--m4a-seat-left:57%!important}
}

/* M4A v4 — realistic gum + prep tone + transform-only veneer motion */
.m4a-gum-photo{filter:saturate(.9) brightness(.98) contrast(.98)}
.m4a-adjacent-enamel,.m4a-target-intact{filter:brightness(1.04) saturate(.88) contrast(.98)}
.m4a-target-prep{filter:brightness(1.18) saturate(.72) contrast(.94)}

.m4a-veneer{
  left:var(--m4a-seat-left)!important;
  transform:translateX(-245%) rotate(-8deg) scale(1.04)!important;
  opacity:1!important;
}
.np-toggle-card[data-prep-state="no-space"] .m4a-veneer{--m4a-seat-left:54%!important}
.np-toggle-card[data-prep-state="controlled"] .m4a-veneer{--m4a-seat-left:57.5%!important}

.np-ceramic-demo.is-playing .m4a-veneer{
  animation:m4aVeneerTransform 2.8s cubic-bezier(.22,.72,.22,1) both!important;
}
.np-ceramic-demo.is-settled .m4a-veneer{
  transform:translateX(0) rotate(0) scale(1)!important;
}
@keyframes m4aVeneerTransform{
  0%,14%{transform:translateX(-245%) rotate(-8deg) scale(1.04)}
  34%{transform:translateX(-175%) rotate(-5deg) scale(1.03)}
  58%{transform:translateX(-100%) rotate(-2.5deg) scale(1.016)}
  78%{transform:translateX(-38%) rotate(-.8deg) scale(1.006)}
  92%{transform:translateX(4%) rotate(.25deg) scale(.998)}
  100%{transform:translateX(0) rotate(0) scale(1)}
}
@media(max-width:767px){
  .np-toggle-card[data-prep-state="no-space"] .m4a-veneer{--m4a-seat-left:53%!important}
  .np-toggle-card[data-prep-state="controlled"] .m4a-veneer{--m4a-seat-left:56.5%!important}
}
@media(prefers-reduced-motion:reduce){
  .m4a-veneer{animation:none!important;transform:none!important}
}

/* M4A v5 — corrected start visibility + tuned real textures */
.m4a-adjacent-enamel,.m4a-target-intact{filter:brightness(1.02) saturate(.92) contrast(.99)}
.m4a-target-prep{filter:brightness(1.06) saturate(.82) contrast(.97)}
.m4a-veneer{
  transform:translateX(-145%) rotate(-8deg) scale(1.035)!important;
}
.np-ceramic-demo.is-playing .m4a-veneer{
  animation:m4aVeneerTransformV5 2.8s cubic-bezier(.22,.72,.22,1) both!important;
}
.np-ceramic-demo.is-settled .m4a-veneer{
  transform:translateX(0) rotate(0) scale(1)!important;
}
@keyframes m4aVeneerTransformV5{
  0%,14%{transform:translateX(-145%) rotate(-8deg) scale(1.035)}
  34%{transform:translateX(-104%) rotate(-5deg) scale(1.026)}
  58%{transform:translateX(-58%) rotate(-2.4deg) scale(1.014)}
  78%{transform:translateX(-22%) rotate(-.7deg) scale(1.005)}
  92%{transform:translateX(3%) rotate(.2deg) scale(.998)}
  100%{transform:translateX(0) rotate(0) scale(1)}
}

/* M4A v6 — fit calibration: bulky no-space, flush controlled */
.np-toggle-card[data-prep-state="no-space"] .m4a-veneer{
  --m4a-seat-left:57%!important;
  width:102px!important;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-veneer{
  --m4a-seat-left:60.5%!important;
  width:92px!important;
}
@media(max-width:767px){
  .np-toggle-card[data-prep-state="no-space"] .m4a-veneer{
    --m4a-seat-left:56%!important;
    width:84px!important;
  }
  .np-toggle-card[data-prep-state="controlled"] .m4a-veneer{
    --m4a-seat-left:60%!important;
    width:77px!important;
  }
}

/* M4A V3 — real profile base + real prep texture + animated veneer */
.m4a-v2-scene,
.m4a-photo-svg,
.m4-scene-svg,
.m3-real-asset-stage{display:none!important}

.m4a-photo-scene{
  position:relative!important;
  width:100%!important;
  height:345px!important;
  overflow:hidden!important;
  border-radius:24px 24px 0 0!important;
  background:#020202!important;
}
.m4a-v3-scene{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#020202;
}
.m4a-v3-base{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:fill;
  display:block;
}
.m4a-v3-prep-layer{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  pointer-events:none;
}
.m4a-v3-reduction-mask,
.m4a-v3-prep-photo,
.m4a-v3-prep-outline{
  opacity:0;
  transition:opacity .32s ease;
}
.m4a-v3-seat-guide{
  opacity:.18;
  transition:opacity .32s ease;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-reduction-mask,
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-prep-photo,
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-prep-outline{
  opacity:1;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-seat-guide{
  opacity:.72;
}
.m4a-v3-veneer{
  --m4a-v3-seat:63%;
  position:absolute;
  z-index:8;
  left:10%;
  top:82px;
  width:96px;
  height:220px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 15px 19px rgba(0,0,0,.58)) brightness(1.04);
  transform-origin:50% 55%;
  transform:translateX(0) rotate(-8deg) scale(1.04);
  opacity:1;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-veneer{
  --m4a-v3-seat:67%;
}
.np-ceramic-demo.is-playing .m4a-v3-veneer{
  animation:m4aV3Seat 2.8s cubic-bezier(.22,.72,.22,1) both!important;
}
.np-ceramic-demo.is-settled .m4a-v3-veneer{
  left:var(--m4a-v3-seat)!important;
  transform:rotate(0) scale(1)!important;
}
@keyframes m4aV3Seat{
  0%,14%{left:10%;transform:rotate(-8deg) scale(1.04)}
  34%{left:25%;transform:rotate(-5deg) scale(1.03)}
  58%{left:43%;transform:rotate(-2.5deg) scale(1.016)}
  78%{left:56%;transform:rotate(-.8deg) scale(1.006)}
  92%{left:calc(var(--m4a-v3-seat) + .8%);transform:rotate(.25deg) scale(.998)}
  100%{left:var(--m4a-v3-seat);transform:rotate(0) scale(1)}
}
@media(max-width:767px){
  .m4a-photo-scene{height:285px!important}
  .m4a-v3-veneer{
    top:66px;
    width:78px;
    height:186px;
    --m4a-v3-seat:62%;
  }
  .np-toggle-card[data-prep-state="controlled"] .m4a-v3-veneer{
    --m4a-v3-seat:66%;
  }
}
@media(prefers-reduced-motion:reduce){
  .m4a-v3-reduction-mask,
  .m4a-v3-prep-photo,
  .m4a-v3-prep-outline,
  .m4a-v3-seat-guide{transition:none!important}
  .m4a-v3-veneer{
    animation:none!important;
    left:var(--m4a-v3-seat)!important;
    transform:none!important;
  }
}

/* M4A V3 refinement 02 — right target tooth + tight side veneer */
.m4a-v3-veneer{
  --m4a-v3-seat:72%;
  top:88px!important;
  width:78px!important;
  height:196px!important;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-veneer{
  --m4a-v3-seat:76%;
}
@keyframes m4aV3Seat{
  0%,14%{left:8%;transform:rotate(-8deg) scale(1.04)}
  34%{left:26%;transform:rotate(-5deg) scale(1.03)}
  58%{left:47%;transform:rotate(-2.5deg) scale(1.016)}
  78%{left:64%;transform:rotate(-.8deg) scale(1.006)}
  92%{left:calc(var(--m4a-v3-seat) + .5%);transform:rotate(.2deg) scale(.998)}
  100%{left:var(--m4a-v3-seat);transform:rotate(0) scale(1)}
}
@media(max-width:767px){
  .m4a-v3-veneer{
    top:72px!important;
    width:64px!important;
    height:164px!important;
    --m4a-v3-seat:71%;
  }
  .np-toggle-card[data-prep-state="controlled"] .m4a-v3-veneer{
    --m4a-v3-seat:75%;
  }
}

/* M4A V3 refinement 03 — single veneer + native profile prep texture */
.m4a-veneer{display:none!important}
.m4a-v3-prep-photo{
  filter:brightness(.84) saturate(.58) contrast(1.06);
}
.m4a-v3-prep-tint{
  opacity:0;
  transition:opacity .32s ease;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-prep-tint{
  opacity:.14;
}

/* M4A V3 refinement 04 — geometry-fit correction */
.m4a-v3-veneer{
  --m4a-v3-seat:64%;
  top:44px!important;
  width:80px!important;
  height:204px!important;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-veneer{
  --m4a-v3-seat:69%;
}
@keyframes m4aV3Seat{
  0%,14%{left:7%;transform:rotate(-8deg) scale(1.04)}
  34%{left:22%;transform:rotate(-5deg) scale(1.03)}
  58%{left:40%;transform:rotate(-2.5deg) scale(1.016)}
  78%{left:56%;transform:rotate(-.8deg) scale(1.006)}
  92%{left:calc(var(--m4a-v3-seat) + .4%);transform:rotate(.18deg) scale(.998)}
  100%{left:var(--m4a-v3-seat);transform:rotate(0) scale(1)}
}
@media(max-width:767px){
  .m4a-v3-veneer{
    top:30px!important;
    width:68px!important;
    height:174px!important;
    --m4a-v3-seat:63%;
  }
  .np-toggle-card[data-prep-state="controlled"] .m4a-v3-veneer{
    --m4a-v3-seat:69%;
  }
}

/* M4A V3 refinement 05 — padding-free veneer, true aspect ratio */
.m4a-v3-veneer{
  --m4a-v3-seat:63%;
  top:52px!important;
  width:104px!important;
  height:auto!important;
  object-fit:contain!important;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-veneer{
  --m4a-v3-seat:65%;
}
@keyframes m4aV3Seat{
  0%,14%{left:7%;transform:rotate(-8deg) scale(1.04)}
  34%{left:22%;transform:rotate(-5deg) scale(1.03)}
  58%{left:40%;transform:rotate(-2.4deg) scale(1.016)}
  78%{left:55%;transform:rotate(-.7deg) scale(1.006)}
  92%{left:calc(var(--m4a-v3-seat) + .35%);transform:rotate(.16deg) scale(.998)}
  100%{left:var(--m4a-v3-seat);transform:rotate(0) scale(1)}
}
@media(max-width:767px){
  .m4a-v3-veneer{
    top:42px!important;
    width:68px!important;
    height:auto!important;
    --m4a-v3-seat:63%;
  }
  .np-toggle-card[data-prep-state="controlled"] .m4a-v3-veneer{
    --m4a-v3-seat:65%;
  }
}

/* M4B STATIC-FIRST — isolate composition and dual-target states before animation */
#ceramicDemo .m4a-v2-scene,
#ceramicDemo .m4a-photo-svg,
#ceramicDemo .m4-scene-svg,
#ceramicDemo .m3-real-asset-stage{
  display:none!important;
}
#ceramicDemo .m4a-v3-scene{
  display:block!important;
}
#ceramicDemo .m4a-v3-base{
  object-fit:cover!important;
  object-position:center!important;
}
#ceramicDemo .m4a-v3-seat-guide{
  display:none!important;
}
#ceramicDemo .m4a-v3-veneer,
#ceramicDemo.is-playing .m4a-v3-veneer,
#ceramicDemo.is-settled .m4a-v3-veneer{
  animation:none!important;
  left:43%!important;
  top:64px!important;
  width:96px!important;
  height:auto!important;
  transform:rotate(-7deg) scale(1)!important;
  opacity:1!important;
}
#ceramicDemo .np-demo-status,
#ceramicDemo .np-demo-replay{
  display:none!important;
}
#ceramicDemo .np-visual-caption{
  margin-top:8px!important;
}
.np-toggle-card[data-prep-state="no-space"] .m4a-v3-reduction-mask,
.np-toggle-card[data-prep-state="no-space"] .m4a-v3-prep-photo,
.np-toggle-card[data-prep-state="no-space"] .m4a-v3-prep-tint,
.np-toggle-card[data-prep-state="no-space"] .m4a-v3-prep-outline{
  opacity:0!important;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-reduction-mask,
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-prep-photo,
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-prep-outline{
  opacity:1!important;
}
.np-toggle-card[data-prep-state="controlled"] .m4a-v3-prep-tint{
  opacity:.10!important;
}
@media(max-width:767px){
  #ceramicDemo .m4a-v3-veneer,
  #ceramicDemo.is-playing .m4a-v3-veneer,
  #ceramicDemo.is-settled .m4a-v3-veneer{
    left:41%!important;
    top:50px!important;
    width:70px!important;
  }
}

/* M4B v2 — static scene built from independent intact/prep/veneer assets */
#ceramicDemo .m4a-v3-scene,
#ceramicDemo .m4a-v2-scene,
#ceramicDemo .m4a-photo-svg,
#ceramicDemo .m4-scene-svg,
#ceramicDemo .m3-real-asset-stage{
  display:none!important;
}
.m4b-static-stage{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#020202;
}
.m4b-base-intact{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.m4b-target-mask{
  position:absolute;
  z-index:2;
  right:-1%;
  top:14%;
  width:31%;
  height:73%;
  background:#020202;
  clip-path:polygon(35% 0,78% 3%,96% 18%,100% 52%,91% 81%,70% 96%,40% 100%,17% 88%,5% 61%,8% 26%);
  opacity:0;
  transition:opacity .2s ease;
}
.m4b-prep-target{
  position:absolute;
  z-index:3;
  right:5.5%;
  top:16%;
  width:23.5%;
  height:69%;
  object-fit:contain;
  object-position:center;
  transform:perspective(650px) rotateY(-17deg) scaleX(.83);
  transform-origin:50% 50%;
  filter:brightness(1.04) saturate(.78) contrast(.98) drop-shadow(0 10px 14px rgba(0,0,0,.34));
  opacity:0;
  transition:opacity .2s ease;
}
.m4b-static-veneer{
  position:absolute;
  z-index:4;
  left:55%;
  top:25%;
  width:16%;
  height:auto;
  display:block;
  object-fit:contain;
  transform:rotate(-6deg);
  filter:drop-shadow(0 14px 18px rgba(0,0,0,.54)) brightness(1.04);
}
.np-toggle-card[data-prep-state="no-space"] .m4b-target-mask,
.np-toggle-card[data-prep-state="no-space"] .m4b-prep-target{
  opacity:0!important;
}
.np-toggle-card[data-prep-state="controlled"] .m4b-target-mask,
.np-toggle-card[data-prep-state="controlled"] .m4b-prep-target{
  opacity:1!important;
}
#ceramicDemo .np-demo-status,
#ceramicDemo .np-demo-replay{
  display:none!important;
}
#ceramicDemo .np-visual-caption{margin-top:8px!important}
@media(max-width:767px){
  .m4b-target-mask{
    right:-2%;
    top:14%;
    width:32%;
    height:73%;
  }
  .m4b-prep-target{
    right:4.5%;
    top:16%;
    width:25%;
    height:69%;
  }
  .m4b-static-veneer{
    left:51%;
    top:24%;
    width:18%;
  }
}

/* M4B v3 — two independent full-state clinical scenes */
.m4b-static-stage{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  background:#020202!important;
}
.m4b-state{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
  transition:opacity .18s ease!important;
}
.m4b-state-intact{opacity:1!important}
.m4b-state-prep{opacity:0!important}
.np-toggle-card[data-prep-state="controlled"] .m4b-state-intact{opacity:0!important}
.np-toggle-card[data-prep-state="controlled"] .m4b-state-prep{opacity:1!important}

.m4b-static-veneer{
  position:absolute!important;
  z-index:5!important;
  left:43%!important;
  top:24%!important;
  width:15.5%!important;
  height:auto!important;
  display:block!important;
  object-fit:contain!important;
  transform:rotate(-5deg)!important;
  transform-origin:50% 55%!important;
  filter:drop-shadow(0 15px 20px rgba(0,0,0,.56)) brightness(1.03)!important;
  opacity:1!important;
  animation:none!important;
}

/* Static-first: no motion/steps until both endpoint scenes are accepted */
#ceramicDemo .np-demo-status,
#ceramicDemo .np-demo-replay{display:none!important}

@media(max-width:767px){
  .m4b-state-intact{object-position:50% 50%!important}
  .m4b-state-prep{object-position:50% 50%!important}
  .m4b-static-veneer{
    left:40%!important;
    top:24%!important;
    width:18%!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .m4b-state{transition:none!important}
}

/* M4B.1 profile endpoints — composition/anatomy validation only */
.m4b-state{
  object-fit:cover!important;
  object-position:center!important;
}
.m4b-static-veneer{
  display:none!important;
}
#ceramicDemo .np-demo-badge{
  z-index:20!important;
  top:12px!important;
  right:12px!important;
  min-width:132px!important;
  justify-content:center!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(0,0,0,.22)!important;
}
#ceramicDemo .np-demo-status,
#ceramicDemo .np-demo-replay{
  display:none!important;
}

/* M4B.1 fit-debug: hidden unless QA adds .m4b-fit-preview */
.m4b-fit-cover,
.m4b-fit-veneer{
  display:none;
}
.m4b-fit-preview .m4b-fit-cover,
.m4b-fit-preview .m4b-fit-veneer{
  display:block;
}
.m4b-fit-preview .m4b-fit-cover{
  position:absolute;
  z-index:8;
  background:#020202;
  pointer-events:none;
}
.m4b-fit-preview .m4b-fit-cover-intact{
  left:0;
  top:20%;
  width:39%;
  height:78%;
}
.m4b-fit-preview .m4b-fit-cover-prep{
  display:none;
}
.m4b-fit-preview .m4b-fit-veneer{
  position:absolute;
  z-index:9;
  height:auto;
  object-fit:contain;
  pointer-events:none;
  filter:drop-shadow(0 13px 18px rgba(0,0,0,.52)) brightness(1.02);
}
.m4b-fit-preview .np-toggle-card[data-prep-state="no-space"] .m4b-fit-veneer{
  left:47%;
  top:18%;
  width:25%;
  transform:rotate(-2deg);
}
.m4b-fit-preview .np-toggle-card[data-prep-state="controlled"] .m4b-fit-cover-intact{
  display:none;
}
.m4b-fit-preview .np-toggle-card[data-prep-state="controlled"] .m4b-fit-cover-prep{
  display:block;
  right:0;
  left:auto;
  top:22%;
  width:31%;
  height:74%;
}
.m4b-fit-preview .np-toggle-card[data-prep-state="controlled"] .m4b-fit-veneer{
  left:38%;
  top:20%;
  width:24%;
  transform:rotate(-1deg);
}

/* M4B.1 fit-debug v2 — complete veneer asset */
.m4b-fit-preview .np-toggle-card[data-prep-state="no-space"] .m4b-fit-veneer{
  left:52.5%!important;
  top:17.5%!important;
  width:21.5%!important;
  transform:rotate(-1.5deg)!important;
}
.m4b-fit-preview .np-toggle-card[data-prep-state="controlled"] .m4b-fit-veneer{
  left:40.5%!important;
  top:18.5%!important;
  width:20.5%!important;
  transform:rotate(-1deg)!important;
}

/* M4B.1 fit-debug v3 — matched photoreal veneer */
.m4b-fit-preview .m4b-fit-cover-intact{
  left:0!important;
  top:12%!important;
  width:40%!important;
  height:88%!important;
}
.m4b-fit-preview .np-toggle-card[data-prep-state="controlled"] .m4b-fit-cover-prep{
  right:0!important;
  left:auto!important;
  top:18%!important;
  width:38%!important;
  height:82%!important;
}
.m4b-fit-preview .np-toggle-card[data-prep-state="no-space"] .m4b-fit-veneer{
  left:52%!important;
  top:15.5%!important;
  width:19%!important;
  transform:rotate(-1deg)!important;
}
.m4b-fit-preview .np-toggle-card[data-prep-state="controlled"] .m4b-fit-veneer{
  left:36.5%!important;
  top:17%!important;
  width:18%!important;
  transform:rotate(-.5deg)!important;
}

/* M4B.1 fit-debug v4 — full facial coverage */
.m4b-fit-preview .np-toggle-card[data-prep-state="no-space"] .m4b-fit-veneer{
  left:51%!important;
  top:12%!important;
  width:22%!important;
  transform:rotate(-.8deg)!important;
}
.m4b-fit-preview .np-toggle-card[data-prep-state="controlled"] .m4b-fit-veneer{
  left:37.5%!important;
  top:12.5%!important;
  width:21%!important;
  transform:rotate(-.4deg)!important;
}

/* M4B.1 fit-debug v5 — bulk vs flush calibration */
.m4b-fit-preview .np-toggle-card[data-prep-state="no-space"] .m4b-fit-veneer{
  left:49.5%!important;
  top:10%!important;
  width:24.5%!important;
  transform:rotate(-.7deg)!important;
}
.m4b-fit-preview .np-toggle-card[data-prep-state="controlled"] .m4b-fit-veneer{
  left:36.5%!important;
  top:10.5%!important;
  width:22.5%!important;
  transform:rotate(-.3deg)!important;
}

/* M4B2 — clean independent veneer animation over clean clinical backgrounds */
#ceramicDemo .m4b-fit-cover,
#ceramicDemo .m4b-static-veneer{
  display:none!important;
}
#ceramicDemo .m4b-fit-veneer{
  display:block!important;
  position:absolute!important;
  z-index:14!important;
  height:auto!important;
  object-fit:contain!important;
  transform-origin:50% 55%!important;
  opacity:1!important;
  pointer-events:none!important;
  filter:drop-shadow(0 14px 18px rgba(0,0,0,.48)) brightness(1.02)!important;
  animation:none!important;
}
#prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
  left:59.5%!important;
  top:15%!important;
  width:19.5%!important;
}
#prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
  left:71.2%!important;
  top:15.5%!important;
  width:18.4%!important;
}
#ceramicDemo:not(.m4b2-playing):not(.m4b2-settled) .m4b-fit-veneer{
  transform:translateX(-250%) translateY(7%) rotate(-9deg) scale(.93)!important;
}
#ceramicDemo.m4b2-playing .m4b-fit-veneer{
  animation:m4b2Seat 2.55s cubic-bezier(.2,.72,.2,1) both!important;
}
#ceramicDemo.m4b2-settled .m4b-fit-veneer{
  transform:translateX(0) translateY(0) rotate(0) scale(1)!important;
}
@keyframes m4b2Seat{
  0%,14%{transform:translateX(-250%) translateY(7%) rotate(-9deg) scale(.93);opacity:.94}
  36%{transform:translateX(-155%) translateY(4.5%) rotate(-5.8deg) scale(.96);opacity:1}
  66%{transform:translateX(-62%) translateY(1.5%) rotate(-2.2deg) scale(.987)}
  86%{transform:translateX(4%) translateY(-.5%) rotate(.35deg) scale(1.006)}
  94%{transform:translateX(-1.4%) translateY(.15%) rotate(-.12deg) scale(.998)}
  100%{transform:translateX(0) translateY(0) rotate(0) scale(1)}
}
#ceramicDemo .np-demo-status{
  display:none!important;
}
#ceramicDemo .np-demo-replay{
  display:inline-flex!important;
  position:relative!important;
  z-index:20!important;
  margin:10px auto 0!important;
  color:#ddd7e8!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
@media(max-width:767px){
  #prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
    left:58.5%!important;
    top:14.5%!important;
    width:20.5%!important;
  }
  #prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
    left:70.2%!important;
    top:15%!important;
    width:19.3%!important;
  }
}
@media(prefers-reduced-motion:reduce){
  #ceramicDemo .m4b-fit-veneer{
    animation:none!important;
    transform:none!important;
  }
}

/* M4B2 endpoint calibration — align veneer to actual target tooth */
#prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
  left:64.5%!important;
  top:14.2%!important;
  width:23.5%!important;
}
#prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
  left:78.3%!important;
  top:15.8%!important;
  width:20.6%!important;
}
@media(max-width:767px){
  #prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
    left:63.5%!important;
    top:14%!important;
    width:24.5%!important;
  }
  #prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
    left:77.4%!important;
    top:15.5%!important;
    width:21.4%!important;
  }
}

/* M4B2 contour-match refinement */
#prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
  left:61.5%!important;
  top:15.2%!important;
  width:20.4%!important;
}
#prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
  left:76.5%!important;
  top:16.4%!important;
  width:19.1%!important;
}
@media(max-width:767px){
  #prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
    left:60.5%!important;
    top:15%!important;
    width:21.2%!important;
  }
  #prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
    left:75.7%!important;
    top:16.1%!important;
    width:19.8%!important;
  }
}

/* M4B2 final contour shaping at seat */
#prepToggleCard[data-prep-state="no-space"] #ceramicDemo.m4b2-settled .m4b-fit-veneer{
  transform:translateX(0) translateY(0) rotate(-.4deg) scaleX(1.05) scaleY(.91)!important;
}
#prepToggleCard[data-prep-state="controlled"] #ceramicDemo.m4b2-settled .m4b-fit-veneer{
  transform:translateX(0) translateY(0) rotate(-.15deg) scaleX(1.03) scaleY(.92)!important;
}
@media(prefers-reduced-motion:reduce){
  #prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
    transform:rotate(-.4deg) scaleX(1.05) scaleY(.91)!important;
  }
  #prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
    transform:rotate(-.15deg) scaleX(1.03) scaleY(.92)!important;
  }
}

/* M4B3 — controlled static anchor-fit canary. Prepared tooth anatomy is fixed; framing moves as one scene. */
body.m4b3-static-anchor-fit #ceramicDemo .m4b-state{
  transform:translateX(-37%)!important;
  transition:opacity .18s ease!important;
}
body.m4b3-static-anchor-fit #ceramicDemo .m4b-fit-veneer{
  animation:none!important;
  transition:none!important;
  opacity:.55!important;
  transform-origin:50% 50%!important;
  pointer-events:none!important;
}
body.m4b3-static-anchor-fit #ceramicDemo .np-demo-replay{
  display:none!important;
}
body.m4b3-static-anchor-fit #prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
  left:24.5%!important;
  transform:rotate(-.4deg) scaleX(1.05) scaleY(.91)!important;
}
body.m4b3-static-anchor-fit #prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
  --vx:-5px;
  --vy:-20px;
  --vsx:1.13;
  --vsy:1.19;
  --vr:-8deg;
  --vskx:2deg;
  left:39.5%!important;
  top:16.4%!important;
  width:19.1%!important;
  transform:translate(var(--vx),var(--vy)) rotate(var(--vr)) skewX(var(--vskx)) scaleX(var(--vsx)) scaleY(var(--vsy))!important;
}
@media(max-width:767px){
  body.m4b3-static-anchor-fit #prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
    left:23.5%!important;
  }
  body.m4b3-static-anchor-fit #prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
    --vx:-3px;
    --vy:-16px;
    left:43%!important;
    top:16.1%!important;
    width:19.8%!important;
  }
}

/* M4B4 — controlled approach → seat animation. Endpoint = approved-fit candidate B. */
body.m4b4-approach-seat #ceramicDemo .np-demo-replay{
  display:inline-flex!important;
  position:relative!important;
  z-index:20!important;
  margin:10px auto 0!important;
}
body.m4b4-approach-seat #prepToggleCard[data-prep-state="controlled"] #ceramicDemo.m4b4-start .m4b-fit-veneer{
  transition:none!important;
  opacity:.38!important;
  transform:translate(72px,-34px) rotate(-15deg) skewX(4deg) scaleX(1.04) scaleY(1.08)!important;
}
body.m4b4-approach-seat #prepToggleCard[data-prep-state="controlled"] #ceramicDemo.m4b4-approach .m4b-fit-veneer{
  transition:transform 1.05s cubic-bezier(.20,.72,.20,1),opacity .72s ease!important;
  opacity:.52!important;
  transform:translate(8px,-23px) rotate(-9.5deg) skewX(2.5deg) scaleX(1.10) scaleY(1.16)!important;
}
body.m4b4-approach-seat #prepToggleCard[data-prep-state="controlled"] #ceramicDemo.m4b4-seat .m4b-fit-veneer{
  transition:transform .58s cubic-bezier(.18,.82,.22,1),opacity .42s ease!important;
  opacity:.55!important;
  transform:translate(var(--vx),var(--vy)) rotate(var(--vr)) skewX(var(--vskx)) scaleX(var(--vsx)) scaleY(var(--vsy))!important;
}
@media(max-width:767px){
  body.m4b4-approach-seat #prepToggleCard[data-prep-state="controlled"] #ceramicDemo.m4b4-start .m4b-fit-veneer{
    transform:translate(52px,-26px) rotate(-14deg) skewX(4deg) scaleX(1.03) scaleY(1.07)!important;
  }
  body.m4b4-approach-seat #prepToggleCard[data-prep-state="controlled"] #ceramicDemo.m4b4-approach .m4b-fit-veneer{
    transform:translate(6px,-19px) rotate(-9deg) skewX(2.5deg) scaleX(1.09) scaleY(1.14)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.m4b4-approach-seat #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4b-fit-veneer{
    transition:none!important;
    opacity:.55!important;
    transform:translate(var(--vx),var(--vy)) rotate(var(--vr)) skewX(var(--vskx)) scaleX(var(--vsx)) scaleY(var(--vsy))!important;
  }
}

body.m4b4-approach-seat #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .np-demo-replay{
  display:none!important;
}

/* M4B4 mobile framing correction — keep target tooth visible while preserving leftward composition. */
@media(max-width:767px){
  body.m4b4-approach-seat #ceramicDemo .m4b-state{
    transform:translateX(-28%)!important;
  }
  body.m4b4-approach-seat #prepToggleCard[data-prep-state="controlled"] .m4b-fit-veneer{
    left:52%!important;
  }
  body.m4b4-approach-seat #prepToggleCard[data-prep-state="no-space"] .m4b-fit-veneer{
    left:32.5%!important;
  }
}

/* M4B5 — control-point mesh warped veneer. Global affine fit is retired. */
body.m4b5-warped-veneer #ceramicDemo .m4b-fit-veneer{
  visibility:hidden!important;
}
body.m4b5-warped-veneer #ceramicDemo .m4b5-warp-canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:14;
  pointer-events:none;
  opacity:.58;
  filter:drop-shadow(0 12px 14px rgba(0,0,0,.38));
  transform-origin:50% 50%;
}
body.m4b5-warped-veneer #ceramicDemo .np-demo-replay{
  display:none!important;
}
@media(max-width:767px){
  body.m4b5-warped-veneer #ceramicDemo .m4b-state{
    transform:translateX(-20%)!important;
  }
}

/* M4B6 — ideal final tooth endpoint. M4B5 canvas retained only as source/history, not rendered. */
body.m4b6-ideal-final #ceramicDemo .m4b5-warp-canvas{
  display:none!important;
}
body.m4b6-ideal-final #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4b-fit-veneer{
  visibility:hidden!important;
}
body.m4b6-ideal-final #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .m4b-fit-veneer{
  visibility:visible!important;
  left:27.5%!important;
}
body.m4b6-ideal-final #ceramicDemo .m4b6-final-canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:15;
  pointer-events:none;
  opacity:1;
  transform:none;
  filter:none;
}
body.m4b6-ideal-final #ceramicDemo .np-demo-replay{
  display:inline-flex!important;
  position:relative!important;
  z-index:20!important;
  margin:10px auto 0!important;
}
body.m4b6-ideal-final #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .np-demo-replay{
  display:none!important;
}
/* desktop photo framing: full target tooth + right-side arrival runway */
body.m4b6-ideal-final #ceramicDemo .m4b-state{
  transform:translateX(-34%)!important;
}
@media(max-width:767px){
  /* mobile uses a less aggressive crop; the animation remains controlled-only */
  body.m4b6-ideal-final #ceramicDemo .m4b-state{
    transform:translateX(-12%)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.m4b6-ideal-final #ceramicDemo .m4b6-final-canvas{
    transition:none!important;
  }
}

@media(max-width:767px){
  body.m4b6-ideal-final #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .m4b-fit-veneer{
    left:48.5%!important;
  }
}

/* M4B8 — E.max reference-driven veneer rendering */
body.m4b8-emax-reference #ceramicDemo .m4b5-warp-canvas,
body.m4b8-emax-reference #ceramicDemo .m4b6-final-canvas{
  display:none!important;
}
body.m4b8-emax-reference #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4b-fit-veneer{
  visibility:hidden!important;
}
body.m4b8-emax-reference #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .m4b-fit-veneer{
  visibility:visible!important;
}
body.m4b8-emax-reference #ceramicDemo .m4b8-emax-canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:16;
  pointer-events:none;
}
body.m4b8-emax-reference #ceramicDemo .np-demo-replay{
  display:inline-flex!important;
  position:relative!important;
  z-index:21!important;
  margin:10px auto 0!important;
}
body.m4b8-emax-reference #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .np-demo-replay{
  display:none!important;
}
/* keep target tooth complete, while preserving arrival runway on the right */
body.m4b8-emax-reference #ceramicDemo .m4b-state{
  transform:translateX(-31%)!important;
}
@media(max-width:767px){
  body.m4b8-emax-reference #ceramicDemo .m4b-state{
    transform:translateX(-12%)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.m4b8-emax-reference #ceramicDemo .m4b8-emax-canvas{
    transition:none!important;
  }
}

/* M4B11 — validated integration. Desktop only; mobile keeps protected M4B9 baseline. */
@media(min-width:768px){
  body.m4b11-validated-integration #ceramicDemo .m4b8-emax-canvas{
    display:none!important;
  }
  body.m4b11-validated-integration #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4b-fit-veneer{
    visibility:hidden!important;
  }
  body.m4b11-validated-integration #ceramicDemo .m4b11-canvas{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:18;
    pointer-events:none;
  }
  body.m4b11-validated-integration #ceramicDemo .m4b-state{
    transform:translateX(-31%)!important;
  }
  body.m4b11-validated-integration #ceramicDemo .np-demo-replay{
    display:inline-flex!important;
    position:relative!important;
    z-index:22!important;
    margin:10px auto 0!important;
  }
  body.m4b11-validated-integration #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .np-demo-replay{
    display:none!important;
  }
}

@media(max-width:767px){
  body.m4b11-validated-integration #ceramicDemo .m4b11-canvas{
    display:none!important;
  }
}

/* M4B12 MILESTONE — professional near-fit presentation; desktop only. */
@media(min-width:768px){
  body.m4b12-near-fit-milestone #ceramicDemo .m4b8-emax-canvas,
  body.m4b12-near-fit-milestone #ceramicDemo .m4b5-warp-canvas,
  body.m4b12-near-fit-milestone #ceramicDemo .m4b6-final-canvas{
    display:none!important;
  }
  body.m4b12-near-fit-milestone #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4b-fit-veneer{
    visibility:hidden!important;
  }
  body.m4b12-near-fit-milestone #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .m4b-fit-veneer{
    visibility:visible!important;
  }
  body.m4b12-near-fit-milestone #ceramicDemo .m4b12-nearfit-canvas{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:18;
    pointer-events:none;
  }
  body.m4b12-near-fit-milestone #ceramicDemo .m4b-state{
    transform:translateX(-28%)!important;
  }
  body.m4b12-near-fit-milestone #ceramicDemo .np-demo-replay{
    display:inline-flex!important;
    position:relative!important;
    z-index:22!important;
    margin:10px auto 0!important;
  }
  body.m4b12-near-fit-milestone #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .np-demo-replay{
    display:none!important;
  }
}

/* M4B13 — scene continuity only; M4B12 motion geometry is frozen. */
@media(min-width:768px){
  body.m4b13-scene-continuity #ceramicDemo .m4b-static-stage{
    background:
      radial-gradient(ellipse at 74% 48%, rgba(122,91,70,.14) 0%, rgba(54,42,34,.07) 18%, rgba(2,2,2,0) 39%),
      #020202!important;
  }
  body.m4b13-scene-continuity #ceramicDemo .m4b-state{
    transform:translateX(-25%)!important;
    -webkit-mask-image:linear-gradient(
      to right,
      #000 0%,
      #000 90%,
      rgba(0,0,0,.96) 92%,
      rgba(0,0,0,.74) 95%,
      rgba(0,0,0,.34) 98%,
      transparent 100%
    );
    mask-image:linear-gradient(
      to right,
      #000 0%,
      #000 90%,
      rgba(0,0,0,.96) 92%,
      rgba(0,0,0,.74) 95%,
      rgba(0,0,0,.34) 98%,
      transparent 100%
    );
    -webkit-mask-size:100% 100%;
    mask-size:100% 100%;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
  }
  body.m4b13-scene-continuity #ceramicDemo .m4b12-nearfit-canvas{
    filter:drop-shadow(-5px 2px 9px rgba(126,92,69,.12));
  }
}

/* M4B14 — premium semi-3D illustrated explainer; desktop only. */
.m4b14-illustrated-scene{display:none}
@media(min-width:768px){
  body.m4b14-illustrated-explainer #ceramicDemo{
    background:#020202!important;
  }
  body.m4b14-illustrated-explainer #ceramicDemo .m4a-photo-scene{
    display:none!important;
  }
  body.m4b14-illustrated-explainer #ceramicDemo .m4b14-illustrated-scene{
    display:block!important;
    position:absolute;
    inset:0;
    overflow:hidden;
    border-radius:inherit;
    z-index:4;
    background:#020202;
  }
  body.m4b14-illustrated-explainer #ceramicDemo .m4b14-illustrated-scene>svg{
    display:block;
    width:100%;
    height:100%;
  }
  body.m4b14-illustrated-explainer #prepToggleCard[data-prep-state="no-space"] .m4b14-intact-target{
    opacity:1;
  }
  body.m4b14-illustrated-explainer #prepToggleCard[data-prep-state="no-space"] .m4b14-prep-target{
    opacity:0;
  }
  body.m4b14-illustrated-explainer #prepToggleCard[data-prep-state="controlled"] .m4b14-intact-target{
    opacity:0;
  }
  body.m4b14-illustrated-explainer #prepToggleCard[data-prep-state="controlled"] .m4b14-prep-target{
    opacity:1;
  }
  body.m4b14-illustrated-explainer .m4b14-intact-target,
  body.m4b14-illustrated-explainer .m4b14-prep-target{
    transition:opacity .28s ease;
  }
  body.m4b14-illustrated-explainer #ceramicDemo .np-demo-replay{
    display:inline-flex!important;
    position:relative!important;
    z-index:30!important;
    margin:10px auto 0!important;
  }
  body.m4b14-illustrated-explainer #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .np-demo-replay{
    display:none!important;
  }
  body.m4b14-illustrated-explainer #ceramicDemo .np-demo-badge{
    z-index:30!important;
  }
}

/* M4B14 textured v2 — replace flat SVG with existing textured semi-3D scene. */
@media(min-width:768px){
  body.m4b14-textured-v2 #ceramicDemo .m4b14-illustrated-scene{
    display:none!important;
  }
  body.m4b14-textured-v2 #ceramicDemo .m4a-photo-scene{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    overflow:hidden!important;
    border-radius:inherit!important;
    background:
      radial-gradient(ellipse at 70% 48%, rgba(103,79,61,.10) 0%, rgba(37,30,25,.05) 22%, transparent 45%),
      #020202!important;
    z-index:4!important;
  }
  body.m4b14-textured-v2 #ceramicDemo .m4b-static-stage,
  body.m4b14-textured-v2 #ceramicDemo .m4a-v3-scene,
  body.m4b14-textured-v2 #ceramicDemo .m4a-photo-svg,
  body.m4b14-textured-v2 #ceramicDemo .m4-scene-svg,
  body.m4b14-textured-v2 #ceramicDemo .m3-real-asset-stage{
    display:none!important;
  }
  body.m4b14-textured-v2 #ceramicDemo .m4a-v2-scene{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    transform:translateX(-23%)!important;
    transform-origin:center center!important;
  }
  body.m4b14-textured-v2 #ceramicDemo .m4a-veneer{
    display:block!important;
    position:absolute!important;
    z-index:12!important;
    top:76px!important;
    left:76%!important;
    width:94px!important;
    height:205px!important;
    object-fit:contain!important;
    opacity:.98!important;
    animation:none!important;
    transform:none!important;
    filter:brightness(1.02) contrast(.98) saturate(.88) drop-shadow(-7px 7px 10px rgba(0,0,0,.40))!important;
    transform-origin:center center!important;
    pointer-events:none!important;
  }
  body.m4b14-textured-v2 #prepToggleCard[data-prep-state="no-space"] .m4a-veneer{
    opacity:.78!important;
  }
  body.m4b14-textured-v2 #prepToggleCard[data-prep-state="controlled"] .m4a-v2-guide{
    opacity:0!important;
  }
  body.m4b14-textured-v2 #prepToggleCard[data-prep-state="no-space"] .m4a-target-intact{
    opacity:1!important;
  }
  body.m4b14-textured-v2 #prepToggleCard[data-prep-state="no-space"] .m4a-target-prep,
  body.m4b14-textured-v2 #prepToggleCard[data-prep-state="no-space"] .m4a-prep-edge{
    opacity:0!important;
  }
  body.m4b14-textured-v2 #prepToggleCard[data-prep-state="controlled"] .m4a-target-intact{
    opacity:0!important;
  }
  body.m4b14-textured-v2 #prepToggleCard[data-prep-state="controlled"] .m4a-target-prep{
    opacity:1!important;
  }
  body.m4b14-textured-v2 #prepToggleCard[data-prep-state="controlled"] .m4a-prep-edge{
    opacity:.50!important;
  }
}

/* M4B14 profile v3 — closest to approved reference composition. */
@media(min-width:768px){
  body.m4b14-profile-v3 #ceramicDemo .m4b14-illustrated-scene{display:none!important}
  body.m4b14-profile-v3 #ceramicDemo .m4a-photo-scene{
    display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;background:#020202!important;overflow:hidden!important;border-radius:inherit!important
  }
  body.m4b14-profile-v3 #ceramicDemo .m4b-static-stage,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v2-scene,
  body.m4b14-profile-v3 #ceramicDemo .m4a-photo-svg,
  body.m4b14-profile-v3 #ceramicDemo .m4-scene-svg,
  body.m4b14-profile-v3 #ceramicDemo .m3-real-asset-stage,
  body.m4b14-profile-v3 #ceramicDemo .m4a-veneer{display:none!important}
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-scene{
    display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;background:#020202!important;overflow:hidden!important
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-base,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-layer{
    position:absolute!important;inset:0!important;width:112%!important;height:100%!important;transform:translateX(-22%)!important
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-scene::after{
    content:"";position:absolute;right:0;top:0;width:18%;height:100%;z-index:4;
    background:linear-gradient(to right,rgba(2,2,2,0),#020202 72%);
    pointer-events:none
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-veneer{
    display:block!important;position:absolute!important;z-index:8!important;top:73px!important;left:78%!important;width:82px!important;height:188px!important;
    object-fit:contain!important;opacity:.98!important;animation:none!important;transform:none!important;
    filter:brightness(1.02) contrast(.98) saturate(.9) drop-shadow(-6px 7px 9px rgba(0,0,0,.42))!important;pointer-events:none!important
  }
  body.m4b14-profile-v3 #prepToggleCard[data-prep-state="no-space"] .m4a-v3-prep-layer{opacity:0!important}
  body.m4b14-profile-v3 #prepToggleCard[data-prep-state="controlled"] .m4a-v3-prep-layer{opacity:1!important}
  body.m4b14-profile-v3 #prepToggleCard[data-prep-state="controlled"] .m4a-v3-seat-guide{opacity:0!important}
}

/* M4B14 profile v3 refinement — clean base, subtle guide, real side-profile veneer. */
@media(min-width:768px){
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-base,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-layer{
    width:100%!important;height:100%!important;transform:translateX(-8%)!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-photo,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-reduction-mask,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-tint,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-outline{
    display:none!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-scene::after{
    width:18%!important;
    background:linear-gradient(to right,rgba(2,2,2,0),rgba(2,2,2,.78) 52%,#020202 76%)!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-veneer{
    left:88%!important;top:68px!important;width:108px!important;height:220px!important;
    object-fit:contain!important;transform:none!important;animation:none!important;
    filter:brightness(1.03) contrast(.99) saturate(.90) drop-shadow(-7px 8px 10px rgba(0,0,0,.42))!important;
  }
  body.m4b14-profile-v3 #prepToggleCard[data-prep-state="no-space"] .m4a-v3-seat-guide{opacity:0!important}
}

/* M4B14 profile v3 proportion refinement */
@media(min-width:768px){
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-base,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-layer{
    top:4%!important;left:-4%!important;width:94%!important;height:92%!important;transform:none!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-veneer{
    left:84%!important;top:74px!important;width:86px!important;height:214px!important;object-fit:fill!important;
  }
}

/* M4B14 profile v3 final framing balance */
@media(min-width:768px){
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-base,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-layer{
    top:7%!important;left:0!important;width:76%!important;height:76%!important;transform:none!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-veneer{
    left:77%!important;top:92px!important;width:72px!important;height:178px!important;object-fit:fill!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-scene::after{
    width:15%!important;background:linear-gradient(to right,rgba(2,2,2,0),#020202 80%)!important;
  }
}

/* M4B14 profile v3 composition correction — crop the reference content, not the anatomy. */
@media(min-width:768px){
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-base,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-layer{
    top:0!important;
    left:0!important;
    width:100%!important;
    height:100%!important;
    transform:translateX(-26%) scale(1.48)!important;
    transform-origin:center center!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-veneer{
    left:82%!important;
    top:88px!important;
    width:76px!important;
    height:186px!important;
    object-fit:fill!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-scene::after{
    width:12%!important;
    background:linear-gradient(to right,rgba(2,2,2,0),#020202 86%)!important;
  }
}

/* M4B14 profile v3 final composition — mirror the reference scene so teeth are left, runway is right. */
@media(min-width:768px){
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-base,
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-prep-layer{
    top:0!important;
    left:0!important;
    width:100%!important;
    height:100%!important;
    transform:scaleX(-1)!important;
    transform-origin:center center!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-veneer{
    left:78%!important;
    top:86px!important;
    width:78px!important;
    height:190px!important;
    object-fit:fill!important;
  }
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-scene::after{
    width:15%!important;
    right:0!important;
    left:auto!important;
    background:linear-gradient(to right,rgba(2,2,2,0),#020202 80%)!important;
  }
}

/* M4B14 profile v3 final proportion tuning — larger veneer, tighter but still non-contact gap. */
@media(min-width:768px){
  body.m4b14-profile-v3 #ceramicDemo .m4a-v3-veneer{
    left:76%!important;
    top:72px!important;
    width:96px!important;
    height:238px!important;
    object-fit:fill!important;
  }
}

/* M4B14 textured v4 — custom textured semi-3D scene */
.m4b14-v4-scene{display:none}
@media(min-width:768px){
  body.m4b14-textured-v4 #ceramicDemo .m4b14-v4-scene{
    display:block!important;position:absolute;inset:0;z-index:6;background:#020202;overflow:hidden;border-radius:inherit
  }
  body.m4b14-textured-v4 #ceramicDemo .m4b14-v4-scene>svg{width:100%;height:100%;display:block}
  body.m4b14-textured-v4 #ceramicDemo .m4b14-illustrated-scene,
  body.m4b14-textured-v4 #ceramicDemo .m4a-photo-scene{display:none!important}
  body.m4b14-textured-v4 #prepToggleCard[data-prep-state="no-space"] .m4b14v4-intact{opacity:1}
  body.m4b14-textured-v4 #prepToggleCard[data-prep-state="no-space"] .m4b14v4-prep,
  body.m4b14-textured-v4 #prepToggleCard[data-prep-state="no-space"] .m4b14v4-prep-edge{opacity:0}
  body.m4b14-textured-v4 #prepToggleCard[data-prep-state="controlled"] .m4b14v4-intact{opacity:0}
  body.m4b14-textured-v4 #prepToggleCard[data-prep-state="controlled"] .m4b14v4-prep{opacity:1}
  body.m4b14-textured-v4 #prepToggleCard[data-prep-state="controlled"] .m4b14v4-prep-edge{opacity:.45}
  body.m4b14-textured-v4 .m4b14v4-intact,
  body.m4b14-textured-v4 .m4b14v4-prep{transition:opacity .28s ease}
  body.m4b14-textured-v4 #ceramicDemo .np-demo-replay{display:inline-flex!important;position:relative!important;z-index:30!important;margin:10px auto 0!important}
  body.m4b14-textured-v4 #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .np-demo-replay{display:none!important}
  body.m4b14-textured-v4 #ceramicDemo .np-demo-badge{z-index:30!important}
}

/* M4B15 — rebuild directly from the user's reference image language. */
.m4b15-reference-scene{display:none}
@media(min-width:768px){
  body.m4b15-reference-rebuild #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4b15-reference-scene{
    display:block!important;
    position:absolute;
    inset:0;
    z-index:8;
    overflow:hidden;
    border-radius:inherit;
    background:#020202;
  }
  body.m4b15-reference-rebuild #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4a-photo-scene,
  body.m4b15-reference-rebuild #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4b14-v4-scene,
  body.m4b15-reference-rebuild #prepToggleCard[data-prep-state="controlled"] #ceramicDemo .m4b14-illustrated-scene{
    display:none!important;
  }
  body.m4b15-reference-rebuild #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .m4b15-reference-scene{
    display:none!important;
  }
  body.m4b15-reference-rebuild #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .m4a-photo-scene{
    display:block!important;
  }

  body.m4b15-reference-rebuild .m4b15-reference-photo{
    position:absolute;
    left:0;
    top:0;
    width:74%;
    height:100%;
    overflow:hidden;
    -webkit-mask-image:linear-gradient(to right,#000 0%,#000 84%,rgba(0,0,0,.94) 89%,rgba(0,0,0,.58) 95%,transparent 100%);
    mask-image:linear-gradient(to right,#000 0%,#000 84%,rgba(0,0,0,.94) 89%,rgba(0,0,0,.58) 95%,transparent 100%);
  }
  body.m4b15-reference-rebuild .m4b15-reference-photo img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:50% 43%;
    transform:scale(1.03);
    transform-origin:center;
    filter:brightness(.98) contrast(1.01) saturate(.96);
  }

  body.m4b15-reference-rebuild .m4b15-ambient-bridge{
    position:absolute;
    left:58%;
    top:13%;
    width:31%;
    height:74%;
    pointer-events:none;
    background:radial-gradient(ellipse at 35% 50%,rgba(134,96,78,.13) 0%,rgba(65,47,40,.06) 32%,rgba(2,2,2,0) 68%);
    filter:blur(7px);
    opacity:.72;
  }

  body.m4b15-reference-rebuild .m4b15-reference-veneer{
    position:absolute;
    z-index:12;
    left:72%;
    top:15%;
    width:14.5%;
    height:70%;
    object-fit:contain;
    object-position:center;
    filter:brightness(1.02) contrast(.99) saturate(.95) drop-shadow(-8px 8px 12px rgba(0,0,0,.44));
    transform:translateX(118px);
    transform-origin:center;
    opacity:.98;
    pointer-events:none;
    will-change:transform,opacity;
  }

  body.m4b15-reference-rebuild .m4b15-gap-cue{
    position:absolute;
    z-index:11;
    left:65.4%;
    top:48%;
    width:8.8%;
    height:1px;
    opacity:0;
    border-top:1px dashed rgba(209,228,244,.58);
    pointer-events:none;
  }
  body.m4b15-reference-rebuild .m4b15-gap-cue::before,
  body.m4b15-reference-rebuild .m4b15-gap-cue::after{
    content:"";
    position:absolute;
    top:-2.5px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:rgba(220,237,249,.72);
  }
  body.m4b15-reference-rebuild .m4b15-gap-cue::before{left:-1px}
  body.m4b15-reference-rebuild .m4b15-gap-cue::after{right:-1px}

  body.m4b15-reference-rebuild #ceramicDemo .np-demo-replay{
    display:inline-flex!important;
    position:relative!important;
    z-index:30!important;
    margin:10px auto 0!important;
  }
  body.m4b15-reference-rebuild #prepToggleCard[data-prep-state="no-space"] #ceramicDemo .np-demo-replay{
    display:none!important;
  }
  body.m4b15-reference-rebuild #ceramicDemo .np-demo-badge{z-index:30!important}
}

/* M4B15 refinement — cleanup residual reference artifact + tighter spatial relation. */
@media(min-width:768px){
  body.m4b15-reference-rebuild .m4b15-reference-cleanup{
    position:absolute;
    z-index:9;
    left:62.5%;
    top:72%;
    width:15%;
    height:26%;
    pointer-events:none;
    background:radial-gradient(ellipse at 52% 58%,#020202 0%,#020202 46%,rgba(2,2,2,.94) 60%,rgba(2,2,2,0) 78%);
  }
  body.m4b15-reference-rebuild .m4b15-reference-veneer{
    left:69.2%;
  }
  body.m4b15-reference-rebuild .m4b15-gap-cue{
    left:63.1%;
    width:7.4%;
  }
  body.m4b15-reference-rebuild #ceramicDemo .np-demo-replay{
    position:absolute!important;
    left:50%!important;
    bottom:12px!important;
    transform:translateX(-50%)!important;
    margin:0!important;
    z-index:31!important;
  }
}

/* M4B15 final display calibration — fixed-size relation to reference target. */
@media(min-width:768px){
  body.m4b15-reference-rebuild .m4b15-reference-veneer{
    top:13%!important;
    width:16.2%!important;
    height:78%!important;
  }
  body.m4b15-reference-rebuild .m4b15-gap-cue{
    top:50%!important;
  }
}

/* M4B17 — strict state isolation. Desktop only. */
.m4b17-controlled-demo{display:none}
@media(min-width:768px){
  body.m4b17-state-isolation #prepToggleCard[data-prep-state="no-space"] #ceramicDemo{
    display:block!important;
  }
  body.m4b17-state-isolation #prepToggleCard[data-prep-state="no-space"] #controlledDemo{
    display:none!important;
  }
  body.m4b17-state-isolation #prepToggleCard[data-prep-state="controlled"] #ceramicDemo{
    display:none!important;
  }
  body.m4b17-state-isolation #prepToggleCard[data-prep-state="controlled"] #controlledDemo{
    display:block!important;
  }

  /* no-space is protected/static while controlled is developed */
  body.m4b17-state-isolation #ceramicDemo .m4b-fit-veneer{
    animation:none!important;
    transform:translateX(0) translateY(0) rotate(0) scale(1)!important;
    opacity:1!important;
  }
  body.m4b17-state-isolation #ceramicDemo [data-demo-replay]{
    display:none!important;
  }

  body.m4b17-state-isolation #controlledDemo{
    position:relative!important;
    overflow:hidden!important;
    background:#020202!important;
  }
  body.m4b17-state-isolation #controlledDemo .m4b17-controlled-stage{
    position:absolute;
    inset:0 0 96px 0;
    overflow:hidden;
    background:#020202;
  }
  body.m4b17-state-isolation #controlledDemo .m4b17-reference-photo{
    position:absolute;
    left:0;
    top:0;
    width:66%;
    height:100%;
    overflow:hidden;
    -webkit-mask-image:linear-gradient(to right,#000 0%,#000 86%,rgba(0,0,0,.90) 91%,rgba(0,0,0,.45) 96%,transparent 100%);
    mask-image:linear-gradient(to right,#000 0%,#000 86%,rgba(0,0,0,.90) 91%,rgba(0,0,0,.45) 96%,transparent 100%);
  }
  body.m4b17-state-isolation #controlledDemo .m4b17-reference-photo img{
    width:100%;height:100%;object-fit:cover;object-position:50% 43%;
    transform:scale(1.02);transform-origin:center;
    filter:brightness(.98) contrast(1.01) saturate(.96);
  }
  body.m4b17-state-isolation #controlledDemo .m4b17-ambient-bridge{
    position:absolute;left:54%;top:12%;width:36%;height:72%;
    background:radial-gradient(ellipse at 35% 50%,rgba(134,96,78,.12) 0%,rgba(65,47,40,.05) 34%,rgba(2,2,2,0) 70%);
    filter:blur(7px);opacity:.70;pointer-events:none;
  }
  body.m4b17-state-isolation #controlledDemo .m4b17-controlled-veneer{
    position:absolute;z-index:4;left:70%;top:14%;width:16%;height:70%;
    object-fit:contain;object-position:center;
    filter:brightness(1.02) contrast(.99) saturate(.95) drop-shadow(-8px 8px 12px rgba(0,0,0,.42));
    transform:translateX(110px);transform-origin:center;opacity:.98;
    pointer-events:none;will-change:transform,opacity;
  }
  body.m4b17-state-isolation #controlledDemo .m4b17-gap-cue{
    position:absolute;z-index:3;left:62.5%;top:49%;width:8%;height:1px;
    border-top:1px dashed rgba(209,228,244,.55);opacity:0;pointer-events:none;
  }
  body.m4b17-state-isolation #controlledDemo .m4b17-replay{
    position:absolute!important;left:50%!important;bottom:55px!important;
    transform:translateX(-50%)!important;margin:0!important;z-index:12!important;
  }
  body.m4b17-state-isolation #controlledDemo .np-visual-caption{
    position:absolute;left:0;right:0;bottom:0;z-index:10;
  }
}

/* M4B18 — CONTROLLED STATIC VENEER GEOMETRY GATE. No animation; #ceramicDemo untouched. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b18-static-geometry .m4b18-controlled-veneer{
  position:absolute;
  z-index:5;
  left:65.8%;
  top:11.2%;
  width:26.4%;
  height:74.4%;
  overflow:visible;
  opacity:.985;
  transform:none!important;
  transition:none!important;
  animation:none!important;
  filter:drop-shadow(-7px 9px 12px rgba(0,0,0,.42));
  pointer-events:none;
}
body.m4b17-state-isolation #controlledDemo.m4b18-motion-active .m4b18-controlled-veneer{
  transform:translateX(var(--m4b18-x,0px))!important;
  will-change:transform;
}
body.m4b17-state-isolation #controlledDemo.m4b18-static-geometry .m4b18-shell-base{
  fill:url(#m4b18CeramicFill);
}
body.m4b17-state-isolation #controlledDemo.m4b18-static-geometry .m4b18-shell-edge{
  fill:none;
  stroke:rgba(255,255,255,.72);
  stroke-width:2.1;
  vector-effect:non-scaling-stroke;
}
body.m4b17-state-isolation #controlledDemo.m4b18-static-geometry .m4b17-gap-cue{
  left:64.6%;
  top:50.5%;
  width:2.25%;
  opacity:.34!important;
  border-top-color:rgba(209,228,244,.50);
}
body.m4b17-state-isolation #controlledDemo.m4b18-static-geometry .m4b17-replay{
  display:none!important;
}
}


/* M4B19 — photoreal material-only static review. Geometry + motion code frozen. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b19-photoreal-static .m4b18-shell-base{
  fill:url(#m4b19CeramicBody)!important;
}
body.m4b17-state-isolation #controlledDemo.m4b19-photoreal-static .m4b18-shell-edge{
  fill:none!important;
  stroke:rgba(235,243,247,.46)!important;
  stroke-width:1.05!important;
  vector-effect:non-scaling-stroke;
}
body.m4b17-state-isolation #controlledDemo.m4b19-photoreal-static .m4b18-controlled-veneer{
  filter:drop-shadow(-3px 7px 8px rgba(0,0,0,.34))!important;
}
}


/* M4B20 — perspective wrapper gate. Material + SVG paths + motion code frozen. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b20-perspective-static .m4b20-perspective-wrap{
  position:absolute;
  z-index:5;
  left:65.8%;
  top:11.2%;
  width:26.4%;
  height:74.4%;
  transform-origin:42% 52%;
  transform-style:preserve-3d;
  --m4b20-perspective-transform:perspective(850px) rotateY(20deg) rotateZ(4deg) skewY(-.4deg) scaleX(.98);
  transform:var(--m4b20-perspective-transform);
  pointer-events:none;
}
body.m4b17-state-isolation #controlledDemo.m4b20-perspective-static .m4b20-perspective-wrap .m4b18-controlled-veneer{
  position:absolute!important;
  inset:0!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
  transform:none!important;
  transition:none!important;
  animation:none!important;
}
}


/* M4B21 — true 3/4 redraw static gate. No wrapper perspective; no motion. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b21-true-3q-static .m4b20-perspective-wrap{
  position:absolute!important;
  z-index:5!important;
  --m4b20-perspective-transform:none!important;
  transform:rotateZ(4deg)!important;
  transform-origin:48% 50%;
  left:67%;
  top:7.5%;
  width:23.4%;
  height:80%;
  overflow:visible;
  pointer-events:none;
}
body.m4b17-state-isolation #controlledDemo.m4b21-true-3q-static .m4b20-perspective-wrap .m4b18-controlled-veneer{
  position:absolute!important;
  inset:0!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
  transform:none!important;
  transition:none!important;
  animation:none!important;
  filter:drop-shadow(-4px 8px 9px rgba(0,0,0,.34))!important;
}
body.m4b17-state-isolation #controlledDemo.m4b21-true-3q-static .m4b17-gap-cue{
  left:64.6%;
  width:1.9%;
  opacity:.30!important;
}
}


/* M4B22 — unified controlled scene. Static gate only. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b22-unified-static{
  background:#040608!important;
}
body.m4b17-state-isolation #controlledDemo.m4b22-unified-static .m4b22-unified-stage{
  position:absolute!important;
  inset:0 0 96px 0!important;
  overflow:hidden!important;
  background:#040608!important;
}
body.m4b17-state-isolation #controlledDemo.m4b22-unified-static .m4b22-unified-scene{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
body.m4b17-state-isolation #controlledDemo.m4b22-unified-static .m4b17-replay{
  display:none!important;
}
body.m4b17-state-isolation #controlledDemo.m4b22-unified-static .m4b17-gap-cue,
body.m4b17-state-isolation #controlledDemo.m4b22-unified-static .m4b17-reference-photo,
body.m4b17-state-isolation #controlledDemo.m4b22-unified-static .m4b17-ambient-bridge,
body.m4b17-state-isolation #controlledDemo.m4b22-unified-static .m4b20-perspective-wrap{
  display:none!important;
}
}


/* M4B23 — recognizable real-prep tooth. Static review gate only. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b23-recognizable-prep-static{
  background:#040608!important;
}
body.m4b17-state-isolation #controlledDemo.m4b23-recognizable-prep-static .m4b22-unified-stage{
  position:absolute!important;
  inset:0 0 96px 0!important;
  overflow:hidden!important;
  background:#040608!important;
}
body.m4b17-state-isolation #controlledDemo.m4b23-recognizable-prep-static .m4b22-unified-scene{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
body.m4b17-state-isolation #controlledDemo.m4b23-recognizable-prep-static .m4b17-replay{
  display:none!important;
}
}


/* M4B24 — final static educational close. No fit motion. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b24-static-educational .m4b17-replay{
  display:none!important;
}
body.m4b17-state-isolation #controlledDemo.m4b24-static-educational .np-visual-caption span{
  display:none!important;
}
body.m4b17-state-isolation #controlledDemo.m4b24-static-educational .m4b22-unified-scene{
  width:100%;
  height:100%;
}
}


/* M4B25 — veneer-first motion. Desktop controlled state only. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b25-veneer-first-motion .m4b17-replay{
  display:none!important;
}
body.m4b17-state-isolation #controlledDemo.m4b25-veneer-first-motion .np-visual-caption span{
  display:inline!important;
}
body.m4b17-state-isolation #controlledDemo.m4b25-veneer-first-motion [data-m4b24-veneer]{
  will-change:transform;
}
}
@media(prefers-reduced-motion:reduce){
body.m4b17-state-isolation #controlledDemo.m4b25-veneer-first-motion [data-m4b24-veneer]{
  will-change:auto;
}
}


/* M4B26 — veneer only on black. Desktop controlled state only. */
@media(min-width:768px){
body.m4b17-state-isolation #controlledDemo.m4b26-veneer-only-black{
  background:#030405!important;
}
body.m4b17-state-isolation #controlledDemo.m4b26-veneer-only-black .m4b26-black-stage{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  background:#030405!important;
}
body.m4b17-state-isolation #controlledDemo.m4b26-veneer-only-black .m4b26-black-scene{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
body.m4b17-state-isolation #controlledDemo.m4b26-veneer-only-black [data-m4b26-veneer]{
  will-change:transform;
}
}
@media(prefers-reduced-motion:reduce){
body.m4b17-state-isolation #controlledDemo.m4b26-veneer-only-black [data-m4b26-veneer]{
  will-change:auto;
}
}

/* M4B37 — single approved state. Remove comparison UI; controlled state is the sole visible state. */
body.m4b37-single-approved-state .np-toggle-controls{
  display:none!important;
}
body.m4b37-single-approved-state #ceramicDemo{
  display:none!important;
}
body.m4b37-single-approved-state #controlledDemo{
  display:block!important;
  position:relative!important;
  overflow:hidden!important;
  background:#030405!important;
}
@media(max-width:767px){
  body.m4b37-single-approved-state #controlledDemo{
    min-height:380px!important;
    padding:0!important;
  }
  body.m4b37-single-approved-state #controlledDemo .m4b26-black-stage{
    position:absolute!important;
    inset:0!important;
    overflow:hidden!important;
    background:#030405!important;
  }
  body.m4b37-single-approved-state #controlledDemo .m4b26-black-scene{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    display:block!important;
  }
}


/* M4B38 - photoreal visual refresh. Visual-only; copy and section structure unchanged. */
body.m4b38-photoreal-refresh .m4b38-photo-panel{
  padding:0!important;
  overflow:hidden!important;
  background:#f6f5fb!important;
}
body.m4b38-photoreal-refresh .m4b38-photo-panel>img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
body.m4b38-photoreal-refresh .m4b38-photo-arch{
  overflow:hidden!important;
  background:#f6f5fb!important;
  isolation:isolate;
}
body.m4b38-photoreal-refresh .m4b38-photo-arch .m4b38-arch-image{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
body.m4b38-photoreal-refresh .m4b38-photo-arch .np-arch-line{
  display:none!important;
}
body.m4b38-photoreal-refresh .m4b38-photo-arch .np-mini-tooth{
  z-index:2;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  align-self:stretch;
}
body.m4b38-photoreal-refresh .m4b38-photo-arch .np-mini-tooth span{
  top:auto!important;
  bottom:4px!important;
  right:50%!important;
  transform:translateX(50%)!important;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(5px);
  color:#5f6071;
}
body.m4b38-photoreal-refresh .m4b38-photo-arch .np-arch-scale{
  z-index:3;
}
body.m4b38-photoreal-refresh .m4b38-photo-icon{
  padding:0!important;
  overflow:hidden!important;
  background:#f6f5fb!important;
}
body.m4b38-photoreal-refresh .m4b38-photo-icon::before,
body.m4b38-photoreal-refresh .m4b38-photo-icon::after{
  display:none!important;
}
body.m4b38-photoreal-refresh .m4b38-photo-icon>img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* M4B38 mobile arch refinement: keep all four photoreal examples visible. */
@media(max-width:767px){
  body.m4b38-photoreal-refresh .m4b38-photo-arch{
    min-height:0!important;
    height:280px!important;
    padding:0 10px 62px!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    row-gap:0!important;
    align-items:stretch!important;
  }
  body.m4b38-photoreal-refresh .m4b38-photo-arch .m4b38-arch-image{
    object-fit:contain!important;
    object-position:center 32%!important;
  }
  body.m4b38-photoreal-refresh .m4b38-photo-arch .np-mini-tooth{
    width:100%!important;
    height:100%!important;
    min-width:0!important;
  }
  body.m4b38-photoreal-refresh .m4b38-photo-arch .np-mini-tooth span{
    top:auto!important;
    bottom:30px!important;
    max-width:74px;
    padding:2px 5px;
    font-size:10px!important;
    line-height:1.35;
    white-space:normal!important;
    text-align:center;
  }
  body.m4b38-photoreal-refresh .m4b38-photo-arch .np-arch-scale{
    bottom:8px!important;
    left:12px!important;
    right:12px!important;
    font-size:9.5px!important;
    flex-direction:row!important;
    gap:8px!important;
  }
}

/* M4B39 — compact density refinement. Layout scale/spacing only; copy and M4B38 photoreal assets unchanged. */
@media(min-width:981px){
body.m4b39-compact-density .np-shell{width:min(1020px,calc(100% - 72px))}
body.m4b39-compact-density .np-section{padding:60px 0}
body.m4b39-compact-density .np-section-head{max-width:690px;margin-bottom:24px}
body.m4b39-compact-density .np-section-head h2,body.m4b39-compact-density .np-final h2{font-size:clamp(29px,3vw,38px);margin:8px 0 9px;line-height:1.26}
body.m4b39-compact-density .np-section-head p{font-size:15px}
body.m4b39-compact-density .np-hook{font-size:17px!important}
body.m4b39-compact-density .np-hero{padding:40px 0 52px}
body.m4b39-compact-density .np-hero-grid{gap:38px}
body.m4b39-compact-density .np-hero h1{font-size:clamp(38px,4vw,56px);margin:14px 0}
body.m4b39-compact-density .np-lead{font-size:17px;margin-bottom:18px}
body.m4b39-compact-density .np-photo-frame img{height:min(430px,48vw)}
body.m4b39-compact-density .np-spectrum-canvas{grid-template-columns:225px 1fr;gap:32px}
body.m4b39-compact-density .np-tooth-orbit{width:200px;height:220px}
body.m4b39-compact-density .np-space-grid{gap:14px}
body.m4b39-compact-density .np-space-state{grid-template-columns:165px 1fr;gap:16px;padding:16px}
body.m4b39-compact-density .np-profile-diagram{height:158px}
body.m4b39-compact-density .np-factors{margin:14px 0;gap:8px}
body.m4b39-compact-density .np-factor-details{gap:10px;margin:12px 0 16px}
body.m4b39-compact-density .np-factor-details>div{padding:11px 13px}
body.m4b39-compact-density .np-split{gap:34px}
body.m4b39-compact-density .np-arch-visual{height:270px;padding:18px 18px 46px}
body.m4b39-compact-density .np-design-steps{gap:10px;margin-bottom:16px}
body.m4b39-compact-density .np-design-steps article{padding:12px}
body.m4b39-compact-density .np-design-icon{height:92px;margin:7px 0 10px}
body.m4b39-compact-density .np-toggle-card{max-width:860px;padding:12px}
body.m4b39-compact-density .np-toggle-layout{gap:18px}
body.m4b39-compact-density .np-toggle-visual{min-height:300px;padding-bottom:48px}
body.m4b39-compact-density .np-toggle-copy{padding:16px}
body.m4b39-compact-density .np-real-material{margin-top:18px;padding-top:18px;gap:16px}
body.m4b39-compact-density .np-real-material-copy{padding:6px 3px 0}
body.m4b39-compact-density .np-real-material-copy h3{font-size:22px;margin:8px 0 6px}
body.m4b39-compact-density .np-real-material-grid{gap:9px}
body.m4b39-compact-density .np-layer-visual{padding:32px}
body.m4b39-compact-density .np-rail-line article{grid-template-columns:82px 1fr;gap:16px;padding:15px 0}
body.m4b39-compact-density .np-rail-dot{width:60px;height:60px}
body.m4b39-compact-density .np-final{padding:62px 0 70px}
}
@media(max-width:980px){
body.m4b39-compact-density .np-section{padding:44px 0}
body.m4b39-compact-density .np-section-head{margin-bottom:20px}
body.m4b39-compact-density .np-hero{padding:36px 0 46px}
}
@media(max-width:767px){
body.m4b39-compact-density .np-section{padding:38px 0}
body.m4b39-compact-density .np-section-head{margin-bottom:18px}
body.m4b39-compact-density .np-section-head h2,body.m4b39-compact-density .np-final h2{font-size:24px;line-height:1.3;margin:8px 0}
body.m4b39-compact-density .np-section-head p{font-size:14.5px}
body.m4b39-compact-density .np-hook{font-size:16.5px!important}
body.m4b39-compact-density .np-hero{padding:32px 0 40px}
body.m4b39-compact-density .np-hero h1{font-size:31px;line-height:1.22;margin:12px 0}
body.m4b39-compact-density .np-lead{font-size:16px;margin-bottom:16px}
body.m4b39-compact-density .np-photo-frame img{height:360px}
body.m4b39-compact-density .np-space-grid{gap:12px}
body.m4b39-compact-density .np-space-state{padding:12px;gap:12px}
body.m4b39-compact-density .np-profile-diagram{height:145px}
body.m4b39-compact-density .np-factors{margin:12px 0;gap:7px}
body.m4b39-compact-density .np-factor-details{gap:9px;margin:12px 0 16px}
body.m4b39-compact-density .np-factor-details>div{padding:11px 12px}
body.m4b39-compact-density .np-expert-questions{margin:10px 0 14px;gap:6px}
body.m4b39-compact-density.m4b38-photoreal-refresh .m4b38-photo-arch{height:242px!important;padding:0 8px 48px!important}
body.m4b39-compact-density.m4b37-single-approved-state #controlledDemo{min-height:310px!important}
body.m4b39-compact-density .np-design-steps{gap:10px;margin-bottom:16px}
body.m4b39-compact-density .np-design-steps article{padding:12px}
body.m4b39-compact-density .np-design-icon{height:88px;margin:6px 0 9px}
body.m4b39-compact-density .np-toggle-card{padding:8px}
body.m4b39-compact-density .np-toggle-layout{gap:16px}
body.m4b39-compact-density .np-toggle-copy{padding:14px}
body.m4b39-compact-density .np-real-material{gap:10px;margin-top:14px;padding-top:14px}
body.m4b39-compact-density .np-real-material-copy h3{font-size:19px}
body.m4b39-compact-density .np-real-material-grid{gap:6px}
body.m4b39-compact-density .np-layer-visual{padding:18px}
body.m4b39-compact-density .np-rail-line article{padding:14px 0}
body.m4b39-compact-density .np-prize{padding:13px 15px}
}

/* M4B40 — semantic simplification: remove low-value UI, improve meaning before decoration. */
body.m4b40-semantic-simplification .m4b40-decision-flow{
  position:relative;
  max-width:920px;
  margin:4px auto 22px;
  padding:12px 8px 2px;
}
body.m4b40-semantic-simplification .m4b40-decision-flow::before{
  content:"";
  position:absolute;
  top:34px;
  right:12%;
  left:12%;
  height:2px;
  background:linear-gradient(90deg,rgba(242,166,132,.28),rgba(118,109,229,.38),rgba(102,155,137,.32));
  border-radius:999px;
}
body.m4b40-semantic-simplification .m4b40-flow-list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:34px;
  position:relative;
  z-index:1;
}
body.m4b40-semantic-simplification .m4b40-flow-list li{
  padding:0;
  margin:0;
  border:0;
  background:transparent;
  display:grid;
  grid-template-columns:1fr;
  justify-items:center;
  text-align:center;
  gap:10px;
}
body.m4b40-semantic-simplification .m4b40-flow-list li:nth-child(2){
  transform:translateY(-8px);
}
body.m4b40-semantic-simplification .m4b40-flow-no{
  width:46px;
  height:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f2efff;
  border:1px solid rgba(118,109,229,.16);
  color:#5b5482;
  font-weight:850;
  box-shadow:0 8px 20px rgba(55,51,88,.08);
}
body.m4b40-semantic-simplification .m4b40-flow-list h3{
  margin:0 0 4px;
  font-size:17px;
}
body.m4b40-semantic-simplification .m4b40-flow-list p{
  margin:0;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.85;
}
body.m4b40-semantic-simplification .m4b40-dark-photo{
  background:#0d0e10!important;
  overflow:hidden!important;
  padding:0!important;
}
body.m4b40-semantic-simplification .m4b40-dark-photo>img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  background:#0d0e10;
}
body.m4b40-semantic-simplification .m4b40-space-case{
  overflow:hidden;
}
body.m4b40-semantic-simplification .m4b40-space-case .np-state-label{
  margin-bottom:2px;
}
body.m4b40-semantic-simplification .m4b40-space-case h3{
  line-height:1.55;
}
body.m4b40-semantic-simplification .m4b40-self-layout{
  align-items:center;
}
body.m4b40-semantic-simplification .m4b40-intervention-compare{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:12px;
  border-radius:28px;
  background:#0c0d0f;
  box-shadow:0 18px 48px rgba(24,23,33,.13);
}
body.m4b40-semantic-simplification .m4b40-scenario{
  margin:0;
  min-width:0;
  position:relative;
  overflow:hidden;
  border-radius:20px;
  background:#101114;
}
body.m4b40-semantic-simplification .m4b40-scenario img{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
}
body.m4b40-semantic-simplification .m4b40-scenario figcaption{
  position:absolute;
  right:0;
  left:0;
  bottom:0;
  padding:36px 12px 12px;
  background:linear-gradient(180deg,transparent,rgba(5,6,8,.86));
  color:#fff;
}
body.m4b40-semantic-simplification .m4b40-scenario figcaption span,
body.m4b40-semantic-simplification .m4b40-scenario figcaption strong{
  display:block;
}
body.m4b40-semantic-simplification .m4b40-scenario figcaption span{
  font-size:11px;
  opacity:.76;
  margin-bottom:3px;
}
body.m4b40-semantic-simplification .m4b40-scenario figcaption strong{
  font-size:13px;
  line-height:1.55;
}
body.m4b40-semantic-simplification .m4b40-scenario-favorable{
  box-shadow:inset 0 0 0 1px rgba(102,155,137,.34);
}
body.m4b40-semantic-simplification .m4b40-scenario-caution{
  box-shadow:inset 0 0 0 1px rgba(242,166,132,.34);
}
body.m4b40-semantic-simplification .m4b40-compare-axis{
  align-self:stretch;
  display:grid;
  place-items:center;
  position:relative;
  color:rgba(255,255,255,.56);
  font-size:10px;
}
body.m4b40-semantic-simplification .m4b40-compare-axis::before{
  content:"";
  position:absolute;
  top:20px;
  bottom:20px;
  width:1px;
  background:linear-gradient(180deg,rgba(102,155,137,.68),rgba(255,255,255,.12),rgba(242,166,132,.68));
}
body.m4b40-semantic-simplification .m4b40-compare-axis span{
  position:relative;
  z-index:1;
  writing-mode:vertical-rl;
  padding:7px 4px;
  border-radius:999px;
  background:#0c0d0f;
}
body.m4b40-semantic-simplification .np-design-logic .np-shell{
  max-width:820px;
}
body.m4b40-semantic-simplification .np-design-logic .np-section-head{
  margin-bottom:14px;
}
@media(max-width:767px){
  body.m4b40-semantic-simplification .m4b40-decision-flow{
    margin:0 0 18px;
    padding:0 0 0 0;
  }
  body.m4b40-semantic-simplification .m4b40-decision-flow::before{
    top:22px;
    bottom:22px;
    right:22px;
    left:auto;
    width:2px;
    height:auto;
    background:linear-gradient(180deg,rgba(102,155,137,.32),rgba(118,109,229,.38),rgba(242,166,132,.28));
  }
  body.m4b40-semantic-simplification .m4b40-flow-list{
    grid-template-columns:1fr;
    gap:18px;
  }
  body.m4b40-semantic-simplification .m4b40-flow-list li,
  body.m4b40-semantic-simplification .m4b40-flow-list li:nth-child(2){
    transform:none;
    grid-template-columns:44px 1fr;
    justify-items:stretch;
    text-align:right;
    align-items:start;
    gap:12px;
  }
  body.m4b40-semantic-simplification .m4b40-flow-no{
    width:44px;
    height:44px;
  }
  body.m4b40-semantic-simplification .m4b40-flow-list h3{
    font-size:16px;
  }
  body.m4b40-semantic-simplification .m4b40-flow-list p{
    font-size:13px;
  }
  body.m4b40-semantic-simplification .m4b40-intervention-compare{
    grid-template-columns:1fr;
    gap:8px;
    padding:9px;
    border-radius:22px;
  }
  body.m4b40-semantic-simplification .m4b40-compare-axis{
    min-height:30px;
  }
  body.m4b40-semantic-simplification .m4b40-compare-axis::before{
    top:50%;
    right:18px;
    left:18px;
    bottom:auto;
    width:auto;
    height:1px;
  }
  body.m4b40-semantic-simplification .m4b40-compare-axis span{
    writing-mode:horizontal-tb;
    padding:4px 8px;
  }
  body.m4b40-semantic-simplification .m4b40-scenario img{
    aspect-ratio:16/10;
  }
}

/* M4B41 — journey/funnel/CTA architecture. */
body.m4b41-journey-funnel .m4b41-hero-actions{
  align-items:center;
  flex-wrap:wrap;
}
body.m4b41-journey-funnel .m4b41-hero-consult-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:10px;
  color:#625b82;
  font-size:12.5px;
  font-weight:750;
  text-decoration:none;
  border-bottom:1px solid rgba(98,91,130,.24);
  padding-bottom:2px;
}
body.m4b41-journey-funnel .m4b41-hero-consult-link:hover{
  color:#453f68;
  border-color:rgba(69,63,104,.48);
}
body.m4b41-journey-funnel .m4b41-mid-bridge{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:12px 2px 14px;
  border-top:1px solid rgba(54,51,78,.10);
  border-bottom:1px solid rgba(54,51,78,.10);
  color:#666575;
  font-size:13px;
}
body.m4b41-journey-funnel .m4b41-mid-bridge a{
  flex:0 0 auto;
  color:#5e5683;
  font-weight:800;
  text-decoration:none;
}
body.m4b41-journey-funnel .m4b41-resolver-cta{
  margin-top:18px;
  padding:16px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(118,109,229,.08),rgba(242,166,132,.08));
  border:1px solid rgba(118,109,229,.12);
}
body.m4b41-journey-funnel .m4b41-resolver-cta>div{
  min-width:0;
}
body.m4b41-journey-funnel .m4b41-resolver-cta strong,
body.m4b41-journey-funnel .m4b41-resolver-cta span{
  display:block;
}
body.m4b41-journey-funnel .m4b41-resolver-cta strong{
  color:var(--ink);
  font-size:14px;
  margin-bottom:3px;
}
body.m4b41-journey-funnel .m4b41-resolver-cta span{
  color:var(--muted);
  font-size:12.5px;
  line-height:1.8;
}
body.m4b41-journey-funnel .m4b41-resolver-cta .np-btn{
  flex:0 0 auto;
  white-space:nowrap;
}
body.m4b41-journey-funnel .m4b41-consult-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
body.m4b41-journey-funnel .m4b41-consult-meta span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.68);
  border:1px solid rgba(255,255,255,.5);
  color:#625f70;
  font-size:11.5px;
  font-weight:750;
}
body.m4b41-journey-funnel .m4b41-mobile-sticky-cta{
  display:none;
}
body.m4b41-journey-funnel #self-location,
body.m4b41-journey-funnel #space-logic,
body.m4b41-journey-funnel #decision-rail,
body.m4b41-journey-funnel #consultation{
  scroll-margin-top:84px;
}
@media(max-width:767px){
  body.m4b41-journey-funnel{
    padding-bottom:72px;
  }
  body.m4b41-journey-funnel .m4b41-hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  body.m4b41-journey-funnel .m4b41-hero-actions .np-btn{
    width:100%;
    justify-content:center;
  }
  body.m4b41-journey-funnel .m4b41-hero-consult-link{
    margin-top:9px;
    font-size:12px;
  }
  body.m4b41-journey-funnel .m4b41-mid-bridge{
    align-items:flex-start;
    flex-direction:column;
    gap:7px;
    padding:11px 0 12px;
    font-size:12px;
  }
  body.m4b41-journey-funnel .m4b41-mid-bridge a{
    font-size:12px;
  }
  body.m4b41-journey-funnel .m4b41-resolver-cta{
    align-items:stretch;
    flex-direction:column;
    gap:12px;
    padding:14px;
  }
  body.m4b41-journey-funnel .m4b41-resolver-cta .np-btn{
    width:100%;
    justify-content:center;
  }
  body.m4b41-journey-funnel .m4b41-consult-meta{
    gap:6px;
    margin-top:11px;
  }
  body.m4b41-journey-funnel .m4b41-mobile-sticky-cta{
    position:fixed;
    z-index:120;
    right:12px;
    left:12px;
    bottom:10px;
    min-height:52px;
    padding:7px 9px 7px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    border-radius:16px;
    background:rgba(31,30,43,.94);
    color:#fff;
    text-decoration:none;
    box-shadow:0 14px 34px rgba(21,20,33,.28);
    backdrop-filter:blur(14px);
    transform:translateY(84px);
    opacity:0;
    pointer-events:none;
    transition:transform .25s ease,opacity .25s ease;
  }
  body.m4b41-journey-funnel .m4b41-mobile-sticky-cta.is-visible{
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
  }
  body.m4b41-journey-funnel .m4b41-mobile-sticky-cta span{
    font-size:11.5px;
    opacity:.76;
  }
  body.m4b41-journey-funnel .m4b41-mobile-sticky-cta strong{
    flex:0 0 auto;
    padding:8px 11px;
    border-radius:12px;
    background:#756ce5;
    font-size:12px;
  }
}
@media(prefers-reduced-motion:reduce){
  body.m4b41-journey-funnel .m4b41-mobile-sticky-cta{
    transition:none;
  }
}
