/* MedXY managed homepage template — scoped to the portal, using the theme typography. */
.medxy-portal-page #main { padding-top:0; }
.mh-home { --mh-blue:#163b66; --mh-ink:#23344d; --mh-muted:#59697d; --mh-line:#e1e7ee; --mh-coral:#b83748; max-width:1280px; padding:0 32px 64px; margin:0 auto; color:var(--mh-ink); font-family:inherit; }
.mh-home *, .mh-home *::before, .mh-home *::after { box-sizing:border-box; }
.mh-home h1,.mh-home h2,.mh-home h3 { font-family:inherit; color:var(--mh-ink); margin:0; }
.mh-home a { color:inherit; text-decoration:none; }
.mh-home a:hover { color:var(--mh-blue); }
.mh-home a:focus-visible,.mh-home button:focus-visible,.mh-home input:focus-visible,.mh-home select:focus-visible { outline:3px solid #2360b0; outline-offset:4px; }
.mh-hero { display:grid; grid-template-columns:1fr 1.12fr; gap:48px; align-items:center; padding:48px 0 36px; }
.mh-brandline { color:var(--mh-blue); font-weight:800; font-size:20px; margin:0 0 20px; }
.mh-brandline span { display:block; font-size:13px; font-weight:500; color:var(--mh-muted); margin-top:5px; }
.mh-home h1 { font-size:clamp(30px,3vw,43px); line-height:1.28; font-weight:750; letter-spacing:-.025em; max-width:520px; }
.mh-intro { font-size:16px; line-height:1.8; color:var(--mh-muted); margin:18px 0 0; max-width:490px; }
.mh-question { margin:0; padding:28px; background:#f0f5fc; border:1px solid #dbe5f3; border-radius:16px; }
.mh-question label { display:block; font-weight:700; color:var(--mh-blue); font-size:19px; margin-bottom:15px; line-height:1.5; }
.mh-question__field { display:flex; align-items:stretch; gap:8px; background:#fff; border:1px solid #adbfda; border-radius:10px; padding:7px; }
.mh-home .mh-question input[type=text] { min-width:0; width:100%; background:#fff; border:0; box-shadow:none; padding:10px; font-size:15px; line-height:1.5; height:auto; margin:0; color:var(--mh-ink); }
.mh-home .mh-question button[type=submit] { flex:0 0 auto; min-height:46px; background:var(--mh-blue); color:#fff; border:0; border-radius:7px; padding:10px 15px; font-size:14px; font-weight:650; line-height:1.4; cursor:pointer; box-shadow:none; }
.mh-question button[type=submit] span { margin-left:8px; }
.mh-question #mh-handoff { font-size:12px; line-height:1.6; color:var(--mh-muted); margin:9px 0 16px; }
.mh-examples { display:flex; flex-wrap:wrap; gap:7px; }
.mh-home .mh-examples button { border:1px solid #d5dfed; background:#fff; color:#435c7b; text-align:left; border-radius:6px; font-size:12px; font-weight:500; padding:7px 10px; line-height:1.5; min-height:34px; cursor:pointer; box-shadow:none; }
.mh-home .mh-examples button:hover { border-color:#7194c0; background:#f9fbff; }
.mh-shortcuts { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; border-bottom:1px solid var(--mh-line); padding:0 0 26px; margin-bottom:38px; }
.mh-shortcuts a { display:flex; align-items:center; justify-content:center; gap:12px; min-height:52px; padding:9px 12px; border:1px solid var(--mh-line); border-radius:9px; font-size:15px; font-weight:650; }
.mh-shortcuts a:hover { background:#f1f6fc; border-color:#a4bbd7; }
.mh-shortcut-icon { display:grid; place-items:center; color:#21558e; width:28px; height:28px; font-size:24px; }
.mh-discover { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:32px; align-items:start; }
.mh-section-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:0 0 22px; }
.mh-home h2 { font-size:25px; font-weight:750; line-height:1.4; }
.mh-section-heading>a { flex-shrink:0; font-size:14px; font-weight:650; color:var(--mh-blue); padding:8px 0; text-decoration:underline; text-underline-offset:5px; }
.mh-section-heading p { color:var(--mh-muted); font-size:15px; line-height:1.6; margin:8px 0 0; }
.mh-featured-grid { display:grid; grid-template-columns:1.25fr 1fr; gap:23px; }
.mh-article { min-width:0; }
.mh-article__image { display:block; background:#f0f4f8; overflow:hidden; aspect-ratio:16/9; border-radius:9px; }
.mh-article__image img { display:block; width:100%; height:100%; object-fit:cover; }
.mh-image-placeholder { display:grid; place-items:center; width:100%; height:100%; font-size:32px; font-weight:800; color:#a4b8ce; background:#edf3fa; }
.mh-meta { display:flex; gap:12px; align-items:center; flex-wrap:wrap; margin:12px 0 8px; font-size:12px; line-height:1.5; color:var(--mh-muted); }
.mh-meta a { color:var(--mh-coral); font-weight:650; }
.mh-home .mh-article h3 { font-size:17px; line-height:1.55; font-weight:700; }
.mh-article h3 a:hover { text-decoration:underline; text-underline-offset:3px; }
.mh-article--lead { grid-row:span 2; }
.mh-home .mh-article--lead h3 { font-size:23px; line-height:1.5; }
.mh-article--lead .mh-article__image { aspect-ratio:4/3; }
.mh-article--lead p { font-size:15px; line-height:1.8; color:var(--mh-muted); margin:12px 0 0; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; }
.mh-featured .mh-article:not(.mh-article--lead) .mh-article__image { aspect-ratio:2.3; }
.mh-calculators { border:1px solid #eaded6; border-top:4px solid var(--mh-coral); border-radius:10px; padding:22px; background:#fffaf6; scroll-margin-top:24px; }
.mh-calc-heading { display:flex; align-items:center; gap:10px; }
.mh-calc-heading svg { width:24px; height:29px; flex-shrink:0; color:var(--mh-coral); }
.mh-home .mh-calculators h2 { font-size:20px; }
.mh-calculators>p { font-size:13px; line-height:1.7; color:var(--mh-muted); margin:9px 0 14px; }
.mh-home select#mh-department { width:100%; color:var(--mh-ink); background-color:#fff; border:1px solid #d7dce3; border-radius:6px; padding:10px 32px 10px 12px; min-height:44px; margin:0 0 8px; font-size:14px; }
.mh-calc-link { display:block; border-bottom:1px solid #eaded6; padding:13px 0; }
.mh-calc-link strong { font-size:14px; font-weight:650; line-height:1.6; display:block; }
.mh-calc-link span { display:block; font-size:12px; color:var(--mh-muted); margin-top:4px; }
.mh-home .mh-button { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:9px 15px; font-size:14px; font-weight:650; border-radius:7px; line-height:1.5; }
.mh-home .mh-button--outline { border:1px solid #c9a6a5; color:var(--mh-coral); width:100%; margin-top:18px; background:#fff; }
.mh-calculators p.mh-note { font-size:11px; margin:10px 0 0; }
.mh-video-section,.mh-latest,.mh-game-section { padding-top:44px; margin-top:38px; border-top:1px solid var(--mh-line); scroll-margin-top:24px; }
.mh-catalog--videos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.mh-video__cover { position:relative; display:block; aspect-ratio:16/9; background:#163b66; border-radius:10px; overflow:hidden; }
.mh-video__cover img { width:100%; height:100%; object-fit:cover; display:block; }
.mh-video__play { position:absolute; inset:0; display:grid; place-items:center; color:#fff; background:linear-gradient(transparent,rgba(10,35,65,.32)); }
.mh-video__play svg { width:46px; height:46px; padding:12px; border:1px solid #ffffff90; background:#163b66db; border-radius:50%; }
.mh-video__duration { position:absolute; bottom:10px; right:10px; color:#fff; background:#163b66; border-radius:4px; padding:3px 7px; font-size:12px; }
.mh-home .mh-video h3 { font-size:18px; font-weight:650; line-height:1.6; margin:13px 0 6px; }
.mh-video small { font-size:12px; color:var(--mh-muted); }
.mh-departments { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:24px; }
.mh-departments a { font-size:13px; color:#435a75; background:#f1f5f9; border:1px solid #e1e7ee; border-radius:6px; padding:7px 12px; min-height:36px; line-height:1.5; }
.mh-departments a:hover { background:#e3edfa; }
.mh-latest-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 25px; }
.mh-game-section { border:0; padding:32px; border-radius:16px; background:#f1f5fb; }
.mh-catalog--games { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.mh-game { background:#fff; padding:22px; border:1px solid #dce5f0; border-radius:10px; min-width:0; display:flex; flex-direction:column; align-items:flex-start; }
.mh-game__icon { color:#365995; background:#e7eefb; width:52px; height:52px; border-radius:12px; display:grid; place-items:center; margin-bottom:16px; }
.mh-game:nth-child(2) .mh-game__icon { color:#915513; background:#fff0d6; }
.mh-game:nth-child(3) .mh-game__icon { color:#6d4a9d; background:#eee6fb; }
.mh-game:nth-child(4) .mh-game__icon { color:#28725a; background:#e1f3eb; }
.mh-game__icon svg { width:30px; height:30px; }
.mh-home .mh-game h3 { font-size:17px; font-weight:700; line-height:1.6; margin-bottom:10px; }
.mh-game p { color:var(--mh-muted); font-size:13px; line-height:1.7; margin:0 0 18px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.mh-game .mh-button { margin-top:auto; color:#fff; background:var(--mh-blue); font-size:13px; }
.mh-fallback { padding:20px 0; font-size:14px; color:var(--mh-muted); grid-column:1/-1; }
@media(max-width:1050px) { .mh-hero { gap:28px; } .mh-home { padding:0 24px 48px; } .mh-discover { grid-template-columns:minmax(0,1fr) 300px; gap:24px; } .mh-featured-grid { grid-template-columns:1fr; } .mh-article--lead { grid-row:auto; } .mh-featured .mh-article:not(.mh-article--lead) { display:grid; grid-template-columns:120px minmax(0,1fr); gap:15px; } .mh-featured .mh-article:not(.mh-article--lead) .mh-article__image { aspect-ratio:4/3; } .mh-featured .mh-article:not(.mh-article--lead) .mh-meta { margin-top:0; } .mh-catalog--games { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .mh-hero { grid-template-columns:1fr; gap:24px; padding:30px 0 24px; } .mh-brandline { margin-bottom:15px; } .mh-home h1 { font-size:32px; } .mh-question { padding:20px; } .mh-shortcuts { gap:8px; grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:28px; } .mh-shortcuts a { gap:6px; padding:8px 6px; font-size:12px; } .mh-discover { grid-template-columns:minmax(0,1fr); gap:30px; } .mh-catalog--videos,.mh-latest-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .mh-section-heading { align-items:flex-start; gap:14px; } .mh-home h2 { font-size:22px; } .mh-section-heading>a { font-size:12px; flex-shrink:1; text-align:right; } .mh-game-section { padding:22px; } .mh-question__field { flex-direction:column; } .mh-question input[type=text] { min-height:48px; } }
@media(max-width:480px) { .mh-home { padding:0 20px 36px; } .mh-catalog--videos,.mh-latest-grid,.mh-catalog--games { grid-template-columns:minmax(0,1fr); } .mh-home h1 { font-size:30px; } .mh-home .mh-article--lead h3 { font-size:21px; } .mh-examples button { min-height:44px; } .mh-game { padding:20px; } .mh-game-section { padding:20px; } .mh-home .mh-section-heading a { max-width:125px; } }
@media(prefers-reduced-motion:reduce) { .mh-home *, .mh-home *::before { transition:none!important; scroll-behavior:auto!important; } }

.mh-shortcut-icon svg { width:25px; height:25px; }

/* Balance headlines and preserve the complete medical figures in article covers. */
.mh-home h1 { text-wrap:balance; }
.mh-article__image img { object-fit:contain; }
.mh-article--lead .mh-article__image { aspect-ratio:16/10; }
@media(max-width:760px) { .mh-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); } .mh-shortcuts a:first-child { grid-column:1/-1; } .mh-shortcuts a { gap:10px; font-size:14px; } .mh-shortcut-icon { flex:0 0 26px; } .mh-game-section .mh-section-heading { flex-direction:column; } .mh-game-section .mh-section-heading>a { text-align:left; max-width:none; } }
