/* SANORA website — home page v2 (body.hm): full-bleed sections, full-screen video hero, big type, soft cards.
   Brand colours still come from the staff app (--brand, --mint). Older blocks (offers, advice, portal, location, footer)
   keep their css/home.css styles, re-tuned here for the white full-width page. */
.hm{--hm-ink:#0b1a17;--hm-mut:#5a6b66;--hm-line:#e2eae7;--hm-soft:#f3f7f6;--hm-r:26px;
  --hm-dark:color-mix(in srgb,var(--brand) 42%,#020807);--sx-bg:#fff;--sx-r:28px;
  background:#fff;color:var(--hm-ink);-webkit-font-smoothing:antialiased}
.hm #app{max-width:none;padding:0}
.hm-in{max-width:1200px;margin:0 auto;padding:0 24px}
.hm-main{display:block}
.hm h1,.hm h2,.hm h3{font-family:"Montserrat",system-ui,sans-serif}
.hm .sx-h2,.hm .sx-fpromo h3,.hm .sx-fc.plain .sx-fc-t,.hm .sx-doc-ph span{font-family:"Montserrat",system-ui,sans-serif;font-weight:800;letter-spacing:-.025em}

/* ---------- buttons */
.hm-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:14px 24px;font:inherit;font-weight:700;font-size:15px;line-height:1.2;
  text-decoration:none;border:1.5px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .2s cubic-bezier(.2,.8,.2,1),filter .2s,background-color .2s}
.hm-btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.hm-btn:active{transform:none}
.hm-btn.lg{padding:17px 30px;font-size:16px}
.hm-btn.sm{padding:10px 18px;font-size:14px}
.hm-btn.mint{background:var(--mint);color:#032119;box-shadow:0 12px 28px -14px color-mix(in srgb,var(--mint) 80%,#000)}
.hm-btn.glass{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.34);color:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.hm-btn.dark{background:var(--hm-ink);color:#fff}
.hm-btn.line{background:#fff;border-color:var(--hm-line);color:var(--hm-ink)}
.hm-btn.line:hover{border-color:var(--hm-mut);filter:none}
.hm-ctas{display:flex;flex-wrap:wrap;gap:12px}
.hm :focus-visible{outline:2.5px solid var(--mint);outline-offset:3px}

/* ---------- top bar: clear over the hero, frosted white after scrolling */
.hm-top{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:18px;height:78px;padding:0 max(24px,calc((100vw - 1200px) / 2 + 24px));
  color:#fff;transition:background-color .35s,box-shadow .35s,height .35s,color .35s}
.hm-top.solid{height:66px;color:var(--hm-ink);background:rgba(255,255,255,.84);backdrop-filter:saturate(1.8) blur(18px);-webkit-backdrop-filter:saturate(1.8) blur(18px);box-shadow:0 1px 0 rgba(4,30,26,.08)}
.hm-logo{display:flex;align-items:center;flex:none}
.hm-logo img{height:34px;width:auto;display:block}
.hm-logo .c,.hm-top.solid .hm-logo .w{display:none}
.hm-top.solid .hm-logo .c{display:block}
.hm-nav{position:relative;flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:2px}
.hm-nav a,.hm-nav-m a,.hm-more>button{color:inherit;text-decoration:none;font-weight:600;font-size:14px;padding:9px 13px;border-radius:999px;opacity:.88;white-space:nowrap;transition:background-color .2s,opacity .2s}
.hm-nav a:hover,.hm-more>button:hover,.hm-more>button[aria-expanded=true]{opacity:1;background:rgba(255,255,255,.14)}
.hm-top.solid .hm-nav a:hover,.hm-top.solid .hm-more>button:hover,.hm-top.solid .hm-more>button[aria-expanded=true]{background:rgba(4,30,26,.06)}
.hm-nav-m{position:absolute;left:0;top:0;display:flex;gap:2px;white-space:nowrap;visibility:hidden;pointer-events:none}
.hm-more{position:relative;flex:none}
.hm-more>button{display:inline-flex;align-items:center;gap:4px;border:0;background:none;font-family:inherit;cursor:pointer}
.hm-more-m{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);min-width:210px;padding:8px;border-radius:18px;background:#fff;color:var(--hm-ink);
  display:flex;flex-direction:column;box-shadow:0 26px 54px -22px rgba(4,30,26,.5),0 0 0 1px rgba(4,30,26,.06);animation:hmIn .2s}
.hm-nav .hm-more-m a{padding:11px 14px;border-radius:11px;color:inherit;opacity:1;font-size:14.5px}
.hm-nav .hm-more-m a:hover{background:var(--hm-soft)}
.hm-act{display:flex;align-items:center;gap:6px;flex:none;margin-left:auto}
.hm-my,.hm-tel{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none;font-weight:600;font-size:14px;padding:9px 11px;border-radius:999px;white-space:nowrap}
.hm-my:hover,.hm-tel:hover{background:rgba(255,255,255,.14)}
.hm-top.solid .hm-my:hover,.hm-top.solid .hm-tel:hover{background:rgba(4,30,26,.06)}
.hm-top .sx-lang{background:rgba(255,255,255,.14)}
.hm-top .sx-lang button{color:rgba(255,255,255,.75)}
.hm-top .sx-lang button[aria-pressed=true]{background:#fff;color:var(--hm-ink)}
.hm-top.solid .sx-lang{background:rgba(4,30,26,.06)}
.hm-top.solid .sx-lang button{color:var(--hm-mut)}
.hm-top.solid .sx-lang button[aria-pressed=true]{background:var(--hm-ink);color:#fff}
.hm-burger{display:none;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:inherit;place-items:center;cursor:pointer}
.hm-top.solid .hm-burger{background:rgba(4,30,26,.06)}
.hm-sheet{position:fixed;inset:66px 0 0;z-index:49;overflow:auto;background:#fff;color:var(--hm-ink);padding:10px 20px 30px;animation:hmIn .3s cubic-bezier(.2,.8,.2,1)}
.hm-sheet>a{display:flex;align-items:center;justify-content:space-between;padding:17px 4px;border-bottom:1px solid var(--hm-line);color:inherit;text-decoration:none;font-size:19px;font-weight:700;letter-spacing:-.01em}
.hm-sheet>a .sx-ic{color:var(--hm-mut)}
.hm-sheet-b{display:grid;gap:10px;margin-top:22px}
.hm-sheet-l{margin-top:18px;display:flex;justify-content:center}
.hm-sheet-l .sx-lang{background:var(--hm-soft)}.hm-sheet-l .sx-lang button{color:var(--hm-mut)}
.hm-sheet-l .sx-lang button[aria-pressed=true]{background:var(--hm-ink);color:#fff}
@keyframes hmIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* ---------- hero */
.hm-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;color:#fff;isolation:isolate;
  background:linear-gradient(125deg,color-mix(in srgb,var(--brand) 30%,#02100d) 0%,var(--brand) 62%,color-mix(in srgb,var(--brand) 70%,var(--mint)) 100%)}
.hm-media{position:absolute;inset:0;z-index:-2}
.hm-bgvid,.hm-bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:center/cover no-repeat}
.hm-bgimg{animation:hmZoom 22s ease-out both}
.hm-bgframe{position:absolute;top:50%;left:50%;width:max(100%,177.78vh);height:max(100%,56.25vw);transform:translate(-50%,-50%);border:0;pointer-events:none}
.hm-hero.art .hm-media{background:radial-gradient(900px 640px at 78% 28%,color-mix(in srgb,var(--mint) 38%,transparent),transparent 64%),
  radial-gradient(700px 520px at 6% 100%,color-mix(in srgb,var(--mint) 20%,transparent),transparent 70%),
  linear-gradient(125deg,color-mix(in srgb,var(--brand) 30%,#02100d) 0%,var(--brand) 62%,color-mix(in srgb,var(--brand) 70%,var(--mint)) 100%)}
.hm-blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5}
.hm-blob.b1{width:46vw;height:46vw;right:-8vw;top:-10vw;background:var(--mint);animation:hmFloat 16s ease-in-out infinite alternate}
.hm-blob.b2{width:34vw;height:34vw;left:-10vw;bottom:-14vw;background:color-mix(in srgb,var(--mint) 60%,#fff);opacity:.28;animation:hmFloat 20s ease-in-out -6s infinite alternate-reverse}
.hm-tooth-w{position:absolute;inset:0;display:flex;align-items:center;justify-content:flex-end;padding:96px max(24px,calc((100vw - 1200px) / 2 + 24px)) 48px;pointer-events:none}
.hm-shine{position:relative;width:min(27vw,380px);aspect-ratio:256/245;filter:drop-shadow(0 0 34px color-mix(in srgb,var(--mint) 42%,transparent));
  animation:hmFade 1.2s .2s both,hmFloatY 7s ease-in-out 1.4s infinite}
.hm-shine:not(.def){aspect-ratio:1}
.hm-shine-i{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.hm-shine-m{position:absolute;inset:0;-webkit-mask:var(--art) center/contain no-repeat;mask:var(--art) center/contain no-repeat;
  background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.95) 50%,transparent 58%) 100% 0/260% 100% no-repeat;animation:hmShine 5s ease-in-out infinite}
.hm-shine.def .hm-shine-m{background:linear-gradient(160deg,rgba(255,255,255,.42) 0%,color-mix(in srgb,var(--mint) 55%,rgba(255,255,255,.2)) 100%);animation:none}
.hm-shine .mk-run{-webkit-mask:var(--art) center/contain no-repeat;mask:var(--art) center/contain no-repeat}
.hm-shine{--mk-t:4.5s}
.hm-tings{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.hm-ting{fill:#fff;opacity:0;transform-box:fill-box;transform-origin:center;animation:hmTing 4.5s ease-in-out infinite;filter:drop-shadow(0 0 6px #fff)}
.hm-ting.t2{animation-delay:.05s}.hm-ting.t1{animation-delay:.7s}
@keyframes hmFade{from{opacity:0}to{opacity:1}}
@keyframes hmFloatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes hmShine{0%,20%{background-position:100% 0,0 0}60%,100%{background-position:0% 0,0 0}}
@keyframes hmTing{0%,42%{opacity:0;transform:scale(.2) rotate(-40deg)}50%{opacity:1;transform:scale(1) rotate(0)}60%,100%{opacity:0;transform:scale(.2) rotate(40deg)}}
.hm-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(2,12,10,.5) 0%,rgba(2,12,10,.08) 30%,rgba(2,12,10,.2) 58%,rgba(2,12,10,.78) 100%)}
.hm-hero.art .hm-shade{background:linear-gradient(180deg,rgba(2,12,10,.25) 0%,transparent 40%,rgba(2,12,10,.35) 100%)}
.hm-hero-in{position:relative;width:100%;max-width:1200px;margin:0 auto;padding:150px 24px 132px}
.hm-badge{display:inline-flex;align-items:center;gap:9px;padding:8px 15px 8px 12px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:13px;font-weight:600;animation:hmRise .9s .1s both}
.hm-hero h1{font-size:clamp(40px,6.2vw,86px);font-weight:800;line-height:1.02;letter-spacing:-.035em;margin:22px 0 20px;max-width:15ch;text-wrap:balance;animation:hmRise .9s .2s both}
.hm-lead{font-size:clamp(16px,1.45vw,20px);line-height:1.55;color:rgba(255,255,255,.86);max-width:52ch;margin:0 0 34px;animation:hmRise .9s .3s both}
.hm-hero .hm-ctas{animation:hmRise .9s .4s both}
.hm-feats{list-style:none;display:flex;flex-wrap:wrap;gap:10px 26px;margin:40px 0 0;padding:0;font-size:14px;font-weight:600;color:rgba(255,255,255,.9);animation:hmRise .9s .5s both}
.hm-feats li{display:flex;align-items:center;gap:8px}.hm-feats .sx-ic{color:var(--mint)}
.hm-scroll{position:absolute;z-index:2;left:50%;bottom:28px;width:26px;height:42px;padding:0;border:2px solid rgba(255,255,255,.6);border-radius:14px;background:none;transform:translateX(-50%);cursor:pointer}
.hm-scroll span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:#fff;animation:hmWheel 1.8s infinite}
.hm-hero:has(+ .hm-stats-wrap) .hm-scroll{display:none}
body.embed .hm-hero{min-height:680px}
@keyframes hmRise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes hmZoom{from{transform:scale(1.08)}to{transform:none}}
@keyframes hmFloat{from{transform:translate(0,0)}to{transform:translate(-6vw,5vw)}}
@keyframes hmWheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(12px)}}

/* ---------- numbers (float over the hero's bottom edge) */
.hm-stats-wrap{position:relative;z-index:3;max-width:1200px;margin:-70px auto 0;padding:0 24px}
.hm-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));background:#fff;border-radius:28px;padding:34px 12px;
  box-shadow:0 34px 70px -34px rgba(4,30,26,.38),0 0 0 1px rgba(4,30,26,.05)}
.hm-stat{text-align:center;padding:4px 16px;border-left:1px solid var(--hm-line)}
.hm-stat:first-child{border-left:0}
.hm-stat b{display:block;font-size:clamp(34px,3.6vw,52px);font-weight:800;letter-spacing:-.035em;line-height:1;color:var(--brand);font-variant-numeric:tabular-nums}
.hm-stat span{display:block;margin-top:10px;font-size:14px;line-height:1.35;color:var(--hm-mut);font-weight:600}
.hm-stat.ghost{opacity:.6}

/* ---------- sections */
.hm-sec{position:relative;padding:112px 0;scroll-margin-top:60px}
.hm-sec>.hm-in{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1)}
.hm-sec.in>.hm-in{opacity:1;transform:none}
.hm-head{max-width:720px;margin:0 0 50px}
.hm-head.c{margin-left:auto;margin-right:auto;text-align:center}
.hm-kick{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin-bottom:16px}
.hm-kick::before{content:"";width:22px;height:2px;border-radius:2px;background:var(--mint)}
.hm-head h2{font-size:clamp(32px,4.2vw,56px);font-weight:800;line-height:1.06;letter-spacing:-.035em;margin:0;color:var(--hm-ink);text-wrap:balance}
.hm-head p{margin:18px 0 0;font-size:clamp(16px,1.3vw,18px);line-height:1.6;color:var(--hm-mut)}
.hm-head.c p{margin-left:auto;margin-right:auto;max-width:56ch}
.hm-c{text-align:center;margin-top:40px}
.hm-empty{margin:0;text-align:center;color:#5c4300;padding:38px 20px;border:2px dashed #f5b400;border-radius:22px;background:#fffbea;font-weight:600}

/* why us */
.hm-why>.hm-in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:72px;align-items:start}
.hm-why-l{position:sticky;top:110px}
.hm-why-l .hm-head{margin-bottom:30px}
.hm-why-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.hm-wc{background:var(--hm-soft);border-radius:var(--hm-r);padding:30px 28px;transition:transform .35s cubic-bezier(.2,.8,.2,1),background-color .35s,box-shadow .35s}
.hm-wc:hover{transform:translateY(-4px);background:#fff;box-shadow:0 26px 50px -30px rgba(4,30,26,.4),0 0 0 1px var(--hm-line)}
.hm-sec.in .hm-wc{animation:hmRise .8s calc(var(--i) * 80ms + .15s) both}
.hm-wic{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;flex:none;background:#fff;color:var(--brand);box-shadow:0 10px 24px -14px rgba(4,30,26,.35);margin-bottom:20px}
.hm-wc:hover .hm-wic{background:var(--brand);color:#fff}
.hm-wc b{display:block;font-size:18px;font-weight:700;letter-spacing:-.01em;margin-bottom:8px}
.hm-wc p{margin:0;color:var(--hm-mut);font-size:14.5px;line-height:1.6}

/* treatments */
.hm-svc{background:var(--hm-soft)}
.hm-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:-18px 0 38px}
.hm-pills button{border:1.5px solid var(--hm-line);background:#fff;color:var(--hm-ink);border-radius:999px;padding:10px 18px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}
.hm-pills button:hover{border-color:var(--hm-mut)}
.hm-pills button[aria-pressed=true]{background:var(--hm-ink);border-color:var(--hm-ink);color:#fff}
.hm .sx-add.c{text-align:center}
.hm-sgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.hm-sc{position:relative;min-width:0}
.hm-sc .sc-edit{z-index:3}
.hm-sc-hit{display:flex;flex-direction:column;width:100%;height:100%;padding:0;border:0;text-align:left;background:#fff;border-radius:var(--hm-r);overflow:hidden;cursor:pointer;font:inherit;color:inherit;
  box-shadow:0 0 0 1px rgba(4,30,26,.04);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.hm-sc-hit:hover{transform:translateY(-6px);box-shadow:0 30px 56px -30px rgba(4,30,26,.45)}
.hm-sc-vis{display:grid;place-items:center;aspect-ratio:4/3;color:var(--brand);background:color-mix(in srgb,var(--mint) 14%,#eaf2ef) center/cover no-repeat;transition:filter .4s}
.hm-sc-hit:hover .hm-sc-vis{filter:saturate(1.1) brightness(1.03)}
.hm-sc-vis.art{background:radial-gradient(120% 90% at 20% 0%,#fff 0%,transparent 55%),linear-gradient(140deg,color-mix(in srgb,var(--mint) 26%,#eef6f3) 0%,color-mix(in srgb,var(--mint) 9%,#f7fbfa) 100%)}
.hm-sc-ic{width:78px;height:78px;border-radius:26px;display:grid;place-items:center;background:#fff;color:var(--brand);box-shadow:0 18px 34px -20px rgba(4,30,26,.5);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.hm-sc-hit:hover .hm-sc-ic{transform:translateY(-4px) rotate(-5deg)}
.hm-sc-t{display:flex;flex-direction:column;gap:6px;padding:20px 22px 22px;flex:1}
.hm-sc-t small{font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);opacity:.75}
.hm-sc-t b{font-size:18px;font-weight:700;line-height:1.3;letter-spacing:-.01em}
.hm-sc-t>span:not(.hm-sc-f){font-size:14px;color:var(--hm-mut);line-height:1.55}
.hm-sc-f{margin-top:auto;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.hm-sc-f em{font-style:normal;font-weight:700;font-size:14px;color:var(--brand);display:inline-flex;align-items:center;gap:3px}
.hm-sc-hit:hover .hm-sc-f em .sx-ic{transform:translateX(3px)}
.hm-sc-f em .sx-ic{transition:transform .25s}
.hm-price{font-style:normal;font-weight:800;font-size:13.5px;color:var(--hm-ink);background:color-mix(in srgb,var(--mint) 20%,#fff);padding:5px 11px;border-radius:999px;white-space:nowrap}

/* doctors */
.hm-dfeat{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);border-radius:34px;overflow:hidden;background:var(--hm-dark);color:#fff;min-height:500px}
.hm-dfeat .sc-edit{z-index:3}
.hm-dph{display:grid;place-items:center;min-height:100%;background:radial-gradient(90% 70% at 30% 10%,#fff 0%,transparent 60%),linear-gradient(160deg,color-mix(in srgb,var(--mint) 28%,#eef6f3) 0%,color-mix(in srgb,var(--mint) 12%,#f6faf9) 100%);background-position:center 18%;background-size:cover;background-repeat:no-repeat}
.hm-dph>span{font-size:120px;font-weight:800;color:color-mix(in srgb,var(--brand) 34%,transparent);line-height:1;letter-spacing:-.04em}
.hm-dft{padding:60px 58px;display:flex;flex-direction:column;justify-content:center;gap:12px;
  background:radial-gradient(520px 360px at 100% 0%,color-mix(in srgb,var(--mint) 22%,transparent),transparent 70%)}
.hm-dft>b{font-size:clamp(28px,3vw,42px);font-weight:800;letter-spacing:-.03em;line-height:1.08}
.hm-dft>small{font-size:16px;color:var(--mint);font-weight:700}
.hm-tags{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 2px}
.hm-tags span{padding:6px 13px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:13px;font-weight:600}
.hm-dft p{margin:6px 0 16px;color:rgba(255,255,255,.78);line-height:1.7;max-width:56ch}
.hm-drow{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:22px 18px;margin-top:22px}
.hm-drow:not(:has(> :nth-child(4))){grid-template-columns:repeat(4,minmax(0,1fr))}
.hm-dc{position:relative;min-width:0}
.hm-dc>button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer;font:inherit;color:inherit}
.hm-dph.s{width:100%;aspect-ratio:4/5;min-height:0;border-radius:24px;margin-bottom:12px;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s}
.hm-dc>button:hover .hm-dph.s{transform:translateY(-4px);box-shadow:0 26px 46px -28px rgba(4,30,26,.5)}
.hm-dph.s>span{font-size:64px}
.hm-dc b{font-size:16.5px;font-weight:700;letter-spacing:-.01em}
.hm-dc small{font-size:13.5px;color:var(--brand);font-weight:600}
.hm-dc em{font-style:normal;font-size:13px;color:var(--hm-mut)}

/* client stories */
.hm-stories{background:var(--hm-soft)}
.hm-srow{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:18px}
.hm-st{flex:0 1 calc((100% - 36px) / 3);min-width:0;background:#fff;border-radius:var(--hm-r);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 0 0 1px rgba(4,30,26,.04)}
.hm-st-m{position:relative;display:block;aspect-ratio:4/3;width:100%;border:0;padding:0;background:var(--hm-dark) center/cover no-repeat}
button.hm-st-m{cursor:pointer}
.hm-st-m.plain{background:radial-gradient(80% 80% at 80% 10%,color-mix(in srgb,var(--mint) 45%,transparent),transparent 70%),linear-gradient(135deg,var(--hm-dark),var(--brand))}
button.hm-st-m::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.32))}
.hm-play{position:absolute;z-index:1;left:50%;top:50%;width:70px;height:70px;margin:-35px 0 0 -35px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.94);color:var(--brand);box-shadow:0 14px 34px rgba(0,0,0,.32);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.hm-play::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(255,255,255,.55);animation:hmPulse 2.2s infinite}
.hm-st-m:hover .hm-play{transform:scale(1.08)}
.hm-play .sx-ic{margin-left:4px;fill:currentColor}
@keyframes hmPulse{0%{transform:scale(.9);opacity:1}100%{transform:scale(1.35);opacity:0}}
.hm-st-t{padding:24px 26px 26px;display:flex;flex-direction:column;gap:6px;flex:1}
.hm-st-t p{margin:0 0 14px;font-size:15.5px;line-height:1.65;color:var(--hm-ink)}
.hm-st-t b{margin-top:auto;font-size:15px}
.hm-st-t small{color:var(--hm-mut);font-size:13px}
.hm-st.q .hm-st-t{padding:30px 30px 30px}
.hm-st.q p{font-size:17px;line-height:1.6;font-weight:500}
.hm-q{font-size:84px;line-height:.7;height:42px;font-weight:800;color:var(--mint);font-family:Georgia,serif}
.hm-player{aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#000;margin-top:40px}
.hm-player iframe,.hm-player video{display:block;width:100%;height:100%;border:0}

/* before / after */
.hm-cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}
.hm-cgrid:has(> :only-child){max-width:820px;margin:0 auto}
.hm-cmp{margin:0}
.hm-cmp-box{position:relative;aspect-ratio:4/3;border-radius:var(--hm-r);overflow:hidden;cursor:ew-resize;touch-action:pan-y;user-select:none;-webkit-user-select:none;background:#e9efed}
.hm-cmp-box:has(input:focus-visible){outline:2.5px solid var(--mint);outline-offset:3px}
.hm-cmp-a,.hm-cmp-b{position:absolute;inset:0;background:center/cover no-repeat;pointer-events:none}
.hm-cmp-b{clip-path:inset(0 calc(100% - var(--k)) 0 0)}
.hm-cmp-l{position:absolute;top:0;bottom:0;left:var(--k);width:3px;margin-left:-1.5px;background:#fff;box-shadow:0 0 14px rgba(0,0,0,.35);pointer-events:none}
.hm-cmp-l i{position:absolute;top:50%;left:50%;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;background:#fff;color:var(--brand);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.28)}
.hm-cmp-l i .sx-ic{margin:0 -3px}
.hm-cmp em{position:absolute;top:14px;font-style:normal;font-size:12px;font-weight:700;letter-spacing:.04em;padding:6px 12px;border-radius:999px;background:rgba(0,0,0,.5);color:#fff;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:none}
.hm-cmp em.l{left:14px}.hm-cmp em.r{right:14px}
.hm-cmp input{position:absolute;left:0;bottom:0;width:1px;height:1px;opacity:0;pointer-events:none}
.hm-cmp figcaption{margin-top:14px;font-weight:700;font-size:15.5px;text-align:center}

/* partner / award logos */
.hm-logos{padding:64px 0;border-top:1px solid var(--hm-line)}
.hm-lrow{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:30px 60px}
.hm-lrow img{height:46px;width:auto;max-width:170px;object-fit:contain;filter:grayscale(1);opacity:.65;transition:filter .3s,opacity .3s}
.hm-lrow img:hover{filter:none;opacity:1}

/* call to action + feedback */
.hm-cta-sec{padding:24px 0 96px}
.hm-cta{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:30px 40px;flex-wrap:wrap;padding:64px;border-radius:38px;color:#fff;
  background:radial-gradient(640px 420px at 92% 0%,color-mix(in srgb,var(--mint) 46%,transparent),transparent 70%),linear-gradient(120deg,var(--hm-dark) 0%,var(--brand) 100%)}
.hm-cta::after{content:"";position:absolute;right:-60px;bottom:-90px;width:300px;height:300px;background:url("../assets/mark.png") center/contain no-repeat;opacity:.1;filter:brightness(0) invert(1);pointer-events:none}
.hm-cta>div{position:relative;z-index:1}
.hm-cta h2{font-size:clamp(30px,3.6vw,50px);font-weight:800;letter-spacing:-.035em;line-height:1.06;margin:0 0 12px;max-width:17ch}
.hm-cta p{margin:0;color:rgba(255,255,255,.8);max-width:46ch;font-size:16px;line-height:1.6}
.hm-fbrow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px 20px;margin-top:18px;padding:24px 28px;border-radius:26px;background:var(--hm-soft);scroll-margin-top:90px}
.hm-fbrow .hm-wic{margin:0}
.hm-fbrow b{font-size:17px}.hm-fbrow p{margin:3px 0 0;color:var(--hm-mut);font-size:14px}
.hm-fbk{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}

/* floating actions (desktop: a stack bottom-right; phone: a bar) */
.hm-fab{position:fixed;right:22px;bottom:22px;z-index:45;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:10px;
  transform:translateY(24px);opacity:0;pointer-events:none;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .35s}
.hm-fab.show{transform:none;opacity:1;pointer-events:auto}
.hm-fab-b{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:54px;min-width:54px;padding:0 20px;border-radius:999px;border:0;background:#fff;color:var(--hm-ink);
  font:inherit;font-weight:700;font-size:14.5px;text-decoration:none;cursor:pointer;box-shadow:0 16px 36px -14px rgba(4,30,26,.5),0 0 0 1px rgba(4,30,26,.06);transition:transform .2s}
.hm-fab-b:hover{transform:translateY(-2px)}
.hm-fab-b:not(.mint){width:54px;padding:0}
.hm-fab-b:not(.mint) span{display:none}
.hm-fab-b.mint{background:var(--mint);color:#032119}
.hm .ed-bar{right:auto;left:16px;bottom:16px}

/* ---------- older blocks on the new page */
.hm-old{max-width:1200px;margin:0 auto;padding:0 24px 24px}
.hm .sx-panel{background:var(--hm-soft)}
.hm .sx-offers{margin-top:8px}
.hm .sx-loc{background:var(--hm-soft)}
.hm .sx-foot{margin-top:0;border-radius:0;padding:72px max(24px,calc((100vw - 1200px) / 2 + 24px)) 28px;background:var(--hm-dark)}
.hm .sx-modal{border-radius:28px}

/* ---------- motion off */
@media (prefers-reduced-motion:reduce){
  .hm-sec>.hm-in{opacity:1;transform:none;transition:none}
  .hm-sec.in .hm-wc,.hm-badge,.hm-hero h1,.hm-lead,.hm-hero .hm-ctas,.hm-feats,.hm-bgimg,.hm-blob,.hm-play::before,.hm-scroll span,
  .hm-shine,.hm-shine-m,.hm-ting,.mk-run path,.mk-flash{animation:none}
  .mk-run,.mk-flash{display:none}
}

/* ---------- edit mode (admins) */
.hm-ed{position:absolute;z-index:6;top:22px;right:24px}
.hm-sec>.hm-ed{top:26px;right:max(24px,calc((100vw - 1200px) / 2 + 24px))}
.hm-stats-wrap>.hm-ed{top:-16px;right:44px}
.hm-edrow{position:absolute;z-index:6;top:96px;right:max(24px,calc((100vw - 1200px) / 2 + 24px));display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.hm-edrow .hm-ed{position:static}

/* ---------- tablet */
@media (max-width:1320px){.hm-my span{display:none}}
@media (max-width:1100px){
  .hm-nav a,.hm-nav-m a,.hm-more>button{padding:8px 9px;font-size:13.5px}
  .hm-tel span{display:none}
  .hm-sgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:960px){
  .hm-nav,.hm-act>.sx-lang,.hm-my,.hm-tel{display:none}
  .hm-burger{display:grid}
  .hm-why>.hm-in{grid-template-columns:1fr;gap:36px}
  .hm-why-l{position:static}
  .hm-sgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hm-dfeat{grid-template-columns:1fr;min-height:0}
  .hm-dfeat .hm-dph{aspect-ratio:4/3;min-height:0}
  .hm-dft{padding:36px 30px 38px}
  .hm-srow{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -24px;padding:0 24px 8px;scrollbar-width:none}
  .hm-st{flex:0 0 min(78%,340px)}
  .hm-srow::-webkit-scrollbar{display:none}
  .hm-st{scroll-snap-align:start}
  .hm-cta{padding:44px 36px}
  .hm-fbrow{grid-template-columns:auto minmax(0,1fr)}
  .hm-fbk{grid-column:1/-1;justify-content:flex-start}
}

/* ---------- phone */
@media (max-width:640px){
  .hm-in{padding:0 18px}
  .hm-top{height:64px;padding:0 12px 0 18px;gap:8px}
  .hm-top.solid{height:60px}
  .hm-sheet{top:60px}
  .hm-logo img{height:28px}
  .hm-act .hm-btn.sm{padding:9px 14px;font-size:13px}
  .hm-hero-in{padding:120px 18px 104px}
  .hm-hero h1{font-size:clamp(36px,10.6vw,48px);margin:18px 0 14px}
  .hm-lead{margin-bottom:26px}
  .hm-hero .hm-ctas .hm-btn{flex:1 1 100%}
  .hm-feats{gap:8px 18px;margin-top:28px;font-size:13px}
  .hm-tooth-w{align-items:flex-start;padding:78px 14px 0}
  .hm-shine{width:34vw}
  .hm-hero.art .hm-hero-in{padding-top:calc(92px + 38vw)}
  .hm-stats-wrap{margin-top:-48px;padding:0 14px}
  .hm-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:22px 6px;border-radius:24px;row-gap:22px}
  .hm-stat{border-left:0;padding:2px 10px}
  .hm-stat:nth-child(even){border-left:1px solid var(--hm-line)}
  .hm-sec{padding:76px 0}
  .hm-head{margin-bottom:34px}
  .hm-why-g{grid-template-columns:1fr;gap:12px}
  .hm-wc{padding:24px 22px;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:16px;align-items:start}
  .hm-wc .hm-wic{grid-row:span 2;margin:0;width:48px;height:48px;border-radius:15px}
  .hm-wc b{margin:2px 0 4px}
  .hm-pills{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;margin:-12px -18px 28px;padding:0 18px;scrollbar-width:none}
  .hm-pills::-webkit-scrollbar{display:none}
  .hm-pills button{flex:none}
  .hm-sgrid{grid-template-columns:1fr;gap:14px}
  .hm-sc-hit{flex-direction:row;align-items:stretch}
  .hm-sc-vis{aspect-ratio:auto;width:112px;flex:none}
  .hm-sc-t{padding:16px 16px 16px 18px}
  .hm-sc-t>span:not(.hm-sc-f){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .hm-dft{padding:28px 22px 30px}
  .hm-dft .hm-ctas .hm-btn{flex:1 1 auto}
  .hm-drow,.hm-drow:not(:has(> :nth-child(4))){grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
  .hm-dph.s{border-radius:20px}
  .hm-srow{margin:0 -18px;padding:0 18px 8px}
  .hm-st{flex-basis:86%}
  .hm-cgrid{grid-template-columns:1fr}
  .hm-cta-sec{padding:8px 0 70px}
  .hm-cta{padding:36px 24px;border-radius:30px}
  .hm-cta .hm-ctas{width:100%}.hm-cta .hm-btn{flex:1 1 100%}
  .hm-fbrow{padding:20px 18px}
  .hm-fbk .sx-fbk{flex:1 1 calc(50% - 8px);justify-content:center}
  .hm-old{padding:0 10px 12px}
  .hm .sx-foot{padding-bottom:110px}
  .hm-fab{left:10px;right:10px;bottom:10px;flex-direction:row;align-items:stretch;gap:8px;padding:8px;border-radius:24px;background:rgba(255,255,255,.9);
    backdrop-filter:saturate(1.8) blur(18px);-webkit-backdrop-filter:saturate(1.8) blur(18px);box-shadow:0 18px 40px -16px rgba(4,30,26,.5),0 0 0 1px rgba(4,30,26,.06)}
  .hm-fab-b{height:50px;box-shadow:none}
  .hm-fab-b.mint{flex:1}
  .hm-fab-b:not(.mint){width:50px;min-width:50px;background:var(--hm-soft)}
  .hm-fab-b.top{display:none}
  .hm .ed-bar{bottom:84px}
  .hm-sec>.hm-ed{right:14px;top:16px}
  .hm-edrow{right:14px;top:76px}
}

/* ---------- «Эмчилгээ» page (#/emchilgee) */
.hm-phero{position:relative;overflow:hidden;color:#fff;padding:140px 0 70px;
  background:radial-gradient(700px 420px at 85% 0%,color-mix(in srgb,var(--mint) 40%,transparent),transparent 70%),linear-gradient(125deg,color-mix(in srgb,var(--brand) 30%,#02100d) 0%,var(--brand) 100%)}
.hm-phero .hm-kick{color:var(--mint)}
.hm-phero h1{font-size:clamp(36px,5vw,64px);font-weight:800;letter-spacing:-.035em;line-height:1.04;margin:0 0 14px}
.hm-phero p{margin:0 0 28px;max-width:56ch;color:rgba(255,255,255,.82);font-size:clamp(15px,1.3vw,18px);line-height:1.6}
.hm-back{display:flex;width:max-content;align-items:center;gap:6px;margin-bottom:26px;color:rgba(255,255,255,.8);text-decoration:none;font-weight:600;font-size:14px}
.hm-back:hover{color:#fff}


.hm-ppage{padding:56px 0 90px}
.hm-ppage .hm-pills{margin:0 0 30px;justify-content:flex-start}



.hm-none{text-align:center;color:var(--hm-mut);padding:50px 0;font-weight:600}
.hm-pg .hm-cta-sec{padding-top:0}
@media (max-width:640px){.hm-phero{padding:100px 0 44px}.hm-ppage{padding:36px 0 70px}.hm-ppage .hm-pills{margin:0 -18px 22px}}
.hm-tgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.hm-tc{position:relative;min-width:0}
.hm-tc .sc-edit{z-index:4}
.hm-tc-hit{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:4/5;padding:0;border:0;border-radius:18px;overflow:hidden;cursor:pointer;font:inherit;color:#fff;
  background:#20302c center/cover no-repeat;box-shadow:0 18px 40px -26px rgba(4,30,26,.55);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.hm-tc-hit.art{background:radial-gradient(90% 70% at 70% 15%,color-mix(in srgb,var(--mint) 45%,transparent),transparent 70%),linear-gradient(150deg,var(--brand),color-mix(in srgb,var(--brand) 40%,#02100d))}
.hm-tc-hit::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 30%,rgba(0,0,0,.55));transition:opacity .35s}
.hm-tc-hit::after{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--mint) 70%,var(--brand));opacity:0;mix-blend-mode:multiply;transition:opacity .35s}
.hm-tc-hit:hover{transform:translateY(-6px);box-shadow:0 30px 60px -28px rgba(4,30,26,.6)}
.hm-tc-hit:hover::after{opacity:.85}
.hm-tc-ic{position:absolute;left:0;right:0;top:12%;height:30%;display:grid;place-items:center;color:rgba(255,255,255,.2)}
.hm-tc-t{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 22px;text-align:center}
.hm-tc-t b{font-size:clamp(22px,2.3vw,30px);font-weight:700;line-height:1.2;letter-spacing:-.01em;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.hm-tc-t em{display:inline-flex;align-items:center;gap:4px;font-style:normal;font-weight:700;font-size:14px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
.hm-tc-hit:hover .hm-tc-t em,.hm-tc-hit:focus-visible .hm-tc-t em{opacity:1;transform:none}
.hm-tc-t .hm-price{color:var(--hm-ink)}
@media (hover:none){.hm-tc-t em{opacity:.9;transform:none}}
@media (max-width:960px){.hm-tgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media (max-width:560px){.hm-tgrid{grid-template-columns:1fr;gap:16px}.hm-tc-hit{aspect-ratio:5/4}}
/* doctors: all the same size */
.hm-drow,.hm-drow:not(:has(> :nth-child(4))){grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}
@media (max-width:760px){.hm-drow,.hm-drow:not(:has(> :nth-child(4))){grid-template-columns:repeat(2,minmax(0,1fr))}}
/* doctor card: hover (no click) — the photo grows a little and the profile shows on it */
.hm-dph.s{position:relative;overflow:hidden}
.hm-dph.s>.hm-dov{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:8px;padding:18px;font-size:13px;font-weight:500;line-height:1.5;letter-spacing:0;text-align:left;color:#fff;background:linear-gradient(to top,rgba(4,30,26,.94) 0%,rgba(4,30,26,.78) 55%,rgba(4,30,26,.05) 100%);opacity:0;transform:translateY(14px);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.hm-dov i{font-style:normal;font-size:12px;font-weight:700;color:var(--mint)}.hm-dov>span{display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}.hm-dov u{text-decoration:none;font-weight:700;font-size:12.5px;color:var(--mint)}
@media (hover:hover){.hm-dc>button:hover .hm-dph.s,.hm-dc>button:focus-visible .hm-dph.s{transform:scale(1.04);box-shadow:0 30px 50px -28px rgba(4,30,26,.6)}.hm-dc>button:hover .hm-dov,.hm-dc>button:focus-visible .hm-dov{opacity:1;transform:none}}
