:root {
    --navy: #071427;
    --navy-2: #0b1d34;
    --ink: #0b1730;
    --muted: #66758f;
    --line: #dfe7f1;
    --soft: #f7f5ff;
    --white: #ffffff;
    --teal: #7047eb;
    --teal-dark: #5430cb;
    --mint: #f1edff;
    --purple: #7047eb;
    --purple-soft: #f0ebff;
    --green: #8b6cff;
    --red: #e64e65;
    --amber: #f2a31c;
    --radius-sm: 14px;
    --radius: 24px;
    --radius-lg: 38px;
    --shadow: 0 24px 70px rgba(18, 35, 64, .12);
    --container: min(1180px, calc(100vw - 48px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 120px; }
body { margin: 0; color: var(--ink); background: var(--white); font-family: Inter, "Segoe UI", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
html[dir="rtl"] body { font-family: Tahoma, "Segoe UI", Arial, sans-serif; }
body.modal-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img, video { display: block; max-width: 100%; }
p { line-height: 1.7; }
.container { width: var(--container); margin-inline: auto; }
.narrow { max-width: 900px; }
.section { padding: 118px 0; position: relative; overflow: hidden; }
.skip-link { position: fixed; inset-inline-start: 20px; top: -80px; z-index: 9999; padding: 14px 20px; background: white; color: var(--ink); border-radius: 0 0 12px 12px; }
.skip-link:focus { top: 0; }

.demo-ribbon { height: 30px; position: fixed; inset: 0 0 auto; z-index: 150; display: flex; align-items: center; justify-content: center; gap: 9px; color: #d8e3f1; background: #030b17; font-size: 11px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: #8b6cff; box-shadow: 0 0 0 5px rgba(112,71,235,.14); }
.site-header { height: 84px; position: fixed; top: 0; inset-inline: 0; z-index: 140; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 28px; padding: 0 max(32px, calc((100vw - 1380px) / 2)); color: var(--ink); border-bottom: 1px solid rgba(11,23,48,.08); background: rgba(255,255,255,.96); backdrop-filter: blur(18px); transition: background .3s, box-shadow .3s, height .3s; }
.demo-ribbon + .site-header { top: 30px; }
.site-header.scrolled { height: 72px; color: var(--ink); background: rgba(255,255,255,.94); box-shadow: 0 12px 40px rgba(14,30,55,.09); backdrop-filter: blur(18px); border-bottom-color: var(--line); }
.brand { display: inline-flex; align-items: center; gap: 13px; min-width: 144px; }
.brand-mark { width: 46px; height: 46px; display: grid; place-items: center; position: relative; background: #7047eb; border-radius: 14px; color: white; font-size: 19px; font-weight: 900; box-shadow: 0 12px 25px rgba(112,71,235,.22); }
.brand-mark span { font-size: 12px; margin-inline-start: 1px; }
.brand-copy { display: flex; flex-direction: column; line-height: 1; }
.brand-copy strong { font-size: 25px; letter-spacing: -.05em; }
.brand-copy small { margin-top: 6px; font-size: 8px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; opacity: .68; }
.main-nav { display: flex; align-items: center; justify-content: center; gap: 24px; }
.main-nav a { position: relative; padding: 10px 0; font-size: 14px; font-weight: 650; opacity: .78; }
.main-nav a::after { content: ""; position: absolute; left: 50%; right: 50%; bottom: 1px; height: 2px; background: var(--teal); transition: left .25s, right .25s; }
.main-nav a:hover, .main-nav a.active { opacity: 1; }
.main-nav a:hover::after, .main-nav a.active::after { left: 0; right: 0; }
.mobile-access-link { display: none; }
.header-actions { display: flex; align-items: center; gap: 10px; }
.language-switch { display: flex; padding: 4px; border: 1px solid var(--line); border-radius: 12px; }
.scrolled .language-switch { border-color: var(--line); }
.language-switch a { padding: 6px 8px; border-radius: 8px; font-size: 11px; font-weight: 800; opacity: .55; }
.language-switch a.active { color: white; background: var(--purple); opacity: 1; }
.scrolled .language-switch a.active { color: white; background: var(--purple); }
.menu-toggle { display: none; width: 44px; height: 44px; align-items: center; justify-content: center; flex-direction: column; gap: 6px; background: transparent; border: 0; }
.menu-toggle span { width: 23px; height: 2px; background: currentColor; }

.button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 0 22px; border: 0; border-radius: 15px; color: white; background: var(--purple); box-shadow: 0 13px 28px rgba(112,71,235,.22); font-weight: 800; font-size: 14px; transition: transform .25s, box-shadow .25s, background .25s; }
.button:hover { transform: translateY(-3px); background: #5d35dc; box-shadow: 0 18px 34px rgba(112,71,235,.3); }
.button-small { min-height: 40px; padding-inline: 16px; font-size: 12px; border-radius: 12px; }
.button-large { min-height: 58px; padding-inline: 27px; border-radius: 17px; }
.button-ghost { color: var(--ink); background: white; border: 1px solid var(--line); box-shadow: none; }
.scrolled .button-ghost { color: var(--ink); border-color: var(--line); background: white; }
.button-glass { color: white; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.08); box-shadow: none; backdrop-filter: blur(10px); }
.play-mini { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.14); font-size: 9px; }
.text-link { display: inline-flex; align-items: center; gap: 9px; margin-top: 22px; color: var(--teal-dark); font-weight: 850; }
.text-link span { transition: transform .2s; }
.text-link:hover span { transform: translate(3px,-3px); }

.hero { min-height: 100vh; padding: 180px 0 92px; position: relative; overflow: hidden; color: white; background: #0d1020; }
.hero::before { content: ""; position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, black, transparent 85%); }
.hero-orb { position: absolute; border-radius: 50%; filter: blur(2px); pointer-events: none; }
.hero-orb-one { width: 430px; height: 430px; left: -270px; top: 200px; border: 1px solid rgba(255,255,255,.12); box-shadow: inset 0 0 80px rgba(114,83,231,.16); }
.hero-orb-two { width: 530px; height: 530px; right: -320px; bottom: -130px; border: 1px solid rgba(255,255,255,.1); }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 76px; }
.hero-copy h1, .solution-copy h1 { margin: 22px 0 25px; max-width: 740px; font-size: clamp(52px, 5.3vw, 82px); line-height: .99; letter-spacing: -.055em; }
.hero-copy > p, .solution-copy > p { max-width: 650px; margin: 0; color: #c6d3e4; font-size: 19px; }
.eyebrow { display: inline-flex; align-items: center; gap: 13px; color: var(--teal-dark); font-size: 12px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow > span { width: 34px; height: 2px; background: currentColor; }
.eyebrow-light { color: #7de1d5; }
.eyebrow-purple { color: var(--purple); }
.hero-actions, .cta-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 37px; }
.trust-row { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 40px; padding-top: 30px; border-top: 1px solid rgba(255,255,255,.12); }
.trust-row span { display: flex; align-items: center; gap: 9px; color: #afbed2; font-size: 12px; font-weight: 700; }
.trust-row i { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.16); border-radius: 11px; color: #7ee2d6; font-size: 9px; font-style: normal; }
.hero-visual { min-height: 620px; position: relative; transform-style: preserve-3d; }
.hero-photo-wrap { width: 92%; height: 570px; margin-inline-start: auto; position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 44px; box-shadow: 0 55px 100px rgba(0,0,0,.36); }
.hero-photo-wrap img { width: 100%; height: 100%; object-fit: cover; object-position: 58% center; }
.hero-photo-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(5,14,32,.82)), linear-gradient(90deg, rgba(18,12,57,.16), transparent); }
.floating-dashboard { width: 390px; position: absolute; left: -36px; bottom: 23px; padding: 23px; border: 1px solid rgba(255,255,255,.19); border-radius: 24px; background: rgba(9,23,43,.83); box-shadow: 0 25px 70px rgba(0,0,0,.38); backdrop-filter: blur(18px); transform: translateZ(40px); }
.dash-top { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; }
.mini-logo { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 12px; background: var(--teal); font-weight: 900; }
.dash-top div { display: flex; flex-direction: column; }
.dash-top strong { font-size: 13px; }
.dash-top small { margin-top: 4px; color: #8fa2bd; font-size: 10px; }
.live-chip { display: flex; gap: 6px; align-items: center; padding: 7px 9px; border-radius: 9px; color: #78e1c1; background: rgba(38,184,136,.12); font-size: 9px; font-weight: 900; }
.live-chip i { width: 6px; height: 6px; border-radius: 50%; background: #49d4aa; animation: pulse 2s infinite; }
.dash-value { display: block; margin-top: 26px; font-size: 27px; letter-spacing: -.03em; }
.floating-dashboard p { margin: 8px 0 17px; color: #aebed2; font-size: 12px; }
.dash-roles { display: flex; gap: 7px; }
.dash-roles span { padding: 7px 10px; border: 1px solid rgba(255,255,255,.1); border-radius: 9px; color: #d7e2ef; font-size: 9px; }
.floating-security { position: absolute; right: -15px; top: 105px; display: flex; align-items: center; gap: 12px; padding: 14px 18px; border: 1px solid rgba(255,255,255,.2); border-radius: 17px; background: rgba(255,255,255,.92); color: var(--ink); box-shadow: var(--shadow); transform: translateZ(58px); }
.floating-security > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; color: white; background: var(--green); }
.floating-security div { display: flex; flex-direction: column; }
.floating-security strong { font-size: 12px; }
.floating-security small { margin-top: 4px; color: var(--muted); font-size: 10px; }
.scroll-cue { position: absolute; left: 50%; bottom: 25px; width: 26px; height: 44px; border: 1px solid rgba(255,255,255,.28); border-radius: 20px; }
.scroll-cue span { width: 4px; height: 8px; position: absolute; left: 10px; top: 8px; border-radius: 4px; background: white; animation: scrollCue 2s infinite; }

.section-heading { max-width: 770px; margin-bottom: 55px; }
.section-heading.centered { margin-inline: auto; text-align: center; }
.section-heading.centered .eyebrow { justify-content: center; }
.section-heading h2, .ai-copy h2, .security-copy h2, .workflow-copy h2, .contact-copy h2 { margin: 17px 0 18px; font-size: clamp(38px, 4vw, 59px); line-height: 1.06; letter-spacing: -.05em; }
.section-heading p, .security-copy > p { max-width: 660px; margin: 0; color: var(--muted); font-size: 18px; }
.audience-section { background: #fff; }
.audience-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 23px; }
.audience-card { height: 570px; position: relative; outline: none; perspective: 1500px; }
.audience-card-inner { width: 100%; height: 100%; position: relative; transform-style: preserve-3d; transition: transform .8s cubic-bezier(.2,.72,.2,1); }
.audience-card.is-flipped .audience-card-inner { transform: rotateY(180deg); }
html[dir="rtl"] .audience-card.is-flipped .audience-card-inner { transform: rotateY(-180deg); }
.audience-face { position: absolute; inset: 0; display: flex; flex-direction: column; overflow: hidden; padding: 35px; border: 1px solid var(--line); border-radius: var(--radius-lg); backface-visibility: hidden; -webkit-backface-visibility: hidden; box-shadow: 0 15px 45px rgba(18,35,64,.06); }
.audience-front { color: var(--ink); background: white; }
.audience-front::before { content: ""; position: absolute; width: 250px; height: 250px; right: -150px; top: -145px; border-radius: 50%; background: var(--card-soft); transition: transform .8s cubic-bezier(.2,.72,.2,1); }
html[dir="rtl"] .audience-front::before { right: auto; left: -150px; }
.audience-card.is-flipped .audience-front::before { transform: scale(1.6); }
.audience-back { transform: rotateY(180deg); color: white; border-color: transparent; background: var(--card-color); box-shadow: 0 28px 70px color-mix(in srgb, var(--card-color) 28%, transparent); }
html[dir="rtl"] .audience-back { transform: rotateY(-180deg); }
.audience-back::before { content: ""; width: 330px; height: 330px; position: absolute; inset-inline-end: -170px; top: -170px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; box-shadow: 0 0 0 55px rgba(255,255,255,.045), 0 0 0 110px rgba(255,255,255,.025); }
.audience-doctor { --card-color: var(--purple); --card-soft: var(--purple-soft); }
.audience-clinic { --card-color: #5f3bd2; --card-soft: #efebff; }
.audience-laboratory { --card-color: #7654df; --card-soft: #f1edff; }
.audience-radiology { --card-color: #835fe8; --card-soft: #f3efff; }
.audience-pharmacy { --card-color: #916ff0; --card-soft: #f5f1ff; }
.audience-patient { --card-color: #9f80f4; --card-soft: #f6f3ff; }
.audience-number { color: #aab5c6; font-size: 11px; font-weight: 900; letter-spacing: .1em; }
.audience-icon { width: 64px; height: 64px; display: grid; place-items: center; margin: 38px 0 29px; border-radius: 19px; color: var(--card-color); background: var(--card-soft); font-weight: 900; }
.audience-icon img { width: 32px; height: 32px; object-fit: contain; }
.audience-face h3 { margin: 0 0 15px; font-size: 29px; letter-spacing: -.04em; }
.audience-face > p { min-height: 87px; margin: 0 0 24px; color: var(--muted); font-size: 15px; }
.check-list { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.check-list li { position: relative; padding-inline-start: 25px; color: #3f4d64; font-size: 14px; }
.check-list li::before { content: "✓"; position: absolute; inset-inline-start: 0; color: var(--card-color); font-weight: 900; }
.flip-hint { display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: 25px; border-top: 1px solid var(--line); color: var(--card-color); font-size: 12px; font-weight: 850; }
.flip-hint > span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--card-color); font-size: 19px; transition: transform .35s; }
.audience-card.is-flipped .flip-hint > span { transform: rotate(90deg); }
.audience-back .audience-number { color: rgba(255,255,255,.62); }
.audience-icon-back { color: white; background: rgba(255,255,255,.14); }
.audience-back-kicker { margin-bottom: 16px; color: rgba(255,255,255,.72); font-size: 9px; font-weight: 900; letter-spacing: .15em; }
.audience-back h3 { max-width: 290px; font-size: 35px; line-height: 1.05; }
.audience-back > p { max-width: 290px; min-height: 0; color: rgba(255,255,255,.82); font-size: 14px; }
.audience-back > a { display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.28); color: white; font-weight: 900; }
.audience-back > a span { font-size: 22px; transition: transform .25s; }
.audience-back > a:hover span { transform: translate(4px,-4px); }
.audience-card:focus-visible { border-radius: var(--radius-lg); box-shadow: 0 0 0 4px rgba(112,71,235,.24); }
@media (hover: hover) and (pointer: fine) {
    .audience-card:hover .audience-card-inner { transform: rotateY(180deg); }
    html[dir="rtl"] .audience-card:hover .audience-card-inner { transform: rotateY(-180deg); }
    .audience-card:hover .audience-front::before { transform: scale(1.6); }
    .audience-card:hover .flip-hint > span { transform: rotate(90deg); }
}

.connect-section { padding-top: 96px; color: white; background: #171226; }
.connect-section::before { content: ""; position: absolute; width: 620px; height: 620px; inset-inline-start: -360px; top: -310px; border: 1px solid rgba(255,255,255,.09); border-radius: 50%; box-shadow: 0 0 0 90px rgba(255,255,255,.025), 0 0 0 180px rgba(255,255,255,.014); }
.connect-section .section-heading { position: relative; z-index: 1; }
.connect-section .section-heading .eyebrow { color: #bcaafb; }
.connect-section .section-heading p { color: rgba(255,255,255,.62); }
.connect-lanes { position: relative; z-index: 1; display: grid; gap: 14px; max-width: 1000px; margin: 0 auto; }
.connect-lane { min-height: 124px; display: grid; grid-template-columns: 64px minmax(150px,.8fr) minmax(250px,1.35fr) minmax(180px,1fr); align-items: center; gap: 18px; padding: 22px 26px; border: 1px solid rgba(255,255,255,.1); border-radius: 24px; background: rgba(255,255,255,.055); box-shadow: 0 18px 50px rgba(0,0,0,.18); backdrop-filter: blur(12px); transition: transform .3s, border-color .3s, background .3s; }
.connect-lane:hover { transform: translateY(-3px); border-color: rgba(176,151,255,.34); background: rgba(255,255,255,.075); }
.connect-lane-icon { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 18px; background: white; box-shadow: 0 12px 30px rgba(0,0,0,.18); }
.connect-lane-copy { display: flex; flex-direction: column; gap: 6px; }
.connect-lane-copy small { color: #bcaafb; font-size: 10px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.connect-lane-copy strong, .connect-lane-result strong { font-size: 15px; line-height: 1.4; }
.connect-rail { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; color: #c8b9ff; }
.connect-rail i { height: 1px; position: relative; background: linear-gradient(90deg, transparent, #9474f4); }
.connect-rail i:last-child { background: linear-gradient(90deg, #9474f4, transparent); }
.connect-rail i::after { content: ""; width: 7px; height: 7px; position: absolute; right: -1px; top: -3px; border-radius: 50%; background: #a88dfa; box-shadow: 0 0 0 6px rgba(168,141,250,.12); }
html[dir="rtl"] .connect-rail i::after { right: auto; left: -1px; }
.connect-rail b { padding: 9px 12px; border: 1px solid rgba(190,171,250,.24); border-radius: 99px; background: rgba(112,71,235,.22); font-size: 9px; letter-spacing: .12em; white-space: nowrap; }
.connect-lane-result { display: flex; align-items: center; gap: 10px; }
.connect-lane-result span, .connect-privacy-note > span { width: 28px; height: 28px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; color: #171226; background: #b7f1d8; font-size: 12px; font-weight: 900; }
.connect-privacy-note { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 10px; max-width: 850px; margin: 30px auto 0; color: rgba(255,255,255,.66); text-align: center; font-size: 12px; }
.connect-privacy-note > span { width: 23px; height: 23px; font-size: 10px; }

.flow-section { background: var(--soft); }
.care-flow { display: grid; grid-template-columns: repeat(5, 1fr); position: relative; }
.care-flow::before { content: ""; position: absolute; top: 59px; left: 8%; right: 8%; height: 2px; background: linear-gradient(90deg, var(--purple), var(--teal), var(--green)); opacity: .28; }
.flow-step { position: relative; padding: 0 23px; text-align: center; }
.flow-number { color: #9ba8ba; font-size: 11px; font-weight: 900; }
.flow-dot { width: 24px; height: 24px; display: block; position: relative; z-index: 2; margin: 22px auto 32px; border: 7px solid white; border-radius: 50%; background: var(--teal); box-shadow: 0 0 0 1px #cfdbe8; }
.flow-step:nth-child(1) .flow-dot, .flow-step:nth-child(2) .flow-dot { background: var(--purple); }
.flow-step:nth-child(4) .flow-dot, .flow-step:nth-child(5) .flow-dot { background: var(--green); }
.flow-step h3 { margin: 0 0 10px; font-size: 21px; }
.flow-step p { margin: 0; color: var(--muted); font-size: 13px; }

.ai-section { background: #f7f5ff; }
.ai-grid { display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 80px; }
.ai-visual { position: relative; }
.product-window { padding: 10px; overflow: hidden; border: 1px solid rgba(87,75,146,.2); border-radius: 30px; background: #10182b; box-shadow: 0 36px 80px rgba(54,39,105,.2); }
.window-bar { height: 39px; display: flex; align-items: center; gap: 7px; padding-inline: 8px; }
.window-bar > span, .browser-bar > span { width: 9px; height: 9px; border-radius: 50%; background: #e45b6e; }
.window-bar > span:nth-child(2), .browser-bar > span:nth-child(2) { background: #f2b43c; }
.window-bar > span:nth-child(3), .browser-bar > span:nth-child(3) { background: #9a78f5; }
.window-bar small { margin-inline: auto; color: #95a5bd; font-size: 10px; }
.scribe-ui { min-height: 500px; display: grid; grid-template-columns: 66px 1fr; overflow: hidden; border-radius: 20px; color: #0d1931; background: #f6f8fc; font-size: 12px; text-align: start; }
.scribe-sidebar { display: flex; flex-direction: column; align-items: center; gap: 25px; padding: 20px 12px; background: #241750; }
.scribe-brand { width: 38px; height: 38px; display: grid; place-items: center; margin-bottom: 18px; border-radius: 12px; color: white; background: #7047eb; font-size: 18px; font-weight: 900; }
.scribe-sidebar i { width: 24px; height: 4px; border-radius: 9px; background: rgba(255,255,255,.28); }
.scribe-sidebar i.active { width: 31px; background: #9a78f5; box-shadow: 0 0 0 8px rgba(112,71,235,.1); }
.scribe-workspace { min-width: 0; padding: 22px; }
.scribe-header, .scribe-panel-title { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.scribe-header small { display: block; margin-bottom: 5px; color: #7b89a1; font-size: 8px; font-weight: 900; letter-spacing: .12em; }
.scribe-header strong { font-size: 16px; }
.scribe-live { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border-radius: 99px; color: #5633ca; background: #f0ebff; font-size: 8px; font-weight: 900; }
.scribe-live i, .audio-quality i { width: 7px; height: 7px; border-radius: 50%; background: #815df0; box-shadow: 0 0 0 4px rgba(112,71,235,.13); }
.scribe-progress { display: grid; grid-template-columns: repeat(4,1fr); margin: 20px 0 15px; padding: 11px; border: 1px solid #e6ebf3; border-radius: 13px; background: white; }
.scribe-progress span { display: flex; align-items: center; justify-content: center; gap: 6px; color: #9aa5b7; font-size: 8px; font-weight: 800; }
.scribe-progress b { width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; color: #8793a7; background: #eef1f6; font-size: 8px; }
.scribe-progress .active { color: #6e4be5; }
.scribe-progress .active b { color: white; background: #6e4be5; }
.scribe-columns { display: grid; grid-template-columns: 1.05fr .95fr; gap: 12px; }
.scribe-recording, .scribe-summary { min-width: 0; padding: 15px; border: 1px solid #e3e9f2; border-radius: 15px; background: white; }
.scribe-panel-title strong { font-size: 11px; }
.scribe-panel-title > span { font-size: 17px; font-weight: 850; }
.scribe-wave { height: 72px; display: flex; align-items: center; gap: 3px; margin: 8px 0; overflow: hidden; }
.scribe-wave i { flex: 1; min-width: 2px; height: 20%; border-radius: 4px; background: #7047eb; }
.scribe-wave i:nth-child(3n) { height: 62%; }.scribe-wave i:nth-child(4n) { height: 86%; }.scribe-wave i:nth-child(5n) { height: 42%; }.scribe-wave i:nth-child(7n) { height: 100%; }
.audio-quality { display: flex; align-items: center; gap: 7px; margin: 0 0 15px; color: #6440d4; font-size: 8px; }
.scribe-transcript { padding-top: 13px; border-top: 1px solid #edf0f5; }
.scribe-transcript small { color: #7754e8; font-size: 7px; font-weight: 900; letter-spacing: .08em; }
.scribe-transcript p { margin: 9px 0 0; color: #4b5870; font-size: 8px; line-height: 1.55; }
.scribe-transcript b { display: block; color: #704ceb; }.scribe-transcript b.patient { color: #8b6cff; }
.scribe-panel-title .draft { padding: 5px 7px; border-radius: 7px; color: #7653e7; background: #f0ebff; font-size: 7px; }
.scribe-summary article { display: grid; grid-template-columns: 26px 1fr; gap: 8px; padding: 12px 0; border-bottom: 1px solid #edf0f5; }
.scribe-summary article > i { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 8px; color: #704ceb; background: #f0ebff; font-size: 7px; font-style: normal; font-weight: 900; }
.scribe-summary article strong { display: block; margin-bottom: 3px; font-size: 8px; }.scribe-summary article p { margin: 0; color: #68768d; font-size: 7px; line-height: 1.4; }
.scribe-summary button { width: 100%; margin-top: 13px; padding: 10px; border: 0; border-radius: 9px; color: white; background: #7047eb; font: inherit; font-size: 8px; font-weight: 900; }
html[dir="rtl"] .scribe-ui { direction: rtl; }
.voice-wave { width: 66%; height: 75px; position: absolute; left: 17%; bottom: -32px; display: flex; align-items: center; justify-content: center; gap: 6px; padding: 13px 22px; border: 1px solid rgba(114,83,231,.18); border-radius: 20px; background: rgba(255,255,255,.92); box-shadow: var(--shadow); }
.voice-wave span { width: 4px; height: 18px; border-radius: 4px; background: linear-gradient(var(--purple), var(--teal)); animation: wave 1.4s ease-in-out infinite; }
.voice-wave span:nth-child(3n) { animation-delay: -.7s; }
.voice-wave span:nth-child(4n) { animation-delay: -.35s; }
.voice-wave span:nth-child(5n) { animation-delay: -.9s; }
.ai-copy .lead { margin: 0 0 28px; color: var(--muted); font-size: 17px; }
.ai-steps { display: grid; gap: 2px; }
.ai-steps article { display: grid; grid-template-columns: 50px 1fr; gap: 16px; padding: 20px 0; border-bottom: 1px solid rgba(104,87,171,.16); }
.ai-steps article > span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: var(--purple); background: white; font-size: 11px; font-weight: 900; box-shadow: 0 9px 22px rgba(79,61,143,.1); }
.ai-steps h3 { margin: 0 0 5px; font-size: 17px; }
.ai-steps p { margin: 0; color: var(--muted); font-size: 13px; }

.tutorials-section { color: white; background: #171534; }
.section-heading.split { max-width: none; display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 70px; }
.section-heading.split h2 { max-width: 700px; margin-bottom: 0; }
.section-heading.split > p { color: #aebcd0; }
.video-grid { display: grid; grid-template-columns: 1.15fr .925fr .925fr; gap: 20px; }
.video-card { overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 28px; background: rgba(255,255,255,.045); transition: transform .3s, background .3s; }
.video-card:hover { transform: translateY(-8px); background: rgba(255,255,255,.075); }
.video-trigger { width: 100%; aspect-ratio: 16/10; position: relative; overflow: hidden; padding: 0; border: 0; background: #07101e; }
.video-trigger img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s; }
.video-card:hover .video-trigger img { transform: scale(1.045); }
.video-shade { position: absolute; inset: 0; background: linear-gradient(180deg, transparent, rgba(2,8,18,.72)); }
.play-button { width: 62px; height: 62px; position: absolute; left: 50%; top: 50%; display: grid; place-items: center; padding-inline-start: 4px; transform: translate(-50%,-50%); border-radius: 50%; color: var(--ink); background: white; box-shadow: 0 15px 40px rgba(0,0,0,.25); transition: transform .25s, background .25s; }
html[dir="rtl"] .play-button { padding-inline: 0 4px; }
.video-trigger:hover .play-button, .video-feature-media:hover .play-button { transform: translate(-50%,-50%) scale(1.08); background: #7de1d5; }
.video-duration { position: absolute; right: 15px; bottom: 14px; padding: 5px 8px; border-radius: 7px; color: white; background: rgba(4,9,18,.72); font-size: 10px; font-weight: 800; }
html[dir="rtl"] .video-duration { right: auto; left: 15px; }
.video-meta { padding: 23px; }
.video-meta > span { color: #71d5cb; font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.video-meta h3 { margin: 9px 0 18px; font-size: 20px; }
.video-meta button { padding: 0; border: 0; color: #c8d5e7; background: transparent; font-size: 12px; font-weight: 800; }

.security-section { background: #fff; }
.security-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 85px; align-items: start; }
.security-copy { position: sticky; top: 140px; }
.security-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.security-card { min-height: 225px; padding: 27px; border: 1px solid var(--line); border-radius: 24px; background: white; transition: transform .25s, box-shadow .25s; }
.security-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
.security-card > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: var(--teal-dark); background: var(--mint); font-size: 10px; font-weight: 900; }
.security-card h3 { margin: 23px 0 10px; font-size: 19px; }
.security-card p { margin: 0; color: var(--muted); font-size: 13px; }
.cndp-notice { display: grid; grid-template-columns: 48px 1fr; gap: 16px; margin-top: 35px; padding: 21px; border: 1px solid #f2d2a0; border-radius: 20px; background: #fff9ed; }
.cndp-notice > span { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 14px; color: #9a6100; background: #ffe9ba; font-weight: 900; }
.cndp-notice strong { display: block; margin-bottom: 5px; font-size: 14px; }
.cndp-notice p { margin: 0; color: #755b35; font-size: 12px; }

.cta-section { padding-top: 30px; }
.cta-section.compact { padding-top: 0; }
.cta-card { min-height: 420px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; overflow: hidden; padding: 70px; color: white; text-align: center; border-radius: 44px; background: #241750; }
.cta-glow { width: 420px; height: 420px; position: absolute; right: -120px; top: -270px; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; box-shadow: inset 0 0 90px rgba(114,83,231,.25); }
.cta-card h2 { max-width: 840px; margin: 22px 0 15px; font-size: clamp(40px, 4vw, 62px); line-height: 1.02; letter-spacing: -.05em; }
.cta-card p { max-width: 690px; margin: 0; color: #b9c8dc; font-size: 17px; }

.security-contact-section { padding: 54px 0 12px; }
.security-contact-card {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(340px, .65fr);
    gap: 42px;
    align-items: stretch;
    padding: clamp(34px, 5vw, 68px);
    border: 1px solid #e3def2;
    border-radius: 38px;
    background: #ffffff;
    box-shadow: 0 28px 80px rgba(42, 31, 86, .09);
}
.security-contact-copy { align-self: center; }
.security-contact-copy h2 {
    max-width: 720px;
    margin: 20px 0 18px;
    color: var(--ink);
    font-size: clamp(42px, 4.3vw, 64px);
    line-height: 1.02;
    letter-spacing: -.05em;
}
.security-contact-copy > p {
    max-width: 680px;
    margin: 0;
    color: #64718a;
    font-size: 17px;
    line-height: 1.72;
}
.security-contact-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 31px;
}
.security-contact-trust span {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 10px 14px;
    color: #27334d;
    border: 1px solid #e3def2;
    border-radius: 14px;
    background: #fbfaff;
    font-size: 12px;
    font-weight: 800;
}
.security-contact-trust img { width: 22px; height: 22px; }
.security-contact-action {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(28px, 3vw, 42px);
    border: 1px solid #ded6fa;
    border-radius: 28px;
    background: #f5f1ff;
}
.security-contact-action > span {
    color: var(--purple);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.security-contact-action h3 {
    margin: 17px 0 13px;
    color: var(--ink);
    font-size: clamp(25px, 2.2vw, 34px);
    line-height: 1.1;
    letter-spacing: -.035em;
}
.security-contact-action p {
    margin: 0 0 27px;
    color: #65718a;
    font-size: 14px;
    line-height: 1.65;
}
.security-contact-action .button { align-self: flex-start; }
html[dir="rtl"] .security-contact-action .button { align-self: flex-start; }

.page-hero.access-hero {
    min-height: 520px;
    display: flex;
    align-items: center;
    padding-top: 150px;
    color: var(--ink);
    background: #fbfaff;
}
.access-hero h1 {
    max-width: 850px;
    margin: 22px 0 20px;
    font-size: clamp(52px, 5.8vw, 80px);
    line-height: .98;
    letter-spacing: -.055em;
}
.page-hero.access-hero p { max-width: 720px; margin: 0; color: #64718a; font-size: 19px; line-height: 1.65; }
.access-section { padding-top: 72px; }
.access-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.access-card {
    min-height: 510px;
    display: flex;
    flex-direction: column;
    padding: 34px;
    border: 1px solid #e2deee;
    border-radius: 30px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(42,31,86,.07);
    transition: transform .28s, box-shadow .28s, border-color .28s;
}
.access-card:hover { transform: translateY(-8px); border-color: rgba(112,71,235,.34); box-shadow: 0 30px 72px rgba(42,31,86,.13); }
.access-card-head { display: flex; align-items: center; justify-content: space-between; }
.access-icon { width: 62px; height: 62px; display: grid; place-items: center; border-radius: 19px; background: #f0ebff; }
.access-icon img { width: 32px; height: 32px; }
.access-code { color: #a0a9b9; font-size: 11px; font-weight: 900; letter-spacing: .12em; }
.access-card h2 { margin: 36px 0 14px; font-size: 30px; line-height: 1.12; letter-spacing: -.035em; }
.access-card > p { margin: 0; color: #64718a; font-size: 15px; line-height: 1.7; }
.access-meta { margin-top: auto; padding: 25px 0 18px; color: var(--purple); font-size: 11px; font-weight: 850; }
.access-card .button { width: 100%; text-align: center; }
.access-demo-note {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    margin-top: 24px;
    padding: 25px 30px;
    border: 1px solid #e2deee;
    border-radius: 22px;
    background: #fbfaff;
}
.access-demo-note strong { display: block; margin-bottom: 5px; font-size: 14px; }
.access-demo-note p { margin: 0; color: #64718a; font-size: 12px; }
.access-demo-note > a { flex: 0 0 auto; color: var(--purple); font-size: 13px; font-weight: 850; }

.site-footer { margin-top: 100px; padding: 72px max(32px, calc((100vw - 1180px) / 2)) 26px; color: white; background: #110d24; }
.footer-grid { display: grid; grid-template-columns: 1.6fr .7fr .7fr; gap: 70px; padding-bottom: 58px; }
.brand-footer { color: white; }
.footer-grid > div:first-child > p { max-width: 370px; color: #8295ae; font-size: 14px; }
.footer-links { display: flex; flex-direction: column; gap: 14px; color: #a6b6c9; font-size: 13px; }
.footer-links a:hover { color: white; }
.footer-bottom { display: flex; justify-content: space-between; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.08); color: #687a92; font-size: 11px; }

.page-hero { min-height: 535px; display: flex; align-items: center; padding: 190px 0 90px; color: white; background: #171534; }
.page-hero-dark h1, .security-hero h1, .contact-hero h1 { margin: 22px 0; font-size: clamp(50px, 6vw, 80px); line-height: .98; letter-spacing: -.055em; }
.page-hero p { max-width: 770px; margin: 0; color: #bdcbe0; font-size: 19px; }
.solution-hero { min-height: 860px; padding: 190px 0 100px; color: var(--ink); background: linear-gradient(145deg, #ffffff 0%, #fbfaff 62%, #f2edff 100%); overflow: hidden; }
.solution-hospital { background: linear-gradient(145deg, #ffffff 0%, #faf9ff 62%, #eee9ff 100%); }
.solution-patient { background: linear-gradient(145deg, #ffffff 0%, #fcfbff 62%, #f3eeff 100%); }
.solution-hero .solution-copy > p { color: var(--muted); }
.solution-hero .button-glass { color: var(--ink); border-color: #ddd7ef; background: rgba(255,255,255,.72); box-shadow: 0 10px 28px rgba(41,28,80,.06); }
.solution-hero .button-glass:hover { border-color: #b8a9e8; background: #fff; }
.solution-hero-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 75px; }
.solution-copy > p { font-size: 18px; }
.solution-device { min-height: 540px; display: grid; place-items: center; position: relative; }
.device-stage { width: 100%; position: relative; display: grid; place-items: center; isolation: isolate; }
.device-stage::before { content: ""; width: 78%; height: 72%; position: absolute; z-index: -1; border-radius: 50%; background: rgba(112,71,235,.15); filter: blur(38px); animation: deviceGlow 7s ease-in-out infinite; }
.device-stage-monitor { width: 124%; margin-inline: -8% -16%; }
.device-monitor { width: 100%; aspect-ratio: 3/2; position: relative; filter: drop-shadow(0 42px 42px rgba(45,31,90,.20)); }
.device-monitor-frame { width: 100%; height: 100%; position: absolute; inset: 0; z-index: 2; object-fit: contain; pointer-events: none; }
.device-monitor-screen { width: 80.3%; height: 63.7%; position: absolute; left: 9.45%; top: 10.45%; z-index: 1; object-fit: cover; object-position: top center; background: #f7f9fc; }
.device-stage-phone { min-height: 705px; }
.device-phone { width: min(430px, 82vw); aspect-ratio: 43/90; position: relative; filter: drop-shadow(0 48px 55px rgba(45,31,90,.22)); }
.device-phone-frame { width: auto; height: 100%; max-width: none; position: absolute; left: 50%; top: 0; z-index: 3; transform: translateX(-50%); pointer-events: none; }
.device-phone-screen { position: absolute; z-index: 2; inset: 6.1% 10% 6.7%; overflow: hidden; border-radius: 42px; color: #0e1b31; background: linear-gradient(180deg, #f9fbff, #f3f7fa); font-size: 11px; text-align: start; }
.patient-app-top { height: 68px; display: flex; align-items: center; justify-content: space-between; padding: 16px 20px 10px; background: rgba(255,255,255,.9); }
.patient-app-brand { display: flex; align-items: center; gap: 8px; font-size: 17px; font-weight: 900; letter-spacing: -.03em; }
.patient-app-brand b { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 9px; color: white; background: #7047eb; font-size: 13px; }
.patient-avatar { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid #e3ddf7; border-radius: 50%; color: #5d39cf; background: #f0ebff; font-size: 9px; font-weight: 900; }
.patient-welcome { padding: 13px 20px 5px; }
.patient-welcome small { color: var(--teal-dark); font-size: 8px; font-weight: 900; letter-spacing: .13em; }
.patient-welcome h2 { margin: 5px 0 3px; font-size: 25px; letter-spacing: -.05em; }
.patient-welcome p { margin: 0; color: #78879c; font-size: 10px; }
.patient-search { display: flex; align-items: center; gap: 9px; margin: 14px 20px 16px; padding: 13px 14px; border: 1px solid #e3eaf1; border-radius: 13px; color: #8c99ab; background: white; font-size: 9px; }
.patient-search span { width: 12px; height: 12px; position: relative; border: 2px solid #94a2b5; border-radius: 50%; }
.patient-search span::after { content: ""; width: 5px; height: 2px; position: absolute; right: -5px; bottom: -2px; transform: rotate(45deg); border-radius: 2px; background: #94a2b5; }
.patient-next-card { margin: 0 20px; padding: 17px; border: 1px solid rgba(112,71,235,.14); border-radius: 19px; background: #f3efff; box-shadow: 0 15px 30px rgba(61,41,126,.08); }
.patient-next-card > div { display: inline-block; max-width: 75%; }
.patient-next-card small { display: block; color: #5d39cf; font-size: 7px; font-weight: 900; letter-spacing: .09em; }
.patient-next-card > div strong { display: block; margin-top: 5px; font-size: 11px; }
.patient-next-card > span { width: 44px; height: 44px; float: inline-end; display: grid; place-items: center; border-radius: 13px; color: white; background: #7050e8; font-size: 17px; font-weight: 900; }
.patient-next-card p { clear: both; margin: 18px 0 13px; color: #617087; font-size: 9px; line-height: 1.5; }
.patient-next-card p b { color: #17243a; font-size: 10px; }
.patient-next-card button { width: 100%; padding: 10px; border: 0; border-radius: 10px; color: white; background: var(--teal); font: inherit; font-size: 9px; font-weight: 900; }
.patient-shortcuts { padding: 18px 20px 78px; }
.patient-section-title { display: flex; justify-content: space-between; align-items: center; margin-bottom: 11px; }
.patient-section-title strong { font-size: 12px; }
.patient-section-title span { color: var(--teal-dark); font-size: 8px; font-weight: 850; }
.patient-shortcut-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.patient-shortcut-grid article { min-width: 0; padding: 11px 7px; border: 1px solid #e5eaf1; border-radius: 13px; background: white; text-align: center; }
.patient-shortcut-grid i { width: 30px; height: 30px; display: grid; place-items: center; margin: 0 auto 7px; border-radius: 10px; color: #5d39cf; background: #f0ebff; font-size: 7px; font-style: normal; font-weight: 900; }
.patient-shortcut-grid article:nth-child(2) i { color: #6847dd; background: #eeeaff; }
.patient-shortcut-grid article:nth-child(3) i { color: #d4516c; background: #ffebef; }
.patient-shortcut-grid b { display: block; overflow: hidden; color: #324157; font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.patient-app-nav { position: absolute; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: repeat(3,1fr); padding: 11px 8px 13px; border-top: 1px solid #e6ebf2; background: rgba(255,255,255,.96); backdrop-filter: blur(12px); }
.patient-app-nav span { display: grid; justify-items: center; gap: 5px; color: #8b98aa; font-size: 7px; font-weight: 800; }
.patient-app-nav span.active { color: var(--teal-dark); }
.patient-app-nav i { width: 18px; height: 13px; border: 2px solid currentColor; border-radius: 5px; }
.patient-app-nav .active i { border-radius: 50% 50% 5px 5px; }
.device-notification { min-width: 230px; position: absolute; right: 1%; top: 21%; z-index: 5; display: flex; align-items: center; gap: 12px; padding: 14px 16px; border: 1px solid rgba(255,255,255,.5); border-radius: 17px; color: #132139; background: rgba(255,255,255,.94); box-shadow: 0 22px 55px rgba(0,0,0,.18); backdrop-filter: blur(16px); animation: notificationFloat 4.5s ease-in-out infinite; }
.device-notification > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; color: white; background: var(--teal); font-weight: 900; }
.device-notification small { display: block; margin-bottom: 3px; color: #728096; font-size: 7px; font-weight: 900; letter-spacing: .11em; }
.device-notification strong { font-size: 11px; }
.monitor-notification { right: 2%; top: 18%; }
.metric-row { display: flex; gap: 10px; margin-top: 42px; }
.metric-row > div { min-width: 135px; display: flex; flex-direction: column; padding: 15px; border: 1px solid #e4def3; border-radius: 16px; background: rgba(255,255,255,.82); box-shadow: 0 12px 30px rgba(45,31,90,.06); }
.metric-row small { color: #75839a; font-size: 10px; }
.metric-row strong { margin-top: 7px; font-size: 13px; }
.module-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.module-card { min-height: 245px; padding: 30px; border: 1px solid var(--line); border-radius: 26px; background: white; transition: transform .3s, color .3s, background .3s; }
.module-card > span { color: var(--teal); font-size: 11px; font-weight: 900; }
.module-card h3 { margin: 42px 0 12px; font-size: 22px; }
.module-card p { margin: 0; color: var(--muted); font-size: 14px; }
.module-card:hover { transform: translateY(-8px); color: white; background: var(--navy); }
.module-card:hover p { color: #b3c3d7; }
.workflow-section { background: var(--soft); }
.pro-pricing-section { background: linear-gradient(180deg,#fff 0%,#faf8ff 100%); }
.pro-pricing-section .section-heading > p { max-width: 700px; margin: 0 auto; color: var(--muted); font-size: 17px; }
.pro-price-card { margin-top: 48px; display: grid; grid-template-columns: .78fr 1.22fr; overflow: hidden; border: 1px solid #e3dcf6; border-radius: 38px; background: #fff; box-shadow: 0 28px 90px rgba(62,42,124,.10); }
.pro-price-main { padding: 46px; color: #fff; background: linear-gradient(145deg,#6f45ef,#32187b); }
.pro-price-kicker { display: inline-flex; padding: 8px 12px; border: 1px solid rgba(255,255,255,.24); border-radius: 999px; font-size: 11px; font-weight: 900; letter-spacing: .16em; }
.pro-price-main h3 { margin: 26px 0 10px; font-size: 34px; line-height: 1.05; }
.pro-price-main p { margin: 0; color: rgba(255,255,255,.74); }
.pro-price-main > strong { display: block; margin: 34px 0 24px; font-size: 42px; line-height: 1; }
.pro-price-main > strong small { font-size: 14px; color: rgba(255,255,255,.72); }
.pro-price-main .button { color: #351a82; background: #fff; }
.pro-price-cycles { display: grid; grid-template-columns: repeat(3,1fr); align-items: stretch; padding: 24px; gap: 12px; }
.pro-price-cycles > div { min-width: 0; padding: 26px 20px; border: 1px solid #eee9f8; border-radius: 25px; background: #fcfbff; }
.pro-price-cycles > div.recommended { border-color: #bdaaf9; background: #f5f1ff; box-shadow: 0 15px 36px rgba(100,63,219,.12); }
.pro-price-cycles span { color: #9d8bd2; font-size: 11px; font-weight: 900; letter-spacing: .15em; }
.pro-price-cycles p { margin: 36px 0 10px; color: var(--ink); font-weight: 900; }
.pro-price-cycles strong { display: block; color: var(--ink); font-size: 21px; }
.pro-price-cycles small { display: block; margin-top: 7px; color: var(--muted); }
.workflow-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; align-items: start; }
.workflow-copy { position: sticky; top: 140px; }
.workflow-copy > p { color: var(--muted); font-size: 17px; }
.workflow-list { display: grid; }
.workflow-list article { display: grid; grid-template-columns: 70px 1fr; gap: 23px; padding: 30px 0; border-bottom: 1px solid #d7e1eb; }
.workflow-list article > span { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 18px; color: var(--teal-dark); background: white; font-size: 12px; font-weight: 900; box-shadow: 0 10px 25px rgba(25,47,75,.08); }
.workflow-list h3 { margin: 0 0 8px; font-size: 24px; }
.workflow-list p { margin: 0; color: var(--muted); font-size: 14px; }
.video-feature-section { padding-bottom: 30px; }
.video-feature { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 60px; padding: 45px; border: 1px solid var(--line); border-radius: 36px; background: white; box-shadow: var(--shadow); }
.video-feature-media { aspect-ratio: 16/9; position: relative; overflow: hidden; padding: 0; border: 0; border-radius: 24px; background: #071427; }
.video-feature-media img { width: 100%; height: 100%; object-fit: cover; }
.video-feature h2 { margin: 18px 0; font-size: 38px; letter-spacing: -.04em; }
.video-feature p { color: var(--muted); }

.patient-download-section { padding-top: 30px; background: #fff; }
.patient-download-card { position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr; align-items: center; padding: 68px 76px; border: 1px solid #e6e0f7; border-radius: 38px; background: linear-gradient(135deg, #fff 0%, #faf8ff 58%, #f0eaff 100%); box-shadow: 0 30px 80px rgba(58,36,116,.10); }
.patient-download-card::after { content: ""; position: absolute; width: 430px; height: 430px; inset-inline-end: -180px; top: -220px; border-radius: 50%; background: rgba(112,71,235,.10); }
.patient-download-copy { position: relative; z-index: 2; }
.patient-download-copy h2 { max-width: 760px; margin: 18px 0 18px; color: var(--ink); font-size: clamp(38px,4.2vw,62px); line-height: 1.03; letter-spacing: -.05em; }
.patient-download-copy > p { max-width: 760px; color: var(--muted); font-size: 17px; }
.store-badges { display: grid; grid-template-columns: repeat(2, minmax(0, 220px)); align-items: start; gap: 18px; margin-top: 32px; }
.store-badge { min-width: 0; width: 100%; display: grid; grid-template-rows: 60px auto; justify-items: center; align-items: start; gap: 8px; color: var(--muted); text-decoration: none; }
.store-badge img { height: 60px; width: auto; display: block; object-fit: contain; transition: transform .25s ease, filter .25s ease; }
a.store-badge:hover img { transform: translateY(-3px); filter: drop-shadow(0 10px 16px rgba(30,22,55,.15)); }
.store-badge small { font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.store-badge-pending { cursor: default; }
.store-legal { margin-top: 24px !important; font-size: 10px !important; line-height: 1.45; }
.tutorial-library { background: var(--soft); }
.tutorial-row { display: grid; grid-template-columns: 1.15fr .85fr; gap: 60px; align-items: center; padding: 55px 0; border-bottom: 1px solid var(--line); }
.tutorial-row:nth-child(even) .tutorial-video { order: 2; }
.tutorial-video { padding: 9px; border-radius: 28px; background: #111a2d; box-shadow: var(--shadow); }
.tutorial-video video { width: 100%; border-radius: 20px; }
.tutorial-copy h2 { margin: 18px 0 12px; font-size: 43px; letter-spacing: -.045em; }
.tutorial-copy > p { color: var(--muted); font-size: 16px; }
.tutorial-copy ol { margin: 25px 0 30px; padding-inline-start: 20px; color: #42516a; }
.tutorial-copy li { margin: 10px 0; }

.security-hero { background: #171534; }
.security-seal-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 35px; }
.security-seal-row span { padding: 10px 13px; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; color: #91e6d8; background: rgba(255,255,255,.05); font-size: 10px; font-weight: 900; }
.principle-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 19px; }
.principle-card { min-height: 270px; padding: 31px; border: 1px solid var(--line); border-radius: 27px; }
.principle-card > span { color: var(--teal); font-size: 11px; font-weight: 900; }
.principle-card h2 { margin: 42px 0 13px; font-size: 22px; }
.principle-card p { margin: 0; color: var(--muted); font-size: 14px; }
.ai-security { background: #f6f3ff; }
.two-column { display: grid; grid-template-columns: repeat(2, 1fr); gap: 85px; align-items: start; }
.two-column h2 { margin: 20px 0; font-size: 48px; line-height: 1.05; letter-spacing: -.045em; }
.encrypted-record { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 15px; margin-top: 35px; padding: 20px; border: 1px solid #d8d0f4; border-radius: 20px; background: rgba(255,255,255,.78); }
.lock-symbol { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 15px; color: white; background: var(--purple); }
.encrypted-record div { display: flex; flex-direction: column; }
.encrypted-record small { margin-top: 5px; color: var(--muted); font-family: Consolas, monospace; font-size: 10px; }
.key-chip { padding: 8px 10px; border-radius: 9px; color: var(--teal-dark); background: var(--mint); font-size: 10px; font-weight: 900; }
.numbered-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: secure; }
.numbered-list li { position: relative; padding: 22px 20px 22px 62px; border-bottom: 1px solid rgba(104,87,171,.16); color: #394a63; line-height: 1.6; counter-increment: secure; }
html[dir="rtl"] .numbered-list li { padding: 22px 62px 22px 20px; }
.numbered-list li::before { content: counter(secure, decimal-leading-zero); position: absolute; left: 10px; top: 22px; color: var(--purple); font-weight: 900; }
html[dir="rtl"] .numbered-list li::before { left: auto; right: 10px; }
.compliance-section { background: var(--navy); color: white; }
.compliance-section .two-column > div > p { color: #aebdd0; }
.legal-links { display: flex; gap: 12px; margin-top: 25px; }
.legal-links a { padding: 11px 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; color: #8de4d8; font-size: 12px; font-weight: 800; }
.compliance-list { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }
.compliance-list li { display: grid; grid-template-columns: 47px 1fr; gap: 16px; align-items: center; padding: 16px; border: 1px solid rgba(255,255,255,.1); border-radius: 17px; background: rgba(255,255,255,.04); }
.compliance-list li > span { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 12px; color: #a88cff; background: rgba(112,71,235,.15); font-size: 10px; font-weight: 900; }
.compliance-list p { margin: 0; color: #c2cfe0; font-size: 13px; }

.demo-hero { min-height: 100vh; padding: 165px 0 100px; color: white; background: #171534; }
.demo-head { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 35px; }
.demo-head h1 { margin: 15px 0 5px; font-size: 55px; letter-spacing: -.05em; }
.demo-head p { margin: 0; color: #9eb0c8; }
.role-switch { display: flex; padding: 5px; border: 1px solid rgba(255,255,255,.13); border-radius: 15px; background: rgba(255,255,255,.05); }
.role-switch button { padding: 11px 16px; border: 0; border-radius: 11px; color: #a7b7ca; background: transparent; font-size: 12px; font-weight: 800; }
.role-switch button.active { color: var(--ink); background: white; }
.demo-shell { min-height: 690px; display: grid; grid-template-columns: 210px 1fr; overflow: hidden; color: var(--ink); border: 1px solid rgba(255,255,255,.14); border-radius: 31px; background: #f4f8fb; box-shadow: 0 35px 90px rgba(0,0,0,.34); }
.demo-sidebar { display: flex; flex-direction: column; padding: 26px 18px; color: white; background: #241750; }
.demo-logo { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; background: var(--teal); font-weight: 900; }
.demo-sidebar nav { display: grid; gap: 7px; margin-top: 50px; }
.demo-sidebar a { padding: 13px 15px; border-radius: 11px; color: #aebcd1; font-size: 12px; }
.demo-sidebar a.active { color: white; background: var(--purple); }
.demo-sidebar small { margin-top: auto; color: #71839d; font-size: 9px; }
.demo-main { padding: 27px; }
.demo-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 25px; }
.demo-top div { display: flex; flex-direction: column; }
.demo-top strong { font-size: 22px; }
.demo-top small { margin-top: 5px; color: var(--muted); font-size: 11px; }
.safe-badge { padding: 9px 12px; border-radius: 10px; color: var(--green); background: #e4f7ef; font-size: 9px; font-weight: 900; }
.demo-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 17px; }
.demo-stats article { display: flex; flex-direction: column; padding: 22px; border: 1px solid var(--line); border-radius: 19px; background: white; }
.demo-stats small { color: var(--muted); font-size: 11px; }
.demo-stats strong { margin: 11px 0 5px; font-size: 32px; }
.demo-stats span { color: var(--teal-dark); font-size: 10px; font-weight: 800; }
.demo-grid { display: grid; grid-template-columns: 1.4fr .6fr; gap: 17px; }
.demo-card { min-height: 390px; padding: 25px; border: 1px solid var(--line); border-radius: 21px; background: white; }
.demo-card h2 { margin: 0 0 25px; font-size: 18px; }
.appointment { display: grid; grid-template-columns: 60px 1fr auto; gap: 13px; align-items: center; padding: 17px 0; border-bottom: 1px solid var(--line); }
.appointment time { color: var(--purple); font-weight: 900; }
.appointment > span { display: flex; flex-direction: column; font-size: 13px; font-weight: 750; }
.appointment small { margin-top: 4px; color: var(--muted); font-size: 10px; font-weight: 500; }
.appointment b { padding: 7px 9px; border-radius: 8px; color: var(--green); background: #e5f7ef; font-size: 9px; }
.ai-demo { text-align: center; }
.record-orb { width: 91px; height: 91px; display: grid; place-items: center; margin: 45px auto 22px; border: 1px solid #d8d0f5; border-radius: 50%; background: #f1edfd; }
.record-orb i { width: 29px; height: 29px; border: 7px solid white; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 1px #f2b9c3; }
.ai-demo > strong { display: block; font-size: 15px; }
.ai-demo > p { margin: 7px 0 18px; color: var(--muted); font-size: 11px; }
.ai-demo > button { padding: 10px 14px; border: 0; border-radius: 11px; color: white; background: var(--purple); font-size: 11px; font-weight: 800; }
.ward { display: grid; grid-template-columns: 140px 1fr 45px; gap: 14px; align-items: center; margin: 25px 0; font-size: 11px; }
.ward i { height: 7px; overflow: hidden; border-radius: 8px; background: #e8edf3; }
.ward b { height: 100%; display: block; border-radius: 8px; background: linear-gradient(90deg,var(--teal),var(--purple)); }
.ward-progress-93 { width: 93%; }.ward-progress-86 { width: 86%; }.ward-progress-85 { width: 85%; }.ward-progress-75 { width: 75%; }
.alert-line { display: grid; grid-template-columns: 31px 1fr auto; gap: 11px; align-items: center; padding: 15px 0; border-bottom: 1px solid var(--line); }
.alert-line > span { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 9px; font-size: 11px; font-weight: 900; }
.alert-line p { margin: 0; font-size: 11px; }
.alert-line time { color: var(--muted); font-size: 9px; }
.alert-line.red > span { color: var(--red); background: #fce9ed; }.alert-line.amber > span { color: #a76800; background: #fff1d5; }.alert-line.green > span { color: var(--green); background: #e5f7ef; }
.patient-demo { min-height: 560px; display: grid; grid-template-columns: 1fr 330px; gap: 60px; align-items: center; padding: 30px 80px; }
.patient-demo h2 { margin: 18px 0 8px; font-size: 47px; letter-spacing: -.05em; }
.patient-demo > div > p { color: var(--muted); }
.patient-demo > img { max-height: 510px; margin-inline: auto; border: 8px solid #101a2d; border-radius: 38px; box-shadow: var(--shadow); }
.patient-demo > .medlib-health-phone { width: 282px; margin-inline: auto; filter: drop-shadow(0 30px 38px rgba(35,23,76,.22)); }
.next-appointment { display: flex; flex-direction: column; margin: 28px 0; padding: 25px; border-radius: 21px; color: white; background: linear-gradient(135deg,var(--purple),#8e67f3); }
.next-appointment small { color: #e3dcff; font-size: 10px; font-weight: 850; }
.next-appointment strong { margin: 16px 0 5px; font-size: 21px; }
.next-appointment span { font-size: 12px; }
.patient-actions { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.patient-actions button { padding: 15px; border: 1px solid var(--line); border-radius: 13px; color: var(--ink); background: white; font-size: 11px; font-weight: 800; }

.contact-hero { background: #171534; }
.contact-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; align-items: start; }
.contact-copy { position: sticky; top: 140px; }
.contact-copy > p { color: var(--muted); font-size: 17px; }
.contact-points { display: grid; grid-template-columns: 42px 1fr; gap: 14px 15px; align-items: center; margin-top: 35px; }
.contact-points > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; color: var(--teal-dark); background: var(--mint); font-size: 10px; font-weight: 900; }
.contact-points p { margin: 0; color: #3d4c64; font-size: 13px; }
.contact-form { display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; padding: 35px; border: 1px solid var(--line); border-radius: 30px; background: white; box-shadow: var(--shadow); }
.contact-form label { display: grid; gap: 8px; color: #3b4b64; font-size: 12px; font-weight: 800; }
.contact-form label:nth-of-type(6), .contact-form .consent-check, .contact-form .button, .contact-form .form-status { grid-column: 1 / -1; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; padding: 14px 15px; border: 1px solid #d9e2ed; border-radius: 13px; outline: none; color: var(--ink); background: #fbfcfe; transition: border .2s, box-shadow .2s; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: var(--purple); box-shadow: 0 0 0 4px rgba(112,71,235,.11); }
.contact-form textarea { resize: vertical; }
.consent-check { display: grid !important; grid-template-columns: 20px 1fr; align-items: start; gap: 10px !important; font-weight: 500 !important; line-height: 1.5; }
.consent-check input { width: 17px; height: 17px; margin-top: 2px; accent-color: var(--teal); }
.honeypot { position: absolute; left: -9999px; }
.form-status { min-height: 22px; margin: 0; color: var(--teal-dark); font-size: 13px; }

.legal-content article { padding: 26px 0; border-bottom: 1px solid var(--line); }
.legal-content h2 { margin: 0 0 12px; font-size: 25px; }
.legal-content p { margin: 0; color: var(--muted); }
.placeholder-warning { margin-top: 40px; padding: 22px; border: 1px solid #f0cf98; border-radius: 18px; color: #7f5b1e; background: #fff8e9; font-size: 13px; font-weight: 750; }

.video-modal { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 30px; }
.video-modal[hidden] { display: none; }
.video-modal-backdrop { position: absolute; inset: 0; background: rgba(2,7,15,.88); backdrop-filter: blur(10px); }
.video-modal-panel { width: min(1160px, 95vw); position: relative; z-index: 2; padding: 8px; border: 1px solid rgba(255,255,255,.16); border-radius: 26px; background: #0b1424; box-shadow: 0 40px 100px rgba(0,0,0,.5); }
.video-modal-panel video { width: 100%; max-height: 80vh; border-radius: 19px; background: black; }
.video-close { position: absolute; right: 12px; top: -47px; padding: 9px 13px; border: 1px solid rgba(255,255,255,.2); border-radius: 11px; color: white; background: rgba(255,255,255,.09); }
html[dir="rtl"] .video-close { right: auto; left: 12px; }

.js .reveal { opacity: 0; transform: translateY(34px); transition: opacity .75s ease, transform .75s cubic-bezier(.2,.7,.2,1); }
.js .reveal.is-visible { opacity: 1; transform: translateY(0); }
.js .solution-device.reveal { transform: translateX(110px) scale(.97); transition-duration: .95s; }
.js .solution-device.reveal.is-visible { transform: translateX(0) scale(1); }
html[dir="rtl"] .js .solution-device.reveal { transform: translateX(-110px) scale(.97); }
html[dir="rtl"] .js .solution-device.reveal.is-visible { transform: translateX(0) scale(1); }
@keyframes pulse { 0%,100% { box-shadow: 0 0 0 0 rgba(73,212,170,.5); } 50% { box-shadow: 0 0 0 7px rgba(73,212,170,0); } }
@keyframes scrollCue { 0% { transform: translateY(0); opacity: 1; } 75%,100% { transform: translateY(17px); opacity: 0; } }
@keyframes wave { 0%,100% { height: 13px; } 50% { height: 43px; } }
@keyframes deviceGlow { 0%,100% { transform: scale(.92); opacity: .72; } 50% { transform: scale(1.08); opacity: 1; } }
@keyframes notificationFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }

@media (max-width: 1180px) {
    .site-header { padding-inline: 24px; }
    .main-nav { gap: 15px; }
    .main-nav a { font-size: 12px; }
    .header-actions .button-ghost { display: none; }
    .hero-grid, .solution-hero-grid { gap: 35px; }
    .hero-copy h1 { font-size: 62px; }
    .floating-dashboard { left: -5px; }
    .security-grid { gap: 45px; }
    .device-stage-monitor { width: 114%; margin-inline: -4% -10%; }
}

@media (max-width: 960px) {
    .pro-price-card { grid-template-columns: 1fr; }
    :root { --container: min(100% - 34px, 760px); }
    .section { padding: 88px 0; }
    .site-header { grid-template-columns: auto 1fr auto; }
    .menu-toggle { display: flex; justify-self: end; }
    .main-nav { display: none; position: absolute; top: 72px; left: 17px; right: 17px; flex-direction: column; align-items: stretch; gap: 2px; padding: 16px; border: 1px solid var(--line); border-radius: 20px; color: var(--ink); background: white; box-shadow: var(--shadow); }
    .main-nav.open { display: flex; }
    .main-nav a { padding: 13px; border-radius: 10px; }
    .main-nav a.active { color: var(--teal-dark); background: var(--mint); }
    .main-nav a::after { display: none; }
    .main-nav .mobile-access-link { display: block; color: var(--purple); background: #f4f0ff; }
    .header-actions { display: none; }
    .hero { padding-top: 155px; }
    .hero-grid, .ai-grid, .security-grid, .solution-hero-grid, .workflow-grid, .video-feature, .two-column, .contact-grid { grid-template-columns: 1fr; }
    .hero-copy { max-width: 700px; }
    .hero-copy h1 { font-size: 65px; }
    .hero-visual { min-height: 570px; }
    .audience-grid, .principle-grid { grid-template-columns: 1fr; }
    .audience-card { height: 530px; }
    .connect-lane { grid-template-columns: 56px 1fr; gap: 14px 18px; }
    .connect-rail { grid-column: 1 / -1; }
    .connect-lane-result { grid-column: 2; }
    .care-flow { grid-template-columns: 1fr; gap: 0; }
    .care-flow::before { top: 20px; bottom: 20px; left: 21px; right: auto; width: 2px; height: auto; }
    html[dir="rtl"] .care-flow::before { left: auto; right: 21px; }
    .flow-step { display: grid; grid-template-columns: 43px 1fr; grid-template-rows: auto auto; column-gap: 20px; padding: 20px 0; text-align: start; }
    .flow-number { display: none; }
    .flow-dot { grid-row: 1/3; margin: 3px 9px; }
    .flow-step h3, .flow-step p { grid-column: 2; }
    .ai-grid { gap: 75px; }
    .section-heading.split { grid-template-columns: 1fr; gap: 20px; }
    .video-grid { grid-template-columns: 1fr; }
    .security-copy, .workflow-copy, .contact-copy { position: static; }
    .solution-hero-grid { gap: 65px; }
    .solution-copy h1 { font-size: 64px; }
    .device-stage-monitor { width: 100%; margin-inline: 0; }
    .module-grid { grid-template-columns: repeat(2, 1fr); }
    .tutorial-row { grid-template-columns: 1fr; }
    .tutorial-row:nth-child(even) .tutorial-video { order: 0; }
    .video-feature { padding: 28px; }
    .patient-download-card { grid-template-columns: 1fr; padding: 50px; }
    .demo-shell { grid-template-columns: 1fr; }
    .demo-sidebar { display: none; }
    .patient-demo { padding: 30px; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .footer-grid > div:first-child { grid-column: 1/-1; }
    .security-contact-card { grid-template-columns: 1fr; }
    .access-grid { grid-template-columns: 1fr; }
    .access-card { min-height: 0; }
}

@media (max-width: 640px) {
    .pro-price-main { padding: 32px 24px; }
    .pro-price-main > strong { font-size: 34px; }
    .pro-price-cycles { grid-template-columns: 1fr; padding: 16px; }
    .pro-price-cycles p { margin-top: 18px; }
    :root { --container: calc(100% - 28px); }
    .demo-ribbon { padding-inline: 14px; text-align: center; letter-spacing: .06em; }
    .site-header { height: 68px; top: 0; padding-inline: 16px; }
    .demo-ribbon + .site-header { top: 30px; }
    .site-header.scrolled { height: 64px; }
    .brand-mark { width: 41px; height: 41px; border-radius: 12px; }
    .brand-copy strong { font-size: 23px; }
    .main-nav { top: 65px; }
    .hero { min-height: auto; padding: 145px 0 80px; }
    .hero-copy h1, .solution-copy h1 { font-size: 47px; }
    .hero-copy > p, .solution-copy > p { font-size: 16px; }
    .connect-section { padding-top: 78px; }
    .connect-lane { grid-template-columns: 48px 1fr; padding: 19px; border-radius: 20px; }
    .connect-lane-icon { width: 46px; height: 46px; border-radius: 15px; }
    .connect-lane-result { grid-column: 1 / -1; padding-inline-start: 4px; }
    .connect-rail { gap: 8px; }
    .connect-rail b { padding: 8px 10px; font-size: 8px; }
    .hero-actions, .cta-actions { flex-direction: column; }
    .hero-actions .button, .cta-actions .button { width: 100%; }
    .trust-row { gap: 12px; }
    .hero-visual { min-height: 470px; margin-top: 25px; }
    .hero-photo-wrap { width: 100%; height: 440px; border-radius: 30px; }
    .floating-dashboard { width: calc(100% - 22px); left: 11px; bottom: -20px; }
    .floating-security { right: 10px; top: 18px; }
    html[dir="rtl"] .floating-security { right: auto; left: 10px; }
    .scroll-cue { display: none; }
    .section-heading h2, .ai-copy h2, .security-copy h2, .workflow-copy h2, .contact-copy h2 { font-size: 39px; }
    .audience-card { height: 520px; }
    .audience-face { padding: 28px; }
    .product-window { transform: none; }
    .scribe-ui { grid-template-columns: 48px 1fr; min-height: 660px; }
    .scribe-sidebar { gap: 20px; padding-inline: 8px; }
    .scribe-brand { width: 33px; height: 33px; }
    .scribe-workspace { padding: 14px; }
    .scribe-progress span { font-size: 0; }
    .scribe-progress b { font-size: 8px; }
    .scribe-columns { grid-template-columns: 1fr; }
    .voice-wave { width: 88%; left: 6%; }
    .security-cards, .module-grid, .principle-grid { grid-template-columns: 1fr; }
    .cta-card { min-height: 440px; padding: 42px 24px; border-radius: 30px; }
    .cta-card h2 { font-size: 42px; }
    .security-contact-section { padding: 24px 0 0; }
    .security-contact-card { gap: 28px; padding: 30px 22px 22px; border-radius: 28px; }
    .security-contact-copy h2 { margin-top: 16px; font-size: 40px; }
    .security-contact-copy > p { font-size: 15px; }
    .security-contact-trust { display: grid; grid-template-columns: 1fr; gap: 9px; margin-top: 25px; }
    .security-contact-trust span { width: 100%; }
    .security-contact-action { padding: 27px 23px; border-radius: 22px; }
    .security-contact-action h3 { font-size: 29px; }
    .security-contact-action .button { width: 100%; text-align: center; }
    .page-hero.access-hero { min-height: 500px; padding-top: 125px; }
    .access-hero h1 { font-size: 47px; }
    .page-hero.access-hero p { font-size: 16px; }
    .access-section { padding-top: 48px; }
    .access-card { padding: 27px; border-radius: 24px; }
    .access-card h2 { margin-top: 28px; font-size: 28px; }
    .access-demo-note { align-items: flex-start; flex-direction: column; padding: 22px; }
    .site-footer { padding-inline: 20px; }
    .footer-grid { grid-template-columns: 1fr; gap: 35px; }
    .footer-grid > div:first-child { grid-column: auto; }
    .footer-bottom { flex-direction: column; gap: 8px; }
    .solution-hero { min-height: auto; padding: 155px 0 85px; }
    .solution-device { min-height: 450px; }
    .device-stage-phone { min-height: 650px; }
    .device-phone { width: min(390px, 88vw); }
    .device-notification { right: 0; }
    .metric-row { flex-direction: column; }
    .metric-row > div { min-width: 0; }
    .workflow-list article { grid-template-columns: 55px 1fr; }
    .video-feature { gap: 30px; padding: 18px; }
    .patient-download-card { padding: 34px 24px; border-radius: 26px; }
    .patient-download-copy h2 { font-size: 39px; }
    .store-badges { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .store-badge { min-width: 0; grid-template-rows: 56px auto; }
    .store-badge img { width: 100%; height: auto; max-height: 56px; align-self: start; }
    .video-feature h2 { font-size: 31px; }
    .page-hero { min-height: 500px; padding-top: 160px; }
    .page-hero-dark h1, .security-hero h1, .contact-hero h1 { font-size: 48px; }
    .two-column h2 { font-size: 39px; }
    .encrypted-record { grid-template-columns: auto 1fr; }
    .key-chip { grid-column: 2; width: max-content; }
    .demo-head { align-items: stretch; flex-direction: column; }
    .role-switch { overflow-x: auto; }
    .demo-main { padding: 16px; }
    .demo-stats, .demo-grid { grid-template-columns: 1fr; }
    .demo-card { min-height: auto; }
    .patient-demo { grid-template-columns: 1fr; padding: 20px; }
    .patient-demo > img { max-height: 420px; }
    .patient-demo > .medlib-health-phone { width: min(280px, 82vw); }
    .contact-form { grid-template-columns: 1fr; padding: 22px; }
    .contact-form label, .contact-form label:nth-of-type(6) { grid-column: 1; }
    .video-modal { padding: 14px; }
}

/* Medlib Connect V2 — visible, horizontal and least-privilege by design */
.connect-section {
    padding: 126px 0 112px;
    color: #ffffff;
    background: #151126;
}
.connect-section::before { display: none; }
.connect-heading { max-width: 930px; margin-bottom: 54px; }
.connect-heading h2 { max-width: 900px; margin-inline: auto; }
.connect-heading p { max-width: 760px; margin-inline: auto; }

.connect-experience {
    display: grid;
    grid-template-columns: minmax(245px,.72fr) minmax(235px,.62fr) minmax(500px,1.5fr);
    align-items: stretch;
    gap: 18px;
}
.connect-patient-card,
.connect-trust-core {
    min-width: 0;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 30px;
    background: #201936;
    box-shadow: 0 28px 65px rgba(5,3,13,.3);
}
.connect-patient-card { padding: 22px 22px 25px; }
.connect-patient-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.connect-step-number { color: #bcaafb; font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.connect-secure-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 10px;
    color: #e9e2ff;
    border: 1px solid rgba(188,170,251,.23);
    border-radius: 999px;
    background: #2b214a;
    font-size: 9px;
    font-weight: 850;
    white-space: nowrap;
}
.connect-secure-chip img { width: 17px; height: 17px; filter: brightness(0) invert(1); opacity: .88; }
.connect-phone-preview {
    width: 190px;
    aspect-ratio: 644/1410;
    position: relative;
    margin: 16px auto 18px;
    filter: drop-shadow(0 22px 24px rgba(2,1,8,.44));
    animation: connectPhoneFloat 5.8s ease-in-out infinite;
}
.connect-phone-preview > .medlib-health-phone { width: 100%; }
.connect-patient-copy small,
.connect-trust-core > small,
.connect-destination-start small,
.connect-destination-back small {
    color: #bcaafb;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.connect-patient-copy h3,
.connect-trust-core h3 { margin: 8px 0 9px; font-size: 22px; line-height: 1.13; letter-spacing: -.035em; }
.connect-patient-copy p { margin: 0; color: rgba(255,255,255,.62); font-size: 11px; line-height: 1.65; }

.connect-trust-core {
    display: flex;
    flex-direction: column;
    padding: 24px;
    background: #7047eb;
}
.connect-core-mark { min-height: 144px; display: grid; place-items: center; position: relative; }
.connect-core-mark .brand-mark { width: 74px; height: 74px; z-index: 2; border: 1px solid rgba(255,255,255,.3); background: #ffffff; color: #7047eb; box-shadow: 0 18px 38px rgba(29,12,84,.28); font-size: 25px; }
.connect-core-mark i { width: 118px; height: 118px; position: absolute; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; animation: connectCorePulse 3.2s ease-in-out infinite; }
.connect-trust-core > small { color: rgba(255,255,255,.67); }
.connect-trust-core ul { display: grid; gap: 8px; margin: 18px 0 22px; padding: 0; list-style: none; }
.connect-trust-core li { display: grid; grid-template-columns: 27px 1fr; align-items: center; gap: 9px; color: rgba(255,255,255,.86); font-size: 11px; line-height: 1.35; }
.connect-trust-core li span { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 9px; color: white; background: rgba(255,255,255,.13); font-size: 8px; font-weight: 900; }
.connect-trust-core > a { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 17px; border-top: 1px solid rgba(255,255,255,.22); font-size: 11px; font-weight: 850; }
.connect-trust-core > a span { font-size: 18px; }

.connect-destinations { min-width: 0; display: grid; grid-template-rows: repeat(3, 1fr); gap: 13px; }
.connect-destination { min-height: 168px; outline: none; perspective: 1400px; }
.connect-destination-inner { width: 100%; height: 100%; position: relative; transform-style: preserve-3d; transition: transform .72s cubic-bezier(.2,.74,.2,1); }
.connect-destination.is-flipped .connect-destination-inner { transform: rotateX(180deg); }
.connect-destination-face {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 25px;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    box-shadow: 0 20px 50px rgba(5,3,13,.22);
}
.connect-destination-front {
    display: grid;
    grid-template-columns: 54px minmax(112px,.8fr) minmax(145px,1.1fr) minmax(125px,1fr);
    align-items: center;
    gap: 14px;
    padding: 22px;
    background: #211a38;
}
.connect-destination-back {
    display: grid;
    grid-template-columns: 54px minmax(0,1fr) auto;
    align-items: center;
    gap: 16px;
    padding: 22px;
    transform: rotateX(180deg);
    background: #ffffff;
    color: #12192b;
}
.connect-destination-icon { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 17px; background: #ffffff; }
.connect-destination-icon img { width: 26px; height: 26px; }
.connect-destination-start { display: flex; flex-direction: column; gap: 7px; }
.connect-destination-start strong,
.connect-destination-result strong { font-size: 13px; line-height: 1.38; }
.connect-flow-line { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 8px; color: #c9b9ff; }
.connect-flow-line i { height: 1px; position: relative; overflow: visible; background: rgba(188,170,251,.3); }
.connect-flow-line i:first-child::after {
    content: "";
    width: 7px;
    height: 7px;
    position: absolute;
    top: -3px;
    left: 0;
    border-radius: 50%;
    background: #bcaafb;
    animation: connectRail 2.8s ease-in-out infinite;
}
html[dir="rtl"] .connect-flow-line i:first-child::after { left: auto; right: 0; animation-name: connectRailRtl; }
.connect-flow-line b { padding: 7px 9px; border: 1px solid rgba(188,170,251,.22); border-radius: 999px; background: #2b214a; font-size: 7px; letter-spacing: .12em; }
.connect-destination-result { display: flex; align-items: center; gap: 9px; }
.connect-destination-result > span { width: 27px; height: 27px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; color: #221642; background: #d7caff; font-size: 10px; font-weight: 900; }
.connect-turn-hint { position: absolute; inset-inline-end: 18px; bottom: 9px; color: rgba(255,255,255,.42); font-size: 8px; font-weight: 800; letter-spacing: .05em; }
.connect-destination-back .connect-destination-icon { background: #f1edff; }
.connect-destination-back small { display: block; margin-bottom: 7px; color: #7047eb; }
.connect-destination-back strong { display: block; max-width: 430px; color: #26324a; font-size: 12px; line-height: 1.55; }
.connect-destination-back a { display: inline-flex; align-items: center; gap: 9px; padding: 11px 13px; border-radius: 12px; color: #ffffff; background: #7047eb; font-size: 10px; font-weight: 850; white-space: nowrap; }
.connect-destination:focus-visible { border-radius: 25px; box-shadow: 0 0 0 4px rgba(188,170,251,.32); }

.connect-privacy-note {
    min-height: 76px;
    display: grid;
    grid-template-columns: 46px minmax(0,1fr) auto;
    align-items: center;
    gap: 15px;
    max-width: none;
    margin: 22px 0 0;
    padding: 14px 17px;
    color: rgba(255,255,255,.72);
    text-align: start;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 22px;
    background: #201936;
}
.connect-privacy-note p { margin: 0; font-size: 11px; line-height: 1.6; }
.connect-privacy-note strong { color: #ffffff; }
.connect-privacy-icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 14px; background: #ffffff; }
.connect-compliance-tag { padding: 9px 11px; border: 1px solid rgba(188,170,251,.2); border-radius: 999px; color: #d8ceff; background: #2b214a; font-size: 8px; font-weight: 900; letter-spacing: .12em; white-space: nowrap; }

.access-card-selected { position: relative; border-color: rgba(112,71,235,.55); box-shadow: 0 30px 80px rgba(62,39,145,.18), 0 0 0 4px rgba(112,71,235,.08); transform: translateY(-6px); }
.access-selected-badge { align-self: flex-start; margin: 0 0 14px; padding: 7px 10px; border-radius: 999px; color: #5c39d0; background: #f0ebff; font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }

@media (hover: hover) and (pointer: fine) {
    .connect-destination:hover .connect-destination-inner { transform: rotateX(180deg); }
}

@keyframes connectPhoneFloat { 0%,100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-10px) rotate(1deg); } }
@keyframes connectCorePulse { 0%,100% { transform: scale(.92); opacity: .55; } 50% { transform: scale(1.06); opacity: 1; } }
@keyframes connectRail { 0% { left: 0; opacity: 0; } 18% { opacity: 1; } 82% { opacity: 1; } 100% { left: calc(100% - 7px); opacity: 0; } }
@keyframes connectRailRtl { 0% { right: 0; opacity: 0; } 18% { opacity: 1; } 82% { opacity: 1; } 100% { right: calc(100% - 7px); opacity: 0; } }

@media (max-width: 1180px) {
    .connect-experience { grid-template-columns: minmax(240px,.72fr) minmax(220px,.62fr) minmax(420px,1.38fr); }
    .connect-destination-front { grid-template-columns: 48px 1fr 1fr; }
    .connect-destination-icon { width: 48px; height: 48px; }
    .connect-flow-line { grid-column: 2 / -1; order: 4; }
    .connect-destination-result { justify-self: end; }
}

@media (max-width: 960px) {
    .connect-experience { grid-template-columns: 1fr 1fr; }
    .connect-destinations { grid-column: 1 / -1; }
    .connect-patient-card,
    .connect-trust-core { min-height: 530px; }
    .connect-phone-preview { width: 205px; }
    .connect-destination { min-height: 152px; }
    .connect-destination-front { grid-template-columns: 54px minmax(120px,.8fr) minmax(180px,1.1fr) minmax(145px,1fr); }
    .connect-flow-line { grid-column: auto; order: initial; }
}

@media (max-width: 640px) {
    .connect-section { padding: 92px 0 82px; }
    .connect-heading { margin-bottom: 38px; }
    .connect-experience { grid-template-columns: 1fr; }
    .connect-patient-card,
    .connect-trust-core,
    .connect-destinations { grid-column: auto; }
    .connect-patient-card,
    .connect-trust-core { min-height: auto; }
    .connect-phone-preview { width: 180px; }
    .connect-destination { min-height: 215px; }
    .connect-destination-front { grid-template-columns: 47px 1fr; align-content: center; gap: 12px; padding: 19px; }
    .connect-destination-icon { width: 47px; height: 47px; }
    .connect-flow-line { grid-column: 1 / -1; }
    .connect-destination-result { grid-column: 1 / -1; justify-self: start; }
    .connect-destination-back { grid-template-columns: 47px 1fr; align-content: center; padding: 19px; }
    .connect-destination-back a { grid-column: 1 / -1; justify-content: center; }
    .connect-privacy-note { grid-template-columns: 42px 1fr; }
    .connect-privacy-icon { width: 42px; height: 42px; }
    .connect-compliance-tag { grid-column: 1 / -1; justify-self: start; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    .js .reveal { opacity: 1; transform: none; }
}

/* 2026 product direction: light, purple and device-led */
.product-hero {
    min-height: 1050px;
    padding: 155px 0 28px;
    color: var(--ink);
    background: #ffffff;
}
.product-hero::before,
.product-hero .hero-orb,
.product-hero .scroll-cue { display: none; }
.product-hero .hero-grid {
    width: min(1380px, calc(100vw - 64px));
    grid-template-columns: minmax(430px, .78fr) minmax(660px, 1.22fr);
    gap: 10px;
    min-height: 610px;
}
.product-hero .hero-copy { position: relative; z-index: 10; padding: 54px 0 10px; }
.product-hero .hero-copy h1 {
    max-width: 610px;
    margin: 24px 0 26px;
    color: var(--ink);
    font-size: clamp(56px, 4.7vw, 70px);
    line-height: .98;
    letter-spacing: -.06em;
}
.product-hero .hero-copy h1 span,
.product-hero .hero-copy > p span { display: block; }
.product-hero .hero-copy > p {
    max-width: 560px;
    color: #64718a;
    font-size: 20px;
    line-height: 1.62;
}
.product-hero .eyebrow { color: var(--purple); }
.product-hero .hero-actions { flex-wrap: nowrap; margin-top: 35px; }
.product-hero .hero-actions .button-large { padding-inline: 20px; font-size: 12px; white-space: nowrap; }
.button-outline {
    color: var(--ink);
    border: 1px solid #d7deea;
    background: #ffffff;
    box-shadow: none;
}
.button-outline:hover {
    color: var(--purple);
    border-color: rgba(112,71,235,.36);
    background: #f8f6ff;
    box-shadow: 0 15px 34px rgba(65,43,136,.11);
}

.product-hero .hero-visual {
    min-height: 610px;
    position: relative;
    z-index: 2;
    perspective: 1500px;
    transform-style: preserve-3d;
    transition: transform .35s cubic-bezier(.2,.75,.2,1);
}
.hero-device {
    position: absolute;
    margin: 0;
    filter: drop-shadow(0 30px 36px rgba(28,35,65,.16));
    transform-origin: center bottom;
    will-change: transform;
}
.hero-device-doctor {
    width: 650px;
    inset-inline-end: 65px;
    top: 20px;
    z-index: 3;
    animation: medlibDeviceFloat 6.2s ease-in-out infinite;
}
.hero-device-hospital {
    width: 515px;
    inset-inline-end: -315px;
    top: 150px;
    z-index: 1;
    opacity: .92;
    animation: medlibDeviceFloat 7.1s ease-in-out -2.1s infinite;
}
.hero-device-phone {
    width: 235px;
    inset-inline-start: -38px;
    bottom: 8px;
    z-index: 6;
    animation: medlibPhoneFloat 5.6s ease-in-out -.8s infinite;
}
.monitor-frame,
.phone-frame { position: relative; z-index: 2; width: 100%; height: auto; pointer-events: none; }
.monitor-screen {
    position: absolute;
    z-index: 1;
    left: 10.65%;
    top: 10.5%;
    width: 78.35%;
    height: 63.55%;
    overflow: hidden;
    background: #f7f8fc;
}
.monitor-screen img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.monitor-screen .hospital-screen { filter: hue-rotate(48deg) saturate(.82); }
.phone-screen {
    position: absolute;
    z-index: 1;
    left: 20.7%;
    top: 7.2%;
    width: 59.2%;
    height: 85.6%;
    overflow: hidden;
    border-radius: 22px;
    background: #ffffff;
}
.phone-screen img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    filter: hue-rotate(92deg) saturate(1.06);
}
.product-live-chip {
    position: absolute;
    z-index: 9;
    inset-inline-start: 205px;
    top: 60px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 11px 15px;
    color: #5b37cf;
    border: 1px solid rgba(112,71,235,.2);
    border-radius: 999px;
    background: rgba(255,255,255,.94);
    box-shadow: 0 16px 36px rgba(54,39,111,.14);
    font-size: 11px;
    font-weight: 850;
    animation: medlibChipFloat 4.8s ease-in-out infinite;
}
.product-live-chip span { width: 8px; height: 8px; border-radius: 50%; background: var(--purple); box-shadow: 0 0 0 5px rgba(112,71,235,.12); }

.hero-delivery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 39px;
    overflow: hidden;
    border: 1px solid #e4e8f0;
    border-radius: 26px;
    background: #ffffff;
    box-shadow: 0 24px 70px rgba(32,41,75,.08);
}
.hero-delivery a {
    min-height: 108px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 22px 34px;
    border-inline-end: 1px solid #e4e8f0;
    transition: color .25s, background .25s, transform .25s;
}
.hero-delivery a:last-child { border-inline-end: 0; }
.hero-delivery a:hover { color: var(--purple); background: #faf9ff; transform: translateY(-3px); }
.hero-delivery b {
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    display: grid;
    place-items: center;
    color: var(--purple);
    border: 1px solid rgba(112,71,235,.22);
    border-radius: 50%;
    background: #f4f0ff;
    font-size: 12px;
}
.hero-delivery span { display: flex; flex-direction: column; gap: 5px; }
.hero-delivery strong { font-size: 17px; }
.hero-delivery small { color: var(--purple); font-size: 14px; }
.hero-security-note {
    margin: 25px auto 0;
    color: #6e7b91;
    text-align: center;
    font-size: 13px;
    font-weight: 650;
}

@keyframes medlibDeviceFloat {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(0, -12px, 0); }
}
@keyframes medlibPhoneFloat {
    0%, 100% { transform: translate3d(0, 0, 35px) rotate(-1.4deg); }
    50% { transform: translate3d(0, -16px, 35px) rotate(1deg); }
}
@keyframes medlibChipFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

@media (max-width: 1180px) {
    .product-hero { min-height: 940px; }
    .product-hero .hero-grid { width: min(1120px, calc(100vw - 48px)); grid-template-columns: .8fr 1.2fr; }
    .product-hero .hero-copy h1 { font-size: 58px; }
    .hero-device-doctor { width: 570px; inset-inline-end: -5px; top: 55px; }
    .hero-device-hospital { width: 450px; inset-inline-end: -300px; }
    .hero-device-phone { width: 205px; inset-inline-start: -25px; }
    .product-live-chip { inset-inline-start: 155px; }
}

@media (max-width: 960px) {
    .product-hero { min-height: auto; padding-top: 135px; }
    .product-hero .hero-grid { grid-template-columns: 1fr; }
    .product-hero .hero-copy { max-width: 720px; padding-top: 20px; padding-bottom: 0; }
    .product-hero .hero-copy h1 { max-width: 720px; font-size: 64px; }
    .product-hero .hero-visual { min-height: 620px; margin-top: 15px; }
    .hero-device-doctor { width: 660px; inset-inline-end: 10px; }
    .hero-device-hospital { width: 480px; inset-inline-end: -255px; }
    .hero-device-phone { width: 220px; inset-inline-start: 0; }
    .hero-delivery { grid-template-columns: 1fr; margin-top: 0; }
    .hero-delivery a { min-height: 90px; border-inline-end: 0; border-bottom: 1px solid #e4e8f0; }
    .hero-delivery a:last-child { border-bottom: 0; }
}

@media (max-width: 640px) {
    .product-hero { padding: 112px 0 30px; }
    .product-hero .hero-grid { width: calc(100vw - 28px); }
    .product-hero .hero-copy { text-align: start; }
    .product-hero .hero-copy h1 { font-size: 47px; }
    .product-hero .hero-copy h1 span { display: inline; }
    .product-hero .hero-copy h1 span::after { content: " "; }
    .product-hero .hero-copy > p { font-size: 17px; }
    .product-hero .hero-actions { flex-direction: column; }
    .product-hero .hero-actions .button-large { width: 100%; }
    .product-hero .hero-visual { min-height: 435px; margin-top: 22px; }
    .hero-device-doctor { width: 450px; inset-inline-end: -80px; top: 34px; }
    .hero-device-hospital { width: 330px; inset-inline-end: -238px; top: 125px; }
    .hero-device-phone { width: 176px; inset-inline-start: -7px; bottom: 3px; }
    .product-live-chip { inset-inline-start: 104px; top: 32px; padding: 9px 11px; font-size: 9px; }
    .hero-delivery { width: calc(100vw - 28px); border-radius: 22px; }
    .hero-delivery a { padding: 18px 20px; }
    .hero-security-note { width: calc(100vw - 42px); font-size: 12px; }
}

/* Medlib capabilities orbit */
.capability-orbit-section {
    padding: 126px 0 118px;
    background: #fbfaff;
}
.capability-orbit-section .section-heading { max-width: 850px; margin-bottom: 42px; }
.capability-stage {
    height: 720px;
    position: relative;
    margin-inline: auto;
    perspective: 1500px;
}
.capability-stage::before {
    content: "";
    width: 650px;
    height: 500px;
    position: absolute;
    left: 50%;
    top: 91px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: rgba(112,71,235,.09);
    filter: blur(60px);
}
.capability-product {
    width: 780px;
    position: absolute;
    left: 50%;
    top: 105px;
    z-index: 2;
    margin: 0;
    padding: 9px;
    overflow: hidden;
    transform: translateX(-50%) rotateX(1.5deg);
    border: 1px solid #ded8f1;
    border-radius: 25px;
    background: #ffffff;
    box-shadow: 0 42px 95px rgba(49,34,101,.18);
    transition: transform .35s cubic-bezier(.2,.75,.2,1);
}
.capability-product::before {
    content: "";
    height: 28px;
    display: block;
    border-radius: 16px 16px 0 0;
    background: #f7f5fb;
}
.capability-product img { width: 100%; aspect-ratio: 1178/760; object-fit: cover; object-position: top; border-radius: 0 0 16px 16px; }
.capability-glow {
    width: 116px;
    height: 116px;
    position: absolute;
    left: 50%;
    top: 31px;
    z-index: 8;
    display: grid;
    place-items: center;
    transform: translateX(-50%);
    border: 1px solid rgba(112,71,235,.24);
    border-radius: 50%;
    background: rgba(255,255,255,.94);
    box-shadow: 0 0 0 17px rgba(112,71,235,.08), 0 0 48px rgba(112,71,235,.4);
    animation: capabilityPulse 4s ease-in-out infinite;
}
.capability-glow .brand-mark { min-width: 58px; width: 58px; height: 58px; }
.capability-float {
    width: 260px;
    min-height: 82px;
    position: absolute;
    z-index: 7;
    display: grid;
    grid-template-columns: 49px 1fr;
    align-items: center;
    gap: 13px;
    padding: 14px 17px;
    border: 1px solid rgba(91,69,152,.12);
    border-radius: 18px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 17px 44px rgba(42,31,86,.12);
    backdrop-filter: blur(15px);
    animation: capabilityFloat 5.8s ease-in-out var(--cap-delay) infinite;
}
.capability-float strong { display: block; margin-bottom: 4px; color: var(--ink); font-size: 14px; }
.capability-float small { display: block; color: #738097; font-size: 10px; line-height: 1.42; }
.capability-icon {
    width: 49px;
    height: 49px;
    position: relative;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: #f0ebff;
}
.capability-icon img { width: 28px; height: 28px; }
.capability-appointment { left: 0; top: 90px; }
.capability-patient { left: 12px; top: 212px; }
.capability-ai { left: -14px; top: 334px; }
.capability-records { left: 42px; top: 456px; }
.capability-hospital { right: 0; top: 90px; }
.capability-roles { right: 12px; top: 212px; }
.capability-results { right: -14px; top: 334px; }
.capability-billing { right: 42px; top: 456px; }

.capability-journey {
    position: relative;
    z-index: 10;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    margin-top: -38px;
    padding: 10px;
    border: 1px solid #e2deee;
    border-radius: 25px;
    background: #ffffff;
    box-shadow: 0 25px 65px rgba(44,32,91,.1);
}
.capability-journey::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 9%;
    right: 9%;
    top: 50%;
    height: 2px;
    background: #dcd5f3;
}
.capability-journey article {
    min-height: 112px;
    display: grid;
    grid-template-columns: 42px 1fr;
    align-items: center;
    gap: 11px;
    padding: 18px;
    border-inline-end: 1px solid #ece8f4;
    background: #ffffff;
}
.capability-journey article:last-child { border-inline-end: 0; }
.capability-journey article > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    color: #ffffff;
    border-radius: 50%;
    background: var(--purple);
    box-shadow: 0 8px 18px rgba(112,71,235,.22);
    font-size: 10px;
    font-weight: 900;
}
.capability-journey strong { display: block; margin-bottom: 5px; font-size: 13px; }
.capability-journey small { display: block; color: #738097; font-size: 10px; line-height: 1.4; }
html[dir="rtl"] .capability-product { transform: translateX(-50%) rotateX(1.5deg); }

@keyframes capabilityFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes capabilityPulse { 0%, 100% { box-shadow: 0 0 0 17px rgba(112,71,235,.08), 0 0 48px rgba(112,71,235,.32); } 50% { box-shadow: 0 0 0 25px rgba(112,71,235,.03), 0 0 68px rgba(112,71,235,.48); } }

@media (max-width: 1180px) {
    .capability-product { width: 680px; }
    .capability-float { width: 230px; }
    .capability-appointment, .capability-patient, .capability-ai { left: 0; }
    .capability-records { left: 20px; }
    .capability-hospital, .capability-roles, .capability-results { right: 0; }
    .capability-billing { right: 20px; }
    .capability-journey article { padding: 13px; }
}

@media (max-width: 960px) {
    .capability-stage { height: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; padding-top: 470px; }
    .capability-stage::before { top: 30px; }
    .capability-product { width: min(720px, 94%); top: 45px; }
    .capability-glow { top: -20px; }
    .capability-float { width: auto; position: relative; inset: auto; animation-duration: 7s; }
    .capability-journey { grid-template-columns: 1fr; margin-top: 32px; }
    .capability-journey::before { display: none; }
    .capability-journey article { min-height: 88px; border-inline-end: 0; border-bottom: 1px solid #ece8f4; }
    .capability-journey article:last-child { border-bottom: 0; }
}

@media (max-width: 640px) {
    .capability-orbit-section { padding: 90px 0; }
    .capability-stage { grid-template-columns: 1fr; padding-top: 275px; }
    .capability-stage::before { width: 320px; height: 240px; top: 10px; }
    .capability-product { width: 116%; top: 35px; border-radius: 18px; }
    .capability-product::before { height: 18px; }
    .capability-glow { width: 82px; height: 82px; top: -3px; }
    .capability-glow .brand-mark { width: 45px; height: 45px; min-width: 45px; }
    .capability-float { min-height: 76px; }
}

/* Medlib Private + Connect presentation */
#patient,
#medecin,
#clinique,
#laboratoire,
#radiologie,
#pharmacie,
#connect { scroll-margin-top: 116px; }

.main-nav { gap: 18px; }
.main-nav a { white-space: nowrap; font-size: 13px; }

.hero-delivery { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.hero-delivery a {
    min-height: 112px;
    gap: 12px;
    padding: 18px 16px;
}
.hero-delivery a:nth-child(6n) { border-inline-end: 0; }
.hero-delivery b {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
}
.hero-delivery b img { width: 23px; height: 23px; }
.hero-delivery strong { font-size: 14px; }
.hero-delivery small { font-size: 11px; line-height: 1.35; }

.patient-qr-section {
    overflow: hidden;
    background:
        radial-gradient(circle at 18% 24%, rgba(112,71,235,.13), transparent 29%),
        linear-gradient(180deg, #ffffff 0%, #f8f6ff 100%);
}
.patient-qr-grid {
    display: grid;
    grid-template-columns: .84fr 1.16fr;
    align-items: center;
    gap: 92px;
}
.patient-qr-visual {
    min-height: 720px;
    position: relative;
    display: grid;
    place-items: center;
    border: 1px solid rgba(112,71,235,.12);
    border-radius: 42px;
    background:
        radial-gradient(circle at 50% 38%, rgba(112,71,235,.18), transparent 35%),
        #171534;
    box-shadow: 0 34px 90px rgba(38,28,85,.17);
}
.patient-qr-visual::before {
    content: "";
    width: 270px;
    height: 270px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-54%);
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%;
    box-shadow: 0 0 0 42px rgba(255,255,255,.035), 0 0 0 84px rgba(255,255,255,.018);
}
.patient-qr-phone {
    width: 320px;
    aspect-ratio: 644/1410;
    position: relative;
    z-index: 2;
    margin: 0;
    filter: drop-shadow(0 32px 40px rgba(3,6,18,.42));
    animation: medlibPhoneFloat 6s ease-in-out infinite;
}

/* Medlib Patient health pass — native UI, not a flattened phone screenshot */
.medlib-health-phone {
    width: 100%;
    aspect-ratio: 644/1410;
    position: relative;
    container-type: inline-size;
    isolation: isolate;
    color: #111b31;
    text-align: start;
}
.medlib-health-screen {
    position: absolute;
    z-index: 1;
    inset: 1.7% 4.15% 2.1%;
    overflow: hidden;
    border-radius: 13.2% / 5.9%;
    background: linear-gradient(180deg, #ffffff 0%, #f8f7ff 58%, #f4f1fd 100%);
    box-shadow: inset 0 0 0 1px rgba(25,19,54,.08);
}
.medlib-health-hardware {
    width: 159%;
    height: 108.95%;
    max-width: none;
    position: absolute;
    z-index: 6;
    left: -29.5%;
    top: -4.25%;
    object-fit: fill;
    pointer-events: none;
    filter: none;
}
.health-app-header {
    min-height: 24cqw;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 4cqw;
    padding: 8cqw 6cqw 3.5cqw;
    border-bottom: 1px solid rgba(51,38,105,.08);
    background: rgba(255,255,255,.96);
}
.health-app-brand { display: flex; align-items: center; gap: 2.7cqw; min-width: 0; }
.health-app-brand > b {
    width: 10cqw;
    height: 10cqw;
    flex: 0 0 10cqw;
    display: grid;
    place-items: center;
    position: relative;
    color: #ffffff;
    border-radius: 3.1cqw;
    background: linear-gradient(145deg, #8258ff, #6438e7);
    box-shadow: 0 2cqw 5cqw rgba(88,50,204,.24);
    font-size: 5cqw;
    font-weight: 950;
    letter-spacing: -.08em;
}
.health-app-brand > b span { position: absolute; right: 1.2cqw; top: .4cqw; font-size: 2.6cqw; }
.health-app-brand > span { display: grid; color: #101a2e; font-size: 5cqw; font-weight: 950; line-height: .95; letter-spacing: -.045em; }
.health-app-brand small { margin-top: 1.4cqw; color: #7450e6; font-size: 1.8cqw; font-weight: 900; letter-spacing: .16em; }
.health-patient-avatar {
    width: 9.8cqw;
    height: 9.8cqw;
    flex: 0 0 9.8cqw;
    display: grid;
    place-items: center;
    color: #6540d7;
    border: 1px solid #ddd5f7;
    border-radius: 50%;
    background: #f1edff;
    font-size: 3cqw;
    font-weight: 950;
}
.health-patient-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3cqw;
    padding: 3.2cqw 6cqw 1.2cqw;
}
.health-patient-line > span { display: grid; }
.health-patient-line strong { font-size: 3.4cqw; letter-spacing: -.02em; }
.health-patient-line small { margin-top: .7cqw; color: #79859b; font-size: 2.15cqw; }
.health-patient-line > img { width: 5.2cqw; height: 5.2cqw; padding: 1cqw; border-radius: 1.7cqw; background: #efeaff; }
.health-device-proof {
    min-height: 10.5cqw;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2.3cqw;
    margin: 2.4cqw 5.2cqw 3.2cqw;
    padding: 2.3cqw 3cqw;
    color: #6540d7;
    border: 1px solid rgba(112,71,235,.12);
    border-radius: 999px;
    background: #f4f0ff;
    font-size: 2.55cqw;
    text-align: center;
}
.health-device-proof img { width: 4.7cqw; height: 4.7cqw; }
.health-pass-card {
    margin: 0 5.2cqw;
    padding: 5cqw;
    color: #ffffff;
    border-radius: 7.2cqw;
    background:
        radial-gradient(circle at 87% 7%, rgba(255,255,255,.2), transparent 25%),
        linear-gradient(145deg, #7047eb 0%, #6d32e9 52%, #4c26bb 100%);
    box-shadow: 0 6cqw 14cqw rgba(70,39,165,.28);
    transition: background .35s ease, transform .35s ease;
}
.medlib-health-phone.is-emergency .health-pass-card {
    background: radial-gradient(circle at 87% 7%, rgba(255,255,255,.2), transparent 25%), linear-gradient(145deg, #5631c9 0%, #47259f 100%);
}
.health-pass-heading { display: flex; align-items: center; justify-content: space-between; gap: 3cqw; }
.health-pass-heading span { font-size: 2.7cqw; font-weight: 950; letter-spacing: .11em; }
.health-pass-heading i { width: 2.4cqw; height: 2.4cqw; border-radius: 50%; background: #bcffdc; box-shadow: 0 0 0 1.5cqw rgba(188,255,220,.12); }
.health-pass-card h3 { max-width: 68cqw; margin: 2.5cqw 0 4.2cqw; color: inherit; font-size: 7.7cqw; line-height: .98; letter-spacing: -.055em; }
.health-qr-frame {
    width: 65cqw;
    height: 65cqw;
    display: grid;
    place-items: center;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    padding: 4.5cqw;
    border-radius: 6cqw;
    background: #ffffff;
    box-shadow: 0 4cqw 9cqw rgba(21,12,65,.22);
}
.health-qr-frame img { width: 100%; height: 100%; display: block; object-fit: contain; filter: none; image-rendering: crisp-edges; }
.health-qr-frame::after {
    content: "";
    height: .7cqw;
    position: absolute;
    left: 7cqw;
    right: 7cqw;
    top: 10cqw;
    border-radius: 999px;
    background: rgba(112,71,235,.72);
    box-shadow: 0 0 3cqw rgba(112,71,235,.55);
    animation: medlibQrScan 3.8s ease-in-out infinite;
}
.health-pass-card > p { margin: 3.2cqw 0 2cqw; color: rgba(255,255,255,.8); font-size: 2.15cqw; line-height: 1.35; text-align: center; }
.health-token-state {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3cqw;
    padding-top: 2.4cqw;
    border-top: 1px solid rgba(255,255,255,.17);
    color: rgba(255,255,255,.78);
    font-size: 2.2cqw;
}
.health-token-state strong { color: #ffffff; font-size: 2.8cqw; font-variant-numeric: tabular-nums; letter-spacing: .08em; }
.health-mode-switch {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5cqw;
    margin: 4.2cqw 5.2cqw 2.5cqw;
}
.health-mode-switch button {
    min-height: 11cqw;
    padding: 2cqw;
    color: #625b75;
    border: 1px solid #e7e1f5;
    border-radius: 999px;
    background: #ffffff;
    font: inherit;
    font-size: 2.6cqw;
    font-weight: 900;
    cursor: pointer;
    transition: color .25s ease, border-color .25s ease, background .25s ease, transform .25s ease;
}
.health-mode-switch button:hover { transform: translateY(-1px); }
.health-mode-switch button.active { color: #ffffff; border-color: #7047eb; background: #7047eb; box-shadow: 0 2cqw 5cqw rgba(112,71,235,.2); }
.health-app-navigation {
    min-height: 17cqw;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    align-items: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2.4cqw 5cqw 3.5cqw;
    border-top: 1px solid #e8e3f4;
    background: rgba(255,255,255,.95);
    backdrop-filter: blur(14px);
}
.health-app-navigation span { display: grid; justify-items: center; gap: 1.1cqw; color: #8a93a5; }
.health-app-navigation img { width: 4.3cqw; height: 4.3cqw; opacity: .65; }
.health-app-navigation b { font-size: 1.9cqw; }
.health-app-navigation .active { color: #6842db; }
.health-app-navigation .active img { opacity: 1; }
@keyframes medlibQrScan {
    0%, 100% { transform: translateY(0); opacity: 0; }
    12% { opacity: .9; }
    50% { transform: translateY(49cqw); opacity: .75; }
    88% { opacity: .9; }
}
.patient-qr-status {
    min-width: 270px;
    position: absolute;
    z-index: 5;
    right: 22px;
    bottom: 36px;
    display: grid;
    grid-template-columns: 48px 1fr;
    align-items: center;
    gap: 13px;
    padding: 14px 17px;
    color: #10192c;
    border: 1px solid rgba(112,71,235,.14);
    border-radius: 18px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 18px 48px rgba(2,7,20,.24);
}
.patient-qr-status-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: #f0ebff;
}
.patient-qr-status small,
.patient-qr-status strong { display: block; }
.patient-qr-status small { margin-bottom: 3px; color: #7d6db8; font-size: 10px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.patient-qr-status strong { font-size: 13px; }
.patient-qr-copy h2 { max-width: 760px; margin: 20px 0 24px; font-size: clamp(44px, 4.6vw, 72px); line-height: .98; letter-spacing: -.055em; }
.patient-qr-copy .lead { max-width: 720px; color: #62708a; font-size: 17px; line-height: 1.78; }
.patient-qr-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 30px 0;
}
.patient-qr-actions article {
    min-height: 92px;
    display: grid;
    grid-template-columns: 43px 1fr;
    align-items: center;
    gap: 13px;
    padding: 17px;
    border: 1px solid #e3dff0;
    border-radius: 18px;
    background: rgba(255,255,255,.84);
}
.patient-qr-actions article > span {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    color: #ffffff;
    border-radius: 13px;
    background: var(--purple);
    font-size: 11px;
    font-weight: 900;
}
.patient-qr-actions strong,
.patient-qr-actions small { display: block; }
.patient-qr-actions strong { margin-bottom: 5px; font-size: 14px; }
.patient-qr-actions small { color: #71809a; font-size: 11px; line-height: 1.45; }
.patient-qr-buttons { display: flex; flex-wrap: wrap; gap: 12px; }
.patient-qr-assurance { display: flex; align-items: center; gap: 9px; margin: 20px 0 0; color: #5f6d85; font-size: 12px; font-weight: 700; }
.patient-qr-assurance span { color: var(--purple); font-weight: 900; }

.partner-showcase-section {
    padding-top: 130px;
    background: #ffffff;
}
.partner-showcase-section .section-heading { max-width: 880px; margin-bottom: 34px; }
.partner-story {
    min-height: 620px;
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    align-items: center;
    gap: 76px;
    padding: 82px 0;
    border-bottom: 1px solid #e8e4f2;
}
.partner-story:last-child { border-bottom: 0; }
.partner-story-reverse { grid-template-columns: 1.18fr .82fr; }
.partner-story-reverse .partner-story-copy { order: 2; }
.partner-story-reverse .partner-monitor { order: 1; }
.partner-story-label { display: inline-flex; align-items: center; gap: 12px; color: var(--purple); font-size: 12px; font-weight: 900; letter-spacing: .12em; }
.partner-story-label > span {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    background: #f0ebff;
}
.partner-story-copy h3 { margin: 20px 0 17px; font-size: clamp(40px, 4vw, 62px); line-height: 1.02; letter-spacing: -.05em; }
.partner-story-copy > p { max-width: 610px; color: #68758d; font-size: 17px; line-height: 1.75; }
.partner-story-copy ul { display: grid; gap: 10px; margin: 25px 0 28px; padding-inline-start: 20px; color: #26334b; }
.partner-story-copy li { padding-inline-start: 5px; font-size: 14px; line-height: 1.5; }
.partner-story-copy li::marker { color: var(--purple); }
.partner-story-offer { display: flex; align-items: baseline; gap: 9px; margin-bottom: 22px; }
.partner-story-offer strong { color: var(--purple); font-size: 27px; letter-spacing: -.035em; }
.partner-story-offer span { color: #68758d; font-size: 12px; font-weight: 700; }
.partner-story-actions { display: flex; flex-wrap: wrap; gap: 11px; }
.partner-monitor {
    aspect-ratio: 1265/712;
    position: relative;
    margin: 0;
    overflow: hidden;
    border: 1px solid #ded8ef;
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 36px 90px rgba(43,31,91,.17);
    transform: perspective(1400px) rotateY(-2.5deg) rotateX(1deg);
    transition: transform .45s cubic-bezier(.2,.75,.2,1), box-shadow .45s;
}
.partner-story-reverse .partner-monitor { transform: perspective(1400px) rotateY(2.5deg) rotateX(1deg); }
.partner-monitor:hover,
.partner-story-reverse .partner-monitor:hover { transform: perspective(1400px) rotateY(0) rotateX(0) translateY(-7px); box-shadow: 0 45px 100px rgba(43,31,91,.22); }
.partner-monitor-screen { position: absolute; inset: 0; overflow: hidden; }
.partner-monitor-screen img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.partner-monitor-chrome {
    height: 32px;
    position: absolute;
    inset: 0 0 auto;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 15px;
    color: #7b7296;
    background: rgba(255,255,255,.9);
    border-bottom: 1px solid rgba(91,69,152,.12);
    backdrop-filter: blur(10px);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
}
.partner-monitor-chrome i { width: 7px; height: 7px; display: block; border-radius: 50%; background: #cfc9df; }
.partner-monitor-chrome i:first-child { background: var(--purple); }
.partner-monitor-chrome span { margin-inline-start: auto; }

.video-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

@media (max-width: 1180px) {
    .main-nav { gap: 12px; }
    .main-nav a { font-size: 11px; }
    .hero-delivery { grid-template-columns: repeat(3, 1fr); }
    .hero-delivery a { border-bottom: 1px solid #e4e8f0; }
    .hero-delivery a:nth-child(3n) { border-inline-end: 0; }
    .hero-delivery a:nth-child(n+4) { border-bottom: 0; }
    .patient-qr-grid { gap: 58px; }
    .patient-qr-visual { min-height: 640px; }
    .patient-qr-phone { width: 285px; }
    .partner-story { gap: 48px; }
}

@media (max-width: 960px) {
    .hero-delivery { grid-template-columns: repeat(2, 1fr); }
    .hero-delivery a { border-inline-end: 1px solid #e4e8f0; border-bottom: 1px solid #e4e8f0; }
    .hero-delivery a:nth-child(2n) { border-inline-end: 0; }
    .hero-delivery a:nth-child(n+5) { border-bottom: 0; }
    .patient-qr-grid,
    .partner-story,
    .partner-story-reverse { grid-template-columns: 1fr; }
    .patient-qr-grid { gap: 52px; }
    .patient-qr-copy { max-width: 760px; }
    .partner-story { min-height: auto; gap: 40px; padding: 68px 0; }
    .partner-story-reverse .partner-story-copy,
    .partner-story-reverse .partner-monitor { order: initial; }
    .partner-monitor,
    .partner-story-reverse .partner-monitor { transform: none; }
    .video-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
    .hero-delivery { grid-template-columns: 1fr; }
    .hero-delivery a,
    .hero-delivery a:nth-child(n) { border-inline-end: 0; border-bottom: 1px solid #e4e8f0; }
    .hero-delivery a:last-child { border-bottom: 0; }
    .patient-qr-section,
    .partner-showcase-section { padding-top: 88px; }
    .patient-qr-visual { min-height: 545px; border-radius: 27px; }
    .patient-qr-phone { width: 268px; }
    .patient-qr-status { min-width: 0; left: 16px; right: 16px; bottom: 18px; }
    .patient-qr-copy h2 { font-size: 43px; }
    .patient-qr-actions { grid-template-columns: 1fr; }
    .patient-qr-buttons { flex-direction: column; }
    .patient-qr-buttons .button { width: 100%; }
    .partner-story-copy h3 { font-size: 41px; }
    .partner-story-actions { flex-direction: column; }
    .partner-story-actions .button { width: 100%; }
    .partner-monitor { border-radius: 18px; }
    .partner-monitor-chrome { height: 24px; }
    .video-grid { grid-template-columns: 1fr; }
}
.health-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 14px 8px}.health-action-grid span{display:flex;min-width:0;min-height:62px;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid rgba(112,71,235,.12);border-radius:14px;background:#fff;box-shadow:0 7px 20px rgba(52,34,102,.06);color:#21183d}.health-action-grid img{width:20px;height:20px}.health-action-grid b{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:9px;white-space:nowrap}@media(max-width:520px){.health-action-grid{gap:6px;margin-inline:10px}.health-action-grid span{min-height:58px}}
