/* ==========================================================
   NEXEN ONE — main.css
   Design tokens, base styles, buttons, header / navigation.
   Load order: main.css (shared and page styles) → responsive.css (all viewport and motion preferences)
========================================================== */

@keyframes fadein{to{opacity:1}}

/* ==========================================================
   NEXEN ONE — DESIGN TOKENS
   Client palette: charcoal / off-white / gold / cyan / deep blue.
   Legacy variable names (--paper, --ink, --blue …) are kept as
   aliases so every existing section keeps working and picks up
   the palette automatically.
========================================================== */
:root{
  /* Brand palette (client-specified) */
  --color-charcoal:#1A1A1A;
  --color-off-white:#F5F7FA;
  --color-gold:#FFD700;
  --color-cyan:#00A8E8;
  --color-deep-blue:#00427E;

  /* Derived shades of the same hues (states, washes, borders) */
  --color-deep-blue-700:#00315C;
  --color-deep-blue-50:#E3EDF6;
  --color-cyan-50:#E1F4FC;
  --color-gold-600:#E6C200;   /* hover state for gold fills */
  --color-gold-50:#FFF6BF;
  --color-gold-ink:#6B5A00;   /* text on gold wash (AA contrast) */
  --color-alert:#A8452F;      /* status colour only: escalations / "down" (accessibility + chart differentiation) */
  --color-alert-50:#F6DDD8;
  --color-surface:#FFFFFF;
  --color-border:#DCE2EA;
  --color-text-muted:#4A4F57;
  --color-text-faint:#6B717B;

  /* Legacy aliases → palette */
  --paper:var(--color-off-white);
  --paper-deep:#E9EEF4;
  --card:var(--color-surface);
  --ink:var(--color-charcoal);
  --ink-soft:var(--color-text-muted);
  --ink-faint:var(--color-text-faint);
  --rule:var(--color-border);
  --blue:var(--color-deep-blue);
  --blue-deep:var(--color-deep-blue-700);
  --blue-wash:var(--color-deep-blue-50);
  --decide:var(--color-gold);          /* the human-decision colour, used only where a person approves */
  --decide-wash:var(--color-gold-50);
  --night:var(--color-deep-blue-700);   /* was charcoal: client asked for no black section backgrounds */
  --night-2:#004073;
  --night-rule:#1F5C93;

  /* Type + layout */
  --serif:"DM Serif Display", Georgia, serif;
  --sans:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"JetBrains Mono", ui-monospace, Menlo, monospace;
  --gutter:clamp(16px, 4vw, 40px);
  --max:1200px;
}

/* ==========================================================
   BASE / TYPOGRAPHY / LAYOUT
========================================================== */
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;overflow-x:clip}
img,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 14px;border-radius:6px;z-index:100}
.skip:focus{left:8px}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:-0.01em}
h2{font-size:clamp(2rem,4.2vw,3.25rem);line-height:1.08;max-width:18ch}
h3{font-size:1.5rem;line-height:1.2}
p{margin:0}
.lede{font-size:clamp(1.05rem,1.5vw,1.2rem);color:var(--ink-soft);max-width:58ch}
.mono{font-family:var(--mono);font-size:.8rem;letter-spacing:0}
section{position:relative}
.sec{padding:clamp(80px,11vw,140px) 0}
.sec-head{display:grid;gap:18px;margin-bottom:clamp(40px,6vw,64px)}

/* ==========================================================
   BUTTONS
========================================================== */
.btn{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:999px;padding:14px 24px;font-weight:600;font-size:1rem;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s;white-space:nowrap}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--blue-deep)}
.btn-quiet{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
.btn-quiet:hover{background:var(--ink);color:var(--paper)}
.btn-small{padding:10px 18px;font-size:.93rem}
.textlink{color:var(--blue);font-weight:600;text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:1px}
.textlink:hover{color:var(--blue-deep)}

/* ---------- glossary terms ---------- */
.term{position:relative;display:inline;background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline dotted;text-decoration-color:var(--blue);text-underline-offset:4px;cursor:help}
.term .tip{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%) translateY(4px);width:max-content;max-width:260px;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:.85rem;line-height:1.45;padding:10px 12px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:20;text-align:left;font-weight:400;letter-spacing:0}
.term .tip b{display:block;font-weight:600;margin-bottom:2px}
.term:hover .tip,.term:focus .tip,.term.open .tip{opacity:1;transform:translateX(-50%) translateY(0)}

/* ==========================================================
   HEADER / PRIMARY NAVIGATION   (#top)
========================================================== */
.site-head{position:sticky;top:0;z-index:50;background:rgba(245,247,250,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--color-border);transition:box-shadow .2s}
.scroll-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none}
.scroll-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transition:width .1s linear}
.site-head.scrolled{box-shadow:0 10px 24px -20px rgba(0,66,126,.5)}
.head-row{display:flex;align-items:center;gap:28px;height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--serif);font-size:1.45rem;letter-spacing:-.01em}
.brand svg{width:30px;height:30px;flex:none}
/* brand mark (palette-driven, replaces hard-coded fills) */
.brand-mark .bm-curve{fill:none;stroke:var(--color-deep-blue);stroke-width:2.4;stroke-linecap:round}
.brand-mark .bm-peak{fill:var(--color-gold);stroke:var(--color-charcoal);stroke-width:1.2}
.brand-mark .bm-end{fill:var(--color-cyan)}
.nav{display:flex;gap:4px;margin-left:12px}
.nav > a,.nav > .has-menu > button{white-space:nowrap;background:none;border:0;padding:10px 14px;border-radius:8px;text-decoration:none;font-weight:500;font-size:.97rem;color:var(--ink)}
.nav > a,.nav > .has-menu > button{position:relative;transition:color .2s}
.nav > a::after,.nav > .has-menu > button::after{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:2px;border-radius:2px;background:var(--color-cyan);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.nav > a:hover,.nav > .has-menu > button:hover{color:var(--color-deep-blue)}
.nav > a:hover::after,.nav > .has-menu > button:hover::after{transform:scaleX(1)}
.nav > .has-menu > button[aria-expanded=true]{color:var(--color-deep-blue)}
.nav > .has-menu > button[aria-expanded=true]::after{transform:scaleX(1);height:3px;background:var(--color-gold)}
.head-cta .btn-primary{box-shadow:inset 0 -3px 0 var(--color-gold)}
.has-menu{position:relative}
.has-menu > button svg{display:inline-block;width:10px;height:10px;margin-left:6px;vertical-align:1px;transition:transform .2s}
.has-menu > button[aria-expanded=true] svg{transform:rotate(180deg)}
.mega{position:absolute;top:calc(100% + 10px);left:-12px;width:min(720px,90vw);background:var(--card);border:1px solid var(--rule);border-radius:16px;box-shadow:0 24px 60px -24px rgba(23,26,46,.28);padding:24px;display:grid;grid-template-columns:1.1fr 1fr;gap:24px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s,transform .18s,visibility .18s}
.mega.open{opacity:1;visibility:visible;transform:none}
.mega-links{display:grid;gap:2px}
.mega-links a{display:block;padding:10px 12px;border-radius:10px;text-decoration:none}
.mega-links a:hover{background:var(--paper)}
.mega-links strong{display:block;font-weight:600}
.mega-links span{font-size:.88rem;color:var(--ink-soft)}
.co-menu{position:static}
.mega-co{left:0;right:0;margin:0 auto;top:calc(100% - 2px);width:min(880px,calc(100vw - 32px));grid-template-columns:repeat(3,1fr);gap:8px 20px;padding:22px}
.co-col{display:grid;gap:2px;align-content:start}
.co-h{font-size:.82rem;font-weight:600;color:var(--ink-faint);padding:0 10px 6px;border-bottom:1px solid var(--rule);margin-bottom:6px}
.co-col a{display:grid;grid-template-columns:20px 1fr;gap:12px;padding:10px;border-radius:10px;text-decoration:none;align-items:start}
.co-col a:hover{background:var(--paper)}
.co-col a:hover strong{color:var(--blue)}
.co-col a > svg{width:20px;height:20px;color:var(--blue);margin-top:2px}
.co-col strong{display:block;font-weight:600;font-size:.95rem}
.co-col a span span{display:block;font-size:.84rem;color:var(--ink-soft);line-height:1.4;margin-top:2px}
.mega-feature{background:var(--night);color:#fff;border-radius:12px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.mega-feature p{font-family:var(--serif);font-size:1.35rem;line-height:1.2}
.mega-feature a{color:#fff;font-weight:600;font-size:.93rem}
.head-cta{margin-left:auto;display:flex;align-items:center;gap:8px}
.head-cta .signin{text-decoration:none;font-weight:500;padding:10px 12px;font-size:.95rem}
.burger{display:none;margin-left:auto;background:none;border:0;padding:10px;border-radius:8px}
.burger span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;transition:transform .2s,opacity .2s}
.drawer{display:none}




/* ---------- running thread (signature) ---------- */
.thread-rail{position:absolute;top:0;left:max(10px,calc(50% - var(--max)/2 - 44px));width:48px;pointer-events:none;z-index:1}
.thread-rail path.track{stroke:var(--rule);stroke-width:1.5;fill:none}
.thread-rail path.live{stroke:var(--blue);stroke-width:2;fill:none;stroke-linecap:round}
.thread-rail circle{fill:var(--paper);stroke:var(--blue);stroke-width:2}


/* ---------- Brand logo (official NexenMinds lockup, SVG) ---------- */
.brand{gap:0;line-height:0}
.brand .brand-logo{display:block;height:42px;width:auto;flex:none}
.foot-brand .brand .brand-logo{height:46px}



/* ==========================================================
   FORMER sections.css — page-level composition: section backgrounds,
   transitions, imagery, scroll reveal (merged here; must stay before
   the former common.css block below)
========================================================== */
/* ==========================================================
   NEXEN ONE — sections.css
   Page-level composition: one background identity per section,
   transitions between them, imagery, scroll reveal.
   Load order: main.css (shared and page styles) → responsive.css (all viewport and motion preferences)
   Rhythm:  hero off-white → UNDERSTAND navy → SEE off-white →
            TRUST white + image → DECIDE charcoal → CTA light.
========================================================== */

/* ==========================================================
   THE OLD PAGE-LONG THREAD (decorative line) — removed from view
========================================================== */
.thread-rail{display:none}

/* ==========================================================
   SECTION TRANSITIONS
   Decorative, aria-hidden by nature (pseudo-elements). Each one
   changes the surface: curve (soft), diagonal (energetic), band.
========================================================== */
.problem,.trust,.svc-band-sec,.final{position:relative;isolation:isolate}
.problem::before,.problem::after,.trust::before,.svc-band-sec::before,.svc-band-sec::after{content:"";position:absolute;left:0;right:0;height:clamp(28px,4vw,64px);pointer-events:none;background-repeat:no-repeat;background-size:100% 100%;z-index:0}
/* off-white hero curves down into the navy band */
.problem::before{top:-1px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 64' preserveAspectRatio='none'%3E%3Cpath d='M0 0h1440v10C1080 64 360 64 0 10z' fill='%23F5F7FA'/%3E%3C/svg%3E")}
/* navy band leaves on a diagonal into off-white; the gold edge marks the cut */
.problem::after{bottom:-1px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 64' preserveAspectRatio='none'%3E%3Cpath d='M0 64L1440 8V64z' fill='%23F5F7FA'/%3E%3Cpath d='M0 64L1440 8' stroke='%23FFD700' stroke-width='3' fill='none' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")}
/* off-white → white: a gentle swell */
.trust::before{top:-1px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 64' preserveAspectRatio='none'%3E%3Cpath d='M0 0h1440v30C1100 64 700 0 0 44z' fill='%23F5F7FA'/%3E%3C/svg%3E")}
/* white → charcoal feature band (diagonal), charcoal → light CTA (curve) */
.svc-band-sec::before{top:-1px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 64' preserveAspectRatio='none'%3E%3Cpath d='M0 0h1440L0 64z' fill='%23FFFFFF'/%3E%3C/svg%3E")}
.svc-band-sec::after{bottom:-1px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 64' preserveAspectRatio='none'%3E%3Cpath d='M0 64h1440V40C1000 -10 440 -10 0 40z' fill='%23F5F7FA'/%3E%3C/svg%3E")}

/* ==========================================================
   SECTION: UNDERSTAND — deep navy feature band
========================================================== */
.problem{background:var(--color-deep-blue);color:#fff;padding-top:clamp(96px,11vw,150px);padding-bottom:clamp(96px,11vw,150px)}
.problem .wrap{position:relative;z-index:1}
.problem h2{color:#fff}
.problem .lede{color:rgba(255,255,255,.84)}
.problem .chap-kick{color:var(--color-gold)}
.problem .chap-kick span{color:var(--color-gold);border-color:rgba(255,215,0,.6)}
/* faint data grid keeps the navy from reading as a flat colour block */
.problem::selection{background:var(--color-gold);color:var(--color-charcoal)}
.problem .problem-grid::before{content:"";position:absolute;inset:-40px 0 -40px;z-index:-1;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.1) 1px,transparent 1.3px);background-size:26px 26px;-webkit-mask-image:radial-gradient(70% 70% at 80% 40%,#000,transparent);mask-image:radial-gradient(70% 70% at 80% 40%,#000,transparent)}
.problem .problem-grid{position:relative}
.problem .toggle{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22)}
.problem .toggle button{color:#fff}
.problem .toggle button[aria-pressed="true"]{background:var(--color-gold);color:var(--color-charcoal)}
.problem .textlink,.problem a{color:#fff}
.problem :focus-visible{outline-color:var(--color-gold)}

/* ==========================================================
   SECTION: SEE IT WORK — off-white working surface
========================================================== */
.see{background:var(--color-off-white);padding-top:clamp(72px,9vw,120px)}

/* ==========================================================
   SECTION: TRUST — white, image-led
========================================================== */
.trust{background:var(--color-surface);border-top:0;border-bottom:0;padding-top:clamp(96px,10vw,140px)}
.trust .wrap{position:relative;z-index:1}
.trust-visual{position:relative;margin:0 0 clamp(36px,5vw,64px);aspect-ratio:1200/340;border-radius:20px;overflow:hidden;
  background:radial-gradient(110% 120% at 90% 0%,rgba(0,168,232,.5),transparent 60%),var(--color-deep-blue);box-shadow:0 30px 56px -36px rgba(0,66,126,.55)}
.trust-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,66,126,.92) 0%,rgba(0,66,126,.55) 45%,rgba(0,66,126,.1) 100%)}
.trust-visual-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.trust-float{position:absolute;z-index:1;left:clamp(16px,3vw,36px);bottom:clamp(16px,3vw,32px);display:flex;align-items:center;gap:14px;padding:14px 18px 14px 14px;background:var(--color-off-white);border-radius:14px;border-bottom:3px solid var(--color-gold);box-shadow:0 20px 34px -18px rgba(0,0,0,.5);max-width:calc(100% - 32px);animation:float-y 6s ease-in-out infinite}
.trust-float-ico{width:42px;height:42px;border-radius:11px;background:var(--color-deep-blue);color:var(--color-gold);display:grid;place-items:center;flex:none}
.trust-float strong{display:block;font-size:.95rem;line-height:1.2}
.trust-float small{font-size:.78rem;color:var(--color-text-muted)}
@keyframes float-y{50%{transform:translateY(-6px)}}
.trust-item svg{color:var(--color-deep-blue)}

/* ==========================================================
   SECTION: DECIDE (expert services) — charcoal feature panel
========================================================== */
.svc-band-sec{background:var(--color-charcoal);color:#fff;padding:clamp(104px,11vw,150px) 0 clamp(104px,11vw,150px);overflow:hidden}
.svc-band-sec .wrap{position:relative;z-index:1}
.svc-visual{position:absolute;z-index:-1;top:0;right:0;width:min(58%,820px);height:100%;object-fit:cover;opacity:.55;filter:grayscale(.4) contrast(1.05);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 55%);mask-image:linear-gradient(90deg,transparent 0%,#000 55%)}
.svc-visual.is-failed,.nx-source-img.is-failed,.trust-visual-img.is-failed{visibility:hidden}
.svc-band-sec h2{color:#fff}
.svc-band-sec .lede,.svc-band-sec .svc-band p{color:rgba(255,255,255,.82)}
.svc-band-sec .chap-kick{color:var(--color-gold)}
.svc-band-sec .chap-kick span{color:var(--color-gold);border-color:rgba(255,215,0,.6)}
.svc-band-sec .svc-kicker{color:var(--color-cyan)}
.svc-band-links a:not(.btn){color:#fff;border-color:rgba(255,255,255,.22);background:rgba(26,26,26,.55);transition:border-color .2s,transform .2s}
.svc-band-links a:not(.btn):hover{border-color:var(--color-gold);transform:translateX(4px)}
.svc-band-links a span{color:var(--color-gold)}
.svc-band-sec .btn-primary{background:var(--color-gold);color:var(--color-charcoal);box-shadow:none}
.svc-band-sec .btn-primary:hover{background:var(--color-gold-600)}
.svc-band-sec .btn-quiet{color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.7);background:transparent}
.svc-band-sec .btn-quiet:hover{background:#fff;color:var(--color-charcoal)}
.svc-band-sec :focus-visible{outline-color:var(--color-gold)}

/* ==========================================================
   SECTION: FINAL CTA — light surface, navy card, gold + cyan edge
========================================================== */
.final{background:var(--color-off-white);padding-top:clamp(40px,6vw,80px)}
.final-card{box-shadow:0 34px 60px -38px rgba(0,66,126,.7);border-top:4px solid var(--color-gold)}
.final-card::after{content:"";position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(0,168,232,.55),transparent 68%);pointer-events:none}

/* ==========================================================
   CARD VARIATION + HOVER (consistent radius, different surfaces)
========================================================== */
.frag,.trust-item,.see-tab,.sys{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.trust-item:hover svg{transform:translateY(-2px) scale(1.06)}
.trust-item svg{transition:transform .25s ease}
.see-tab:hover{transform:translateY(-2px)}

/* ==========================================================
   SCROLL REVEAL (tagged by animations.js; only when scripting is on)
========================================================== */



/* ==========================================================
   ROLE TABS — selected state in deep navy with a gold underline (no black)
========================================================== */
.hp-role[aria-selected="true"]{background:var(--color-deep-blue);border-color:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold)}
.hp-role:hover{border-color:var(--color-cyan)}


/* ==========================================================
   FORMER common.css — shared components, responsive rules and
   demo section styles (merged here; keep this order)
========================================================== */
/* NEXEN ONE — COMMON STYLES
   Shared component, responsive and demo section rules.
   Source order preserves component → responsive → demo overrides.
========================================================== */


/* ==========================================================
   FROM components.css
========================================================== */
/* ==========================================================
   NEXEN ONE — components.css
   Hero first, then the existing section components (unchanged
   apart from palette variables). Legacy 

/* ==========================================================
   HERO
========================================================== */
.hero{position:relative;isolation:isolate;padding:clamp(36px,5vw,72px) 0 clamp(56px,8vw,104px);overflow:clip}
/* depth without darkness: a pale navy plane behind the product visual + faint data grid */
.hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:radial-gradient(rgba(0,66,126,.09) 1px,transparent 1.3px);background-size:24px 24px;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,transparent 80%);mask-image:linear-gradient(to bottom,#000 0%,transparent 80%)}
.hero::after{content:"";position:absolute;z-index:-2;top:0;right:0;width:52%;height:92%;pointer-events:none;
  background:linear-gradient(165deg,var(--color-deep-blue-50) 0%,rgba(225,244,252,.55) 55%,rgba(245,247,250,0) 100%);
  clip-path:polygon(16% 0,100% 0,100% 100%,0 100%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:clamp(32px,5vw,72px);align-items:center}

/* ==========================================================
   HERO CONTENT
========================================================== */
.hero-copy{min-width:0}
.hero-eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 22px;font-size:.9rem;font-weight:600;color:var(--color-charcoal)}
.hero-eyebrow::before{content:"";width:28px;height:4px;border-radius:2px;background:var(--color-gold)}
.hero-eyebrow-tag{font-size:.8rem;color:#fff;background:var(--color-deep-blue);border-radius:999px;padding:3px 12px}
.hero h1{font-size:clamp(2.7rem,5.4vw,4.7rem);line-height:1.02;letter-spacing:-.02em;max-width:13ch;color:var(--color-charcoal)}
.h1-hook{cursor:help;background:linear-gradient(transparent 64%,rgba(255,215,0,.8) 64%,rgba(255,215,0,.8) 92%,transparent 92%);transition:background-size .3s}
.h1-hook:hover,.h1-hook[aria-expanded=true]{color:var(--color-deep-blue)}
.hero .lede{margin-top:24px;max-width:52ch}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero .btn-primary{box-shadow:inset 0 -3px 0 var(--color-gold),0 14px 24px -14px rgba(0,66,126,.7)}
.hero .btn-primary:hover{transform:translateY(-2px)}
.hero .btn-quiet{box-shadow:inset 0 0 0 1.5px var(--color-charcoal);background:var(--color-surface)}
.hero .btn-quiet:hover{background:var(--color-surface);color:var(--color-deep-blue);box-shadow:inset 0 0 0 1.5px var(--color-cyan),0 0 0 4px var(--color-cyan-50);transform:translateY(-2px)}

.hero-points{list-style:none;margin:40px 0 0;padding:26px 0 0;border-top:1px solid var(--color-border);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.hero-points li{display:grid;gap:10px;align-content:start;font-size:.92rem;line-height:1.45;color:var(--color-text-muted)}
.hero-points strong{display:block;color:var(--color-charcoal);font-weight:600}
.hero-points .nx-ico-box{width:40px;height:40px;border-radius:10px;border:1px solid var(--color-border);border-bottom:3px solid var(--color-gold);background:var(--color-surface);display:grid;place-items:center;color:var(--color-deep-blue)}
.hero-points li:nth-child(2) .nx-ico-box{border-bottom-color:var(--color-cyan)}
.hero-points li:nth-child(3) .nx-ico-box{border-bottom-color:var(--color-deep-blue)}

/* shared icon treatment (Lucide, ISC licence) */
.nx-ico{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* ==========================================================
   HERO VISUAL — data → path → NexenOne → analytics
========================================================== */
.nx-stage{position:relative;min-width:0;display:grid;--panel-edge:var(--color-border)}
.nx-live{width:8px;height:8px;border-radius:50%;background:var(--color-cyan);box-shadow:0 0 0 0 rgba(0,168,232,.5);animation:nx-ping 2.6s ease-out infinite}
@keyframes nx-ping{0%{box-shadow:0 0 0 0 rgba(0,168,232,.5)}70%,100%{box-shadow:0 0 0 7px rgba(0,168,232,0)}}

/* 1 · source image, framed and tinted into the palette */
.nx-source{position:relative;margin:0;aspect-ratio:560/200;border-radius:20px 20px 8px 8px;overflow:hidden;
  background:radial-gradient(120% 90% at 85% 0%,rgba(0,168,232,.45),transparent 60%),repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 1px,transparent 1px 28px),repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 1px,transparent 1px 28px),var(--color-deep-blue);
  box-shadow:0 1px 2px rgba(26,26,26,.06),0 30px 50px -34px rgba(0,66,126,.6)}
.nx-source-img.is-failed{visibility:hidden}
.nx-source-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;opacity:.92;filter:saturate(.8) contrast(1.05)}
.nx-source-tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,66,126,.18) 0%,rgba(0,66,126,.72) 62%,rgba(0,66,126,.96) 100%)}
.nx-source::after{content:"";position:absolute;left:0;top:0;width:34%;height:4px;background:var(--color-gold)}
.nx-source-cap{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--color-off-white);color:var(--color-charcoal);font-size:.76rem;font-weight:600}
.nx-source-cap small{font-size:.68rem;font-weight:500;color:var(--color-text-faint)}
.nx-chips{list-style:none;margin:0;padding:0;position:absolute;left:0;right:0;bottom:12px;display:grid;grid-template-columns:repeat(4,1fr)}
.nx-chip{display:grid;justify-items:center;gap:6px;color:#fff;font-size:.72rem;font-weight:600}
.nx-chip-ico{width:40px;height:40px;border-radius:12px;background:var(--color-off-white);color:var(--color-deep-blue);display:grid;place-items:center;box-shadow:0 6px 14px -6px rgba(0,0,0,.45);transition:transform .25s ease}
.nx-chip:hover .nx-chip-ico{transform:translateY(-3px)}
.nx-chip:nth-child(odd) .nx-chip-ico{box-shadow:inset 0 -3px 0 var(--color-cyan),0 6px 14px -6px rgba(0,0,0,.45)}
.nx-chip:nth-child(even) .nx-chip-ico{box-shadow:inset 0 -3px 0 var(--color-gold),0 6px 14px -6px rgba(0,0,0,.45)}

/* 2 + 4 · data paths (particles are added by animations.js) */
.nx-path{width:100%;height:auto;overflow:visible}
.nx-route{fill:none;stroke:var(--color-deep-blue);stroke-opacity:.38;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset 1.2s cubic-bezier(.4,0,.2,1)}
.nx-flow{fill:var(--color-gold);filter:drop-shadow(0 0 3px rgba(255,215,0,.8))}
.nx-flow.is-cyan{fill:var(--color-cyan);filter:drop-shadow(0 0 3px rgba(0,168,232,.7))}

.nx-hub,.nx-panel{transition:opacity .6s ease .5s,transform .6s cubic-bezier(.2,.7,.2,1) .5s}
.nx-panel{transition-delay:1s}

/* 3 · platform node */
.nx-hub{justify-self:center;display:flex;align-items:center;gap:14px;padding:10px 16px 10px 10px;border-radius:16px;background:var(--color-deep-blue);color:#fff;
  box-shadow:0 0 0 5px var(--color-off-white),0 0 0 7px rgba(255,215,0,.9),0 18px 30px -14px rgba(0,66,126,.7)}
.nx-hub-mark{width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.12);display:grid;place-items:center;color:#fff}
.nx-hub-mark svg{width:28px;height:28px}
.nx-hub-text{display:grid;line-height:1.2}
.nx-hub-text strong{font-family:var(--serif);font-weight:400;font-size:1.25rem;letter-spacing:-.01em}
.nx-hub-text small{font-size:.72rem;color:rgba(255,255,255,.78)}
.nx-hub-status{display:inline-flex;align-items:center;gap:7px;margin-left:6px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.12);font-size:.72rem;font-weight:600}

/* 5 · analytics panel: off-white surface, KPI strip, line + bar charts */
.nx-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px 8px 20px 20px;overflow:hidden;box-shadow:0 1px 2px rgba(26,26,26,.05),0 34px 50px -34px rgba(0,66,126,.55)}
.nx-kpis{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--color-border);background:var(--color-off-white)}
.nx-kpi{display:grid;gap:6px;align-content:start;padding:14px 14px 12px;min-width:0;border-right:1px solid var(--color-border)}
.nx-kpi:last-child{border-right:0}
.nx-kpi.is-key{box-shadow:inset 0 3px 0 var(--color-gold);background:var(--color-surface)}
.nx-kpi-label{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:var(--color-text-muted);line-height:1.2}
.nx-kpi-label .nx-ico{width:15px;height:15px;color:var(--color-deep-blue)}
.nx-kpi-value{font-family:var(--serif);font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--color-charcoal)}
.nx-kpi-delta{display:inline-flex;align-items:center;gap:5px;justify-self:start;font:600 .72rem/1 var(--sans);border-radius:999px;padding:4px 8px}
.nx-kpi-delta .nx-ico{width:13px;height:13px}
.nx-kpi-delta.is-up{color:var(--color-deep-blue);background:var(--color-cyan-50)}
.nx-kpi-delta.is-down{color:var(--color-charcoal);background:var(--color-surface);box-shadow:inset 0 0 0 1px var(--color-border)}
.nx-charts{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:18px;padding:14px 16px 16px}
.nx-chart{margin:0;min-width:0}
.nx-chart-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:.74rem;font-weight:600;color:var(--color-charcoal)}
.nx-legend{display:inline-flex;gap:12px;font-weight:500;color:var(--color-text-muted)}
.nx-legend span{display:inline-flex;align-items:center;gap:6px}
.nx-legend i{display:block;width:14px;height:0;border-top:3px solid var(--color-deep-blue);border-radius:2px}
.nx-legend i.k-alt{border-top-color:var(--color-cyan)}
.nx-trend,.nx-bars{width:100%;height:auto;overflow:visible}
.nx-axis{stroke:var(--color-border);stroke-width:1;vector-effect:non-scaling-stroke}
.nx-gridline{stroke:var(--color-border);stroke-width:1;stroke-dasharray:2 4;vector-effect:non-scaling-stroke}
.nx-area{fill-opacity:1;transition:opacity .9s ease 1.4s}
/* pathLength="100" is set in JS, so dash units are percentages of the line */
.nx-line{fill:none;stroke:var(--color-deep-blue);stroke-width:2.75;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset 1.6s cubic-bezier(.4,0,.2,1) 1.1s}
.nx-line-alt{stroke:var(--color-cyan);stroke-width:2;transition-delay:1.5s}
.nx-dot{fill:var(--color-surface);stroke:var(--color-deep-blue);stroke-width:2;transform-box:fill-box;transform-origin:center;transition:opacity .35s ease,transform .35s cubic-bezier(.3,1.6,.5,1);transition-delay:var(--d,0s)}
.nx-dot.is-last{fill:var(--color-gold);stroke:var(--color-charcoal);stroke-width:2.25}
.nx-halo{fill:var(--color-gold);fill-opacity:.28;transform-box:fill-box;transform-origin:center;animation:nx-halo 3s ease-in-out infinite}
@keyframes nx-halo{50%{transform:scale(1.5);fill-opacity:.1}}
.nx-bar{fill:var(--color-deep-blue);transform-box:fill-box;transform-origin:50% 100%;transition:transform .8s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0s)}
.nx-bar.is-peak{fill:var(--color-gold)}
.nx-bar.is-now{fill:var(--color-cyan)}


/* entrance: one calm, staggered rise for the copy */
@keyframes nx-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero-copy > *{animation:nx-rise .6s cubic-bezier(.2,.7,.2,1) both}
.hero-copy > :nth-child(1){animation-delay:.04s}
.hero-copy > :nth-child(2){animation-delay:.10s}
.hero-copy > :nth-child(4){animation-delay:.16s}
.hero-copy > :nth-child(5){animation-delay:.22s}
.hero-copy > :nth-child(6){animation-delay:.28s}
.nx-source{animation:nx-rise .7s cubic-bezier(.2,.7,.2,1) .1s both}

/* role preview band (existing .hp engine, rendered by main.js) */
.hero-roles{margin-top:clamp(40px,5vw,64px);max-width:860px;padding:18px 22px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-top:3px solid var(--color-cyan);border-radius:16px;box-shadow:0 24px 40px -32px rgba(0,66,126,.45)}
.hero-roles .hp{gap:0}
.hero-roles .hp-lab{color:var(--color-text-faint);margin:0}
.hero-roles .hp-card{border-radius:12px;box-shadow:none}


/* ==========================================================
   HERO — RUN / BUILD CHOOSER (existing, unchanged)
========================================================== */
/* run / build chooser */
.choose{margin-top:clamp(48px,6vw,72px);border-top:1px solid var(--rule);padding-top:28px}
.choose-q{font-weight:600;margin-bottom:16px}
.choose-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}

.choice{text-align:left;background:transparent;border:1.5px solid var(--rule);border-radius:14px;padding:18px 20px;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:start;transition:border-color .2s,background .2s}
.choice:hover{border-color:var(--ink-soft)}
.choice[aria-checked=true]{border-color:var(--blue);background:var(--card)}
.choice .radio{grid-row:span 2;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--ink-soft);margin-top:4px;position:relative}
.choice[aria-checked=true] .radio{border-color:var(--blue)}
.choice[aria-checked=true] .radio::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--blue)}
.choice strong{font-size:1.08rem}
.choice span.sub{color:var(--ink-soft);font-size:.94rem}
.fit{margin-top:14px;background:var(--card);border-radius:14px;padding:20px 22px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;border:1px solid var(--rule)}
.fit[hidden]{display:none}
.fit ul{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:6px;color:var(--ink-soft);font-size:.96rem}
.fit li{padding-left:22px;position:relative}
.fit li::before{content:"";position:absolute;left:2px;top:.68em;width:10px;height:2px;background:var(--blue)}


/* ---------- problem: scattered → systems ---------- */
.problem{background:var(--paper-deep)}
.problem-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(32px,5vw,72px);align-items:center}
.toggle{display:inline-flex;background:var(--paper);border-radius:999px;padding:4px;margin-top:28px;border:1px solid var(--rule)}
.toggle button{border:0;background:transparent;padding:9px 18px;border-radius:999px;font-weight:600;font-size:.93rem;color:var(--ink-soft)}
.toggle button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.desk{position:relative;min-height:440px;display:grid;align-items:center}
.layer[hidden]{display:none}

/* today: scattered, but never overlapping */
.scatter{display:grid;grid-template-columns:1fr 1fr;gap:40px 32px;padding:12px 8px}
.frag{background:var(--card);border:1px solid var(--rule);border-radius:10px;padding:16px 18px;box-shadow:0 12px 30px -18px rgba(23,26,46,.4);min-width:0}
.frag .k{font-size:.78rem;color:var(--ink-faint);font-family:var(--mono);overflow-wrap:anywhere}
.frag .t{font-weight:600;font-size:1rem;margin-top:4px}
.scatter .f1{transform:rotate(-3deg) translateY(6px)}
.scatter .f2{transform:rotate(2.5deg) translateY(-10px)}
.scatter .f3{transform:rotate(2deg) translateY(4px)}
.scatter .f4{transform:rotate(-2.5deg) translateY(18px)}
.layer.enter .frag{animation:scatterIn .6s cubic-bezier(.3,.1,.2,1) backwards}
.layer.enter .f2{animation-delay:.06s}.layer.enter .f3{animation-delay:.12s}.layer.enter .f4{animation-delay:.18s}
@keyframes scatterIn{from{opacity:0;translate:0 14px}}

/* with NexenOne: four systems in one platform */
.platform{background:var(--card);border:1px solid var(--rule);border-radius:16px;box-shadow:0 30px 60px -36px rgba(23,26,46,.45);overflow:hidden}
.platform-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--rule);background:#fff}
.platform-bar svg{width:20px;height:20px;flex:none}
.platform-bar strong{font-family:var(--serif);font-weight:400;font-size:1.1rem}
.platform-bar span{margin-left:auto;font-size:.8rem;color:var(--ink-soft);background:var(--blue-wash);color:var(--blue-deep);border-radius:999px;padding:3px 10px;font-weight:600}
.systems{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule)}
.sys{background:var(--card);padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.sys h4{margin:0;font-size:.98rem;font-weight:600;display:flex;align-items:center;gap:8px}
.sys h4::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--blue);flex:none}
.sys .what{font-size:.85rem;color:var(--ink-soft);line-height:1.45}
.sys .was{margin-top:auto;padding-top:8px;border-top:1px dashed var(--rule);font-size:.76rem;color:var(--ink-faint)}
.sys .was s{font-family:var(--mono);text-decoration-color:var(--ink-faint)}
.layer.enter .sys{animation:sysIn .5s cubic-bezier(.3,.1,.2,1) backwards}
.layer.enter .sys:nth-child(2){animation-delay:.08s}.layer.enter .sys:nth-child(3){animation-delay:.16s}.layer.enter .sys:nth-child(4){animation-delay:.24s}
@keyframes sysIn{from{opacity:0;translate:0 10px}}
/* mini UIs */
.rows{display:grid;gap:6px}
.row{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;font-size:.8rem;background:#fff;border:1px solid var(--paper-deep);border-radius:8px;padding:7px 9px}
.row .id{font-family:var(--mono);font-size:.72rem;color:var(--blue-deep);grid-row:span 2;padding-top:1px}
.row .nm{font-weight:500}
.row .meta{color:var(--ink-soft);font-size:.74rem}
.row.hl{border-color:var(--blue);box-shadow:0 0 0 2px var(--blue-wash)}
.ctrl-chip{font-size:.78rem;font-weight:600;display:inline-flex;gap:6px;align-items:center;align-self:flex-start;background:var(--blue-wash);color:var(--blue-deep);border-radius:6px;padding:4px 8px}
.ctrl-chip code{font-family:var(--mono);font-weight:500;font-size:.72rem}
.vers{display:grid;gap:0;font-size:.8rem}
.ver{display:grid;grid-template-columns:36px 1fr auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--paper-deep)}
.ver:last-child{border-bottom:0}
.ver b{font-family:var(--mono);font-weight:500;font-size:.74rem}
.ver .st{font-size:.7rem;font-weight:600;border-radius:999px;padding:2px 8px;background:var(--paper-deep);color:var(--ink-soft)}
.ver.cur .st{background:var(--blue);color:#fff}
.ver .by{color:var(--ink-soft);font-size:.74rem}
.auditor{font-size:.76rem;color:var(--ink-soft);display:flex;gap:6px;align-items:center}
.auditor svg{width:14px;height:14px;color:var(--blue)}
.ac-total{display:flex;align-items:baseline;gap:8px}
.ac-total .big{font-family:var(--serif);font-size:2rem;line-height:1;color:var(--ink)}
.ac-total span{font-size:.8rem;color:var(--ink-soft)}
.ac{display:grid;gap:7px}
.ac-row{display:grid;grid-template-columns:1fr 22px;gap:4px 10px;font-size:.78rem;align-items:center}
.ac-row .bar{grid-column:1/-1;height:5px;border-radius:3px;background:var(--paper-deep);overflow:hidden}
.ac-row .bar i{display:block;height:100%;background:var(--blue);border-radius:3px}
.ac-row.over .bar i{background:#B4483A}
.ac-row.over .lbl{color:#9A3528}
.ac-row .c{font-family:var(--mono);font-size:.74rem;text-align:right}



/* ---------- why an operating system ---------- */
.os-hook{display:inline-block;margin-top:20px;font-weight:600;color:var(--blue);text-decoration:none;border-bottom:1.5px dashed var(--blue);padding-bottom:1px}
.os-hook:hover{border-bottom-style:solid}
.os-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,4vw,56px);align-items:start}
.os-stack{display:grid;gap:8px}
.layer-btn{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 16px;text-align:left;border:1.5px solid var(--rule);background:var(--card);border-radius:12px;padding:14px 18px;transition:background .2s,border-color .2s,color .2s,transform .2s}
.layer-btn:hover{border-color:var(--ink-soft)}
.layer-btn .lb-name{font-weight:600}
.layer-btn .lb-os{font-size:.82rem;color:var(--ink-faint)}
.layer-btn .lb-apps{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.layer-btn .lb-apps i{font-style:normal;font-size:.76rem;font-weight:600;background:var(--blue);color:#fff;border-radius:999px;padding:3px 10px}
.layer-btn .lb-apps i.new{animation:popin .5s cubic-bezier(.3,1.5,.5,1)}
@keyframes popin{from{transform:scale(.4);opacity:0}}
.layer-btn.l-kernel{background:var(--paper-deep)}
.layer-btn[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.layer-btn[aria-pressed=true] .lb-os{color:#9DB3F5}
.os-detail{position:sticky;top:96px;background:var(--card);border:1px solid var(--rule);border-radius:18px;padding:clamp(22px,3vw,32px)}
.os-like{font-size:.85rem;font-weight:600;color:var(--blue)}
.os-detail h3{font-size:1.7rem;margin:4px 0 10px}
.os-detail > p:not(.os-like){color:var(--ink-soft)}
#os-points{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:7px}
#os-points li{padding-left:22px;position:relative;font-size:.95rem}
#os-points li::before{content:"";position:absolute;left:1px;top:.42em;width:10px;height:6px;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg)}
.os-try{margin-top:22px;padding-top:18px;border-top:1px dashed var(--rule)}
.os-try-h{font-weight:600;font-size:.92rem;margin-bottom:10px}
.os-add{display:flex;flex-wrap:wrap;gap:8px}
.os-add button{font:inherit;font-size:.88rem;font-weight:600;border:1.5px dashed var(--blue);color:var(--blue);background:transparent;border-radius:999px;padding:6px 14px}
.os-add button small{display:block;font-size:.7rem;font-weight:500;color:var(--ink-soft);margin-top:1px}
.os-add button{border-radius:14px;text-align:left}
.os-add button:hover{background:var(--blue-wash)}
.os-add button:disabled{opacity:.4;cursor:default}
.os-steps{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:6px;font-size:.9rem}
.os-steps li{display:flex;gap:10px;align-items:flex-start;color:var(--ink-faint);transition:color .3s}
.os-steps li::before{content:"";width:14px;height:14px;border-radius:50%;border:1.5px solid currentColor;flex:none;margin-top:.2em}
.os-steps li.st-done{color:var(--ink)}
.os-steps li.st-done::before{background:var(--blue);border-color:var(--blue);box-shadow:inset 0 0 0 3px var(--card)}
.os-steps li.ready{color:var(--blue-deep);font-weight:600}
.os-steps li.ready::before{background:var(--blue);border-color:var(--blue)}

.os-dash{margin-top:28px;background:var(--card);border:1px solid var(--rule);border-radius:20px;padding:clamp(22px,3vw,34px);scroll-margin-top:140px;animation:fadein .4s}
.os-dash[hidden]{display:none}
.dash-head{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:flex-end;margin-bottom:20px;padding-bottom:16px;border-bottom:1.5px solid var(--ink)}
.dash-head h3{font-size:1.8rem;margin-top:2px}
.dash-tabs{display:flex;flex-wrap:wrap;gap:6px}
.dash-tabs button{font:inherit;font-size:.84rem;font-weight:600;border:1px solid var(--rule);background:transparent;border-radius:999px;padding:6px 12px;color:var(--ink-soft)}
.dash-tabs button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.dash-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,4vw,48px)}
.dash-hero{display:flex;gap:18px;align-items:center;margin-bottom:18px}
.dash-num{font-family:var(--serif);font-size:clamp(3.2rem,6vw,4.6rem);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;min-width:2.6ch}
.dash-hero p{color:var(--ink-soft);max-width:34ch}
.cov-bar{display:flex;gap:2px;height:22px;border-radius:6px;overflow:hidden;background:var(--card)}
.cov-seg{width:0;height:100%;transition:width .9s cubic-bezier(.3,.1,.2,1);cursor:default}
.os-dash.grow .cov-seg{width:var(--w)}
.cov-seg:first-child{border-radius:4px 0 0 4px}.cov-seg:last-child{border-radius:0 4px 4px 0}
.cov-seg.met,.cov-legend i.met{background:#1E45B8}
.cov-seg.part,.cov-legend i.part{background:#6F8FEA}
.cov-seg.gap,.cov-legend i.gap{background:repeating-linear-gradient(45deg,var(--paper-deep) 0 5px,#D6CCBA 5px 7px);box-shadow:inset 0 0 0 1px #CFC4B1}
.cov-seg:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.cov-legend{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.88rem;color:var(--ink-soft)}
.cov-legend li{display:flex;align-items:center;gap:8px}
.cov-legend i{width:12px;height:12px;border-radius:3px;display:inline-block}
.cov-legend b{color:var(--ink);font-variant-numeric:tabular-nums}
.cov-tip{position:fixed;z-index:70;transform:translate(-50%,calc(-100% - 12px));background:var(--ink);color:#fff;font-size:.82rem;padding:7px 10px;border-radius:8px;pointer-events:none;white-space:nowrap}
.cov-tip[hidden]{display:none}
.dash-compare{display:grid;grid-template-columns:auto 1fr auto;gap:8px 12px;align-items:center;margin:22px 0 4px;font-size:.84rem;color:var(--ink-soft)}
.dash-compare b{color:var(--ink);font-variant-numeric:tabular-nums;text-align:right}
.dc-bar{height:6px;border-radius:3px;background:var(--paper-deep);overflow:hidden}
.dc-bar i{display:block;height:100%;border-radius:3px;background:#1E45B8;transition:width .9s .2s}
.os-dash h4{margin:22px 0 10px;font-size:.92rem;font-weight:600}
.reused{display:flex;flex-wrap:wrap;gap:6px}
.reused span{font-size:.82rem;background:var(--blue-wash);color:var(--blue-deep);border-radius:6px;padding:5px 9px}
.dash-side h4{margin-top:0}
.dash-sub{font-size:.9rem;color:var(--ink-soft)}
.dash-actions{margin:14px 0 0;padding:0;list-style:none;counter-reset:da;display:grid;gap:10px}
.dash-actions li{counter-increment:da;display:grid;grid-template-columns:26px 1fr;gap:2px 10px;background:#fff;border:1px solid var(--rule);border-radius:10px;padding:12px}
.dash-actions li::before{content:counter(da);grid-row:span 2;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font-size:.74rem;font-weight:600;display:grid;place-items:center}
.da-t{font-weight:600;font-size:.93rem}
.da-m{font-size:.8rem;color:var(--ink-soft)}
.da-m code{font-family:var(--mono);font-size:.74rem;color:var(--blue-deep);margin-right:8px}
.dash-decide{margin-top:14px}
.dash-decide.decided .approve{background:var(--decide-wash);border-color:var(--decide);color:var(--ink);cursor:default}
.dash-decide.decided [data-dash-edit]{display:none}
.dash-foot{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;margin-top:24px;padding-top:16px;border-top:1px solid var(--rule)}
.dash-foot p{font-size:.84rem;color:var(--ink-faint);max-width:70ch}



/* ---------- mapping (the interactive moment) ---------- */
.map-grid{display:grid;grid-template-columns:320px 1fr;gap:clamp(24px,4vw,56px);align-items:start}
.controls{display:grid;gap:8px}
.control{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:transparent;border:1.5px solid var(--rule);border-radius:12px;padding:14px 16px;font-weight:600;transition:border-color .2s,background .2s,color .2s}
.control:hover{border-color:var(--ink-soft)}
.control[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.control small{white-space:nowrap;font-family:var(--mono);font-weight:400;font-size:.74rem;opacity:.7}
.fw-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;position:relative}
.fw{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:20px;min-height:280px;transition:border-color .3s}
.fw.hit{border-color:var(--blue)}
.fw h3{font-size:1.3rem}
.fw .fw-sub{font-size:.85rem;color:var(--ink-soft);margin-top:2px;margin-bottom:16px}
.reqs{display:grid;gap:8px}
.req{font-family:var(--mono);font-size:.78rem;padding:8px 10px;border-radius:8px;background:var(--paper);color:var(--ink-faint);transition:background .3s,color .3s,transform .3s;line-height:1.4}
.req b{display:block;font-family:var(--sans);font-weight:500;font-size:.86rem;color:inherit}
.req.on{background:var(--blue);color:#fff;transform:translateX(4px)}
.map-summary{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px 28px;align-items:baseline;border-top:1px solid var(--rule);padding-top:18px}
.map-summary .num{font-family:var(--serif);font-size:2.4rem;line-height:1;color:var(--blue)}
.map-summary .lbl{color:var(--ink-soft);font-size:.95rem;margin-left:6px}
.map-note{font-size:.84rem;color:var(--ink-faint);margin-top:14px}



/* ==========================================================
   HERO ROLE PREVIEW (.hp engine rendered by assets/js/main.js)
   Layout of the surrounding product window: see HERO ANALYTICS PANEL.
========================================================== */
.h1-pop{margin-top:14px;max-width:46ch;background:var(--ink);color:var(--color-off-white);font-size:.95rem;line-height:1.5;border-radius:12px;padding:12px 16px;animation:fadein .2s}
.h1-pop a{color:var(--color-cyan);font-weight:600;margin-left:4px}
.h1-pop[hidden]{display:none}
.hp{display:grid;gap:12px;min-width:0}
.hp-roles{display:flex;flex-wrap:wrap;gap:0 6px;align-items:center;padding:0;row-gap:0}
.hp-roles::-webkit-scrollbar{display:none}
.hp-lab{flex-basis:100%;font-size:.84rem;color:var(--ink-faint);margin:0;line-height:1.2}
.hp-role{flex:none;font:inherit;font-size:.86rem;font-weight:600;border:1px solid var(--rule);background:var(--card);color:var(--ink-soft);border-radius:999px;padding:7px 13px;transition:all .2s}
.hp-role:hover{border-color:var(--ink-soft);color:var(--ink)}
.hp-role[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:#fff}

.hp-card{position:relative;background:var(--card);border:1px solid var(--rule);border-radius:18px;box-shadow:0 30px 60px -36px rgba(23,26,46,.4);overflow:hidden;display:flex;flex-direction:column}
.hp-card.in .hp-body{animation:hpin .45s cubic-bezier(.3,.1,.2,1)}
@keyframes hpin{from{opacity:0;transform:translateY(8px)}}
.hp-body{padding:16px 22px 8px;display:grid;gap:14px;flex:1;align-content:center}
.hp-q{font-family:var(--serif);font-size:clamp(1.35rem,2vw,1.6rem);line-height:1.2}
.hp-voice{display:flex;align-items:center;gap:8px;font-family:var(--sans);font-size:.76rem;font-weight:600;color:var(--blue);margin-bottom:6px}
.hp-voice svg{width:16px;height:16px}
.hp-voice .vq-wave i{background:var(--blue)}
.hp-rows{display:grid;gap:6px}
.hp-row{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff;border:1px solid var(--paper-deep);border-radius:10px;padding:9px 12px}
.hp-row b{display:block;font-size:.9rem;font-weight:600}
.hp-row small{font-size:.78rem;color:var(--ink-faint)}
.hp-ctx{display:inline-flex;align-self:flex-start;width:fit-content;align-items:center;gap:6px;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--blue-deep);background:var(--blue-wash);border-radius:999px;padding:3px 10px;margin:0 0 6px}
.hp-chip{flex:none;font-size:.74rem;font-weight:600;border-radius:999px;padding:3px 10px;white-space:nowrap}
.hp-chip.ok{background:var(--blue-wash);color:var(--blue-deep)}
.hp-chip.esc{background:var(--color-alert-50);color:var(--color-alert)}
.hp-chip.warn{background:var(--paper-deep);color:var(--ink-soft)}
.hp-chip.new{background:var(--blue);color:#fff}
.hp-chip.dec{background:var(--decide-wash);color:var(--color-gold-ink)}
.hp-chip.muted{background:transparent;color:var(--ink-faint);border:1px solid var(--rule)}
.hp-bars p{font-size:.84rem;color:var(--ink-soft);margin-bottom:8px}
.hp-bar{display:flex;gap:2px;height:18px;border-radius:5px;overflow:hidden;background:var(--card)}
.hp-bar i{width:0;height:100%;transition:width .9s cubic-bezier(.3,.1,.2,1)}
.hp-body.grow .hp-bar i{width:var(--w)}
.hp-bar i.a,.hp-leg i.a,.hp-bar i.met,.hp-leg i.met{background:var(--color-deep-blue)}
.hp-bar i.b,.hp-leg i.b{background:var(--color-alert)}
.hp-bar i.part,.hp-leg i.part{background:var(--color-cyan)}
.hp-bar i.gap,.hp-leg i.gap{background:repeating-linear-gradient(45deg,var(--paper-deep) 0 5px,#D6CCBA 5px 7px)}
.hp-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hp-tile{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;border-left:5px solid var(--color-deep-blue);background:var(--blue-wash)}
.hp-tile b{font:600 1.7rem/1.1 var(--serif);color:var(--ink)}
.hp-tile span{font-size:.84rem;color:var(--ink-soft);line-height:1.25}
.hp-tile.b{border-left-color:var(--color-alert);background:var(--color-alert-50)}
.hp-leg{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px;font-size:.84rem;color:var(--ink-soft)}
.hp-leg span{display:flex;align-items:center;gap:7px}
.hp-leg i{width:11px;height:11px;border-radius:3px;display:inline-block}
.hp-leg b{color:var(--ink)}
.hp-diff p{font-size:.9rem}
.hp-line{background:#fff;border:1px solid var(--paper-deep);border-radius:10px;padding:10px 12px;margin-top:8px}
.hp-tl{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.hp-tl li{font-size:.78rem;font-weight:600;background:var(--blue-wash);color:var(--blue-deep);border-radius:999px;padding:3px 10px}
.hp-tl li:last-child{background:var(--blue);color:#fff}
.hp-quote{background:#fff;border:1px solid var(--paper-deep);border-left:3px solid var(--blue);border-radius:0 10px 10px 0;padding:12px 14px;display:grid;gap:6px;justify-items:start}
.hp-quote small{font-size:.76rem;color:var(--blue);font-weight:600}
.hp-quote p{font-size:.92rem}
.hp-res{font-weight:600}
.hp-al{font-size:.82rem;color:var(--ink-soft);display:flex;gap:8px;align-items:center;margin-top:-6px}
.hp-al::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px var(--blue-wash);flex:none}
.hp-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 22px 16px}
.hp-link{font-weight:600;color:var(--blue);text-decoration:none}
.hp-link::after{content:"\00a0→"}
.hp-link:hover{text-decoration:underline;text-underline-offset:3px}
.hp-ctrl{display:flex;align-items:center;gap:10px}
.hp-dots{display:flex;gap:6px}
.hp-dots button{width:8px;height:8px;border-radius:50%;border:0;padding:0;background:var(--rule)}
.hp-dots button[aria-current=true]{background:var(--ink);width:20px;border-radius:4px}
.hp-pause{width:30px;height:30px;border-radius:50%;border:1px solid var(--rule);background:#fff;display:grid;place-items:center}
.hp-pause svg{width:11px;height:11px;fill:var(--ink)}
.hp-partner{font-size:.86rem;color:var(--ink-soft)}
.hp-partner a{color:var(--blue);font-weight:600;text-underline-offset:3px}
.hp-prog{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--paper-deep)}
.hp-prog i{display:block;height:100%;width:0;background:var(--blue)}
@keyframes hpprog{from{width:0}to{width:100%}}



/* ---------- bridges ---------- */
.bridge-wrap{margin-top:clamp(40px,5vw,64px)}
.bridge{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-size:clamp(1.15rem,1.8vw,1.35rem);color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:4px}
.bridge span{font-family:var(--sans);color:var(--blue);transition:transform .2s}
.bridge:hover span{transform:translateY(3px)}
.pilot .bridge{color:#fff;border-bottom-color:var(--night-rule)}
.pilot .bridge span{color:#9DB3F5}

.hs-foot{font-size:.76rem;color:var(--ink-faint);margin-top:4px}
.hp-grid{display:grid;gap:3px;font-size:.84rem}
.hg-r{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:4px;align-items:center;background:#fff;border:1px solid var(--paper-deep);border-radius:8px;padding:6px 10px}
.hg-h{background:transparent;border:0;padding:0 10px;font-size:.74rem;font-weight:600;color:var(--ink-soft)}
.hg-h span,.hg-c{text-align:center}
.hg-l{font-weight:600}
.hg-l small{display:block;font-weight:400;font-size:.74rem;color:var(--color-alert)}
.hg-r.hot{border-color:#E4B5AA;background:#FCF3F1}
.hg-c{font-size:1rem;line-height:1}
.hg-c.ok{color:var(--color-deep-blue)}.hg-c.watch{color:var(--color-alert)}.hg-c.na{color:var(--ink-faint)}
.hs-foot .hg-c{font-size:.8rem;margin-left:6px}
.hp-ins{background:var(--color-deep-blue);color:#fff;border-radius:12px;padding:12px 16px 12px 12px;display:grid;gap:10px;border-left:4px solid var(--color-gold)}
.hp-ins p{font-size:.9rem;line-height:1.45}
.hp-ins b{color:#fff}
.hp-act{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.hp-do{font:inherit;font-size:.84rem;font-weight:600;background:var(--decide);color:var(--night);border:0;border-radius:8px;padding:7px 12px}
.hp-do:hover{background:var(--color-gold-600)}
.hp-do.did{background:var(--decide-wash);color:var(--night)}
.hp-done{font-size:.8rem;color:rgba(245,247,250,.72)}


/* ---------- controlled documents ---------- */
.cd-scenario{background:var(--card);border:1px dashed var(--blue);border-radius:12px;padding:12px 16px;margin-bottom:16px;max-width:760px}
.cd-try{font:inherit;font-weight:600;color:#fff;background:var(--blue);border:0;border-radius:999px;padding:3px 12px;margin-right:6px}
.cd-try:hover{background:var(--blue-deep)}
.cd-scenario{display:block}
.cd-app{background:#FBFAF6;border:1px solid var(--rule);border-radius:16px;overflow:hidden;box-shadow:0 30px 60px -36px rgba(23,26,46,.35)}
.cd-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--rule);counter-reset:cs}
.cd-steps li{counter-increment:cs;padding:12px 16px;font-size:.88rem;font-weight:600;color:var(--ink-faint);display:flex;gap:8px;align-items:center;border-right:1px solid var(--rule)}
.cd-steps li:last-child{border-right:0}
.cd-steps li::before{content:counter(cs);width:22px;height:22px;border-radius:50%;border:1.5px solid currentColor;display:grid;place-items:center;font-size:.74rem;flex:none}
.cd-steps li.on{color:var(--ink);background:#fff}
.cd-steps li.on::before{background:var(--blue);border-color:var(--blue);color:#fff}
.cd-steps li.done{color:var(--blue-deep)}
.cd-steps li.done::before{content:"✓";background:var(--blue-wash);border-color:var(--blue-wash)}
.cd-body{padding:clamp(16px,2.5vw,24px);min-height:360px;display:flex;flex-direction:column;gap:14px}
.cd-note{font-size:.88rem;background:var(--blue-wash);border-left:3px solid var(--blue);border-radius:0 10px 10px 0;padding:10px 14px}
.cd-form{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.cd-form.two-col{grid-template-columns:1fr 1fr}
.cd-form label{display:grid;gap:5px;font-size:.82rem;font-weight:600}
.cd-form .full{grid-column:1/-1}
.cd-form input,.cd-form select,.cd-form textarea{font:inherit;font-size:.93rem;font-weight:400;padding:9px 11px;border:1.5px solid var(--rule);border-radius:9px;background:#fff;color:var(--ink);min-width:0;resize:vertical}
.cd-form input:disabled{background:var(--paper);color:var(--ink-soft)}
.cd-form textarea.invalid{border-color:#A33A2B}
.cd-form :focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash)}
.cd-sub{font-size:.82rem;font-weight:600;margin:0 0 -6px}
.cd-types{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cd-types label{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--rule);border-radius:10px;padding:10px 12px;cursor:pointer;font-size:.84rem;color:var(--ink-soft);background:#fff}
.cd-types label.on{border-color:var(--blue)}
.cd-types b{display:block;color:var(--ink);font-size:.93rem}
.cd-types input{accent-color:var(--blue);margin-top:3px}
.cd-foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:auto;padding-top:12px;border-top:1px solid var(--rule)}
.cd-foot .actions{margin:0}
.cd-hint{font-size:.84rem;color:var(--ink-faint)}
.btn.pulse{animation:pulse 0.9s ease 2}
@keyframes pulse{50%{box-shadow:0 0 0 8px var(--blue-wash)}}
.cd-found{font-size:.93rem}
.cd-table{border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:#fff}
.cd-tr{display:grid;grid-template-columns:34px 1.1fr 1.3fr 1.3fr 64px;gap:12px;align-items:start;padding:11px 12px;border-top:1px solid var(--paper-deep);font-size:.87rem;cursor:pointer}
.cd-tr:first-child{border-top:0}
.cd-th{background:var(--paper);font-size:.74rem;font-weight:600;color:var(--ink-soft);cursor:default}
.cd-tr input{accent-color:var(--blue);width:16px;height:16px;margin-top:2px}
.cd-doc b{display:block;font-weight:600}
.cd-doc small{color:var(--ink-faint)}
.cd-n{text-align:right;font-variant-numeric:tabular-nums}
mark.old{background:#F4D9D4;color:#8A2A1D;text-decoration:line-through;border-radius:3px;padding:0 2px}
mark.new{background:var(--blue-wash);color:var(--blue-deep);border-radius:3px;padding:0 2px;font-weight:600}
.cd-empty{display:grid;gap:8px;justify-items:start}
.cd-sum,.cd-rfc{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;background:#fff;border:1px solid var(--rule);border-left:3px solid var(--blue);border-radius:0 10px 10px 0;padding:10px 14px;font-size:.92rem}
.cd-sum span,.cd-rfc span{color:var(--ink-soft)}
.cd-status{margin-left:auto;font-size:.76rem;font-weight:600;border-radius:999px;padding:3px 10px;background:var(--paper-deep);color:var(--ink-soft)!important}
.cd-status.ok{background:var(--blue);color:#fff!important}
.cd-sub2{font-size:.88rem;color:var(--ink-soft)}
.cd-flow{list-style:none;margin:0;padding:0;display:grid;gap:0}
.cd-flow li{display:grid;grid-template-columns:22px 1fr;gap:0 12px;padding:8px 0;position:relative;color:var(--ink-faint)}
.cd-flow li::before{content:"";width:14px;height:14px;border-radius:50%;border:2px solid var(--rule);background:#fff;grid-row:span 2;margin-top:3px;z-index:1}
.cd-flow li::after{content:"";position:absolute;left:8px;top:24px;bottom:-8px;width:2px;background:var(--rule)}
.cd-flow li:last-child::after{display:none}
.cd-flow b{font-size:.92rem}
.cd-flow span{font-size:.82rem}
.cd-flow li.st-done{color:var(--ink)}
.cd-flow li.st-done::before{background:var(--blue);border-color:var(--blue)}
.cd-flow li.st-done::after{background:var(--blue)}
.cd-flow li.signed::before{background:var(--decide);border-color:var(--decide)}
.cd-flow li.signed span{color:#8A5B08;font-weight:600}
.cd-integrity{margin-top:clamp(32px,4vw,48px)}
.cd-integrity h3{font-size:clamp(1.5rem,2.4vw,1.9rem);margin-bottom:16px}
.cd-int-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1.5px solid var(--ink)}
.cd-int{padding:18px 18px 18px 0;display:grid;gap:6px;align-content:start}
.cd-int + .cd-int{padding-left:18px;border-left:1px solid var(--rule)}
.cd-int svg{width:26px;height:26px;color:var(--blue)}
.cd-int strong{font-weight:600}
.cd-int p{font-size:.88rem;color:var(--ink-soft)}



/* ---------- NexenPilot (night section) ---------- */
.pilot{background:var(--night);color:#EDEBF5}
.pilot h2{color:#fff}
.pilot .lede{color:#B9BBD3}
.pilot-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,5vw,72px);align-items:start}
.steps{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:4px}
.step{display:grid;grid-template-columns:36px 1fr;gap:14px;padding:14px 12px;border-radius:12px;cursor:pointer;background:transparent;border:0;text-align:left;color:inherit;width:100%;transition:background .2s}
.step:hover{background:var(--night-2)}
.step .n{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--night-rule);display:grid;place-items:center;font-family:var(--mono);font-size:.8rem;color:#B9BBD3;transition:all .25s}
.step strong{display:block;color:#fff;font-weight:600}
.step span.d{font-size:.93rem;color:#9C9FBC}
.step.active{background:var(--night-2)}
.step.active .n{background:var(--blue);border-color:var(--blue);color:#fff}
.step.active[data-i="2"] .n{background:var(--decide);border-color:var(--decide);color:var(--night)}
.brand-line{font-family:var(--serif);font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.25;color:#fff;margin-top:22px;padding-left:16px;border-left:2px solid var(--decide);max-width:26ch}
.pilot-controls{display:flex;gap:14px;align-items:center;margin-top:20px;font-size:.9rem;color:#9C9FBC}
.pilot-controls button{background:none;border:1px solid var(--night-rule);color:#EDEBF5;border-radius:999px;padding:7px 14px;font-size:.88rem}
.pilot-controls button:hover{border-color:#8A8FB8}
/* mock UI */
.app{background:#FBFAF6;color:var(--ink);border-radius:16px;overflow:hidden;box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.app-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--rule);font-size:.86rem;color:var(--ink-soft)}
.app-bar .dots{display:flex;gap:6px}
.app-bar .dots i{width:9px;height:9px;border-radius:50%;background:var(--rule)}
.app-bar .crumb{font-family:var(--mono);font-size:.76rem}
.app-body{padding:20px;display:grid;gap:14px;align-content:start}
.doc{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid var(--rule);border-radius:12px}
.doc .ico{width:38px;height:46px;border-radius:5px;background:var(--paper-deep);position:relative;flex:none}
.doc .ico::before,.doc .ico::after{content:"";position:absolute;left:8px;right:8px;height:2px;background:var(--rule);top:14px}
.doc .ico::after{top:22px;right:14px}
.doc strong{display:block;font-size:.98rem}
.doc span{font-size:.84rem;color:var(--ink-soft)}
.sugg{border:1.5px solid var(--blue);border-radius:12px;padding:16px;background:#fff;transition:opacity .35s,transform .35s,border-color .3s}
.sugg.hidden{opacity:0;transform:translateY(8px)}
.sugg-head{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.92rem;color:var(--blue)}
.sugg-head svg{width:18px;height:18px}
.sugg-body{margin-top:10px;font-size:.95rem}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.tag{font-family:var(--mono);font-size:.76rem;background:var(--blue-wash);color:var(--blue-deep);border-radius:6px;padding:5px 8px;transition:box-shadow .3s}
.why{margin-top:12px;font-size:.86rem;color:var(--ink-soft);border-left:2px solid var(--rule);padding-left:12px;transition:border-color .3s,background .3s}
.reviewing .why{border-color:var(--blue);background:var(--blue-wash);padding:8px 12px;border-radius:0 8px 8px 0;color:var(--ink)}
.reviewing .tag{box-shadow:0 0 0 2px var(--blue)}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.actions button{border-radius:8px;padding:9px 14px;font-weight:600;font-size:.88rem;border:1.5px solid var(--rule);background:#fff;transition:all .2s}
.actions button:hover{border-color:var(--ink-soft)}
.actions .approve{background:var(--decide);border-color:var(--decide);color:var(--night)}
.actions .approve:hover{background:#C8871A;border-color:#C8871A}
.actions button.pressed{transform:scale(.95);box-shadow:0 0 0 5px var(--decide-wash)}
.sugg.approved{border-color:var(--decide)}
.status-line{font-size:.84rem;color:var(--ink-soft);margin-top:10px;min-height:1.3em}
.log{border-top:1px dashed var(--rule);padding-top:12px}
.log-title{font-size:.8rem;color:var(--ink-faint);margin-bottom:6px}
.log-row{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;font-family:var(--mono);font-size:.74rem;padding:7px 0;border-bottom:1px solid var(--paper-deep);color:var(--ink-soft);animation:rowin .4s ease}
.log-row b{color:var(--ink);font-weight:500}
.log-row .ok{color:#8A5B08}
.log-row .no{color:#A33A2B}
.log-empty{font-size:.84rem;color:var(--ink-faint);padding:6px 0}
@keyframes rowin{from{opacity:0;transform:translateY(-4px)}}
.cursor{position:absolute;width:22px;height:22px;pointer-events:none;transition:left .7s cubic-bezier(.5,0,.2,1),top .7s cubic-bezier(.5,0,.2,1),opacity .3s;opacity:0;z-index:5}
.app-stage{position:relative}
.roles{display:flex;flex-wrap:wrap;gap:8px 6px;margin-bottom:14px;padding:2px}
.roles::-webkit-scrollbar{display:none}
.role{flex:none;background:transparent;border:1px solid var(--night-rule);color:#B9BBD3;border-radius:999px;padding:8px 14px;font-size:.88rem;font-weight:600;transition:all .2s}
.role:hover{border-color:#8A8FB8;color:#fff}
.role[aria-selected=true]{background:#fff;border-color:#fff;color:var(--night)}
.voice-q{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 14px;border-radius:12px;background:var(--night);color:#fff;margin-bottom:12px}
.vq-mic{width:32px;height:32px;border-radius:50%;background:var(--blue);display:grid;place-items:center;flex:none}
.vq-mic svg{width:17px;height:17px}
.vq-wave{display:flex;gap:3px;align-items:center;height:18px}
.vq-wave i{width:3px;height:6px;border-radius:2px;background:#9DB3F5;animation:wave 1s ease-in-out infinite}
.vq-wave i:nth-child(2){animation-delay:.1s}.vq-wave i:nth-child(3){animation-delay:.2s}.vq-wave i:nth-child(4){animation-delay:.3s}.vq-wave i:nth-child(5){animation-delay:.4s}
@keyframes wave{50%{height:18px}}
.vq-text{font-size:.9rem;flex:1;min-width:180px}
.vq-meta{font-size:.72rem;color:#B9BBD3}
.listen{margin-left:6px;font:inherit;font-size:.8rem;font-weight:600;color:var(--blue);background:var(--blue-wash);border:0;border-radius:999px;padding:3px 10px;vertical-align:1px}
.listen:hover{background:var(--blue);color:#fff}
.sugg-note[hidden]{display:none}
.sugg-note{margin-top:6px;font-size:.8rem;color:var(--ink-soft);display:flex;gap:6px}
.sugg-note::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--decide);margin-top:.5em;flex:none}
.role-mic{display:inline-flex;vertical-align:-3px;margin-right:6px}
.role-mic svg{width:15px;height:15px}
.ctx-title{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;font-weight:600;font-size:.95rem;margin-bottom:10px}
.ctx-title span{font-weight:400;font-size:.8rem;color:var(--ink-faint)}
.ctx{border:1px solid var(--rule);border-radius:12px;padding:14px;background:#fff}
.locs{display:grid;gap:4px}
.loc{display:grid;grid-template-columns:92px 1fr 38px;gap:10px;align-items:center;background:none;border:0;border-radius:8px;padding:6px 6px;text-align:left;font-size:.84rem;width:100%}
.loc:hover{background:var(--paper)}
.loc[aria-expanded=true]{background:var(--paper)}
.loc .bar{height:7px;border-radius:4px;background:var(--paper-deep);overflow:hidden}
.loc .bar i{display:block;height:100%;background:var(--blue);border-radius:4px}
.loc.low .bar i{background:#B4483A}
.loc .pc{font-family:var(--mono);font-size:.76rem;text-align:right}
.loc-detail{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:4px 6px 8px}
.loc-detail div{background:var(--paper);border-radius:6px;padding:6px 8px;font-size:.72rem;color:var(--ink-soft)}
.loc-detail b{display:block;font-family:var(--mono);font-weight:500;font-size:.8rem;color:var(--ink)}
.loc-detail .low b{color:#9A3528}
.obl{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.obl div{background:var(--paper);border-radius:8px;padding:10px 12px;font-size:.76rem;color:var(--ink-soft);line-height:1.5}
.obl strong{display:block;font-size:.86rem;color:var(--ink);margin-bottom:2px}
.obl .n{font-family:var(--serif);font-size:1.5rem;color:var(--ink);line-height:1.1;display:block}
.obl .od{color:#9A3528;font-weight:600}
.obl .hl{box-shadow:inset 0 0 0 1.5px var(--blue)}
.ctx-foot{margin-top:10px;font-size:.78rem;color:var(--ink-soft)}
.reg{display:grid;gap:0;font-size:.8rem}
.reg-row{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:8px 0;border-bottom:1px solid var(--paper-deep)}
.reg-row:last-child{border-bottom:0}
.reg-row .meta{color:var(--ink-soft);font-size:.74rem}
.cat{font-size:.7rem;font-weight:600;border-radius:999px;padding:2px 8px;background:var(--blue-wash);color:var(--blue-deep);align-self:start}
.notes{font-family:var(--mono);font-size:.76rem;line-height:1.6;color:var(--ink-soft);white-space:pre-line}
.draft{margin:0;padding:10px 12px;border-radius:8px;background:var(--paper);font-size:.9rem;line-height:1.5}
.plan{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:.86rem;margin:0}
.plan dt{color:var(--ink-faint);font-size:.8rem}
.plan dd{margin:0}
.sugg-body{margin-top:10px;font-size:.95rem}
.pilot-faq{margin-top:28px;border-top:1px solid var(--night-rule);padding-top:20px}
.pilot-faq summary{cursor:pointer;font-weight:600;color:#fff;list-style:none;display:flex;justify-content:space-between;gap:12px}
.pilot-faq summary::after{content:"+";font-family:var(--mono);color:#9C9FBC}
.pilot-faq details[open] summary::after{content:"–"}
.pilot-faq p{color:#B9BBD3;margin-top:8px;font-size:.95rem}
.pilot-faq details{padding:10px 0}
.pilot-grid > *{min-width:0}


/* ---------- modules ---------- */
.mod-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
.mod{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);background:transparent;border-top:0;border-left:0;text-align:left;padding:22px 20px;min-height:132px;display:flex;flex-direction:column;gap:8px;transition:background .2s}
.mod:hover{background:var(--card)}
.mod strong{font-weight:600;font-size:1.02rem;display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.mod strong::after{content:"+";font-family:var(--mono);font-weight:400;color:var(--ink-faint);transition:transform .2s}
.mod[aria-expanded=true]{background:var(--card)}
.mod[aria-expanded=true] strong::after{transform:rotate(45deg);color:var(--blue)}
.mod .md{font-size:.9rem;color:var(--ink-soft);max-height:0;overflow:hidden;opacity:0;transition:max-height .35s,opacity .3s}
.mod[aria-expanded=true] .md{max-height:120px;opacity:1}
.mod .fwk{font-size:.84rem;color:var(--ink-faint)}



/* ---------- featured modules ---------- */
.mod-feat{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.mf{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid var(--rule);border-radius:16px;background:var(--card)}
.mf h3{font-family:var(--sans);font-weight:600;font-size:1.05rem}
.mf p{color:var(--ink-soft);font-size:.95rem}
.mf .fwk{margin-top:auto;font-size:.82rem;color:var(--ink-faint)}
.mods-more{margin:18px 0 16px;font:inherit;font-weight:600;color:var(--blue);background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:3px}
.mod-grid[hidden]{display:none}
.os-map{margin-top:clamp(48px,6vw,72px);scroll-margin-top:140px}
.os-map-head h3{font-size:clamp(1.6rem,2.8vw,2.2rem)}



/* ---------- frameworks row ---------- */
.fw-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.badge{border-radius:999px;padding:9px 16px;font-weight:600;font-size:.92rem;border:1.5px solid var(--ink)}

/* ---------- trust ---------- */
.trust{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.trust-grid{display:grid;grid-template-columns:1.1fr repeat(4,1fr);gap:clamp(20px,4vw,48px);align-items:start}
.trust-grid h3{font-size:1.9rem}
.trust-item svg{width:30px;height:30px;color:var(--blue);margin-bottom:12px}
.trust-item strong{display:block;font-weight:600;margin-bottom:4px}
.trust-item p{font-size:.93rem;color:var(--ink-soft)}



/* ---------- services ---------- */
.svc-list{border-top:1.5px solid var(--ink)}
.svc-item{border-bottom:1px solid var(--rule);scroll-margin-top:96px}
.svc{scroll-margin-top:96px}
.svc{display:grid;grid-template-columns:1fr 1.3fr auto;gap:24px;align-items:center;padding:28px 0;width:100%;background:none;border:0;text-align:left;transition:padding .25s}
.svc:hover{padding-left:12px}
.svc h3{font-size:clamp(1.6rem,2.8vw,2.2rem)}
.svc p{color:var(--ink-soft)}
.svc .go{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center;transition:background .2s,color .2s}
.svc:hover .go,.svc[aria-expanded=true] .go{background:var(--ink);color:var(--paper)}
.svc .go svg{transition:transform .25s}
.svc[aria-expanded=true] .go svg{transform:rotate(90deg)}
.svc[aria-expanded=true]{padding-left:12px}
.svc-panel{display:grid;grid-template-columns:1fr 1.3fr auto;gap:24px;padding:0 0 32px 12px;animation:fadein .35s}
.svc-panel[hidden]{display:none}
.svc-panel h4{margin:0 0 10px;font-size:.95rem;font-weight:600}
.svc-panel ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;color:var(--ink-soft);font-size:.96rem}
.svc-panel li{padding-left:20px;position:relative}
.svc-panel li::before{content:"";position:absolute;left:2px;top:.7em;width:10px;height:2px;background:var(--blue)}
.svc-cta{align-self:end}
.linkbtn{background:none;border:0;padding:0;font:inherit;font-weight:600;color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.linkbtn:hover{color:var(--blue-deep)}
.graph-note{margin-top:12px;font-size:.92rem;color:var(--ink-soft);text-align:right}
.fw-note{margin-top:18px;color:var(--ink-soft);max-width:62ch}
.svc .go svg{width:16px;height:16px}


/* ---------- final CTA ---------- */
.final{padding:clamp(80px,11vw,140px) 0;text-align:left}
.final-card{background:var(--blue);color:#fff;border-radius:28px;padding:clamp(36px,6vw,72px);display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:end;position:relative;overflow:hidden}
.final-card h2{color:#fff;font-size:clamp(2.2rem,4.6vw,3.8rem);max-width:14ch}
.final-card p{color:#D7E0FB;margin-top:16px;max-width:44ch}
.final-card .btn-primary{background:#fff;color:var(--blue)}
.final-card .btn-primary:hover{background:var(--paper)}
.final-card .btn-quiet{box-shadow:inset 0 0 0 1.5px #fff;color:#fff}
.final-card .btn-quiet:hover{background:#fff;color:var(--blue)}
.final-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}


/* ---------- company pages ---------- */
#page:focus{outline:none}
.pg-hero{padding:clamp(40px,6vw,72px) 0 clamp(32px,4vw,48px);border-bottom:1px solid var(--rule)}
.pg-hero h1{font-size:clamp(2.4rem,5vw,4rem);line-height:1.02;letter-spacing:-.02em;max-width:17ch;margin-top:28px}
.pg-hero .lede{margin-top:18px}
.pg-sub{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px}
.pg-sub::-webkit-scrollbar{display:none}
.pg-sub a{flex:none;text-decoration:none;font-size:.88rem;font-weight:500;color:var(--ink-soft);border:1px solid var(--rule);border-radius:999px;padding:6px 13px}
.pg-sub a:hover{border-color:var(--ink-soft);color:var(--ink)}
.pg-sub a[aria-current=page]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pg-sec{padding:clamp(40px,6vw,64px) 0 0}
.pg-sec:last-child{padding-bottom:clamp(64px,8vw,96px)}
.pg-sec-head{margin-bottom:22px}
.pg-sec h2{font-size:clamp(1.6rem,2.8vw,2.2rem)}
.pg-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1.5px solid var(--ink)}
.pg-cards.four{grid-template-columns:repeat(4,1fr)}
.pg-card{padding:20px 24px 22px 0;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.pg-card + .pg-card{padding-left:24px;border-left:1px solid var(--rule)}
.pg-card h3{font-family:var(--sans);font-weight:600;font-size:1.05rem}
.pg-card p{color:var(--ink-soft);font-size:.96rem}
.pg-card .btn{margin-top:8px}
.pg-links{display:grid;grid-template-columns:repeat(2,1fr);border-top:1.5px solid var(--ink)}
.pg-links a{display:grid;gap:4px;padding:18px 20px 18px 0;border-bottom:1px solid var(--rule);text-decoration:none}
.pg-links a:nth-child(even){padding-left:20px;border-left:1px solid var(--rule)}
.pg-links a:hover strong{color:var(--blue)}
.pg-links strong{font-weight:600}
.pg-links span{color:var(--ink-soft);font-size:.95rem}
.person{display:flex;gap:16px;align-items:flex-start}
.person strong{display:block;font-weight:600;font-size:1.05rem}
.person span{color:var(--ink-soft);font-size:.93rem}
.person p{margin-top:8px}
.pg-note{color:var(--ink-soft);font-size:.95rem;max-width:62ch}
.pg-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:st}
.pg-steps li{counter-increment:st;display:grid;gap:6px;padding-top:16px;border-top:2px solid var(--blue)}
.pg-steps li::before{content:counter(st);font-family:var(--serif);font-size:1.6rem;color:var(--blue);line-height:1}
.pg-steps strong{font-weight:600}
.pg-steps span{color:var(--ink-soft);font-size:.95rem}
.pg-callout{border-left:3px solid var(--blue);background:var(--blue-wash);padding:16px 20px;border-radius:0 12px 12px 0;max-width:760px}
.pg-cta{background:var(--ink);color:var(--paper);border-radius:22px;padding:clamp(28px,4vw,44px);display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.pg-cta h2{color:#fff}
.pg-cta p{color:#C4C6D8;margin-top:6px}



/* ---------- resources ---------- */
.res-feature{text-decoration:none;justify-content:flex-start}
.res-feature .rf-type{font-size:.8rem;color:#B9BBD3}
.res-feature .rf-go{margin-top:auto;font-weight:600;font-size:.93rem;text-decoration:underline;text-underline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.chip{background:transparent;border:1px solid var(--rule);border-radius:999px;padding:7px 14px;font-size:.9rem;font-weight:500;color:var(--ink-soft)}
.chip:hover{border-color:var(--ink-soft);color:var(--ink)}
.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.guide h3,
.tpl h3{font-size:1.3rem;line-height:1.2}.guide p,
.tpl p{color:var(--ink-soft);font-size:.96rem}
.guides{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.guide{display:flex;flex-direction:column;gap:10px;align-items:flex-start;border:1px solid var(--rule);border-radius:16px;padding:26px;background:var(--card)}
.guide.lead{grid-column:1/-1;background:var(--night);border-color:var(--night);color:#fff}
.guide.lead h3{color:#fff;font-size:clamp(1.6rem,2.6vw,2.2rem);max-width:24ch}
.guide.lead p{color:#B9BBD3;max-width:60ch}
.guide .btn{margin-top:auto}
.tpl{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:22px 24px 22px 0;border-bottom:1px solid var(--rule)}
.tpl:not(:nth-child(3n+1)){padding-left:24px;border-left:1px solid var(--rule)}
.tpl .linkbtn{margin-top:auto}



/* ---------- solutions / resources menus, services band ---------- */
.mega-sol,.mega-res{width:min(640px,calc(100vw - 32px));grid-template-columns:1fr 1fr}
.svc-band-sec{padding:clamp(56px,7vw,88px) 0}
.svc-band{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(24px,5vw,64px);align-items:center;border-top:1.5px solid var(--ink);border-bottom:1px solid var(--rule);padding:clamp(28px,4vw,44px) 0}
.svc-kicker{font-weight:600;color:var(--blue);margin-bottom:8px}
.svc-band h2{margin-bottom:12px}
.svc-band-links{display:grid;gap:4px;justify-items:start}
.svc-band-links a:not(.btn){font-family:var(--serif);font-size:1.35rem;text-decoration:none;padding:6px 0;border-bottom:1px solid transparent}
.svc-band-links a:not(.btn):hover{color:var(--blue);border-bottom-color:var(--blue)}
.svc-band-links .btn{margin-top:12px}


/* ---------- solutions pages ---------- */
.pg-hero .pg-sub + .svc-kicker{margin-top:28px}
.pg-hero .svc-kicker + h1{margin-top:6px}
#os-try.flash{box-shadow:0 0 0 4px var(--blue-wash);border-radius:12px}
.svc-band-links a:not(.btn) span{font-family:var(--sans);font-size:.8rem;color:var(--ink-faint);margin-left:8px}
.svc-band-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.svc-band-cta .btn{margin-top:0}

/* ---------- tailoring chip ---------- */
/* ---------- chapter bar (home) ---------- */
.chap{position:fixed;left:0;right:0;top:64px;z-index:44;background:rgba(245,242,236,.94);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--rule);transform:translateY(-110%);opacity:0;visibility:hidden;transition:transform .3s,opacity .3s,visibility 0s .3s}
.chap.show{transform:none;opacity:1;visibility:visible;transition:transform .3s,opacity .3s}
body.menu-open .chap,body.on-page .chap{display:none}
.chap-row{display:flex;align-items:center;gap:16px;min-height:46px}
.chap-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;flex:1;min-width:0}
.chap-list li{display:flex;align-items:center;flex:0 1 auto}
.chap-list li + li::before{content:"";width:clamp(18px,4vw,56px);height:2px;background:var(--rule);margin:0 10px;border-radius:2px;transition:background .3s}
.chap-list li.past + li::before,.chap-list li.past + li.cur::before{background:var(--blue)}
.chap-list a{display:flex;align-items:center;gap:8px;text-decoration:none;font-size:.86rem;font-weight:500;color:var(--ink-faint);white-space:nowrap;padding:6px 2px;border-radius:6px}
.chap-list a:hover{color:var(--ink)}
.chap-list i{width:10px;height:10px;border-radius:50%;border:2px solid var(--rule);background:var(--paper);flex:none;transition:all .3s}
.chap-list li.past i{background:var(--blue);border-color:var(--blue)}
.chap-list li.cur i{background:var(--paper);border-color:var(--blue);box-shadow:0 0 0 4px var(--blue-wash)}
.chap-list li.cur a{color:var(--ink);font-weight:600}
.chap-count{display:none;font-size:.8rem;color:var(--ink-faint);white-space:nowrap}
.chap-count b{color:var(--ink);font-weight:600}
.th-wrap{position:relative;flex:none;margin-left:auto}
.th-pill{display:flex;align-items:center;gap:8px;background:var(--ink);color:#fff;border:0;border-radius:999px;padding:5px 6px 5px 12px;font-size:.8rem;font-weight:500;white-space:nowrap}
.th-pill[hidden]{display:none}
.th-pill b{background:#fff;color:var(--ink);border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;font-size:.74rem;padding:0 6px}
.th-pill:hover{background:#2A2F4D}
.th-pill.pulse{animation:thpulse .9s}
@keyframes thpulse{0%{box-shadow:0 0 0 0 rgba(43,92,230,.55)}100%{box-shadow:0 0 0 12px rgba(43,92,230,0)}}
.th-dots{display:flex;align-items:center}
.th-dots i{width:7px;height:7px;border-radius:50%;background:#8FA8F2;margin-left:-1px}
.th-dots i + i{margin-left:0}
.th-dots i:not(:last-child)::after{content:""}
.th-dots{gap:3px}
.th-pop{position:absolute;right:0;top:calc(100% + 10px);width:min(340px,calc(100vw - 32px));background:var(--card);border:1px solid var(--rule);border-radius:16px;box-shadow:0 24px 50px -24px rgba(23,26,46,.45);padding:16px;z-index:5;animation:fadein .2s}
.th-pop[hidden]{display:none}
.th-pop-h{font-weight:600;font-size:.9rem;margin-bottom:8px}
.th-list{list-style:none;margin:0;padding:0 0 0 6px;border-left:2px solid var(--blue-wash)}
.th-list li{position:relative;display:flex;align-items:flex-start;gap:8px;font-size:.86rem;color:var(--ink-soft);padding:6px 0 6px 10px;line-height:1.4}
.th-list li::before{content:"";position:absolute;left:-12px;top:12px;width:10px;height:10px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px var(--card)}
.th-list li span{flex:1}
.th-list button{flex:none;background:none;border:0;color:var(--ink-faint);font-size:1rem;line-height:1;padding:2px 4px;border-radius:6px}
.th-list button:hover{color:var(--ink);background:var(--paper-deep)}
.th-pop-note{font-size:.78rem;color:var(--ink-faint);margin-top:10px}
.th-pop-go{display:inline-block;margin-top:10px;font-size:.86rem;font-weight:600;color:var(--blue)}
.th-toast{position:absolute;right:0;top:calc(100% + 10px);background:var(--ink);color:#fff;font-size:.8rem;border-radius:10px;padding:8px 12px;white-space:nowrap;max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis;opacity:0;transform:translateY(-4px);transition:opacity .25s,transform .25s;pointer-events:none}
.th-toast.on{opacity:1;transform:none}
.th-toast b{color:#AFC2F7;font-weight:600}
/* plan (final call to action) */
.btn-decide{background:var(--decide);color:var(--night)}
.btn-decide:hover{background:#E6AC45}
.btn-ink{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
.btn-ink:hover{background:var(--ink);color:#fff}
.final-card.has-plan{align-items:start;grid-template-columns:1fr 1.15fr}

.final-card.has-plan .final-actions{display:none}
.nx-plan{background:var(--card);color:var(--ink);border-radius:20px;padding:clamp(20px,3vw,28px);position:relative;z-index:1;animation:fadein .35s}
.nx-plan[hidden]{display:none}
.final-card .nx-plan p{color:var(--ink-soft);margin:0}
.final-card .nx-plan .plan-h{color:var(--ink);font-weight:600;font-size:1rem}
.final-card .nx-plan .plan-sub{font-size:.86rem;margin-top:2px}
.plan-list{list-style:none;margin:14px 0 18px;padding:0;display:grid;gap:6px}
.plan-list label{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border:1.5px solid var(--rule);border-radius:12px;font-size:.9rem;line-height:1.4;cursor:pointer;background:#fff;transition:border-color .2s,background .2s}
.plan-list label:has(input:checked){border-color:var(--blue);background:var(--blue-wash)}
.plan-list input{margin:3px 0 0;accent-color:var(--blue);width:16px;height:16px;flex:none}
.plan-list .start{font-weight:600}
.plan-list .start small{display:block;font-weight:500;color:var(--blue-deep);font-size:.74rem;text-transform:uppercase;letter-spacing:.06em}
.plan-areas{border:0;padding:0;margin:12px 0 0;min-width:0}
.pl-grp{margin-bottom:20px}
.pl-grp[hidden],.pl-start[hidden],.plan-list[hidden]{display:none}
.final-card .nx-plan .pl-lab{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-deep);margin:0 0 8px}
.nx-plan .plan-list{margin:0}
.plan-list small{display:block;font-size:.72rem;color:var(--ink-faint);font-weight:500}
.pl-start{border:1.5px dashed var(--blue);border-radius:14px;background:var(--blue-wash);padding:12px 14px;margin:0 0 20px}
.pl-start label{display:flex;gap:10px;align-items:flex-start;font-weight:600;font-size:.95rem;line-height:1.4;cursor:pointer}
.pl-start input{margin:3px 0 0;accent-color:var(--blue);width:16px;height:16px;flex:none}
.final-card .nx-plan .pl-why{font-size:.8rem;margin:4px 0 0 26px}
.pl-how{list-style:none;counter-reset:h;margin:28px 0 0;padding:0;display:grid;gap:12px;max-width:40ch}
.pl-how[hidden],.pl-priv[hidden]{display:none}
.pl-how li{counter-increment:h;display:grid;grid-template-columns:28px 1fr;gap:12px;color:#D7E0FB;font-size:.98rem;align-items:start}
.pl-how li::before{content:counter(h);width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;display:grid;place-items:center;font-size:.8rem;font-weight:600}
.pl-how b{color:#fff;font-weight:600}
.final-card p.pl-priv{font-size:.84rem;color:#C3D0F8;margin-top:24px;display:flex;gap:8px;align-items:center}
.final-card p.pl-priv::before{content:"";width:8px;height:8px;border-radius:50%;background:#fff;flex:none}
.plan-areas legend{font-weight:600;font-size:.88rem;padding:0;margin-bottom:2px}
.plan-areas legend span{font-weight:400;color:var(--ink-faint);font-size:.78rem;margin-left:4px}
.plan-areas .chips label{font-size:.82rem;padding:5px 11px}
.plan-acts{display:flex;flex-wrap:wrap;gap:10px}
.plan-acts .btn{padding:11px 18px;font-size:.95rem}
.final-card .nx-plan .plan-alt{display:flex;flex-direction:column;gap:6px;margin-top:14px;font-size:.88rem;color:var(--ink-faint)}
/* dialog: explored-context choice */
.dx{border:1.5px solid var(--rule);border-radius:14px;padding:14px;margin:0 0 14px;background:var(--paper)}
.dx[hidden]{display:none}
.dx legend{font-weight:600;font-size:.9rem;padding:0 4px}
.ctx-seg{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}
.ctx-seg label{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.86rem;font-weight:600;border:1.5px solid var(--rule);border-radius:10px;padding:9px 10px;background:#fff;cursor:pointer}
.ctx-seg input{position:absolute;opacity:0;pointer-events:none}
.ctx-seg label:has(input:checked){border-color:var(--blue);background:var(--blue-wash);color:var(--blue-deep)}
.ctx-seg label:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:2px}
.ctx-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:4px}
.ctx-list[hidden]{display:none}
.ctx-list label{display:flex;gap:8px;align-items:flex-start;font-size:.86rem;line-height:1.4;color:var(--ink-soft);cursor:pointer}
.ctx-list input{margin:3px 0 0;accent-color:var(--blue);flex:none}
.ctx-list .ctx-none{font-size:.84rem;color:#A33A2B}
.field[hidden]{display:none}
.field textarea{width:100%;min-width:0;font:inherit;font-size:.95rem;padding:12px 14px;border-radius:10px;border:1.5px solid var(--rule);background:#fff;color:var(--ink);resize:vertical}
.field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash)}
.field .opt{font-weight:400;color:var(--ink-faint);font-size:.8rem;margin-left:4px}


.chap-kick{display:flex;align-items:center;gap:10px;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-deep);margin-bottom:16px}
.chap-kick span{font-family:var(--mono);font-size:.74rem;letter-spacing:0;color:var(--blue);border:1px solid currentColor;border-radius:999px;padding:1px 8px}
.trust .chap-kick{margin-bottom:22px}
/* ---------- chapter 3: trust you can test ---------- */
.trust{padding:clamp(64px,8vw,104px) 0 clamp(48px,6vw,72px)}
.tl{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:start;margin-bottom:clamp(48px,6vw,72px)}
.tl-intro .lede{margin-top:16px}
.tl-tries{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:8px}
.tl-tries button{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;width:100%;text-align:left;background:var(--card);border:1.5px solid var(--rule);border-radius:14px;padding:13px 14px;transition:border-color .2s,box-shadow .2s}
.tl-tries button:hover{border-color:var(--blue)}
.tl-tries button[aria-pressed="true"]{border-color:var(--blue);box-shadow:0 12px 26px -20px rgba(30,69,184,.6)}
.tl-tries .n{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:.85rem;font-weight:600;background:var(--blue-wash);color:var(--blue-deep)}
.tl-tries button.tried .n{background:var(--blue);color:#fff}
.tl-tries strong{display:block;font-weight:600}
.tl-tries strong + span{font-size:.88rem;color:var(--ink-soft)}
.tl-app{background:var(--card);border:1px solid var(--rule);border-radius:20px;overflow:hidden;box-shadow:0 30px 60px -40px rgba(23,26,46,.35);min-width:0}
.tl-body{padding:clamp(16px,2.4vw,24px);display:grid;gap:14px}
.tl-doc{border:1.5px solid var(--rule);border-radius:14px;background:#fff;padding:16px 18px;transition:border-color .3s,box-shadow .3s}
.tl-doc.shake{animation:tlshake .4s}
.tl-doc.bad{border-color:#A33A2B;box-shadow:0 0 0 4px rgba(163,58,43,.1)}
.tl-doc.good{border-color:var(--blue);box-shadow:0 0 0 4px var(--blue-wash)}
@keyframes tlshake{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
.tl-doc-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.tl-title{font-family:var(--serif);font-size:1.3rem;line-height:1.2}
.tl-meta{font-size:.8rem;color:var(--ink-faint);margin-top:2px}
.tl-badges{display:flex;gap:6px;flex-wrap:wrap}
.tl-b{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;font-weight:600;border-radius:999px;padding:3px 10px}
.tl-b svg{width:12px;height:12px}
.tl-b.ok{background:var(--blue-wash);color:var(--blue-deep)}
.tl-b.lock{background:var(--ink);color:#fff}
.tl-b.lock.pulse{animation:thpulse .9s}
.tl-text{margin:14px 0 12px;font-size:.9rem;color:var(--ink-soft);display:grid;gap:6px}
.tl-text b{color:var(--ink);font-weight:600}
.tl-text mark{background:transparent;color:inherit;border-radius:4px;padding:0 2px;transition:background .3s}
.tl-text mark.changed{background:#F6D9D3;color:#7A2A1F;text-decoration:line-through wavy #A33A2B}
.tl-text mark.changed + ins{text-decoration:none;background:#F6D9D3;color:#7A2A1F;border-radius:4px;padding:0 2px;margin-left:4px}
.tl-sign{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--ink-soft);border-top:1px dashed var(--rule);padding-top:10px}
.tl-sign svg{width:34px;height:18px;color:var(--blue-deep);flex:none}
.tl-sum{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.8rem;color:var(--ink-faint);margin-top:8px}
.tl-sum code,.tl-out code{font-family:var(--mono);font-size:.78rem;color:var(--ink);background:var(--paper);border-radius:6px;padding:2px 7px}
.tl-out{min-height:118px;border-radius:14px;background:var(--paper);padding:14px 16px;font-size:.9rem}
.tl-hint{color:var(--ink-faint)}
.tl-out h4{margin:0 0 4px;font-size:.98rem;display:flex;align-items:center;gap:8px}
.tl-out h4 i{width:10px;height:10px;border-radius:50%;flex:none}
.tl-out.ok h4 i{background:var(--blue)}
.tl-out.no h4 i{background:var(--ink)}
.tl-out.bad h4 i{background:#A33A2B}
.tl-out.bad h4{color:#7A2A1F}
.tl-out p{color:var(--ink-soft)}
.tl-cmp{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:10px 0 2px;font-size:.8rem;color:var(--ink-faint);align-items:center}
.tl-cmp code{justify-self:start}
.tl-cmp code.m{background:var(--blue-wash);color:var(--blue-deep)}
.tl-cmp code.x{background:#F6D9D3;color:#7A2A1F}
.tl-act{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}
.tl-act button{font:inherit;font-size:.86rem;font-weight:600;border-radius:999px;padding:8px 14px;border:1.5px solid var(--ink);background:transparent;color:var(--ink)}
.tl-act button.pri{background:var(--decide);border-color:var(--decide);color:var(--night)}
.tl-act button:disabled{opacity:.5;cursor:default}
.tl-spin{display:inline-block;width:14px;height:14px;border:2px solid var(--blue-wash);border-top-color:var(--blue);border-radius:50%;animation:tlspin .7s linear infinite;vertical-align:-2px;margin-right:8px}
@keyframes tlspin{to{transform:rotate(360deg)}}
.tl-log ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;font-size:.8rem;color:var(--ink-soft)}
.tl-log li{display:grid;grid-template-columns:auto 1fr;gap:8px}
.tl-log li time{font-family:var(--mono);font-size:.72rem;color:var(--ink-faint);white-space:nowrap}
.tl-log li:empty{display:none}
.tl-log:has(ul:empty){display:none}
.trust-grid{border-top:1px solid var(--rule);padding-top:clamp(32px,4vw,48px)}




/* ---------- chapter 2: See it work (tabbed showcase) ---------- */
.see{padding:clamp(80px,10vw,128px) 0 0}
.see-head{margin-bottom:clamp(24px,3vw,36px)}
.see-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;scroll-margin-top:130px}
.see-tab{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"n t" "n s" "n d";column-gap:12px;row-gap:2px;text-align:left;background:transparent;border:1px solid var(--rule);border-radius:16px;padding:16px 16px 18px;transition:background .2s,border-color .2s,box-shadow .2s;overflow:hidden}
.see-tab:hover{background:var(--card)}
.see-tab::after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .35s}
.see-tab[aria-selected="true"]{background:var(--card);border-color:var(--blue);box-shadow:0 14px 30px -22px rgba(30,69,184,.55)}
.see-tab[aria-selected="true"]::after{transform:none}
.st-n{grid-area:n;font-family:var(--mono);font-size:.78rem;color:var(--ink-faint);padding-top:3px}
.see-tab[aria-selected="true"] .st-n{color:var(--blue)}
.st-t{grid-area:t;font-weight:600;font-size:1.02rem;line-height:1.3}
.st-s{grid-area:s;font-size:.86rem;color:var(--ink-soft);line-height:1.4}
.st-d{grid-area:d;font-size:.74rem;color:var(--ink-faint);white-space:nowrap;margin-top:6px}
.see-tab.seen .st-d::before{content:"✓ ";color:var(--blue)}
.see-for{margin-top:12px;font-size:.86rem;color:var(--ink-soft);display:block;line-height:1.5}
.see-for::before{content:"";display:inline-block;vertical-align:middle;margin:0 12px 2px 4px;width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px var(--blue-wash)}
.see-for[hidden]{display:none}
.see-panel{padding:clamp(40px,5vw,64px) 0 clamp(64px,8vw,96px);outline:none;animation:fadein .35s}
.see-panel[hidden]{display:none}
.see-panel.pilot{margin-top:clamp(28px,3vw,40px)}
.see-panel.os,.see-panel.cd,.see-panel.ctrl{padding-top:clamp(36px,4vw,52px)}
.ctrl-map{margin-top:0}
.ctrl-mods{margin-top:clamp(56px,7vw,80px)}
.see-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:clamp(40px,5vw,56px);padding-top:20px;border-top:1px solid var(--rule);font-size:.9rem;color:var(--ink-faint)}
.pilot .see-foot{border-top-color:var(--night-rule);color:#8E92B4}
.see-next{display:inline-flex;align-items:center;gap:10px;background:transparent;border:0;padding:6px 0;font-family:var(--serif);font-size:clamp(1.1rem,1.7vw,1.3rem);color:var(--ink);border-bottom:1px solid var(--rule);text-decoration:none}
.see-next span{font-family:var(--sans);color:var(--blue);transition:transform .2s}
.see-next:hover span{transform:translateX(4px)}
.pilot .see-next{color:#fff;border-bottom-color:var(--night-rule)}
.pilot .see-next span{color:#9DB3F5}
.decide .svc-band-sec{padding-top:clamp(64px,8vw,96px)}



/* ---------- site assistant ---------- */
.ask-btn{position:fixed;right:6px;bottom:20px;z-index:60;display:flex;align-items:center;justify-content:center;width:54px;height:54px;gap:0;border:1px solid var(--color-border);border-radius:50%;padding:8px;background:var(--color-surface);color:var(--color-charcoal);font-weight:600;font-size:.95rem;box-shadow:0 1px 2px rgba(26,26,26,.06),0 18px 34px -16px rgba(0,66,126,.55);transition:transform .2s,border-color .2s,box-shadow .2s}
.ask-btn span{font-size:0}
.ask-btn:hover{transform:translateY(-2px);border-color:var(--color-cyan);box-shadow:0 0 0 4px var(--color-cyan-50),0 18px 34px -16px rgba(0,66,126,.55)}
.ask-btn svg{width:34px;height:34px;padding:8px;border-radius:50%;background:var(--color-deep-blue);color:var(--color-gold);position:relative}
.ask-btn::after{content:"";position:absolute;right:5px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--color-cyan);border:2px solid var(--color-surface)}
.ask-btn[aria-expanded=true]{display:none}
body.menu-open .ask-btn{display:none}
.ask{position:fixed;right:20px;bottom:20px;z-index:61;width:min(400px,calc(100vw - 32px));height:min(620px,calc(100vh - 110px));display:flex;flex-direction:column;background:var(--color-off-white);border:1px solid var(--color-border);border-radius:20px;box-shadow:0 40px 80px -34px rgba(0,66,126,.5);overflow:hidden;animation:askIn .25s cubic-bezier(.3,.1,.2,1)}
.ask::before{content:"";flex:none;height:4px;background:linear-gradient(90deg,var(--color-deep-blue) 0 55%,var(--color-cyan) 55% 80%,var(--color-gold) 80%)}
.ask[hidden]{display:none}
@keyframes askIn{from{opacity:0;transform:translateY(12px) scale(.98)}}
.ask-head{display:flex;gap:12px;align-items:center;padding:14px 14px 14px 16px;background:var(--color-surface);color:var(--color-charcoal);border-bottom:1px solid var(--color-border)}
.ask-mark{width:38px;height:38px;border-radius:50%;background:var(--color-deep-blue);display:grid;place-items:center;flex:none}
.ask-mark svg{width:18px;height:18px;color:var(--color-gold)}
.ask-head h2{font-family:var(--sans);font-size:1rem;font-weight:600;color:var(--color-charcoal);max-width:none}
.ask-head p{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--color-text-muted)}
.ask-head p::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--color-cyan);flex:none}
.ask-x{margin-left:auto;background:none;border:0;color:var(--color-charcoal);font-size:1.5rem;line-height:1;width:34px;height:34px;border-radius:50%}
.ask-x:hover{background:var(--color-off-white)}
.ask-log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}
.msg{max-width:88%;padding:11px 14px;border-radius:16px;font-size:.93rem;line-height:1.5;animation:rowin .3s ease}
.msg.bot{background:#fff;border:1px solid var(--rule);border-bottom-left-radius:4px;align-self:flex-start}
.msg.me{background:var(--blue);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}
.msg p + p{margin-top:6px}
.msg ul{margin:6px 0 0;padding-left:18px}
.msg-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.msg-acts a,.msg-acts button{font:inherit;font-size:.84rem;font-weight:600;text-decoration:none;border:1.5px solid var(--blue);color:var(--blue);background:transparent;border-radius:999px;padding:5px 12px}
.msg-acts a:hover,.msg-acts button:hover{background:var(--blue);color:#fff}
.quick{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start}
.quick button{font:inherit;font-size:.85rem;background:var(--card);border:1px solid var(--rule);border-radius:999px;padding:7px 12px;color:var(--ink)}
.quick button:hover{border-color:var(--ink-soft)}
.typing{display:flex;gap:4px;padding:14px}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--ink-faint);animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{50%{opacity:.25}}
.ask-form{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--rule);background:var(--card)}
.ask-form input{flex:1;min-width:0;font:inherit;font-size:.93rem;border:1.5px solid var(--rule);border-radius:999px;padding:10px 14px;background:#fff}
.ask-form input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash)}
.ask-form button{width:42px;height:42px;border-radius:50%;border:0;background:var(--blue);color:#fff;display:grid;place-items:center;flex:none}
.ask-form button svg{width:18px;height:18px}
.ask-foot{font-size:.74rem;color:var(--ink-faint);padding:0 14px 10px;background:var(--card)}
.ask-foot .linkbtn{font-size:.74rem}


/* ---------- footer ---------- */
footer{border-top:1px solid var(--rule);padding:56px 0 40px;font-size:.93rem}
.foot-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:28px}
.foot-grid h4{margin:0 0 12px;font-size:.93rem;font-weight:600}
.foot-grid a{display:block;text-decoration:none;color:var(--ink-soft);padding:4px 0}
.foot-grid a:hover{color:var(--ink)}
.foot-brand p{color:var(--ink-soft);margin-top:12px;max-width:34ch}
.foot-base{margin-top:48px;padding-top:20px;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;color:var(--ink-faint);font-size:.86rem}
.foot-base a{color:var(--ink-faint);text-decoration:none;margin-right:18px}


/* ---------- demo dialog ---------- */
dialog{border:0;border-radius:20px;padding:0;width:min(560px,calc(100vw - 32px));background:var(--paper);color:var(--ink);box-shadow:0 40px 100px -30px rgba(23,26,46,.5)}
dialog::backdrop{background:rgba(22,26,51,.55);backdrop-filter:blur(3px)}
.dlg{padding:clamp(24px,5vw,36px)}
.dlg-head{display:flex;justify-content:space-between;gap:16px;align-items:start}
.dlg h2{font-size:2rem}
.dlg .x{background:none;border:0;width:36px;height:36px;border-radius:50%;font-size:1.4rem;line-height:1;flex:none}
.dlg .x:hover{background:var(--paper-deep)}
.dlg .intro{color:var(--ink-soft);margin:8px 0 20px;font-size:.96rem}
.field{display:grid;gap:6px;margin-bottom:14px}
.field label,.field legend{font-weight:600;font-size:.9rem}
.field{min-width:0}
.field input[type=text],.field input[type=email],.field input[type=tel]{width:100%;min-width:0;font:inherit;padding:12px 14px;border-radius:10px;border:1.5px solid var(--rule);background:#fff;color:var(--ink)}
.field input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash)}
.field .err{font-size:.84rem;color:#A33A2B;display:none}
.field.invalid input{border-color:#A33A2B}
.field.invalid .err{display:block}
.two[hidden],#fw-field[hidden]{display:none}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}

fieldset.field{border:0;padding:0;margin:0 0 14px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.chips label{font-weight:500;font-size:.88rem;border:1.5px solid var(--rule);border-radius:999px;padding:7px 13px;cursor:pointer;background:#fff;user-select:none}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips input:checked + span{color:var(--blue)}
.chips label:has(input:checked){border-color:var(--blue);background:var(--blue-wash)}
.chips label:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:2px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:.86rem;color:var(--ink-soft);margin:6px 0 20px}
.consent input{margin-top:4px;width:18px;height:18px;accent-color:var(--blue);flex:none}
.consent.invalid{color:#A33A2B}
.dlg .btn{width:100%;justify-content:center}
.done{text-align:center;padding:20px 0}
.done svg{width:64px;height:64px;margin:0 auto 16px}
.done p{color:var(--ink-soft);margin-top:8px}
/* demo dialog: wide, compact layout so the whole form shows in one view without vertical scrolling */
dialog#demo{width:min(980px,calc(100vw - 32px));max-height:calc(100dvh - 16px);overflow-y:auto}
#demo .dlg{padding:clamp(20px,3vw,30px) clamp(22px,4vw,40px)}
#demo .dlg h2{font-size:clamp(1.5rem,2.4vw,1.8rem)}
#demo .dlg .intro{margin:6px 0 14px}
#demo .field,#demo fieldset.field{margin-bottom:10px}
#demo .field textarea{min-height:0}
#demo .consent{margin:2px 0 12px;font-size:.82rem}
#demo .chips{gap:6px;margin-top:4px}
#demo .chips label{padding:5px 12px;font-size:.84rem;white-space:nowrap}
#demo .field input[type=text],#demo .field input[type=email]{padding:10px 14px}
#demo .dlg .btn{padding-top:12px;padding-bottom:12px}




/* short windows (laptops at high zoom): tighten further so nothing needs scrolling */





/* ==========================================================
   TREND CHIP (Lucide arrow icon + signed change)
========================================================== */
.trend{display:inline-flex;align-items:center;gap:3px;font:600 .76rem/1 var(--sans);font-variant-numeric:tabular-nums;border-radius:999px;padding:4px 8px 4px 5px;white-space:nowrap}
.trend .nx-ico{width:14px;height:14px;stroke-width:2.25}
.trend.up{color:var(--color-deep-blue);background:var(--color-cyan-50)}
.trend.down{color:var(--color-charcoal);background:var(--color-border)}
.trend.flat{color:var(--color-text-muted);background:var(--color-off-white);box-shadow:inset 0 0 0 1px var(--color-border)}

/* previous-quarter reference (replaces sparkline) */
.prev{display:grid;justify-items:end;gap:2px;text-align:right;line-height:1.1}
.prev small{font-size:.68rem;color:var(--color-text-faint);letter-spacing:.02em}
.prev b{font-family:var(--serif);font-weight:400;font-size:1.05rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}

/* ==========================================================
   COMPLIANCE FRAMEWORK OVERVIEW + FRAMEWORK METRIC CARD
   Tone = data meaning: gold = strongest movement, navy/cyan = structure / secondary.
========================================================== */
.hp-score{display:grid;gap:10px}
.tone-navy{--tone:var(--color-deep-blue)}
.tone-cyan{--tone:var(--color-cyan)}
.tone-gold{--tone:var(--color-gold)}
.tone-charcoal{--tone:var(--color-charcoal)}
.fw-row{display:grid;grid-template-columns:minmax(0,1fr) 84px;grid-template-areas:"head spark" "track spark";gap:8px 18px;align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--tone);border-radius:10px;padding:11px 14px;transition:transform .2s,box-shadow .2s}
.fw-row:hover{transform:translateY(-2px);box-shadow:0 14px 24px -18px rgba(0,66,126,.5)}
.fw-head{grid-area:head;display:flex;align-items:baseline;gap:12px;min-width:0}
.fw-n{font-weight:600;font-size:.92rem;flex:1;min-width:0}
.fw-p{font-family:var(--serif);font-size:1.4rem;line-height:1;font-variant-numeric:tabular-nums}
.fw-head .trend{align-self:center}
.fw-track{grid-area:track;height:8px;border-radius:999px;background:var(--color-off-white);box-shadow:inset 0 0 0 1px var(--color-border);overflow:hidden}
.fw-track i{display:block;height:100%;width:calc(var(--v) * 1%);border-radius:inherit;background:var(--tone);transform-origin:left;animation:bar-grow .9s cubic-bezier(.2,.8,.2,1) calc(.1s + var(--i,0) * .1s) both}
@keyframes bar-grow{from{transform:scaleX(0)}to{transform:none}}
.fw-row .prev{grid-area:spark}
.hs-foot{font-size:.76rem;color:var(--color-text-faint);margin-top:2px}

/* ==========================================================
   COMPLIANCE HEALTH METRICS — radial gauge + KPI cards
   (deliberately a different composition from the framework list)
========================================================== */
.hp-kpi{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(0,1.3fr);gap:14px;align-items:stretch;padding:14px;border-radius:14px;background:var(--color-off-white);box-shadow:inset 0 0 0 1px var(--color-border)}
.hh-gauge{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:220px;width:100%;margin:auto;--i:0;container-type:inline-size}
.hh-gauge > svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.hh-track,.hh-ring{fill:none;stroke-width:9}
.hh-track{stroke:var(--color-border)}
.hh-ring{stroke:var(--color-deep-blue);stroke-linecap:round;stroke-dasharray:calc(var(--v) * 1) 100;animation:ring-fill 1.3s cubic-bezier(.3,.7,.2,1) .15s both}
@keyframes ring-fill{from{stroke-dasharray:0 100}}
.hh-center{position:relative;display:grid;justify-items:center;align-content:center;gap:2.4cqw;text-align:center;padding:0;width:62cqw;box-sizing:border-box}
.hh-center b{font-family:var(--serif);font-weight:400;font-size:16cqw;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.hh-center span:not(.trend):not(.sr){font-size:5.8cqw;color:var(--color-text-muted);line-height:1.15;white-space:nowrap}
.hh-center .trend{font-size:5.2cqw;padding:1.8cqw 3.4cqw 1.8cqw 2.4cqw}
.hh-center .trend .nx-ico{width:1.1em;height:1.1em}
.hh-cards{display:grid;gap:10px;align-content:center}
.hk{display:grid;grid-template-columns:minmax(0,1fr) 84px;grid-template-areas:"top spark" "name spark";gap:2px 16px;align-items:center;background:var(--color-surface);border-radius:12px;padding:12px 14px;box-shadow:0 1px 2px rgba(26,26,26,.05),0 10px 20px -16px rgba(0,66,126,.5);border-top:3px solid var(--tone);transition:transform .2s}
.hk:hover{transform:translateY(-2px)}
.hk-top{grid-area:top;display:flex;align-items:center;gap:10px}
.hk-v{font-family:var(--serif);font-size:1.7rem;line-height:1.1;font-variant-numeric:tabular-nums}
.hk-n{grid-area:name;font-size:.8rem;color:var(--color-text-muted)}
.hk .prev{grid-area:spark}





/* ==========================================================
   FROM responsive.css
========================================================== */
/* ==========================================================
   RESPONSIVE — HERO
   component rules remain earlier in this shared stylesheet.
========================================================== */

/* tablet and below: copy first, then the data story */


/* phones: redesign the composition, not just shrink it */


/* very small phones */


/* wide desktop */


/* compact navigation and content clearance for mobile and tablet */
.drawer-backdrop,.mobile-primary{display:none}



/* ==========================================================
   REDUCED MOTION — HERO
   JS (charts.js / animations.js) checks NexenOne.motion.reduced
   and renders the final state with no particles, count-up or drift.
========================================================== */


/* ==========================================================
   UI/UX QA PASS  (loaded last so it refines, never replaces,
   the component rules above)
   1. Hero: whole first screen visible at 100% zoom
   2. Cards: pg-card / steps / links / posts / checklists / choices
   3. Headings, CTA blocks, small fixes
   4. Cookie / privacy consent banner (.cc)
========================================================== */

/* ---------- 1. HERO — first screen fits the viewport ---------- */
.hero{padding:clamp(20px,3.2vh,40px) 0 clamp(40px,6vh,72px)}
.hero h1{font-size:clamp(2.4rem,min(4.6vw,7vh),3.75rem);max-width:none}
.hero-eyebrow{margin-bottom:clamp(12px,2.4vh,22px)}
.hero .lede{margin-top:clamp(14px,2.4vh,24px)}
.hero-ctas{margin-top:clamp(18px,3vh,32px)}
.hero-points{margin-top:clamp(20px,3.4vh,40px);padding-top:clamp(16px,2.6vh,26px)}

/* short desktop / laptop windows: tighten, never crop */

.pg-cards,
.pg-cards.four{border-top:0;padding-top:0;gap:18px}.pg-card,
.pg-card + .pg-card,
.pg-card:nth-child(odd),
.tpl,
.tpl:not(:nth-child(3n+1)){
  padding:24px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface);
  box-shadow:0 1px 2px rgba(26,26,26,.04),0 20px 32px -28px rgba(0,66,126,.4)}
.pg-card,.pg-card + .pg-card,.pg-card:nth-child(odd){border-top:3px solid var(--color-deep-blue)}.tpl{transition:border-color .2s,transform .2s}.tpl:hover{border-color:var(--color-cyan);transform:translateY(-2px)}
.pg-steps{gap:18px}
.pg-steps li{padding:20px;border:1px solid var(--color-border);border-top:3px solid var(--color-deep-blue);border-radius:14px;background:var(--color-surface);align-content:start}
.pg-links{border-top:0;gap:16px}
.pg-links a,.pg-links a:nth-child(even){padding:18px 20px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);transition:border-color .2s,transform .2s}
.pg-links a:hover{border-color:var(--color-cyan);transform:translateY(-2px)}
.pg-callout{max-width:none}
.choose-row{align-items:stretch}
.choice{align-content:start;grid-template-rows:auto 1fr;background:var(--color-surface);box-shadow:0 1px 2px rgba(26,26,26,.04)}
.choice:hover{border-color:var(--color-cyan)}



/* ---------- 3. HEADINGS, CTA BLOCKS, MISC ---------- */
.pg-hero h1{max-width:24ch}
.pg-sec h2,.pg-sec-head h2{max-width:none}
.pg-cta h2{max-width:24ch}
.pg-cta > div{max-width:62ch}



/* ---------- 4. COOKIE / PRIVACY CONSENT ---------- */
.cc{position:fixed;z-index:70;left:20px;bottom:20px;width:min(440px,calc(100vw - 40px));max-height:calc(100svh - 40px);overflow:auto;
  background:var(--color-surface);color:var(--color-charcoal);border:1px solid var(--color-border);border-top:4px solid var(--color-gold);border-radius:16px;
  box-shadow:0 1px 2px rgba(26,26,26,.06),0 30px 60px -24px rgba(0,66,126,.5);animation:ccIn .35s cubic-bezier(.2,.7,.2,1) both}
.cc[hidden]{display:none}
@keyframes ccIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.cc-main{padding:16px 18px 16px}
.cc-title{font-family:var(--serif);font-size:1.15rem;line-height:1.2;max-width:none;margin:0 0 6px;letter-spacing:-.01em}
.cc-desc{font-size:.84rem;line-height:1.5;color:var(--color-text-muted)}
.cc-desc a{color:var(--color-deep-blue);font-weight:600;text-underline-offset:3px}
.cc-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;margin-top:12px}
.cc-actions .btn{white-space:nowrap;flex:1 1 auto;justify-content:center;padding-inline:14px}
.cc-panel{padding:4px 18px 18px;border-top:1px solid var(--color-border);background:var(--color-off-white)}
.cc-panel[hidden]{display:none}
.cc-list{list-style:none;margin:0 0 16px;padding:0}
.cc-list li + li{border-top:1px solid var(--color-border)}
.cc-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;cursor:pointer}
.cc-row-t strong{display:block;font-size:.93rem;font-weight:600}
.cc-row-t small{display:block;font-size:.82rem;line-height:1.4;color:var(--color-text-muted);margin-top:2px}
.cc-sw{position:absolute;opacity:0;width:44px;height:26px;right:0;margin:0;cursor:pointer}
.cc-track{flex:none;position:relative;width:44px;height:26px;border-radius:999px;background:#B8C0CC;transition:background .2s}
.cc-track::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
.cc-sw:checked + .cc-track{background:var(--color-deep-blue)}
.cc-sw:checked + .cc-track::after{transform:translateX(18px)}
.cc-sw:disabled + .cc-track{opacity:.55}
.cc-sw:disabled,.cc-row:has(.cc-sw:disabled){cursor:not-allowed}
.cc-sw:focus-visible + .cc-track{outline:2px solid var(--color-deep-blue);outline-offset:3px}




/* "Demo n of 4" divider: draw the rule across the content width only (the .wrap gutter is padding) */


.pilot 

/* Controls demo: the framework pill row was being forced into the dashboard's two-column
   ".fw-row" grid (same class name, defined twice), squeezing the pills. Restore the wrapping row. */
.ctrl-mods .fw-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;background:none;border:0;border-radius:0;padding:0;box-shadow:none;transform:none;align-items:center}
.ctrl-mods .fw-row .badge{white-space:nowrap}


/* ==========================================================
   ROUND 2
   1. Hero: visual block removed, photographic background
   2. Role tabs card sits fully on the right
   3. Assistant is shown expanded by default
========================================================== */
/* ---------- 1. HERO ---------- */
.hero{--hero-pt:clamp(20px,3.2vh,40px)}
.hero::after{display:none}
.hero-grid{position:relative;grid-template-columns:minmax(0,1fr)}
.hero-copy{max-width:min(100%,640px)}
.hero h1{text-wrap:balance}
.hero-bg{position:absolute;z-index:-1;top:calc(-1 * var(--hero-pt));bottom:0;left:50%;width:100vw;transform:translateX(-50%);overflow:hidden;
  background:linear-gradient(135deg,var(--color-deep-blue-50),#CFE3F5)}
.hero-bg-img{display:block;width:100%;height:100%;object-fit:cover;object-position:62% 38%}
.hero-bg-img.is-failed{visibility:hidden}
.hero-bg::after{content:"";position:absolute;inset:0;pointer-events:none;background:
  linear-gradient(90deg,rgba(6,10,18,.66) 0%,rgba(6,10,18,.52) 40%,rgba(6,10,18,.26) 70%,rgba(6,10,18,.10) 100%)}


/* ---- Hero on dark glass overlay: light text, glass-style controls ---- */
.hero-bg-img{filter:none}
.hero-eyebrow{color:rgba(255,255,255,.92)}
.hero h1{color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.hero .h1-hook:hover,.hero .h1-hook[aria-expanded=true]{color:var(--color-gold)}
.hero .lede{color:rgba(255,255,255,.78)}
.hero .btn-quiet{background:rgba(255,255,255,.06);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.hero .btn-quiet:hover{background:rgba(255,255,255,.14);color:#fff;box-shadow:inset 0 0 0 1.5px var(--color-gold),0 0 0 4px rgba(255,215,0,.18)}
.hero .btn-primary{box-shadow:inset 0 -3px 0 var(--color-gold),0 14px 28px -12px rgba(0,0,0,.6)}
.hero-points{border-top-color:rgba(255,255,255,.18)}
.hero-points li{color:rgba(255,255,255,.7)}
.hero-points strong{color:#fff}
.hero-points .nx-ico-box{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22);border-bottom-width:3px;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.hero-points li:nth-child(1) .nx-ico-box{border-bottom-color:var(--color-gold)}
.hero-points li:nth-child(2) .nx-ico-box{border-bottom-color:var(--color-cyan)}
.hero-points li:nth-child(3) .nx-ico-box{border-bottom-color:#fff}
.hero .h1-pop{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}

/* ---------- 2. ROLE TABS CARD: fully right ---------- */
.hero-roles{margin-left:auto}

/* ---------- 3. ASSISTANT: expanded by default ---------- */
body.menu-open .ask{display:none}   /* same as the launcher: step aside while a menu is open */




/* ==========================================================
   ROUND 3 — ROLE PREVIEW SECTION ("See it for your role")
   Page-like block: intro on the LEFT, role tabs + rotating
   framework cards on the RIGHT. Fits one viewport at 100% zoom.
   Height is fixed (see hpFit in main.js), so rotation never
   moves the layout.
========================================================== */
.hero-roles{margin:0;max-width:none;padding:0;background:none;border:0;border-radius:0;box-shadow:none}
.hr-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4.5vw,72px);align-items:center;width:100%}

/* left: concise supporting content */
.hr-intro{min-width:0;display:grid;gap:clamp(10px,1.8vh,18px);align-content:center}
.hr-eyebrow{display:flex;align-items:center;gap:12px;margin:0;font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-deep-blue)}
.hr-eyebrow::before{content:"";width:28px;height:4px;border-radius:2px;background:var(--color-gold)}
.hr-title{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(2rem,min(3.6vw,6vh),3.1rem);line-height:1.06;letter-spacing:-.02em;color:var(--color-charcoal);text-wrap:balance;max-width:14ch}
.hr-lede{margin:0;max-width:44ch;font-size:clamp(.95rem,1.1vw,1.05rem);line-height:1.55;color:var(--color-text-muted)}
.hr-points{list-style:none;margin:clamp(6px,1.6vh,14px) 0 0;padding:clamp(12px,2vh,20px) 0 0;border-top:1px solid var(--color-border);display:grid;gap:clamp(10px,1.8vh,16px)}
.hr-points li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;font-size:.9rem;line-height:1.4;color:var(--color-text-muted)}
.hr-points strong{display:block;color:var(--color-charcoal);font-weight:600}
.hr-points .nx-ico-box{width:40px;height:40px;border-radius:10px;border:1px solid var(--color-border);border-bottom:3px solid var(--color-gold);background:var(--color-surface);display:grid;place-items:center;color:var(--color-deep-blue)}
.hr-points li:nth-child(2) .nx-ico-box{border-bottom-color:var(--color-cyan)}
.hr-points li:nth-child(3) .nx-ico-box{border-bottom-color:var(--color-deep-blue)}
.hr-intro .hp-partner{margin:2px 0 0}

/* right: the panel (moved here from .hero-roles) */
.hr-grid > .hp{gap:10px;padding:10px 12px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-top:3px solid var(--color-cyan);border-radius:16px;box-shadow:0 24px 40px -32px rgba(0,66,126,.45);align-self:center}
.hr-grid .hp-body{padding:12px 14px 2px;gap:8px;align-content:start}
.hr-grid .hp-q{font-size:clamp(1.2rem,1.7vw,1.5rem)}
.hr-grid .hp-foot{padding:8px 14px 12px}
.hr-grid .hh-gauge{max-width:150px}

/* framework cards: clearly distinct, strong hierarchy */
.hr-grid .hp-score{gap:10px}
.hr-grid .fw-row{grid-template-columns:minmax(0,1fr) 104px;gap:8px 18px;padding:12px 16px 12px 18px;border-left-width:5px;border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.06),0 12px 22px -16px rgba(0,66,126,.5)}
.hr-grid .fw-n{font-size:.98rem}
.hr-grid .fw-p{font-size:1.6rem}
.hr-grid .fw-track{height:9px}
.hr-grid .fw-row .prev{align-self:stretch;align-content:center;padding-left:16px;border-left:1px solid var(--color-border)}
.hr-grid .fw-row .prev b{font-size:1.2rem}
.hr-grid .hs-foot{margin-top:0}

/* desktop / laptop: the section is one screen */

/* shorter laptop windows: tighten, never crop */



/* tablet and mobile: stack, intro first, no fixed screen height */




/* ROUND 3b — tighter panel so the tallest slide still fits one screen */
.hr-grid .hp-roles{gap:6px 5px}
.hr-grid .hp-lab{margin-bottom:0;font-size:.8rem}
.hr-grid .hp-role{font-size:.8rem;padding:6px 11px;white-space:nowrap}
.hr-grid .hp-ctx{margin:0}
.hr-grid .hp-score{gap:8px}
.hr-grid .fw-row{padding:9px 14px 9px 16px;gap:6px 16px}
.hr-grid .fw-p{font-size:1.45rem}
.hr-grid .fw-track{height:8px}
.hr-grid .hp-ins{padding:10px 16px 10px 12px;gap:8px}
.hr-grid .hp-ins p{font-size:.88rem;line-height:1.4}
.hr-grid .hp-do{padding:6px 12px}
.hr-grid .hp-body{padding:10px 16px 2px;gap:9px}
.hr-grid .hp-foot{padding:6px 16px 12px}


/* ROUND 3c — short laptop windows (e.g. 1366x768 at 100%): scale the panel so the whole section stays on one screen */



/* ==========================================================
   ROUND 4 — role section: auto-moving tabs, wider card,
   hero and role section are one screen each (no overlap)
========================================================== */
/* sliding active-tab indicator */
.hp-roles{position:relative}
.hp-ind{position:absolute;left:0;top:0;z-index:0;border-radius:999px;background:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);pointer-events:none;opacity:0;transition:transform .55s cubic-bezier(.3,.1,.2,1),width .55s cubic-bezier(.3,.1,.2,1),height .3s}
.hp-roles.has-ind .hp-ind{opacity:1}
.hp-roles.has-ind .hp-role{position:relative;z-index:1;transition:color .35s,border-color .35s}
.hp-roles.has-ind .hp-role[aria-selected="true"]{background:transparent;border-color:transparent;box-shadow:none;color:#fff}
.hp-lab{position:relative;z-index:1}
/* content slides in from the right as the tab moves */
.hr-grid .hp-card.in .hp-body{animation:hprole .6s cubic-bezier(.3,.1,.2,1)}
@keyframes hprole{from{opacity:0;transform:translateX(28px)}}

/* wider card: the section container is widened instead of letting the card spill out */





/* ==========================================================
   ROUND 5 — visible carousel, larger card, self-contained screens
========================================================== */
/* content slides out to the left, new content slides in from the right */
.hr-grid .hp-card.out .hp-body{opacity:0;transform:translateX(-36px);transition:opacity .26s ease,transform .26s ease}
.hr-grid .hp-card .hp-body{transition:none}
.hr-grid .hp-card.in .hp-body{animation:hprole .7s cubic-bezier(.25,.8,.25,1)}
@keyframes hprole{from{opacity:0;transform:translateX(48px)}}
/* clearer position indicators */
.hr-grid .hp-dots{gap:8px}
.hr-grid .hp-dots button{width:10px;height:10px;transition:width .35s,background .35s}
.hr-grid .hp-dots button[aria-current=true]{width:30px;background:var(--color-deep-blue)}
.hr-grid .hp-prog{height:4px}
.hr-grid .hp-prog i{background:var(--color-gold)}

/* bigger content, scaled by available height (--sc) so the card stays inside its screen */
.hr-grid{--sc:1}


















.hr-grid .hp-body{align-content:center}
.hr-grid .hp-role{font-size:calc(.86rem * var(--sc));padding:calc(7px * var(--sc)) calc(14px * var(--sc))}
.hr-grid .hp-lab{font-size:calc(.84rem * var(--sc))}
.hr-grid .hp-ctx{font-size:calc(.74rem * var(--sc))}
.hr-grid .hp-q{font-size:clamp(1.3rem,calc(1.55rem * var(--sc) * 1.12),2.3rem)}
.hr-grid .hp-voice{font-size:calc(.8rem * var(--sc))}
.hr-grid .hp-row{padding:calc(10px * var(--sc)) calc(14px * var(--sc))}
.hr-grid .hp-row b{font-size:calc(.95rem * var(--sc))}
.hr-grid .hp-row small{font-size:calc(.82rem * var(--sc))}
.hr-grid .hp-chip{font-size:calc(.78rem * var(--sc))}
.hr-grid .hp-res{font-size:calc(1rem * var(--sc))}
.hr-grid .hp-ins p{font-size:calc(.92rem * var(--sc))}
.hr-grid .hp-do{font-size:calc(.86rem * var(--sc))}
.hr-grid .hp-link{font-size:calc(1rem * var(--sc))}
.hr-grid .fw-n{font-size:calc(1rem * var(--sc))}
.hr-grid .fw-p{font-size:calc(1.5rem * var(--sc))}
.hr-grid .fw-row .prev b{font-size:calc(1.2rem * var(--sc))}
.hr-grid .prev small{font-size:calc(.7rem * var(--sc))}
.hr-grid .hk-v{font-size:calc(1.7rem * var(--sc))}
.hr-grid .hk-n{font-size:calc(.82rem * var(--sc))}
.hr-grid .hh-gauge{max-width:calc(150px * var(--sc))}
.hr-grid .hp-bars p,.hr-grid .hp-leg{font-size:calc(.88rem * var(--sc))}
.hr-grid .hp-tile span{font-size:calc(.88rem * var(--sc))}
.hr-grid .hp-grid{font-size:calc(.86rem * var(--sc))}
.hr-grid .hp-quote p{font-size:calc(.95rem * var(--sc))}
.hr-grid .hp-diff p{font-size:calc(.92rem * var(--sc))}
.hr-grid .hp-line{font-size:calc(.92rem * var(--sc))}
.hr-grid .hs-foot{font-size:calc(.78rem * var(--sc))}
/* left column scales with the same factor */
.hr-grid .hr-lede{font-size:calc(1rem * var(--sc))}
.hr-grid .hr-points li{font-size:calc(.9rem * var(--sc))}
.hr-grid .hr-title{font-size:clamp(2rem,calc(2.5rem * var(--sc) * 1.1),3.6rem)}

/* short laptop: keep the previous scale-down as a last resort (round 4 values) */



/* framework cards: 2 x 2 on the wide card (uses the width, saves height); stack again on narrow screens */
.hr-grid .hp-score{grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(10px * var(--sc))}
.hr-grid .hp-score .hs-foot{grid-column:1 / -1}
.hr-grid .fw-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "track" "spark";gap:calc(8px * var(--sc))}
.hr-grid .fw-row .prev{border-left:0;padding-left:0;justify-items:start;grid-auto-flow:column;justify-content:start;gap:8px;align-items:baseline;align-self:auto}


/* ---------- self-contained screens: short blocks fill one screen so the neighbours never show ---------- */

.hero-roles,.choose,.problem,.see,.trust,.svc-band-sec,.final{scroll-margin-top:0}


/* ==========================================================
   CHOOSER — "What brings you to NexenOne?"
   Colour-coded cards, icon badges, hover + selected motion.
   Each card sets its own accent through --acc / --acc-soft.
========================================================== */
.choose{position:relative;isolation:isolate}
.choose::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);pointer-events:none;
  background:
    radial-gradient(520px 320px at 12% 18%,rgba(0,168,232,.10),transparent 70%),
    radial-gradient(520px 320px at 88% 12%,rgba(255,215,0,.12),transparent 70%),
    radial-gradient(640px 360px at 55% 100%,rgba(0,66,126,.07),transparent 70%),
    linear-gradient(180deg,#F5F7FA 0%,#EEF4FA 100%)}
.choose-q{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.4vw,2rem);letter-spacing:-.01em;display:flex;align-items:center;gap:14px;margin-bottom:22px}
.choose-q::before{content:"";width:28px;height:4px;border-radius:2px;background:var(--color-gold)}

.choice:nth-child(1){--acc:#00427E;--acc-soft:rgba(0,66,126,.10)}
.choice:nth-child(2){--acc:#E6B800;--acc-soft:rgba(255,215,0,.20)}
.choice:nth-child(3){--acc:#00A8E8;--acc-soft:rgba(0,168,232,.14)}
.choice:nth-child(4){--acc:#4F5BD5;--acc-soft:rgba(79,91,213,.12)}

.choice{position:relative;overflow:hidden;isolation:isolate;cursor:pointer;padding:22px 22px 24px;border:1.5px solid var(--color-border);border-radius:18px;
  background:linear-gradient(160deg,#fff 0%,#fff 55%,var(--acc-soft) 100%);
  box-shadow:0 1px 2px rgba(26,26,26,.05),0 14px 28px -22px rgba(0,66,126,.35);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .25s,background .35s}
/* accent bar that sweeps in along the top edge */
.choice::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:var(--acc);transform:scaleX(.28);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
/* soft light that follows the hover */
.choice::after{content:"";position:absolute;z-index:-1;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,var(--acc-soft),transparent 70%);opacity:.7;transition:transform .6s cubic-bezier(.2,.7,.2,1),opacity .4s}
.choice:hover{transform:translateY(-8px);border-color:var(--acc);box-shadow:0 2px 4px rgba(26,26,26,.05),0 30px 44px -24px var(--acc)}
.choice:hover::before{transform:scaleX(1)}
.choice:hover::after{transform:scale(1.9);opacity:1}
.choice:active{transform:translateY(-3px) scale(.99)}
.choice:focus-visible{outline:3px solid var(--acc);outline-offset:3px}

/* icon badge */
.ch-ico{grid-column:1 / -1;grid-row:1;justify-self:start;width:46px;height:46px;border-radius:13px;display:grid;place-items:center;margin-bottom:12px;
  color:var(--acc);background:var(--acc-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--acc) 30%,transparent);
  transition:transform .45s cubic-bezier(.3,1.4,.5,1),background .3s,color .3s,box-shadow .3s}
.ch-ico svg{width:24px;height:24px}
.choice:hover .ch-ico{transform:translateY(-2px) rotate(-8deg) scale(1.12);background:var(--acc);color:#fff;box-shadow:0 10px 18px -8px var(--acc)}
.choice:nth-child(2):hover .ch-ico{color:#1A1A1A}

/* radio moves to the top-right corner */
.choice .radio{position:absolute;top:20px;right:20px;margin:0;width:22px;height:22px;border-color:#B7C0CC;background:#fff;transition:border-color .25s,transform .3s}
.choice:hover .radio{border-color:var(--acc);transform:scale(1.1)}
.choice[aria-checked=true] .radio{border-color:var(--acc)}
.choice[aria-checked=true] .radio::after{inset:4px;background:var(--acc);animation:chpop .35s cubic-bezier(.3,1.6,.5,1)}
@keyframes chpop{from{transform:scale(0)}}

/* text sits under the badge, full width */
.choice strong,.choice span.sub{grid-column:1 / -1}
.choice strong{font-size:1.1rem;line-height:1.3;color:var(--color-charcoal);transition:color .25s}
.choice span.sub{margin-top:2px;line-height:1.5;transition:color .25s}
.choice:hover span.sub{color:var(--color-charcoal)}

/* selected state: tinted, glowing, bar fully drawn */
.choice[aria-checked=true]{border-color:var(--acc);background:linear-gradient(160deg,#fff 0%,var(--acc-soft) 100%);box-shadow:0 0 0 4px var(--acc-soft),0 26px 40px -26px var(--acc)}
.choice[aria-checked=true]::before{transform:scaleX(1)}
.choice[aria-checked=true] .ch-ico{background:var(--acc);color:#fff}
.choice[aria-checked=true]:nth-child(2) .ch-ico{color:#1A1A1A}

/* the detail panel that opens after a choice */
.fit{border:1px solid var(--color-border);border-left:5px solid var(--color-gold);border-radius:16px;box-shadow:0 22px 40px -30px rgba(0,66,126,.4);animation:chfit .45s cubic-bezier(.2,.7,.2,1)}
.fit strong{color:var(--color-deep-blue)}
.fit li::before{background:var(--color-cyan);height:3px;border-radius:2px}
@keyframes chfit{from{opacity:0;transform:translateY(10px)}}

/* staggered entrance */
.choose-row .choice{animation:chrise .6s cubic-bezier(.2,.7,.2,1) both}
.choose-row .choice:nth-child(2){animation-delay:.07s}
.choose-row .choice:nth-child(3){animation-delay:.14s}
.choose-row .choice:nth-child(4){animation-delay:.21s}
@keyframes chrise{from{opacity:0;transform:translateY(22px)}}




/* ==========================================================
   ROUND 5 — UNDERSTAND SECTION + MOBILE
   1. Section is exactly one screen on desktop, both states
   2. "Today": readable, colour-coded file cards
   3. "With NexenOne": compact, colour-coded system cards
   4. Phones: tighter spacing, nothing covering the content
========================================================== */

/* ---------- 2. TODAY: file cards (text was white on white before) ---------- */
.problem .frag{--fc:#2B6CB0;position:relative;color:var(--color-charcoal);background:#fff;border:0;border-left:5px solid var(--fc);border-radius:12px;padding:14px 16px 14px 16px;
  box-shadow:0 18px 34px -20px rgba(0,0,0,.55);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.problem .frag::before{content:"";position:absolute;top:-8px;left:50%;width:56px;height:15px;background:rgba(255,215,0,.6);transform:translateX(-50%) rotate(-3deg);border-radius:2px}
.problem .f1{--fc:#1F9D55}.problem .f2{--fc:#F08A24}.problem .f3{--fc:#D64545}.problem .f4{--fc:#2B6CB0}
.problem .fh{display:flex;align-items:center;gap:10px;min-width:0}
.problem .ft{flex:none;font:700 .64rem var(--mono);letter-spacing:.07em;color:#fff;background:var(--fc);border-radius:5px;padding:3px 7px}
.problem .frag .k{color:var(--color-text-muted);font-size:.76rem;min-width:0}
.problem .frag .t{font-family:var(--serif);font-weight:400;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.22;margin-top:10px;color:var(--color-charcoal)}
.problem .fm{display:flex;align-items:center;gap:7px;margin:10px 0 0;font-size:.76rem;font-weight:600;color:#9A3528}
.problem .fm::before{content:"";width:7px;height:7px;border-radius:50%;background:#D64545;box-shadow:0 0 0 3px rgba(214,69,69,.2);flex:none;animation:nx-ping 2.4s ease-out infinite}
.problem .scatter .frag:hover{transform:rotate(0) translateY(-8px) scale(1.03);z-index:2;box-shadow:0 30px 44px -22px rgba(0,0,0,.65)}

/* ---------- 3. WITH NEXENONE: colour-coded systems ---------- */
.problem .sys{--acc:#00A8E8;--acc-ink:#007AA8;--acc-soft:rgba(0,168,232,.12);border-top:3px solid var(--acc);padding:12px 14px;gap:7px;transition:background .3s,box-shadow .3s}
.problem .sys:nth-child(2){--acc:#F2B800;--acc-ink:#856800;--acc-soft:rgba(255,215,0,.2)}
.problem .sys:nth-child(3){--acc:#00427E;--acc-ink:#00427E;--acc-soft:rgba(0,66,126,.1)}
.problem .sys:nth-child(4){--acc:#4F5BD5;--acc-ink:#3B45B0;--acc-soft:rgba(79,91,213,.12)}
.problem .sys:hover{background:linear-gradient(180deg,var(--acc-soft),#fff 70%);box-shadow:inset 0 0 0 1px var(--acc)}
.problem .sys h4{font-size:.95rem}
.problem .sys h4::before{background:var(--acc);transition:transform .3s}
.problem .sys:hover h4::before{transform:rotate(45deg) scale(1.35)}
.problem .sys .what{font-size:.8rem;line-height:1.35}
.problem .sys .was{padding-top:6px;font-size:.72rem}
.problem .row{padding:5px 8px;font-size:.76rem;transition:transform .2s,border-color .2s}
.problem .row:hover{transform:translateX(3px);border-color:var(--acc)}
.problem .row .id{color:var(--acc-ink)}
.problem .row.hl{border-color:var(--acc);box-shadow:0 0 0 2px var(--acc-soft)}
.problem .ctrl-chip{background:var(--acc-soft);color:var(--acc-ink)}
.problem .ver{padding:4px 0}
.problem .ver.cur .st{background:var(--acc-ink)}
.problem .ac-total .big{font-size:1.6rem}
.problem .ac{gap:5px}
.problem .ac-row .bar{height:5px}
.problem .ac-row .bar i{background:var(--acc);transform-origin:left}
.problem .layer.enter .ac-row .bar i{animation:nxbar .9s .25s cubic-bezier(.2,.7,.2,1) backwards}
@keyframes nxbar{from{transform:scaleX(0)}}
.problem .platform-bar{padding:9px 14px;background:linear-gradient(90deg,#fff,#E8F2FB)}
.problem .platform-bar span{background:var(--color-gold-50);color:var(--color-gold-ink)}
.problem .platform-bar span::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#1F9D55;margin-right:6px;animation:nx-ping 2.4s ease-out infinite}

/* ---------- 1. DESKTOP: the section is exactly one screen ---------- */




/* ---------- 4. PHONES / TABLETS ---------- */



/* the navy section sets white text; the white panel and cards must reset it (titles and row names were invisible) */
.problem .platform,.problem .platform .sys,.problem .platform-bar strong{color:var(--color-charcoal)}
.problem .platform .sys .what,.problem .platform .row .meta,.problem .platform .ver .by,.problem .platform .auditor,.problem .platform .ac-total span{color:var(--color-text-muted)}
.problem .platform .was{color:var(--color-text-faint)}
.problem .platform .ac-row .c{color:var(--color-charcoal)}
.problem .platform .row .id{color:var(--acc-ink)}
.problem .platform .ver.cur .st{color:#fff}

/* ---------- PHONES: chooser cards in a compact row layout, smaller cookie notice ---------- */





/* selected "Frameworks" card: brand navy with a gold edge instead of black */


/* ==========================================================
   FROM demo-sections.css
========================================================== */
/* Nexen Demo styling for the sections from "See it work" to the footer.
   Kept after the responsive rules so these styles take the place of the Nexen Minds versions for those sections only.
   Hero, Understand and header rules are untouched. */

.os-detail{position:static;background:var(--card);border:1px solid var(--rule);border-radius:18px;padding:clamp(22px,3vw,32px)}
.fw-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:8px;padding:18px; background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px; box-shadow:0 1px 2px rgba(0,30,60,.04),0 18px 36px -26px rgba(0,66,126,.45)}
.fw-badges .badge{display:flex;align-items:center;gap:10px;min-width:0;line-height:1.25; padding:13px 20px 13px 18px;font-size:.95rem;color:var(--color-charcoal); background:var(--color-off-white);border:1px solid var(--color-border)}
.fw-badges .badge:nth-child(3){grid-column:span 2}
.fw-badges .badge::before{content:"";flex:none;width:9px;height:9px;border-radius:50%; background:var(--color-gold);box-shadow:0 0 0 3px rgba(255,215,0,.22);transition:background .2s,box-shadow .2s}





.trust-float{position:absolute;z-index:1;left:clamp(16px,2.4vw,26px);bottom:clamp(16px,2vw,24px);display:flex;align-items:center;gap:12px;padding:12px 14px;background:rgba(245,247,250,.96);border-radius:12px;border:1px solid rgba(0,66,126,.1);box-shadow:0 12px 24px -18px rgba(0,0,0,.45);max-width:min(420px,calc(100% - 32px));animation:none}
.trust-float-ico{width:34px;height:34px;border-radius:10px;background:var(--color-deep-blue);color:var(--color-gold);display:grid;place-items:center;flex:none}
.trust-float strong{display:block;font-size:.82rem;line-height:1.2;font-weight:600}
.trust-float small{font-size:.72rem;color:var(--color-text-muted)}



.see-tab{overflow:hidden;isolation:isolate}
.see-tab::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit; background:linear-gradient(110deg,transparent 30%,rgba(0,168,232,.14) 50%,transparent 70%); transform:translateX(-120%);transition:transform .7s ease}
.see-tab:hover::before{transform:translateX(120%)}
.see-tab:hover{transform:translateY(-4px);border-color:var(--color-cyan);box-shadow:0 16px 30px -20px rgba(0,66,126,.5)}
.see-tab:hover::after{transform:scaleX(.45)}
.see-tab[aria-selected="true"]:hover::after{transform:none}
.see-tab:active{transform:translateY(-1px) scale(.985)}
.st-n{transition:color .25s,transform .35s cubic-bezier(.3,1.6,.5,1)}
.see-tab:hover .st-n{transform:scale(1.18)}



@keyframes tabIn{0%{opacity:0;transform:translateY(26px) scale(.96)} 70%{opacity:1;transform:translateY(-3px) scale(1.01)} 100%{opacity:1;transform:none}}
.see-tab[aria-selected="true"]::after{animation:tabLine .5s ease backwards}
.see-tab[aria-selected="true"] .st-n{animation:tabPulse .7s ease backwards}
@keyframes tabLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes tabPulse{0%{transform:scale(1)}40%{transform:scale(1.5)}100%{transform:scale(1)}}



.trust-grid{align-items:stretch}
.trust-grid h3{align-self:center}
.trust-item{position:relative;overflow:hidden;background:var(--card,#fff);border:1px solid var(--rule); border-radius:18px;padding:22px 20px 24px;box-shadow:0 1px 2px rgba(0,30,60,.04),0 10px 24px -20px rgba(0,66,126,.35)}
.trust-item::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--color-gold); transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.trust-item svg{box-sizing:content-box;width:26px;height:26px;padding:13px;border-radius:14px; background:rgba(0,66,126,.08);margin-bottom:16px;transition:transform .25s ease,background .25s,color .25s}
.trust-item strong{font-size:1.02rem;line-height:1.35;margin-bottom:8px}
.trust-item p{line-height:1.55}
.trust-item:hover,.trust-item[data-reveal].is-in:hover{transform:translateY(-5px);border-color:var(--color-cyan); box-shadow:0 18px 34px -20px rgba(0,66,126,.55)}
.trust-item:hover::before{transform:scaleX(1)}
.trust-item:hover svg{background:var(--color-deep-blue);color:#fff;transform:translateY(-2px) scale(1.06)}
.trust-item[data-reveal].is-in{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,opacity .7s ease}



.trust-grid{gap:clamp(14px,1.8vw,24px)}
.trust-grid h3{padding-right:clamp(8px,2vw,28px)}
.cd-int-grid{border-top:0;gap:clamp(12px,1.4vw,18px);align-items:stretch}
.cd-int,.cd-int + .cd-int{position:relative;overflow:hidden;align-content:start;gap:8px; background:var(--card,#fff);border:1px solid var(--rule);border-left:1px solid var(--rule); border-radius:16px;padding:20px 18px 22px; box-shadow:0 1px 2px rgba(0,30,60,.04),0 10px 24px -20px rgba(0,66,126,.35)}
.cd-int::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--color-gold); transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.cd-int svg{box-sizing:content-box;width:24px;height:24px;padding:12px;border-radius:13px; background:rgba(0,66,126,.08);color:var(--color-deep-blue);margin-bottom:6px; transition:transform .3s cubic-bezier(.3,1.6,.5,1),background .25s,color .25s}
.cd-int strong{font-size:1rem;line-height:1.35}
.cd-int p{line-height:1.55}
.cd-int,.cd-int[data-reveal].is-in{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,opacity .7s ease}
.cd-int:hover,.cd-int[data-reveal].is-in:hover{transform:translateY(-5px);border-color:var(--color-cyan); box-shadow:0 18px 34px -20px rgba(0,66,126,.55)}
.cd-int:hover::before{transform:scaleX(1)}
.cd-int:hover svg{background:var(--color-deep-blue);color:#fff;transform:translateY(-2px) rotate(-6deg) scale(1.08)}







#see .sec-head h2::after, #trust .sec-head h2::after, #services .sec-head h2::after, #final .sec-head h2::after{content:"";display:block;width:56px;height:3px;border-radius:3px;margin-top:14px;background:var(--color-gold)}



.mf{position:relative;overflow:hidden; box-shadow:0 1px 2px rgba(0,30,60,.04),0 10px 24px -20px rgba(0,66,126,.35); transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,border-color .3s ease}
.mf::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--color-gold); transform:scaleX(0);transform-origin:left;transition:transform .45s ease}
.mf::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;pointer-events:none; background:linear-gradient(100deg,transparent,rgba(0,168,232,.10),transparent);transform:skewX(-18deg);transition:left .7s ease}
.mf:hover{transform:translateY(-6px);border-color:var(--color-cyan);box-shadow:0 22px 38px -22px rgba(0,66,126,.55)}
.mf:hover::before{transform:scaleX(1)}
.mf:hover::after{left:130%}
.mf h3{transition:color .25s}
.mf:hover h3{color:var(--color-deep-blue)}
.mf .fwk{transition:color .25s}
.mf:hover .fwk{color:var(--color-deep-blue)}
.mod{position:relative;cursor:pointer;transition:background .25s ease,transform .25s ease,box-shadow .25s ease}
.mod::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-gold); transform:scaleY(0);transform-origin:top;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.mod:hover,.mod:focus-visible{background:var(--color-surface,#fff);box-shadow:0 14px 28px -20px rgba(0,66,126,.45);z-index:1}
.mod:hover::before,.mod:focus-visible::before,.mod[aria-expanded=true]::before{transform:scaleY(1)}
.mod strong::after{transition:transform .35s cubic-bezier(.3,1.6,.5,1),color .2s}
.mod:hover strong::after{transform:rotate(90deg);color:var(--color-deep-blue)}
.mod[aria-expanded=true]:hover strong::after{transform:rotate(135deg)}
.mod .md{transform:translateY(-4px);transition:max-height .4s ease,opacity .3s ease .05s,transform .35s ease}
.mod[aria-expanded=true] .md{transform:none}
@keyframes modIn{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.mod-grid:not([hidden]) .mod{animation:modIn .5s cubic-bezier(.2,.8,.2,1) calc(var(--i,0) * 55ms) backwards}



:root{--cut:clamp(28px,4vw,64px)}
#understand{z-index:2;background:linear-gradient(var(--color-deep-blue),var(--color-deep-blue)) 0 0/100% calc(100% - var(--cut) + 1px) no-repeat}
#understand::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 64' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V8L0 64z' fill='%2300427E'/%3E%3Cpath d='M0 64L1440 8' stroke='%23FFD700' stroke-width='3' fill='none' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")}


/* ==========================================================
   ROUND 5 — (1) "See it for your role" panel on the RIGHT of the hero banner
             (2) lighter, transparent brand-blue overlay on the hero photo
========================================================== */

/* ---------- 1. Hero: copy left, role panel right ---------- */
.hero-grid.hr-grid{--sc:.74;align-items:center}
.hero-grid.hr-grid > .hp{
  position:relative;z-index:1;width:100%;min-width:0;align-self:center;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.55);border-top:3px solid var(--color-cyan);
  border-radius:16px;box-shadow:0 30px 60px -28px rgba(0,30,60,.55);
}
.hero-grid.hr-grid .hp-lab{color:var(--color-text-faint)}



/* the section underneath keeps only the intro text now: compact two-column band instead of a full screen */


/* ---------- 2. Hero photo overlay: soft transparent brand-blue shade ---------- */
.hero-bg::after{
  background:
    linear-gradient(90deg,rgba(0,40,80,.58) 0%,rgba(0,66,126,.40) 45%,rgba(0,66,126,.22) 100%);
}



/* ==========================================================
   "Demo 1 of 4 / Next: ..." footer — step dots, drawn line,
   shimmer underline and a pulsing arrow chip
========================================================== */
@keyframes seeDraw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes seeDotIn{from{opacity:0;transform:scale(.2)}to{opacity:1;transform:none}}
@keyframes seeFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes seeSlide{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:none}}
@keyframes seeNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(7px)}}
@keyframes seeDrop{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
@keyframes seePulse{0%{box-shadow:0 0 0 0 rgba(0,168,232,.45)}70%,100%{box-shadow:0 0 0 12px rgba(0,168,232,0)}}
@keyframes seeSweep{from{background-position:200% 0}to{background-position:-200% 0}}

.see-foot{position:relative;border-top-color:transparent}
.see-foot::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,var(--color-cyan),var(--rule) 40%,var(--rule));
  transform:scaleX(0);transform-origin:left;
}
.pilot .see-foot::before{background:linear-gradient(90deg,var(--color-gold),var(--night-rule) 40%,var(--night-rule))}
.see-foot.in::before{animation:seeDraw .9s cubic-bezier(.2,.7,.2,1) both}

/* step dots */
.see-step{display:inline-flex;align-items:center;gap:14px}
.see-dots{display:inline-flex;align-items:center;gap:6px}
.see-dots i{position:relative;width:8px;height:8px;border-radius:99px;background:var(--rule);overflow:hidden;opacity:0;transform:scale(.2)}
.see-dots i.done{background:var(--color-cyan)}
.see-dots i.on{width:30px;background:var(--rule)}
.see-dots i.on::after{content:"";position:absolute;inset:0;background:var(--color-gold);transform:scaleX(0);transform-origin:left}
.pilot .see-dots i{background:var(--night-rule)}
.pilot .see-dots i.done{background:#9DB3F5}
.see-foot.in .see-dots i{animation:seeDotIn .45s cubic-bezier(.2,.8,.3,1.3) both}
.see-foot.in .see-dots i:nth-child(2){animation-delay:.08s}
.see-foot.in .see-dots i:nth-child(3){animation-delay:.16s}
.see-foot.in .see-dots i:nth-child(4){animation-delay:.24s}
.see-foot.in .see-dots i.on::after{animation:seeFill 1.1s .45s cubic-bezier(.3,.1,.2,1) both}

/* next button: slides in, shimmer underline, pulsing arrow chip */
.see-next{
  position:relative;border-bottom:0;padding:8px 6px 10px 0;
  opacity:0;transform:translateX(26px);
  transition:color .25s,padding .3s;
}
.see-foot.in .see-next{animation:seeSlide .7s .25s cubic-bezier(.2,.7,.2,1) both}
.see-next::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--rule) 0%,var(--color-cyan) 25%,var(--color-gold) 50%,var(--color-cyan) 75%,var(--rule) 100%);
  background-size:200% 100%;
  animation:seeSweep 3.2s linear infinite;
}
.see-next span[aria-hidden]{
  display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;
  background:var(--color-deep-blue-50);color:var(--blue);
  transition:background .25s,color .25s;
}
.see-foot.in .see-next span[aria-hidden]{animation:seeNudge 1.6s 1s ease-in-out infinite,seePulse 2s 1s ease-out infinite}
.see-foot.in a.see-next span[aria-hidden]{animation:seeDrop 1.6s 1s ease-in-out infinite,seePulse 2s 1s ease-out infinite}
.see-next:hover span[aria-hidden],.see-next:focus-visible span[aria-hidden]{background:var(--color-deep-blue);color:var(--color-gold);animation-play-state:paused}
.see-next:hover{color:var(--blue)}
.pilot .see-next span[aria-hidden]{background:rgba(157,179,245,.16);color:#9DB3F5}
.pilot .see-next:hover{color:#fff}
.pilot .see-next:hover span[aria-hidden]{background:var(--color-gold);color:#10163A}





/* ==========================================================
   MODULES — auto "hover" loop (featured cards + the 12-module grid)
========================================================== */
@keyframes modFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes modPing{0%{transform:scale(1)}40%{transform:scale(1.5)}100%{transform:scale(1)}}

/* featured cards: same as hover + a progress line */
.mf.is-auto{transform:translateY(-6px);border-color:var(--color-cyan);box-shadow:0 22px 38px -22px rgba(0,66,126,.55)}
.mf.is-auto::before{transform:scaleX(1);transition:transform var(--auto-ms,2600ms) linear}
.mf.is-auto::after{left:130%}
.mf.is-auto h3,.mf.is-auto .fwk{color:var(--color-deep-blue)}

/* grid cells */
.mod::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,var(--color-gold),var(--color-cyan));
  transform:scaleX(0);transform-origin:left;pointer-events:none;
}
.mod.is-auto{background:var(--color-surface,#fff);box-shadow:0 14px 28px -20px rgba(0,66,126,.45);z-index:1}
.mod.is-auto::before{transform:scaleY(1)}
.mod.is-auto::after{animation:modFill var(--auto-ms,1700ms) linear both}
.mod.is-auto strong{color:var(--color-deep-blue)}
.mod.is-auto strong::after{transform:rotate(90deg);color:var(--color-deep-blue);animation:modPing .6s ease-out}
.mod-grid:hover .mod.is-auto:not(:hover):not(:focus-visible):not([aria-expanded=true]){background:transparent;box-shadow:none;z-index:auto}
.mod-grid:hover .mod.is-auto:not(:hover):not([aria-expanded=true])::before{transform:scaleY(0)}




/* ---------- "Unified compliance visibility" band removed: close the leftover gap under the hero ---------- */
.hero{padding-bottom:0}
.hero + .choose,.hero .choose{margin-top:0}



/* ---------- Solutions pages: cards in the "What brings you to NexenOne?" style ----------
   main.js tags the cards (.pg-rv) after each route render and adds .is-in on scroll. */
.pg-steps li{position:relative;overflow:hidden}
@keyframes pgIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes heroMediaIn{from{opacity:0;transform:translateX(34px) scale(.97)}to{opacity:1;transform:none}}

/* ==========================================================
   PLATFORM PAGE (former platform.css)
========================================================== */
/* ==========================================================
   NEXEN ONE — platform.css
   Platform page only (#/platform/*). Every selector is scoped
   to .pf so nothing here can reach another page or section.
   Uses the existing tokens from main.css (colours, fonts, --max).
========================================================== */

.pf{
  --pf-gap:20px;
  overflow-x:clip;               /* the page can never gain a horizontal scrollbar from this section */
  padding-bottom:clamp(32px,5vw,56px); /* clear space above the fixed "Ask" button */
}

/* ---------- HERO ---------- */
.pf-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(16px,3vw,28px) 0 clamp(18px,4vw,32px);
  background:
    radial-gradient(60% 90% at 88% 20%, rgba(0,168,232,.20), transparent 62%),
    radial-gradient(45% 70% at 100% 100%, rgba(255,215,0,.22), transparent 65%),
    radial-gradient(40% 60% at 0% 100%, rgba(255,215,0,.10), transparent 70%),
    linear-gradient(180deg, #F8FAFD 0%, #EAF2FA 100%);
}
.pf-art{
  position:absolute;
  z-index:-1;
  right:max(-60px, calc((100vw - var(--max)) / -4));
  top:50%;
  width:min(680px,62vw);
  height:auto;
  transform:translateY(-50%);
  opacity:.9;
  pointer-events:none;
}
.pf-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  gap:clamp(28px,4vw,56px);
  align-items:center;
}
.pf-copy{min-width:0}
.pf-copy h1{
  font-size:clamp(2.2rem,4.6vw,3.5rem);
  line-height:1.06;
  letter-spacing:-.02em;
  color:var(--ink);
}
.pf-mark{
  color:var(--blue);
  background:linear-gradient(var(--color-gold),var(--color-gold)) 0 94% / 100% .13em no-repeat;
  padding-bottom:.04em;
}
.pf-copy .lede{margin-top:18px;max-width:46ch}
.pf-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.pf-cta .btn{justify-content:center}

/* stat cards */
.pf-stats{
  list-style:none;margin:0;padding:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-rows:1fr;           /* all four stat cards the same height */
  gap:14px;
}
.pf-stats li{
  display:flex;align-items:center;gap:14px;
  min-width:0;
  padding:18px 20px;
  border-radius:20px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(220,226,234,.9);
  box-shadow:0 1px 0 rgba(255,255,255,.9) inset, 0 14px 30px -20px rgba(0,66,126,.35);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
}
.pf-stats b{
  flex:none;
  font-family:var(--serif);font-weight:400;
  font-size:clamp(1.9rem,3vw,2.5rem);line-height:1;
  color:var(--blue);
  min-width:1ch;
}
.pf-stats span{font-size:.95rem;line-height:1.35;color:var(--ink-soft)}

/* ---------- EVERYTHING UNDER ONE ROOF ---------- */
.pf-roof{padding:clamp(12px,2vw,18px) 0 0}
.pf-roof-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;margin-bottom:12px;
}
.pf-roof-head h2{
  font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.15;
  color:var(--ink);min-width:0;
  max-width:none;               /* main.css caps every h2 at 18ch; this heading must stay on one line */
}
.pf-ctrl{display:flex;align-items:center;gap:10px;flex:none}
.pf-ctrl button{
  width:44px;height:44px;padding:0;
  display:grid;place-items:center;
  border-radius:50%;
  border:1px solid var(--color-border);
  background:var(--color-surface);color:var(--ink);
  box-shadow:0 8px 18px -12px rgba(0,66,126,.45);
  cursor:pointer;
  transition:border-color .2s, box-shadow .2s, transform .2s;
}
.pf-ctrl button:hover{border-color:var(--color-cyan);box-shadow:0 0 0 3px var(--color-cyan-50),0 8px 18px -12px rgba(0,66,126,.45)}
.pf-ctrl button:active{transform:scale(.96)}
.pf-ctrl svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pf-ctrl .pf-toggle .i-play{display:none}
.pf-ctrl .pf-toggle[aria-pressed="true"] .i-play{display:block}
.pf-ctrl .pf-toggle[aria-pressed="true"] .i-pause{display:none}
.pf.is-static .pf-ctrl{display:none}

/* carousel: native scroll-snap so touch, trackpad and keyboard all work */
.pf-viewport{
  /* padding keeps the card shadows and the featured card's lift from being clipped by the scroller */
  margin:0 -6px;padding:14px 6px 30px;
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:6px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
}
.pf-viewport::-webkit-scrollbar{display:none}
.pf-viewport:focus-visible{outline:2px solid var(--color-cyan);outline-offset:2px;border-radius:18px}
.pf-track{
  position:relative;
  list-style:none;margin:0;padding:0;
  display:flex;align-items:stretch;gap:var(--pf-gap);
}
.pf-track > li{
  flex:0 0 calc((100% - 3 * var(--pf-gap)) / 4);
  min-width:0;display:flex;
  scroll-snap-align:start;
}

/* card */
.pf-card{
  position:relative;
  flex:1;min-width:0;
  display:flex;flex-direction:column;
  min-height:236px;
  padding:22px 22px 20px;
  border-radius:18px;
  border:1px solid var(--color-border);
  background:var(--color-surface);
  box-shadow:0 14px 30px -24px rgba(0,66,126,.45);
  color:var(--ink);text-decoration:none;
  transition:transform .25s, border-color .25s, box-shadow .25s;
}
.pf-card:hover{transform:translateY(-3px);border-color:#B9C7D8;box-shadow:0 20px 36px -24px rgba(0,66,126,.5)}
.pf-card:focus-visible{outline:2px solid var(--color-cyan);outline-offset:3px}
.pf-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.pf-ico{
  width:44px;height:44px;flex:none;
  display:grid;place-items:center;
  border-radius:12px;
  background:var(--color-deep-blue-50);color:var(--blue);
  transition:background .25s,color .25s;
}
.pf-ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pf-num{font-family:var(--mono);font-size:.8rem;color:var(--ink-faint);padding-top:2px}
.pf-card h3{margin-top:18px;font-size:1.2rem;line-height:1.2;color:var(--ink)}
.pf-card p{margin:8px 0 0;font-size:.95rem;line-height:1.5;color:var(--ink-soft)}
.pf-go{
  margin-top:auto;padding-top:16px;
  display:inline-flex;align-items:center;gap:8px;
  font-weight:600;font-size:.95rem;color:var(--blue);
}
.pf-go svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.pf-card:hover .pf-go svg{transform:translateX(3px)}

/* featured / active card (NexenPilot on #/platform/pilot) */
.pf-card.is-active{
  border-color:var(--color-cyan);
  box-shadow:0 0 0 3px var(--color-cyan-50), 0 22px 40px -24px rgba(0,66,126,.55);
  transform:translateY(-4px);
}
.pf-card.is-active::before{
  content:"";position:absolute;left:18px;right:18px;top:-1px;height:3px;
  border-radius:0 0 3px 3px;background:var(--color-gold);
}
.pf-card.is-active .pf-ico{background:var(--color-deep-blue);color:var(--color-gold)}
.pf-card.is-active .pf-num{color:var(--blue)}

/* ---------- RESPONSIVE ---------- */






/* main.css sets max-width on bare h-tags; keep card titles and the hero title unconstrained by it */
.pf h1,.pf h3{max-width:none}

/* soft fade from the hero wash into the page background (no hard edge) */
.pf-hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(48px,8vw,96px);
  background:linear-gradient(180deg,rgba(245,247,250,0),var(--paper));
  z-index:-1;pointer-events:none;
}

/* NexenPilot logo mark in its card: the mark itself fills the same 44px slot the other icons use (no tile) */
.pf-ico--logo,
.pf-card.is-active .pf-ico--logo{background:transparent;border:0;box-shadow:none}
.pf-ico--logo img{display:block;width:44px;height:44px;max-width:none;object-fit:contain}

/* NexenPilot logo badge, home "See it work" > NexenPilot panel (#pilot).
   White badge because the panel is navy and the "P" mark is dark blue. */
.pilot-logo{
  display:inline-flex;align-items:center;
  margin-bottom:22px;
  padding:11px 18px;
  border-radius:14px;
  background:#fff;
  box-shadow:0 14px 28px -18px rgba(0,0,0,.55);
}
.pilot-logo img{display:block;width:auto;height:48px;max-width:100%}



/* ==========================================================
   CARD ANIMATION + AUTO "HOVER" CAROUSEL
   - cards rise in one after another when the page opens
   - the carousel highlights one card at a time with the same look as hover
   - a real hover / focus always wins; reduced motion turns it all off
========================================================== */
@keyframes pfRise{from{opacity:0;transform:translateY(26px) scale(.96)}to{opacity:1;transform:none}}
@keyframes pfPop{0%{transform:scale(.6) rotate(-12deg);opacity:0}70%{transform:scale(1.08) rotate(2deg);opacity:1}100%{transform:none;opacity:1}}
@keyframes pfFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes pfFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

/* entrance: staggered */
.pf-track > li{animation:pfRise .65s cubic-bezier(.2,.7,.2,1) both}
.pf-track > li:nth-child(1){animation-delay:.05s}
.pf-track > li:nth-child(2){animation-delay:.14s}
.pf-track > li:nth-child(3){animation-delay:.23s}
.pf-track > li:nth-child(4){animation-delay:.32s}
.pf-track > li:nth-child(5){animation-delay:.41s}
.pf-track > li .pf-ico{animation:pfPop .6s cubic-bezier(.2,.8,.3,1.2) both;animation-delay:inherit}
.pf-stats li{animation:pfRise .6s cubic-bezier(.2,.7,.2,1) both}
.pf-stats li:nth-child(1){animation-delay:.1s}
.pf-stats li:nth-child(2){animation-delay:.2s}
.pf-stats li:nth-child(3){animation-delay:.3s}

/* richer hover (also used by the auto highlight) */
.pf-card{overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .3s,box-shadow .35s,background .3s}
.pf-card .pf-ico,.pf-card h3,.pf-card .pf-go{transition:transform .35s cubic-bezier(.2,.7,.2,1),background .3s,color .3s}
.pf-card::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));
  transform:scaleX(0);transform-origin:left;
}
.pf-card:hover,
.pf-card.is-auto{
  transform:translateY(-8px);
  border-color:var(--color-cyan);
  box-shadow:0 0 0 3px var(--color-cyan-50),0 26px 44px -24px rgba(0,66,126,.6);
}
.pf-card:hover .pf-ico,
.pf-card.is-auto .pf-ico{background:var(--color-deep-blue);color:var(--color-gold);transform:scale(1.08) rotate(-4deg)}
.pf-card:hover .pf-ico--logo,
.pf-card.is-auto .pf-ico--logo{background:transparent}
.pf-card:hover h3,
.pf-card.is-auto h3{transform:translateX(3px)}
.pf-card:hover .pf-go svg,
.pf-card.is-auto .pf-go svg{transform:translateX(5px)}
.pf-card:hover::after{transform:scaleX(1);transition:transform .4s ease}
.pf-card.is-auto::after{animation:pfFill var(--pf-auto-ms,2800ms) linear both}
/* while the pointer is over the carousel, only the hovered card shows the effect */
.pf-viewport:hover .pf-card.is-auto:not(:hover){
  transform:none;border-color:var(--color-border);
  box-shadow:0 14px 30px -24px rgba(0,66,126,.45);
}
.pf-viewport:hover .pf-card.is-auto:not(:hover) .pf-ico{background:var(--color-deep-blue-50);color:var(--blue);transform:none}
.pf-viewport:hover .pf-card.is-auto:not(:hover) .pf-ico--logo{background:transparent}
.pf-viewport:hover .pf-card.is-auto:not(:hover) h3,
.pf-viewport:hover .pf-card.is-auto:not(:hover) .pf-go svg{transform:none}
.pf-viewport:hover .pf-card.is-auto:not(:hover)::after{animation:none;transform:scaleX(0)}
.pf-card.is-active .pf-ico{animation:pfFloat 3s ease-in-out infinite}


/* ---------- mobile fixes: demo cards single column + overflow guards ---------- */
html,body{max-width:100%;overflow-x:clip}


/* ==========================================================
   "See it for your role": graphics that fill the spare space on
   the lighter slides (coverage ring, waffle, documents, flow, tiles)
========================================================== */
.hp-viz{display:block;width:100%;flex:none}
svg.hp-viz{height:112px;overflow:visible}
.hp-viz .vz-t{font:600 11px var(--sans);fill:var(--blue-deep)}
.hp-viz .vz-t.sm{font-size:8.5px}
.hp-viz .vz-t.gold{fill:var(--color-gold-ink)}
.hp-viz .vz-s{font:500 10px var(--sans);fill:var(--ink-soft)}
.hp-viz .vz-n{font:600 21px var(--serif);fill:var(--ink)}
.hp-viz .vz-pill{fill:var(--blue-wash)}
.hp-viz .vz-track{fill:none;stroke:var(--paper-deep);stroke-width:9}
.hp-viz .vz-seg{fill:none;stroke-width:9;stroke-dasharray:0 100;transition:stroke-dasharray 1s cubic-bezier(.3,.1,.2,1)}
.hp-viz .vz-seg.met{stroke:var(--color-deep-blue)}
.hp-viz .vz-seg.part{stroke:var(--color-cyan)}
.hp-viz .vz-seg.gap{stroke:#D6CCBA}
.hp-body.grow .vz-seg{stroke-dasharray:var(--d) var(--r)}
.hp-viz .vz-flow{fill:none;stroke:var(--color-cyan);stroke-width:2;stroke-dasharray:4 5;stroke-linecap:round;animation:vzflow 1.1s linear infinite}
@keyframes vzflow{to{stroke-dashoffset:-9}}
.hp-viz .vz-hub{fill:var(--color-deep-blue)}
.hp-viz .vz-hubi{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round}
/* waffle */
.hp-viz .vz-cell{opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.4);transition:opacity .35s ease,transform .35s cubic-bezier(.3,1.4,.5,1);transition-delay:calc(var(--i) * 16ms + 150ms)}
.hp-viz .vz-cell.a{fill:var(--color-deep-blue)}
.hp-viz .vz-cell.b{fill:var(--color-alert)}
.hp-body.grow .vz-cell{opacity:1;transform:none}
/* documents + flow */
.hp-viz .vz-sheet{fill:#fff;stroke:var(--rule);stroke-width:1.2}
.hp-viz .vz-head{fill:var(--blue-wash)}
.hp-viz .vz-line{fill:var(--paper-deep)}
.hp-viz .vz-doc,.hp-viz .vz-step{opacity:0;transform-box:fill-box;transform-origin:center;transform:translateY(10px);transition:opacity .45s ease,transform .45s cubic-bezier(.3,.1,.2,1);transition-delay:calc(var(--i) * 140ms + 80ms)}
.hp-body.grow .vz-doc,.hp-body.grow .vz-step{opacity:1;transform:none}
.hp-viz .vz-ok{opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.3);transition:opacity .3s ease,transform .4s cubic-bezier(.3,1.6,.5,1);transition-delay:calc(var(--i) * 200ms + 500ms)}
.hp-viz .vz-ok circle{fill:var(--color-deep-blue)}
.hp-viz .vz-ok path{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.hp-body.grow .vz-ok{opacity:1;transform:none}
.hp-viz .vz-core{fill:var(--color-deep-blue)}
.hp-viz .vz-spark{fill:var(--color-gold);transform-box:fill-box;transform-origin:center;animation:vzspark 2.4s ease-in-out infinite}
@keyframes vzspark{50%{transform:scale(1.18) rotate(8deg)}}
.hp-viz .vz-pen{fill:var(--color-cyan)}
.hp-viz .vz-draft{fill:var(--color-gold-50)}
/* status nodes for two-item lists */
.hp-viz .vz-nd{fill:var(--blue-wash);stroke:var(--color-deep-blue);stroke-width:2}
.hp-viz .vz-nd.esc{fill:var(--color-alert-50);stroke:var(--color-alert)}
.hp-viz .vz-nd.warn{fill:var(--paper-deep);stroke:var(--ink-faint)}
.hp-viz .vz-nd.muted{fill:#fff;stroke:var(--rule)}
.hp-viz .vz-nd.dec{fill:var(--decide-wash);stroke:var(--color-gold)}
.hp-viz .vz-nd.new{fill:var(--color-cyan-50);stroke:var(--color-cyan)}
.hp-viz .vz-ni{fill:none;stroke:var(--color-deep-blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.hp-viz .vz-nd.esc + .vz-ni{stroke:var(--color-alert)}
.hp-viz .vz-nd.warn + .vz-ni,.hp-viz .vz-nd.muted + .vz-ni{stroke:var(--ink-faint)}
.hp-viz .vz-nd.dec + .vz-ni{stroke:var(--color-gold-ink)}
.hp-viz.vz-nodes .vz-flow{stroke:var(--rule);animation:none}



.hp-viz .vz-n+.vz-s{font-size:8.5px}
.vz-countdown{overflow:visible}
.vz-countdown .vz-time-tile{fill:var(--blue-wash);stroke:var(--color-border);stroke-width:1}
.vz-countdown .vz-time-tile.is-warning{fill:var(--color-alert-50)}
.vz-countdown .vz-time-number{font:600 19px var(--serif);fill:var(--ink)}
.vz-countdown .vz-time-caption{font:500 8px var(--sans);fill:var(--ink-soft)}
.vz-countdown .vz-time-title{font:600 11px var(--sans);fill:var(--blue-deep)}
.vz-countdown .vz-time-copy{font:500 9px var(--sans);fill:var(--ink-soft)}
.vz-countdown .vz-time-warning{font:600 8px var(--sans);fill:var(--color-alert)}
.vz-countdown .vz-time-trackbar{fill:var(--paper-deep)}
.vz-countdown .vz-time-fill{fill:var(--color-deep-blue)}
.vz-countdown .vz-time-dot.done{fill:var(--color-deep-blue)}
.vz-countdown .vz-time-dot.scheduled{fill:var(--color-alert)}


/* NexenOne logo mark in the Platform menu */
.co-col a > img.co-logo{width:26px;height:26px;max-width:none;margin:-1px 0 0 -3px;object-fit:contain;display:block}

/* hero eyebrow: NexenMinds and NexenOne logos on white chips */
.hero-eyebrow{gap:10px 12px}
.hero-eyebrow .he-chip{display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:9px 26px;border-radius:999px;background:#fff;box-shadow:0 6px 18px -8px rgba(0,20,60,.45),0 0 0 1px rgba(0,66,126,.08)}
.hero-eyebrow .he-chip img{display:block;width:auto;max-width:none}
.hero-eyebrow .he-minds img{height:22px}
.hero-eyebrow .he-one img{height:42px}



/* ---------- Home FAQ ---------- */
.faq-home{background:var(--color-off-white);padding:clamp(72px,9vw,120px) 0}
.faq-home-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,8vw,104px);align-items:start}
.faq-home-intro{position:sticky;top:calc(var(--hdr,72px) + 40px)}
.faq-home-intro h2{font-size:clamp(2.5rem,4.5vw,3.6rem);line-height:1.02;max-width:11ch}
.faq-home-intro p{max-width:40ch;margin-top:18px;font-size:clamp(1rem,1.5vw,1.18rem);color:var(--ink-soft)}
.faq-home-intro .linkbtn{display:inline;color:var(--color-deep-blue)}
.faq-home-list{border-top:1px solid var(--ink)}
.faq-home-list details{border-bottom:1px solid #d9d4c8}
.faq-home-list summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 0;cursor:pointer;list-style:none;font-weight:600;line-height:1.4}
.faq-home-list summary::-webkit-details-marker{display:none}
.faq-home-list summary::after{content:"+";flex:none;color:var(--ink-faint);font-family:var(--mono);font-size:1rem}
.faq-home-list details[open] summary::after{content:"−"}
.faq-home-list details p{max-width:66ch;padding:0 28px 18px 0;color:var(--ink-soft);font-size:.96rem}



/* ---------- Hero animated background (replaces photo) ---------- */
.hero-bg{background:linear-gradient(135deg,#041a38 0%,#00427e 55%,#06527f 100%)}
.hero-bg::after{background:linear-gradient(90deg,rgba(3,14,30,.45) 0%,rgba(3,14,30,.25) 45%,rgba(3,14,30,0) 100%)}
.hb-orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform;pointer-events:none}
.hb-o1{width:520px;height:520px;top:-140px;right:8%;background:radial-gradient(circle,#00a8e8,transparent 68%);animation:hbFloat1 16s ease-in-out infinite alternate}
.hb-o2{width:440px;height:440px;bottom:-160px;left:-80px;background:radial-gradient(circle,#2a7fd0,transparent 68%);animation:hbFloat2 19s ease-in-out infinite alternate}
.hb-o3{width:300px;height:300px;top:35%;right:-60px;background:radial-gradient(circle,rgba(255,215,0,.55),transparent 70%);opacity:.3;animation:hbFloat3 22s ease-in-out infinite alternate}
.hb-grid{position:absolute;inset:-60px;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(ellipse 80% 75% at 70% 45%,#000,transparent);mask-image:radial-gradient(ellipse 80% 75% at 70% 45%,#000,transparent);
  animation:hbGrid 14s linear infinite}
.hb-net{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
@keyframes hbFloat1{to{transform:translate(-90px,70px) scale(1.15)}}
@keyframes hbFloat2{to{transform:translate(120px,-60px) scale(1.2)}}
@keyframes hbFloat3{to{transform:translate(-60px,-90px) scale(.85)}}
@keyframes hbGrid{to{background-position:56px 56px}}


/* ---------- Hero: light theme override ---------- */
.hero-bg{background:linear-gradient(135deg,#ffffff 0%,#f3f8fd 50%,#e3effa 100%)}
.hero-bg::after{background:none}
.hb-orb{opacity:.38;filter:blur(80px)}
.hb-o1{background:radial-gradient(circle,rgba(0,168,232,.65),transparent 68%)}
.hb-o2{background:radial-gradient(circle,rgba(0,66,126,.35),transparent 68%)}
.hb-o3{background:radial-gradient(circle,rgba(255,215,0,.6),transparent 70%);opacity:.3}
.hb-grid{background-image:linear-gradient(rgba(0,66,126,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(0,66,126,.07) 1px,transparent 1px)}
.hero-eyebrow{color:var(--color-charcoal)}
.hero h1{color:var(--color-charcoal);text-shadow:none}
.hero .h1-hook:hover,.hero .h1-hook[aria-expanded=true]{color:var(--color-deep-blue)}
.hero .lede{color:#4a5563}
.hero .btn-quiet{background:var(--color-surface);color:var(--color-charcoal);box-shadow:inset 0 0 0 1.5px var(--color-charcoal);-webkit-backdrop-filter:none;backdrop-filter:none}
.hero .btn-quiet:hover{background:var(--color-surface);color:var(--color-deep-blue);box-shadow:inset 0 0 0 1.5px var(--color-cyan),0 0 0 4px var(--color-cyan-50)}
.hero .btn-primary{box-shadow:inset 0 -3px 0 var(--color-gold),0 14px 24px -14px rgba(0,66,126,.7)}
.hero-points{border-top-color:rgba(0,66,126,.15)}
.hero-points li{color:#4a5563}
.hero-points strong{color:var(--color-charcoal)}
.hero-points .nx-ico-box{background:#fff;border-color:rgba(0,66,126,.15);color:var(--color-deep-blue);-webkit-backdrop-filter:none;backdrop-filter:none}
.hero-points li:nth-child(3) .nx-ico-box{border-bottom-color:var(--color-deep-blue)}
.hero .h1-pop{background:#fff;border:1px solid var(--color-border);color:var(--color-charcoal);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 18px 34px -20px rgba(0,66,126,.4)}
.hero-eyebrow .he-chip{box-shadow:0 6px 18px -10px rgba(0,66,126,.35),0 0 0 1px rgba(0,66,126,.1)}

/* ---------- See it work: compact layout. Phones and tablets (<=960px). Desktop gets the one-screen layout at the end of this file. ---------- */

/* Document demo and Control demo headings (all widths) */
#see .see-panel.cd .sec-head{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:end;gap:6px clamp(24px,4vw,56px);margin-bottom:clamp(14px,2.2vh,22px)}
#see .see-panel.cd .sec-head h2{font-size:clamp(1.4rem,2.1vw,1.85rem);line-height:1.15;max-width:none}
#see .see-panel.cd .sec-head .lede{font-size:.93rem;line-height:1.5;max-width:none;margin:0}
#see .ctrl-map .os-map-head{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:end;gap:6px clamp(24px,4vw,56px);margin-bottom:clamp(12px,2vh,20px)}
#see .ctrl-map .os-map-head h2{font-size:clamp(1.4rem,2.1vw,1.85rem);line-height:1.15;max-width:none}
#see .ctrl-map .os-map-head .lede{font-size:.93rem;line-height:1.5;max-width:none;margin:0}



/* ==========================================================
   SEE IT WORK: fits one screen on desktop
   The heading row, demo tabs and the open demo (with its
   "Next" footer) now fit between the sticky header + chapter
   rail and the bottom of the window. Sizes follow viewport
   height (vh) so it also fits laptop screens and 125-150%
   display scaling. Phones/tablets (<=960px) are unchanged.
   ========================================================== */


/* shorter windows (125% scaling laptops): trim a little more */




/* ==========================================================
   NEXENPILOT DEMO: compact, one-screen layout (desktop)
   ========================================================== */

/* shorter windows: keep the essentials, drop the tagline and FAQ from the left column */

/* fit-to-view helper: see assets/js/fit.js */
#see{overflow-x:clip}
.see-panel[data-fit]{transform-origin:0 0}

/* NexenPilot app card: three columns (context | suggestion | audit trail) */


/* NexenPilot: footer and spacing trimmed so the whole demo sits under the pinned tab strip */


/* Change documents demo: intro + integrity on the left, the working app on the right (desktop) */




/* ===== Light pastel aurora hero background ===== */
.hero-bg{background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%)}
.hb-grid{display:none}
.hb-orb{display:none}
.hb-net{opacity:.25}
.hb-wisp{position:absolute;border-radius:50%;pointer-events:none;filter:blur(70px);opacity:.85;will-change:transform}
.hb-w1{width:50%;height:75%;left:-8%;top:-20%;background:radial-gradient(circle,#cfe8ff 0%,rgba(207,232,255,0) 70%);animation:pastelA 20s ease-in-out infinite alternate}
.hb-w2{width:45%;height:70%;right:-5%;top:-10%;background:radial-gradient(circle,#e3dcff 0%,rgba(227,220,255,0) 70%);animation:pastelB 24s ease-in-out infinite alternate}
.hb-w3{width:45%;height:65%;left:25%;bottom:-30%;background:radial-gradient(circle,#d4f5e9 0%,rgba(212,245,233,0) 70%);animation:pastelC 28s ease-in-out infinite alternate}
.hb-w4{width:35%;height:50%;right:15%;bottom:-20%;background:radial-gradient(circle,#ffeccf 0%,rgba(255,236,207,0) 70%);animation:pastelA 32s ease-in-out infinite alternate-reverse}
@keyframes pastelA{0%{transform:translate(0,0) scale(1)}100%{transform:translate(25%,18%) scale(1.25)}}
@keyframes pastelB{0%{transform:translate(0,0) scale(1.1)}100%{transform:translate(-28%,22%) scale(.9)}}
@keyframes pastelC{0%{transform:translate(-15%,0) scale(.95)}100%{transform:translate(20%,-18%) scale(1.2)}}


/* Talk to a person dialog */
dialog#talk{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 16px);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}
dialog#talk::-webkit-scrollbar{display:none}
#talk .dlg{padding:clamp(18px,3vw,28px) clamp(22px,4vw,32px)}
#talk .field{margin-bottom:10px;gap:5px}
#talk .field input{padding:10px 14px}
#talk .dlg .intro{margin:4px 0 12px}
#talk .btn{padding-top:12px;padding-bottom:12px}
#talk .dlg h2{font-size:clamp(1.4rem,2.2vw,1.7rem)}
#talk .dlg .intro{margin:6px 0 16px}
.talk-fail{color:#A33A2B;font-size:.88rem;margin:0 0 12px}
#talk .consent{margin:2px 0 16px;font-size:.88rem;line-height:1.55}
#talk .consent input{width:22px;height:22px;margin-top:1px}
#talk .consent a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.talk-consent-err{display:block;margin:-8px 0 14px;color:#A33A2B;font-size:.84rem}
.talk-consent-err[hidden]{display:none}


/* ==========================================================
   Merged page styles: company.css
========================================================== */

/* ==========================================================
   NEXEN ONE - company.css
   Company pages (company.php): About us, Careers, Contact, LinkedIn, Partner program, Audit partners.
   Loaded after main.css. Shared navigation, footer and site components stay in main.css.

   HOW THIS FILE IS ORGANISED
   company.php is one page with a hash router. main.js shows one template at a time and company.js
   marks the first section of each template with data-co-tpl="about | careers | contact | partners | audit-partners" (pure CSS, no JS needed).
   The page combines two designs, so every rule below is tied to the routes it belongs to. Nothing from one
   design can leak into the other, and specificity is unchanged because :where() adds none.
     1. Keyframes and anchor offsets (shared)
     2. About us + Careers      (from NexenDemo)    scope: about, careers
     3. Contact, Partner program, Audit partners (from NexenMinds)    scope: contact, partners, audit-partners
     4. LinkedIn section (from NexenMinds) shown at the end of About us    scope: about
========================================================== */

/* 1. shared keyframes and anchor offsets */
@keyframes co-drift{0%{transform:scale(1)}100%{transform:scale(1.08) translate3d(-1.4%,0,0)}}
@keyframes co-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes co-pulse{0%,100%{box-shadow:0 0 0 0 rgba(52,167,121,.55)}60%{box-shadow:0 0 0 6px rgba(52,167,121,0)}}
@keyframes co2-curtain{from{clip-path:inset(0 0 100% 0 round 26px)}to{clip-path:inset(0 0 0 0 round 26px)}}
@keyframes co-up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes co-left{from{opacity:0;transform:translateX(-44px)}to{opacity:1;transform:none}}
@keyframes co-right{from{opacity:0;transform:translateX(44px)}to{opacity:1;transform:none}}
@keyframes co-zoom{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}
@keyframes cp-pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(2);opacity:0}}
@keyframes lead-wipe{from{clip-path:inset(0 0 100% 0 round 30px)}to{clip-path:inset(0 0 0 0 round 30px)}}
@keyframes tl-draw{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}
#cp-form-sec,#cp-how,#cp-caps,#linkedin{scroll-margin-top:92px}
#linkedin:focus{outline:0}

/* 2. About us + Careers (NexenDemo) */
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-hero:not(.company-about-hero),:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta .pg-cta{--co-navy:#04122e;--co-navy-2:#06295a;--co-sky:#5FD0FF;}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-photo{position:relative;display:block;margin:0;overflow:hidden;isolation:isolate;
  background:linear-gradient(135deg,#06295a,#0a63c4 60%,#00a8e8)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),opacity .6s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-photo img.is-failed{opacity:0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero{position:relative;overflow:hidden;overflow:clip;isolation:isolate;
  display:flex;align-items:center;min-height:clamp(560px,78vh,760px);
  padding:clamp(72px,9vw,120px) 0 clamp(72px,9vw,120px);
  border:0;background:var(--co-navy);color:#fff;}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-hero-bg{position:absolute;inset:-6% 0;z-index:-3;pointer-events:none;
  transform:translate3d(0,calc(var(--co-par,0)*1px),0);will-change:transform}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-hero-bg::before{content:"";position:absolute;inset:0;
  background:
    url("../images/Warm%20Collaborative%20Tech%20Office%20Banner.jpg") center 40%/cover no-repeat,
    url("../images/sections/solutions-bg.jpg") center 55%/cover no-repeat;
  animation:co-drift 28s ease-in-out infinite alternate}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero::before{content:"";position:absolute;z-index:-2;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse at 84% 30%,rgba(0,168,232,.30),transparent 42%),
    linear-gradient(90deg,rgba(3,17,46,.93) 0%,rgba(3,17,46,.74) 44%,rgba(3,17,46,.34) 100%),
    linear-gradient(180deg,rgba(3,17,46,.35),transparent 30%,rgba(3,17,46,.62) 100%)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 100%);mask-image:linear-gradient(90deg,transparent 30%,#000 100%)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-hero-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.85fr);align-items:center;gap:clamp(36px,6vw,84px);width:100%}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-hero-copy{max-width:640px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-kicker{display:flex;align-items:center;gap:10px;margin:0 0 17px;color:var(--color-deep-blue);font:600 .72rem/1.4 var(--mono);letter-spacing:.14em}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-kicker>span{width:8px;height:8px;flex:none;border-radius:50%;background:var(--color-cyan);box-shadow:0 0 0 5px rgba(0,168,232,.14)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero .company-kicker{color:var(--co-sky)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero h1{max-width:17ch;margin:0;color:#fff;font-size:clamp(2.6rem,4.6vw,4.1rem);line-height:1;letter-spacing:-.035em;text-shadow:0 2px 30px rgba(0,0,0,.25)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero .lede{max-width:56ch;margin-top:24px;color:rgba(255,255,255,.86);font-size:clamp(1.02rem,1.5vw,1.17rem);line-height:1.7}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-hero-link svg{width:18px;height:18px;transition:transform .25s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-hero-link:hover svg{transform:translateX(4px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero .btn-primary{background:#0a63c4;box-shadow:inset 0 -3px 0 var(--color-gold),0 14px 28px -12px rgba(0,0,0,.6)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero .btn-primary:hover{background:#0b73e0;transform:translateY(-2px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero .btn-quiet{background:rgba(255,255,255,.06);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero .btn-quiet:hover{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1.5px var(--color-gold),0 0 0 4px rgba(255,215,0,.16);transform:translateY(-2px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-visual{position:relative;display:grid;min-height:440px;place-items:start center;padding:34px 30px 132px;border:1px solid rgba(140,210,255,.28);border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.05));
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  box-shadow:0 0 0 1px rgba(0,168,232,.12),0 40px 90px -36px rgba(0,168,232,.55)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-visual-orbit{position:absolute;width:84%;height:68%;border:1px solid rgba(255,255,255,.16);border-radius:50%;transform:rotate(-22deg);pointer-events:none}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .orbit-b{width:68%;height:88%;transform:rotate(29deg);border-style:dashed}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-product{position:relative;z-index:2;width:min(100%,400px);padding:20px 20px 18px;border:1px solid #dce6ee;border-radius:18px;background:#fff;color:var(--color-charcoal);
  box-shadow:0 26px 56px rgba(2,13,38,.4);animation:co-float 7s ease-in-out 1.2s infinite}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-product-top{display:flex;align-items:center;justify-content:space-between;gap:11px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cp-logo{display:block;width:124px;height:auto}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cp-sub{margin:8px 0 0;padding-bottom:14px;border-bottom:1px solid #e8edf1;color:#6b7784;font-size:.72rem;font-weight:500}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .product-status{padding:5px 10px;border-radius:99px;background:#eaf7f3;color:#267353;font-size:.65rem;font-weight:700}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .product-status::before{content:"";display:inline-block;width:6px;height:6px;margin:0 5px 1px 0;border-radius:50%;background:#34a779;animation:co-pulse 2s ease-in-out infinite}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-flow{display:grid;grid-template-columns:1fr;gap:8px;padding:14px 0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .flow-node{display:grid;grid-template-columns:34px 1fr;align-items:center;column-gap:11px;padding:10px 12px;border:1px solid #e5ebf0;border-radius:11px;background:#fbfcfd;transition:border-color .25s,transform .25s,box-shadow .25s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .flow-icon{grid-row:span 2;display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:#e8f2fa;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .flow-icon .nx-ico{width:17px;height:17px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .flow-node b{font-size:.78rem;line-height:1.35}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .flow-node small{color:#707c88;font-size:.66rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .flow-line{height:6px;width:1px;margin-left:28px;background:linear-gradient(var(--color-cyan),#bad5e4)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-decision{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:11px;background:#f2f7fb}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cd-logo{display:block;width:74px;height:auto;flex:none;padding-right:12px;border-right:1px solid #d5e2ec}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-decision b,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-decision small{display:block}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-decision b{font-size:.74rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-decision small{color:#687787;font-size:.66rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .decision-check{display:grid;width:23px;height:23px;margin-left:auto;place-items:center;border:1px solid #9dcfb8;border-radius:50%;color:#267353;font-size:.76rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .hv-photo{position:absolute;z-index:3;left:-28px;bottom:-24px;width:42%;aspect-ratio:16/10;margin:0;border:4px solid #fff;border-radius:16px;box-shadow:0 24px 44px -18px rgba(2,13,38,.65);
  translate:calc(var(--mx,0)*-14px) calc(var(--my,0)*-10px);animation:co-float 9s ease-in-out .4s infinite;background:linear-gradient(135deg,#06295a,#0a63c4)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .hv-photo figcaption{position:absolute;inset:auto 0 0;padding:20px 10px 8px;background:linear-gradient(transparent,rgba(3,17,46,.88));color:#fff;font-size:.6rem;font-weight:600;line-height:1.3}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .hv-chip{position:absolute;z-index:3;right:-18px;bottom:30px;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:10px;padding:11px 16px 11px 11px;border:1px solid rgba(255,255,255,.8);border-radius:14px;background:rgba(255,255,255,.95);color:var(--color-charcoal);
  box-shadow:0 22px 40px -20px rgba(2,13,38,.6);translate:calc(var(--mx,0)*16px) calc(var(--my,0)*12px);animation:co-float 8s ease-in-out 1.6s infinite}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .hv-chip>span{grid-row:span 2;display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);color:#fff}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .hv-chip>span .nx-ico{width:17px;height:17px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .hv-chip b{font-size:.78rem;line-height:1.2}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .hv-chip small{color:#5f6c7a;font-size:.66rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-hero:not(.company-about-hero){position:relative;isolation:isolate;overflow:hidden;
  padding:clamp(68px,9vw,112px) 0 clamp(64px,8vw,96px);border:0;color:#fff;
  background:
    radial-gradient(ellipse at 82% 16%,rgba(0,168,232,.35),transparent 36%),
    linear-gradient(90deg,rgba(3,17,46,.92) 0%,rgba(3,17,46,.70) 50%,rgba(3,17,46,.38) 100%),
    url("../images/Warm%20Collaborative%20Tech%20Office%20Banner.jpg") center 40%/cover no-repeat,
    linear-gradient(118deg,#06295a 0%,#00427e 58%,#075b91 100%);}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-hero:not(.company-about-hero)::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.18;
  background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);
  background-size:48px 48px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 45%,#000);mask-image:linear-gradient(90deg,transparent,#000 45%,#000)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-hero:not(.company-about-hero) h1{max-width:15ch;margin-top:0;color:#fff;font-size:clamp(2.8rem,6vw,5rem);line-height:1.02}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-hero:not(.company-about-hero) .lede{max-width:58ch;margin-top:22px;color:rgba(255,255,255,.84);font-size:clamp(1.05rem,1.5vw,1.2rem)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-story{padding-top:clamp(72px,9vw,120px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-story-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(40px,7vw,104px);align-items:center}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-compose{position:relative;width:100%;max-width:560px;aspect-ratio:1/1.06}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-main{position:absolute;left:0;top:0;width:80%;height:84%;border-radius:28px;box-shadow:0 34px 70px -34px rgba(0,49,92,.65)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-second{position:absolute;right:0;bottom:0;width:54%;height:42%;border:6px solid var(--color-off-white,#f5f7fa);border-radius:22px;box-shadow:0 26px 50px -26px rgba(0,49,92,.6);animation:co-float 9s ease-in-out .6s infinite}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-main img,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-second img{height:100%}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-badge{position:absolute;z-index:3;left:-16px;bottom:16%;display:flex;align-items:center;gap:12px;padding:13px 20px 13px 13px;border:1px solid rgba(255,255,255,.8);border-radius:16px;background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 22px 44px -20px rgba(0,49,92,.55);animation:co-float 8s ease-in-out 1s infinite}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-badge-ico{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;background:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);color:#fff}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-badge b,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-badge small{display:block}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-badge b{font-size:.92rem;line-height:1.2}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-badge small{color:#5a6877;font-size:.78rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-dots{position:absolute;z-index:-1;right:6%;top:-22px;width:110px;height:110px;background-image:radial-gradient(var(--color-deep-blue) 1.5px,transparent 1.7px);background-size:14px 14px;opacity:.3}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cc-ring{position:absolute;z-index:-1;left:-36px;bottom:-30px;width:210px;height:210px;border:1px solid #bcd3e6;border-radius:50%;box-shadow:0 0 0 22px rgba(0,66,126,.04)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-kicker{margin-bottom:14px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-story .pg-sec-head,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-leadership .pg-sec-head,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-what .pg-sec-head,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-process .pg-sec-head,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-sec .pg-sec-head{margin:0 0 24px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-sec-head h2{max-width:20ch;font-size:clamp(2rem,4vw,3.1rem);line-height:1.08;letter-spacing:-.015em}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .story-lead{margin:0 0 24px;padding-left:20px;border-left:3px solid var(--color-gold);color:var(--color-charcoal);font-size:clamp(1.12rem,1.8vw,1.35rem);line-height:1.5}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .story-points{display:grid;gap:12px;margin:0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .story-point{display:flex;align-items:flex-start;gap:16px;padding:16px 18px;border:1px solid var(--color-border);border-radius:16px;background:#fff;box-shadow:0 18px 34px -30px rgba(0,66,126,.5);
  transition:transform .3s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .3s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .sp-ico,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .feat-ico,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lb-ico,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-ico,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-tag-ico{display:grid;flex:none;place-items:center;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:background .3s,color .3s,transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .sp-ico{width:44px;height:44px;border-radius:13px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .sp-ico-gold{background:#fff7cc}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .story-point b{display:block;font-size:1rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .story-point small{display:block;margin-top:3px;color:var(--color-text-muted);font-size:.95rem;line-height:1.55}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-glance{padding-top:clamp(56px,7vw,92px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-tile{position:relative;overflow:hidden;display:grid;align-content:start;gap:4px;padding:22px 22px 24px;border:1px solid var(--color-border);border-radius:20px;
  background:linear-gradient(170deg,#fff 40%,#eef5fb);box-shadow:0 1px 2px rgba(26,26,26,.04),0 22px 40px -34px rgba(0,66,126,.5);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-tile::after{content:"";position:absolute;left:22px;bottom:0;width:44px;height:4px;border-radius:4px 4px 0 0;background:var(--color-gold);transition:width .45s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-ico{display:grid;width:38px;height:38px;place-items:center;margin-bottom:8px;border-radius:11px;background:#e8f2fa;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-ico .nx-ico{width:19px;height:19px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-val{font:400 clamp(2.3rem,3.6vw,3.1rem)/1 var(--serif);color:var(--color-deep-blue);letter-spacing:-.02em}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-lab{margin-top:4px;color:var(--color-charcoal);font:600 .72rem/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-tile small{margin-top:4px;color:var(--color-text-muted);font-size:.9rem;line-height:1.5}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs{position:relative;isolation:isolate;overflow:hidden;margin-top:clamp(64px,8vw,104px);
  padding:clamp(64px,8vw,104px) 0 clamp(72px,9vw,112px);background:var(--co-navy);color:#fff}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs-bg{position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(3,17,46,.88),rgba(3,17,46,.78) 50%,rgba(3,17,46,.92)),
    radial-gradient(ellipse at 15% 20%,rgba(0,168,232,.26),transparent 45%),
    url("../images/Modern%20Office%20with%20Secure%20Cloud%20Infrastructure.jpg") center/cover no-repeat,
    linear-gradient(135deg,#04122e,#06295a)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs::after{content:"";position:absolute;z-index:-1;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;pointer-events:none;
  border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 40px rgba(255,255,255,.025),0 0 0 90px rgba(255,255,255,.02)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .company-kicker{color:var(--co-sky)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .pg-sec-head{margin-bottom:38px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .pg-sec-head h2{color:#fff}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .belief-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .belief-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .belief-card+.belief-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .belief-card:nth-child(odd){position:relative;overflow:hidden;isolation:isolate;padding:28px 26px 30px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;
  border:1px solid rgba(255,255,255,.18);border-radius:22px;background:linear-gradient(160deg,rgba(255,255,255,.13),rgba(255,255,255,.04));
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 24px 50px -30px rgba(0,0,0,.6)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .belief-card::after{content:"";position:absolute;z-index:-1;right:-70px;bottom:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(0,168,232,.28),transparent 70%);opacity:.6;transition:transform .6s,opacity .4s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .belief-ico{display:grid;width:54px;height:54px;place-items:center;border-radius:15px;background:rgba(255,215,0,.14);color:var(--color-gold);box-shadow:inset 0 0 0 1px rgba(255,215,0,.35);transition:transform .45s cubic-bezier(.3,1.4,.5,1),background .3s,color .3s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .belief-ico .nx-ico{width:26px;height:26px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .belief-index{position:absolute;right:24px;top:22px;color:rgba(255,255,255,.4);font:500 .76rem var(--mono);letter-spacing:.1em}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .belief-card h3{margin:6px 0 0;color:#fff;font:400 1.75rem/1.15 var(--serif)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .belief-card .belief-line{color:rgba(255,255,255,.9);font-size:1rem;line-height:1.5;font-weight:500}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .co-list{margin-top:8px;padding-top:16px;border-top:1px solid rgba(255,255,255,.16)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .co-list li{color:rgba(255,255,255,.82)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-beliefs .co-list svg{background:rgba(255,215,0,.16);color:var(--color-gold)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-list{display:grid;gap:9px;width:100%;margin:12px 0 0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-list li{display:flex;align-items:flex-start;gap:10px;color:var(--color-text-muted);font-size:.94rem;line-height:1.45}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-list svg{width:20px;height:20px;flex:none;padding:3px;border-radius:50%;background:#e8f2fa;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-what{padding-top:clamp(72px,9vw,116px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--color-border);border-radius:24px;background:#fff;
  box-shadow:0 1px 2px rgba(26,26,26,.05),0 24px 44px -34px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .25s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-visual{position:relative;overflow:hidden;aspect-ratio:16/10;margin:0;border-radius:0;color:#fff}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-one{background:radial-gradient(ellipse at 90% 0,rgba(0,168,232,.5),transparent 50%),linear-gradient(145deg,#06295a,#00427e)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-two{background:radial-gradient(ellipse at 0 100%,rgba(255,215,0,.22),transparent 45%),linear-gradient(145deg,#00427e,#0a7fb0)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-one::before,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-two::before{content:"";position:absolute;inset:0;opacity:.35;background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);background-size:34px 34px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 85%);mask-image:linear-gradient(180deg,#000,transparent 85%)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-logo{position:absolute;left:22px;top:22px;padding:10px 16px;border-radius:14px;background:#fff;box-shadow:0 14px 28px -14px rgba(0,0,0,.5)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-logo img{display:block;width:108px;height:auto}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-row{position:absolute;left:22px;display:flex;align-items:center;gap:9px;padding:7px 14px 7px 10px;border:1px solid rgba(255,255,255,.28);border-radius:99px;background:rgba(255,255,255,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.74rem;font-weight:600;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-row i{width:8px;height:8px;border-radius:50%;background:var(--color-gold)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-r1{bottom:62px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-r2{bottom:34px;left:46px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-r3{bottom:6px;left:70px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-bubble{position:absolute;padding:8px 14px;border-radius:14px 14px 14px 4px;background:rgba(255,255,255,.95);color:var(--color-charcoal);font-size:.74rem;font-weight:600;box-shadow:0 14px 28px -14px rgba(0,0,0,.5);transition:transform .4s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-b1{left:22px;bottom:50px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-b2{left:70px;bottom:12px;border-radius:14px 14px 4px 14px;background:var(--color-gold)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-visual.co-photo img{height:100%;position:absolute;inset:0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .wv-badge{position:absolute;left:14px;bottom:14px;padding:8px 13px;border-radius:99px;background:rgba(255,255,255,.95);color:var(--color-charcoal);font-size:.74rem;font-weight:700;box-shadow:0 14px 28px -14px rgba(0,0,0,.6)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:24px 26px 28px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-tag{padding:5px 11px;border-radius:99px;background:#e8f2fa;color:var(--color-deep-blue);font:600 .66rem/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-body h3{margin:12px 0 0;font:400 1.8rem/1.15 var(--serif)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-body>p{margin:6px 0 0;color:var(--color-text-muted);font-size:1rem;line-height:1.55}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-cta{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:auto;padding-top:18px;color:var(--color-deep-blue);font-weight:600;font-size:.96rem;text-decoration:none}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-cta svg{width:17px;height:17px;transition:transform .3s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-process{padding-top:clamp(72px,9vw,116px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .timeline{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .timeline::before{content:"";position:absolute;left:27px;right:27px;top:27px;height:2px;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold) 50%,var(--color-cyan));opacity:.55}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-step{position:relative;display:grid;gap:16px;align-content:start}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-node{position:relative;z-index:1;display:grid;width:56px;height:56px;place-items:center;border:3px solid var(--color-off-white,#f5f7fa);border-radius:50%;background:var(--color-deep-blue);color:#fff;box-shadow:0 0 0 2px var(--color-deep-blue),0 14px 24px -12px rgba(0,66,126,.7);transition:background .3s,color .3s,transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-node b{font:500 .86rem var(--mono);letter-spacing:.06em}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-card{position:relative;display:grid;gap:8px;align-content:start;height:100%;padding:22px 22px 24px;border:1px solid var(--color-border);border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 22px 40px -34px rgba(0,66,126,.5);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-ico{width:42px;height:42px;border-radius:12px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-ico .nx-ico{width:20px;height:20px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-card h3{margin:4px 0 0;font:400 1.35rem/1.2 var(--serif)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-card p{color:var(--color-text-muted);font-size:.96rem;line-height:1.55}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-chip{justify-self:start;margin-top:6px;padding:5px 11px;border-radius:99px;background:#fff7cc;color:#6b5600;font-size:.74rem;font-weight:600}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-leadership{position:relative;overflow:hidden;margin-top:clamp(72px,9vw,116px);padding:clamp(64px,8vw,104px) 0 clamp(72px,9vw,112px);
  background:radial-gradient(ellipse at 100% 0,rgba(0,168,232,.1),transparent 40%),linear-gradient(180deg,#eaf1f8 0%,#f5f7fa 100%);border-top:1px solid #dbe6f0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-leadership::before{content:"";position:absolute;left:0;top:-1px;width:min(220px,40%);height:4px;background:linear-gradient(90deg,var(--color-gold),transparent)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-leadership .pg-sec-head{margin-bottom:clamp(32px,4vw,52px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-grid{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:clamp(34px,5.5vw,84px);align-items:start}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-media{position:relative;align-self:start}

:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-shape{position:absolute;z-index:0;pointer-events:none}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-shape-a{right:-46px;top:-34px;width:230px;height:230px;border:1px solid #b9d0e4;border-radius:50%;box-shadow:0 0 0 26px rgba(0,66,126,.04);transform:translate3d(0,calc(var(--lead-par,0)*-1.6px),0)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-shape-b{left:-26px;bottom:60px;width:120px;height:120px;background-image:radial-gradient(var(--color-deep-blue) 1.5px,transparent 1.7px);background-size:15px 15px;opacity:.28;transform:translate3d(0,calc(var(--lead-par,0)*1.2px),0)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-frame{position:relative;z-index:1;margin:0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-photo{aspect-ratio:4/5;border:6px solid #fff;border-radius:30px;box-shadow:0 38px 70px -34px rgba(0,49,92,.7)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-photo::after{content:attr(data-initials);position:absolute;inset:0;z-index:-1;display:grid;place-items:center;color:rgba(255,255,255,.9);font:400 clamp(4rem,9vw,6rem) var(--serif)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-photo img{height:100%;transform:translate3d(0,calc(var(--lead-par,0)*1px),0) scale(1.14);transition:opacity .6s;will-change:transform}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-media.is-visible .lead-photo{animation:lead-wipe 1.2s cubic-bezier(.2,.7,.2,1) .1s backwards}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-tag{position:absolute;left:20px;top:20px;padding:7px 14px;border-radius:99px;background:var(--color-gold);color:var(--color-charcoal);font:700 .68rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;box-shadow:0 12px 24px -12px rgba(0,0,0,.5)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-id{position:absolute;left:18px;right:18px;bottom:-24px;display:grid;gap:2px;padding:15px 18px;border:1px solid rgba(255,255,255,.85);border-bottom:3px solid var(--color-gold);border-radius:16px;
  background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 22px 40px -22px rgba(0,49,92,.55)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-id b{font-size:1.08rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-id span{color:var(--color-text-muted);font-size:.86rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-float{position:absolute;z-index:3;right:-22px;bottom:78px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:11px 16px 11px 11px;border:1px solid #dbe6ef;border-radius:14px;background:#fff;box-shadow:0 22px 40px -22px rgba(0,49,92,.6);animation:co-float 8s ease-in-out 1.2s infinite}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-float>span{grid-row:span 2;display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);color:#fff}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-float>span .nx-ico{width:17px;height:17px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-float b{font-size:.82rem;line-height:1.2}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-float small{color:#5f6c7a;font-size:.68rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-body{display:grid;gap:0;min-width:0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-role{margin:0 0 6px;color:var(--color-deep-blue);font:600 .72rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-name{margin:0;font:400 clamp(2.3rem,4vw,3.3rem)/1.05 var(--serif);letter-spacing:-.02em}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-intro{max-width:60ch;margin:14px 0 0;color:var(--color-text-muted);font-size:1.08rem;line-height:1.7}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-blocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-block{position:relative;overflow:hidden;display:grid;align-content:start;gap:6px;padding:20px 20px 22px;border:1px solid var(--color-border);border-radius:18px;background:#fff;box-shadow:0 18px 34px -30px rgba(0,66,126,.5);
  transition:transform .3s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .3s,background .3s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-block::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.16);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lb-ico{width:42px;height:42px;margin-bottom:6px;border-radius:12px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lb-ico .nx-ico{width:20px;height:20px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-block h4{margin:0;font:600 1.05rem var(--sans)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-block p{margin:0;color:var(--color-text-muted);font-size:.95rem;line-height:1.55}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-quote{position:relative;margin:22px 0 0;padding:24px 28px 24px 32px;border-radius:0 20px 20px 0;border-left:4px solid var(--color-gold);
  background:linear-gradient(120deg,#06295a,#00427e);color:#fff;box-shadow:0 26px 46px -30px rgba(0,49,92,.8)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-quote::before{content:"“";position:absolute;right:22px;top:-6px;color:rgba(255,215,0,.35);font:400 6.5rem/1 var(--serif);pointer-events:none}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-quote p{position:relative;max-width:none;margin:0;color:#fff;font:400 clamp(1.55rem,2.6vw,2.15rem)/1.2 var(--serif)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-quote footer{margin:10px 0 0;padding:0;border:0;background:none;color:rgba(255,255,255,.78);font-size:.86rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-approach{margin-top:22px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .la-h{margin:0 0 10px;color:var(--color-deep-blue);font:600 .7rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-approach ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;border:1px solid var(--color-border);border-radius:16px;background:#fff;overflow:hidden}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-approach li{display:grid;gap:3px;padding:16px 18px;transition:background .25s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-approach li+li{border-left:1px solid var(--color-border)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-approach b{font-size:.98rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-approach span{color:var(--color-text-muted);font-size:.88rem;line-height:1.45}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-note{margin:18px 0 0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-sec{padding-top:clamp(56px,7vw,92px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-sec .pg-cards,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-cards{gap:20px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-cards{gap:20px;border-top:0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-card+.pg-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-card:nth-child(odd){position:relative;overflow:hidden;align-items:flex-start;padding:26px 26px 28px;gap:10px;border:1px solid var(--color-border);border-radius:22px;background:#fff;
  box-shadow:0 1px 2px rgba(26,26,26,.04),0 24px 44px -34px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-card::before,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-card::before,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .team-card2::before{content:"";position:absolute;left:0;top:0;z-index:1;width:100%;height:3px;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.16);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-card h3{margin:6px 0 0;font:400 1.45rem/1.2 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-card p{color:var(--color-text-muted);font-size:.98rem;line-height:1.6}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .feat-top{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .feat-ico{width:50px;height:50px;border-radius:14px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .feat-ico .nx-ico{width:23px;height:23px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .feat-num{color:var(--color-deep-blue);font:600 .78rem var(--mono);letter-spacing:.12em}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .feat-tag{margin-top:auto;padding:5px 11px;border-radius:99px;background:#eef5fb;color:var(--color-deep-blue);font:600 .66rem/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .feat-top .feat-tag{margin-top:0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .feat-card .feat-tag{margin-top:6px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .action-card .btn{margin-top:auto}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .action-card p{margin-bottom:10px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .belief-card .belief-index{position:absolute}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .team-card2{position:relative;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:22px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 24px 44px -34px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tc-photo{aspect-ratio:16/9;border-radius:0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tc-photo img{height:100%}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tc-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(3,17,46,.55))}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tc-ico{position:absolute;z-index:2;left:22px;bottom:-1px;display:grid;width:52px;height:52px;place-items:center;border-radius:14px 14px 0 0;background:#fff;color:var(--color-deep-blue);box-shadow:inset 0 3px 0 var(--color-gold)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tc-ico .nx-ico{width:23px;height:23px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tc-body{padding:20px 24px 26px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tc-body h3{margin:0;font:400 1.5rem/1.2 var(--serif)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tc-body p{margin:6px 0 0;color:var(--color-text-muted)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .benefit-grid,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .benefit-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .benefit-tile,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .info-tile{display:flex;align-items:flex-start;gap:16px;padding:20px 20px 22px;border:1px solid var(--color-border);border-radius:18px;background:#fff;box-shadow:0 18px 34px -30px rgba(0,66,126,.5);transition:transform .3s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .3s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .benefit-grid .benefit-tile{flex-direction:column}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .benefit-tile b,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .info-tile b{display:block;font-size:1.02rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .benefit-tile span:not(.feat-ico),:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .info-tile div>span{display:block;margin-top:4px;color:var(--color-text-muted);font-size:.95rem;line-height:1.5}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .independence{display:flex;align-items:flex-start;gap:20px;padding:26px 28px;border:1px solid #cfe0ee;border-left:5px solid var(--color-gold);border-radius:0 22px 22px 0;background:linear-gradient(120deg,#fff,#eef5fb);box-shadow:0 24px 44px -34px rgba(0,66,126,.5)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .independence h3{margin:0 0 6px;font:400 1.6rem/1.2 var(--serif)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .independence p{max-width:70ch;color:var(--color-text-muted)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-empty{border-radius:20px;background:#fff;border:1.5px dashed #b9cde0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-hero-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(30px,5vw,72px);align-items:center}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-hero-split .pg-sub{grid-column:1/-1}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .company-kicker{color:var(--co-sky);margin-bottom:16px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero h1{max-width:16ch;margin-top:0;font-size:clamp(2.5rem,4.8vw,4.2rem);line-height:1.02}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .company-hero-actions{margin-top:30px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .btn-primary{background:#0a63c4;box-shadow:inset 0 -3px 0 var(--color-gold),0 14px 28px -12px rgba(0,0,0,.6)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .btn-primary:hover{background:#0b73e0;transform:translateY(-2px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .btn-quiet{background:rgba(255,255,255,.06);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .btn-quiet:hover{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1.5px var(--color-gold);transform:translateY(-2px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .company-hero-link{cursor:pointer;border:0;font:inherit;font-weight:600}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-hero-art{position:relative;aspect-ratio:5/4.4;max-width:520px;width:100%;margin-left:auto}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ha-main{position:absolute;inset:0 0 8% 8%;border:5px solid rgba(255,255,255,.9);border-radius:28px;box-shadow:0 40px 80px -36px rgba(0,0,0,.8);translate:calc(var(--mx,0)*-8px) calc(var(--my,0)*-6px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ha-main img{height:100%}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ha-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:9px;padding:10px 16px 10px 10px;border:1px solid rgba(255,255,255,.8);border-radius:14px;background:rgba(255,255,255,.96);color:var(--color-charcoal);box-shadow:0 22px 40px -20px rgba(2,13,38,.7);animation:co-float 8s ease-in-out infinite}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ha-chip .nx-ico{width:34px;height:34px;padding:8px;border-radius:10px;background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ha-chip b{font-size:.8rem;line-height:1.2}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ha-chip-1{left:0;top:12%}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ha-chip-2{right:-4%;top:46%;animation-delay:-3s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ha-chip-3{left:6%;bottom:0;animation-delay:-5s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-roles{scroll-margin-top:96px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-roles-note{display:flex;align-items:flex-start;gap:12px;max-width:none;margin:0 0 24px;padding:14px 18px;border:1px solid #cfe3f0;border-left:4px solid var(--color-cyan);border-radius:0 14px 14px 0;background:#f0f8fd;color:var(--color-text-muted);font-size:.94rem;line-height:1.55}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-roles-note svg{width:20px;height:20px;flex:none;margin-top:1px;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:24px 24px 26px;border:1px solid var(--color-border);border-radius:22px;background:#fff;
  box-shadow:0 1px 2px rgba(26,26,26,.04),0 24px 44px -34px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-top{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-ico{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-ico .nx-ico{width:22px;height:22px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-badge{padding:5px 10px;border:1px dashed #9db4c8;border-radius:99px;background:#f4f8fb;color:#4d6a82;font:600 .64rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-team{margin:6px 0 0;color:var(--color-deep-blue);font:600 .7rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-card h3{margin:0;font:400 1.7rem/1.15 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-desc{margin:0;color:var(--color-text-muted);font-size:.98rem;line-height:1.6}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-meta{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-meta li{padding:5px 11px;border:1px solid var(--color-border);border-radius:99px;background:#f7f9fb;color:#3f4b58;font-size:.78rem;font-weight:500}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-apply{margin-top:auto;min-height:44px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-apply svg{width:17px;height:17px;transition:transform .25s}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-open{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:26px 30px;border:1px solid var(--color-border);border-radius:22px;background:linear-gradient(120deg,#fff,#eef5fb)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-open h3{margin:0 0 4px;font:400 1.5rem/1.2 var(--serif)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-open p{margin:0;max-width:60ch;color:var(--color-text-muted)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta{padding-top:clamp(44px,5vw,64px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-leadership+.company-cta{padding-top:clamp(56px,7vw,88px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta .pg-cta{position:relative;overflow:hidden;isolation:isolate;border:1px solid rgba(0,168,232,.3);border-radius:28px;padding:clamp(34px,5.5vw,68px);
  background:
    radial-gradient(ellipse at 88% 8%,rgba(0,168,232,.34),transparent 40%),
    linear-gradient(100deg,rgba(3,17,46,.95) 0%,rgba(3,17,46,.82) 55%,rgba(3,17,46,.6) 100%),
    url("../images/Global%20Collaboration%20in%20a%20Modern%20Workspace.jpg") center/cover no-repeat,
    linear-gradient(115deg,#06295a,#00427e);
  box-shadow:0 40px 70px -40px rgba(0,49,92,.75)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta .pg-cta::after{content:"";position:absolute;right:-32px;bottom:-90px;width:260px;height:260px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 25px rgba(255,255,255,.035),0 0 0 52px rgba(255,255,255,.025);pointer-events:none;z-index:-1}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta .pg-cta h2{max-width:18ch;font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.08}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta .pg-cta p{margin-top:12px;color:rgba(255,255,255,.82);font-size:1.05rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .cta-actions{display:flex;flex-wrap:wrap;gap:12px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta .pg-cta .btn-primary{background:var(--color-gold);color:var(--color-charcoal);box-shadow:0 16px 30px -14px rgba(0,0,0,.6)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta .pg-cta .btn-primary:hover{background:var(--color-gold-600);transform:translateY(-3px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .btn-quiet-light{background:rgba(255,255,255,.08);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .btn-quiet-light:hover{background:rgba(255,255,255,.2);box-shadow:inset 0 0 0 1.5px var(--color-gold);transform:translateY(-2px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-prose{display:grid;gap:14px;max-width:62ch;color:var(--ink-soft);font-size:1.05rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .ph{display:inline-block;padding:6px 12px;border:1.5px dashed var(--ink-faint);border-radius:8px;background:var(--card);color:var(--ink-faint);font-size:.88rem}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-empty{display:grid;max-width:none;gap:14px;justify-items:start;padding:24px}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-empty p{color:var(--ink-soft)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-note{margin-top:18px;color:var(--color-text-muted)}
#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"]){overflow-x:clip}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-reveal:not(.is-visible){opacity:0}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-reveal.is-visible{animation:co-up .8s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:var(--reveal-delay,0ms)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-reveal[data-co-reveal=left].is-visible{animation-name:co-left}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-reveal[data-co-reveal=right].is-visible{animation-name:co-right}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-reveal[data-co-reveal=zoom].is-visible{animation-name:co-zoom}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .timeline.is-visible::before{animation:tl-draw 1.4s cubic-bezier(.2,.7,.2,1) backwards}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .pg-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .team-card2,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .tl-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .glance-tile,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .story-point,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-block,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .benefit-tile,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .info-tile,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .independence,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .lead-approach li,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-cta,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .btn{-webkit-tap-highlight-color:transparent}

:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.pg-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.job-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.team-card2,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.what-card,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.glance-tile,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.benefit-tile,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.info-tile,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.lead-block,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.story-point,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.tl-card{transform:scale(.985);border-color:var(--color-cyan);box-shadow:0 18px 30px -22px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.pg-card::before,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.job-card::before,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.team-card2::before,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .is-pressed.lead-block::before{transform:scaleX(1)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-card.is-pressed .what-cta svg{transform:translateX(5px)}
:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-about-hero .btn:focus-visible,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .co-careers-hero .btn:focus-visible,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .job-apply:focus-visible,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .what-cta:focus-visible,:where(#page:has([data-co-tpl="about"]),#page:has([data-co-tpl="careers"])) .company-cta .btn:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}








/* 3. Contact, Partner program, Audit partners (NexenMinds) */
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-hero:not(.company-about-hero),:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta{--co-navy:#04122e;--co-navy-2:#06295a;--co-sky:#5FD0FF;}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-photo{position:relative;display:block;margin:0;overflow:hidden;isolation:isolate;
  background:linear-gradient(135deg,#06295a,#0a63c4 60%,#00a8e8)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),opacity .6s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-photo img.is-failed{opacity:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero{position:relative;overflow:hidden;overflow:clip;isolation:isolate;
  display:flex;align-items:center;min-height:clamp(560px,78vh,760px);
  padding:clamp(72px,9vw,120px) 0 clamp(72px,9vw,120px);
  border:0;background:var(--co-navy);color:#fff;}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-hero-bg{position:absolute;inset:-6% 0;z-index:-3;pointer-events:none;
  transform:translate3d(0,calc(var(--co-par,0)*1px),0);will-change:transform}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-hero-bg::before{content:"";position:absolute;inset:0;
  background:
    url("../images/Warm%20Collaborative%20Tech%20Office%20Banner.jpg") center 40%/cover no-repeat,
    url("../images/sections/solutions-bg.jpg") center 55%/cover no-repeat;
  animation:co-drift 28s ease-in-out infinite alternate}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero::before{content:"";position:absolute;z-index:-2;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse at 84% 30%,rgba(0,168,232,.30),transparent 42%),
    linear-gradient(90deg,rgba(3,17,46,.93) 0%,rgba(3,17,46,.74) 44%,rgba(3,17,46,.34) 100%),
    linear-gradient(180deg,rgba(3,17,46,.35),transparent 30%,rgba(3,17,46,.62) 100%)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 100%);mask-image:linear-gradient(90deg,transparent 30%,#000 100%)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-hero-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.85fr);align-items:center;gap:clamp(36px,6vw,84px);width:100%}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-hero-copy{max-width:640px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-kicker{display:flex;align-items:center;gap:10px;margin:0 0 17px;color:var(--color-deep-blue);font:600 .72rem/1.4 var(--mono);letter-spacing:.14em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-kicker>span{width:8px;height:8px;flex:none;border-radius:50%;background:var(--color-cyan);box-shadow:0 0 0 5px rgba(0,168,232,.14)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero .company-kicker{color:var(--co-sky)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero h1{max-width:17ch;margin:0;color:#fff;font-size:clamp(2.6rem,4.6vw,4.1rem);line-height:1;letter-spacing:-.035em;text-shadow:0 2px 30px rgba(0,0,0,.25)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero .lede{max-width:56ch;margin-top:24px;color:rgba(255,255,255,.86);font-size:clamp(1.02rem,1.5vw,1.17rem);line-height:1.7}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-hero-link svg{width:18px;height:18px;transition:transform .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-hero-link:hover svg{transform:translateX(4px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero .btn-primary{background:#0a63c4;box-shadow:inset 0 -3px 0 var(--color-gold),0 14px 28px -12px rgba(0,0,0,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero .btn-primary:hover{background:#0b73e0;transform:translateY(-2px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero .btn-quiet{background:rgba(255,255,255,.06);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero .btn-quiet:hover{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1.5px var(--color-gold),0 0 0 4px rgba(255,215,0,.16);transform:translateY(-2px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-visual{position:relative;display:grid;min-height:410px;place-items:center;padding:30px;border:1px solid rgba(140,210,255,.28);border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.05));
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  box-shadow:0 0 0 1px rgba(0,168,232,.12),0 40px 90px -36px rgba(0,168,232,.55)}

:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-visual-orbit{position:absolute;width:84%;height:68%;border:1px solid rgba(255,255,255,.16);border-radius:50%;transform:rotate(-22deg);pointer-events:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .orbit-b{width:68%;height:88%;transform:rotate(29deg);border-style:dashed}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-product{position:relative;width:min(100%,430px);padding:22px;border:1px solid #dce6ee;border-radius:18px;background:#fff;color:var(--color-charcoal);
  box-shadow:0 26px 56px rgba(2,13,38,.4);animation:co-float 7s ease-in-out 1.2s infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-product-top{display:flex;align-items:center;gap:11px;padding-bottom:17px;border-bottom:1px solid #e8edf1}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-product-mark{display:grid;width:40px;height:40px;flex:none;place-items:center;border-radius:12px;background:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);color:#fff;font:400 19px var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-product-top b,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-product-top small{display:block}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-product-top b{font-size:.92rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-product-top small{margin-top:2px;color:#6b7784;font-size:.68rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .product-status{margin-left:auto;padding:5px 9px;border-radius:99px;background:#eaf7f3;color:#267353;font-size:.65rem;font-weight:700}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .product-status::before{content:"";display:inline-block;width:6px;height:6px;margin:0 5px 1px 0;border-radius:50%;background:#34a779;animation:co-pulse 2s ease-in-out infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-flow{display:grid;grid-template-columns:1fr;gap:9px;padding:18px 0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .flow-node{display:grid;grid-template-columns:34px 1fr;align-items:center;column-gap:11px;padding:11px 12px;border:1px solid #e5ebf0;border-radius:11px;background:#fbfcfd;transition:border-color .25s,transform .25s,box-shadow .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .flow-node:hover{transform:translateX(4px);border-color:#87c9e0;box-shadow:0 10px 20px -14px rgba(0,66,126,.5)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .flow-icon{grid-row:span 2;display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:#e8f2fa;color:var(--color-deep-blue);font:500 .68rem var(--mono)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .flow-node b{font-size:.78rem;line-height:1.35}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .flow-node small{color:#707c88;font-size:.66rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .flow-line{height:7px;width:1px;margin-left:28px;background:linear-gradient(var(--color-cyan),#bad5e4)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-decision{display:flex;align-items:center;gap:10px;padding:13px;border-radius:11px;background:#f2f7fb}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .decision-spark{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:#dff3fb;color:#0077ac}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-decision b,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-decision small{display:block}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-decision b{font-size:.74rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-decision small{color:#687787;font-size:.66rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .decision-check{display:grid;width:23px;height:23px;margin-left:auto;place-items:center;border:1px solid #9dcfb8;border-radius:50%;color:#267353;font-size:.76rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .visual-caption{position:absolute;right:24px;bottom:12px;color:rgba(255,255,255,.82);font-size:.68rem;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-hero:not(.company-about-hero){position:relative;isolation:isolate;overflow:hidden;
  padding:clamp(68px,9vw,112px) 0 clamp(64px,8vw,96px);border:0;color:#fff;
  background:
    radial-gradient(ellipse at 82% 16%,rgba(0,168,232,.35),transparent 36%),
    linear-gradient(90deg,rgba(3,17,46,.92) 0%,rgba(3,17,46,.70) 50%,rgba(3,17,46,.38) 100%),
    url("../images/Warm%20Collaborative%20Tech%20Office%20Banner.jpg") center 40%/cover no-repeat,
    linear-gradient(118deg,#06295a 0%,#00427e 58%,#075b91 100%);}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-hero:not(.company-about-hero)::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.18;
  background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);
  background-size:48px 48px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 45%,#000);mask-image:linear-gradient(90deg,transparent,#000 45%,#000)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-hero:not(.company-about-hero) h1{max-width:15ch;margin-top:0;color:#fff;font-size:clamp(2.8rem,6vw,5rem);line-height:1.02}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-hero:not(.company-about-hero) .lede{max-width:58ch;margin-top:22px;color:rgba(255,255,255,.84);font-size:clamp(1.05rem,1.5vw,1.2rem)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stats-sec{position:relative;z-index:3;margin-top:calc(clamp(34px,4vw,52px)*-1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:14px;row-gap:2px;padding:20px 20px 20px 18px;overflow:hidden;
  border:1px solid var(--color-border);border-radius:18px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.05),0 24px 44px -28px rgba(2,13,38,.55);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.16);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat-ico{grid-row:span 2;display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat-ico .nx-ico{width:22px;height:22px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat b{align-self:end;font:400 2.1rem/1 var(--serif);color:var(--color-deep-blue);letter-spacing:-.02em;grid-column:2}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat-t{grid-column:2;display:grid;color:var(--color-charcoal);font-size:.86rem;font-weight:600;line-height:1.3}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat-t small{margin-top:2px;color:var(--color-text-muted);font-size:.76rem;font-weight:400;line-height:1.4}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat.is-lift{transform:translateY(-6px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 34px 52px -26px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat.is-lift::after{transform:scaleX(1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat.is-lift .co2-stat-ico{transform:translateY(-2px) rotate(-8deg) scale(1.08)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-story{padding-top:clamp(64px,8vw,108px);overflow:hidden;overflow:clip}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-story-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(40px,7vw,96px);align-items:center}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-compose{position:relative;width:100%;max-width:560px;aspect-ratio:1/1.08;margin-inline:auto 0;isolation:isolate}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-shape{position:absolute;z-index:-1;inset:7% 0 0 9%;border-radius:30px;background:linear-gradient(150deg,#e4eef8,#cfe1f1);border:1px solid #c6dbec}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-dots{position:absolute;z-index:-1;left:-6px;top:3%;width:96px;height:96px;background-image:radial-gradient(var(--color-deep-blue) 1.4px,transparent 1.6px);background-size:14px 14px;opacity:.26}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-main{position:absolute;left:0;top:0;width:72%;height:82%;margin:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-main .co-photo,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-second .co-photo{width:100%;height:100%;border-radius:24px;box-shadow:0 34px 64px -34px rgba(0,49,92,.65)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-second{position:absolute;right:0;bottom:3%;width:50%;aspect-ratio:5/4;margin:0;translate:0 calc(var(--par,0)*1px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-second .co-photo{border:6px solid #fff;border-radius:22px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-badge{position:absolute;left:-14px;bottom:20%;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:13px 20px 13px 13px;border-radius:16px;
  background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.8);box-shadow:0 22px 44px -20px rgba(0,49,92,.55);animation:co-float 8s ease-in-out 1s infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-badge span{grid-row:span 2;display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-badge .nx-ico{width:19px;height:19px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-badge b{font-size:.92rem;line-height:1.2}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-badge small{color:#5a6877;font-size:.78rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-statcard{position:absolute;right:6%;top:-4%;display:grid;gap:3px;padding:14px 18px;border-radius:16px;background:var(--color-deep-blue);color:#fff;box-shadow:0 22px 40px -18px rgba(0,49,92,.7),inset 0 -3px 0 var(--color-gold);animation:co-float 9s ease-in-out .4s infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-statcard b{font:400 1.9rem/1 var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-statcard small{color:rgba(255,255,255,.82);font-size:.74rem;line-height:1.4}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-story .pg-sec-head{margin:0 0 18px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-story .pg-sec-head h2,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs .pg-sec-head h2,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-what .pg-sec-head h2,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-how .pg-sec-head h2{max-width:18ch;font-size:clamp(2rem,4vw,3.05rem);line-height:1.08}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-lead{max-width:44ch;margin:0 0 22px;padding-left:18px;border-left:3px solid var(--color-gold);color:var(--color-charcoal);font-size:clamp(1.15rem,1.8vw,1.35rem);line-height:1.5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-points{display:grid;gap:12px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:18px 20px;border:1px solid var(--color-border);border-radius:18px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 20px 38px -32px rgba(0,66,126,.5);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point-ico{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1),background .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point-ico .nx-ico{width:21px;height:21px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point h3{margin:0 0 4px;font:600 1rem/1.3 var(--sans);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point p{margin:0;color:var(--color-text-muted);font-size:.95rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point.is-lift{transform:translateX(6px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 28px 44px -28px rgba(0,66,126,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point.is-lift .co2-point-ico{transform:rotate(-8deg) scale(1.08);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-link{display:inline-flex;align-items:center;gap:8px;margin-top:22px;min-height:44px;color:var(--color-deep-blue);font-weight:600;text-decoration:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-link svg{width:18px;height:18px;transition:transform .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-link:hover svg,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-link:focus-visible svg{transform:translateX(6px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs{position:relative;isolation:isolate;overflow:hidden;margin-top:clamp(64px,8vw,108px);padding:clamp(64px,8vw,104px) 0 clamp(72px,9vw,112px);background:var(--co-navy);color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs-bg{position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:linear-gradient(180deg,rgba(3,17,46,.88),rgba(3,17,46,.78) 50%,rgba(3,17,46,.92)),radial-gradient(ellipse at 15% 20%,rgba(0,168,232,.26),transparent 45%),
    url("../images/Modern%20Office%20with%20Secure%20Cloud%20Infrastructure.jpg") center/cover no-repeat,linear-gradient(135deg,#04122e,#06295a)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs::after{content:"";position:absolute;z-index:-1;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;pointer-events:none;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 40px rgba(255,255,255,.025),0 0 0 90px rgba(255,255,255,.02)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs .company-kicker{color:var(--co-sky)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs .pg-sec-head h2{color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-beliefs-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 40px;margin-bottom:36px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-beliefs-head .pg-sec-head{margin:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs .co2-beliefs-head .pg-sec-head h2{max-width:22ch}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-beliefs-head>p{max-width:34ch;margin:0;color:rgba(255,255,255,.78);font-size:1.02rem;line-height:1.6}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-beliefs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;gap:10px;padding:26px 24px 24px;border:1px solid rgba(255,255,255,.18);border-radius:22px;
  background:linear-gradient(160deg,rgba(255,255,255,.14),rgba(255,255,255,.05));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 24px 50px -30px rgba(0,0,0,.6);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .3s,box-shadow .35s,background .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.2);transform-origin:left;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief::after{content:"";position:absolute;z-index:-1;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(0,168,232,.25),transparent 70%);opacity:.6;transition:transform .6s,opacity .4s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief-top{display:flex;align-items:center;justify-content:space-between}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .belief-ico{display:grid;width:50px;height:50px;place-items:center;border-radius:14px;background:rgba(255,215,0,.14);color:var(--color-gold);box-shadow:inset 0 0 0 1px rgba(255,215,0,.35);transition:transform .45s cubic-bezier(.3,1.4,.5,1),background .3s,color .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .belief-ico .nx-ico{width:25px;height:25px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief .belief-index{position:static;color:rgba(255,255,255,.45);font:500 .78rem var(--mono);letter-spacing:.1em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief h3{margin:8px 0 0;color:#fff;font:400 1.6rem/1.2 var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief>p{margin:0;color:rgba(255,255,255,.82);font-size:.97rem;line-height:1.6}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-proof{display:grid;gap:8px;margin-top:auto;padding:14px 14px 14px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(3,17,46,.38)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief>p{margin-bottom:12px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-proof-k{color:var(--co-sky);font:600 .64rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-proof-row{display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.9);font-size:.84rem;line-height:1.4}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-proof-row i{flex:none;width:8px;height:8px;border-radius:50%}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .dot-cyan{background:var(--color-cyan);box-shadow:0 0 0 4px rgba(0,168,232,.2)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .dot-ok{background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.2)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-chips{display:flex;flex-wrap:wrap;gap:6px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-chips span{padding:4px 10px;border:1px solid rgba(255,255,255,.28);border-radius:99px;font-size:.74rem;font-weight:600;color:#fff;background:rgba(255,255,255,.08)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief.is-lift{transform:translateY(-8px);border-color:rgba(255,215,0,.55);background:linear-gradient(160deg,rgba(255,255,255,.19),rgba(255,255,255,.07));box-shadow:0 34px 56px -28px rgba(0,0,0,.7),0 0 0 1px rgba(255,215,0,.12)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief.is-lift::before{transform:scaleX(1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief.is-lift::after{transform:scale(1.6);opacity:1}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief.is-lift .belief-ico{transform:translateY(-2px) rotate(-8deg) scale(1.1);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-what{padding-top:clamp(64px,8vw,108px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-what .pg-sec-head{margin-bottom:34px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod{position:relative;display:flex;flex-direction:column;overflow:hidden;color:inherit;text-decoration:none;border:1px solid var(--color-border);border-radius:24px;background:#fff;
  box-shadow:0 1px 2px rgba(26,26,26,.05),0 24px 44px -32px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-vis{aspect-ratio:16/7;width:100%}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-vis img{position:absolute;inset:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-vis::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,17,46,.05) 30%,rgba(3,17,46,.6));pointer-events:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-logo-plate{position:relative;z-index:2;align-self:flex-start;display:grid;place-items:center;margin:-32px 0 -32px 24px;padding:12px 18px;border-radius:16px;background:#fff;border:1px solid #e3ecf4;box-shadow:0 18px 34px -18px rgba(0,30,70,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-logo-plate img{display:block;height:38px;width:auto}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-body{position:relative;display:grid;align-content:start;gap:10px;flex:1;padding:26px 28px 28px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod:not(.co2-prod-wide) .co2-prod-body{padding-top:50px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-body::before{content:"";position:absolute;left:28px;top:-1px;height:3px;width:56px;border-radius:0 0 3px 3px;background:var(--color-gold);transition:width .45s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod strong{font:400 1.65rem/1.15 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-eyebrow{color:var(--color-deep-blue);font:600 .7rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-d{color:var(--color-text-muted);font-size:1rem;line-height:1.6}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-feats{display:grid;gap:9px;margin:6px 0 4px;padding:14px 0 0;border-top:1px solid var(--color-border);list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-feats li{display:flex;align-items:flex-start;gap:11px;color:var(--color-charcoal);font-size:.93rem;line-height:1.45}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-feats .nx-ico{flex:none;width:30px;height:30px;padding:7px;border-radius:9px;background:#e8f2fa;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-link-go{display:inline-flex;align-items:center;gap:8px;justify-self:start;font-style:normal;font-weight:600;font-size:.93rem;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod .co-link-go{margin-top:6px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod .co-link-go svg{width:17px;height:17px;transition:transform .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod.is-lift{transform:translateY(-8px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 36px 56px -28px rgba(0,66,126,.62)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod.is-lift .co-photo img{transform:scale(1.07)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod.is-lift .co-link-go svg{transform:translateX(6px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod.is-lift .co2-prod-body::before{width:calc(100% - 56px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-wide{grid-column:1/-1;flex-direction:row}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-wide .co2-prod-vis{aspect-ratio:auto;width:38%;flex:none;min-height:100%}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod-wide .co2-prod-body{padding:30px 32px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-svc{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 4px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-svc span{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--color-border);border-radius:12px;background:#f7fafc;color:var(--color-charcoal);font-size:.9rem;font-weight:600;line-height:1.3;transition:border-color .25s,background .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-svc .nx-ico{flex:none;width:30px;height:30px;padding:7px;border-radius:9px;background:#e8f2fa;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod.is-lift .co2-svc span{border-color:#b7d8ea;background:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-how{padding-top:clamp(64px,8vw,108px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-how .pg-sec-head{margin-bottom:36px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps::before,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps::after{content:"";position:absolute;left:8%;right:8%;top:62px;height:2px;border-radius:2px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps::before{background:#d6e4ef}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps::after{background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(0);transform-origin:left;transition:transform 1.4s cubic-bezier(.2,.7,.2,1) .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps.is-visible::after{transform:scaleX(1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps li{position:relative;z-index:1;display:grid;align-content:start;gap:8px;padding:20px 20px 22px;border:1px solid var(--color-border);border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 22px 40px -32px rgba(0,66,126,.5);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-step-n{position:absolute;right:18px;top:16px;color:#9ab0c4;font:600 .74rem var(--mono);letter-spacing:.1em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-step-ico{display:grid;width:50px;height:50px;place-items:center;border-radius:50%;background:var(--color-deep-blue);color:#fff;box-shadow:0 0 0 6px #fff,0 0 0 7px #d6e4ef,inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-step-ico .nx-ico{width:22px;height:22px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps h3{margin:12px 0 0;font:400 1.4rem/1.2 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps p{margin:0;color:var(--color-text-muted);font-size:.94rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-tag{justify-self:start;margin-top:4px;padding:4px 11px;border-radius:99px;background:#eef5fb;color:var(--color-deep-blue);font:600 .68rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps li.is-lift{transform:translateY(-6px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 32px 50px -28px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps li.is-lift .co2-step-ico{transform:scale(1.1) rotate(-6deg)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-leadership{position:relative;margin-top:clamp(64px,8vw,108px);padding:clamp(64px,8vw,104px) 0 clamp(72px,9vw,112px);overflow:hidden;overflow:clip;
  background:linear-gradient(180deg,#eaf1f8 0%,#f5f7fa 100%);border-top:1px solid #dbe6f0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-leadership::before{content:"";position:absolute;left:0;top:-1px;width:min(220px,40%);height:4px;background:linear-gradient(90deg,var(--color-gold),transparent)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-leadership .pg-sec-head{margin-bottom:clamp(30px,4vw,48px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-leadership .pg-sec-head h2{max-width:18ch;font-size:clamp(2rem,4vw,3.05rem);line-height:1.08}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:clamp(36px,5.5vw,80px);align-items:start}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-stage{position:relative;isolation:isolate;max-width:420px;width:100%;padding:0 22px 40px 0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-ring{position:absolute;z-index:-1;right:-34px;top:-30px;width:210px;height:210px;border-radius:50%;border:1px solid #bcd3e6;box-shadow:0 0 0 26px rgba(0,66,126,.04),0 0 0 54px rgba(0,66,126,.025)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-dots{position:absolute;z-index:-1;left:-24px;bottom:70px;width:88px;height:88px;background-image:radial-gradient(var(--color-deep-blue) 1.4px,transparent 1.6px);background-size:14px 14px;opacity:.24}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-portrait{position:relative;margin:0;transition:transform .25s ease-out;transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-portrait::before{content:"";position:absolute;z-index:-1;inset:18px -18px -18px 18px;border:1px solid #c3d8ea;border-radius:28px;background:linear-gradient(145deg,#f7fbff,#d9e9f6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-portrait::after{content:"";position:absolute;z-index:2;left:-9px;top:-9px;width:64px;height:64px;border-left:4px solid var(--color-gold);border-top:4px solid var(--color-gold);border-radius:18px 0 0 0;pointer-events:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-photo{aspect-ratio:5/6;border-radius:26px;box-shadow:0 36px 66px -34px rgba(0,49,92,.68)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-photo::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgba(3,17,46,.38))}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-photo::after{content:attr(data-initials);position:absolute;inset:0;z-index:-1;display:grid;place-items:center;color:rgba(255,255,255,.9);font:400 clamp(4rem,9vw,6rem) var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-photo img{position:absolute;left:0;top:-6%;width:100%;height:112%;translate:0 calc(var(--par,0)*1px);transform:scale(1.02)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-stage.is-visible .lead-photo{animation:co2-curtain 1.15s cubic-bezier(.2,.7,.2,1) .15s backwards}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-tag{position:absolute;left:16px;top:16px;z-index:3;padding:7px 13px;border-radius:99px;background:rgba(255,255,255,.94);color:var(--color-deep-blue);font:600 .66rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;box-shadow:0 10px 22px -12px rgba(0,30,70,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-tag::before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--color-gold);box-shadow:0 0 0 3px rgba(255,215,0,.3)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-caption{position:absolute;left:16px;right:16px;bottom:-26px;z-index:3;display:grid;gap:2px;padding:15px 18px;border:1px solid rgba(255,255,255,.8);border-bottom:3px solid var(--color-gold);border-radius:16px;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 22px 40px -22px rgba(0,49,92,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-caption b{font-size:1.05rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-caption span{color:var(--color-text-muted);font-size:.86rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-note{position:absolute;right:-8px;bottom:104px;z-index:4;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:10px 16px 10px 10px;border-radius:14px;background:var(--color-deep-blue);color:#fff;box-shadow:0 20px 36px -16px rgba(0,49,92,.7),inset 0 -3px 0 var(--color-gold);animation:co-float 8s ease-in-out .6s infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-note span{grid-row:span 2;display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:rgba(255,255,255,.14)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-note .nx-ico{width:16px;height:16px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-note b{font-size:.78rem;line-height:1.25}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-note small{color:rgba(255,255,255,.78);font-size:.68rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-body{display:grid;gap:0;min-width:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-role{margin:0 0 6px;color:var(--color-deep-blue);font:600 .72rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-name{margin:0;font:400 clamp(2.2rem,3.8vw,3.1rem)/1.05 var(--serif);letter-spacing:-.02em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-title{margin:6px 0 0;color:var(--color-text-muted);font-size:1rem;font-weight:500}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-intro{max-width:60ch;margin:16px 0 0;color:var(--color-charcoal);font-size:1.08rem;line-height:1.7}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-quote{position:relative;margin:24px 0 0;padding:20px 24px 20px 66px;border-left:4px solid var(--color-gold);border-radius:0 18px 18px 0;background:#fff;box-shadow:0 18px 36px -28px rgba(0,66,126,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-quote-ico{position:absolute;left:20px;top:22px;width:28px;height:28px;color:var(--color-cyan);opacity:.85}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-quote p{margin:0;max-width:none;color:var(--color-deep-blue);font:400 clamp(1.45rem,2.5vw,2rem)/1.2 var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-quote footer{margin:8px 0 0;padding:0;border:0;background:none;color:var(--color-text-muted);font-size:.84rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-blocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block{position:relative;overflow:hidden;display:grid;align-content:start;gap:8px;padding:20px 20px 22px;border:1px solid var(--color-border);border-radius:18px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 20px 38px -32px rgba(0,66,126,.5);
  transition:transform .3s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.16);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block-ico{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1),background .25s,color .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block-ico .nx-ico{width:20px;height:20px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block h4{margin:4px 0 0;font:600 1.02rem var(--sans);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block p{margin:0;color:var(--color-text-muted);font-size:.94rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-tags{display:flex;flex-wrap:wrap;gap:6px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-tags span{padding:5px 10px;border:1px solid #cfe0ee;border-radius:99px;background:#f2f8fc;color:#24506f;font-size:.78rem;font-weight:600;line-height:1.3}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block.is-lift{transform:translateY(-5px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 28px 44px -26px rgba(0,66,126,.58)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block.is-lift::before{transform:scaleX(1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block.is-lift .lead-block-ico{transform:rotate(-8deg) scale(1.08);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-approach{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:14px;padding:16px 20px;border-radius:18px;background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold),0 22px 40px -28px rgba(0,49,92,.8)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-approach-k{color:var(--co-sky,#5FD0FF);font:600 .68rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-approach-v{display:flex;flex-wrap:wrap;gap:8px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-approach-v b{padding:6px 13px;border:1px solid rgba(255,255,255,.3);border-radius:99px;background:rgba(255,255,255,.08);font-size:.86rem;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-foot{margin:14px 0 0;color:var(--color-text-muted);font-size:.9rem}

:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-cards{gap:20px;border-top:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-card,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-card+.pg-card,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-card:nth-child(odd){position:relative;overflow:hidden;padding:26px 24px 28px;gap:10px;border:1px solid var(--color-border);border-radius:18px;background:#fff;
  box-shadow:0 1px 2px rgba(26,26,26,.04),0 22px 40px -34px rgba(0,66,126,.45);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.18);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-card h3{font:400 1.35rem/1.25 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-card .belief-index{position:static;order:-1;color:var(--color-deep-blue);font:600 .74rem var(--mono);letter-spacing:.12em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-beliefs .pg-card .belief-index{position:absolute;color:rgba(255,255,255,.4)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .team-ico,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-ico{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .team-ico svg,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-ico svg{width:21px;height:21px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-links a,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-steps li,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-callout{transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,border-color .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .company-kicker{color:var(--co-sky);margin-bottom:16px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero h1{margin-top:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .company-hero-actions{margin-top:30px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .btn-primary{background:#0a63c4;box-shadow:inset 0 -3px 0 var(--color-gold),0 14px 28px -12px rgba(0,0,0,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .btn-primary:hover{background:#0b73e0;transform:translateY(-2px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .btn-quiet{background:rgba(255,255,255,.06);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .btn-quiet:hover{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1.5px var(--color-gold);transform:translateY(-2px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .company-hero-link{cursor:pointer;border:0;font:inherit}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-sec{padding-top:clamp(56px,7vw,92px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-sec .pg-sec-head{margin-bottom:28px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-sec .pg-sec-head h2{max-width:20ch;font-size:clamp(1.9rem,3.6vw,2.8rem);line-height:1.1}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-roles{scroll-margin-top:96px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-roles-note{display:flex;align-items:flex-start;gap:12px;max-width:none;margin:0 0 24px;padding:14px 18px;border:1px solid #cfe3f0;border-left:4px solid var(--color-cyan);border-radius:0 14px 14px 0;background:#f0f8fd;color:var(--color-text-muted);font-size:.94rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-roles-note svg{width:20px;height:20px;flex:none;margin-top:1px;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:24px 24px 26px;border:1px solid var(--color-border);border-radius:20px;background:#fff;
  box-shadow:0 1px 2px rgba(26,26,26,.04),0 24px 44px -34px rgba(0,66,126,.5);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.18);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-top{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-badge{padding:5px 10px;border:1px dashed #9db4c8;border-radius:99px;background:#f4f8fb;color:#4d6a82;font:600 .66rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-team{margin:6px 0 0;color:var(--color-deep-blue);font:600 .7rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-card h3{margin:0;font:400 1.65rem/1.15 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-desc{margin:0;color:var(--color-text-muted);font-size:.98rem;line-height:1.6}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-meta{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-meta li{padding:5px 11px;border:1px solid var(--color-border);border-radius:99px;background:#f7f9fb;color:#3f4b58;font-size:.78rem;font-weight:500}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-apply{margin-top:auto;min-height:44px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-apply svg{width:17px;height:17px;transition:transform .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-open{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:24px 28px;border:1px solid var(--color-border);border-radius:20px;background:linear-gradient(120deg,#fff,#eef5fb)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-open h3{margin:0 0 4px;font:400 1.5rem/1.2 var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-open p{margin:0;max-width:60ch;color:var(--color-text-muted)}

:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-card:active,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-card:active,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod:active,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat:active,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point:active,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief:active,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps li:active,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block:active{transform:scale(.985);border-color:var(--color-cyan)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-card,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-card,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-stat,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-point,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-belief,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-steps li,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .lead-block,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .btn{-webkit-tap-highlight-color:transparent}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-about-hero .btn:focus-visible,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co-careers-hero .btn:focus-visible,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .job-apply:focus-visible,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-prod:focus-visible,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .co2-link:focus-visible{outline:3px solid var(--color-gold);outline-offset:3px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-sec-head h2{letter-spacing:-.01em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-steps li{border-radius:18px;box-shadow:0 22px 40px -34px rgba(0,66,126,.45)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-callout{border-radius:0 16px 16px 0;box-shadow:0 18px 36px -30px rgba(0,66,126,.4)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-empty{border-radius:18px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta{position:relative;overflow:hidden;isolation:isolate;border:1px solid rgba(0,168,232,.3);border-radius:26px;padding:clamp(34px,5.5vw,68px);
  background:
    radial-gradient(ellipse at 88% 8%,rgba(0,168,232,.34),transparent 40%),
    linear-gradient(100deg,rgba(3,17,46,.95) 0%,rgba(3,17,46,.82) 55%,rgba(3,17,46,.6) 100%),
    url("../images/Global%20Collaboration%20in%20a%20Modern%20Workspace.jpg") center/cover no-repeat,
    linear-gradient(115deg,#06295a,#00427e);
  box-shadow:0 40px 70px -40px rgba(0,49,92,.75)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta::after{content:"";position:absolute;right:-32px;bottom:-90px;width:260px;height:260px;border:1px solid rgba(255,255,255,.18);border-radius:50%;
  box-shadow:0 0 0 25px rgba(255,255,255,.035),0 0 0 52px rgba(255,255,255,.025);pointer-events:none;z-index:-1}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta h2{max-width:18ch;font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.08}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta p{margin-top:12px;color:rgba(255,255,255,.82);font-size:1.05rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta .btn-primary{background:var(--color-gold);color:var(--color-charcoal);box-shadow:0 16px 30px -14px rgba(0,0,0,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta .btn-primary:hover{background:var(--color-gold-600);transform:translateY(-3px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-prose{display:grid;gap:14px;max-width:62ch;color:var(--ink-soft);font-size:1.05rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-team{display:grid;gap:18px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .avatar{width:64px;height:64px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--paper);font-family:var(--serif);font-size:1.4rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .ph{display:inline-block;padding:6px 12px;border:1.5px dashed var(--ink-faint);border-radius:8px;background:var(--card);color:var(--ink-faint);font-size:.88rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-empty{display:grid;max-width:none;gap:14px;justify-items:start;padding:24px;border:1px solid var(--rule);border-radius:14px;background:var(--card)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-empty p{color:var(--ink-soft)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .ticks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 32px;max-width:860px;margin:0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .ticks li{position:relative;padding-left:26px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .ticks li::before{position:absolute;top:.45em;left:0;width:12px;height:7px;border-bottom:2px solid var(--blue);border-left:2px solid var(--blue);content:"";transform:rotate(-45deg)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-dl{display:grid;grid-template-columns:180px 1fr;gap:14px 24px;margin:0 0 18px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-dl dt{font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .pg-dl dd{margin:0;color:var(--ink-soft)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-reveal:not(.is-visible){opacity:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-reveal.is-visible{animation:co-up .8s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:var(--reveal-delay,0ms)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-reveal[data-co-reveal=left].is-visible{animation-name:co-left}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-reveal[data-co-reveal=right].is-visible{animation-name:co-right}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-reveal[data-co-reveal=zoom].is-visible{animation-name:co-zoom}









:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-sec{padding-top:clamp(64px,8vw,108px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-sec .pg-sec-head{margin-bottom:34px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-sec .pg-sec-head h2{max-width:20ch;font-size:clamp(2rem,4vw,3.05rem);line-height:1.08}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-sec:last-of-type{padding-bottom:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-lead{max-width:56ch;margin:0;color:var(--color-charcoal);font-size:clamp(1.08rem,1.7vw,1.25rem);line-height:1.6}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hero{min-height:clamp(540px,74vh,720px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hero-contact .company-hero-bg::before{background:url("../images/Global%20Collaboration%20in%20a%20Modern%20Workspace.jpg") center 40%/cover no-repeat,url("../images/sections/solutions-bg.jpg") center 55%/cover no-repeat}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hero-partners .company-hero-bg::before{background:url("../images/Modern%20Cloud%20Technology%20Workspace.jpg") center 40%/cover no-repeat,url("../images/sections/solutions-bg.jpg") center 55%/cover no-repeat}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hero-audit .company-hero-bg::before{background:url("../images/Modern%20Office%20with%20Secure%20Cloud%20Infrastructure.jpg") center 40%/cover no-repeat,url("../images/sections/resources-bg.jpg") center 55%/cover no-repeat}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hero h1{max-width:15ch}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hero .pg-sub{grid-column:1/-1}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vis{position:relative;min-height:430px;isolation:isolate}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-ring{position:absolute;z-index:-1;border-radius:50%;border:1px solid rgba(255,255,255,.18);pointer-events:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-ring-a{right:-6%;top:-4%;width:300px;height:300px;box-shadow:0 0 0 30px rgba(255,255,255,.035),0 0 0 64px rgba(255,255,255,.02)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-ring-b{left:-5%;bottom:-6%;width:180px;height:180px;border-style:dashed}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vis-photo{position:absolute;right:0;top:0;width:76%;height:86%;margin:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vis-photo .co-photo{width:100%;height:100%;border-radius:26px;border:1px solid rgba(255,255,255,.35);box-shadow:0 40px 80px -36px rgba(0,0,0,.7)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vis-photo .co-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,17,46,.05),rgba(3,17,46,.45))}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vis-photo-top{width:72%;height:60%;right:0;top:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-float{position:absolute;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:13px 18px 13px 13px;border-radius:16px;background:#fff;color:var(--color-charcoal);box-shadow:0 26px 50px -22px rgba(0,10,40,.75);animation:co-float 8s ease-in-out infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-float b{font-size:.88rem;line-height:1.25}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-float small{color:#5f6e7d;font-size:.74rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-f-ico{grid-row:span 2;display:grid;width:40px;height:40px;place-items:center;border-radius:12px;background:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-f-ico .nx-ico{width:19px;height:19px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-f1{left:0;top:30%;animation-delay:.2s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-f2{left:12%;bottom:6%;animation-delay:1.1s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-f3{display:flex;align-items:center;gap:8px;right:-1%;top:56%;padding:10px 16px;font-size:.8rem;font-weight:700;animation-delay:.7s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-f-dot{width:9px;height:9px;border-radius:50%;background:#34a779;box-shadow:0 0 0 4px rgba(52,167,121,.22)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub{position:absolute;left:0;bottom:0;width:min(100%,400px);padding:18px;border:1px solid #dce6ee;border-radius:20px;background:#fff;color:var(--color-charcoal);box-shadow:0 30px 60px -24px rgba(2,13,38,.7);animation:co-float 9s ease-in-out .6s infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:14px;border-bottom:1px solid #e8edf1}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-logo-plate{display:block}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-logo-plate img{display:block;height:32px;width:auto}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-tag{padding:5px 10px;border-radius:99px;background:#eef5fb;color:var(--color-deep-blue);font:600 .62rem/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-nodes{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-nodes li{position:relative;display:grid;grid-template-columns:34px 1fr;align-items:center;column-gap:11px;padding:10px 12px;border:1px solid #e5ebf0;border-radius:12px;background:#fbfcfd}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-nodes .nx-ico{width:34px;height:34px;padding:8px;border-radius:10px;background:#e8f2fa;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-nodes b{display:block;font-size:.8rem;line-height:1.3}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-nodes small{color:#6b7886;font-size:.7rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-foot{display:flex;align-items:center;gap:10px;margin-top:12px;padding:11px 12px;border-radius:12px;background:#f2f7fb;color:#34495c;font-size:.76rem;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-hub-foot .nx-ico{width:18px;height:18px;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud{position:absolute;left:0;bottom:0;width:min(100%,410px);border:1px solid #dce6ee;border-radius:20px;background:#fff;color:var(--color-charcoal);overflow:hidden;box-shadow:0 30px 60px -24px rgba(2,13,38,.7);animation:co-float 9s ease-in-out .6s infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-bar{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid #e8edf1;background:#f5f8fb;color:#5c6b7a;font:500 .64rem/1.3 var(--mono)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-bar .dots{display:flex;gap:5px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-bar .dots i{width:8px;height:8px;border-radius:50%;background:#cfd9e2}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-rows{display:grid;gap:8px;margin:0;padding:14px;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-rows li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:10px 12px;border:1px solid #e5ebf0;border-radius:12px;background:#fbfcfd}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-ico{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:#e8f2fa;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-ico .nx-ico{width:17px;height:17px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-rows b{display:block;font-size:.8rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-rows small{color:#6b7886;font-size:.68rem;line-height:1.35}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-rows em{padding:4px 9px;border-radius:99px;background:#eef5fb;color:var(--color-deep-blue);font:600 .62rem/1.2 var(--mono);font-style:normal;text-transform:uppercase;letter-spacing:.05em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-rows em.ok{background:#eaf7f3;color:#267353}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-foot{display:flex;align-items:center;gap:10px;margin:0 14px 14px;padding:11px 12px;border-radius:12px;background:#fff8d6;color:#5a4a00;font-size:.74rem;font-weight:600;line-height:1.4;box-shadow:inset 0 0 0 1px rgba(255,215,0,.5)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aud-foot .nx-ico{width:18px;height:18px;flex:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-routes-sec{position:relative;z-index:3;margin-top:calc(clamp(40px,5vw,64px)*-1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:24px 24px 24px;border:1px solid var(--color-border);border-radius:22px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.05),0 28px 48px -28px rgba(2,13,38,.55);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.16);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route-ico{display:grid;width:52px;height:52px;place-items:center;border-radius:15px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1),background .25s,color .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route-ico .nx-ico{width:24px;height:24px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route-n{position:absolute;right:20px;top:18px;color:#9ab0c4;font:600 .74rem var(--mono);letter-spacing:.1em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route h3{margin:8px 0 0;font:400 1.5rem/1.2 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route p{margin:0 0 10px;color:var(--color-text-muted);font-size:.96rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route .btn{margin-top:auto}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route.is-lift{transform:translateY(-8px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 38px 58px -28px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route.is-lift::after{transform:scaleX(1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-route.is-lift .cp-route-ico{transform:translateY(-2px) rotate(-8deg) scale(1.08);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-contact-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,56px);align-items:start}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-form{position:relative;display:grid;gap:18px;padding:clamp(24px,3.4vw,40px);border:1px solid var(--color-border);border-radius:26px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.05),0 40px 70px -44px rgba(0,66,126,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-form::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;border-radius:26px 26px 0 0;background:linear-gradient(90deg,var(--color-deep-blue),var(--color-cyan) 60%,var(--color-gold))}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-form-head{display:flex;align-items:center;gap:14px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-form-ico{display:grid;width:50px;height:50px;place-items:center;flex:none;border-radius:14px;background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-form-ico .nx-ico{width:23px;height:23px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-form-head h2{margin:0;font:400 clamp(1.6rem,2.6vw,2.1rem)/1.15 var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-form-head p{margin:2px 0 0;color:var(--color-text-muted);font-size:.95rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-types{margin:0;padding:0;border:0;min-width:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-types legend{padding:0;margin-bottom:10px;color:var(--color-charcoal);font-size:.9rem;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row{display:flex;flex-wrap:wrap;gap:8px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row label{position:relative;cursor:pointer}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row span{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 15px;border:1.5px solid var(--color-border);border-radius:99px;background:#f7fafc;color:#34495c;font-size:.9rem;font-weight:600;transition:border-color .2s,background .2s,color .2s,transform .2s,box-shadow .2s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row .nx-ico{width:17px;height:17px;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row label:hover span{border-color:var(--color-cyan);background:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row input:checked+span{border-color:var(--color-deep-blue);background:var(--color-deep-blue);color:#fff;box-shadow:0 10px 20px -12px rgba(0,66,126,.8)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row input:checked+span .nx-ico{color:var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-type-row input:focus-visible+span{outline:3px solid var(--color-gold);outline-offset:2px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field{display:grid;gap:7px;min-width:0}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field label{color:var(--color-charcoal);font-size:.9rem;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field input,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field textarea{width:100%;min-height:48px;padding:12px 14px;border:1.5px solid #cfdbe6;border-radius:12px;background:#fbfdff;color:var(--color-charcoal);font:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s,background .2s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field textarea{min-height:130px;resize:vertical;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field input:hover,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field textarea:hover{border-color:#9db4c8}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field input:focus,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field textarea:focus{outline:0;border-color:var(--color-deep-blue);background:#fff;box-shadow:0 0 0 4px rgba(0,66,126,.14)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-err{display:none;color:#b3261e;font-size:.82rem;font-weight:500}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field.is-invalid input,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field.is-invalid textarea{border-color:#d4574e;background:#fffafa}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-field.is-invalid .cp-err,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-err-consent.is-on{display:block}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-consent{display:flex;align-items:flex-start;gap:12px;color:var(--color-text-muted);font-size:.88rem;line-height:1.55;cursor:pointer}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-consent input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-submit{justify-self:start;min-height:52px;cursor:pointer;background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold),0 16px 30px -16px rgba(0,66,126,.8)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-submit:hover{background:#0a5aa6;transform:translateY(-2px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-submit svg{width:18px;height:18px;transition:transform .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-submit:hover svg{transform:translateX(4px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-form-note{margin:-6px 0 0;color:var(--color-text-muted);font-size:.82rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-done{display:grid;gap:8px;justify-items:start;padding:20px;border:1px solid #bfe3d2;border-radius:18px;background:#f0faf5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-done[hidden]{display:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-done-ico{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:#34a779;color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-done h3{margin:4px 0 0;font:400 1.5rem var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-done p{margin:0;color:#3d5a4d}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-side{display:grid;gap:14px;position:sticky;top:104px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:20px;border:1px solid var(--color-border);border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 22px 40px -32px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info-ico{display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1),background .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info-ico .nx-ico{width:22px;height:22px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info small{display:block;color:var(--color-deep-blue);font:600 .68rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info a,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info strong{display:inline-block;margin-top:3px;color:var(--color-charcoal);font-size:1.05rem;font-weight:600;text-decoration:none;overflow-wrap:anywhere}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info a:hover{color:var(--color-deep-blue);text-decoration:underline}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info p{margin:4px 0 0;color:var(--color-text-muted);font-size:.9rem;line-height:1.5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info.is-lift{transform:translateX(-6px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 28px 44px -28px rgba(0,66,126,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-info.is-lift .cp-info-ico{transform:rotate(-8deg) scale(1.08);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-next{padding:22px;border-radius:20px;background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold),0 26px 46px -30px rgba(0,49,92,.85)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-next-k{margin:0 0 14px;color:#5FD0FF;font:600 .68rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-next ol{display:grid;gap:14px;margin:0;padding:0;list-style:none;position:relative}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-next li{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-next li>span{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);font:600 .8rem var(--mono)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-next b{display:block;font-size:.95rem;line-height:1.35}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-next small{color:rgba(255,255,255,.78);font-size:.82rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,6vw,84px);align-items:start}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-intro-copy .pg-sec-head{margin-bottom:20px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-glance{display:grid;gap:14px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-gl{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:20px 22px;border:1px solid var(--color-border);border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 22px 40px -32px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-gl-ico{display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1),background .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-gl-ico .nx-ico{width:22px;height:22px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-gl small{display:block;color:var(--color-deep-blue);font:600 .68rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-gl b{display:block;margin-top:3px;font:400 1.3rem/1.25 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-gl p{margin:5px 0 0;color:var(--color-text-muted);font-size:.93rem;line-height:1.5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-gl.is-lift{transform:translateX(6px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 28px 44px -28px rgba(0,66,126,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-gl.is-lift .cp-gl-ico{transform:rotate(-8deg) scale(1.08);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(190px,auto);gap:16px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid var(--color-border);border-radius:22px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 24px 44px -34px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.16);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-ico{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1),background .25s,color .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-ico .nx-ico{width:22px;height:22px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn h3{margin:8px 0 0;font:400 1.35rem/1.25 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn p{margin:0;color:var(--color-text-muted);font-size:.95rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn.is-lift{transform:translateY(-6px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 34px 52px -28px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn.is-lift::before{transform:scaleX(1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn.is-lift .cp-bn-ico{transform:translateY(-2px) rotate(-8deg) scale(1.08);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-feat{grid-column:span 2;grid-row:span 2;isolation:isolate;justify-content:flex-end;padding:30px;border-color:transparent;background:var(--co-navy,#04122e);color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-bg{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(3,17,46,.55),rgba(3,17,46,.92) 70%),radial-gradient(ellipse at 80% 10%,rgba(0,168,232,.4),transparent 50%),url("../images/Collaborative%20AI%20Cloud%20Workspace.jpg") center/cover no-repeat,url("../images/sections/solutions-posture.jpg") center/cover no-repeat,#06295a}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-feat .cp-bn-ico{margin-bottom:auto;background:rgba(255,215,0,.16);color:var(--color-gold);box-shadow:inset 0 0 0 1px rgba(255,215,0,.4)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-k{margin:0;color:#5FD0FF;font:600 .7rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-feat h3{margin:0;color:#fff;font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1.15}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-feat p{color:rgba(255,255,255,.85);font-size:1rem;max-width:44ch}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-feat .co-link-go{color:var(--color-gold);margin-top:6px;text-decoration:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-feat .co-link-go svg{width:17px;height:17px;transition:transform .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-feat.is-lift{border-color:rgba(255,215,0,.5)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-bn-feat.is-lift .co-link-go svg{transform:translateX(6px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-ways{display:grid;gap:16px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:stretch;overflow:hidden;border:1px solid var(--color-border);border-radius:24px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 24px 44px -34px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way-side{position:relative;display:grid;place-items:center;align-content:center;gap:10px;padding:22px;background:linear-gradient(150deg,#06295a,#0a63c4);color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way-ico{display:grid;width:58px;height:58px;place-items:center;border-radius:16px;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3),inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way-ico .nx-ico{width:27px;height:27px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way-n{color:rgba(255,255,255,.6);font:600 .76rem var(--mono);letter-spacing:.14em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way-main{display:grid;gap:8px;align-content:center;padding:24px 28px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way h3{margin:0;font:400 1.6rem/1.2 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way p{margin:0;color:var(--color-text-muted);font-size:.98rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way-best b{display:inline-block;margin-right:10px;padding:3px 9px;border-radius:99px;background:#eef5fb;color:var(--color-deep-blue);font:600 .64rem/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way-go{align-self:center;display:inline-flex;align-items:center;gap:8px;margin-right:28px;min-height:44px;color:var(--color-deep-blue);font-weight:600;text-decoration:none;white-space:nowrap}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way-go svg{width:17px;height:17px;transition:transform .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way.is-lift{transform:translateY(-5px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 34px 52px -28px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way.is-lift .cp-way-ico{transform:rotate(-8deg) scale(1.1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-way.is-lift .cp-way-go svg{transform:translateX(6px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-band{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:18px;padding:18px 24px;border:1.5px dashed #9db4c8;border-radius:20px;background:#f2f8fc;color:inherit;text-decoration:none;transition:transform .3s cubic-bezier(.2,.7,.2,1),border-color .25s,background .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-ico{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-ico .nx-ico{width:21px;height:21px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-band>span:nth-child(2){display:grid;gap:2px;flex:1;min-width:200px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-band b{color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-band small{color:var(--color-text-muted);font-size:.9rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-band .co-link-go svg{width:17px;height:17px;transition:transform .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-band.is-lift{transform:translateY(-3px);border-color:var(--color-cyan);background:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-audit-band.is-lift .co-link-go svg{transform:translateX(6px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-how{position:relative;isolation:isolate;overflow:hidden;margin-top:clamp(64px,8vw,108px);padding:clamp(60px,8vw,100px) 0 clamp(68px,9vw,108px);background:var(--co-navy,#04122e);color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-how-bg{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(3,17,46,.9),rgba(3,17,46,.82) 50%,rgba(3,17,46,.94)),radial-gradient(ellipse at 85% 15%,rgba(0,168,232,.3),transparent 45%),url("../images/Warm%20Collaborative%20Tech%20Office%20Banner.jpg") center/cover no-repeat,linear-gradient(135deg,#04122e,#06295a)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-how .company-kicker{color:#5FD0FF}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-how .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-how .pg-sec-head h2{color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-psteps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-psteps::before,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-psteps::after{content:"";position:absolute;left:10%;right:10%;top:47px;height:2px;border-radius:2px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-psteps::before{background:rgba(255,255,255,.18)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-psteps::after{background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(0);transform-origin:left;transition:transform 1.6s cubic-bezier(.2,.7,.2,1) .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-psteps.is-visible::after{transform:scaleX(1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-pstep{position:relative;z-index:1;display:grid;justify-items:center;text-align:center;gap:8px;padding:0 6px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-pstep-ico{display:grid;width:64px;height:64px;place-items:center;border-radius:50%;background:var(--color-deep-blue);color:#fff;box-shadow:0 0 0 8px var(--co-navy,#04122e),0 0 0 9px rgba(255,255,255,.3),inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1),background .3s,color .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-pstep-ico .nx-ico{width:26px;height:26px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-pstep-n{margin-top:10px;color:#5FD0FF;font:600 .72rem var(--mono);letter-spacing:.14em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-pstep h3{margin:0;color:#fff;font:400 1.3rem/1.2 var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-pstep p{margin:0;color:rgba(255,255,255,.8);font-size:.9rem;line-height:1.5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-pstep.is-lift .cp-pstep-ico{transform:scale(1.1) rotate(-6deg);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tabs{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:20px;align-items:stretch}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tablist{display:grid;gap:10px;align-content:start}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tab{display:flex;align-items:center;gap:14px;width:100%;min-height:64px;padding:12px 18px;border:1px solid var(--color-border);border-radius:18px;background:#fff;color:var(--color-charcoal);font:600 1rem/1.3 var(--sans);text-align:left;cursor:pointer;transition:transform .3s cubic-bezier(.2,.7,.2,1),border-color .25s,background .25s,color .25s,box-shadow .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tab-ico{display:grid;width:40px;height:40px;flex:none;place-items:center;border-radius:12px;background:#e8f2fa;color:var(--color-deep-blue);transition:background .25s,color .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tab-ico .nx-ico{width:19px;height:19px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tab.is-lift{border-color:var(--color-cyan);transform:translateX(4px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tab[aria-selected=true]{border-color:var(--color-deep-blue);background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold),0 22px 40px -26px rgba(0,66,126,.8)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tab[aria-selected=true] .cp-tab-ico{background:rgba(255,255,255,.16);color:var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-tab:focus-visible{outline:3px solid var(--color-gold);outline-offset:2px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panels{position:relative;overflow:hidden;border:1px solid var(--color-border);border-radius:24px;background:linear-gradient(160deg,#fff,#eef5fb);box-shadow:0 1px 2px rgba(26,26,26,.04),0 30px 54px -38px rgba(0,66,126,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel{display:grid;align-content:center;gap:12px;height:100%;padding:clamp(24px,3.4vw,40px);animation:co-up .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel[hidden]{display:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel-ico{display:grid;width:58px;height:58px;place-items:center;border-radius:16px;background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel-ico .nx-ico{width:27px;height:27px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel h3{margin:6px 0 0;font:400 clamp(1.6rem,2.6vw,2.15rem)/1.15 var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel>p{margin:0;max-width:52ch;color:var(--color-text-muted);font-size:1.02rem;line-height:1.65}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel ul{display:grid;gap:10px;margin:8px 0 0;padding:16px 0 0;border-top:1px solid #d6e4ef;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel li{display:flex;align-items:center;gap:12px;color:var(--color-charcoal);font-weight:500}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-panel li .nx-ico{width:26px;height:26px;padding:5px;border-radius:50%;background:#e3f4ec;color:#267353;stroke-width:2.4}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-does{margin-top:26px;padding:20px 22px;border:1px solid var(--color-border);border-radius:20px;background:#fff;box-shadow:0 22px 40px -34px rgba(0,66,126,.5)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-does-k,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-who-k{margin:0 0 12px;color:var(--color-deep-blue);font:600 .7rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-does ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-does li{display:flex;align-items:flex-start;gap:12px;line-height:1.5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-does li .nx-ico{margin-top:1px;width:24px;height:24px;padding:4px;border-radius:50%;background:#e3f4ec;color:#267353;stroke-width:2.5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-aside{display:grid;gap:16px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-who-card{display:grid;gap:10px;padding:22px;border-radius:22px;background:linear-gradient(160deg,#eaf1f8,#f7fafc);border:1px solid #d3e2ee}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-who-card .cp-who-k{margin:0 0 2px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-who{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--color-border);border-radius:16px;background:#fff;transition:transform .3s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-who .nx-ico{width:40px;height:40px;padding:9px;border-radius:12px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-who.is-lift{transform:translateX(6px);border-color:var(--color-cyan);box-shadow:0 22px 38px -28px rgba(0,66,126,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-indep{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:22px;border-radius:22px;background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold),0 28px 48px -32px rgba(0,49,92,.9)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-indep-ico{display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:rgba(255,255,255,.14);color:var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-indep-ico .nx-ico{width:23px;height:23px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-indep b{display:block;font:400 1.35rem/1.2 var(--serif)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-indep p{margin:6px 0 0;color:rgba(255,255,255,.85);font-size:.95rem;line-height:1.6}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-caps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap{position:relative;overflow:hidden;display:grid;align-content:start;gap:12px;padding:24px;border:1px solid var(--color-border);border-radius:22px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 24px 44px -34px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform:scaleX(.16);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap-top{display:flex;align-items:center;gap:14px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap-ico{display:grid;width:46px;height:46px;flex:none;place-items:center;border-radius:13px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1),background .25s,color .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap-ico .nx-ico{width:22px;height:22px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap h3{margin:0;font:400 1.45rem/1.2 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap>p{margin:0;color:var(--color-text-muted);font-size:.97rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-mini{display:grid;gap:8px;padding:14px;border:1px solid #dde8f1;border-radius:14px;background:#f5f9fc}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-chip{justify-self:start;display:inline-block;margin-right:6px;padding:5px 12px;border:1px solid #cfe0ee;border-radius:99px;background:#fff;color:#24506f;font-size:.8rem;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-mini:has(.cp-chip:not(.gold)){display:flex;flex-wrap:wrap;gap:8px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-chip.gold{background:#fff8d6;border-color:#ecd45a;color:#5a4a00;font-family:var(--mono)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-mrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border:1px solid #e1eaf2;border-radius:10px;background:#fff;font-size:.84rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-mrow b{font-size:.84rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-mrow span{color:#6b7886;font-size:.76rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-mrow.on{border-color:#9ed1b9;background:#f0faf5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-mrow.on span{color:#267353;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-prog{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-prog i{height:8px;border-radius:99px;background:#d6e4ef}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-prog i.done{background:var(--color-cyan)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-prog i.now{background:linear-gradient(90deg,var(--color-cyan),var(--color-gold))}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-prog-l{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;color:#6b7886;font-size:.7rem;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap.is-lift{transform:translateY(-6px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 34px 52px -28px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap.is-lift::before{transform:scaleX(1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cap.is-lift .cp-cap-ico{transform:rotate(-8deg) scale(1.08);background:var(--color-gold);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-p{position:relative;overflow:hidden;display:grid;align-content:start;gap:14px;padding:clamp(24px,3vw,36px);border:1px solid var(--color-border);border-radius:26px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 28px 50px -36px rgba(0,66,126,.55);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-ico{display:grid;width:54px;height:54px;place-items:center;border-radius:16px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-ico .nx-ico{width:25px;height:25px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-p h3{margin:4px 0 0;font:400 1.7rem/1.2 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-p ul{display:grid;gap:12px;margin:6px 0 0;padding:16px 0 0;border-top:1px solid #dbe6f0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-p li{display:flex;align-items:center;gap:12px;font-weight:500;line-height:1.4}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-p li .nx-ico{width:26px;height:26px;padding:5px;flex:none;border-radius:50%;background:#e3f4ec;color:#267353;stroke-width:2.5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-dark{border-color:transparent;background:linear-gradient(150deg,#06295a,#0a4a8f 70%,#0a7fb0);color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-dark .cp-duo-ico{background:rgba(255,255,255,.14);color:var(--color-gold);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-dark h3{color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-dark ul{border-top-color:rgba(255,255,255,.2)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-dark li .nx-ico{background:rgba(255,215,0,.18);color:var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-duo-p.is-lift{transform:translateY(-6px);box-shadow:0 2px 4px rgba(26,26,26,.05),0 38px 58px -30px rgba(0,66,126,.65)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl{position:relative;display:grid;gap:18px;max-width:880px;margin:0 auto;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl::before{content:"";position:absolute;left:50%;top:10px;bottom:10px;width:2px;transform:translateX(-50%);background:linear-gradient(var(--color-cyan),var(--color-gold))}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl li{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl li>div{padding:20px 24px;border:1px solid var(--color-border);border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 22px 40px -32px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl li:nth-child(odd)>div{grid-column:1;margin-right:44px;text-align:right}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl li:nth-child(even)>div{grid-column:2;margin-left:44px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl-n{position:absolute;left:50%;top:50%;z-index:1;display:grid;width:46px;height:46px;transform:translate(-50%,-50%);place-items:center;border-radius:50%;background:var(--color-deep-blue);color:#fff;font:400 1.3rem var(--serif);box-shadow:0 0 0 7px var(--color-off-white,#F5F7FA),inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl h3{margin:0 0 4px;font:400 1.4rem/1.2 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl p{margin:0;color:var(--color-text-muted);font-size:.96rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl li.is-lift>div{transform:translateY(-4px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 30px 48px -28px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-vtl li.is-lift .cp-vtl-n{transform:translate(-50%,-50%) scale(1.14)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-relay{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:12px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn{display:grid;align-content:start;gap:8px;padding:24px;border:1px solid var(--color-border);border-radius:22px;background:#fff;box-shadow:0 1px 2px rgba(26,26,26,.04),0 24px 44px -34px rgba(0,66,126,.5);transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .35s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn-ico{display:grid;width:50px;height:50px;place-items:center;border-radius:14px;background:#e8f2fa;color:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold);transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn-ico .nx-ico{width:24px;height:24px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn h3{margin:6px 0 0;font:400 1.4rem/1.2 var(--serif);color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn p{margin:0;color:var(--color-text-muted);font-size:.94rem;line-height:1.55}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn-mid{border-color:transparent;background:var(--color-deep-blue);box-shadow:inset 0 -3px 0 var(--color-gold),0 28px 48px -30px rgba(0,49,92,.9)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn-mid h3{color:#fff}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn-mid p{color:rgba(255,255,255,.85)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn-mid .cp-rn-ico{background:rgba(255,255,255,.14);color:var(--color-gold);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rarrow{align-self:center;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e8f2fa;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rarrow svg{width:18px;height:18px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn.is-lift{transform:translateY(-6px);border-color:var(--color-cyan);box-shadow:0 2px 4px rgba(26,26,26,.05),0 34px 52px -28px rgba(0,66,126,.6)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-rn.is-lift .cp-rn-ico{transform:rotate(-8deg) scale(1.08)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-fine{margin:18px 0 0;color:var(--color-text-muted);font-size:.9rem}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-cta-btns{display:flex;flex-wrap:wrap;gap:12px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta .btn-quiet{background:rgba(255,255,255,.06);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .company-cta .pg-cta .btn-quiet:hover{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1.5px var(--color-gold)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-sec{scroll-margin-top:96px;padding-top:clamp(64px,8vw,108px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(24px,5vw,64px);padding:clamp(30px,5vw,64px);border:1px solid rgba(0,168,232,.3);border-radius:30px;color:#fff;box-shadow:0 40px 70px -40px rgba(0,49,92,.8);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 90% 10%,rgba(10,102,194,.55),transparent 50%),linear-gradient(105deg,rgba(3,17,46,.96) 0%,rgba(3,17,46,.86) 55%,rgba(3,17,46,.7) 100%),url("../images/Collaborative%20Cloud%20Tech%20Office.jpg") center/cover no-repeat,linear-gradient(115deg,#06295a,#00427e)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-card::after{content:"";position:absolute;z-index:-1;left:-90px;bottom:-110px;width:300px;height:300px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.03),0 0 0 58px rgba(255,255,255,.02)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-copy .company-kicker{color:#5FD0FF}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-copy .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-copy h2{margin:0;max-width:16ch;color:#fff;font-size:clamp(2.1rem,4.4vw,3.4rem);line-height:1.05;letter-spacing:-.02em}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-lede{max-width:40ch;margin:16px 0 0;color:rgba(255,255,255,.88);font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.5}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-tags li{padding:6px 13px;border:1px solid rgba(255,255,255,.28);border-radius:99px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.92);font-size:.82rem;font-weight:600}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn{display:inline-flex;align-items:center;gap:12px;min-height:54px;margin-top:28px;padding:14px 26px;border-radius:99px;background:#fff;color:#0a4a8f;font-size:1.02rem;font-weight:700;text-decoration:none;box-shadow:0 18px 34px -16px rgba(0,0,0,.65),inset 0 -3px 0 var(--color-gold);transition:transform .25s,box-shadow .25s,background .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn .cp-li{width:24px;height:24px;color:#0A66C2}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn .cp-li-ext{width:18px;height:18px;transition:transform .25s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn:hover,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn:focus-visible{background:var(--color-gold);color:var(--color-charcoal);transform:translateY(-3px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn:hover .cp-li,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn:focus-visible .cp-li{color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn:hover .cp-li-ext,:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn:focus-visible .cp-li-ext{transform:translate(3px,-3px)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-vis{position:relative;display:grid;place-items:center;min-height:260px}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-tile{position:relative;z-index:2;display:grid;width:clamp(120px,15vw,160px);aspect-ratio:1;place-items:center;border-radius:32px;background:#0A66C2;color:#fff;box-shadow:0 30px 60px -20px rgba(0,0,0,.65),inset 0 -5px 0 rgba(255,255,255,.14);animation:co-float 7s ease-in-out infinite;transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-tile .cp-li{width:58%;height:58%}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-pulse{position:absolute;width:clamp(120px,15vw,160px);aspect-ratio:1;border-radius:32px;border:2px solid rgba(255,255,255,.4);animation:cp-pulse 3.4s ease-out infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-pulse-b{animation-delay:1.7s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-chip{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:14px;background:#fff;color:var(--color-charcoal);font-size:.8rem;font-weight:700;box-shadow:0 20px 36px -18px rgba(0,10,40,.75);animation:co-float 8s ease-in-out infinite}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-chip .nx-ico{width:17px;height:17px;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-chip.c1{left:0;top:12%;animation-delay:.3s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-chip.c2{right:0;top:44%;animation-delay:1.2s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-chip.c3{left:8%;bottom:6%;animation-delay:.8s}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-card.is-lift{transform:translateY(-6px);box-shadow:0 50px 80px -40px rgba(0,49,92,.9)}
:where(#page:has([data-co-tpl="contact"]),#page:has([data-co-tpl="partners"]),#page:has([data-co-tpl="audit-partners"])) .cp-li-card.is-lift .cp-li-tile{transform:rotate(-6deg) scale(1.06)}







/* 4. LinkedIn section (NexenMinds), rendered at the end of About us */
:where(#page:has([data-co-tpl="about"])) .cp-sec{padding-top:clamp(64px,8vw,108px)}
:where(#page:has([data-co-tpl="about"])) .cp-sec .pg-sec-head{margin-bottom:34px}
:where(#page:has([data-co-tpl="about"])) .cp-sec .pg-sec-head h2{max-width:20ch;font-size:clamp(2rem,4vw,3.05rem);line-height:1.08}
:where(#page:has([data-co-tpl="about"])) .cp-sec:last-of-type{padding-bottom:0}
:where(#page:has([data-co-tpl="about"])) .cp-li-sec{scroll-margin-top:96px;padding-top:clamp(64px,8vw,108px)}
:where(#page:has([data-co-tpl="about"])) .cp-li-card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(24px,5vw,64px);padding:clamp(30px,5vw,64px);border:1px solid rgba(0,168,232,.3);border-radius:30px;color:#fff;box-shadow:0 40px 70px -40px rgba(0,49,92,.8);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
:where(#page:has([data-co-tpl="about"])) .cp-li-bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 90% 10%,rgba(10,102,194,.55),transparent 50%),linear-gradient(105deg,rgba(3,17,46,.96) 0%,rgba(3,17,46,.86) 55%,rgba(3,17,46,.7) 100%),url("../images/Collaborative%20Cloud%20Tech%20Office.jpg") center/cover no-repeat,linear-gradient(115deg,#06295a,#00427e)}
:where(#page:has([data-co-tpl="about"])) .cp-li-card::after{content:"";position:absolute;z-index:-1;left:-90px;bottom:-110px;width:300px;height:300px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.03),0 0 0 58px rgba(255,255,255,.02)}
:where(#page:has([data-co-tpl="about"])) .cp-li-copy .company-kicker{color:#5FD0FF}
:where(#page:has([data-co-tpl="about"])) .cp-li-copy .company-kicker>span{background:var(--color-gold);box-shadow:0 0 0 5px rgba(255,215,0,.18)}
:where(#page:has([data-co-tpl="about"])) .cp-li-copy h2{margin:0;max-width:16ch;color:#fff;font-size:clamp(2.1rem,4.4vw,3.4rem);line-height:1.05;letter-spacing:-.02em}
:where(#page:has([data-co-tpl="about"])) .cp-li-lede{max-width:40ch;margin:16px 0 0;color:rgba(255,255,255,.88);font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.5}
:where(#page:has([data-co-tpl="about"])) .cp-li-tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none}
:where(#page:has([data-co-tpl="about"])) .cp-li-tags li{padding:6px 13px;border:1px solid rgba(255,255,255,.28);border-radius:99px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.92);font-size:.82rem;font-weight:600}
:where(#page:has([data-co-tpl="about"])) .cp-li-btn{display:inline-flex;align-items:center;gap:12px;min-height:54px;margin-top:28px;padding:14px 26px;border-radius:99px;background:#fff;color:#0a4a8f;font-size:1.02rem;font-weight:700;text-decoration:none;box-shadow:0 18px 34px -16px rgba(0,0,0,.65),inset 0 -3px 0 var(--color-gold);transition:transform .25s,box-shadow .25s,background .25s}
:where(#page:has([data-co-tpl="about"])) .cp-li-btn .cp-li{width:24px;height:24px;color:#0A66C2}
:where(#page:has([data-co-tpl="about"])) .cp-li-btn .cp-li-ext{width:18px;height:18px;transition:transform .25s}
:where(#page:has([data-co-tpl="about"])) .cp-li-btn:hover,:where(#page:has([data-co-tpl="about"])) .cp-li-btn:focus-visible{background:var(--color-gold);color:var(--color-charcoal);transform:translateY(-3px)}
:where(#page:has([data-co-tpl="about"])) .cp-li-btn:hover .cp-li,:where(#page:has([data-co-tpl="about"])) .cp-li-btn:focus-visible .cp-li{color:var(--color-charcoal)}
:where(#page:has([data-co-tpl="about"])) .cp-li-btn:hover .cp-li-ext,:where(#page:has([data-co-tpl="about"])) .cp-li-btn:focus-visible .cp-li-ext{transform:translate(3px,-3px)}
:where(#page:has([data-co-tpl="about"])) .cp-li-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}
:where(#page:has([data-co-tpl="about"])) .cp-li-vis{position:relative;display:grid;place-items:center;min-height:260px}
:where(#page:has([data-co-tpl="about"])) .cp-li-tile{position:relative;z-index:2;display:grid;width:clamp(120px,15vw,160px);aspect-ratio:1;place-items:center;border-radius:32px;background:#0A66C2;color:#fff;box-shadow:0 30px 60px -20px rgba(0,0,0,.65),inset 0 -5px 0 rgba(255,255,255,.14);animation:co-float 7s ease-in-out infinite;transition:transform .4s cubic-bezier(.3,1.4,.5,1)}
:where(#page:has([data-co-tpl="about"])) .cp-li-tile .cp-li{width:58%;height:58%}
:where(#page:has([data-co-tpl="about"])) .cp-li-pulse{position:absolute;width:clamp(120px,15vw,160px);aspect-ratio:1;border-radius:32px;border:2px solid rgba(255,255,255,.4);animation:cp-pulse 3.4s ease-out infinite}
:where(#page:has([data-co-tpl="about"])) .cp-li-pulse-b{animation-delay:1.7s}
:where(#page:has([data-co-tpl="about"])) .cp-li-chip{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:14px;background:#fff;color:var(--color-charcoal);font-size:.8rem;font-weight:700;box-shadow:0 20px 36px -18px rgba(0,10,40,.75);animation:co-float 8s ease-in-out infinite}
:where(#page:has([data-co-tpl="about"])) .cp-li-chip .nx-ico{width:17px;height:17px;color:var(--color-deep-blue)}
:where(#page:has([data-co-tpl="about"])) .cp-li-chip.c1{left:0;top:12%;animation-delay:.3s}
:where(#page:has([data-co-tpl="about"])) .cp-li-chip.c2{right:0;top:44%;animation-delay:1.2s}
:where(#page:has([data-co-tpl="about"])) .cp-li-chip.c3{left:8%;bottom:6%;animation-delay:.8s}
:where(#page:has([data-co-tpl="about"])) .cp-li-card.is-lift{transform:translateY(-6px);box-shadow:0 50px 80px -40px rgba(0,49,92,.9)}
:where(#page:has([data-co-tpl="about"])) .cp-li-card.is-lift .cp-li-tile{transform:rotate(-6deg) scale(1.06)}






/* ==========================================================
   Merged page styles: legal.css
========================================================== */

/* Legal pages: privacy.php, terms.php, cookies.php */
.ph{display:inline-block;border:1.5px dashed var(--ink-faint);border-radius:8px;padding:6px 12px;font-size:.88rem;color:var(--ink-faint);background:var(--card)}
.ph-i{padding:1px 8px;font-size:.84rem;border-radius:6px;vertical-align:baseline}
/* ---------- legal pages ---------- */
.lg-meta{margin-top:16px;font-size:.88rem;color:var(--ink-faint);display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.lg-draft{background:var(--decide-wash);color:#7A5410;border-radius:999px;padding:3px 10px;font-weight:600;font-size:.78rem}
.lg{display:grid;grid-template-columns:240px 1fr;gap:clamp(28px,5vw,64px);align-items:start}
.lg-toc{position:sticky;top:96px;font-size:.88rem}
.lg-toc p{font-weight:600;color:var(--ink-faint);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.lg-toc ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--rule)}
.lg-toc a{display:block;padding:5px 0 5px 12px;margin-left:-2px;border-left:2px solid transparent;color:var(--ink-soft);text-decoration:none}
.lg-toc a:hover{color:var(--blue);border-left-color:var(--blue)}
.lg-body{max-width:74ch;min-width:0}
.lg-sec{padding:0 0 28px;margin-bottom:28px;border-bottom:1px solid var(--rule);scroll-margin-top:100px}
.lg-sec:last-child{border-bottom:0}
.lg-sec h2{font-size:clamp(1.4rem,2.2vw,1.75rem);max-width:none;margin-bottom:12px}
.lg-sec h3{font-family:var(--sans);font-weight:600;font-size:1rem;margin-bottom:6px}
.lg-sec p,.lg-sec li{color:var(--ink-soft)}
.lg-sec p + p{margin-top:10px}
.lg-sec ul{margin:10px 0 0;padding-left:20px;display:grid;gap:6px}
.lg-roles{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.lg-roles p,.lg-roles li{font-size:.94rem}
.lg-roles > div{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:16px 18px}
.lg-t{width:100%;border-collapse:collapse;font-size:.92rem;margin-top:6px}
.lg-t th{text-align:left;font-weight:600;border-bottom:1.5px solid var(--ink);padding:8px 10px 8px 0}
.lg-t td{border-bottom:1px solid var(--rule);padding:10px 10px 10px 0;vertical-align:top;color:var(--ink-soft)}
.lg-note{margin-top:12px;font-size:.88rem;background:var(--blue-wash);border-radius:10px;padding:10px 12px;color:var(--ink-soft)}
.lg-dl{display:grid;grid-template-columns:180px 1fr;gap:8px 16px;margin:10px 0}
.lg-dl dt{font-weight:600}.lg-dl dd{margin:0;color:var(--ink-soft)}
.ck{border:1px solid var(--rule);border-radius:14px;background:var(--card);margin:12px 0;overflow:hidden}
.ck-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border-bottom:1px solid var(--rule)}
.ck-row b{display:block;font-weight:600}.ck-row span{font-size:.86rem;color:var(--ink-faint)}
.ck-on{font-weight:600;color:var(--blue-deep)!important}
.ck-sw{position:relative;display:inline-block;width:46px;height:26px;flex:none;cursor:pointer}
.ck-sw input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.ck-sw span[aria-hidden]{position:absolute;inset:0;background:var(--rule);border-radius:999px;transition:background .2s}
.ck-sw span[aria-hidden]::after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.ck-sw input:checked + span{background:var(--blue)}
.ck-sw input:checked + span::after{transform:translateX(20px)}
.ck-sw input:focus-visible + span{outline:2px solid var(--blue);outline-offset:2px}
.ck-act{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 16px}
.ck-done{font-size:.88rem;color:var(--blue-deep)}




.drawer a.btn{text-align:center;justify-content:center}


/* ==========================================================
   Merged page styles: resources.css
========================================================== */

/* ==========================================================
   NEXEN ONE — resources.css
   Resources pages (resources.php): blog, guides and white papers, checklists, glossary, newsletter.
   Loaded after main.css. Only selectors that belong to these pages live here;
   shared page styles (.pg-*) stay in main.css.
========================================================== */

.chips-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 32px;border-top:1.5px solid var(--ink);padding-top:24px}
.post{display:flex;flex-direction:column;gap:8px;text-decoration:none;padding-bottom:22px;border-bottom:1px solid var(--rule)}
.post[hidden]{display:none}
.post.lead{grid-column:span 2;background:var(--card);border:1px solid var(--rule);border-radius:16px;padding:28px}
.post.lead h3{font-size:clamp(1.6rem,2.6vw,2.2rem)}
.post-type{font-size:.82rem;font-weight:600;color:var(--blue)}
.post h3{font-size:1.3rem;line-height:1.2}
.post:hover h3{color:var(--blue)}
.post p{color:var(--ink-soft);font-size:.96rem}
.post-meta{margin-top:auto;font-size:.84rem;color:var(--ink-faint)}
.posts-empty{color:var(--ink-soft);padding:12px 0}
.news{display:grid;grid-template-columns:1fr 1.1fr;gap:24px 40px;align-items:start;background:var(--paper-deep);border-radius:22px;padding:clamp(24px,4vw,40px)}
.news p{color:var(--ink-soft);margin-top:6px}
.news-f{display:grid;grid-template-columns:1fr auto;gap:10px}
.news-f input[type=email]{font:inherit;padding:12px 16px;border-radius:999px;border:1.5px solid var(--rule);background:#fff;min-width:0}
.news-f input[type=email]:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash)}
.news-c{grid-column:1/-1}
.news-msg{grid-column:1/-1;font-size:.9rem;min-height:1.2em;margin:0}
.news-msg.err{color:#A33A2B}
.news-msg.ok{color:var(--blue-deep);font-weight:600}
.guide.lead .post-type{color:#9DB3F5}
.tpl-on{font-size:.84rem!important;color:var(--ink-soft);background:var(--blue-wash);border-radius:8px;padding:7px 10px;margin-top:4px}
.tpl-on b{color:var(--blue-deep);font-weight:600}
.tpls{display:grid;grid-template-columns:repeat(3,1fr);border-top:1.5px solid var(--ink)}
.tpl-note{margin-top:22px}
.gl-search{display:flex;gap:14px;align-items:center;margin-bottom:24px}
.gl-search input{font:inherit;flex:1;max-width:420px;padding:12px 16px;border-radius:999px;border:1.5px solid var(--rule);background:#fff}
.gl-search input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash)}
.gl-count{font-size:.88rem;color:var(--ink-faint)}
.gl{margin:0;max-width:820px}
.gl-letter{font-size:1.6rem;color:var(--blue);padding:18px 0 4px;border-bottom:1.5px solid var(--ink)}
.gl-letter[hidden],
.gl-item[hidden]{display:none}
.gl-item{display:grid;grid-template-columns:220px 1fr;gap:6px 24px;padding:14px 0;border-bottom:1px solid var(--rule)}
.gl-item dt{font-weight:600}
.gl-item dd{margin:0;color:var(--ink-soft)}


.posts,
.tpls{border-top:0;padding-top:0;gap:18px}
.post:not(.lead){
  padding:24px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface);
  box-shadow:0 1px 2px rgba(26,26,26,.04),0 20px 32px -28px rgba(0,66,126,.4)}
.post:not(.lead){transition:border-color .2s,transform .2s}
.post:not(.lead):hover{border-color:var(--color-cyan);transform:translateY(-2px)}



/* ==========================================================
   CARD ANIMATIONS (resources pages)
   1. entrance: cards fade + rise in a staggered cascade as they scroll into view (.rc → .rc-in, tagged by resources.js)
   2. hover: lift, deeper shadow, accent bar sweeps across the top, cursor spotlight, arrow slides in
   3. filter: visible cards replay the entrance when a topic chip is chosen
   Reduced motion: no tagging, no movement.
========================================================== */
@keyframes rc-rise{
  from{opacity:0;transform:translateY(28px) scale(.97)}
  to{opacity:1;transform:none}
}

.rc-in{animation:rc-rise .65s cubic-bezier(.2,.7,.2,1) backwards}

.post,.post:not(.lead),.guide{position:relative;overflow:hidden;isolation:isolate;
  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .25s ease}
/* accent bar that sweeps in along the top edge */
.post::before,.guide::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;z-index:2;
  background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));
  transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
/* soft spotlight that follows the cursor */
.post::after,.guide::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;
  background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(0,168,232,.12),transparent 70%);
  transition:opacity .3s ease}
.guide.lead::after{background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.10),transparent 70%)}

.post:hover,.post:not(.lead):hover,.guide:hover,.post:focus-visible{transform:translateY(-6px);
  box-shadow:0 1px 2px rgba(26,26,26,.05),0 28px 44px -26px rgba(0,66,126,.55);border-color:var(--color-cyan)}
.post.lead:hover{transform:translateY(-4px)}
.post:hover::before,.guide:hover::before,.post:focus-visible::before{transform:scaleX(1)}
.post:hover::after,.guide:hover::after{opacity:1}

/* the post-type label and the read-more arrow */
.post-type{display:inline-block;transition:transform .3s ease,letter-spacing .3s ease}
.post:hover .post-type,.guide:hover .post-type{transform:translateX(4px)}
.post-meta::after{content:"Read more \2192";display:inline-block;margin-left:12px;padding-left:12px;border-left:1px solid var(--rule);color:var(--blue);font-weight:600;
  opacity:1;transform:none;transition:transform .3s ease}
.post:hover .post-meta::after,.post:focus-visible .post-meta::after{transform:translateX(4px)}
.guide .btn{transition:transform .25s ease,box-shadow .25s ease,background-color .2s,color .2s}
.guide:hover .btn{transform:translateX(4px)}

/* checklists: not boxed, so a soft panel fades in behind them and an underline draws across */
.tpl{position:relative;isolation:isolate}
.tpl::before{content:"";position:absolute;inset:0 -8px;z-index:-1;border-radius:12px;pointer-events:none;
  background:linear-gradient(180deg,var(--color-cyan-50),transparent);opacity:0;transition:opacity .3s ease}
.tpl::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;
  background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));
  transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.tpl:hover::before{opacity:1}
.tpl:hover::after{transform:scaleX(1)}
.tpl h3{transition:color .2s ease}
.tpl:hover h3{color:var(--blue)}
.tpl .post-type{transition:transform .3s ease}
.tpl:hover .post-type{transform:translateX(4px)}
.tpl .linkbtn{transition:transform .25s ease}
.tpl:hover .linkbtn{transform:translateX(4px)}

/* topic chips: small press / pop feedback */
.chip{transition:transform .2s ease,background-color .2s,border-color .2s,color .2s}
.chip:hover{transform:translateY(-2px)}
.chip:active{transform:scale(.95)}
.chip[aria-pressed=true]{animation:chip-pop .35s cubic-bezier(.3,1.6,.5,1)}
@keyframes chip-pop{0%{transform:scale(.92)}100%{transform:scale(1)}}




/* ==========================================================
   RESOURCES HERO — compliance illustration behind the page heading
   (assets/images/sections/resources-hero.svg). Text stays on the left; the art fades in from the right.
========================================================== */
.res-hero{position:relative;overflow:hidden;overflow:clip;isolation:isolate;
  background:linear-gradient(180deg,var(--color-off-white) 0%,#EAF4FB 100%)}
.res-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:url("../images/sections/resources-hero.svg") right 14px center/auto 112% no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,transparent 30%,#000 62%);
  mask-image:linear-gradient(90deg,transparent 0,transparent 30%,#000 62%);
  animation:res-hero-in 1s cubic-bezier(.2,.7,.2,1) .1s backwards}
@keyframes res-hero-in{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:none}}
.res-hero .lede{max-width:46ch}
/* animated aurora glow behind the art (soft blue / cyan / yellow blobs that slowly drift) */
.res-hero::after{content:"";position:absolute;inset:-25%;z-index:-2;pointer-events:none;
  background:
    radial-gradient(42% 50% at 80% 45%,rgba(0,168,232,.30),transparent 70%),
    radial-gradient(30% 36% at 92% 80%,rgba(255,215,0,.20),transparent 70%),
    radial-gradient(34% 40% at 58% 14%,rgba(0,66,126,.14),transparent 70%),
    radial-gradient(26% 32% at 10% 90%,rgba(0,168,232,.12),transparent 70%),
    radial-gradient(circle,rgba(0,66,126,.16) 1.3px,transparent 1.6px) 0 0/22px 22px;
  animation:res-aurora 16s ease-in-out infinite alternate}
@keyframes res-aurora{
  0%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(-3%,2%,0) scale(1.08) rotate(2deg)}
  100%{transform:translate3d(3%,-2%,0) scale(1.04) rotate(-2deg)}}
/* heading block rises in, one piece after another */
.res-hero .wrap>*{animation:res-rise .8s cubic-bezier(.2,.7,.2,1) backwards}
.res-hero .wrap>:nth-child(2){animation-delay:.12s}
.res-hero .wrap>:nth-child(3){animation-delay:.24s}
@keyframes res-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}




/* ==========================================================
   COMPLIANCE GLOSSARY ANIMATIONS
   - A–Z jump bar (sticky) with scroll-spy
   - letter headings pop in, underline draws across
   - terms slide in one by one, hover slides a wash + dot in
   - search: magnifier field, matches highlighted, results re-cascade, count bumps
========================================================== */
@keyframes gx-slide{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
@keyframes gx-letter{0%{opacity:0;transform:translateY(14px) scale(.5);}60%{transform:translateY(0) scale(1.18)}100%{opacity:1;transform:none}}
@keyframes gx-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes gx-soft{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes gx-bump{0%{transform:scale(1)}40%{transform:scale(1.25)}100%{transform:scale(1)}}
@keyframes gx-pulse{0%{background-color:rgba(255,215,0,.55)}100%{background-color:rgba(255,215,0,0)}}
@keyframes gx-in-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* search field */
.gl-search{animation:gx-in-up .6s cubic-bezier(.2,.7,.2,1) backwards}
.gl-search input{padding-left:44px;transition:max-width .35s cubic-bezier(.2,.7,.2,1),border-color .2s,box-shadow .2s;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300427E' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") 16px center/18px no-repeat}
.gl-search input:focus{max-width:560px}
.gl-count{display:inline-block;font-weight:600;color:var(--blue-deep,var(--color-deep-blue))}
.gl-count.bump{animation:gx-bump .35s ease}

/* A–Z jump bar */
.gl-az{position:sticky;top:76px;z-index:6;display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;
  margin:0 0 18px;padding:10px 12px;border:1px solid var(--color-border);border-radius:999px;max-width:820px;
  background:rgba(255,255,255,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  box-shadow:0 14px 28px -22px rgba(0,66,126,.5);animation:gx-in-up .6s cubic-bezier(.2,.7,.2,1) .1s backwards}
.gl-az::-webkit-scrollbar{display:none}
.gl-az button{flex:0 0 auto;width:34px;height:34px;border-radius:50%;border:0;background:transparent;font:inherit;font-weight:600;
  color:var(--color-text-muted);cursor:pointer;transition:transform .25s cubic-bezier(.3,1.6,.5,1),background-color .2s,color .2s,box-shadow .2s}
.gl-az button:hover:not(:disabled){transform:translateY(-3px) scale(1.12);background:var(--color-cyan-50);color:var(--color-deep-blue)}
.gl-az button.on{background:var(--color-deep-blue);color:#fff;box-shadow:inset 0 -3px 0 var(--color-gold)}
.gl-az button:disabled{opacity:.28;cursor:default}
.gl-az button:focus-visible{outline:2px solid var(--color-cyan);outline-offset:2px}

/* letter headings */
.gl-letter{position:relative;scroll-margin-top:150px;transform-origin:left bottom;border-bottom-color:var(--color-border)}
.gl-letter::after{content:"";position:absolute;left:0;right:0;bottom:-1.5px;height:2px;
  background:linear-gradient(90deg,var(--color-cyan),var(--color-gold));transform-origin:left;transform:scaleX(0)}
.gl-letter.gx-in{animation:gx-letter .6s cubic-bezier(.2,.7,.2,1) backwards}
.gl-letter.gx-in::after{transform:scaleX(1);animation:gx-draw .9s cubic-bezier(.2,.7,.2,1) .15s backwards}
.gl-letter.flash{animation:gx-pulse 1.1s ease-out}

/* term rows */

.gl-item.gx-in{animation:gx-slide .55s cubic-bezier(.2,.7,.2,1) backwards}
.gl-item.gx-re{animation:gx-soft .4s ease backwards}
.gl-item{position:relative;isolation:isolate}
.gl-item::before{content:"";position:absolute;inset:0 -16px;z-index:-1;border-radius:12px;pointer-events:none;
  background:linear-gradient(90deg,var(--color-cyan-50),rgba(225,244,252,0));
  transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.gl-item:hover::before{transform:scaleX(1)}
.gl-item dt{position:relative;transition:transform .3s cubic-bezier(.2,.7,.2,1),color .2s}
.gl-item dt::before{content:"";position:absolute;left:-14px;top:.55em;width:7px;height:7px;border-radius:50%;
  background:var(--color-cyan);transform:scale(0);transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.gl-item:hover dt{transform:translateX(14px);color:var(--color-deep-blue)}
.gl-item:hover dt::before{transform:scale(1)}
.gl-item dd{transition:color .25s}
.gl-item:hover dd{color:var(--color-charcoal)}

/* search highlight */
.gl mark{background:linear-gradient(transparent 55%,var(--color-gold) 55%);color:inherit;padding:0 1px;border-radius:2px;
  animation:gx-draw .35s ease backwards;transform-origin:left}
.gl-empty:not([hidden]){animation:gx-in-up .4s ease}




/* ==========================================================
   RESOURCES SUB-NAV — plain text tabs (no pill boxes)
========================================================== */
/* no pill boxes: plain text tabs, current page = bold deep-blue with an underline (same on the Solutions page) */
.res-hero .pg-sub{gap:28px;padding:0;border-bottom:1px solid var(--color-border);width:fit-content;max-width:100%}
.res-hero .pg-sub a{padding:10px 2px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;
  font-size:1rem;color:var(--color-text-muted,var(--ink-soft));white-space:nowrap;transition:color .2s ease,border-color .2s ease}
.res-hero .pg-sub a:hover{color:var(--color-deep-blue);border-color:var(--color-border);background:none}
.res-hero .pg-sub a[aria-current=page]{color:var(--color-deep-blue);font-weight:600;border-color:var(--color-deep-blue);background:none}
.res-hero .pg-sub a:focus-visible{outline:2px solid var(--color-cyan);outline-offset:2px;border-radius:4px}


/* ==========================================================
   NEWSLETTER BLOCK — Deep Blue (#00427E) panel
========================================================== */
.news{position:relative;overflow:hidden;isolation:isolate;align-items:center;
  background:var(--color-deep-blue);color:#fff;border-radius:22px;
  box-shadow:0 30px 50px -34px rgba(0,66,126,.75)}
.news::before{content:"";position:absolute;z-index:-1;right:-120px;top:-140px;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(0,168,232,.35),transparent 68%);pointer-events:none}
.news::after{content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,var(--color-gold),var(--color-cyan));pointer-events:none}
.news h2{color:#fff}
.news p{color:rgba(255,255,255,.82)}
.news-f input[type=email]{border-color:transparent;color:var(--color-charcoal)}
.news-f input[type=email]:focus{border-color:var(--color-cyan);box-shadow:0 0 0 3px rgba(0,168,232,.45)}
.news .btn-primary{background:var(--color-gold);color:var(--color-charcoal);box-shadow:none;transition:background-color .2s,transform .2s}
.news .btn-primary:hover{background:var(--color-gold-600);transform:translateY(-2px)}
.news .consent,.news .consent span{color:rgba(255,255,255,.88)}
.news .consent a{color:#fff;text-decoration:underline}
.news .consent input{accent-color:var(--color-gold)}
.news-msg.err{color:#FFC2B5}
.news-msg.ok{color:var(--color-gold)}

/* ==========================================================
   RESOURCES HERO — cloud / data background image (assets/images/sections/resources-bg.jpg).
   A navy overlay on the left keeps the heading readable; the cloud stays vivid on the right.
========================================================== */
.res-hero{background:#06255f;border-bottom:0}
.res-hero::before{z-index:-3;
  background:url("../images/sections/resources-bg.jpg") center 42%/cover no-repeat;
  -webkit-mask-image:none;mask-image:none;opacity:1;
  animation:res-bgdrift 26s ease-in-out infinite alternate}
@keyframes res-bgdrift{0%{transform:scale(1)}100%{transform:scale(1.07) translate3d(-1.2%,0,0)}}
.res-hero::after{inset:0;z-index:-2;animation:none;
  background:
    linear-gradient(90deg,rgba(3,20,60,.90) 0%,rgba(3,20,60,.66) 40%,rgba(3,20,60,.08) 78%),
    linear-gradient(180deg,rgba(3,20,60,.30) 0%,transparent 30%,rgba(3,20,60,.38) 100%)}
.res-hero h1{color:#fff}
.res-hero .lede{color:rgba(255,255,255,.86)}
.res-hero .pg-sub{border-bottom-color:rgba(255,255,255,.26)}
.res-hero .pg-sub a{color:rgba(255,255,255,.76)}
.res-hero .pg-sub a:hover{color:#fff;border-color:rgba(255,255,255,.5)}
.res-hero .pg-sub a[aria-current=page]{color:#fff;border-color:var(--color-gold,#FFD700)}
.res-hero .pg-sub a:focus-visible{outline-color:#5FD0FF}


/* tabs never get cut off on small screens: they wrap onto a second line instead of scrolling sideways */



/* ==========================================================
   Merged page styles: signin.css
========================================================== */

:root{
  color-scheme:light;
  --navy:#00427e;
  --navy-dark:#00315c;
  --cyan:#00a8e8;
  --gold:#ffd700;
  --ink:#1a1a1a;
  --muted:#596575;
  --paper:#f5f7fa;
  --white:#fff;
  --line:#dce2ea;
  --sans:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:"DM Serif Display",Georgia,serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
  --max:1200px;
}
*{box-sizing:border-box}
html{min-height:100%;scroll-behavior:smooth}
body{min-height:100vh;margin:0;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font:15px/1.6 var(--sans);overflow-x:clip}
a{color:inherit}
button,input{font:inherit}
.shell{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.skip-link{position:absolute;top:8px;left:-9999px;z-index:99;padding:10px 16px;border-radius:8px;background:#fff}
.skip-link:focus{left:12px}

/* ==========================================================
   NexenOne sign-in: split screen. Left = form, right = animated workspace visual.
   Header / drawer / bottom nav come from main.css so navigation matches every other page.
========================================================== */
.signin-main{flex:1;display:block;background:#fff}
.signin-shell{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;
  width:100%;min-height:clamp(600px,calc(100svh - 132px),860px);margin:0;
}
.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 20px;color:var(--navy);font:500 .68rem/1.5 var(--mono);letter-spacing:.11em}
.eyebrow-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px #00a8e81b}

/* ---------- left column ---------- */
.login-column{align-self:center;justify-self:stretch;width:100%;max-width:660px;margin-inline:auto;padding:22px clamp(28px,6vw,104px)}
.auth-product{display:flex;align-items:center;margin-bottom:12px}
.auth-product-logo{display:block;width:140px;height:auto;flex:none}
.auth-welcome{margin-bottom:12px}
.auth-welcome .eyebrow{margin-bottom:8px;color:#42647d;font-size:.62rem}
.auth-welcome h1{max-width:none;margin:0;color:#063b6b;font:700 clamp(1.9rem,2.8vw,2.45rem)/1.12 var(--sans);letter-spacing:-.045em}
.auth-welcome>p:last-child{max-width:49ch;margin:7px 0 0;color:#5d6e80;font-size:.9rem;line-height:1.55}
.login-card{padding:0;border:0;background:transparent}
.card-heading{margin-bottom:8px;text-align:left}
.card-heading .eyebrow{justify-content:flex-start;margin-bottom:2px;color:#547188;font-size:.59rem}
.card-heading h2{max-width:none;margin:0;color:#17334e;font:600 1.02rem/1.4 var(--sans);letter-spacing:-.015em}
.card-heading>p:last-child{margin:2px 0 0;color:#718092;font-size:.78rem}
.card-heading .eyebrow,.card-heading>p:last-child{display:none}

.auth-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0 0 10px;padding:3px;border:1px solid #e4eaf0;border-radius:10px;background:#f4f7fa}
.auth-switch button{min-height:36px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:#5d6b7a;font-size:.76rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s,transform .15s}
.auth-switch button:hover{color:var(--navy)}
.auth-switch button:active{transform:scale(.98)}
.auth-switch button[aria-pressed=true]{background:#fff;color:var(--navy);box-shadow:0 2px 8px rgba(15,45,76,.1)}

.auth-form{display:grid;gap:0}
.auth-form[hidden],#signin-extras[hidden]{display:none}

/* login type */
.login-type{min-width:0;margin:0 0 10px;padding:0;border:0}
.login-type legend{padding:0;margin-bottom:5px;color:#263f59;font-size:.75rem;font-weight:700}
.login-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.login-type-option{position:relative;display:block;cursor:pointer;-webkit-tap-highlight-color:transparent}
.login-type-option input{position:absolute;width:1px;height:1px;margin:0;opacity:0}
.lt-body{display:flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:6px 8px;border:1px solid #d1dae2;border-radius:10px;background:#fff;color:#4d5f72;text-align:center;transition:border-color .2s,background .2s,color .2s,box-shadow .2s,transform .15s}
.lt-body svg{width:17px;height:17px;flex:none}
.lt-body b{font-size:.7rem;font-weight:600;line-height:1.2}
.login-type-option:hover .lt-body{border-color:#8fb7d0;background:#f8fbfd}
.login-type-option:active .lt-body{transform:scale(.97)}
.login-type-option input:checked+.lt-body{border-color:var(--navy);background:#eef5fb;color:var(--navy);box-shadow:inset 0 -2px 0 var(--gold)}
.login-type-option input:focus-visible+.lt-body{outline:2px solid var(--cyan);outline-offset:2px}

/* fields */
.form-field{margin-bottom:9px}
.form-field label{display:block;margin-bottom:5px;color:#263f59;font-size:.75rem;font-weight:700}
.form-field input{width:100%;height:44px;padding:0 13px;border:1px solid #d1dae2;border-radius:10px;outline:0;background:#fff;color:var(--ink);font-size:.86rem;transition:border-color .2s,box-shadow .2s}
.form-field input::placeholder{color:#9aa5af}
.form-field input:hover{border-color:#aebfcb}
.form-field input:focus{border-color:#4092b7;box-shadow:0 0 0 3px #00a8e826}
.form-field input[aria-invalid=true]{border-color:#bd453d}
.email-hint{min-height:0;margin:0;color:#4d6a82;font-size:.69rem;line-height:1.4}
.email-hint:not(:empty){display:flex;align-items:center;gap:6px;margin-top:5px}
.email-hint i{width:7px;height:7px;flex:none;border-radius:50%;background:#34a779}
.email-hint.warn{color:#8a5a00}
.email-hint.warn i{background:var(--gold);box-shadow:0 0 0 1px #c9a800}
.password-wrap{position:relative}
.password-wrap input{padding-right:64px}
.password-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);min-width:48px;min-height:36px;padding:6px 8px;border:0;border-radius:6px;background:transparent;color:var(--navy);font-size:.72rem;font-weight:700;cursor:pointer;transition:background .2s}
.password-toggle:hover{background:#eef5fb}
.field-error{min-height:0;margin:4px 0 0;color:#ae3e37;font-size:.68rem;line-height:1.4}
.field-error:not(:empty){min-height:15px}
.form-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;font-size:.72rem}
.remember-option{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:32px;color:#4d5b69;cursor:pointer}
.remember-option input{position:absolute;width:1px;height:1px;opacity:0}
.custom-checkbox{display:grid;width:17px;height:17px;place-items:center;border:1px solid #bbc7d0;border-radius:4px;background:#fff;transition:border-color .2s,background .2s}
.remember-option:hover .custom-checkbox{border-color:var(--navy)}
.remember-option input:checked+.custom-checkbox{border-color:var(--navy);background:var(--navy)}
.remember-option input:checked+.custom-checkbox::after{color:#fff;font-size:11px;line-height:1;content:"✓"}
.remember-option input:focus-visible+.custom-checkbox{outline:2px solid var(--cyan);outline-offset:2px}
.form-options>a{display:inline-flex;min-height:32px;align-items:center;color:var(--navy);font-weight:700;text-decoration:none}
.form-options>a:hover,.access-prompt button:hover{text-decoration:underline;text-underline-offset:3px}
.signin-button{position:relative;display:flex;width:100%;min-height:46px;align-items:center;justify-content:center;gap:9px;border:1px solid var(--navy);border-radius:10px;background:var(--navy);color:#fff;font-size:.85rem;font-weight:700;cursor:pointer;box-shadow:inset 0 -3px 0 var(--gold);transition:background .2s,transform .2s,box-shadow .2s}
.signin-button:hover{transform:translateY(-1px);background:var(--navy-dark);box-shadow:inset 0 -3px 0 var(--gold),0 12px 22px -14px rgba(0,49,92,.8)}
.signin-button:active{transform:translateY(0) scale(.99)}
.signin-button:disabled{cursor:wait;opacity:.85}
.button-spinner{display:none;width:15px;height:15px;border:2px solid #ffffff70;border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}
.signin-button.is-loading .button-spinner{display:block}
.demo-note{min-height:0;margin:0;color:#276b52;font-size:.69rem;text-align:center}
.demo-note:not(:empty){margin-top:10px;padding:9px 10px;border-radius:8px;background:#eef8f2}
.demo-note.error{background:#fff2f0;color:#a43d37}

/* work-account providers */
.divider{display:flex;align-items:center;gap:13px;margin:12px 0 9px;color:#919da8;white-space:nowrap}
.divider span{height:1px;flex:1;background:#e3e8ec}
.divider b{font:.58rem var(--mono);letter-spacing:.06em}
.provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.provider-button{display:flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:6px 8px;border:1px solid #d4dde4;border-radius:10px;background:#fff;color:#35485c;font-size:.7rem;font-weight:600;line-height:1.2;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .2s,background .2s,transform .15s,box-shadow .2s}
.provider-button:hover{border-color:#8fb7d0;background:#f8fbfd;box-shadow:0 8px 16px -12px rgba(0,66,126,.5);transform:translateY(-1px)}
.provider-button:active{transform:scale(.97)}
.provider-mark{display:grid;width:22px;height:22px;flex:none;place-items:center;border-radius:6px;font:700 .72rem/1 var(--sans)}
.pm-ms{grid-template-columns:1fr 1fr;place-items:stretch;gap:2px;padding:4px;background:#f1f4f7}
.pm-ms i{display:block;border-radius:1px}
.pm-ms i:nth-child(1){background:#e6573f}.pm-ms i:nth-child(2){background:#5fb04e}.pm-ms i:nth-child(3){background:#2f8de0}.pm-ms i:nth-child(4){background:#f2b400}
.pm-zoho{background:#fdeceb;color:#c8362d}
.pm-gw{background:#e9f0fe;color:#2f64d6}
.sso-note{margin:8px 0 0;color:#718092;font-size:.67rem;line-height:1.45}
.access-prompt{margin:10px 0 0;text-align:center;color:#6a7886;font-size:.74rem}
.access-prompt button{min-height:32px;padding:0 2px;border:0;background:none;color:var(--navy);font-size:inherit;font-weight:700;cursor:pointer}
.security-note{display:flex;align-items:center;gap:8px;margin:8px 0 0;color:#718090;font-size:.68rem}
.security-note svg{width:15px;height:15px;flex:none;color:#28826a}
.site-footer{padding:0;border-top:1px solid #e2e7eb;background:#fff}
.footer-row{width:min(var(--max),calc(100% - 48px));min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:auto;color:#718090;font-size:11px}
.footer-row a{text-decoration:none}
.footer-row a:hover{color:var(--navy)}
.footer-row nav{display:flex;gap:18px}
.signin-page .drawer a.sub{display:block}

/* ---------- right column: animated workspace ---------- */
.signin-intro{
  position:relative;display:flex;min-width:0;min-height:100%;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;
  padding:28px clamp(24px,4vw,64px);border-left:1px solid #e5edf3;color:var(--ink);
  background:radial-gradient(circle at 80% 16%,rgba(0,168,232,.12),transparent 32%),radial-gradient(circle at 8% 92%,rgba(255,215,0,.09),transparent 30%),linear-gradient(160deg,#fff 10%,#f4f9fc 58%,#fff 100%);
}
.visual-stage{position:relative;container-type:inline-size;width:min(100%,500px,56svh);aspect-ratio:1;isolation:isolate;flex:none}
.vs-ring{position:absolute;top:50%;left:50%;z-index:0;border:1px solid rgba(0,91,157,.13);border-radius:50%;transform:translate(-50%,-50%)}
.vs-ring-outer{width:94%;aspect-ratio:1;box-shadow:0 0 0 5cqw rgba(0,91,157,.02),0 0 0 10cqw rgba(0,91,157,.012)}
.vs-ring-inner{width:70%;aspect-ratio:1;border-style:dashed;border-color:rgba(0,91,157,.14)}
.orbit{position:absolute;inset:0;z-index:1;pointer-events:none;animation:orbit-spin 46s linear infinite;will-change:transform}
.orbit-inner{animation-duration:34s;animation-direction:reverse}
.orbit-item{position:absolute;top:50%;left:50%;width:clamp(34px,9.4cqw,48px);height:clamp(34px,9.4cqw,48px);margin:calc(clamp(34px,9.4cqw,48px)/-2) 0 0 calc(clamp(34px,9.4cqw,48px)/-2);transform:rotate(var(--a)) translateX(47cqw) rotate(calc(var(--a)*-1))}
.orbit-inner .orbit-item{transform:rotate(var(--a)) translateX(35cqw) rotate(calc(var(--a)*-1))}
.oi{display:grid;width:100%;height:100%;place-items:center;border:1px solid #dbe6ee;border-radius:30%;background:#fff;color:var(--navy);box-shadow:0 12px 24px -14px rgba(0,49,92,.55);animation:orbit-counter 46s linear infinite;will-change:transform}
.orbit-inner .oi{animation-duration:34s;animation-direction:reverse}
.oi svg{width:52%;height:52%}
.oi-gold .oi{color:#8a6a00;background:#fff9d6;border-color:#f0dc72}
.float-card{position:absolute;z-index:5;display:flex;align-items:center;gap:9px;padding:9px 12px 9px 9px;border:1px solid #e3ebf1;border-radius:13px;background:rgba(255,255,255,.94);box-shadow:0 18px 34px -20px rgba(0,49,92,.55);white-space:nowrap;animation:float-y 7s ease-in-out infinite}
.fc-one{top:11%;left:-1%}
.fc-two{right:-1%;bottom:7%;animation-delay:-3.2s;animation-duration:8s}
.fc-ico{display:grid;width:26px;height:26px;flex:none;place-items:center;border-radius:8px;background:#e8f7f1;color:#267a5c;font-size:.8rem;font-weight:700}
.fc-ico-cyan{background:#e2f4fc;color:#0877a6}
.float-card b,.float-card small{display:block;line-height:1.3}
.float-card b{color:#24384b;font-size:.7rem}
.float-card small{color:#718094;font-size:.62rem}
.visual-product{position:absolute;top:50%;left:50%;z-index:4;width:min(62%,320px);padding:16px 16px 12px;border:1px solid #e7edf2;border-radius:20px;background:rgba(255,255,255,.97);box-shadow:0 28px 60px -32px rgba(0,49,92,.45);transform:translate(-50%,-50%);animation:product-float 6s ease-in-out infinite}
.visual-product-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 8px;margin-bottom:11px}
.visual-product-logo{display:block;width:92px;height:auto}
.visual-product-tagline{grid-column:1/-1;color:#61758a;font-size:.6rem}
.visual-status{display:flex;align-items:center;gap:5px;margin-left:auto;padding:5px 8px;border-radius:999px;background:#e8f7f1;color:#267a5c;font-size:.56rem;font-weight:700;white-space:nowrap}
.visual-status i{width:6px;height:6px;border-radius:50%;background:#38ad7b;animation:pulse-dot 2.2s ease-in-out infinite}
.visual-feature{display:flex;align-items:center;gap:10px;margin-top:6px;padding:7px 9px;border-radius:11px;background:#f2f6fa;transition:transform .25s,background .25s}
.visual-feature:hover{transform:translateX(3px);background:#e9f1f8}
.visual-feature-icon{display:grid;width:28px;height:28px;flex:none;place-items:center;border-radius:9px;color:#fff;font-size:.82rem;font-weight:700}
.feature-control{background:#07538d}.feature-evidence{background:#00a8e8}.feature-workflow{background:#dfb600}
.visual-feature>span:last-child{display:grid;gap:1px}
.visual-feature strong{color:#24384b;font-size:.69rem;line-height:1.35}
.visual-feature small{color:#718094;font-size:.6rem;line-height:1.35}
.visual-pilot-brand{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:10px;padding-top:9px;border-top:1px solid #edf1f4}
.visual-pilot-brand img{display:block;width:80px;height:auto}
.visual-pilot-brand span{padding-left:9px;border-left:1px solid #e5edf3;color:#0877a6;font-size:.58rem;font-weight:700;white-space:nowrap}
.visual-copy{max-width:500px;min-height:112px;margin-top:6px;text-align:center}
.visual-copy.is-swapping>*{opacity:0;transform:translateY(6px)}
.visual-copy>*{transition:opacity .3s,transform .3s}
.visual-eyebrow{margin:0 0 7px;color:#0094c8;font-size:.67rem;font-weight:800;letter-spacing:.04em}
.visual-copy h2{max-width:none;margin:0;color:#06477b;font:700 clamp(1.2rem,1.9vw,1.5rem)/1.25 var(--sans);letter-spacing:-.035em}
.visual-copy>p:last-child{max-width:48ch;margin:7px auto 0;color:#65778b;font-size:.82rem;line-height:1.6}
.visual-pagination{display:flex;align-items:center;justify-content:center;gap:2px;margin-top:8px}
.visual-pagination button{position:relative;width:26px;height:26px;padding:0;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.visual-pagination button::after{content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;border-radius:99px;background:#c5d3df;transform:translate(-50%,-50%);transition:width .25s,background .25s}
.visual-pagination button:hover::after{background:#8fa8bb}
.visual-pagination button[aria-pressed=true]::after{width:20px;background:#07538d}
.visual-pagination button:focus-visible,.provider-button:focus-visible,.auth-switch button:focus-visible,.signin-button:focus-visible,.password-toggle:focus-visible,.form-options>a:focus-visible,.access-prompt button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}

@keyframes spin{to{transform:rotate(360deg)}}
@keyframes orbit-spin{to{transform:rotate(360deg)}}
@keyframes orbit-counter{to{transform:rotate(-360deg)}}
@keyframes float-y{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes product-float{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 6px))}}
@keyframes pulse-dot{0%,100%{box-shadow:0 0 0 0 rgba(56,173,123,.5)}60%{box-shadow:0 0 0 5px rgba(56,173,123,0)}}

/* ---------- responsive ---------- */







.signin-intro.is-paused .orbit,.signin-intro.is-paused .oi,.signin-intro.is-paused .float-card,.signin-intro.is-paused .visual-product{animation-play-state:paused}




/* ==========================================================
   Merged page styles: solutions.css
========================================================== */

/* ==========================================================
   NEXEN ONE — solutions.css
   Solutions pages (solutions.php): the For certified / Starting out / Stronger posture / Consolidating pages and Expert services.
   Loaded after main.css. Only selectors that belong to these pages live here;
   shared page styles (.pg-*) stay in main.css.
========================================================== */

.shifts .pg-card{gap:6px}
.was-line{font-size:.82rem;color:var(--ink-faint);text-decoration:line-through;text-decoration-color:var(--rule)}
.pilot-callout{background:var(--night);color:#EDEBF5;border-left-color:var(--decide)}
.pilot-callout strong{color:#fff}
.es-hero h1{max-width:15ch;margin-top:8px}
.es-hero .svc-kicker{margin-top:0}
.es-assure{margin-top:14px;font-size:.9rem;color:var(--ink-soft)}
.uc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.uc{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid var(--rule);border-radius:16px;background:var(--card)}
.uc h3{font-family:var(--sans);font-weight:600;font-size:1.05rem}
.uc p{color:var(--ink-soft);font-size:.94rem}
.uc-go{margin-top:auto;padding-top:6px;font-weight:600;font-size:.9rem;color:var(--blue);text-decoration:none}
.uc-go::after{content:"";display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-left:8px;vertical-align:3px}
.uc-go:hover{text-decoration:underline;text-underline-offset:3px}
.pkg-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.pkg{display:flex;flex-direction:column;gap:10px;align-items:flex-start;padding:26px;border:1px solid var(--rule);border-radius:18px;background:var(--card);scroll-margin-top:96px;transition:box-shadow .4s,border-color .4s}
.pkg:first-child{border:1.5px solid var(--blue)}
.pkg.flash,
.uc-grid .flash{box-shadow:0 0 0 4px var(--blue-wash);border-color:var(--blue)}
.pkg-top{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:baseline;justify-content:space-between;width:100%}
.pkg h3{font-size:1.6rem}
.pkg-when{font-size:.82rem;font-weight:600;color:var(--blue-deep);background:var(--blue-wash);border-radius:999px;padding:4px 10px}
.pkg.opt .pkg-when{background:var(--paper-deep);color:var(--ink-soft)}
.pkg-lead{color:var(--ink-soft)}
.pkg h4{margin:6px 0 0;font-size:.9rem;font-weight:600}
.pkg ul{margin:0;padding:0;list-style:none;display:grid;gap:7px;font-size:.95rem}
.pkg li{padding-left:22px;position:relative}
.pkg li::before{content:"";position:absolute;left:1px;top:.42em;width:10px;height:6px;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg)}
.pkg-note{font-size:.88rem;color:var(--ink-soft);background:var(--paper);border-radius:10px;padding:10px 12px}
.pkg .btn{margin-top:auto}
.faq{max-width:820px;border-top:1.5px solid var(--ink)}
.faq details{border-bottom:1px solid var(--rule);padding:16px 0}
.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);color:var(--ink-faint)}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--ink-soft);margin-top:8px;max-width:68ch}
.es-light{color:#fff}


.pg-card .was-line{font-size:.82rem;color:var(--color-text-faint)}
.faq{max-width:none}

.pg-steps li.pg-rv{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.pg-steps li.pg-rv:hover{transform:translateY(-5px);border-color:var(--color-cyan);box-shadow:0 18px 34px -20px rgba(0,66,126,.55)}
.pg-rv:nth-child(4n+1){--acc:#00427E;--acc-soft:rgba(0,66,126,.10)}
.pg-rv:nth-child(4n+2){--acc:#E6B800;--acc-soft:rgba(255,215,0,.20)}
.pg-rv:nth-child(4n+3){--acc:#00A8E8;--acc-soft:rgba(0,168,232,.14)}
.pg-rv:nth-child(4n+4){--acc:#4F5BD5;--acc-soft:rgba(79,91,213,.12)}
.pg-card.pg-rv,
.uc.pg-rv,
.pkg.pg-rv{position:relative;overflow:hidden;isolation:isolate;padding:22px 22px 24px;
  border:1.5px solid var(--color-border);border-radius:18px;
  background:linear-gradient(160deg,#fff 0%,#fff 55%,var(--acc-soft) 100%);
  box-shadow:0 1px 2px rgba(26,26,26,.05),0 14px 28px -22px rgba(0,66,126,.35);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .25s}
.pg-card.pg-rv::before,
.uc.pg-rv::before,
.pkg.pg-rv::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:var(--acc);
  transform:scaleX(.28);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pg-card.pg-rv::after,
.uc.pg-rv::after,
.pkg.pg-rv::after{content:"";position:absolute;z-index:-1;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;
  background:radial-gradient(circle,var(--acc-soft),transparent 70%);opacity:.7;transition:transform .6s cubic-bezier(.2,.7,.2,1),opacity .4s}
.pg-card.pg-rv:hover,
.uc.pg-rv:hover,
.pkg.pg-rv:hover{transform:translateY(-8px);border-color:var(--acc);box-shadow:0 2px 4px rgba(26,26,26,.05),0 30px 44px -24px var(--acc)}
.pg-card.pg-rv:hover::before,
.uc.pg-rv:hover::before,
.pkg.pg-rv:hover::before{transform:scaleX(1)}
.pg-card.pg-rv:hover::after,
.uc.pg-rv:hover::after,
.pkg.pg-rv:hover::after{transform:scale(1.9);opacity:1}
.pg-card.pg-rv:active,
.uc.pg-rv:active{transform:translateY(-3px) scale(.99)}
.pg-card.pg-rv h3,
.uc.pg-rv h3{font-size:1.1rem;line-height:1.3;color:var(--color-charcoal)}
.pg-card.pg-rv:hover p:not(.was-line),
.uc.pg-rv:hover p{color:var(--color-charcoal)}
.pg-ico{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;margin-bottom:6px;flex:none;
  color:var(--acc,#00427E);background:var(--acc-soft,rgba(0,66,126,.10));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--acc,#00427E) 30%,transparent);
  transition:transform .45s cubic-bezier(.3,1.4,.5,1),background .3s,color .3s,box-shadow .3s}
.pg-ico svg{width:24px;height:24px}
.pg-rv:hover .pg-ico{transform:translateY(-2px) rotate(-8deg) scale(1.12);background:var(--acc);color:#fff;box-shadow:0 10px 18px -8px var(--acc)}
.pg-rv:nth-child(4n+2):hover .pg-ico{color:#1A1A1A}

.pkg.pg-rv.flash,
.uc.pg-rv.flash{border-color:var(--acc);box-shadow:0 0 0 4px var(--acc-soft),0 26px 40px -26px var(--acc)}
.pg-hero-body{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(28px,4vw,56px);align-items:center;margin-top:8px}
.pg-hero-body h1{font-size:clamp(2.2rem,3.9vw,3.4rem);max-width:15ch}
.pg-hero-media{margin:0;border-radius:22px;overflow:hidden;border:1px solid var(--color-border,#e3e8ee);
  background:#eaf2fb;box-shadow:0 1px 2px rgba(26,26,26,.05),0 30px 60px -34px rgba(0,66,126,.55)}
.pg-hero-media img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.pg-hero-media.solution-scene-visual{position:relative;display:block;overflow:hidden;background:linear-gradient(180deg,#ebf6ff 0%,#dfeefc 55%,#eef8ff 100%);box-shadow:0 14px 26px rgba(16,82,138,.14),0 40px 80px -46px rgba(39,86,140,.58)}
.solution-scene{display:block;width:100%;height:100%}




/* sub-nav: no pill boxes, plain text tabs with an underline on the current page (matches the Resources page) */
.pg-hero .pg-sub{gap:28px;padding:0;border-bottom:1px solid var(--color-border,#DCE2EA);width:fit-content;max-width:100%}
.pg-hero .pg-sub a{padding:10px 2px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;
  font-size:1rem;color:var(--color-text-muted,var(--ink-soft));white-space:nowrap;transition:color .2s ease,border-color .2s ease}
.pg-hero .pg-sub a:hover{color:var(--color-deep-blue,#00427E);border-color:var(--color-border,#DCE2EA);background:none}
.pg-hero .pg-sub a[aria-current=page]{color:var(--color-deep-blue,#00427E);font-weight:600;border-color:var(--color-deep-blue,#00427E);background:none}
.pg-hero .pg-sub a:focus-visible{outline:2px solid var(--color-cyan,#00A8E8);outline-offset:2px;border-radius:4px}
/* tabs never get cut off: when all five don't fit on one line they wrap onto a second line instead of hiding behind a scroll */



/* ==========================================================
   SOLUTIONS HERO BACKGROUND — same animated look as the Resources hero:
   drifting aurora glow + dotted grid + staggered text entrance, plus pulsing rings, twinkling sparkles
   and a gently floating picture behind/around the hero image.
========================================================== */
.pg-hero{position:relative;overflow:hidden;overflow:clip;isolation:isolate;background:linear-gradient(180deg,var(--color-off-white,#F5F7FA) 0%,#EAF4FB 100%)}
.pg-hero::after{content:"";position:absolute;inset:-25%;z-index:-2;pointer-events:none;
  background:
    radial-gradient(42% 50% at 80% 45%,rgba(0,168,232,.30),transparent 70%),
    radial-gradient(30% 36% at 92% 80%,rgba(255,215,0,.20),transparent 70%),
    radial-gradient(34% 40% at 58% 14%,rgba(0,66,126,.14),transparent 70%),
    radial-gradient(26% 32% at 10% 90%,rgba(0,168,232,.12),transparent 70%),
    radial-gradient(circle,rgba(0,66,126,.16) 1.3px,transparent 1.6px) 0 0/22px 22px;
  animation:sol-aurora 16s ease-in-out infinite alternate}
@keyframes sol-aurora{
  0%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(-3%,2%,0) scale(1.08) rotate(2deg)}
  100%{transform:translate3d(3%,-2%,0) scale(1.04) rotate(-2deg)}}
.pg-hero .wrap>*{animation:sol-rise .8s cubic-bezier(.2,.7,.2,1) backwards}
.pg-hero .wrap>:nth-child(2){animation-delay:.12s}
.pg-hero .wrap>:nth-child(3){animation-delay:.24s}
@keyframes sol-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
/* pulsing rings + sparkle behind the hero picture */
.pg-hero-body{position:relative}
.pg-hero-body::before{content:"";position:absolute;z-index:-1;right:-3%;top:50%;width:min(56%,520px);aspect-ratio:1;margin-top:calc(min(56%,520px) / -2);
  border-radius:50%;border:2px solid rgba(0,168,232,.55);background:rgba(0,168,232,.06);pointer-events:none;
  animation:sol-ring 4s ease-out infinite}
.pg-hero-body::after{content:"";position:absolute;z-index:1;right:-10px;top:-14px;width:22px;height:22px;pointer-events:none;
  background:#FFD700;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);
  animation:sol-twinkle 3.2s ease-in-out infinite}
@keyframes sol-ring{0%{transform:scale(.7);opacity:.7}100%{transform:scale(1.35);opacity:0}}
@keyframes sol-twinkle{0%,100%{transform:scale(.2) rotate(0);opacity:0}50%{transform:scale(1) rotate(45deg);opacity:1}}
/* picture floats gently after it has slid in */
.pg-hero-media{animation:heroMediaIn .9s cubic-bezier(.2,.8,.2,1) .15s backwards,sol-float 7s ease-in-out 1.2s infinite}
@keyframes sol-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}



/* ==========================================================
   SOLUTIONS HERO — dark tech background image (cloud + circuit tree).
   Image: assets/images/sections/solutions-bg.jpg. A navy overlay (heavier on the left) keeps the
   headline readable; the picture on the right sits on top of the image.
========================================================== */
.pg-hero{background:#04122e;border-bottom:0}
.pg-hero::before{content:"";position:absolute;inset:0;z-index:-3;pointer-events:none;
  background:url("../images/sections/solutions-bg.jpg") center 55%/cover no-repeat;
  animation:sol-bgdrift 26s ease-in-out infinite alternate}
@keyframes sol-bgdrift{0%{transform:scale(1)}100%{transform:scale(1.07) translate3d(-1.2%,0,0)}}
.pg-hero::after{inset:0;z-index:-2;animation:none;
  background:
    linear-gradient(90deg,rgba(2,13,38,.86) 0%,rgba(2,13,38,.62) 42%,rgba(2,13,38,.12) 100%),
    linear-gradient(180deg,rgba(2,13,38,.40) 0%,transparent 28%,rgba(2,13,38,.50) 100%)}
/* light text on the dark hero */
.pg-hero .svc-kicker{color:#5FD0FF}
.pg-hero h1{color:#fff}
.pg-hero .lede{color:rgba(255,255,255,.84)}
.pg-hero .es-assure{color:rgba(255,255,255,.72)}
.pg-hero .pg-sub{border-bottom-color:rgba(255,255,255,.24)}
.pg-hero .pg-sub a{color:rgba(255,255,255,.74)}
.pg-hero .pg-sub a:hover{color:#fff;border-color:rgba(255,255,255,.5)}
.pg-hero .pg-sub a[aria-current=page]{color:#fff;border-color:var(--color-gold,#FFD700)}
.pg-hero .pg-sub a:focus-visible{outline-color:#5FD0FF}
.pg-hero .btn-primary{background:#0A63C4;box-shadow:inset 0 -3px 0 var(--color-gold,#FFD700),0 14px 28px -12px rgba(0,0,0,.6)}
.pg-hero .btn-primary:hover{background:#0B73E0}
.pg-hero .btn-primary:hover{transform:translateY(-2px)}
.pg-hero .btn-quiet{background:rgba(255,255,255,.06);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.pg-hero .btn-quiet:hover{background:rgba(255,255,255,.16);color:#fff;box-shadow:inset 0 0 0 1.5px var(--color-gold,#FFD700),0 0 0 4px rgba(255,215,0,.18);transform:translateY(-2px)}
.pg-hero-media{border-color:rgba(130,205,255,.30);box-shadow:0 0 0 1px rgba(0,168,232,.18),0 30px 80px -24px rgba(0,168,232,.55)}




/* ==========================================================
   HERO: same height on every Solutions tab.
   Before: title (3 or 4 lines), intro (2-5 lines) and the picture
   (294px vs 422px) changed per tab, so the banner jumped around.
   Now: title and intro reserve a fixed number of lines, the hero
   body has one minimum height, and every picture uses one 16:9 frame.
========================================================== */
.pg-hero-body h1{font-size:clamp(2rem,3.1vw,2.9rem);max-width:none;min-height:3lh}
.pg-hero-copy .lede{font-size:clamp(1rem,1.2vw,1.12rem);max-width:none;min-height:4lh}

/* every hero picture / illustration = same frame */
.pg-hero-media,
.pg-hero-media.solution-scene-visual{aspect-ratio:16/9;min-height:0;height:auto;align-self:center}
.pg-hero-media img{width:100%;height:100%;aspect-ratio:16/9;object-fit:cover}
.pg-hero-media.solution-scene-visual .solution-scene{min-height:0;height:100%;width:100%}

/* ==========================================================
   LEGAL PAGES (privacy.php, terms.php, cookies.php)
   Plain light hero with pill tabs, like the content file. Overrides the dark
   banner hero that other pages (Solutions, Company, Resources) use.
========================================================== */
body.legal-page .pg-hero{background:transparent;overflow:visible;isolation:auto;border-bottom:1px solid var(--rule);padding:clamp(40px,6vw,72px) 0 clamp(32px,4vw,48px)}
body.legal-page .pg-hero::before,body.legal-page .pg-hero::after{content:none;display:none}
body.legal-page .pg-hero .wrap>*{animation:none}
body.legal-page .pg-hero h1{color:var(--ink);max-width:17ch;margin-top:28px}
body.legal-page .pg-hero .lede{color:var(--ink-soft);max-width:58ch;min-height:0;margin-top:18px;font-size:clamp(1.05rem,1.5vw,1.2rem)}
body.legal-page .pg-hero .pg-sub{display:flex;gap:6px;padding:2px;width:auto;max-width:100%;border-bottom:0}
body.legal-page .pg-hero .pg-sub a{padding:6px 13px;margin:0;border:1px solid var(--rule);border-radius:999px;background:none;font-size:.88rem;font-weight:500;color:var(--ink-soft)}
body.legal-page .pg-hero .pg-sub a:hover{border-color:var(--ink-soft);color:var(--ink);background:none}
body.legal-page .pg-hero .pg-sub a[aria-current=page]{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:500}
body.legal-page .pg-hero .lg-meta{color:var(--ink-faint)}

/* ---------- Guides: lighter featured card for readability (esp. mobile) ---------- */
.guide.lead{background:var(--color-deep-blue-50);border-color:#C4D6E8;color:var(--ink)}
.guide.lead h3{color:var(--color-deep-blue-700)}
.guide.lead p{color:var(--ink-soft)}
.guide.lead .post-type{color:var(--blue)}
.guide.lead::after{background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),rgba(0,168,232,.12),transparent 70%)}

/* ---------- Solutions hero picture: never crop on phones/tablets ---------- */
@media (max-width:900px){
  .pg-hero-media{aspect-ratio:auto!important;height:auto!important;animation:none!important;transform:none!important}
  .pg-hero-media img,.pg-hero-media picture{display:block;width:100%;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}
  .pg-hero-media.solution-scene-visual{aspect-ratio:16/9!important}
  .pg-hero-media.solution-scene-visual .solution-scene{width:100%;height:100%;transform:none!important}
}

/* ---------- Company heroes (About, Careers, Contact, Partners): restore the dark navy overlay ----------
   The generic ".pg-hero::before/::after" rules (Solutions dark hero) were overriding the company hero overlay,
   leaving the photo bright and the white headline hard to read. */
.pg-hero.company-about-hero{background:#04122e}
.pg-hero.company-about-hero::before{z-index:-2;animation:none;transform:none;
  background:
    radial-gradient(ellipse at 84% 30%,rgba(0,168,232,.30),transparent 42%),
    linear-gradient(90deg,rgba(3,17,46,.93) 0%,rgba(3,17,46,.74) 44%,rgba(3,17,46,.34) 100%),
    linear-gradient(180deg,rgba(3,17,46,.35),transparent 30%,rgba(3,17,46,.62) 100%)}
.pg-hero.company-about-hero::after{inset:0;z-index:-1;opacity:.5;animation:none;
  background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 100%);mask-image:linear-gradient(90deg,transparent 30%,#000 100%)}
@media (max-width:900px){
  .pg-hero.company-about-hero::before{
    background:radial-gradient(ellipse at 80% 80%,rgba(0,168,232,.25),transparent 50%),linear-gradient(180deg,rgba(3,17,46,.9),rgba(3,17,46,.78))}
}

/* ==========================================================
   Hero role panel: even spacing.
   main.js keeps the panel one steady height (the tallest role), so a shorter slide such as Leadership used to float in the
   middle with blank bands above and below. The content now fills the height: the extra space is shared evenly between the
   blocks (chip, question, cards, insight), so nothing looks gapped. Stacked phone/tablet layout keeps its natural height.
========================================================== */
@media (min-width:961px){
  .hero-grid.hr-grid .hp-body{display:flex;flex-direction:column;justify-content:flex-start;align-content:normal;gap:12px}
}

/* Blog cover image (added from admin > Resources > Blog) */
.post-img{display:block;margin:-0px 0 6px;border-radius:12px;overflow:hidden;aspect-ratio:16/9;background:var(--card,#eef2f7)}
.post-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.post:hover .post-img img{transform:scale(1.04)}
.post.lead .post-img{aspect-ratio:21/9;margin-bottom:10px}

/* Careers application form */
.ap-bg{position:fixed;inset:0;z-index:200;background:rgba(10,20,40,.55);display:grid;place-items:center;padding:16px;overflow-y:auto}
body.ap-open{overflow:hidden}
.ap{position:relative;width:100%;max-width:600px;max-height:calc(100vh - 32px);overflow-y:auto;background:var(--color-off-white,#F5F7FA);border-radius:18px;padding:30px clamp(20px,4vw,34px);box-shadow:0 24px 60px rgba(0,0,0,.3)}
.ap-x{position:absolute;top:12px;right:14px;width:34px;height:34px;border-radius:50%;border:0;background:transparent;font-size:1.6rem;line-height:1;cursor:pointer;color:var(--ink,#1A1A1A)}
.ap-x:hover{background:rgba(0,0,0,.06)}
.ap-kicker{font:600 .75rem var(--mono,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--blue,#00427E);margin:0 0 4px}
.ap h2{font-size:clamp(1.5rem,3vw,1.9rem);margin:0 0 6px}
.ap-sub{color:var(--ink-soft,#444);margin:0 0 18px}
.ap-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.ap-f{display:flex;flex-direction:column;gap:5px;font-size:.88rem;font-weight:600;margin-bottom:14px}
.ap-f small{font-weight:400;color:var(--ink-faint,#666)}
.ap-f input,.ap-f textarea{font:inherit;font-weight:400;padding:10px 12px;border:1px solid var(--rule,#cfd6e0);border-radius:10px;background:#fff;color:inherit}
.ap-f input:focus,.ap-f textarea:focus{outline:2px solid var(--color-cyan,#00A8E8);outline-offset:1px}
.ap-c{display:flex;gap:10px;align-items:flex-start;font-size:.86rem;color:var(--ink-soft,#444);margin-bottom:12px}
.ap-c input{margin-top:3px}
.ap-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ap-msg{min-height:1.2em;font-size:.88rem;margin:0 0 8px}
.ap-msg.is-err{color:#b3261e}
.ap-act{display:flex;gap:10px;justify-content:flex-end}
.ap-done{text-align:center;padding:12px 0}
.ap-tick{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 12px;border-radius:50%;background:var(--color-gold,#FFD700);color:#1A1A1A;font-size:1.7rem;font-weight:700}
@media(max-width:560px){.ap-grid{grid-template-columns:1fr}}

/* Banner image set from admin (Resources pages) */
.res-hero>.hero-bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-3;pointer-events:none}
.res-hero:has(>.hero-bgimg)::before{display:none}

/* Blog cards: image position chosen in admin (Upload & manage > Blog > Image position) */
.post[data-img-pos=bottom]>.post-img{order:99;margin:8px 0 0}
.post[data-img-pos=left],.post[data-img-pos=right]{display:grid;grid-template-columns:minmax(96px,36%) minmax(0,1fr);column-gap:18px;row-gap:8px;align-items:start;align-content:start}
.post[data-img-pos=right]{grid-template-columns:minmax(0,1fr) minmax(96px,36%)}
.post[data-img-pos=left]>.post-img,.post[data-img-pos=right]>.post-img{grid-row:1/span 4;aspect-ratio:1/1;margin:0;align-self:start}
.post[data-img-pos=left]>.post-img{grid-column:1}
.post[data-img-pos=right]>.post-img{grid-column:2}
.post[data-img-pos=left]>:not(.post-img){grid-column:2}
.post[data-img-pos=right]>:not(.post-img){grid-column:1}
.post.lead[data-img-pos=left],.post.lead[data-img-pos=right]{grid-template-columns:minmax(160px,38%) minmax(0,1fr)}
.post.lead[data-img-pos=right]{grid-template-columns:minmax(0,1fr) minmax(160px,38%)}
.post.lead[data-img-pos=left]>.post-img,.post.lead[data-img-pos=right]>.post-img{aspect-ratio:4/3}


/* ==========================================================
   BLOG ARTICLE READER: the popup that opens when a blog card is clicked (same page, no navigation)
========================================================== */
.post-body{display:none}
body.rd-open{overflow:hidden}
.rd-bg{position:fixed;inset:0;z-index:300;background:rgba(0,49,92,.45);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px;animation:rd-fade .2s ease}
.rd-bg[hidden]{display:none}
.rd{position:relative;width:min(780px,100%);max-height:calc(100vh - 40px);display:flex;flex-direction:column;background:var(--color-surface,#fff);color:var(--ink);border:1px solid var(--rule);border-radius:20px;box-shadow:0 40px 90px -30px rgba(0,49,92,.6);outline:none;animation:rd-rise .28s cubic-bezier(.2,.8,.2,1)}
.rd::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;border-radius:20px 20px 0 0;background:linear-gradient(90deg,var(--color-cyan,#00A8E8),var(--color-gold,#FFD700))}
.rd-x{position:absolute;top:14px;right:14px;z-index:2;width:38px;height:38px;border-radius:50%;border:1px solid var(--rule);background:var(--color-surface,#fff);color:var(--ink);font-size:1.5rem;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s}
.rd-x:hover,.rd-x:focus-visible{background:var(--blue);color:#fff;border-color:var(--blue)}
.rd-scroll{overflow-y:auto;padding:40px clamp(22px,5vw,52px) 24px;overscroll-behavior:contain}
.rd-topic{margin-bottom:10px}
.rd h2{max-width:none;text-wrap:balance;font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,3.4vw,2.3rem);line-height:1.15;margin:0 40px 10px 0}
.rd-meta{color:var(--ink-faint,#6b7280);font-size:.88rem;margin:0 0 22px}
.rd-meta::after{content:none}
.rd-cover{display:block;width:100%;max-height:340px;object-fit:cover;border-radius:14px;margin:0 0 24px}
.rd-cover[hidden]{display:none}
.rd-body{font-size:1.05rem;line-height:1.7;color:var(--ink)}
.rd-body p{margin:0 0 1.1em;color:var(--ink)}
.rd-body h3{font-family:var(--serif);font-weight:400;font-size:1.4rem;line-height:1.25;margin:1.7em 0 .5em;color:var(--blue)}
.rd-body ul{margin:0 0 1.2em;padding-left:1.3em}
.rd-body li{margin:0 0 .45em;padding-left:.2em}
.rd-body li::marker{color:var(--color-cyan,#00A8E8)}
.rd-body strong{font-weight:700}
.rd-body a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.rd-soon{color:var(--ink-soft);font-style:italic}
.rd-links:not(:empty){margin-top:8px}
.rd-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px clamp(18px,4vw,36px);border-top:1px solid var(--rule);background:var(--color-surface,#fff);border-radius:0 0 20px 20px}
.rd-nav .btn:disabled{opacity:.4;cursor:default;pointer-events:none}
@keyframes rd-fade{from{opacity:0}to{opacity:1}}
@keyframes rd-rise{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
@media (max-width:640px){
  .rd-bg{padding:0;place-items:end stretch}
  .rd{width:100%;max-height:94vh;border-radius:20px 20px 0 0}
  .rd-nav{flex-wrap:wrap}
  .rd-nav [data-rd=close]{order:3;width:100%}
}
@media (prefers-reduced-motion:reduce){.rd-bg,.rd{animation:none}}

/* images inside an article: the admin picks the position (full width, centered, left or right with text wrapping) */
.rd-body::after{content:"";display:block;clear:both}
.rd-fig{margin:1.5em 0;clear:both}
.rd-fig img{display:block;width:100%;height:auto;border-radius:12px;background:var(--card)}
.rd-fig figcaption{margin-top:8px;font-size:.86rem;line-height:1.4;color:var(--ink-faint)}
.rd-fig[data-layout=center]{width:62%;margin-left:auto;margin-right:auto}
.rd-fig[data-layout=left]{float:left;width:42%;margin:.35em 1.6em 1em 0;clear:none}
.rd-fig[data-layout=right]{float:right;width:42%;margin:.35em 0 1em 1.6em;clear:none}
@media (max-width:640px){
  .rd-fig[data-layout=center],.rd-fig[data-layout=left],.rd-fig[data-layout=right]{float:none;width:100%;margin:1.3em 0;clear:both}
}

/* pop-up form: server error line (shown above the submit button) */
.dlg .form-err{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:var(--color-alert-50);color:var(--color-alert);font-size:.9rem;line-height:1.4}
.dlg .form-err[hidden]{display:none}

/* Director credential line */
.lead-cred{margin:6px 0 14px;color:var(--navy);font-weight:600;font-size:1.02rem;line-height:1.4}
/* Leadership: quote and approach run full width under the photo + intro, so there is no empty gap */
.lead-wide{margin-top:clamp(28px,3.5vw,44px);display:grid;gap:22px}
.lead-wide .lead-quote,.lead-wide .lead-approach{margin:0}
:where(#page:has([data-co-tpl="about"])) .lead-photo{aspect-ratio:4/5.5}
/* About page: tighten the space between Leadership and LinkedIn */
:where(#page:has([data-co-tpl="about"])) .company-leadership{padding-bottom:clamp(28px,3.5vw,44px)}
:where(#page:has([data-co-tpl="about"])) .cp-li-sec{padding-top:clamp(24px,3vw,40px)}
/* Two leaders: space between the two rows */
.lead-grid-first{margin-bottom:clamp(56px,7vw,96px)}
/* Hero role panel: every slide keeps the same height (JS hpFit sets min-height on .hp-body to the tallest slide) */
/* Vijaykumar B: content on the left, photo on the right (desktop/tablet only; phones stay photo first) */
@media (min-width:901px){
  :where(#page:has([data-co-tpl="about"])) .lead-grid-flip{grid-template-columns:minmax(0,1.22fr) minmax(280px,.78fr)}
  :where(#page:has([data-co-tpl="about"])) .lead-grid-flip .lead-media{order:2}
  :where(#page:has([data-co-tpl="about"])) .lead-grid-flip .lead-body{order:1}
  :where(#page:has([data-co-tpl="about"])) .lead-grid-flip .lead-float{right:auto;left:-22px}
}
