:root{
  --navy-950:#052f3e;
  --navy-900:#073b4c;
  --navy-850:#084658;
  --navy-800:#0b5365;
  --teal-700:#0f7f70;
  --teal-650:#118878;
  --teal-500:#17a589;
  --teal-300:#54dfcb;
  --teal-100:#dff8f3;
  --teal-50:#eefbf8;
  --ink:#113445;
  --ink-2:#2f5160;
  --muted:#607884;
  --muted-2:#7d939c;
  --line:#dce8eb;
  --line-strong:#cbdcdf;
  --paper:#f5f9fa;
  --paper-2:#eef5f6;
  --white:#ffffff;
  --shadow-sm:0 10px 30px rgba(5,47,62,.06);
  --shadow-md:0 24px 65px rgba(5,47,62,.10);
  --shadow-lg:0 35px 90px rgba(2,31,42,.20);
  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:26px;
  --radius-xl:34px;
  --container:1200px;
}

*{box-sizing:border-box}

html{
  scroll-behavior:smooth;
  scroll-padding-top:94px;
}

body{
  margin:0;
  color:var(--ink);
  background:var(--white);
  font-family:"Segoe UI Variable","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

body.menu-open{overflow:hidden}

img,svg{display:block;max-width:100%}

a{color:inherit;text-decoration:none}

button,input,textarea,select{font:inherit}

button{color:inherit}

::selection{background:var(--teal-100);color:var(--navy-950)}

.container{
  width:min(var(--container),calc(100% - 48px));
  margin-inline:auto;
}

.skip-link{
  position:fixed;
  left:18px;
  top:14px;
  z-index:1000;
  padding:11px 15px;
  border-radius:10px;
  background:var(--white);
  color:var(--navy-950);
  border:1px solid var(--line);
  box-shadow:var(--shadow-md);
  transform:translateY(-160%);
  transition:transform .2s ease;
  font-weight:700;
}

.skip-link:focus{transform:translateY(0)}

:focus-visible{
  outline:3px solid rgba(15,127,112,.35);
  outline-offset:3px;
  border-radius:8px;
}

/* Header */
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  border-bottom:1px solid rgba(220,232,235,.85);
  background:rgba(255,255,255,.92);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  transition:box-shadow .2s ease,background .2s ease;
}

.site-header.scrolled{
  background:rgba(255,255,255,.97);
  box-shadow:0 12px 35px rgba(5,47,62,.06);
}

.header-inner{
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}

.brand{
  display:inline-flex;
  align-items:center;
  gap:11px;
  flex:0 0 auto;
}

.brand-mark{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:13px;
  color:var(--white);
  background:linear-gradient(145deg,var(--navy-800),var(--teal-500));
  box-shadow:0 9px 24px rgba(6,72,78,.15);
}

.brand-mark svg{width:29px;height:29px}

.brand-mark svg path:last-child{color:var(--teal-300)}

.brand-name{
  font-size:24px;
  line-height:1;
  font-weight:780;
  letter-spacing:-.75px;
  color:var(--navy-950);
}

.brand-name span{color:var(--teal-650)}

.desktop-nav{
  display:flex;
  align-items:center;
  gap:28px;
  margin-left:auto;
}

.desktop-nav a,
.text-link{
  position:relative;
  color:var(--ink-2);
  font-size:14px;
  font-weight:650;
  letter-spacing:-.05px;
  transition:color .18s ease;
}

.desktop-nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-9px;
  height:2px;
  background:var(--teal-650);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .18s ease;
}

.desktop-nav a:hover,
.text-link:hover{color:var(--navy-950)}

.desktop-nav a:hover::after{transform:scaleX(1)}

.header-actions{
  display:flex;
  align-items:center;
  gap:14px;
}

.button{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 22px;
  border:1px solid transparent;
  border-radius:13px;
  font-weight:720;
  font-size:15px;
  letter-spacing:-.1px;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease;
}

.button svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.button:hover{transform:translateY(-1px)}

.button-small{
  min-height:44px;
  padding-inline:17px;
  border-radius:11px;
  font-size:14px;
}

.button-primary{
  color:var(--white);
  background:linear-gradient(105deg,var(--navy-800),var(--teal-700));
  box-shadow:0 10px 24px rgba(11,83,101,.16);
}

.button-primary:hover{box-shadow:0 14px 30px rgba(11,83,101,.22)}

.button-secondary{
  color:var(--navy-950);
  background:var(--white);
  border-color:var(--line-strong);
}

.button-light{
  color:var(--navy-950);
  background:var(--white);
  box-shadow:0 12px 26px rgba(1,28,38,.12);
}

.button-light:hover{box-shadow:0 16px 34px rgba(1,28,38,.18)}

.button-dark-outline{
  color:var(--white);
  border-color:rgba(255,255,255,.25);
  background:rgba(255,255,255,.055);
}

.button-dark-outline:hover{
  border-color:rgba(255,255,255,.42);
  background:rgba(255,255,255,.09);
}

.menu-toggle{
  width:44px;
  height:44px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--white);
  display:none;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:4px;
  cursor:pointer;
}

.menu-toggle span{
  width:19px;
  height:2px;
  border-radius:999px;
  background:var(--navy-950);
  transition:transform .2s ease,opacity .2s ease;
}

.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.mobile-menu{
  border-top:1px solid var(--line);
  background:var(--white);
  box-shadow:0 28px 40px rgba(5,47,62,.09);
}

.mobile-menu[hidden]{display:none}

.mobile-nav{
  width:min(var(--container),calc(100% - 32px));
  margin-inline:auto;
  padding:14px 0 24px;
  display:grid;
}

.mobile-nav>a{
  padding:14px 6px;
  border-bottom:1px solid var(--line);
  font-size:16px;
  font-weight:650;
  color:var(--ink);
}

.mobile-menu-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding-top:18px;
}

/* Type */
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:var(--teal-700);
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.eyebrow::before{
  content:"";
  width:18px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  opacity:.9;
}

.eyebrow-on-dark{color:#71ead8}

h1,h2,h3,p{margin-top:0}

h1,h2,h3{
  color:var(--navy-950);
  letter-spacing:-.035em;
}

h1{
  max-width:760px;
  margin:20px 0 24px;
  color:var(--white);
  font-size:clamp(44px,5.25vw,66px);
  line-height:1.025;
  font-weight:790;
}

h2{
  margin:13px 0 18px;
  font-size:clamp(34px,4vw,48px);
  line-height:1.08;
  font-weight:760;
}

h3{
  margin:0;
  font-size:21px;
  line-height:1.22;
  font-weight:730;
}

p{color:var(--muted)}

.section{
  position:relative;
  padding:104px 0;
}

.section-heading{
  margin-bottom:48px;
}

.section-heading p{
  max-width:640px;
  margin-bottom:0;
  font-size:18px;
  line-height:1.65;
}

.split-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  align-items:end;
  gap:64px;
}

.split-heading h2{max-width:720px;margin-bottom:0}

.centered{
  max-width:780px;
  margin-inline:auto;
  text-align:center;
}

.centered .eyebrow::before{display:none}
.centered p{margin-inline:auto}

/* Hero */
.hero{
  position:relative;
  overflow:hidden;
  padding:92px 0 0;
  color:var(--white);
  background:
    radial-gradient(circle at 76% 22%,rgba(84,223,203,.15),transparent 28%),
    radial-gradient(circle at 6% 86%,rgba(35,132,144,.17),transparent 30%),
    linear-gradient(134deg,#052f3e 0%,#073f51 50%,#0a5663 100%);
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.027) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.027) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),transparent 86%);
}

.hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(500px,.98fr);
  align-items:center;
  gap:64px;
  min-height:640px;
}

.hero-copy{padding-bottom:84px}

.hero-lead{
  max-width:690px;
  margin-bottom:0;
  color:#d9ebee;
  font-size:19px;
  line-height:1.65;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:13px;
  margin-top:34px;
}

.hero-trust{
  display:flex;
  flex-wrap:wrap;
  gap:10px 22px;
  margin-top:32px;
}

.hero-trust span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#d9ebee;
  font-size:13px;
  font-weight:650;
}

.hero-trust svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:#71ead8;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.product-stage{
  position:relative;
  min-height:560px;
  display:flex;
  align-items:center;
  justify-content:center;
  isolation:isolate;
}

.glow{
  position:absolute;
  border-radius:50%;
  filter:blur(10px);
  pointer-events:none;
  z-index:-1;
}

.glow-one{
  width:330px;
  height:330px;
  right:-40px;
  top:70px;
  background:rgba(84,223,203,.14);
}

.glow-two{
  width:250px;
  height:250px;
  left:20px;
  bottom:5px;
  background:rgba(12,112,130,.24);
}

.product-window{
  width:min(100%,600px);
  border:1px solid rgba(255,255,255,.22);
  border-radius:21px;
  overflow:hidden;
  background:#f7fbfc;
  box-shadow:var(--shadow-lg);
  transform:perspective(1400px) rotateY(-2deg) rotateX(1deg);
}

.window-bar{
  min-height:50px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  padding:0 16px;
  border-bottom:1px solid #dbe8ea;
  background:#fff;
  color:var(--ink);
}

.window-dots{
  display:flex;
  gap:6px;
}

.window-dots i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#ccd9dc;
}

.window-title{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:750;
  color:var(--navy-950);
}

.mini-brand{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:7px;
  color:var(--white);
  background:linear-gradient(145deg,var(--navy-800),var(--teal-500));
  font-size:12px;
  font-weight:800;
}

.window-status{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:6px;
  color:var(--muted);
  font-size:10px;
  font-weight:650;
}

.window-status i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#28a277;
  box-shadow:0 0 0 3px rgba(40,162,119,.12);
}

.app-shell{
  min-height:405px;
  display:grid;
  grid-template-columns:58px 1fr;
}

.app-sidebar{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  padding:15px 0;
  background:var(--navy-950);
}

.side-logo{
  width:30px;
  height:30px;
  margin-bottom:4px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:linear-gradient(145deg,var(--navy-800),var(--teal-500));
  color:#fff;
  font-size:13px;
  font-weight:800;
}

.side-item{
  width:28px;
  height:28px;
  border-radius:8px;
  background:rgba(255,255,255,.08);
}

.side-item::after{
  content:"";
  width:10px;
  height:2px;
  display:block;
  margin:13px auto;
  border-radius:99px;
  background:rgba(255,255,255,.48);
}

.side-item.active{background:rgba(84,223,203,.18)}
.side-item.active::after{background:#65e6d2}

.app-main{
  padding:23px 24px 22px;
  color:var(--ink);
}

.app-heading-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.ui-kicker{
  display:block;
  color:var(--teal-700);
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
}

.app-main h2{
  margin:3px 0 0;
  font-size:21px;
  letter-spacing:-.03em;
}

.ui-badge{
  padding:5px 9px;
  border:1px solid #dde9eb;
  border-radius:999px;
  color:var(--muted);
  background:#fff;
  font-size:9px;
  font-weight:700;
}

.patient-strip{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:10px;
  margin-top:18px;
  padding:11px 12px;
  border:1px solid #dce8ea;
  border-radius:12px;
  background:#fff;
}

.avatar{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  color:var(--navy-950);
  background:var(--teal-100);
  font-size:10px;
  font-weight:800;
}

.patient-strip strong,
.rx-top strong,
.clinical-check strong{
  display:block;
  color:var(--ink);
  font-size:11px;
  line-height:1.25;
}

.patient-strip small,
.rx-top small,
.clinical-check small{
  display:block;
  margin-top:2px;
  color:var(--muted-2);
  font-size:8px;
  line-height:1.35;
}

.verified{
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:var(--teal-700);
  font-size:8px;
  font-weight:750;
}

.verified svg,
.check-icon svg{
  width:13px;
  height:13px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.rx-card{
  margin-top:11px;
  padding:13px;
  border:1px solid #dce8ea;
  border-radius:12px;
  background:#fff;
}

.rx-top{
  display:flex;
  align-items:center;
  gap:9px;
}

.rx-icon{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:9px;
  color:var(--teal-700);
  background:var(--teal-50);
  font-family:Georgia,serif;
  font-size:13px;
  font-weight:700;
}

.rx-fields{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:11px;
}

.rx-fields span{
  padding:8px 9px;
  border:1px solid #e3ecee;
  border-radius:9px;
  background:#f8fbfb;
}

.rx-fields small,
.rx-fields b{
  display:block;
}

.rx-fields small{
  color:var(--muted-2);
  font-size:7px;
}

.rx-fields b{
  margin-top:2px;
  color:var(--ink-2);
  font-size:8px;
  font-weight:650;
}

.clinical-check{
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:11px;
  padding:10px 11px;
  border:1px solid #cde9e3;
  border-radius:11px;
  background:#edf9f6;
}

.check-icon{
  width:29px;
  height:29px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:9px;
  color:var(--teal-700);
  background:#daf4ee;
}

.ui-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:14px;
}

.pharmacy-pill{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--muted);
  font-size:8px;
  font-weight:650;
}

.pharmacy-pill svg{
  width:14px;
  height:14px;
  fill:none;
  stroke:var(--teal-700);
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.ui-action{
  padding:8px 11px;
  border-radius:9px;
  color:#fff;
  background:linear-gradient(100deg,var(--navy-800),var(--teal-700));
  font-size:8px;
  font-weight:750;
}

.phone-card{
  position:absolute;
  right:-14px;
  bottom:34px;
  width:152px;
  min-height:268px;
  padding:18px 14px 16px;
  border:5px solid #f8fcfd;
  border-radius:28px;
  background:#fff;
  color:var(--ink);
  box-shadow:0 24px 54px rgba(0,0,0,.24);
  transform:rotate(2deg);
}

.phone-top{
  width:48px;
  height:5px;
  margin:-10px auto 14px;
  border-radius:999px;
  background:#dbe5e7;
}

.phone-logo{
  display:flex;
  align-items:center;
  gap:6px;
  color:var(--navy-950);
  font-size:10px;
  font-weight:750;
}

.phone-logo span{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:7px;
  color:#fff;
  background:linear-gradient(145deg,var(--navy-800),var(--teal-500));
}

.phone-card>small{
  display:block;
  margin-top:18px;
  color:var(--muted);
  font-size:7px;
}

.qr-grid{
  width:65px;
  height:65px;
  margin:10px 0 11px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:3px;
  padding:6px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
}

.qr-grid i{background:var(--navy-950)}
.qr-grid i:nth-child(2),
.qr-grid i:nth-child(4),
.qr-grid i:nth-child(6),
.qr-grid i:nth-child(8){background:#fff;border:3px solid var(--navy-950)}

.phone-card>strong{
  display:block;
  color:var(--navy-950);
  font-size:9px;
}

.phone-ok{
  display:block;
  margin-top:6px;
  color:var(--teal-700);
  font-size:8px;
  font-weight:750;
}

.interface-note{
  position:absolute;
  left:24px;
  bottom:8px;
  color:rgba(225,242,245,.72);
  font-size:10px;
  letter-spacing:.02em;
}

.role-strip{
  position:relative;
  z-index:2;
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:26px;
  border-top:1px solid rgba(255,255,255,.11);
  color:#d8e8eb;
}

.role-strip span{
  font-size:12px;
  font-weight:650;
  letter-spacing:.015em;
}

.role-strip i{
  width:4px;
  height:4px;
  border-radius:50%;
  background:#55d6c4;
  opacity:.8;
}

/* Product */
.section-product{background:var(--white)}

.feature-showcase{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);
  gap:22px;
}

.feature-large,
.feature-compact{
  border:1px solid var(--line);
  background:#fff;
  box-shadow:var(--shadow-sm);
}

.feature-large{
  position:relative;
  min-height:520px;
  padding:34px;
  overflow:hidden;
  border-radius:var(--radius-lg);
}

.feature-large::after{
  content:"";
  position:absolute;
  width:310px;
  height:310px;
  right:-110px;
  top:-100px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(84,223,203,.16),transparent 65%);
  pointer-events:none;
}

.feature-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:var(--teal-700);
  background:var(--teal-50);
  border:1px solid #d8eee9;
}

.feature-icon.small{
  width:42px;
  height:42px;
  flex:0 0 auto;
  border-radius:12px;
}

.feature-icon svg,
.solution-icon svg,
.flow-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.feature-icon.small svg{width:21px;height:21px}

.feature-number{
  position:absolute;
  right:34px;
  top:35px;
  color:#a6b7bd;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
}

.feature-large h3{
  max-width:500px;
  margin-top:22px;
  font-size:29px;
}

.feature-large>p{
  max-width:570px;
  margin:12px 0 0;
  font-size:16px;
}

.feature-demo{
  position:absolute;
  left:34px;
  right:34px;
  bottom:0;
  min-height:240px;
  border:1px solid #d8e5e7;
  border-bottom:0;
  border-radius:20px 20px 0 0;
  background:#f9fcfc;
  box-shadow:0 -5px 28px rgba(5,47,62,.06);
  padding:22px 24px;
}

.demo-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding-bottom:14px;
  border-bottom:1px solid var(--line);
  color:var(--muted);
  font-size:9px;
  letter-spacing:.08em;
  font-weight:750;
}

.demo-header b{
  color:var(--navy-950);
  font-size:12px;
  letter-spacing:-.02em;
}

.demo-line{
  height:7px;
  margin-top:15px;
  border-radius:999px;
  background:#dce8ea;
}

.demo-line.wide{width:68%}
.demo-line.medium{width:44%;margin-top:8px}

.demo-medicine{
  display:grid;
  grid-template-columns:35px 1fr;
  align-items:center;
  gap:12px;
  margin-top:12px;
  padding:11px 12px;
  border:1px solid #e1eaec;
  border-radius:11px;
  background:#fff;
}

.demo-medicine>b{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:8px;
  color:var(--teal-700);
  background:var(--teal-50);
  font-family:Georgia,serif;
  font-size:11px;
}

.demo-medicine span{display:grid;gap:5px}
.demo-medicine i{height:5px;border-radius:999px;background:#dbe6e8}
.demo-medicine i:first-child{width:57%}
.demo-medicine i:last-child{width:36%}

.demo-footer{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:13px;
}

.demo-footer span{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid var(--line-strong);
  border-radius:7px;
  color:var(--navy-950);
  font-size:7px;
  font-weight:800;
}

.demo-footer i{
  width:80px;
  height:6px;
  border-radius:999px;
  background:#dce8ea;
}

.feature-stack{display:grid;gap:18px}

.feature-compact{
  display:flex;
  gap:18px;
  align-items:flex-start;
  padding:27px;
  border-radius:var(--radius-md);
}

.feature-compact h3{font-size:19px}

.feature-compact p{
  margin:8px 0 0;
  font-size:14px;
  line-height:1.6;
}

/* Flow */
.section-flow{
  background:var(--paper);
  border-top:1px solid #edf3f4;
  border-bottom:1px solid #edf3f4;
}

.flow-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.flow-grid::before{
  content:"";
  position:absolute;
  left:12.5%;
  right:12.5%;
  top:57px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--line-strong) 12%,var(--line-strong) 88%,transparent);
  z-index:0;
}

.flow-card{
  position:relative;
  z-index:1;
  min-height:270px;
  padding:26px 24px;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:#fff;
  box-shadow:0 8px 24px rgba(5,47,62,.04);
}

.step-number{
  display:block;
  margin-bottom:17px;
  color:var(--teal-700);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
}

.flow-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin-bottom:22px;
  border:1px solid #d7ece8;
  border-radius:14px;
  color:var(--teal-700);
  background:#fff;
  box-shadow:0 0 0 8px var(--paper);
}

.flow-card h3{font-size:20px}
.flow-card p{margin:10px 0 0;font-size:14px}

/* Solutions */
.section-solutions{background:#fff}

.solution-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}

.solution-card{
  min-height:360px;
  padding:30px;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  background:#fff;
  box-shadow:var(--shadow-sm);
  overflow:hidden;
  position:relative;
}

.solution-card::before{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-70px;
  bottom:-70px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(84,223,203,.12),transparent 67%);
}

.solution-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.solution-top>span{
  color:#a6b7bd;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
}

.solution-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:var(--teal-700);
  background:var(--teal-50);
  border:1px solid #d7ece8;
}

.solution-card h3{
  margin-top:24px;
  font-size:25px;
}

.solution-card>p{
  max-width:540px;
  margin:11px 0 0;
  font-size:15px;
}

.solution-card ul{
  margin:24px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:9px;
}

.solution-card li{
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--ink-2);
  font-size:14px;
  font-weight:600;
}

.solution-card li::before{
  content:"";
  width:7px;
  height:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--teal-650);
  box-shadow:0 0 0 4px rgba(17,136,120,.1);
}

/* Security */
.section-safety{
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 84% 20%,rgba(84,223,203,.13),transparent 28%),
    linear-gradient(135deg,var(--navy-950),#08495a 57%,#0b5e67);
}

.safety-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.85fr);
  align-items:center;
  gap:80px;
}

.safety-copy h2{
  max-width:670px;
  color:#fff;
}

.safety-copy>p{
  max-width:650px;
  color:#d5e9ec;
  font-size:18px;
}

.safety-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
  margin-top:34px;
}

.safety-list>div{
  display:flex;
  gap:11px;
  padding:15px 16px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  background:rgba(255,255,255,.055);
}

.safety-check{
  width:25px;
  height:25px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#71ead8;
  background:rgba(84,223,203,.12);
  font-size:13px;
  font-weight:800;
}

.safety-list p{margin:0}

.safety-list strong{
  display:block;
  color:#fff;
  font-size:13px;
}

.safety-list small{
  display:block;
  margin-top:3px;
  color:#cbe0e4;
  font-size:11px;
  line-height:1.45;
}

.safety-visual{
  position:relative;
  min-height:440px;
  display:grid;
  place-items:center;
}

.security-orbit{
  position:absolute;
  border:1px solid rgba(113,234,216,.15);
  border-radius:50%;
}

.orbit-one{width:340px;height:340px}
.orbit-two{width:440px;height:440px}

.shield-card{
  position:relative;
  z-index:2;
  width:255px;
  min-height:240px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:26px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:28px;
  background:rgba(255,255,255,.075);
  box-shadow:0 30px 70px rgba(1,24,32,.2);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}

.shield-icon{
  width:82px;
  height:82px;
  display:grid;
  place-items:center;
  border-radius:24px;
  color:#75ead9;
  background:rgba(84,223,203,.09);
  border:1px solid rgba(113,234,216,.18);
}

.shield-icon svg{
  width:54px;
  height:54px;
  fill:none;
  stroke:currentColor;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.shield-card span{
  margin-top:20px;
  color:#bcd9de;
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.shield-card strong{
  max-width:180px;
  margin-top:7px;
  color:#fff;
  font-size:17px;
  line-height:1.3;
}

.security-pill{
  position:absolute;
  z-index:3;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  color:#e6f4f6;
  background:rgba(3,44,57,.65);
  box-shadow:0 12px 24px rgba(1,24,32,.18);
  font-size:10px;
  font-weight:700;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}

.pill-a{left:5px;top:95px}
.pill-b{right:8px;top:160px}
.pill-c{left:30px;bottom:80px}

/* Local */
.section-local{
  padding-top:94px;
  padding-bottom:94px;
  background:#fff;
}

.local-card{
  min-height:480px;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  align-items:center;
  gap:60px;
  overflow:hidden;
  padding:58px 64px;
  border-radius:var(--radius-xl);
  background:
    radial-gradient(circle at 88% 12%,rgba(84,223,203,.14),transparent 30%),
    linear-gradient(130deg,#063646,#08495a 58%,#0a5e67);
  box-shadow:var(--shadow-md);
}

.local-copy h2{
  max-width:650px;
  color:#fff;
}

.local-copy p{
  max-width:620px;
  color:#d4e7ea;
  font-size:17px;
}

.local-tags{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:26px;
}

.local-tags span{
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  color:#dff1f3;
  background:rgba(255,255,255,.055);
  font-size:11px;
  font-weight:700;
}

.device-stack{
  position:relative;
  min-height:340px;
}

.tablet{
  position:absolute;
  width:420px;
  height:286px;
  right:34px;
  top:28px;
  overflow:hidden;
  border:7px solid #f7fbfc;
  border-radius:22px;
  background:#fff;
  box-shadow:0 30px 65px rgba(0,0,0,.24);
  transform:rotate(-2deg);
}

.tablet-bar{
  height:45px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 15px;
  border-bottom:1px solid var(--line);
  color:var(--navy-950);
  font-size:11px;
  font-weight:750;
}

.tablet-bar b{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:7px;
  color:#fff;
  background:linear-gradient(145deg,var(--navy-800),var(--teal-500));
}

.tablet-body{
  padding:23px;
  background:#f7fbfb;
  height:calc(100% - 45px);
}

.tablet-title{
  display:block;
  width:42%;
  height:12px;
  margin-bottom:18px;
  border-radius:99px;
  background:#b8cdd2;
}

.tablet-row{
  display:grid;
  grid-template-columns:48px 1fr;
  align-items:center;
  gap:14px;
  margin-bottom:11px;
  padding:12px;
  border:1px solid #e1eaec;
  border-radius:12px;
  background:#fff;
}

.tablet-row i{
  width:42px;
  height:42px;
  border-radius:11px;
  background:#e5f7f3;
}

.tablet-row b{
  width:68%;
  height:7px;
  border-radius:99px;
  background:#dbe6e8;
}

.tablet-row.short b{width:44%}

.mobile{
  position:absolute;
  width:142px;
  height:275px;
  right:0;
  bottom:-8px;
  overflow:hidden;
  border:6px solid #f7fbfc;
  border-radius:28px;
  background:#fff;
  box-shadow:0 26px 58px rgba(0,0,0,.28);
  transform:rotate(3deg);
}

.mobile-notch{
  width:52px;
  height:8px;
  margin:7px auto 3px;
  border-radius:99px;
  background:#e1e8ea;
}

.mobile-content{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:27px 15px 14px;
}

.mobile-content>b{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#fff;
  background:linear-gradient(145deg,var(--navy-800),var(--teal-500));
}

.mobile-content>span{
  width:65%;
  height:8px;
  margin:18px 0 16px;
  border-radius:99px;
  background:#bdcfd3;
}

.mobile-content i{
  width:100%;
  height:29px;
  margin-bottom:8px;
  border:1px solid #e1eaec;
  border-radius:8px;
  background:#f8fbfb;
}

.mobile-content button{
  width:100%;
  height:31px;
  margin-top:4px;
  border:0;
  border-radius:8px;
  color:#fff;
  background:linear-gradient(100deg,var(--navy-800),var(--teal-700));
  font-size:8px;
  font-weight:700;
}

/* CTA */
.final-cta{
  padding-top:0;
  padding-bottom:96px;
}

.cta-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:50px;
  padding:50px 54px;
  border-radius:var(--radius-xl);
  color:#fff;
  background:
    radial-gradient(circle at 82% 15%,rgba(84,223,203,.15),transparent 30%),
    linear-gradient(120deg,var(--navy-950),#075163 64%,#0d716c);
  box-shadow:var(--shadow-md);
}

.cta-panel h2{
  max-width:700px;
  margin-bottom:11px;
  color:#fff;
  font-size:clamp(30px,3.3vw,42px);
}

.cta-panel p{
  margin-bottom:0;
  color:#d4e8eb;
  font-size:16px;
}

.cta-actions{
  flex:0 0 auto;
  display:flex;
  flex-wrap:wrap;
  gap:11px;
}

/* Footer */
.site-footer{
  padding:70px 0 28px;
  color:#b7cbd0;
  background:#042d3a;
}

.footer-grid{
  display:grid;
  grid-template-columns:1.5fr repeat(3,.7fr);
  gap:56px;
  padding-bottom:48px;
}

.brand-footer .brand-name{color:#fff}
.brand-footer .brand-name span{color:#62dec9}

.footer-brand p{
  max-width:330px;
  margin:20px 0 10px;
  color:#a8c0c5;
  font-size:14px;
}

.footer-brand>strong{
  color:#dcebed;
  font-size:13px;
  font-weight:650;
}

.footer-column{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.footer-column h3{
  margin-bottom:8px;
  color:#fff;
  font-size:13px;
  letter-spacing:.02em;
}

.footer-column a{
  width:max-content;
  max-width:100%;
  color:#a8c0c5;
  font-size:13px;
  transition:color .18s ease;
}

.footer-column a:hover{color:#fff}

.footer-bottom{
  min-height:54px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.09);
  color:#829da4;
  font-size:12px;
}

/* Responsive */
@media (max-width:1080px){
  .desktop-nav{gap:20px}
  .hero-grid{grid-template-columns:1fr 480px;gap:38px}
  .product-window{transform:none}
  .phone-card{right:-8px}
  .safety-grid{gap:45px}
  .local-card{padding:48px}
  .tablet{right:10px;width:390px}
}

@media (max-width:960px){
  .desktop-nav,.desktop-only{display:none}
  .menu-toggle{display:flex}

  .header-inner{min-height:72px}

  .hero{padding-top:72px}
  .hero-grid{
    grid-template-columns:1fr;
    min-height:auto;
  }

  .hero-copy{
    max-width:760px;
    padding-bottom:0;
  }

  .product-stage{
    min-height:520px;
    margin-top:-10px;
    padding-bottom:54px;
  }

  .product-window{width:min(92%,620px)}
  .phone-card{right:5%;bottom:38px}

  .role-strip{
    flex-wrap:wrap;
    gap:10px 17px;
    padding:20px 0;
  }

  .role-strip i:nth-of-type(3){display:none}

  .split-heading{
    grid-template-columns:1fr;
    gap:18px;
  }

  .section-heading p{max-width:760px}

  .feature-showcase{grid-template-columns:1fr}
  .feature-large{min-height:500px}

  .flow-grid{grid-template-columns:repeat(2,1fr)}
  .flow-grid::before{display:none}

  .safety-grid{
    grid-template-columns:1fr;
    gap:28px;
  }

  .safety-visual{min-height:400px}

  .local-card{
    grid-template-columns:1fr;
    padding:48px;
  }

  .local-copy{max-width:760px}
  .device-stack{min-height:340px}
  .tablet{right:13%;}

  .cta-panel{
    align-items:flex-start;
    flex-direction:column;
  }

  .footer-grid{
    grid-template-columns:1.35fr 1fr 1fr;
  }

  .footer-column:last-child{grid-column:2/4}
}

@media (max-width:720px){
  .container{width:min(var(--container),calc(100% - 32px))}
  .section{padding:78px 0}

  h1{font-size:clamp(42px,12vw,54px);line-height:1.03}
  h2{font-size:clamp(31px,8vw,39px)}
  .hero-lead{font-size:17px}

  .hero{padding-top:56px}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .hero-actions .button{width:100%}

  .hero-trust{gap:10px 16px}

  .product-stage{
    min-height:455px;
    margin-top:20px;
    padding-bottom:48px;
  }

  .product-window{width:100%}
  .app-shell{grid-template-columns:44px 1fr;min-height:360px}
  .app-sidebar{gap:10px}
  .side-item{width:24px;height:24px}
  .side-item::after{margin:11px auto}
  .app-main{padding:18px 16px}
  .rx-fields{grid-template-columns:1fr}
  .phone-card{
    width:126px;
    min-height:225px;
    right:-4px;
    bottom:8px;
    border-width:4px;
    border-radius:24px;
  }
  .qr-grid{width:54px;height:54px}
  .interface-note{display:none}

  .role-strip{justify-content:flex-start}
  .role-strip i{display:none}

  .feature-large{
    min-height:520px;
    padding:27px;
  }

  .feature-number{right:27px;top:29px}
  .feature-large h3{font-size:25px}
  .feature-demo{left:27px;right:27px;padding:18px}

  .flow-grid,
  .solution-grid,
  .safety-list{
    grid-template-columns:1fr;
  }

  .flow-card{min-height:auto}
  .solution-card{min-height:auto}

  .safety-visual{min-height:350px}
  .orbit-two{width:350px;height:350px}
  .orbit-one{width:270px;height:270px}
  .shield-card{width:220px;min-height:215px}
  .pill-a{left:0;top:65px}
  .pill-b{right:0;top:125px}
  .pill-c{left:10px;bottom:58px}

  .section-local{padding-top:70px;padding-bottom:70px}
  .local-card{
    width:calc(100% - 24px);
    padding:38px 24px;
    border-radius:26px;
  }

  .device-stack{min-height:300px}
  .tablet{width:330px;height:240px;right:9%;top:20px}
  .mobile{width:118px;height:230px;right:0}

  .final-cta{padding-bottom:72px}
  .cta-panel{
    padding:38px 28px;
    border-radius:26px;
  }

  .cta-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
  }

  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:36px 28px;
  }

  .footer-brand{grid-column:1/-1}
  .footer-column:last-child{grid-column:auto}

  .footer-bottom{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
}

@media (max-width:480px){
  .container{width:min(var(--container),calc(100% - 24px))}
  .header-inner{min-height:68px}
  .brand-mark{width:38px;height:38px;border-radius:11px}
  .brand-mark svg{width:26px;height:26px}
  .brand-name{font-size:21px}

  .mobile-menu-actions{grid-template-columns:1fr}

  .hero{padding-top:44px}
  h1{font-size:43px;letter-spacing:-.04em}
  .hero-lead{font-size:16px}
  .hero-trust{display:grid}

  .product-stage{min-height:390px}
  .window-bar{padding-inline:10px}
  .window-status{display:none}
  .window-bar{grid-template-columns:1fr auto}
  .window-title{justify-self:end}
  .app-shell{grid-template-columns:38px 1fr}
  .app-sidebar{padding-top:12px}
  .side-logo{width:26px;height:26px}
  .side-item{width:21px;height:21px}
  .app-main{padding:15px 12px}
  .app-main h2{font-size:17px}
  .patient-strip{grid-template-columns:auto 1fr}
  .verified{display:none}
  .ui-footer{align-items:flex-start;flex-direction:column}
  .phone-card{display:none}

  .section{padding:66px 0}
  .section-heading{margin-bottom:36px}

  .feature-large{
    min-height:500px;
    padding:22px;
  }
  .feature-demo{left:22px;right:22px}
  .feature-compact{padding:22px}

  .solution-card{padding:24px}

  .safety-visual{min-height:300px}
  .orbit-two{width:280px;height:280px}
  .orbit-one{width:220px;height:220px}
  .security-pill{font-size:9px}
  .pill-a{top:48px}
  .pill-b{top:103px}
  .pill-c{bottom:42px}

  .local-card{padding:34px 20px}
  .device-stack{min-height:250px}
  .tablet{width:285px;height:205px;right:6%}
  .tablet-body{padding:16px}
  .mobile{width:102px;height:200px}

  .footer-grid{grid-template-columns:1fr}
  .footer-brand,.footer-column:last-child{grid-column:auto}
}

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


/* Responsive refinement pass: tablet, phone and editorial alignment */
.hero-grid > *,
.split-heading > *,
.feature-showcase > *,
.safety-grid > *,
.local-card > *,
.cta-panel > *{
  min-width:0;
}

h1,h2,h3{
  text-wrap:balance;
  overflow-wrap:break-word;
}

.hero-lead,
.split-heading > p,
.feature-large > p,
.feature-compact p,
.flow-card p,
.solution-card > p,
.safety-copy > p,
.local-copy p,
.cta-panel p{
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
  -webkit-hyphens:auto;
}

a,.button,.menu-toggle{
  touch-action:manipulation;
  -webkit-tap-highlight-color:rgba(15,127,112,.10);
}

p,a,span,strong,small{
  overflow-wrap:break-word;
}

@media (min-width:721px) and (max-width:960px){
  .container{width:min(var(--container),calc(100% - 40px))}
  .section{padding:90px 0}
  .hero{padding-top:64px}
  .hero-copy{max-width:820px}
  .hero-lead{max-width:760px}
  .product-stage{min-height:500px}
  .feature-compact{padding:25px}
  .solution-card{padding:28px}
  .safety-copy>p,.local-copy p{max-width:760px}
  .footer-column a{min-height:36px;display:inline-flex;align-items:center}
}

@media (max-width:720px){
  body{overflow-x:hidden}
  .section-heading p,
  .hero-lead,
  .feature-large > p,
  .feature-compact p,
  .flow-card p,
  .solution-card > p,
  .safety-copy > p,
  .local-copy p,
  .cta-panel p{
    text-align:justify;
    text-justify:inter-word;
    hyphens:auto;
    -webkit-hyphens:auto;
  }

  .centered p{
    text-align:center;
    hyphens:none;
  }

  .button{min-height:50px}
  .mobile-nav>a{
    min-height:48px;
    display:flex;
    align-items:center;
  }

  .feature-compact{
    align-items:flex-start;
  }

  .solution-card li{
    line-height:1.45;
  }

  .footer-column a{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    padding:5px 0;
  }

  .footer-column{gap:2px}
}

@media (max-width:480px){
  h1{
    font-size:clamp(37px,11vw,43px);
    line-height:1.055;
  }

  h2{
    font-size:clamp(29px,8vw,36px);
    line-height:1.12;
  }

  h3{line-height:1.28}

  .hero-copy .eyebrow{
    max-width:300px;
    line-height:1.45;
  }

  .hero-lead{
    line-height:1.7;
  }

  .hero-trust span{
    min-height:30px;
  }

  .product-window{border-radius:17px}
  .window-bar{min-height:46px}
  .app-shell{min-height:342px}
  .app-main{overflow:hidden}

  .feature-large{
    min-height:525px;
  }

  .feature-large>p,
  .feature-compact p,
  .flow-card p,
  .solution-card>p{
    line-height:1.68;
  }

  .safety-list small{
    font-size:12px;
    line-height:1.55;
  }

  .local-tags span{
    min-height:34px;
    display:inline-flex;
    align-items:center;
  }

  .cta-panel p{
    line-height:1.65;
  }
}

@media (max-width:390px){
  .container{width:calc(100% - 20px)}
  .hero{padding-top:38px}
  h1{font-size:38px}
  h2{font-size:29px}
  .hero-actions{gap:10px}
  .button{padding-inline:16px}
  .product-stage{min-height:360px}
  .app-shell{grid-template-columns:34px 1fr;min-height:330px}
  .app-main{padding:13px 10px}
  .side-logo{width:24px;height:24px}
  .side-item{width:19px;height:19px}
  .side-item::after{margin:9px auto}
  .patient-strip{padding:9px}
  .rx-card{padding:10px}
  .clinical-check{padding:9px}
  .feature-large{min-height:535px;padding:20px}
  .feature-demo{left:20px;right:20px;padding:15px}
  .solution-card{padding:22px}
  .safety-visual{min-height:280px}
  .orbit-two{width:250px;height:250px}
  .orbit-one{width:195px;height:195px}
  .shield-card{width:200px;min-height:200px;padding:20px}
  .security-pill{padding:7px 9px}
  .device-stack{min-height:225px}
  .tablet{width:260px;height:188px;right:5%}
  .mobile{width:92px;height:182px}
  .cta-panel{padding:32px 22px}
}


/* Third refinement pass: restraint, institutional pages and conversion paths */
.ui-screen-title{
  margin:3px 0 0;
  color:var(--navy-950);
  font-size:21px;
  line-height:1.15;
  font-weight:760;
  letter-spacing:-.03em;
}

.hero-demo-link{
  display:inline-flex;
  align-items:center;
  margin-top:18px;
  color:#cce3e7;
  font-size:13px;
  font-weight:650;
  text-decoration:underline;
  text-decoration-color:rgba(113,234,216,.45);
  text-underline-offset:4px;
}

.hero-demo-link:hover{color:#fff}

.section-link-row{
  position:relative;
  z-index:3;
  display:flex;
  justify-content:flex-start;
  margin-top:-38px;
  padding-bottom:58px;
}

.section-text-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--teal-700);
  font-size:14px;
  font-weight:720;
}

.section-text-link svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:transform .18s ease;
}

.section-text-link:hover svg{transform:translateX(3px)}
.section-text-link.on-dark{color:#86ebdc}
.section-text-link.on-dark:hover{color:#fff}
.local-more{margin-top:25px}

/* Reduce visual noise on secondary surfaces */
.feature-large,
.feature-compact,
.flow-card,
.solution-card{
  box-shadow:0 8px 24px rgba(5,47,62,.035);
}

.feature-large::after,
.solution-card::before{
  opacity:.48;
}

.feature-compact,
.flow-card,
.solution-card{
  background:linear-gradient(180deg,#fff 0%,#fdfefe 100%);
}

.cta-actions-wrap{
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
}

.cta-login-link{
  color:#cfe4e8;
  font-size:12px;
  font-weight:650;
  text-decoration:underline;
  text-decoration-color:rgba(255,255,255,.25);
  text-underline-offset:4px;
}

.cta-login-link:hover{color:#fff}

/* Institutional content pages */
.page-hero{
  position:relative;
  overflow:hidden;
  padding:96px 0 88px;
  color:#fff;
  background:
    radial-gradient(circle at 82% 18%,rgba(84,223,203,.14),transparent 27%),
    linear-gradient(132deg,#052f3e 0%,#07485a 58%,#0a6269 100%);
}

.page-hero.compact{padding:80px 0 72px}

.page-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.42;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(to bottom,#000,transparent 92%);
}

.page-hero-inner{
  position:relative;
  z-index:1;
  max-width:900px;
}

.page-hero h1{
  max-width:860px;
  margin:18px 0 20px;
  font-size:clamp(42px,5.3vw,64px);
}

.page-hero.compact h1{
  font-size:clamp(38px,4.5vw,54px);
}

.page-hero p{
  max-width:760px;
  margin:0;
  color:#d7eaed;
  font-size:19px;
  line-height:1.7;
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
}

.content-page{
  padding:88px 0 104px;
  background:#fff;
}

.prose-layout{
  display:grid;
  grid-template-columns:220px minmax(0,760px);
  gap:82px;
  align-items:start;
  justify-content:center;
}

.prose-nav{
  position:sticky;
  top:112px;
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:18px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

.prose-nav>span{
  margin-bottom:8px;
  color:var(--muted-2);
  font-size:11px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.prose-nav a{
  padding:7px 0;
  color:var(--ink-2);
  font-size:13px;
  font-weight:650;
}

.prose-nav a:hover{color:var(--teal-700)}

.prose{
  max-width:800px;
}

.prose.single{
  max-width:820px;
  margin-inline:auto;
}

.prose>section{
  scroll-margin-top:110px;
  padding-bottom:62px;
  margin-bottom:62px;
  border-bottom:1px solid var(--line);
}

.prose>section:last-child{
  margin-bottom:0;
  padding-bottom:0;
  border-bottom:0;
}

.prose h2{
  margin-top:12px;
  font-size:clamp(29px,3.2vw,39px);
  line-height:1.15;
}

.prose.single h2{
  margin-top:42px;
  font-size:26px;
}

.prose p{
  margin-bottom:18px;
  color:var(--ink-2);
  font-size:16px;
  line-height:1.8;
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
}

.page-meta{
  color:var(--muted-2)!important;
  font-size:13px!important;
}

.principle-grid,
.trust-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  margin-top:28px;
}

.principle-grid>div,
.trust-grid>div{
  padding:20px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fbfdfd;
}

.principle-grid strong,
.trust-grid strong{
  display:block;
  color:var(--navy-950);
  font-size:15px;
}

.principle-grid span,
.trust-grid span{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:13px;
  line-height:1.55;
}

.prose-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin-top:30px;
  padding:24px;
  border:1px solid #d6ebe7;
  border-radius:18px;
  background:var(--teal-50);
}

.prose-cta strong,
.prose-cta span{
  display:block;
}

.prose-cta strong{color:var(--navy-950)}
.prose-cta span{
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
}

.notice{
  display:flex;
  gap:15px;
  margin:28px 0;
  padding:20px 22px;
  border-left:3px solid var(--teal-700);
  border-radius:0 14px 14px 0;
  background:var(--teal-50);
}

.notice strong{
  flex:0 0 auto;
  color:var(--navy-950);
  font-size:13px;
}

.notice span{
  color:var(--ink-2);
  font-size:13px;
  line-height:1.6;
}

.prose-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:34px;
}

/* Contact & demo */
.contact-layout{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(480px,1.15fr);
  gap:70px;
  align-items:start;
}

.contact-copy h2{
  margin-top:12px;
  font-size:clamp(32px,3.7vw,44px);
}

.contact-copy>p{
  color:var(--ink-2);
  font-size:16px;
  line-height:1.78;
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
}

.contact-points{
  display:grid;
  gap:14px;
  margin:30px 0;
}

.contact-points>div{
  padding:17px 18px;
  border-left:2px solid #cfe8e4;
  background:#fbfdfd;
}

.contact-points strong,
.contact-points span{display:block}

.contact-points strong{
  color:var(--navy-950);
  font-size:14px;
}

.contact-points span{
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
}

.contact-card{
  padding:30px;
  border:1px solid var(--line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 50px rgba(5,47,62,.07);
}

.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.contact-form label{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.contact-form label>span{
  color:var(--ink-2);
  font-size:12px;
  font-weight:720;
}

.form-full{grid-column:1/-1}

.contact-form input,
.contact-form select,
.contact-form textarea{
  width:100%;
  border:1px solid #cfdde0;
  border-radius:11px;
  background:#fff;
  color:var(--ink);
  outline:none;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}

.contact-form input,
.contact-form select{
  min-height:48px;
  padding:0 13px;
}

.contact-form textarea{
  min-height:132px;
  padding:12px 13px;
  resize:vertical;
  line-height:1.55;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  border-color:var(--teal-700);
  box-shadow:0 0 0 3px rgba(15,127,112,.10);
}

.consent-row{
  margin-top:18px;
  display:grid!important;
  grid-template-columns:20px 1fr;
  align-items:start;
  gap:10px!important;
}

.consent-row input{
  width:18px;
  min-height:18px;
  height:18px;
  margin:2px 0 0;
}

.consent-row span{
  font-weight:600!important;
  line-height:1.5;
}

.form-help{
  margin:14px 0 18px;
  color:var(--muted);
  font-size:11px;
  line-height:1.55;
}

.form-submit{min-width:180px}
.form-submit:disabled{opacity:.65;cursor:wait;transform:none}

.form-status{
  min-height:24px;
  margin-top:14px;
  font-size:13px;
  font-weight:650;
}

.form-status.success{color:#167453}
.form-status.error{color:#a53636}

.honeypot{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
}

/* Five-column institutional footer */
.footer-grid{
  grid-template-columns:1.45fr repeat(4,.62fr);
  gap:42px;
}

/* Mobile editorial rule: avoid justification rivers in narrow columns */
@media (max-width:480px){
  .hero-lead,
  .section-heading p,
  .feature-large > p,
  .feature-compact p,
  .flow-card p,
  .solution-card > p,
  .safety-copy > p,
  .local-copy p,
  .cta-panel p,
  .page-hero p,
  .prose p,
  .contact-copy>p{
    text-align:left;
    hyphens:none;
    -webkit-hyphens:none;
  }

  .centered p{text-align:center}

  .ui-screen-title{font-size:17px}
  .hero-demo-link{line-height:1.5}
  .section-link-row{margin-top:-24px;padding-bottom:42px}
  .cta-actions-wrap{width:100%;align-items:stretch}
  .cta-login-link{text-align:center}

  .page-hero{padding:62px 0 58px}
  .page-hero.compact{padding:58px 0 54px}
  .page-hero h1{font-size:38px}
  .page-hero p{font-size:16px}
  .content-page{padding:62px 0 74px}

  .prose-layout{grid-template-columns:1fr;gap:28px}
  .prose-nav{position:static;display:none}
  .principle-grid,.trust-grid{grid-template-columns:1fr}
  .prose-cta{align-items:flex-start;flex-direction:column}
  .prose-cta .button{width:100%}
  .notice{flex-direction:column;gap:6px}

  .contact-layout{grid-template-columns:1fr;gap:38px}
  .contact-card{padding:22px}
  .form-grid{grid-template-columns:1fr}
  .form-full{grid-column:auto}
  .form-submit{width:100%}

  .footer-grid{grid-template-columns:1fr}
  .footer-brand,.footer-column:last-child{grid-column:auto}
}

@media (min-width:481px) and (max-width:960px){
  .prose-layout{grid-template-columns:180px minmax(0,1fr);gap:44px}
  .contact-layout{grid-template-columns:1fr;gap:48px}
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .footer-column:last-child{grid-column:auto}
}

@media (min-width:961px) and (max-width:1180px){
  .footer-grid{gap:28px}
  .footer-column a{font-size:12px}
}


@media (max-width:1120px){
  .desktop-nav,.desktop-only{display:none}
  .menu-toggle{display:flex}
}

@media (min-width:481px) and (max-width:720px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
}


/* Delivery tracking visual — premium refinement */
.section-delivery-tracking{
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 8%,rgba(84,223,203,.08),transparent 24%),
    linear-gradient(180deg,#ffffff 0%,#f7fbfc 100%);
  border-top:1px solid #edf3f4;
  border-bottom:1px solid #edf3f4;
}

.section-delivery-tracking::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(7,59,76,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(7,59,76,.025) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.18),transparent 72%);
}

.section-delivery-tracking>.container{
  position:relative;
  z-index:1;
}

.delivery-heading{
  align-items:end;
}

.delivery-heading h2{
  max-width:760px;
}

.delivery-heading p{
  max-width:590px;
}

.delivery-tracking-grid{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);
  gap:22px;
  align-items:stretch;
}

.delivery-visual-card,
.delivery-patient-card{
  border-radius:var(--radius-xl);
}

.delivery-visual-card{
  position:relative;
  overflow:hidden;
  padding:34px;
  border:1px solid rgba(255,255,255,.13);
  color:#fff;
  background:
    radial-gradient(circle at 92% 10%,rgba(84,223,203,.15),transparent 27%),
    radial-gradient(circle at 8% 92%,rgba(26,131,143,.12),transparent 32%),
    linear-gradient(138deg,#052f3e 0%,#073f51 54%,#0a5964 100%);
  box-shadow:0 30px 70px rgba(5,47,62,.16);
}

.delivery-visual-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  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:46px 46px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.4),transparent 84%);
}

.delivery-visual-card::after{
  content:"";
  position:absolute;
  width:280px;
  height:280px;
  right:-125px;
  top:-135px;
  border:1px solid rgba(113,234,216,.12);
  border-radius:50%;
  box-shadow:0 0 0 42px rgba(113,234,216,.025),0 0 0 88px rgba(113,234,216,.018);
  pointer-events:none;
}

.delivery-visual-top{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  margin-bottom:26px;
}

.delivery-demo-label{
  display:inline-flex;
  margin-bottom:7px;
  color:#71ead8;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.delivery-visual-top h3{
  margin:0;
  color:#fff;
  font-size:24px;
  line-height:1.2;
  letter-spacing:-.03em;
}

.delivery-ref{
  flex:0 0 auto;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(255,255,255,.065);
  color:#dceef1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  font-size:10.5px;
  font-weight:750;
  letter-spacing:.04em;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}

.delivery-current-status{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:16px;
  align-items:center;
  margin-bottom:28px;
  padding:18px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  background:rgba(255,255,255,.075);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}

.delivery-status-icon{
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border:1px solid rgba(113,234,216,.16);
  border-radius:15px;
  background:rgba(84,223,203,.10);
  color:#71ead8;
}

.delivery-status-icon svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.delivery-current-kicker{
  display:block;
  color:#acd2d8;
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.delivery-current-title-row{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:3px;
}

.delivery-current-status strong{
  display:block;
  margin:0;
  color:#fff;
  font-size:19px;
  line-height:1.25;
}

.delivery-current-badge{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  padding:5px 8px;
  border:1px solid rgba(113,234,216,.18);
  border-radius:999px;
  background:rgba(84,223,203,.10);
  color:#71ead8;
  font-size:9px;
  font-weight:800;
  line-height:1;
  letter-spacing:.04em;
  white-space:nowrap;
}

.delivery-current-status small{
  display:block;
  margin-top:4px;
  color:#c9e0e4;
  font-size:12.5px;
  line-height:1.45;
}

.delivery-timeline{
  position:relative;
  z-index:2;
  display:grid;
  gap:0;
  padding:2px 2px 0;
}

.delivery-step{
  position:relative;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:14px;
  min-height:76px;
  padding:3px 0 16px;
}

.delivery-step:not(:last-child)::before{
  content:"";
  position:absolute;
  left:18px;
  top:31px;
  bottom:-1px;
  width:1px;
  background:rgba(255,255,255,.16);
}

.delivery-step.done:not(:last-child)::before,
.delivery-step.active:not(:last-child)::before{
  background:linear-gradient(to bottom,#5dd5c4,rgba(93,213,196,.28));
}

.delivery-step-marker{
  position:relative;
  z-index:1;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:50%;
  background:#0a4657;
  color:#dff5f1;
  box-shadow:0 8px 18px rgba(1,24,32,.16);
  font-size:12px;
  font-weight:900;
}

.delivery-step.done .delivery-step-marker{
  border-color:#54dfcb;
  background:#128676;
  color:#fff;
}

.delivery-step.active .delivery-step-marker{
  border-color:#71ead8;
  background:#073b4c;
  box-shadow:0 0 0 5px rgba(84,223,203,.10),0 8px 18px rgba(1,24,32,.18);
}

.delivery-step.active .delivery-step-marker::after{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:#71ead8;
}

.delivery-step strong{
  display:block;
  padding-top:3px;
  color:#eaf5f6;
  font-size:14.5px;
  line-height:1.3;
}

.delivery-step.active strong{
  color:#fff;
}

.delivery-step small{
  display:block;
  max-width:520px;
  margin-top:4px;
  color:#a9c5cb;
  font-size:12px;
  line-height:1.5;
}

.delivery-step.active small{
  color:#c9e0e4;
}

.delivery-patient-card{
  display:flex;
  flex-direction:column;
  gap:24px;
  padding:34px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:var(--shadow-md);
}

.delivery-patient-card .eyebrow{
  color:var(--teal-700);
}

.delivery-patient-card h3{
  max-width:430px;
  margin:8px 0 10px;
  color:var(--navy-950);
  font-size:27px;
  line-height:1.2;
  letter-spacing:-.035em;
}

.delivery-patient-card>div>p{
  max-width:480px;
  margin:0;
  color:var(--muted);
  font-size:14.5px;
  line-height:1.65;
}

.delivery-info-list{
  display:grid;
  gap:11px;
}

.delivery-info-list>div{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:13px;
  align-items:start;
  padding:14px 15px;
  border:1px solid #e0eaec;
  border-radius:15px;
  background:#fbfdfd;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}

.delivery-info-list>div:hover{
  transform:translateY(-1px);
  border-color:#cce0df;
  box-shadow:0 10px 24px rgba(5,47,62,.055);
}

.delivery-info-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid #d7ece8;
  border-radius:12px;
  background:var(--teal-50);
  color:var(--teal-700);
  font-size:10px;
  font-weight:850;
  letter-spacing:.04em;
}

.delivery-info-list p{
  margin:0;
}

.delivery-info-list strong{
  display:block;
  color:#214654;
  font-size:14px;
  line-height:1.35;
}

.delivery-info-list small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.delivery-courier-preview{
  margin-top:auto;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:16px;
  border:1px solid #d5e5e7;
  border-radius:17px;
  background:
    radial-gradient(circle at 95% 0%,rgba(84,223,203,.10),transparent 34%),
    linear-gradient(135deg,#f7fbfb,#ffffff);
}

.courier-preview-avatar{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:var(--navy-900);
  color:#fff;
  box-shadow:0 8px 18px rgba(5,47,62,.14);
}

.courier-preview-avatar svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
}

.delivery-courier-preview small{
  display:block;
  color:#728891;
  font-size:9.5px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.delivery-courier-preview strong{
  display:block;
  margin-top:3px;
  color:#214654;
  font-size:12.5px;
  line-height:1.4;
}

.courier-preview-status{
  padding:7px 10px;
  border:1px solid #d1ebe5;
  border-radius:999px;
  background:var(--teal-50);
  color:#0b7165;
  font-size:10px;
  font-weight:800;
}

@media (max-width:1080px){
  .delivery-tracking-grid{
    grid-template-columns:minmax(0,1fr) minmax(310px,.82fr);
  }

  .delivery-visual-card,
  .delivery-patient-card{
    padding:30px;
  }
}

@media (max-width:960px){
  .delivery-tracking-grid{
    grid-template-columns:1fr;
    gap:18px;
  }

  .delivery-patient-card{
    min-height:auto;
  }
}

@media (max-width:600px){
  .section-delivery-tracking .section-heading{
    margin-bottom:28px;
  }

  .delivery-heading{
    gap:20px;
  }

  .delivery-heading p{
    font-size:16px;
    line-height:1.55;
  }

  .delivery-tracking-grid{
    gap:14px;
  }

  .delivery-visual-card,
  .delivery-patient-card{
    padding:20px;
    border-radius:22px;
  }

  .delivery-visual-card{
    box-shadow:0 22px 48px rgba(5,47,62,.15);
  }

  .delivery-visual-top{
    flex-direction:column;
    gap:9px;
    margin-bottom:17px;
  }

  .delivery-demo-label{
    margin-bottom:5px;
    font-size:9px;
    letter-spacing:.1em;
  }

  .delivery-visual-top h3{
    font-size:21px;
  }

  .delivery-ref{
    align-self:flex-start;
    padding:6px 9px;
    font-size:9.5px;
  }

  .delivery-current-status{
    position:relative;
    overflow:hidden;
    grid-template-columns:40px minmax(0,1fr);
    gap:11px;
    padding:13px 13px 12px;
    margin-bottom:19px;
    border-color:rgba(113,234,216,.22);
    border-radius:15px;
    background:linear-gradient(135deg,rgba(84,223,203,.11),rgba(255,255,255,.065));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 12px 26px rgba(1,24,32,.10);
  }

  .delivery-current-status::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:3px;
    background:linear-gradient(180deg,#71ead8,#17a589);
  }

  .delivery-status-icon{
    width:38px;
    height:38px;
    border-radius:11px;
  }

  .delivery-status-icon svg{
    width:22px;
    height:22px;
  }

  .delivery-current-copy{
    min-width:0;
  }

  .delivery-current-kicker{
    font-size:8.5px;
    letter-spacing:.09em;
  }

  .delivery-current-title-row{
    flex-wrap:wrap;
    column-gap:8px;
    row-gap:6px;
    margin-top:3px;
  }

  .delivery-current-status strong{
    font-size:16.5px;
    line-height:1.2;
  }

  .delivery-current-badge{
    padding:4px 7px;
    font-size:8px;
    letter-spacing:.035em;
  }

  .delivery-current-status small{
    margin-top:4px;
    font-size:11.25px;
    line-height:1.4;
  }

  .delivery-timeline{
    padding-top:0;
  }

  .delivery-step{
    grid-template-columns:30px minmax(0,1fr);
    min-height:64px;
    gap:10px;
    padding:2px 0 12px;
  }

  .delivery-step-marker{
    width:28px;
    height:28px;
    font-size:10px;
  }

  .delivery-step:not(:last-child)::before{
    left:13px;
    top:26px;
    bottom:-1px;
  }

  .delivery-step strong{
    padding-top:1px;
    font-size:13.5px;
  }

  .delivery-step small{
    margin-top:2px;
    font-size:11px;
    line-height:1.4;
  }

  .delivery-step.active{
    margin:0 -6px 7px;
    padding:8px 8px 10px 6px;
    border:1px solid rgba(113,234,216,.14);
    border-radius:14px;
    background:rgba(255,255,255,.055);
  }

  .delivery-step.active::before{
    left:19px;
    top:33px;
    bottom:-8px;
  }

  .delivery-step.active .delivery-step-marker{
    box-shadow:0 0 0 4px rgba(84,223,203,.09),0 7px 16px rgba(1,24,32,.16);
  }

  .delivery-step:not(.done):not(.active){
    opacity:.72;
  }

  .delivery-patient-card{
    gap:18px;
  }

  .delivery-patient-card h3{
    margin:6px 0 8px;
    font-size:22px;
  }

  .delivery-patient-card>div>p{
    font-size:13.5px;
    line-height:1.55;
  }

  .delivery-info-list{
    gap:8px;
  }

  .delivery-info-list>div{
    grid-template-columns:36px minmax(0,1fr);
    gap:10px;
    padding:11px 12px;
    border-radius:13px;
  }

  .delivery-info-icon{
    width:32px;
    height:32px;
    border-radius:10px;
    font-size:9px;
  }

  .delivery-info-list strong{
    font-size:13px;
  }

  .delivery-info-list small{
    margin-top:2px;
    font-size:11px;
    line-height:1.4;
  }

  .delivery-courier-preview{
    grid-template-columns:40px minmax(0,1fr) auto;
    gap:10px;
    padding:12px 13px;
    border-radius:14px;
    border-color:#dbe8ea;
    background:
      radial-gradient(circle at 100% 0%,rgba(84,223,203,.12),transparent 38%),
      linear-gradient(135deg,#f8fbfb,#ffffff);
  }

  .courier-preview-avatar{
    width:38px;
    height:38px;
    border-radius:12px;
    box-shadow:0 6px 14px rgba(5,47,62,.12);
  }

  .courier-preview-avatar svg{
    width:20px;
    height:20px;
  }

  .courier-preview-copy{
    min-width:0;
  }

  .delivery-courier-preview small{
    font-size:8.5px;
    letter-spacing:.075em;
  }

  .delivery-courier-preview strong{
    margin-top:2px;
    font-size:11.75px;
    line-height:1.35;
  }

  .courier-preview-status{
    grid-column:auto;
    justify-self:end;
    align-self:center;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 8px;
    font-size:8.5px;
    white-space:nowrap;
  }

  .courier-preview-status::before{
    content:"";
    width:6px;
    height:6px;
    flex:0 0 auto;
    border-radius:50%;
    background:var(--teal-650);
    box-shadow:0 0 0 3px rgba(17,136,120,.1);
  }
}

@media (max-width:420px){
  .section-delivery-tracking .section-heading{
    margin-bottom:24px;
  }

  .delivery-visual-card,
  .delivery-patient-card{
    padding:18px;
    border-radius:20px;
  }

  .delivery-current-status{
    grid-template-columns:36px minmax(0,1fr);
    gap:10px;
    padding:12px 11px 11px 12px;
  }

  .delivery-status-icon{
    width:34px;
    height:34px;
    border-radius:10px;
  }

  .delivery-status-icon svg{
    width:19px;
    height:19px;
  }

  .delivery-current-kicker{
    font-size:8px;
  }

  .delivery-current-title-row{
    display:grid;
    grid-template-columns:1fr;
    gap:5px;
  }

  .delivery-current-status strong{
    font-size:16px;
  }

  .delivery-current-badge{
    justify-self:start;
    padding:4px 6px;
    font-size:7.5px;
  }

  .delivery-current-status small{
    margin-top:4px;
    font-size:10.75px;
    line-height:1.38;
  }

  .delivery-step{
    min-height:60px;
  }

  .delivery-step.active{
    margin-left:-4px;
    margin-right:-4px;
  }

  .delivery-patient-card h3{
    font-size:21px;
  }

  .delivery-courier-preview{
    grid-template-columns:34px minmax(0,1fr);
    gap:9px;
    padding:11px;
  }

  .courier-preview-avatar{
    width:34px;
    height:34px;
    border-radius:11px;
  }

  .courier-preview-avatar svg{
    width:18px;
    height:18px;
  }

  .delivery-courier-preview small{
    font-size:8px;
  }

  .delivery-courier-preview strong{
    font-size:11.25px;
    line-height:1.35;
  }

  .courier-preview-status{
    grid-column:2;
    justify-self:start;
    margin-top:1px;
    padding:5px 7px;
    font-size:8px;
  }

  .courier-preview-status::before{
    width:5px;
    height:5px;
  }
}

/* Public contact details */
.public-contact-details{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:14px;
  margin:26px 0 18px;
}
.public-contact-details>div{
  padding:16px 18px;
  border:1px solid #d9e7e8;
  border-radius:14px;
  background:#f7fbfb;
}
.public-contact-details strong,
.public-contact-details a,
.public-contact-details span{
  display:block;
}
.public-contact-details strong{
  margin-bottom:5px;
  color:#073647;
  font-size:13px;
}
.public-contact-details a,
.public-contact-details span{
  color:#496777;
  font-size:14px;
  line-height:1.5;
}
.public-contact-details a{
  color:#087e78;
  text-decoration:none;
  font-weight:650;
}
.public-contact-details a:hover{text-decoration:underline}

.footer-contact{
  display:grid;
  gap:5px;
  max-width:360px;
  margin-top:14px;
  color:#a8c0c5;
  font-size:12.5px;
  line-height:1.45;
}
.footer-contact>a{
  color:#dcebed;
  text-decoration:none;
  font-weight:650;
}
.footer-contact>a:hover{text-decoration:underline}

.social-links,
.contact-social-links{
  display:flex;
  align-items:center;
  gap:11px;
}
.social-links{margin-top:11px}
.contact-social-links{margin:0 0 30px}

.social-brand-icon{
  width:40px;
  height:40px;
  flex:0 0 40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:0;
  text-decoration:none;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.social-brand-icon:hover{
  transform:translateY(-2px) scale(1.03);
  filter:brightness(1.03);
}
.social-brand-icon:focus-visible{
  outline:3px solid rgba(98,222,201,.65);
  outline-offset:3px;
}
.social-brand-icon.instagram{
  color:#fff;
  border-radius:11px;
  background:
    radial-gradient(circle at 31% 102%,#ffd600 0 16%,#ff7a00 28%,#ff0169 52%,#d300c5 72%,#7638fa 100%);
  box-shadow:0 5px 14px rgba(211,0,197,.18);
}
.social-brand-icon.instagram svg{
  width:31px;
  height:31px;
}
.social-brand-icon.facebook{
  border-radius:50%;
  background:transparent;
  box-shadow:0 5px 14px rgba(24,119,242,.16);
}
.social-brand-icon.facebook svg{
  width:40px;
  height:40px;
  display:block;
}

@media (max-width:720px){
  .public-contact-details{grid-template-columns:1fr}
  .contact-social-links{margin-bottom:26px}
}

.social-brand-icon.linkedin{
  border-radius:8px;
  background:transparent;
  box-shadow:0 5px 14px rgba(10,102,194,.17);
}
.social-brand-icon.linkedin svg{
  width:40px;
  height:40px;
  display:block;
}

/* Pricing section */
.section-pricing{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 8%,rgba(84,223,203,.10),transparent 28%),
    radial-gradient(circle at 92% 92%,rgba(11,83,101,.08),transparent 30%),
    #f7fafb;
}
.section-pricing::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(7,59,76,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(7,59,76,.022) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.32),transparent 72%);
}
.section-pricing .container{position:relative;z-index:1}
.pricing-heading{max-width:800px;margin-inline:auto}
.pricing-heading p strong{color:var(--teal-700)}

.pricing-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.pricing-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:24px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.96);
  box-shadow:0 12px 34px rgba(5,47,62,.055);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.pricing-card:hover{
  transform:translateY(-3px);
  border-color:#bfd8d7;
  box-shadow:0 20px 46px rgba(5,47,62,.09);
}
.pricing-card.professional-plan{
  border-top:3px solid var(--teal-500);
}
.pricing-card.patient-plan{
  border-top:3px solid var(--navy-800);
}
.pricing-card.pharmacy-plan{
  box-shadow:0 18px 46px rgba(15,127,112,.10);
}
.pricing-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:18px;
}
.pricing-profile-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  flex:0 0 44px;
  border-radius:13px;
  background:var(--teal-50);
  color:var(--teal-700);
}
.patient-plan .pricing-profile-icon{
  background:#eef5f8;
  color:var(--navy-800);
}
.pricing-profile-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.pricing-badge{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 10px;
  border-radius:999px;
  font-size:11.5px;
  line-height:1.1;
  font-weight:800;
  white-space:nowrap;
}
.pricing-badge.free{
  color:#0b6d62;
  background:#e8f8f3;
  border:1px solid #caeee5;
}
.pricing-badge.trial{
  color:#725510;
  background:#fff7df;
  border:1px solid #f0dfab;
}
.pricing-card h3{
  margin:0 0 7px;
  color:var(--navy-950);
  font-size:21px;
  line-height:1.2;
}
.pricing-price{
  display:flex;
  align-items:flex-end;
  gap:8px;
  margin:2px 0 18px;
  color:var(--navy-950);
}
.pricing-price strong{
  font-size:48px;
  line-height:.9;
  letter-spacing:-.045em;
}
.pricing-price>span{
  padding-bottom:1px;
  color:var(--ink-2);
  font-size:13px;
  line-height:1.1;
  font-weight:800;
}
.pricing-price small{
  color:var(--muted);
  font-size:11px;
  font-weight:650;
}
.pricing-card>p{
  min-height:112px;
  margin:0 0 18px;
  color:var(--muted);
  font-size:14px;
  line-height:1.55;
}
.pricing-card ul{
  display:grid;
  gap:9px;
  padding:0;
  margin:0 0 22px;
  list-style:none;
}
.pricing-card li{
  position:relative;
  padding-left:23px;
  color:var(--ink-2);
  font-size:13.5px;
  line-height:1.42;
}
.pricing-card li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  width:17px;
  height:17px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--teal-100);
  color:var(--teal-700);
  font-size:10px;
  font-weight:900;
}
.pricing-cta{
  width:100%;
  margin-top:auto;
  justify-content:center;
  text-align:center;
}
.pricing-note{
  display:block;
  margin-top:10px;
  color:var(--muted-2);
  font-size:11.5px;
  line-height:1.35;
  text-align:center;
}

.pricing-trial-banner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  margin-top:24px;
  padding:24px 28px;
  border:1px solid #cde5e2;
  border-radius:22px;
  background:linear-gradient(120deg,#effbf8 0%,#fff 58%,#f3f8fa 100%);
  box-shadow:var(--shadow-sm);
}
.pricing-trial-kicker{
  display:block;
  margin-bottom:3px;
  color:var(--teal-700);
  font-size:11px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.pricing-trial-banner strong{
  display:block;
  color:var(--navy-950);
  font-size:20px;
  line-height:1.25;
}
.pricing-trial-banner p{
  max-width:760px;
  margin:5px 0 0;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.5;
}
.pricing-trial-banner .button{
  white-space:nowrap;
}

@media (max-width:1100px){
  .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pricing-card>p{min-height:auto}
}
@media (max-width:720px){
  .pricing-grid{grid-template-columns:1fr;gap:14px}
  .pricing-card{padding:21px}
  .pricing-price strong{font-size:44px}
  .pricing-card>p{font-size:14.5px}
  .pricing-trial-banner{
    grid-template-columns:1fr;
    gap:16px;
    padding:21px;
  }
  .pricing-trial-banner .button{width:100%;justify-content:center}
}
@media (max-width:420px){
  .pricing-card-top{align-items:flex-start}
  .pricing-badge{white-space:normal;text-align:center}
}

/* Institutional pricing */
.institution-plan{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:28px;
  align-items:center;
  border-top:3px solid var(--navy-800);
  background:linear-gradient(115deg,#ffffff 0%,#f8fbfc 60%,#eef6f7 100%);
}
.institution-plan-main{
  min-width:0;
}
.institution-plan .pricing-card-top{
  margin-bottom:14px;
}
.pricing-badge.quote{
  color:var(--navy-800);
  background:#edf4f6;
  border:1px solid #d3e2e6;
}
.pricing-price-quote{
  margin:4px 0 14px;
}
.pricing-price-quote strong{
  font-size:34px;
  line-height:1;
  letter-spacing:-.025em;
}
.institution-plan-main>div:last-child>p{
  max-width:760px;
  min-height:0;
  margin:0;
  color:var(--muted);
  font-size:14.5px;
  line-height:1.58;
}
.institution-plan-details{
  padding:20px;
  border:1px solid var(--line);
  border-radius:17px;
  background:rgba(255,255,255,.88);
}
.institution-plan-details ul{
  margin-bottom:18px;
}
.institution-plan-details .pricing-note{
  margin-top:9px;
}

@media (max-width:900px){
  .institution-plan{
    grid-template-columns:1fr;
    gap:20px;
  }
}
@media (max-width:720px){
  .institution-plan-details{
    padding:17px;
  }
  .pricing-price-quote strong{
    font-size:30px;
  }
}

/* ManuScript WhatsApp contact */
.hero-whatsapp-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:12px;
  padding:9px 13px;
  border:1px solid rgba(113,234,216,.35);
  border-radius:999px;
  background:rgba(16,67,78,.34);
  color:#fff;
  font-size:13px;
  font-weight:750;
  text-decoration:none;
  backdrop-filter:blur(8px);
}
.hero-whatsapp-link:hover{background:rgba(23,107,88,.48);border-color:rgba(113,234,216,.65)}
.footer-whatsapp-link{font-weight:750;color:#8be4d2!important}
.footer-whatsapp-link:hover{color:#b8f1e6!important}
@media(max-width:720px){
  .hero-whatsapp-link{width:100%;justify-content:center;margin-top:14px}
}

/* 2026-10-03 — Premium security section refinement */
.section-safety{
  position:relative;
  padding:88px 0 56px;
}

.section-safety .safety-grid{
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.82fr);
  align-items:center;
  gap:72px;
}

.section-safety .safety-copy{
  min-width:0;
}

.section-safety .safety-copy .eyebrow{
  margin-bottom:14px;
}

.section-safety .safety-copy h2{
  max-width:760px;
  margin:0;
  font-size:clamp(38px,3.45vw,58px);
  line-height:1.04;
  letter-spacing:-.045em;
  text-wrap:balance;
}

.section-safety .safety-copy>p{
  max-width:700px;
  margin:22px 0 0;
  color:#d6eaed;
  font-size:17px;
  line-height:1.65;
}

.section-safety .safety-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  gap:14px;
  margin-top:32px;
}

.section-safety .safety-list>div{
  min-height:108px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  align-items:start;
  gap:12px;
  padding:18px 18px 17px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.072),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}

.section-safety .safety-list>div:hover{
  border-color:rgba(113,234,216,.24);
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.052));
}

.section-safety .safety-check{
  width:28px;
  height:28px;
  margin-top:1px;
  color:#7cebd9;
  background:rgba(84,223,203,.13);
  box-shadow:inset 0 0 0 1px rgba(113,234,216,.08);
  font-size:13px;
}

.section-safety .safety-list p{
  min-width:0;
  margin:0;
}

.section-safety .safety-list strong{
  display:block;
  margin-bottom:5px;
  color:#fff;
  font-size:14px;
  line-height:1.35;
  letter-spacing:-.012em;
}

.section-safety .safety-list small{
  display:block;
  color:#c9dde2;
  font-size:12px;
  line-height:1.55;
}

.section-safety .safety-visual{
  min-height:410px;
  align-self:center;
}

.section-safety .shield-card{
  width:258px;
  min-height:238px;
  border-color:rgba(255,255,255,.16);
  background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.045));
  box-shadow:0 24px 60px rgba(0,28,39,.18),inset 0 1px 0 rgba(255,255,255,.05);
}

.section-safety .security-pill{
  box-shadow:0 10px 30px rgba(0,28,39,.14);
}

.section-safety .section-link-row{
  display:flex;
  justify-content:flex-start;
  align-items:center;
  margin-top:28px;
  padding-bottom:0;
}

.section-safety .section-text-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:0 2px;
  color:#78ead9;
  font-size:14px;
  font-weight:750;
  line-height:1.35;
  text-decoration:none;
  white-space:normal;
}

.section-safety .section-text-link svg{
  width:18px;
  height:18px;
  flex:0 0 auto;
  transition:transform .18s ease;
}

.section-safety .section-text-link:hover{
  color:#a7f3e7;
}

.section-safety .section-text-link:hover svg{
  transform:translateX(3px);
}

@media (max-width:1080px){
  .section-safety{
    padding:76px 0 50px;
  }
  .section-safety .safety-grid{
    grid-template-columns:minmax(0,1fr) minmax(350px,.75fr);
    gap:48px;
  }
  .section-safety .safety-copy h2{
    font-size:clamp(36px,4.5vw,50px);
  }
}

@media (max-width:960px){
  .section-safety{
    padding:68px 0 46px;
  }
  .section-safety .safety-grid{
    grid-template-columns:1fr;
    gap:38px;
  }
  .section-safety .safety-copy>p{
    max-width:760px;
  }
  .section-safety .safety-visual{
    min-height:340px;
  }
  .section-safety .section-link-row{
    margin-top:24px;
  }
}

@media (max-width:640px){
  .section-safety{
    padding:56px 0 38px;
  }
  .section-safety .safety-copy h2{
    font-size:clamp(32px,10vw,42px);
    line-height:1.06;
  }
  .section-safety .safety-copy>p{
    margin-top:18px;
    font-size:16px;
    line-height:1.6;
  }
  .section-safety .safety-list{
    grid-template-columns:1fr;
    gap:12px;
    margin-top:26px;
  }
  .section-safety .safety-list>div{
    min-height:0;
    padding:16px;
  }
  .section-safety .safety-visual{
    min-height:300px;
    overflow:hidden;
  }
  .section-safety .orbit-two{
    width:360px;
    height:360px;
  }
  .section-safety .orbit-one{
    width:280px;
    height:280px;
  }
  .section-safety .shield-card{
    width:min(240px,74vw);
    min-height:220px;
  }
  .section-safety .section-link-row{
    margin-top:20px;
  }
  .section-safety .section-text-link{
    width:100%;
    justify-content:flex-start;
    min-height:44px;
  }
}
