.craft-brand {
  color: #0b0d10;
  display: inline-flex;
  font-size: 30px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.craft-brand span {
  color: #41bd9a;
}

.site-navbar .craft-inline-logo .site-logo {
  text-align: left;
}

.site-navbar .craft-inline-logo .site-logo a {
  font-size: 34px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.site-navbar .craft-landing-menu {
  position: static;
}

.site-navbar .craft-landing-menu .site-navigation {
  position: static !important;
}

.site-navbar .craft-header-menu {
  align-items: center;
  display: flex;
  justify-content: center;
  margin-left: 0;
  padding-left: 0;
  width: 100%;
}

.site-navbar .site-navigation .site-menu.craft-header-menu > li > a {
  font-size: 18px;
  font-weight: 500;
  padding-left: 23px;
  padding-right: 23px;
}

.site-navbar .site-navigation .site-menu.craft-header-menu > li:first-child {
  margin-left: 48px;
}

.site-navbar .site-navigation .site-menu.craft-header-menu > li.craft-header-login {
  margin-left: auto;
}

.site-navbar .site-navigation .site-menu.craft-header-menu > li.craft-header-action > a {
  color: #42bd98;
  font-weight: 700;
  padding-left: 16px;
  padding-right: 16px;
}

.site-navbar .site-navigation .site-menu.craft-header-menu > li.craft-header-action > a:hover {
  color: #31a984;
}

.craft-header {
  background: rgba(255, 255, 255, 0.96);
  display: block;
  padding: 16px 28px;
  box-shadow: none;
  width: 100%;
}

.craft-nav-shell {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(180px, 0.5fr) minmax(420px, 1fr) minmax(210px, 0.5fr);
  gap: 24px;
  margin: 0 auto;
  max-width: 1440px;
  min-height: 48px;
  width: 100%;
}

.craft-main-nav {
  align-items: center;
  display: flex;
  gap: 34px;
  justify-content: center;
  min-width: 0;
}

.craft-main-nav a,
.craft-login-link {
  color: #0c1116;
  font-size: 14px;
  font-weight: 700;
}

.craft-main-nav a:hover,
.craft-login-link:hover {
  color: #39b992;
  text-decoration: none;
}

.craft-nav-actions {
  align-items: center;
  display: flex;
  gap: 20px;
  justify-content: flex-end;
  white-space: nowrap;
}

.craft-menu-button {
  background: transparent;
  border: 0;
  color: #0b0d10;
  display: none;
  font-size: 26px;
  padding: 8px;
}

.craft-landing {
  background: #fff;
  color: #0a0d12;
  font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow: hidden;
}

.craft-shell {
  margin: 0 auto;
  max-width: 1290px;
  padding-left: 28px;
  padding-right: 28px;
}

.craft-btn {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 14px;
  font-weight: 800;
  justify-content: center;
  min-height: 48px;
  padding: 0 28px;
  transition: background-color 160ms ease, box-shadow 160ms ease, color 160ms ease, transform 160ms ease;
}

.craft-btn:hover {
  text-decoration: none;
  transform: translateY(-1px);
}

.craft-btn-primary {
  background: #42bd98;
  box-shadow: 0 12px 24px rgba(66, 189, 152, 0.22);
  color: #fff;
}

.craft-btn-primary:hover {
  background: #31a984;
  color: #fff;
}

.craft-btn-secondary {
  background: #fff;
  border: 1px solid #dfe5e2;
  box-shadow: 0 8px 20px rgba(12, 17, 22, 0.08);
  color: #111418;
}

.craft-btn-secondary:hover {
  color: #111418;
}

.craft-nav-btn {
  min-height: 44px;
  padding-left: 24px;
  padding-right: 24px;
}

.craft-hero-button {
  min-width: 240px;
  text-align: center;
}

.craft-hero-button-outline {
  background: #fff;
  border: 2px solid #42bd98;
  color: #42bd98;
}

.craft-hero-button-outline:hover {
  background: #f4fffb;
  color: #31a984;
}

.craft-green-dot {
  color: #42bd98;
}

.craft-green-text {
  color: #42bd98;
}

.craft-nowrap {
  white-space: nowrap;
}

.craft-hero {
  padding: 92px 0 34px;
}

.craft-hero-grid {
  align-items: center;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 0.92fr) minmax(480px, 1.08fr);
}

.craft-hero-copy h1 {
  color: #030507;
  font-size: 62px;
  font-weight: 900;
  line-height: 1.12;
  margin: 0 0 24px;
}

.craft-hero-copy h1 span {
  color: #48bc99;
  display: block;
}

.craft-hero-copy p {
  color: #161b21;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  margin: 0 0 26px;
  max-width: 610px;
}

.craft-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-bottom: 42px;
}

.craft-promises {
  display: grid;
  gap: 26px;
  grid-template-columns: repeat(4, minmax(110px, 1fr));
  max-width: 680px;
}

.craft-promises div {
  color: #15191f;
  font-size: 12px;
  font-weight: 600;
}

.craft-promises span,
.craft-feature-row span {
  align-items: center;
  border: 1px solid #cfece3;
  border-radius: 50%;
  color: #36b78f;
  display: flex;
  font-size: 24px;
  height: 34px;
  justify-content: center;
  margin-bottom: 12px;
  width: 34px;
}

.craft-hero-media {
  min-height: 520px;
  position: relative;
}

.craft-hero-surface {
  background: #eef8f4;
  border-radius: 50% 0 0 50%;
  height: 505px;
  margin-left: auto;
  max-width: 660px;
  position: relative;
}

.craft-hero-surface img {
  height: auto;
  left: -20px;
  max-width: 720px;
  position: absolute;
  top: 40px;
  width: 100%;
  z-index: 1;
}

.craft-product-card {
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 20px 45px rgba(12, 17, 22, 0.12);
  color: #161b21;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.15;
  position: absolute;
  z-index: 2;
}

.craft-product-card-tote {
  border-radius: 8px;
  bottom: 90px;
  left: 22px;
  padding: 36px 24px;
}

.craft-product-card-mug {
  border-radius: 8px;
  bottom: 36px;
  left: 260px;
  padding: 24px 18px;
  text-align: center;
}

.craft-product-card-note {
  background: #f3ddd1;
  border-radius: 8px;
  bottom: 70px;
  right: 10px;
  padding: 34px 24px;
}

.craft-stats {
  background: #fff;
  border: 1px solid #edf1ef;
  border-radius: 8px;
  box-shadow: 0 22px 50px rgba(12, 17, 22, 0.08);
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(4, 1fr);
  padding: 34px 56px;
}

.craft-stat {
  align-items: center;
  display: grid;
  grid-template-columns: 36px 1fr;
}

.craft-stat span {
  color: #40ba94;
  font-size: 28px;
  grid-row: span 2;
}

.craft-stat strong {
  color: #05070a;
  font-size: 34px;
  font-weight: 900;
  line-height: 1;
}

.craft-stat p {
  color: #2b3138;
  font-size: 13px;
  font-weight: 600;
  margin: 6px 0 0;
}

.craft-section {
  padding: 56px 0;
}

.craft-section-heading {
  margin-bottom: 34px;
  text-align: center;
}

.craft-section-heading span {
  color: #40ba94;
  display: block;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.craft-section-heading h2,
.craft-final-cta h2 {
  color: #05070a;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.18;
  margin: 0;
}

.craft-how-it-works {
  background: #fff;
  margin: 0 auto;
  max-width: 1040px;
  padding: 34px 0 46px;
  scroll-margin-top: 136px;
  text-align: center;
}

#about-section,
#pricing-section,
#contact-section {
  scroll-margin-top: 136px;
}

.craft-how-heading {
  margin-bottom: 30px;
}

.craft-how-heading span {
  color: #40ba94;
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.craft-how-heading h2 {
  color: #05070a;
  font-size: 30px;
  font-weight: 900;
  line-height: 1.18;
  margin: 0;
}

.craft-steps {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(5, 1fr);
  margin: 0 auto;
  max-width: 960px;
  position: relative;
}

.craft-steps:before {
  background: repeating-linear-gradient(90deg, #dcefea 0 7px, transparent 7px 13px);
  content: "";
  height: 1px;
  left: 10%;
  position: absolute;
  right: 10%;
  top: 38px;
}

.craft-step {
  position: relative;
  text-align: center;
}

.craft-step-icon {
  align-items: center;
  background: #f6f8f7;
  border-radius: 50%;
  box-shadow: 0 12px 26px rgba(14, 23, 32, 0.05), inset 0 0 0 1px #edf2f0;
  color: #35b58d;
  display: flex;
  font-size: 30px;
  height: 76px;
  justify-content: center;
  margin: 0 auto 22px;
  position: relative;
  width: 76px;
  z-index: 1;
}

.craft-step h3 {
  color: #0b0f14;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  margin-bottom: 10px;
}

.craft-step p {
  color: #39424d;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.55;
  margin: 0 auto;
  max-width: 142px;
}

.craft-step p strong,
.craft-step p a {
  color: #39b992;
}

.craft-centered-action {
  margin-top: 28px;
  text-align: center;
}

.craft-about-section {
  padding: 34px 0 46px;
}

.craft-brand-panel,
.craft-proof-panel {
  align-items: center;
  border-radius: 8px;
  display: grid;
}

.craft-brand-panel {
  background: #eef7f4;
  gap: 38px;
  grid-template-columns: 0.72fr 1.28fr;
  min-height: 340px;
  overflow: hidden;
  padding: 44px 0 0 52px;
}

.craft-brand-copy h2,
.craft-proof-panel h2 {
  color: #070a0e;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.16;
  margin-bottom: 22px;
}

.craft-brand-copy ul {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
}

.craft-brand-copy li {
  align-items: flex-start;
  color: #323b45;
  display: flex;
  font-size: 14px;
  font-weight: 600;
  gap: 12px;
  margin-bottom: 14px;
}

.craft-brand-copy li span {
  color: #38b78f;
  font-size: 15px;
  margin-top: 3px;
}

.craft-about-image {
  align-self: end;
  min-width: 0;
}

.craft-about-image img {
  display: block;
  height: auto;
  margin-left: auto;
  max-width: 100%;
}

.craft-store-preview {
  min-height: 300px;
  position: relative;
}

.craft-browser {
  background: #fff;
  border: 1px solid #e4ece8;
  border-radius: 8px;
  box-shadow: 0 26px 55px rgba(14, 23, 32, 0.1);
  margin-left: auto;
  max-width: 560px;
  overflow: hidden;
}

.craft-browser-top {
  align-items: center;
  display: flex;
  gap: 24px;
  padding: 18px 24px;
}

.craft-browser-top strong {
  color: #0c1116;
  font-size: 13px;
  margin-right: auto;
}

.craft-browser-top span {
  color: #8b949e;
  font-size: 11px;
}

.craft-browser-hero {
  align-items: center;
  background: #f8f4f1;
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  min-height: 190px;
  padding: 28px;
}

.craft-browser-hero h3,
.craft-phone h3 {
  color: #05070a;
  font-size: 30px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 18px;
}

.craft-browser-hero button,
.craft-phone span {
  background: #e7e1dd;
  border: 0;
  border-radius: 6px;
  color: #111418;
  font-size: 10px;
  font-weight: 800;
  padding: 9px 14px;
}

.craft-browser-hero img {
  max-height: 160px;
  object-fit: contain;
  width: 100%;
}

.craft-product-strip {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, 1fr);
  padding: 18px 24px;
}

.craft-product-strip span {
  background: #f4f6f5;
  border-radius: 6px;
  display: block;
  height: 54px;
}

.craft-phone {
  background: #fff;
  border: 8px solid #0d1218;
  border-radius: 28px;
  bottom: -16px;
  box-shadow: 0 22px 45px rgba(12, 17, 22, 0.18);
  padding: 34px 20px;
  position: absolute;
  right: 0;
  width: 170px;
}

.craft-phone strong {
  color: #0c1116;
  display: block;
  font-size: 11px;
  margin-bottom: 44px;
}

.craft-proof-panel {
  background: #f7f1ee;
  gap: 18px;
  grid-template-columns: 0.9fr 1fr 1fr;
  margin-top: 42px;
  padding: 42px 54px;
}

.craft-proof-panel > div {
  min-width: 0;
}

.craft-proof-panel p {
  color: #313a44;
  font-size: 14px;
  line-height: 1.8;
  margin: 0;
}

.craft-testimonial,
.craft-profit-card {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 18px 35px rgba(14, 23, 32, 0.06);
  min-height: 220px;
  padding: 28px;
}

.craft-avatar {
  background: #3fbd97;
  border-radius: 50%;
  height: 54px;
  margin-bottom: 20px;
  width: 54px;
}

.craft-testimonial strong {
  color: #0b0f14;
  display: block;
  font-size: 13px;
  margin-top: 18px;
}

.craft-profit-card h3 {
  color: #0b0f14;
  font-size: 15px;
  font-weight: 900;
  margin-bottom: 20px;
}

.craft-profit-card dl {
  margin: 0 0 18px;
}

.craft-profit-card dl div {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 14px;
}

.craft-profit-card dt,
.craft-profit-card dd {
  color: #10151b;
  font-size: 13px;
  font-weight: 700;
  margin: 0;
}

.craft-profit-card dt {
  font-weight: 500;
}

.craft-profit-card .craft-profit dt,
.craft-profit-card .craft-profit dd {
  color: #22a77f;
  font-weight: 900;
}

.craft-profit-card p {
  align-items: center;
  display: flex;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
}

.craft-profit-card p span {
  color: #28ad85;
}

.craft-pricing-section {
  background: #fff;
  padding: 44px 0 54px;
}

.craft-pricing-heading {
  margin: 0 auto 34px;
  max-width: 920px;
  text-align: center;
}

.craft-pricing-heading h2 {
  color: #05070a;
  font-size: 42px;
  font-weight: 900;
  line-height: 1.12;
  margin: 0 0 14px;
}

.craft-pricing-heading p {
  color: #2e3640;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
}

.craft-pricing-grid {
  display: grid;
  gap: 28px;
  grid-template-columns: repeat(3, 1fr);
}

.craft-plan-card {
  border: 1px solid #e6ece9;
  border-radius: 8px;
  box-shadow: 0 12px 28px rgba(14, 23, 32, 0.035);
  min-height: 560px;
  padding: 42px 42px 118px;
  position: relative;
}

.craft-plan-card-featured {
  border-color: #cfe8df;
  box-shadow: 0 16px 34px rgba(14, 23, 32, 0.08);
}

.craft-plan-badge {
  background: #20b987;
  border-radius: 8px;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  left: 50%;
  letter-spacing: 0;
  min-width: 184px;
  padding: 10px 22px;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: -22px;
  transform: translateX(-50%);
}

.craft-plan-card h3 {
  color: #080b10;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.15;
  margin: 0 0 24px;
}

.craft-plan-price {
  align-items: baseline;
  color: #20b987;
  display: flex;
  font-size: 52px;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 22px;
}

.craft-plan-price span {
  color: #070a0e;
}

.craft-plan-price small {
  color: #141a20;
  font-size: 16px;
  font-weight: 700;
  margin-left: 12px;
}

.craft-plan-card > p {
  color: #4f5963;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.65;
  margin: 0 0 28px;
}

.craft-plan-card ul {
  list-style: none;
  margin: 0 0 34px;
  padding: 0;
}

.craft-plan-card li {
  align-items: flex-start;
  color: #3f8f7b;
  display: flex;
  font-size: 14px;
  font-weight: 600;
  gap: 14px;
  line-height: 1.35;
  margin-bottom: 18px;
}

.craft-plan-card li span {
  color: #20b987;
  font-size: 16px;
  margin-top: 3px;
}

.craft-plan-button {
  align-items: center;
  border-radius: 8px;
  bottom: 36px;
  display: flex;
  font-size: 15px;
  font-weight: 800;
  justify-content: center;
  left: 42px;
  min-height: 54px;
  position: absolute;
  right: 42px;
}

.craft-plan-button:hover {
  text-decoration: none;
}

.craft-plan-button-primary {
  background: #18b782;
  color: #fff;
}

.craft-plan-button-primary:hover {
  background: #10a873;
  color: #fff;
}

.craft-plan-button-outline {
  background: #fff;
  border: 2px solid #bdebdc;
  color: #20b987;
}

.craft-plan-button-outline:hover {
  border-color: #20b987;
  color: #159f71;
}

.craft-feature-row {
  border-bottom: 1px solid #edf1ef;
  display: grid;
  gap: 32px;
  grid-template-columns: repeat(4, 1fr);
  padding-bottom: 42px;
  padding-top: 4px;
}

.craft-feature-row h3 {
  color: #0b0f14;
  font-size: 15px;
  font-weight: 900;
  margin-bottom: 10px;
}

.craft-feature-row p {
  color: #3a434c;
  font-size: 12px;
  line-height: 1.65;
  margin: 0;
}

.craft-final-cta {
  padding-bottom: 22px;
  text-align: center;
}

.craft-final-cta p {
  color: #343d46;
  font-size: 16px;
  margin: 16px auto 28px;
  max-width: 720px;
}

.craft-final-cta small {
  color: #262d34;
  display: block;
  font-size: 12px;
  font-weight: 600;
  margin-top: 14px;
}

.craft-register-page {
  background: linear-gradient(135deg, #ffffff 0%, #f7fbf9 48%, #edf8f4 100%);
  color: #0a0d12;
  font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  min-height: 100vh;
  overflow: hidden;
  padding: 128px 32px 72px;
  position: relative;
}

.craft-register-header > .container {
  max-width: 1420px;
  padding-left: 18px;
  padding-right: 18px;
}

.craft-register-page:before {
  background: rgba(66, 189, 152, 0.08);
  border-radius: 999px;
  bottom: -270px;
  content: "";
  height: 720px;
  left: -130px;
  position: absolute;
  width: 980px;
}

.craft-register-shell {
  align-items: stretch;
  display: grid;
  gap: 54px;
  grid-template-columns: minmax(360px, 0.9fr) minmax(420px, 0.95fr);
  margin: 0 auto;
  max-width: 1420px;
  min-height: calc(100vh - 170px);
  position: relative;
  z-index: 1;
}

.craft-register-intro {
  justify-content: center;
  display: flex;
  flex-direction: column;
  min-height: 520px;
  overflow: hidden;
  padding: 10px 0 0 18px;
  position: relative;
}

.craft-register-copy {
  max-width: 430px;
}

.craft-register-copy h1 {
  color: #030507;
  font-size: 58px;
  font-weight: 900;
  line-height: 1.14;
  margin: 0 0 28px;
}

.craft-register-copy h1 .craft-register-highlight {
  color: #42bd98;
  display: block;
  white-space: nowrap;
}

.craft-register-copy p {
  color: #626c76;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.75;
  margin: 0;
  max-width: 360px;
}

.craft-register-benefits {
  list-style: none;
  margin: 42px 0 0;
  padding: 0;
  position: relative;
  z-index: 2;
}

.craft-register-benefits li {
  align-items: center;
  color: #303943;
  display: flex;
  font-size: 15px;
  font-weight: 700;
  gap: 14px;
  margin-bottom: 20px;
}

.craft-register-benefits span {
  align-items: center;
  background: #42bd98;
  border-radius: 50%;
  color: #fff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 12px;
  height: 22px;
  justify-content: center;
  width: 22px;
}

.craft-register-card {
  align-self: center;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid rgba(222, 230, 226, 0.9);
  border-radius: 8px;
  box-shadow: 0 24px 70px rgba(12, 17, 22, 0.08);
  padding: 46px 56px 42px;
}

.craft-register-alerts {
  margin-bottom: 22px;
}

.craft-register-form {
  margin: 0;
}

.craft-register-heading {
  margin-bottom: 28px;
}

.craft-register-heading span {
  color: #42bd98;
  display: inline-block;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0;
  margin-bottom: 14px;
}

.craft-register-heading h3 {
  color: #080b0f;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.2;
  margin: 0 0 14px;
}

.craft-register-heading p {
  color: #6b737c;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  margin: 0;
}

.craft-register-field {
  align-items: center;
  border: 1px solid #e2e7e5;
  border-radius: 8px;
  display: flex;
  margin-bottom: 16px;
  min-height: 54px;
  padding: 0 22px;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

.craft-register-field:focus-within {
  border-color: #42bd98;
  box-shadow: 0 0 0 4px rgba(66, 189, 152, 0.1);
}

.craft-register-field span {
  color: #7c858f;
  flex: 0 0 auto;
  font-size: 22px;
  margin-right: 22px;
  width: 24px;
}

.craft-register-field .form-control {
  background: transparent;
  border: 0;
  box-shadow: none;
  color: #20262d;
  font-size: 16px;
  font-weight: 700;
  height: 52px;
  padding: 0;
}

.craft-register-field .form-control:focus {
  box-shadow: none;
}

/* Keep browser-saved credentials visually consistent with the field shell. */
.craft-register-field .form-control:autofill,
.craft-register-field .form-control:-webkit-autofill,
.craft-register-field .form-control:-webkit-autofill:hover,
.craft-register-field .form-control:-webkit-autofill:focus,
.craft-register-field .form-control:-webkit-autofill:active {
  -webkit-text-fill-color: #20262d;
  caret-color: #20262d;
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
  box-shadow: 0 0 0 1000px #fff inset;
  transition: background-color 9999s ease-out 0s;
}

.craft-register-field .form-control::placeholder {
  color: #878f98;
  font-weight: 500;
  opacity: 1;
}

.craft-register-terms {
  align-items: flex-start;
  color: #707982;
  display: flex;
  font-size: 14px;
  font-weight: 600;
  gap: 12px;
  line-height: 1.5;
  margin: 22px 0 26px;
}

.craft-register-terms input {
  accent-color: #42bd98;
  flex: 0 0 auto;
  height: 20px;
  margin-top: 1px;
  width: 20px;
}

.craft-register-terms a,
.craft-register-login a {
  color: #42bd98;
  font-weight: 800;
}

.craft-register-terms a:hover,
.craft-register-login a:hover {
  color: #31a984;
  text-decoration: none;
}

.craft-register-submit {
  background: #42bd98;
  border: 0;
  border-radius: 8px;
  box-shadow: 0 14px 28px rgba(66, 189, 152, 0.22);
  color: #fff;
  cursor: pointer;
  display: block;
  font-size: 17px;
  font-weight: 900;
  min-height: 52px;
  transition: background-color 160ms ease, transform 160ms ease;
  width: 100%;
}

.craft-register-submit:hover {
  background: #31a984;
  transform: translateY(-1px);
}

.craft-register-login {
  color: #707982;
  font-size: 15px;
  font-weight: 600;
  margin: 18px 0 0;
  text-align: center;
}

.craft-login-shell {
  align-items: center;
}

.craft-login-card {
  justify-self: stretch;
  max-width: 640px;
}

.craft-login-page .craft-register-intro {
  min-height: 420px;
}

.craft-login-page .craft-register-copy h1 {
  max-width: 520px;
}

.craft-verify-shell {
  align-items: center;
}

.craft-verify-card {
  justify-self: stretch;
  max-width: 680px;
}

.craft-verify-page .craft-register-intro {
  min-height: 420px;
}

.craft-verify-page .craft-register-copy h1 {
  max-width: 560px;
}

.craft-contact {
  padding: 0 0 28px;
  text-align: center;
}

.craft-contact p {
  color: #303943;
  font-size: 13px;
  font-weight: 600;
  margin: 0;
}

.craft-contact a {
  color: #2faa84;
}

@media (max-width: 1199px) {
  .site-navbar .site-navigation .site-menu.craft-header-menu > li > a {
    font-size: 15px;
    padding-left: 14px;
    padding-right: 14px;
  }

  .site-navbar .site-navigation .site-menu.craft-header-menu > li:first-child {
    margin-left: 24px;
  }

  .craft-header {
    padding-left: 18px;
    padding-right: 18px;
  }

  .craft-nav-shell {
    grid-template-columns: auto 1fr auto;
  }

  .craft-main-nav {
    gap: 20px;
    justify-content: flex-start;
  }

  .craft-hero-grid {
    grid-template-columns: 1fr;
  }

  .craft-hero-media {
    min-height: 430px;
  }

  .craft-hero-surface {
    margin: 0 auto;
  }

  .craft-stats {
    padding-left: 28px;
    padding-right: 28px;
  }

  .craft-pricing-grid {
    gap: 18px;
  }

  .craft-plan-card {
    padding-left: 28px;
    padding-right: 28px;
  }

  .craft-plan-button {
    left: 28px;
    right: 28px;
  }

  .craft-register-shell {
    gap: 32px;
    grid-template-columns: minmax(330px, 0.82fr) minmax(400px, 1fr);
  }

  .craft-register-card {
    padding: 40px 38px 36px;
  }

  .craft-register-copy h1 {
    font-size: 48px;
  }

}

@media (max-width: 991px) {
  .craft-main-nav,
  .craft-nav-actions {
    display: none;
  }

  .craft-menu-button {
    display: inline-flex;
    justify-self: end;
  }

  .craft-nav-shell {
    grid-template-columns: 1fr auto;
  }

  .craft-shell {
    padding-left: 20px;
    padding-right: 20px;
  }

  .craft-hero {
    padding-top: 76px;
  }

  .craft-hero-copy h1 {
    font-size: 44px;
  }

  .craft-promises,
  .craft-stats,
  .craft-steps,
  .craft-pricing-grid,
  .craft-brand-panel,
  .craft-proof-panel,
  .craft-feature-row {
    grid-template-columns: 1fr 1fr;
  }

  .craft-steps:before {
    display: none;
  }

  .craft-brand-panel,
  .craft-proof-panel {
    gap: 24px;
  }

  .craft-brand-panel {
    padding-left: 34px;
  }

  .craft-about-image {
    align-self: center;
  }

  .craft-store-preview {
    grid-column: 1 / -1;
  }

  .craft-register-page {
    padding: 104px 18px 56px;
  }

  .craft-register-header > .container {
    padding-left: 18px;
    padding-right: 18px;
  }

  .craft-register-shell {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .craft-register-intro {
    min-height: 0;
    overflow: visible;
    padding: 18px 0 0;
  }

  .craft-register-copy,
  .craft-register-copy p {
    max-width: 100%;
  }

  .craft-register-benefits {
    display: grid;
    gap: 14px 22px;
    grid-template-columns: 1fr 1fr;
    margin-top: 30px;
  }

  .craft-register-benefits li {
    margin-bottom: 0;
  }

}

@media (max-width: 640px) {
  .craft-header {
    padding: 14px 14px;
  }

  .craft-shell {
    padding-left: 14px;
    padding-right: 14px;
  }

  .craft-hero-copy h1,
  .craft-section-heading h2,
  .craft-how-heading h2,
  .craft-final-cta h2,
  .craft-pricing-heading h2,
  .craft-brand-copy h2,
  .craft-proof-panel h2 {
    font-size: 34px;
  }

  .craft-actions,
  .craft-promises,
  .craft-stats,
  .craft-steps,
  .craft-pricing-grid,
  .craft-brand-panel,
  .craft-proof-panel,
  .craft-feature-row {
    grid-template-columns: 1fr;
  }

  .craft-actions {
    gap: 14px;
  }

  .craft-actions .craft-btn {
    width: 100%;
  }

  .craft-register-page {
    padding: 94px 12px 42px;
  }

  .craft-register-header > .container {
    padding-left: 12px;
    padding-right: 12px;
  }

  .craft-register-copy h1 {
    font-size: 38px;
  }

  .craft-register-copy p,
  .craft-register-heading p {
    font-size: 15px;
  }

  .craft-register-benefits {
    grid-template-columns: 1fr;
  }

  .craft-register-card {
    padding: 28px 18px 26px;
  }

  .craft-register-heading h3 {
    font-size: 27px;
  }

  .craft-register-field {
    min-height: 56px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .craft-register-field span {
    font-size: 19px;
    margin-right: 14px;
  }

  .craft-register-field .form-control {
    font-size: 14px;
    height: 54px;
  }

  .craft-hero-media {
    min-height: 360px;
  }

  .craft-hero-surface {
    border-radius: 8px;
    height: 340px;
  }

  .craft-product-card {
    font-size: 14px;
  }

  .craft-product-card-tote {
    bottom: 72px;
    left: 14px;
    padding: 22px 14px;
  }

  .craft-product-card-mug {
    bottom: 26px;
    left: 42%;
    padding: 18px 12px;
  }

  .craft-product-card-note {
    bottom: 70px;
    padding: 20px 14px;
    right: 10px;
  }

  .craft-stats {
    padding: 24px;
  }

  .craft-how-it-works {
    padding-bottom: 34px;
    padding-top: 28px;
  }

  .craft-step {
    margin-bottom: 10px;
  }

  .craft-about-section {
    padding-bottom: 34px;
    padding-top: 28px;
  }

  .craft-brand-panel {
    padding: 32px 22px 0;
  }

  .craft-brand-copy li {
    font-size: 13px;
  }

  .craft-proof-panel {
    margin-top: 28px;
    padding-left: 22px;
    padding-right: 22px;
  }

  .craft-pricing-section {
    padding-bottom: 42px;
    padding-top: 34px;
  }

  .craft-pricing-heading p {
    font-size: 14px;
  }

  .craft-plan-card {
    min-height: 0;
    padding: 32px 22px 104px;
  }

  .craft-plan-card h3 {
    font-size: 24px;
  }

  .craft-plan-price {
    font-size: 48px;
  }

  .craft-plan-button {
    bottom: 28px;
    left: 22px;
    right: 22px;
  }

  .craft-browser-top span {
    display: none;
  }

  .craft-browser-hero {
    grid-template-columns: 1fr;
  }

  .craft-phone {
    margin: 20px auto 0;
    position: static;
  }
}

/* Landing header and hero */
:root {
  --craft-accent: #42bd98;
  --craft-accent-dark: color-mix(in srgb, var(--craft-accent) 78%, #000);
  --craft-accent-soft: color-mix(in srgb, var(--craft-accent) 12%, #fff);
  --craft-accent-border: color-mix(in srgb, var(--craft-accent) 32%, #fff);
  --craft-ink: #0b0b0c;
}

/* The marketing homepage gets every accent from --craft-accent. */
.craft-home-page .craft-how-heading span,
.craft-home-page .craft-step-icon,
.craft-home-page .craft-step p strong,
.craft-home-page .craft-step p a,
.craft-home-page .craft-brand-copy li span,
.craft-home-page .craft-profit-card .craft-profit dt,
.craft-home-page .craft-profit-card .craft-profit dd,
.craft-home-page .craft-profit-card p span,
.craft-home-page .craft-plan-price,
.craft-home-page .craft-plan-card li,
.craft-home-page .craft-plan-card li span,
.craft-home-page .craft-plan-button-outline,
.craft-home-page .footer a {
  color: var(--craft-accent);
}

.craft-home-page .craft-btn-primary,
.craft-home-page .craft-plan-badge,
.craft-home-page .craft-plan-button-primary,
.craft-home-page .craft-avatar {
  background: var(--craft-accent);
}

.craft-home-page .craft-btn-primary:hover,
.craft-home-page .craft-plan-button-primary:hover {
  background: var(--craft-accent-dark);
}

.craft-home-page .craft-btn-primary {
  box-shadow: 0 12px 24px color-mix(in srgb, var(--craft-accent) 22%, transparent);
}

.craft-home-page .craft-steps:before {
  background: repeating-linear-gradient(90deg, var(--craft-accent-border) 0 7px, transparent 7px 13px);
}

.craft-home-page .craft-brand-panel {
  background: var(--craft-accent-soft);
}

.craft-home-page .craft-plan-card-featured,
.craft-home-page .craft-plan-button-outline {
  border-color: var(--craft-accent-border);
}

.craft-home-page .craft-plan-button-outline:hover {
  border-color: var(--craft-accent);
  color: var(--craft-accent-dark);
}

.craft-reference-header {
  background: rgba(255, 255, 255, 0.97);
  border-bottom: 1px solid #f0f0f0;
  padding: 0;
}

.craft-reference-nav {
  align-items: center;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(210px, .7fr) minmax(570px, 1.5fr) minmax(330px, .8fr);
  margin: 0 auto;
  max-width: 1840px;
  min-height: 104px;
  padding: 14px 0;
  width: 80%;
}

.craft-reference-brand {
  color: var(--craft-ink);
  display: inline-flex;
  flex-direction: column;
  justify-self: start;
  line-height: 1;
  text-decoration: none;
}

.craft-reference-brand:hover { color: var(--craft-ink); text-decoration: none; }
.craft-reference-brand strong { font-size: 38px; font-weight: 900; letter-spacing: -2px; }
.craft-reference-brand strong span { color: var(--craft-accent); }
.craft-reference-brand small {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 4px;
  margin-top: 12px;
  text-transform: uppercase;
}

.craft-reference-menu {
  align-items: center;
  display: flex;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-navbar .site-navigation .site-menu.craft-reference-menu > li > a {
  color: #171717;
  font-size: 15px;
  font-weight: 500;
  padding: 18px 20px;
  position: relative;
}

.site-navbar .site-navigation .site-menu.craft-reference-menu > li > a:hover { color: var(--craft-accent-dark); }
.site-navbar .site-navigation .site-menu.craft-reference-menu > li > a.is-active:after {
  background: var(--craft-accent);
  bottom: 8px;
  content: "";
  height: 2px;
  left: 20px;
  position: absolute;
  right: 20px;
}

.craft-reference-actions { align-items: center; display: flex; gap: 24px; justify-content: flex-end; }
.craft-reference-login { color: var(--craft-ink); font-size: 16px; font-weight: 500; }
.craft-reference-login:hover { color: var(--craft-accent-dark); text-decoration: none; }
.craft-reference-start,
.craft-reference-primary-action,
.craft-reference-secondary-action {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-weight: 600;
  justify-content: center;
  min-height: 54px;
  padding: 0 34px;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.craft-reference-start { background: var(--craft-accent); color: #fff; min-width: 205px; }
.craft-reference-start:hover { background: var(--craft-accent-dark); color: #fff; text-decoration: none; }
.craft-reference-menu-toggle { background: transparent; border: 0; color: var(--craft-ink); font-size: 28px; min-height: 44px; min-width: 44px; }

.craft-reference-hero {
  background: #fff;
  color: var(--craft-ink);
  min-height: 100vh;
  overflow: hidden;
  padding-top: 104px;
}

.craft-reference-hero-grid {
  align-items: center;
  display: grid;
  gap: clamp(56px, 7vw, 136px);
  grid-template-columns: minmax(390px, .68fr) minmax(520px, 1.32fr);
  margin: 0 auto;
  max-width: 1600px;
  min-height: calc(100vh - 104px);
  padding: clamp(40px, 5vh, 64px) 0;
  width: 80%;
}

.craft-reference-hero-copy { max-width: 640px; position: relative; transform: translateY(24px); z-index: 1; }
.craft-reference-hero-copy h1 {
  color: var(--craft-ink);
  font-size: clamp(42px, 3.5vw, 58px);
  font-weight: 900;
  letter-spacing: -4px;
  line-height: 1.04;
  margin: 0 0 28px;
}
.craft-reference-hero-copy h1 span { display: block; white-space: nowrap; }
.craft-reference-hero-copy h1 b { color: var(--craft-accent); }
.craft-reference-hero-copy h1 .craft-reference-accent { color: var(--craft-accent); }
.craft-reference-intro { color: #6f7780; font-size: 16px; line-height: 1.55; margin: 0 0 30px; }
.craft-reference-hero-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 42px; }
.craft-reference-primary-action { background: var(--craft-accent); color: #fff; min-width: 275px; }
.craft-reference-primary-action:hover { background: var(--craft-accent-dark); color: #fff; text-decoration: none; transform: translateY(-1px); }
.craft-reference-secondary-action { border: 2px solid var(--craft-accent); color: var(--craft-accent-dark); min-width: 225px; }
.craft-reference-secondary-action:hover { background: var(--craft-accent-soft); color: var(--craft-accent-dark); text-decoration: none; transform: translateY(-1px); }
.craft-reference-promises { display: grid; gap: 12px; grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: 640px; }
.craft-reference-promises div { align-items: center; display: grid; gap: 6px; grid-template-columns: 26px 1fr; }
.craft-reference-promises span { color: var(--craft-accent); font-size: 22px; }
.craft-reference-promises strong { color: #24262a; font-size: 10px; font-weight: 500; line-height: 1.25; }
.craft-reference-hero-image { display: flex; justify-content: flex-end; min-width: 0; }
.craft-reference-hero-image img { display: block; height: auto; max-height: min(680px, calc(100vh - 210px)); object-fit: contain; object-position: right center; width: 100%; }

@media (max-width: 1400px) {
  .craft-reference-nav { gap: 14px; grid-template-columns: 230px minmax(540px, 1fr) 330px; }
  .site-navbar .site-navigation .site-menu.craft-reference-menu > li > a { font-size: 14px; padding-left: 11px; padding-right: 11px; white-space: nowrap; }
  .craft-reference-actions { gap: 18px; }
  .craft-reference-hero-copy h1 { font-size: 44px; margin-bottom: 22px; }
  .craft-reference-intro { font-size: 16px; margin-bottom: 26px; }
  .craft-reference-hero-actions { gap: 14px; margin-bottom: 34px; }
  .craft-reference-primary-action { min-width: 250px; padding-left: 22px; padding-right: 22px; }
  .craft-reference-secondary-action { min-width: 200px; padding-left: 22px; padding-right: 22px; }
}

@media (max-width: 1199px) {
  .craft-reference-nav { grid-template-columns: minmax(190px, .7fr) minmax(500px, 1.5fr) minmax(235px, .8fr); }
  .site-navbar .site-navigation .site-menu.craft-reference-menu > li > a { padding-left: 12px; padding-right: 12px; }
  .craft-reference-start { min-width: 170px; padding-left: 22px; padding-right: 22px; }
}

@media (max-width: 991px) {
  .craft-reference-nav { grid-template-columns: 1fr auto; min-height: 82px; padding: 12px 0; }
  .craft-reference-brand strong { font-size: 30px; }
  .craft-reference-brand small { font-size: 7px; letter-spacing: 3px; margin-top: 8px; }
  .craft-reference-actions { gap: 8px; }
  .craft-reference-hero { min-height: 0; padding-top: 82px; }
  .craft-reference-hero-grid { gap: 48px; grid-template-columns: 1fr; padding: 56px 0 72px; }
  .craft-reference-hero-copy { max-width: 640px; transform: none; }
  .craft-reference-hero-image { justify-content: center; }
  .craft-reference-hero-image img { max-height: 560px; object-position: center top; }
  .craft-how-it-works,
  #about-section,
  #pricing-section,
  #contact-section { scroll-margin-top: 106px; }
}

@media (max-width: 575px) {
  .craft-reference-hero-grid { gap: 36px; padding: 42px 0 56px; width: calc(100% - 40px); }
  .craft-reference-hero-copy h1 { font-size: clamp(32px, 10.5vw, 50px); letter-spacing: -2.5px; margin-bottom: 22px; }
  .craft-reference-intro { font-size: 15px; }
  .craft-reference-intro br { display: none; }
  .craft-reference-hero-actions { gap: 12px; margin-bottom: 34px; }
  .craft-reference-primary-action,
  .craft-reference-secondary-action { min-height: 52px; min-width: 0; padding-left: 22px; padding-right: 22px; width: 100%; }
  .craft-reference-promises { gap: 18px 12px; grid-template-columns: 1fr 1fr; }
  .craft-reference-promises div { grid-template-columns: 30px 1fr; }
  .craft-reference-promises span { font-size: 24px; }
  .craft-reference-hero-image img { max-height: 420px; }
}
