/* Shared by the public corporate subpages. Colours, fonts, brand and button styles come from the homepage. */
body.hn-page {
  --page-width: 1184px;
  --page-gutter: clamp(20px, 3.8vw, 64px);
  display: flex; flex-direction: column; min-height: 100vh; min-height: 100svh;
  background: var(--navy-900); color: var(--text-dark-1);
}
.hn-wrap { width: min(var(--page-width), calc(100% - 2 * var(--page-gutter))); margin-inline: auto; }
.hn-main { flex: 1; }
.hn-nav { position: relative; z-index: 5; background: #08111f; border-bottom: 1px solid #243044; }
.hn-nav-row { min-height: 74px; display: flex; align-items: center; gap: clamp(22px, 3.5vw, 52px); }
.hn-brand .brand__mark { --logo-dark: url(#lg-silver); width: 38px; height: 38px; }
.hn-brand .brand__text small { color: #9ba8b9; }
.hn-nav-links { display: flex; align-items: stretch; align-self: stretch; gap: clamp(20px, 2.8vw, 38px); margin-left: auto; }
.hn-nav-links a { display: flex; align-items: center; position: relative; white-space: nowrap; font-size: 14px; color: #c1cad7; }
.hn-nav-links a:hover, .hn-nav-links a[aria-current] { color: #f1d595; }
.hn-nav-links [aria-current]::after { content: ""; position: absolute; height: 2px; background: var(--gold-400); bottom: 12px; left: 0; width: 23px; }
.hn-menu { display: none; }
.hn-nav .btn { --h: 39px; padding-inline: 20px; font-size: 14px; }
.hn-ico { width: 18px; height: 18px; display: inline-block; flex: none; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.hn-skip { position: absolute; z-index: 10; top: 6px; left: 12px; transform: translateY(-155%); padding: 8px 16px; color: var(--navy-900); background: #f1d595; border-radius: 4px; }
.hn-skip:focus { transform: none; }
.hn-hero { position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(ellipse at 78% 48%, #182c43 0%, #102137 27%, #0a1729 55%, #08111f 83%); }
.hn-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background-image: linear-gradient(#b4c6d112 1px, transparent 1px),linear-gradient(90deg,#b4c6d112 1px,transparent 1px); background-size: 52px 52px; mask-image: linear-gradient(100deg,transparent 13%,#0009 83%); }
.hn-kicker { display: flex; align-items: center; gap: 12px; color: #e2bd76; font-size: 13px; font-weight: 550; letter-spacing: .11em; }
.hn-kicker::before { content: ""; width: 31px; height: 1px; background: var(--gold-500); }
.hn-actions { margin-top: 34px; display: flex; align-items: center; flex-wrap: wrap; gap: 14px 26px; }
.hn-actions .btn { --h: 48px; padding-inline: 24px; }
.hn-link { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; font-size: 15px; font-weight: 500; }
.hn-link:hover { color: #ecd39b; text-decoration: underline; text-underline-offset: 5px; }
.hn-status { display: grid; }
.hn-status > .hn-hero { display: grid; align-items: center; }
.hn-status-grid { display: grid; grid-template-columns: 1fr 1.03fr; align-items: center; gap: clamp(16px, 3vw, 48px); padding-block: clamp(56px, 8vh, 102px); }
.hn-status-copy h1 { margin-block: 20px 22px; font-size: clamp(52px, 5.7vw, 83px); line-height: 1.14; letter-spacing: .015em; font-weight: 650; }
.hn-status-copy p { color: #becada; max-width: 27em; font-size: clamp(16px, 1.26vw, 18px); line-height: 1.95; }
.hn-orbit { position: relative; width: 100%; max-width: 610px; margin-inline: auto; }
.hn-orbit::before { content: ""; position: absolute; inset: 12% 9%; background: radial-gradient(ellipse, #caa35e1c, transparent 68%); pointer-events: none; }
.hn-orbit svg { width: 100%; height: auto; position: relative; }
.hn-footer { padding-block: 28px 24px; border-top: 1px solid #283447; background: #08111f; }
.hn-footer-row, .hn-footer-legal { display: flex; align-items: center; justify-content: space-between; gap: 14px 28px; flex-wrap: wrap; }
.hn-footer-row { margin-bottom: 16px; }
.hn-footer-name { color: #e5eaf0; font-size: 15px; font-weight: 550; }
.hn-phone { display: inline-flex; align-items: center; gap: 10px; color: #e4c78b; font: 550 19px/1.3 var(--font-num); letter-spacing: .025em; }
.hn-phone .hn-ico { width: 16px; height: 16px; }
.hn-footer-legal { justify-content: flex-start; color: #a6b2c2; font-size: 12px; }
.hn-footer a:hover { text-decoration: underline; text-underline-offset: 4px; }
.hn-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 5px 12px; color: #abb9c9; font-size: 13px; padding-block: 20px 0; }
.hn-breadcrumb a:hover { text-decoration: underline; }
.hn-breadcrumb span[aria-hidden] { color: #63758b; }
.hn-breadcrumb [aria-current] { color: #e3d2b0; }
.hn-profile-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(36px, 5vw, 80px); align-items: center; padding-block: 45px 54px; }
.hn-profile-title { margin-top: 15px; font-size: clamp(36px, 4.6vw, 62px); font-weight: 650; letter-spacing: .015em; line-height: 1.25; }
.hn-profile-title small { display: block; font-size: clamp(19px, 2vw, 29px); font-weight: 500; margin-top: 10px; color: #e5c688; line-height: 1.4; }
.hn-profile-title .hn-colon { position: absolute; clip-path: inset(50%); width: 1px; height: 1px; overflow: hidden; }
.hn-facts { display: flex; gap: 32px; flex-wrap: wrap; margin: 28px 0 0; }
.hn-facts div { display: grid; gap: 3px; }
.hn-facts div + div { border-left: 1px solid #405065; padding-left: 32px; }
.hn-facts dt { color: #adbac9; font-size: 12px; letter-spacing: .08em; }
.hn-facts dd { margin: 0; font-weight: 550; font-size: 18px; line-height: 1.55; }
.hn-photo { position: relative; aspect-ratio: 1.74; border-radius: 12px; border: 1px solid #7a715a; background: #233245; overflow: hidden; }
.hn-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 48% 45%; }
.hn-photo figcaption { position: absolute; bottom: 0; left: 0; right: 0; display: flex; align-items: center; gap: 7px; padding: 28px 14px 9px; background: linear-gradient(transparent,#08111fda); color: #fff; font-size: 12px; }
.hn-photo figcaption .hn-ico { width: 14px; height: 14px; color: #efd296; }
.hn-reading { color: var(--ink); background: var(--ivory); }
.hn-reading-grid { display: grid; grid-template-columns: minmax(155px, .52fr) minmax(0, 1.85fr); gap: clamp(38px, 6vw, 100px); padding-block: clamp(40px, 5vw, 75px); align-items: start; }
.hn-toc { position: sticky; top: 24px; align-self: start; border-top: 2px solid #b99755; padding-top: 13px; }
.hn-toc h2, .hn-toc summary { font-size: 14px; color: #514734; font-weight: 650; letter-spacing: .06em; }
.hn-toc-links { display: grid; gap: 2px; margin-top: 12px; }
.hn-toc-links a { display: flex; align-items: center; gap: 10px; padding: 7px 2px; font-size: 14px; color: #495567; }
.hn-toc-links a::before { content: ""; width: 5px; height: 5px; border: 1px solid #a38d65; transform: rotate(45deg); }
.hn-toc-links a:hover, .hn-article a { color: #78561e; text-decoration: underline; text-underline-offset: 4px; }
.hn-toc-mobile { display: none; }
.hn-article { max-width: 820px; }
.hn-chapter { padding-block: 28px; border-bottom: 1px solid #d9d4c9; scroll-margin-top: 16px; }
.hn-chapter:first-child { padding-top: 0; }
.hn-chapter h2 { position: relative; padding-left: 17px; font-size: clamp(22px,2.1vw,29px); line-height: 1.45; letter-spacing: .02em; }
.hn-chapter h2::before { content:""; width:3px; height:.84em; position:absolute; left:0; top:.32em; background:var(--gold-600); }
.hn-chapter p { margin-top: 13px; color: #414957; font-size: 16.5px; line-height: 2; overflow-wrap: anywhere; }
.hn-chapter a[href^="tel:"] { white-space: nowrap; }
.hn-review { margin-top: 22px; color: #686456; font-size: 13px; line-height: 1.85; }
.hn-catalog-head { padding-block: 28px 56px; }
.hn-catalog-head h1 { font-size: clamp(35px, 4.5vw, 60px); line-height: 1.28; margin: 13px 0 8px; }
.hn-catalog-head p { color: #c3ceda; font-size: 16px; }
.hn-library { padding-block: clamp(30px,4vw,64px); }
.hn-feature { display: grid; grid-template-columns: minmax(0,.74fr) minmax(0,1.26fr); gap: clamp(22px,3vw,46px); align-items:center; padding: 22px; background:#fffdf8; border:1px solid #dbd5c9; border-radius:16px; color:var(--ink); }
.hn-feature .hn-photo { border:0; aspect-ratio:1.9; }
.hn-feature h2 { margin: 10px 0 15px; font-size: clamp(21px,2.2vw,31px); line-height:1.5; }
.hn-feature .hn-kicker { color:#786036; font-size:12px; }
.hn-feature .hn-link { color:#795921; }
.hn-feature:hover { border-color:#ae8e52; }
.hn-feature:hover .hn-link { text-decoration:underline; text-underline-offset:4px; }
.hn-catalog-page { display:flex; flex-direction:column; background:var(--ivory); }
@media (max-width: 800px) {
  .hn-nav-row { min-height: 62px; gap: 14px; }
  .hn-nav-links { display: none; }
  .hn-nav .btn { margin-left:auto; --h:36px; padding-inline:15px; font-size:13px; }
  .hn-menu { display:block; position:relative; }
  .hn-menu summary { width:42px; height:42px; display:grid; place-items:center; cursor:pointer; color:#ebd3a1; list-style:none; }
  .hn-menu summary::-webkit-details-marker, .hn-toc-mobile summary::-webkit-details-marker { display:none; }
  .hn-menu nav { position:absolute; right:0; top:49px; min-width:160px; padding:7px; border-radius:10px; background:#101f31; border:1px solid #495569; box-shadow:0 12px 24px #0004; }
  .hn-menu nav a { display:block; padding:10px 14px; color:#e5eaf0; font-size:14px; }
  .hn-menu nav a[aria-current] { color:#ecd39b; }
  .hn-status-grid, .hn-profile-grid { gap:20px; }
  .hn-status-copy h1 { font-size:clamp(43px,7vw,58px); }
}
@media (max-width: 640px) {
  .hn-status-grid, .hn-profile-grid, .hn-feature, .hn-reading-grid { grid-template-columns:minmax(0,1fr); }
  .hn-status-grid { gap: 4px; padding-block:42px 18px; }
  .hn-status-copy h1 { margin-block:15px 17px; }
  .hn-status-copy p { font-size:15.5px; line-height:1.85; }
  .hn-actions { margin-top:20px; gap:11px 18px; }
  .hn-actions .btn { --h:43px; font-size:14px; padding:0 18px; }
  .hn-actions .hn-link { font-size:14px; }
  .hn-orbit { max-width:370px; }
  .hn-brand { gap:7px; }
  .hn-brand .brand__mark { width:30px; height:30px; }
  .hn-brand .brand__text strong { font-size:16px; }
  .hn-brand .brand__text small { font-size:8px; }
  .hn-breadcrumb { padding-top:15px; font-size:12px; }
  .hn-profile-grid { padding-block:24px 27px; gap:23px; }
  .hn-profile-title { margin-top:9px; }
  .hn-profile-title small { margin-top:5px; font-size:19px; }
  .hn-facts { margin-top:18px; gap:24px; }
  .hn-facts div + div { padding-left:24px; }
  .hn-facts dd { font-size:16px; }
  .hn-photo { aspect-ratio:2.18; }
  .hn-reading-grid { padding-block:23px 36px; gap:25px; }
  .hn-toc-desktop { display:none; }
  .hn-toc-mobile { display:block; position:static; border:1px solid #d4ccbc; border-radius:9px; padding:0 13px; background:#fffaf0; }
  .hn-toc-mobile summary { list-style:none; padding-block:9px; min-height:44px; display:flex; align-items:center; justify-content:space-between; cursor:pointer; }
  .hn-toc-mobile[open] > summary .hn-ico { transform:rotate(180deg); }
  .hn-toc-mobile .hn-toc-links { margin:0 0 10px; }
  .hn-chapter { padding-block:22px; }
  .hn-chapter p { font-size:16px; }
  .hn-catalog-head { padding-block:24px 33px; }
  .hn-feature { padding:14px; gap:16px; }
  .hn-feature .hn-link { min-height:32px; }
  .hn-footer { padding-block:22px; }
  .hn-footer-row { gap:8px 16px; margin-bottom:11px; }
  .hn-footer-name { font-size:13px; }
  .hn-phone { font-size:16px; }
  .hn-footer-legal { gap:8px 16px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  .hn-page *, .hn-page *::before, .hn-page *::after { transition:none !important; }
}
@media print {
  .hn-nav,.hn-actions,.hn-breadcrumb,.hn-orbit,.hn-photo,.hn-toc,.hn-footer { display:none; }
  .hn-profile-grid,.hn-reading-grid { display:block; padding:12pt 0; }
  .hn-hero,.hn-reading,.hn-page { background:white; color:black; }
  .hn-wrap { width:100%; } .hn-profile-title small,.hn-kicker,.hn-facts dt { color:#333; }
  .hn-chapter { break-inside:avoid; }
}
