<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Leave a Review — Vagus Nerve Reset</title>
<link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400&family=DM+Sans:wght@300;400;500&display=swap" rel="stylesheet">
<style>
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
--oak-deep: #0E0C0A;
--oak-dark: #1E1A16;
--oak-mid: #2A241E;
--oak-green: #4A7A32;
--oak-green-l: #6AA84F;
--oak-warm: #C4A882;
--oak-warm-d: #A68B60;
--white: #FFFFFF;
--off-white: #F5F2ED;
--muted: rgba(255,255,255,0.58);
}
html { scroll-behavior: smooth; }
body {
font-family: 'DM Sans', sans-serif;
background-color: var(--oak-deep);
color: var(--white);
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
position: relative;
overflow-x: hidden;
}
/* Subtle ambient glow — oak tree warm tones */
body::before {
content: '';
position: fixed;
inset: 0;
background:
radial-gradient(ellipse 55% 45% at 15% 15%, rgba(74,122,50,0.06) 0%, transparent 60%),
radial-gradient(ellipse 50% 55% at 85% 85%, rgba(196,168,130,0.05) 0%, transparent 60%);
pointer-events: none;
z-index: 0;
}
/* Grain texture overlay */
body::after {
content: '';
position: fixed;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");
background-repeat: repeat;
background-size: 160px 160px;
pointer-events: none;
z-index: 0;
}
.grid-lines {
position: fixed;
inset: 0;
background-image:
linear-gradient(rgba(255,255,255,0.018) 1px, transparent 1px),
linear-gradient(90deg, rgba(255,255,255,0.018) 1px, transparent 1px);
background-size: 64px 64px;
pointer-events: none;
z-index: 0;
}
/* Oakhouse wordmark bar at top */
.top-bar {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 10;
padding: 14px 28px;
display: flex;
align-items: center;
justify-content: space-between;
border-bottom: 1px solid rgba(255,255,255,0.05);
background: rgba(14,12,10,0.7);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
}
.top-bar-logo {
display: flex;
align-items: center;
gap: 9px;
text-decoration: none;
}
.top-bar-icon {
width: 26px;
height: 26px;
border-radius: 50%;
border: 1px solid var(--oak-green);
display: flex;
align-items: center;
justify-content: center;
}
.top-bar-name {
font-family: 'Cormorant Garamond', serif;
font-size: 13px;
font-weight: 600;
letter-spacing: 0.12em;
text-transform: uppercase;
color: rgba(255,255,255,0.65);
}
.top-bar-link {
font-size: 11px;
font-weight: 400;
color: var(--oak-warm);
text-decoration: none;
opacity: 0.7;
letter-spacing: 0.05em;
transition: opacity 0.2s;
}
.top-bar-link:hover { opacity: 1; }
/* Main content */
.container {
position: relative;
z-index: 1;
width: 100%;
max-width: 620px;
padding: 7rem 2rem 4rem;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
}
.eyebrow {
font-family: 'DM Sans', sans-serif;
font-size: 10px;
font-weight: 500;
letter-spacing: 0.22em;
text-transform: uppercase;
color: var(--oak-green-l);
margin-bottom: 1.6rem;
opacity: 0.9;
}
.title {
font-family: 'Cormorant Garamond', serif;
font-size: clamp(2.4rem, 7vw, 3.8rem);
font-weight: 600;
line-height: 1.05;
color: var(--white);
margin-bottom: 0.35rem;
letter-spacing: -0.01em;
}
.title-accent {
color: var(--oak-warm);
font-style: italic;
}
.subtitle {
font-family: 'Cormorant Garamond', serif;
font-size: clamp(0.88rem, 2.4vw, 1.02rem);
font-weight: 400;
font-style: italic;
color: var(--muted);
margin-bottom: 0.6rem;
line-height: 1.55;
max-width: 420px;
}
.author {
font-size: 11px;
font-weight: 300;
letter-spacing: 0.14em;
text-transform: uppercase;
color: rgba(255,255,255,0.35);
margin-bottom: 2.6rem;
}
.divider {
width: 44px;
height: 1px;
background: linear-gradient(90deg, transparent, var(--oak-warm), transparent);
margin: 0 auto 2.6rem;
}
.star-row {
display: flex;
gap: 7px;
justify-content: center;
margin-bottom: 2.2rem;
}
.star {
font-size: 20px;
line-height: 1;
color: var(--oak-warm);
animation: starPop 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}
.star:nth-child(1) { animation-delay: 0.10s; }
.star:nth-child(2) { animation-delay: 0.19s; }
.star:nth-child(3) { animation-delay: 0.28s; }
.star:nth-child(4) { animation-delay: 0.37s; }
.star:nth-child(5) { animation-delay: 0.46s; }
@keyframes starPop {
0% { opacity: 0; transform: scale(0.3) rotate(-20deg); }
100% { opacity: 1; transform: scale(1) rotate(0deg); }
}
.message {
font-size: 1rem;
font-weight: 300;
line-height: 1.85;
color: rgba(255,255,255,0.7);
max-width: 480px;
margin-bottom: 2.8rem;
}
.message strong {
color: var(--white);
font-weight: 500;
}
.platforms-label {
font-size: 10px;
font-weight: 500;
letter-spacing: 0.18em;
text-transform: uppercase;
color: rgba(255,255,255,0.28);
margin-bottom: 1.2rem;
}
/* Platform buttons */
.buttons {
display: flex;
flex-direction: column;
gap: 11px;
width: 100%;
max-width: 400px;
margin-bottom: 3rem;
}
.btn {
display: flex;
align-items: center;
padding: 1rem 1.4rem;
border-radius: 7px;
font-family: 'DM Sans', sans-serif;
font-size: 0.93rem;
font-weight: 500;
text-decoration: none;
cursor: pointer;
border: none;
transition: transform 0.15s ease, opacity 0.15s ease, box-shadow 0.15s ease;
width: 100%;
position: relative;
overflow: hidden;
}
.btn:active { transform: scale(0.98); }
/* Amazon — primary, warm cream */
.btn-amazon {
background: var(--oak-warm);
color: var(--oak-deep);
box-shadow: 0 0 0 0 rgba(196,168,130,0);
}
.btn-amazon:hover {
opacity: 0.93;
transform: translateY(-1px);
box-shadow: 0 6px 24px rgba(196,168,130,0.18);
}
/* Secondary platforms */
.btn-secondary {
background: rgba(255,255,255,0.04);
color: rgba(255,255,255,0.55);
border: 1px solid rgba(255,255,255,0.09);
cursor: default;
}
.btn-secondary:hover { opacity: 1; }
.btn-active-secondary {
background: rgba(74,122,50,0.1);
color: rgba(255,255,255,0.72);
border: 1px solid rgba(74,122,50,0.25);
cursor: pointer;
}
.btn-active-secondary:hover {
background: rgba(74,122,50,0.15);
border-color: rgba(74,122,50,0.4);
transform: translateY(-1px);
color: var(--white);
}
.btn-icon {
width: 30px;
height: 30px;
border-radius: 5px;
background: rgba(0,0,0,0.12);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.btn-secondary .btn-icon { background: rgba(255,255,255,0.05); }
.btn-active-secondary .btn-icon { background: rgba(74,122,50,0.15); }
.btn-label { flex: 1; text-align: left; padding: 0 12px; }
.btn-name { display: block; }
.btn-sublabel {
font-size: 11px;
font-weight: 300;
opacity: 0.65;
display: block;
margin-top: 2px;
}
.btn-amazon .btn-sublabel { opacity: 0.55; }
.btn-arrow {
font-size: 17px;
opacity: 0.55;
flex-shrink: 0;
}
.pill {
font-size: 9px;
font-weight: 500;
letter-spacing: 0.1em;
text-transform: uppercase;
padding: 3px 9px;
border-radius: 20px;
flex-shrink: 0;
}
.pill-soon {
background: rgba(255,255,255,0.06);
color: rgba(255,255,255,0.28);
border: 1px solid rgba(255,255,255,0.08);
}
/* Divider between platforms */
.btn-divider {
height: 1px;
background: rgba(255,255,255,0.06);
margin: 3px 0;
}
.footer-note {
font-size: 11.5px;
font-weight: 300;
color: rgba(255,255,255,0.22);
line-height: 1.75;
max-width: 380px;
margin-bottom: 3rem;
}
/* Footer bar */
.page-footer {
border-top: 1px solid rgba(255,255,255,0.06);
padding: 1.4rem 2rem;
text-align: center;
width: 100%;
position: relative;
z-index: 1;
}
.page-footer p {
font-size: 11px;
font-weight: 300;
color: rgba(255,255,255,0.18);
}
.page-footer a {
color: rgba(196,168,130,0.5);
text-decoration: none;
transition: color 0.2s;
}
.page-footer a:hover { color: var(--oak-warm); }
/* Toast */
.toast {
position: fixed;
bottom: 2rem;
left: 50%;
transform: translateX(-50%) translateY(130%);
background: rgba(30,26,22,0.96);
border: 1px solid rgba(74,122,50,0.35);
color: var(--oak-green-l);
font-size: 13px;
font-weight: 400;
padding: 0.7rem 1.6rem;
border-radius: 40px;
backdrop-filter: blur(12px);
transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
z-index: 200;
white-space: nowrap;
pointer-events: none;
}
.toast.show {
transform: translateX(-50%) translateY(0);
}
/* Staggered fade-up */
.fade-up {
opacity: 0;
transform: translateY(18px);
animation: fadeUp 0.65s ease forwards;
}
@keyframes fadeUp {
to { opacity: 1; transform: translateY(0); }
}
.fade-up:nth-child(1) { animation-delay: 0.05s; }
.fade-up:nth-child(2) { animation-delay: 0.12s; }
.fade-up:nth-child(3) { animation-delay: 0.18s; }
.fade-up:nth-child(4) { animation-delay: 0.24s; }
.fade-up:nth-child(5) { animation-delay: 0.30s; }
.fade-up:nth-child(6) { animation-delay: 0.36s; }
.fade-up:nth-child(7) { animation-delay: 0.42s; }
.fade-up:nth-child(8) { animation-delay: 0.48s; }
.fade-up:nth-child(9) { animation-delay: 0.54s; }
.fade-up:nth-child(10) { animation-delay: 0.60s; }
@media (max-width: 480px) {
.container { padding: 6rem 1.4rem 3rem; }
.buttons { max-width: 100%; }
.top-bar { padding: 12px 16px; }
}
</style>
</head>
<body>
<div class="grid-lines"></div>
<!-- Oakhouse top bar -->
<div class="top-bar">
<a href="https://oakhousepublishing.com" class="top-bar-logo">
<div class="top-bar-icon">
<svg width="14" height="14" viewBox="0 0 14 14" fill="none">
<circle cx="7" cy="7" r="6" stroke="#4A7A32" stroke-width="1"/>
<path d="M3 11 Q5 7.5 7 9 Q9 5.5 11 11" fill="none" stroke="#4A7A32" stroke-width="1" stroke-linecap="round"/>
</svg>
</div>
<span class="top-bar-name">Oakhouse Publishing</span>
</a>
<a href="https://oakhousepublishing.com/bonus" class="top-bar-link">Free bonus tracker ↗</a>
</div>
<div class="container">
<p class="eyebrow fade-up">A small favour</p>
<h1 class="title fade-up">Vagus Nerve <span class="title-accent">Reset</span></h1>
<p class="subtitle fade-up">Simple 10-Minute Exercises to Reduce Anxiety, Relieve Stress,<br>Improve Sleep, and Regulate Your Nervous System</p>
<p class="author fade-up">Sarah Ashford</p>
<div class="divider fade-up"></div>
<div class="star-row fade-up">
<span class="star">★</span>
<span class="star">★</span>
<span class="star">★</span>
<span class="star">★</span>
<span class="star">★</span>
</div>
<p class="message fade-up">
Thank you for reading. If these techniques have helped you find even a moment of calm,
<strong>your honest review could be the reason someone else picks this up</strong> instead of scrolling past.
It takes less than two minutes and matters more than you know.
</p>
<p class="platforms-label fade-up">Choose your platform</p>
<div class="buttons fade-up">
<!-- Amazon — primary, active -->
<a href="REPLACE_WITH_AMAZON_REVIEW_URL" class="btn btn-amazon" target="_blank" rel="noopener noreferrer">
<div class="btn-icon">
<svg width="17" height="17" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.23 10.56V10c-1.94.02-3.99.41-3.99 2.67 0 1.16.61 1.95 1.63 1.95.76 0 1.43-.47 1.86-1.22.52-.93.5-1.8.5-2.84zm2.72 6.61c-.18.16-.43.17-.63.06-1.23-.97-1.45-1.43-2.12-2.36-2.03 2.07-3.47 2.68-6.1 2.68-3.11 0-5.54-1.92-5.54-5.77 0-3.01 1.63-5.05 3.96-6.05C7.97 4.83 10.22 4.6 12 4.58V4.1c0-.73.06-1.61-.37-2.24-.37-.56-1.09-.79-1.72-.79-.79 0-1.51.41-1.68 1.26-.04.19-.18.37-.36.38l-2.02-.22c-.17-.04-.36-.18-.31-.44C5.97.46 8.28-.01 10.37 0c1.05 0 2.43.28 3.27 1.08 1.06.99.95 2.31.95 3.74v3.39c0 1.02.42 1.46 1.82.98.16-.06.32-.04.43.08l.11 2.08z" fill="rgba(14,12,10,0.75)"/>
<path d="M21.5 18.5c-3.5 2.5-8.5 3.8-12.8 2.1-3.5-1.4-5.8-4.2-5.8-4.2s-.2-.3.1-.2c0 0 3.9 1.6 8.7 1.2 3.3-.3 6.8-1.4 9.5-3.5.4-.3.8.2.3.6z" fill="rgba(14,12,10,0.6)"/>
<path d="M19 16.2c-.3-.4-2-.6-2.7-.5-.2 0-.2.2-.1.3.4.4 1.1.3 1.6.5.5.3.5.9.1 1.4 0 .1.1.2.2.1.9-.7.9-1.8-.1-1.8z" fill="rgba(14,12,10,0.6)"/>
</svg>
</div>
<div class="btn-label">
<span class="btn-name">Review on Amazon</span>
<span class="btn-sublabel">Takes less than 2 minutes</span>
</div>
<span class="btn-arrow">↗</span>
</a>
<div class="btn-divider"></div>
<!-- Goodreads — secondary, active -->
<a href="REPLACE_WITH_GOODREADS_URL" class="btn btn-active-secondary" target="_blank" rel="noopener noreferrer">
<div class="btn-icon">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M19.5 3h-15A1.5 1.5 0 003 4.5v15A1.5 1.5 0 004.5 21h15a1.5 1.5 0 001.5-1.5v-15A1.5 1.5 0 0019.5 3zm-5.03 13.35c-.57.54-1.34.82-2.22.82-1.62 0-2.75-1.06-2.75-2.6 0-1.56 1.14-2.66 2.77-2.66.84 0 1.57.28 2.1.81V8.33h1.2v9.4h-1.1v-.38zm0-3.12c-.44-.62-1.12-.97-1.9-.97-1.06 0-1.84.77-1.84 1.83s.78 1.83 1.83 1.83c.82 0 1.5-.37 1.9-1v-1.69z" fill="rgba(74,122,50,0.9)"/>
</svg>
</div>
<div class="btn-label">
<span class="btn-name">Review on Goodreads</span>
<span class="btn-sublabel">Rate, shelve, and review</span>
</div>
<span class="btn-arrow">↗</span>
</a>
<!-- Barnes & Noble — coming soon -->
<button class="btn btn-secondary" onclick="showToast('Barnes & Noble listing coming soon')">
<div class="btn-icon">
<svg width="16" height="16" viewBox="0 0 24 24" fill="rgba(255,255,255,0.2)">
<path d="M4 6h16v2H4zm0 5h16v2H4zm0 5h10v2H4z"/>
</svg>
</div>
<div class="btn-label">
<span class="btn-name">Barnes & Noble</span>
<span class="btn-sublabel">Nook & in-store</span>
</div>
<span class="pill pill-soon">Coming soon</span>
</button>
<!-- Audible — coming soon -->
<button class="btn btn-secondary" onclick="showToast('Audiobook coming soon')">
<div class="btn-icon">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none">
<path d="M12 3a9 9 0 100 18A9 9 0 0012 3zm0 16a7 7 0 110-14 7 7 0 010 14zm-1-9.5v5l4-2.5-4-2.5z" fill="rgba(255,255,255,0.2)"/>
</svg>
</div>
<div class="btn-label">
<span class="btn-name">Audible</span>
<span class="btn-sublabel">Audiobook edition</span>
</div>
<span class="pill pill-soon">Coming soon</span>
</button>
</div>
<p class="footer-note fade-up">
No account required on Amazon to leave a star rating.<br>
Every review — one line or ten — makes a genuine difference.
</p>
</div>
<footer class="page-footer">
<p>
© 2025 Oakhouse Publishing Co.
•
<a href="https://oakhousepublishing.com">oakhousepublishing.com</a>
•
<a href="mailto:hello@oakhousepublishing.com">hello@oakhousepublishing.com</a>
</p>
</footer>
<!-- Toast notification -->
<div class="toast" id="toast"></div>
<script>
function showToast(msg) {
var t = document.getElementById('toast');
t.textContent = msg;
t.classList.add('show');
setTimeout(function() { t.classList.remove('show'); }, 3000);
}
</script>
</body>
</html>