/* LightSite clinic look "lightmed" – lightmed.css (2026-10, docs/reports/dental-premium.md). Ported from the LightMED fork
   (docs/reports/lightmed-theme.md there) without its medical directory: prices, doctors and services are typed in the blocks.
   Loaded by layout.php when theme.skin = "lightmed", when a block on the page uses a clinic variant (lsb_lightmed()) or with
   header.logo_text; other pages keep their assets byte-identical.
   Brand colours only from the theme tokens (+ color-mix): navy = --ls-primary / --ls-text, clinic blue = --ls-accent,
   deep blue = --ls-primary-2, second accent = --ls-accent-2, pearl page = --ls-bg, sky = --ls-surface.
   Part A: the variants (work in any skin). Part B: the skin (body.ls-skin--lightmed): header, type, buttons, sections,
   steps, FAQ, CTA, forms, footer. Part C: LightSite additions (doctors with filter, price catalog with search, map). */

/* ============================================================== A. variants */
html{--lm-card:#fff;--lm-line:var(--ls-border);--lm-line-soft:color-mix(in srgb,var(--ls-border) 55%,#fff);
  --lm-sky:var(--ls-surface);--lm-sky-2:color-mix(in srgb,var(--ls-accent) 15%,#fff);--lm-tint:color-mix(in srgb,var(--ls-surface) 40%,#fff);
  --lm-ink-3:color-mix(in srgb,var(--ls-muted) 90%,var(--ls-bg));--lm-blue-ink:var(--ls-primary-2);
  --lm-act:color-mix(in oklab,var(--ls-accent) 90%,#000);--lm-act-h:color-mix(in oklab,var(--ls-accent) 76%,#000);
  --lm-rose:var(--ls-accent-2,var(--ls-accent));--lm-blush:color-mix(in srgb,var(--lm-rose) 13%,#fff);--lm-blush-2:color-mix(in srgb,var(--lm-rose) 28%,#fff);
  --lm-plum:color-mix(in srgb,var(--lm-rose) 68%,#000);--lm-ok:#157150;--lm-ok-bg:#E5F4EE;
  --lm-r-xl:calc(var(--ls-radius) * 1.34);--lm-r-lg:var(--ls-radius);--lm-r-md:calc(var(--ls-radius) * .67);
  --lm-sh-soft:0 1px 2px color-mix(in srgb,var(--ls-primary) 4%,#0000),0 14px 34px -18px color-mix(in srgb,var(--ls-primary) 18%,#0000);
  --lm-sh-float:0 2px 6px color-mix(in srgb,var(--ls-primary) 5%,#0000),0 30px 70px -28px color-mix(in srgb,var(--ls-primary) 34%,#0000);
  --lm-ease:cubic-bezier(.2,.7,.2,1)}

/* --- shared: head row with a pill link on the right, pill link, compact price rows, photo tag */
.ls-lmhead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px 32px;margin-bottom:clamp(24px,2.6vw,36px)}
.ls-lmhead > .ls-head{margin-bottom:0;max-width:760px}
.ls-lmhead > .ls-btns{margin-top:0;flex:none}
@media (max-width:760px){.ls-lmhead{flex-direction:column;align-items:flex-start;gap:18px}}
.ls-btn.ls-lmpill,.ls-btns .ls-btn.ls-lmpill{--_b-bg:var(--lm-card);--_b-fg:var(--ls-text);--_b-line:#0000;min-height:50px;padding:8px 54px 8px 22px;border:0;border-radius:999px;background:var(--_b-bg);
  box-shadow:inset 0 0 0 1px var(--lm-line);font:500 .95rem/1.2 var(--ls-font-body);letter-spacing:0;white-space:nowrap;transform:none}
.ls-btn.ls-lmpill::before{content:"";position:absolute;right:10px;top:50%;width:32px;height:32px;margin-top:-16px;border-radius:50%;background:var(--lm-sky)}
.ls-btn.ls-lmpill::after{content:"";position:absolute;right:18px;top:50%;width:16px;height:16px;margin-top:-8px;background:var(--ls-accent);-webkit-mask:var(--ls-arrow) center / contain no-repeat;mask:var(--ls-arrow) center / contain no-repeat;transition:transform .25s var(--lm-ease)}
.ls-btn.ls-lmpill:hover{--_b-bg:var(--lm-card);box-shadow:inset 0 0 0 1px var(--lm-sky-2),var(--lm-sh-soft);transform:none}
.ls-btn.ls-lmpill:hover::after{transform:translateX(2px)}
.ls-lmprices{list-style:none;margin:auto 0 0;padding:18px 0 0}
.ls-lmprices li{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:9px 0;border-top:1px solid var(--lm-line-soft);font-size:.9rem;line-height:1.45;color:var(--ls-muted)}
.ls-lmprices li > span{min-width:0}
.ls-lmprices b{font-weight:600;color:var(--ls-text);white-space:nowrap;font-variant-numeric:tabular-nums}
.ls-lmprices .is-request{font-weight:500;color:var(--lm-ink-3);white-space:normal}
.ls-lmtag{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:color-mix(in srgb,#fff 90%,#0000);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  font:500 .78rem/1.3 var(--ls-font-body);color:var(--ls-text);box-shadow:0 6px 16px -10px color-mix(in srgb,var(--ls-primary) 40%,#0000)}
.ls-lmtag i{width:6px;height:6px;border-radius:50%;background:var(--ls-accent);flex:none}
.ls-lmchips{display:flex;flex-wrap:wrap;gap:8px}
.ls-lmchip{min-height:40px;padding:0 16px;border:0;border-radius:999px;background:var(--lm-card);box-shadow:inset 0 0 0 1px var(--lm-line);color:var(--ls-muted);
  font:500 .9rem/1.2 var(--ls-font-body);white-space:nowrap;cursor:pointer;transition:background-color .2s,color .2s,box-shadow .2s}
.ls-lmchip:hover{color:var(--ls-text);box-shadow:inset 0 0 0 1px var(--lm-sky-2)}
.ls-lmchip[aria-pressed="true"]{background:var(--ls-primary);color:var(--ls-on-primary);box-shadow:none}
.ls-lmchip:focus-visible,.ls-lmarrow:focus-visible,.ls-lmcard__tab:focus-visible,.ls-lmcard__day:focus-visible,.ls-lmcard__time:focus-visible{outline:2px solid var(--ls-accent);outline-offset:2px}
.ls-lmarrows{display:flex;gap:8px}
.ls-lmarrow{display:grid;place-items:center;width:46px;height:46px;padding:0;border:0;border-radius:50%;background:var(--lm-card);box-shadow:inset 0 0 0 1px var(--lm-line);color:var(--ls-text);cursor:pointer;transition:box-shadow .2s,opacity .2s}
.ls-lmarrow:hover{box-shadow:inset 0 0 0 1px var(--ls-accent)}
.ls-lmarrow:disabled{opacity:.4;cursor:default;box-shadow:inset 0 0 0 1px var(--lm-line)}
.ls-lmarrow .ls-icon{width:18px;height:18px}

/* --- hero "arch" (2026-10-22): copy left, centred against the photo – eyebrow, title, lead, buttons, the facts line right
   under them; a photo in an arch on the right; the request card overlaps only the photo's lower left edge (--cover px of
   it), sticks out to the left by the rest and stands --cdrop px below the photo's bottom line, so its top stays below the
   faces of a portrait photo. Tablets and phones: one column – copy, buttons, facts, then the photo with the card over its
   bottom (inset from the photo's sides). */
.ls-block--hero.ls-lmh{--ls-pad:0px;position:relative;z-index:2;padding:40px 0 40px;overflow-x:hidden;overflow-x:clip;overflow-y:visible;min-height:0;display:block;
  background:radial-gradient(1200px 520px at 28% -8%,color-mix(in srgb,var(--lm-sky-2) 60%,#0000),#0000 72%),var(--_bg)}
.ls-lmh__grid{--hg:56px;--aw:480px;--ah:clamp(600px,calc(100vh - 290px),680px);--cw:360px;--cover:180px;--cdrop:56px;
  display:grid;grid-template-columns:minmax(0,1fr) calc(var(--aw) + var(--cw) - var(--cover));column-gap:var(--hg);align-items:center}
.ls-lmh__copy.ls-hero__content{position:relative;z-index:3;display:flex;flex-direction:column;max-width:none;min-width:0;padding:0}
.ls-lmh .ls-eyebrow{margin:0 0 16px;font:600 .8rem/1.2 var(--ls-font-head);letter-spacing:.12em;color:var(--lm-blue-ink)}
.ls-lmh .ls-eyebrow::before{display:none}
.ls-lmh .ls-hero__title{margin:0;font:700 clamp(32px,3vw,44px)/1.06 var(--ls-font-head);letter-spacing:-.022em;color:var(--ls-text);max-width:14.2em;text-wrap:balance}
/* desktop arch title (the skin's h1 size would win otherwise; tablets and phones keep the skin size) */
@media (min-width:1121px){.ls-block--hero.ls-lmh--arch .ls-hero__title{font-size:clamp(32px,2.9vw,44px)}}
.ls-lmh--arch .ls-hero__subtitle{margin:22px 0 0;max-width:32em;font-size:clamp(17px,1.25vw,19px);line-height:1.55;color:var(--ls-muted);text-wrap:pretty}
.ls-lmh__copy > .ls-btns{flex-wrap:wrap;gap:10px;margin-top:30px}
.ls-lmh .ls-lmh__btn{white-space:nowrap}
/* facts: one line of short items; the dot before every item sits in the gap and is clipped at the line start */
.ls-lmh__trust{margin:30px 0 0;padding-top:18px;overflow:hidden;border-top:1px solid color-mix(in srgb,var(--ls-text) 10%,#0000);
  font-size:.875rem;font-weight:500;line-height:1.5;color:var(--ls-muted)}
.ls-lmh__facts{display:flex;flex-wrap:wrap;row-gap:2px;margin-left:-23px}
.ls-lmh__fact{position:relative;margin-left:23px;white-space:nowrap}
.ls-lmh__fact::before{content:"·";content:"·" / "";position:absolute;left:-14px;color:color-mix(in srgb,var(--ls-muted) 55%,#0000)}
.ls-lmh__visual{position:relative;z-index:1;display:flex;justify-content:flex-end;min-width:0;padding-bottom:var(--cdrop)}
.ls-lmh__arch{position:relative;margin:0;width:var(--aw);height:var(--ah);border-radius:calc(var(--aw) / 2) calc(var(--aw) / 2) 28px 28px;overflow:hidden;background:var(--lm-sky-2);
  box-shadow:0 40px 80px -44px color-mix(in srgb,var(--ls-primary) 40%,#0000)}
.ls-lmh__arch img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--lm-focus,50% 34%)}
.ls-lmh__card{position:absolute;z-index:4;left:0;bottom:0;width:var(--cw)}
.ls-lmh__visual--nophoto{display:block;padding-bottom:0}
.ls-lmh__visual--nophoto .ls-lmh__card{position:relative;left:auto;bottom:auto;width:100%}

/* request card */
.ls-lmcard{position:relative;padding:20px 20px 16px;border-radius:24px;background:#fff;
  box-shadow:var(--lm-sh-float),inset 0 0 0 1px color-mix(in srgb,#fff 90%,#0000);color:var(--ls-text);text-align:left}
.ls-lmcard__head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-bottom:14px}
.ls-lmcard__title{margin:0;font:600 1.12rem/1.25 var(--ls-font-head);letter-spacing:-.01em;color:var(--ls-text)}
.ls-lmcard__note{display:inline-flex;align-items:center;gap:7px;margin:0;padding:4px 10px 4px 9px;border-radius:999px;background:var(--lm-ok-bg);font-size:.76rem;font-weight:500;line-height:1.3;color:var(--lm-ok);white-space:nowrap}
.ls-lmcard__note i{width:7px;height:7px;border-radius:50%;background:var(--lm-ok);flex:none}
@media (prefers-reduced-motion:no-preference){.ls-lmcard__note i{animation:ls-lm-pulse 2.4s infinite}}
@keyframes ls-lm-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--lm-ok) 45%,#0000)}70%{box-shadow:0 0 0 7px #0000}100%{box-shadow:0 0 0 0 #0000}}
.ls-lmcard__tabs{display:flex;gap:2px;padding:4px;border-radius:14px;background:color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-lmcard__tab{flex:1 1 auto;min-width:0;min-height:34px;padding:0 7px;border:0;border-radius:10px;background:#0000;color:var(--ls-muted);font:500 .84rem/1.2 var(--ls-font-body);cursor:pointer;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color .2s,color .2s,box-shadow .2s}
.ls-lmcard__tab:hover{color:var(--ls-text)}
.ls-lmcard__tab[aria-checked="true"]{background:#fff;color:var(--ls-text);box-shadow:0 1px 2px color-mix(in srgb,var(--ls-primary) 8%,#0000),0 4px 10px -6px color-mix(in srgb,var(--ls-primary) 25%,#0000)}
.ls-lmcard__svc{margin:12px 0 0;padding:12px 14px;border-radius:16px;background:var(--lm-tint);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 6%,#0000)}
.ls-lmcard__row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:.94rem;line-height:1.35}
.ls-lmcard__row span{font-weight:500;min-width:0}
.ls-lmcard__row b{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.ls-lmcard__doc{display:flex;align-items:center;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--lm-line-soft)}
.ls-lmcard__av,.ls-lmcard__doc img{flex:none;width:40px;height:40px;border-radius:50%;object-fit:cover;object-position:50% 20%}
.ls-lmcard__av--txt{display:grid;place-items:center;background:var(--lm-sky);color:var(--lm-blue-ink);font:600 .8rem/1 var(--ls-font-head)}
.ls-lmcard__doc b{display:block;font-size:.875rem;font-weight:500;line-height:1.3}
.ls-lmcard__doc div > span{display:block;font-size:.78rem;line-height:1.35;color:var(--lm-ink-3)}
.ls-lmcard__days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:12px}
.ls-lmcard__day{display:flex;flex-direction:column;align-items:center;padding:6px 0 5px;border:0;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 10%,#0000);
  color:var(--ls-text);font:inherit;cursor:pointer;transition:background-color .2s,box-shadow .2s,color .2s}
.ls-lmcard__day span{font-size:.72rem;line-height:1.2;color:var(--lm-ink-3)}
.ls-lmcard__day b{font-size:1rem;font-weight:500;line-height:1.25}
.ls-lmcard__day:hover{box-shadow:inset 0 0 0 1px var(--ls-accent)}
.ls-lmcard__times{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.ls-lmcard__time{min-height:33px;padding:0 13px;border:0;border-radius:999px;background:var(--lm-sky);color:var(--lm-blue-ink);font:500 .84rem/1.2 var(--ls-font-body);cursor:pointer;transition:background-color .2s,color .2s}
.ls-lmcard__time:hover{background:var(--lm-sky-2)}
.ls-lmcard__day[aria-pressed="true"],.ls-lmcard__time[aria-pressed="true"]{background:var(--ls-primary);box-shadow:none;color:var(--ls-on-primary)}
.ls-lmcard__day[aria-pressed="true"] span{color:color-mix(in srgb,var(--ls-on-primary) 70%,#0000)}
.ls-btn.ls-lmcard__go{width:100%;margin-top:14px;min-height:50px;font-size:.97rem}
.ls-lmcard__fine{margin:10px 0 0;font-size:.78rem;line-height:1.4;color:var(--lm-ink-3);text-align:center}

@media (min-width:1121px) and (max-height:880px){
  .ls-block--hero.ls-lmh{padding:28px 0 24px}
  .ls-lmh__grid{--ah:clamp(520px,calc(100vh - 252px),640px);--cdrop:72px}
  .ls-lmh__card .ls-lmcard__fine{display:none}
  .ls-lmh .ls-eyebrow{font-size:.75rem;margin-bottom:12px}
  .ls-lmh--arch .ls-hero__subtitle{margin-top:18px}
  .ls-lmh__copy > .ls-btns{margin-top:26px}
  .ls-lmh__trust{margin-top:26px}
  .ls-lmcard{padding:16px 18px 12px}
  .ls-lmcard__head{margin-bottom:10px}
  .ls-lmcard__svc{margin-top:10px;padding:10px 12px}
  .ls-lmcard__doc{margin-top:10px;padding-top:10px}
  .ls-lmcard__days{margin-top:10px}
  .ls-btn.ls-lmcard__go{min-height:46px;margin-top:12px}
  .ls-lmcard__fine{margin-top:8px}
}
@media (min-width:1121px) and (max-width:1300px){.ls-lmh__grid{--aw:420px;--cw:352px;--cover:150px;--hg:44px}}
/* tablets and phones: one column */
@media (max-width:1120px){
  .ls-block--hero.ls-lmh{padding:32px 0 48px}
  .ls-lmh__grid{--aw:min(520px,100%);--ah:auto;display:flex;flex-direction:column;align-items:stretch}
  .ls-lmh__copy.ls-hero__content{max-width:680px}
  .ls-lmh__visual{display:block;width:var(--aw);margin:44px auto 0;padding-bottom:0}
  /* a true half circle on top: the vertical radius is half the width = 50 / 1.06 % of the height */
  .ls-lmh__arch{width:100%;height:auto;aspect-ratio:1 / 1.06;border-radius:50% 50% 28px 28px / 47.17% 47.17% 28px 28px}
  .ls-lmh__card{position:relative;left:auto;bottom:auto;width:auto;margin:-88px 24px 0}
}
@media (max-width:760px){
  .ls-block--hero.ls-lmh{padding:24px 0 40px}
  .ls-lmh .ls-eyebrow{font-size:.75rem;margin-bottom:12px}
  .ls-lmh .ls-hero__title{font-size:clamp(28px,8vw,34px);line-height:1.08}
  .ls-lmh--arch .ls-hero__subtitle{margin-top:16px;font-size:17px}
  .ls-lmh__copy > .ls-btns{margin-top:24px}
  .ls-lmh__copy > .ls-btns .ls-btn{flex:1 1 150px;min-height:50px;padding-inline:18px}
  .ls-lmh__trust{margin-top:24px;padding-top:14px;font-size:.84rem}
  .ls-lmh__facts{flex-direction:column;row-gap:4px;margin-left:0}
  .ls-lmh__fact{margin-left:14px;white-space:normal}
  .ls-lmh__fact::before{left:-13px}
  .ls-lmh__visual{width:100%;margin-top:32px}
  .ls-lmh__arch{aspect-ratio:1 / 1.12;border-radius:50% 50% 24px 24px / 44.64% 44.64% 24px 24px}
  .ls-lmh__arch img{object-position:var(--lm-focus,50% 72%)}
  .ls-lmh__card{margin:-56px 14px 0}
  .ls-lmcard{padding:18px 16px 14px}
  .ls-lmcard__head{gap:6px 10px;margin-bottom:12px}
  .ls-lmcard__tab{font-size:.78rem;min-height:44px;padding:0 4px}
  .ls-lmcard__time{min-height:44px;padding:0 14px}
  .ls-lmcard__day{min-height:44px}
}
@media (prefers-reduced-motion:no-preference){
  body:not(.ls-anim--off) .ls-lmh__arch{animation:ls-lm-arch 1.3s var(--lm-ease) both}
  body:not(.ls-anim--off) .ls-lmh__arch img{animation:ls-lm-img 1.6s var(--lm-ease) both}
  body:not(.ls-anim--off) .ls-lmh__card{animation:ls-lm-rise .9s .38s var(--lm-ease) both}
}
@keyframes ls-lm-arch{from{clip-path:inset(18% 0 0 0 round 200px 200px 28px 28px);opacity:0}to{clip-path:inset(0 0 0 0 round 0);opacity:1}}
@keyframes ls-lm-img{from{transform:scale(1.08)}to{transform:scale(1)}}
@keyframes ls-lm-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* --- hero "page": a service page head – breadcrumbs, title, lead, checks; a photo and a white price card on the right */
.ls-block--hero.ls-lmh--page{padding:clamp(20px,2.4vw,36px) 0 clamp(48px,5vw,80px)}
.ls-lmh--page .ls-breadcrumbs{margin-bottom:clamp(20px,2.4vw,32px)}
.ls-lmpage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,min(560px,46%));gap:clamp(32px,4.4vw,64px);align-items:center}
.ls-lmpage--solo{grid-template-columns:minmax(0,1fr)}
.ls-lmpage .ls-hero__content{max-width:none}
.ls-lmh--page .ls-hero__title{font-size:clamp(30px,3.1vw,46px);line-height:1.08;max-width:16em}
.ls-lmh--page .ls-hero__subtitle{margin-top:20px;max-width:34em;font-size:clamp(16.5px,1.25vw,18.5px);color:var(--ls-muted)}
.ls-lmh__checks{margin-top:24px;gap:10px}
.ls-lmh__checks li{font-size:.97rem}
.ls-lmh__checks .ls-icon{background:var(--lm-sky);color:var(--lm-blue-ink)}
.ls-lmpage__aside{position:relative;padding-bottom:88px}
.ls-lmpage__aside--card{padding-bottom:0}
.ls-lmpage__photo{margin:0;border-radius:28px;overflow:hidden;aspect-ratio:4 / 3;background:var(--lm-sky-2);box-shadow:0 40px 80px -44px color-mix(in srgb,var(--ls-primary) 40%,#0000)}
.ls-lmpage__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--lm-focus,50% 50%)}
.ls-lmprice{position:relative;padding:22px 24px 20px;border-radius:24px;background:#fff;box-shadow:var(--lm-sh-float),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 4%,#0000)}
.ls-lmpage__photo + .ls-lmprice{position:absolute;left:-28px;bottom:0;width:min(330px,62%);padding:18px 20px 16px}
.ls-lmpage__photo + .ls-lmprice .ls-lmprice__rows li{padding:7px 0;font-size:.875rem;line-height:1.35}
.ls-lmpage__photo + .ls-lmprice .ls-btn.ls-lmprice__book{margin-top:12px;min-height:44px}
.ls-lmprice__title{margin:0;font:600 1rem/1.3 var(--ls-font-head);color:var(--ls-text)}
.ls-lmprice__rows{list-style:none;margin:6px 0 0;padding:0}
.ls-lmprice__rows li{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:9px 0;border-top:1px solid var(--lm-line-soft);font-size:.92rem;color:var(--ls-muted)}
.ls-lmprice__rows li:first-child{border-top:0}
.ls-lmprice__rows b{font-weight:600;color:var(--ls-text);white-space:nowrap;font-variant-numeric:tabular-nums}
.ls-lmprice__one b{font:700 1.6rem/1.2 var(--ls-font-head);white-space:normal}
.ls-lmprice__one b small{font-size:.6em;font-weight:500;color:var(--ls-muted)}
.ls-btn.ls-lmprice__book{width:100%;margin-top:14px;min-height:48px}
.ls-lmprice__note{margin:10px 0 0;font-size:.8rem;line-height:1.45;color:var(--lm-ink-3)}
/* a list right under the page head (/tsiny/): no second section gap */
.ls-lmh--page + .ls-sp--compact{padding-top:0}
@media (max-width:959px){
  .ls-lmpage{grid-template-columns:minmax(0,1fr)}
  .ls-lmpage__aside{max-width:560px}
  .ls-lmpage__photo + .ls-lmprice{width:min(330px,70%)}
}
@media (max-width:640px){
  .ls-lmpage__aside{padding-bottom:0}
  .ls-lmpage__photo{aspect-ratio:3 / 2}
  .ls-lmpage__photo + .ls-lmprice{position:relative;left:auto;width:auto;margin:-40px 12px 0}
}

/* --- stats "band": a white panel, the first figure large, the others in ruled columns */
.ls-lmband{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.5fr);grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;
  padding:40px 44px;border-radius:var(--lm-r-xl);background:var(--lm-card);box-shadow:inset 0 0 0 1px var(--lm-line)}
.ls-lmband__lead{display:flex;align-items:center;gap:18px;padding-right:28px;min-width:0}
.ls-lmband__big{margin:0;font:700 96px/.85 var(--ls-font-head);letter-spacing:-.04em;color:var(--lm-blue-ink);font-variant-numeric:lining-nums;white-space:nowrap}
.ls-lmband__label{margin:0;font-size:1.06rem;line-height:1.4;color:var(--ls-text);max-width:12em}
.ls-lmband__label .ls-lmband__note{display:block;margin-top:6px;font-size:.875rem;color:var(--lm-ink-3)}
.ls-lmband__stats{display:contents;margin:0}
.ls-lmband__stat{display:flex;flex-direction:column;align-self:stretch;justify-content:flex-start;min-width:0;padding:6px 0 4px 28px;border-left:1px solid var(--lm-line)}
.ls-lmband__stat dt{order:2;margin-top:10px;font-size:.9rem;line-height:1.4;color:var(--ls-muted)}
.ls-lmband__stat dt .ls-lmband__note{display:block;margin-top:4px;font-size:.78rem;line-height:1.4;color:var(--lm-ink-3)}
.ls-lmband__stat dd{margin:0;font:700 32px/1 var(--ls-font-head);letter-spacing:-.02em;color:var(--ls-text);white-space:nowrap;font-variant-numeric:lining-nums proportional-nums}
.ls-lmband .ls-hl{color:var(--lm-blue-ink);text-decoration:none}
@media (max-width:1240px){.ls-lmband__stat dd{font-size:28px}.ls-lmband__big{font-size:84px}}
@media (max-width:1120px){
  .ls-lmband{grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr));row-gap:28px}
  .ls-lmband__lead{grid-column:1 / -1;padding-right:0}
  .ls-lmband__stat:first-child{border-left:0;padding-left:0}
}
@media (max-width:760px){
  .ls-lmband{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px;padding:28px 20px;border-radius:var(--lm-r-lg)}
  .ls-lmband__big{font-size:76px}
  .ls-lmband__stat{padding-left:16px}
  .ls-lmband__stat:nth-child(odd){padding-left:0;border-left:0}
  .ls-lmband__stat dd{font-size:28px}
}
@media (max-width:359px){.ls-lmband__big{font-size:60px}.ls-lmband__stat dd{font-size:23px}.ls-lmband__lead{gap:12px}}

/* --- cards "bento": large photo tiles with a frosted card, small white tiles with prices */
.ls-lmb{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
.ls-lmb__tile{position:relative;display:flex;flex-direction:column;min-width:0;padding:26px 24px 22px;border-radius:var(--lm-r-lg);background:var(--lm-card);color:var(--ls-text);text-decoration:none;
  box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000);transition:box-shadow .25s}
a.ls-lmb__tile:hover{box-shadow:0 2px 4px color-mix(in srgb,var(--ls-primary) 5%,#0000),0 24px 46px -22px color-mix(in srgb,var(--ls-primary) 30%,#0000),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
a.ls-lmb__tile:focus-visible{outline:2px solid var(--ls-accent);outline-offset:3px}
.ls-lmb__title{margin:0;padding-right:40px;font:600 1.25rem/1.25 var(--ls-font-head);letter-spacing:-.015em;color:var(--ls-text)}
.ls-lmb__text{margin:8px 0 0;font-size:.9rem;line-height:1.5;color:var(--ls-muted)}
.ls-lmb__go{position:absolute;top:22px;right:22px;z-index:2;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--lm-act);color:#fff;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s}
.ls-lmb__go .ls-icon{width:16px;height:16px}
a.ls-lmb__tile:hover .ls-lmb__go,a.ls-lmb__tile:focus-visible .ls-lmb__go{opacity:1;transform:none}
.ls-lmb__tile--photo{grid-column:span 6;padding:0;overflow:hidden;min-height:480px;justify-content:flex-end;background:var(--lm-sky-2)}
.ls-lmb__tile--wide{grid-column:span 7}
.ls-lmb__tile--narrow{grid-column:span 5}
.ls-lmb--one .ls-lmb__tile--photo{grid-column:1 / -1}
.ls-lmb__tile--photo .ls-lmb__img,.ls-lmb__tile--photo picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ls-lmb__tile--photo .ls-lmtag{position:absolute;left:18px;top:18px;z-index:1}
.ls-lmb__tile--photo .ls-lmb__go{top:18px;right:18px}
.ls-lmb__glass{position:relative;z-index:1;display:flex;flex-direction:column;max-width:400px;min-height:164px;margin:16px;padding:18px 20px 8px;border-radius:20px;
  background:color-mix(in srgb,#fff 94%,#0000);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 80%,#0000),0 18px 40px -24px color-mix(in srgb,var(--ls-primary) 45%,#0000)}
.ls-lmb__glass .ls-lmb__text{margin-top:4px}
.ls-lmb__glass .ls-lmprices{padding-top:10px}
.ls-lmb__glass .ls-lmprices li{padding:8px 0}
.ls-lmb__glass .ls-lmprices li:last-child{padding-bottom:6px}
.ls-lmb__row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ls-lmb__row[data-n="1"]{grid-template-columns:minmax(0,1fr)}
.ls-lmb__row[data-n="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.ls-lmb__row[data-n="3"],.ls-lmb__row[data-n="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.ls-lmb__tile--small{min-height:250px}
.ls-lmb--compact{gap:16px}
/* a catalogue split into groups: the group kicker sits close to its tiles, consecutive groups share one gap */
.ls-lmhead:has(+ .ls-lmb--compact){margin-bottom:14px}
.ls-lmhead:has(+ .ls-lmb--compact) .ls-eyebrow{margin-bottom:0}
.ls-block:has(.ls-lmb--compact) + .ls-block:has(.ls-lmb--compact){padding-top:0}
.ls-lmb--compact .ls-lmb__row{gap:16px}
.ls-lmb--compact .ls-lmb__tile--small{min-height:0;padding:20px 20px 16px}
.ls-lmb--compact .ls-lmb__title{font-size:1.06rem}
.ls-lmb--compact .ls-lmb__text{font-size:.875rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
.ls-lmb--compact .ls-lmprices{padding-top:12px}
.ls-lmb--compact .ls-lmprices li{padding:7px 0 0}
.ls-lmb--compact .ls-lmb__go{top:16px;right:16px;width:30px;height:30px}
@media (max-width:1120px){
  .ls-lmb__tile--photo,.ls-lmb__tile--wide,.ls-lmb__tile--narrow{grid-column:1 / -1}
  .ls-lmb__row,.ls-lmb__row[data-n]{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ls-lmb__row[data-n="1"]{grid-template-columns:minmax(0,1fr)}
  .ls-lmb__tile--small{min-height:0}
}
@media (max-width:760px){
  .ls-lmb{gap:14px}
  .ls-lmb__tile--photo{min-height:430px}
  .ls-lmb__glass{margin:10px;padding:16px 16px 6px;min-height:0}
  .ls-lmb__go{display:none}
  .ls-lmb__row,.ls-lmb__row[data-n]{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
    margin-inline:calc(-1 * var(--ls-gutter));padding:4px var(--ls-gutter) 10px;scroll-padding-inline:var(--ls-gutter)}
  .ls-lmb__row[data-n="1"]{grid-auto-columns:100%}
  .ls-lmb__row::-webkit-scrollbar{display:none}
  .ls-lmb__row > *{scroll-snap-align:start}
  .ls-lmb__tile--small{min-height:230px}
}

/* --- features "reasons": head and a person card on the left (sticky), big words + rows on the right */
.ls-lmr{display:grid;grid-template-columns:minmax(0,4.2fr) minmax(0,7.8fr);gap:72px;align-items:start}
.ls-lmr__side{position:sticky;top:calc(var(--ls-header-h) + 40px);align-self:start}
.ls-lmr__side .ls-head{margin-bottom:0}
.ls-lmr__person{display:grid;grid-template-columns:200px minmax(0,1fr);gap:22px;align-items:end;margin:40px 0 0}
.ls-lmr__photo{width:200px;height:250px;border-radius:20px;overflow:hidden;background:var(--lm-sky)}
.ls-lmr__photo img{display:block;width:100%;height:100%;object-fit:cover}
.ls-lmr__person figcaption{padding-bottom:4px;min-width:0}
.ls-lmr__name{display:block;font-weight:500;font-size:1.06rem;line-height:1.3;color:var(--ls-text)}
.ls-lmr__role{display:block;margin-top:2px;font-size:.875rem;line-height:1.4;color:var(--lm-ink-3)}
.ls-lmr__quote{display:block;margin-top:14px;padding-top:14px;border-top:1px solid var(--lm-line);font-size:.94rem;line-height:1.5;color:var(--ls-muted);quotes:'"' '"'}
.ls-lmr__list{list-style:none;margin:0;padding:0}
.ls-lmr__item{display:grid;grid-template-columns:184px minmax(0,1fr);gap:28px;align-items:baseline;padding:26px 0;border-top:1px solid var(--lm-line)}
.ls-lmr__item:last-child{border-bottom:1px solid var(--lm-line)}
.ls-lmr__tok{margin:0;font:700 40px/1 var(--ls-font-head);letter-spacing:-.03em;color:var(--lm-blue-ink);white-space:nowrap;font-variant-numeric:lining-nums proportional-nums}
.ls-lmr__tok--alt{color:var(--lm-plum)}
.ls-lmr__title{margin:0;font:500 1.25rem/1.3 var(--ls-font-head);letter-spacing:-.01em;color:var(--ls-text)}
.ls-lmr__text{margin:6px 0 0;max-width:34em;font-size:.97rem;color:var(--ls-muted)}
@media (max-width:1120px){
  .ls-lmr{grid-template-columns:minmax(0,1fr);gap:40px}
  .ls-lmr__side{position:static}
}
@media (max-width:760px){
  .ls-lmr__item{grid-template-columns:minmax(0,1fr);gap:8px;padding:22px 0}
  .ls-lmr__tok{font-size:34px;white-space:normal}
  .ls-lmr__title{font-size:1.12rem}
  .ls-lmr__text{font-size:.94rem}
  .ls-lmr__person{grid-template-columns:136px minmax(0,1fr);gap:16px;margin-top:28px}
  .ls-lmr__photo{width:136px;height:170px;border-radius:16px}
  .ls-lmr__quote{font-size:.875rem;margin-top:10px;padding-top:10px}
}

/* --- testimonials "google": the rating card, then quoted reviews */
.ls-lmrv{display:grid;grid-template-columns:minmax(0,3.6fr) repeat(3,minmax(0,2.8fr));gap:20px;align-items:stretch}
.ls-lmrv__row{display:contents}
.ls-lmrate{display:flex;flex-direction:column;align-items:flex-start;padding:28px;border-radius:var(--lm-r-lg);background:var(--lm-card);box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-lmrate__src{margin:0;font-size:.84rem;color:var(--lm-ink-3)}
.ls-lmrate__count{margin:14px 0 0;font:700 28px/1.15 var(--ls-font-head);letter-spacing:-.02em;color:var(--ls-text)}
.ls-lmrate__score{display:inline-flex;align-items:center;gap:6px;margin:14px 0 0;padding:5px 12px;border-radius:999px;background:var(--lm-sky);color:var(--lm-blue-ink);font-size:.94rem;font-weight:600}
.ls-lmrate__score .ls-icon{width:14px;height:14px;fill:currentColor;stroke-width:1}
.ls-lmrate__text{margin:14px 0 0;font-size:.9rem;color:var(--ls-muted)}
.ls-lmrate .ls-btns{flex-direction:column;align-items:stretch;gap:8px;width:100%;margin-top:auto;padding-top:22px}
.ls-lmrate .ls-btn{min-height:40px;padding:0 16px}
.ls-lmrv .ls-quote{padding:26px;border:0;border-radius:var(--lm-r-lg);background:var(--lm-card);box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-lmrv .ls-quote__mark{display:none}
.ls-lmrv .ls-stars{margin-bottom:0;color:var(--ls-text);opacity:.8}
.ls-lmrv .ls-stars .ls-icon{width:12px;height:12px}
.ls-lmrv .ls-quote__text{margin-top:14px;font-size:1rem;line-height:1.55;color:var(--ls-text)}
.ls-lmrv .ls-quote__author{margin-top:auto;padding-top:18px;border-top:0;font-size:.84rem}
.ls-lmrv .ls-quote__photo{display:none}
.ls-lmrv .ls-quote__name{font:400 .84rem/1.3 var(--ls-font-body);color:var(--lm-ink-3)}
.ls-lmrv--solo{display:block}
.ls-lmrv--solo .ls-lmrate,.ls-lmrv:not(.ls-lmrv--solo) .ls-lmrate{min-width:0}
.ls-lmrv--solo .ls-lmrate{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px 24px}
.ls-lmrv--solo .ls-lmrate__src{grid-column:1 / -1}
.ls-lmrv--solo .ls-lmrate__count,.ls-lmrv--solo .ls-lmrate__score,.ls-lmrv--solo .ls-lmrate__text{margin:0}
.ls-lmrv--solo .ls-lmrate .ls-btns{grid-column:1 / -1;flex-direction:row;flex-wrap:wrap;width:auto;margin-top:0;padding-top:6px}
@media (max-width:1240px){
  .ls-lmrv{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ls-lmrv .ls-lmrate{grid-column:1 / -1;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px 24px}
  .ls-lmrv .ls-lmrate__src{grid-column:1 / -1}
  .ls-lmrv .ls-lmrate__count,.ls-lmrv .ls-lmrate__score,.ls-lmrv .ls-lmrate__text{margin:0}
  .ls-lmrv .ls-lmrate .ls-btns{grid-column:1 / -1;flex-direction:row;flex-wrap:wrap;width:auto;margin-top:0;padding-top:6px}
}
@media (max-width:760px){
  .ls-lmrv{display:flex;flex-direction:column;gap:14px}
  .ls-lmrv .ls-lmrate,.ls-lmrv--solo .ls-lmrate{display:flex;flex-direction:column;align-items:flex-start}
  .ls-lmrv .ls-lmrate__count{margin-top:12px;font-size:26px}
  .ls-lmrv .ls-lmrate__score,.ls-lmrv .ls-lmrate__text{margin-top:12px}
  .ls-lmrv .ls-lmrate .ls-btns{flex-direction:column;width:100%;padding-top:16px}
  .ls-lmrv .ls-lmrate .ls-btn{min-height:44px}
  .ls-lmrv__row{display:grid;grid-auto-flow:column;grid-auto-columns:84%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
    margin-inline:calc(-1 * var(--ls-gutter));padding:0 var(--ls-gutter) 8px;scroll-padding-inline:var(--ls-gutter)}
  .ls-lmrv__row::-webkit-scrollbar{display:none}
  .ls-lmrv__row > *{scroll-snap-align:start}
}
/* --- FAQ: "checked by a doctor" card under the head (columns layout) */
.ls-faq-side .ls-head{margin-bottom:0}
@media (min-width:960px){.ls-faq-split > .ls-faq-side{position:sticky;top:calc(var(--ls-header-h) + 32px)}}
/* --- FAQ: «Не знайшли відповіді?» card under the head */
.ls-lmask{max-width:360px;margin-top:28px;padding:20px 22px;border-radius:20px;background:var(--lm-sky)}
.ls-lmask__title{margin:0;font:600 1rem/1.3 var(--ls-font-head);color:var(--ls-text)}
.ls-lmask__text{margin:6px 0 0;font-size:.9rem;line-height:1.5;color:var(--ls-muted)}
.ls-lmask .ls-btns{margin-top:14px;gap:8px}
@media (max-width:959px){.ls-lmask{max-width:none}}
/* --- contacts "photo": address, hours and phone on the left, a photo with a route card on the right */
.ls-lmct{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px;align-items:stretch}
.ls-lmct__info{display:flex;flex-direction:column;align-items:flex-start;gap:26px;min-width:0}
.ls-lmct__info > *{margin:0}
.ls-lmct__info .ls-btns{margin-top:0;gap:10px}
.ls-lmct__addr{font-size:24px;font-weight:400;letter-spacing:-.015em;line-height:1.3;color:var(--ls-text)}
.ls-lmct__addr span{display:block;margin-top:6px;font-size:.94rem;letter-spacing:0;color:var(--lm-ink-3)}
.ls-lmct__hours{display:grid;grid-template-columns:auto 1fr;gap:6px 24px;font-size:.97rem}
.ls-lmct__hours dt{color:var(--ls-muted)}
.ls-lmct__hours dd{margin:0;font-weight:500;color:var(--ls-text)}
.ls-lmct__hours-txt{color:var(--ls-muted)}
.ls-lmct__phone{font-size:28px;font-weight:400;letter-spacing:-.01em;line-height:1.3}
.ls-lmct__phone small{display:block;font-size:.875rem;letter-spacing:0;color:var(--lm-ink-3)}
.ls-lmct__phone a{color:var(--ls-text);text-decoration:none}
.ls-lmct__phone a:hover{color:var(--lm-blue-ink)}
.ls-lmct__visual{position:relative;margin:0;border-radius:var(--lm-r-xl);overflow:hidden;aspect-ratio:4 / 3;background:var(--lm-sky-2)}
.ls-lmct__visual > img,.ls-lmct__visual > picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.ls-lmct__card{position:absolute;left:20px;right:20px;bottom:20px;display:flex;align-items:center;gap:14px;padding:14px 14px 14px 16px;border-radius:20px;
  background:color-mix(in srgb,#fff 95%,#0000);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);box-shadow:var(--lm-sh-float);color:var(--ls-text)}
.ls-lmct__card--solo{position:relative;left:auto;right:auto;bottom:auto;align-self:center}
.ls-lmct__mark{flex:none;width:44px;height:auto;max-height:44px;object-fit:contain}
.ls-lmct__card-txt{flex:1;min-width:0}
.ls-lmct__card-txt b{display:block;font-size:.97rem;font-weight:500;line-height:1.3}
.ls-lmct__card-txt span{display:block;font-size:.84rem;line-height:1.35;color:var(--lm-ink-3)}
.ls-btn.ls-lmct__route{flex:none;gap:8px}
.ls-lmct__route .ls-icon{width:16px;height:16px}
@media (max-width:1120px){.ls-lmct{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){
  .ls-lmct__addr{font-size:21px}
  .ls-lmct__info .ls-btns{width:100%}
  .ls-lmct__info .ls-btns .ls-btn{flex:1 1 100%}
  .ls-lmct__visual{aspect-ratio:4 / 5;border-radius:var(--lm-r-lg)}
  .ls-lmct__visual > img,.ls-lmct__visual > picture img{object-position:58% 50%}
  .ls-lmct__card{left:10px;right:10px;bottom:10px;flex-wrap:wrap;padding:14px}
  .ls-lmct__card .ls-btn{flex:1 1 100%;min-height:46px}
}

/* --- name and tagline beside the logo (header.logo_text) */
.ls-logo--text{gap:12px;text-decoration:none}
.ls-logo__brand{display:flex;flex-direction:column;min-width:0}
.ls-logo__name{font:500 1.12rem/1.15 var(--ls-font-body);letter-spacing:-.015em;color:var(--_head);overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual}
.ls-logo__tagline{margin-top:3px;font-size:.78rem;line-height:1.3;color:var(--_muted)}
.ls-logo--text .ls-logo__img{flex:none;width:auto;height:48px;max-width:none}
.ls-footer__logo.ls-logo--text{gap:12px}
.ls-footer__logo.ls-logo--text img{height:48px}
.ls-footer__logo .ls-logo__name{color:var(--ls-on-primary)}
.ls-footer__logo .ls-logo__tagline{color:color-mix(in srgb,var(--ls-on-primary) 55%,#0000)}
@media (max-width:760px){
  .ls-header .ls-logo--text{gap:8px}
  .ls-header .ls-logo--text .ls-logo__img{height:38px}
  .ls-header .ls-logo__name{font-size:.9rem;line-height:1.12;max-width:7em}
  .ls-header .ls-logo__tagline{display:none}
}

/* ============================================================== B. skin body.ls-skin--lightmed */
body.ls-skin--lightmed{--ls-container:1248px;--ls-gutter:clamp(16px,4vw,48px);--ls-pad:clamp(64px,40px + 3.4vw,88px);--ls-header-h:80px;font-size:1rem;line-height:1.6}
@media (min-width:1200px){body.ls-skin--lightmed{font-size:1.03rem}}
@media (max-width:1199px){body.ls-skin--lightmed{--ls-header-h:68px}}
body.ls-skin--lightmed .ls-sp--compact{--ls-pad:clamp(36px,24px + 2.5vw,56px)}
body.ls-skin--lightmed .ls-sp--large{--ls-pad:clamp(88px,56px + 5vw,128px)}
body.ls-skin--lightmed :focus-visible{outline-color:var(--ls-accent)}
/* glow over the first screen */
.ls-skin--lightmed .ls-main > .ls-block:first-child.ls-bg--default:not(.ls-lmh){background:radial-gradient(1200px 520px at 28% -8%,color-mix(in srgb,var(--lm-sky-2) 60%,#0000),#0000 72%),var(--_bg)}

/* type: Montserrat headings, deep-blue kicker, quiet subtitles */
.ls-skin--lightmed .ls-title{font-weight:700;letter-spacing:-.022em;line-height:1.1}
.ls-skin--lightmed .ls-head .ls-title,.ls-skin--lightmed .ls-lmhead .ls-title{font-size:clamp(28px,2.8vw,40px)}
.ls-skin--lightmed h1.ls-title,.ls-skin--lightmed :where(.ls-h1-look) h2.ls-title{font-size:clamp(30px,3.4vw,50px);line-height:1.06}
.ls-skin--lightmed .ls-eyebrow{gap:0;margin-bottom:14px;font:600 .8rem/1.2 var(--ls-font-head);letter-spacing:.12em;color:var(--lm-blue-ink)}
.ls-skin--lightmed .ls-bg--dark .ls-eyebrow,.ls-skin--lightmed .ls-eyebrow:where(.ls-bg--dark *){color:var(--_mark)}
.ls-skin--lightmed .ls-eyebrow::before,.ls-skin--lightmed .ls-head--center .ls-eyebrow::after{display:none}
.ls-skin--lightmed .ls-subtitle{margin-top:12px;font-size:1rem;line-height:1.6;max-width:36em}
.ls-skin--lightmed .ls-head{margin-bottom:clamp(24px,2.6vw,36px)}
.ls-skin--lightmed .ls-hl,body.ls-skin--lightmed.ls-hl--color .ls-hl{text-decoration:none;color:var(--lm-blue-ink)}
.ls-skin--lightmed .ls-bg--dark .ls-hl,body.ls-skin--lightmed.ls-hl--color .ls-bg--dark .ls-hl{color:var(--ls-accent-on-dark)}
/* section heads sit on the left, as in the clinic design (the 404 page and photo CTAs stay centred) */
.ls-skin--lightmed .ls-head--center:not(.ls-hero--404 *,.ls-block--cta.ls-v--image *){margin-inline:0;text-align:left}
.ls-skin--lightmed .ls-head--center:not(.ls-hero--404 *,.ls-block--cta.ls-v--image *) .ls-subtitle{margin-inline:0}
.ls-skin--lightmed .ls-btns--center:not(.ls-hero--404 *,.ls-block--cta.ls-v--image *){justify-content:flex-start}
.ls-skin--lightmed .ls-hero__title{letter-spacing:-.022em}

/* buttons: pills, medium weight, the clinic blue a shade deeper; outline = frosted ghost */
.ls-skin--lightmed .ls-btn{gap:9px;min-height:48px;padding:10px 24px;font:500 .95rem/1.2 var(--ls-font-body);letter-spacing:0}
.ls-skin--lightmed .ls-btn--sm{min-height:40px;padding:8px 18px;font-size:.875rem}
.ls-skin--lightmed .ls-btn--lg{min-height:54px;padding:12px 30px}
.ls-skin--lightmed .ls-btn--primary{--_b-bg:var(--lm-act);--_b-fg:#fff;box-shadow:0 1px 2px color-mix(in srgb,var(--ls-primary) 12%,#0000)}
.ls-skin--lightmed .ls-btn--primary:hover{--_b-bg:var(--lm-act-h);box-shadow:0 2px 8px color-mix(in srgb,var(--ls-primary) 18%,#0000);transform:none}
.ls-skin--lightmed .ls-btn--secondary:hover{transform:none}
.ls-skin--lightmed .ls-btn--outline{--_b-bg:color-mix(in srgb,#fff 75%,#0000);--_b-fg:var(--ls-text);--_b-line:#0000;border:0;box-shadow:inset 0 0 0 1px var(--lm-line)}
.ls-skin--lightmed .ls-btn--outline:hover{--_b-bg:#fff;--_b-fg:var(--ls-text);box-shadow:inset 0 0 0 1px var(--lm-sky-2),var(--lm-sh-soft)}
.ls-skin--lightmed :is(.ls-bg--dark,.ls-bg--image,.ls-v--card .ls-cta) .ls-btn--outline{--_b-bg:#0000;--_b-fg:var(--ls-on-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ls-on-primary) 30%,#0000)}
.ls-skin--lightmed :is(.ls-bg--dark,.ls-bg--image,.ls-v--card .ls-cta) .ls-btn--outline:hover{--_b-bg:#0000;--_b-fg:var(--ls-on-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ls-on-primary) 70%,#0000)}
.ls-skin--lightmed .ls-btn--arrow::after{width:16px;height:16px}
.ls-skin--lightmed .ls-btns{gap:10px}

/* header: translucent pearl with blur, pill nav, phone, pill CTA */
/* the frosted glass is a pseudo-element: a backdrop-filter on the header itself would become the containing block of the
   fixed off-canvas menu (phones) and pin it inside the header */
body.ls-skin--lightmed .ls-header{--_bg:color-mix(in srgb,var(--ls-bg) 76%,#0000);background:none;border-bottom:1px solid color-mix(in srgb,var(--ls-text) 6%,#0000)}
body.ls-skin--lightmed .ls-header::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--_bg);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);pointer-events:none}
body.ls-skin--lightmed.ls-header--dark .ls-header{--_bg:color-mix(in srgb,var(--ls-primary) 92%,#0000)}
body.ls-skin--lightmed .ls-header.is-scrolled{box-shadow:0 10px 30px -22px color-mix(in srgb,var(--ls-primary) 45%,#0000)}
body.ls-skin--lightmed .ls-logo__img{height:48px}
body.ls-skin--lightmed .ls-header__phone{font:500 .94rem/1 var(--ls-font-body)}
body.ls-skin--lightmed .ls-header__phone .ls-icon{color:var(--ls-accent)}
body.ls-skin--lightmed .ls-header__cta.ls-btn{min-height:46px;padding:0 22px}
body.ls-skin--lightmed .ls-burger,body.ls-skin--lightmed .ls-header__call{width:46px;height:46px;border-radius:50%;background:color-mix(in srgb,#fff 80%,#0000);box-shadow:inset 0 0 0 1px var(--lm-line)}
body.ls-skin--lightmed .ls-burger span,body.ls-skin--lightmed .ls-burger::before,body.ls-skin--lightmed .ls-burger::after{left:13px;right:13px;height:1.6px}
body.ls-skin--lightmed .ls-header__call{margin-right:4px}
@media (min-width:1200px){
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-header__inner{gap:28px}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__list{gap:2px}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__link{min-height:40px;padding:8px 12px;border-radius:999px;font:500 .94rem/1.2 var(--ls-font-body);color:var(--ls-muted)}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__link:hover,body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item.is-open > .ls-nav__link{color:var(--ls-text);background:color-mix(in srgb,var(--ls-accent) 7%,#0000)}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__link[aria-current="page"],body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item.is-active > .ls-nav__link{color:var(--ls-text)}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item{display:flex;align-items:center;border-radius:999px;transition:background-color .2s}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__link .ls-nav__caret,body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__toggle .ls-nav__caret{width:14px;height:14px;stroke-width:2.2}
  body.ls-skin--lightmed:not(.ls-nav-compact) button.ls-nav__link{gap:4px}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item--has-sub > a.ls-nav__link{padding-right:2px}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__toggle{min-height:40px;margin:0;padding:0 12px 0 2px;border-radius:0 999px 999px 0;color:var(--ls-muted);font:500 .94rem/1.2 var(--ls-font-body)}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item--has-sub > .ls-nav__link:hover,body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item--has-sub.is-open > .ls-nav__link{background:none}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item--has-sub:hover,body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item--has-sub.is-open{background:color-mix(in srgb,var(--ls-accent) 7%,#0000)}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item--has-sub:hover > *,body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__item--has-sub.is-open > *{color:var(--ls-text)}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__sub{border-radius:20px;box-shadow:var(--lm-sh-float),inset 0 0 0 1px var(--lm-line-soft)}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-nav__sublink{border-radius:12px;font:500 .92rem/1.3 var(--ls-font-body)}
  body.ls-skin--lightmed:not(.ls-nav-compact) .ls-header__tools{gap:10px}
}
@media (max-width:1199px){
  body.ls-skin--lightmed .ls-header__inner{gap:8px}
  body.ls-skin--lightmed .ls-header__tools{gap:6px}
  body.ls-skin--lightmed .ls-header__cta.ls-btn{min-height:44px;padding:0 16px;font-size:.875rem}
  body.ls-skin--lightmed .ls-burger,body.ls-skin--lightmed .ls-header__call{width:44px;height:44px}
  body.ls-skin--lightmed .ls-header__call{order:2;margin:0}
  body.ls-skin--lightmed .ls-burger{order:3}
}
@media (max-width:767px){body.ls-skin--lightmed .ls-header__cta{display:inline-flex}}
/* phones: the language menu lives in the drawer (inline list), so the name beside the logo keeps its room */
@media (max-width:479px){body.ls-skin--lightmed .ls-header__tools .ls-lang{display:none}}
@media (max-width:359px){body.ls-skin--lightmed .ls-header__cta.ls-btn{padding:0 12px;font-size:.8rem}body.ls-skin--lightmed .ls-header .ls-logo__name{display:none}}
body.ls-skin--lightmed .ls-nav{border-radius:0}
body.ls-skin--lightmed.ls-header--light .ls-nav__link{font-family:var(--ls-font-body);font-weight:500}

/* sections: cards white with soft shadows, light sections sky, dark sections navy */
.ls-skin--lightmed .ls-card{border:0;border-radius:var(--lm-r-lg);background:var(--lm-card);box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-skin--lightmed .ls-bg--dark .ls-card{background:var(--_card);box-shadow:inset 0 0 0 1px var(--_card-line)}
.ls-skin--lightmed .ls-card:has(.ls-card__link):hover{transform:none;box-shadow:0 2px 4px color-mix(in srgb,var(--ls-primary) 5%,#0000),0 24px 46px -22px color-mix(in srgb,var(--ls-primary) 30%,#0000)}
.ls-skin--lightmed .ls-card__title{font-weight:600;letter-spacing:-.015em}
.ls-skin--lightmed .ls-card__icon{border-radius:14px;background:var(--lm-sky);color:var(--lm-blue-ink);border:0}
.ls-skin--lightmed .ls-card__more{color:var(--lm-blue-ink);font:500 .9rem/1.2 var(--ls-font-body)}
.ls-skin--lightmed .ls-hero__img,.ls-skin--lightmed .ls-media img{border-radius:28px}
.ls-skin--lightmed .ls-hero__media::before{display:none}
.ls-skin--lightmed .ls-bg--dark{background:radial-gradient(620px 460px at 88% 18%,color-mix(in srgb,var(--ls-accent) 42%,#0000),#0000 70%),var(--ls-primary)}
.ls-skin--lightmed .ls-checks .ls-icon{background:var(--lm-sky);color:var(--lm-blue-ink)}
.ls-skin--lightmed .ls-bg--dark .ls-checks .ls-icon{background:color-mix(in srgb,var(--ls-on-primary) 12%,#0000);color:var(--ls-on-primary)}

/* steps: white cards with a large number, no connectors */
.ls-skin--lightmed .ls-v--horizontal .ls-steps{gap:20px}
.ls-skin--lightmed .ls-v--horizontal .ls-step{padding:26px 24px 22px;border-radius:20px;background:var(--lm-card);box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-skin--lightmed .ls-v--horizontal .ls-step::before{display:none}
.ls-skin--lightmed .ls-v--horizontal .ls-step__marker{width:auto;height:auto;margin-bottom:14px;border:0;border-radius:0;background:none;justify-content:start}
.ls-skin--lightmed .ls-v--horizontal .ls-step__marker .ls-icon{display:none}
.ls-skin--lightmed .ls-v--horizontal .ls-step__num,.ls-skin--lightmed .ls-v--horizontal .ls-step__marker .ls-icon + .ls-step__num{position:static;min-width:0;height:auto;padding:0;border-radius:0;background:none;
  font:700 30px/1 var(--ls-font-head);color:var(--lm-blue-ink)}
.ls-skin--lightmed .ls-step__title{font:500 1.12rem/1.3 var(--ls-font-head)}
.ls-skin--lightmed .ls-step__text{font-size:.94rem}
@media (min-width:1100px){
  .ls-skin--lightmed .ls-v--horizontal .ls-steps:has(> :last-child:nth-child(5)){grid-auto-flow:row;grid-template-columns:repeat(6,minmax(0,1fr))}
  .ls-skin--lightmed .ls-v--horizontal .ls-steps:has(> :last-child:nth-child(5)) > *{grid-column:span 2}
  .ls-skin--lightmed .ls-v--horizontal .ls-steps:has(> :last-child:nth-child(5)) > :nth-child(n+4){grid-column:span 3}
}
@media (max-width:767px){
  .ls-skin--lightmed .ls-v--horizontal .ls-steps{gap:10px}
  .ls-skin--lightmed .ls-v--horizontal .ls-step{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;align-items:baseline;padding:18px;min-height:0;border-radius:16px}
  .ls-skin--lightmed .ls-v--horizontal .ls-step__marker{position:static;grid-row:1 / span 2;margin:0}
  .ls-skin--lightmed .ls-v--horizontal .ls-step__num{font-size:22px;min-width:1.4em}
  .ls-skin--lightmed .ls-step__title{padding-top:0;font-size:1.03rem}
  .ls-skin--lightmed .ls-step__text{grid-column:2;margin-top:6px}
}

/* FAQ: hairline rows, round toggles (sky, open = navy ×) */
.ls-skin--lightmed .ls-faq-split{gap:clamp(32px,5vw,72px)}
@media (min-width:960px){.ls-skin--lightmed .ls-faq-split{grid-template-columns:minmax(0,4.2fr) minmax(0,7.8fr)}}
.ls-skin--lightmed .ls-faq-split .ls-title{font-size:clamp(28px,2.8vw,40px)}
.ls-skin--lightmed .ls-v--columns .ls-faq,.ls-skin--lightmed .ls-faq--ruled{border-bottom:1px solid var(--lm-line)}
.ls-skin--lightmed :is(.ls-faq--ruled,.ls-v--columns .ls-faq) .ls-acc{border-top-color:var(--lm-line)}
.ls-skin--lightmed :is(.ls-faq--ruled,.ls-v--columns .ls-faq) .ls-acc__head{gap:20px;padding:22px 0}
.ls-skin--lightmed .ls-acc__q{font:400 1.19rem/1.4 var(--ls-font-body);letter-spacing:-.01em;color:var(--ls-text)}
.ls-skin--lightmed .ls-acc__toggle{width:36px;height:36px;border:0;background:var(--lm-sky)}
.ls-skin--lightmed .ls-acc__toggle::before,.ls-skin--lightmed .ls-acc__toggle::after{width:13px;margin-left:-6.5px;background:var(--lm-blue-ink)}
.ls-skin--lightmed .ls-bg--light .ls-acc__toggle{background:#fff}
.ls-skin--lightmed .ls-acc[open] .ls-acc__toggle{transform:rotate(45deg);background:var(--ls-primary)}
.ls-skin--lightmed .ls-acc[open] .ls-acc__toggle::before,.ls-skin--lightmed .ls-acc[open] .ls-acc__toggle::after{background:var(--ls-on-primary)}
.ls-skin--lightmed .ls-acc[open] .ls-acc__toggle::after{transform:rotate(90deg)}
.ls-skin--lightmed :is(.ls-faq--ruled,.ls-v--columns .ls-faq) .ls-acc__body{padding:0 56px 24px 0;max-width:40em;color:var(--ls-muted)}
.ls-skin--lightmed .ls-faq:not(.ls-faq--ruled) .ls-acc{border:0;border-radius:20px;background:var(--lm-card);box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-skin--lightmed .ls-v--columns .ls-faq .ls-acc{border:0;border-top:1px solid var(--lm-line);border-radius:0;background:none;box-shadow:none}
@media (max-width:760px){
  .ls-skin--lightmed .ls-acc__q{font-size:1.06rem}
  .ls-skin--lightmed :is(.ls-faq--ruled,.ls-v--columns .ls-faq) .ls-acc__head{padding:18px 0}
  .ls-skin--lightmed :is(.ls-faq--ruled,.ls-v--columns .ls-faq) .ls-acc__body{padding-right:0}
}

/* CTA: the navy panel with a blue glow (card), the band on navy */
.ls-skin--lightmed .ls-v--card .ls-cta{padding:clamp(36px,5vw,72px);border-radius:var(--lm-r-xl);background:radial-gradient(620px 460px at 88% 18%,color-mix(in srgb,var(--ls-accent) 42%,#0000),#0000 70%),var(--ls-primary);box-shadow:none}
.ls-skin--lightmed .ls-v--card .ls-cta::after{display:none}
.ls-skin--lightmed .ls-v--card .ls-cta .ls-btn--primary,.ls-skin--lightmed .ls-bg--dark .ls-cta .ls-btn--primary{--_b-bg:#fff;--_b-fg:var(--ls-primary)}
.ls-skin--lightmed .ls-v--card .ls-cta .ls-btn--primary:hover,.ls-skin--lightmed .ls-bg--dark .ls-cta .ls-btn--primary:hover{--_b-bg:var(--lm-sky)}
.ls-skin--lightmed .ls-cta__title{font-weight:700;letter-spacing:-.022em}
.ls-skin--lightmed .ls-block--cta.ls-v--band::before{display:none}
.ls-skin--lightmed .ls-cta__phone .ls-icon{border-color:color-mix(in srgb,currentColor 25%,#0000)}
@media (max-width:760px){.ls-skin--lightmed .ls-v--card .ls-cta{border-radius:var(--lm-r-lg);padding:32px 20px}.ls-skin--lightmed .ls-cta .ls-btns .ls-btn{flex:1 1 100%}}

/* testimonials (grid), forms, modal */
.ls-skin--lightmed .ls-quote{border:0;border-radius:var(--lm-r-lg);background:var(--lm-card);box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-skin--lightmed .ls-field__input{min-height:54px;border-radius:16px;border-color:var(--lm-line);background-color:#fff}
.ls-skin--lightmed select.ls-field__input{--_c:var(--lm-blue-ink)}
.ls-skin--lightmed input[type="date"].ls-field__input{position:relative;padding-right:52px;color:var(--ls-text);font-variant-numeric:tabular-nums;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23145E9A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='16' rx='3'/%3E%3Cpath d='M3 9.5h18M8 2.5v4M16 2.5v4'/%3E%3C/svg%3E") no-repeat right 18px center / 20px 20px}
.ls-skin--lightmed input[type="date"].ls-field__input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;margin:0;opacity:0;cursor:pointer}
.ls-skin--lightmed input[type="date"].ls-field__input::-webkit-datetime-edit{padding:0}
.ls-skin--lightmed .ls-field__input:focus{border-color:var(--ls-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ls-accent) 18%,#0000)}
.ls-skin--lightmed textarea.ls-field__input{min-height:110px}
.ls-skin--lightmed .ls-modal__dialog{border-radius:28px}
.ls-skin--lightmed .ls-modal__dialog::before{display:none}
.ls-skin--lightmed .ls-form-card{border:0;border-radius:var(--lm-r-lg);background:var(--lm-card);box-shadow:var(--lm-sh-float)}
@media (max-width:559px){.ls-skin--lightmed .ls-modal__dialog{border-radius:24px 24px 0 0}}

/* breadcrumbs bar on pages without a hero */
.ls-skin--lightmed .ls-breadcrumbs-bar{background:var(--ls-bg);border-bottom:0}
.ls-skin--lightmed .ls-breadcrumbs{font-size:.84rem}

/* footer: navy, white titles in the body face, quiet links */
.ls-skin--lightmed .ls-footer{--_muted:color-mix(in srgb,var(--ls-on-primary) 66%,#0000);font-size:.9rem}
.ls-skin--lightmed .ls-footer::before{display:none}
.ls-skin--lightmed .ls-footer__top{gap:40px;padding-block:64px 48px}
@media (min-width:960px){.ls-skin--lightmed .ls-footer__top{grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2.6fr))}}
.ls-skin--lightmed .ls-footer__logo{margin-bottom:0}
.ls-skin--lightmed .ls-footer__text{max-width:30em;margin-top:18px;line-height:1.55}
.ls-skin--lightmed .ls-footer__title{margin-bottom:14px;font:500 .875rem/1.3 var(--ls-font-body);letter-spacing:0;text-transform:none;color:var(--ls-on-primary)}
.ls-skin--lightmed .ls-footer__links{gap:0}
.ls-skin--lightmed .ls-footer__links a{min-height:32px;color:var(--_muted)}
.ls-skin--lightmed .ls-footer__links a:hover,.ls-skin--lightmed .ls-footer__links a[aria-current="page"]{color:var(--ls-on-primary)}
.ls-skin--lightmed .ls-footer .ls-contact-list{gap:9px}
.ls-skin--lightmed .ls-footer .ls-contact__icon,.ls-skin--lightmed .ls-footer .ls-contact__label{display:none}
.ls-skin--lightmed .ls-footer .ls-contact__value{font-weight:400;color:var(--_muted)}
.ls-skin--lightmed .ls-footer a.ls-contact__value:hover{color:var(--ls-on-primary)}
.ls-skin--lightmed .ls-footer .ls-contact__sub{color:var(--_muted)}
.ls-skin--lightmed .ls-footer__bottom{padding-block:22px 28px;border-top-color:color-mix(in srgb,var(--ls-on-primary) 10%,#0000);font-size:.8rem}
@media (max-width:959px){.ls-skin--lightmed .ls-footer__links a{min-height:44px}}
@media (max-width:760px){.ls-skin--lightmed .ls-footer__top{gap:28px;padding-block:48px 32px}}

/* floating button: smaller and softer on desktop; phones and tablets use the header's phone and «Записатися» */
.ls-skin--lightmed .ls-float__btn{box-shadow:var(--lm-sh-float)}
.ls-skin--lightmed .ls-float__toggle{width:52px;height:52px;box-shadow:0 10px 24px -12px color-mix(in srgb,var(--ls-accent) 60%,#0000)}
.ls-skin--lightmed .ls-float__toggle .ls-icon{width:22px;height:22px}
.ls-skin--lightmed .ls-float{bottom:calc(20px + env(safe-area-inset-bottom))}
@media (max-width:767px){.ls-skin--lightmed .ls-float{display:none}}
/* social pills and floating menu items in the body face, like every other button */
.ls-skin--lightmed .ls-social,.ls-skin--lightmed .ls-float__item{font:500 .9rem/1 var(--ls-font-body)}

/* ============================================================== C. LightSite additions (2026-10, docs/reports/dental-premium.md) */
/* --- team "doctors": field chips + arrows, then a scroll-snap row (layout row) or a grid of 4:5 portrait cards */
.ls-lmdocs__tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}
.ls-lmdocs__tools .ls-lmarrows,.ls-lmhead > .ls-lmarrows{margin-left:auto}
.ls-lmhead > .ls-btns + .ls-lmarrows{margin-left:0}
.ls-lmarrows[hidden],.ls-lmchips[hidden]{display:none}
.ls-lmdocs{list-style:none;margin:0;padding:0}
.ls-lmdocs--row{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3 * 24px) / 4);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;scroll-behavior:smooth;overscroll-behavior-x:contain}
.ls-lmdocs--row::-webkit-scrollbar{display:none}
.ls-lmdocs--grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:44px 24px}
.ls-lmdocs > li{display:flex;min-width:0;scroll-snap-align:start}
.ls-lmdocs > li[hidden]{display:none}
.ls-lmdoc{display:flex;flex-direction:column;width:100%;margin:0}
.ls-lmdoc__photo{position:relative;aspect-ratio:4 / 5;border-radius:var(--lm-r-lg);overflow:hidden;background:linear-gradient(165deg,var(--lm-sky),var(--lm-sky-2))}
.ls-lmdoc__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform .6s var(--lm-ease)}
.ls-lmdoc:hover .ls-lmdoc__photo img{transform:scale(1.03)}
.ls-lmdoc__initials{display:grid;place-items:center;width:100%;height:100%;font:700 2.4rem/1 var(--ls-font-head);color:var(--lm-blue-ink)}
.ls-lmdoc__badge{position:absolute;left:12px;top:12px;z-index:1;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;
  background:color-mix(in srgb,#fff 90%,#0000);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font:500 .76rem/1.3 var(--ls-font-body);color:var(--ls-text)}
.ls-lmdoc__badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ls-accent)}
.ls-lmdoc__body{flex:1;display:flex;flex-direction:column;padding:16px 0 0}
.ls-lmdoc__name{margin:0;font:600 1.12rem/1.3 var(--ls-font-head);letter-spacing:-.01em;color:var(--ls-text)}
.ls-lmdoc__pos{margin:6px 0 0;font-size:.875rem;line-height:1.45;color:var(--ls-muted)}
.ls-lmdoc__facts{list-style:none;margin:6px 0 0;padding:0;font-size:.8rem;line-height:1.55;color:var(--lm-ink-3)}
.ls-lmdoc__bio{margin:12px 0 0;font-size:.9rem;line-height:1.55;color:var(--ls-muted)}
.ls-lmdoc__actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid var(--lm-line-soft)}
.ls-lmdoc__body > :not(.ls-lmdoc__actions):has(+ .ls-lmdoc__actions){margin-bottom:14px}
.ls-lmdoc__more{display:inline-flex;align-items:center;gap:6px;font-size:.84rem;font-weight:500;color:var(--lm-blue-ink);text-decoration:none}
.ls-lmdoc__more .ls-icon{width:15px;height:15px;transition:transform .2s var(--lm-ease)}
.ls-lmdoc__more:hover .ls-icon{transform:translateX(2px)}
.ls-btn.ls-lmdoc__book{--_b-bg:var(--lm-card);--_b-fg:var(--ls-text);width:auto;min-height:40px;margin-left:auto;padding:0 16px;border:0;border-radius:999px;
  box-shadow:inset 0 0 0 1px var(--lm-line);font:500 .9rem/1.2 var(--ls-font-body);letter-spacing:0;white-space:nowrap}
.ls-btn.ls-lmdoc__book:hover{--_b-bg:var(--lm-card);--_b-fg:var(--ls-text);box-shadow:inset 0 0 0 1px var(--ls-accent);transform:none}
.ls-lmdocs--grid .ls-lmdoc__photo{aspect-ratio:4 / 4.6}
@media (max-width:1120px){
  .ls-lmdocs--row{grid-auto-columns:calc((100% - 2 * 20px) / 3);gap:20px}
  .ls-lmdocs--grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:760px){
  .ls-lmdocs__tools{flex-direction:column;align-items:stretch;flex-wrap:nowrap}
  .ls-lmdocs__tools .ls-lmchips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;min-width:0;margin-inline:calc(-1 * var(--ls-gutter));padding-inline:var(--ls-gutter)}
  .ls-lmdocs__tools .ls-lmchips::-webkit-scrollbar{display:none}
  .ls-lmdocs__tools .ls-lmarrows,.ls-lmhead > .ls-lmarrows{display:none}
  .ls-lmchip{min-height:44px;flex:none}
  .ls-lmdocs--row{grid-auto-columns:72%;gap:14px;margin-inline:calc(-1 * var(--ls-gutter));padding-inline:var(--ls-gutter);scroll-padding-inline:var(--ls-gutter)}
  .ls-lmdocs--grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}
  .ls-lmdocs--grid .ls-lmdoc__photo{aspect-ratio:3 / 4;border-radius:16px}
  .ls-lmdocs--grid .ls-lmdoc__body{padding-top:12px}
  .ls-lmdocs--grid .ls-lmdoc__name{font-size:.97rem;line-height:1.25}
  .ls-lmdocs--grid .ls-lmdoc__pos{margin-top:4px;font-size:.8rem;line-height:1.35}
  .ls-lmdocs--grid .ls-lmdoc__bio,.ls-lmdocs--grid .ls-lmdoc__more{display:none}
  .ls-lmdocs--grid .ls-btn.ls-lmdoc__book{width:100%;min-height:44px;padding:0 10px;font-size:.84rem}
  .ls-lmdoc__badge{left:8px;top:8px;padding:4px 8px;font-size:.7rem}
  .ls-btn.ls-lmdoc__book{min-height:44px}
}

/* --- services_list "catalog": pill search + group chips, the count, rows in a white card, round book arrows */
.ls-lmpr__tools{display:flex;flex-wrap:wrap;align-items:center;gap:14px 16px;margin-bottom:16px}
.ls-lmpr__search{display:flex;align-items:center;flex:1 1 100%;min-height:58px;padding:0 22px;gap:12px;border-radius:999px;background:var(--lm-card);
  box-shadow:inset 0 0 0 1px var(--lm-line),var(--lm-sh-soft);color:var(--lm-ink-3);cursor:text;transition:box-shadow .2s}
.ls-lmpr__search[hidden],.ls-lmpr__more[hidden],.ls-lmpr__empty[hidden]{display:none}
.ls-lmpr__search:focus-within{box-shadow:inset 0 0 0 2px var(--ls-accent),var(--lm-sh-soft)}
.ls-lmpr__search .ls-icon{width:20px;height:20px;flex:none}
.ls-lmpr__input{flex:1;min-width:0;padding:12px 0;border:0;outline:0;background:#0000;font:inherit;font-size:1.06rem;color:var(--ls-text)}
.ls-lmpr__input::placeholder{color:color-mix(in srgb,var(--ls-muted) 80%,#fff);opacity:1}
.ls-lmpr__input::-webkit-search-cancel-button{cursor:pointer}
.ls-lmpr__meta{display:flex;justify-content:space-between;gap:12px;margin:0 0 12px;padding:0 6px;font-size:.84rem;color:var(--lm-ink-3)}
.ls-lmpr__card{padding:6px 12px;border-radius:var(--lm-r-lg);background:var(--lm-card);box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-lmpr__list{list-style:none;margin:0;padding:0}
.ls-lmpr__row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 150px;align-items:center;gap:6px 24px;padding:15px 16px;border-radius:14px;transition:background-color .2s}
.ls-lmpr__row[hidden]{display:none}
.ls-lmpr__row::before{content:"";position:absolute;left:16px;right:16px;top:0;border-top:1px solid var(--lm-line-soft)}
.ls-lmpr__row.is-first::before,.ls-lmpr__list > .ls-lmpr__row:first-child::before{display:none}
.ls-lmpr__row:hover{background:var(--lm-tint)}
.ls-lmpr__row:hover::before,.ls-lmpr__row:hover + .ls-lmpr__row::before{opacity:0}
.ls-lmpr__main{min-width:0}
.ls-lmpr__title{display:block;font-weight:500;font-size:1rem;line-height:1.35;color:var(--ls-text);overflow-wrap:anywhere}
.ls-lmpr__title mark{padding:0 1px;border-radius:3px;background:color-mix(in srgb,var(--ls-accent) 20%,#0000);color:inherit}
.ls-lmpr__dep{margin:3px 0 0;font-size:.8rem;line-height:1.35;color:var(--lm-ink-3)}
.ls-lmpr__price{font-weight:600;font-size:1rem;white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right;color:var(--ls-text)}
.ls-btn.ls-lmpr__book{--_b-bg:#0000;--_b-fg:#0000;justify-self:end;width:auto;min-height:40px;padding:0 44px 0 0;border:0;border-radius:999px;box-shadow:none;
  font:500 .875rem/1.2 var(--ls-font-body);letter-spacing:0;white-space:nowrap;transform:none;transition:color .2s}
.ls-btn.ls-lmpr__book::before{content:"";position:absolute;right:0;top:50%;width:32px;height:32px;margin-top:-16px;border-radius:50%;background:var(--lm-sky);transition:background-color .2s}
.ls-btn.ls-lmpr__book::after{content:"";position:absolute;right:8px;top:50%;width:16px;height:16px;margin-top:-8px;background:var(--lm-blue-ink);
  -webkit-mask:var(--ls-arrow) center / contain no-repeat;mask:var(--ls-arrow) center / contain no-repeat;transition:background-color .2s}
.ls-lmpr__row:hover .ls-btn.ls-lmpr__book,.ls-btn.ls-lmpr__book:focus-visible{--_b-fg:var(--lm-blue-ink)}
.ls-lmpr__row:hover .ls-btn.ls-lmpr__book::before,.ls-btn.ls-lmpr__book:focus-visible::before{background:var(--lm-act)}
.ls-lmpr__row:hover .ls-btn.ls-lmpr__book::after,.ls-btn.ls-lmpr__book:focus-visible::after{background:#fff}
.ls-btn.ls-lmpr__book:hover{--_b-bg:#0000;box-shadow:none;transform:none}
.ls-btn.ls-lmpr__book:focus-visible{outline:2px solid var(--ls-accent);outline-offset:3px}
.ls-lmpr__more{margin:4px -12px -6px;padding:14px 12px 16px;border-top:1px solid var(--lm-line-soft);text-align:center}
.ls-lmpr__more .ls-btn{width:auto;min-height:46px}
.ls-lmpr__empty{margin:16px 0 0;padding:20px;border-radius:var(--lm-r-lg);background:var(--lm-card);box-shadow:inset 0 0 0 1px var(--lm-line);color:var(--ls-muted);text-align:center}
.ls-lmpr__empty a{color:var(--lm-blue-ink);font-weight:600;white-space:nowrap}
@media (hover:none){.ls-btn.ls-lmpr__book{--_b-fg:var(--lm-blue-ink)}}
@media (scripting:none){.ls-lmpr__row[data-extra]{display:grid !important}}
@media (max-width:760px){
  .ls-lmpr__search{min-height:52px;padding:0 18px}
  .ls-lmpr__input{font-size:1rem}
  .ls-lmpr__chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--ls-gutter));padding-inline:var(--ls-gutter);width:calc(100% + 2 * var(--ls-gutter))}
  .ls-lmpr__chips::-webkit-scrollbar{display:none}
  .ls-lmpr__card{padding:4px 6px}
  .ls-lmpr__row{grid-template-columns:minmax(0,1fr) auto 32px;gap:4px 12px;padding:14px 10px}
  .ls-lmpr__row::before{left:10px;right:10px}
  .ls-lmpr__title{font-size:.97rem}
  .ls-btn.ls-lmpr__book{width:32px;min-height:44px;padding:0;overflow:hidden;--_b-fg:#0000 !important}
  .ls-lmpr__more{margin-inline:-6px}
}

/* --- contacts "photo": the click-to-load map under the two columns */
.ls-lmct__map{margin-top:28px}
.ls-lmct__map .ls-map{min-height:0;height:clamp(260px,26vw,360px);border-radius:var(--lm-r-xl);overflow:hidden}
@media (max-width:760px){.ls-lmct__map{margin-top:20px}.ls-lmct__map .ls-map{height:280px;border-radius:var(--lm-r-lg)}}

/* --- skin: the price card of the "page" hero and the request card stay readable on dark sections */
.ls-skin--lightmed .ls-bg--dark .ls-lmcard,.ls-skin--lightmed .ls-bg--dark .ls-lmprice{color:var(--ls-text)}

/* --- polish (2026-10): pressed controls give a short tactile response */
.ls-lmchip,.ls-lmcard__tab,.ls-lmcard__day,.ls-lmcard__time,.ls-lmarrow{transition:background-color .2s,color .2s,box-shadow .2s,transform .16s var(--lm-ease)}
.ls-lmchip:active,.ls-lmcard__tab:active,.ls-lmcard__day:active,.ls-lmcard__time:active,.ls-lmarrow:active:not(:disabled){transform:scale(.96)}
.ls-skin--lightmed .ls-btn:active:not(:disabled){transform:scale(.97);transition-duration:.12s}
a.ls-lmb__tile:active{transform:scale(.99)}
a.ls-lmb__tile{transition:box-shadow .25s,transform .2s var(--lm-ease)}
@media (prefers-reduced-motion:reduce){
  .ls-lmchip:active,.ls-lmcard__tab:active,.ls-lmcard__day:active,.ls-lmcard__time:active,.ls-lmarrow:active,.ls-skin--lightmed .ls-btn:active,a.ls-lmb__tile:active{transform:none}
}

/* --- team "doctors" with one or two doctors: wide horizontal cards (photo left, text right) */
.ls-lmdocs--wide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.ls-lmdocs--wide:has(> li:only-child){grid-template-columns:minmax(0,860px)}
.ls-lmdocs--wide .ls-lmdoc{flex-direction:row;align-items:stretch;border-radius:var(--lm-r-lg);overflow:hidden;background:var(--lm-card);
  box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-lmdocs--wide .ls-lmdoc__photo{flex:0 0 clamp(180px,34%,280px);aspect-ratio:auto;min-height:320px;border-radius:0}
.ls-lmdocs--wide .ls-lmdoc__body{padding:26px 28px 22px}
.ls-lmdocs--wide .ls-lmdoc__name{font-size:1.3rem;line-height:1.25}
.ls-lmdocs--wide .ls-lmdoc__pos{font-size:.94rem}
.ls-lmdocs--wide .ls-lmdoc__facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.ls-lmdocs--wide .ls-lmdoc__facts li{padding:4px 10px;border-radius:999px;background:var(--lm-sky);color:var(--lm-blue-ink);font-size:.8rem}
.ls-lmdocs--wide .ls-lmdoc__bio{font-size:.94rem}
.ls-lmdocs--wide .ls-lmdoc__actions{justify-content:flex-start;border-top:0;padding-top:18px}
.ls-lmdocs--wide .ls-btn.ls-lmdoc__book{margin-left:0}
@media (max-width:959px){.ls-lmdocs--wide{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){
  .ls-lmdocs--wide .ls-lmdoc{flex-direction:column}
  .ls-lmdocs--wide .ls-lmdoc__photo{flex:none;aspect-ratio:4 / 4.2;min-height:0}
  .ls-lmdocs--wide .ls-lmdoc__body{padding:18px}
  .ls-lmdocs--wide .ls-btn.ls-lmdoc__book{width:100%}
}

/* --- skin: feature tiles (grid) and the team schedule in the clinic look: white cards, light sky icon tiles */
.ls-skin--lightmed .ls-v--grid .ls-feature{border:0;border-radius:var(--lm-r-lg);background:var(--lm-card);box-shadow:var(--lm-sh-soft),inset 0 0 0 1px color-mix(in srgb,var(--ls-text) 5%,#0000)}
.ls-skin--lightmed .ls-v--grid .ls-feature__icon{border:0;border-radius:14px;background:var(--lm-sky);color:var(--lm-blue-ink)}
.ls-skin--lightmed .ls-bg--light .ls-v--grid .ls-feature__icon,.ls-skin--lightmed .ls-bg--light.ls-v--grid .ls-feature__icon{background:color-mix(in srgb,var(--lm-sky) 60%,#fff)}
.ls-skin--lightmed .ls-feature__title{font-weight:600;letter-spacing:-.01em}
/* doctors grid: a short last row is centred */
@media (min-width:1121px){
  .ls-lmdocs--grid{display:flex;flex-wrap:wrap;justify-content:center}
  .ls-lmdocs--grid > li{flex:0 0 calc((100% - 3 * 24px) / 4)}
}
@media (min-width:761px) and (max-width:1120px){
  .ls-lmdocs--grid{display:flex;flex-wrap:wrap;justify-content:center}
  .ls-lmdocs--grid > li{flex:0 0 calc((100% - 2 * 24px) / 3)}
}
/* Japanese tab labels (6 full-width letters) fit the four request card tabs */
html[lang="ja"] .ls-lmcard__tab{padding:0 2px;font-size:.78rem;letter-spacing:-.02em}
