/* REDCOWEB /business responsive isolation v2
 * Loaded after the shared inner-page layers so the enterprise page keeps
 * its own scale, spacing and mobile behaviour without touching other pages.
 */

/* Full-bleed isolation: protects /business from constrained legacy wrappers. */
#main > .rwb{
  width:100vw!important;
  max-width:100vw!important;
  margin-inline:calc(50% - 50vw)!important;
  overflow-x:clip!important;
  position:relative;
  isolation:isolate;
}
#main > .rwb,
#main > .rwb *{min-width:0}
#main .rwb-shell{
  width:min(1280px,calc(100% - 48px))!important;
  max-width:1280px!important;
  margin-inline:auto!important;
}

/* Restore enterprise typography after global compact rules. */
#main .rwb-hero h1{
  font-size:clamp(42px,5.2vw,76px)!important;
  line-height:1.16!important;
  letter-spacing:-.035em!important;
}
#main .rwb-section-head h2,
#main .rwb-contact-copy h2{
  font-size:clamp(34px,3.7vw,54px)!important;
  line-height:1.35!important;
  letter-spacing:-.025em!important;
}
#main .rwb-case-copy h3{
  font-size:clamp(30px,3vw,46px)!important;
  line-height:1.42!important;
}
#main .rwb-principles h3{font-size:22px!important;line-height:1.6!important}
#main .rwb-product h3{font-size:20px!important;line-height:1.6!important}
#main .rwb-process-line h3{font-size:21px!important;line-height:1.5!important}
#main .rwb :where(p,li){font-size:15px;line-height:2}

/* Desktop/tablet composition. */
#main .rwb-hero{padding-top:72px!important}
#main .rwb-hero-grid{
  grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr)!important;
  gap:clamp(34px,5vw,72px)!important;
  min-height:640px!important;
}
#main .rwb-hero-copy{max-width:760px}
#main .rwb-hero-visual{min-height:560px!important}
#main .rwb-browser-main{width:min(720px,94%)!important}
#main .rwb-browser-float{width:min(330px,46%)!important}
#main .rwb-proof-strip{gap:20px!important}
#main .rwb-section{padding:104px 0!important}
#main .rwb-convergence{padding:100px 0 112px!important}
#main .rwb-principles{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#main .rwb-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#main .rwb-case,
#main .rwb-case.reverse,
#main .rwb-case-ink{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)!important}
#main .rwb-case.reverse{grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr)!important}
#main .rwb-case-screen,
#main .rwb-caseflow-diagram{max-width:100%!important}
#main .rwb-architecture-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important}
#main .rwb-contact-grid{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr)!important}
#main .rwb-form{width:100%!important}
#main .rwb input,
#main .rwb textarea,
#main .rwb select,
#main .rwb button{max-width:100%}

/* Prevent decorative/interactive transforms from creating horizontal scroll. */
#main .rwb-browser,
#main .rwb-node,
#main .rwb-stack-layer,
#main .rwb-case-screen{backface-visibility:hidden}
#main .rwb img,
#main .rwb svg,
#main .rwb video{max-width:100%!important;height:auto}

@media (max-width:1180px){
  #main .rwb-shell{width:min(100% - 40px,1080px)!important}
  #main .rwb-hero-grid{grid-template-columns:1fr!important;gap:18px!important;min-height:auto!important}
  #main .rwb-hero-copy{max-width:840px;padding-top:4px!important}
  #main .rwb-hero-visual{min-height:500px!important;max-width:920px;width:100%;margin-inline:auto}
  #main .rwb-browser-main{left:50%!important;width:min(820px,88%)!important;transform:translateX(-50%) rotateY(-2deg)!important}
  #main .rwb-browser-float{right:2%!important;width:min(330px,42%)!important}
  #main .rwb-principles{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #main .rwb-case,
  #main .rwb-case.reverse,
  #main .rwb-case-ink{grid-template-columns:1fr!important;gap:34px!important}
  #main .rwb-case.reverse .rwb-case-copy,
  #main .rwb-case.reverse .rwb-case-screen{order:initial!important}
  #main .rwb-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #main .rwb-architecture-grid,
  #main .rwb-contact-grid{grid-template-columns:1fr!important;gap:48px!important}
  #main .rwb-contact-copy{position:static!important;max-width:760px}
}

@media (max-width:900px){
  #main .rwb-section{padding:82px 0!important}
  #main .rwb-convergence{padding:82px 0 88px!important}
  #main .rwb-section-head.split{grid-template-columns:1fr!important;gap:10px!important}
  #main .rwb-principles{grid-template-columns:1fr!important}
  #main .rwb-principles article{min-height:0!important;padding:26px!important}
  #main .rwb-principles h3{margin:30px 0 10px!important}
  #main .rwb-process-line{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #main .rwb-case{padding:36px!important;border-radius:28px!important}
  #main .rwb-case-screen{transform:none!important}
  #main .rwb-stack-layer{margin-right:0!important}
}

@media (max-width:760px){
  #main > .rwb{width:100%!important;max-width:100%!important;margin-inline:0!important}
  #main .rwb-shell{width:calc(100% - 28px)!important;max-width:none!important}
  #main .rwb-hero{padding:30px 0 18px!important}
  #main .rwb-hero-grid{display:block!important}
  #main .rwb-kicker,
  #main .rwb-overline{font-size:10px!important;letter-spacing:.11em!important}
  #main .rwb-hero h1{font-size:clamp(31px,9.2vw,42px)!important;line-height:1.42!important;margin:16px 0!important;letter-spacing:-.02em!important}
  #main .rwb-hero-copy>p{font-size:14px!important;line-height:2!important}
  #main .rwb-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-top:22px!important}
  #main .rwb-btn{width:100%!important;min-height:50px!important;padding-inline:18px!important}
  #main .rwb-hero-proof{margin-top:24px!important;gap:8px 10px!important;font-size:10px!important}
  #main .rwb-hero-visual{min-height:300px!important;margin-top:24px!important;transform:none!important}
  #main .rwb-visual-aura{width:340px!important;height:340px!important}
  #main .rwb-browser-main{top:12px!important;width:100%!important;border-radius:16px!important;transform:none!important;left:0!important}
  #main .rwb-browser-float{width:46%!important;right:0!important;bottom:6px!important;transform:none!important;border-radius:12px!important}
  #main .rwb-browser-bar{height:28px!important;padding-inline:10px!important}
  #main .rwb-browser-bar b{font-size:7px!important}
  #main .rwb-live-badge{left:8px!important;bottom:-8px!important;padding:9px 10px!important;border-radius:11px!important}
  #main .rwb-live-badge b,#main .rwb-live-badge small{font-size:8px!important}
  #main .rwb-proof-strip{min-height:0!important;padding:16px 0!important;overflow-x:auto!important;justify-content:flex-start!important;scroll-snap-type:x proximity}
  #main .rwb-proof-strip>*{flex:0 0 auto;scroll-snap-align:start}

  #main .rwb-section{padding:64px 0!important}
  #main .rwb-convergence{padding:64px 0!important}
  #main .rwb-section-head{margin-bottom:28px!important}
  #main .rwb-section-head h2,
  #main .rwb-contact-copy h2{font-size:clamp(28px,8vw,36px)!important;line-height:1.5!important}
  #main .rwb-section-head p,
  #main .rwb-contact-copy>p{font-size:14px!important;line-height:2!important}

  /* Orbit becomes a real mobile grid instead of six absolutely-positioned cards. */
  #main .rwb-orbit{
    height:auto!important;
    margin:26px 0 0!important;
    transform:none!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  #main .rwb-orbit-lines{display:none!important}
  #main .rwb-core{
    position:relative!important;
    inset:auto!important;
    grid-column:1 / -1!important;
    width:148px!important;
    height:148px!important;
    margin:0 auto 8px!important;
    border-radius:36px!important;
    transform:none!important;
  }
  #main .rwb-core.is-charged{transform:none!important}
  #main .rwb-node,
  #main .rwb-node.n1,
  #main .rwb-node.n2,
  #main .rwb-node.n3,
  #main .rwb-node.n4,
  #main .rwb-node.n5,
  #main .rwb-node.n6{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:88px!important;
    padding:15px!important;
    transform:none!important;
    border-radius:16px!important;
  }

  #main .rwb-case{padding:22px!important;border-radius:22px!important;gap:26px!important;margin-top:18px!important}
  #main .rwb-case-num{margin-bottom:20px!important}
  #main .rwb-case-copy h3{font-size:clamp(27px,7.6vw,34px)!important;line-height:1.5!important}
  #main .rwb-case-copy p{font-size:13px!important;line-height:2!important}
  #main .rwb-case-screen{padding:6px!important;border-radius:16px!important}
  #main .rwb-case-screen img{border-radius:11px!important}
  #main .rwb-screen-label{position:static!important;margin-bottom:7px!important;width:100%;justify-content:space-between;overflow:hidden}
  #main .rwb-screen-label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  #main .rwb-caseflow-diagram{min-height:0!important;border-radius:18px!important}

  #main .rwb-product-grid{grid-template-columns:1fr!important;gap:12px!important}
  #main .rwb-product{min-height:0!important;padding:22px!important;border-radius:20px!important}
  #main .rwb-product-icon{margin-top:24px!important}
  #main .rwb-product h3{font-size:19px!important;margin:8px 0 10px!important}

  #main .rwb-architecture-grid{gap:28px!important}
  #main .rwb-stack{min-height:0!important;padding-top:0!important}
  #main .rwb-stack-layer{
    min-height:84px!important;
    height:auto!important;
    padding:17px!important;
    margin:0 0 8px!important;
    transform:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:9px!important;
  }

  #main .rwb-process-line{grid-template-columns:1fr!important;border-radius:20px!important}
  #main .rwb-process-line article{min-height:0!important;padding:24px!important}
  #main .rwb-process-line h3{font-size:19px!important;margin:34px 0 12px!important}

  #main .rwb-contact{padding:64px 0!important}
  #main .rwb-contact-grid{gap:28px!important}
  #main .rwb-form{padding:18px!important;border-radius:20px!important}
  #main .rwb-field-grid,#main .rwb-field-grid.one-line{grid-template-columns:1fr!important;gap:12px!important}
  #main .rwb-brief-chips{display:grid!important;grid-template-columns:1fr!important}
  #main .rwb-brief-chips button{width:100%!important;text-align:right!important;justify-content:flex-start!important;min-height:42px!important}
}

@media (max-width:480px){
  #main .rwb-shell{width:calc(100% - 22px)!important}
  #main .rwb-hero{padding-top:22px!important}
  #main .rwb-hero h1{font-size:30px!important;line-height:1.5!important}
  #main .rwb-hero-copy>p{font-size:13px!important}
  #main .rwb-hero-visual{min-height:250px!important}
  #main .rwb-browser-float{width:48%!important}
  #main .rwb-live-badge{display:none!important}
  #main .rwb-section{padding:54px 0!important}
  #main .rwb-convergence{padding:54px 0!important}
  #main .rwb-orbit{grid-template-columns:1fr!important}
  #main .rwb-core{grid-column:1!important;width:132px!important;height:132px!important}
  #main .rwb-principles article{padding:21px!important}
  #main .rwb-case{padding:18px!important}
  #main .rwb-tags,#main .rwb-product-tags{gap:5px!important}
  #main .rwb-tags span,#main .rwb-product-tags span{font-size:8px!important}
  #main .rwb-form{padding:15px!important}
}

@media (prefers-reduced-motion:reduce){
  #main .rwb [data-rwb-parallax],
  #main .rwb .rwb-browser,
  #main .rwb .rwb-node,
  #main .rwb .rwb-stack-layer,
  #main .rwb .rwb-case-screen{transform:none!important}
}
