/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/

/* Horizon presentation. Content, images, buttons and layouts stay in Avada. */
.zindex-horizon {
  --zh-navy: var(--awb-color8, #0a1a2f);
  --zh-teal: var(--awb-color5, #008b8f);
  --zh-cyan: var(--awb-color4, #66d1c9);
  --zh-text: var(--awb-color6, #b8c8d8);
  --zh-line: rgba(164, 198, 214, .18);
  background: var(--zh-navy);
}
.zindex-horizon #main { padding: 0; }
.zindex-horizon .fusion-page-title-bar { display: none; }
.zindex-horizon .zh-section { padding: 104px 5.5% !important; overflow: hidden; }
.zindex-horizon .zh-section > .fusion-builder-row { max-width: 1240px; }
.zindex-horizon .zh-section .fusion-layout-column { margin-top: 0; margin-bottom: 0; }
.zindex-horizon .zh-section p { margin: 0 0 22px; }
.zindex-horizon .zh-section a:not(.fusion-button):not(.fusion-rollover-link):hover { color: var(--zh-cyan); }
.zindex-horizon .fusion-title { margin-top: 0 !important; }
.zindex-horizon .fusion-title h1, .zindex-horizon .fusion-title h2, .zindex-horizon .fusion-title h3 { text-wrap: balance; }
.zindex-horizon .zh-kicker { font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--zh-cyan); margin-bottom: 26px; }
.zindex-horizon .zh-lead { font-size: 21px; line-height: 1.65; max-width: 650px; }
.zindex-horizon .zh-copy ul, .zindex-horizon .zh-copy p { margin-bottom: 40px; }
.zindex-horizon .zh-caption { font-size: 12px; color: var(--zh-text); line-height: 1.6; }
.zindex-horizon .zh-header { padding: 8px 5.5% !important; border-bottom: 1px solid var(--zh-line); overflow: visible !important; position: relative; z-index: 30; }
.zindex-horizon .zh-header > .fusion-builder-row { max-width: 1320px; }
.zindex-horizon .zh-header .fusion-layout-column { margin-bottom: 0; }
.zindex-horizon .zh-header .fusion-imageframe { width: 182px; display: block; }
.zindex-horizon .zh-nav .menu-item a { transition: color .2s ease; }
.zindex-horizon .zh-nav .menu-item:last-child > a { color: var(--zh-cyan); }
.zindex-horizon .zh-hero { min-height: 720px; padding-top: 78px !important; padding-bottom: 78px !important; background-size: cover; background-position: center bottom !important; position: relative; }
.zindex-horizon .zh-hero:before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,26,47,.95), rgba(10,26,47,.50) 60%, rgba(10,26,47,.15)); pointer-events: none; }
.zindex-horizon .zh-hero > .fusion-builder-row { position: relative; z-index: 1; }
.zindex-horizon .zh-hero-title h1 { font-size: clamp(44px, 5.6vw, 80px) !important; line-height: 1.04 !important; letter-spacing: -.045em !important; max-width: 960px; }
.zindex-horizon .zh-brand-line { display: block; font-size: 15px; line-height: 1.6; letter-spacing: .02em; font-weight: 400; margin-bottom: 24px; color: var(--zh-text); }
.zindex-horizon .zh-accent { color: var(--zh-cyan); }
.zindex-horizon .zh-hero .zh-lead { max-width: 630px; font-size: 19px; margin-top: 25px; }
.zindex-horizon .zh-hero .fusion-button { margin-top: 12px; margin-right: 16px; }
.zindex-horizon .zh-hero .fusion-column-wrapper { display: block; }
.zindex-horizon .zh-hero .fusion-column-wrapper > div:has(> .fusion-button) { display: inline-block; }
.zindex-horizon .zh-hero-note { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; margin-top: 52px; color: #b6c9d7; }
.zindex-horizon .zh-secondary-button { background: transparent !important; }
.zindex-horizon .fusion-button { border-radius: 3px; box-shadow: none; font-size: 13px; letter-spacing: .01em; text-transform: none; font-weight: 600; }
.zindex-horizon .fusion-button:hover { transform: translateY(-2px); }
.zindex-horizon .zh-light { color: var(--zh-navy); }
.zindex-horizon .zh-light .fusion-title h2, .zindex-horizon .zh-light .fusion-title h3 { color: var(--zh-navy); }
.zindex-horizon .zh-light .zh-kicker { color: #00676a; }
.zindex-horizon .zh-light .zh-copy, .zindex-horizon .zh-light .zh-lead { color: #40556a; }
.zindex-horizon .zh-step { padding-top: 38px; padding-right: 30px; border-top: 1px solid rgba(10,26,47,.18); margin-top: 38px; }
.zindex-horizon .zh-step-number { font-size: 12px; letter-spacing: .12em; color: #00676a; margin-bottom: 24px; }
.zindex-horizon .zh-card > .fusion-column-wrapper { border: 1px solid var(--zh-line); border-radius: 4px; padding: 30px !important; height: 100%; background: rgba(255,255,255,.025); transition: background .2s, border-color .2s; }
.zindex-horizon .zh-card:hover > .fusion-column-wrapper { border-color: rgba(102,209,201,.6); background: rgba(102,209,201,.045); }
.zindex-horizon .zh-card .fusion-title h3 { font-size: 23px !important; letter-spacing: -.025em; }
.zindex-horizon .zh-card p { font-size: 15px; }
.zindex-horizon .zh-card .zh-kicker { margin-bottom: 28px; }
.zindex-horizon .zh-cards .fusion-layout-column { margin-bottom: 24px; }
.zindex-horizon .zh-cards { padding-top: 0 !important; }
.zindex-horizon .zh-heading-section { padding-bottom: 50px !important; }
.zindex-horizon .zh-image .fusion-imageframe { border-radius: 4px; overflow: hidden; display: block; }
.zindex-horizon .zh-image img { width: 100%; }
.zindex-horizon .zh-image > .fusion-column-wrapper { justify-content: center; }
.zindex-horizon .zh-feature { border-top: 1px solid var(--zh-line); border-bottom: 1px solid var(--zh-line); }
.zindex-horizon .zh-quote { border-left: 2px solid var(--zh-cyan); padding-left: 22px; font-size: 20px; color: #fff; margin: 28px 0; }
.zindex-horizon .zh-trust { padding-top: 72px !important; padding-bottom: 72px !important; }
.zindex-horizon .zh-trust-labels p { display: flex; flex-wrap: wrap; gap: 14px 36px; font-size: 13px; margin-top: 24px; }
.zindex-horizon .zh-trust-labels span { border-bottom: 1px solid var(--zh-teal); padding: 0 0 12px; }
.zindex-horizon .zh-principles p { display: flex; flex-wrap: wrap; gap: 15px 28px; font-size: 14px; margin-top: 30px; color: var(--zh-cyan); }
.zindex-horizon .zh-contact { background-position: center bottom !important; background-size: cover; border-top: 1px solid var(--zh-line); }
.zindex-horizon .zh-contact .fusion-form .fusion-fullwidth { background: transparent !important; padding: 0 !important; }
.zindex-horizon .zh-contact .fusion-form .fusion-layout-column { margin-bottom: 0; }
.zindex-horizon .fusion-form .fusion-form-field { margin-top: 0; margin-bottom: 22px; }
.zindex-horizon .fusion-form label { font-size: 12px; font-weight: 500; letter-spacing: .01em; }
.zindex-horizon .fusion-form input, .zindex-horizon .fusion-form textarea { box-shadow: none; }
.zindex-horizon .fusion-form textarea { min-height: 135px; }
.zindex-horizon .fusion-form .fusion-form-checkbox label { color: var(--zh-text); font-size: 12px; line-height: 1.6; }
.zindex-horizon .fusion-form .fusion-form-checkbox a { text-decoration: underline; text-underline-offset: 3px; }
.zindex-horizon .zh-footer { border-top: 1px solid var(--zh-line); padding-top: 54px !important; padding-bottom: 28px !important; }
.zindex-horizon .zh-footer:before { content: ''; position: absolute; top: -1px; left: 12%; width: 76%; height: 26px; border-top: 1px solid var(--zh-teal); border-radius: 50% 50% 0 0; opacity: .45; pointer-events: none; }
.zindex-horizon .cc-window { background: var(--zh-navy) !important; color: var(--zh-text) !important; border: 1px solid var(--zh-line); box-shadow: 0 8px 30px rgba(0,0,0,.22); font-size: 13px; }
.zindex-horizon .cc-window .cc-btn { background: var(--zh-cyan) !important; color: var(--zh-navy) !important; border-color: var(--zh-cyan) !important; }
.zindex-horizon .zh-footer .fusion-imageframe { width: 210px; margin-bottom: 10px; }
.zindex-horizon .zh-footer p { font-size: 13px; }
.zindex-horizon .zh-footer-links a { display: block; color: #c1ceda; padding-bottom: 12px; }
.zindex-horizon .zh-footer-bottom { border-top: 1px solid var(--zh-line); padding-top: 23px !important; padding-bottom: 25px !important; }
.zindex-horizon .zh-footer-bottom p { margin: 0; font-size: 11px; color: #91a7ba; }
.zindex-horizon .zh-footer-bottom a { color: #b8c8d8; }
.zindex-horizon .zh-page-hero { padding-top: 84px !important; padding-bottom: 70px !important; border-bottom: 1px solid var(--zh-line); }
.zindex-horizon .zh-page-hero h1 { font-size: clamp(38px, 4.2vw, 54px) !important; line-height: 1.08 !important; letter-spacing: -.04em !important; }
.zindex-horizon .zh-breadcrumb { font-size: 12px; color: #a0b4c6; margin-bottom: 38px; }
.zindex-horizon .zh-list ul { list-style: none; padding: 0; margin: 20px 0; }
.zindex-horizon .zh-list li { padding: 16px 0; border-bottom: 1px solid var(--zh-line); }
.zindex-horizon .zh-list li:before { content: '↗'; color: var(--zh-cyan); margin-right: 14px; }
.zindex-horizon .zh-pending { padding: 20px 24px; border-left: 2px solid var(--zh-teal); background: rgba(102,209,201,.05); font-size: 14px; color: #b8c8d8; }
.zindex-horizon .zh-pending p:last-child { margin-bottom: 0; }
.zindex-horizon .zh-internal-note { color: #a3b7ca; font-size: 12px; }
.zindex-horizon :focus-visible { outline: 2px solid var(--zh-cyan); outline-offset: 5px; }
.zindex-horizon .zh-light :focus-visible { outline-color: var(--zh-navy); }
.zindex-horizon .zh-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.grayscale img { filter: grayscale(.8); }
@media (max-width: 1024px) {
  .zindex-horizon .zh-section { padding: 76px 5% !important; }
  .zindex-horizon .zh-header { padding: 5px 5% !important; }
  .zindex-horizon .zh-hero { min-height: 680px; }
  .zindex-horizon .zh-cards { padding-top: 0 !important; }
  .zindex-horizon .zh-heading-section { padding-bottom: 35px !important; }
  .zindex-horizon .zh-card > .fusion-column-wrapper { padding: 24px !important; }
  .zindex-horizon .zh-header .fusion-imageframe { width: 155px; }
}
@media (max-width: 640px) {
  .zindex-horizon .zh-section { padding: 60px 24px !important; }
  .zindex-horizon .zh-header { padding: 4px 24px !important; }
  .zindex-horizon .zh-header .fusion-imageframe { width: 145px; }
  .zindex-horizon .zh-hero { min-height: 690px; background-position: 65% bottom !important; padding-top: 50px !important; }
  .zindex-horizon .zh-hero:before { background: linear-gradient(180deg,rgba(10,26,47,.92),rgba(10,26,47,.4)); }
  .zindex-horizon .zh-hero-title h1 { font-size: 46px !important; }
  .zindex-horizon .zh-hero .zh-lead, .zindex-horizon .zh-lead { font-size: 17px; }
  .zindex-horizon .fusion-title h2 { font-size: 33px !important; line-height: 1.16 !important; }
  .zindex-horizon .zh-brand-line { font-size: 14px; margin-bottom: 20px; }
  .zindex-horizon .zh-hero .fusion-button { margin-right: 8px; padding: 14px 18px; }
  .zindex-horizon .zh-hero-note { margin-top: 35px; font-size: 9px; }
  .zindex-horizon .zh-image { margin-top: 32px !important; }
  .zindex-horizon .zh-step { padding-right: 0; }
  .zindex-horizon .zh-heading-section { padding-bottom: 32px !important; }
  .zindex-horizon .zh-cards { padding-top: 0 !important; }
  .zindex-horizon .zh-card { margin-bottom: 18px !important; }
  .zindex-horizon .zh-contact .zh-form-column { margin-top: 32px !important; }
  .zindex-horizon .zh-footer .fusion-layout-column { margin-bottom: 25px; }
  .zindex-horizon .zh-footer-bottom .fusion-layout-column { margin-bottom: 15px; }
  .zindex-horizon .zh-trust-labels p { gap: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .zindex-horizon *, .zindex-horizon *:before, .zindex-horizon *:after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
.zindex-horizon .zh-contact .fusion-alert.alert-success { background: #dff5ed !important; color: #123c30 !important; border-color: #66D1C9 !important; }
.zindex-horizon .zh-contact .fusion-alert.alert-success .fusion-alert-content,
.zindex-horizon .zh-contact .fusion-alert.alert-success .alert-icon { color: #123c30 !important; }

/* Revision 2: native Avada icons, illustrated titles and clearer contact layouts. */
.zindex-horizon .fusion-button.zh-arrow-button .button-icon-right { font-size: 20px !important; margin-left: 18px !important; transform: none; line-height: 1; transition: transform .2s ease; }
.zindex-horizon .fusion-button.zh-arrow-button { display: inline-flex; align-items: center; justify-content: center; }
.zindex-horizon .zh-nav .fusion-megamenu-icon { color: var(--zh-cyan); margin-right: 8px; font-size: 14px; }
.zindex-horizon .zh-nav { --awb-gap: 22px; }
.zindex-horizon .zh-capacity-icon { display: block; width: fit-content; }
.zindex-horizon .zh-step { position: relative; padding-top: 32px; }
.zindex-horizon .zh-step .zh-step-number { position: absolute; top: 38px; right: 30px; }
.zindex-horizon .zh-step .zh-capacity-icon { margin-bottom: 30px !important; }
.zindex-horizon .zh-card .zh-capacity-icon { margin-bottom: 26px !important; }
.zindex-horizon .zh-card .zh-kicker { font-size: 10px; margin-bottom: 20px; }
.zindex-horizon .zh-page-hero { position: relative; background-size: cover; background-position: center 65% !important; }
.zindex-horizon .zh-page-hero:before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(10,26,47,.96),rgba(10,26,47,.8) 55%,rgba(10,26,47,.25)); pointer-events: none; }
.zindex-horizon .zh-page-hero > .fusion-builder-row { position: relative; z-index: 1; }
.zindex-horizon .zh-page-hero + .zh-cards { padding-top: 80px !important; }
.zindex-horizon .zh-capabilities { position: relative; background-size: cover; background-position: center center !important; }
.zindex-horizon .zh-capabilities:before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(10,26,47,.88),rgba(10,26,47,.68) 55%,rgba(10,26,47,.93)); pointer-events: none; }
.zindex-horizon .zh-capabilities > .fusion-builder-row { position: relative; z-index: 1; }
.zindex-horizon .zh-capabilities .fusion-layout-column:first-child { margin-bottom: 48px !important; }
.zindex-horizon .zh-capabilities .zh-card > .fusion-column-wrapper { background: rgba(7,19,35,.82); }
.zindex-horizon .zh-sibi-logo { display: block; margin-bottom: 28px !important; }
.zindex-horizon .zh-software-logo { display: block; margin-bottom: 28px !important; }
.zindex-horizon .zh-software-banner { border-top: 1px solid var(--zh-line); border-bottom: 1px solid var(--zh-line); background-image: radial-gradient(ellipse at 90% 15%,rgba(0,102,255,.13),transparent 65%); }
.zindex-horizon .zh-software-access-column > .fusion-column-wrapper { justify-content: center; padding-left: 30px; }
.zindex-horizon .zh-software-access a { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 23px 0; border-bottom: 1px solid var(--zh-line); font-size: 18px; font-weight: 500; color: #fff; }
.zindex-horizon .zh-software-access a span { font-size: 26px; color: var(--zh-cyan); }
.zindex-horizon .zh-contact-home { padding-bottom: 210px !important; background-size: 100% 180px !important; background-repeat: no-repeat !important; }
.zindex-horizon .zh-contact-home .zh-form-column > .fusion-column-wrapper { background: rgba(7,19,35,.88); border: 1px solid var(--zh-line); padding: 32px; border-radius: 6px; }
.zindex-horizon .zh-contact-page { border-top: 0; background-image: radial-gradient(ellipse at 0 25%,rgba(0,139,143,.12),transparent 60%); }
.zindex-horizon .zh-contact-page .zh-contact-intro > .fusion-column-wrapper { padding-right: 40px; }
.zindex-horizon .zh-contact-page h1 { font-size: clamp(40px,4.8vw,66px) !important; line-height: 1.08 !important; }
.zindex-horizon .zh-contact-page .zh-capacity-icon { margin-top: 32px !important; }
.zindex-horizon .zh-form-panel > .fusion-column-wrapper { background: #f3f7f8; border-radius: 8px; padding: 42px !important; box-shadow: 0 20px 60px rgba(0,0,0,.12); }
.zindex-horizon .zh-form-panel .fusion-form label,
.zindex-horizon .zh-form-panel .fusion-form .fusion-form-checkbox label { color: #243b51 !important; }
.zindex-horizon .zh-form-panel .fusion-form input:not([type=checkbox]):not([type=radio]),
.zindex-horizon .zh-form-panel .fusion-form textarea { background: #fff !important; color: #0a1a2f !important; border-color: #b5c6d0 !important; }
.zindex-horizon .zh-form-panel .fusion-form input::placeholder,
.zindex-horizon .zh-form-panel .fusion-form textarea::placeholder { color: #526b7d !important; opacity: 1; }
.zindex-horizon .zh-form-panel .fusion-form a { color: #00676a !important; }
.zindex-horizon .fusion-form .fusion-form-checkbox label { padding-left: 24px !important; }
.zindex-horizon .zh-form-panel .fusion-form .fusion-form-checkbox label:before { border-color: #526b7d !important; background: #fff !important; }
.zindex-horizon .zh-form-panel .fusion-form .fusion-form-checkbox input:checked + label:after { border-color: #00676a !important; }
.zindex-horizon .zh-footer-catalogue { border-top: 1px solid var(--zh-line); padding-top: 36px !important; padding-bottom: 36px !important; }
.zindex-horizon .zh-footer-catalogue p { font-size: 13px; }
.zindex-horizon .zh-footer-catalogue .zh-kicker { margin-bottom: 18px; }
@media (max-width: 1024px) {
 body.zindex-horizon .zh-nav.awb-menu.collapse-enabled .fusion-megamenu-icon { display: inline-flex !important; width: 18px; justify-content: center; margin-right: 12px; }
 .zindex-horizon .zh-page-hero + .zh-cards { padding-top: 60px !important; }
 .zindex-horizon .zh-capabilities .zh-card { margin-bottom: 24px !important; }
 .zindex-horizon .zh-form-panel > .fusion-column-wrapper { padding: 28px !important; }
 .zindex-horizon .zh-contact-page .zh-contact-intro > .fusion-column-wrapper { padding-right: 0; }
}
@media (max-width: 640px) {
 .zindex-horizon .zh-page-hero:before { background: rgba(10,26,47,.76); }
 .zindex-horizon .zh-page-hero + .zh-cards { padding-top: 48px !important; }
 .zindex-horizon .zh-capabilities .fusion-layout-column:first-child { margin-bottom: 30px !important; }
 .zindex-horizon .zh-software-access-column > .fusion-column-wrapper { padding-left: 0; margin-top: 30px; }
 .zindex-horizon .zh-software-access a { font-size: 16px; }
 .zindex-horizon .zh-contact-home { padding-bottom: 150px !important; background-size: auto 115px !important; }
 .zindex-horizon .zh-contact-home .zh-form-column > .fusion-column-wrapper { padding: 22px; }
 .zindex-horizon .zh-form-panel > .fusion-column-wrapper { padding: 24px !important; }
 .zindex-horizon .zh-footer-catalogue .fusion-layout-column { margin-bottom: 24px; }
 .zindex-horizon .zh-sibi-logo { max-width: 170px !important; }
}

/* Revision 3: stable interaction states and a shorter, more editorial home. */
.zindex-horizon .fusion-button.zh-arrow-button:hover { transform: none; }
.zindex-horizon .fusion-button.zh-arrow-button:hover .button-icon-right { transform: translateX(4px); }
.zindex-horizon .fusion-button.zh-arrow-button:not(.zh-secondary-button) { border: 1px solid var(--zh-cyan) !important; }
.zindex-horizon .fusion-button.zh-arrow-button:not(.zh-secondary-button):hover { border-color: #94e2dc !important; }
.zindex-horizon .zh-form-panel > .fusion-column-wrapper,
.zindex-horizon .zh-form-panel:hover > .fusion-column-wrapper,
.zindex-horizon .zh-form-panel:focus-within > .fusion-column-wrapper { background-color: var(--awb-bg-color,#f3f7f8) !important; }
.zindex-horizon .zh-inline-arrow { display: inline-block; font-size: 24px; font-weight: 400; line-height: 1; margin-left: 10px; vertical-align: -2px; transition: transform .2s ease; }
.zindex-horizon a:hover > .zh-inline-arrow { transform: translateX(4px); }
.zindex-horizon .zh-software-access a .zh-inline-arrow { font-size: 25px; margin-left: 0; }
.zindex-horizon .zh-footer-software-logo { display: block; margin: -12px 0 12px !important; }
.zindex-horizon .zh-footer-catalogue .fusion-button { padding: 12px 16px; font-size: 12px; }
.zindex-horizon .zh-footer-catalogue .button-icon-right { margin-left: 12px !important; }
.zindex-horizon .zh-principle-statement { padding: 22px 24px; background: rgba(102,209,201,.07); border-radius: 6px; margin: 24px 0; font-size: 17px; line-height: 1.6; }
.zindex-horizon .zh-principle-statement p { margin: 0; }
.zindex-horizon .zh-principle-statement span,.zindex-horizon .zh-principle-statement strong { display: block; }
.zindex-horizon .zh-principle-statement strong { font-weight: 600; color: #fff; }
.zindex-horizon .zh-principle-statement .zh-statement-label { font-size: 10px; text-transform: uppercase; letter-spacing: .13em; color: var(--zh-cyan); margin-bottom: 10px; }
.zindex-horizon.home .zh-section:not(.zh-header):not(.zh-hero):not(.zh-contact-home):not(.zh-footer):not(.zh-footer-catalogue):not(.zh-footer-v4):not(.zh-footer-bottom) { padding-top: 72px !important; padding-bottom: 72px !important; }
.zindex-horizon .zh-sibi-light .fusion-title h2,
.zindex-horizon .zh-editorial-light .fusion-title h2,
.zindex-horizon .zh-software-hero .fusion-title h1 { color: var(--zh-navy) !important; }
.zindex-horizon .zh-sibi-light .zh-principle-statement { background: #eef4f3; color: #40556a; }
.zindex-horizon .zh-sibi-light .zh-principle-statement strong { color: var(--zh-navy); }
.zindex-horizon .zh-sibi-light .zh-statement-label { color: #00676a; }
.zindex-horizon .zh-editorial-light .zh-trust-labels { color: #40556a; }
.zindex-horizon .zh-editorial-light .zh-trust-labels p { gap: 12px 24px; }
.zindex-horizon .zh-editorial-light .zh-image { padding-right: 28px; }
.zindex-horizon .zh-photo-band { position: relative; background-size: cover; background-position: center 40% !important; min-height: 440px; }
.zindex-horizon .zh-photo-band > .fusion-builder-row { position: relative; z-index: 1; }
.zindex-horizon .zh-photo-band .fusion-button { margin-right: 14px; }
.zindex-horizon .zh-software-hero { min-height: 560px; background-position: center center !important; }
.zindex-horizon .zh-software-hero:before { background: linear-gradient(90deg,rgba(245,243,238,.98) 0%,rgba(245,243,238,.96) 32%,rgba(245,243,238,.58) 53%,rgba(245,243,238,0) 72%); }
.zindex-horizon .zh-software-hero .zh-breadcrumb,.zindex-horizon .zh-software-hero .zh-breadcrumb a { color: #40556a; }
.zindex-horizon .zh-software-hero h1 { font-size: clamp(40px,4.2vw,60px) !important; }
.zindex-horizon .zh-software-brand { padding-top: 12px !important; padding-bottom: 12px !important; }
.zindex-horizon .zh-software-brand-logo { display: block; }
.zindex-horizon .zh-software-brand-text { text-align: right; color: #d9e5ec; }
.zindex-horizon .zh-software-brand-text p { margin: 0; font-size: 14px; }
.zindex-horizon .zh-software-brand-text span { color: var(--zh-cyan); padding: 0 14px; }
.zindex-horizon .zh-software-cards { padding-top: 70px !important; }
@media (max-width: 640px) {
 .zindex-horizon.home .zh-section:not(.zh-header):not(.zh-hero):not(.zh-contact-home):not(.zh-footer):not(.zh-footer-catalogue):not(.zh-footer-v4):not(.zh-footer-bottom) { padding-top: 48px !important; padding-bottom: 48px !important; }
 .zindex-horizon .zh-editorial-light .zh-image { padding-right: 0; margin-top: 0 !important; margin-bottom: 30px !important; }
 .zindex-horizon .zh-photo-band:before { background: rgba(18,25,28,.8); }
 .zindex-horizon .zh-software-hero { background-position: 65% center !important; min-height: auto; }
 .zindex-horizon .zh-software-hero:before { background: rgba(245,243,238,.88); }
 .zindex-horizon .zh-software-brand-text { text-align: left; padding-bottom: 15px; }
 .zindex-horizon .zh-software-brand-text span { padding: 0 5px; }
 .zindex-horizon .zh-software-brand-logo { max-width: 210px !important; }
 .zindex-horizon .zh-software-cards { padding-top: 48px !important; }
 .zindex-horizon .zh-principle-statement { padding: 18px; font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
 .zindex-horizon .fusion-button.zh-arrow-button:hover .button-icon-right,.zindex-horizon a:hover > .zh-inline-arrow { transform: none; }
}

/* Revision 4: simpler footer, integrated software hero and border-free submit wrapper. */
.zindex-horizon a,
.zindex-horizon a:hover,
.zindex-horizon a:focus,
.zindex-horizon .fusion-form .fusion-form-checkbox a { text-decoration: none !important; }
.zindex-horizon .fusion-form-submit-field { border: 0 !important; box-shadow: none !important; background: transparent !important; }
.zindex-horizon .zh-software-hero-blue { border-bottom: 0; background-color: var(--zh-navy); }
.zindex-horizon .zh-software-hero-blue:before { background: linear-gradient(0deg,rgba(10,26,47,1),rgba(10,26,47,0) 22%),linear-gradient(90deg,rgba(10,26,47,.74),rgba(10,26,47,.28) 54%,rgba(10,26,47,.05)); }
.zindex-horizon .zh-software-hero-blue .fusion-title h1 { color: #fff !important; }
.zindex-horizon .zh-software-hero-blue .zh-breadcrumb,
.zindex-horizon .zh-software-hero-blue .zh-breadcrumb a { color: #bbcedb; }
.zindex-horizon .zh-software-hero-blue .zh-lead { color: #d0dee7; }
.zindex-horizon .zh-footer:before { content: none; }
.zindex-horizon .zh-footer-v4 { background-image: none !important; padding-top: 60px !important; padding-bottom: 50px !important; border: 0 !important; }
.zindex-horizon .zh-footer-v4:before,.zindex-horizon .zh-footer-v4:after { content: none; }
.zindex-horizon .zh-footer-v4 .zh-footer-brand { display: block; margin: -12px 0 18px !important; }
.zindex-horizon .zh-footer-v4 .zh-footer-software-brand { display: block; margin: -4px 0 22px !important; }
.zindex-horizon .zh-footer-v4 .zh-kicker { padding-top: 15px; margin-bottom: 32px; }
.zindex-horizon .zh-footer-v4 p { font-size: 13px; line-height: 1.65; }
.zindex-horizon .zh-footer-summary { max-width: 280px; }
.zindex-horizon .zh-footer-summary p { color: #b6c7d4; margin-bottom: 12px; }
.zindex-horizon .zh-footer-contact a { color: var(--zh-cyan); font-weight: 600; }
.zindex-horizon .zh-footer-v4 .zh-footer-links p { margin: 0; }
.zindex-horizon .zh-footer-v4 .zh-footer-links a { padding-bottom: 13px; color: #c4d2dd; }
.zindex-horizon .zh-footer-v4 .fusion-button { padding: 12px 16px; margin-top: 15px; font-size: 12px; }
.zindex-horizon .zh-footer-v4 .fusion-button .button-icon-right { margin-left: 12px !important; }
.zindex-horizon .zh-footer-v4-bottom { background-image: none !important; }
.zindex-horizon .zh-footer-legal-links p { display: flex; justify-content: flex-end; gap: 24px; flex-wrap: wrap; }
.zindex-horizon .zh-value-tile { margin-top: 18px !important; }
.zindex-horizon .zh-value-tile > .fusion-column-wrapper { border: 0 !important; border-radius: 7px; padding: 20px 16px !important; gap: 14px; }
.zindex-horizon .zh-value-icon { margin: 0 !important; }
.zindex-horizon .zh-value-label p { color: #173446; font-size: 13px; font-weight: 600; line-height: 1.5; margin: 0; }
@media(max-width: 640px) {
 .zindex-horizon .zh-software-hero-blue:before { background: linear-gradient(0deg,#0a1a2f,rgba(10,26,47,0) 25%),rgba(10,26,47,.64); }
 .zindex-horizon .zh-footer-v4 { padding-top: 42px !important; padding-bottom: 22px !important; }
 .zindex-horizon .zh-footer-v4 .fusion-layout-column { margin-bottom: 30px; }
 .zindex-horizon .zh-footer-v4 .zh-kicker { padding-top: 0; margin-bottom: 18px; }
 .zindex-horizon .zh-footer-legal-links p { justify-content: flex-start; gap: 20px; }
 .zindex-horizon .zh-value-tile { margin-top: 12px !important; }
 .zindex-horizon .zh-value-tile > .fusion-column-wrapper { flex-direction: row; align-items: center; padding: 16px 18px !important; gap: 16px; }
}

/* H06 and H09: independent, editable homepage sections. */
.zindex-horizon .zh-trust-home .zh-trust-copy { padding-right: 22px; }
.zindex-horizon .zh-trust-home .zh-trust-art { padding-left: 12px; }
.zindex-horizon .zh-trust-concepts ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; padding: 0; margin: 26px 0 0; list-style: none; }
.zindex-horizon .zh-trust-concepts li { border-top: 1px solid rgba(102,209,201,.28); padding: 15px 0; color: #b9e5e1; font-size: 14px; font-weight: 600; }
.zindex-horizon .zh-about-home .fusion-title h2 { color: #0a1a2f !important; }
.zindex-horizon .zh-about-copy { padding-right: 22px; }
.zindex-horizon .zh-about-home .zh-lead { font-size: 19px; color: #294655; }
.zindex-horizon .zh-about-home .zh-copy { color: #405562; }
.zindex-horizon .zh-about-art .fusion-imageframe { border-radius: 8px; }
.zindex-horizon .zh-principles-intro { margin-top: 38px; font-size: 16px; font-weight: 600; }
.zindex-horizon .zh-principle-item > .fusion-column-wrapper { border-top: 2px solid #008b8f; padding-top: 20px; }
.zindex-horizon .zh-principle-item h3 { text-transform: uppercase; letter-spacing: .07em !important; }
.zindex-horizon .zh-principle-item p { font-size: 14px; line-height: 1.7; margin-bottom: 0; }
@media(max-width: 1024px) {
 .zindex-horizon .zh-principle-item { margin-bottom: 24px !important; }
}
@media(max-width: 640px) {
 .zindex-horizon .zh-trust-home .zh-trust-copy,.zindex-horizon .zh-trust-home .zh-trust-art,.zindex-horizon .zh-about-copy { padding: 0; }
 .zindex-horizon .zh-trust-art,.zindex-horizon .zh-about-art { margin-top: 24px !important; }
 .zindex-horizon .zh-trust-concepts ul { column-gap: 18px; }
 .zindex-horizon .zh-trust-concepts li { font-size: 13px; }
 .zindex-horizon .zh-principles-intro { margin-top: 30px; }
}

/* Selected software references; content remains native Avada elements. */
.zindex-horizon .zh-matchday-copy { padding-right: 28px; padding-top: 28px; }
.zindex-horizon .zh-matchday-copy .fusion-imageframe { max-width: 380px !important; margin-bottom: 30px; }
.zindex-horizon .zh-matchday-copy .zh-kicker { margin-bottom: 18px; }
.zindex-horizon .zh-matchday-screens { margin-top: 28px !important; }
.zindex-horizon .zh-case-phone .fusion-imageframe { max-width: 220px !important; border: 1px solid rgba(102,209,201,.2); border-radius: 12px; }
.zindex-horizon .zh-matchday-screens .zh-caption { margin-top: 20px; }
.zindex-horizon .zh-reference-card { margin-top: 36px !important; }
.zindex-horizon .zh-reference-card > .fusion-column-wrapper { border-top: 1px solid rgba(102,209,201,.3); padding-top: 26px; }
.zindex-horizon .zh-reference-card .zh-kicker { margin-bottom: 18px; }
.zindex-horizon .zh-reference-card h3 { font-size: 23px !important; }
.zindex-horizon .zh-reference-facts { border-left: 2px solid var(--zh-teal); padding: 18px 0 18px 26px; margin-top: 22px; color: #c7dbe4; }
.zindex-horizon .zh-reference-facts ul { padding-left: 18px; line-height: 2; }
.zindex-horizon .zh-jira-roadmap { margin-top: 38px; padding: 24px; background: #0a1a2f; font-size: 14px; border-radius: 6px; }
.zindex-horizon .zh-jira-roadmap p { margin-bottom: 0; }
@media(max-width:640px){
 .zindex-horizon .zh-matchday-copy { padding-right: 0; }
 .zindex-horizon .zh-case-phone .fusion-imageframe { max-width: 100% !important; }
 .zindex-horizon .zh-reference-card { margin-top: 28px !important; }
 .zindex-horizon .zh-reference-facts { margin-top: 28px; }
}

/* Contact banners and the native Avada estimator container. */
.zindex-horizon .zh-contact-banner { min-height: 360px; }
.zindex-horizon .zh-contact-banner:before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(10,26,47,.84),rgba(10,26,47,.55)); pointer-events: none; }
.zindex-horizon .zh-contact-banner .zh-cta-action > .fusion-column-wrapper { justify-content: center; align-items: center; }
.zindex-horizon .zh-contact-banner .zh-cta-action .fusion-button { margin-right: 0; }
.zindex-horizon .zh-estimator-hero { min-height: 0; padding-top: 65px !important; padding-bottom: 48px !important; }
.zindex-horizon .zh-estimator-section { padding-top: 0 !important; }
@media(max-width:640px){ .zindex-horizon .zh-contact-banner .zh-cta-action { margin-top: 24px !important; } .zindex-horizon .zh-contact-banner .zh-cta-action > .fusion-column-wrapper { align-items: flex-start; } }

/* Outline actions stay legible over dark photographs, including their icon. */
.zindex-horizon .fusion-button.zh-secondary-button:hover,
.zindex-horizon .fusion-button.zh-secondary-button:focus-visible,
.zindex-horizon .fusion-button.zh-secondary-button:hover .fusion-button-text,
.zindex-horizon .fusion-button.zh-secondary-button:focus-visible .fusion-button-text,
.zindex-horizon .fusion-button.zh-secondary-button:hover .button-icon-right,
.zindex-horizon .fusion-button.zh-secondary-button:focus-visible .button-icon-right { color: #ffffff !important; border-color: #66d1c9 !important; }
.zindex-horizon .fusion-button.zh-secondary-button:hover { background: rgba(102,209,201,.16) !important; }
