/* Applications foundation v1 — legacy hero/artifact CSS removed. */
.apps-v2{--app-ink:#101713;--app-muted:#667068;--app-line:#b8beb9;--app-bone:#f3f1e9;--app-stone:#e8e7df;--app-soft:#eceee7;--app-dark:#101e17;--app-citron:#b8ff31;background:var(--app-bone);color:var(--app-ink)}
.apps-v2 main{overflow:hidden}.apps-v2 .prototype{display:none}.apps-shell-v2{width:min(100% - 88px,1320px);margin:0 auto}.apps-kicker-v2{font:10px ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.12em;color:#667168;margin-bottom:14px}.apps-v2 h1,.apps-v2 h2,.apps-v2 h3{color:var(--app-ink)}
/* shared headings */
.apps-section-head-v2{display:grid;grid-template-columns:1.1fr .9fr;gap:76px;align-items:end;margin-bottom:42px}.apps-section-head-v2 h2{font-size:clamp(38px,4vw,54px);line-height:.98;letter-spacing:-.045em;margin:0;max-width:730px}.apps-section-head-v2>p{font-size:13px;line-height:1.58;color:#6a756c;margin:0 0 4px;max-width:510px}

/* pulse path */
.apps-selection-v2{padding:68px 0 76px;background:#e9e9e2;border-bottom:1px solid #c5cbc5}.selection-track-v2{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding-top:42px}.selection-line-v2{position:absolute;left:0;right:25%;top:20px;height:1px;background:#aeb6af}.selection-progress-v2{position:absolute;left:0;top:0;width:0;height:1px;background:#7f927f}.selection-signal-v2{position:absolute;left:0;top:50%;width:9px;height:9px;border-radius:50%;background:var(--app-citron);box-shadow:0 0 0 0 rgba(184,255,49,.32);transform:translate(-50%,-50%);opacity:0}.selection-step-v2{position:relative;padding-right:20px}.selection-step-v2>b{position:absolute;left:0;top:-33px;width:11px;height:11px;border-radius:50%;background:#2b3931;border:1px solid #7d887f;box-shadow:0 0 0 7px #e9e9e2;transition:background .25s ease,box-shadow .25s ease,transform .25s ease}.selection-step-v2>span{font:10px ui-monospace,SFMono-Regular,Menlo,monospace;color:#707a72}.selection-step-v2 h3{font-size:23px;line-height:1;margin:14px 0 9px;letter-spacing:-.035em}.selection-step-v2 p{font-size:13px;line-height:1.5;color:#69746c;margin:0;max-width:250px}.selection-track-v2.is-pulsing-v2 .selection-progress-v2{animation:selection-progress-v2 5.8s cubic-bezier(.3,.72,.2,1) infinite}.selection-track-v2.is-pulsing-v2 .selection-signal-v2{animation:selection-signal-v2 5.8s cubic-bezier(.3,.72,.2,1) infinite}.selection-track-v2.is-pulsing-v2 .step-1-v2>b{animation:selection-node1-v2 5.8s ease infinite}.selection-track-v2.is-pulsing-v2 .step-2-v2>b{animation:selection-node2-v2 5.8s ease infinite}.selection-track-v2.is-pulsing-v2 .step-3-v2>b{animation:selection-node3-v2 5.8s ease infinite}.selection-track-v2.is-pulsing-v2 .step-4-v2>b{animation:selection-node4-v2 5.8s ease infinite}
@keyframes selection-progress-v2{0%,7%{width:0}25%{width:33.33%}42%{width:66.66%}59%,100%{width:100%}}
@keyframes selection-signal-v2{0%{left:0;opacity:0}3%{opacity:1;box-shadow:0 0 0 0 rgba(184,255,49,.32)}7%{left:0;opacity:1;box-shadow:0 0 0 9px rgba(184,255,49,0)}25%{left:33.33%;opacity:1}42%{left:66.66%;opacity:1}59%{left:100%;opacity:1;box-shadow:0 0 0 0 rgba(184,255,49,.3)}66%{left:100%;opacity:0;box-shadow:0 0 0 10px rgba(184,255,49,0)}100%{left:100%;opacity:0}}
@keyframes selection-node1-v2{0%,2%{background:#2b3931;box-shadow:0 0 0 7px #e9e9e2;transform:scale(1)}5%,10%{background:var(--app-citron);box-shadow:0 0 0 11px rgba(184,255,49,.13);transform:scale(1.18)}14%,100%{background:#2b3931;box-shadow:0 0 0 7px #e9e9e2;transform:scale(1)}}
@keyframes selection-node2-v2{0%,21%{background:#2b3931;box-shadow:0 0 0 7px #e9e9e2;transform:scale(1)}25%,30%{background:var(--app-citron);box-shadow:0 0 0 11px rgba(184,255,49,.13);transform:scale(1.18)}34%,100%{background:#2b3931;box-shadow:0 0 0 7px #e9e9e2;transform:scale(1)}}
@keyframes selection-node3-v2{0%,38%{background:#2b3931;box-shadow:0 0 0 7px #e9e9e2;transform:scale(1)}42%,47%{background:var(--app-citron);box-shadow:0 0 0 11px rgba(184,255,49,.13);transform:scale(1.18)}51%,100%{background:#2b3931;box-shadow:0 0 0 7px #e9e9e2;transform:scale(1)}}
@keyframes selection-node4-v2{0%,55%{background:#2b3931;box-shadow:0 0 0 7px #e9e9e2;transform:scale(1)}59%,64%{background:var(--app-citron);box-shadow:0 0 0 11px rgba(184,255,49,.13);transform:scale(1.18)}68%,100%{background:#2b3931;box-shadow:0 0 0 7px #e9e9e2;transform:scale(1)}}

/* application x product mapping */
.apps-map-v2{padding:76px 0 84px;background:var(--app-bone)}.map-head-v2{margin-bottom:36px}.application-matrix-v2{display:grid;grid-template-columns:minmax(220px,1.36fr) repeat(6,minmax(118px,1fr));border-top:1px solid #8f9991;border-left:1px solid #bec4be;background:#f2f0e8}.matrix-corner-v2,.matrix-product-v2,.matrix-app-v2,.matrix-cell-v2{border-right:1px solid #bec4be;border-bottom:1px solid #bec4be;min-width:0}.matrix-corner-v2{padding:21px 22px;display:flex;justify-content:flex-end;flex-direction:column;min-height:148px;background:#e7e7df}.matrix-corner-v2 small{font:9px ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.1em;color:#778078;margin-bottom:6px}.matrix-corner-v2 strong{font-size:12px;font-weight:650;color:#202b24}.matrix-product-v2{position:relative;display:grid;align-content:end;min-height:148px;padding:15px 13px 14px;color:var(--app-ink);overflow:hidden;transition:background .25s ease,color .25s ease}.matrix-product-v2:after{content:"↗";position:absolute;right:10px;top:10px;font-size:12px;opacity:.35;transition:transform .25s ease,opacity .25s ease}.product-specimen-v2{position:absolute;left:12px;top:13px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(70,85,75,.24);box-shadow:inset 0 1px 5px rgba(255,255,255,.55),0 7px 18px rgba(36,54,42,.09)}.specimen-liquid-v2{background:radial-gradient(circle at 30% 26%,#fff 0 8%,rgba(255,255,255,.28) 9% 22%,transparent 23%),linear-gradient(145deg,#d5e1d7,#8aa28f 52%,#566f5e)}.specimen-amber-v2{background:radial-gradient(circle at 32% 25%,#ffeac2 0 7%,transparent 8%),linear-gradient(145deg,#dba74a,#9a632d 56%,#58401f)}.specimen-resin-v2{background:radial-gradient(circle at 33% 28%,#fff8c6 0 4%,transparent 5%),radial-gradient(circle at 60% 58%,#dec963 0 8%,transparent 9%),linear-gradient(145deg,#e7e0a8,#a7954a)}.specimen-crystal-v2{border-radius:27% 58% 33% 62%;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(213,226,216,.95) 48%,#8fa99a);transform:rotate(13deg)}.specimen-salt-v2{background:radial-gradient(circle at 33% 36%,#f8fff0 0 4%,transparent 5%),radial-gradient(circle at 57% 28%,#e8f4dc 0 5%,transparent 6%),radial-gradient(circle at 58% 62%,#d1e4c6 0 6%,transparent 7%),linear-gradient(145deg,#dbe4d7,#9cab9e)}.specimen-dilution-v2{background:linear-gradient(170deg,transparent 0 40%,rgba(185,215,194,.8) 41% 58%,rgba(82,114,93,.8) 59% 100%),radial-gradient(circle at 33% 25%,#fff,transparent 22%),#d8e2db}.matrix-product-v2 small{font:9px ui-monospace,SFMono-Regular,Menlo,monospace;color:#758077;margin-bottom:7px}.matrix-product-v2 strong{font-size:13px;line-height:1.1;letter-spacing:-.015em}.matrix-product-v2 em{font-style:normal;font-size:9px;color:#727d74;margin-top:4px}.matrix-app-v2{min-height:118px;padding:24px 22px;display:flex;flex-direction:column;justify-content:center;scroll-margin-top:120px;transition:background .25s ease}.matrix-app-v2 small{font:9px ui-monospace,SFMono-Regular,Menlo,monospace;color:#758077;margin-bottom:8px}.matrix-app-v2 strong{font-size:18px;line-height:1.07;letter-spacing:-.025em}.matrix-app-v2 span{font-size:10px;line-height:1.4;color:#707b73;margin-top:7px;max-width:200px}.matrix-cell-v2{position:relative;min-height:118px;display:flex;align-items:center;justify-content:center;color:#98a199;font-size:12px;transition:background .25s ease,opacity .25s ease}.matrix-cell-v2.is-fit-v2{color:#253128;background:#eef0e8}.matrix-cell-v2.is-fit-v2 i{width:11px;height:11px;border-radius:50%;background:#a9ea31;box-shadow:0 0 0 7px rgba(184,255,49,.1);transition:transform .25s ease,box-shadow .25s ease}.matrix-cell-v2.is-fit-v2 span{position:absolute;bottom:14px;font:8px ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.08em;opacity:0;transform:translateY(3px);transition:opacity .25s ease,transform .25s ease}.application-matrix-v2[data-active-app] .matrix-app-v2,.application-matrix-v2[data-active-app] .matrix-cell-v2{opacity:.35}.application-matrix-v2[data-active-product] .matrix-product-v2,.application-matrix-v2[data-active-product] .matrix-cell-v2{opacity:.35}.application-matrix-v2[data-active-app="pharma"] [data-app-row="pharma"],.application-matrix-v2[data-active-app="pharma"] [data-app-cell="pharma"],.application-matrix-v2[data-active-app="pouch"] [data-app-row="pouch"],.application-matrix-v2[data-active-app="pouch"] [data-app-cell="pouch"],.application-matrix-v2[data-active-app="eliquid"] [data-app-row="eliquid"],.application-matrix-v2[data-active-app="eliquid"] [data-app-cell="eliquid"],.application-matrix-v2[data-active-app="rd"] [data-app-row="rd"],.application-matrix-v2[data-active-app="rd"] [data-app-cell="rd"]{opacity:1;background:#e7ebe2}.application-matrix-v2[data-active-product="pure"] [data-product="pure"],.application-matrix-v2[data-active-product="pure"] [data-product-cell="pure"],.application-matrix-v2[data-active-product="alkaloid"] [data-product="alkaloid"],.application-matrix-v2[data-active-product="alkaloid"] [data-product-cell="alkaloid"],.application-matrix-v2[data-active-product="polacrilex"] [data-product="polacrilex"],.application-matrix-v2[data-active-product="polacrilex"] [data-product-cell="polacrilex"],.application-matrix-v2[data-active-product="bitartrate"] [data-product="bitartrate"],.application-matrix-v2[data-active-product="bitartrate"] [data-product-cell="bitartrate"],.application-matrix-v2[data-active-product="salts"] [data-product="salts"],.application-matrix-v2[data-active-product="salts"] [data-product-cell="salts"],.application-matrix-v2[data-active-product="dilutions"] [data-product="dilutions"],.application-matrix-v2[data-active-product="dilutions"] [data-product-cell="dilutions"]{opacity:1;background:#e7ebe2}@media(hover:hover){.matrix-product-v2:hover{background:#e3e8dd}.matrix-product-v2:hover:after{transform:translate(3px,-3px);opacity:1}.matrix-cell-v2.is-fit-v2:hover{background:#dfe8d9}.matrix-cell-v2.is-fit-v2:hover i{transform:scale(1.13);box-shadow:0 0 0 10px rgba(184,255,49,.15)}.matrix-cell-v2.is-fit-v2:hover span{opacity:1;transform:none}}
.application-mobile-v2{display:none}.map-note-v2{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:21px 0 0}.map-note-v2>span{width:7px;height:7px;border-radius:50%;background:var(--app-citron);box-shadow:0 0 0 6px rgba(184,255,49,.08)}.map-note-v2 p{margin:0;font-size:11px;line-height:1.45;color:#737e75}.map-note-v2 a{font-size:12px;font-weight:700;color:var(--app-ink)}.map-note-v2 b{font-weight:400;display:inline-block;transition:transform .25s ease}@media(hover:hover){.map-note-v2 a:hover b{transform:translate(4px,-3px)}}

/* reveal */
.app-reveal-v2{opacity:1;transform:none}.apps-v2.js-apps-v2 .app-reveal-v2{opacity:0;transform:translateY(16px);transition:opacity .64s ease,transform .64s cubic-bezier(.2,.7,.2,1)}.apps-v2.js-apps-v2 .app-reveal-v2.is-visible-v2{opacity:1;transform:none}

@media(max-width:1100px){
  .apps-shell-v2{width:min(100% - 48px,1320px)}
  .application-matrix-v2{grid-template-columns:minmax(195px,1.2fr) repeat(6,minmax(102px,1fr))}
  .matrix-product-v2{padding:13px 10px}.matrix-product-v2 strong{font-size:12px}.matrix-product-v2 em{font-size:8px}
  .matrix-app-v2{padding:19px 17px}.matrix-app-v2 strong{font-size:16px}.matrix-cell-v2{min-height:110px}
}
@media(max-width:820px){
  .apps-shell-v2{width:min(100% - 34px,1320px)}
  .apps-selection-v2,.apps-map-v2{padding:50px 0 56px}
  .apps-section-head-v2{grid-template-columns:1fr;gap:13px;margin-bottom:30px}.apps-section-head-v2 h2{font-size:38px}
  .selection-track-v2{grid-template-columns:1fr 1fr;gap:44px 28px;padding-top:12px}.selection-line-v2{display:none}
  .selection-step-v2>b{left:0;top:-16px;width:8px;height:8px;box-shadow:0 0 0 5px #e9e9e2}
  .selection-track-v2.is-pulsing-v2 .selection-step-v2>b{animation:none}.selection-step-v2 h3{font-size:20px}.selection-step-v2 p{font-size:12px}
  .application-matrix-v2{display:none}.application-mobile-v2{display:grid;border-top:1px solid #9aa39b}
  .application-mobile-v2 article{padding:26px 0 28px;border-bottom:1px solid #b7bdb7;scroll-margin-top:100px}
  .application-mobile-v2 small{font:9px ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase;letter-spacing:.08em;color:#727c74}
  .application-mobile-v2 h3{font-size:25px;line-height:1;letter-spacing:-.04em;margin:9px 0 8px}.application-mobile-v2 p{font-size:12px;color:#6c776e;margin:0 0 19px}
  .application-mobile-v2 article>div{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #c4c9c4}
  .application-mobile-v2 a{position:relative;padding:12px 25px 11px 0;border-bottom:1px solid #c4c9c4;font-size:11px;font-weight:700;color:var(--app-ink)}
  .application-mobile-v2 a:nth-child(odd){border-right:1px solid #c4c9c4}.application-mobile-v2 a span{position:absolute;right:10px;transition:transform .25s ease}
  .map-note-v2{grid-template-columns:auto 1fr}.map-note-v2 a{grid-column:2;margin-top:4px}.apps-v2 .footer93-shell{width:min(100% - 34px,1320px)}
}
@media(max-width:560px){
  .apps-section-head-v2 h2{font-size:34px}.selection-track-v2{grid-template-columns:1fr;gap:29px}.selection-step-v2>b{display:none}
  .application-mobile-v2 article>div{grid-template-columns:1fr}.application-mobile-v2 a:nth-child(odd){border-right:0}
}
@media(prefers-reduced-motion:reduce){
  .apps-v2 *{scroll-behavior:auto!important;animation:none!important}
  .apps-v2.js-apps-v2 .app-reveal-v2{opacity:1!important;transform:none!important;transition:none!important}
  .selection-progress-v2{width:100%!important}.selection-signal-v2{display:none!important}.matrix-product-v2,.matrix-cell-v2{transition:none!important}
}

/* Applications matrix v3: use actual product photography instead of abstract specimen spheres. */
.matrix-product-v2{padding-top:82px!important}
.matrix-product-image-v3{
  position:absolute;
  left:10px;
  top:7px;
  width:72px;
  height:72px;
  object-fit:contain;
  object-position:center;
  display:block;
  filter:drop-shadow(0 7px 10px rgba(36,54,42,.10));
  transition:transform .28s cubic-bezier(.2,.75,.2,1),filter .28s ease;
}
@media(hover:hover){
  .matrix-product-v2:hover .matrix-product-image-v3{
    transform:translateY(-2px) scale(1.025);
    filter:drop-shadow(0 9px 13px rgba(36,54,42,.13));
  }
}
@media(max-width:1100px){
  .matrix-product-v2{padding-top:72px!important}
  .matrix-product-image-v3{width:62px;height:62px;top:7px;left:8px}
}
