/* Final presentation layer. Keep the admin's light-mode background colours. */
.neu-about__inner > img[data-landing-image="support_section_image"] {
  width:180px;
  max-width:100%;
  height:auto;
  justify-self:center;
  align-self:center;
  border-radius:24px;
}
@media (max-width:575px) {
  .neu-about__inner > img[data-landing-image="support_section_image"] {
    width:120px;
    border-radius:18px;
  }
}
.neu-feature-carousel, .neu-feature-swiper { width:100%; min-width:0; }
.neu-feature-carousel .neu-showcase__phones { max-width:440px; padding:24px 12px; min-height:0; transform:none; margin:0 auto; }
.neu-feature-carousel .neu-phone-lg { flex:0 0 58%; width:58%; height:auto; aspect-ratio:200 / 405; }
.neu-feature-carousel .neu-phone-sm { flex:0 0 44%; width:44%; height:auto; aspect-ratio:200 / 405; margin-left:-8%; }
.neu-phone-slide-image { display:block; position:relative; z-index:1; width:100%; height:100%; object-fit:contain; background:#fff; }
.neu-feature-caption { text-align:center; padding:16px; overflow-wrap:anywhere; }
.neu-feature-caption h3 { color:var(--neu-text); font-size:22px; }
.neu-feature-controls { display:flex; align-items:center; justify-content:center; gap:16px; }
.neu-feature-controls .neu-store-btn { flex:none; }
.neu-feature-pagination { width:auto !important; }
.neu-feature-pagination .swiper-pagination-bullet { background:var(--neu-accent-2); }
:root { --neu-bg-card:#fff; --neu-accent-2:#176bb2; --neu-text-dim:#586d87; }
html.dark-theme {
  color-scheme:dark;
  --neu-bg-deep:#101e32; --neu-bg-card:#192d46;
  --neu-text:#f3f7ff; --neu-text-soft:#c0cede; --neu-text-dim:#a0b4cd;
  --neu-glass-bg:rgba(28,48,74,.86); --neu-glass-border:rgba(161,196,237,.18);
  --neu-dark:rgba(0,8,22,.3); --neu-light:rgba(106,154,209,.08);
  --neu-accent-2:#91ccff;
}
body { color:var(--neu-text-soft); }
.navbar-top-wrapper { flex-wrap:wrap; gap:12px 20px; padding-block:12px; }
.navbar-top-wrapper > .top-padding { padding:0; flex:0 0 auto; }
.navbar-top-wrapper .tel-link { max-width:none; overflow:visible; white-space:nowrap; gap:6px; min-height:32px; }
.navbar-top-wrapper .tel-link i { flex:none; }
.navbar-bottom-wrapper { gap:16px; }
.neu-theme-toggle, .neu-store-btn, .neu-btn { min-height:44px; }
.neu-hero { padding:72px 0; }
.neu-hero__inner { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; }
.neu-hero__visual { width:100%; max-width:none; aspect-ratio:auto; min-width:0; margin:0; }
.neu-hero-gallery { width:100%; gap:18px; align-items:center; }
.neu-hero-gallery > img { width:100%; height:auto; border-radius:20px; border:1px solid var(--neu-glass-border); box-shadow:0 12px 32px var(--neu-dark); }
.neu-hero h1 { line-height:1.18; letter-spacing:-.035em; }
.neu-hero p.lead { line-height:1.75; }
.neu-chip { max-width:100%; overflow-wrap:anywhere; }
.neu-hero__stats { gap:12px; }
.neu-stat-pill { flex:1 1 120px; padding:16px; }
.neu-stat-pill span { line-height:1.5; }
.neu-about, .neu-showcase, .neu-cta, .neu-testimonials { padding:64px 0; }
.neu-about__inner, .neu-showcase__inner { gap:40px; }
.neu-about__inner > *, .neu-showcase__inner > * { min-width:0; }
.neu-service-grid, .neu-testimonial-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); }
.neu-service-card, .neu-testimonial-card, .neu-counter-card { border-radius:24px; box-shadow:0 10px 30px var(--neu-dark); overflow-wrap:anywhere; }
.neu-service-card h3 { font-size:21px; line-height:1.4; }
.neu-section-title { line-height:1.25; }
.neu-section-sub { max-width:640px; margin:12px auto 32px; line-height:1.7; }
.neu-feature-images { padding:12px; margin-bottom:20px; border-radius:18px; background:var(--neu-glass-bg); }
.neu-floating-card b, .neu-floating-card small { white-space:normal; }
.neu-floating-card--1 { left:12px; }
.neu-floating-card--2 { right:12px; }
.neu-cta__card { padding:48px 32px; }
.neu-cta__card p { max-width:640px; margin:0 auto 24px; }
.neu-btn--light, .neu-btn--light:hover { color:#14478c; background:#fff; }
.neu-store-btn { text-align:center; display:inline-flex; justify-content:center; align-items:center; }
.neu-person { align-items:flex-start; }
.neu-avatar { overflow:hidden; }
.neu-phone .neu-phone-screen { width:auto; height:auto; }
.neu-showcase__phones .neu-app-mock { overflow-y:auto; }
footer { background:var(--footer); }
.footer__wrapper-widget, .footer__wrapper-widget p, .footer__wrapper-link li a,
.footer__wrapper-contact, .footer__wrapper-contact h6, .footer__wrapper-contact a,
.footer-bottom { color:var(--neu-text-soft); }
.footer__wrapper-widget { text-align:start; line-height:1.7; padding:32px 20px; min-width:160px; }
.footer__wrapper-widget p { max-width:100%; }
.footer__wrapper-widget .cont { max-width:100%; }
.footer__wrapper-widget:not(:last-child) { border-color:var(--neu-glass-border); }
.footer__wrapper-link li a:hover { color:var(--neu-accent-2); }
.neu-social-icon { width:44px; height:44px; }
a:focus-visible, button:focus-visible { outline:3px solid var(--neu-accent-2); outline-offset:4px; }
@media (max-width:991px) {
  .neu-hero__inner, .neu-about__inner, .neu-showcase__inner { grid-template-columns:minmax(0,1fr); }
  .neu-hero__visual { max-width:640px; margin-inline:auto; }
  .neu-hero__content { max-width:680px; }
  .neu-about__visual { max-width:460px; }
  .neu-showcase__phones { transform:none; margin:0 auto; min-height:0; padding-block:20px; max-width:420px; }
  .neu-phone-lg { flex:0 0 60%; width:60%; height:auto; aspect-ratio:1 / 2; }
  .neu-phone-sm { flex:0 0 45%; width:45%; height:auto; aspect-ratio:1 / 2; margin-left:-12%; }
}
@media (max-width:575px) {
  .navbar-top-wrapper { gap:8px 12px; font-size:13px; }
  .navbar-top-wrapper .mode--toggle { margin-right:0 !important; }
  .navbar-top-wrapper > .top-padding:last-child { margin-inline-start:auto; }
  .navbar-bottom-wrapper { gap:8px; }
  .neu-hero { padding:36px 0 44px; }
  .neu-hero__inner { gap:32px; }
  .neu-hero-gallery { gap:12px; }
  .neu-hero-gallery > img { border-radius:14px; }
  .neu-about, .neu-showcase, .neu-cta, .neu-testimonials { padding:40px 0; }
  .neu-store-buttons { gap:10px; margin-bottom:24px; }
  .neu-store-btn { flex:1 1 120px; padding:12px 16px; }
  .neu-cta__card { padding:32px 20px; }
  .neu-counter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .neu-counter-card { padding:20px 12px; }
  .neu-counter-card b { font-size:22px; overflow-wrap:anywhere; }
  .footer__wrapper { display:grid; grid-template-columns:minmax(0,1fr); }
  .footer__wrapper-widget, .footer__wrapper-widget:first-child { width:100%; max-width:none; padding:24px 8px; }
  .footer__wrapper-widget:not(:last-child) { border-right:0; border-bottom:1px solid var(--neu-glass-border); }
}
@media (prefers-reduced-motion:reduce) {
  .neu-orb { animation:none; }
  .neu-service-card, .neu-store-btn, .neu-btn, .neu-social-icon { transition:none; }
}

/* Full-width promotional artwork: preserve all text and original proportions. */
.neu-hero-promotions { width:100%; min-width:0; }
.neu-hero-gallery {
  display:flex;
  gap:0;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  align-items:center;
  border-radius:22px;
  background:var(--neu-glass-bg);
  border:1px solid var(--neu-glass-border);
  box-shadow:0 16px 40px var(--neu-dark);
}
.neu-hero-gallery > img {
  flex:0 0 100%;
  width:100%;
  min-width:0;
  height:auto;
  max-height:none;
  object-fit:contain;
  scroll-snap-align:center;
  scroll-snap-stop:always;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.neu-hero-gallery-controls { display:flex; align-items:center; justify-content:center; gap:20px; margin-top:16px; }
.neu-hero-gallery-controls .neu-store-btn { flex:none; margin:0; min-width:48px; padding:10px 16px; }
.neu-hero-gallery-count { font-size:14px; font-weight:600; color:var(--neu-text-soft); font-variant-numeric:tabular-nums; }
.neu-hero-gallery-controls button:disabled { opacity:.4; cursor:default; }