Why 2025 Is the Year to Finally Master Your Author Website
- Stacey Mosteller

- Jan 1, 2025
- 10 min read
Author website design isn’t just a buzzword—it’s your secret weapon for building a memorable brand, attracting more readers, and actually selling more books in 2025.
You know that little thrill when you finally finish a book that's been waiting on your Kindle? That mix of relief, accomplishment, and why-did-I-wait-so-long? That’s kind of what it feels like when you finally get your author website up and running—the one that looks good, works seamlessly, and makes your brand unforgettable.
Let’s talk about why 2025 is the year you stop putting your website on the back burner and finally create an author brand you’re proud to show off.
Your Website Is More Than a Digital Business Card
We get it—there are a million things on your author to-do list. Between writing, edits, launches, and marketing, it’s easy to push your website to the side.
But here’s the truth: your author website is more than just a placeholder. It's your online home. It's where readers fall in love with your books and your brand.
A swoon-worthy author site can:
Help readers find you (and binge your backlist)
Streamline your sales with direct-to-reader options
Showcase your books in a way that feels totally you
Take the pressure off social media (yes, please)
A Website Built Just for Romance Authors
Swoonworthy Designs isn’t your average web design studio. We specialize in author website design—specifically for romance authors. Because we’ve been you. Our design process considers not just aesthetics, but how well your website functions as the hub of your author platform—integrating tools like ConvertKit or Mailerlite to build your list while making your brand shine.
You’re not just hiring a designer. You’re partnering with someone who knows the genre, the tropes, the fandoms, and the tech. That combo? It’s magic.
Our websites are designed to:
Reflect your brand and vibe
Make book shopping easy and beautiful
Grow your email list, social media, and fan base
Take care of the backend so you can get back to writing
Whether you're team spicy or sweet, your site will feel like a natural extension of your storytelling style.
Signs You're Ready to Invest in a Website That Works for You
Still not sure if now’s the time? Let’s see if any of this sounds familiar…
You’re tired of trying to DIY your site and getting nowhere
You have books published (or coming soon!) but nowhere to send readers
Your site looks... fine, but it’s not really doing anything for your brand
You want to sell books, merch, or exclusive content directly
You're ready for a cohesive author brand that makes a lasting impression
If you nodded along to any of those, 2025 is your year.
Download Your Free Gift: The Author’s Website Transformation Workbook
You wouldn’t write a novel without outlining your main character’s journey, right? The same goes for your website.
The Author's Website Transformation Workbook is your personal guide to planning your website’s character arc — from “meh” to magnetic.
Inside, you’ll find:
Guided prompts to define your author brand
Space to map your website goals
A checklist for what your site really needs (and what it doesn’t)
A strategy section to help you connect with the readers who’ll love you most
Download it now and start crafting a website that fits your brand like your favorite trope.
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 *,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 *::before,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 *::after {
box-sizing: border-box;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <tabindex -1="-1"></tabindex>:focus {
outline: none !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 h1,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 h2,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 h3,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 h4,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 h5,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 h6 {
margin-top: 0;
margin-bottom: 0.7em;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 p {
margin-top: 0;
margin-bottom: 1rem;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 ol,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 ul,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 dl {
margin-top: 0;
margin-bottom: 1.4rem;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 ol ol,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 ul ul,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 ol ul,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 ul ol {
margin-bottom: 0;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 b,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 strong {
font-weight: bolder;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 small {
font-size: 80%;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 sub,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 sup {
position: relative;
font-size: 75%;
line-height: 0;
vertical-align: baseline;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 sub {
bottom: -0.25em;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 sup {
top: -0.5em;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 {
color: #000000;
text-decoration: none;
background-color: transparent;
-webkit-text-decoration-skip: objects;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 a:hover {
color: #4396fd;
text-decoration: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 img {
border-style: none;
vertical-align: middle;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 svg:not(:root) {
overflow: hidden;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 area,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 button,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <role button="button"></role>,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 label,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 select,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 summary,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 textarea {
touch-action: manipulation;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 label {
display: inline-block;
font-weight: bolder;
margin-bottom: 0.7rem;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 button:focus {
outline: 1px dotted;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 button,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 select,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 optgroup,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 textarea {
margin: 0;
font-size: inherit;
font-family: inherit;
line-height: inherit;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 button,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input {
overflow: visible;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 button,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 select {
text-transform: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 button,
html<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type button="button"></type>,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type reset="reset"></type>,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type submit="submit"></type> {
-webkit-appearance: button;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 button::-moz-focus-inner,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type button="button"></type>::-moz-focus-inner,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type reset="reset"></type>::-moz-focus-inner,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type submit="submit"></type>::-moz-focus-inner {
padding: 0;
border-style: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input<type radio="radio"></type>,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input<type checkbox="checkbox"></type> {
padding: 0;
box-sizing: border-box;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input<type date="date"></type>,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input<type time="time"></type>,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input<type datetime-local="datetime-local"></type>,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 input<type month="month"></type> {
-webkit-appearance: listbox;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 textarea {
resize: vertical;
overflow: auto;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type number="number"></type>::-webkit-inner-spin-button,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type number="number"></type>::-webkit-outer-spin-button {
height: auto;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type search="search"></type> {
outline-offset: -2px;
-webkit-appearance: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type search="search"></type>::-webkit-search-cancel-button,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <type search="search"></type>::-webkit-search-decoration {
-webkit-appearance: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 ::-webkit-file-upload-button {
font: inherit;
-webkit-appearance: button;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 <hidden></hidden> {
display: none !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-control {
width: 100%;
display: block;
outline: none;
position: relative;
-webkit-appearance: none;
appearance: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-control:focus {
outline: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-control::-ms-input-placeholder {
color: transparent !important;
opacity: 0 !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-control::placeholder {
color: transparent !important;
opacity: 0 !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-control:disabled {
opacity: 1;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-label {
top: 0;
left: 0;
right: 0;
margin: 0;
overflow: hidden;
position: absolute;
white-space: nowrap;
text-overflow: ellipsis;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-control:not(:placeholder-shown)+.fd-form-label {
opacity: 0;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-description {
margin: 5px 0 0 0;
font-size: 0.8em;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-feedback {
margin: 5px 0 0 0;
font-size: 0.8em;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group {
margin: 0 0 15px;
position: relative;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group.fd-has-success .fd-form-feedback,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group.fd-has-success .fd-form-check {
color: #02dba8 !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group.fd-has-success .fd-form-control {
color: #02dba8 !important;
border-color: #02dba8 !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group.fd-has-success .fd-form-feedback {
display: block;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group.fd-has-error .fd-form-feedback,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group.fd-has-error .fd-form-check {
color: #eb3d3b !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group.fd-has-error .fd-form-control {
color: #eb3d3b !important;
border-color: #eb3d3b !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-group.fd-has-error .fd-form-feedback {
display: block;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-btn {
cursor: pointer;
display: inline-flex;
outline: none;
max-width: 100%;
-webkit-appearance: none;
appearance: none;
font-style: normal;
text-align: center;
align-items: center;
text-shadow: none;
white-space: normal;
justify-content: center;
text-decoration: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-btn:hover {
outline: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-btn:focus {
outline: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-btn:disabled {
opacity: 0.8;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check {
cursor: pointer;
margin: 0;
display: flex;
position: relative;
align-items: center;
padding-left: 30px;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check__input {
top: 0;
left: 0;
width: 18px;
height: 18px;
opacity: 0;
z-index: -1;
position: absolute;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check__checkmark {
top: 0;
left: 0;
width: 18px;
height: 18px;
display: block;
position: absolute;
background-size: 18px;
background-image: url("data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg' %3e %3cpath d='M1 4C1 2.34315 2.34315 1 4 1H16C17.6569 1 19 2.34315 19 4V16C19 17.6569 17.6569 19 16 19H4C2.34315 19 1 17.6569 1 16V4Z' fill='white' /%3e %3cpath fill='black' fill-rule='evenodd' clip-rule='evenodd' d='M0.25 4C0.25 1.92893 1.92893 0.25 4 0.25H16C18.0711 0.25 19.75 1.92893 19.75 4V16C19.75 18.0711 18.0711 19.75 16 19.75H4C1.92893 19.75 0.25 18.0711 0.25 16V4ZM4 1.75C2.75736 1.75 1.75 2.75736 1.75 4V16C1.75 17.2426 2.75736 18.25 4 18.25H16C17.2426 18.25 18.25 17.2426 18.25 16V4C18.25 2.75736 17.2426 1.75 16 1.75H4Z' /%3e %3c/svg%3e");
background-repeat: no-repeat;
background-position: center center;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check__label {
flex: 1 1;
margin: 0;
font-size: 14px;
text-align: left;
word-break: break-word;
font-weight: 400;
line-height: 18px;
letter-spacing: 0.01em;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check__input:checked+.fd-form-check__checkmark::after {
opacity: 1;
z-index: 1;
visibility: visible;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check__checkmark::after {
top: 0;
left: 0;
width: 18px;
height: 18px;
content: "";
display: block;
opacity: 0;
z-index: 1;
position: absolute;
transition: opacity 0.4s, z-index 0.4s;
visibility: inherit;
background-size: 12px;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='black' width='12' height='10' viewBox='0 0 11.51 8.2' %3e %3ctitle%3echeck%3c/title%3e %3cpath d='M4.05%2c8.2A.74.74%2c0%2c0%2c1%2c3.52%2c8L.22%2c4.68A.75.75%2c0%2c0%2c1%2c1.28%2c3.62l3.3%2c3.3A.75.75%2c0%2c0%2c1%2c4.58%2c8%2c.74.74%2c0%2c0%2c1%2c4.05%2c8.2Z' /%3e %3cpath d='M4.06%2c8.2A.74.74%2c0%2c0%2c1%2c3.53%2c8a.75.75%2c0%2c0%2c1%2c0-1.06l6.7-6.7a.75.75%2c0%2c0%2c1%2c1.06%2c1.06L4.59%2c8A.74.74%2c0%2c0%2c1%2c4.06%2c8.2Z' /%3e %3c/svg%3e");
background-repeat: no-repeat;
background-position: center center;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check__input:focus {
outline: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-content {
position: relative;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-has-success .fd-form-content {
display: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-has-captcha .fd-form-content>*:not(.fd-form-captcha) {
opacity: 0;
visibility: hidden;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-captcha {
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
position: absolute;
align-items: center;
justify-content: flex-start;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-success {
width: 100%;
display: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-has-success .fd-form-success {
display: block;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-success>*:last-child {
margin-bottom: 0;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-error {
display: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-has-error .fd-form-error {
display: block;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-error>*:last-child {
margin-bottom: 0;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-focus-visible,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check__input.fd-focus-visible+.fd-form-check__checkmark {
outline: none;
box-shadow: 0 0 0 2px #ffffff, 0 0 0 calc(2px + 4px) #000000 !important;
transition: box-shadow 0.2s !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-focus-visible,
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .fd-form-check__input.fd-focus-visible+.fd-form-check__checkmark {
outline: none;
box-shadow: 0 0 0 2px #ffffff, 0 0 0 calc(2px + 2px) #717171 !important;
transition: box-shadow 0.2s !important;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 {
background: transparent;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__container {
margin: 0 auto;
max-width: 1170px;
background: transparent;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__form {
color: #333333;
width: 100%;
margin: 0;
padding: 30px;
font-size: 16px;
text-align: center;
font-family: Helvetica, sans-serif;
font-weight: 300;
line-height: 1.6;
letter-spacing: 0.1px;
text-transform: none;
}
@media (max-width: 767px) {
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__form {
word-wrap: anywhere;
word-break: break-word;
white-space: normal;
overflow-wrap: break-word;
}
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__title {
color: #000000;
width: 100%;
margin: 0 0 25px;
display: block;
font-size: 37px;
text-align: center;
font-family: Helvetica, sans-serif;
font-weight: 700;
line-height: 1;
letter-spacing: 0px;
text-transform: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__title * {
line-height: inherit;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__subtitle {
width: 100%;
margin: 0 0 30px;
display: block;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__subtitle * {
line-height: inherit;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__content {
margin: -10px -5px 0;
display: flex;
flex-wrap: wrap;
align-items: start;
flex-direction: row;
justify-content: center;
}
@media (max-width: 767px) {
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__content {
display: block;
}
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439<data-ff-stage success="success"></data-ff-stage> .ff-676f87df1f91c6a2ceca7439__content {
display: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__fields {
flex: 0 1 auto;
margin: 0px 0px 0;
display: flex;
flex-wrap: wrap;
max-width: calc(100% + 10px);
justify-content: center;
}
@media (max-width: 767px) {
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__fields {
display: block;
}
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__field {
flex: 1 1;
margin: 10px 5px 0;
font-size: 16px;
max-width: 250px;
min-width: 140px;
text-align: left;
font-family: Overpass;
font-weight: 400;
letter-spacing: 0.1px;
}
@media (max-width: 767px) {
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__field {
max-width: calc(100% - 10px);
}
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__control {
color: #240e36;
border: 1px solid #5f3957;
height: 46px;
padding: 12px 20px;
font-size: 16px;
background: transparent;
text-align: left;
font-family: Overpass;
font-weight: 400;
line-height: 20px;
border-radius: 11.5px;
letter-spacing: 0.1px;
text-transform: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__label {
color: #240e36;
border: 1px solid transparent;
padding: 12px 20px;
font-size: 16px;
text-align: left;
font-family: Overpass;
font-weight: 400;
line-height: 20px;
letter-spacing: 0.1px;
text-transform: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__preference {
margin: 30px 5px 0;
display: flex;
flex-direction: column;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__preference-title {
color: #333333;
width: 100%;
margin: 0 0 30px;
display: block;
font-size: 18px;
text-align: center;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0px;
text-transform: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__preference-title * {
line-height: inherit;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__preference-control {
width: 100%;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__preference-list {
width: calc(100% + 24px);
margin: -8px -12px;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
}
@media (max-width: 767px) {
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__preference-list {
display: block;
}
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__preference-item {
flex: 0 0 33.333333333333336%;
padding: 8px 12px;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__form-check .fd-form-check__input {
top: 2.200000000000001px;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__form-check .fd-form-check__checkmark {
top: 2.200000000000001px;
border-radius: 4px;
background-image: url("data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg' %3e %3cpath d='M1 4C1 2.34315 2.34315 1 4 1H16C17.6569 1 19 2.34315 19 4V16C19 17.6569 17.6569 19 16 19H4C2.34315 19 1 17.6569 1 16V4Z' fill='white' /%3e %3cpath fill='black' fill-rule='evenodd' clip-rule='evenodd' d='M0.25 4C0.25 1.92893 1.92893 0.25 4 0.25H16C18.0711 0.25 19.75 1.92893 19.75 4V16C19.75 18.0711 18.0711 19.75 16 19.75H4C1.92893 19.75 0.25 18.0711 0.25 16V4ZM4 1.75C2.75736 1.75 1.75 2.75736 1.75 4V16C1.75 17.2426 2.75736 18.25 4 18.25H16C17.2426 18.25 18.25 17.2426 18.25 16V4C18.25 2.75736 17.2426 1.75 16 1.75H4Z' /%3e %3c/svg%3e");
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__form-check .fd-form-check__label {
color: #333333;
font-size: 14px;
min-height: 22.400000000000002px;
font-weight: 400;
line-height: 1.6;
letter-spacing: 0px;
text-transform: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__form-check .fd-form-check__checkmark::after {
background-size: 12px;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='black' width='12' height='10' viewBox='0 0 11.51 8.2' %3e %3ctitle%3echeck%3c/title%3e %3cpath d='M4.05%2c8.2A.74.74%2c0%2c0%2c1%2c3.52%2c8L.22%2c4.68A.75.75%2c0%2c0%2c1%2c1.28%2c3.62l3.3%2c3.3A.75.75%2c0%2c0%2c1%2c4.58%2c8%2c.74.74%2c0%2c0%2c1%2c4.05%2c8.2Z' /%3e %3cpath d='M4.06%2c8.2A.74.74%2c0%2c0%2c1%2c3.53%2c8a.75.75%2c0%2c0%2c1%2c0-1.06l6.7-6.7a.75.75%2c0%2c0%2c1%2c1.06%2c1.06L4.59%2c8A.74.74%2c0%2c0%2c1%2c4.06%2c8.2Z' /%3e %3c/svg%3e");
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__footer {
flex: 0 1 auto;
margin-top: 10px;
text-align: center;
margin-left: 5px;
margin-right: 5px;
}
@media (max-width: 767px) {
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__footer {
margin-top: 25px;
}
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__button {
color: #ffffff;
width: auto;
border: 1px solid #5f3957;
display: inline-block;
padding: 12px 20px;
font-size: 16px;
background: #5f3957;
text-align: center;
font-family: Bon-Vivant-Serif-Bold;
font-weight: 700;
line-height: 20px;
white-space: nowrap;
border-radius: 11.5px;
letter-spacing: 0.3px;
text-transform: uppercase;
}
@media (max-width: 767px) {
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__button {
width: 100%;
}
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__success {
display: none;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439<data-ff-stage success="success"></data-ff-stage> .ff-676f87df1f91c6a2ceca7439__success {
display: block;
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__success-message {
color: #333333;
width: 100%;
display: block;
font-size: 16px;
word-wrap: anywhere;
min-height: 1.6em;
text-align: center;
word-break: break-word;
font-family: Helvetica, sans-serif;
font-weight: 300;
line-height: 1.6;
white-space: normal;
overflow-wrap: break-word;
letter-spacing: 0.1px;
pointer-events: auto;
text-transform: none;
}
@media (max-width: 767px) {
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__success-message {
font-size: 16px;
}
}
<data-ff-el root="root"></data-ff-el>.ff-676f87df1f91c6a2ceca7439 .ff-676f87df1f91c6a2ceca7439__error {
margin: 10px 0 0 0;
}
Email address
Download
Thank you for subscribing!
(function(w, d, t, h, s, n) {
w.FlodeskObject = n;
var fn = function() {
(w<n></n>.q = w<n></n>.q || []).push(arguments);
};
w<n></n> = w<n></n> || fn;
var f = d.getElementsByTagName(t)<0></0>;
var v = '?v=' + Math.floor(new Date().getTime() / (120 * 1000)) * 60;
var sm = d.createElement(t);
sm.async = true;
sm.type = 'module';
sm.src = h + s + '.mjs' + v;
f.parentNode.insertBefore(sm, f);
var sn = d.createElement(t);
sn.async = true;
sn.noModule = true;
sn.src = h + s + '.js' + v;
f.parentNode.insertBefore(sn, f);
})(window, document, 'script', 'https://assets.flodesk.com', '/universal', 'fd');
window.fd('form:handle', {
formId: '676f87df1f91c6a2ceca7439',
rootEl: '.ff-676f87df1f91c6a2ceca7439',
});
Start Your Author Glow-Up with a Meet Cute
Whether you’re ready to refresh your existing site or start from scratch, our expert team is here to make your author website design process as stress-free (and stylish) as possible.
At Swoonworthy Designs, it all starts with a Meet Cute — a casual, no-pressure 30-minute call where we:
Talk through your needs and goals
Share our pricing and services guide
Give you clear next steps to bring your vision to life
👉 Schedule Your Meet Cute and let’s make your website work as hard as you do.
Bonus: You Don’t Have to Do It Alone
We’ve helped dozens of romance authors (from spicy to sweet and everything in between) create stunning websites that boost their book sales and simplify their marketing.
You’re the storyteller. We’re the team that makes sure your readers fall in love with everything you create—starting with your site.
And if you haven’t already, download our freebie above to kickstart your author website design glow-up today.
Let 2025 be the year your brand shines online. Ready to stop Googling “how to design an author website” and actually have one you love? Let’s make your 2025 the year of beautiful, intentional author website design.
Your readers are waiting—and your story deserves the spotlight.

Comments