/* Homepage presentation stays scoped to the shared site width and type scale. */
body[data-site-page="home"] .home-shell { background: linear-gradient(180deg, #faf5ed 0, #fffdfb 1000px); }
body[data-site-page="home"] .hero-section { row-gap: 24px; column-gap: 40px; padding-block: 32px 36px; border-bottom: 0; }
.home-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; color: var(--accent-dark); font-size: 13px; font-weight: 600; letter-spacing: .08em; }
.home-eyebrow::before { width: 24px; height: 1px; background: #b38459; content: ""; }
body[data-site-page="home"] .hero-description { margin-block: 16px; }
body[data-site-page="home"] .hero-carousel { grid-column: 2; grid-row: 1; }
body[data-site-page="home"] .hero-track { height: clamp(270px, 23vw, 340px); aspect-ratio: auto; border-radius: 18px; box-shadow: 0 12px 30px #48352112; }
body[data-site-page="home"] .hero-slide img { border-color: #d9cbb9; border-radius: 18px; }
.home-guide-links { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.home-guide-links a { display: inline-flex; align-items: center; gap: 10px; min-height: 36px; color: var(--accent-dark); font-size: 15px; }
.home-guide-links a:hover { text-decoration: underline; text-underline-offset: 4px; }

/* Starting actions precede both complete paths in the visual and keyboard order. */
.home-paths { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.home-route { min-width: 0; padding: 24px; border: 1px solid #e3d7c9; border-radius: 16px; background: #fff; box-shadow: 0 5px 20px #48352106; }
.home-route--direct { border-color: #caaa88; }
.home-route--ai { background: #f5f8f5; border-color: #d6e0d8; }
.home-route-heading { display: flex; align-items: center; gap: 12px; }
.home-route-icon { display: grid; place-items: center; flex-shrink: 0; width: 40px; height: 40px; border-radius: 11px; background: #f6ebdd; color: var(--accent-dark); }
.home-route--ai .home-route-icon { color: #405d50; background: #e5eee7; }
.home-route-icon svg { width: 24px; height: 24px; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.home-route h2 { margin: 0; color: var(--accent-dark); font-size: 24px; line-height: 1.4; }
.home-route header > p { margin: 12px 0 0; color: var(--muted); font-size: 16px; line-height: 1.65; }
body[data-site-page="home"] .home-route .hero-actions { width: 100%; max-width: none; margin-top: 18px; }
body[data-site-page="home"] .home-route .home-mode-link { min-height: 76px; padding: 14px 16px; border-radius: 10px; }
body[data-site-page="home"] .home-route .home-mode-link strong { font-size: 17px; }
body[data-site-page="home"] .home-route .home-mode-link small { font-size: 13px; }
body[data-site-page="home"] .home-route .home-mode-link--platform { background: #8b4f1c; border-color: #8b4f1c; }
body[data-site-page="home"] .home-route .home-mode-link--platform:hover { background: #713e16; border-color: #713e16; }
.home-ai-actions { display: flex; flex-wrap: wrap; align-items: stretch; gap: 10px; margin-top: 18px; }
body[data-site-page="home"] .home-route .home-ai-link { min-height: 48px; margin-top: 0; padding-inline: 22px; border-color: #405d50; color: #fff; background: #405d50; }
body[data-site-page="home"] .home-route .home-ai-link:hover { background: #30483d; }
.home-ai-ready { display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; max-width: 100%; padding: 10px 16px; border: 1px solid #8ca397; border-radius: 9px; color: #345344; background: #fff; font-size: 14px; font-weight: 600; line-height: 1.5; }
.home-ai-ready:hover { background: #eaf1eb; }
.home-route-note { margin: 12px 0 0; color: #625b52; font-size: 14px; line-height: 1.6; }
.home-ai-next strong { color: #345344; font-weight: 600; }
.home-route-footer { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 4px 24px; margin-top: -14px; }
body[data-site-page="home"] .home-route-footer .hero-resume { margin: 0; min-height: 44px; }

/* Full paths are numbered and grouped; wrapping no longer breaks a chain of arrows. */
.home-path-flows { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.home-flow { min-width: 0; padding: 22px; border-top: 2px solid #caaa88; border-radius: 0 0 12px 12px; background: #fffaf5; }
.home-flow--ai { border-top-color: #8ca397; background: #f5f8f5; }
.home-flow h3 { margin: 0 0 20px; color: #514537; font-size: 18px; line-height: 1.5; }
.home-flow--ai h3 { color: #345344; }
.home-route-steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 16px; margin: 0; padding: 0; list-style: none; counter-reset: path-step; color: #544b42; font-size: 15px; line-height: 1.6; }
.home-route-steps li { position: relative; min-width: 0; padding-left: 34px; counter-increment: path-step; }
.home-route-steps li::before { position: absolute; top: 0; left: 0; display: grid; place-items: center; width: 25px; height: 25px; border: 1px solid #cfbda8; border-radius: 50%; color: var(--accent-dark); background: #fffaf4; font-size: 12px; font-weight: 600; content: counter(path-step); }
.home-flow--ai .home-route-steps li::before { border-color: #c4d2c8; color: #405d50; background: #f5f8f5; }
.home-route-steps a { color: var(--accent-dark); text-decoration: underline; text-underline-offset: 3px; }
.home-route-steps strong { display: block; font-size: 14px; font-weight: 600; }
.home-route-steps small { display: block; margin-top: 4px; font-size: 13px; color: var(--muted); }
body[data-site-page="home"] :is(#making-paths, #process-title, #pricing-title) { scroll-margin-top: 24px; }

/* Product imagery and section rhythm distinguish the explanatory content from entry cards. */
body[data-site-page="home"] .home-section { padding-block: 54px; border-bottom: 0; }
body[data-site-page="home"] .home-section-heading { align-items: flex-end; margin-bottom: 28px; }
body[data-site-page="home"] .home-section-heading .home-eyebrow { margin: 0 0 12px; color: var(--accent-dark); font-size: 13px; line-height: 1.5; }
body[data-site-page="home"] .home-section-heading > div > p:last-child { max-width: 760px; }
.home-process-card { --method-padding: 24px; overflow: hidden; padding: var(--method-padding); border-color: #e3d8cc; border-radius: 16px; box-shadow: 0 8px 24px #48352108; }
.home-method-image { display: block; width: calc(100% + var(--method-padding) * 2); max-width: none; height: 200px; margin: calc(-1 * var(--method-padding)) calc(-1 * var(--method-padding)) 24px; object-fit: cover; object-position: center 55%; }
body[data-site-page="home"] .home-process-card h3 { font-size: 23px; }
.home-method-label { padding: 5px 12px; border-radius: 99px; font-size: 13px; }
.home-process-note { padding-left: 12px; border-left: 2px solid #d4b796; }
.home-fee-grid article { padding: 28px; border-color: #ddcbb6; border-radius: 14px; }
.home-fee-label { display: inline-block; padding: 5px 10px; border-radius: 6px; background: #f4e8d8; }
.home-fee-grid h3 { margin-top: 16px; font-size: 22px; }
.home-pricing-notes { padding-top: 20px; }
.home-faq-grid { gap: 0 32px; }
.home-faq details { border: 0; border-bottom: 1px solid #e3d8cc; border-radius: 0; background: transparent; }
.home-faq summary { padding: 20px 8px; }
.home-faq details p { padding: 0 8px 20px; }

@media (max-width: 1280px) {
  body[data-site-page="home"] .hero-section { column-gap: 28px; }
  .home-route h2 { font-size: 22px; }
}
@media (max-width: 980px) {
  body[data-site-page="home"] .hero-section { row-gap: 24px; }
  body[data-site-page="home"] .hero-carousel { grid-column: 1; grid-row: 4; }
  body[data-site-page="home"] .hero-track { height: auto; aspect-ratio: 2.16 / 1; }
  .home-paths { grid-row: 2; }
  .home-route-footer { grid-row: 3; }
  .home-path-flows { grid-row: 5; }
  .home-route { padding: 20px; }
  .home-route-heading { gap: 10px; }
  .home-route-icon { width: 34px; height: 34px; border-radius: 9px; }
  .home-route h2 { font-size: 20px; }
  body[data-site-page="home"] .home-route .home-mode-link { padding-inline: 12px; }
  body[data-site-page="home"] .home-route .home-mode-link strong { font-size: 16px; }
  body[data-site-page="home"] .home-route .home-mode-link small { font-size: 12px; }
  .home-flow { padding: 20px; }
  .home-route-steps { gap: 18px 12px; }
}
@media (max-width: 768px) {
  .home-paths { grid-template-columns: 1fr; gap: 14px; }
  .home-path-flows { grid-template-columns: 1fr; }
  .home-route-footer { margin-top: -8px; }
  .home-process-grid, .home-fee-grid, .home-faq-grid { grid-template-columns: 1fr; }
  .home-method-image { height: clamp(180px, 33vw, 240px); }
}
@media (max-width: 620px) {
  body[data-site-page="home"] .hero-section { row-gap: 20px; padding-block: 24px 30px; }
  .home-eyebrow { margin-bottom: 10px; font-size: 12px; }
  body[data-site-page="home"] .hero-description { margin-block: 12px; }
  .home-guide-links { gap: 6px 20px; }
  .home-guide-links a { font-size: 14px; }
  .home-route { padding: 18px; border-radius: 12px; }
  .home-route h2 { font-size: 20px; }
  .home-route header > p { margin-top: 10px; font-size: 15px; }
  body[data-site-page="home"] .home-route .hero-actions, .home-ai-actions { margin-top: 14px; }
  body[data-site-page="home"] .home-route .home-mode-link { min-height: 70px; padding: 12px; }
  .home-route-note { margin-top: 10px; font-size: 13px; }
  .home-route-footer { gap: 0 20px; }
  body[data-site-page="home"] .home-route-footer :is(.home-text-link, .hero-resume) { font-size: 13px; }
  .home-path-flows { gap: 20px; }
  .home-flow { padding: 18px; }
  .home-flow h3 { font-size: 17px; }
  .home-route-steps { grid-template-columns: 1fr; gap: 16px; font-size: 14px; }
  .home-route-steps li { padding-left: 30px; }
  .home-route-steps li::before { width: 22px; height: 22px; }
  body[data-site-page="home"] .home-section { padding-block: 34px; }
  body[data-site-page="home"] .home-section-heading { align-items: flex-start; flex-direction: column; gap: 8px; margin-bottom: 22px; }
  .home-process-card { --method-padding: 20px; }
  body[data-site-page="home"] .home-process-card h3 { font-size: 21px; }
  .home-fee-grid article { padding: 22px; }
  .home-fee-grid h3 { font-size: 20px; }
}
@media (max-width: 380px) {
  .home-route { padding: 16px; }
  .home-route h2 { font-size: 19px; }
  body[data-site-page="home"] .home-route .home-mode-link { padding-inline: 8px; }
  body[data-site-page="home"] .home-route .home-mode-link strong { font-size: 14px; gap: 4px; }
  body[data-site-page="home"] .home-route .home-mode-link strong span { font-size: 16px; }
}

/* New creation and returning tasks are distinct, in document and visual order. */
body[data-site-page="home"] .hero-section { grid-template-columns:minmax(0,1fr); gap:26px; }
body[data-site-page="home"] .hero-copy h1 { font-size:clamp(30px,3.4vw,48px); color:#542a11; letter-spacing:0; }
body[data-site-page="home"] .hero-copy .home-eyebrow, .home-guide-links { display:none; }
body[data-site-page="home"] .hero-description { margin:10px 0 0; }
.home-paths { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); grid-row:auto; }
.home-route { display:flex; flex-direction:column; padding:28px; }
.home-route-heading { align-items:center; }
.home-route-icon { width:54px; height:54px; }
.home-route h2 { font-size:clamp(21px,2.1vw,30px); }
.home-route--ai h2 { color:#345344; }
.home-route-eyebrow { margin:0 0 6px; color:var(--accent-dark); font-size:13px; font-weight:600; }
.home-route--ai .home-route-eyebrow { color:#405d50; }
.home-route header { margin-bottom:22px; }
body[data-site-page="home"] .home-route .hero-actions, .home-ai-actions { display:grid; grid-template-columns:1fr; width:100%; margin-top:auto; }
body[data-site-page="home"] .home-route .home-mode-link, body[data-site-page="home"] .home-route .home-ai-link { display:flex; justify-content:center; align-items:center; gap:14px; min-height:54px; padding:14px 18px; border-radius:9px; font-size:18px; font-weight:600; }
body[data-site-page="home"] .home-route .home-mode-link strong { justify-content:center; gap:14px; }
.home-returning { min-width:0; margin-top:6px; }
.home-returning h2 { margin:0; color:#542a11; font-size:28px; }
.home-returning header > p { margin:8px 0 18px; color:var(--muted); font-size:16px; line-height:1.6; }
.home-return-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.home-return-links > a { display:flex; align-items:center; gap:16px; padding:20px; border:1px solid #d8b99b; border-radius:12px; background:#fff; }
.home-return-icon { display:grid; place-items:center; flex:none; width:48px; height:48px; border-radius:12px; background:#f9f2e9; color:#8b4f1c; }
.home-return-icon svg { width:29px; height:29px; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.home-return-links strong { color:#633716; font-size:18px; }
.home-return-links p { margin:7px 0 0; color:var(--muted); font-size:14px; line-height:1.6; }
.home-return-links > a > span:last-child { margin-left:auto; color:#8b4f1c; font-size:24px; }
.home-return-links a:hover { background:#fff9f2; border-color:#a4642b; }
.home-review-reminder { display:flex; align-items:center; gap:18px; padding:18px 22px; margin-bottom:16px; border:1px solid #e3aa70; border-radius:12px; background:#fff5e9; color:#9a4a13; }
.home-review-reminder[hidden] { display:none; }
.home-review-reminder > div { min-width:0; }
.home-review-reminder strong { font-size:19px; }
.home-review-reminder p { margin:6px 0 0; color:#735b48; font-size:14px; line-height:1.6; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.home-review-reminder > a { flex:none; margin-left:auto; padding:12px 18px; border:1px solid #b96b28; border-radius:9px; font-size:16px; font-weight:600; background:#fff; }
.home-review-reminder[data-urgent="true"] { border-color:#d98d78; background:#fff1ec; }
.home-making-strip { display:flex; align-items:center; flex-wrap:wrap; gap:16px 24px; padding:22px; border-radius:14px; background:#f6f0e7; }
.home-making-strip h2 { margin:0; font-size:18px; color:#633716; }
.home-making-strip ol { flex:1; display:flex; justify-content:space-between; gap:16px; padding:0; margin:0; list-style:none; counter-reset:making; }
.home-making-strip li { display:flex; align-items:center; gap:10px; font-size:14px; line-height:1.6; counter-increment:making; }
.home-making-strip li::before { display:grid; place-items:center; flex:none; width:28px; height:28px; border:1px solid #c69c78; border-radius:50%; color:#633716; content:counter(making); }
.home-making-strip p { flex-basis:100%; margin:0; color:#786b5e; font-size:12px; line-height:1.7; }
body[data-site-page="home"] .hero-carousel { grid-column:1; grid-row:auto; margin-top:14px; }
body[data-site-page="home"] .hero-track { height:auto; aspect-ratio:2.4/1; }
@media(max-width:980px) {
 .home-making-strip ol { flex-basis:100%; }
 .home-route { padding:22px; }
 .home-return-links > a { padding:18px; gap:12px; }
}
@media(max-width:768px) {
 .home-paths, .home-return-links { grid-template-columns:1fr; }
 .home-route header > p br { display:none; }
 .home-making-strip ol { display:grid; grid-template-columns:1fr; gap:12px; }
 .home-returning h2 { font-size:24px; }
}
@media(max-width:480px) {
 .home-route { padding:20px; }
 .home-route-icon { width:42px; height:42px; }
 .home-review-reminder { flex-wrap:wrap; gap:12px; padding:16px; }
 .home-review-reminder .home-return-icon { width:36px; height:36px; }
 .home-review-reminder > div { flex:1; }
 .home-review-reminder > a { margin-left:48px; }
 .home-review-reminder strong { font-size:17px; }
 .home-return-links strong { font-size:16px; }
 .home-return-links p { font-size:13px; }
 .home-return-links > a { padding:16px 12px; gap:10px; }
 .home-return-icon { width:38px; height:38px; }
}
@media(max-width:480px) {
 .home-review-reminder > div { flex:1 1 calc(100% - 48px); }
 .home-review-reminder > a { flex:0 0 calc(100% - 48px); text-align:center; }
}
/* Illustrated entry cards: live copy and actions over quiet photographic backdrops. */
.home-paths { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.home-route { position:relative; isolation:isolate; overflow:hidden; min-height:430px; padding:32px; border-radius:24px; box-shadow:none; }
.home-route--direct { background:#fbefe3; border-color:#ead8c5; }
.home-route--ai { background:#e7f1ec; border-color:#d2e4dc; }
.home-route-art { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:right bottom; pointer-events:none; }
.home-route::after { position:absolute; z-index:-1; inset:0; content:""; pointer-events:none; background:linear-gradient(90deg,#fbefe3f2 0%,#fbefe3d9 39%,#fbefe300 72%); }
.home-route--ai::after { background:linear-gradient(90deg,#e7f1ecf2 0%,#e7f1ecd9 39%,#e7f1ec00 72%); }
.home-route-heading { display:block; }
.home-route-icon { width:60px; height:60px; margin-bottom:16px; border-radius:50%; background:#fff9efcf; }
.home-route--ai .home-route-icon { background:#f7fcf9cf; }
.home-route-eyebrow { margin-bottom:7px; }
.home-route h2 { max-width:100%; font-size:clamp(22px,2.05vw,30px); color:#302417; }
.home-route--ai h2 { color:#173c30; }
.home-route header { position:relative; margin-bottom:26px; }
.home-route header > p { max-width:70%; color:#514c44; font-size:16px; line-height:1.8; }
body[data-site-page="home"] .home-route .hero-actions, .home-ai-actions { display:flex; width:auto; margin-top:auto; }
body[data-site-page="home"] .home-route .home-mode-link, body[data-site-page="home"] .home-route .home-ai-link { width:auto; min-width:200px; min-height:54px; padding:14px 25px; border-radius:999px; font-size:17px; box-shadow:0 3px 8px #53331b12; }
body[data-site-page="home"] .home-route .home-mode-link strong { font-size:17px; }
.home-route-note { position:relative; max-width:65%; margin-top:14px; font-size:13px; line-height:1.7; color:#5c5348; }
@media(min-width:769px) and (max-width:1100px) {
 .home-route { min-height:470px; padding:26px; }
 .home-route header > p { max-width:79%; }
 .home-route-note { max-width:72%; }
}
@media(max-width:768px) {
 .home-paths { grid-template-columns:1fr; gap:16px; }
 .home-route { min-height:400px; padding:26px; }
 .home-route h2 { font-size:25px; }
 .home-route header > p { max-width:65%; }
 .home-route-note { max-width:65%; }
}
@media(max-width:480px) {
 .home-route { min-height:440px; padding:22px; border-radius:20px; }
 .home-route-art { object-fit:contain; height:auto; top:auto; bottom:0; }
 .home-route::after { background:linear-gradient(180deg,#fbefe3 0%,#fbefe3f5 41%,#fbefe359 73%,#fbefe300 100%); }
 .home-route--ai::after { background:linear-gradient(180deg,#e7f1ec 0%,#e7f1ecf5 41%,#e7f1ec59 73%,#e7f1ec00 100%); }
 .home-route-icon { width:48px; height:48px; margin-bottom:12px; }
 .home-route h2 { font-size:22px; }
 .home-route header > p { max-width:100%; font-size:15px; line-height:1.75; }
 .home-route header { margin-bottom:22px; }
 body[data-site-page="home"] .home-route .hero-actions, .home-ai-actions { margin-top:0; }
 body[data-site-page="home"] .home-route .home-mode-link, body[data-site-page="home"] .home-route .home-ai-link { min-width:180px; min-height:50px; padding:12px 22px; }
 .home-route-note { max-width:68%; font-size:12px; }
}
@media(min-width:769px) {
 .home-route header > p { max-width:60%; }
}
@media(max-width:480px) {
 .home-route-art { position:static; order:5; z-index:0; flex:none; width:calc(100% + 44px); max-width:none; height:180px; margin:22px -22px -22px; object-fit:cover; object-position:right bottom; }
 .home-route-note { max-width:100%; }
 .home-route::after, .home-route--ai::after { background:none; }
}
/* Keep the entry actions prominent while giving the full-frame carousel room. */
@media(min-width:769px) {
 .home-route { min-height:390px; padding:28px; }
 .home-route header { margin-bottom:18px; }
 .home-route-icon { margin-bottom:12px; }
 .home-route header > p { max-width:66%; }
}
@media(min-width:769px) and (max-width:1100px) {
 .home-route header > p { max-width:86%; }
}
body[data-site-page="home"] .hero-carousel { width:min(1120px,100%); justify-self:center; margin-top:38px; }
body[data-site-page="home"] .hero-track { aspect-ratio:16 / 9; height:auto; }
body[data-site-page="home"] .hero-slide img { object-fit:contain; }
body[data-site-page="home"] .hero-section { padding-bottom:0; }
body[data-site-page="home"] .home-process { padding-top:64px; }
@media(max-width:620px) {
 body[data-site-page="home"] .hero-carousel { margin-top:36px; }
 body[data-site-page="home"] .home-process { padding-top:56px; }
}

.home-making-strip > p strong { font-weight: 700; }
.home-making-strip > p .review-deadline-emphasis { color: #a63d32; }
