body.hh-page-content main.wrap, body.hh-page-content .wrap, body.hh-page-legal .wrap { margin-top: clamp(24px,4vw,52px); display: grid; gap: 18px; }
body.hh-page-content .hero, body.hh-page-legal .legal-hero, body.hh-page-legal > section:first-of-type { padding: clamp(28px,5vw,58px); border: 1px solid var(--hh-line); border-radius: var(--hh-radius-xl); background: radial-gradient(circle at 92% 0%,rgba(218,240,255,.9),transparent 44%),linear-gradient(145deg,#fff,var(--hh-lilac)); box-shadow: var(--hh-shadow-md); }
body.hh-page-content .hero .lead, body.hh-page-legal .legal-hero p { max-width: 760px; color: var(--hh-ink-soft); font-size: 1.08rem; }
body.hh-page-content .card, body.hh-page-content .hh-clr-purpose, body.hh-page-legal .legal-card, body.hh-page-legal .footer-card, body.hh-page-legal #latest-legal-notes { margin: 0; }
body.hh-page-content .grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
body.hh-page-content .card > .grid > div { border: 1px solid var(--hh-line); border-radius: 18px; background: rgba(255,255,255,.72); padding: 16px; }
body.hh-page-contact .wrap { max-width: 960px; }
body.hh-page-contact .card { padding: clamp(20px,4vw,32px); }
body.hh-page-legal { padding-top: clamp(24px,4vw,52px); }
body.hh-page-legal > section, body.hh-page-legal .legal-card { width: min(1000px, calc(100% - (var(--hh-gutter) * 2))); margin-inline: auto; }
@media (max-width: 700px) { body.hh-page-content .grid { grid-template-columns: 1fr; } }

/* Contact page — welcoming, useful and action-led. */
body.hh-page-contact .hh-contact-main { max-width: 1120px; margin-top: clamp(24px,4vw,52px); display: grid; gap: clamp(18px,3vw,30px); }
body.hh-page-contact .hh-contact-hero {
  display: grid;
  grid-template-columns: minmax(0,1.45fr) minmax(280px,.7fr);
  gap: clamp(18px,4vw,46px);
  align-items: center;
  padding: clamp(28px,5vw,62px);
  border: 1px solid var(--hh-line);
  border-radius: var(--hh-radius-xl);
  background: radial-gradient(circle at 95% 0%,rgba(217,240,255,.96),transparent 42%),radial-gradient(circle at 0% 100%,rgba(237,223,249,.82),transparent 42%),#fff;
  box-shadow: var(--hh-shadow-md);
}
body.hh-page-contact .hh-contact-hero-copy > p { max-width: 720px; color: var(--hh-ink-soft); font-size: clamp(1.02rem,1.7vw,1.2rem); }
body.hh-page-contact .hh-contact-kicker { display: inline-flex; width: fit-content; padding: 5px 10px; border-radius: 999px; background: var(--hh-lilac); color: #66427d; font-size: .78rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
body.hh-page-contact .hh-contact-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
body.hh-page-contact .hh-contact-details { min-width: 0; display: grid; gap: 7px; align-content: start; padding: 22px; border: 1px solid rgba(153,116,178,.24); border-radius: 26px; background: rgba(255,255,255,.86); box-shadow: var(--hh-shadow-sm); }
body.hh-page-contact .hh-contact-mark { width: 50px; height: 50px; display: grid; place-items: center; border-radius: 17px; background: linear-gradient(135deg,var(--hh-lilac),var(--hh-blue)); font-size: 1.4rem; }
body.hh-page-contact .hh-contact-details > span { color: var(--hh-muted); font-size: .76rem; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; margin-top: 5px; }
body.hh-page-contact .hh-contact-details a, body.hh-page-contact .hh-contact-details strong { overflow-wrap: anywhere; font-size: 1.05rem; }
body.hh-page-contact .hh-contact-details p { margin: 8px 0 0; padding-top: 13px; border-top: 1px solid var(--hh-line); color: var(--hh-muted); font-size: .9rem; }
body.hh-page-contact .hh-contact-purpose, body.hh-page-contact .hh-contact-expectations { padding: clamp(22px,4vw,40px); border: 1px solid var(--hh-line); border-radius: var(--hh-radius-xl); background: rgba(255,255,255,.88); box-shadow: var(--hh-shadow-sm); }
body.hh-page-contact .hh-contact-purpose > div:first-child { max-width: 720px; }
body.hh-page-contact .hh-contact-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin-top: 22px; }
body.hh-page-contact .hh-contact-card { min-width: 0; display: flex; flex-direction: column; gap: 10px; padding: 21px; border: 1px solid var(--hh-line); border-radius: 24px; background: #fff; }
body.hh-page-contact .hh-contact-card-blue { background: linear-gradient(145deg,#fff,var(--hh-blue)); }
body.hh-page-contact .hh-contact-card-lilac { background: linear-gradient(145deg,#fff,var(--hh-lilac)); }
body.hh-page-contact .hh-contact-card-mint { background: linear-gradient(145deg,#fff,var(--hh-mint)); }
body.hh-page-contact .hh-contact-card-peach { background: linear-gradient(145deg,#fff,var(--hh-peach)); }
body.hh-page-contact .hh-contact-card-icon { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 15px; background: rgba(255,255,255,.8); font-size: 1.25rem; }
body.hh-page-contact .hh-contact-card h3 { margin: 0; }
body.hh-page-contact .hh-contact-card p { color: var(--hh-ink-soft); }
body.hh-page-contact .hh-contact-card a { width: fit-content; margin-top: auto; font-weight: 850; }
body.hh-page-contact .hh-contact-support-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
body.hh-page-contact .hh-contact-guidance { padding: clamp(22px,4vw,36px); border: 1px solid var(--hh-line); border-radius: var(--hh-radius-xl); background: linear-gradient(145deg,#fff,var(--hh-yellow)); box-shadow: var(--hh-shadow-sm); }
body.hh-page-contact .hh-contact-guidance-urgent { background: linear-gradient(145deg,#fff,var(--hh-blush)); }
body.hh-page-contact .hh-contact-guidance ul { margin-bottom: 18px; }
body.hh-page-contact .hh-contact-privacy-note { padding: 13px 15px; border-radius: 16px; background: rgba(255,255,255,.75); }
body.hh-page-contact .hh-contact-route-links { display: grid; gap: 8px; margin-top: 18px; }
body.hh-page-contact .hh-contact-route-links a { min-height: 46px; display: flex; align-items: center; padding: 10px 13px; border: 1px solid var(--hh-line); border-radius: 14px; background: rgba(255,255,255,.8); color: var(--hh-ink); text-decoration: none; font-weight: 800; }
body.hh-page-contact .hh-contact-expectations { background: radial-gradient(circle at 100% 100%,rgba(226,246,234,.9),transparent 46%),#fff; }
body.hh-page-contact .hh-contact-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 20px 0; }
body.hh-page-contact .hh-contact-steps > div { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 10px; align-items: start; padding: 15px; border: 1px solid var(--hh-line); border-radius: 18px; background: rgba(255,255,255,.78); }
body.hh-page-contact .hh-contact-steps strong { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: var(--hh-lilac); color: #5c3c72; }
body.hh-page-contact .hh-contact-smallprint { margin: 0; color: var(--hh-muted); font-size: .9rem; }
@media (max-width:800px) {
  body.hh-page-contact .hh-contact-hero, body.hh-page-contact .hh-contact-support-grid { grid-template-columns: 1fr; }
  body.hh-page-contact .hh-contact-grid { grid-template-columns: 1fr; }
  body.hh-page-contact .hh-contact-steps { grid-template-columns: 1fr; }
}
@media (max-width:600px) {
  body.hh-page-contact .hh-contact-actions { display: grid; grid-template-columns: 1fr; }
  body.hh-page-contact .hh-contact-actions > * { width: 100%; }
}
