/* MedicSort conversion path. Loaded only by the public homepage. */
.ms-homepage .toprow { gap:22px; }
.ms-homepage .desktopNav { gap:20px; }
.headerLogin { color:var(--muted); font-size:13px; font-weight:650; text-decoration:none; white-space:nowrap; }
.headerLogin:hover { color:var(--blue2); text-decoration:underline; text-underline-offset:4px; }
.ms-homepage .hero { padding:64px 0; }
.ms-homepage .heroGrid { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:62px; }
.ms-homepage h1 { font-size:clamp(38px,4.5vw,60px); }
.ms-homepage .lead { font-size:17px; line-height:1.8; }
.funnelSafety { max-width:500px; margin:14px 0 0; color:var(--muted); font-size:12px; line-height:1.8; }
.ms-homepage .funnelPreview { align-self:center; padding:0; overflow:hidden; border-radius:22px; }
.funnelPhoto { position:relative; background:#ddecfc; }
.funnelPhoto img { display:block; width:100%; height:auto; }
.funnelPhotoLabel { position:absolute; bottom:16px; left:16px; right:16px; width:fit-content; max-width:calc(100% - 32px); padding:7px 12px; border:1px solid #fff; border-radius:8px; background:#ffffffed; color:#164777; font-size:11px; font-weight:700; }
.funnelOffer { padding:22px 26px; }
.funnelOfferTop { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.funnelOffer .freeTag { max-width:none; }
.funnelOffer .cardCaption { margin:8px 0 0; font-size:11px; }
.funnelPrice { font-size:42px; font-weight:700; line-height:1.1; letter-spacing:-.05em; white-space:nowrap; }
.funnelOffer .freeStats { margin-top:18px; padding:16px 0; gap:14px; }
.funnelOffer .freeStats strong { font-size:25px; }
.funnelOffer .freeStats span { margin-top:4px; font-size:11px; }
.funnelOffer .cardBottom { padding-top:14px; }
.funnelStart { border-top:1px solid var(--line); }
.funnelPaths { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:32px; }
.funnelPath { display:flex; flex-direction:column; min-width:0; padding:26px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.funnelPathPrimary { border-color:#a7c9f6; background:#f7faff; }
.funnelPathTop { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.funnelAccess { color:var(--muted); font-size:11px; line-height:1.6; }
.funnelPath h3 { margin:23px 0 12px; font-size:21px; line-height:1.35; font-weight:700; letter-spacing:-.025em; }
.funnelPath p { margin:0 0 24px; color:var(--muted); font-size:14px; line-height:1.8; }
.funnelPathLink { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:46px; margin-top:auto; padding:11px 0 0; border-top:1px solid var(--line); color:var(--blue2); font-size:13px; font-weight:750; text-decoration:none; line-height:1.6; }
.funnelPathLink:hover { text-decoration:underline; text-underline-offset:4px; }
.funnelPathLink > span { flex:none; font-size:20px; }
.ms-homepage .ms-home-pricing { padding-top:30px; }
.funnelJoin { padding-top:20px; }
.funnelJoinSteps { display:flex; flex-wrap:wrap; gap:10px 24px; margin:24px 0 0; padding:0; list-style:none; }
.funnelJoinSteps li { display:flex; align-items:center; gap:8px; max-width:100%; color:#deebfc; font-size:11px; line-height:1.7; }
.funnelJoinSteps li > span { display:grid; place-items:center; flex:none; width:23px; height:23px; border:1px solid #52749b; border-radius:50%; color:#fff; font-size:10px; }
.funnelJoinActions { max-width:280px; }
.funnelJoinActions .btn { width:100%; }
.funnelJoinActions > p { margin-top:14px; color:#c9dbf2; font-size:11px; text-align:center; }
.funnelJoinActions > p a { color:#fff; font-weight:650; text-underline-offset:3px; }
.funnelSticky { display:none; }
@media (min-width:1101px) and (max-width:1240px) {
  .headerLogin { display:none; }
}
@media (max-width:1100px) {
  .ms-homepage .heroGrid { gap:34px; }
  .ms-homepage .hero { padding:48px 0; }
  .funnelPaths { gap:14px; }
  .funnelPath { padding:22px; }
}
@media (max-width:900px) {
  .ms-homepage .heroGrid { grid-template-columns:minmax(0,1fr); }
  .ms-homepage .heroCopy { max-width:720px; }
  .ms-homepage h1 { max-width:740px; font-size:clamp(40px,6.5vw,58px); }
  .ms-homepage .funnelPreview { display:grid; grid-template-columns:1fr 1fr; width:100%; max-width:720px; }
  .funnelPhoto img { height:100%; object-fit:cover; object-position:center; }
  .funnelPhotoLabel { left:12px; right:12px; bottom:12px; font-size:10px; max-width:calc(100% - 24px); }
  .funnelOffer { padding:24px; }
  .funnelPrice { font-size:38px; }
  .funnelPaths { grid-template-columns:minmax(0,1fr); }
  .funnelPath { display:grid; grid-template-columns:1fr auto; column-gap:24px; }
  .funnelPathTop { grid-column:1/-1; justify-content:flex-start; }
  .funnelPath h3 { margin-top:16px; }
  .funnelPath p { margin:0; }
  .funnelPathLink { grid-column:2; grid-row:2/4; align-self:center; max-width:230px; padding:10px 0; border:0; }
  .funnelJoinActions { max-width:320px; }
}
@media (max-width:600px) {
  .headerLogin { display:none; }
  .ms-homepage .hero { padding:34px 0 38px; }
  .ms-homepage .heroGrid { gap:28px; }
  .ms-homepage h1 { margin:18px 0; font-size:clamp(34px,9.1vw,44px); }
  .ms-homepage .lead { font-size:16px; line-height:1.75; }
  .ms-homepage .cta { gap:8px 16px; }
  .ms-homepage .cta .btn { width:100%; }
  .ms-homepage .cta .textLink { font-size:13px; }
  .ms-homepage .heroNote { margin-top:9px; }
  .funnelSafety { margin-top:10px; font-size:11px; }
  .ms-homepage .funnelPreview { grid-template-columns:minmax(0,1fr); border-radius:16px; }
  .funnelPhoto img { height:auto; object-fit:contain; }
  .funnelPhotoLabel { font-size:11px; }
  .funnelOffer { padding:20px 22px; }
  .funnelOfferTop { gap:12px; }
  .funnelPrice { font-size:40px; }
  .funnelOffer .cardBottom p { font-size:11px; }
  .funnelPath { display:flex; padding:22px; }
  .funnelPathTop { justify-content:space-between; }
  .funnelPath h3 { margin:18px 0 10px; font-size:20px; }
  .funnelPath p { margin-bottom:18px; }
  .funnelPathLink { align-self:stretch; max-width:none; padding-top:13px; border-top:1px solid var(--line); }
  .ms-homepage .ms-home-pricing { padding-top:8px; }
  .funnelJoin { padding-top:8px; }
  .funnelJoinSteps { flex-direction:column; gap:12px; }
  .funnelJoinActions { width:100%; max-width:none; }
  .funnelSticky:not([hidden]) { position:fixed; inset:auto 0 0; z-index:9800; display:block; padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px)); border-top:1px solid #d3e0ee; background:#fffffff5; box-shadow:0 -8px 30px #1027420a; backdrop-filter:blur(14px); }
  .funnelSticky .shell { display:flex; align-items:center; justify-content:space-between; gap:14px; }
  .funnelSticky .shell > span { display:grid; max-width:40%; color:var(--muted); font-size:10px; line-height:1.5; }
  .funnelSticky strong { display:block; color:var(--ink); font-size:20px; }
  .funnelSticky .btn { min-height:46px; max-width:65%; padding:10px 14px; gap:12px; font-size:12px; }
  .ms-homepage.funnelStickyVisible .ms-home-guide { bottom:calc(102px + env(safe-area-inset-bottom,0px)); }
}
