:root{
  --commercial-night:#08151f;
  --commercial-ink:#0d2740;
  --commercial-blue:#155981;
  --commercial-cyan:#2cc6e8;
  --commercial-soft:#edf6fa;
  --commercial-line:rgba(13,39,64,.14);
  --commercial-shadow:0 28px 80px rgba(8,21,31,.16);
}

*,
*:before,
*:after{
  box-sizing:border-box;
}

.commercial-body{
  margin:0;
  color:#10293c;
  background:
    radial-gradient(circle at 12% 0%,rgba(44,198,232,.22),transparent 28%),
    linear-gradient(135deg,rgba(8,21,31,.08) 0%,rgba(8,21,31,.08) 36%,rgba(21,89,129,.16) 36%,rgba(237,246,250,.68) 58%,#f7fbfd 100%);
  min-height:100vh;
  overflow-x:hidden;
}

.commercial-body:before{
  content:"";
  position:fixed;
  inset:0 auto auto 0;
  width:66vw;
  height:100vh;
  background:
    radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 30%),
    linear-gradient(155deg,var(--commercial-night) 0%,var(--commercial-ink) 52%,var(--commercial-blue) 100%);
  clip-path:polygon(0 0,82% 0,100% 0%,0 100%);
  opacity:.98;
  pointer-events:none;
  z-index:-1;
}

.commercial-header{
  position:sticky;
  top:18px;
  z-index:20;
  width:min(1180px,calc(100% - 32px));
  margin:18px auto 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.38);
  border-radius:24px;
  background:rgba(255,255,255,.76);
  box-shadow:0 18px 52px rgba(8,21,31,.12);
  backdrop-filter:blur(18px);
}

.commercial-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:205px;
  color:#10293c;
  text-decoration:none;
}

.commercial-brand img{
  width:48px;
  height:48px;
  object-fit:contain;
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 24px rgba(8,21,31,.12);
}

.commercial-brand strong,
.commercial-brand small{
  display:block;
}

.commercial-brand strong{font-size:.98rem}
.commercial-brand small{color:#5f7483;font-weight:800;font-size:.72rem}

.commercial-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex:1;
}

.commercial-nav a{
  padding:10px 11px;
  border-radius:999px;
  color:#314a5d;
  text-decoration:none;
  font-size:.86rem;
  font-weight:900;
}

.commercial-nav a:hover,
.commercial-nav a:focus-visible{
  background:#edf6fa;
  color:#0d2740;
}

.commercial-header-cta{
  border:0;
  border-radius:999px;
  padding:12px 16px;
  color:#fff;
  background:linear-gradient(135deg,var(--commercial-ink),var(--commercial-blue));
  font-weight:900;
  cursor:pointer;
  box-shadow:0 14px 34px rgba(13,89,129,.24);
}

.commercial-hero,
.commercial-section,
.commercial-final-cta{
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
}

.commercial-hero{
  min-height:calc(100vh - 124px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,1fr);
  align-items:center;
  gap:64px;
  padding:84px 0 96px;
}

.commercial-hero-content{
  color:#fff;
  padding:24px 0;
}

.commercial-eyebrow{
  margin:0 0 12px;
  color:#2cc6e8;
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.commercial-hero h1{
  margin:0;
  font-size:clamp(3rem,7vw,6.8rem);
  line-height:.9;
  color:#fff;
}

.commercial-lead{
  max-width:680px;
  margin:24px 0 12px;
  font-size:clamp(1.35rem,2.4vw,2.15rem);
  line-height:1.12;
  font-weight:900;
}

.commercial-copy{
  max-width:620px;
  color:rgba(255,255,255,.82);
  line-height:1.8;
  font-size:1.03rem;
}

.commercial-data-source{
  max-width:650px;
  margin-top:22px;
  padding:18px 20px;
  border:1px solid rgba(255,255,255,.22);
  border-left:4px solid var(--commercial-cyan);
  border-radius:18px;
  background:rgba(255,255,255,.10);
  box-shadow:0 18px 48px rgba(8,21,31,.16);
  backdrop-filter:blur(12px);
}

.commercial-data-source strong,
.commercial-data-source span{
  display:block;
}

.commercial-data-source strong{
  color:#fff;
  font-size:1rem;
  font-weight:950;
}

.commercial-data-source span{
  margin-top:6px;
  color:rgba(255,255,255,.80);
  line-height:1.65;
}

.commercial-actions,
.commercial-demo-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  margin-top:24px;
}

.commercial-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 18px;
  border-radius:999px;
  border:1px solid transparent;
  text-decoration:none;
  font-weight:950;
  cursor:pointer;
}

.commercial-btn-primary{
  color:#fff;
  background:linear-gradient(135deg,#0d2740,#155981);
  box-shadow:0 16px 36px rgba(13,89,129,.26);
}

.commercial-btn-secondary{
  color:#10293c;
  background:rgba(255,255,255,.82);
  border-color:rgba(255,255,255,.58);
}

.commercial-btn:focus-visible,
.commercial-header-cta:focus-visible,
.commercial-demo-close:focus-visible{
  outline:3px solid rgba(44,198,232,.55);
  outline-offset:3px;
}

.commercial-product-frame{
  display:grid;
  grid-template-columns:92px 1fr;
  min-height:430px;
  align-self:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.62);
  border-radius:34px;
  background:rgba(255,255,255,.72);
  box-shadow:var(--commercial-shadow);
  backdrop-filter:blur(18px);
}

.commercial-mockup-sidebar{
  display:grid;
  align-content:start;
  gap:16px;
  padding:28px 18px;
  background:linear-gradient(180deg,#08151f,#0d2740);
}

.commercial-mockup-sidebar span{
  height:38px;
  border-radius:14px;
  background:rgba(255,255,255,.14);
}

.commercial-mockup-sidebar span:first-child{background:rgba(44,198,232,.46)}

.commercial-mockup-main{
  padding:28px;
  display:grid;
  gap:20px;
  align-content:start;
}

.commercial-mockup-top{
  height:76px;
  border-radius:24px;
  background:linear-gradient(135deg,#f7fbfd,#dcecf3);
}

.commercial-mockup-kpis{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.commercial-mockup-kpis article{
  padding:18px;
  border:1px solid var(--commercial-line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 34px rgba(8,21,31,.08);
}

.commercial-mockup-kpis small{display:block;color:#6d8190;font-weight:900}
.commercial-mockup-kpis strong{display:block;margin-top:10px;font-size:2rem;color:#0d2740}

.commercial-mockup-table{
  display:grid;
  gap:12px;
  padding:18px;
  border-radius:24px;
  background:#fff;
}

.commercial-mockup-table span{
  height:34px;
  border-radius:999px;
  background:linear-gradient(90deg,#edf6fa,#d9eaf1);
}

.commercial-section{
  margin-top:104px;
  padding:0;
}

.commercial-section-head{
  max-width:860px;
  margin-bottom:34px;
  padding:30px 34px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:30px;
  background:
    radial-gradient(circle at top right,rgba(44,198,232,.18),transparent 34%),
    linear-gradient(155deg,rgba(8,21,31,.94) 0%,rgba(13,39,64,.92) 54%,rgba(21,89,129,.88) 100%);
  box-shadow:0 22px 62px rgba(8,21,31,.16);
  backdrop-filter:blur(16px);
}

.commercial-section h2,
.commercial-final-cta h2{
  margin:0;
  color:#fff;
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1.02;
}

.commercial-section-head p:not(.commercial-eyebrow),
.commercial-security p,
.commercial-tour-card p{
  color:#536a79;
  line-height:1.75;
}

.commercial-section-head p:not(.commercial-eyebrow){
  color:rgba(255,255,255,.78);
}

.commercial-promise-grid,
.commercial-benefit-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.commercial-promise-grid span,
.commercial-benefit-grid span{
  padding:22px 24px;
  border:1px solid rgba(255,255,255,.66);
  border-radius:22px;
  background:rgba(255,255,255,.84);
  box-shadow:0 14px 34px rgba(8,21,31,.08);
  font-weight:950;
}

.commercial-card-grid,
.commercial-role-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}

.commercial-card-grid article,
.commercial-role-grid article,
.commercial-tour-card,
.commercial-security{
  border:1px solid rgba(255,255,255,.70);
  border-radius:28px;
  background:rgba(255,255,255,.76);
  box-shadow:0 18px 48px rgba(8,21,31,.10);
  backdrop-filter:blur(14px);
}

.commercial-card-grid article,
.commercial-role-grid article{
  padding:30px;
  min-width:0;
}

.commercial-card-grid h3,
.commercial-role-grid h3{
  margin:0 0 12px;
  color:#0d2740;
  font-size:1.18rem;
}

.commercial-card-grid p,
.commercial-role-grid p{
  margin:0 0 14px;
  color:#536a79;
  line-height:1.65;
}

.commercial-card-grid strong,
.commercial-role-grid span{
  color:#155981;
  font-weight:950;
}

.commercial-pricing-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.commercial-pricing-card{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:22px;
  min-width:0;
  min-height:100%;
  padding:32px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:30px;
  background:rgba(255,255,255,.82);
  box-shadow:0 18px 48px rgba(8,21,31,.10);
  backdrop-filter:blur(14px);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.commercial-pricing-card:hover,
.commercial-pricing-card:focus-visible{
  transform:translateY(-3px);
  border-color:rgba(44,198,232,.46);
  box-shadow:0 24px 64px rgba(8,21,31,.15);
  outline:0;
}

.commercial-pricing-kicker{
  margin:0 0 10px;
  color:#155981;
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.commercial-pricing-card h3{
  margin:0 0 12px;
  color:#0d2740;
  font-size:1.7rem;
  line-height:1.05;
}

.commercial-pricing-card p{
  margin:0;
  color:#536a79;
  line-height:1.66;
}

.commercial-pricing-intro{
  margin-bottom:12px !important;
  color:#10293c !important;
  font-weight:900;
}

.commercial-pricing-price{
  display:block;
  padding:18px 20px;
  border-radius:22px;
  color:#fff;
  background:linear-gradient(135deg,#08151f,#155981);
  font-size:1.15rem;
  line-height:1.35;
  box-shadow:0 14px 34px rgba(13,89,129,.20);
}

.commercial-pricing-points{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.commercial-pricing-points li{
  position:relative;
  padding-left:22px;
  color:#314a5d;
  font-weight:900;
  line-height:1.45;
}

.commercial-pricing-points li:before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--commercial-cyan);
  box-shadow:0 0 0 4px rgba(44,198,232,.14);
}

.commercial-pricing-note{
  margin:18px 0 0;
  color:#6d8190;
  font-size:.92rem;
  line-height:1.6;
}

.commercial-pricing-assurance{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  margin-top:28px;
  padding:32px;
  border:1px solid rgba(255,255,255,.70);
  border-radius:30px;
  background:rgba(255,255,255,.74);
  box-shadow:0 18px 48px rgba(8,21,31,.10);
  backdrop-filter:blur(14px);
}

.commercial-pricing-assurance h3{
  margin:0 0 10px;
  color:#0d2740;
  font-size:1.35rem;
}

.commercial-pricing-assurance p{
  margin:0;
  color:#536a79;
  line-height:1.72;
}

.commercial-pricing-badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
  max-width:360px;
}

.commercial-pricing-badges span{
  padding:10px 13px;
  border:1px solid rgba(21,89,129,.16);
  border-radius:999px;
  color:#0d2740;
  background:#edf6fa;
  font-size:.86rem;
  font-weight:950;
}

.commercial-pricing-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.commercial-pricing-layer{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:24px;
}

.commercial-pricing-layer[hidden]{display:none}

.commercial-pricing-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,21,31,.50);
  backdrop-filter:blur(12px);
}

.commercial-pricing-panel{
  position:relative;
  z-index:1;
  width:min(980px,100%);
  max-height:min(86vh,920px);
  overflow:auto;
  padding:34px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:30px;
  background:rgba(255,255,255,.92);
  box-shadow:0 30px 90px rgba(8,21,31,.30);
}

.commercial-pricing-panel h2{
  margin:0 46px 12px 0;
  color:#0d2740;
  font-size:clamp(1.9rem,4vw,3rem);
  line-height:1.04;
}

.commercial-pricing-panel > p:not(.commercial-eyebrow){
  max-width:760px;
  margin:0 0 24px;
  color:#536a79;
  line-height:1.7;
}

.commercial-pricing-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.commercial-pricing-detail-grid > div{
  padding:22px;
  border:1px solid var(--commercial-line);
  border-radius:22px;
  background:#fff;
}

.commercial-pricing-detail-grid h3{
  margin:0 0 12px;
  color:#0d2740;
  font-size:1.02rem;
}

.commercial-pricing-detail-grid ul{
  display:grid;
  gap:8px;
  margin:0;
  padding-left:18px;
  color:#536a79;
  line-height:1.5;
}

.commercial-pricing-important{
  grid-column:1 / -1;
  background:linear-gradient(135deg,#f7fbfd,#edf6fa) !important;
}

.commercial-pricing-important p{
  margin:0;
  color:#314a5d;
  line-height:1.65;
  font-weight:850;
}

.commercial-security{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:34px;
  padding:38px;
  color:#fff;
  background:
    radial-gradient(circle at top right,rgba(44,198,232,.18),transparent 34%),
    linear-gradient(155deg,rgba(8,21,31,.94) 0%,rgba(13,39,64,.92) 54%,rgba(21,89,129,.88) 100%);
}

.commercial-security p{
  color:rgba(255,255,255,.78);
}

.commercial-tour-card{
  padding:42px;
  color:#fff;
  background:
    radial-gradient(circle at top right,rgba(44,198,232,.18),transparent 34%),
    linear-gradient(155deg,rgba(8,21,31,.94) 0%,rgba(13,39,64,.92) 54%,rgba(21,89,129,.88) 100%);
}

.commercial-tour-card p{
  color:rgba(255,255,255,.78);
}

.commercial-final-cta{
  margin-top:104px;
  margin-bottom:76px;
  padding:52px;
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at top right,rgba(44,198,232,.22),transparent 34%),
    linear-gradient(155deg,#08151f 0%,#0d2740 52%,#155981 100%);
  box-shadow:var(--commercial-shadow);
}

.commercial-final-cta h2{color:#fff}
.commercial-final-cta p{max-width:620px;color:rgba(255,255,255,.82);line-height:1.8}

.commercial-demo-layer{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:24px;
}

.commercial-demo-layer[hidden]{display:none}

.commercial-demo-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,21,31,.46);
  backdrop-filter:blur(12px);
}

.commercial-demo-card{
  position:relative;
  z-index:1;
  width:min(480px,100%);
  padding:30px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:30px;
  background:rgba(255,255,255,.88);
  box-shadow:0 30px 90px rgba(8,21,31,.28);
}

.commercial-demo-card h2{
  margin:0 0 10px;
  color:#0d2740;
  font-size:2rem;
}

.commercial-demo-card p{
  color:#536a79;
  line-height:1.65;
}

.commercial-demo-close{
  position:absolute;
  right:18px;
  top:16px;
  width:38px;
  height:38px;
  border:0;
  border-radius:999px;
  color:#0d2740;
  background:#edf6fa;
  font-size:1.45rem;
  cursor:pointer;
}

.commercial-demo-card label{
  display:block;
  margin:18px 0 8px;
  color:#10293c;
  font-weight:950;
}

.commercial-demo-card input{
  width:100%;
  min-height:52px;
  padding:0 14px;
  border:1px solid #cbdde6;
  border-radius:16px;
  background:#fff;
  color:#10293c;
  font-size:1rem;
}

.commercial-demo-error{
  margin:16px 0 0;
  padding:13px 14px;
  border:1px solid #f2b8b5;
  border-radius:16px;
  color:#8f1f18;
  background:#fff0ef;
  font-weight:900;
}

.commercial-modal-is-open main,
.commercial-modal-is-open .commercial-header{
  filter:blur(2px);
}

@media (max-width:1040px){
  .commercial-header{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .commercial-nav{
    order:3;
    flex-basis:100%;
    justify-content:flex-start;
    overflow-x:auto;
  }
  .commercial-hero{
    grid-template-columns:1fr;
    min-height:0;
    gap:44px;
    padding:56px 0 80px;
  }
  .commercial-product-frame{
    min-height:360px;
  }
  .commercial-card-grid,
  .commercial-role-grid,
  .commercial-promise-grid,
  .commercial-benefit-grid,
  .commercial-pricing-detail-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .commercial-pricing-assurance{
    grid-template-columns:1fr;
  }
  .commercial-pricing-badges{
    justify-content:flex-start;
    max-width:none;
  }
  .commercial-security{
    grid-template-columns:1fr;
  }
}

@media (max-width:680px){
  .commercial-body:before{
    width:100vw;
    height:560px;
    clip-path:polygon(0 0,82% 0,100% 0%,0 100%);
  }
  .commercial-header{
    top:10px;
    width:calc(100% - 20px);
    border-radius:20px;
  }
  .commercial-header-cta{
    width:100%;
  }
  .commercial-hero,
  .commercial-section,
  .commercial-final-cta{
    width:calc(100% - 20px);
  }
  .commercial-hero h1{
    font-size:3.2rem;
    line-height:.96;
    overflow-wrap:anywhere;
  }
  .commercial-lead{
    font-size:1.42rem;
    line-height:1.18;
  }
  .commercial-data-source{
    padding:16px;
    border-radius:16px;
  }
  .commercial-actions .commercial-btn,
  .commercial-demo-actions .commercial-btn{
    width:100%;
  }
  .commercial-product-frame{
    grid-template-columns:64px 1fr;
    min-height:0;
    border-radius:24px;
  }
  .commercial-mockup-main{
    padding:16px;
  }
  .commercial-mockup-kpis{
    grid-template-columns:1fr;
  }
  .commercial-card-grid,
  .commercial-role-grid,
  .commercial-promise-grid,
  .commercial-benefit-grid,
  .commercial-pricing-grid,
  .commercial-pricing-detail-grid{
    grid-template-columns:1fr;
  }
  .commercial-pricing-card,
  .commercial-pricing-assurance{
    padding:24px;
    border-radius:24px;
  }
  .commercial-pricing-card h3{
    font-size:1.42rem;
  }
  .commercial-pricing-actions .commercial-btn{
    width:100%;
  }
  .commercial-section{
    margin-top:72px;
  }
  .commercial-section-head{
    padding:24px;
    border-radius:24px;
  }
  .commercial-final-cta{
    padding:26px;
    border-radius:26px;
  }
  .commercial-demo-layer{
    align-items:end;
    padding:12px;
  }
  .commercial-pricing-layer{
    align-items:end;
    padding:12px;
  }
  .commercial-demo-card{
    padding:24px;
    border-radius:26px;
  }
  .commercial-pricing-panel{
    max-height:88vh;
    padding:24px;
    border-radius:26px;
  }
  .commercial-pricing-panel h2{
    margin-right:42px;
  }
}

/* Harmonisation PHARE: avant-connexion sombre 3D, cartes vitrées et modales premium. */
body.commercial-body{
  width:100%;
  max-width:100%;
  margin:0;
  color:#f7fbfd;
  background:#08151f;
  overflow-x:hidden;
}

body.commercial-body:before{
  display:none;
}

.commercial-page,
.marketing-page{
  --nova-brand:#0d5c8c;
  --nova-brand-strong:#0b79b8;
  --nova-accent:#138a8a;
  --nova-sand:#e7cda6;
  --nova-line:#d9e4eb;
  --nova-line-strong:#bfd0dc;
  --nova-shadow-soft:0 18px 40px rgba(15,36,51,.08);
  --nova-shadow-button:0 14px 28px rgba(13,92,140,.24);
  --nova-shadow-modal:0 30px 90px rgba(8,21,31,.28);
  min-height:100vh;
  width:100%;
  max-width:100%;
  background:#08151f;
  color:#f7fbfd;
  overflow-x:hidden;
}

.marketing-page-3d{
  position:relative;
  isolation:isolate;
}

.marketing-page-3d > .marketing-nav,
.marketing-page-3d > .marketing-scroll-hero,
.marketing-page-3d > .commercial-section,
.marketing-page-3d > .commercial-final-cta{
  position:relative;
  z-index:1;
}

.marketing-nav.commercial-header{
  position:sticky;
  top:0;
  z-index:40;
  width:100%;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px clamp(18px,4vw,56px);
  border:0;
  border-bottom:1px solid rgba(255,255,255,.12);
  border-radius:0;
  color:#fff;
  background:rgba(8,21,31,.72);
  box-shadow:0 18px 52px rgba(8,21,31,.20);
  backdrop-filter:blur(18px);
}

.marketing-brand,
.commercial-page .commercial-brand{
  display:inline-flex;
  align-items:center;
  gap:11px;
  min-width:0;
  color:#fff;
  font-weight:950;
  text-decoration:none;
}

.marketing-brand:hover,
.commercial-page .commercial-brand:hover{
  color:#fff;
}

.marketing-brand-icon{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  flex:0 0 40px;
  border-radius:14px;
  color:#0d5c8c;
  background:linear-gradient(135deg,#fff,rgba(255,255,255,.78));
  box-shadow:0 14px 26px rgba(13,92,140,.18);
  overflow:hidden;
}

.marketing-brand-icon img{
  width:32px;
  height:32px;
  object-fit:contain;
}

.commercial-page .commercial-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  flex:1;
  font-weight:900;
}

.commercial-page .commercial-nav a{
  padding:0;
  color:rgba(255,255,255,.78);
  background:transparent;
  text-decoration:none;
  font-size:1rem;
}

.commercial-page .commercial-nav a:hover,
.commercial-page .commercial-nav a:focus-visible{
  color:#fff;
  background:transparent;
}

.marketing-nav-actions,
.marketing-hero-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.commercial-page .btn,
.commercial-page .commercial-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:11px 16px;
  border:0;
  border-radius:999px;
  color:#fff;
  font-weight:900;
  text-decoration:none;
  background:linear-gradient(135deg,var(--nova-brand),var(--nova-brand-strong));
  box-shadow:
    0 0 0 1px rgba(44,198,232,.22),
    0 18px 54px rgba(13,121,184,.34),
    0 0 38px rgba(44,198,232,.18);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  cursor:pointer;
}

.commercial-page .btn:hover,
.commercial-page .commercial-btn:hover{
  color:#fff;
  transform:translateY(-1px);
}

.commercial-page .btn-secondary,
.commercial-page .commercial-btn-secondary{
  color:#fff;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:none;
  backdrop-filter:blur(14px);
}

.commercial-page .btn-secondary:hover,
.commercial-page .commercial-btn-secondary:hover{
  color:#fff;
  background:rgba(255,255,255,.17);
  border-color:rgba(255,255,255,.28);
}

.marketing-scroll-hero.commercial-hero{
  position:relative;
  width:100%;
  min-height:118svh;
  margin:0;
  padding:0;
  isolation:isolate;
  overflow:visible;
  background:
    radial-gradient(circle at 72% 15%,rgba(44,198,232,.24),transparent 28%),
    radial-gradient(circle at 12% 22%,rgba(19,138,138,.18),transparent 30%),
    linear-gradient(155deg,rgba(8,21,31,.88) 0%,rgba(13,39,64,.72) 50%,rgba(15,36,51,.62) 100%);
}

.marketing-scroll-hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(44,198,232,.10) 1px,transparent 1px),
    linear-gradient(180deg,rgba(44,198,232,.08) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.7),transparent 78%);
}

.marketing-scroll-hero:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  z-index:-1;
  height:34%;
  background:linear-gradient(180deg,transparent,rgba(8,21,31,.94) 82%,rgba(8,21,31,.98) 100%);
}

.marketing-scroll-stage{
  position:sticky;
  top:76px;
  min-height:calc(100svh - 76px);
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);
  align-items:center;
  gap:28px;
  padding:clamp(24px,4.6vw,64px) clamp(18px,6vw,86px) clamp(64px,8vh,110px);
}

.commercial-hero .marketing-scroll-stage{
  width:min(1440px,100%);
  margin:0 auto;
  grid-template-columns:minmax(560px,1.08fr) minmax(300px,.72fr);
  gap:clamp(36px,5vw,88px);
  padding-inline:clamp(42px,7vw,116px);
}

.marketing-scroll-scene{
  position:fixed;
  inset:0;
  z-index:0;
  opacity:.94;
  pointer-events:none;
}

.marketing-scroll-scene canvas{
  display:block;
  width:100% !important;
  height:100% !important;
}

.marketing-scroll-copy{
  max-width:720px;
  color:#fff;
  text-shadow:0 18px 52px rgba(8,21,31,.42);
}

.commercial-hero-content{
  width:100%;
  max-width:880px;
}

.commercial-page .commercial-eyebrow,
.marketing-scroll-copy .eyebrow{
  color:#2cc6e8;
  letter-spacing:.14em;
}

.marketing-scroll-copy h1{
  margin:16px 0 18px;
  color:#fff;
  font-size:clamp(3.2rem,8.5vw,8.2rem);
  line-height:.9;
  letter-spacing:0;
}

.marketing-scroll-copy p{
  max-width:740px;
  margin:0;
  color:rgba(245,251,255,.80);
  font-size:clamp(1.08rem,2vw,1.38rem);
  line-height:1.62;
}

.marketing-scroll-copy .commercial-copy{
  max-width:780px;
  margin-top:14px;
  color:rgba(245,251,255,.70);
  font-size:1rem;
  line-height:1.72;
}

.commercial-page .commercial-data-source{
  max-width:760px;
  margin-top:22px;
  padding:16px;
  color:rgba(245,251,255,.76);
  border:1px solid rgba(44,198,232,.22);
  border-left:0;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.04));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 18px 48px rgba(8,21,31,.24);
  backdrop-filter:blur(18px);
}

.commercial-page .commercial-data-source strong{
  color:#fff;
}

.commercial-page .commercial-data-source span{
  color:rgba(245,251,255,.72);
}

.marketing-hero-actions{
  gap:12px;
  margin-top:28px;
}

.marketing-neon-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  max-width:800px;
  margin-top:32px;
}

.marketing-neon-metrics span{
  min-height:92px;
  padding:16px;
  color:rgba(245,251,255,.72);
  font-weight:900;
  border:1px solid rgba(44,198,232,.22);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.04));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 18px 48px rgba(8,21,31,.24);
  backdrop-filter:blur(18px);
}

.marketing-neon-metrics strong{
  display:block;
  margin-bottom:8px;
  color:#fff;
  font-size:2rem;
  text-shadow:0 0 22px rgba(44,198,232,.58);
}

.marketing-scroll-story{
  align-self:end;
  justify-self:end;
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  width:min(360px,100%);
  margin:0 0 clamp(54px,7vh,92px);
}

.marketing-scroll-story span{
  min-height:78px;
  padding:14px 16px;
  color:rgba(255,255,255,.74);
  font-weight:900;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  background:rgba(8,21,31,.42);
  box-shadow:0 18px 54px rgba(8,21,31,.24);
  backdrop-filter:blur(18px);
}

.marketing-scroll-story strong{
  display:block;
  margin-bottom:6px;
  color:#2cc6e8;
  font-size:.78rem;
  letter-spacing:.14em;
}

.commercial-page .commercial-section,
.commercial-page .commercial-final-cta{
  position:relative;
  width:100%;
  margin:0;
  padding:74px clamp(18px,6vw,86px);
  color:#f7fbfd;
  background:linear-gradient(180deg,rgba(8,21,31,.92),rgba(9,31,46,.84));
}

.commercial-page .commercial-section:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(44,198,232,.075) 1px,transparent 1px),
    linear-gradient(180deg,rgba(44,198,232,.055) 1px,transparent 1px);
  background-size:86px 86px;
  mask-image:linear-gradient(180deg,transparent,rgba(0,0,0,.72) 18%,rgba(0,0,0,.82) 78%,transparent);
  pointer-events:none;
}

.commercial-page .commercial-hero + .commercial-section{
  margin-top:-1px;
  padding-top:clamp(88px,12vh,144px);
  background:linear-gradient(180deg,rgba(8,21,31,.99) 0%,rgba(8,21,31,.96) 44%,rgba(9,31,46,.90) 100%);
}

.commercial-page .commercial-section-head{
  max-width:860px;
  margin:0 0 28px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}

.commercial-page .commercial-section h2,
.commercial-page .commercial-final-cta h2,
.commercial-page .commercial-card-grid h3,
.commercial-page .commercial-role-grid h3,
.commercial-page .commercial-pricing-card h3,
.commercial-page .commercial-tour-card h2,
.commercial-page .commercial-security h2{
  color:#fff;
}

.commercial-page .commercial-section-head p:not(.commercial-eyebrow),
.commercial-page .commercial-card-grid p,
.commercial-page .commercial-role-grid p,
.commercial-page .commercial-pricing-card p,
.commercial-page .commercial-pricing-note,
.commercial-page .commercial-pricing-assurance p,
.commercial-page .commercial-security p,
.commercial-page .commercial-tour-card p,
.commercial-page .commercial-final-cta p{
  color:rgba(245,251,255,.72);
}

.commercial-page .commercial-promise-grid,
.commercial-page .commercial-benefit-grid,
.commercial-page .commercial-card-grid,
.commercial-page .commercial-role-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.commercial-page .commercial-promise-grid span,
.commercial-page .commercial-benefit-grid span,
.commercial-page .commercial-card-grid article,
.commercial-page .commercial-role-grid article,
.commercial-page .commercial-pricing-card,
.commercial-page .commercial-pricing-assurance,
.commercial-page .commercial-tour-card,
.commercial-page .commercial-security{
  border:1px solid rgba(44,198,232,.18);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 22px 58px rgba(8,21,31,.28);
  backdrop-filter:blur(16px);
}

.commercial-page .commercial-promise-grid span,
.commercial-page .commercial-benefit-grid span{
  color:#dff8ff;
  font-weight:900;
}

.commercial-page .commercial-card-grid article,
.commercial-page .commercial-role-grid article,
.commercial-page .commercial-pricing-card{
  padding:24px;
}

.commercial-page .commercial-card-grid strong,
.commercial-page .commercial-role-grid span{
  color:#2cc6e8;
}

.commercial-page .commercial-pricing-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.commercial-page .commercial-pricing-price{
  color:#fff;
  background:rgba(44,198,232,.12);
  border:1px solid rgba(44,198,232,.20);
  box-shadow:0 0 28px rgba(44,198,232,.18);
}

.commercial-page .commercial-pricing-points li{
  color:rgba(245,251,255,.74);
}

.commercial-page .commercial-pricing-assurance{
  grid-template-columns:minmax(0,1fr) auto;
  margin-top:28px;
}

.commercial-page .commercial-pricing-badges span{
  color:#dff8ff;
  background:rgba(255,255,255,.08);
  border-color:rgba(44,198,232,.20);
}

.commercial-page .commercial-security{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:34px;
  padding:38px;
}

.commercial-page .commercial-tour-card{
  padding:42px;
}

.commercial-page .commercial-final-cta{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;
  padding-bottom:92px;
}

.commercial-page .commercial-final-cta h2{
  max-width:960px;
  margin:0;
  font-size:clamp(2rem,4vw,4.2rem);
  line-height:1;
}

.commercial-demo-backdrop,
.commercial-pricing-backdrop{
  background:rgba(8,21,31,.46);
  backdrop-filter:blur(12px);
}

.commercial-demo-card,
.commercial-pricing-panel{
  border:1px solid rgba(255,255,255,.72);
  border-radius:30px;
  background:rgba(255,255,255,.92);
  box-shadow:var(--nova-shadow-modal);
}

.commercial-demo-card h2,
.commercial-pricing-panel h2,
.commercial-pricing-panel h3,
.commercial-pricing-detail-grid h3{
  color:#0d2740;
}

.commercial-demo-card p,
.commercial-pricing-panel > p:not(.commercial-eyebrow),
.commercial-pricing-detail-grid ul,
.commercial-pricing-important p{
  color:#536a79;
}

.commercial-demo-close{
  border-radius:14px;
  background:#f3f8fb;
}

.commercial-demo-card input{
  border-color:var(--nova-line-strong);
  border-radius:14px;
}

.commercial-demo-card input:focus{
  outline:0;
  border-color:var(--nova-brand-strong);
  box-shadow:0 0 0 4px rgba(13,121,184,.14);
}

.commercial-modal-is-open main,
.commercial-modal-is-open .commercial-header{
  filter:blur(2px);
}

@media (max-width:1100px){
  .marketing-scroll-stage{
    grid-template-columns:1fr;
    align-content:center;
    gap:18px;
    padding-bottom:52px;
  }

  .commercial-hero .marketing-scroll-stage{
    width:100%;
    grid-template-columns:1fr;
    gap:18px;
    padding-inline:clamp(24px,6vw,64px);
  }

  .marketing-scroll-story{
    align-self:start;
    justify-self:start;
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:min(760px,100%);
    max-width:760px;
    margin:6px 0 0;
  }

  .marketing-scroll-scene{
    opacity:.88;
  }

  .commercial-page .commercial-promise-grid,
  .commercial-page .commercial-benefit-grid,
  .commercial-page .commercial-card-grid,
  .commercial-page .commercial-role-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .marketing-nav.commercial-header{
    position:relative;
    align-items:flex-start;
    flex-direction:column;
    background:#08151f;
  }

  .commercial-page .commercial-nav{
    width:100%;
    justify-content:flex-start;
    overflow:auto;
    gap:16px;
  }

  .marketing-nav-actions{
    width:100%;
  }

  .marketing-nav-actions .btn{
    flex:1;
  }

  .marketing-scroll-hero.commercial-hero{
    min-height:auto;
    padding-bottom:34px;
  }

  .marketing-scroll-stage{
    position:relative;
    top:auto;
    min-height:auto;
    padding:34px 18px 42px;
  }

  .commercial-hero .marketing-scroll-stage{
    padding:34px 18px 42px;
  }

  .marketing-scroll-scene{
    inset:0;
    opacity:.72;
  }

  .marketing-scroll-copy h1{
    font-size:clamp(3.25rem,20vw,5.5rem);
    line-height:.88;
  }

  .marketing-scroll-copy p{
    max-width:34rem;
    font-size:1rem;
    line-height:1.58;
  }

  .marketing-neon-metrics,
  .commercial-page .commercial-promise-grid,
  .commercial-page .commercial-benefit-grid,
  .commercial-page .commercial-card-grid,
  .commercial-page .commercial-role-grid,
  .commercial-page .commercial-pricing-grid,
  .commercial-page .commercial-pricing-assurance,
  .commercial-page .commercial-security{
    grid-template-columns:1fr;
  }

  .marketing-neon-metrics{
    max-width:360px;
    gap:8px;
    margin-top:22px;
  }

  .marketing-neon-metrics span{
    min-height:66px;
    padding:12px 14px;
  }

  .marketing-neon-metrics strong{
    display:inline-block;
    margin:0 8px 0 0;
    font-size:1.36rem;
  }

  .marketing-scroll-story{
    grid-template-columns:1fr;
    gap:8px;
    margin:14px 0 0;
  }

  .marketing-scroll-story span{
    min-height:auto;
    padding:11px 12px;
  }

  .marketing-scroll-story strong{
    display:inline-block;
    margin:0 8px 0 0;
  }

  .commercial-page .commercial-section{
    padding:52px 18px;
  }

  .commercial-page .commercial-hero + .commercial-section{
    padding-top:56px;
  }

  .commercial-page .commercial-final-cta{
    align-items:flex-start;
    flex-direction:column;
    padding:52px 18px 70px;
  }
}

@media (max-width:420px){
  .marketing-nav.commercial-header{
    padding:14px 12px;
  }

  .marketing-nav-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .marketing-scroll-stage{
    padding:30px 12px 38px;
  }

  .commercial-hero .marketing-scroll-stage{
    padding:30px 12px 38px;
  }

  .marketing-scroll-copy h1{
    font-size:3.25rem;
  }

  .marketing-neon-metrics{
    max-width:none;
  }

  .marketing-scroll-scene{
    opacity:.62;
  }

  .marketing-scroll-story{
    display:none;
  }
}
