/*
Theme Name: Brilliant Group
Theme URI: https://brilliantgroup.co.za
Author: Brilliant Group
Description: Inspired Business Solutions – ERP, Sage & Acumatica specialists.
Version: 3.3
Tags: business, corporate, custom-colors, custom-logo, full-width-template, two-columns
Text Domain: brilliant-group
*/

/* ── TOKENS ─────────────────────────────────────────────── */
:root{
  --mag:#981F61;--crim:#7C1750;--mag-deep:#5E1140;
  --mag-light:rgba(152,31,97,0.08);--mag-line:rgba(152,31,97,0.18);
  --ink:#0F1024;--char:#0F1024;--deep:#0A0B1A;
  --off:#F7F6FB;--white:#ffffff;
  --mid:#66627C;--text:#181528;--text-light:#3E3A54;
  --border:#E7E4F0;--border-dark:rgba(255,255,255,0.08);
  --nav-h:80px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-spring:cubic-bezier(.34,1.56,.64,1);
  --shadow-sm:0 1px 3px rgba(15,16,36,0.05),0 4px 14px rgba(15,16,36,0.05);
  --shadow-card:0 2px 6px rgba(15,16,36,0.04),0 14px 44px rgba(15,16,36,0.08);
  --shadow-hover:0 6px 18px rgba(15,16,36,0.07),0 30px 70px rgba(15,16,36,0.14);
  --shadow-mag:0 10px 34px rgba(152,31,97,0.30);
  --r-sm:8px;--r:12px;--r-lg:18px;--r-pill:999px}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{font-family:'Poppins',sans-serif;background:var(--white);color:var(--text);overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul{list-style:none}
::selection{background:rgba(152,31,97,0.16)}
:focus-visible{outline:2px solid var(--mag);outline-offset:3px;border-radius:4px}

/* ── TYPOGRAPHY ─────────────────────────────────────────── */
.serif{font-family:'Poppins',sans-serif}
.eyebrow{font-size:0.72rem;font-weight:700;letter-spacing:0.24em;text-transform:uppercase;color:var(--mag);display:inline-flex;align-items:center;gap:0.65rem}
.eyebrow::before{content:'';width:1.75rem;height:2px;background:var(--mag);border-radius:2px;flex-shrink:0}
.section-title{font-family:'Poppins',sans-serif;font-size:clamp(2.2rem,4.4vw,3.6rem);font-weight:700;line-height:1.08;color:var(--text);letter-spacing:-0.025em}
.section-title .accent{color:var(--mag);font-weight:700}
.accent{color:var(--mag)}
.body-text{font-size:0.95rem;line-height:1.85;color:var(--mid)}

/* ── REVEAL ANIMATIONS (progressive enhancement) ────────── */
/* Hidden states apply ONLY when JS flags the html element,
   so content is always visible without JavaScript. */
html.js-anim .reveal,
html.js-anim .reveal-left,
html.js-anim .reveal-right{opacity:0;transform:translateY(28px);transition:opacity .75s var(--ease),transform .75s var(--ease)}
html.js-anim .reveal-left{transform:translateX(-34px)}
html.js-anim .reveal-right{transform:translateX(34px)}
html.js-anim .reveal.animate-in,
html.js-anim .reveal-left.animate-in,
html.js-anim .reveal-right.animate-in{opacity:1;transform:none}
html.js-anim .stagger>*{opacity:0;transform:translateY(26px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
html.js-anim .stagger.animate-in>*{opacity:1;transform:none}
html.js-anim .stagger.animate-in>*:nth-child(1){transition-delay:.06s}
html.js-anim .stagger.animate-in>*:nth-child(2){transition-delay:.14s}
html.js-anim .stagger.animate-in>*:nth-child(3){transition-delay:.22s}
html.js-anim .stagger.animate-in>*:nth-child(4){transition-delay:.30s}
html.js-anim .stagger.animate-in>*:nth-child(5){transition-delay:.38s}
html.js-anim .stagger.animate-in>*:nth-child(6){transition-delay:.46s}
html.js-anim .stagger.animate-in>*:nth-child(7){transition-delay:.54s}
html.js-anim .stagger.animate-in>*:nth-child(8){transition-delay:.62s}
@media(prefers-reduced-motion:reduce){
  html.js-anim .reveal,html.js-anim .reveal-left,html.js-anim .reveal-right,
  html.js-anim .stagger>*{opacity:1;transform:none;transition:none}
}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}

/* ── BUTTONS ────────────────────────────────────────────── */
.btn-primary,.btn-mag{display:inline-flex;align-items:center;gap:0.55rem;background:linear-gradient(135deg,var(--mag) 0%,var(--crim) 100%);color:#fff;padding:0.95rem 2rem;border-radius:var(--r-sm);font-size:0.74rem;font-weight:700;letter-spacing:0.09em;text-transform:uppercase;border:none;cursor:pointer;box-shadow:0 4px 16px rgba(152,31,97,0.22);transition:box-shadow .25s,transform .25s var(--ease-spring),filter .25s}
.btn-primary:hover,.btn-mag:hover{transform:translateY(-2px);box-shadow:var(--shadow-mag);filter:brightness(1.06)}
.btn-primary:active,.btn-mag:active{transform:translateY(0)}
.btn-ghost{display:inline-flex;align-items:center;gap:0.55rem;background:#fff;color:var(--text);padding:0.95rem 2rem;border-radius:var(--r-sm);font-size:0.74rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;border:1.5px solid var(--border);transition:all .2s}
.btn-ghost:hover{border-color:var(--mag);color:var(--mag);box-shadow:0 4px 18px rgba(152,31,97,0.10)}
.btn-ghost-white{display:inline-flex;align-items:center;gap:0.55rem;background:transparent;color:#fff;padding:0.95rem 2rem;border-radius:var(--r-sm);font-size:0.74rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;border:1.5px solid rgba(255,255,255,0.35);transition:all .2s}
.btn-ghost-white:hover{background:rgba(255,255,255,0.10);border-color:rgba(255,255,255,0.65)}
.btn-white{display:inline-flex;align-items:center;gap:0.55rem;background:#fff;color:var(--mag);padding:0.95rem 2rem;border-radius:var(--r-sm);font-size:0.74rem;font-weight:700;letter-spacing:0.09em;text-transform:uppercase;border:none;cursor:pointer;box-shadow:0 6px 20px rgba(10,11,26,0.18);transition:transform .25s var(--ease-spring),box-shadow .25s}
.btn-white:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(10,11,26,0.25)}
.btn-outline{display:inline-flex;align-items:center;gap:0.5rem;color:var(--mag);font-size:0.74rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;border:1.5px solid var(--mag-line);padding:0.9rem 1.9rem;border-radius:var(--r-sm);transition:all .2s;white-space:nowrap}
.btn-outline:hover{background:var(--mag-light);border-color:var(--mag)}

/* ── NAV ────────────────────────────────────────────────── */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:0 3rem;height:var(--nav-h);background:rgba(255,255,255,0.88);backdrop-filter:blur(22px) saturate(1.4);-webkit-backdrop-filter:blur(22px) saturate(1.4);border-bottom:1px solid rgba(231,228,240,0.7);transition:box-shadow .3s,background .3s}
nav.scrolled{background:rgba(255,255,255,0.96);box-shadow:0 2px 30px rgba(15,16,36,0.08)}
.nav-logo{display:flex;align-items:center;gap:0.7rem;flex-shrink:0}
.nav-logo img{height:48px!important;width:auto}
.nav-logo-text{font-family:'Poppins',sans-serif;font-size:1.25rem;font-weight:700;color:var(--text);letter-spacing:-0.02em}
.nav-logo-text span{color:var(--mag)}
.nav-links{display:flex;gap:0;list-style:none;height:var(--nav-h)}
.nav-item{position:relative;height:100%;display:flex;align-items:center}
.nav-item>a{position:relative;font-size:0.88rem;font-weight:500;letter-spacing:0.01em;color:var(--text-light);padding:0 1.1rem;height:100%;display:flex;align-items:center;gap:0.35rem;transition:color .2s}
.nav-item>a:hover{color:var(--text)}
.nav-item>a::after{content:'';position:absolute;bottom:0;left:1.1rem;right:1.1rem;height:2.5px;background:var(--mag);border-radius:3px 3px 0 0;transform:scaleX(0);transform-origin:center;transition:transform .25s var(--ease)}
.nav-item>a.active{color:var(--text);font-weight:600}
.nav-item>a.active::after,.nav-item:hover>a::after{transform:scaleX(1)}
.chevron{font-size:0.45rem;transition:transform .25s;margin-top:1px;opacity:.55}
.nav-item:hover>a .chevron{transform:rotate(180deg)}

/* Dropdown — opens instantly, no vertical motion, invisible hover-bridge keeps it open */
.dropdown{position:absolute;top:100%;left:0;margin-top:10px;background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:0.5rem;min-width:380px;opacity:0;visibility:hidden;transition:opacity .16s ease,visibility .16s ease;box-shadow:0 6px 20px rgba(15,16,36,0.06),0 30px 70px rgba(15,16,36,0.16);pointer-events:none}
/* bridge spans the 10px gap so the cursor never leaves the hover zone */
.dropdown::before{content:'';position:absolute;top:-12px;left:0;right:0;height:12px}
.nav-item:hover .dropdown,.nav-item:focus-within .dropdown{opacity:1;visibility:visible;pointer-events:auto}
.dd-item{display:flex;align-items:center;gap:1rem;padding:0.8rem 1rem;border-radius:var(--r-sm);transition:background .15s;color:var(--text)}
.dd-item:hover{background:var(--off)}
.dd-logo{width:150px;height:52px;display:flex;align-items:center;flex-shrink:0;background:#F8F7FC;border-radius:var(--r-sm);padding:8px 12px;border:1px solid var(--border)}
.dd-logo img{max-height:36px;width:auto;max-width:130px;object-fit:contain}
.dd-text{flex:1}
.dd-title{font-size:0.84rem;font-weight:600;color:var(--text);margin-bottom:0.15rem}
.dd-desc{font-size:0.73rem;color:var(--mid);line-height:1.4}
.dd-tag{font-size:0.58rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--mag);background:var(--mag-light);border:1px solid var(--mag-line);padding:0.2rem 0.5rem;border-radius:4px;white-space:nowrap;flex-shrink:0}
.dd-arrow{color:var(--mag);font-size:0.85rem;flex-shrink:0;transition:all .2s;opacity:0;transform:translateX(-4px)}
.dd-item:hover .dd-arrow{opacity:1;transform:translateX(0)}
.dd-divider{height:1px;background:var(--border);margin:0.2rem 0.5rem}
.dd-section-label{font-size:0.58rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--mag);padding:0.6rem 1rem 0.35rem;display:block}
.nav-right{display:flex;align-items:center;gap:0.75rem;flex-shrink:0}
.nav-cta{background:linear-gradient(135deg,var(--mag),var(--crim));color:#fff!important;padding:0.72rem 1.6rem;border-radius:var(--r-sm);font-size:0.76rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;white-space:nowrap;box-shadow:0 3px 14px rgba(152,31,97,0.24);transition:box-shadow .25s,transform .25s var(--ease-spring)}
.nav-cta:hover{transform:translateY(-1px);box-shadow:var(--shadow-mag)}

/* Services mega dropdown */
.svc-mega-dd{display:grid!important;grid-template-columns:repeat(3,1fr);min-width:860px!important;padding:1.25rem 0.5rem 1rem}
.svc-dd-group{padding:0.4rem 1rem 0.9rem;border-right:1px solid var(--border);display:flex;flex-direction:column}
.svc-dd-group:nth-child(3n){border-right:none}
.svc-dd-group:nth-child(n+4){border-top:1px solid var(--border);padding-top:1rem;margin-top:0.25rem}
.svc-mega-dd .dd-item{padding:0.4rem 0.75rem;border-radius:6px}
.svc-mega-dd .dd-title{font-size:0.82rem;font-weight:500}
.svc-mega-dd .dd-section-label{padding:0.25rem 0.75rem 0.55rem}
.nav-item:has(.svc-mega-dd) .svc-mega-dd{left:-200px}

/* Hamburger */
.hamburger{display:none;flex-direction:column;justify-content:center;gap:6px;width:48px;height:48px;cursor:pointer;border:none;background:none;padding:6px}
.hamburger span{display:block;height:2px;width:100%;background:var(--text);border-radius:2px;transition:all .3s}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* Mobile menu */
.mobile-menu{position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;background:#fff;z-index:999;overflow-y:auto;transform:translateX(100%);transition:transform .4s var(--ease);padding:2rem 1.5rem}
.mobile-menu.open{transform:none}
.mobile-nav-link{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid var(--border);font-size:1.05rem;font-weight:600;color:var(--text);cursor:pointer}
.mobile-subnav{padding:0.5rem 0 0.5rem 1rem;display:none}
.mobile-subnav.open{display:block}
.mobile-subnav a{display:block;padding:0.6rem 0;font-size:0.9rem;color:var(--mid)}
.mobile-cta-wrap{margin-top:2rem}

/* ── HERO ───────────────────────────────────────────────── */
.hero{position:relative;min-height:100vh;padding-top:var(--nav-h);overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse 60% 80% at 78% 30%,rgba(152,31,97,0.06) 0%,transparent 60%),linear-gradient(160deg,#ffffff 0%,#FBFAFE 50%,#F6EEF4 100%)}
.hero-canvas{position:absolute;inset:0;z-index:0;width:100%;height:100%;display:block}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(to right,rgba(255,255,255,0.62) 0%,rgba(255,255,255,0.28) 40%,rgba(255,255,255,0) 68%,transparent 100%);pointer-events:none}
.hero-inner{position:relative;z-index:2;width:100%;max-width:1320px;margin:0 auto;padding:4rem 3rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.hero-left{max-width:600px}
.hero-logo{height:60px;width:auto;max-width:300px;display:block;margin-bottom:1.5rem}
@media(max-width:640px){.hero-logo{height:44px;margin-bottom:1rem}}
.hero-eyebrow{display:inline-flex;align-items:center;gap:0.7rem;font-size:0.66rem;font-weight:700;letter-spacing:0.26em;text-transform:uppercase;color:var(--mag);margin-bottom:2rem;background:rgba(152,31,97,0.06);border:1px solid var(--mag-line);padding:0.45rem 1rem 0.45rem 0.8rem;border-radius:var(--r-pill)}
.hero-eyebrow::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--mag);flex-shrink:0}
.hero-headline{font-family:'Poppins',sans-serif;font-size:clamp(3.4rem,7vw,6.2rem);font-weight:700;line-height:0.98;letter-spacing:-0.035em;margin-bottom:1.6rem;color:var(--ink)}
.hero-headline .italic{font-weight:400;color:rgba(15,16,36,0.72)}
.hero-headline .accent{color:var(--mag);display:block}
.hero-sub{font-size:1.02rem;line-height:1.85;color:rgba(15,16,36,0.66);max-width:480px;margin-bottom:2.6rem;font-weight:400}
.hero-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.hero-stats{display:flex;gap:2.75rem;margin-top:3.25rem;flex-wrap:wrap}
.hero-stat{display:flex;flex-direction:column;gap:0.3rem}
.hero-stat-num{font-size:1.9rem;font-weight:700;letter-spacing:-0.03em;color:var(--ink);line-height:1}
.hero-stat-num span{color:var(--mag)}
.hero-stat-label{font-size:0.72rem;color:var(--mid);font-weight:500;letter-spacing:0.02em}

/* Hero dropdown */
.hero-dd-wrap{position:relative}
.hero-dd-btn{background:#fff;color:var(--ink);padding:0.95rem 1.5rem;border-radius:var(--r-sm);font-size:0.74rem;font-weight:600;letter-spacing:0.07em;text-transform:uppercase;display:flex;align-items:center;gap:0.55rem;cursor:pointer;border:1.5px solid var(--border);font-family:'Poppins',sans-serif;box-shadow:var(--shadow-sm);transition:all .2s}
.hero-dd-btn:hover{border-color:var(--mag-line);box-shadow:0 6px 22px rgba(152,31,97,0.12)}
.hchev{font-size:0.5rem;transition:transform .25s;opacity:.55}
.hero-dd-wrap:hover .hchev{transform:rotate(180deg)}
.hero-dropdown{position:absolute;top:calc(100% + 10px);left:0;background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:0.5rem;min-width:320px;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .25s var(--ease);box-shadow:0 6px 20px rgba(15,16,36,0.07),0 30px 70px rgba(15,16,36,0.2);z-index:10;pointer-events:none}
.hero-dd-wrap:hover .hero-dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.hdd-item{display:flex;align-items:center;gap:0.85rem;padding:0.85rem;border-radius:var(--r-sm);transition:background .15s;color:var(--text)}
.hdd-item:hover{background:var(--off)}
.hdd-logo{width:120px;height:40px;display:flex;align-items:center;flex-shrink:0;background:#F8F7FC;border-radius:var(--r-sm);padding:6px 10px;border:1px solid var(--border)}
.hdd-logo img{max-height:28px;width:auto;max-width:110px;object-fit:contain}
.hdd-title{font-size:0.84rem;font-weight:600;color:var(--text)}
.hdd-desc{font-size:0.72rem;color:var(--mid)}
.hdd-arrow{color:var(--mag);margin-left:auto;font-size:0.85rem;transition:transform .2s}
.hdd-item:hover .hdd-arrow{transform:translateX(3px)}
.hdd-divider{height:1px;background:var(--border);margin:0.15rem 0.5rem}

/* ── TICKER ─────────────────────────────────────────────── */
.ticker{background:var(--ink);padding:0;overflow:hidden;position:relative;height:92px;display:flex;align-items:center}
.ticker::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(152,31,97,0.55),transparent);z-index:1}
.ticker-track{display:flex;gap:0;white-space:nowrap;animation:ticker 46s linear infinite}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker-track:hover{animation-play-state:paused}
.ticker-item{display:inline-flex;align-items:center;gap:1.1rem;padding:0 3.2rem;font-size:0.9rem;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;color:rgba(255,255,255,0.82);border-right:1px solid rgba(255,255,255,0.08)}
.ticker-item strong{color:#fff;font-weight:700}
.ticker-dot{width:3px;height:3px;border-radius:50%;background:var(--mag);flex-shrink:0}
.ticker-logo-chip{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:var(--r-sm);padding:6px 14px;height:48px;flex-shrink:0;box-shadow:0 2px 10px rgba(0,0,0,0.3)}
.ticker-logo-chip img,.ticker-logo{height:32px;width:auto;max-width:110px;object-fit:contain;display:block}
@media(max-width:767px){
  .ticker{height:76px}
  .ticker-item{padding:0 1.5rem;font-size:0.78rem}
  .ticker-logo-chip{height:42px;padding:5px 10px}
  .ticker-logo-chip img,.ticker-logo{height:26px;max-width:88px}
}

/* ── TRUST LOGOS ────────────────────────────────────────── */
.trust-section{padding:4.5rem 3rem;background:var(--white);border-bottom:1px solid var(--border)}
.trust-inner{max-width:880px;margin:0 auto}
.trust-label{font-size:0.7rem;font-weight:700;letter-spacing:0.26em;text-transform:uppercase;color:var(--mid);text-align:center;margin-bottom:2.5rem}
.trust-logos{display:flex;align-items:center;justify-content:center;gap:6rem;flex-wrap:wrap}
.trust-logo{display:flex;justify-content:center;filter:grayscale(1) opacity(0.55);transition:filter .35s}
.trust-logo:hover{filter:none}
.trust-logo img{height:76px;width:auto;max-width:200px;object-fit:contain}

/* ── SECTION SHELL ──────────────────────────────────────── */
.section{padding:7.5rem 3rem}
.section-inner{max-width:1280px;margin:0 auto}
.section-header{margin-bottom:4rem}
.section-header .eyebrow{margin-bottom:1.1rem}
.section-header .body-text{max-width:560px;margin-top:1.25rem}

/* ── COMPANIES (homepage) ───────────────────────────────── */
.companies-section{background:var(--off);position:relative}
.companies-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}
.company-card{background:#fff;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:box-shadow .35s var(--ease),transform .35s var(--ease),border-color .35s;display:flex;flex-direction:column;position:relative}
.company-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--mag),var(--crim));transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.company-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-7px);border-color:rgba(152,31,97,0.22)}
.company-card:hover::after{transform:scaleX(1)}
.co-logo-head{padding:2.4rem 2.2rem 1.2rem;display:flex;align-items:center}
.co-logo-head img{max-height:42px;width:auto;max-width:190px;object-fit:contain}
.co-body{padding:0.4rem 2.2rem 2.2rem;display:flex;flex-direction:column;flex:1}
.co-hero{height:200px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:1.5rem}
.co-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.co-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,11,26,0.72) 0%,transparent 60%)}
.co-logo-pill{position:relative;z-index:1;background:#fff;border-radius:var(--r-sm);padding:6px 12px;display:flex;align-items:center;height:40px}
.co-logo-pill img{max-height:26px;width:auto;max-width:120px;object-fit:contain}
.co-tag{display:inline-block;font-size:0.6rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mag);background:var(--mag-light);border:1px solid var(--mag-line);padding:0.28rem 0.7rem;border-radius:var(--r-pill);margin-bottom:1rem;width:fit-content}
.co-name{font-family:'Poppins',sans-serif;font-size:1.18rem;font-weight:600;color:var(--text);margin-bottom:0.7rem;line-height:1.3}
.co-desc{font-size:0.85rem;line-height:1.8;color:var(--mid);margin-bottom:1.5rem}
.co-list{margin-bottom:1.5rem}
.co-list li{font-size:0.8rem;color:var(--mid);padding:0.45rem 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:0.6rem}
.co-list li::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--mag);flex-shrink:0}
.co-list li:last-child{border-bottom:none}
.co-footer{display:flex;gap:0.75rem;margin-top:auto}
.co-learn{display:inline-flex;align-items:center;justify-content:center;gap:0.4rem;font-size:0.72rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;color:var(--mag);border:1.5px solid var(--mag-line);padding:0.7rem 1.1rem;border-radius:var(--r-sm);transition:all .2s;flex:1}
.co-learn:hover{background:var(--mag);color:#fff;border-color:var(--mag);box-shadow:0 6px 18px rgba(152,31,97,0.28)}
.co-contact{display:inline-flex;align-items:center;justify-content:center;font-size:0.72rem;font-weight:600;letter-spacing:0.07em;text-transform:uppercase;background:var(--off);color:var(--text-light);padding:0.7rem 1.1rem;border-radius:var(--r-sm);border:1.5px solid var(--border);transition:all .2s;flex:1}
.co-contact:hover{border-color:var(--mid);color:var(--text)}

/* ── SERVICES (homepage) ────────────────────────────────── */
.services-section{background:#fff;padding:7.5rem 0}
.services-head{text-align:center;padding:0 3rem;margin-bottom:4rem}
.services-head .eyebrow{margin-bottom:1.1rem}
.services-head .eyebrow::before{display:none}
.services-head .section-title{max-width:640px;margin:0 auto}
.services-head .body-text{max-width:560px;margin:1.25rem auto 0}
.services-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem;padding:0 3rem;max-width:1340px;margin:0 auto}
.svc-card{border-radius:var(--r-lg);overflow:hidden;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-sm);position:relative;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s;display:flex;flex-direction:column}
.svc-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--mag),var(--crim));transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease);z-index:2}
.svc-card:hover{transform:translateY(-7px);box-shadow:var(--shadow-hover);border-color:rgba(152,31,97,0.22)}
.svc-card:hover::before{transform:scaleX(1)}
.svc-img{height:200px;position:relative;overflow:hidden}
.svc-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.svc-card:hover .svc-img img{transform:scale(1.06)}
.svc-img-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,11,26,0.04) 0%,rgba(10,11,26,0.42) 100%)}
.svc-num-badge{position:absolute;bottom:1rem;left:1.2rem;font-family:'Poppins',sans-serif;font-size:0.66rem;font-weight:700;color:#fff;background:rgba(15,16,36,0.5);border:1px solid rgba(255,255,255,0.25);padding:0.3rem 0.8rem;border-radius:var(--r-pill);letter-spacing:0.12em;text-transform:uppercase;backdrop-filter:blur(8px)}
.svc-body{padding:1.9rem 2.1rem 2.2rem;display:flex;flex-direction:column;flex:1}
.svc-icon{width:46px;height:46px;border-radius:var(--r);background:var(--mag-light);border:1px solid var(--mag-line);display:flex;align-items:center;justify-content:center;margin-bottom:1.15rem;color:var(--mag)}
.svc-icon svg{stroke:var(--mag)}
.svc-name{font-family:'Poppins',sans-serif;font-size:1.12rem;font-weight:600;color:var(--text);margin-bottom:0.65rem;line-height:1.3}
.svc-desc{font-size:0.84rem;line-height:1.8;color:var(--mid);margin-bottom:1.4rem;flex:1}
.svc-link{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.71rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--mag);transition:gap .2s}
.svc-card:hover .svc-link{gap:0.7rem}
.services-cta{text-align:center;padding:3.5rem 3rem 0}

/* ── INDUSTRIES (homepage) ──────────────────────────────── */
.industries-section{background:var(--off);padding:7.5rem 3rem}
.industries-inner{max-width:1280px;margin:0 auto}
.industries-header{margin-bottom:4rem}
.industries-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.industry-item{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:var(--white);box-shadow:var(--shadow-sm);transition:box-shadow .3s var(--ease),transform .3s var(--ease),border-color .3s}
.industry-item:hover{box-shadow:var(--shadow-card);transform:translateY(-4px);border-color:rgba(152,31,97,0.2)}
.industry-img-wrap{overflow:hidden;height:150px}
.industry-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.industry-item:hover .industry-img-wrap img{transform:scale(1.05)}
.industry-body{padding:1.4rem 1.6rem 1.6rem}
.industry-name{font-family:'Poppins',sans-serif;font-size:1.02rem;font-weight:600;color:var(--text);margin-bottom:0.5rem}
.industry-desc{font-size:0.78rem;line-height:1.7;color:var(--mid)}
.industry-link{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.68rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--mag);margin-top:1rem;transition:gap .2s}
.industry-item:hover .industry-link{gap:0.65rem}

/* ── BLOG ───────────────────────────────────────────────── */
.blog-section{background:#fff}
.blog-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:3.5rem;flex-wrap:wrap;gap:1.5rem}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}
.blog-card{display:flex;flex-direction:column;background:#fff;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:box-shadow .3s,transform .3s var(--ease),border-color .3s}
.blog-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-6px);border-color:rgba(152,31,97,0.2)}
.blog-thumb{position:relative;height:215px;overflow:hidden;flex-shrink:0}
.blog-thumb-fallback{position:absolute;inset:0}
.blog-thumb img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .5s var(--ease)}
.blog-card:hover .blog-thumb img{transform:scale(1.05)}
.blog-cat{position:absolute;top:1rem;left:1rem;z-index:2;background:rgba(15,16,36,0.55);color:#fff;font-size:0.58rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;padding:0.32rem 0.75rem;border-radius:var(--r-pill);border:1px solid rgba(255,255,255,0.22);backdrop-filter:blur(8px)}
.blog-body{padding:1.75rem;display:flex;flex-direction:column;flex:1}
.blog-meta{font-size:0.68rem;color:var(--mid);margin-bottom:0.65rem;letter-spacing:0.02em}
.blog-title{font-family:'Poppins',sans-serif;font-size:1rem;font-weight:600;color:var(--text);line-height:1.42;margin-bottom:0.7rem}
.blog-excerpt{font-size:0.82rem;line-height:1.75;color:var(--mid);margin-bottom:1.2rem;flex:1}
.blog-link{font-size:0.68rem;font-weight:700;letter-spacing:0.09em;text-transform:uppercase;color:var(--mag);display:inline-flex;align-items:center;gap:0.4rem;transition:gap .2s}
.blog-card:hover .blog-link{gap:0.7rem}

/* ── CONTACT ────────────────────────────────────────────── */
.contact-section{background:var(--off);padding:7.5rem 3rem}
.contact-inner{max-width:1280px;margin:0 auto}
.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:5rem;align-items:start}
.contact-left .section-title{margin-bottom:1rem}
.contact-lines{display:flex;flex-direction:column}
.contact-line{display:flex;align-items:center;gap:1.2rem;padding:1.1rem 0;border-bottom:1px solid var(--border)}
.contact-line:first-child{border-top:1px solid var(--border)}
.contact-type{font-size:0.64rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mid);width:64px;flex-shrink:0}
.contact-val{font-size:0.9rem;color:var(--text);font-weight:500;transition:color .2s}
.contact-val:hover{color:var(--mag)}
.addr-box{margin-top:2rem;padding:1.6rem;background:#fff;border-radius:var(--r);border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.addr-label{font-size:0.64rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mag);margin-bottom:0.75rem}
.addr-text{font-size:0.87rem;line-height:1.8;color:var(--mid)}
.contact-form-wrap{background:#fff;border-radius:var(--r-lg);padding:2.5rem;border:1px solid var(--border);box-shadow:var(--shadow-card)}

/* Forms */
.form-grid{display:grid;gap:1.2rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.form-group{display:flex;flex-direction:column;gap:0.45rem}
.form-label{font-size:0.68rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-light)}
.form-input,.form-select{width:100%;padding:0.85rem 1rem;border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:'Poppins',sans-serif;font-size:0.88rem;color:var(--text);background:#fff;transition:border-color .2s,box-shadow .2s;appearance:none;-webkit-appearance:none}
.form-input:focus,.form-select:focus{outline:none;border-color:var(--mag);box-shadow:0 0 0 3px rgba(152,31,97,0.1)}
.form-input::placeholder{color:#B2AFC2}
.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2366627C' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}
.form-submit{width:100%;padding:1rem;background:linear-gradient(135deg,var(--mag),var(--crim));color:#fff;border:none;border-radius:var(--r-sm);cursor:pointer;font-family:'Poppins',sans-serif;font-size:0.74rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;box-shadow:0 4px 16px rgba(152,31,97,0.22);transition:box-shadow .25s,transform .25s var(--ease-spring);margin-top:0.5rem}
.form-submit:hover{transform:translateY(-2px);box-shadow:var(--shadow-mag)}
.form-submit:active{transform:translateY(0)}

/* ── FOOTER ─────────────────────────────────────────────── */
footer{background:var(--ink);padding:5rem 3rem 3rem;position:relative}
footer::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(152,31,97,0.55),transparent)}
.footer-inner{max-width:1280px;margin:0 auto}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:4rem;margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,0.08)}
.footer-brand .f-logo{display:inline-flex;align-items:center;background:#fff;padding:10px 16px;border-radius:10px;margin-bottom:1.5rem}
.footer-brand .f-logo img{height:36px;width:auto}
.footer-tagline{font-family:'Poppins',sans-serif;font-size:1.02rem;color:rgba(255,255,255,0.55);line-height:1.6;margin-bottom:1.5rem;font-weight:300}
.footer-contact-mini{display:flex;flex-direction:column;gap:0.5rem}
.footer-contact-mini a{font-size:0.8rem;color:rgba(255,255,255,0.42);transition:color .2s}
.footer-contact-mini a:hover{color:#fff}
.footer-col-label{font-size:0.62rem;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:rgba(255,255,255,0.38);margin-bottom:1.2rem}
.footer-col a{display:block;font-size:0.82rem;color:rgba(255,255,255,0.55);padding:0.32rem 0;transition:color .2s,transform .2s}
.footer-col a:hover{color:#fff;transform:translateX(3px)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.f-copy{font-size:0.72rem;color:rgba(255,255,255,0.32)}
.f-tag{font-size:0.72rem;color:rgba(255,255,255,0.28)}

/* ── COOKIE BANNER ──────────────────────────────────────── */
#cookie-banner{display:none;position:fixed;bottom:0;left:0;right:0;z-index:9998;background:rgba(255,255,255,0.97);backdrop-filter:blur(14px);border-top:1px solid var(--border);padding:1.1rem 2rem;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;box-shadow:0 -6px 30px rgba(15,16,36,0.1)}
#cookie-banner p{margin:0;font-size:0.82rem;color:var(--text);max-width:700px;line-height:1.6}
#cookie-banner a{color:var(--mag);text-decoration:underline}
.cookie-btns{display:flex;gap:0.6rem;flex-shrink:0}
.cookie-btn-accept{background:var(--ink);color:#fff;border:none;padding:0.55rem 1.4rem;border-radius:var(--r-sm);font-size:0.8rem;cursor:pointer;font-family:'Poppins',sans-serif;font-weight:600;transition:opacity .2s}
.cookie-btn-accept:hover{opacity:0.85}
.cookie-btn-decline{background:transparent;color:var(--mid);border:1.5px solid var(--border);padding:0.55rem 1.4rem;border-radius:var(--r-sm);font-size:0.8rem;cursor:pointer;font-family:'Poppins',sans-serif;transition:border-color .2s,color .2s}
.cookie-btn-decline:hover{border-color:var(--mid);color:var(--text)}

/* ── CONTACT MODAL ──────────────────────────────────────── */
.modal-overlay{position:fixed;inset:0;z-index:9999;background:rgba(10,11,26,0.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:1.5rem;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s}
.modal-overlay.open{opacity:1;visibility:visible}
.modal-card{background:#fff;border-radius:var(--r-lg);padding:2.5rem 2.5rem 2rem;max-width:580px;width:100%;position:relative;max-height:90vh;overflow-y:auto;transform:scale(0.95) translateY(24px);transition:transform .35s var(--ease);box-shadow:0 40px 110px rgba(10,11,26,0.4);border:1px solid rgba(15,16,36,0.06)}
.modal-overlay.open .modal-card{transform:scale(1) translateY(0)}
.modal-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;border-radius:50%;background:var(--off);border:1px solid rgba(15,16,36,0.06);cursor:pointer;font-size:1.2rem;color:var(--mid);display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s,transform .2s;line-height:1}
.modal-close:hover{background:var(--mag);color:#fff;transform:rotate(90deg)}
.modal-eyebrow{font-size:0.64rem;font-weight:700;letter-spacing:0.25em;text-transform:uppercase;color:var(--mag);display:block;margin-bottom:0.75rem}
.modal-title{font-family:'Poppins',sans-serif;font-size:2rem;font-weight:700;color:var(--text);margin-bottom:0.4rem;line-height:1.12;letter-spacing:-0.02em}
.modal-title em,.modal-title span{color:var(--mag);font-style:normal}
.modal-sub{color:var(--mid);font-size:0.88rem;margin-bottom:1.5rem}
/* Native MailerLite enquiry form (shared part) sits inline in the modal/homepage */
#contact-modal .bg-ml-form{width:100%!important}
@media(max-width:560px){
  #contact-modal .modal-card{padding:1.75rem 1.25rem 1.25rem}
}

/* ── PAGE HERO (inner pages) ────────────────────────────── */
.page-hero{background:var(--white);color:var(--text);padding:0;position:relative;overflow:hidden;border-bottom:1px solid var(--border)}
.page-hero::before{content:'';position:absolute;inset:0 45% 0 0;background-image:linear-gradient(rgba(152,31,97,0.035) 1px,transparent 1px),linear-gradient(90deg,rgba(152,31,97,0.035) 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(ellipse 82% 75% at 22% 45%,#000 18%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 82% 75% at 22% 45%,#000 18%,transparent 80%);pointer-events:none}
.page-hero-inner{max-width:none;margin:0;position:relative;z-index:1;display:grid;grid-template-columns:1.05fr 0.95fr;gap:0;align-items:stretch;min-height:460px}
.page-hero-text{display:flex;flex-direction:column;justify-content:center;padding:calc(var(--nav-h) + 2.75rem) 3.5rem 3rem max(3rem,calc((100vw - 1240px)/2))}
.page-hero-label{font-size:0.63rem;font-weight:700;letter-spacing:0.26em;text-transform:uppercase;color:var(--mag);margin-bottom:1.5rem;display:inline-flex;align-items:center;gap:0.55rem;background:rgba(152,31,97,0.06);border:1px solid var(--mag-line);padding:0.4rem 0.95rem 0.4rem 0.72rem;border-radius:var(--r-pill)}
.page-hero-label::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--mag);flex-shrink:0}
.page-hero h1{font-family:'Poppins',sans-serif;font-size:clamp(2.4rem,5vw,4.2rem);font-weight:700;line-height:1.05;letter-spacing:-0.03em;color:var(--text);margin-bottom:1.25rem}
.page-hero h1 span,.page-hero h1 .accent{background:linear-gradient(120deg,var(--mag) 8%,#c42d7e 92%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.page-hero-sub{font-size:1rem;line-height:1.85;color:var(--mid);max-width:520px;font-weight:400}
.page-hero-cta{margin-top:2.25rem;display:flex;gap:0.875rem;flex-wrap:wrap;align-items:center}
.page-hero-visual{position:relative;overflow:hidden;background:var(--off);min-height:460px}
.page-hero-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.page-hero-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,var(--white) 0%,rgba(255,255,255,0.06) 26%,transparent 46%);pointer-events:none}

/* Page-hero visual: stat chips */
.ph-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.875rem}
.ph-stat{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:1.3rem 1.5rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s,border-color .2s,transform .25s var(--ease)}
.ph-stat:hover{box-shadow:0 6px 24px rgba(152,31,97,0.12);border-color:var(--mag-line);transform:translateY(-2px)}
.ph-stat-num{font-size:2rem;font-weight:700;letter-spacing:-0.03em;color:var(--text);line-height:1;margin-bottom:0.35rem}
.ph-stat-num .ph-accent{color:var(--mag)}
.ph-stat-label{font-size:0.73rem;color:var(--mid);line-height:1.5}
.ph-stat-icon{width:34px;height:34px;border-radius:var(--r-sm);background:var(--mag-light);display:grid;place-items:center;color:var(--mag);margin-bottom:0.75rem}
.ph-stat-featured{grid-column:1/-1;background:linear-gradient(135deg,var(--mag) 0%,var(--mag-deep) 100%);border-color:transparent;color:#fff;display:flex;align-items:center;gap:1rem;box-shadow:var(--shadow-mag)}
.ph-stat-featured .ph-stat-num{color:#fff}
.ph-stat-featured .ph-stat-label{color:rgba(255,255,255,0.75)}
.ph-stat-featured .ph-stat-icon{background:rgba(255,255,255,0.16);color:#fff}

/* Page-hero visual: chips / rows / company stack */
.ph-chips{display:flex;flex-wrap:wrap;gap:0.55rem}
.ph-chip{display:inline-flex;align-items:center;gap:0.45rem;padding:0.5rem 0.9rem;border-radius:var(--r-pill);font-size:0.72rem;font-weight:600;background:#fff;border:1px solid var(--border);color:var(--text-light);box-shadow:var(--shadow-sm)}
.ph-chip svg{flex-shrink:0;color:var(--mag)}
.ph-chip-accent{background:rgba(152,31,97,0.07);border-color:var(--mag-line);color:var(--mag)}
.ph-visual-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:1.75rem;box-shadow:var(--shadow-card)}
.ph-visual-card-head{font-size:0.62rem;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--mid);margin-bottom:1.25rem;padding-bottom:0.75rem;border-bottom:1px solid var(--border)}
.ph-row{display:flex;align-items:center;gap:0.75rem;padding:0.6rem 0;border-bottom:1px solid var(--border)}
.ph-row:last-child{border-bottom:none;padding-bottom:0}
.ph-row-icon{width:30px;height:30px;border-radius:8px;flex-shrink:0;background:var(--mag-light);display:grid;place-items:center;color:var(--mag)}
.ph-row-label{font-size:0.8rem;font-weight:600;color:var(--text);flex:1}
.ph-row-tag{font-size:0.6rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--mag);background:var(--mag-light);border:1px solid var(--mag-line);padding:0.2rem 0.55rem;border-radius:var(--r-pill)}
.ph-row-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.ph-row-dot-green{background:#2ECC71;box-shadow:0 0 0 3px rgba(46,204,113,0.2)}
.ph-row-dot-amber{background:#F39C12;box-shadow:0 0 0 3px rgba(243,156,18,0.2)}
.ph-co-stack{display:flex;flex-direction:column;gap:0.75rem}
.ph-co-chip{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:0.95rem 1.15rem;display:flex;align-items:center;gap:0.9rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s,border-color .2s,transform .25s var(--ease)}
.ph-co-chip:hover{box-shadow:0 6px 22px rgba(152,31,97,0.12);border-color:var(--mag-line);transform:translateY(-2px)}
.ph-co-chip img{height:26px;width:auto;object-fit:contain;max-width:110px}
.ph-co-chip-desc{font-size:0.72rem;color:var(--mid);line-height:1.4}
.ph-co-chip-name{font-size:0.82rem;font-weight:700;color:var(--text);margin-bottom:0.15rem}
.ph-co-chip-badge{margin-left:auto;flex-shrink:0;font-size:0.58rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--mag);background:var(--mag-light);border:1px solid var(--mag-line);padding:0.2rem 0.5rem;border-radius:var(--r-pill)}

/* Breadcrumb */
.breadcrumb{padding:1rem 3rem;background:var(--off);border-bottom:1px solid var(--border);font-size:0.75rem;color:var(--mid);display:flex;align-items:center;gap:0.5rem}
.breadcrumb a{color:var(--mid);transition:color .2s}
.breadcrumb a:hover{color:var(--mag)}
.breadcrumb strong{color:var(--text)}

/* ── ABOUT PAGE ─────────────────────────────────────────── */
.intro-section{max-width:1280px;margin:0 auto;padding:6.5rem 3rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.intro-accent{width:3rem;height:3px;background:var(--mag);margin-bottom:1.5rem;border-radius:2px}
.label{font-size:0.66rem;font-weight:700;letter-spacing:0.26em;text-transform:uppercase;color:var(--mag);display:block;margin-bottom:1rem}
.big-title{font-family:'Poppins',sans-serif;font-size:clamp(2rem,3.6vw,3.2rem);font-weight:700;line-height:1.1;color:var(--text);letter-spacing:-0.025em;margin-bottom:1.25rem}
.big-title .accent{color:var(--mag)}
.intro-img img{border-radius:var(--r-lg);width:100%;object-fit:cover;box-shadow:var(--shadow-card)}
.stats-band{background:var(--ink);padding:5.5rem 3rem;position:relative;overflow:hidden}
.stats-band::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 90% at 80% 10%,rgba(152,31,97,0.14) 0%,transparent 60%);pointer-events:none}
.stats-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;position:relative}
.stat-item{text-align:center;padding:2.4rem 2rem;border:1px solid rgba(255,255,255,0.09);border-radius:var(--r-lg);background:rgba(255,255,255,0.03);transition:border-color .3s,background .3s}
.stat-item:hover{border-color:rgba(152,31,97,0.45);background:rgba(152,31,97,0.06)}
.stat-num{font-family:'Poppins',sans-serif;font-size:3.2rem;font-weight:700;color:#fff;line-height:1;letter-spacing:-0.03em}
.stat-num span{color:#D66FA8;font-size:2rem}
.stat-label{font-size:0.78rem;color:rgba(255,255,255,0.55);margin-top:0.75rem;line-height:1.5}
.values-section{padding:6.5rem 3rem;background:var(--off)}
.values-inner{max-width:1280px;margin:0 auto}
.values-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-bottom:4rem}
.values-img img{border-radius:var(--r-lg);width:100%;object-fit:cover;box-shadow:var(--shadow-card)}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.value-card{background:#fff;border-radius:var(--r-lg);padding:2.2rem;border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:box-shadow .3s,transform .3s var(--ease),border-color .3s}
.value-card:hover{box-shadow:var(--shadow-card);transform:translateY(-4px);border-color:var(--mag-line)}
.value-num{font-size:0.62rem;font-weight:700;letter-spacing:0.2em;color:var(--mag);margin-bottom:0.75rem}
.value-title{font-size:1.05rem;font-weight:600;color:var(--text);margin-bottom:0.6rem}
.value-desc{font-size:0.82rem;line-height:1.75;color:var(--mid)}
.entities-section{padding:6.5rem 3rem;background:#fff}
.entities-inner{max-width:1280px;margin:0 auto}
.entities-header{margin-bottom:3.5rem}
.entities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}
.entity-card{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .3s,transform .3s var(--ease)}
.entity-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-5px)}
.entity-img img{width:100%;height:220px;object-fit:cover}
.entity-body{padding:2rem}
.entity-tag{font-size:0.6rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mag);background:var(--mag-light);border:1px solid var(--mag-line);padding:0.28rem 0.7rem;border-radius:var(--r-pill);display:inline-block;margin-bottom:1rem}
.entity-name{font-size:1.15rem;font-weight:600;color:var(--text);margin-bottom:0.6rem}
.entity-desc{font-size:0.84rem;line-height:1.75;color:var(--mid);margin-bottom:1rem}
.entity-products{margin-bottom:1.5rem}
.entity-products li{font-size:0.78rem;color:var(--mid);padding:0.35rem 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:0.5rem}
.entity-products li::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--mag);flex-shrink:0}
.entity-products li:last-child{border-bottom:none}
.entity-link{font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--mag);display:inline-flex;align-items:center;gap:0.4rem;transition:gap .2s}
.entity-link:hover{gap:0.65rem}
.awards-section{background:var(--ink);padding:6.5rem 3rem;position:relative;overflow:hidden}
.awards-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 45% 80% at 15% 90%,rgba(152,31,97,0.13) 0%,transparent 60%);pointer-events:none}
.awards-inner{max-width:1280px;margin:0 auto;position:relative}
.awards-layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.awards-img img{border-radius:var(--r-lg);width:100%;object-fit:cover}
.awards-label{font-size:0.66rem;font-weight:700;letter-spacing:0.26em;text-transform:uppercase;color:#D66FA8;display:block;margin-bottom:1rem}
.awards-title{font-family:'Poppins',sans-serif;font-size:clamp(1.75rem,3.2vw,2.6rem);font-weight:700;color:#fff;line-height:1.15;margin-bottom:1.25rem;letter-spacing:-0.02em}
.awards-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}
.award-item{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.09);border-radius:var(--r);padding:1.4rem;transition:border-color .3s,background .3s}
.award-item:hover{border-color:rgba(152,31,97,0.5);background:rgba(152,31,97,0.08)}
.award-count{font-size:2rem;font-weight:700;color:#D66FA8}
.award-name{font-size:0.78rem;color:rgba(255,255,255,0.62);margin-top:0.35rem;line-height:1.45}
.bbee-section{padding:4.5rem 3rem;background:var(--off);border-top:1px solid var(--border)}
.bbee-inner{max-width:1280px;margin:0 auto;display:flex;gap:4rem;align-items:center}
.bbee-badge{width:124px;height:124px;border-radius:50%;background:linear-gradient(135deg,var(--mag),var(--mag-deep));display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-mag)}
.bbee-level{font-size:2.5rem;font-weight:700;color:#fff}
.bbee-badge-label{font-size:0.55rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;color:rgba(255,255,255,0.75)}

/* ── CTA BAND ───────────────────────────────────────────── */
.cta-band{background:linear-gradient(120deg,var(--mag) 0%,var(--mag-deep) 100%);padding:5.5rem 3rem;display:flex;align-items:center;justify-content:space-between;gap:3rem;flex-wrap:wrap;position:relative;overflow:hidden}
.cta-band::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 40% 90% at 85% 20%,rgba(255,255,255,0.09) 0%,transparent 60%);pointer-events:none}
.cta-band h2{font-family:'Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:700;color:#fff;line-height:1.2;max-width:640px;letter-spacing:-0.02em;position:relative}
.cta-band p{color:rgba(255,255,255,0.75);font-size:0.92rem;margin-top:0.6rem;position:relative}

/* ── SERVICES PAGE ──────────────────────────────────────── */
.svc-layout{display:grid;grid-template-columns:250px 1fr;gap:0;min-height:60vh}
.svc-sidenav{position:sticky;top:var(--nav-h);height:calc(100vh - var(--nav-h));overflow-y:auto;padding:3rem 0;background:var(--off);border-right:1px solid var(--border)}
.svc-sidenav-group{margin-bottom:2rem}
.svc-sidenav-heading{font-size:0.6rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--mag);padding:0 1.75rem;margin-bottom:0.5rem}
.svc-sidenav a{display:block;font-size:0.82rem;font-weight:500;color:var(--mid);padding:0.6rem 1.75rem;border-left:2px solid transparent;transition:all .15s}
.svc-sidenav a:hover{color:var(--text);background:rgba(152,31,97,0.05);border-left-color:var(--mag)}
.svc-sidenav a.active{color:var(--mag);font-weight:600;border-left-color:var(--mag);background:rgba(152,31,97,0.06)}
.svc-content{padding:0}
.svc-section{padding:4.5rem 4rem;border-bottom:1px solid var(--border);scroll-margin-top:calc(var(--nav-h) + 10px)}
.svc-section:nth-child(even){background:var(--off)}
.svc-section-inner{max-width:1100px;display:grid;grid-template-columns:1fr 1fr;column-gap:4rem;row-gap:0;align-items:start}
.svc-section-inner>*{grid-column:1}
.svc-section-inner>.svc-features{grid-column:2;grid-row:1/span 6;align-self:center;margin-bottom:0}
.svc-tag{display:inline-block;font-size:0.62rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mag);background:var(--mag-light);border:1px solid var(--mag-line);padding:0.3rem 0.85rem;border-radius:var(--r-pill);margin-bottom:1.25rem}
.svc-section h2{font-family:'Poppins',sans-serif;font-size:clamp(1.9rem,2.8vw,2.8rem);font-weight:700;line-height:1.1;color:var(--text);letter-spacing:-0.025em;margin-bottom:1rem}
.svc-section h2 span{color:var(--mag)}
.svc-section .lead{font-size:0.95rem;line-height:1.75;color:var(--mid);margin-bottom:2rem;max-width:480px}
.svc-features{display:grid;grid-template-columns:repeat(2,1fr);gap:0.85rem;margin-bottom:2.5rem}
.svc-feature{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:1.2rem 1.25rem;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:border-color .25s,box-shadow .25s}
.svc-feature::before{content:'';position:absolute;top:0;left:0;bottom:0;width:3px;background:linear-gradient(var(--mag),var(--crim))}
.svc-feature:hover{border-color:var(--mag-line);box-shadow:0 6px 20px rgba(152,31,97,0.1)}
.svc-feature-title{font-size:0.85rem;font-weight:600;color:var(--text);display:flex;align-items:center;gap:0.6rem}
.svc-feature p{display:none}
.svc-cta{display:inline-flex;align-items:center;gap:0.5rem;background:linear-gradient(135deg,var(--mag),var(--crim));color:#fff;padding:0.85rem 1.8rem;border-radius:var(--r-sm);font-size:0.74rem;font-weight:600;letter-spacing:0.07em;text-transform:uppercase;box-shadow:0 4px 16px rgba(152,31,97,0.22);transition:box-shadow .25s,transform .25s var(--ease-spring)}
.svc-cta:hover{transform:translateY(-2px);box-shadow:var(--shadow-mag)}
.svc-cta::after{content:'→'}
.svc-partner-badge{display:inline-flex;align-items:center;gap:0.75rem;background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:0.65rem 1.25rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}
.svc-partner-badge span{font-size:0.75rem;font-weight:600;color:var(--mid)}
.svc-partner-badge strong{color:var(--mag)}
@media(max-width:900px){.svc-layout{grid-template-columns:1fr}.svc-sidenav{display:none}.svc-section{padding:3rem 1.5rem}.svc-section-inner{grid-template-columns:1fr}.svc-section-inner>.svc-features{grid-column:1;grid-row:auto}.svc-features{grid-template-columns:1fr 1fr}}

/* ── COMPANIES PAGE ─────────────────────────────────────── */
.co-grid{display:grid;grid-template-columns:1fr;gap:0}
.co-row{display:grid;grid-template-columns:1fr 1fr;min-height:420px;border-bottom:1px solid var(--border)}
.co-row.reverse{direction:rtl}
.co-row.reverse>*{direction:ltr}
.co-img-side{overflow:hidden;position:relative}
.co-img-side img{width:100%;height:100%;object-fit:cover;filter:saturate(0.75) brightness(0.88);transition:filter .4s,transform .6s var(--ease)}
.co-row:hover .co-img-side img{filter:saturate(1) brightness(1);transform:scale(1.03)}
.co-content{padding:5rem;display:flex;flex-direction:column;justify-content:center;background:#fff}
.co-row:nth-child(even) .co-content{background:var(--off)}
.co-logo-wrap{height:36px;margin-bottom:2rem}
.co-logo-wrap img{height:100%;width:auto;max-width:180px;object-fit:contain}
.co-title{font-family:'Poppins',sans-serif;font-size:1.6rem;font-weight:700;color:var(--text);margin-bottom:1rem;line-height:1.18;letter-spacing:-0.02em}
.co-bullets{list-style:none;margin:1.25rem 0}
.co-bullets li{font-size:0.85rem;color:var(--mid);padding:0.42rem 0;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:0.55rem;line-height:1.55}
.co-bullets li::before{content:'›';color:var(--mag);flex-shrink:0}
.co-actions{display:flex;gap:1rem;margin-top:1.75rem;flex-wrap:wrap}
@media(max-width:1100px){.co-row,.co-row.reverse{grid-template-columns:1fr;direction:ltr}.co-img-side{height:220px}.co-content{padding:3rem 1.5rem}}

/* ── INDUSTRIES PAGE ────────────────────────────────────── */
.ind-page-wrap{display:grid;grid-template-columns:230px 1fr;min-height:100vh;align-items:start}
.ind-sidebar{position:sticky;top:var(--nav-h);background:#fff;border-right:1px solid var(--border);padding:2.5rem 0;height:calc(100vh - var(--nav-h));overflow-y:auto}
.ind-sidebar-label{font-size:0.58rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--mid);padding:0 1.5rem;margin-bottom:0.75rem}
.ind-side-link{display:flex;align-items:center;gap:0.6rem;padding:0.7rem 1.5rem;font-size:0.8rem;font-weight:500;color:var(--mid);border-left:2px solid transparent;transition:all .2s;line-height:1.3}
.ind-side-link:hover{color:var(--text);background:var(--off)}
.ind-side-link.active{color:var(--mag);border-left-color:var(--mag);background:rgba(152,31,97,0.05);font-weight:600}
.ind-side-dot{width:5px;height:5px;border-radius:50%;background:var(--border);flex-shrink:0;transition:background .2s}
.ind-side-link.active .ind-side-dot{background:var(--mag)}
.ind-side-link:hover .ind-side-dot{background:var(--mid)}
.ind-section{padding:6rem 5rem;border-bottom:1px solid var(--border);scroll-margin-top:var(--nav-h)}
.ind-section:nth-child(even){background:var(--off)}
.ind-section-inner{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.ind-img-wrap{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-card)}
.ind-img-wrap img{width:100%;height:380px;object-fit:cover;display:block;filter:saturate(0.85) brightness(0.92);transition:filter .4s}
.ind-section:hover .ind-img-wrap img{filter:saturate(1) brightness(1)}
.ind-sector-badge{position:absolute;bottom:1.25rem;left:1.25rem;background:rgba(15,16,36,0.55);color:#fff;font-size:0.6rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;padding:0.35rem 0.85rem;border-radius:var(--r-pill);border:1px solid rgba(255,255,255,0.25);backdrop-filter:blur(8px)}
.ind-content h2{font-family:'Poppins',sans-serif;font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:700;color:var(--text);margin-bottom:1rem;line-height:1.18;letter-spacing:-0.02em}
.ind-challenge{background:var(--mag-light);border-left:3px solid var(--mag);padding:1.1rem 1.3rem;border-radius:0 var(--r-sm) var(--r-sm) 0;margin:1.25rem 0;font-size:0.85rem;line-height:1.75;color:var(--text)}
.ind-capability-list{list-style:none;margin:1.25rem 0}
.ind-capability-list li{font-size:0.84rem;color:var(--mid);padding:0.55rem 0;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:0.6rem;line-height:1.55}
.ind-capability-list li::before{content:'›';color:var(--mag);flex-shrink:0;font-size:1rem}
.ind-platforms{display:flex;flex-wrap:wrap;gap:0.45rem;margin-top:1.25rem;margin-bottom:1.75rem}
.ind-platform-tag{font-size:0.61rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-light);background:var(--off);border:1px solid var(--border);padding:0.3rem 0.75rem;border-radius:var(--r-pill)}
.ind-overview{background:var(--ink);padding:5.5rem 5rem;position:relative;overflow:hidden}
.ind-overview::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 80% at 85% 15%,rgba(152,31,97,0.14) 0%,transparent 60%);pointer-events:none}
.ind-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,0.06);margin-top:3.5rem;position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid rgba(255,255,255,0.06)}
.ind-ov-card{background:var(--ink);padding:2.5rem 2rem;transition:background .25s;display:flex;flex-direction:column;gap:0.75rem}
.ind-ov-card:hover{background:#1A1430}
.ind-ov-num{font-family:'Poppins',sans-serif;font-size:2.4rem;font-weight:800;color:rgba(152,31,97,0.35);line-height:1}
.ind-ov-name{font-family:'Poppins',sans-serif;font-size:0.9rem;font-weight:700;color:#fff;line-height:1.25}
.ind-ov-desc{font-size:0.78rem;color:rgba(255,255,255,0.45);line-height:1.6}
.ind-ov-arrow{font-size:0.8rem;color:#D66FA8;margin-top:auto}
@media(max-width:1200px){.ind-page-wrap{grid-template-columns:1fr}.ind-sidebar{display:none}.ind-section{padding:5rem 1.5rem}.ind-section-inner{grid-template-columns:1fr;gap:2.5rem}.ind-img-wrap img{height:240px}.ind-overview{padding:4rem 1.5rem}.ind-overview-grid{grid-template-columns:repeat(2,1fr)}}

/* ── SUPPORT PAGE ───────────────────────────────────────── */
.channels-section{padding:6.5rem 3rem;background:var(--off)}
.channels-inner{max-width:1200px;margin:0 auto}
.channels-inner .section-header,.products-inner .section-header,.resources-inner .section-header{text-align:center}
.channels-inner .section-header .eyebrow::before,.products-inner .section-header .eyebrow::before,.resources-inner .section-header .eyebrow::before,.plans-header .eyebrow::before{display:none}
.channels-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.channel-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:2.5rem 2rem;display:flex;flex-direction:column;gap:0.75rem;box-shadow:var(--shadow-sm);transition:box-shadow .3s,transform .3s var(--ease),border-color .3s}
.channel-card:hover{box-shadow:var(--shadow-card);transform:translateY(-4px);border-color:var(--mag-line)}
.channel-icon{font-size:2rem}
.channel-title{font-size:1rem;font-weight:600;color:var(--text)}
.channel-desc{font-size:0.82rem;line-height:1.75;color:var(--mid);flex:1}
.channel-action{font-size:0.73rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--mag);margin-top:auto}
.channel-action:hover{color:var(--crim)}
.hours-section{padding:6.5rem 3rem;background:#fff}
.hours-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.hours-table{width:100%;border-collapse:collapse;font-size:0.85rem}
.hours-table td{padding:0.8rem 0;border-bottom:1px solid var(--border);color:var(--mid)}
.hours-table td:first-child{font-weight:600;color:var(--text);width:45%}
.hours-badge{display:inline-flex;align-items:center;gap:0.6rem;margin-top:1.5rem;font-size:0.78rem;font-weight:600;color:var(--text)}
.hours-dot{width:8px;height:8px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 3px rgba(34,197,94,0.2);flex-shrink:0}
.sla-grid{display:flex;flex-direction:column;gap:0;margin-top:1.5rem;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm)}
.sla-item{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.15rem 1.5rem;border-bottom:1px solid var(--border);background:#fff}
.sla-item:last-child{border-bottom:none}
.sla-item:nth-child(even){background:var(--off)}
.sla-name{font-size:0.85rem;font-weight:600;color:var(--text);margin-bottom:0.2rem}
.sla-desc{font-size:0.75rem;color:var(--mid)}
.sla-time{font-family:'Poppins',sans-serif;font-size:1.25rem;font-weight:700;color:var(--mag);white-space:nowrap;flex-shrink:0}
.products-section{padding:6.5rem 3rem;background:var(--off)}
.products-inner{max-width:1200px;margin:0 auto}
.products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.product-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:2.2rem;box-shadow:var(--shadow-sm);transition:box-shadow .3s,border-color .3s,transform .3s var(--ease)}
.product-card:hover{box-shadow:var(--shadow-card);border-color:var(--mag-line);transform:translateY(-3px)}
.product-badge{display:inline-block;font-size:0.6rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mag);background:var(--mag-light);border:1px solid var(--mag-line);padding:0.28rem 0.7rem;border-radius:var(--r-pill);margin-bottom:1rem}
.product-name{font-size:1.05rem;font-weight:600;color:var(--text);margin-bottom:0.25rem}
.product-entity{font-size:0.75rem;color:var(--mid);margin-bottom:1.25rem}
.product-features{list-style:none;margin-top:1rem}
.product-features li{font-size:0.8rem;color:var(--mid);padding:0.4rem 0;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:0.5rem;line-height:1.55}
.product-features li::before{content:'›';color:var(--mag);flex-shrink:0}
.product-features li:last-child{border-bottom:none}
.plans-section{padding:6.5rem 3rem;background:var(--ink);position:relative;overflow:hidden}
.plans-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 80% at 50% 0%,rgba(152,31,97,0.13) 0%,transparent 60%);pointer-events:none}
.plans-inner{max-width:1200px;margin:0 auto;position:relative}
.plans-header{text-align:center;margin-bottom:3.5rem}
.plans-header .body-text{color:rgba(255,255,255,0.55)}
.plans-header .section-title{color:#fff}
.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.plan-card{background:rgba(255,255,255,0.045);border:1px solid rgba(255,255,255,0.09);border-radius:var(--r-lg);padding:2.5rem 2rem;display:flex;flex-direction:column;transition:border-color .3s,transform .3s var(--ease)}
.plan-card:hover{border-color:rgba(152,31,97,0.45);transform:translateY(-4px)}
.plan-card.featured{background:#fff;border-color:#fff;box-shadow:0 30px 80px rgba(0,0,0,0.4)}
.plan-card.featured .plan-name{color:var(--text)}
.plan-card.featured .plan-desc,.plan-card.featured .plan-feat-label{color:var(--mid)}
.plan-badge{display:inline-block;font-size:0.6rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:#D66FA8;background:rgba(152,31,97,0.14);border:1px solid rgba(152,31,97,0.35);padding:0.28rem 0.7rem;border-radius:var(--r-pill);margin-bottom:1rem;width:fit-content}
.plan-card.featured .plan-badge{color:var(--mag);background:var(--mag-light);border-color:var(--mag-line)}
.plan-name{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:0.5rem}
.plan-desc{font-size:0.82rem;color:rgba(255,255,255,0.55);line-height:1.65;margin-bottom:1.25rem}
.plan-feat-divider{border:none;border-top:1px solid rgba(255,255,255,0.09);margin:1.25rem 0}
.plan-card.featured .plan-feat-divider{border-top-color:var(--border)}
.plan-feat-label{font-size:0.65rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:0.75rem}
.plan-feats{list-style:none;flex:1;margin-bottom:2rem}
.plan-feat-item{font-size:0.82rem;color:rgba(255,255,255,0.65);padding:0.5rem 0;border-bottom:1px solid rgba(255,255,255,0.07);display:flex;align-items:flex-start;gap:0.6rem}
.plan-feat-item::before{content:'✓';color:#D66FA8;flex-shrink:0;font-size:0.85rem}
.plan-card.featured .plan-feat-item{color:var(--mid);border-bottom-color:var(--border)}
.plan-card.featured .plan-feat-item::before{color:var(--mag)}
.plan-cta{display:block;width:100%;padding:0.9rem;border-radius:var(--r-sm);font-size:0.74rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;cursor:pointer;border:none;transition:all .2s;text-align:center}
.plan-cta-outline{background:transparent;border:1px solid rgba(255,255,255,0.25);color:#fff}
.plan-cta-outline:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.5)}
.plan-cta-solid{background:linear-gradient(135deg,var(--mag),var(--crim));color:#fff;border:none;box-shadow:0 4px 16px rgba(152,31,97,0.3)}
.plan-cta-solid:hover{box-shadow:var(--shadow-mag);transform:translateY(-1px)}
.ticket-section{padding:6.5rem 3rem;background:var(--off)}
.ticket-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.ticket-visual{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:2.5rem;box-shadow:var(--shadow-card)}
.ticket-steps{display:flex;flex-direction:column;gap:0}
.ticket-step{display:flex;align-items:flex-start;gap:1.25rem}
.step-num{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--mag),var(--crim));color:#fff;font-size:0.82rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px rgba(152,31,97,0.28)}
.step-text-title{font-size:0.88rem;font-weight:600;color:var(--text);margin-bottom:0.25rem}
.step-text-desc{font-size:0.78rem;color:var(--mid);line-height:1.65}
.step-connector{width:2px;height:2rem;background:var(--border);margin-left:18px}
.resources-section{padding:6.5rem 3rem;background:#fff}
.resources-inner{max-width:1200px;margin:0 auto}
.resources-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.resource-card{background:var(--off);border:1px solid var(--border);border-radius:var(--r-lg);padding:2.5rem 2rem;display:flex;flex-direction:column;gap:0.75rem;transition:border-color .25s,box-shadow .25s,transform .3s var(--ease)}
.resource-card:hover{border-color:var(--mag-line);box-shadow:0 10px 34px rgba(152,31,97,0.1);transform:translateY(-4px)}
.resource-icon{font-size:2rem}
.resource-title{font-size:1rem;font-weight:600;color:var(--text)}
.resource-desc{font-size:0.82rem;line-height:1.75;color:var(--mid);flex:1}
.resource-link{font-size:0.72rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--mag)}
@media(max-width:1100px){.channels-grid,.products-grid,.plans-grid,.resources-grid{grid-template-columns:1fr 1fr}.hours-inner,.ticket-inner{grid-template-columns:1fr;gap:3rem}.channels-section,.hours-section,.products-section,.plans-section,.ticket-section,.resources-section{padding:4rem 1.5rem}}
@media(max-width:640px){.channels-grid,.products-grid,.plans-grid,.resources-grid{grid-template-columns:1fr}}

/* ── RESPONSIVE (global) ────────────────────────────────── */
@media(max-width:1100px){
  nav{padding:0 1.5rem}
  .nav-links,.nav-right .nav-cta{display:none}
  .hamburger{display:flex}
  .hero-inner{padding:3rem 1.5rem}
  .hero-left{max-width:100%}
  .section{padding:5rem 1.5rem}
  .industries-section,.contact-section{padding:5rem 1.5rem}
  .services-section{padding:5rem 0}
  .services-head,.services-cta{padding-left:1.5rem;padding-right:1.5rem}
  .companies-grid{grid-template-columns:1fr}
  .services-cards{grid-template-columns:1fr;padding:0 1.5rem}
  .industries-grid{grid-template-columns:1fr 1fr}
  .blog-grid{grid-template-columns:1fr}
  .blog-header{flex-direction:column;align-items:flex-start}
  .contact-grid{grid-template-columns:1fr;gap:3rem}
  .footer-top{grid-template-columns:1fr 1fr;gap:2.5rem}
  .trust-section{padding:3rem 1.5rem}
  .trust-logos{gap:2.5rem}
  .intro-section,.values-header,.entities-grid,.awards-layout{grid-template-columns:1fr;gap:3rem}
  .stats-inner{grid-template-columns:1fr 1fr}
  .values-grid{grid-template-columns:1fr 1fr}
  .page-hero{padding:0}
  .page-hero-inner{grid-template-columns:1fr;gap:0;min-height:auto}
  .page-hero-text{padding:calc(var(--nav-h) + 2rem) 1.5rem 2.75rem}
  .page-hero-visual{display:none}
  .breadcrumb{padding:1rem 1.5rem}
  .stats-band,.values-section,.entities-section,.awards-section,.bbee-section,.cta-band{padding:4rem 1.5rem}
  footer{padding:4rem 1.5rem 2.5rem}
}
@media(max-width:767px){
  .hero-inner{flex-direction:column;gap:24px;padding:24px 20px}
  .hero{padding-top:64px}
  .hero-left{width:100%}
  h1.hero-headline,h1.hero-headline span,h1.hero-headline span.accent{font-size:clamp(34px,10vw,48px)!important;line-height:1.05!important}
  h2.section-title,h2.section-title span,h2.section-title span.accent{font-size:clamp(28px,8vw,38px)!important;line-height:1.15!important}
  .dropdown.svc-mega-dd{min-width:0!important;width:calc(100vw - 24px)!important;left:12px!important;right:12px!important;grid-template-columns:1fr!important}
  html,body{overflow-x:hidden}
}
@media(max-width:640px){
  .hero-headline{font-size:2.9rem}
  .hero-stats{gap:1.75rem}
  .industries-grid{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;text-align:center}
  .form-row{grid-template-columns:1fr}
  .stats-inner{grid-template-columns:1fr}
  .values-grid{grid-template-columns:1fr}
  .awards-grid{grid-template-columns:1fr}
  .bbee-inner{flex-direction:column;text-align:center}
  .cta-band{text-align:center;justify-content:center}
}
@media(max-width:480px){
  h1.hero-headline,h1.hero-headline span{font-size:clamp(30px,11vw,40px)!important}
}

/* ══════════════════════════════════════════════════════════
   CONTACT PAGE (page-contact.php)
   ══════════════════════════════════════════════════════════ */
.ct-zone{padding:6rem 3rem;background:var(--off)}
.ct-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.2fr 0.8fr;gap:3rem;align-items:start}
.ct-form-panel{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:2.75rem;box-shadow:var(--shadow-card)}
.ct-form-head{margin-bottom:1.5rem;padding-bottom:1.4rem;border-bottom:1px solid var(--border)}
.ct-form-head .label{margin-bottom:0.6rem}
.ct-form-head h2{font-family:'Poppins',sans-serif;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;color:var(--text);letter-spacing:-0.02em;line-height:1.15}
.ct-form-head p{font-size:0.92rem;color:var(--mid);line-height:1.7;margin-top:0.6rem}
.ct-form-panel .wpforms-container{margin:0!important}
.ct-side{display:flex;flex-direction:column;gap:1.25rem}
.ct-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:1.9rem;box-shadow:var(--shadow-sm)}
.ct-card-title{font-size:0.7rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mag);margin-bottom:1rem}
.ct-option{display:flex;align-items:center;gap:1rem;padding:0.9rem 1rem;border:1px solid var(--border);border-radius:var(--r);margin-bottom:0.7rem;transition:border-color .2s,transform .2s var(--ease),box-shadow .2s}
.ct-option:last-child{margin-bottom:0}
.ct-option:hover{border-color:var(--mag-line);transform:translateX(3px);box-shadow:0 6px 18px rgba(152,31,97,0.08)}
.ct-option-ic{width:42px;height:42px;flex-shrink:0;border-radius:50%;background:var(--mag-light);color:var(--mag);display:flex;align-items:center;justify-content:center}
.ct-option-ic svg{width:20px;height:20px}
.ct-option-txt strong{display:block;font-size:0.9rem;font-weight:600;color:var(--text)}
.ct-option-txt span{display:block;font-size:0.76rem;color:var(--mid);margin-top:0.15rem}
.ct-stats{display:grid;grid-template-columns:1fr 1fr;gap:0.9rem;margin-top:1.1rem}
.ct-stat{background:var(--off);border:1px solid var(--border);border-radius:var(--r);padding:1.1rem}
.ct-stat-n{font-family:'Poppins',sans-serif;font-size:1.6rem;font-weight:700;color:var(--mag);line-height:1}
.ct-stat-l{font-size:0.72rem;color:var(--mid);margin-top:0.4rem;line-height:1.45}
.ct-trust{background:linear-gradient(135deg,var(--mag) 0%,var(--mag-deep) 100%);border:none;color:#fff}
.ct-trust .ct-card-title{color:rgba(255,255,255,0.8)}
.ct-quote{font-size:0.95rem;line-height:1.75;font-style:italic;color:rgba(255,255,255,0.95)}
.ct-quote-author{margin-top:1.1rem;font-size:0.8rem;color:rgba(255,255,255,0.8)}
.ct-quote-author strong{color:#fff;font-weight:600;font-style:normal;display:block}

/* Contact FAQ + location (shared group styles) */
.gfaq-section{padding:6rem 3rem;background:#fff}
.gfaq-inner{max-width:880px;margin:0 auto}
.gfaq-head{text-align:center;margin-bottom:2.75rem}
.gfaq-list{display:flex;flex-direction:column;gap:0.85rem}
.gfaq-item{border:1px solid var(--border);border-radius:var(--r);background:var(--off);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.gfaq-item.open{border-color:var(--mag-line);box-shadow:0 8px 26px rgba(152,31,97,0.07)}
.gfaq-q{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-family:'Poppins',sans-serif;font-size:0.97rem;font-weight:600;color:var(--text)}
.gfaq-ic{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--mag-light);color:var(--mag);font-size:0.95rem;display:flex;align-items:center;justify-content:center;transition:transform .25s var(--ease)}
.gfaq-item.open .gfaq-ic{transform:rotate(45deg)}
.gfaq-a{max-height:0;overflow:hidden;transition:max-height .3s var(--ease)}
.gfaq-a-inner{padding:0 1.5rem 1.35rem;font-size:0.89rem;line-height:1.75;color:var(--mid)}
.ct-loc{padding:0 3rem 6rem;background:#fff}
.ct-loc-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:0.9fr 1.1fr;gap:0;align-items:stretch;background:var(--off);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}
.ct-loc-text{padding:3rem}
.ct-loc-text .big-title{font-size:clamp(1.5rem,2.6vw,2.1rem)}
.ct-loc-map{min-height:360px}
.ct-loc-map iframe{width:100%;height:100%;border:0;display:block;min-height:360px}

/* ══════════════════════════════════════════════════════════
   REPORTING & BUSINESS INTELLIGENCE PAGE (page-reporting-bi.php)
   ══════════════════════════════════════════════════════════ */
.bi-section{padding:6rem 3rem}
.bi-section.alt{background:var(--off)}
.bi-inner{max-width:1200px;margin:0 auto}
.bi-head{text-align:center;max-width:660px;margin:0 auto 3.25rem}
.bi-head .label{display:block}
.bi-head .body-text{margin-top:1.1rem}
.bi-stats{padding:3.5rem 3rem;background:var(--off);border-bottom:1px solid var(--border)}
.bi-stats-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.bi-stat{text-align:center;padding:1rem}
.bi-stat-n{font-family:'Poppins',sans-serif;font-size:clamp(1.9rem,3.4vw,2.7rem);font-weight:700;color:var(--mag);line-height:1}
.bi-stat-l{font-size:0.8rem;color:var(--mid);margin-top:0.55rem;line-height:1.45}
.bi-cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.bi-tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.bi-tool{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:2rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:0.7rem;transition:box-shadow .3s,transform .3s var(--ease),border-color .3s}
.bi-tool:hover{box-shadow:var(--shadow-card);transform:translateY(-4px);border-color:var(--mag-line)}
.bi-tool-tag{align-self:flex-start;font-size:0.62rem;font-weight:700;letter-spacing:0.13em;text-transform:uppercase;color:var(--mag);background:var(--mag-light);border:1px solid var(--mag-line);padding:0.3rem 0.7rem;border-radius:var(--r-pill)}
.bi-tool h4{font-family:'Poppins',sans-serif;font-size:1.05rem;font-weight:600;color:var(--text)}
.bi-tool p{font-size:0.83rem;line-height:1.7;color:var(--mid);flex:1}
.bi-tags{display:flex;flex-wrap:wrap;gap:0.4rem;margin-top:0.3rem}
.bi-tags span{font-size:0.68rem;color:var(--mid);background:var(--off);border:1px solid var(--border);border-radius:var(--r-pill);padding:0.25rem 0.6rem}
.bi-why-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.05fr 0.95fr;gap:4rem;align-items:center}
.bi-why-list{margin-top:1.5rem;display:flex;flex-direction:column;gap:0.85rem}
.bi-why-list li{display:flex;gap:0.7rem;font-size:0.92rem;color:var(--text-light);line-height:1.6}
.bi-why-list li::before{content:'✓';color:var(--mag);font-weight:700;flex-shrink:0}
.bi-why-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.bi-wc{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:1.75rem;box-shadow:var(--shadow-sm)}
.bi-wc-n{font-family:'Poppins',sans-serif;font-size:1.9rem;font-weight:700;color:var(--mag);line-height:1}
.bi-wc-l{font-size:0.78rem;color:var(--mid);margin-top:0.5rem;line-height:1.45}

/* New-page responsive */
@media(max-width:1100px){
  .ct-inner{grid-template-columns:1fr}
  .ct-loc-inner{grid-template-columns:1fr}
  .bi-cap-grid,.bi-tool-grid{grid-template-columns:1fr 1fr}
  .bi-why-inner{grid-template-columns:1fr;gap:2.5rem}
  .ct-zone,.gfaq-section,.ct-loc,.bi-section,.bi-stats{padding-left:1.5rem;padding-right:1.5rem}
  .bi-section{padding-top:4rem;padding-bottom:4rem}
}
@media(max-width:640px){
  .bi-cap-grid,.bi-tool-grid,.ct-stats{grid-template-columns:1fr}
  .bi-stats-inner{grid-template-columns:1fr 1fr}
  .bi-why-cards{grid-template-columns:1fr 1fr}
  .ct-form-panel{padding:1.75rem}
  .ct-loc-text{padding:2rem}
}

/* ══════════════════════════════════════════════════════════
   REMOVE AI-TEMPLATE "TELLS" (client request 2026-07-06)
   Hides the decorative eyebrow / tag / partner-badge pills and
   the icon chips above cards, site-wide. Section <h2> titles and
   real content remain. Reversible: delete this block to restore.
   ══════════════════════════════════════════════════════════ */
.hero-eyebrow,
.eyebrow,
.page-hero-label,
.label,
.trust-label,
.awards-label,
.ind-sidebar-label,
.co-tag,
.entity-tag,
.svc-tag,
.svc-partner-badge,
.product-badge,
.plan-badge,
.bi-tool-tag,
.ind-sector-badge,
.ind-platform-tag,
.svc-icon,
.channel-icon,
.resource-icon{display:none!important}

/* ─── Imported blog article content (single.php .body-text) ─── */
.body-text p{margin-bottom:1.15rem}
.body-text figure{margin:2rem 0}
.body-text figure img{border-radius:10px;width:100%;height:auto}
.body-text figcaption{font-size:.82rem;color:var(--mid);margin-top:.6rem;text-align:center}
.body-text h2,.body-text h3,.body-text h4{font-family:'Poppins',sans-serif;color:var(--text);line-height:1.25;margin:2.2rem 0 .9rem}
.body-text h2{font-size:1.6rem}.body-text h3{font-size:1.28rem}.body-text h4{font-size:1.08rem}
.body-text ul,.body-text ol{margin:0 0 1.15rem 1.3rem}
.body-text li{margin-bottom:.5rem}
.body-text a{color:var(--mag);text-decoration:underline;text-underline-offset:2px}
.body-text .lead{font-size:1.15rem;line-height:1.7;color:var(--text-light);font-weight:500;margin-bottom:1.5rem}
.body-text blockquote,.body-text .art-quote{border-left:3px solid var(--mag);background:var(--off);padding:1.15rem 1.5rem;margin:1.75rem 0;border-radius:0 8px 8px 0}
.body-text blockquote p,.body-text .art-quote p{font-size:1.08rem;font-style:italic;color:var(--text);margin:0}

/* ── ERP GUIDE (what-is-erp) ─────────────────────────────── */
.guide-wrap{max-width:900px;margin:0 auto;padding:1rem 2rem 3rem}
.guide-toc{display:flex;flex-wrap:wrap;gap:0.6rem;margin:1.5rem 0 2.5rem}
.guide-toc a{font-size:0.78rem;font-weight:600;color:var(--mag);background:var(--mag-light);padding:0.45rem 0.9rem;border-radius:999px;text-decoration:none;transition:background 0.2s,color 0.2s}
.guide-toc a:hover{background:var(--mag);color:#fff}
.guide-section{margin-bottom:3rem;scroll-margin-top:calc(var(--nav-h,72px) + 1.5rem)}
.guide-section h2{font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(1.5rem,2.6vw,2.1rem);color:var(--text);letter-spacing:-0.02em;margin-bottom:1rem}
.guide-section p{color:var(--mid);line-height:1.85;margin-bottom:1rem;font-size:0.98rem}
.guide-list{margin:0 0 1rem 1.2rem;color:var(--mid);line-height:1.85;font-size:0.98rem}
.guide-list li{margin-bottom:0.5rem}
.guide-list strong{color:var(--text)}
.guide-table-scroll{overflow-x:auto;margin:1.25rem 0}
.guide-table{width:100%;border-collapse:collapse;font-size:0.88rem;min-width:640px}
.guide-table th,.guide-table td{padding:0.8rem 0.9rem;border:1px solid var(--border);text-align:left;vertical-align:top;color:var(--mid);line-height:1.6}
.guide-table thead th{background:var(--mag);color:#fff;font-weight:600}
.guide-table tbody th{background:var(--mag-light);color:var(--text);font-weight:600;white-space:nowrap}
