/* Unified data landing page: scoped to avoid changing other pages. */
.unified-page { overflow: hidden; background: #f7f9fc; }
.unified-page section { margin: 0; }
.unified-page h1, .unified-page h2, .unified-page h3 { color: #0b1f33; }
.unified-eyebrow { display: inline-block; color: #137b69; font-size: .8rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 16px; }
.unified-hero { background: linear-gradient(120deg,#e7f2e8 0%,#f6f9f5 58%,#e7f1f5 100%); padding: 74px 0 82px; }
.unified-hero-grid { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(440px,.92fr); gap: clamp(28px,5vw,90px); align-items: center; max-width: 1500px; }
.unified-hero-copy { max-width: 760px; }
.unified-hero h1 { font-size: clamp(3.1rem,5.2vw,5.7rem); line-height: 1.08; letter-spacing: -.055em; font-weight: 800; margin: 0 0 25px; }
.unified-hero h1 span { color: #158268; }
.unified-lead { font-size: clamp(1.13rem,1.55vw,1.4rem); line-height: 1.6; max-width: 660px; margin-bottom: 30px; }
.unified-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 26px; }
.unified-page .btn-consultation { display: inline-flex; align-items: center; justify-content: center; gap: 12px; border-radius: 8px; padding: 14px 25px; font-size: 1rem; white-space: nowrap; }
.unified-text-link { font-weight: 800; color: #0b6759; border-bottom: 2px solid currentColor; padding-bottom: 3px; }
.unified-text-link i { margin-left: 6px; }
.unified-hero-note { font-size: .92rem; margin: 27px 0 0; color: #416053; }
.unified-hero-note i { color: #16886e; margin-right: 8px; }
.unified-flow { background: #fff; border: 1px solid #dceae3; box-shadow: 0 24px 65px rgba(10,44,52,.12); border-radius: 24px; padding: clamp(24px,3vw,42px); }
.unified-flow-label { text-align: center; font-size: .69rem; letter-spacing: .14em; font-weight: 800; color: #60777d; margin-bottom: 17px; }
.unified-source-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.unified-source-grid div { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; min-height: 79px; background: #f4f8f7; border: 1px solid #e5edeb; border-radius: 12px; font-size: .81rem; font-weight: 700; color: #24404b; }
.unified-source-grid i { color: #16816b; font-size: 1.35rem; line-height: 1.1; margin-bottom: 4px; }
.unified-flow-arrow { display: flex; align-items: center; justify-content: center; gap: 15px; height: 42px; color: #16816b; }
.unified-flow-arrow span { width: 31%; height: 1px; background: #dceae3; }
.unified-flow-center { text-align: center; background: #e6f3ee; border: 1px solid #bde3d4; border-radius: 13px; padding: 12px 10px; }
.unified-flow-center strong, .unified-flow-center small, .unified-destination strong, .unified-destination small { display: block; }
.unified-flow-center strong, .unified-destination strong { color: #0e403d; font-size: .96rem; }
.unified-flow-center small, .unified-destination small { color: #55736e; font-size: .73rem; margin-top: 2px; }
.unified-pulse { display: inline-block; width: 7px; height: 7px; background: #20a77f; border-radius: 50%; margin-right: 6px; }
.unified-destination { display: flex; align-items: center; gap: 14px; background: #0c3441; border-radius: 13px; padding: 17px 18px; }
.unified-destination i { color: #7de0ba; font-size: 1.7rem; }
.unified-destination strong { color: white; }.unified-destination small { color: #c6e6e1; }
.unified-section { padding: 96px 0; }
.unified-section-head { max-width: 790px; margin: 0 auto 42px; text-align: center; }
.unified-section-head h2, .unified-split h2, .unified-connector-grid h2 { font-size: clamp(2.1rem,3vw,3.35rem); font-weight: 800; letter-spacing: -.035em; margin-bottom: 16px; }
.unified-section-head p { margin: 0; font-size: 1.1rem; }
.unified-three { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; max-width: 1300px; margin: auto; }
.unified-three article { position: relative; background: white; border: 1px solid #e2ebe8; border-radius: 18px; padding: 34px; box-shadow: 0 12px 32px rgba(10,44,52,.04); }
.unified-three article > i { display: block; color: #17816c; font-size: 2.1rem; margin: 19px 0 21px; }
.unified-three h3 { font-size: 1.35rem; font-weight: 800; margin-bottom: 10px; }
.unified-three p { font-size: .96rem; line-height: 1.65; margin: 0; }
.unified-step { font-size: .78rem; color: #66918a; font-weight: 800; letter-spacing: .08em; }
.unified-destinations { background: #eaf3f2; }
.unified-split { max-width: 1400px; display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; align-items: center; }
.unified-split > div:first-child { max-width: 550px; }
.unified-split p { margin-bottom: 24px; }
.unified-platform-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 15px; }
.unified-platform-grid > div { display: flex; align-items: center; gap: 14px; min-height: 105px; background: #fff; border: 1px solid #d7e6e2; border-radius: 14px; padding: 20px; box-shadow: 0 12px 22px rgba(10,44,52,.04); }
.unified-platform-grid strong { font-size: 1.04rem; }
.unified-platform-mark { display: grid; place-items: center; flex: 0 0 40px; height: 40px; border-radius: 10px; background: #dff1ea; color: #0e715d; font-weight: 800; }
.unified-tools { background: #fff; }
.unified-tool-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 13px; max-width: 1400px; margin: auto; }
.unified-tool-grid article { border-top: 3px solid #159072; background: #f5f9f8; padding: 24px 19px; border-radius: 0 0 12px 12px; }
.unified-tool-grid strong { display: block; font-size: 1.12rem; margin-bottom: 8px; }
.unified-tool-grid p { font-size: .86rem; line-height: 1.6; margin: 0; }
.unified-connector-section { background: #f0f5ed; }
.unified-connector-grid { max-width: 1400px; display: grid; grid-template-columns: 1.1fr .9fr; gap: 60px; align-items: center; }
.unified-connector-grid > div:first-child { max-width: 700px; }
.unified-connector-grid p { margin-bottom: 24px; }
.unified-connector-grid p a { font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.unified-outline-button { display: inline-flex; align-items: center; gap: 10px; border: 2px solid #137c68; border-radius: 8px; color: #0d6656; padding: 10px 18px; font-weight: 800; }
.unified-outline-button:hover { color: white; background: #137c68; }
.unified-connector-card { background: #0c3441; border-radius: 20px; padding: clamp(28px,4vw,54px); box-shadow: 0 22px 38px rgba(10,44,52,.16); }
.unified-connector-card span { color: #77d8b8; font-size: .73rem; font-weight: 800; letter-spacing: .14em; }
.unified-connector-card h3 { color: white; font-size: 2rem; font-weight: 800; margin: 15px 0; }
.unified-connector-card p { color: #d4e6e6; }
.unified-final-cta { text-align: center; background: #dceccf; padding: 75px 0; }
.unified-final-cta h2 { font-weight: 800; font-size: clamp(2.1rem,3.4vw,3.5rem); letter-spacing: -.03em; }
.unified-final-cta p { max-width: 630px; margin: 14px auto 28px; }
@media (max-width: 1100px) { .unified-hero-grid { grid-template-columns: 1fr 1fr; }.unified-tool-grid { grid-template-columns: repeat(3,1fr); } }
@media (max-width: 800px) { .unified-hero { padding: 50px 0 64px; }.unified-hero-grid, .unified-split, .unified-connector-grid { grid-template-columns: 1fr; gap: 38px; }.unified-flow { max-width: 610px; width: 100%; }.unified-section { padding: 72px 0; }.unified-three { grid-template-columns: 1fr; }.unified-tool-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 520px) { .unified-hero h1 { font-size: 2.9rem; }.unified-hero-grid { gap: 32px; }.unified-source-grid div { min-height: 68px; font-size: .72rem; }.unified-flow { padding: 19px; }.unified-platform-grid, .unified-tool-grid { grid-template-columns: 1fr; }.unified-section { padding: 58px 0; }.unified-three article { padding: 25px; }.unified-connector-card h3 { font-size: 1.7rem; } }
/* Visual data journey and a single conversation starter. */
.unified-journey-wrap { max-width: 1450px; }
.unified-journey { position: relative; display: grid; grid-template-columns: 1fr 1.12fr 1fr; align-items: center; min-height: 390px; gap: 25px; border: 1px solid #d5e8df; border-radius: 24px; background: radial-gradient(circle at 49% 50%,#e0f5ea 0,#eef8f2 33%,#fbfdfb 80%); padding: 28px clamp(18px,3vw,46px); overflow: hidden; box-shadow: 0 16px 38px rgba(10,44,52,.06); }
.unified-journey-lines { position: absolute; inset: 22px 0; width: 100%; height: calc(100% - 44px); pointer-events: none; }
.unified-journey-lines path { fill: none; stroke: #71c7a7; stroke-width: 2; stroke-dasharray: 7 8; opacity: .7; }
.unified-journey-sources,.unified-journey-work,.unified-journey-cloud { position: relative; z-index: 1; }
.unified-journey-caption { display: block; color: #43776b; font-size: .7rem; letter-spacing: .14em; font-weight: 800; margin-bottom: 19px; text-align: center; }
.unified-journey-sources { max-width: 255px; }
.unified-source-pill { display: flex; align-items: center; gap: 10px; background: white; border: 1px solid #d9e9e1; border-radius: 10px; padding: 10px 13px; margin-bottom: 10px; color: #24434a; font-size: .81rem; font-weight: 800; box-shadow: 0 7px 17px rgba(10,44,52,.05); }
.unified-source-pill i { color: #16816b; font-size: 1.1rem; }
.unified-source-pill-custom { border-color: #8bcdb0; background: #eaf8ee; overflow-wrap: anywhere; }
.unified-work-orbit { position: relative; display: grid; place-items: center; width: min(100%,315px); aspect-ratio: 1; margin: auto; border: 1px solid #abdbcb; border-radius: 50%; background: rgba(242,251,246,.72); box-shadow: 0 0 0 16px rgba(218,243,229,.42); }
.unified-work-core { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 60%; aspect-ratio: 1; background: #0c3441; border-radius: 50%; color: white; text-align: center; box-shadow: 0 14px 25px rgba(10,44,52,.17); }
.unified-work-core i { font-size: 2.1rem; color: #8ee1bd; }.unified-work-core strong { color: white; font-size: 1.05rem; line-height: 1.3; margin: 7px 16px 0; }
.unified-work-tag { position: absolute; background: #fff; border: 1px solid #b8ddcc; color: #176456; border-radius: 99px; padding: 5px 12px; font-size: .69rem; font-weight: 800; box-shadow: 0 7px 14px rgba(10,44,52,.07); }
.tag-connect { top: 12%; left: 4%; }.tag-validate { top: 12%; right: 2%; }.tag-model { bottom: 11%; left: 7%; }.tag-monitor { bottom: 11%; right: 2%; }
.unified-journey-cloud { text-align: center; justify-self: end; width: min(100%,280px); }
.unified-cloud-shape { display: flex; flex-direction: column; justify-content: center; align-items: center; min-height: 190px; background: #dcefe9; border: 2px solid #9dccba; border-radius: 44% 44% 27% 27%; color: #0b564b; box-shadow: 0 15px 28px rgba(10,44,52,.07); }
.unified-cloud-shape i { font-size: 2.8rem; line-height: 1; margin-bottom: 8px; }.unified-cloud-shape strong { font-size: 1.16rem; color: #0b3f3d; line-height: 1.3; }
.unified-cloud-options { color: #54746f; font-size: .78rem; line-height: 1.5; font-weight: 700; margin-top: 15px; }
.unified-journey-action { display: grid; grid-template-columns: .76fr 1.24fr; gap: 30px; align-items: center; margin: 21px auto 0; padding: 30px 34px; border-radius: 17px; background: #0c3441; }
.unified-journey-action label { display: block; color: #fff; font-size: 1.23rem; font-weight: 800; line-height: 1.3; }
.unified-journey-action p { color: #c8e2dc; font-size: .85rem; margin: 7px 0 0; }
.unified-journey-input { display: flex; gap: 11px; }
#unified-specific-systems { flex: 1; min-width: 0; border: 2px solid transparent; border-radius: 8px; background: #fff; padding: 13px 15px; color: #203e42; font: inherit; font-size: .86rem; }
#unified-specific-systems:focus-visible,#unified-map-submit:focus-visible { outline: 3px solid #82dfbd; outline-offset: 3px; }
#unified-map-submit { font-size: .84rem; padding: 13px 17px; }
.unified-resource-strip { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px 23px; margin: 31px auto 0; font-size: .79rem; }
.unified-resource-strip > span:first-child { color: #5d7b73; font-size: .67rem; font-weight: 800; letter-spacing: .11em; }
.unified-resource-strip a { color: #0a6858; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.unified-resource-plain { color: #42635d; font-weight: 700; }
@media (max-width: 1050px) { .unified-journey-action { grid-template-columns: 1fr; gap: 15px; } }
@media (max-width: 760px) { .unified-journey { grid-template-columns: 1fr; gap: 33px; padding: 30px; }.unified-journey-lines { display: none; }.unified-journey-sources,.unified-journey-cloud { width: 100%; max-width: 330px; justify-self: center; }.unified-journey-cloud { justify-self: center; }.unified-work-orbit { width: 245px; }.unified-journey-input { flex-direction: column; }.unified-journey-action { padding: 25px; } }
/* Keep the conversation prompt as its own visible section; show the shared form only as a popup. */
.unified-conversation-section { padding: 54px 0 76px; background: #f0f5ed; }
.unified-conversation-section .container-fluid { max-width: 1450px; }
.unified-conversation-section .unified-journey-action { margin: 0; }
.unified-journey-action h2 { color: #fff; font-size: 1.23rem; font-weight: 800; line-height: 1.3; margin: 0; }
body:not(.enquiry-popup-open) #enquiry-form { display: none; }
/* Make the conversation starter the main action on this page. */
.unified-conversation-section { padding: 88px 0 104px; background: #e2efda; }
.unified-conversation-section .container-fluid { max-width: 1320px; }
.unified-conversation-section .unified-journey-action { display: block; padding: clamp(34px,5vw,70px); border-radius: 24px; text-align: center; box-shadow: 0 25px 45px rgba(10,44,52,.18); }
.unified-action-eyebrow { display: block; color: #8ee1bd; font-size: .77rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; margin-bottom: 15px; }
.unified-conversation-section .unified-journey-action h2 { font-size: clamp(1.9rem,3vw,3rem); letter-spacing: -.035em; line-height: 1.18; }
.unified-conversation-section .unified-journey-action p { font-size: 1rem; margin: 12px 0 30px; }
.unified-conversation-section .unified-journey-input { max-width: 1000px; margin: auto; gap: 13px; }
.unified-conversation-section #unified-specific-systems { min-height: 62px; font-size: 1rem; padding: 16px 19px; }
.unified-conversation-section #unified-map-submit { min-height: 62px; min-width: 288px; padding: 17px 25px; font-size: 1.04rem; font-weight: 800; box-shadow: 0 12px 24px rgba(20,70,140,.24); }
@media (max-width: 760px) { .unified-conversation-section { padding: 65px 0 80px; }.unified-conversation-section .unified-journey-input { flex-direction: column; }.unified-conversation-section #unified-map-submit { width: 100%; min-width: 0; } }
