/* ==========================================================================
   Brand color grading — matched to the NODAL logo gradient
   teal #01c1bc → azure #0b9cf1 → violet #762ef6
   Loaded after style.css; overrides tokens + hardcoded colours.
   ========================================================================== */
:root{
  --brand-teal:#01c1bc;
  --brand-azure:#0b9cf1;
  --brand-blue:#1a6ff5;
  --brand-violet:#762ef6;
  --brand-grad:linear-gradient(135deg,var(--brand-teal) 0%,var(--brand-azure) 48%,var(--brand-violet) 100%);
  --brand-grad-h:linear-gradient(90deg,var(--brand-teal) 0%,var(--brand-azure) 48%,var(--brand-violet) 100%);

  /* Re-tokened palette: deep indigo replaces navy, azure replaces teal, violet replaces orange */
  --navy:#101a4d;
  --navy-dark:#0a1036;
  --teal:#0b9cf1;
  --teal-dark:#0a6fd1;
  --teal-light:#e8f5fe;
  --teal-glow:#3fd9d4;
  --accent:#762ef6;
  --ink:#1a1f3d;
  --ink-soft:#525a7a;
  --line:#e3e8f4;
  --bg-soft:#f5f8fe;
  --shadow-sm:0 1px 3px rgba(16,26,77,.08);
  --shadow-md:0 8px 24px rgba(16,26,77,.10);
  --shadow-lg:0 18px 45px rgba(16,26,77,.14);
}

/* Type + accents */
.eyebrow{color:var(--brand-blue);background:linear-gradient(90deg,rgba(1,193,188,.12),rgba(118,46,246,.12));}
.hero h1 span{background:linear-gradient(90deg,#3fd9d4,#5fb8ff 55%,#b48cff);-webkit-background-clip:text;background-clip:text;color:transparent;}
.grad-text{background:var(--brand-grad-h);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal;}

/* Buttons */
.btn-primary{background:var(--brand-grad);box-shadow:0 8px 20px rgba(11,156,241,.32);}
.btn-primary:hover{background:linear-gradient(135deg,#02d3cd,#1ea9ff 48%,#8a48ff);box-shadow:0 12px 28px rgba(118,46,246,.34);}
.btn-navy{background:linear-gradient(135deg,var(--navy),#1a2a7a);box-shadow:0 8px 20px rgba(16,26,77,.25);}
.btn-navy:hover{background:linear-gradient(135deg,#1a2a7a,var(--brand-violet));}
.btn-ghost:hover{border-color:var(--brand-azure);color:var(--brand-blue);}
.cta-band .btn-primary{background:#fff;color:var(--brand-blue);box-shadow:0 8px 20px rgba(0,0,0,.15);}
.cta-band .btn-primary:hover{background:#f2f8ff;}

/* Header / nav */
.topbar{background:var(--navy-dark);color:#c9d4ff;}
.topbar a{color:#c9d4ff;}
nav.main-nav a:hover,nav.main-nav a.active{color:var(--brand-blue);}
nav.main-nav a::after{background:var(--brand-grad-h);}
@media (max-width:960px){nav.main-nav a.active{background:var(--teal-light);}}
header.site-header{box-shadow:0 1px 0 var(--line),0 6px 24px rgba(16,26,77,.05);}
header.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--brand-grad-h);opacity:.9;pointer-events:none;}
.brand-tagline{color:var(--brand-blue);}
.brand-mark{background:var(--brand-grad);}

/* Hero + dark sections */
.hero{background:
  radial-gradient(900px 480px at 92% -20%,rgba(1,193,188,.32),transparent 60%),
  radial-gradient(700px 420px at -10% 110%,rgba(118,46,246,.42),transparent 60%),
  radial-gradient(600px 360px at 50% 120%,rgba(11,156,241,.28),transparent 60%),
  linear-gradient(160deg,#070c2e,#101a4d 55%,#141f66);}
.hero::before{background:radial-gradient(circle,rgba(1,193,188,.28),transparent 65%);}
.hero-eyebrow{color:#a9dcff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);}
.hero p.lead{color:#cbd6f5;}
.hero-stats span{color:#9fb0e6;}
.hero-stats div{border-left-color:rgba(63,217,212,.5);}
.hero-card::before{background:linear-gradient(135deg,rgba(1,193,188,.95),rgba(255,255,255,0) 45%,rgba(118,46,246,.8));}
.hero-card h3::before{background:var(--teal-light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a6fd1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.7 9a.6.6 0 0 1-.6 0C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.2-2.7a1.2 1.2 0 0 1 1.6 0C14.5 3.8 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E") center/20px no-repeat;}
.hero-badge{background:linear-gradient(135deg,var(--brand-violet),#9a5cff);box-shadow:0 10px 24px rgba(118,46,246,.45);}
.hero-illo{filter:drop-shadow(0 30px 60px rgba(4,8,40,.55));}
.section-navy{background:linear-gradient(160deg,#070c2e,#101a4d 60%,#141f66);}
.section-navy p{color:#c3cdf0;}
.page-header{background:radial-gradient(700px 300px at 90% -30%,rgba(1,193,188,.28),transparent),radial-gradient(500px 260px at 0% 120%,rgba(118,46,246,.3),transparent),linear-gradient(160deg,#070c2e,#101a4d);}
.page-header .crumb,.page-header .crumb a{color:#9fb0e6;}
.page-header p{color:#cbd6f5;}
.stat-band strong{background:linear-gradient(90deg,#3fd9d4,#5fb8ff 55%,#b48cff);-webkit-background-clip:text;background-clip:text;color:transparent;}
.stat-band span{color:#c3cdf0;}

/* Cards, icons, ticks */
.card::before{background:var(--brand-grad-h);}
.card .icon{background:var(--teal-light);color:var(--brand-blue);}
.card:hover .icon{background:var(--brand-grad);color:#fff;}
.icon-navy{background:rgba(1,193,188,.14);color:#049a96;}
.card:hover .icon.icon-navy{background:linear-gradient(135deg,#01c1bc,#0b9cf1);}
.icon-accent{background:rgba(118,46,246,.12);color:var(--brand-violet);}
.card:hover .icon.icon-accent{background:linear-gradient(135deg,#762ef6,#0b9cf1);}
.card a.more{color:var(--brand-blue);}
.hero-card li .tick,.check-list li .tick{background:var(--brand-grad);color:#fff;}
.step .num{background:var(--brand-grad);box-shadow:0 6px 14px rgba(11,156,241,.3);}
.trust-strip .items span::before{background:var(--brand-grad);box-shadow:0 0 0 3px rgba(11,156,241,.18);}
.trust-strip .items span:hover{border-color:var(--brand-azure);}
table th{background:linear-gradient(90deg,#101a4d,#1a2a7a);}
.badge{color:var(--brand-blue);background:var(--teal-light);border-color:#d3e6fb;}

/* Callouts */
.callout{background:linear-gradient(90deg,rgba(1,193,188,.10),rgba(11,156,241,.08));border-color:#cfe9f8;border-left-color:var(--brand-azure);}
.callout strong{color:var(--brand-blue);}
.callout-warn{background:linear-gradient(90deg,rgba(118,46,246,.10),rgba(11,156,241,.06));border-color:#e2d6fb;border-left-color:var(--brand-violet);}
.callout-warn strong{color:var(--brand-violet);}
.faq-item summary::after{color:var(--brand-azure);}

/* CTA band */
.cta-band{background:var(--brand-grad);box-shadow:0 24px 60px rgba(11,156,241,.32);}
.cta-band p{color:#eaf4ff;}

/* Contact + forms */
.contact-info-card{background:linear-gradient(160deg,#0a1036,#101a4d 60%,#1a2a7a);}
.contact-info-card .ico{background:rgba(1,193,188,.18);color:#3fd9d4;}
.contact-info-card .item a,.contact-info-card .item span{color:#d6def8;}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand-azure);box-shadow:0 0 0 4px rgba(11,156,241,.16);}
.ico-inline{color:var(--brand-azure);}

/* Footer */
footer.site-footer{position:relative;background:linear-gradient(180deg,#0a1036,#05081f);color:#b3bde0;}
footer.site-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--brand-grad-h);}
footer a,footer p{color:#b3bde0;}
footer a:hover{color:#3fd9d4;}
footer .brand-tagline{color:#8f9ccf;}
footer .ico-inline{color:#3fd9d4;}
.footer-bottom{color:#8090c4;}
@media print{body::before{color:rgba(16,26,77,.12);}}

/* ==========================================================================
   Professional grading — brand palette kept, decorative gradients removed.
   Solid azure primary, indigo secondary, single accent. Loaded last.
   ========================================================================== */
/* Type */
.hero h1 span,.grad-text,.stat-band strong{background:none;-webkit-background-clip:initial;background-clip:initial;color:#5fd0f5;}
.grad-text{color:var(--brand-blue);}
.eyebrow{background:var(--teal-light);color:var(--brand-blue);}
.hero-eyebrow{background:transparent;border-color:rgba(255,255,255,.22);color:#a9dcff;}

/* Buttons: solid, no glow */
.btn-primary{background:var(--brand-blue);box-shadow:none;}
.btn-primary:hover{background:#155ed6;box-shadow:none;}
.btn-navy{background:var(--navy);box-shadow:none;}
.btn-navy:hover{background:#1a2a7a;}
.cta-band .btn-primary{box-shadow:none;}
.btn:active{transform:none;}

/* Header */
header.site-header::after{background:var(--line);opacity:1;height:1px;}
nav.main-nav a::after{background:var(--brand-blue);}

/* Hero & dark bands: flat indigo */
.hero{background:linear-gradient(160deg,#0a1036,#101a4d 70%,#141f66);}
.hero::before{display:none;}
.hero-card::before{display:none;}
.hero-badge{background:var(--brand-blue);box-shadow:none;}
.section-navy{background:#101a4d;}
.page-header{background:linear-gradient(160deg,#0a1036,#101a4d);}
.stat-band{background:transparent;padding:32px 0;}
.stat-band strong{color:#fff;}

/* Cards, icons, steps */
.card::before{display:none;}
.card:hover .icon{background:var(--teal-light);color:var(--brand-blue);}
.card:hover .icon.icon-navy{background:rgba(1,193,188,.14);color:#049a96;}
.card:hover .icon.icon-accent{background:rgba(118,46,246,.12);color:var(--brand-violet);}
.hero-card li .tick,.check-list li .tick{background:var(--brand-blue);}
.step .num{background:var(--navy);box-shadow:none;}
.trust-strip .items span::before{background:var(--brand-blue);box-shadow:none;}
table th{background:var(--navy);}

/* Callouts & CTA */
.callout{background:var(--bg-soft);}
.callout-warn{background:#f8f5ff;}
.cta-band{background:var(--navy);box-shadow:none;}
.cta-band .btn-primary{background:#fff;color:var(--navy);}

/* Footer */
footer.site-footer{background:#0a1036;}
footer.site-footer::before{height:1px;background:rgba(255,255,255,.12);}
