/* Shared cinematic language for every internal page. */
body.cinematic-inner{
  --inner-progress:0;
  --inner-hero-y:0px;
  --inner-copy-y:0px;
  --inner-copy-opacity:1;
  overflow-x:hidden;
  background:#f4f7f7;
}
body.cinematic-inner .site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(20px) saturate(150%);
  box-shadow:0 8px 30px rgba(8,32,49,.04);
}
body.cinematic-inner .site-header:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  background:#1568a3;
  transform:scaleX(var(--inner-progress));
  transform-origin:left center;
  will-change:transform;
}
body.cinematic-inner .page-hero{
  min-height:clamp(570px,76vh,820px);
  display:flex;
  align-items:flex-end;
  padding:0;
  background-position:center calc(50% + var(--inner-hero-y));
  background-size:cover;
  border:0;
  isolation:isolate;
  overflow:hidden;
}
body.cinematic-inner .page-hero:before{
  z-index:0;
  background:
    linear-gradient(90deg,rgba(4,17,27,.8) 0%,rgba(4,17,27,.43) 50%,rgba(4,17,27,.08) 78%),
    linear-gradient(0deg,rgba(4,17,27,.62) 0%,transparent 48%);
}
body.cinematic-inner .page-hero:after{
  z-index:1;
  height:100%;
  background:linear-gradient(180deg,transparent 70%,rgba(4,17,27,.08));
  pointer-events:none;
}
body.cinematic-inner .page-hero-inner{
  position:relative;
  z-index:2;
  width:min(1380px,calc(100% - 96px));
  max-width:none;
  margin-inline:auto;
  padding:0 0 clamp(70px,9vh,108px);
  opacity:var(--inner-copy-opacity);
  transform:translate3d(0,var(--inner-copy-y),0);
  filter:blur(var(--inner-copy-blur,0px));
  will-change:transform,opacity,filter;
}
body.cinematic-inner .page-hero .eyebrow{
  margin-bottom:18px;
  color:#bcdaf0;
  font-size:.74rem;
  letter-spacing:.16em;
}
body.cinematic-inner .page-hero h1{
  max-width:980px;
  color:#fff;
  font-size:clamp(3rem,5.2vw,5.8rem);
  line-height:.99;
  letter-spacing:-.055em;
  font-weight:710;
  text-wrap:balance;
  text-shadow:0 4px 30px rgba(0,0,0,.18);
}
body.cinematic-inner .page-hero p{
  max-width:700px;
  margin-top:22px;
  color:rgba(255,255,255,.82);
  font-size:clamp(1rem,1.25vw,1.17rem);
  line-height:1.65;
}
body.cinematic-inner main>.section{
  padding-top:clamp(88px,10vw,140px);
  padding-bottom:clamp(88px,10vw,140px);
}
body.cinematic-inner .section-header{
  max-width:900px;
  margin-bottom:56px;
}
body.cinematic-inner .section-header h2,
body.cinematic-inner .faq-intro h2{
  font-size:clamp(2.25rem,4vw,4.35rem);
  line-height:1.04;
  font-weight:710;
  letter-spacing:-.05em;
  text-wrap:balance;
}
body.cinematic-inner .reveal{
  opacity:var(--inner-opacity,1)!important;
  transform:translate3d(0,var(--inner-y,0px),0)!important;
  transition:none!important;
  will-change:transform,opacity;
}
body.cinematic-inner .benefit-card,
body.cinematic-inner .service-card,
body.cinematic-inner .plan-card,
body.cinematic-inner .testimonial-card,
body.cinematic-inner .industry-card,
body.cinematic-inner .profile-card,
body.cinematic-inner .faq-item,
body.cinematic-inner .contact-panel,
body.cinematic-inner .contact-form-card{
  border-radius:20px;
  border-color:rgba(18,37,51,.1);
  box-shadow:0 18px 54px rgba(18,37,51,.055);
}
body.cinematic-inner .benefit-card:hover,
body.cinematic-inner .service-card:hover,
body.cinematic-inner .plan-card:hover,
body.cinematic-inner .testimonial-card:hover,
body.cinematic-inner .industry-card:hover,
body.cinematic-inner .profile-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 24px 70px rgba(18,37,51,.09);
}
body.cinematic-inner .footer{background:#071a27}

@media(max-width:900px){
  body.cinematic-inner .topbar{display:none}
  body.cinematic-inner .page-hero{min-height:calc(100svh - 68px)}
  body.cinematic-inner .page-hero-inner{width:calc(100% - 40px);padding-bottom:74px}
  body.cinematic-inner .page-hero h1{font-size:clamp(2.75rem,10vw,4.8rem)}
}
@media(max-width:600px){
  body.cinematic-inner .page-hero:before{background:linear-gradient(0deg,rgba(4,17,27,.82),rgba(4,17,27,.18) 72%)}
  body.cinematic-inner .page-hero h1{font-size:clamp(2.45rem,12vw,3.9rem)}
  body.cinematic-inner .page-hero p{font-size:.96rem}
}
@media(prefers-reduced-motion:reduce){
  body.cinematic-inner .page-hero,
  body.cinematic-inner .page-hero-inner,
  body.cinematic-inner .reveal{transform:none!important;filter:none!important;opacity:1!important}
}

/* V6 · lighter, faster internal-page rhythm */
body.cinematic-inner .page-hero{min-height:clamp(520px,68vh,720px)}
body.cinematic-inner .page-hero h1{font-size:clamp(2.8rem,4.65vw,5.15rem);line-height:1}
body.cinematic-inner .page-hero-inner{padding-bottom:clamp(58px,7vh,86px);filter:none}
body.cinematic-inner main>.section{padding-top:clamp(74px,8vw,112px);padding-bottom:clamp(74px,8vw,112px)}
body.cinematic-inner .section-header h2,
body.cinematic-inner .faq-intro h2{font-size:clamp(2.1rem,3.55vw,3.85rem)}
@media(max-width:900px){
  body.cinematic-inner .page-hero{min-height:clamp(520px,76svh,680px)}
}

/* V8 · native inner-page movement: no interpolated scroll or continuous card drift. */
body.cinematic-inner{
  --inner-copy-opacity:1;
  --inner-copy-blur:0px;
}
body.cinematic-inner .page-hero-inner{
  opacity:1;
  filter:none;
  will-change:transform;
}
body.cinematic-inner .reveal{
  opacity:0!important;
  transform:translate3d(0,14px,0)!important;
  transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1)!important;
  will-change:auto;
}
body.cinematic-inner .reveal.visible{
  opacity:1!important;
  transform:translate3d(0,0,0)!important;
}
@media(prefers-reduced-motion:reduce){
  body.cinematic-inner .reveal{opacity:1!important;transform:none!important;transition:none!important}
}

/* V10 · Spatial 3D continuity for internal pages. */
body.cinematic-inner{--inner-perspective:1500px}

body.cinematic-inner .page-hero{
  perspective:var(--inner-perspective);
  transform-style:preserve-3d;
  background-image:none;
}

body.cinematic-inner .inner-hero-media{
  position:absolute;
  inset:0;
  z-index:0;
  background-size:cover;
  background-position:center;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  will-change:transform;
}

body.cinematic-inner .page-hero:before{z-index:1}
body.cinematic-inner .page-hero:after{z-index:3}
body.cinematic-inner .page-hero-inner{
  z-index:2;
  perspective:1000px;
  transform-style:preserve-3d;
  filter:none!important;
}

body.cinematic-inner .page-hero h1,
body.cinematic-inner .inner-heading-3d{
  perspective:900px;
  transform-style:preserve-3d;
}

body.cinematic-inner .inner-word-mask{
  display:inline-block;
  overflow:visible;
  perspective:780px;
  transform-style:preserve-3d;
  padding:.08em .018em .1em;
  margin:-.08em -.018em -.1em;
}

body.cinematic-inner .inner-word-3d{
  display:inline-block;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  transition:none!important;
}

body.cinematic-inner .inner-heading-3d .inner-word-3d{opacity:0}

body.cinematic-inner .inner-3d-item{
  perspective:1000px;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  transition:none!important;
  will-change:transform,opacity;
}

body.cinematic-inner .sticky-photo,
body.cinematic-inner .profile-card{transform-origin:50% 55%}

@media(max-width:900px){body.cinematic-inner{--inner-perspective:1200px}}
@media(max-width:600px){body.cinematic-inner{--inner-perspective:950px}}

@media(prefers-reduced-motion:reduce){
  body.cinematic-inner .inner-hero-media,
  body.cinematic-inner .inner-word-3d,
  body.cinematic-inner .inner-3d-item{
    transform:none!important;
    opacity:1!important;
    transition:none!important;
  }
}

/* V11 · Internal-page performance pass. */
body.cinematic-inner .site-header{backdrop-filter:blur(12px) saturate(125%)}
body.cinematic-inner.low-power-motion .site-header{backdrop-filter:none;background:rgba(255,255,255,.98)}
body.cinematic-inner .page-hero{
  contain:layout paint style;
}
body.cinematic-inner .inner-hero-media{
  filter:none!important;
  will-change:auto;
}
body.cinematic-inner .inner-word-3d,
body.cinematic-inner .inner-3d-item{
  will-change:auto!important;
}
body.cinematic-inner .inner-heading-3d.is-motion-active .inner-word-3d,
body.cinematic-inner .inner-3d-item.is-motion-active,
body.cinematic-inner .page-hero .inner-hero-media{
  will-change:transform,opacity!important;
}
body.cinematic-inner .inner-3d-item.reveal{
  transition:none!important;
}
body.cinematic-inner main>.section,
body.cinematic-inner .footer{
  content-visibility:auto;
  contain-intrinsic-size:850px;
}
body.cinematic-inner.low-power-motion .benefit-card,
body.cinematic-inner.low-power-motion .service-card,
body.cinematic-inner.low-power-motion .plan-card,
body.cinematic-inner.low-power-motion .testimonial-card,
body.cinematic-inner.low-power-motion .industry-card,
body.cinematic-inner.low-power-motion .profile-card{
  box-shadow:0 14px 34px rgba(18,37,51,.05);
}


/* V17 · Refined lightweight typography on internal pages */
body.cinematic-inner,
body.cinematic-inner h1,
body.cinematic-inner h2,
body.cinematic-inner h3{
  font-family:var(--display-font,"Manrope","Segoe UI Variable Display","Aptos Display","Avenir Next","Helvetica Neue",ui-sans-serif,system-ui,sans-serif)!important;
}
body.cinematic-inner .page-hero h1{
  font-weight:570!important;
  letter-spacing:-.045em!important;
  line-height:1.035!important;
}
body.cinematic-inner .section-header h2,
body.cinematic-inner .faq-intro h2{
  font-weight:540!important;
  letter-spacing:-.041em!important;
  line-height:1.08!important;
}
