/* 2026-10-22 approved reference direction. Homepage header/Hero ONLY.
   Typography/palette tokens, article listings and inner pages stay unchanged. */
body.home .cu-site-header { display: block; max-width: none; padding: 0 40px; border: 0; }
body.home .cu-header-inner { position: relative; display: flex; align-items: center; gap: 30px; box-sizing: border-box; width: 100%; max-width: 1200px; min-height: 104px; margin: 0 auto; border-bottom: 1px solid var(--cu-border); }
body.home .cu-brand-group { margin-right: auto; }
body.home .cu-site-nav { justify-content: flex-end; gap: 30px; }
body.home .cu-site-nav .cu-nav-link { font-size: 14px; font-weight: 500; }
body.home .cu-site-brand { color: var(--cu-purple-950); }
body.home .cu-header-search { flex: none; }
body.home .cu-site-header.cu-header-solid { background: var(--cu-background); backdrop-filter: none; }
body.home .cu-home-intro { align-items: center; min-height: 820px; background: var(--cu-background); }
body.home .cu-home-intro-content { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1fr); align-items: center; gap: 70px; width: min(100% - 80px, 1200px); padding: 190px 0 120px; }
body.home .cu-home-intro-copy { position: relative; z-index: 2; max-width: 510px; }
body.home .cu-home-intro h1 { margin-top: 24px; font-size: clamp(48px, 4.45vw, 64px); line-height: 1.2; letter-spacing: -.035em; text-wrap: balance; }
body.home .cu-hero-label { gap: 12px; font-size: 11px; font-weight: 600; letter-spacing: .12em; }
body.home .cu-hero-label::before { content: ""; flex: none; width: 22px; height: 22px; border-radius: 0; background: var(--cu-terracotta); -webkit-mask: url("rounded-four-petal.svg?v=20261022-3") center / contain no-repeat; mask: url("rounded-four-petal.svg?v=20261022-3") center / contain no-repeat; }
body.home .cu-hero-meta { margin-top: 24px; }
body.home .cu-hero-excerpt { max-width: 455px; margin-top: 20px; color: var(--cu-muted); font-size: 17px; line-height: 1.85; }
body.home .cu-home-intro-actions { align-items: center; gap: 24px; margin-top: 30px; }
body.home .cu-hero-primary { min-height: 54px; padding: 14px 24px; border-radius: 3px; background: var(--cu-purple-950); color: var(--cu-surface); font-size: 16px; }
body.home .cu-hero-primary:hover, body.home .cu-hero-primary:focus-visible { color: var(--cu-surface); }
/* Paper composition: original site artwork, not the reference site's photographs. */
body.home .cu-hero-collage { position: relative; width: min(100%, 520px); aspect-ratio: 1 / 1.06; justify-self: end; isolation: isolate; }
body.home .cu-paper-backing { position: absolute; z-index: -1; inset: 3% -3% -3% -4%; transform: rotate(-3deg); background: #c5c9ac; border-radius: 18% 23% 16% 21% / 26% 18% 28% 20%; }
body.home .cu-paper-photo { position: absolute; inset: 0 3% 2% 3%; box-sizing: border-box; padding: 18px 18px 0; transform: rotate(4deg); background: #fffdf7; box-shadow: 0 10px 26px rgba(41,63,53,.10); }
body.home .cu-paper-caption { display: flex; justify-content: space-between; gap: 8px; margin-bottom: 12px; color: #62695f; font-size: 9px; letter-spacing: .09em; }
body.home .cu-paper-photo img { display: block; width: 100%; height: calc(100% - 84px); min-height: 0; object-fit: cover; }
body.home .cu-paper-photo-bottom { display: flex; align-items: center; justify-content: space-between; min-height: 58px; gap: 8px; color: #456451; font-size: 11px; }
body.home .cu-paper-note { position: absolute; z-index: 2; display: flex; flex-direction: column; gap: 10px; box-sizing: border-box; padding: 18px 16px; color: var(--cu-purple-950); box-shadow: 0 4px 10px rgba(41,63,53,.06); }
body.home .cu-paper-note::before { content: ""; position: absolute; top: -10px; left: 29%; width: 42%; height: 20px; background: rgba(205,189,142,.48); transform: rotate(-6deg); }
body.home .cu-paper-note small { font-size: 9px; letter-spacing: .06em; }
body.home .cu-paper-note strong { font-family: var(--cu-font-heading); font-size: 22px; font-weight: 600; line-height: 1.35; overflow-wrap: anywhere; }
body.home .cu-paper-note span { font-size: 10px; }
body.home .cu-paper-note-yellow { top: 19%; left: -3%; width: 32%; max-width: 166px; background: #f5e3a3; transform: rotate(-8deg); }
body.home .cu-paper-note-yellow strong { font-size: 19px; letter-spacing: -.02em; }
body.home .cu-paper-note-pink { right: -1%; bottom: 15%; width: 29%; max-width: 150px; background: #efbba7; transform: rotate(8deg); }
body.home .cu-paper-note-pink strong { font-size: 20px; }
body.home .cu-paper-slip { position: absolute; z-index: 3; bottom: -2%; left: -2%; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px 22px; box-sizing: border-box; width: 58%; padding: 18px 22px; border: 1px solid var(--cu-border); background: #fffdf7; color: #456451; box-shadow: 0 4px 12px rgba(41,63,53,.04); transform: rotate(-4deg); }
body.home .cu-paper-slip small { grid-column: 1 / -1; font-size: 10px; letter-spacing: .12em; }
body.home .cu-paper-slip > span { font-size: 13px; }
body.home .cu-paper-slip .cu-paper-stamp { padding: 5px 10px; border: 1px solid #c5c9ac; background: #e3e9dc; font-size: 11px; }
@media (max-width: 1200px) and (min-width: 1025px) {
  body.home .cu-home-intro-content { gap: 48px; }
  body.home .cu-home-intro h1 { font-size: 52px; }
}
@media (max-width: 1024px) {
  body.home .cu-site-header { padding: 0 24px; }
  body.home .cu-header-inner { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; grid-template-rows: 96px auto; gap: 0 22px; min-height: 96px; }
  body.home .cu-brand-group { grid-column: 1; grid-row: 1; }
  body.home .cu-header-search { grid-column: 2; grid-row: 1; }
  body.home .cu-nav-toggle { grid-column: 3; grid-row: 1; }
  body.home .cu-site-nav { grid-column: 1 / -1; grid-row: 2; gap: 0; padding-bottom: 18px; }
  body.home .cu-home-intro { min-height: auto; }
  body.home .cu-home-intro-content { gap: 40px; width: calc(100% - 80px); padding: 176px 0 100px; }
  body.home .cu-home-intro h1 { font-size: clamp(38px, 5vw, 52px); }
  body.home .cu-hero-excerpt { font-size: 16px; }
  body.home .cu-paper-photo { padding: 12px 12px 0; }
  body.home .cu-paper-caption { font-size: 7px; letter-spacing: .02em; }
  body.home .cu-paper-note { gap: 7px; padding: 12px 10px; }
  body.home .cu-paper-note strong { font-size: 17px; }
  body.home .cu-paper-note-yellow strong { font-size: 17px; }
  body.home .cu-paper-note small { font-size: 8px; }
  body.home .cu-paper-slip { padding: 12px 14px; gap: 8px; }
}
@media (max-width: 767px) {
  body.home .cu-site-header { padding: 0 20px; }
  body.home .cu-header-inner { gap: 0 22px; min-height: 88px; grid-template-rows: 88px auto; }
  body.home .cu-home-intro-content { grid-template-columns: minmax(0, 1fr); gap: 64px; width: calc(100% - 40px); padding: 150px 0 76px; }
  body.home .cu-home-intro-copy { max-width: 510px; }
  body.home .cu-home-intro h1 { font-size: clamp(36px, 9vw, 48px); line-height: 1.25; }
  body.home .cu-hero-collage { justify-self: center; width: min(90%, 440px); }
  body.home .cu-paper-photo { transform: rotate(2.5deg); }
  body.home .cu-paper-caption { font-size: 8px; }
  body.home .cu-paper-note-pink { right: -2%; bottom: 16%; }
  body.home .cu-paper-note-yellow { top: 18%; }
  body.home .cu-paper-note strong { font-size: 18px; }
  body.home .cu-paper-slip { bottom: -3%; }
  body.home .cu-home-intro-actions { gap: 20px; }
}
