*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#00a7ff #020305}body{margin:0;background:#010204;color:#f2f4f5;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#020305}::-webkit-scrollbar-thumb{background:#00a7ff;border:2px solid #020305}#progress{position:fixed;right:0;top:0;width:3px;height:0;background:#00a7ff;z-index:100}
header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 3.5vw;background:#010204f5;border-bottom:1px solid #28343b;position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-weight:900;letter-spacing:.1em;font-size:13px}.brand img{width:48px;height:35px;object-fit:cover;object-position:10% 50%;border:0}.brand span span{color:#00a7ff}nav{display:flex;gap:30px}nav a{color:#c6cbd0;text-decoration:none;font-size:9px;letter-spacing:.15em}.line-btn{background:transparent;border:1px solid #315a73;color:#fff;padding:11px 16px;font-size:8px;letter-spacing:.15em}
.hero{height:min(650px,72vw);min-height:500px;position:relative;overflow:hidden;background:#010204;border-bottom:1px solid #303b42}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 48% 45%,rgba(0,132,255,.18),transparent 30%),repeating-linear-gradient(155deg,transparent 0 15px,rgba(66,87,100,.10) 16px,transparent 17px)}.hero-logo{position:absolute;left:14%;top:0;width:68%;height:100%;display:grid;place-items:center}.hero-logo img{width:100%;height:100%;object-fit:cover;object-position:center 40%;mix-blend-mode:screen}.left-rail,.right-rail{position:absolute;z-index:3;color:#e2e4e6;font-size:9px;line-height:1.55;letter-spacing:.28em}.left-rail{left:2vw;top:38px}.right-rail{right:4vw;top:300px}.left-rail i,.right-rail i{display:block;width:31px;height:3px;background:#00a7ff;margin:22px 0}.target-art{position:absolute;right:-8%;top:0;height:100%;width:25%;object-fit:cover;opacity:.9;border-left:1px solid #35434c}
.intro{padding:55px 5vw;display:grid;grid-template-columns:.8fr 1.2fr auto;gap:50px;align-items:center;border-bottom:1px solid #26343d;background:#04070a}.intro small,.kicker,.project small,.standard small,.cta small,.modal small{color:#8d989f;font-size:8px;letter-spacing:.3em}.intro h1,.services h2,.project h2,.standard h2,.cta h2,.modal h2{font:italic 900 clamp(42px,6vw,82px)/.84 Impact,"Arial Black",sans-serif;letter-spacing:-.02em;margin:12px 0}.intro strong,.standard strong{color:#00a7ff;font-size:10px;letter-spacing:.25em}.intro p{color:#9ba5ab;font-size:11px;line-height:1.7}.electric{border:1px solid #52d2ff;background:linear-gradient(#20c1ff,#0084dc);color:#00111b;font-weight:900;padding:14px 20px;box-shadow:0 4px 0 #00558e;font-size:9px;letter-spacing:.1em}
.services{padding:75px 5vw;background:#020406}.services h2 span,.project h2 span,.cta h2 span{color:#00a7ff}.grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid #2a3942;border-top:1px solid #2a3942}.grid article{padding:30px;min-height:290px;border-right:1px solid #2a3942;border-bottom:1px solid #2a3942;background:linear-gradient(145deg,#0a1014,#020406)}.grid article>b{color:#00a7ff;font-size:10px}.grid h3{font:italic 900 25px/1 Impact,"Arial Black";margin:60px 0 18px}.grid p{color:#8c979d;font-size:10px;line-height:1.65}
.work{padding:75px 5vw;display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;border-top:1px solid #26343d;background:#04080b}.project a{display:inline-block;color:#18b9ff;text-decoration:none;border-bottom:2px solid #18b9ff;padding:5px 0;font-size:12px;font-weight:900;letter-spacing:.08em}.project p{color:#8d989f;font-size:11px;line-height:1.7;max-width:480px}blockquote{margin:0;padding:38px;border:1px solid #2a536b;border-left:4px solid #00a7ff;background:#061019;color:#d4d8da;font-size:13px;line-height:1.8}blockquote footer{color:#1dbbff;font-weight:900;margin-top:18px}
.standard{min-height:430px;display:grid;grid-template-columns:.7fr 1.3fr;overflow:hidden;border-top:1px solid #293841;background:#020406}.standard>img{width:100%;height:100%;object-fit:cover;object-position:center}.standard>div{padding:70px 7vw;align-self:center}.standard p{font-size:9px;letter-spacing:.28em;color:#a4adb2}.cta{padding:60px 6vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #263d4b;background:linear-gradient(100deg,#04080b,#071a28)}.cta h2{font-size:56px}.site-footer{padding:28px 4vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #1f2b33;color:#7c878e}.site-footer p{font-size:8px;letter-spacing:.2em}
.modal{display:none;position:fixed;inset:0;background:#000e;z-index:120;place-items:center;padding:20px}.modal.open{display:grid}.modal form{width:min(680px,100%);background:#05090c;border:1px solid #2a5a78;padding:35px;position:relative}.x{position:absolute;right:15px;top:8px;border:0;background:none;color:white;font-size:30px}.modal h2{font-size:43px}.two{display:grid;grid-template-columns:1fr 1fr;gap:9px}.modal input,.modal textarea{width:100%;background:#020507;border:1px solid #29485b;color:white;padding:13px;margin-bottom:9px}.modal textarea{height:110px}.send{width:100%}.hp{position:absolute;left:-9999px}.cookie{position:fixed;left:18px;bottom:18px;z-index:90;display:flex;gap:22px;align-items:center;padding:13px 16px;background:#04080b;border:1px solid #2a5067}.cookie.hide{display:none}.cookie b{font-size:9px;color:#00a7ff}.cookie p{font-size:8px;color:#808b91;margin:4px 0 0}.cookie button{border:0;background:#008ddd;color:#fff;padding:9px 14px;font-size:8px}
@media(max-width:850px){nav{display:none}.hero{height:560px}.hero-logo{left:3%;width:94%}.target-art,.left-rail,.right-rail{display:none}.intro,.work{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.standard{grid-template-columns:1fr}.standard>img{height:280px}.cta{display:block}.cta button{margin-top:15px}.site-footer p:last-child{display:none}}
@media(max-width:520px){header{padding:0 4vw}.brand img{width:38px}.brand{font-size:11px}.line-btn{padding:9px 10px;font-size:7px}.hero{height:480px;min-height:480px}.hero-logo{left:-10%;width:120%}.intro{padding:48px 5vw}.grid{grid-template-columns:1fr}.services,.work{padding:55px 5vw}.two{grid-template-columns:1fr}.cta h2{font-size:43px}.site-footer{display:block}.site-footer p{margin-top:18px}.cookie{right:18px}}
/* Exact supplied POP artwork beside PageOnPoint branding */
.brand-name{font-weight:900;letter-spacing:.1em;font-size:13px;white-space:nowrap}
.brand-name>span{color:#00a7ff}
.header-pop-logo{
  width:86px !important;
  height:42px !important;
  object-fit:cover !important;
  object-position:center !important;
  border:0 !important;
  display:block;
}
header .brand{gap:12px}
.footer-brand .header-pop-logo{width:68px !important;height:34px !important}
@media(max-width:520px){
  .brand-name{font-size:10px}
  .header-pop-logo{width:64px !important;height:34px !important}
  header .brand{gap:7px}
}

/* Header POP logo — show the complete supplied artwork, never crop */
header .header-pop-logo{
  width:112px !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center !important;
  max-height:48px !important;
  flex:0 0 auto;
  background:#010204;
}
header .brand{
  overflow:visible !important;
  min-width:0;
}
@media(max-width:520px){
  header .header-pop-logo{
    width:92px !important;
    height:auto !important;
    max-height:44px !important;
    object-fit:contain !important;
  }
}

/* MOBILE HERO — show the complete homepage brand graphic */
@media(max-width:850px){
  .hero{
    height:auto !important;
    min-height:0 !important;
    padding:28px 0 34px !important;
    display:block !important;
    background:#010204 !important;
  }
  .hero-logo{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    width:100% !important;
    height:auto !important;
    display:block !important;
    padding:0 10px !important;
  }
  .hero-logo img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    object-position:center !important;
    mix-blend-mode:normal !important;
  }
  .target-art,.left-rail,.right-rail{
    display:none !important;
  }
}
@media(max-width:520px){
  .hero{
    height:auto !important;
    min-height:0 !important;
    padding:18px 0 24px !important;
  }
  .hero-logo{
    left:auto !important;
    width:100% !important;
    padding:0 6px !important;
  }
  .hero-logo img{
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
  }
}

/* HOMEPAGE HERO VIDEO — replaces static hero graphic */
.video-hero{
  position:relative !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#010204 !important;
  line-height:0;
}
.video-hero::before,.video-hero::after{display:none !important}
.hero-video{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain;
  object-position:center;
  background:#010204;
}
@media(min-width:851px){
  .video-hero{
    max-height:none !important;
  }
  .hero-video{
    width:100%;
    height:auto;
    object-fit:contain;
  }
}
@media(max-width:850px){
  .video-hero{
    padding:0 !important;
    height:auto !important;
    min-height:0 !important;
  }
  .hero-video{
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
  }
}

/* BUILT TO MAKE AN IMPACT — graphic service identities, no numbers */
.grid article{
  position:relative;
  overflow:hidden;
}
.grid article>b{display:none!important}
.service-graphic{
  width:76px;height:76px;position:relative;margin:0 0 38px;
  border:1px solid #28556f;
  background:linear-gradient(145deg,#0b1a24,#020507);
  box-shadow:inset 0 0 0 1px #071018;
}
.service-graphic:after{
  content:"";position:absolute;inset:7px;border:1px solid #12384f;pointer-events:none;
}
.grid h3{margin:0 0 18px!important}

/* browser / website */
.web-icon span{position:absolute;left:16px;top:19px;width:44px;height:35px;border:2px solid #20bfff;z-index:2}
.web-icon span:before{content:"";position:absolute;left:0;right:0;top:7px;border-top:2px solid #20bfff}
.web-icon i,.web-icon em{position:absolute;top:23px;width:3px;height:3px;border-radius:50%;background:#20bfff;z-index:3}
.web-icon i{left:21px}.web-icon em{left:27px}

/* management / rotating system */
.manage-icon span{position:absolute;inset:18px;border:2px solid #20bfff;border-radius:50%;z-index:2}
.manage-icon span:before,.manage-icon span:after{content:"";position:absolute;background:#20bfff}
.manage-icon span:before{width:18px;height:2px;left:10px;top:18px}
.manage-icon span:after{height:18px;width:2px;left:18px;top:10px}
.manage-icon i{position:absolute;left:12px;top:11px;width:18px;height:10px;border-top:3px solid #8ae7ff;transform:rotate(-25deg);z-index:3}
.manage-icon em{position:absolute;right:12px;bottom:11px;width:18px;height:10px;border-bottom:3px solid #8ae7ff;transform:rotate(-25deg);z-index:3}

/* automation / connected nodes */
.auto-icon span,.auto-icon i,.auto-icon em{position:absolute;width:12px;height:12px;border:2px solid #20bfff;background:#03101a;z-index:3;transform:rotate(45deg)}
.auto-icon span{left:32px;top:15px}.auto-icon i{left:16px;top:43px}.auto-icon em{right:16px;top:43px}
.auto-icon:before{content:"";position:absolute;left:23px;top:33px;width:31px;height:24px;border-left:2px solid #20bfff;border-right:2px solid #20bfff;transform:perspective(30px) rotateX(30deg);z-index:2}

/* security / shield */
.security-icon span{position:absolute;left:23px;top:14px;width:31px;height:42px;background:#0a84c5;clip-path:polygon(50% 0,100% 16%,90% 70%,50% 100%,10% 70%,0 16%);z-index:2}
.security-icon span:before{content:"";position:absolute;inset:3px;background:#03101a;clip-path:inherit}
.security-icon i{position:absolute;left:36px;top:28px;width:8px;height:12px;border:2px solid #7de3ff;border-radius:5px 5px 2px 2px;z-index:4}
.security-icon em{position:absolute;left:38px;top:23px;width:8px;height:9px;border:2px solid #7de3ff;border-bottom:0;border-radius:8px 8px 0 0;z-index:4}

@media(max-width:520px){
  .service-graphic{width:68px;height:68px;margin-bottom:28px}
}

/* SUPPLIED PAGEONPOINT GRAPHICS — integrated across the actual site */
.service-photo{
  display:block;width:100%;height:150px;object-fit:cover;object-position:center;
  margin:0 0 28px;border:1px solid #20465e;background:#020507;
}
.grid h3{margin-top:0!important}
.visual-story{padding:72px 5vw;background:#020406;border-top:1px solid #20313c}
.visual-heading small{color:#7e8c95;font-size:8px;letter-spacing:.28em}
.visual-heading h2{font:italic 900 clamp(40px,5.5vw,76px)/.86 Impact,"Arial Black",sans-serif;margin:12px 0 38px}
.visual-heading h2 span{color:#00a7ff}
.visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.visual-grid figure{margin:0;border:1px solid #203b4d;background:#03070a;overflow:hidden}
.visual-grid img{display:block;width:100%;aspect-ratio:1.5/1;object-fit:cover;transition:transform .25s ease}
.visual-grid figure:hover img{transform:scale(1.025)}
.visual-grid figcaption{padding:13px 14px;color:#dbe0e3;font-size:9px;font-weight:900;letter-spacing:.13em;border-top:1px solid #183347}
.brand-banner{padding:0;background:#010204;border-top:1px solid #244457;border-bottom:1px solid #244457}
.brand-banner img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:850px){
  .visual-grid{grid-template-columns:1fr 1fr}
  .service-photo{height:auto;aspect-ratio:1.45/1}
}
@media(max-width:520px){
  .visual-story{padding:52px 5vw}
  .visual-grid{grid-template-columns:1fr}
  .visual-grid img{aspect-ratio:auto;height:auto}
}

/* CRISP GRAPHICS PASS
   Keep generated/cropped art near native display size instead of stretching it. */
.grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.grid article{
  min-width:0;
}
.service-photo{
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  image-rendering:auto;
  background:#020507;
}

/* Artwork gallery: narrower cards = fewer source pixels stretched across screen */
.visual-story{
  max-width:1280px;
  margin:0 auto;
}
.visual-grid{
  grid-template-columns:repeat(3,minmax(0,360px)) !important;
  justify-content:center;
  gap:16px !important;
}
.visual-grid figure{
  width:100%;
  max-width:360px;
}
.visual-grid img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  transform:none !important;
}
.visual-grid figure:hover img{transform:none !important}

/* Full banner stays proportional; don't force a height */
.brand-banner{
  display:flex;
  justify-content:center;
  overflow:hidden;
}
.brand-banner img{
  width:100% !important;
  max-width:1536px;
  height:auto !important;
  object-fit:contain !important;
}

/* Prevent browser scaling artifacts on the top supplied artwork too */
.hero-video{
  object-fit:contain !important;
}

@media(max-width:1000px){
  .grid{grid-template-columns:repeat(2,1fr)}
  .visual-grid{grid-template-columns:repeat(2,minmax(0,360px)) !important}
}
@media(max-width:600px){
  .grid{grid-template-columns:1fr}
  .grid article{padding:22px !important}
  .service-photo{
    width:min(100%,360px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .visual-grid{
    grid-template-columns:minmax(0,360px) !important;
  }
  .visual-grid figure{
    max-width:360px;
    margin:0 auto;
  }
  .brand-banner img{
    width:100% !important;
    height:auto !important;
  }
}

/* SMALLER GRAPHICS PASS — prevent low-res crops from being enlarged */
.service-photo{
  width:220px !important;
  max-width:72% !important;
  height:auto !important;
  margin:0 auto 26px !important;
  object-fit:contain !important;
  display:block !important;
}
.grid article{
  text-align:left;
}
.grid article .service-photo{
  margin-left:0 !important;
}

/* Secondary graphics are intentionally displayed below their source pixel width */
.visual-grid{
  grid-template-columns:repeat(3,minmax(0,260px)) !important;
  gap:18px !important;
}
.visual-grid figure{
  width:100% !important;
  max-width:260px !important;
}
.visual-grid img{
  width:100% !important;
  max-width:260px !important;
  height:auto !important;
  object-fit:contain !important;
}

/* Keep the cards themselves compact so the art doesn't look lost */
.visual-grid figcaption{
  padding:11px 12px !important;
  font-size:8px !important;
}
@media(max-width:900px){
  .service-photo{
    width:200px !important;
    max-width:65% !important;
  }
  .visual-grid{
    grid-template-columns:repeat(2,minmax(0,250px)) !important;
  }
  .visual-grid figure,.visual-grid img{
    max-width:250px !important;
  }
}
@media(max-width:520px){
  .service-photo{
    width:180px !important;
    max-width:58vw !important;
    margin-left:0 !important;
  }
  .visual-grid{
    grid-template-columns:minmax(0,240px) !important;
    justify-content:center !important;
  }
  .visual-grid figure,.visual-grid img{
    max-width:240px !important;
  }
}

.capability-link{display:block;color:inherit;text-decoration:none;min-width:0}
.capability-link article{height:100%;cursor:pointer;transition:border-color .18s ease,transform .18s ease}
.capability-link:hover article,.capability-link:focus-visible article{border-color:#24b8ff;transform:translateY(-2px)}
.capability-link:focus-visible{outline:2px solid #24b8ff;outline-offset:4px}
.learn-more{display:inline-block;margin-top:16px;color:#29b9ff;font-size:11px;font-weight:900;letter-spacing:.13em}

.audit-section{padding:80px max(5vw,24px);border-top:1px solid #102d3c;border-bottom:1px solid #102d3c;background:#020608}
.audit-section h2{font-size:clamp(44px,7vw,92px);line-height:.88;margin:14px 0 22px;font-style:italic}
.audit-section h2 span{color:#29b9ff}.audit-intro{max-width:760px;color:#aab7bf;font-size:18px;line-height:1.6}
.audit-form{max-width:820px;margin-top:35px;display:grid;gap:15px}.audit-form label{display:grid;gap:8px;color:#8ea4b0;font-size:10px;font-weight:900;letter-spacing:.14em}
.audit-form input{width:100%;box-sizing:border-box;background:#050b0e;border:1px solid #1b4358;color:#fff;padding:16px;font:inherit;min-height:52px;border-radius:0}
.audit-form input:focus{outline:2px solid #29b9ff;outline-offset:2px}.audit-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.audit-form .electric{justify-self:start;margin-top:5px}.audit-status{min-height:24px;color:#29b9ff;font-weight:800}.audit-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}
@media(max-width:650px){.audit-two{grid-template-columns:1fr}}

/* CAPABILITY PAGES — unified PageOnPoint production theme */
.capability-page{background:#010204;color:#f2f4f5;min-height:100vh}
.capability-page header{height:70px!important;position:sticky!important;top:0!important;background:rgba(1,2,4,.96)!important;backdrop-filter:blur(14px);border-bottom:1px solid #28343b!important}
.capability-page .capability-hero{max-width:1440px;margin:0 auto;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)!important;gap:clamp(30px,6vw,90px)!important;padding:clamp(70px,8vw,120px) max(5vw,28px)!important;min-height:620px!important}
.capability-page .capability-hero h1,.capability-page .details-head h2,.capability-page .capability-cta h2{font-family:Impact,"Arial Black",Arial,sans-serif;font-weight:900;font-style:italic;letter-spacing:-.02em;text-transform:uppercase}
.capability-page .capability-hero h1{font-size:clamp(58px,7.4vw,112px)!important;line-height:.86!important}
.capability-page .capability-hero p{font-size:clamp(16px,1.4vw,19px)!important;max-width:680px!important}
.capability-page .theme-visual{width:100%!important;max-width:470px!important}
.capability-page .theme-strip{border-top:1px solid #17465f!important;border-bottom:1px solid #0b2532;padding:18px 0!important}
.capability-page .details{max-width:1440px;margin:0 auto;padding:clamp(65px,7vw,100px) max(5vw,28px)!important}
.capability-page .details-head{padding-bottom:28px;border-bottom:1px solid #183443;margin-bottom:24px!important}
.capability-page .detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.capability-page .detail-card{border:1px solid #173849!important;background:linear-gradient(145deg,#050b0f,#020507)!important;padding:30px!important;min-height:205px!important;transition:transform .18s ease,border-color .18s ease}
.capability-page .detail-card:hover{transform:translateY(-3px);border-color:#1f8fc8!important}
.capability-page .detail-card h3{letter-spacing:.04em}
.capability-page .capability-cta{background:radial-gradient(circle at 50% 0,rgba(0,167,255,.13),transparent 55%),#020406!important;padding:clamp(70px,8vw,115px) 24px!important}
.capability-page .capability-cta a{background:#00a7ff!important;color:#001018!important;border:1px solid #55c9ff;box-shadow:0 0 30px rgba(0,167,255,.12)}
.capability-page>.site-footer{margin-top:0}
.capability-page>footer:not(.site-footer){display:flex;justify-content:space-between;align-items:center;padding:28px 5vw;border-top:1px solid #263944;color:#74828a;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.capability-page>footer:not(.site-footer)::before{content:"PAGE" "ON" "POINT";color:#dce3e7;font-weight:900;font-size:12px;letter-spacing:.12em}
@media(max-width:850px){
 .capability-page header{height:72px!important}
 .capability-page .capability-hero{grid-template-columns:1fr!important;min-height:0!important;padding:58px 5vw 48px!important;gap:38px!important}
 .capability-page .capability-hero h1{font-size:clamp(52px,15vw,82px)!important;overflow-wrap:normal;word-break:normal}
 .capability-page .theme-visual{max-width:100%!important;justify-self:stretch!important}
 .capability-page .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
 .capability-page header{padding:0 4vw!important}.capability-page header .line-btn{font-size:0;padding:10px 12px!important}.capability-page header .line-btn::after{content:"CALL";font-size:8px;letter-spacing:.15em}
 .capability-page .capability-hero{padding:44px 5vw 38px!important}
 .capability-page .capability-hero h1{font-size:clamp(48px,14.5vw,70px)!important;line-height:.88!important;margin-bottom:20px!important}
 .capability-page .capability-hero .kicker{font-size:10px!important;letter-spacing:.15em!important}
 .capability-page .theme-visual{min-height:230px!important}
 .capability-page .details{padding:56px 5vw!important}.capability-page .details-head h2{font-size:44px!important}.capability-page .detail-grid{grid-template-columns:1fr!important}
 .capability-page .detail-card{min-height:0!important;padding:24px!important}
 .capability-page .capability-cta h2{font-size:48px!important;line-height:.9}.capability-page .capability-cta a{width:100%;max-width:360px}
 .capability-page>footer:not(.site-footer){gap:18px;flex-direction:column;align-items:flex-start}
}

/* FREE WEBSITE AUDIT — align with PageOnPoint capability/card system */
.audit-section{padding:75px 5vw;background:#020406;border-top:1px solid #26343d;border-bottom:1px solid #26343d}
.audit-section h2{font:italic 900 clamp(42px,6vw,82px)/.84 Impact,"Arial Black",sans-serif;letter-spacing:-.02em;margin:12px 0 22px;max-width:900px}
.audit-section h2 span{color:#00a7ff}
.audit-intro{max-width:650px;color:#8c979d;font-size:11px;line-height:1.7;margin:0 0 30px}
.audit-form{max-width:900px;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #2a3942;border-left:1px solid #2a3942;background:#020406}
.audit-form label{display:grid;gap:10px;padding:22px;border-right:1px solid #2a3942;border-bottom:1px solid #2a3942;color:#8d989f;font-size:8px;font-weight:900;letter-spacing:.24em;background:linear-gradient(145deg,#0a1014,#020406)}
.audit-form>label:first-child{grid-column:1/-1}
.audit-two{display:contents}
.audit-form input{width:100%;min-height:50px;padding:13px 0;background:transparent;border:0;border-bottom:1px solid #315a73;border-radius:0;color:#f2f4f5;font-size:14px;letter-spacing:0}
.audit-form input::placeholder{color:#52616a}
.audit-form input:focus{outline:0;border-bottom-color:#29b9ff;box-shadow:0 1px 0 #29b9ff}
.audit-form .electric{grid-column:1/-1;justify-self:stretch;margin:20px 0 0;width:100%;min-height:52px;border-radius:0}
.audit-status{grid-column:1/-1;min-height:24px;padding-top:12px;color:#29b9ff;font-size:10px;font-weight:900;letter-spacing:.06em}
.audit-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}
@media(max-width:650px){
 .audit-section{padding:55px 5vw}
 .audit-section h2{font-size:clamp(42px,13vw,64px);margin-bottom:18px}
 .audit-intro{font-size:11px;margin-bottom:24px}
 .audit-form{grid-template-columns:1fr}
 .audit-form>label:first-child,.audit-form .electric,.audit-status{grid-column:1}
 .audit-form label{padding:18px}
}
\n\n/* AUDIT V2 — cache-busted, mobile-first */\n.audit-section{padding:64px 5vw!important;background:#020608!important;border-top:1px solid #16384a!important;border-bottom:1px solid #16384a!important;overflow:hidden}\n.audit-section .kicker{margin-bottom:18px!important}\n.audit-section h2{max-width:850px!important;margin:0 0 24px!important;font-family:Impact,"Arial Black",Arial,sans-serif!important;font-size:clamp(48px,7vw,86px)!important;font-style:italic!important;font-weight:900!important;line-height:.9!important;letter-spacing:-.02em!important}\n.audit-section h2 span{color:#29b9ff!important}\n.audit-intro{max-width:720px!important;margin:0 0 34px!important;color:#9aa6ad!important;font-size:16px!important;line-height:1.6!important}\n.audit-form{width:100%!important;max-width:900px!important;margin:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important;border:0!important;background:transparent!important}\n.audit-form .audit-field{min-width:0!important;display:flex!important;flex-direction:column!important;gap:9px!important;padding:0!important;border:0!important;background:transparent!important;color:#9eabb2!important;font-size:10px!important;font-weight:900!important;letter-spacing:.16em!important}\n.audit-form .audit-field-wide{grid-column:1/-1!important}\n.audit-form .audit-field span{display:block!important}\n.audit-form .audit-field input{display:block!important;width:100%!important;min-width:0!important;height:54px!important;margin:0!important;padding:0 16px!important;background:#050b0f!important;border:1px solid #24516a!important;border-radius:0!important;color:#fff!important;font-size:16px!important;letter-spacing:0!important;box-shadow:none!important}\n.audit-form .audit-field input:focus{outline:1px solid #29b9ff!important;outline-offset:0!important;border-color:#29b9ff!important}\n.audit-form .audit-submit{grid-column:1/-1!important;width:100%!important;min-height:56px!important;margin:6px 0 0!important;justify-content:center!important}\n.audit-form .audit-status{grid-column:1/-1!important;min-height:22px!important;padding:4px 0 0!important}\n.audit-form .audit-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}\n@media(max-width:650px){\n .audit-section{padding:52px 5vw!important}\n .audit-section h2{font-size:clamp(44px,13vw,62px)!important;line-height:.92!important;margin-bottom:20px!important}\n .audit-intro{font-size:15px!important;line-height:1.55!important;margin-bottom:28px!important}\n .audit-form{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}\n .audit-form .audit-field,.audit-form .audit-field-wide,.audit-form .audit-submit,.audit-form .audit-status{grid-column:1!important}\n .audit-form .audit-field input{height:52px!important;font-size:16px!important}\n}\n
/* PageOnPoint cinematic intro */
html,body{background:#000}
body.intro-locked{overflow:hidden}
.pop-intro{position:fixed;inset:0;z-index:99999;background:#000;display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;transition:opacity 1.1s cubic-bezier(.4,0,.2,1),visibility 0s linear 1.1s}
.pop-intro-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000;opacity:0;transition:opacity .35s ease}
.pop-intro.is-playing .pop-intro-video{opacity:1}
.pop-intro.is-fading{opacity:0;pointer-events:none}
.pop-intro.is-gone{display:none}
.pop-intro-enter{position:relative;z-index:2;padding:15px 24px;border:1px solid #49b8ff;background:rgba(0,0,0,.76);color:#f5f7fa;font:700 12px/1.1 Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;box-shadow:0 0 28px rgba(73,184,255,.18);-webkit-tap-highlight-color:transparent}
.pop-intro-enter:active{transform:scale(.98)}
.pop-intro.is-playing .pop-intro-enter{opacity:0;pointer-events:none;transition:opacity .18s ease}
@media (max-width:700px){.pop-intro-video{object-fit:cover}.pop-intro-enter{bottom:0;max-width:calc(100vw - 48px)}}
@media (prefers-reduced-motion:reduce){.pop-intro{transition:opacity .25s linear}}

/* INTRO MOBILE FIT — show the complete intro frame without cropping */
.pop-intro{width:100vw;height:100vh;height:100dvh;overflow:hidden;background:#000;padding:0!important}
.pop-intro-video{position:absolute!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-width:100%!important;max-height:100dvh!important;object-fit:contain!important;object-position:center center!important;background:#000!important}
@media (max-width:700px){
  .pop-intro-video{width:100vw!important;height:100dvh!important;object-fit:contain!important;object-position:center center!important}
  .pop-intro-enter{position:relative!important;margin:0 24px!important;max-width:calc(100vw - 48px)!important}
}

/* INTRO V4 — iOS-safe: never hide the video behind a black overlay */
.pop-intro-video{opacity:1!important;visibility:visible!important;display:block!important;object-fit:contain!important;object-position:center center!important;background:#000!important}
.pop-intro.is-playing .pop-intro-video{opacity:1!important}
.pop-intro-enter{transition:opacity .15s ease!important}

.video-hero{position:relative!important;overflow:hidden!important}
.video-hero>.hero-loop-fallback{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;object-fit:contain!important;background:#010204}
.video-hero>.hero-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.video-hero.hero-playing>.hero-video{opacity:1!important;visibility:visible!important}
.hero-video::-webkit-media-controls,.hero-video::-webkit-media-controls-start-playback-button,.hero-video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none}

:root{scroll-padding-top:100px}a.electric,a.line-btn{text-decoration:none;display:inline-block;text-align:center}.intro{grid-template-columns:1.1fr 1fr;gap:28px 48px}.intro h1{font-size:clamp(40px,5.4vw,76px);line-height:.98}.intro p{font-size:16px;line-height:1.75}.intro>.electric{grid-column:2;justify-self:start}.intro strong{line-height:1.8;display:block}.video-hero{max-height:58vh!important;min-height:0!important}.video-hero>.hero-loop-fallback{max-height:58vh!important;object-fit:contain!important}.case-summary{grid-column:1/-1;padding-top:32px;border-top:1px solid #253a48;max-width:1000px}.case-summary h3{font-size:clamp(24px,3vw,36px);margin:14px 0}.case-summary p,.case-summary li{font-size:16px;line-height:1.75;color:#b9c7d1}.case-summary ul{padding-left:22px;margin:20px 0 28px}.kicker{font-size:11px!important;color:#55c4ff!important;font-weight:800;line-height:1.8}.pop-about,.pop-process{padding:75px 5vw;border-top:1px solid #26343d;background:#04080c}.pop-about{display:grid;grid-template-columns:1fr 1.15fr;gap:60px}.pop-about h2,.pop-process h2,.case-page h2{font-size:clamp(30px,4vw,52px);font-weight:900;line-height:1.05;letter-spacing:-.025em;margin:18px 0 28px}.pop-about h2 span,.case-page h1 span{color:#00a7ff}.about-copy p,.case-section>p{font-size:17px;line-height:1.85;color:#b9c7d1;margin-top:0}.about-copy .about-lead{font-size:23px;line-height:1.5;color:#fff}.text-link{color:#65caff;font-weight:800;font-size:13px;line-height:1.7;text-underline-offset:5px}.process-grid,.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.process-grid article,.case-grid article{border:1px solid #263d4b;background:#071018;padding:28px}.process-grid h3,.case-grid h3{font-size:17px;line-height:1.4;margin:0 0 12px;color:#e8f5ff}.process-grid p,.case-grid p{font-size:16px;line-height:1.75;color:#b9c7d1;margin:0}.case-page{max-width:1280px;margin:auto}.case-opening{padding:65px 5vw 45px}.case-opening .kicker{margin-top:32px}.case-page h1{font-size:clamp(54px,9vw,110px);line-height:.92;margin:18px 0 24px;font-weight:900;letter-spacing:-.035em}.case-lead{font-size:21px;line-height:1.6;color:#bdccd6;max-width:700px;margin-bottom:28px}.case-art{margin:0 5vw 35px}.case-art img{width:100%;height:auto;display:block;border:1px solid #24495f}.case-art figcaption{font-size:12px;color:#91a5b2;line-height:1.6;padding:12px 0}.case-section{padding:45px 5vw}.case-section>p{max-width:850px}.case-steps{padding-left:24px;color:#c5d4de;font-size:18px;line-height:2}.case-page .cta h2{font-size:clamp(32px,4vw,56px)}
@media(max-width:900px){.intro{grid-template-columns:1fr}.intro>.electric{grid-column:1}.pop-about{grid-template-columns:1fr;gap:20px}.work{gap:30px}.process-grid,.case-grid{grid-template-columns:1fr}header{height:auto!important;min-height:70px;flex-wrap:wrap;gap:14px;padding-top:12px;padding-bottom:12px}header nav{display:flex!important;order:3;width:100%;justify-content:center;gap:24px;padding:10px 0 2px}header nav a{font-size:10px}.case-page .cta{display:block}.case-page .cta .electric{margin-top:18px}}
@media(max-width:600px){.pop-about,.pop-process{padding:48px 5vw}.intro strong{font-size:9px;letter-spacing:.12em}.intro h1{font-size:44px}.case-opening{padding-top:38px}.case-section{padding-top:30px;padding-bottom:30px}.case-summary .electric{font-size:10px}.process-grid article,.case-grid article{padding:22px}.case-page blockquote{padding:24px}.case-page .case-lead{font-size:18px}header .brand-name{font-size:9px}.work{grid-template-columns:1fr}}
.developer-byline{color:#87cfff!important;font-size:13px!important;line-height:1.7!important;letter-spacing:.025em!important}.site-footer{flex-wrap:wrap;gap:12px 24px}.technical-about{max-width:1180px;margin:0 auto;padding:0 5vw 60px}.technical-opening{padding:70px 0 30px}.technical-opening h1{font-size:clamp(42px,7vw,86px);line-height:.98;letter-spacing:-.035em;margin:18px 0 24px}.technical-opening h1 span{color:#00a7ff}.technical-opening>p{max-width:820px;font-size:20px;line-height:1.7;color:#bacbd6}.technical-toc{display:flex;flex-wrap:wrap;gap:10px;padding:20px 0 30px;border-bottom:1px solid #29404f}.technical-toc a{font-size:13px;letter-spacing:0;color:#a5dfff;border:1px solid #28495e;padding:10px 14px;text-decoration:none;background:#07131c}.technical-section{padding:42px 0;border-bottom:1px solid #203441;scroll-margin-top:120px}.technical-section h2{font-size:clamp(26px,3.5vw,38px);line-height:1.2;margin:0 0 24px;letter-spacing:-.02em}.technical-section h3{font-size:21px;line-height:1.4;color:#8cd4ff;margin:28px 0 14px}.technical-section p,.technical-section li{font-size:17px;line-height:1.85;color:#bfcdd7}.technical-section strong{color:#f1f8ff}.technical-section li{padding:5px 0}.technical-steps{padding-left:26px}.technical-steps li{padding:0 0 22px 8px}.technical-section details{border:1px solid #264253;background:#061019;margin:14px 0;padding:20px 24px}.technical-section summary{font-size:18px;font-weight:700;line-height:1.5;color:#e8f6ff;cursor:pointer}.technical-section details p{margin-bottom:0}.technical-section code{font-family:monospace;color:#83d5ff;overflow-wrap:anywhere}.technical-table{overflow-x:auto;border:1px solid #294354;margin:24px 0}.technical-table table{border-collapse:collapse;width:100%;min-width:590px;text-align:left;font-size:15px;line-height:1.75}.technical-table th{background:#0b1d2a;color:#dff4ff}.technical-table th,.technical-table td{padding:17px 20px;vertical-align:top;border-bottom:1px solid #233d4d}.technical-table td{color:#bfcdd7}.technical-table tr:last-child td{border-bottom:0}.technical-about .electric{font-size:12px}.technical-section a{color:#7aceff}@media(max-width:600px){.technical-opening{padding-top:38px}.technical-opening>p{font-size:18px}.technical-section{padding:30px 0}.technical-section p,.technical-section li{font-size:16px}.technical-section details{padding:16px}.technical-toc{gap:8px}.technical-toc a{padding:9px 11px;font-size:12px}.technical-opening h1{font-size:42px}.technical-table th,.technical-table td{padding:13px}.technical-about .electric{font-size:10px;max-width:100%}}

/* Keep deployed code filenames intact and constrain scrolling to the table. */
.technical-about,.technical-section{min-width:0;max-width:100%}
#scripts .technical-table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#168bcb #07131c}
#scripts .technical-table table{width:100%;min-width:760px;table-layout:fixed}
#scripts .technical-table th:nth-child(1){width:220px}
#scripts .technical-table th:nth-child(2){width:180px}
#scripts .technical-table th:nth-child(3){width:auto}
#scripts .technical-table td:first-child,#scripts .technical-table td:first-child code{white-space:nowrap;word-break:normal;overflow-wrap:normal}
#scripts code{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.5;white-space:nowrap;word-break:normal;overflow-wrap:normal}
#scripts .technical-table th,#scripts .technical-table td{padding:16px;line-height:1.65}
#scripts .technical-table td:not(:first-child){white-space:normal;overflow-wrap:break-word;word-break:normal}
#scripts .table-scroll-note{font-size:13px;color:#89b5ce;margin:0 0 12px}
#scripts .technical-table:focus-visible{outline:2px solid #66caff;outline-offset:4px}
@media(max-width:800px){#scripts .technical-table table{min-width:740px}#scripts .technical-table th:nth-child(1){width:210px}#scripts .technical-table th:nth-child(2){width:160px}}

/* Shared public call and text actions. */
.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;min-width:0;max-width:100%}
.contact-actions>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;text-decoration:none;line-height:1.4;white-space:normal;text-align:center}
.contact-actions>.text-contact{background:#061923;color:#8bdaff;border:1px solid #3196c7;padding:13px 18px;box-shadow:none;font-weight:800;font-size:11px;letter-spacing:.055em}
header>.contact-actions{flex:0 1 auto;justify-content:flex-end;gap:8px}
header>.contact-actions>a{min-height:40px;font-size:9px;padding:10px 12px}
.intro>.contact-actions{grid-column:2;justify-self:start}
.case-page .cta>.contact-actions{max-width:100%}
a.text-contact:focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(max-width:900px){.intro>.contact-actions{grid-column:1}.cta{gap:24px;flex-wrap:wrap}}
@media(max-width:640px){header{height:auto!important;min-height:70px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:12px}header>.contact-actions{width:100%;justify-content:center;order:2}header nav{order:3}.contact-actions{gap:10px}.contact-actions>a{flex:1 1 150px}.contact-actions>.text-contact{font-size:10px}.cta>.contact-actions{width:100%}.intro>.contact-actions{justify-self:stretch}}

.pop-install{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px max(5vw,24px);border-bottom:1px solid #28343b;background:#040b10}.pop-install h2{font-size:clamp(18px,3vw,26px);line-height:1.15;margin:0 0 8px}.pop-install p{color:#bbc6ce;line-height:1.5;margin:0}.pop-install button,.pop-install-dialog button{border:0;cursor:pointer;line-height:1.4;min-height:44px}.pop-install button:focus-visible,.pop-install-dialog button:focus-visible{outline:3px solid #fff;outline-offset:4px}.pop-install-dialog{background:#061018;color:#f2f4f5;border:1px solid #315a73;border-radius:16px;padding:28px;width:calc(100% - 32px);max-width:480px;max-height:85dvh;overflow:auto}.pop-install-dialog::backdrop{background:#000b}.pop-install-dialog h2{font-size:25px;line-height:1.2;margin-top:0}.pop-install-dialog p,.pop-install-dialog li{font-size:16px;line-height:1.65}.pop-install-dialog li{margin-bottom:10px}.pop-install-dialog a{color:#29b9ff}.pop-install-dialog ol{padding-left:24px}@media(max-width:650px){.pop-install{align-items:flex-start;flex-direction:column}.pop-install button{width:100%}}

#pop-install-button[hidden]{display:none!important}
.cnc-results{grid-column:1/-1;min-width:0;width:100%;padding:32px 0;border-top:1px solid #315a73;margin-top:28px}.cnc-results h3{font-size:clamp(25px,4vw,42px);line-height:1.1;margin:14px 0}.cnc-results p{font-size:14px;line-height:1.7;color:#bdcbd4}.cnc-period{display:flex;gap:12px;flex-wrap:wrap;align-items:center;color:#e5edf2;font-size:14px}.cnc-period select{background:#091721;color:#fff;padding:12px;border:1px solid #315a73;border-radius:6px;min-height:44px}.cnc-result-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.cnc-result-metrics>div{padding:20px;background:#051018;border:1px solid #24485b}.cnc-result-metrics strong{display:block;font-size:32px;color:#29b9ff}.cnc-result-metrics span{display:block;font-size:12px;margin-top:10px;color:#d3dde4}.cnc-result-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;margin-top:24px}.cnc-result-card{min-width:0;background:#051018;padding:18px;border:1px solid #24485b}.cnc-result-card h4{font-size:16px;margin:0 0 16px}.cnc-result-card table{width:100%;border-collapse:collapse;font-size:13px}.cnc-result-card th,.cnc-result-card td{text-align:left;border-bottom:1px solid #24485b;padding:10px 4px;overflow-wrap:anywhere}.cnc-result-card td:last-child,.cnc-result-card th:last-child{text-align:right;white-space:nowrap}.cnc-daily-chart{margin:26px 0;padding:18px;border:1px solid #24485b}.cnc-daily-chart figcaption{font-size:13px;margin-bottom:16px;color:#d3dde4}.cnc-daily-chart svg{width:100%;height:auto;display:block}.cnc-daily-chart rect{fill:#29b9ff}.cnc-results summary{cursor:pointer;padding:14px 0;color:#29b9ff}.cnc-results .cnc-methodology{font-size:12px;color:#a8bac6}.cnc-results [hidden]{display:none!important}
