/* Local landing-page refresh. Keep application and legal-page styles isolated. */
.landing-refresh, .demo-refresh { --muted: #536278; --orange-accent: #a74409; }
.landing-refresh .section { padding-block: 80px; }
.landing-refresh .section-header { max-width: 700px; margin: 0 auto 40px; }
.landing-refresh .heading-section { line-height: 1.2; letter-spacing: -.035em; }
.landing-refresh .highlight { color: #bc4b0b; }
.landing-refresh .btn-primary, .demo-refresh .btn-primary { box-shadow: 0 5px 14px rgba(224,109,31,.15); }
.landing-refresh .btn, .demo-refresh .btn { gap: 10px; }
.landing-refresh .hero {
  min-height: auto; padding-top: calc(var(--navbar-h) + 64px); padding-bottom: 64px;
  background: radial-gradient(ellipse at 85% 70%, #fcebdc 0%, transparent 46%), linear-gradient(120deg, #fff 15%, #f2f6fb 100%);
  border-bottom: 1px solid var(--border);
}
.landing-refresh .hero::before { content: none; }
.landing-refresh .hero__inner { grid-template-columns: 1fr 1.05fr; gap: 36px; }
.landing-refresh .hero__content { gap: 22px; }
.landing-refresh .hero__headline { font-size: clamp(2.4rem, 4.2vw, 3.75rem); letter-spacing: -.05em; line-height: 1.08; }
.landing-refresh .hero__sub { max-width: 450px; line-height: 1.65; }
.landing-refresh .hero__cta-group { gap: 12px; }
.landing-refresh .hero__cta-group .btn { padding: 16px 20px; font-size: .95rem; }
.hero__reassurance { color: var(--muted); font-size: .85rem; }
.hero__reassurance span { margin-inline: 8px; }
.hero__offer-link { color: var(--navy); font-size: .85rem; text-decoration: underline; text-underline-offset: 4px; }
.landing-refresh .hero__visual { flex-direction: column; align-items: center; gap: 16px; min-width: 0; }
.landing-refresh .hero__image { filter: drop-shadow(0 14px 22px rgba(30,58,95,.12)); }
.hero__visual figcaption { font-size: .8rem; color: var(--muted); }
.hero__device-support { display: grid; justify-items: center; gap: 12px; width: 100%; text-align: center; line-height: 1.5; }
.hero__device-support strong { color: var(--navy); font-size: 1rem; }
.hero__devices { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; padding: 0; margin: 0; list-style: none; }
.hero__devices li { display: flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid rgba(30,58,95,.12); border-radius: 999px; background: rgba(255,255,255,.8); color: var(--navy); font-size: .8rem; font-weight: 600; }
.hero__devices svg { width: 20px; height: 20px; flex-shrink: 0; }
.landing-refresh .showcase { background: #fff; }
.product-carousel { position:relative; overflow:hidden; border:1px solid #d7dfea; border-radius:22px; background:linear-gradient(135deg,#f8fbff,#eef3fa); box-shadow:0 24px 70px rgba(30,58,95,.12); }
.product-carousel::before,.product-carousel::after { content:''; position:absolute; width:330px; height:330px; border-radius:50%; pointer-events:none; filter:blur(12px); }
.product-carousel::before { top:-220px; right:-100px; background:rgba(255,140,66,.17); }
.product-carousel::after { bottom:-250px; left:-110px; background:rgba(55,111,177,.12); }
.product-carousel__topbar { position:relative; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:58px; padding:14px 20px; background:rgba(255,255,255,.84); border-bottom:1px solid rgba(215,223,234,.8); backdrop-filter:blur(12px); }
.product-carousel__eyebrow { display:inline-flex; align-items:center; gap:8px; color:var(--navy); font-size:.8rem; font-weight:750; }
.product-carousel__pulse { width:8px; height:8px; border-radius:50%; background:var(--orange); box-shadow:0 0 0 0 rgba(255,140,66,.5); animation:carouselPulse 2.2s infinite; }
.product-carousel__device { color:var(--muted); font-size:.74rem; }
.product-carousel__viewport { position:relative; }
.product-carousel__slide { display:none; grid-template-columns:minmax(0,1.58fr) minmax(290px,.72fr); align-items:stretch; }
.product-carousel__slide.is-active { display:grid; animation:carouselReveal .55s cubic-bezier(.2,.75,.25,1); }
.product-carousel__media { position:relative; min-width:0; overflow:hidden; display:grid; place-items:center; background:linear-gradient(145deg,#edf3fa,#dfe9f4); }
.product-carousel__media img { --carousel-scale:1; display:block; width:100%; height:100%; min-height:500px; object-fit:contain; object-position:center; transform:scale(var(--carousel-scale)); transition:transform 1.2s cubic-bezier(.2,.75,.25,1); }
.product-carousel__slide.is-active .product-carousel__media--overview img { animation:carouselBreathe 8s ease-in-out infinite; }
.product-carousel__spotlight { position:absolute; z-index:1; width:22%; aspect-ratio:1; border:2px solid rgba(255,140,66,.8); border-radius:18px; box-shadow:0 0 0 200vmax rgba(15,37,66,.05),0 0 35px rgba(255,140,66,.25); pointer-events:none; opacity:.8; }
.product-carousel__spotlight--overview { right:6%; top:18%; }
.product-carousel__spotlight--inventory { right:3%; top:10%; width:20%; }
.product-carousel__spotlight--branches { right:8%; top:2%; width:27%; }
.product-carousel__caption { position:relative; z-index:1; align-self:center; padding:40px 36px; }
.product-carousel__number { display:inline-block; margin-bottom:16px; color:#b34b11; font-size:.72rem; font-weight:800; letter-spacing:.12em; }
.product-carousel__caption h3 { max-width:320px; font-size:clamp(1.35rem,2.2vw,2rem); line-height:1.17; letter-spacing:-.035em; }
.product-carousel__caption p { max-width:300px; margin-top:17px; color:var(--muted); font-size:.92rem; line-height:1.7; }
.product-carousel__controls { position:relative; z-index:2; display:flex; align-items:center; justify-content:center; gap:13px; padding:18px 20px; background:rgba(255,255,255,.78); border-top:1px solid rgba(215,223,234,.8); }
.product-carousel__arrow { display:grid; place-items:center; width:38px; height:38px; color:var(--navy); border:1px solid #ccd8e6; border-radius:50%; background:#fff; font-size:1.2rem; transition:transform var(--transition),background var(--transition),color var(--transition); }
.product-carousel__arrow:hover { color:#fff; background:var(--navy); transform:translateY(-2px); }
.product-carousel__module { display:flex; align-items:baseline; gap:7px; min-width:118px; color:var(--muted); font-size:.7rem; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap; }
.product-carousel__module strong { color:var(--navy); font-size:.76rem; letter-spacing:0; text-transform:none; }
.product-carousel__dots { display:flex; align-items:center; gap:8px; }
.product-carousel__dots button { width:8px; height:8px; border-radius:99px; background:#b6c4d4; transition:width var(--transition),background var(--transition); }
.product-carousel__dots button.is-active { width:30px; background:var(--orange); }
.product-carousel__pause { margin-left:9px; color:var(--muted); font-size:.78rem; text-decoration:underline; text-underline-offset:3px; }
.product-carousel__pause:hover { color:var(--navy); }
.product-carousel__note { position:relative; z-index:1; margin:0; padding:0 20px 16px; color:var(--muted); background:rgba(255,255,255,.78); font-size:.72rem; text-align:center; }

/* Layered depth treatment inspired by a depth-carousel interaction. */
.product-carousel { isolation:isolate; border-color:#1d426d; background:radial-gradient(circle at 50% -30%,#355f94 0,transparent 48%),linear-gradient(145deg,#102b4d,#07182f); box-shadow:0 28px 78px rgba(15,37,66,.22); }
.product-carousel::before { top:-250px; right:20%; width:480px; height:480px; background:rgba(255,140,66,.19); filter:blur(30px); }
.product-carousel::after { bottom:-320px; left:18%; width:520px; height:520px; background:rgba(72,152,255,.22); filter:blur(40px); }
.product-carousel__topbar { color:#dce9f8; background:rgba(7,24,47,.75); border-bottom-color:rgba(172,203,237,.18); }
.product-carousel__eyebrow { color:#f4f8ff; }
.product-carousel__device { color:#b9cae0; }
.product-carousel__viewport { height:clamp(390px,42vw,540px); min-height:390px; overflow:hidden; perspective:1500px; perspective-origin:50% 42%; }
.product-carousel__slide { position:absolute; top:30px; bottom:30px; left:12%; width:76%; display:grid; grid-template-columns:1fr; opacity:0; pointer-events:none; transform:translate3d(76%,0,-150px) scale(.78) rotateY(-13deg); transform-origin:center; transition:transform .72s cubic-bezier(.2,.78,.2,1),opacity .52s ease,filter .52s ease; will-change:transform,opacity; }
.product-carousel__slide.is-active,.product-carousel__slide.is-previous,.product-carousel__slide.is-next { display:grid; animation:none; }
.product-carousel__slide:not(.is-active):not(.is-previous):not(.is-next) { visibility:hidden; }
.product-carousel__slide.is-active { z-index:3; opacity:1; pointer-events:auto; filter:none; transform:translate3d(var(--carousel-drag,0px),0,0) scale(1) rotateY(0); }
.product-carousel__slide.is-previous { z-index:1; opacity:.52; filter:saturate(.72) brightness(.68); transform:translate3d(calc(-72% + var(--carousel-drag,0px)),0,-190px) scale(.8) rotateY(15deg); }
.product-carousel__slide.is-next { z-index:2; opacity:.62; filter:saturate(.78) brightness(.73); transform:translate3d(calc(72% + var(--carousel-drag,0px)),0,-150px) scale(.82) rotateY(-15deg); }
.product-carousel__viewport { touch-action:pan-y; cursor:grab; user-select:none; -webkit-user-select:none; }
.product-carousel__viewport:focus-visible { outline:3px solid rgba(255,140,66,.9); outline-offset:-5px; }
.product-carousel.is-dragging .product-carousel__viewport { cursor:grabbing; }
.product-carousel.is-dragging .product-carousel__slide { transition:none; }
.product-carousel__media img { -webkit-user-drag:none; }
.product-carousel__media { min-height:0; height:100%; border:1px solid rgba(221,234,249,.82); border-radius:19px; background:#edf3fa; box-shadow:0 18px 36px rgba(0,10,26,.34); }
.product-carousel__media img { min-height:0; height:100%; object-fit:contain; background:#fff; transform:none; }
.product-carousel__caption { position:absolute; z-index:2; left:22px; bottom:20px; width:min(410px,calc(100% - 44px)); padding:18px 20px; border:1px solid rgba(223,237,252,.28); border-radius:15px; color:#fff; background:rgba(7,26,49,.84); box-shadow:0 12px 32px rgba(0,11,28,.27); backdrop-filter:blur(12px); }
.product-carousel__slide:not(.is-active) .product-carousel__caption { opacity:0; }
.product-carousel__number { margin-bottom:7px; color:#ffc39a; }
.product-carousel__caption h3 { max-width:360px; color:#fff; font-size:clamp(1.2rem,2.1vw,1.8rem); }
.product-carousel__caption p { max-width:370px; margin-top:9px; color:#d1dfef; font-size:.84rem; line-height:1.55; }
.product-carousel__controls { background:rgba(8,27,51,.94); border-top-color:rgba(172,203,237,.18); }
.product-carousel__arrow { color:#edf5ff; border-color:rgba(187,211,239,.36); background:rgba(255,255,255,.08); }
.product-carousel__arrow:hover { color:#102b4d; background:#fff; }
.product-carousel__module { color:#bcd0e8; }
.product-carousel__module strong { color:#fff; }
.product-carousel__dots button { background:#7891af; }
.product-carousel__dots button.is-active { background:var(--orange); }
.product-carousel__dots [data-carousel-dot] { width:8px; height:8px; border-radius:99px; background:#7891af; transition:width var(--transition),background var(--transition),opacity var(--transition); }
.product-carousel__dots [data-carousel-dot].is-active { width:30px; background:var(--orange); }
.product-carousel__pause { color:#c9d9eb; }
.product-carousel__pause:hover { color:#fff; }
.product-carousel__controls { flex-direction:column; gap:10px; padding-block:15px 10px; }
.product-carousel__module { justify-content:center; min-width:0; }
.product-carousel__note { display:flex; align-items:center; justify-content:center; gap:7px; padding-bottom:16px; color:#b8cbe0; background:rgba(8,27,51,.94); }
.product-carousel__note span { color:#ffc39a; font-size:1rem; }
@keyframes carouselPulse { 0%,100% { box-shadow:0 0 0 0 rgba(255,140,66,.48); } 50% { box-shadow:0 0 0 7px rgba(255,140,66,0); } }
@keyframes carouselBreathe { 0%,100% { transform:scale(1); } 50% { transform:scale(1.018); } }
@keyframes carouselReveal { from { opacity:0; transform:translateX(14px) scale(.99); } to { opacity:1; transform:none; } }
.workflow-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 28px; margin-top: 38px; }
.workflow-card { border-top: 2px solid #dce5ef; padding-top: 22px; }
.workflow-number { color: #a74409; font-size: .75rem; font-weight: 700; letter-spacing: .1em; }
.workflow-card h3 { margin: 12px 0; font-size: 1.2rem; line-height: 1.35; }
.workflow-card p { color: var(--muted); font-size: .925rem; line-height: 1.7; }
.landing-refresh .features { background: #f5f7fa; }
.landing-refresh .features-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.landing-refresh .feature-card { box-shadow: none; padding: 26px; gap: 14px; }
.landing-refresh .feature-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(30,58,95,.06); }
.feature-details { margin-top: 28px; }
.feature-details summary { padding: 18px; border: 1px solid #d7dfea; border-radius: 12px; color: var(--navy); cursor: pointer; font-size: .925rem; font-weight: 600; }
.feature-details[open] summary { margin-bottom: 18px; }
.landing-refresh .features-grid--extra { grid-template-columns: repeat(2,minmax(0,1fr)); }
.landing-refresh .industries-grid { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 18px; }
.landing-refresh .industry-card { grid-column: span 2; grid-template-columns: 100px minmax(0,1fr); min-height: 190px; border-radius: 16px; }
.landing-refresh .industry-card:nth-child(4) { grid-column: 2 / span 2; }
.landing-refresh .industry-content { padding: 24px 18px; }
.landing-refresh .industry-content p { color: var(--muted); font-size: .875rem; line-height: 1.6; }
.landing-refresh .industry-title { font-size: 1.1rem; }
.landing-refresh .industry-media img { object-fit: contain; }
.industry-media--icon { color: var(--navy); padding: 12px; }
.industry-media--icon svg { width: 100%; }
.industry-note { color: var(--muted); text-align: center; margin-top: 28px; font-size: .9rem; }
.landing-refresh .security-section { background: #edf2f8; }
.landing-refresh .security-layout { gap: 48px; }
.landing-refresh .security-card { background: #fff; border: 1px solid #dce4ed; box-shadow: none; }
.contact-links { display: flex; align-items: flex-start; flex-direction: column; gap: 12px; }
.contact-links a { color: var(--navy); font-weight: 600; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.landing-refresh .how-it-works { background: #fff; }
.landing-refresh .how-cta-note { max-width: 590px; margin-inline: auto; }
.landing-refresh .step-title { font-size: 1.125rem; }
.landing-refresh .faq-section { background: #f5f7fa; }
.landing-refresh .faq-item:not(.open) .faq-panel { display: none; }
.landing-refresh .final-cta { background: var(--navy-dark); }
.landing-refresh .final-cta h2 { color: #fff; }
.landing-refresh .final-cta-text, .landing-refresh .final-cta-note { color: #d6e2f1; }
.landing-refresh .final-cta .btn-secondary { color: #fff; border-color: #9cb3cf; }
.landing-refresh .final-cta .btn-secondary:hover { background: rgba(255,255,255,.08); }
.landing-refresh .final-cta .highlight { color: var(--orange); }
.footer-contact { display: block; font-size: .875rem; color: #d8e5f5; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.landing-refresh .reveal, .demo-refresh .reveal { opacity: 1; transform: none; }
.demo-refresh .dform-info { gap: 20px; }
.demo-refresh .dform-info-list { gap: 10px; }
.demo-refresh .dform-info-item { padding: 14px 16px; font-size: .925rem; }
.demo-refresh .dform-info-text { font-size: 1rem; }
.demo-refresh .dform-fields { gap: 18px; }
.demo-refresh .dform-field[data-field="email"] { grid-column: 1 / -1; }
.demo-refresh .dform-form { gap: 20px; }
.demo-refresh .dform-input { font-size: 1rem; }
.demo-refresh .email-auth__actions { align-items: flex-start; }
.demo-refresh .email-auth__send, .demo-refresh .email-auth__verify { min-height: 44px; padding: 10px 14px; }
.demo-refresh .dform-form { scroll-margin-top: calc(var(--navbar-h) + 20px); }
.demo-form-jump { display: none; }
.demo-refresh .dform-privacy a { text-decoration: underline; }
.demo-form-stage { color: var(--navy); font-size: .875rem; font-weight: 600; padding: 10px 14px; background: #eef3f8; border-radius: 8px; }
.demo-form-hint { font-size: .8rem; color: var(--muted); }
.demo-refresh .contact-links { font-size: .875rem; }
.demo-refresh .dform-card { scroll-margin-top: 92px; }
@media (max-width: 1100px) {
  .landing-refresh .hero__inner { gap: 24px; }
  .landing-refresh .hero__cta-group .btn { font-size: .875rem; padding-inline: 16px; }
  .landing-refresh .industry-card { grid-template-columns: 80px minmax(0,1fr); }
}
@media (max-width: 900px) {
  .landing-refresh .hero__inner { grid-template-columns: 1fr; gap: 32px; }
  .landing-refresh .hero__content { align-items: center; text-align: center; }
  .landing-refresh .hero__visual { max-width: 560px; margin-inline: auto; }
  .landing-refresh .hero__cta-group { justify-content: center; }
  .landing-refresh .features-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .landing-refresh .industries-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .landing-refresh .industry-card, .landing-refresh .industry-card:nth-child(4) { grid-column: auto; }
  .workflow-grid { gap: 18px; }
  .workflow-card h3 { font-size: 1.075rem; }
}
@media (max-width: 640px) {
  .landing-refresh .section { padding-block: 48px; }
  .landing-refresh .section-header { margin-bottom: 28px; }
  .landing-refresh .hero { padding-top: calc(var(--navbar-h) + 26px); padding-bottom: 30px; }
  .landing-refresh .hero__inner { gap: 24px; }
  .landing-refresh .hero__content { gap: 16px; }
  .landing-refresh .hero__headline { font-size: clamp(2rem, 8.4vw, 2.75rem); }
  .landing-refresh .hero__sub { font-size: .975rem; line-height: 1.55; max-width: 360px; }
  .landing-refresh .hero__cta-group { gap: 10px; }
  .landing-refresh .hero__cta-group .btn { min-height: 48px; padding: 12px 16px; font-size: .95rem; }
  .hero__offer-link { font-size: .78rem; }
  .hero__reassurance { font-size: .8rem; }
  .hero__visual figcaption { font-size: .75rem; }
  .landing-refresh .hero__visual { gap: 6px; }
  .landing-refresh .hero__image { max-width: 370px; }
  .desktop-break { display: none; }
  .product-carousel { border-radius:15px; }
  .product-carousel__topbar { min-height:50px; padding:11px 14px; }
  .product-carousel__device { display:none; }
  .product-carousel__viewport { height:340px; min-height:340px; perspective:900px; }
  .product-carousel__slide { position:absolute; inset:16px auto 16px 7%; width:86%; display:grid; grid-template-columns:1fr; grid-template-rows:auto 1fr; opacity:0; transform:translate3d(76%,0,-120px) scale(.78) rotateY(-10deg)!important; filter:saturate(.75) brightness(.7)!important; }
  .product-carousel__slide.is-active { display:grid; opacity:1; filter:none!important; transform:translate3d(var(--carousel-drag,0px),0,0) scale(1) rotateY(0)!important; }
  .product-carousel__slide.is-previous { display:grid; opacity:.34; transform:translate3d(calc(-89% + var(--carousel-drag,0px)),0,-145px) scale(.82) rotateY(11deg)!important; }
  .product-carousel__slide.is-next { display:grid; opacity:.42; transform:translate3d(calc(89% + var(--carousel-drag,0px)),0,-125px) scale(.84) rotateY(-11deg)!important; }
  .product-carousel__media { height:auto; aspect-ratio:1.95; border:1px solid rgba(221,234,249,.72); border-radius:14px 14px 0 0; box-shadow:0 14px 28px rgba(0,10,26,.28); }
  .product-carousel__media,.product-carousel__media img { min-height:0; }
  .product-carousel__media img { height:100%; object-position:center; }
  .product-carousel__spotlight { border-radius:10px; }
  .product-carousel__caption { position:relative; inset:auto; width:100%; height:100%; padding:14px 15px; border:0; border-top:1px solid rgba(223,237,252,.18); border-radius:0 0 14px 14px; box-shadow:none; }
  .product-carousel__number { margin-bottom:9px; }
  .product-carousel__caption h3 { max-width:none; font-size:1.12rem; }
  .product-carousel__caption p { max-width:none; margin-top:6px; font-size:.76rem; line-height:1.45; }
  .product-carousel__controls { display:flex; flex-direction:column; gap:9px; padding:13px 13px 9px; }
  .product-carousel__module { min-width:0; justify-content:center; font-size:.66rem; }
  .product-carousel__module strong { overflow:hidden; max-width:110px; font-size:.7rem; text-overflow:ellipsis; }
  .product-carousel__dots { justify-content:center; gap:6px; }
  .product-carousel__dots [data-carousel-dot] { width:7px; height:7px; }
  .product-carousel__dots [data-carousel-dot].is-active { width:22px; }
  .product-carousel__note { padding:0 14px 12px; font-size:.68rem; }
  .workflow-grid { grid-template-columns: 1fr; gap: 22px; margin-top: 24px; }
  .workflow-card { padding-top: 18px; }
  .workflow-card h3 { font-size: 1.125rem; margin: 8px 0; }
  .landing-refresh .features-grid, .landing-refresh .features-grid--extra { grid-template-columns: 1fr; gap: 12px; }
  .landing-refresh .feature-card { display: grid; grid-template-columns: 44px minmax(0,1fr); gap: 8px 16px; padding: 20px; }
  .landing-refresh .feature-icon { width: 44px; height: 44px; grid-row: span 2; }
  .landing-refresh .feature-desc { grid-column: 2; }
  .landing-refresh .industries-grid { grid-template-columns: 1fr; gap: 12px; }
  .landing-refresh .industry-card { grid-template-columns: 90px minmax(0,1fr); min-height: 145px; }
  .landing-refresh .industry-content { padding: 18px; }
  .landing-refresh .security-layout { gap: 28px; }
  .landing-refresh .security-grid { grid-template-columns: 1fr; }
  .landing-refresh .security-card { padding: 20px; }
  .demo-refresh .dform-layout { gap: 28px; }
  .demo-refresh .dform-info-list { display: none; }
  .demo-refresh .dform-info { gap: 14px; }
  .demo-form-jump { display: inline-flex; align-self: flex-start; }
  .demo-refresh .dform-form { padding: 22px 18px; }
  .demo-refresh .email-auth__actions { flex-direction: column; gap: 10px; }
  .demo-refresh .footer-bottom { flex-wrap: wrap; gap: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .landing-refresh *, .demo-refresh * { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  .landing-refresh .hero__image { transform: none; }
}
