body.hh-page-home .site { width: auto; max-width: none; }
body.hh-page-home .hero { width: min(1280px,calc(100% - (var(--hh-gutter) * 2))); margin: clamp(22px,4vw,54px) auto 22px; min-height: clamp(430px,58vw,650px); border: 1px solid rgba(220,208,231,.78); border-radius: clamp(28px,4vw,46px); background: radial-gradient(circle at 8% 8%,rgba(226,219,250,.95),transparent 37%),radial-gradient(circle at 83% 15%,rgba(215,240,255,.94),transparent 36%),radial-gradient(circle at 92% 88%,rgba(250,225,231,.86),transparent 34%),linear-gradient(145deg,#fffafd,#f7fbff 52%,#fff8fa); box-shadow: var(--hh-shadow-md); padding: clamp(34px,7vw,86px); display: grid; align-content: center; justify-items: center; text-align: center; overflow: hidden; position: relative; }
body.hh-page-home .hero::before, body.hh-page-home .hero::after { content:none; display:none; }
body.hh-page-home .hero h1 { max-width:940px; position:relative; }
body.hh-page-home .hero > p { max-width:760px; color:var(--hh-ink-soft); font-size:clamp(1.05rem,2vw,1.3rem); position:relative; }
body.hh-page-home .hero-actions { justify-content:center; margin-top:10px; position:relative; }
body.hh-page-home .mini-links { width:min(1100px,calc(100% - (var(--hh-gutter) * 2))); margin:18px auto clamp(26px,5vw,54px); display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
body.hh-page-home .mini-links a { min-height:112px; border:1px solid var(--hh-line); border-radius:22px; background:rgba(255,255,255,.9); color:var(--hh-ink); text-decoration:none; padding:17px; display:grid; align-content:end; gap:3px; box-shadow:var(--hh-shadow-xs); transition:transform var(--hh-duration),box-shadow var(--hh-duration); }
body.hh-page-home .mini-links a:nth-child(1){background:linear-gradient(145deg,#fff,var(--hh-lilac))}body.hh-page-home .mini-links a:nth-child(2){background:linear-gradient(145deg,#fff,var(--hh-yellow))}body.hh-page-home .mini-links a:nth-child(3){background:linear-gradient(145deg,#fff,var(--hh-blush))}body.hh-page-home .mini-links a:nth-child(4){background:linear-gradient(145deg,#fff,var(--hh-blue))}body.hh-page-home .mini-links a:nth-child(5){background:linear-gradient(145deg,#fff,var(--hh-mint))}
body.hh-page-home .mini-links a:hover { transform:translateY(-3px); box-shadow:var(--hh-shadow-sm); }
body.hh-page-home .mini-links strong { font-family:var(--hh-font-display); font-size:1.25rem; font-weight:600; }
body.hh-page-home .mini-links small { color:var(--hh-muted); }
.hh-install-card { width:min(1000px,calc(100% - (var(--hh-gutter) * 2))); margin:0 auto 28px; border:1px solid #d7c8e1; border-radius:24px; background:linear-gradient(135deg,rgba(236,225,248,.88),rgba(226,244,253,.9)); padding:20px; box-shadow:var(--hh-shadow-sm); }
.hh-install-card h2 { font-family:var(--hh-font-body); font-size:1.18rem; letter-spacing:0; margin-bottom:5px; }
.hh-install-card p { color:var(--hh-muted); }
body.hh-page-home #finder, body.hh-page-home .radar { width:min(1180px,calc(100% - (var(--hh-gutter) * 2))); margin-inline:auto; }
body.hh-page-home .radar { margin-bottom:clamp(36px,7vw,78px); padding:clamp(24px,5vw,48px); border:1px solid var(--hh-line); border-radius:var(--hh-radius-xl); background:rgba(255,255,255,.9); box-shadow:var(--hh-shadow-md); }
body.hh-page-home .radar > p { max-width:720px; color:var(--hh-muted); }
body.hh-page-home .tiles { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:22px 0; }
body.hh-page-home .tile { min-height:126px; border:1px solid var(--hh-line); border-radius:22px; background:var(--hh-surface-soft); color:var(--hh-ink); padding:17px; display:grid; align-content:space-between; text-align:left; font-weight:780; box-shadow:none; text-decoration:none; }
body.hh-page-home .tile .ic { font-size:1.45rem; }
body.hh-page-home .tile small { display:block; color:var(--hh-muted); font-weight:500; line-height:1.35; }
body.hh-page-home .tile:nth-child(6n+1){background:var(--hh-lilac)}body.hh-page-home .tile:nth-child(6n+2){background:var(--hh-blue)}body.hh-page-home .tile:nth-child(6n+3){background:var(--hh-mint)}body.hh-page-home .tile:nth-child(6n+4){background:var(--hh-yellow)}body.hh-page-home .tile:nth-child(6n+5){background:var(--hh-blush)}body.hh-page-home .tile:nth-child(6n+6){background:var(--hh-peach)}
body.hh-page-home .tile[aria-pressed="true"] { border-color:#795595; box-shadow:0 0 0 4px rgba(123,82,154,.14),var(--hh-shadow-sm); }
body.hh-page-home .tile.urgent { background:linear-gradient(145deg,#fff1f3,#fadce4); color:#7d2139; text-decoration:none; }
body.hh-page-home .tile.urgent:visited { color:#7d2139; }
body.hh-page-home .qwrap { display:grid; gap:14px; margin-top:18px; }
body.hh-page-home .q { border:1px solid var(--hh-line); border-radius:20px; background:#fff; padding:17px; display:grid; gap:12px; }
body.hh-page-home .q legend { font-family:var(--hh-font-display); font-size:1.2rem; padding:0 4px; }
body.hh-page-home .q label { display:grid; gap:6px; }
body.hh-page-home .hh-q-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
body.hh-page-home .hh-choice-row { display:flex; flex-wrap:wrap; gap:8px; }
body.hh-page-home .hh-choice-row button[aria-pressed="true"] { background:var(--hh-blue); border-color:#7ca9c5; }
body.hh-page-home .hh-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
body.hh-page-home .hh-check-grid label { display:flex; align-items:flex-start; gap:8px; padding:10px; border:1px solid var(--hh-line); border-radius:14px; background:var(--hh-surface-soft); }
body.hh-page-home .hh-priority-question { background:linear-gradient(145deg,#fff,var(--hh-yellow)); }
body.hh-page-home #results { display:grid; gap:18px; margin-top:26px; scroll-margin-top:100px; }
body.hh-page-home .hh-results-panel { display:grid; gap:14px; }
body.hh-page-home .hh-results-heading { display:flex; justify-content:space-between; align-items:end; gap:16px; }
body.hh-page-home .hh-results-controls, body.hh-page-home .hh-home-guide-toolbar { display:flex; align-items:center; gap:8px; }
body.hh-page-home .hh-results-controls [data-results-count] { white-space:nowrap; min-width:max-content; }
body.hh-page-home .hh-results-controls button, body.hh-page-home .hh-home-guide-toolbar button { width:44px; height:44px; padding:0; border-radius:50%; }
body.hh-page-home .hh-results-rail { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:16px; padding:6px 2px 18px; scrollbar-width:none; }
body.hh-page-home .hh-results-rail::-webkit-scrollbar { display:none; }
body.hh-page-home .hh-results-rail > article { flex:0 0 calc(50% - 8px); min-width:0; scroll-snap-align:start; }
body.hh-page-home .route-card { padding:20px; border:1px solid var(--hh-line); border-radius:24px; background:#fff; box-shadow:var(--hh-shadow-sm); display:grid; gap:14px; }
body.hh-page-home .hh-card-head { display:grid; grid-template-columns:auto 1fr; gap:12px; align-items:start; }
body.hh-page-home .hh-card-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:15px; background:var(--hh-surface-soft); font-size:1.3rem; }
body.hh-page-home .hh-card-kicker { color:var(--hh-purple-deep); font-size:.76rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
body.hh-page-home .route-card h3 { margin:2px 0 3px; }
body.hh-page-home .route-card ul { margin:8px 0 0; padding-left:1.2rem; }
body.hh-page-home .hh-card-reason { padding:10px 12px; border-radius:14px; background:var(--hh-blue); }
body.hh-page-home .hh-card-effort { color:var(--hh-muted); }
body.hh-page-home .route-card .actions { gap:8px; }
body.hh-page-home .route-card .actions a, body.hh-page-home .route-card .actions button { min-height:46px; }
body.hh-page-home .route-card .actions a { display:inline-flex; flex-direction:column; align-items:flex-start; justify-content:center; }
body.hh-page-home .hh-support-details, body.hh-page-home .hh-child-detail { border:1px solid var(--hh-line); border-radius:16px; padding:0 12px; background:#fff; }
body.hh-page-home .hh-support-details summary, body.hh-page-home .hh-child-detail summary { min-height:46px; display:flex; justify-content:space-between; align-items:center; gap:12px; cursor:pointer; font-weight:750; }
body.hh-page-home .hh-u-toggle { width:28px; height:28px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:var(--hh-surface-soft); }
body.hh-page-home .hh-details-stack { display:grid; gap:9px; padding:0 0 12px; }
body.hh-page-home .hh-detail-body { padding-bottom:10px; }
body.hh-page-home .save-msg { margin-top:12px; color:var(--hh-success); font-weight:750; }
body.hh-page-home .hh-home-guides { width:min(1180px,calc(100% - (var(--hh-gutter) * 2))); margin:0 auto; padding:clamp(22px,4vw,38px); }
body.hh-page-home .hh-home-guides-heading { display:flex; align-items:end; justify-content:space-between; gap:18px; }
body.hh-page-home .hh-home-guide-rail { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:14px; margin-top:18px; padding:4px 2px 16px; scrollbar-width:none; }
body.hh-page-home .hh-home-guide-rail::-webkit-scrollbar { display:none; }
body.hh-page-home .hh-home-guide-card { flex:0 0 calc(50% - 7px); min-width:0; scroll-snap-align:start; border:1px solid var(--hh-line); border-radius:22px; background:linear-gradient(145deg,#fff,var(--hh-lilac)); padding:20px; display:flex; flex-direction:column; gap:9px; box-shadow:var(--hh-shadow-xs); }
body.hh-page-home .hh-home-guide-card:nth-child(4n+2){background:linear-gradient(145deg,#fff,var(--hh-blue))}body.hh-page-home .hh-home-guide-card:nth-child(4n+3){background:linear-gradient(145deg,#fff,var(--hh-mint))}body.hh-page-home .hh-home-guide-card:nth-child(4n+4){background:linear-gradient(145deg,#fff,var(--hh-blush))}
body.hh-page-home .hh-home-guide-card h3 { margin:0; font-size:1.35rem; }
body.hh-page-home .hh-home-guide-card p { color:var(--hh-muted); }
body.hh-page-home .hh-home-guide-card a { margin-top:auto; width:fit-content; }
body.hh-page-home .hh-home-guide-meta { color:var(--hh-muted); font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.035em; }
@media (max-width:900px) {
  body.hh-page-home .mini-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.hh-page-home .mini-links a:first-child { grid-column:1 / -1; }
  body.hh-page-home .tiles { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  body.hh-page-home .hero { min-height:470px; padding:36px 18px; }
  body.hh-page-home .mini-links { grid-template-columns:1fr; }
  body.hh-page-home .mini-links a:first-child { grid-column:auto; }
  body.hh-page-home .tiles { grid-template-columns:1fr 1fr; gap:9px; }
  body.hh-page-home .tile { min-height:112px; padding:14px; }
  body.hh-page-home .hh-q-pair, body.hh-page-home .hh-check-grid { grid-template-columns:1fr; }
  body.hh-page-home .hh-results-heading, body.hh-page-home .hh-home-guides-heading { align-items:flex-start; flex-direction:column; }
  body.hh-page-home .hh-results-rail, body.hh-page-home .hh-home-guide-rail { margin-inline:calc(var(--hh-gutter) * -1); padding:8px var(--hh-gutter) 18px; }
  body.hh-page-home .hh-results-rail > article { flex-basis:100%; }
  body.hh-page-home .hh-home-guide-card { flex-basis:min(88vw,430px); }
  body.hh-page-home .route-card { padding:16px; }
}

/* Benefit choices: calm, aligned, accessible multi-select pills. */
body.hh-page-home .hh-benefits-question .hint { margin: -4px 0 2px; color: var(--hh-muted); font-size: .92rem; }
body.hh-page-home .hh-benefit-pill {
  min-height: 58px; display: grid !important; grid-template-columns: 30px minmax(0,1fr);
  align-items: center !important; gap: 11px !important; padding: 11px 14px !important;
  border: 1px solid var(--hh-line-strong) !important; border-radius: 18px !important;
  background: #fff !important; color: var(--hh-ink) !important; cursor: pointer;
  box-shadow: var(--hh-shadow-xs); transition: border-color var(--hh-duration),background var(--hh-duration),box-shadow var(--hh-duration),transform var(--hh-duration);
}
body.hh-page-home .hh-benefit-pill:hover { transform: translateY(-1px); border-color: #b99fca !important; box-shadow: var(--hh-shadow-sm); }
body.hh-page-home .hh-benefit-pill input { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
body.hh-page-home .hh-benefit-check { width: 30px; height: 30px; display: grid; place-items: center; border: 2px solid #b9abc3; border-radius: 10px; background: #fff; color: transparent; font-weight: 900; line-height: 1; }
body.hh-page-home .hh-benefit-label { min-width: 0; line-height: 1.3; font-weight: 780; text-align: left; overflow-wrap: anywhere; }
body.hh-page-home .hh-benefit-pill:has(input:checked) { border-color: #8f6baa !important; background: linear-gradient(135deg,var(--hh-lilac),var(--hh-blue)) !important; box-shadow: 0 0 0 3px rgba(126,82,157,.12); }
body.hh-page-home .hh-benefit-pill:has(input:checked) .hh-benefit-check { border-color: #6f3f93; background: #6f3f93; color: #fff; }
body.hh-page-home .hh-benefit-pill:has(input:focus-visible) { outline: 3px solid var(--hh-focus); outline-offset: 3px; }

/* Support Radar: exactly one complete card inside the phone viewport. */
body.hh-page-home .radar { --hh-radar-inner-pad: clamp(24px,5vw,48px); }
@media (max-width:760px) {
  body.hh-page-home .radar { padding-inline: 16px; --hh-radar-inner-pad: 16px; }
  body.hh-page-home .hh-results-rail {
    box-sizing: border-box; width: 100vw; max-width: 100vw;
    margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
    padding: 8px var(--hh-gutter) 18px; scroll-padding-inline: var(--hh-gutter); gap: 12px;
  }
  body.hh-page-home .hh-results-rail > article {
    box-sizing: border-box; flex: 0 0 calc(100vw - (var(--hh-gutter) * 2));
    width: calc(100vw - (var(--hh-gutter) * 2)); max-width: calc(100vw - (var(--hh-gutter) * 2)); min-width: 0;
  }
  body.hh-page-home .route-card { width: 100%; max-width: 100%; overflow: hidden; }
  body.hh-page-home .route-card .actions { display: grid; grid-template-columns: 1fr; }
  body.hh-page-home .route-card .actions > * { width: 100%; min-width: 0; }
  body.hh-page-home .hh-benefits-question .hh-check-grid { grid-template-columns: 1fr; }
}
@media (max-width:390px) {
  body.hh-page-home .hh-results-rail .hh-support-details > summary .hh-u-toggle { margin-right: 48px; }
}
