.home-customization {
  border-top: 2px solid var(--cf-ink);
  scroll-margin-top: 6rem;
}
.home-custom-intro { display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem; }
.home-custom-intro > div { max-width: 42rem; }
.home-custom-intro > a { flex-shrink: 0; }
.home-ink-brass .home-custom-link {
  color: var(--cf-ink);
  text-decoration: underline;
  text-decoration-color: var(--brass);
  text-decoration-thickness: 2px;
  text-underline-offset: .25em;
}
.home-ink-brass .home-custom-link:hover { text-decoration-color: var(--cf-ink); }
.home-custom-link:focus-visible { outline: 3px solid var(--cf-ink); outline-offset: 4px; }
.home-custom-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; margin-right: 3px; }
.home-custom-card { display: flex; flex-direction: column; min-width: 0; border: 2px solid var(--cf-ink); border-radius: 10px; background: var(--cf-surface); overflow: hidden; }
body.cf-ink-brass .home-ink-brass .home-custom-card { box-shadow: 3px 3px 0 var(--cf-ink) !important; }
.home-custom-art { display: flex; justify-content: center; align-items: center; height: 240px; flex: 0 0 240px; padding: 1.5rem; border-bottom: 2px solid var(--cf-ink); background: var(--cf-surface); }
.home-custom-copy { padding: 1.5rem; }
.home-custom-plan { color: var(--cf-muted); font-weight: 600; }
.home-custom-colors { flex-direction: column; gap: 1rem; background-color: var(--sample-page); background-image: var(--sample-pattern); background-size: var(--sample-scale) var(--sample-scale); }
.home-custom-color-sheet { width: 100%; max-width: 330px; background: var(--cf-surface); border: 2px solid var(--cf-ink); border-radius: 10px; overflow: hidden; }
.home-custom-color-heading { padding: .75rem 1rem; background: var(--cf-ink); color: var(--cf-surface); }
.home-custom-color-row { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: 1rem; font-size: .875rem; }
.home-custom-color-row > div { display: grid; gap: .25rem; }
.home-custom-color-row .fs-micro { color: var(--cf-muted); }
.home-custom-color-row .home-custom-color-action { padding: .35rem .65rem; background: var(--sample-accent); color: var(--sample-action-ink); border-radius: 6px; white-space: nowrap; }
.home-custom-color-controls { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem 1rem; padding: .45rem .75rem; background: var(--cf-surface); border: 1px solid var(--cf-border); border-radius: 6px; }
.home-custom-color-controls > span { display: inline-flex; align-items: center; gap: .4rem; }
.home-custom-color-chip { width: 1rem; height: 1rem; border: 1px solid var(--cf-control-border); border-radius: 50%; }
.home-custom-chip-accent { background: var(--sample-accent); }
.home-custom-chip-page { background: var(--sample-page); }
.home-custom-chip-pattern { background: var(--sample-pattern-color); }
.home-custom-holidays { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-content: center; align-items: stretch; gap: .75rem; background: var(--cf-page); }
.home-custom-season { overflow: hidden; border: 1px solid var(--cf-ink); border-radius: 8px; background: var(--cf-surface); }
.home-custom-season-canvas { display: grid; place-items: center; min-height: 110px; padding: .75rem; background-color: var(--sample-page); background-image: var(--sample-pattern); background-size: var(--sample-scale) var(--sample-scale); border-bottom: 1px solid var(--cf-border); }
.home-custom-season-sheet { display: grid; gap: .4rem; width: 100%; max-width: 100px; padding: .65rem; border: 1px solid var(--cf-border); border-top: .5rem solid var(--cf-ink); border-radius: 5px; background: var(--cf-surface); }
.home-custom-season-sheet > span { height: 4px; background: var(--cf-border); border-radius: 2px; }
.home-custom-season-sheet > span:nth-child(2) { width: 75%; }
.home-custom-season-sheet > b { width: 60%; height: 10px; margin-top: .2rem; background: var(--sample-accent); border-radius: 3px; }
.home-custom-season-name { display: block; padding: .6rem .5rem; line-height: 1.4; }
.home-custom-template-art { position: relative; isolation: isolate; background: var(--cf-brass-wash); }
.home-custom-template { position: relative; width: 100%; max-width: 330px; padding: 1rem 1.25rem; border: 1px solid var(--cf-ink); border-radius: 8px; background: var(--cf-surface); }
.home-custom-template::before, .home-custom-template::after { position: absolute; z-index: -1; content: ""; inset: -6px 6px 6px -6px; border: 1px solid var(--cf-ink); border-radius: inherit; background: var(--cf-surface); }
.home-custom-template::before { inset: -12px 12px 12px -12px; }
.home-custom-template-label { color: var(--cf-muted); letter-spacing: .04em; }
.home-custom-template-row { display: flex; justify-content: space-between; gap: 1rem; padding: .35rem 0; border-top: 1px solid var(--cf-border); }
.home-custom-template-limits { padding-top: .75rem; border-top: 1px solid var(--cf-border); }
.home-custom-wording { gap: 1.5rem; background: var(--cf-page); }
.home-custom-wording-original { display: flex; align-items: center; gap: 1rem; color: var(--cf-muted); }
.home-custom-wording-original > span { font-size: 1.5rem; }
.home-custom-wording-options { display: grid; gap: .75rem; }
.home-custom-wording-action { display: block; padding: .5rem 1rem; border: 2px solid var(--cf-ink); border-radius: 6px; background: var(--brass); color: var(--cf-ink); font-size: .875rem; text-align: center; }
.home-custom-wording-action:nth-child(2) { background: var(--cf-surface); }
.home-custom-wording-action:nth-child(3) { background: var(--cf-brass-soft); }
@media (max-width: 991.98px) {
  .home-custom-intro { flex-direction: column; align-items: flex-start; gap: 1rem; }
  .home-custom-art, .home-custom-copy { padding: 1.25rem; }
  .home-custom-holidays { gap: .5rem; }
}
@media (max-width: 767.98px) {
  .home-custom-grid { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
}
@media (max-width: 359.98px) {
  .home-custom-art, .home-custom-copy { padding: 1rem; }
  .home-custom-holidays { padding-inline: .75rem; gap: .4rem; }
  .home-custom-season-canvas { padding: .5rem; }
  .home-custom-season-name { padding: .5rem .35rem; }
}
