/* Marketing landing only (body.lp-body pages: apex landing and /docs). */

body.lp-body{
  --dh-ink:#1F3F73; --dh-nav:#4A5B7A; --dh-muted:#68707F; --dh-faint:#7C8493;
  --dh-line:#F0E8D6; --dh-line-2:#E8E2D4; --dh-line-3:#EDE7D9; --dh-line-4:#EDE6D6; --dh-line-5:#E6E0D0;
  --dh-dot:#D6D2C6;
  --dh-yellow:#F9CB4C; --dh-yellow-hover:#F5C02F; --dh-yellow-active:#E9B21F; --dh-yellow-border:#F7C93F; --dh-yellow-bg-hover:#FEF6E0;
  --dh-warm-1:#FAEDC2; --dh-warm-2:#FCEFC6; --dh-warm-4:#FFFDF9;
  --dh-warm-text-2:#6B5A1E;
  --dh-badge-bg:#F0FAE1;
  font-family:'Mulish',system-ui,sans-serif;
}
body.lp-body{background:#FFFDF6;color:var(--dh-ink);font-family:'Mulish',system-ui,sans-serif;}
body.lp-body h1,body.lp-body h2,body.lp-body h3{font-family:'Mulish',system-ui,sans-serif;color:var(--dh-ink);}

.lp-eyebrow{display:inline-flex;align-items:center;border-radius:999px;padding:7px 14px;background:var(--dh-badge-bg);color:var(--dh-ink);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
.lp-eyebrow-light{background:rgba(255,255,255,.14);color:#fff;}
.lp-btn-lg{padding:15px 28px;font-size:16px;}

.lp-hero{display:flex;flex-wrap:wrap;gap:32px;align-items:center;padding:40px 0 32px;}
.lp-hero-text{flex:1 1 480px;min-width:0;}
.lp-hero h1{font-size:clamp(32px,3.6vw,52px);line-height:1.18;font-weight:900;letter-spacing:-.02em;margin:16px 0 16px;}
.lp-hero-lead{color:var(--dh-ink);font-weight:700;margin-bottom:14px!important;}
.lp-hero-sub{font-size:17px;line-height:1.55;color:var(--dh-muted);max-width:640px;margin:0 0 26px;}
.lp-hero-cta-row{display:flex;flex-wrap:wrap;gap:12px;}
.lp-trust-row{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:30px;}
.lp-trust-item{display:flex;gap:10px;align-items:flex-start;}
.lp-trust-item svg{flex-shrink:0;color:var(--dh-yellow-active);margin-top:2px;}
.lp-trust-item b{display:block;font-size:14px;font-weight:800;color:var(--dh-ink);}
.lp-trust-item span{font-size:13px;color:var(--dh-muted);}

.lp-hero-visual{flex:0 1 510px;max-width:510px;position:relative;padding:26px 90px 84px 0;}
.lp-browser{border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--dh-line-4);box-shadow:0 18px 40px rgba(60,48,20,.12);}
.lp-browser-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--dh-warm-4);border-bottom:1px solid var(--dh-line-4);}
.lp-browser-bar i{width:9px;height:9px;border-radius:50%;background:var(--dh-line-5);}
.lp-browser-bar span{margin-left:10px;flex:1;background:#fff;border:1px solid var(--dh-line-4);border-radius:999px;padding:4px 12px;font-size:11.5px;font-weight:600;color:var(--dh-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lp-browser-page{padding:16px 18px 20px;background:#FFFDF6;}
.lp-mini-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
.lp-mini-top b{font-size:12.5px;font-weight:800;color:var(--dh-ink);}
.lp-mini-top em{font-style:normal;font-size:11px;font-weight:800;color:var(--dh-ink);background:var(--dh-yellow);border-radius:999px;padding:5px 12px;}
.lp-mini-hero{display:flex;gap:14px;align-items:center;margin-bottom:16px;}
.lp-mini-ava{flex-shrink:0;width:64px;height:64px;border-radius:50%;background:var(--dh-warm-1);color:var(--dh-ink);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;}
.lp-mini-name{font-size:17px;font-weight:900;line-height:1.15;color:var(--dh-ink);margin-bottom:8px;}
.lp-mini-chips{display:flex;flex-wrap:wrap;gap:5px;}
.lp-mini-chips span{background:var(--dh-warm-2);color:var(--dh-ink);border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:700;}
.lp-mini-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;}
.lp-mini-facts>div{display:flex;flex-direction:column;align-items:flex-start;gap:1px;background:#fff;border:1px solid var(--dh-line-4);border-radius:12px;padding:9px 10px;}
.lp-mini-facts svg{width:15px;height:15px;color:var(--dh-yellow-active);margin-bottom:3px;}
.lp-mini-facts b{font-size:13px;font-weight:900;color:var(--dh-ink);}
.lp-mini-facts small{font-size:10.5px;color:var(--dh-muted);}
.lp-mini-list{display:flex;flex-direction:column;background:#fff;border:1px solid var(--dh-line-4);border-radius:12px;}
.lp-mini-list>div{display:flex;justify-content:space-between;gap:10px;padding:9px 12px;font-size:12px;color:var(--dh-ink);}
.lp-mini-list>div+div{border-top:1px solid var(--dh-line);}
.lp-mini-list b{font-weight:800;white-space:nowrap;}
/* Hero: four equal cards dealt from the right into a slot, then stacked; progress pill on top. */
.lp-card{position:absolute;z-index:2;right:0;top:206px;width:250px;height:60px;display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--dh-line-4);border-radius:14px;padding:0 14px;box-shadow:0 10px 26px rgba(60,48,20,.14);opacity:0;transform:translateX(70px);will-change:transform;
  transition:transform .42s cubic-bezier(.2,.8,.2,1),top .42s cubic-bezier(.2,.8,.2,1),opacity .25s ease,box-shadow .25s,border-color .25s;}
.lp-card.lp-reset{transition:none;}
.lp-card.lp-in{opacity:1;transform:translateX(0);}
.lp-card.lp-slot{box-shadow:0 18px 40px rgba(60,48,20,.22);transform:translateX(0) scale(1.03);}
.lp-card.lp-pos1{top:26px;}.lp-card.lp-pos2{top:98px;}.lp-card.lp-pos3{top:170px;}.lp-card.lp-pos4{top:242px;}
.lp-card-ic{flex-shrink:0;width:32px;height:32px;border-radius:10px;background:var(--dh-warm-2);display:flex;align-items:center;justify-content:center;color:var(--dh-yellow-active);transition:background .25s,color .25s;}
.lp-card-ic svg{width:18px;height:18px;}
.lp-card-ic>svg{display:none;}
.lp-card.lp-ok .lp-card-ic{background:#E5F5EA;color:#2F7D4F;}
.lp-card.lp-ok .lp-card-ic>svg{display:block;}
.lp-card.lp-ok .lp-card-ico{display:none;}
.lp-card.lp-ok{border-color:#CDE8D5;}
.lp-card-tx{display:grid;min-width:0;flex:1;overflow:hidden;}
.lp-card-tx b{font-size:13px;font-weight:800;color:var(--dh-ink);white-space:nowrap;line-height:1.2;overflow:hidden;text-overflow:ellipsis;}
.lp-card-tx span{grid-area:2/1;font-size:11.5px;color:var(--dh-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .2s;}
.lp-card-ok{color:#2F7D4F;font-weight:700;opacity:0;}
.lp-card.lp-ok .lp-card-wait{opacity:0;}
.lp-card.lp-ok .lp-card-ok{opacity:1;}
.lp-prog{position:absolute;z-index:4;left:14px;top:4px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--dh-line-4);border-radius:999px;padding:6px 12px 6px 8px;font-size:11.5px;font-weight:800;color:var(--dh-ink);box-shadow:0 8px 20px rgba(60,48,20,.12);transition:background .25s,border-color .25s,color .25s;}
.lp-prog i{display:block;width:88px;height:6px;border-radius:999px;background:var(--dh-line);overflow:hidden;}
.lp-prog i::after{content:"";display:block;height:100%;width:var(--w,0%);background:var(--dh-yellow-active);border-radius:999px;transition:width .35s cubic-bezier(.2,.8,.2,1);}
.lp-prog-done{background:#E5F5EA;border-color:#CDE8D5;color:#2F7D4F;}
.lp-prog-done i::after{background:#2F7D4F;}
@media (prefers-reduced-motion:reduce){.lp-card,.lp-prog,.lp-prog i::after,.lp-note-card{transition:none!important;}}
.lp-note-card{position:absolute;left:14px;bottom:0;z-index:3;display:flex;gap:10px;align-items:flex-start;max-width:340px;transition:transform .3s cubic-bezier(.2,.8,.2,1);background:var(--dh-ink);color:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 14px 30px rgba(31,63,115,.28);}
.lp-note-card svg{flex-shrink:0;color:var(--dh-yellow);margin-top:2px;}
.lp-note-card b{display:block;font-size:14px;font-weight:800;}
.lp-note-card span{font-size:12px;color:#C9D3E8;line-height:1.4;}
.lp-note-card.lp-pop{transform:translateY(-8px);}

.lp-section-head{margin:64px 0 26px;}
.lp-section-head .lp-eyebrow{margin-bottom:12px;}
.lp-section-head h2{font-size:clamp(24px,2.4vw,32px);font-weight:900;letter-spacing:-.01em;margin:0 0 8px;padding:0;border:0;}
.lp-section-head p{font-size:16px;color:var(--dh-muted);margin:0;}

.lp-steps-grid{display:flex;gap:18px;align-items:stretch;}
.lp-step{flex:1 1 0;background:#fff;border:1px solid var(--dh-line-4);border-radius:18px;padding:24px;}
.lp-step-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;}
.lp-step-n{width:30px;height:30px;border-radius:50%;background:var(--dh-yellow);color:var(--dh-ink);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;}
.lp-step-icon{color:var(--dh-yellow-active);display:flex;}
.lp-step h3{font-size:16px;font-weight:800;margin:0 0 8px;}
.lp-step p{font-size:14px;line-height:1.55;color:var(--dh-muted);margin:0;}
.lp-step-arrow{align-self:center;color:var(--dh-faint);flex-shrink:0;}

.lp-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.lp-benefit{background:#fff;border:1px solid var(--dh-line-4);border-radius:18px;padding:24px;}
.lp-benefit-icon{width:42px;height:42px;border-radius:12px;background:var(--dh-warm-2);color:var(--dh-ink);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.lp-benefits-clinics .lp-benefit-icon{background:var(--dh-badge-bg);}
.lp-benefit h3{font-size:16px;font-weight:800;margin:0 0 8px;}
.lp-benefit p{font-size:14px;line-height:1.55;color:var(--dh-muted);margin:0;}
.lp-benefits-cta{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:22px;}
.lp-benefits-cta span{font-size:14px;color:var(--dh-muted);}

.lp-features-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.lp-feature{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--dh-line-4);border-radius:16px;padding:18px;}
.lp-feature-icon{flex-shrink:0;width:36px;height:36px;border-radius:10px;background:var(--dh-warm-2);color:var(--dh-ink);display:flex;align-items:center;justify-content:center;}
.lp-feature-title{font-size:14.5px;font-weight:800;margin:0 0 4px;}
.lp-feature p{font-size:13px;line-height:1.5;color:var(--dh-muted);margin:0;}
.lp-plan-note{font-size:12.5px;color:var(--dh-muted);margin-top:10px;}

/* Doctors who already published a site (portrait-card variant, 2026-09-22).
   The avatar-stack row exists so two real examples don't read as "that's
   all there is" — it gestures at a wider, growing set without asserting a
   specific headcount we can't stand behind. */
.lp-grow-row{display:flex;align-items:center;gap:12px;margin-bottom:22px;}
.lp-grow-stack{display:flex;}
.lp-grow-stack span{width:30px;height:30px;border-radius:50%;border:2.5px solid #FFFDF6;margin-left:-9px;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:900;color:var(--dh-ink);background:var(--dh-line-4);}
.lp-grow-stack span:first-child{margin-left:0;}
.lp-grow-stack img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;}
.lp-grow-text{font-size:13px;color:var(--dh-muted);}
.lp-grow-text b{color:var(--dh-ink);}

/* Stories slider: scroll-snap track, 3 cards per view (2 tablet, 1 phone), arrows + dots. */
.lp-slider{position:relative;--lp-slide-gap:18px;--lp-slides:3;}
.lp-slider-track{display:flex;gap:var(--lp-slide-gap);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:4px 2px 8px;margin:-4px -2px -8px;outline:none;}
.lp-slider-track::-webkit-scrollbar{display:none;}
.lp-slider-track:focus-visible{box-shadow:0 0 0 3px var(--dh-yellow);border-radius:20px;}
.lp-slider-track>.lp-story{flex:0 0 calc((100% - var(--lp-slide-gap) * (var(--lp-slides) - 1)) / var(--lp-slides));scroll-snap-align:start;}
.lp-slider-btn{position:absolute;top:50%;z-index:2;width:44px;height:44px;margin-top:-34px;border-radius:50%;border:1px solid var(--dh-line-4);background:#fff;color:var(--dh-ink);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 20px rgba(60,48,20,.14);transition:background .15s,transform .15s,opacity .15s;}
.lp-slider-btn:hover{background:var(--dh-yellow-bg-hover);}
.lp-slider-btn:active{transform:scale(.94);}
.lp-slider-btn:disabled{opacity:.35;cursor:default;box-shadow:none;}
.lp-slider-btn svg{width:18px;height:18px;}
.lp-slider-prev{left:-22px;}
.lp-slider-prev svg{transform:rotate(180deg);}
.lp-slider-next{right:-22px;}
.lp-slider-dots{display:flex;justify-content:center;gap:8px;margin-top:20px;}
.lp-slider-dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:var(--dh-line-5);cursor:pointer;transition:width .2s,background .2s;}
.lp-slider-dots button.on{width:24px;background:var(--dh-yellow-active);}
.lp-slider-dots:empty{display:none;}
.lp-story{background:#fff;border:1px solid var(--dh-line-4);border-radius:20px;padding:26px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;}
.lp-story-ava{width:88px;height:88px;border-radius:50%;background:var(--dh-warm-1) center/cover no-repeat;margin-bottom:14px;border:3px solid var(--dh-warm-2);}
.lp-story-name{font-size:16px;font-weight:900;color:var(--dh-ink);margin-bottom:4px;}
.lp-story-meta{font-size:13px;color:var(--dh-muted);margin-bottom:16px;}
.lp-story-stats{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;justify-content:center;}
.lp-story-stats span{background:var(--dh-badge-bg);color:var(--dh-ink);border-radius:999px;padding:5px 11px;font-size:11px;font-weight:800;}
.lp-story-quote{font-size:13.5px;line-height:1.5;color:var(--dh-nav);font-style:italic;margin:0 0 18px;flex:1;}
.lp-story .lp-btn{width:100%;}
.lp-story-cta{border:1.5px dashed var(--dh-yellow-border);}
.lp-story-cta .lp-story-ava{background:var(--dh-yellow);border-color:var(--dh-yellow-hover);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:900;color:var(--dh-ink);}

.lp-social{margin-top:72px;background:var(--dh-ink);color:#fff;border-radius:24px;padding:48px 40px;text-align:center;}
body.lp-body .lp-social h2{color:#fff;font-size:clamp(22px,2.4vw,30px);font-weight:900;margin:14px 0 10px;}
.lp-social-text{font-size:16px;color:#C9D3E8;margin:0 0 24px;}

@media (max-width:980px){.lp-benefits-grid,.lp-features-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.lp-slider{--lp-slides:2;}.lp-slider-prev{left:-8px;}.lp-slider-next{right:-8px;}}
@media (max-width:900px){.lp-card,.lp-prog,.lp-note-card{display:none;}.lp-hero-visual{flex:1 1 360px;max-width:440px;padding:26px 20px 26px 6px;}}
@media (max-width:820px){.lp-steps-grid{flex-direction:column;}.lp-step-arrow{display:none;}}
@media (max-width:600px){.lp-slider{--lp-slides:1;}.lp-slider-btn{display:none;}}
@media (max-width:640px){
  .lp-benefits-grid,.lp-features-grid{grid-template-columns:1fr;}
  .lp-hero{padding:24px 0 20px;gap:28px;}
  .lp-hero h1{font-size:26px;}
  .lp-hero-sub{font-size:16px;}
  .lp-section-head{margin-top:44px;}
  .lp-social{padding:32px 20px;}
}