/* Lensora product launch presentation; scoped to this product page. */
body { background:#fff; }
.om-hero { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:40px 48px; padding:28px max(5%,calc((100vw - 1320px)/2)) 35px; margin-top:90px; min-height:0; background:radial-gradient(ellipse at 90% 45%,#10476a 0,transparent 55%),#081e38; color:#fff; }
.om-hero-bg,.om-hero-dots,.om-hero::before,.om-hero::after { display:none; }
.om-hero-header { grid-column:1/-1; padding-bottom:24px; border-bottom:1px solid #ffffff24; gap:25px; animation:none; }
.om-logo { width:116px; height:75px; object-fit:contain; }
.om-nav { gap:22px; flex-wrap:wrap; justify-content:flex-end; }
.om-nav a:not(.om-nav-cta) { font-size:13px; color:#d2deea; font-weight:500; }
.om-nav-cta { font-size:13px; padding:11px 17px; border-radius:6px; }
.om-nav-cta-primary { background:#31c8ec; color:#08233d; border:1px solid #31c8ec; }
.om-nav-cta-secondary { color:white; border:1px solid #8ba4b8; background:transparent; }
.om-hero-content { max-width:none; width:auto; margin:22px 0 0; padding:0; align-self:center; text-align:left; }
.om-hero-content > *,.om-hero-title .title-word,.om-hero-title .lm-word,.om-hero-title .lm-word > span { opacity:1 !important; transform:none !important; animation:none !important; filter:none !important; }
.om-hero-chip { display:inline-block; border:1px solid #4eb5d14a; background:#25bada12; color:#89e2f4; font-size:11px; line-height:1.6; font-weight:500; letter-spacing:.04em; border-radius:6px; padding:8px 11px; margin-bottom:20px; }
.om-hero-chip::after { display:none; }
.om-hero-title { font-family:var(--sans); font-size:clamp(30px,3vw,46px); font-weight:500; letter-spacing:-.035em; line-height:1.2; color:#fff; margin:0 0 22px; max-width:650px; text-wrap:balance; }
.om-hero-content p { color:#becddd; font-size:15px; font-weight:400; line-height:1.85; max-width:590px; }
.om-cta-buttons { gap:12px; margin:26px 0; flex-wrap:wrap; }
.om-btn { padding:13px 21px; font-size:14px; font-weight:500; border-radius:7px; box-shadow:none; }
.om-btn-primary { background:#31c8ec; color:#08233d; border:1px solid #31c8ec; }
.om-btn-primary:hover { background:#6cdef6; color:#08233d; }
.om-btn-secondary { color:#fff; background:#ffffff08; border:1px solid #7790a5; }
.om-btn::after { display:none; }
.om-hero-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; border-top:1px solid #ffffff24; padding-top:23px; margin-top:30px; }
.om-hero-stat { padding:0; background:none; border:0; text-align:left; }
.om-hero-stat .value { color:#fff; font-size:26px; font-weight:500; }
.om-hero-stat .label { color:#a9bfd1; font-size:11px; }
.lensora-product-preview { position:relative; z-index:10; margin:28px 0 0; align-self:center; padding:7px; background:#ffffff12; border:1px solid #a2c5dd40; border-radius:14px; box-shadow:0 24px 70px #0005; overflow:hidden; }
.lensora-window-bar { display:flex; align-items:center; gap:5px; padding:9px 9px 14px; }
.lensora-window-bar > span { width:6px; height:6px; border-radius:50%; background:#8caec7; }
.lensora-window-bar p { font-size:10px; color:#b3cbdc; margin:0 0 0 12px; }
.lensora-product-preview img { display:block; width:100%; height:auto; border-radius:7px; }
.lensora-product-preview figcaption { font-size:11px; color:#bed4e5; padding:14px 8px 8px; text-align:center; }
.om-workflow { grid-column:1/-1; position:static; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); width:auto; max-width:none; transform:none; gap:10px; margin:8px 0 0; }
.om-workflow-card,.om-workflow-card:nth-child(n) { position:static; width:auto; min-width:0; display:flex; padding:16px 12px; gap:10px; background:#ffffff09; border:1px solid #ffffff20; border-radius:9px; transform:none; animation:none; box-shadow:none; opacity:1; }
.om-workflow-icon { font-size:20px; width:28px; height:28px; flex-shrink:0; background:none; box-shadow:none; }
.om-workflow-info { min-width:0; }
.om-workflow-info strong { color:#e5eff7; font-size:11px; line-height:1.5; }
.om-workflow-info span { color:#a1b8cc; font-size:10px; line-height:1.5; white-space:normal; }
.om-workflow-check { display:none; }
.om-hero-footer { grid-column:1/-1; text-align:center; margin:0; font-size:11px; color:#a9bfd1; }
.om-problems,.om-features,.om-demo,.om-faq { padding:90px max(5%,calc((100vw - 1200px)/2)); margin:0; max-width:none; }
.om-section-head { text-align:center; margin:0 auto 35px; }
.om-section-title { font:500 clamp(27px,3vw,40px)/1.2 var(--sans); letter-spacing:-.03em; color:#152b49; text-transform:none; margin-bottom:18px; }
.om-section-title::after { display:none; }
.om-section-subtitle { font-size:16px; line-height:1.8; color:#52647c; max-width:720px; margin:0 auto 36px; }
.om-problems { background:#fff; text-align:center; }
.om-problems-grid,.om-features-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.om-problem-card,.om-feature-card { padding:30px; text-align:left; border:1px solid #dce5ef; background:#fff; border-radius:12px; box-shadow:none; }
.om-problem-card::before,.om-feature-card::before,.om-feature-card::after { display:none; }
.om-problem-card:hover,.om-feature-card:hover { border-color:#a3bdd6; box-shadow:0 8px 28px #163b5d0a; transform:translateY(-3px); }
.om-problem-icon,.om-feature-icon { width:48px; height:48px; border-radius:10px; background:#eff6fc; border:0; margin-bottom:20px; font-size:24px; }
.om-problem-card h3,.om-feature-card h3 { font-size:16px; color:#152b49; font-weight:500; line-height:1.5; margin-bottom:10px; }
.om-problem-card p,.om-feature-card p { color:#52647c; font-size:14px; line-height:1.8; font-weight:400; }
.om-features { background:#f3f7fb; }
.om-demo { background:#fff; }
.om-demo-tabs { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:0 0 24px; }
.om-demo-tab { background:#f2f6fb; color:#52647c; border:1px solid #dce5ef; border-radius:7px; padding:12px 24px; font-size:14px; }
.om-demo-tab.active { background:#152b49; color:white; border-color:#152b49; }
.om-demo-panel { background:#fff; border:1px solid #cddce9; border-radius:15px; box-shadow:0 18px 60px #153b5e12; overflow:hidden; transform:none; max-width:1100px; margin:auto; }
.om-demo-panel:hover { transform:none; }
.om-demo-image-wrap { position:relative; overflow:hidden; background:#f3f7fb; }
.om-demo-image-wrap img { width:100%; height:auto; object-fit:contain; display:block; transform:none !important; }
.om-demo-badge { top:16px; left:auto; right:16px; font-size:10px; background:#152b49; color:#fff; border:0; }
.om-demo-caption { position:static; background:#fff; padding:26px 30px; color:#152b49; }
.om-demo-caption h3 { color:#152b49; font-size:21px; }
.om-demo-caption p { color:#52647c; font-size:14px; margin-top:7px; }
.om-demo-footer { background:#f3f7fb; border-top:1px solid #dce5ef; padding:18px 30px; gap:16px; flex-wrap:wrap; }
.om-demo-footer-label,.om-demo-footer-label strong { color:#52647c; }
.om-faq { background:#f3f7fb; }
.om-faq-item { max-width:850px; margin:0 auto 12px; border:1px solid #dce5ef; border-radius:10px; background:#fff; overflow:hidden; }
.om-faq-question { padding:22px 24px; color:#152b49; font-size:16px; text-align:left; }
.om-faq-item.open .om-faq-question { color:#17618a; }
.om-faq-answer p { padding:0 24px 24px; color:#52647c; font-size:14px; }
.om-cta { margin:0; padding:80px 6%; background:#0b2844; text-align:center; border:0; border-radius:0; }
.om-cta::before,.om-cta::after { display:none; }
.om-cta h2 { font:500 clamp(30px,4vw,46px)/1.2 var(--sans); color:#fff; letter-spacing:-.035em; }
.om-cta p { color:#b8cddd; max-width:600px; margin:20px auto 28px; font-size:16px; }
.om-footer { padding:64px max(5%,calc((100vw - 1200px)/2)) 24px; background:#071c32; color:#c5d7e7; }
.om-footer-brand img { width:120px; height:auto; }
.om-footer-brand p,.om-footer-col a { color:#a9bfd1; }
.om-footer-col h4 { color:#fff; }
.om-footer-bottom { border-color:#ffffff24; color:#a9bfd1; margin-top:35px; }
[data-reveal].rv,.om-section-subtitle.rv { opacity:1; transform:none; filter:none; }
@media(max-width:1100px) {
 .om-hero { gap:30px; }
 .om-nav { gap:12px; }
 .om-workflow { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:800px) {
 .om-hero { grid-template-columns:minmax(0,1fr); padding:24px 6% 32px; gap:28px; }
 .om-hero-header { flex-wrap:wrap; justify-content:center; }
 .om-nav { justify-content:center; }
 .om-hero-content { margin:10px 0 0; }
 .om-hero-title { font-size:36px; max-width:700px; }
 .lensora-product-preview { margin:0; }
 .om-workflow { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .om-problems,.om-features,.om-demo,.om-faq { padding:60px 6%; }
 .om-problems-grid,.om-features-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .om-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
}
@media(max-width:480px) {
 .om-hero { margin-top:80px; }
 .om-nav a:not(.om-nav-cta) { font-size:12px; }
 .om-hero-title { font-size:30px; }
 .om-hero-chip { font-size:10px; }
 .om-hero-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
 .om-workflow { grid-template-columns:minmax(0,1fr); }
 .om-workflow-card { padding:14px 18px; }
 .om-workflow-info strong { font-size:13px; }
 .om-workflow-info span { font-size:12px; }
 .om-problems-grid,.om-features-grid { grid-template-columns:minmax(0,1fr); }
 .om-demo-tab { padding:10px 14px; font-size:12px; }
 .om-demo-caption { padding:20px; }
 .om-demo-footer { padding:18px 20px; }
 .om-footer-grid { grid-template-columns:minmax(0,1fr); }
}

body { animation:none !important; opacity:1; }
[data-reveal].rv,.om-section-subtitle.rv { animation:none !important; }
.om-nav { display:flex; }
.om-demo-image-wrap { height:auto; }
.nav { animation:none !important; }
@media(max-width:480px) { .om-nav { gap:12px 16px; } .om-nav-cta { padding:10px 13px; } }

/* Bespoke Lensora workflow illustrations, drawn for the navy product hero. */
.om-workflow-icon {
  display:flex; align-items:center; justify-content:center;
  width:42px; height:48px; flex:0 0 42px;
  background:none; border:0; border-radius:0; box-shadow:none;
}
.om-workflow-icon img { display:block; width:42px; height:42px; max-width:100%; object-fit:contain; }
.om-workflow-card { align-items:center; }
@media(max-width:1100px) { .om-workflow-icon { width:44px; flex-basis:44px; } .om-workflow-icon img { width:44px; height:44px; } }

/* Light-surface variants of the Lensora workflow icon family. */
.om-feature-icon { display:flex; align-items:center; justify-content:center; width:60px; height:60px; background:#eff6fc; border:1px solid #e1edf7; border-radius:13px; }
.om-feature-icon img { display:block; width:44px; height:44px; object-fit:contain; }
.om-feature-card:hover .om-feature-icon { transform:none; background:#e8f4fa; border-color:#c4dfe9; }

.lensora-launch {
  grid-column:1/-1; display:flex; flex-direction:column; align-items:center;
  gap:10px; padding:20px 24px; border:1px solid #31c8ec45; border-radius:12px;
  background:linear-gradient(110deg,#163c59,#0b304e); text-align:center;
}
.lensora-launch-label { display:inline-flex; align-items:center; gap:10px; color:#fff; font-size:22px; font-weight:600; letter-spacing:-.02em; }

.lensora-launch-enquiry { display:inline-flex; align-items:center; gap:12px; color:#8ce7fa; font-size:14px; font-weight:500; text-decoration:none; }
.lensora-launch-enquiry:hover { color:#fff; }
#contactForm { scroll-margin-top:120px; }

.lensora-launch-enquiry-text { text-decoration:underline; text-underline-offset:5px; }
