<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>NurseSimVault — Stop guessing on dosage calc</title>
<style>
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@500;600&display=swap');
:root {
--teal: #0F4C4C;
--teal-deep: #0A3838;
--paper: #FAF7F2;
--paper-dim: #F0EBE1;
--coral: #E8674A;
--ink: #1A2421;
--sage: #9CB8AC;
--sage-line: #D7E0DA;
--max-w: 1120px;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
background: var(--paper);
color: var(--ink);
font-family: 'Inter', sans-serif;
line-height: 1.5;
-webkit-font-smoothing: antialiased;
}
.wrap { max-width: var(--max-w); margin: 0 auto; padding: 0 28px; }
h1, h2, h3 {
font-family: 'Space Grotesk', sans-serif;
letter-spacing: -0.01em;
color: var(--ink);
}
.mono {
font-family: 'JetBrains Mono', monospace;
}
a { color: inherit; }
/* ---------- NAV ---------- */
nav {
display: flex;
align-items: center;
justify-content: space-between;
padding: 22px 28px;
max-width: var(--max-w);
margin: 0 auto;
}
.logo {
font-family: 'Space Grotesk', sans-serif;
font-weight: 700;
font-size: 18px;
letter-spacing: -0.01em;
}
.logo span { color: var(--coral); }
.nav-tag {
font-family: 'JetBrains Mono', monospace;
font-size: 11px;
color: var(--sage);
letter-spacing: 0.04em;
border: 1px solid var(--sage-line);
padding: 5px 10px;
border-radius: 100px;
text-transform: uppercase;
}
/* ---------- VITALS STRIP (signature divider) ---------- */
.vitals-strip {
border-top: 1px solid var(--sage-line);
border-bottom: 1px solid var(--sage-line);
background: var(--paper-dim);
overflow: hidden;
padding: 11px 0;
}
.vitals-track {
display: flex;
gap: 48px;
white-space: nowrap;
font-family: 'JetBrains Mono', monospace;
font-size: 12px;
color: var(--teal);
animation: scroll-strip 32s linear infinite;
width: max-content;
}
.vitals-track span { opacity: 0.85; }
.vitals-track .dim { color: var(--sage); }
@keyframes scroll-strip {
from { transform: translateX(0); }
to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
.vitals-track { animation: none; }
}
/* ---------- HERO ---------- */
.hero {
padding: 64px 28px 56px;
max-width: var(--max-w);
margin: 0 auto;
display: grid;
grid-template-columns: 1.05fr 0.95fr;
gap: 56px;
align-items: center;
}
.eyebrow {
font-family: 'JetBrains Mono', monospace;
font-size: 12px;
color: var(--coral);
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 18px;
display: flex;
align-items: center;
gap: 8px;
}
.eyebrow::before {
content: '';
width: 7px; height: 7px;
border-radius: 50%;
background: var(--coral);
display: inline-block;
}
h1 {
font-size: clamp(34px, 4.2vw, 50px);
line-height: 1.08;
font-weight: 700;
margin-bottom: 20px;
}
h1 em {
font-style: normal;
color: var(--teal);
position: relative;
}
.hero-sub {
font-size: 17px;
color: #4A5650;
max-width: 480px;
margin-bottom: 30px;
}
/* email form */
.capture {
background: white;
border: 1px solid var(--sage-line);
border-radius: 14px;
padding: 22px;
max-width: 460px;
box-shadow: 0 1px 2px rgba(15,76,76,0.04);
}
.capture-label {
font-family: 'JetBrains Mono', monospace;
font-size: 11px;
text-transform: uppercase;
letter-spacing: 0.06em;
color: var(--teal);
margin-bottom: 10px;
display: block;
}
.capture form {
display: flex;
gap: 10px;
}
.capture input[type="email"] {
flex: 1;
border: 1.5px solid var(--sage-line);
border-radius: 9px;
padding: 13px 14px;
font-size: 15px;
font-family: 'Inter', sans-serif;
color: var(--ink);
background: var(--paper);
}
.capture input[type="email"]:focus {
outline: none;
border-color: var(--teal);
}
.capture button {
background: var(--teal);
color: white;
border: none;
border-radius: 9px;
padding: 13px 20px;
font-weight: 600;
font-size: 15px;
font-family: 'Inter', sans-serif;
cursor: pointer;
white-space: nowrap;
transition: background 0.15s ease;
}
.capture button:hover { background: var(--teal-deep); }
.capture button:focus-visible, .capture input:focus-visible {
outline: 2px solid var(--coral);
outline-offset: 2px;
}
.capture-fine {
font-size: 12.5px;
color: #7C8A83;
margin-top: 10px;
}
.form-success {
display: none;
font-size: 14px;
color: var(--teal);
font-weight: 600;
padding: 8px 0 2px;
}
/* hero visual: the worked problem card */
.calc-card {
background: var(--teal);
border-radius: 18px;
padding: 28px 26px;
color: var(--paper);
position: relative;
overflow: hidden;
}
.calc-card::before {
content: '';
position: absolute;
top: -40px; right: -40px;
width: 160px; height: 160px;
border-radius: 50%;
background: rgba(232,103,74,0.18);
}
.calc-head {
font-family: 'JetBrains Mono', monospace;
font-size: 11px;
text-transform: uppercase;
letter-spacing: 0.07em;
color: var(--sage);
margin-bottom: 16px;
position: relative;
}
.calc-line {
font-family: 'JetBrains Mono', monospace;
font-size: 14.5px;
line-height: 2;
color: #E4ECE7;
position: relative;
}
.calc-line b { color: white; font-weight: 600; }
.calc-flag {
margin-top: 16px;
background: rgba(232,103,74,0.15);
border: 1px solid rgba(232,103,74,0.4);
border-radius: 9px;
padding: 12px 14px;
font-size: 13.5px;
color: #FFD9CC;
position: relative;
}
.calc-flag b { color: var(--coral); display:block; font-family:'JetBrains Mono', monospace; font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 4px;}
@media (max-width: 860px) {
.hero { grid-template-columns: 1fr; gap: 36px; padding-top: 40px; }
.capture form { flex-direction: column; }
}
/* ---------- PAIN POINTS ---------- */
section.section { padding: 64px 28px; max-width: var(--max-w); margin: 0 auto; }
.section-head { margin-bottom: 36px; max-width: 560px; }
.section-head .eyebrow { color: var(--teal); }
.section-head .eyebrow::before { background: var(--teal); }
h2 { font-size: clamp(26px, 3vw, 34px); font-weight: 700; }
.pain-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 18px;
}
.pain-card {
background: white;
border: 1px solid var(--sage-line);
border-radius: 14px;
padding: 24px 22px;
}
.pain-card .tag {
font-family: 'JetBrains Mono', monospace;
font-size: 11px;
color: var(--coral);
text-transform: uppercase;
letter-spacing: 0.05em;
margin-bottom: 12px;
}
.pain-card h3 { font-size: 18px; margin-bottom: 8px; font-weight: 600; }
.pain-card p { font-size: 14.5px; color: #54625C; }
@media (max-width: 860px) {
.pain-grid { grid-template-columns: 1fr; }
}
/* ---------- ABOUT / CREDIBILITY ---------- */
.about {
background: var(--teal-deep);
color: var(--paper);
}
.about-inner {
max-width: var(--max-w);
margin: 0 auto;
padding: 64px 28px;
display: grid;
grid-template-columns: 0.9fr 1.1fr;
gap: 48px;
align-items: start;
}
.about-inner h2 { color: white; }
.about-inner .eyebrow { color: var(--coral); }
.about-inner .eyebrow::before { background: var(--coral); }
.about-body p { color: #C9DBD3; font-size: 15.5px; margin-bottom: 14px; max-width: 460px;}
.stat-row { display: flex; gap: 28px; margin-top: 24px; flex-wrap: wrap; }
.stat { font-family: 'JetBrains Mono', monospace; }
.stat .num { font-size: 26px; color: white; font-weight: 600; display: block; }
.stat .lbl { font-size: 12px; color: var(--sage); text-transform: uppercase; letter-spacing: 0.05em; }
@media (max-width: 860px) {
.about-inner { grid-template-columns: 1fr; }
}
/* ---------- FINAL CTA ---------- */
.final-cta { text-align: center; padding: 72px 28px; max-width: 640px; margin: 0 auto; }
.final-cta h2 { margin-bottom: 14px; }
.final-cta p { color: #54625C; margin-bottom: 28px; font-size: 16px; }
.final-cta .capture { margin: 0 auto; text-align: left; }
footer {
border-top: 1px solid var(--sage-line);
padding: 28px;
text-align: center;
font-size: 13px;
color: #8C988F;
}
footer .logo { font-size: 14px; margin-bottom: 4px; display:block; }
</style>
</head>
<body>
<nav>
<div class="logo">NurseSim<span>Vault</span></div>
<div class="nav-tag">by @florencestacksRN</div>
</nav>
<div class="vitals-strip">
<div class="vitals-track">
<span><span class="dim">HR</span> 1,400+ calc problems solved</span>
<span><span class="dim">RR</span> built by an OR nurse & nursing educator, 10yrs</span>
<span><span class="dim">BP</span> dosage · pharm · pathophys</span>
<span><span class="dim">TEMP</span> straight to the point, no fluff</span>
<span><span class="dim">HR</span> 1,400+ calc problems solved</span>
<span><span class="dim">RR</span> built by an OR nurse & nursing educator, 10yrs</span>
<span><span class="dim">BP</span> dosage · pharm · pathophys</span>
<span><span class="dim">TEMP</span> straight to the point, no fluff</span>
</div>
</div>
<section class="hero">
<div>
<div class="eyebrow">Free dosage calc cheat sheet</div>
<h1>The calc question that<br>fails half your class<br>has a <em>pattern.</em></h1>
<p class="hero-sub">Get the 1-page formula sheet covering the dosage calculations nursing students miss most often — the same ones I see trip up students every semester. Drop your email, get the PDF in your inbox in under a minute.</p>
<div class="capture">
<span class="capture-label">Send me the cheat sheet</span>
<form action="https://app.kit.com/forms/9606378/subscriptions" method="post" data-sv-form="9606378" data-uid="b4a60233dc" data-format="inline" data-version="5">
<input type="email" name="email_address" placeholder="your@email.com" required autocomplete="email" aria-label="Email Address">
<button type="submit">Get it free</button>
</form>
<p class="capture-fine">One PDF. No spam. Unsubscribe anytime.</p>
</div>
</div>
<div class="calc-card">
<div class="calc-head">// Practice problem 14 of 50</div>
<div class="calc-line">Order: <b>Heparin 18 units/kg/hr</b></div>
<div class="calc-line">Patient weight: <b>76 kg</b></div>
<div class="calc-line">Bag: <b>25,000 units in 250 mL</b></div>
<div class="calc-line">Rate (mL/hr) = ?</div>
<div class="calc-flag">
<b>Where students lose points</b>
Forgetting to convert weight-based dosing before solving for rate — the #1 error on this question type.
</div>
</div>
</section>
<section class="section" id="topics">
<div class="section-head">
<div class="eyebrow">What it actually covers</div>
<h2>Three subjects. The ones that decide whether you pass.</h2>
</div>
<div class="pain-grid">
<div class="pain-card">
<div class="tag">Dosage & calculations</div>
<h3>Weight-based dosing, IV drip rates, conversions</h3>
<p>The math itself isn't hard. Knowing which formula the question is actually testing — that's where points disappear.</p>
</div>
<div class="pain-card">
<div class="tag">Pharmacology</div>
<h3>Drug classes, not just drug names</h3>
<p>Memorizing 200 individual drugs doesn't work. Understanding the 20 mechanisms behind them does.</p>
</div>
<div class="pain-card">
<div class="tag">Pathophysiology</div>
<h3>Why the body does what it does</h3>
<p>Once the mechanism clicks, the NCLEX-style question stops being a memory test and starts being logic.</p>
</div>
</div>
</section>
<section class="about">
<div class="about-inner">
<div>
<div class="eyebrow">Who's behind this</div>
<h2>Built from the floor, not just the textbook.</h2>
</div>
<div class="about-body">
<p>I'm a nursing instructor with 3 years in the classroom and 10 years as a nurse, most of that in the OR. I built NurseSimVault because the gap between "what's in the textbook" and "what actually gets asked on exams" is where most students lose points — and it's a fixable gap.</p>
<p>FlorenceStacks (@florencestacksRN) is where the free, bite-sized version of this lives. NurseSimVault is where the full practice sets, study guides, and question banks live.</p>
<div class="stat-row">
<div class="stat"><span class="num">10 yrs</span><span class="lbl">Clinical, OR-focused</span></div>
<div class="stat"><span class="num">3 yrs</span><span class="lbl">Teaching nursing students</span></div>
<div class="stat"><span class="num">100%</span><span class="lbl">Built from real exam gaps</span></div>
</div>
</div>
</div>
</section>
<section class="final-cta">
<h2>Start with the sheet that's free.</h2>
<p>If it's useful, the full practice sets are next. If it's not, you've lost nothing but thirty seconds.</p>
<div class="capture">
<span class="capture-label">Send me the cheat sheet</span>
<form action="https://app.kit.com/forms/9606378/subscriptions" method="post" data-sv-form="9606378" data-uid="b4a60233dc" data-format="inline" data-version="5">
<input type="email" name="email_address" placeholder="your@email.com" required autocomplete="email" aria-label="Email Address">
<button type="submit">Get it free</button>
</form>
<p class="capture-fine">One PDF. No spam. Unsubscribe anytime.</p>
</div>
</section>
<footer>
<span class="logo">NurseSim<span style="color:var(--coral)">Vault</span></span>
© 2026 NurseSimVault · @florencestacksRN
</footer>
<!-- Kit (ConvertKit) form handling script — powers both email capture forms above -->
<script src="https://f.convertkit.com/ckjs/ck.5.js"></script>
</body>
</html>