/* Homepage 2026-09-20. This first layer owns the simplified homepage only.
   Shared navigation, forms, reviews and buttons retain their existing systems. */
@layer section-media-scroll, homepage-renewal;
/* Owner's reference: the process accordion is an open navy reading layout.
   Its states belong in the shared control layer so utility-button rules cannot
   turn the rows into white boxes or replace their spacing and typography. */
@layer lifa-button-states {
  body.home-page #home-process .hn-accordion > details > summary {
    --control-bg: transparent;
    --control-ink: #fff;
    --control-edge: transparent;
    --control-hover-bg: transparent;
    --control-hover-ink: #fff;
    --control-hover-edge: transparent;
    --control-rise: 0px;
    --control-press-scale: 1;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
    min-width: 0 !important;
    min-height: 44px !important;
    padding-block: 23px !important;
    padding-inline: 0 !important;
    color: #fff !important;
    -webkit-text-fill-color: currentColor !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font: 600 17px/1.65 var(--font-ui, 'Montserrat'), sans-serif !important;
    text-align: left !important;
    list-style: none !important;
    transform: none !important;
    translate: 0 0 !important;
    scale: 1 !important;
    transition: color var(--motion-duration-button, 220ms) var(--motion-ease-button, ease) !important;
  }
  body.home-page #home-process .hn-accordion > details > summary:focus-visible {
    outline: 3px solid var(--lifa-color-accent) !important;
    outline-offset: 4px !important;
  }
  body.home-page #home-process .hn-accordion > details > summary > span:first-child {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
  }
  body.home-page #home-process .hn-accordion .hn-plus {
    color: var(--lifa-color-accent) !important;
    -webkit-text-fill-color: currentColor !important;
  }
  body.home-page #home-process .hn-accordion > details > div { padding: 0 0 20px !important; }
  @media (max-width: 800px) {
    body.home-page #home-process .hn-accordion > details > summary {
      padding-block: 20px !important;
      font-size: 15px !important;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    body.home-page #home-process .hn-accordion > details > summary { transition: none !important; }
  }
}
/* Labels belong to their existing artwork slot, so small-screen text remains sharp. */
@layer homepage-renewal {
  /* One reading entrance per group; no nested card choreography or scroll hijacking. */
  .home-page { --hn-enter-duration: 900ms; --hn-enter-distance: 48px; --hn-enter-ease: cubic-bezier(.16,.7,.22,1); }
  @media (max-width: 800px) {
    .home-page { --hn-enter-duration: 850ms; --hn-enter-distance: 36px; }
  }
  .home-page main [data-home-reveal] {
    opacity: 1 !important;
    transform: none !important;
    translate: 0 0 !important;
    transition: opacity var(--hn-enter-duration) var(--hn-enter-ease), translate var(--hn-enter-duration) var(--hn-enter-ease) !important;
  }
  .home-page main [data-home-reveal="waiting"] { opacity: 0 !important; translate: 0 var(--hn-enter-distance) !important; transition: none !important; }
  .home-page main [data-home-reveal="settled"] { transition: none !important; }
  .home-page .hn-text-link > span[aria-hidden="true"],
  .home-page .hn-intent-link > svg,
  .home-page .hn-guide-download > span[aria-hidden="true"] {
    translate: 0 0;
    transition: translate 180ms var(--motion-ease-button, cubic-bezier(.22,1,.36,1));
  }
  .home-page .hn-accordion .hn-plus { transition: transform 180ms var(--motion-ease-button, cubic-bezier(.22,1,.36,1)) !important; }
  .home-page .hn-guide-download { transition: border-color 180ms ease !important; }
  @media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
    .home-page .hn-text-link:hover > span[aria-hidden="true"],
    .home-page .hn-intent-link:hover > svg { translate: 3px 0; }
    .home-page .hn-guide-download:hover > span[aria-hidden="true"] { translate: 0 2px; }
  }
  @media (prefers-reduced-motion: reduce) {
    html:has(body.home-page) { scroll-behavior: auto !important; }
    .home-page main [data-home-reveal] { opacity: 1 !important; translate: none !important; transition: none !important; }
    .home-page .hn-text-link > span[aria-hidden="true"], .home-page .hn-intent-link > svg,
    .home-page .hn-guide-download > span[aria-hidden="true"], .home-page .hn-accordion .hn-plus { transition: none !important; translate: none !important; }
  }
  @media print {
    .home-page main [data-home-reveal] { opacity: 1 !important; translate: none !important; transition: none !important; }
  }
  /* Keep inquiry entry points visible below the sticky navigation. */
  .home-page #homeSourcingRequest {
    scroll-margin-block-start: 200px;
  }
  .home-page #home-technical-rfq {
    scroll-margin-block-start: 112px;
  }
  .home-page .hn-art-annotation {
    position: absolute !important;
    inset: 4% 2% auto auto !important;
    z-index: 1 !important;
    box-sizing: border-box !important;
    width: 34% !important;
    padding: clamp(6px, .8vw, 12px) !important;
    color: #0F1E36 !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: clamp(10px, 1.25vw, 16px) !important;
    line-height: 1.4 !important;
    text-align: left !important;
  }
  .home-page .hn-art-annotation strong {
    display: block !important;
    max-inline-size: 10ch !important;
    padding-bottom: .35em !important;
    border-bottom: 2px solid #EED47D !important;
    font: 600 clamp(12px, 1.55vw, 20px)/1.25 'Montserrat', sans-serif !important;
    color: inherit !important;
  }
  .home-page .hn-art-annotation ul {
    display: grid !important;
    gap: .2em !important;
    margin: .45em 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  .home-page .hn-art-annotation li {
    display: flex !important;
    align-items: center !important;
    gap: .4em !important;
    margin: 0 !important;
    padding: 0 !important;
    font: inherit !important;
    color: inherit !important;
  }
  .home-page .hn-art-annotation li::before {
    content: '' !important;
    flex: 0 0 .4em !important;
    width: .4em !important;
    height: .4em !important;
    border-radius: 50% !important;
    background: #245B5A !important;
  }
}
/* Navy navigation uses readable UI type; gold signature lettering keeps Reey. */
@layer lifa-gold-signatures {
  .home-page :is(#home-projects,#home-services,#home-industries,#home-resources,#home-faq) .hn-text-link {
    font-family: 'Montserrat',sans-serif !important;
    font-weight: 600 !important;
    font-size: .875rem !important;
    line-height: 1.6 !important;
    padding-inline: 0 !important;
  }
}
@layer homepage-renewal {
  .home-page .hn-starting-points { padding: 40px 0 44px !important; background: #fff !important; color: var(--lifa-color-primary) !important; }
  .home-page .hn-starting-heading { display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; align-items: end !important; gap: 16px 48px !important; margin-bottom: 20px !important; }
  .home-page .hn-starting-heading h2 { margin: 0 !important; font-family: var(--font-display,'Prata'),serif !important; font-size: clamp(1.65rem,2.5vw,2.2rem) !important; font-weight: 400 !important; line-height: 1.4 !important; text-wrap: balance !important; color: var(--lifa-color-primary) !important; }
  .home-page .hn-starting-heading p { margin: 0 !important; color: var(--hn-copy) !important; font-family: var(--font-body,'Open Sans'),sans-serif !important; font-size: 1rem !important; line-height: 1.7 !important; }
  .home-page .hn-intent-list { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 0 32px !important; padding: 0 !important; margin: 0 !important; list-style: none !important; }
  .home-page .hn-intent-list > li { min-width: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-bottom: 1px solid #dce2e8 !important; background: none !important; box-shadow: none !important; border-radius: 0 !important; }
  .home-page .hn-intent-list > li::before { content: none !important; }
  .home-page .hn-intent-link { display: flex !important; align-items: start !important; justify-content: space-between !important; gap: 16px !important; min-height: 44px !important; height: 100% !important; padding: 20px 0 !important; color: var(--lifa-color-primary) !important; text-decoration: none !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
  .home-page .hn-intent-link > span { min-width: 0 !important; }
  .home-page .hn-intent-link strong { display: block !important; margin-bottom: 8px !important; font-family: var(--font-ui,'Montserrat'),sans-serif !important; font-size: 1rem !important; line-height: 1.5 !important; font-weight: 600 !important; }
  .home-page .hn-intent-link > span > span { display: block !important; font-family: var(--font-body,'Open Sans'),sans-serif !important; font-size: .9rem !important; line-height: 1.7 !important; color: var(--hn-copy) !important; }
  .home-page .hn-intent-link svg { flex: 0 0 22px !important; margin-top: 2px !important; color: var(--lifa-color-support) !important; }
  .home-page .hn-intent-link:hover strong { text-decoration: underline !important; text-underline-offset: 4px !important; }
  .home-page .hn-intent-link:focus-visible { outline: 3px solid var(--lifa-color-support) !important; outline-offset: 5px !important; }
  .home-page .hn-audience .hn-technical-request { display: flex !important; width: fit-content !important; margin-top: 4px !important; }
  .home-page .hn-procurement-path { grid-column: 1 / -1 !important; min-width: 0 !important; padding-top: 30px !important; border-top: 1px solid rgba(255,255,255,.22) !important; }
  .home-page .hn-path-heading { display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; gap: 16px 48px !important; align-items: baseline !important; margin-bottom: 20px !important; }
  .home-page .hn-path-heading h3 { margin: 0 !important; font-family: var(--font-display,'Prata'),serif !important; font-size: clamp(1.35rem,2vw,1.75rem) !important; font-weight: 400 !important; line-height: 1.5 !important; color: #fff !important; }
  .home-page .hn-path-heading p,.home-page .hn-after-delivery { margin: 0 !important; font-size: .95rem !important; line-height: 1.8 !important; color: #d6dfec !important; }
  .home-page .hn-path-steps { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 12px 36px !important; margin: 0 0 24px !important; padding: 0 !important; list-style: none !important; }
  .home-page .hn-path-steps > li { display: flex !important; align-items: baseline !important; gap: 16px !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
  .home-page .hn-path-steps > li::before { content: none !important; }
  .home-page .hn-path-number { flex: 0 0 28px !important; color: var(--lifa-color-accent) !important; font-family: var(--font-signature,'Reey'),cursive !important; font-size: 1rem !important; font-weight: 400 !important; line-height: 1.7 !important; }
  .home-page #home-process .hn-difference-grid { row-gap: 36px !important; }
  .home-page .hn-path-steps a { display: inline-flex !important; align-items: center !important; min-height: 44px !important; color: #fff !important; font-family: var(--font-ui,'Montserrat'),sans-serif !important; font-size: 1rem !important; font-weight: 600 !important; text-decoration: underline !important; text-decoration-color: rgba(238,212,125,.55) !important; text-underline-offset: 5px !important; }
  .home-page .hn-path-steps p { margin: 0 !important; color: #d6dfec !important; font-size: .9rem !important; line-height: 1.7 !important; }
  .home-page .hn-after-delivery { max-width: 82ch !important; padding-top: 20px !important; border-top: 1px solid rgba(255,255,255,.22) !important; }
  .home-page .hn-after-delivery a { color: #fff !important; font-family: inherit !important; font-size: inherit !important; text-decoration: underline !important; text-decoration-color: var(--lifa-color-accent) !important; text-underline-offset: 4px !important; }
  .home-page .hn-procurement-path a:focus-visible { outline: 3px solid var(--lifa-color-accent) !important; outline-offset: 4px !important; }
  @media (max-width: 900px) {
    .home-page .hn-intent-list { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 0 28px !important; }
    .home-page .hn-starting-heading,.home-page .hn-path-heading { grid-template-columns: minmax(0,1fr) !important; gap: 12px !important; }
  }
  @media (max-width: 600px) {
    .home-page .hn-starting-points { padding-block: 32px !important; }
    .home-page .hn-intent-list,.home-page .hn-path-steps { grid-template-columns: minmax(0,1fr) !important; }
    .home-page .hn-intent-link { padding-block: 16px !important; }
    .home-page .hn-path-steps { gap: 10px !important; }
    .home-page .hn-path-steps > li { padding-bottom: 10px !important; border-bottom: 1px solid rgba(255,255,255,.12) !important; }
    .home-page .home-request-form .home-form-optional > .home-form-grid { padding: 18px 12px !important; gap: 18px 20px !important; }
    .home-page #home-request-rfq-reference { min-height: 104px !important; }
    .home-page .home-request-intro { padding: 20px 16px !important; }
    .home-page .home-request-form { padding-inline: 12px !important; }
    .home-page .home-request-form .lifa-quick-needs { padding: 12px 0 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
    .home-page .home-request-form .lifa-quick-needs legend { padding-inline: 0 !important; }
    .home-page .home-request-form .lifa-quick-needs-options { gap: 0 !important; }
    .home-page .home-request-form .lifa-quick-pick { min-height: 52px !important; padding: 12px 4px !important; border: 0 !important; border-bottom: 1px solid #dce2e8 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; line-height: 1.5 !important; }
    .home-page .home-request-form .lifa-quick-pick:has(input:checked) { background: var(--lifa-color-reading-surface) !important; }
    .home-page .home-request-form .lifa-quick-pick:has(input:focus-visible) { outline: 3px solid var(--lifa-color-support) !important; outline-offset: 2px !important; }
  }
  .home-page .site-footer img.footer-logo,.home-page .site-header .brand img { content: normal !important; }
  .home-page .hn-fee-note strong { color: var(--hn-navy) !important; }
  .home-page :is(.hn-hero,.hn-difference,.hn-services,.hn-resources,.hn-audiences),.home-page :is(.hn-hero,.hn-difference,.hn-services,.hn-resources,.hn-audiences) [data-motion] { opacity: 1 !important; visibility: visible !important; transform: none !important; translate: none !important; }
  .home-page .hn-accordion details,.home-page .hn-accordion summary { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; }
  .home-page .hn-accordion summary { color: #fff !important; border: 0 !important; }
  .home-page .hn-label { font-family: 'Montserrat',sans-serif !important; }
  .home-page :is(.hn-hero,.hn-difference,.hn-services,.hn-resources,.hn-audiences) * { -webkit-text-fill-color: currentColor !important; }
  .home-page { --hn-navy: #0f1e36 !important; --hn-gold: var(--lifa-official-gold, #eed47d) !important; --hn-copy: #41516a !important; --hn-paper: #f5f7fa !important; background: #fff !important; }
  .home-page [data-homepage-renewal] { background: #fff !important; color: var(--hn-navy) !important; }
  .home-page .hn-container { width: min(1180px, calc(100% - 64px)) !important; margin-inline: auto !important; }
  .home-page [class^="hn-"] { box-sizing: border-box !important; }
  .home-page .hn-hero { display: block !important; position: relative !important; min-height: 0 !important; height: auto !important; padding: 24px 0 60px !important; margin: 0 !important; background: linear-gradient(180deg, #fff 30%, #f5f7fa 100%) !important; color: var(--hn-navy) !important; overflow: visible !important; }
  .home-page .hn-hero::before,.home-page .hn-hero::after { content: none !important; }
  .home-page .hn-hero-copy { text-align: center !important; margin: 0 auto !important; max-width: 960px !important; }
  .home-page .hn-hero .eyebrow { display: block !important; margin: 0 0 15px !important; color: var(--hn-copy) !important; font-size: 12px !important; }
  .home-page .hn-hero h1 { width: 100% !important; max-width: 23ch !important; margin: 0 auto 22px !important; color: var(--hn-navy) !important; text-shadow: none !important; font-size: clamp(2rem, 4.1vw, 3.6rem) !important; line-height: 1.18 !important; text-align: center !important; }
  .home-page .hn-hero h1 [data-hero-signature] { display: table !important; margin: 16px auto 0 !important; padding: 8px 20px 12px !important; font-size: clamp(.85rem, 1.4vw, 1.05rem) !important; background: var(--hn-navy) !important; color: var(--hn-gold) !important; border-radius: 6px !important; line-height: 1.75 !important; }
  .home-page .hn-hero .direct-answer { max-width: 65ch !important; margin: 0 auto !important; color: var(--hn-copy) !important; font-size: 17px !important; line-height: 1.75 !important; text-shadow: none !important; }
  .home-page .hn-hero .hero-actions { display: flex !important; flex-wrap: wrap !important; justify-content: center !important; gap: 14px !important; margin: 28px 0 18px !important; width: 100% !important; }
  .home-page .hn-hero .hero-actions .btn { min-width: 226px !important; }
  .home-page .hn-fee-note { max-width: 80ch !important; margin: 0 auto !important; font-size: 12px !important; line-height: 1.7 !important; color: var(--hn-copy) !important; text-shadow: none !important; }
  .home-page .hn-fee-note a { color: var(--hn-navy) !important; text-decoration: underline !important; text-underline-offset: 3px !important; }
  .home-page :is(.hn-audiences,.hn-services,.hn-resources,.hn-difference) { padding: 76px 0 !important; }
  .home-page .hn-section-head { max-width: 720px !important; text-align: center !important; margin: 0 auto 48px !important; }
  .home-page .hn-section-head .eyebrow,.home-page .hn-resources .eyebrow { color: var(--hn-copy) !important; }
  .home-page :is(.hn-section-head,.hn-difference-intro,.hn-resource-grid) h2 { font-family: var(--font-display,'Prata'),Georgia,serif !important; font-size: clamp(1.8rem,2.8vw,2.5rem) !important; line-height: 1.35 !important; max-width: none !important; color: var(--hn-navy) !important; margin: 12px 0 16px !important; text-wrap: balance !important; }
  .home-page :is(.hn-section-head,.hn-audience-copy,.hn-difference-intro,.hn-resource-grid) p { color: var(--hn-copy) !important; font-size: 16px !important; line-height: 1.85 !important; margin: 0 0 20px !important; }
  .home-page .hn-audience { display: grid !important; grid-template-columns: 1fr 1fr !important; align-items: center !important; gap: 72px !important; margin: 0 0 88px !important; }
  .home-page .hn-audience:last-of-type { margin-bottom: 24px !important; }
  .home-page .hn-audience-copy { order: 2 !important; }
  .home-page .hn-audience-reverse .hn-audience-copy { order: 0 !important; }
  .home-page .hn-label { display: inline-block !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .08em !important; text-transform: uppercase !important; padding-bottom: 10px !important; border-bottom: 3px solid var(--hn-gold) !important; color: var(--hn-copy) !important; }
  .home-page .hn-audience h3 { font-family: var(--font-display,'Prata'),Georgia,serif !important; font-size: clamp(1.5rem,2.2vw,1.85rem) !important; line-height: 1.4 !important; color: var(--hn-navy) !important; margin: 18px 0 20px !important; text-wrap: balance !important; }
  .home-page .hn-text-link { display: inline-flex !important; align-items: center !important; gap: 12px !important; min-height: 44px !important; font-weight: 700 !important; color: var(--hn-navy) !important; text-decoration: none !important; }
  .home-page .hn-text-link:hover { text-decoration: underline !important; text-underline-offset: 5px !important; }
  .home-page .hn-audience-routes {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 22px !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  .home-page .hn-audience-routes li { margin: 0 !important; padding: 0 !important; }
  .home-page .hn-audience-routes a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 44px !important;
    color: var(--lifa-color-support) !important;
    font: 600 14px/1.5 var(--font-ui, Montserrat, Arial, sans-serif) !important;
    text-decoration: underline !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 4px !important;
  }
  .home-page .hn-visual { position: relative !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; isolation: isolate !important; }
  .home-page .hn-visual::before { content: none !important; }
  .home-page .hn-visual > img { display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 3 / 2 !important; object-fit: contain !important; border-radius: 16px !important; }
  .home-page .hn-image-note { margin: 0 !important; text-align: center !important; color: #52617a !important; font-size: 12px !important; }
  .home-page .hn-image-note a { text-decoration: underline !important; }
  .home-page .hn-difference { background: var(--hn-navy) !important; color: #fff !important; }
  .home-page .hn-difference-grid { display: grid !important; grid-template-columns: .95fr 1.05fr !important; align-items: start !important; gap: 80px !important; }
  .home-page .hn-difference-intro .eyebrow { color: var(--hn-gold) !important; }
  .home-page .hn-difference-intro h2 { color: #fff !important; }
  .home-page .hn-difference-intro > p { color: #d6dfec !important; }
  .home-page .hn-pricing { padding: 24px !important; margin-top: 28px !important; background: #fff !important; color: var(--hn-navy) !important; border-top: 3px solid var(--hn-gold) !important; border-radius: 10px !important; }
  .home-page .hn-pricing > span { font-weight: 700 !important; font-size: 12px !important; text-transform: uppercase !important; letter-spacing: .06em !important; }
  .home-page .hn-pricing p { font-size: 13px !important; line-height: 1.7 !important; margin: 18px 0 !important; }
  .home-page .hn-pricing strong { display: block !important; color: var(--hn-navy) !important; margin-bottom: 3px !important; font-size: 16px !important; }
  .home-page .hn-pricing small { display: block !important; font-size: 11px !important; line-height: 1.7 !important; color: var(--hn-copy) !important; }
  .home-page .hn-pricing a { display: inline-flex !important; align-items: center !important; min-height: 44px !important; margin-top: 10px !important; font-size: 13px !important; font-weight: 700 !important; color: var(--hn-navy) !important; text-decoration: underline !important; text-underline-offset: 4px !important; }
  .home-page .hn-accordion { min-width: 0 !important; }
  .home-page .hn-accordion details { border-bottom: 1px solid rgba(255,255,255,.22) !important; }
  .home-page .hn-accordion summary { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 20px !important; padding: 23px 0 !important; font-size: 17px !important; font-weight: 600 !important; cursor: pointer !important; list-style: none !important; }
  .home-page .hn-accordion summary::-webkit-details-marker { display: none !important; }
  .home-page .hn-plus { display: inline-grid !important; place-items: center !important; flex: 0 0 28px !important; width: 28px !important; height: 28px !important; margin-inline: 8px !important; line-height: 1 !important; color: var(--hn-gold) !important; font-size: 26px !important; font-weight: 400 !important; }
  .home-page .hn-accordion details[open] .hn-plus { transform: rotate(45deg) !important; }
  .home-page .hn-accordion details > div { padding: 0 36px 20px 12px !important; }
  .home-page .hn-accordion p { color: #d6dfec !important; font-size: 14px !important; line-height: 1.85 !important; margin: 0 0 10px !important; }
  .home-page .hn-accordion a { color: var(--hn-gold) !important; font-size: 13px !important; }
  .home-page .hn-numbers { padding: clamp(40px,5vw,72px) 0 !important; background: #fafaf8 !important; color: var(--hn-navy) !important; opacity: 1 !important; visibility: visible !important; transform: none !important; }
  .home-page .hn-numbers * { -webkit-text-fill-color: currentColor !important; }
  .home-page .hn-numbers .hn-section-head { margin: 0 auto 28px !important; }
  .home-page .hn-numbers h2 { margin: 0 !important; padding: .15em .25em !important; font-family: var(--font-signature, 'Reey', cursive) !important; font-size: clamp(1.65rem, 3vw, 2.6rem) !important; font-weight: 400 !important; font-style: normal !important; font-synthesis: none !important; line-height: 1.65 !important; letter-spacing: 0 !important; text-transform: none !important; }
  .home-page .hn-numbers .hn-section-head p { margin: 24px auto 0 !important; max-width: 48ch !important; font-size: 15px !important; line-height: 1.7 !important; color: var(--hn-copy) !important; }
  .home-page .hn-numbers-layout { display: grid !important; grid-template-columns: 1.04fr 1fr !important; align-items: center !important; gap: clamp(32px,4vw,64px) !important; }
  .home-page .hn-numbers-visual { position: relative !important; display: block !important; width: 100% !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
  .home-page .hn-numbers-visual img { display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 3 / 2 !important; object-fit: contain !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; filter: none !important; }
  .home-page .hn-numbers-detail { min-width: 0 !important; }
  .home-page .hn-number-grid { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 0 32px !important; list-style: none !important; padding: 0 !important; margin: 0 !important; border-top: 2px solid var(--hn-gold) !important; }
  .home-page .hn-number-grid > li { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; min-width: 0 !important; margin: 0 !important; padding: 26px 0 !important; border-bottom: 1px solid #d8ddd9 !important; background: transparent !important; border-radius: 0 !important; box-shadow: none !important; }
  .home-page .hn-number-grid > li::before { content: none !important; }
  .home-page .hn-number-value { display: block !important; margin: 0 0 12px !important; font-family: 'Montserrat',sans-serif !important; font-size: clamp(2rem,3.25vw,3rem) !important; font-weight: 600 !important; line-height: 1.12 !important; letter-spacing: -.055em !important; color: var(--hn-navy) !important; font-variant-numeric: tabular-nums !important; white-space: nowrap !important; }
  .home-page .hn-number-label { display: flex !important; align-items: center !important; justify-content: center !important; gap: 9px !important; min-height: 24px !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.45 !important; color: var(--hn-copy) !important; }
  .home-page .hn-number-label svg { flex: 0 0 20px !important; width: 20px !important; height: 20px !important; color: var(--lifa-color-support) !important; }
  .home-page .hn-numbers-action { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 12px !important; margin-top: 28px !important; }
  .home-page .hn-numbers-cta { display: inline-flex !important; width: fit-content !important; max-width: 100% !important; min-height: 52px !important; justify-content: center !important; gap: 18px !important; margin: 0 !important; padding: 15px 22px !important; box-shadow: 0 8px 18px rgba(15,30,54,.09),inset 0 1px 0 rgba(255,255,255,.5) !important; }
  .home-page .hn-numbers-cta-note { max-width: 38ch !important; margin: 0 !important; color: var(--hn-copy) !important; font: 400 12px/1.6 var(--font-ui, Montserrat, Arial, sans-serif) !important; text-align: center !important; }
  .home-page .client-reviews .cr-avatar { flex-basis: 60px !important; width: 60px !important; min-width: 60px !important; height: 52px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; overflow: visible !important; color: var(--hn-gold) !important; text-shadow: 0 1px 1px rgba(15,30,54,.65), 0 2px 5px rgba(15,30,54,.14) !important; }
  .home-page .hn-guide-download { display: flex !important; align-items: center !important; gap: 16px !important; padding: 18px !important; margin: 0 0 24px !important; border: 1px solid #d7dfe9 !important; border-left: 3px solid var(--hn-gold) !important; border-radius: 8px !important; background: #fff !important; color: var(--hn-navy) !important; text-decoration: none !important; }
  .home-page .hn-guide-download:hover { border-color: #8291a7 !important; }
  .home-page .hn-guide-download > svg { flex: 0 0 24px !important; }
  .home-page .hn-guide-download > span:last-child { margin-left: auto !important; }
  .home-page .hn-guide-download strong { display: block !important; font-size: 14px !important; line-height: 1.6 !important; }
  .home-page .hn-guide-download small { display: block !important; margin-top: 4px !important; font-size: 12px !important; line-height: 1.7 !important; color: var(--hn-copy) !important; }
  @media(max-width:800px) {
    .home-page .hn-numbers-layout { grid-template-columns: minmax(0,1fr) !important; gap: 20px !important; }
    .home-page .hn-numbers-visual { max-width: 480px !important; margin-inline: auto !important; }
    .home-page .hn-numbers-detail { width: 100% !important; max-width: 560px !important; margin-inline: auto !important; }
    .home-page .hn-number-value { font-size: clamp(2rem,5.2vw,2.8rem) !important; }
  }
  @media(max-width:500px) {
    .home-page .hn-numbers .hn-section-head { margin-bottom: 18px !important; }
    .home-page .hn-numbers .hn-section-head p { font-size: 14px !important; }
    .home-page .hn-number-grid { grid-template-columns: minmax(0,1fr) !important; gap: 0 !important; }
    .home-page .hn-number-grid > li { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 8px !important; padding: 20px 0 !important; }
    .home-page .hn-number-value { margin: 0 !important; font-size: clamp(1.5rem,7.7vw,2.2rem) !important; }
    .home-page .hn-number-label { gap: 8px !important; font-size: 13px !important; }
    .home-page .hn-number-label svg { width: 17px !important; height: 17px !important; flex-basis: 17px !important; }
    .home-page .hn-numbers-action { align-items: center !important; flex-direction: column !important; gap: 12px !important; margin-top: 24px !important; }
    .home-page .hn-numbers-cta { width: fit-content !important; max-width: calc(100% - 104px) !important; padding-inline: 16px !important; gap: 10px !important; }
    .home-page .hn-numbers-cta-note { max-width: calc(100% - 104px) !important; text-align: center !important; }
    .home-page .hn-guide-download { padding: 16px 12px !important; gap: 12px !important; }
  }
  .home-page .hn-service-grid { display: flex !important; flex-direction: column !important; gap: 0 !important; }
  @media(max-width:380px) {
    .home-page .hn-numbers h2 { font-size: 1.35rem !important; }
    .home-page .hn-number-grid > li { grid-template-columns: minmax(0,1fr) !important; gap: 8px !important; padding: 18px 0 !important; }
    .home-page .hn-number-value { font-size: 2rem !important; }
    .home-page .hn-number-label { font-size: 13px !important; overflow-wrap: normal !important; word-break: normal !important; }
    .home-page .hn-numbers-cta { padding-inline: 14px !important; gap: 10px !important; font-size: 12px !important; }
    .home-page .hn-numbers-cta > span[aria-hidden] { display: none !important; }
  }
  .home-page .hn-service { display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; align-items: center !important; gap: clamp(32px,5vw,72px) !important; padding: 40px 0 !important; border: 0 !important; border-top: 1px solid #dce2e8 !important; border-radius: 0 !important; background: transparent !important; color: var(--hn-navy) !important; box-shadow: none !important; }
  .home-page .hn-service:nth-child(even) .hn-service-visual { order: 2 !important; }
  .home-page .hn-service-visual { position: relative !important; margin: 0 !important; min-width: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
  .home-page .hn-service-visual img { display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 3/2 !important; object-fit: contain !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
  .home-page .hn-service-copy { display: block !important; min-width: 0 !important; padding: 0 !important; }
  .home-page .hn-service h3 { font-family: 'Prata',serif !important; font-size: clamp(1.5rem,2.2vw,2rem) !important; font-weight: 400 !important; line-height: 1.4 !important; color: var(--hn-navy) !important; margin: 8px 0 16px !important; }
  .home-page .hn-service p { color: var(--hn-copy) !important; font-size: 15px !important; line-height: 1.8 !important; margin: 0 0 18px !important; }
  .home-page .hn-service .hn-service-deliverable { padding-left: 16px !important; border-left: 2px solid var(--lifa-color-support) !important; font-size: 14px !important; }
  .home-page .hn-service-deliverable strong { display: block !important; color: var(--hn-navy) !important; font-size: 12px !important; margin-bottom: 4px !important; }
  .home-page .hn-service-action { display: inline-flex !important; align-items: center !important; min-height: 44px !important; gap: 12px !important; font-size: 14px !important; font-weight: 600 !important; }
  .home-page .hn-projects { padding: 56px 0 !important; background: var(--lifa-color-reading-surface) !important; color: var(--hn-navy) !important; }
  .home-page .hn-projects-heading { display: flex !important; align-items: end !important; justify-content: space-between !important; flex-wrap: wrap !important; gap: 12px 32px !important; margin-bottom: 28px !important; }
  .home-page .hn-projects-heading h2 { font-family: 'Prata',serif !important; font-weight: 400 !important; font-size: clamp(1.65rem,2.6vw,2.25rem) !important; line-height: 1.4 !important; margin: 8px 0 0 !important; }
  .home-page .hn-project-list { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 40px !important; }
  .home-page .hn-project { min-width: 0 !important; padding-top: 24px !important; border-top: 2px solid var(--lifa-color-support) !important; }
  .home-page .hn-project .hn-project-market { font-size: 12px !important; font-weight: 600 !important; color: var(--lifa-color-support) !important; margin: 0 0 10px !important; }
  .home-page .hn-project h3 { font-family: 'Prata',serif !important; font-size: 1.4rem !important; line-height: 1.5 !important; font-weight: 400 !important; margin: 0 0 16px !important; color: var(--hn-navy) !important; }
  .home-page .hn-project p,.home-page .hn-project dd { font-size: 14px !important; line-height: 1.8 !important; color: var(--hn-copy) !important; margin: 0 !important; }
  .home-page .hn-project dl { margin: 18px 0 12px !important; }
  .home-page .hn-project dl > div + div { margin-top: 12px !important; }
  .home-page .hn-project dt { font-size: 12px !important; font-weight: 700 !important; color: var(--hn-navy) !important; margin: 0 0 3px !important; }
  .home-page .hn-projects .hn-text-link { font-size: 13px !important; min-height: 44px !important; }
  /* Use balanced page margins; floating controls do not reserve a reading column. */
  .home-page .site-footer .footer-bottom-content { padding-inline-end: 0 !important; }
  .home-page .hn-language-support { padding-left: 16px !important; border-left: 2px solid var(--lifa-color-support) !important; }
  .home-page .hn-language-support strong { display: block !important; color: var(--hn-navy) !important; }
  .home-page #home-request :is(h2,h3) { font-family: var(--font-display,'Prata'),serif !important; font-weight: 400 !important; line-height: 1.4 !important; }
  .home-page .home-request-intro > .home-contact-options { display: grid !important; }
  .home-page .home-contact-options a { padding: 14px 0 !important; border: 0 !important; border-top: 1px solid #dce2e8 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
  .home-page .home-contact-options span { font-size: .8rem !important; line-height: 1.6 !important; }
  .home-page .home-contact-options strong { font-size: .875rem !important; line-height: 1.6 !important; }
  .home-page .hn-all-services { display: flex !important; width: fit-content !important; margin: 26px auto 0 !important; font-size: 14px !important; }
  .home-page .hn-resources { background: var(--hn-paper) !important; }
  .home-page .hn-resource-grid { display: grid !important; grid-template-columns: 1fr 1.1fr !important; gap: 64px !important; align-items: center !important; }
  .home-page .hn-guide-art { min-width: 0 !important; margin: 0 !important; }
  .home-page .hn-guide-art img { display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 3/2 !important; object-fit: contain !important; border-radius: 14px !important; }
  .home-page .hn-guide-links { padding: 0 !important; list-style: none !important; margin: 0 0 22px !important; }
  .home-page .hn-guide-links a { display: inline-flex !important; align-items: center !important; min-height: 44px !important; padding: 5px 0 !important; color: var(--hn-navy) !important; text-decoration: underline !important; text-underline-offset: 4px !important; font-size: 14px !important; }
  .home-page .hn-resource-actions { display: flex !important; gap: 24px !important; align-items: center !important; flex-wrap: wrap !important; }
  .home-page .hn-resource-actions .hn-text-link { font-size: 13px !important; }
  .home-page #home-faq .section-heading::before { content: none !important; }
  .home-page .hn-faq-more { margin: 20px 0 0 !important; text-align: center !important; }
  .home-page .hn-faq-more a { display: inline-flex !important; align-items: center !important; min-height: 44px !important; text-decoration: underline !important; text-underline-offset: 4px !important; }
  .home-page .hn-legacy-routes { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 14px 36px !important; padding-block: 18px 32px !important; }
  .home-page .hn-legacy-routes a { display: inline-flex !important; align-items: center !important; min-height: 44px !important; color: var(--hn-copy) !important; font-size: 12px !important; text-decoration: underline !important; text-underline-offset: 4px !important; }
  .home-page [data-homepage-renewal] :is(a,summary):not(.btn,.signal-item):focus-visible { outline: 3px solid var(--hn-gold) !important; outline-offset: 4px !important; box-shadow: 0 0 0 6px var(--hn-navy) !important; }
  .home-page .post-hero-signal-shell .signal-item:focus-visible { outline: 3px solid var(--hn-navy) !important; outline-offset: -4px !important; box-shadow: inset 0 -2px 0 var(--hn-gold) !important; }
  @media(max-width:1000px) {
    .home-page .hn-audience { gap: 36px !important; margin-bottom: 64px !important; }
    .home-page .hn-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    .home-page .hn-difference-grid,.home-page .hn-resource-grid { gap: 40px !important; }
  }
  @media(max-width:800px) {
    .home-page .hn-service { grid-template-columns: minmax(0,1fr) !important; gap: 20px !important; padding: 28px 0 !important; }
    .home-page .hn-service-visual,.home-page .hn-service:nth-child(even) .hn-service-visual { order: 0 !important; max-width: 560px !important; margin-inline: auto !important; }
    .home-page .hn-service-copy { order: 1 !important; }
    .home-page .hn-projects { padding: 36px 0 !important; }
    .home-page .hn-project-list { grid-template-columns: minmax(0,1fr) !important; gap: 28px !important; }
    .home-page .hn-container { width: min(100% - 40px, 660px) !important; }
    .home-page .hn-hero { padding: 18px 0 38px !important; }
    .home-page .hn-hero h1 { font-size: clamp(1.9rem,5.5vw,2.7rem) !important; }
    .home-page .hn-hero .direct-answer { font-size: 15px !important; }
    .home-page .hn-hero .hero-actions { margin-top: 22px !important; }
    .home-page :is(.hn-audiences,.hn-services,.hn-resources,.hn-difference) { padding: 48px 0 !important; }
    .home-page .hn-section-head { margin-bottom: 36px !important; }
    .home-page .hn-audience,.home-page .hn-difference-grid,.home-page .hn-resource-grid { grid-template-columns: minmax(0,1fr) !important; gap: 24px !important; }
    .home-page .hn-audience-copy,.home-page .hn-audience-reverse .hn-audience-copy { order: 0 !important; }
    .home-page .hn-audience { margin-bottom: 54px !important; }
    .home-page .hn-audience h3 { font-size: 1.6rem !important; }
    .home-page .hn-audience-copy p { font-size: 15px !important; }
    .home-page .hn-visual { padding-top: 8px !important; padding-bottom: 0 !important; }
    .home-page .hn-pricing { margin-top: 20px !important; }
    .home-page .hn-accordion summary { font-size: 15px !important; padding: 20px 0 !important; }
  }
  @media(max-width:500px) {
    .home-page .hn-container { width: calc(100% - 32px) !important; }
    .home-page .hn-hero h1 { font-size: clamp(1.75rem,7vw,2.2rem) !important; }
    .home-page .hn-hero h1 [data-hero-signature] { font-size: .78rem !important; padding: 8px 12px 12px !important; }
    .home-page .hn-hero .hero-actions { display: grid !important; grid-template-columns: minmax(0,1fr) !important; gap: 10px !important; }
    .home-page .hn-hero .hero-actions .btn { width: 100% !important; min-width: 0 !important; font-size: 13px !important; }
    .home-page .hn-service-grid { grid-template-columns: minmax(0,1fr) !important; gap: 24px !important; }
    .home-page .hn-image-note { font-size: 11px !important; line-height: 1.7 !important; }
  }
  @media(max-width:600px) { .home-page .hn-service-grid { grid-template-columns: minmax(0,1fr) !important; } }
  @media(prefers-reduced-motion:reduce) { .home-page .hn-service { transition: none !important; } }
  /* Photographic hero and restored China operations desk. */
  .home-page .hn-hero-photo { isolation: isolate !important; overflow: hidden !important; padding: 40px 0 32px !important; min-height: 0 !important; background: var(--hn-navy) !important; color: #fff !important; }
  .home-page .hn-hero-photo .hero-slider { display: block !important; position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; z-index: 0 !important; }
  .home-page .hn-hero-photo .hero-slide-link { display: none !important; position: absolute !important; inset: 0 !important; pointer-events: none !important; }
  .home-page .hn-hero-photo .hero-slide-link.is-active { display: block !important; opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; }
  .home-page .hn-hero-photo .hero-slide { display: block !important; position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; max-height: none !important; object-fit: cover !important; object-position: 72% center !important; border: 0 !important; border-radius: 0 !important; filter: none !important; transform: none !important; }
  .home-page .hn-hero-photo::after { content: '' !important; display: block !important; opacity: 1 !important; visibility: visible !important; position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; z-index: 1 !important; pointer-events: none !important; background: linear-gradient(90deg,rgba(7,19,34,.96),rgba(7,19,34,.83) 35%,rgba(7,19,34,.33) 68%,rgba(7,19,34,.08)),linear-gradient(0deg,rgba(7,19,34,.9),transparent 42%) !important; }
  .home-page .hn-hero-photo .hero-content-wrapper { display: grid !important; grid-template-columns: minmax(0,710px) minmax(0,1fr) !important; align-items: start !important; gap: 32px !important; position: relative !important; z-index: 2 !important; min-height: 0 !important; height: auto !important; padding: 0 !important; pointer-events: none !important; }
  .home-page .hn-hero-photo .hn-hero-copy { display: block !important; grid-column: 1 !important; width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; text-align: left !important; pointer-events: auto !important; background: none !important; border: 0 !important; box-shadow: none !important; }
  .home-page .hn-hero-photo .eyebrow { border: 0 !important; box-shadow: none !important; color: var(--hn-gold) !important; background: none !important; font-size: 11px !important; letter-spacing: .12em !important; margin: 0 0 16px !important; }
  .home-page .hn-hero-photo .eyebrow::before,.home-page .hn-hero-photo .eyebrow::after { content: none !important; }
  .home-page .hn-hero-photo h1 { max-width: 24ch !important; margin: 0 0 26px !important; text-align: left !important; color: #fff !important; font-size: clamp(2.5rem,4.15vw,3.7rem) !important; line-height: 1.2 !important; letter-spacing: -.035em !important; text-shadow: none !important; text-wrap: balance !important; }
  .home-page .hn-hero-photo .direct-answer { max-width: 61ch !important; margin: 0 !important; color: #e6ebf1 !important; font-size: 16px !important; line-height: 1.8 !important; }
  .home-page .hn-hero-photo .hero-actions { justify-content: flex-start !important; margin: 26px 0 18px !important; gap: 12px !important; }
  .home-page .hn-hero-photo .hero-actions .btn { min-width: 0 !important; font-size: 13px !important; padding-inline: 24px !important; }
  .home-page .hn-hero-photo .hero-actions .btn-outline { color: #fff !important; background: rgba(7,19,34,.54) !important; border-color: rgba(255,255,255,.65) !important; }
  .home-page .hn-hero-photo .hn-fee-note { max-width: 72ch !important; width: auto !important; margin: 0 !important; color: #dbe3ee !important; font-size: 12px !important; line-height: 1.7 !important; }
  .home-page .hn-hero-photo .hn-fee-note :is(strong,a) { color: #fff !important; }
  .home-page .hn-hero-photo :is(button,select):focus-visible { outline: 3px solid var(--hn-gold) !important; outline-offset: 4px !important; }
  .home-page .hn-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
  @media(max-width:1100px) {
    .home-page .hn-hero-photo .hero-content-wrapper { grid-template-columns: minmax(0,660px) minmax(0,1fr) !important; }
  }
  @media(max-width:800px) {
    .home-page .hn-hero-photo { padding: 24px 0 28px !important; }
    .home-page .hn-hero-photo .hero-content-wrapper { grid-template-columns: minmax(0,1fr) !important; gap: 28px !important; }
    .home-page .hn-hero-photo::after { background: linear-gradient(90deg,rgba(7,19,34,.88),rgba(7,19,34,.46)),linear-gradient(0deg,rgba(7,19,34,.98),rgba(7,19,34,.1) 70%) !important; }
    .home-page .hn-hero-photo .hero-slider { max-height: 900px !important; }
    .home-page .hn-hero-photo .hero-slide { object-position: 73% center !important; }
    .home-page .hn-hero-photo h1 { font-size: clamp(2rem,6vw,2.8rem) !important; }
    .home-page .hn-hero-photo .direct-answer { font-size: 15px !important; }
  }
  @media(max-width:500px) {
    .home-page .hn-hero-photo { padding-top: 18px !important; }
    .home-page .hn-hero-photo h1 { font-size: clamp(1.75rem,7.5vw,2.2rem) !important; letter-spacing: -.03em !important; }
    /* Keep both inquiry actions clear of the three fixed contact circles. */
    .home-page .hn-hero-photo .hero-actions { width: calc(100% - 56px) !important; }
    .home-page .hn-hero-photo .hero-actions .btn { padding-inline: 16px !important; }
    .home-page .hn-hero-photo .hn-fee-note { font-size: 11px !important; }
  }
  /* Operations card dimensions restored from the live homepage component. Screenshot pixels are 2x CSS pixels. */

.home-page .home-hero .hero-status-dot {
  width: 7px !important;
  height: 7px !important;
  flex: 0 0 auto !important;
  background: #6ee7a8 !important;
  border-radius: 50% !important;
  box-shadow: 0 0 0 4px rgba(110, 231, 168, .16) !important;
}

.home-page .home-hero .hero-status[data-state="closed"] .hero-status-dot {
  background: var(--hp-gold-light) !important;
  box-shadow: 0 0 0 4px rgba(238, 212, 125, .16) !important;
}

.home-page .home-hero .hero-status-time {
  color: var(--hp-gold-light) !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: .08em !important;
}

.home-page .home-hero .hero-status-time {
  min-width: 5ch !important;
  color: var(--hp-gold-light) !important;
  font-size: .84rem !important;
  font-weight: 800 !important;
  font-variant-numeric: tabular-nums !important;
  line-height: 1 !important;
  text-align: center !important;
}
.home-page .home-hero .hero-office-card {
  position: relative !important;
  display: grid !important;
  width: min(100%, 540px) !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(170px, .9fr) !important;
  margin: 0 0 24px !important;
  overflow: hidden !important;
  color: #fff !important;
  background: rgba(5, 15, 27, .76) !important;
  border: 1px solid rgba(238, 212, 125, .34) !important;
  border-radius: 6px !important;
  box-shadow: 0 18px 44px rgba(2, 8, 18, .3) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  isolation: isolate !important;
  animation: hpOfficeCardIn .72s cubic-bezier(.2, .8, .2, 1) both !important;
}

.home-page .home-hero .hero-office-card::before {
  position: absolute !important;
  z-index: 2 !important;
  top: -1px !important;
  left: 0 !important;
  width: 132px !important;
  height: 2px !important;
  background: var(--hp-gold-light) !important;
  content: "" !important;
}

.home-page .home-hero .hero-office-card::after {
  position: absolute !important;
  z-index: 2 !important;
  top: 8px !important;
  right: 8px !important;
  width: 14px !important;
  height: 14px !important;
  border-top: 1px solid rgba(238, 212, 125, .62) !important;
  border-right: 1px solid rgba(238, 212, 125, .62) !important;
  content: "" !important;
}

.home-page .home-hero .hero-office-location,
.home-page .home-hero .hero-office-live {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 15px 18px 13px !important;
}

.home-page .home-hero .hero-office-live {
  border-left: 1px solid rgba(238, 212, 125, .2) !important;
}

.home-page .home-hero .hero-office-kicker,
.home-page .home-hero .hero-office-hours > span {
  color: var(--hp-gold-light) !important;
  font-family: var(--font-ui) !important;
  font-size: .6rem !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.home-page .home-hero .hero-office-city {
  margin-top: 5px !important;
  color: #fff !important;
  font-family: var(--font-display) !important;
  font-size: 1.34rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
}

.home-page .home-hero .hero-office-region {
  margin-top: 5px !important;
  color: rgba(255, 255, 255, .68) !important;
  font-family: var(--font-ui) !important;
  font-size: .68rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.3 !important;
}

.home-page .home-hero .hero-office-state {
  display: flex !important;
  min-height: 18px !important;
  align-items: center !important;
  gap: 8px !important;
  color: rgba(255, 255, 255, .78) !important;
  font-family: var(--font-ui) !important;
  font-size: .64rem !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
}

.home-page .home-hero .hero-office-card .hero-status-dot {
  position: relative !important;
  width: 7px !important;
  height: 7px !important;
  flex: 0 0 7px !important;
  background: var(--hp-gold-light) !important;
  border-radius: 50% !important;
  box-shadow: 0 0 0 4px rgba(238, 212, 125, .13) !important;
}

.home-page .home-hero .hero-office-card[data-state="open"] .hero-status-dot {
  background: #70d8a0 !important;
  box-shadow: 0 0 0 4px rgba(112, 216, 160, .14) !important;
}

.home-page .home-hero .hero-office-card[data-state="open"] .hero-status-dot::after {
  position: absolute !important;
  inset: -5px !important;
  border: 1px solid rgba(112, 216, 160, .52) !important;
  border-radius: 50% !important;
  content: "" !important;
  animation: hpOfficePulse 2.4s ease-out infinite !important;
}

.home-page .home-hero .hero-office-card .hero-status-time {
  min-width: 0 !important;
  margin-top: 4px !important;
  color: #fff !important;
  font-family: var(--font-ui) !important;
  font-size: 1.65rem !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-align: left !important;
}

.home-page .home-hero .hero-office-day {
  margin-top: 5px !important;
  overflow-wrap: anywhere !important;
  color: rgba(255, 255, 255, .58) !important;
  font-family: var(--font-ui) !important;
  font-size: .58rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.3 !important;
}

.home-page .home-hero .hero-office-hours {
  display: flex !important;
  min-width: 0 !important;
  grid-column: 1 / -1 !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 8px 18px 9px !important;
  background: rgba(238, 212, 125, .055) !important;
  border-top: 1px solid rgba(238, 212, 125, .16) !important;
}

.home-page .home-hero .hero-office-hours strong {
  color: rgba(255, 255, 255, .82) !important;
  font-family: var(--font-ui) !important;
  font-size: .62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
  text-align: right !important;
}

@media (min-width: 1041px) and (max-height: 800px) {
  .home-page .home-hero .hero-office-card {
    margin-bottom: 16px !important;
  }
}

@media (min-width: 1041px) and (max-height: 800px) {

  .home-page .home-hero .hero-office-location,
  .home-page .home-hero .hero-office-live {
    padding-block: 12px 10px !important;
  }
}

@media (max-width: 700px) {
  .home-page .home-hero .hero-office-card {
    width: min(100%, 500px) !important;
    margin-bottom: 18px !important;
    grid-template-columns: minmax(0, 1.2fr) minmax(142px, .8fr) !important;
  }
}

@media (max-width: 700px) {

  .home-page .home-hero .hero-office-location,
  .home-page .home-hero .hero-office-live {
    padding: 13px 14px 11px !important;
  }
}

@media (max-width: 700px) {

  .home-page .home-hero .hero-office-hours {
    padding-inline: 14px !important;
  }
}

@media (max-width: 700px) {

  .home-page .home-hero .hero-office-city {
    font-size: 1.2rem !important;
  }
}

@media (max-width: 700px) {

  .home-page .home-hero .hero-office-card .hero-status-time {
    font-size: 1.45rem !important;
  }
}

@media (max-width: 420px) {
  .home-page .home-hero .hero-office-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 420px) {

  .home-page .home-hero .hero-office-location,
  .home-page .home-hero .hero-office-live {
    padding: 12px 14px !important;
  }
}

@media (max-width: 420px) {

  .home-page .home-hero .hero-office-live {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: 3px 14px !important;
    border-top: 1px solid rgba(238, 212, 125, .16) !important;
    border-left: 0 !important;
  }
}

@media (max-width: 420px) {

  .home-page .home-hero .hero-office-state,
  .home-page .home-hero .hero-office-day {
    grid-column: 1 !important;
  }
}

@media (max-width: 420px) {

  .home-page .home-hero .hero-office-card .hero-status-time {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    margin-top: 0 !important;
    align-self: center !important;
  }
}

@media (max-width: 420px) {

  .home-page .home-hero .hero-office-hours {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 3px !important;
  }
}

@media (max-width: 420px) {

  .home-page .home-hero .hero-office-hours strong {
    text-align: left !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .home-hero .hero-office-card,
  .home-page .home-hero .hero-office-card[data-state="open"] .hero-status-dot::after {
    animation: none !important;
  }
}

.home-page .home-hero .hero-office-card::before,
.home-page .home-hero .hero-office-card::after {
  display: none !important;
  content: none !important;
}

.home-page .home-hero .hero-office-card {
  border-color: rgba(255, 255, 255, .17) !important;
}

.home-page .home-hero .hero-office-hours,
.home-page .home-hero .hero-office-live {
  border-color: rgba(255, 255, 255, .12) !important;
}
.home-page .home-hero .hero-office-card {
  width: min(100%, 500px) !important;
  margin-bottom: 18px !important;
  background: rgba(5, 15, 27, .66) !important;
  box-shadow: 0 16px 38px rgba(2, 8, 18, .28) !important;
}
@media (min-width: 901px) {
  html body.home-page[data-page-family] .home-hero .hero-office-card { margin-bottom: 14px !important; }
}

@media (max-width: 760px) {
  .home-page .home-hero .hero-office-card { width: 100% !important; }
}
.home-page .hn-hero-photo .hn-office { grid-column: 1 / -1 !important; margin: 0 !important; justify-self: start !important; pointer-events: auto !important; }
.home-page .hn-hero-photo .hero-office-region,.home-page .hn-hero-photo .hero-office-day { color: rgba(255,255,255,.82) !important; }.home-page .hn-hero-photo h1 [data-hero-headline-part] { display: block !important; margin: .3em 0 0 !important; padding: .15em 0 .1em !important; background: none !important; color: var(--hn-gold) !important; font-size: inherit !important; line-height: inherit !important; letter-spacing: 0 !important; vertical-align: baseline !important; border-radius: 0 !important; }
}

