:root{--navy:#031B35;--deep:#063A70;--blue:#0877D1;--bright:#1495F5;--light:#EEF7FD;--ink:#0B1F35;--sage:#4A8B3B;--muted:#5E85AD;--line:#dce8f2;--shadow:0 12px 32px rgba(3,27,53,.10),0 4px 12px rgba(3,27,53,.06)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{width:min(1280px,calc(100% - 40px));margin:auto}.content-narrow{max-width:800px}.screen-reader-text{position:absolute;left:-9999px}.icon{width:22px;height:22px}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(3,27,53,.06)}.nav-wrap{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px}.brand-mark{width:38px;height:38px;border-radius:10px;background:var(--blue);color:#fff;display:grid;place-items:center}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font-size:17px;font-weight:800;color:var(--navy)}.brand-copy strong span{color:var(--bright)}.brand-copy small{margin-top:5px;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#5e85ad;font-weight:700}.custom-logo{max-height:52px;width:auto}.main-nav{display:flex;align-items:center;gap:8px}.menu{display:flex;list-style:none;margin:0;padding:0;align-items:center}.menu a{display:block;padding:10px 10px;font-size:13px;font-weight:650;color:#315b7f;border-radius:7px}.menu a:hover,.current-menu-item>a{color:var(--blue);background:var(--light)}.menu-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:9px;width:42px;height:42px;padding:9px}.menu-toggle span:not(.screen-reader-text){display:block;height:2px;background:var(--navy);margin:4px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;padding:12px 22px;font-size:14px;font-weight:700;border:1px solid transparent;transition:.2s;cursor:pointer}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 12px 28px rgba(8,119,209,.22)}.btn-primary:hover{background:#0660ab}.btn-secondary{background:#fff;color:var(--navy);border-color:#c9d6e4}.btn-outline-light{color:#fff;border-color:rgba(255,255,255,.65);background:transparent}.btn-outline-light:hover{background:#fff;color:var(--navy)}h1,h2,h3{color:var(--navy);line-height:1.15;letter-spacing:-.03em}h1{font-size:clamp(2.5rem,5vw,4.8rem);margin:.25em 0}h2{font-size:clamp(2rem,3.4vw,3.1rem);margin:.3em 0 .45em}h3{font-size:1.05rem}p{color:#466b8b}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:#0660ab;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.eyebrow:before{content:'';width:24px;height:1px;background:currentColor;opacity:.5}.eyebrow.light{color:#7fc0ef}.section{padding:80px 0}.soft{background:rgba(238,247,253,.6)}.center-head{text-align:center}.center-head>p{max-width:720px;margin:0 auto 40px;font-size:17px}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.split>div>p{font-size:16px}.split .btn{margin-top:16px}.home-hero,.page-hero{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--navy),#052f58 55%,var(--deep));color:#fff}.home-hero{min-height:650px;display:flex;align-items:center;padding:90px 0}.home-hero:after,.page-hero:after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(8,119,209,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(8,119,209,.06) 1px,transparent 1px);background-size:44px 44px;pointer-events:none}.hero-glow{position:absolute;width:650px;height:650px;border-radius:50%;background:rgba(20,149,245,.18);filter:blur(100px);right:-180px;top:-250px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.home-hero h1,.page-hero h1{color:#fff}.home-hero h1 span{display:block;color:var(--bright)}.home-hero p,.page-hero p{font-size:18px;color:#c9d6e4;max-width:670px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.tech-panel{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);border-radius:18px;padding:20px;backdrop-filter:blur(12px);box-shadow:var(--shadow)}.panel-top{display:flex;align-items:center;gap:7px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:14px;color:#c9d6e4;font-size:12px}.panel-top span{width:9px;height:9px;border-radius:50%;background:#7fc0ef}.panel-top b{margin-left:auto}.panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.panel-grid div{background:rgba(255,255,255,.06);padding:20px;border-radius:12px}.panel-grid .icon{color:var(--bright);width:28px;height:28px}.panel-grid strong,.panel-grid small{display:block}.panel-grid strong{margin-top:12px;color:#fff}.panel-grid small{margin-top:4px;color:#93aec9}.page-hero{padding:105px 0 90px}.page-hero .hero-grid{grid-template-columns:1fr 1fr}.page-hero h1{font-size:clamp(2.5rem,4.5vw,4.2rem)}.subline{display:block;font-size:.5em;color:#7fc0ef;margin-top:12px}.cards-2,.cards-3,.cards-4{display:grid;gap:22px;margin-top:42px}.cards-2{grid-template-columns:repeat(2,1fr);margin-top:0}.cards-3{grid-template-columns:repeat(3,1fr)}.cards-4{grid-template-columns:repeat(4,1fr)}.card{background:#fff;border:1px solid rgba(3,27,53,.07);border-radius:15px;padding:26px;text-align:left;box-shadow:0 1px 3px rgba(3,27,53,.06);transition:.25s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card p{font-size:14px;margin-bottom:0}.card a:not(.btn){display:inline-block;margin-top:16px;color:#0660ab;font-weight:750;font-size:13px}.icon-box{width:48px;height:48px;border-radius:13px;background:var(--light);color:#0660ab;display:inline-grid;place-items:center}.services .card{min-height:270px}.support-band,.special-box{background:linear-gradient(135deg,var(--navy),var(--deep));border-radius:20px;padding:48px;display:flex;align-items:center;justify-content:space-between;gap:40px;color:#fff;box-shadow:0 18px 48px rgba(8,119,209,.18)}.support-band h2{color:#fff}.support-band p{color:#c9d6e4;max-width:720px;font-size:17px}.support-band>div:last-child{display:flex;gap:12px;flex-wrap:wrap}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;text-align:left}.steps article{position:relative;padding:28px}.steps b{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--blue);color:#fff}.steps p{font-size:14px}.cta{background:linear-gradient(135deg,var(--navy),var(--deep));padding:56px 0}.cta>.container{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{color:#fff;margin:0}.cta p{color:#c9d6e4;font-size:17px}.cta-actions{display:flex;gap:12px;flex-wrap:wrap}.sage-eye{color:var(--sage)}.sage-monitor{max-width:540px;margin:auto}.monitor-screen{border:10px solid #dfe7ed;border-bottom-width:16px;border-radius:15px;background:#f8fbfd;color:var(--ink);padding:18px;box-shadow:0 24px 60px rgba(0,0,0,.25)}.monitor-bar{display:flex;gap:8px;align-items:center;padding-bottom:12px;border-bottom:1px solid #dce8f2;font-size:12px}.monitor-bar i{width:9px;height:9px;background:var(--sage);border-radius:50%}.monitor-bar b{margin-left:4px}.sage-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.sage-tiles div{background:#fff;border:1px solid #e5eef4;padding:12px;border-radius:9px}.sage-tiles small,.sage-tiles strong{display:block}.sage-tiles small{color:#6b879f}.sage-tiles strong{margin-top:5px;font-size:12px;color:var(--sage)}.sage-chart{margin-top:12px;padding:15px;background:#fff;border:1px solid #e5eef4;border-radius:9px}.sage-chart span{font-size:11px;font-weight:700}.sage-chart i{display:block;width:var(--w);height:8px;background:linear-gradient(90deg,var(--sage),#86b87b);border-radius:4px;margin-top:10px}.monitor-stand{width:110px;height:42px;border-bottom:12px solid #dfe7ed;border-left:20px solid transparent;border-right:20px solid transparent;margin:auto}.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:0 20px}.faq summary{cursor:pointer;padding:18px 0;font-weight:750;color:var(--navy)}.faq details p{padding-bottom:18px;margin-top:0}.lead{font-size:17px;max-width:720px}.product-placeholder{height:180px;background:var(--light);border-radius:10px;display:grid;place-items:center;color:#7fa1bb;text-align:center}.product-placeholder .icon{width:42px;height:42px}.product-placeholder span{display:block}.product-card .btn{margin-top:20px}.special-box{background:var(--light);color:var(--ink)}.special-box h2{margin-top:0}.special-box p{max-width:720px}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.form-note{padding:16px 18px;background:#fff8dd;border:1px solid #f0df9a;border-radius:10px;color:#6d5d18;margin:22px 0}.demo-form label{display:block;font-size:13px;font-weight:700;color:var(--navy);margin-bottom:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.demo-form input,.demo-form select,.demo-form textarea,.entry-content input,.entry-content select,.entry-content textarea{width:100%;margin-top:7px;border:1px solid #c9d6e4;border-radius:9px;padding:13px 14px;font:inherit;background:#fff}.contact-cards{display:grid;gap:14px;margin-top:24px}.contact-cards>a,.contact-cards>div{display:flex;align-items:center;gap:15px;background:var(--light);border-radius:13px;padding:18px}.contact-cards small,.contact-cards strong{display:block}.contact-cards small{color:#6b879f;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.contact-cards strong{color:var(--navy);margin-top:4px;font-size:14px}.entry-content{font-size:16px}.entry-content h2,.entry-content h3{margin-top:1.5em}.site-footer{background:var(--navy);color:#c9d6e4}.footer-grid{display:grid;grid-template-columns:1.6fr .7fr .8fr 1fr;gap:48px;padding:64px 0}.brand-light .brand-copy strong{color:#fff}.brand-light .brand-copy small{color:#93aec9}.footer-copy{font-size:14px;color:#93aec9;max-width:390px}.site-footer h3{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.09em}.site-footer ul{list-style:none;margin:18px 0 0;padding:0}.site-footer li{margin:10px 0;font-size:13px}.site-footer a{color:#b5c7d8}.site-footer a:hover{color:#7fc0ef}.contact-list li{display:flex;gap:10px;align-items:flex-start}.contact-list .icon{width:17px;height:17px;color:var(--bright);margin-top:3px;flex:0 0 auto}.footer-bottom{border-top:1px solid rgba(255,255,255,.1)}.footer-bottom .container{display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:12px;color:#7f9ab2}.footer-bottom a{margin-left:20px}.whatsapp{position:fixed;right:22px;bottom:22px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;font-weight:900;box-shadow:0 12px 28px rgba(0,0,0,.2);z-index:45}
@media(max-width:1120px){.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 20px;box-shadow:var(--shadow)}.main-nav.open{display:block}.menu{display:block}.menu a{padding:12px}.nav-quote{margin-top:12px}.hero-grid{gap:40px}.cards-4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.container{width:min(100% - 32px,1280px)}.section{padding:60px 0}.home-hero{min-height:auto;padding:72px 0}.hero-grid,.page-hero .hero-grid,.split,.contact-grid{grid-template-columns:1fr}.page-hero{padding:80px 0 65px}.cards-3,.steps{grid-template-columns:1fr}.cards-2{margin-top:30px}.support-band,.special-box,.cta>.container{align-items:flex-start;flex-direction:column}.support-band,.special-box{padding:32px}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom .container{flex-direction:column}.footer-bottom a{margin-left:0;margin-right:20px}.tech-panel{margin-top:10px}}
@media(max-width:560px){h1{font-size:2.55rem}.cards-2,.cards-4,.footer-grid,.form-row{grid-template-columns:1fr}.hero-actions,.cta-actions,.support-band>div:last-child{flex-direction:column;align-items:stretch}.hero-actions .btn,.cta-actions .btn,.support-band .btn{width:100%}.panel-grid{grid-template-columns:1fr 1fr}.sage-tiles{grid-template-columns:1fr}.footer-bottom .container span:last-child{display:flex;flex-direction:column;gap:8px}.whatsapp{width:50px;height:50px;right:16px;bottom:16px}}

/* PCGuard v2 Gutenberg/editor-first additions */
.entry-content>.wp-block-group,.site-main>.wp-block-group{margin-block-start:0;margin-block-end:0}
.wp-block-buttons .wp-block-button__link{font-family:inherit;text-decoration:none!important}
.wp-block-button.btn-primary .wp-block-button__link{background:var(--blue);color:#fff;border:1px solid transparent;border-radius:9px;padding:12px 22px;font-size:14px;font-weight:700;box-shadow:0 12px 28px rgba(8,119,209,.22)}
.wp-block-button.btn-secondary .wp-block-button__link{background:#fff;color:var(--navy);border:1px solid #c9d6e4;border-radius:9px;padding:12px 22px;font-size:14px;font-weight:700}
.wp-block-button.btn-outline-light .wp-block-button__link{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65);border-radius:9px;padding:12px 22px;font-size:14px;font-weight:700}
.wp-block-button.btn-outline-light .wp-block-button__link:hover{background:#fff;color:var(--navy)}
.home-hero .wp-block-group,.page-hero .wp-block-group{position:relative;z-index:1}
.home-hero h1 span{display:block;color:var(--bright)}
.intro-visual{min-height:390px;display:grid;place-items:center}
.intro-orbit{position:relative;width:min(390px,100%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(20,149,245,.18),rgba(238,247,253,.9) 48%,#fff 49%);border:1px solid rgba(8,119,209,.12);display:grid;place-items:center;box-shadow:0 24px 70px rgba(3,27,53,.08)}
.intro-orbit strong{display:grid;place-items:center;width:138px;height:138px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--deep));color:#fff;font-size:24px;box-shadow:var(--shadow)}
.intro-orbit span{position:absolute;background:#fff;border:1px solid var(--line);border-radius:999px;padding:11px 16px;color:var(--deep);font-size:13px;font-weight:750;box-shadow:0 10px 30px rgba(3,27,53,.08)}
.intro-orbit span:nth-child(1){top:10%;left:-1%}.intro-orbit span:nth-child(2){top:22%;right:-8%}.intro-orbit span:nth-child(3){bottom:21%;left:-8%}.intro-orbit span:nth-child(4){bottom:9%;right:1%}
.services-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:42px}
.service-feature{min-height:245px;background:linear-gradient(145deg,#fff 68%,var(--light));padding:34px}
.service-feature h3{font-size:1.3rem}.service-feature p{max-width:520px}
.step-number{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--blue);color:#fff!important;font-weight:800}
.product-mini-grid{display:grid;gap:14px}
.product-mini-grid p{margin:0;background:linear-gradient(135deg,var(--navy),var(--deep));color:#fff;border-radius:15px;padding:24px 26px;font-weight:750;box-shadow:var(--shadow)}
.main-nav .menu>li{position:relative}.main-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:230px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px;list-style:none;box-shadow:var(--shadow);z-index:100;margin:0}.main-nav .menu>li:hover>.sub-menu,.main-nav .menu>li:focus-within>.sub-menu{display:block}.main-nav .sub-menu a{padding:10px 12px;white-space:nowrap}.main-nav .menu-item-has-children>a:after{content:' ▾';font-size:11px}
@media(max-width:900px){.services-feature-grid{grid-template-columns:1fr}.intro-visual{min-height:330px}.intro-orbit{width:310px}.main-nav .sub-menu{position:static;display:block;border:0;box-shadow:none;padding-left:14px}.main-nav .sub-menu a{font-size:12px}}
@media(max-width:600px){.intro-orbit{width:250px}.intro-orbit strong{width:105px;height:105px;font-size:19px}.intro-orbit span{padding:8px 11px;font-size:10px}.service-feature{padding:26px}}

/* PCGuard v2 Gutenberg/editor-first additions */
.entry-content>.wp-block-group,.site-main>.wp-block-group{margin-block-start:0;margin-block-end:0}
.wp-block-buttons .wp-block-button__link{font-family:inherit;text-decoration:none!important}
.wp-block-button.btn-primary .wp-block-button__link{background:var(--blue);color:#fff;border:1px solid transparent;border-radius:9px;padding:12px 22px;font-size:14px;font-weight:700;box-shadow:0 12px 28px rgba(8,119,209,.22)}
.wp-block-button.btn-secondary .wp-block-button__link{background:#fff;color:var(--navy);border:1px solid #c9d6e4;border-radius:9px;padding:12px 22px;font-size:14px;font-weight:700}
.wp-block-button.btn-outline-light .wp-block-button__link{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65);border-radius:9px;padding:12px 22px;font-size:14px;font-weight:700}
.wp-block-button.btn-outline-light .wp-block-button__link:hover{background:#fff;color:var(--navy)}
.home-hero .wp-block-group,.page-hero .wp-block-group{position:relative;z-index:1}
.home-hero h1 span{display:block;color:var(--bright)}
.intro-visual{min-height:390px;display:grid;place-items:center}
.intro-orbit{position:relative;width:min(390px,100%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(20,149,245,.18),rgba(238,247,253,.9) 48%,#fff 49%);border:1px solid rgba(8,119,209,.12);display:grid;place-items:center;box-shadow:0 24px 70px rgba(3,27,53,.08)}
.intro-orbit strong{display:grid;place-items:center;width:138px;height:138px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--deep));color:#fff;font-size:24px;box-shadow:var(--shadow)}
.intro-orbit span{position:absolute;background:#fff;border:1px solid var(--line);border-radius:999px;padding:11px 16px;color:var(--deep);font-size:13px;font-weight:750;box-shadow:0 10px 30px rgba(3,27,53,.08)}
.intro-orbit span:nth-child(1){top:10%;left:-1%}.intro-orbit span:nth-child(2){top:22%;right:-8%}.intro-orbit span:nth-child(3){bottom:21%;left:-8%}.intro-orbit span:nth-child(4){bottom:9%;right:1%}
.services-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:42px}
.service-feature{min-height:245px;background:linear-gradient(145deg,#fff 68%,var(--light));padding:34px}
.service-feature h3{font-size:1.3rem}.service-feature p{max-width:520px}
.step-number{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--blue);color:#fff!important;font-weight:800}
.product-mini-grid{display:grid;gap:14px}
.product-mini-grid p{margin:0;background:linear-gradient(135deg,var(--navy),var(--deep));color:#fff;border-radius:15px;padding:24px 26px;font-weight:750;box-shadow:var(--shadow)}
.main-nav .menu>li{position:relative}.main-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:230px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px;list-style:none;box-shadow:var(--shadow);z-index:100;margin:0}.main-nav .menu>li:hover>.sub-menu,.main-nav .menu>li:focus-within>.sub-menu{display:block}.main-nav .sub-menu a{padding:10px 12px;white-space:nowrap}.main-nav .menu-item-has-children>a:after{content:' ▾';font-size:11px}
@media(max-width:900px){.services-feature-grid{grid-template-columns:1fr}.intro-visual{min-height:330px}.intro-orbit{width:310px}.main-nav .sub-menu{position:static;display:block;border:0;box-shadow:none;padding-left:14px}.main-nav .sub-menu a{font-size:12px}}
@media(max-width:600px){.intro-orbit{width:250px}.intro-orbit strong{width:105px;height:105px;font-size:19px}.intro-orbit span{padding:8px 11px;font-size:10px}.service-feature{padding:26px}}


/* PCGuard v2.1 — Gutenberg layout bridge
   WordPress adds constrained-layout rules to Group blocks. These resets make
   the editable blocks respect the same grid/flex layout as the original design. */
.wp-site-blocks,
.site-main,
.entry-content { width: 100%; max-width: none; }

.site-main > .wp-block-group,
.entry-content > .wp-block-group {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.wp-block-group.container,
.site-main .container,
.entry-content .container {
  width: min(1280px, calc(100% - 40px)) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Remove Gutenberg's auto-centering/max-width from children used as grid items. */
.hero-grid > *,
.split > *,
.cards-2 > *,
.cards-3 > *,
.cards-4 > *,
.services-feature-grid > *,
.steps > *,
.support-band > *,
.cta > .container > *,
.product-mini-grid > * {
  width: auto !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.hero-grid,
.split,
.cards-2,
.cards-3,
.cards-4,
.services-feature-grid,
.steps,
.product-mini-grid {
  display: grid !important;
}

.hero-grid { grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr) !important; }
.split { grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr) !important; }
.cards-2 { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
.cards-3 { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
.cards-4 { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
.services-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
.steps { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }

.support-band,
.cta > .container {
  display: flex !important;
}

.intro-visual > *,
.home-hero .wp-block-shortcode,
.intro-visual .wp-block-shortcode {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.intro-orbit { margin-left: auto !important; margin-right: auto !important; }

@media(max-width:1120px){
  .cards-4 { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media(max-width:900px){
  .services-feature-grid { grid-template-columns: 1fr !important; }
}
@media(max-width:800px){
  .wp-block-group.container,
  .site-main .container,
  .entry-content .container { width: min(100% - 32px,1280px) !important; }
  .hero-grid,.split,.cards-3,.steps { grid-template-columns: 1fr !important; }
  .support-band,.cta > .container { display: flex !important; flex-direction: column !important; }
}
@media(max-width:560px){
  .cards-2,.cards-4 { grid-template-columns: 1fr !important; }
}

/* PCGuard v2.2 — hard Gutenberg grid reset
   Core block layout rules can apply !important margins/max-widths and, on some
   WordPress versions/plugins, Group blocks may gain an inner container. */
.entry-content .hero-grid.is-layout-constrained > *,
.entry-content .split.is-layout-constrained > *,
.entry-content .cards-2.is-layout-constrained > *,
.entry-content .cards-3.is-layout-constrained > *,
.entry-content .cards-4.is-layout-constrained > *,
.entry-content .services-feature-grid.is-layout-constrained > *,
.entry-content .steps.is-layout-constrained > *,
.entry-content .product-mini-grid.is-layout-constrained > *,
.site-main .hero-grid.is-layout-constrained > *,
.site-main .split.is-layout-constrained > *,
.site-main .cards-2.is-layout-constrained > *,
.site-main .cards-3.is-layout-constrained > *,
.site-main .cards-4.is-layout-constrained > *,
.site-main .services-feature-grid.is-layout-constrained > *,
.site-main .steps.is-layout-constrained > *,
.site-main .product-mini-grid.is-layout-constrained > * {
  max-width: none !important;
  width: auto !important;
  margin-inline: 0 !important;
  margin-block-start: 0 !important;
}

/* Support WordPress/plugin versions that add an inner Group wrapper. */
.hero-grid > .wp-block-group__inner-container,
.split > .wp-block-group__inner-container,
.cards-2 > .wp-block-group__inner-container,
.cards-3 > .wp-block-group__inner-container,
.cards-4 > .wp-block-group__inner-container,
.services-feature-grid > .wp-block-group__inner-container,
.steps > .wp-block-group__inner-container,
.product-mini-grid > .wp-block-group__inner-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  display: grid !important;
  gap: 22px !important;
}

.hero-grid > .wp-block-group__inner-container,
.split > .wp-block-group__inner-container {
  grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr) !important;
  gap: 64px !important;
  align-items: center !important;
}
.cards-2 > .wp-block-group__inner-container,
.services-feature-grid > .wp-block-group__inner-container {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
}
.cards-3 > .wp-block-group__inner-container,
.steps > .wp-block-group__inner-container {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
}
.cards-4 > .wp-block-group__inner-container {
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
}

/* Higher-specificity direct grid declarations so wp global styles cannot win. */
body .site-main .entry-content .hero-grid,
body .site-main .entry-content .split,
body .site-main .entry-content .cards-2,
body .site-main .entry-content .cards-3,
body .site-main .entry-content .cards-4,
body .site-main .entry-content .services-feature-grid,
body .site-main .entry-content .steps,
body .site-main .entry-content .product-mini-grid {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  display: grid !important;
}
body .site-main .entry-content .hero-grid,
body .site-main .entry-content .split {
  grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr) !important;
}
body .site-main .entry-content .cards-2,
body .site-main .entry-content .services-feature-grid {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
}
body .site-main .entry-content .cards-3,
body .site-main .entry-content .steps {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
}
body .site-main .entry-content .cards-4 {
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
}

/* Cards/steps must fill their assigned grid cell, never use WP content width. */
body .entry-content .cards-2 > .wp-block-group,
body .entry-content .cards-3 > .wp-block-group,
body .entry-content .cards-4 > .wp-block-group,
body .entry-content .services-feature-grid > .wp-block-group,
body .entry-content .steps > .wp-block-group {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  justify-self: stretch !important;
}

@media (max-width:1120px) {
  body .site-main .entry-content .cards-4,
  .cards-4 > .wp-block-group__inner-container {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width:900px) {
  body .site-main .entry-content .services-feature-grid,
  .services-feature-grid > .wp-block-group__inner-container {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width:800px) {
  body .site-main .entry-content .hero-grid,
  body .site-main .entry-content .split,
  body .site-main .entry-content .cards-3,
  body .site-main .entry-content .steps,
  .hero-grid > .wp-block-group__inner-container,
  .split > .wp-block-group__inner-container,
  .cards-3 > .wp-block-group__inner-container,
  .steps > .wp-block-group__inner-container {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width:560px) {
  body .site-main .entry-content .cards-2,
  body .site-main .entry-content .cards-4,
  .cards-2 > .wp-block-group__inner-container,
  .cards-4 > .wp-block-group__inner-container {
    grid-template-columns: 1fr !important;
  }
}

/* PCGuard v3 — native WordPress Columns layout. */
.alignwide { width:min(1280px,calc(100% - 40px)) !important; max-width:1280px !important; margin-left:auto !important; margin-right:auto !important; }
.alignfull { width:100% !important; max-width:none !important; margin-left:0 !important; margin-right:0 !important; }
.wp-block-columns.hero-native { gap:70px; }
.wp-block-columns.intro-native { gap:64px; }
.wp-block-columns.pcg-four-columns,
.wp-block-columns.process-native { gap:22px; margin-top:42px; }
.wp-block-columns.service-row { gap:22px; margin-top:22px; }
.wp-block-columns.service-row:first-of-type { margin-top:42px; }
.pcg-four-columns .wp-block-column,
.service-row .wp-block-column { display:flex; }
.pcg-four-columns .card,
.service-row .card { width:100%; }
.service-feature { min-height:250px; }
.process-native .wp-block-column { padding:28px; }
.step-number { display:grid; place-items:center; width:42px; height:42px; border-radius:11px; background:var(--blue); color:#fff !important; font-weight:800; }
.home-hero .wp-block-columns { position:relative; z-index:1; }
.home-hero .wp-block-shortcode { width:100%; }
.home-hero .tech-panel { max-width:540px; margin-left:auto; }
.intro-native .intro-orbit { margin-left:auto; margin-right:auto; }
@media (max-width:1120px) {
  .wp-block-columns.pcg-four-columns { flex-wrap:wrap !important; }
  .pcg-four-columns > .wp-block-column { flex-basis:calc(50% - 12px) !important; }
}
@media (max-width:800px) {
  .alignwide { width:min(100% - 32px,1280px) !important; }
  .wp-block-columns.hero-native,
  .wp-block-columns.intro-native,
  .wp-block-columns.process-native,
  .wp-block-columns.service-row { flex-wrap:wrap !important; }
  .hero-native > .wp-block-column,
  .intro-native > .wp-block-column,
  .process-native > .wp-block-column,
  .service-row > .wp-block-column { flex-basis:100% !important; }
  .home-hero .tech-panel { margin:20px auto 0; }
}
@media (max-width:560px) {
  .pcg-four-columns > .wp-block-column { flex-basis:100% !important; }
}


/* PCGuard v3.1 — self-contained native Columns support.
   Some optimisation/plugin stacks do not leave the WordPress core Columns
   frontend CSS available. These rules reproduce the essential core layout so
   editable Columns remain true columns on the public site. */
.entry-content .wp-block-columns {
  box-sizing: border-box;
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: normal;
  width: min(1280px, calc(100% - 40px)) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.entry-content .wp-block-column {
  flex-grow: 1;
  flex-basis: 0;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
}
.entry-content .wp-block-column.is-vertically-aligned-center {
  align-self: center;
}
.entry-content .hero-native > .wp-block-column:first-child,
.entry-content .intro-native > .wp-block-column:first-child {
  flex-basis: 0 !important;
}
.entry-content .hero-native > .wp-block-column:last-child,
.entry-content .intro-native > .wp-block-column:last-child {
  flex-basis: 0 !important;
}
.entry-content .hero-native .tech-panel {
  width: 100%;
  max-width: 540px;
  margin-left: auto;
  margin-right: 0;
}
.entry-content .pcg-four-columns > .wp-block-column {
  flex: 1 1 0 !important;
}
.entry-content .process-native > .wp-block-column {
  flex: 1 1 0 !important;
}
.entry-content .service-row > .wp-block-column {
  flex: 1 1 0 !important;
}
@media (max-width: 1120px) {
  .entry-content .pcg-four-columns { flex-wrap: wrap !important; }
  .entry-content .pcg-four-columns > .wp-block-column { flex: 1 1 calc(50% - 12px) !important; }
}
@media (max-width: 800px) {
  .entry-content .wp-block-columns { width: min(100% - 32px, 1280px) !important; }
  .entry-content .hero-native,
  .entry-content .intro-native,
  .entry-content .process-native,
  .entry-content .service-row,
  .entry-content .products-home .wp-block-columns { flex-wrap: wrap !important; }
  .entry-content .hero-native > .wp-block-column,
  .entry-content .intro-native > .wp-block-column,
  .entry-content .process-native > .wp-block-column,
  .entry-content .service-row > .wp-block-column,
  .entry-content .products-home .wp-block-column { flex: 1 1 100% !important; }
  .entry-content .hero-native .tech-panel { margin: 24px auto 0; }
}
@media (max-width: 560px) {
  .entry-content .pcg-four-columns > .wp-block-column { flex: 1 1 100% !important; }
}


/* PCGuard v3.2 — frontend content wrapper fix. */
.site-main > .entry-content { width:100%; max-width:none; margin:0; padding:0; }
.site-main > .entry-content > .wp-block-group.alignfull { width:100% !important; max-width:none !important; }

/* PCGuard v3.3 — targeted homepage hero width and balance fix.
   Keeps the native editable Columns structure intact. */
.entry-content .home-hero > .hero-native,
.site-main .entry-content .home-hero > .wp-block-columns.hero-native {
  box-sizing: border-box !important;
  width: min(1280px, calc(100% - 64px)) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  gap: 56px !important;
  align-items: center !important;
}
.entry-content .home-hero .hero-native > .wp-block-column:first-child {
  flex: 0 1 52% !important;
  max-width: 640px !important;
}
.entry-content .home-hero .hero-native > .wp-block-column:last-child {
  flex: 1 1 48% !important;
  min-width: 0 !important;
}
.entry-content .home-hero .hero-native h1 {
  max-width: 640px !important;
  font-size: clamp(3rem, 4.1vw, 4.25rem) !important;
  line-height: 1.12 !important;
}
.entry-content .home-hero .hero-native p {
  max-width: 620px !important;
}
.entry-content .home-hero .hero-native .tech-panel {
  width: 100% !important;
  max-width: 500px !important;
  margin-left: auto !important;
  margin-right: 0 !important;
}
@media (max-width: 1120px) {
  .entry-content .home-hero > .hero-native,
  .site-main .entry-content .home-hero > .wp-block-columns.hero-native {
    width: min(100% - 48px, 1280px) !important;
    gap: 36px !important;
  }
  .entry-content .home-hero .hero-native h1 {
    font-size: clamp(2.8rem, 5vw, 3.8rem) !important;
  }
}
@media (max-width: 800px) {
  .entry-content .home-hero > .hero-native,
  .site-main .entry-content .home-hero > .wp-block-columns.hero-native {
    width: min(100% - 32px, 1280px) !important;
    flex-wrap: wrap !important;
    gap: 28px !important;
  }
  .entry-content .home-hero .hero-native > .wp-block-column:first-child,
  .entry-content .home-hero .hero-native > .wp-block-column:last-child {
    flex: 1 1 100% !important;
    max-width: none !important;
  }
  .entry-content .home-hero .hero-native h1 {
    max-width: 680px !important;
    font-size: clamp(2.55rem, 10vw, 3.5rem) !important;
  }
  .entry-content .home-hero .hero-native .tech-panel {
    max-width: 540px !important;
    margin: 16px auto 0 !important;
  }
}


/* ==========================================================
   PCGuard 3.4 — visual polish
   Keeps Gutenberg content editable; styling only.
   ========================================================== */

/* Header balance */
.site-header .nav-wrap{
  width:min(1280px,calc(100% - 64px));
  margin-inline:auto;
  min-height:82px;
}
.site-header .brand{flex:0 0 220px;justify-content:flex-start}
.site-header .custom-logo{max-height:58px;max-width:190px}
.site-header .main-nav{margin-left:auto;justify-content:flex-end}

/* Intro: add depth without making it busy */
.entry-content .section:has(.intro-native){
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 44%,rgba(20,149,245,.10),transparent 26%),
    linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
}
.entry-content .section:has(.intro-native)::before{
  content:'';
  position:absolute;
  width:340px;height:340px;
  border:1px solid rgba(8,119,209,.08);
  border-radius:50%;
  right:8%;top:50%;
  transform:translateY(-50%);
  pointer-events:none;
}
.entry-content .intro-native{position:relative;z-index:1}

/* Why PCGuard: a visual break from white card sections */
.entry-content .section:has(.pcg-four-columns){
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 86% 12%,rgba(20,149,245,.20),transparent 30%),
    linear-gradient(135deg,#031b35 0%,#063a70 100%) !important;
}
.entry-content .section:has(.pcg-four-columns)::after{
  content:'';
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:52px 52px;
  pointer-events:none;
}
.entry-content .section:has(.pcg-four-columns) > *{position:relative;z-index:1}
.entry-content .section:has(.pcg-four-columns) .eyebrow{color:#7fc0ef}
.entry-content .section:has(.pcg-four-columns) h2,
.entry-content .section:has(.pcg-four-columns) h3{color:#fff}
.entry-content .section:has(.pcg-four-columns) .center-head > p{color:#c9d6e4}
.entry-content .pcg-four-columns{gap:0 !important;border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}
.entry-content .pcg-four-columns > .wp-block-column{border-right:1px solid rgba(255,255,255,.15)}
.entry-content .pcg-four-columns > .wp-block-column:last-child{border-right:0}
.entry-content .pcg-four-columns .card{
  min-height:245px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  padding:38px 30px;
}
.entry-content .pcg-four-columns .card:hover{
  transform:none;
  background:rgba(255,255,255,.055);
  box-shadow:none;
}
.entry-content .pcg-four-columns .card p{color:#b9ccdd;font-size:15px;line-height:1.75}
.entry-content .pcg-four-columns .icon-box{background:rgba(20,149,245,.14);color:#7fc0ef;border:1px solid rgba(127,192,239,.18)}

/* Services: make each offer feel intentional */
.entry-content .section:has(.service-row){
  background:
    linear-gradient(180deg,#fff 0%,#f8fbfe 100%);
}
.entry-content .service-row{gap:24px !important}
.entry-content .service-feature{
  position:relative;
  min-height:255px;
  overflow:hidden;
  border:1px solid rgba(3,27,53,.08);
  box-shadow:0 8px 28px rgba(3,27,53,.06);
  padding:34px;
}
.entry-content .service-feature::before{
  content:'';
  position:absolute;
  left:0;top:0;bottom:0;
  width:5px;
  background:#0877d1;
}
.entry-content .service-row:first-of-type > .wp-block-column:nth-child(2) .service-feature::before{background:#4a8b3b}
.entry-content .service-row:nth-of-type(2) > .wp-block-column:first-child .service-feature::before{background:#1495f5}
.entry-content .service-row:nth-of-type(2) > .wp-block-column:nth-child(2) .service-feature::before{background:#063a70}
.entry-content .service-feature::after{
  content:'';
  position:absolute;
  width:170px;height:170px;
  border-radius:50%;
  right:-90px;top:-90px;
  background:rgba(8,119,209,.045);
  pointer-events:none;
}
.entry-content .service-feature:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(3,27,53,.11)}
.entry-content .service-feature h3{font-size:1.25rem}
.entry-content .service-feature p{font-size:15px;max-width:600px}

/* Support band: more polished, less like a generic card */
.entry-content .support-band{
  border-radius:26px;
  padding:58px 64px;
  background:
    radial-gradient(circle at 88% 20%,rgba(20,149,245,.24),transparent 30%),
    linear-gradient(135deg,#031b35,#063a70);
  box-shadow:0 22px 60px rgba(3,27,53,.16);
}

/* Process: connect the steps visually */
.entry-content .process-native{position:relative;gap:64px !important}
.entry-content .process-native::before{
  content:'';
  position:absolute;
  left:7%;right:7%;top:21px;
  height:1px;
  background:linear-gradient(90deg,transparent,#9fc9e8 12%,#9fc9e8 88%,transparent);
}
.entry-content .process-native > .wp-block-column{position:relative;background:transparent;padding:0 8px}
.entry-content .process-native .step-number{position:relative;z-index:2;box-shadow:0 0 0 10px rgba(238,247,253,.92)}

/* Products: stronger visual identity without pretending stock is held */
.entry-content .products-home{
  background:
    radial-gradient(circle at 82% 42%,rgba(8,119,209,.09),transparent 30%),
    #fff;
}
.entry-content .product-mini-grid{gap:18px !important}
.entry-content .product-mini-grid p{
  position:relative;
  min-height:132px;
  display:flex;
  align-items:flex-end;
  margin:0;
  overflow:hidden;
  padding:28px 28px 25px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:linear-gradient(145deg,#031b35 0%,#063a70 100%);
  color:#fff;
  font-size:16px;
  line-height:1.4;
  box-shadow:0 16px 38px rgba(3,27,53,.16);
  transition:transform .25s,box-shadow .25s;
}
.entry-content .product-mini-grid p::before{
  content:'';
  position:absolute;
  width:110px;height:110px;
  border:20px solid rgba(20,149,245,.12);
  border-radius:50%;
  right:-34px;top:-40px;
}
.entry-content .product-mini-grid p:nth-child(2){background:linear-gradient(145deg,#063a70,#0877d1)}
.entry-content .product-mini-grid p:nth-child(3){background:linear-gradient(145deg,#022339,#054a85)}
.entry-content .product-mini-grid p:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(3,27,53,.22)}

/* Final CTA */
.entry-content .cta{
  background:
    radial-gradient(circle at 82% 50%,rgba(20,149,245,.22),transparent 28%),
    linear-gradient(120deg,#031b35,#063a70 70%,#054a85);
}

@media (max-width:900px){
  .site-header .nav-wrap{width:min(100% - 32px,1280px)}
  .site-header .brand{flex-basis:auto}
  .entry-content .pcg-four-columns{border:0}
  .entry-content .pcg-four-columns > .wp-block-column{border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}
  .entry-content .pcg-four-columns > .wp-block-column:last-child{border-bottom:0}
  .entry-content .process-native::before{display:none}
  .entry-content .support-band{padding:42px 30px}
}
