.cho-netsec-page{
  --cho-blue:#0878ff;
  --cho-blue-2:#005ce6;
  --cho-navy:#061f41;
  --cho-ink:#071d3d;
  --cho-muted:#617596;
  --cho-sky:#eef8ff;
  --cho-line:#d9ebff;
  --cho-card:#ffffff;
  --cho-pink:#e6387d;
  --cho-cyan:#45d9ff;
  --cho-shadow:0 24px 80px rgba(5,31,65,.12);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  isolation:isolate;
  color:var(--cho-ink);
  background:linear-gradient(180deg,#f9fdff 0%,#eff8ff 45%,#f8fbff 100%);
  overflow:hidden;
}
.cho-netsec-page *,.cho-netsec-page *:before,.cho-netsec-page *:after{box-sizing:border-box}
.cho-netsec-page a{color:inherit}
.cho-netsec-wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.cho-netsec-hero{position:relative;overflow:hidden;padding:88px 0 56px;background:radial-gradient(circle at 78% 12%,rgba(69,217,255,.34),transparent 28%),radial-gradient(circle at 16% 12%,rgba(8,120,255,.16),transparent 32%),linear-gradient(135deg,#fbfeff 0%,#eaf6ff 60%,#ddefff 100%)}
.cho-netsec-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(8,120,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(8,120,255,.08) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle at 76% 42%,#000,transparent 62%);pointer-events:none}
.cho-netsec-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.85fr);gap:50px;align-items:center}
.cho-netsec-kicker,.cho-netsec-label{display:inline-flex;width:max-content;max-width:100%;align-items:center;gap:8px;margin:0 0 20px;padding:9px 14px;border:1px solid #cfe7ff;border-radius:999px;background:rgba(255,255,255,.78);color:var(--cho-blue);font-size:12px;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.cho-netsec-hero h1,.cho-netsec-section h2,.cho-netsec-final h2{margin:0;color:var(--cho-ink);letter-spacing:-.045em;line-height:.96}
.cho-netsec-hero h1{max-width:830px;font-size:clamp(48px,7.2vw,88px)}
.cho-netsec-subhead{max-width:790px;margin:26px 0 0;color:#234267;font-size:clamp(21px,2.2vw,30px);line-height:1.24;font-weight:780;letter-spacing:-.032em}
.cho-netsec-intro{max-width:760px;margin:20px 0 0;color:#5d7191;font-size:18px;line-height:1.72}
.cho-netsec-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.cho-netsec-page .cho-netsec-btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 24px;border-radius:999px;text-decoration:none!important;font-size:16px;font-weight:900;letter-spacing:-.01em;line-height:1!important}
.cho-netsec-page .cho-netsec-btn-primary{background:linear-gradient(135deg,var(--cho-blue),var(--cho-blue-2))!important;color:#fff!important;border:0!important;box-shadow:0 16px 34px rgba(8,120,255,.25)!important}
.cho-netsec-page .cho-netsec-btn-secondary{background:#fff!important;color:#123763!important;border:1px solid #cfe4fb!important}
.cho-netsec-page .cho-netsec-btn-light{background:#fff!important;color:#073468!important;border:0!important}
.cho-netsec-pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.cho-netsec-pill-row span{padding:10px 14px;border:1px solid #d8ebff;border-radius:999px;background:white;color:#143966;font-weight:850;font-size:14px}
.cho-netsec-visual{position:relative;min-height:560px;border:1px solid rgba(255,255,255,.92);border-radius:42px;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(238,247,255,.72));box-shadow:var(--cho-shadow);overflow:hidden}
.cho-netsec-visual:before{content:"";position:absolute;inset:26px;border-radius:34px;background:radial-gradient(circle at 50% 43%,rgba(8,120,255,.16),transparent 34%),linear-gradient(135deg,rgba(255,255,255,.88),rgba(232,245,255,.72));border:1px solid rgba(8,120,255,.12)}
.cho-netsec-radar{position:absolute;left:50%;top:46%;width:250px;height:250px;transform:translate(-50%,-50%);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#fff 0 20%,rgba(8,120,255,.1) 21% 100%);box-shadow:inset 0 0 0 1px rgba(8,120,255,.15),0 24px 55px rgba(5,31,65,.14)}
.cho-netsec-radar-core{position:relative;z-index:2;display:grid;place-items:center;width:86px;height:86px;border-radius:26px;background:linear-gradient(135deg,var(--cho-navy),var(--cho-blue));color:white;font-size:24px;font-weight:950;letter-spacing:.08em}
.cho-netsec-radar-ring{position:absolute;border-radius:50%;border:1px solid rgba(8,120,255,.25)}
.cho-netsec-radar-ring.ring-one{inset:46px}.cho-netsec-radar-ring.ring-two{inset:18px;border-style:dashed}
.cho-netsec-status-card{position:absolute;z-index:2;min-width:184px;padding:18px 20px;border:1px solid #d7eaff;border-radius:24px;background:rgba(255,255,255,.9);box-shadow:0 18px 45px rgba(5,31,65,.10)}
.cho-netsec-status-card span{display:block;color:#6a7d99;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.cho-netsec-status-card strong{display:block;margin-top:6px;color:#071d3d;font-size:22px;letter-spacing:-.03em}.card-one{left:32px;top:54px}.card-two{right:30px;top:150px}.card-three{left:54px;bottom:108px}
.cho-netsec-console{position:absolute;left:30px;right:30px;bottom:30px;z-index:2;display:flex;gap:8px;align-items:center;padding:18px 20px;border-radius:22px;background:#061f41;color:#d8f0ff;box-shadow:0 20px 45px rgba(5,31,65,.24)}
.cho-netsec-console code{margin-left:auto;color:#d8f0ff;font:800 14px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.green{background:#40d682}.blue{background:#45d9ff}.pink{background:#e6387d}
.cho-netsec-section{padding:78px 0}.cho-netsec-answer{background:white}.cho-netsec-answer-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:54px;align-items:start}.cho-netsec-section h2,.cho-netsec-final h2{font-size:clamp(38px,4.8vw,66px)}.cho-netsec-answer-copy{padding:34px;border:1px solid var(--cho-line);border-radius:32px;background:linear-gradient(180deg,#fff,#f5fbff);box-shadow:0 20px 60px rgba(5,31,65,.08)}.cho-netsec-answer-copy p{margin:0;color:#4d6384;font-size:18px;line-height:1.72}.cho-netsec-answer-copy p+p{margin-top:18px}
.cho-netsec-services{background:#f3f9ff}.cho-netsec-section-head{max-width:820px;margin:0 0 36px}.cho-netsec-section-head.narrow{max-width:720px;text-align:center;margin-inline:auto}.cho-netsec-section-head p{margin:18px 0 0;color:#5d7191;font-size:18px;line-height:1.65}.cho-netsec-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cho-netsec-service-card{min-height:100%;border:1px solid #d9ebff;border-radius:28px;background:white;box-shadow:0 18px 46px rgba(5,31,65,.08);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.cho-netsec-service-card:hover{transform:translateY(-4px);border-color:#9dd0ff;box-shadow:0 24px 58px rgba(5,31,65,.12)}.cho-netsec-page .cho-netsec-service-link{display:grid;grid-template-columns:auto 1fr auto;gap:18px;min-height:100%;padding:24px;text-decoration:none!important;color:#092346!important}.cho-netsec-page .cho-netsec-service-link,.cho-netsec-page .cho-netsec-service-link *{text-decoration:none!important}.cho-netsec-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:18px;background:linear-gradient(135deg,#e9f6ff,#ffffff);color:var(--cho-blue);font-weight:950;border:1px solid #cce6ff}.cho-netsec-page .cho-netsec-card-copy strong{display:block;color:#092346!important;font-size:22px;line-height:1.14;letter-spacing:-.03em}.cho-netsec-page .cho-netsec-card-copy span{display:block;margin-top:12px;color:#5c7191!important;font-size:15.5px;line-height:1.62}.cho-netsec-arrow{align-self:start;color:#0878ff;font-size:34px;line-height:1}
.cho-netsec-flow{background:linear-gradient(180deg,#f8fcff,#fff)}.cho-netsec-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px}.cho-netsec-step{position:relative;padding:26px;border-radius:28px;background:#071f41;color:white;overflow:hidden;box-shadow:0 22px 54px rgba(5,31,65,.16)}.cho-netsec-step:after{content:"";position:absolute;right:-36px;top:-44px;width:130px;height:130px;border-radius:50%;background:rgba(69,217,255,.18)}.cho-netsec-step span{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:16px;background:rgba(255,255,255,.12);color:#9ee6ff;font-weight:950}.cho-netsec-step h3{margin:22px 0 10px;color:white;font-size:22px;letter-spacing:-.03em}.cho-netsec-step p{margin:0;color:#c7d7ec;font-size:15px;line-height:1.62}
.cho-netsec-proof{background:white}.cho-netsec-proof-card{display:grid;grid-template-columns:.86fr 1.14fr;gap:34px;align-items:start;padding:42px;border-radius:38px;background:linear-gradient(135deg,#082348,#0b376f);color:white;box-shadow:0 24px 80px rgba(5,31,65,.18)}.cho-netsec-proof-card h2,.cho-netsec-proof-card .cho-netsec-label{color:white}.cho-netsec-proof-card .cho-netsec-label{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.08)}.cho-netsec-proof-list{display:grid;gap:16px}.cho-netsec-proof-list article{padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:rgba(255,255,255,.08)}.cho-netsec-proof-list strong{display:block;color:white;font-size:20px;letter-spacing:-.02em}.cho-netsec-proof-list p{margin:10px 0 0;color:#cfe0f5;line-height:1.62}
.cho-netsec-faq{background:#f5fbff}.cho-netsec-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:42px;align-items:start}.cho-netsec-faq-grid>div>p:not(.cho-netsec-label){margin:18px 0 0;color:#5d7191;font-size:18px}.cho-netsec-faq-list{display:grid;gap:12px}.cho-netsec-faq-item{border:1px solid #d7eaff;border-radius:22px;background:white;box-shadow:0 12px 32px rgba(5,31,65,.06);overflow:hidden}.cho-netsec-faq-item summary{cursor:pointer;padding:20px 22px;color:#071d3d;font-size:18px;font-weight:900;letter-spacing:-.02em}.cho-netsec-faq-item p{margin:0;padding:0 22px 22px;color:#5d7191;font-size:16px;line-height:1.64}.cho-netsec-final{padding:82px 0;background:linear-gradient(135deg,#071f41,#0b376f)}.cho-netsec-final-card{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:42px;border:1px solid rgba(255,255,255,.16);border-radius:36px;background:rgba(255,255,255,.08);color:white}.cho-netsec-final h2{color:white}.cho-netsec-final p{margin:16px 0 0;color:#cfe0f5;font-size:18px;line-height:1.6}.cho-netsec-final .cho-netsec-kicker{color:#9ee6ff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16)}.cho-netsec-actions.stacked{flex-direction:column;align-items:stretch;margin-top:0;min-width:260px}.cho-netsec-call{display:inline-flex;justify-content:center;align-items:center;min-height:54px;border-radius:999px;border:1px solid rgba(255,255,255,.28);color:white;text-decoration:none;font-weight:900}
@media (max-width:980px){.cho-netsec-hero-grid,.cho-netsec-answer-grid,.cho-netsec-proof-card,.cho-netsec-faq-grid,.cho-netsec-final-card{grid-template-columns:1fr}.cho-netsec-visual{min-height:500px}.cho-netsec-service-grid{grid-template-columns:repeat(2,1fr)}.cho-netsec-step-grid{grid-template-columns:repeat(2,1fr)}.cho-netsec-actions.stacked{min-width:0}.cho-netsec-actions.stacked .cho-netsec-btn{width:100%}}
@media (max-width:640px){.cho-netsec-wrap{width:calc(100% - 28px);max-width:1180px}.cho-netsec-hero{padding:54px 0 34px}.cho-netsec-hero h1{font-size:clamp(42px,12vw,58px);letter-spacing:-.03em;overflow-wrap:anywhere}.cho-netsec-subhead{font-size:21px}.cho-netsec-intro{font-size:16px}.cho-netsec-visual{min-height:430px;border-radius:30px}.cho-netsec-radar{width:210px;height:210px}.cho-netsec-status-card{min-width:146px;padding:14px 15px}.cho-netsec-status-card strong{font-size:18px}.card-one{left:14px;top:24px}.card-two{right:14px;top:118px}.card-three{left:18px;bottom:88px}.cho-netsec-console{left:16px;right:16px;bottom:16px;flex-wrap:wrap}.cho-netsec-console code{margin-left:0;overflow-wrap:anywhere}.cho-netsec-section{padding:58px 0}.cho-netsec-section h2,.cho-netsec-final h2{font-size:38px;overflow-wrap:anywhere}.cho-netsec-answer-copy,.cho-netsec-proof-card,.cho-netsec-final-card{padding:28px;border-radius:28px}.cho-netsec-service-grid,.cho-netsec-step-grid{grid-template-columns:1fr}.cho-netsec-service-link{grid-template-columns:1fr;gap:14px}.cho-netsec-arrow{display:none}.cho-netsec-btn{width:100%;min-height:54px;max-width:100%}.cho-netsec-kicker,.cho-netsec-label{width:auto;white-space:normal;line-height:1.35;overflow-wrap:anywhere}.cho-netsec-hero-grid>*,.cho-netsec-answer-grid>*,.cho-netsec-proof-card>*,.cho-netsec-faq-grid>*,.cho-netsec-final-card>*{min-width:0}.cho-netsec-pill-row span{max-width:100%;overflow-wrap:anywhere}}

/* Cullinan full-width page shell fix, 2026-08-12
   Hello Elementor constrains normal page content to 1140px. This page uses its own inner wrappers,
   so the shell should span the viewport like the homepage while content remains neatly centered. */
body.page-id-1499 main#content.site-main,
body.page-id-1499 main.site-main.post-1499,
body.page-id-1499 .site-main.post-1499,
body.page-id-1499 .page-content{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
body.page-id-1499 .page-content > .cho-netsec-page,
body.page-id-1499 .cho-netsec-page{
  width:100% !important;
  max-width:none !important;
}
body.page-id-1499 .cho-netsec-hero,
body.page-id-1499 .cho-netsec-section,
body.page-id-1499 .cho-netsec-final{
  width:100% !important;
  max-width:none !important;
}
body.page-id-1499 .cho-netsec-wrap{
  width:min(1180px,calc(100% - 48px));
  margin-left:auto;
  margin-right:auto;
}
@media (max-width:767px){
  body.page-id-1499 .cho-netsec-wrap{width:min(100% - 28px,1180px)}
}

/* Cullinan mobile hero polish, 2026-08-12 */
@media (max-width:640px){
  body.page-id-1499 .cho-netsec-hero h1{
    font-size:clamp(38px,10.6vw,52px) !important;
    line-height:1.02 !important;
    letter-spacing:-.04em !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-wrap:balance;
  }
  body.page-id-1499 .cho-netsec-subhead,
  body.page-id-1499 .cho-netsec-intro{
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }
}

