/* Industry pages share a visual system while each page leads with its own operational questions. */
.industry-page { background: #f7f9fc; }
.industry-page main { overflow: hidden; }
.industry-page main section { margin: 0; }
.industry-page .container { max-width: 1260px; }
.industry-eyebrow { display: inline-block; color: var(--industry-accent); font-size: .76rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 15px; }
.industry-page h1,.industry-page h2,.industry-page h3 { color: #0b1f33; }
.industry-page h1,.industry-page h2 { font-weight: 800; letter-spacing: -.045em; }
.industry-page h1 { font-size: clamp(3rem,5vw,5.1rem); line-height: 1.08; margin: 0 0 24px; }
.industry-page h2 { font-size: clamp(2.1rem,3.1vw,3.2rem); line-height: 1.17; margin: 0 0 18px; }
.industry-page h3 { font-size: 1.16rem; font-weight: 800; }
.industry-page p { line-height: 1.7; }
.industry-hero { padding: 83px 0 92px; background: linear-gradient(120deg,#f0f7f1 0%,#f8faf8 58%,#e9f1f4 100%); }
.industry-hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: clamp(35px,5vw,90px); }
.industry-hero-copy > p { max-width: 650px; font-size: 1.17rem; margin-bottom: 26px; }
.industry-hero-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 34px; }.industry-hero-chips span { border: 1px solid #d3e3dc; border-radius: 99px; background: rgba(255,255,255,.75); color: #37565c; padding: 7px 13px; font-size: .8rem; font-weight: 800; }
.industry-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 25px; }
.industry-button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; border-radius: 9px; padding: 14px 23px; background: #2357c6; color: #fff; font-size: .95rem; font-weight: 800; line-height: 1.3; box-shadow: 0 10px 21px rgba(32,83,170,.15); }.industry-button:hover,.industry-button:focus { background: #1748ac; color: #fff; }
.industry-text-link { color: #0c705c; text-decoration: underline; text-underline-offset: 4px; font-size: .95rem; font-weight: 800; }
.industry-hero-visual { background: #fff; border: 1px solid #d5e6dd; box-shadow: 0 25px 55px rgba(13,55,62,.11); border-radius: 23px; padding: clamp(24px,3vw,40px); }
.industry-visual-label { display: block; text-align: center; color: #638079; font-size: .66rem; font-weight: 800; letter-spacing: .14em; margin-bottom: 18px; }
.industry-source-list { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }.industry-source-list span { border: 1px solid #d8e9e1; border-radius: 9px; background: #f4f9f6; padding: 9px 12px; color: #24464d; font-size: .77rem; font-weight: 800; }
.industry-visual-connector { display: flex; align-items: center; gap: 13px; color: var(--industry-accent); margin: 15px 0; }.industry-visual-connector span { flex: 1; height: 1px; background: #d3e6db; }.industry-visual-connector i { font-size: 1.3rem; }
.industry-outcome { display: flex; align-items: center; flex-direction: column; text-align: center; border-radius: 14px; background: #0c3441; padding: 22px 20px; color: #fff; }.industry-outcome i { color: #9be5c2; font-size: 1.7rem; margin-bottom: 5px; }.industry-outcome strong { color: #fff; font-size: 1.08rem; }.industry-outcome small { color: #bfe3dc; font-size: .7rem; margin-top: 5px; }
.industry-decisions-section { padding: 105px 0; background: #fff; }.industry-content-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(50px,7vw,110px); }.industry-section-heading { max-width: 420px; }.industry-section-heading p { font-size: 1.08rem; }
.industry-decisions { border-top: 1px solid #dfe8e5; }.industry-decision { display: flex; gap: 20px; padding: 25px 0; border-bottom: 1px solid #dfe8e5; }.industry-decision > span { color: var(--industry-accent); font-size: .78rem; font-weight: 800; letter-spacing: .1em; padding-top: 4px; }.industry-decision h3 { margin: 0 0 8px; }.industry-decision p { font-size: .93rem; margin: 0; }
.industry-delivery-section { padding: 95px 0; background: #eaf3ef; }.industry-delivery-grid { display: grid; grid-template-columns: 1fr .9fr; align-items: center; gap: 70px; }.industry-delivery-grid > div:first-child { max-width: 630px; }.industry-delivery-steps { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 30px; }.industry-delivery-steps span { background: #fff; border: 1px solid #d3e6dc; border-radius: 8px; padding: 8px 11px; font-size: .77rem; font-weight: 800; color: #21564b; }.industry-delivery-steps i { color: #27816e; }
.industry-delivery-panel { background: #fff; border: 1px solid #d5e6dd; border-radius: 18px; padding: clamp(25px,3vw,40px); box-shadow: 0 16px 30px rgba(10,44,52,.06); }.industry-delivery-panel h3 { margin-bottom: 16px; }.industry-delivery-panel ul { list-style: none; margin: 0 0 18px; padding: 0; }.industry-delivery-panel li { position: relative; padding: 0 0 12px 28px; font-size: .93rem; }.industry-delivery-panel li::before { content: '✓'; position: absolute; left: 0; color: var(--industry-accent); font-weight: 800; }.industry-delivery-panel p { font-size: .79rem; color: #60756f; margin-bottom: 15px; }.industry-delivery-panel a { font-size: .85rem; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.industry-ai-section { padding: 105px 0; background: #fff; }.industry-ai-heading { max-width: 790px; margin-bottom: 37px; }.industry-ai-heading p { font-size: 1.05rem; }.industry-ai-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }.industry-ai-grid article { background: #f4f8f7; border: 1px solid #dfe9e6; border-top: 3px solid var(--industry-accent); border-radius: 0 0 12px 12px; padding: 25px; }.industry-ai-grid i { color: var(--industry-accent); font-size: 1.25rem; }.industry-ai-grid h3 { margin: 12px 0 8px; }.industry-ai-grid p { font-size: .86rem; margin: 0; }.industry-ai-note { font-size: .77rem; color: #60756f; margin: 22px 0 0; }
.industry-contact-section { padding: 85px 0 100px; background: #dceccf; }.industry-contact-panel { display: grid; grid-template-columns: .95fr 1.05fr; gap: clamp(30px,5vw,75px); align-items: center; padding: clamp(30px,5vw,65px); border-radius: 22px; background: #0c3441; box-shadow: 0 22px 42px rgba(10,44,52,.15); }.industry-contact-panel h2 { color: #fff; }.industry-contact-panel .industry-eyebrow { color: #89dfbd; }.industry-contact-panel p { color: #cce5df; }.industry-contact-action label { display: block; color: #fff; font-size: .9rem; font-weight: 800; margin-bottom: 10px; }.industry-contact-action input { display: block; width: 100%; border: 2px solid transparent; border-radius: 9px; padding: 14px 16px; margin-bottom: 12px; background: #fff; color: #163c43; font: inherit; font-size: .96rem; }.industry-contact-action input:focus-visible { outline: 3px solid #89dfbd; outline-offset: 2px; }.industry-contact-action .industry-button { width: 100%; }.industry-contact-action small { display: block; color: #aacbc4; text-align: center; font-size: .71rem; margin-top: 11px; }
body.industry-page:not(.enquiry-popup-open) #enquiry-form { display: none; }
@media (max-width: 850px) { .industry-hero-grid,.industry-content-grid,.industry-delivery-grid,.industry-contact-panel { grid-template-columns: 1fr; gap: 38px; }.industry-section-heading { max-width: 680px; }.industry-hero-visual { max-width: 620px; }.industry-ai-grid { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .industry-hero { padding: 56px 0 65px; }.industry-page h1 { font-size: 2.75rem; }.industry-decisions-section,.industry-delivery-section,.industry-ai-section { padding: 68px 0; }.industry-contact-section { padding: 65px 0 78px; }.industry-contact-panel { padding: 25px; }.industry-delivery-steps { gap: 6px; }.industry-delivery-steps span { font-size: .64rem; }.industry-source-list span { font-size: .66rem; } }
/* Retail opportunity map: commercial goal first, data partnership second. */
.retail-leak-page { overflow: hidden; }
.retail-leak-page section { margin: 0; }
.retail-leak-page .container { max-width: 1320px; }
.retail-leak-page h1,.retail-leak-page h2,.retail-leak-page h3 { color: #0b1f33; }
.retail-leak-page h1,.retail-leak-page h2 { font-weight: 800; letter-spacing: -.045em; }
.retail-leak-page h2 { font-size: clamp(2.2rem,3.3vw,3.45rem); line-height: 1.15; }
.retail-leak-hero { padding: 94px 0 103px; background: linear-gradient(120deg,#e7f3e9 0%,#f8faf7 58%,#e7f1f0 100%); }
.retail-leak-hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: clamp(40px,5vw,82px); }
.retail-leak-copy h1 { font-size: clamp(3.3rem,5.3vw,5.65rem); line-height: 1.05; margin: 0 0 25px; }
.retail-leak-copy > p { font-size: 1.13rem; line-height: 1.72; max-width: 670px; margin-bottom: 28px; }
.retail-leak-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 15px 25px; }
.retail-leak-promise { display: flex; flex-direction: column; gap: 3px; margin-top: 36px; padding-left: 17px; border-left: 3px solid #1d8a71; color: #4e6c61; font-size: .85rem; }.retail-leak-promise strong { color: #115f50; font-size: .95rem; }
.retail-leak-map { border: 1px solid #cfe3d5; border-radius: 22px; background: #fff; padding: clamp(25px,3vw,41px); box-shadow: 0 25px 55px rgba(10,54,50,.12); }
.retail-leak-map-head { display: flex; justify-content: space-between; gap: 10px; color: #678078; font-size: .63rem; font-weight: 800; letter-spacing: .13em; }.retail-leak-map-head span:last-child { color: #8c9d95; }
.retail-leak-map-title { color: #123f39; font-size: 1.23rem; font-weight: 800; line-height: 1.35; margin: 27px 0 20px; }
.retail-leak-map-lines { display: grid; gap: 14px; }.retail-leak-map-lines > div { display: grid; grid-template-columns: 100px 1fr 90px; align-items: center; gap: 10px; }.retail-leak-map-lines span { color: #345850; font-size: .77rem; font-weight: 800; }.retail-leak-map-lines i { display: block; width: var(--line-width); height: 11px; border-radius: 99px; background: linear-gradient(90deg,#9de1ba,#168169); }.retail-leak-map-lines strong { font-size: .66rem; color: #668078; text-align: right; }
.retail-leak-map-foot { display: flex; align-items: center; gap: 11px; background: #0c3441; color: #fff; border-radius: 10px; padding: 13px 17px; font-size: .76rem; font-weight: 800; margin-top: 28px; }.retail-leak-map-foot i { color: #8ee1bd; font-size: 1.2rem; }
.retail-levers-section { padding: 100px 0; background: #fff; }.retail-levers-heading { max-width: 800px; margin-bottom: 34px; }.retail-levers-heading p { font-size: 1.07rem; }
.retail-levers-layout { display: grid; grid-template-columns: .39fr .61fr; gap: 17px; }.retail-lever-tabs { display: grid; align-content: start; gap: 9px; }.retail-lever-tabs button { display: flex; align-items: center; gap: 13px; width: 100%; min-height: 68px; border: 1px solid #dbe7df; border-radius: 10px; background: #f6faf7; padding: 14px 18px; text-align: left; color: #24483f; font: inherit; font-size: .93rem; font-weight: 800; cursor: pointer; }.retail-lever-tabs button i { font-size: 1.26rem; color: #1d8a71; }.retail-lever-tabs button:hover { border-color: #1d8a71; }.retail-lever-tabs button.is-active { background: #e3f2e8; border-color: #1d8a71; box-shadow: inset 0 0 0 1px #1d8a71; }.retail-lever-tabs button:focus-visible { outline: 3px solid #1d8a71; outline-offset: 2px; }
.retail-lever-detail { border: 1px solid #cfe5d8; border-radius: 16px; background: #edf7f0; padding: clamp(29px,4vw,50px); }.retail-lever-detail-eyebrow { color: #16705d; font-size: .71rem; font-weight: 800; letter-spacing: .12em; }.retail-lever-detail h3 { font-size: clamp(1.6rem,2.45vw,2.55rem); line-height: 1.2; margin: 13px 0 15px; }.retail-lever-detail > p { font-size: .96rem; line-height: 1.7; }.retail-lever-example { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 0 20px; border-top: 1px solid #c8dfd0; border-bottom: 1px solid #c8dfd0; padding: 19px 0; margin: 21px 0; }.retail-lever-example > span { color: #22574b; font-size: .82rem; font-weight: 800; }.retail-lever-example strong { color: #17816b; font-size: 1.35rem; }.retail-lever-example small { grid-column: 1 / -1; color: #5c756a; font-size: .78rem; margin-top: 3px; }.retail-lever-partner { margin: 0; font-size: .86rem !important; }.retail-lever-disclaimer { color: #244b42; font-size: .88rem; line-height: 1.6; padding: 18px 22px; margin: 22px 0 0; background: #edf7f0; border-left: 3px solid #17816b; border-radius: 0 10px 10px 0; }
.retail-partnership-offer { padding: 96px 0; background: #e9f3ec; }.retail-partnership-offer-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(50px,7vw,110px); }.retail-partnership-offer-grid > div:first-child p { max-width: 490px; }.retail-partnership-stages { border-top: 1px solid #bdd9c7; }.retail-partnership-stages > div { display: grid; grid-template-columns: 40px 130px 1fr; gap: 13px; align-items: start; border-bottom: 1px solid #bdd9c7; padding: 22px 0; }.retail-partnership-stages span { color: #197963; font-size: .75rem; font-weight: 800; }.retail-partnership-stages strong { font-size: .93rem; }.retail-partnership-stages p { font-size: .84rem; margin: 0; }
.retail-speed-section { padding: 100px 0; background: #fff; }.retail-speed-grid { display: grid; grid-template-columns: 1fr .9fr; gap: clamp(45px,7vw,100px); align-items: center; }.retail-speed-grid > div:first-child p { font-size: 1.04rem; }.retail-speed-grid > div:first-child small { display: block; color: #6b8076; font-size: .75rem; line-height: 1.6; margin-top: 24px; }.retail-speed-timeline { border-left: 3px solid #acd9bc; padding-left: 25px; }.retail-speed-timeline > div { position: relative; display: flex; flex-direction: column; padding: 0 0 23px; }.retail-speed-timeline > div:last-child { padding-bottom: 0; }.retail-speed-timeline > div::before { content: ''; position: absolute; left: -34px; top: 5px; width: 15px; height: 15px; border: 3px solid #1d8a71; border-radius: 50%; background: #fff; }.retail-speed-timeline span { color: #16705d; font-size: .73rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }.retail-speed-timeline strong { font-size: .91rem; margin-top: 4px; }
.retail-ai-potential { padding: 76px 0; background: #e8f2f2; }.retail-ai-potential-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; align-items: center; }.retail-ai-potential-grid > p { font-size: 1.04rem; }
.retail-leak-contact { padding: 90px 0 105px; background: #dceccf; }.retail-leak-contact-panel { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(35px,5vw,75px); align-items: center; border-radius: 22px; background: #0c3441; padding: clamp(31px,5vw,66px); box-shadow: 0 22px 43px rgba(10,44,52,.16); }.retail-leak-contact-panel .industry-eyebrow { color: #8ce1bd; }.retail-leak-contact-panel h2 { color: #fff; }.retail-leak-contact-panel p { color: #cce5df; }.retail-leak-contact-action label { display: block; color: #fff; font-size: .9rem; font-weight: 800; margin-bottom: 10px; }.retail-leak-contact-action input { display: block; width: 100%; border: 2px solid transparent; border-radius: 9px; background: #fff; padding: 15px 17px; margin-bottom: 12px; color: #163c43; font: inherit; font-size: .96rem; }.retail-leak-contact-action input:focus-visible { outline: 3px solid #89dfbd; outline-offset: 2px; }.retail-leak-contact-action .industry-button { width: 100%; }.retail-leak-contact-action small { display: block; color: #aacbc4; font-size: .71rem; text-align: center; margin-top: 10px; }
@media (max-width: 1000px) { .retail-leak-hero-grid,.retail-partnership-offer-grid,.retail-speed-grid,.retail-ai-potential-grid,.retail-leak-contact-panel { grid-template-columns: 1fr; gap: 36px; }.retail-leak-map { max-width: 640px; }.retail-levers-layout { grid-template-columns: 1fr; }.retail-lever-tabs { grid-template-columns: repeat(2,1fr); }.retail-partnership-stages > div { grid-template-columns: 40px 120px 1fr; } }
@media (max-width: 600px) { .retail-leak-hero { padding: 60px 0 70px; }.retail-leak-copy h1 { font-size: 2.95rem; }.retail-levers-section,.retail-partnership-offer,.retail-speed-section { padding: 70px 0; }.retail-ai-potential { padding: 65px 0; }.retail-leak-contact { padding: 65px 0 80px; }.retail-lever-tabs { grid-template-columns: 1fr 1fr; }.retail-lever-tabs button { min-height: 62px; font-size: .74rem; padding: 10px; gap: 7px; }.retail-lever-tabs button i { font-size: 1rem; }.retail-lever-detail { padding: 25px; }.retail-partnership-stages > div { grid-template-columns: 32px 1fr; }.retail-partnership-stages p { grid-column: 2; }.retail-leak-contact-panel { padding: 26px; }.retail-leak-map-lines > div { grid-template-columns: 75px 1fr 72px; }.retail-leak-map-lines span,.retail-leak-map-lines strong { font-size: .61rem; } }
