/* Shared clientele navigation. Native disclosure remains usable without JavaScript. */
.hx-clienteles { position: relative; font: inherit; color: inherit; }
.hx-clienteles > summary { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 12px; border-radius: 8px; cursor: pointer; list-style: none; font: inherit; }
.hx-clienteles > summary::-webkit-details-marker { display: none; }
.hx-clienteles > summary::after { content: ''; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); margin-top: -4px; }
.hx-clienteles[open] > summary::after { transform: rotate(225deg); margin-top: 4px; }
.hx-clienteles > summary:hover { background: #10283009; }
.hx-clienteles > summary:focus-visible, .hx-clienteles-panel a:focus-visible { outline: 3px solid #024751; outline-offset: 3px; }
.hx-clienteles-panel { position: absolute; top: calc(100% + 8px); left: 0; z-index: 110; min-width: 240px; padding: 10px; background: #fff; color: #102830; border: 1px solid #d3ddd8; border-radius: 16px; box-shadow: 0 18px 48px #10283026; }
.hx-clienteles-panel a { display: block; padding: 11px 13px; border-radius: 7px; text-decoration: none; font-size: .9rem; line-height: 1.4; }
.hx-clienteles-panel a:hover, .hx-clienteles-panel a[aria-current="page"] { background: #edf6f0; color: #024751; }
.hx-clienteles-panel a:last-child { border-top: 1px solid #e4ebe7; border-radius: 0; margin-top: 5px; font-weight: 600; }
.nav-links.open { max-height: calc(100dvh - 120px); overflow-y: auto; }
.nav-links.open .hx-clienteles-panel { position: static; box-shadow: none; margin-top: 5px; min-width: 0; border-radius: 10px; }
@media(max-width:800px) { .hx-clienteles-panel { position: static; box-shadow: none; min-width: 0; margin-top: 5px; } }

/* Landing communication: the established brand, a clearer promise. */
.hx-home { cursor: auto; }
.hx-home .btn { cursor: pointer; }
.hx-home .cursor-dot, .hx-home .cursor-ring { display: none; }
.hx-home .hero { padding: 130px 0 72px; min-height: 100svh; }
.hx-home .hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, #0a1a1f8a, #0a1a1fbd); }
.hx-home .scroll-indicator { display: none; }
.hx-home .hero-content { max-width: 1120px; }
.hx-home .hero .hx-promise { font-size: clamp(2.75rem, 4.7vw, 4.75rem); line-height: 1.08; font-weight: 500; letter-spacing: -.05em; margin-bottom: 27px; }
.hx-home .hx-before, .hx-home .hx-now { display: block; font: inherit; letter-spacing: inherit; }
.hx-home .hx-before { color: #fff; margin-bottom: 24px; }
.hx-home .hx-now { color: #00e58b; }
.hx-home .hero p { max-width: 780px; font-size: 1.05rem; line-height: 1.65; color: #f3f6f5; }
.hx-home .hx-clienteles { font-weight: 500; font-size: .9rem; }
.hx-home .hx-usages { background: #f8f7f4; color: #102830; }
.hx-home .hx-usages .section-header { max-width: 940px; }
.hx-home .hx-usages .lead { margin-top: 22px; }
.hx-examples { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 28px; margin-top: 48px; }
.hx-example { border-top: 2px solid #024751; padding: 26px 0 12px; display: flex; flex-direction: column; align-items: flex-start; }
.hx-example-label { color: #526761; font-size: .78rem; font-weight: 600; letter-spacing: .025em; }
.hx-example h3 { font-size: clamp(1.4rem, 2vw, 1.9rem); line-height: 1.3; margin: 20px 0; font-weight: 500; }
.hx-example p { color: #4a5d58; font-size: .98rem; margin-bottom: 25px; }
.hx-example a { margin-top: auto; font-size: .9rem; font-weight: 600; color: #024751; padding: 8px 0; }
.hx-example a:hover { text-decoration: underline; text-underline-offset: 5px; }
.hx-context { font-size: .83rem; line-height: 1.6; color: #526761; margin-top: 24px; }
.hx-principle { margin-top: 56px; border-top: 1px solid #d3ddd8; padding-top: 28px; display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.hx-principle > span { font-family: 'DM Sans',sans-serif; font-size: 1.7rem; line-height: 1.3; }
.hx-principle p { color: #4a5d58; }
.hx-audiences { background: #eaf0ec; padding: 100px 0; }
.hx-audiences .lead { margin-top: 22px; }
.hx-audience-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.hx-audience { display: flex; flex-direction: column; align-items: flex-start; padding: 30px; background: #f8f7f4; border: 1px solid #d3ddd8; border-radius: 14px; transition: background .2s, border-color .2s; }
.hx-audience:hover { background: #fff; border-color: #024751; }
.hx-audience-index { color: #526761; font-size: .8rem; margin-bottom: 24px; }
.hx-audience h3 { font-size: 1.7rem; margin-bottom: 12px; }
.hx-audience p { color: #4a5d58; font-size: .95rem; margin-bottom: 30px; }
.hx-audience-link { margin-top: auto; font-size: .85rem; font-weight: 600; color: #024751; }
.hx-home .form select { width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #d3ddd8; border-radius: 8px; background: #fff; color: #1a2e2a; font: inherit; }
.hx-home .form select:focus-visible { outline: 3px solid #024751; outline-offset: 3px; }
@media(max-width:960px) {
  .hx-examples { grid-template-columns: 1fr; gap: 18px; }
  .hx-example h3 { max-width: 28ch; }
  .hx-audience-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hx-home .hero { min-height: 820px; }
}
@media(max-width:600px) {
  .hx-home .hero { padding: 130px 0 78px; min-height: auto; }
  .hx-home .hero .hx-promise { font-size: clamp(1.85rem, 8.1vw, 2.8rem); letter-spacing: -.04em; }
  .hx-home .hx-before { margin-bottom: 24px; }
  .hx-home .hero p { font-size: 1rem; }
    .hx-home .hero-cta { gap: 12px; }
  .hx-audiences { padding: 68px 0; }
  .hx-audience-grid, .hx-principle { grid-template-columns: 1fr; }
  .hx-audience { padding: 25px; }
  .hx-principle { gap: 18px; }
  .hx-home .nav-links { left: 0; right: 0; top: 74px; padding: 18px; gap: 8px; }
}
@media(prefers-reduced-motion:reduce) { .hx-home .text-marquee-track { animation: none !important; } }
