/* Homepage-only brand system. Keep shared editor and account styles untouched. */
html.hp-document { margin:0; padding:0; overflow-x:hidden; overflow-x:clip; }
/* The public homepage has its own styles; do not load the editor's stylesheet. */
html.hp-document,
body.homepage-personal,
body.homepage-personal *,
body.homepage-personal *::before,
body.homepage-personal *::after { box-sizing:border-box; }
body.homepage-personal #dropdownContent { overflow:hidden; }
body.homepage-personal {
  --hp-ink:#172f36;
  --hp-copy:#5a6c70;
  --hp-line:#e0e7e5;
  --hp-paper:#fcfdfb;
  --hp-green:#245a43;
  --hp-blue:#4f76f6;
  --hp-mint:#77f2a1;
  margin:0;
  padding:0;
  width:100%;
  background:var(--hp-paper);
  color:var(--hp-ink);
  font-family:"Josefin Sans",sans-serif;
  -webkit-font-smoothing:antialiased;
}
body.homepage-personal::before, body.homepage-personal::after { content:none; }
body.homepage-personal, body.homepage-personal * { font-family:"Josefin Sans",sans-serif !important; }
body.homepage-personal .hp-main *, body.homepage-personal #homeheader * { box-sizing:border-box; }
body.homepage-personal .hp-main {
  position:relative;
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  overflow-x:hidden;
  overflow-x:clip;
  background:var(--hp-paper);
  color:var(--hp-ink);
}
body.homepage-personal .hp-main :where(h1,h2,h3,p,ol) { margin:0; }
body.homepage-personal .hp-main :is(h1,h2,h3) { color:var(--hp-ink); font-weight:600; text-wrap:balance; }
body.homepage-personal .hp-main a { text-underline-offset:4px; }
body.homepage-personal .hp-main [hidden] { display:none !important; }
body.homepage-personal .hp-main [id] { scroll-margin-top:110px; }
body.homepage-personal .hp-main :focus-visible, body.homepage-personal #homeheader :focus-visible { outline:3px solid #315cd3; outline-offset:4px; }

/* The familiar account navigation, with one clear primary action. */
body.homepage-personal #homeheader {
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:sticky;
  top:0;
  z-index:100;
  box-sizing:border-box;
  width:100%;
  min-height:76px;
  margin:0;
  padding:14px clamp(20px,4vw,56px);
  background:rgba(252,253,251,.94);
  border:0;
  box-shadow:none;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
body.homepage-personal #homeheader > a { display:flex; align-items:center; flex:none; }
body.homepage-personal #homeheader #headerlogo { display:block; width:126px; max-width:100%; height:auto; margin:0; object-fit:contain; }
body.homepage-personal #homeheader nav { display:flex; align-items:center; gap:12px; margin:0; }
body.homepage-personal #homeheader :is(#loginhome,#signuphome,#accountbtn) {
  min-height:42px;
  margin:0;
  padding:12px 18px 10px;
  border:1px solid transparent;
  border-radius:10px;
  box-shadow:none;
  font-size:14px;
  font-weight:600;
  line-height:1.25;
  letter-spacing:0;
  text-transform:none;
  cursor:pointer;
}
body.homepage-personal #homeheader #loginhome { background:rgba(79,118,246,.08); color:#3157b7; border-color:rgba(79,118,246,.2); }
body.homepage-personal #homeheader #loginhome:hover { background:rgba(79,118,246,.15); border-color:rgba(79,118,246,.35); }
body.homepage-personal #homeheader #signuphome { background:linear-gradient(120deg,#77f2a1,#b0f5c8); color:#206548; border-color:rgba(39,118,91,.17); }
body.homepage-personal #homeheader #signuphome:hover { background:linear-gradient(120deg,#8bf5b0,#c0f8d5); border-color:rgba(39,118,91,.3); }
body.homepage-personal #homeheader #accountbtn { align-items:center; gap:10px; width:auto; max-width:min(240px,calc(100vw - 166px)); min-height:44px; padding:6px 14px 6px 6px; color:#206548; background:rgba(119,242,161,.18); border-color:rgba(39,118,91,.17); border-radius:999px; white-space:nowrap; }
/* Auth uses an inline block display when signed in; preserve its hidden state. */
body.homepage-personal #homeheader #accountbtn[style*="display: block"] { display:inline-flex !important; }
body.homepage-personal #homeheader #accountbtn:hover, body.homepage-personal #homeheader #accountbtn[aria-expanded="true"] { background:rgba(119,242,161,.29); border-color:rgba(39,118,91,.28); }
body.homepage-personal #homeheader #accountbtn .avatar { display:grid; place-items:center; position:relative; flex:0 0 30px; width:30px; height:30px; margin:0; padding:0; overflow:hidden; border:0; border-radius:50%; background:linear-gradient(135deg,#dce6ff,#d9f9e4); box-shadow:none; }
body.homepage-personal #homeheader #accountbtn .avatar::before { content:none; }
body.homepage-personal #homeheader #accountbtn .initials { display:grid; place-items:center; position:static; width:100%; height:100%; margin:0; padding:1px 0 0; border:0; border-radius:inherit; background:transparent; color:#24466f; box-shadow:none; font-size:12px; font-weight:700; line-height:1; }
body.homepage-personal #homeheader #accountbtn .avatar img { display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit; }
body.homepage-personal #homeheader #accountbtn .name { display:block; flex:1 1 auto; min-width:0; margin:0; overflow:hidden; font-size:14px; line-height:1.2; text-overflow:ellipsis; white-space:nowrap; }
body.homepage-personal #homeheader #accountbtn::after { content:""; display:block; flex:0 0 6px; width:6px; height:6px; border:0; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; opacity:.7; transform:translateY(-2px) rotate(45deg); }
body.homepage-personal #homeheader #accountbtn[aria-expanded="true"]::after { transform:translateY(2px) rotate(225deg); }
body.homepage-personal #homeheader .dropdown-content { border:1px solid var(--hp-line); border-radius:12px; box-shadow:0 12px 36px rgba(23,47,54,.12); }
body.homepage-personal #homeheader .dropdown-item { color:var(--hp-ink); font-size:14px; }

/* A full-screen opening, with color framing the content rather than competing with it. */
body.homepage-personal .hp-welcome {
  display:flex;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100%;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:var(--hp-paper);
}
/* Overlapping color washes rise independently; the content stays stationary. */
body.homepage-personal .hp-welcome::before {
  content:"";
  position:absolute;
  z-index:0;
  inset:-5% -8% -8%;
  background:
    radial-gradient(ellipse 46% 37% at 48% 25%,#fcfdfb 0%,rgba(252,253,251,.94) 42%,rgba(252,253,251,0) 100%),
    linear-gradient(180deg,#fcfdfb 0%,#fcfdfb 21%,#e9f0fb 33%,#9bbcf6 53%,#8aaff0 72%,#b3d6e8 100%);
  opacity:1;
  transform:none;
  pointer-events:none;
  animation:hp-sky-unfold 2800ms cubic-bezier(.22,1,.36,1) both;
}
body.homepage-personal .hp-welcome::after {
  content:"";
  position:absolute;
  z-index:0;
  inset:-5% -8% -8%;
  background:
    radial-gradient(ellipse 68% 57% at 5% 109%,rgba(119,242,161,.96) 0%,rgba(146,230,177,.94) 40%,rgba(157,228,189,.5) 65%,rgba(157,228,189,0) 85%),
    radial-gradient(ellipse 62% 58% at 100% 108%,rgba(140,235,170,.95) 0%,rgba(160,231,187,.86) 42%,rgba(160,231,187,0) 85%),
    linear-gradient(180deg,rgba(149,229,171,0) 59%,rgba(149,229,171,.28) 80%,#97e5aa 100%);
  opacity:1;
  transform:none;
  pointer-events:none;
  animation:hp-ground-unfold 3400ms cubic-bezier(.22,1,.36,1) 160ms both;
}
body.homepage-personal .hp-intro.top-prompt-inner {
  display:flex;
  position:relative;
  z-index:1;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:0;
  width:min(760px,calc(100% - 48px));
  max-width:760px;
  min-height:calc(100vh - var(--hp-nav-height,76px));
  min-height:calc(100dvh - var(--hp-nav-height,76px));
  margin:0 auto;
  padding:32px 0 108px;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  text-align:center;
}
body.homepage-personal .hp-main #hp-title {
  max-width:100%;
  margin:0 0 15px;
  padding:0;
  color:#1b333b;
  font-size:clamp(38px,5.3vw,60px);
  font-weight:600;
  line-height:1.12;
  letter-spacing:-.038em;
}
body.homepage-personal .hp-lead { max-width:58ch; margin:0 0 30px; color:#586c72; font-size:18px; line-height:1.55; letter-spacing:-.01em; text-wrap:balance; }
body.homepage-personal #homecreate { display:none !important; }
body.homepage-personal #home-prompt {
  display:block !important;
  position:relative;
  isolation:isolate;
  width:100%;
  max-width:680px;
  min-height:0;
  height:auto;
  gap:0;
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  transform:none;
  overflow:visible;
  text-align:left;
  filter:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  transition:none;
}
body.homepage-personal #home-prompt::before, body.homepage-personal #home-prompt::after { content:none; }
body.homepage-personal #home-prompt:focus-within { background:transparent; border:0; box-shadow:none; }
body.homepage-personal .hp-prompt-surface { position:relative; width:100%; min-width:0; margin:0; padding:0; border:0; border-bottom:1px solid rgba(39,73,92,.28); border-radius:0; background:transparent; box-shadow:none; transition:border-color .18s ease,box-shadow .18s ease; }
body.homepage-personal .hp-prompt-surface:focus-within { border-color:#4f76f6; box-shadow:0 1px 0 #4f76f6; }
body.homepage-personal .hp-prompt-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
body.homepage-personal #promptTextarea {
  display:block;
  position:static;
  visibility:visible;
  opacity:1;
  width:100%;
  height:112px;
  min-height:112px;
  max-height:260px;
  margin:0;
  padding:16px 0 18px;
  color:#223c43;
  background:transparent;
  border:0;
  border-radius:0;
  outline:none;
  box-shadow:none;
  font:400 17px/1.5 "Josefin Sans",sans-serif;
  letter-spacing:0;
  resize:none;
  overflow-y:auto;
}
body.homepage-personal #promptTextarea::placeholder { color:#506776; opacity:1; }
body.homepage-personal .hp-prompt-actions { display:flex; align-items:center; justify-content:flex-end; gap:16px; width:100%; min-width:0; margin:0; padding:16px 0 0; }
body.homepage-personal #startProjectBtn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  position:static;
  align-self:center;
  width:auto;
  min-width:122px;
  max-width:100%;
  gap:20px;
  min-height:44px;
  margin:0;
  padding:13px 17px 10px;
  color:#194b35;
  background:linear-gradient(120deg,#8beab0,#baf2ce);
  border:1px solid rgba(39,118,91,.13);
  border-radius:11px;
  box-shadow:none;
  font:600 14px/1.2 "Josefin Sans",sans-serif;
  letter-spacing:0;
  white-space:nowrap;
  transform:none;
  cursor:pointer;
}
body.homepage-personal #startProjectBtn:hover { background:#9deec0; border-color:rgba(39,118,91,.28); }
body.homepage-personal #startProjectBtn span { font-size:20px; line-height:1; }
body.homepage-personal #hp-prompt-status { margin:0; padding:12px 0 0; color:#9b3030; font-size:13px; line-height:1.5; }
body.homepage-personal .hp-starters { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px; margin:18px 0 0; }
body.homepage-personal .hp-starters button { min-height:40px; margin:0; padding:12px 15px 9px; color:#3d5d63; background:rgba(255,255,255,.34); border:1px solid rgba(49,82,84,.12); border-radius:999px; box-shadow:none; font:400 13px/1.3 "Josefin Sans",sans-serif; cursor:pointer; }
body.homepage-personal .hp-starters button:hover { background:rgba(255,255,255,.8); border-color:rgba(49,82,84,.25); }
body.homepage-personal .hp-trial-note { margin:20px 0 0; color:#51676d; font-size:12px; line-height:1.65; }
body.homepage-personal .hp-trial-note a { color:inherit; }

/* Demonstrate a real interaction instead of adding marketing decoration. */
body.homepage-personal .hp-example-section { display:grid; grid-template-columns:.9fr 1fr; align-items:center; gap:80px; width:min(1080px,calc(100% - 64px)); margin:0 auto; padding:110px 0; background:none; border:0; }
body.homepage-personal .hp-example-copy h2 { margin:0 0 20px; font-size:clamp(36px,4.1vw,50px); font-weight:500; line-height:1.12; letter-spacing:-.045em; }
body.homepage-personal .hp-example-copy > p { max-width:28ch; margin:0 0 24px; color:var(--hp-copy); font-size:18px; line-height:1.65; }
body.homepage-personal .hp-link { display:inline-flex; align-items:center; gap:12px; width:fit-content; padding:8px 0; color:var(--hp-green); background:none; border:0; border-radius:0; box-shadow:none; font-size:15px; font-weight:600; line-height:1.5; text-decoration:none; }
body.homepage-personal .hp-link:hover { text-decoration:underline; }
body.homepage-personal .hp-calculator { min-width:0; padding:28px; color:var(--hp-ink); background:#fff; border:1px solid var(--hp-line); border-radius:20px; box-shadow:0 18px 60px rgba(39,70,68,.07); }
body.homepage-personal .hp-calculator-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 27px; }
body.homepage-personal .hp-calculator-heading h3 { margin:0; font-size:20px; font-weight:600; line-height:1.3; letter-spacing:-.025em; }
body.homepage-personal .hp-calculator-heading > span { flex:none; padding:6px 8px 4px; border-radius:5px; background:#eef5f0; color:#4e7460; font-size:10px; line-height:1.2; }
body.homepage-personal #hp-quote-form { display:block; width:100%; max-width:none; margin:0; padding:0; border:0; background:transparent; box-shadow:none; }
body.homepage-personal #hp-quote-form label { display:block; margin:0; color:#4b6166; font-size:14px; font-weight:400; line-height:1.5; }
body.homepage-personal #hp-service { display:block; box-sizing:border-box; width:100%; height:46px; margin:9px 0 24px; padding:10px 12px; color:var(--hp-ink); background:#f9fbf9; border:1px solid #dce5df; border-radius:9px; box-shadow:none; font-size:15px; }
body.homepage-personal .hp-range-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
body.homepage-personal #hp-room-count { color:var(--hp-green); font-size:14px; font-variant-numeric:tabular-nums; }
body.homepage-personal #hp-rooms { display:block; width:100%; height:24px; margin:10px 0 20px; padding:0; border:0; box-shadow:none; accent-color:#3b8460; cursor:pointer; }
body.homepage-personal #hp-quote-form .hp-checkbox { display:flex; align-items:center; gap:10px; min-height:44px; margin:0 0 22px; cursor:pointer; }
body.homepage-personal .hp-checkbox input { flex:none; width:17px; height:17px; margin:0; padding:0; accent-color:#3b8460; }
body.homepage-personal .hp-checkbox strong { margin-left:auto; color:#496158; font-size:13px; font-weight:500; }
body.homepage-personal .hp-estimate { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; padding:20px; background:#edf7f0; border:1px solid #e1eee4; border-radius:12px; }
body.homepage-personal .hp-estimate > span { color:#4d6c58; font-size:14px; }
body.homepage-personal .hp-estimate > div { display:flex; align-items:baseline; gap:7px; }
body.homepage-personal #hp-quote-total { color:#205438; font-size:36px; font-weight:600; line-height:1.1; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
body.homepage-personal .hp-estimate > div > span { color:#567360; font-size:12px; }
body.homepage-personal .hp-demo-note { margin:15px 0 0; color:#758079; font-size:11px; line-height:1.5; text-align:center; }
body.homepage-personal .hp-storage-note { margin-top:12px; color:#9b3030; font-size:13px; }

/* A consistent reading width and quieter supporting sections. */
body.homepage-personal .hp-how { width:min(1080px,calc(100% - 64px)); margin:0 auto; padding:64px 0 70px; background:none; border:0; border-top:1px solid var(--hp-line); border-bottom:1px solid var(--hp-line); text-align:left; }
body.homepage-personal .hp-how h2, body.homepage-personal .hp-faq h2 { margin:0; font-size:clamp(28px,3vw,36px); font-weight:500; line-height:1.2; letter-spacing:-.035em; }
body.homepage-personal .hp-how-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:32px 0 18px; padding:0; list-style:none; }
body.homepage-personal .hp-how-steps li { display:flex; align-items:center; gap:16px; margin:0; padding:0; background:transparent; border:0; box-shadow:none; }
body.homepage-personal .hp-step-label { display:inline-flex; align-items:center; justify-content:center; flex:none; width:36px; height:36px; padding-top:2px; color:#547265; background:#edf3ee; border:1px solid #e1e9e1; border-radius:50%; font-size:11px; }
body.homepage-personal .hp-how-steps h3 { margin:0; font-size:19px; font-weight:500; line-height:1.4; letter-spacing:-.02em; }
body.homepage-personal .hp-faq { display:grid; grid-template-columns:.8fr 1.4fr; align-items:start; gap:80px; width:min(1080px,calc(100% - 64px)); margin:0 auto; padding:90px 0; border:0; background:none; }
body.homepage-personal .hp-faq > div > .hp-link { margin-top:18px; }
body.homepage-personal .hp-faq-list { min-width:0; }
body.homepage-personal .hp-faq details { margin:0; padding:0; background:none; border:0; border-bottom:1px solid var(--hp-line); border-radius:0; box-shadow:none; }
body.homepage-personal .hp-faq details:first-child { border-top:1px solid var(--hp-line); }
body.homepage-personal .hp-faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:68px; margin:0; padding:20px 0; color:var(--hp-ink); font-size:17px; font-weight:500; line-height:1.4; list-style:none; cursor:pointer; }
body.homepage-personal .hp-faq summary::-webkit-details-marker { display:none; }
body.homepage-personal .hp-faq summary::after { content:"+"; flex:none; width:20px; color:#73867e; font-size:24px; font-weight:400; text-align:center; }
body.homepage-personal .hp-faq details[open] summary::after { content:"-"; }
body.homepage-personal .hp-faq details p { margin:0; padding:0 30px 24px 0; color:var(--hp-copy); font-size:15px; line-height:1.8; }
body.homepage-personal .hp-faq details a { color:var(--hp-green); }
body.homepage-personal .hp-end { display:flex; flex-direction:column; align-items:center; gap:0; width:100%; margin:0; padding:76px 24px; background:linear-gradient(135deg,#edf6ed,#eaf0f8); border:0; border-radius:0; text-align:center; }
body.homepage-personal .hp-end h2 { margin:0 0 23px; font-size:clamp(32px,4vw,44px); font-weight:500; line-height:1.15; letter-spacing:-.04em; }
body.homepage-personal .hp-button { display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:46px; margin:0; padding:15px 22px 12px; color:#fff; background:var(--hp-ink); border:1px solid var(--hp-ink); border-radius:10px; box-shadow:none; font-size:15px; font-weight:500; line-height:1.2; text-decoration:none; }
body.homepage-personal .hp-button:hover { background:#2d5058; border-color:#2d5058; }
body.homepage-personal .dividy-site-footer { margin:0; padding-bottom:88px; border-top:1px solid var(--hp-line); background:var(--hp-paper); }
body.homepage-personal .dividy-site-footer-inner { box-sizing:border-box; width:min(1080px,calc(100% - 64px)); max-width:1080px; margin:0 auto; padding:28px 0; }

/* Keep the primary action available after the hero input has scrolled away. */
body.homepage-personal .hp-sticky-start {
  display:inline-flex;
  position:fixed;
  z-index:90;
  left:50%;
  bottom:calc(24px + env(safe-area-inset-bottom,0px));
  align-items:center;
  justify-content:center;
  gap:24px;
  box-sizing:border-box;
  width:max-content;
  max-width:calc(100% - 40px);
  min-height:50px;
  margin:0;
  padding:17px 25px 14px;
  color:#194b35;
  background:linear-gradient(120deg,#77f2a1,#b0f5c8);
  border:1px solid rgba(255,255,255,.8);
  border-radius:999px;
  box-shadow:0 8px 28px rgba(27,71,53,.18);
  font-size:15px;
  font-weight:600;
  line-height:1.3;
  text-align:center;
  text-decoration:none;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,24px);
  transition:opacity .26s ease,transform .36s cubic-bezier(.22,1,.36,1),visibility 0s linear .36s;
}
body.homepage-personal .hp-sticky-start.is-visible { opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%,0); transition-delay:0s; }
body.homepage-personal .hp-sticky-start:hover { background:linear-gradient(120deg,#8bf5b0,#c0f8d5); }
body.homepage-personal .hp-sticky-start:focus-visible { outline:3px solid #315cd3; outline-offset:4px; }
body.homepage-personal .hp-sticky-start span { font-size:20px; line-height:1; }

@media (max-width:760px) {
  body.homepage-personal .hp-example-section { grid-template-columns:1fr; gap:32px; width:calc(100% - 48px); padding:72px 0; }
  body.homepage-personal .hp-example-copy h2 { font-size:38px; }
  body.homepage-personal .hp-example-copy h2 br { display:none; }
  body.homepage-personal .hp-example-copy > p { max-width:none; margin-bottom:14px; }
  body.homepage-personal .hp-calculator { width:100%; max-width:560px; justify-self:center; }
  body.homepage-personal .hp-how { width:calc(100% - 48px); padding:48px 0; }
  body.homepage-personal .hp-how-steps { gap:16px; }
  body.homepage-personal .hp-how-steps li { flex-direction:column; align-items:flex-start; gap:13px; }
  body.homepage-personal .hp-faq { grid-template-columns:1fr; gap:28px; width:calc(100% - 48px); padding:64px 0; }
  body.homepage-personal .hp-faq > div > .hp-link { margin-top:8px; }
}
@media (max-width:480px) {
  body.homepage-personal .hp-sticky-start { bottom:calc(64px + env(safe-area-inset-bottom,0px)); }
  body.homepage-personal .dividy-site-footer { padding-bottom:132px; }
  body.homepage-personal #homeheader { min-height:70px; padding:12px 18px; }
  body.homepage-personal #homeheader #headerlogo { width:112px; }
  body.homepage-personal #homeheader nav { gap:5px; }
  body.homepage-personal #homeheader :is(#loginhome,#signuphome) { min-height:44px; padding:12px 13px 10px; font-size:13px; }
  body.homepage-personal .hp-intro.top-prompt-inner { width:calc(100% - 36px); padding:22px 0 72px; }
  body.homepage-personal .hp-main #hp-title { max-width:12ch; margin-bottom:17px; font-size:40px; line-height:1.08; }
  body.homepage-personal .hp-lead { max-width:30ch; margin-bottom:25px; font-size:16px; line-height:1.6; }
  body.homepage-personal #home-prompt { margin-top:0; border-radius:0; }
  body.homepage-personal .hp-prompt-surface { border-radius:0; }
  body.homepage-personal #promptTextarea { height:118px; min-height:118px; padding:16px 0; border-radius:0; font-size:16px; }
  body.homepage-personal .hp-prompt-actions { gap:12px; padding:14px 0 0; }
  body.homepage-personal #startProjectBtn { min-width:110px; gap:12px; padding:13px 14px 10px; }
  body.homepage-personal .hp-starters { gap:6px; margin-top:16px; }
  body.homepage-personal .hp-starters button { min-height:44px; padding:12px 11px 10px; font-size:12px; }
  body.homepage-personal .hp-trial-note { max-width:39ch; margin-top:18px; font-size:11px; }
  body.homepage-personal .hp-example-section, body.homepage-personal .hp-how, body.homepage-personal .hp-faq { width:calc(100% - 40px); }
  body.homepage-personal .hp-calculator { padding:22px 18px; }
  body.homepage-personal .hp-calculator-heading h3 { font-size:18px; }
  body.homepage-personal .hp-how-steps { gap:12px; }
  body.homepage-personal .hp-how-steps h3 { font-size:17px; }
  body.homepage-personal .hp-faq summary { font-size:16px; }
  body.homepage-personal .hp-end { padding:64px 20px; }
  body.homepage-personal .dividy-site-footer-inner { width:calc(100% - 40px); }
}
@keyframes hp-sky-unfold {
  0% { opacity:0; transform:translate3d(0,36%,0) scale(1.12,1.08); }
  35% { opacity:1; }
  75% { transform:translate3d(0,-1%,0) scale(1.01,1.02); }
  100% { opacity:1; transform:translate3d(0,0,0) scale(1); }
}
@keyframes hp-ground-unfold {
  0% { opacity:0; transform:translate3d(-6%,40%,0) scale(1.15,1.08); }
  32% { opacity:1; }
  76% { transform:translate3d(1%,-1%,0) scale(1.02,1); }
  100% { opacity:1; transform:translate3d(0,0,0) scale(1); }
}
@media (prefers-reduced-motion:reduce) {
  body.homepage-personal .hp-sticky-start { transition:none; transform:translate(-50%,0); }
  body.homepage-personal .hp-welcome::before, body.homepage-personal .hp-welcome::after { animation:none; }
  body.homepage-personal #home-prompt, body.homepage-personal .hp-prompt-surface { transition:none; }
}

/* Keep every homepage call to action in the Div-idy brand palette. */
body.homepage-personal {
  --hp-cta-green: #77f2a1;
  --hp-cta-green-light: #b0f5c8;
  --hp-cta-ink: #194b35;
  --hp-cta-blue: #3157b7;
  --hp-cta-blue-hover: #23489c;
}

body.homepage-personal a.hp-button,
body.homepage-personal #home-prompt #startProjectBtn,
body.homepage-personal #hp-sticky-start {
  background: linear-gradient(120deg, var(--hp-cta-green), var(--hp-cta-green-light));
  color: var(--hp-cta-ink);
  border-color: rgba(39, 118, 91, 0.17);
}

body.homepage-personal a.hp-button:hover,
body.homepage-personal #home-prompt #startProjectBtn:hover:not(:disabled),
body.homepage-personal #hp-sticky-start:hover {
  background: linear-gradient(120deg, #64e990, #9befb8);
  color: var(--hp-cta-ink);
  border-color: rgba(39, 118, 91, 0.3);
}

body.homepage-personal #main-content a:not(.hp-button) {
  color: var(--hp-cta-blue);
  text-decoration-color: currentColor;
}

body.homepage-personal #main-content a:not(.hp-button):hover {
  color: var(--hp-cta-blue-hover);
  text-decoration: underline;
  text-underline-offset: 4px;
}

body.homepage-personal #main-content a:focus-visible,
body.homepage-personal #home-prompt #startProjectBtn:focus-visible,
body.homepage-personal #hp-sticky-start:focus-visible {
  outline: 3px solid #4f76f6;
  outline-offset: 4px;
}
