/* Punic Systems additions on top of the Sentrion template */
.brand img{height:44px;width:auto;display:block}
.brand .logo-dark{display:none}
html[data-theme="light"] .brand .logo-light{display:none}
html[data-theme="light"] .brand .logo-dark{display:block}
.footer .brand .logo-dark{display:none!important}
.footer .brand .logo-light{display:block!important}
.about-media img{aspect-ratio:6/5;object-fit:cover}
.brand-tile{border-radius:22px;padding:26px 22px;min-height:190px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;color:#fff;border:1px solid var(--border);background:linear-gradient(150deg,#402077,#130D34 80%)}
.brand-tile i{position:absolute;top:20px;left:22px;font-size:2rem;color:var(--accent-cyan)}
.brand-tile b{font-weight:600;font-size:1rem;display:block;color:#fff}
.brand-tile small{color:#C5BFEA}
.brand-tile.t2{background:linear-gradient(150deg,#6E29F6,#2a1366 85%)}
.brand-tile.t3{background:linear-gradient(150deg,#1d1450,#402077 90%)}
.brand-tile.t4{background:linear-gradient(150deg,#130D34,#402077 40%,#6E29F6 140%)}
.annex-groups{padding:22px 24px 26px;display:grid;gap:22px}
.annex-group small{display:flex;justify-content:space-between;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:#A8A2CE;margin-bottom:10px}
.annex-group small b{color:#fff;font-weight:600}
.annex-nodes{display:flex;flex-wrap:wrap;gap:5px}
.annex-nodes .threat-node{width:16px;height:16px;flex:0 0 16px;aspect-ratio:auto}
.annex-nodes.org .threat-node{background:rgba(110,41,246,.55)}
.annex-nodes.ppl .threat-node{background:rgba(1,246,247,.45)}
.annex-nodes.phy .threat-node{background:rgba(143,92,255,.4)}
.annex-nodes.tec .threat-node{background:rgba(255,255,255,.22)}
@keyframes node-glow{0%,100%{filter:none}45%{filter:brightness(2.2) drop-shadow(0 0 6px #01F6F7)}}
.annex-nodes .threat-node.ping{animation:node-glow 2.4s ease-in-out infinite}
.price-card .price-value span{font-size:2.2rem}
.price-card .level{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-cyan);margin-bottom:10px}
.note-line{font-size:.85rem;display:flex;gap:10px;align-items:center;justify-content:center;margin-top:34px}
.note-line i{color:var(--accent-cyan)}
.case-card img{aspect-ratio:16/9;object-fit:cover;width:100%}
.case-card .case-client-logo{display:block;aspect-ratio:auto;height:76px;object-fit:contain;padding:8px 18px;background:#100c2a}
.case-card{cursor:pointer}
.case-modal-content{line-height:1.75}
.case-modal-content>p{margin-bottom:1.25rem}
.case-modal-content .case-block{margin-top:1.35rem;padding-top:1.15rem;border-top:1px solid var(--border)}
.case-modal-content .case-block h4{font-size:.82rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-cyan);margin-bottom:.7rem}
.case-modal-content .case-block p{margin-bottom:0}
.case-modal-content .case-block ul{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}
.case-modal-content .case-block li{display:flex;gap:.55rem;align-items:flex-start}
.case-modal-content .case-block li i{color:var(--accent-cyan);margin-top:.25rem;flex:0 0 auto}
html[data-theme="light"] .eyebrow{color:#6E29F6}
html[data-theme="light"] .grad-text{background-image:linear-gradient(120deg,#6E29F6,#00b9ba)}
html[data-theme="dark"] a.fw-600:not(.btn){color:var(--accent-cyan)}
html[data-theme="light"] a.fw-600:not(.btn){color:#6E29F6}
.cyber-modal .modal-blog-img{width:100%;height:240px;object-fit:cover;object-position:center 75%}
.bp-article-wrap{max-width:860px}
.bp-article-hero{width:100%;border-radius:18px;margin-bottom:28px;aspect-ratio:16/10;object-fit:cover}
.bp-article-body{color:var(--text-muted);line-height:1.85;font-size:1rem}
.bp-article-body h2,.bp-article-body h3,.bp-article-body h4{color:var(--text);margin:1.6rem 0 .75rem;font-family:var(--font-display)}
.bp-article-body p{margin-bottom:1rem}
.bp-article-body img{max-width:100%;height:auto;border-radius:12px;margin:1rem 0}
.bp-article-body a{color:var(--accent-cyan)}
.bp-article-body ul,.bp-article-body ol{margin:0 0 1rem 1.2rem}
.bp-article-body blockquote{border-left:3px solid var(--accent-cyan);padding-left:1rem;margin:1rem 0;color:var(--text-muted)}
a.blog-card{text-decoration:none;color:inherit}
.bp-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 22px;margin:32px 0 8px}
.bp-pager-label{font-size:.84rem;color:var(--text-muted)}

/* ===== v3: standards carousel, frameworks, real client logos, PECB badge ===== */
.std-marquee{padding:6px 0}
.std-track{gap:28px;animation-duration:48s;align-items:stretch}
.std-item{display:flex;flex-direction:column;align-items:center;gap:10px;flex:0 0 auto;text-decoration:none;opacity:.88;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .3s}
.std-item img{width:128px;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:14px;border:1px solid var(--border);box-shadow:0 14px 34px -16px rgba(110,41,246,.8)}
.std-item span{font-size:.78rem;font-weight:600;color:var(--text-muted);white-space:nowrap}
.std-item:hover{opacity:1;transform:translateY(-8px) scale(1.04)}
.std-item:hover span{color:var(--accent-cyan)}
.fw-head{max-width:760px;margin:86px auto 44px}
.fw-card{padding:20px;height:100%;display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:18px;align-content:start}
.fw-thumb{grid-row:1 / span 4;border-radius:12px;overflow:hidden;aspect-ratio:3/4;background:#0c0827;align-self:start;box-shadow:0 14px 30px -14px rgba(110,41,246,.9)}
.fw-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.fw-card:hover .fw-thumb img{transform:scale(1.08)}
.fw-card .service-tag{position:static;grid-column:2;justify-self:start;margin:0 0 8px}
.fw-card h3,.fw-card p,.fw-card .service-link{grid-column:2}
.fw-card h3{font-size:1.02rem}
@media(max-width:420px){.fw-card{grid-template-columns:84px minmax(0,1fr);column-gap:14px}}
.case-card .case-client-logo.is-light{background:#fff;object-fit:contain;height:84px;padding:14px 26px}
.case-card .case-client-logo.is-light+.case-card-body{border-top:1px solid var(--border)}
html[data-theme="light"] .pecb-badge{filter:drop-shadow(0 14px 22px rgba(110,41,246,.25))}
.footer .pecb-badge{filter:none;width:78px;height:auto}

/* ===== GRC platform page ===== */
.grc-promo{border:1px solid var(--border);border-radius:28px;padding:clamp(28px,5vw,56px);background:linear-gradient(150deg,rgba(64,32,119,.55),rgba(19,13,52,.95));position:relative;overflow:hidden}
.grc-promo:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(90px);background:rgba(1,246,247,.16);right:-120px;top:-140px;pointer-events:none}
.grc-promo-chips{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative}
.grc-promo-chips span{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:14px;border:1px solid var(--border);background:rgba(7,4,26,.55);font-size:.88rem;font-weight:500;color:#e6e2ff}
.grc-promo-chips i{color:var(--accent-cyan);font-size:1.1rem}
.grc-fw{text-align:center}
.grc-fw img{width:100%;max-width:170px;aspect-ratio:3/4;object-fit:cover;border-radius:14px;border:1px solid var(--border);box-shadow:0 16px 36px -18px rgba(110,41,246,.9);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.grc-fw:hover img{transform:translateY(-8px)}
.grc-fw b{display:block;margin-top:12px;font-weight:600;color:var(--text)}
.grc-fw small{color:var(--text-muted)}
.posture-wrap{padding:26px 28px 28px}
.posture-grid{display:grid;grid-template-columns:repeat(20,1fr);gap:7px}
.pn{aspect-ratio:1;border-radius:5px;background:rgba(1,246,247,.42);animation:pnPulse 3.4s ease-in-out infinite}
.pn.bad{background:#ff4761;box-shadow:0 0 10px rgba(255,71,97,.7)}
@keyframes pnPulse{0%,100%{opacity:.55}50%{opacity:1}}
.posture-legend{display:flex;gap:20px;margin-top:20px;font-size:.78rem;color:#A8A2CE}
.posture-legend .lg{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:7px}
.posture-legend .lg.ok{background:rgba(1,246,247,.6)}.posture-legend .lg.bad{background:#ff4761}
@media(max-width:600px){.posture-grid{grid-template-columns:repeat(10,1fr)}.grc-promo-chips{grid-template-columns:1fr}}

/* keep the 10-item nav on one line on laptops */
@media (min-width:992px) and (max-width:1399px){
  #mainNav .nav-link{padding-left:.45rem!important;padding-right:.45rem!important;font-size:.82rem;white-space:nowrap}
  #mainNav .btn-sm-cyber{padding:.55rem .9rem;font-size:.8rem;white-space:nowrap}
  #mainNav .brand img{height:38px}
}
@media (min-width:992px) and (max-width:1199px){#mainNav .theme-toggle{display:none}}
