/* Shared stylesheet generated from inline page CSS. Edit page styles here, then keep pcc-site-fixes.css for QA overrides. */
/* ===== Source: about.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  html { scroll-behavior: smooth; }
  body { background: var(--navy); color: var(--white); font-family: 'Montserrat', sans-serif; overflow-x: hidden; }

  /* PAGE TRANSITIONS */
  .page { display: none; opacity: 0; transition: opacity 0.5s ease; }
  .page.active { display: block; }
  .page.visible { opacity: 1; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0; transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
  }
  .reveal.revealed { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }
  .reveal-delay-6 { transition-delay: 0.6s; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 28px 60px; background: transparent; transition: all 0.4s;
  }
  nav.scrolled { background: rgba(25,40,66,0.96); backdrop-filter: blur(10px); padding: 18px 60px; }
  .nav-logo { display: flex; align-items: center; gap: 14px; cursor: pointer; -webkit-tap-highlight-color: rgba(197,165,90,0.2); }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px;
    display: inline-block; white-space: nowrap; overflow: hidden; max-width: 0; opacity: 0; transform: translateX(-10px);
    animation: navBrandUnscroll 1.05s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
  }
  @keyframes navBrandUnscroll {
    0% { max-width: 0; opacity: 0; transform: translateX(-10px); }
    35% { opacity: 1; }
    100% { max-width: 420px; opacity: 1; transform: translateX(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-brand { animation: none; max-width: 420px; opacity: 1; transform: none; }
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px;
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
    transition: color 0.3s; cursor: pointer; position: relative;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: -4px; left: 0;
    width: 0; height: 1px; background: var(--gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active { color: var(--gold); }
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent; border: 1.5px solid var(--gold); color: var(--gold);
    padding: 10px 24px; font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 600; transition: all 0.3s;
  }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .nav-cta.active { background: var(--gold); color: var(--navy); }

  /* MOBILE NAV */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer;
    background: none; border: none; padding: 8px; -webkit-appearance: none; touch-action: manipulation;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(25,40,66,0.98); z-index: 99;
    flex-direction: column; align-items: center; justify-content: center; gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.4rem;
    letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.6);
    transition: color 0.3s; cursor: pointer;
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  /* HERO */
  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
  }
  .hero-watermark {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%); opacity: 0.04;
  }
  .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    z-index: 0;
    pointer-events: none;
  }
  .hero-content { position: relative; z-index: 2; animation: fadeIn 1.2s ease; }
  .hero-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 28px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .hero-content .overline::before, .hero-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif; font-size: 3.8rem; font-weight: 400;
    letter-spacing: 6px; color: var(--white); line-height: 1.2;
    text-transform: uppercase; margin-bottom: 24px;
  }
  .hero-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .hero-desc {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 600px; margin: 0 auto 40px; font-weight: 300;
  }
  .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

  .toolkit-toggle-btn.is-open {
    background: rgba(197,165,90,0.1);
    border-color: var(--gold);
    color: var(--gold-light);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16), inset 0 0 0 1px rgba(217,197,128,0.12);
  }
  .insight-card:focus-within,
  .insight-card.is-active {
    transform: translateY(-4px);
    border-left-color: var(--gold);
    box-shadow: 0 18px 36px rgba(0,0,0,0.2), inset 0 0 0 1px rgba(217,197,128,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.012));
  }
  .insight-card:focus-within .read-more,
  .insight-card.is-active .read-more,
  .insight-card:focus-within .insight-toggle,
  .insight-card.is-active .insight-toggle {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .tk-pill-btn.active,
  .tk-opt.tk-nf-active {
    box-shadow: 0 10px 24px rgba(0,0,0,0.14), inset 0 0 0 1px rgba(217,197,128,0.08);
  }
  .btn-gold {
    background: var(--gold); color: var(--navy); padding: 16px 36px; border: none;
    font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 700; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .btn-ghost {
    background: transparent; border: 1px solid rgba(255,255,255,0.2); color: var(--white);
    padding: 16px 36px; font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 400; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  /* DIVIDER */
  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }

  /* SECTION HEADS */
  .section-head { margin-bottom: 60px; }
  .section-head .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    color: var(--white); letter-spacing: 3px; margin-top: 10px; text-transform: uppercase;
  }

  /* SERVICES */
  .services {
    padding: 100px 80px; background: var(--navy-mid); position: relative;
  }
  .services::before {
    content: ''; position: absolute; top: 0; left: 60px; bottom: 0;
    width: 1px; background: linear-gradient(180deg, transparent, rgba(197,165,90,0.15), transparent);
  }
  .service-rows { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1100px; margin: 0 auto; }
  .svc {
    padding: 44px 40px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative;
  }
  .svc::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 2px; background: var(--gold); transition: width 0.5s;
  }
  .svc:hover::after { width: 100%; }
  .svc:hover { background: rgba(197,165,90,0.018); }
  .svc .num { font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 300; color: rgba(197,165,90,0.3); margin-bottom: 14px; }
  .svc h3 { font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500; color: var(--white); letter-spacing: 2px; margin-bottom: 10px; }
  .svc p { font-size: 0.72rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* TRAINING HIGHLIGHT */
  .training-highlight {
    padding: 80px; background: var(--navy);
    text-align: center;
  }
  .training-inner {
    max-width: 800px; margin: 0 auto;
    padding: 50px 60px;
    border: 1px solid rgba(197,165,90,0.15);
    position: relative;
  }
  .training-inner::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 60px; height: 3px; background: var(--gold);
  }
  .training-inner .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-inner h3 {
    font-family: 'Cinzel', serif; font-size: 1.3rem; font-weight: 400;
    color: var(--white); letter-spacing: 2px; margin-bottom: 14px; text-transform: uppercase;
  }
  .training-inner p {
    font-size: 0.75rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 28px;
  }

  /* HOW WE WORK */
  .how-we-work {
    padding: 100px 80px; background: var(--navy);
  }
  .process-steps {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
    max-width: 1100px; margin: 0 auto; position: relative;
  }
  .process-steps::before {
    content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
    height: 1px; background: rgba(197,165,90,0.25);
  }
  .process-step {
    text-align: center; padding: 0 16px; position: relative;
  }
  .process-step .step-num {
    width: 56px; height: 56px; border: 2px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-family: 'Cinzel', serif; font-size: 1.1rem;
    font-weight: 600; color: var(--gold); background: var(--navy);
    position: relative; z-index: 2;
  }
  .process-step h4 {
    font-family: 'Cinzel', serif; font-size: 0.7rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 10px;
  }
  .process-step p {
    font-size: 0.65rem; line-height: 1.7; color: var(--slate); font-weight: 300;
  }

  /* WHY SECTION */
  .why {
    padding: 100px 80px; background: var(--navy);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center;
  }
  .why-left h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .why-left p { font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 32px; }
  .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .why-card {
    background: var(--navy-mid); padding: 32px 28px;
    border-top: 2px solid var(--gold); transition: transform 0.3s;
  }
  .why-card:hover { transform: translateY(-4px); }
  .why-card .icon { font-size: 1.6rem; margin-bottom: 12px; color: var(--gold); }
  .why-card h4 {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); margin-bottom: 8px; text-transform: uppercase;
  }
  .why-card p { font-size: 0.68rem; line-height: 1.7; color: var(--slate); font-weight: 300; }

  /* QUOTE */
  .quote-section {
    padding: 80px; background: var(--gold); text-align: center; position: relative;
  }
  .quote-section blockquote {
    font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; font-weight: 400;
    font-style: italic; color: var(--navy); max-width: 700px;
    margin: 0 auto; line-height: 1.5;
  }
  .quote-section .attr {
    font-family: 'Montserrat', sans-serif; font-size: 0.65rem; letter-spacing: 3px;
    text-transform: uppercase; color: var(--navy); font-weight: 700; margin-top: 24px;
  }

  /* CTA DARK */
  .cta-dark {
    padding: 100px 80px; text-align: center; background: var(--navy);
  }
  .cta-dark h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 4px; color: var(--white); text-transform: uppercase; margin-bottom: 14px;
  }
  .cta-dark p { font-size: 0.75rem; color: var(--slate); margin-bottom: 36px; font-weight: 300; }

  /* FOOTER */
  footer {
    background: #192842; padding: 50px 80px 30px;
    border-top: 1px solid rgba(197,165,90,0.1);
  }
  .footer-main {
    display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 60px;
    margin-bottom: 40px;
  }
  .footer-brand { display: flex; align-items: flex-start; gap: 16px; }
  .footer-brand svg { width: 28px; height: 34px; flex-shrink: 0; margin-top: 3px; }
  .footer-brand-text span {
    font-family: 'Cinzel', serif; font-size: 0.8rem; letter-spacing: 3px;
    color: rgba(255,255,255,0.5); display: inline-block; margin-bottom: 16px;
    line-height: 1.4; padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }
  .footer-brand-text p {
    font-size: 0.62rem; line-height: 1.9; color: rgba(255,255,255,0.3); font-weight: 300;
    max-width: 340px;
  }
  .footer-col h5 {
    font-family: 'Cinzel', serif; font-size: 0.6rem; font-weight: 600;
    letter-spacing: 3px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; padding-bottom: 12px;
    border-bottom: 1px solid rgba(197,165,90,0.3);
    display: inline-block;
  }
  .footer-col p, .footer-col a {
    font-size: 0.62rem; line-height: 2; color: rgba(255,255,255,0.35);
    font-weight: 300; text-decoration: none; display: block;
  }
  .footer-col a:hover { color: var(--gold); }
  .footer-social {
    display: flex; gap: 16px; margin-top: 14px;
  }
  .footer-social a {
    width: 32px; height: 32px; border: 1px solid rgba(197,165,90,0.2);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.65rem; color: rgba(255,255,255,0.4); transition: all 0.3s;
  }
  .footer-social a:hover { border-color: var(--gold); color: var(--gold); }
  .footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.08); padding-top: 24px;
    flex-wrap: wrap; gap: 12px;
  }
  .footer-bottom p {
    font-size: 0.55rem; color: rgba(255,255,255,0.2); letter-spacing: 1px;
  }

  /* ===== ABOUT PAGE ===== */
  .about-hero {
    min-height: 60vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
    padding: 140px 80px 80px;
  }
  .about-hero .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .about-content { position: relative; z-index: 2; }
  .about-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .about-content .overline::before, .about-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .about-content h1 {
    font-family: 'Cinzel', serif; font-size: 3rem; font-weight: 400;
    letter-spacing: 5px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .about-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .about-content p {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 650px; margin: 0 auto; font-weight: 300;
  }

  .about-story {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
  }
  .about-story h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 24px;
  }
  .about-story p {
    font-size: 0.78rem; line-height: 2; color: var(--slate); font-weight: 300; margin-bottom: 20px;
  }

  .stats-row {
    padding: 80px; background: var(--navy);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; text-align: center;
  }
  .stat-item { padding: 20px; }
  .stat-item .num {
    font-family: 'Cinzel', serif; font-size: 2.8rem; font-weight: 400; color: var(--gold); margin-bottom: 8px;
  }
  .stat-item .label {
    font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase; color: var(--slate); font-weight: 400;
  }

  .values-section { padding: 100px 80px; background: var(--navy-mid); }
  .values-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .value-item {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s; text-align: center;
  }
  .value-item:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .value-item .icon { font-size: 1.8rem; margin-bottom: 16px; color: var(--gold); }
  .value-item h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 12px;
  }
  .value-item p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== SECTORS PAGE ===== */
  .sectors-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1200px; margin: 0 auto;
  }
  .sector-card {
    padding: 50px 36px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative; overflow: hidden;
  }
  .sector-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0;
    height: 3px; background: var(--gold); transform: scaleX(0);
    transform-origin: left; transition: transform 0.5s;
  }
  .sector-card:hover::before { transform: scaleX(1); }
  .sector-card:hover { background: rgba(197,165,90,0.018); }
  .sector-card .sector-icon { font-size: 2rem; margin-bottom: 20px; color: var(--gold); opacity: 0.8; }
  .sector-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); margin-bottom: 12px; text-transform: uppercase;
  }
  .sector-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== INSIGHTS PAGE ===== */
  .insights-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .insight-card {
    background: var(--navy-mid); padding: 40px 36px;
    border-left: 3px solid var(--gold); transition: all 0.4s;
    display:flex;
    flex-direction:column;
    min-height:100%;
  }
  .insight-card:hover { transform: translateY(-2px); }
  .insight-card .tag {
    font-size: 0.5rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.95rem; font-weight: 500;
    color: var(--white); letter-spacing: 1px; margin-bottom: 12px; line-height: 1.5;
  }
  .insight-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; margin-bottom: 16px; }
  .insight-card .read-more {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; text-decoration: none; cursor: pointer; transition: opacity 0.3s;
  }
  .insight-card .read-more:hover { opacity: 0.7; }
  .insights-grid, .insights-more { align-items:stretch; }

  .official-updates-section {
    padding-top: 64px !important;
  }
  .official-updates-section .section-head {
    max-width: 920px;
    margin: 0 auto 34px;
    padding-top: 6px;
  }
  .official-updates-section .section-head .over {
    display: block;
    margin-bottom: 22px;
  }
  .official-updates-section .section-head h2 {
    margin-bottom: 24px;
  }
  .official-updates-section .section-head p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
  .official-updates-section .insights-grid {
    align-items: stretch;
  }
  .official-updates-section .insight-card {
    min-height: 100%;
  }
  .official-meta {
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 10px;
    font-weight: 500;
  }
  .official-date {
    display: block;
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 16px;
    font-weight: 500;
  }
  .official-note {
    max-width: 860px;
    margin: 12px auto 0;
    font-size: 0.64rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.42);
    text-align: center;
  }

  .official-updates-status {
    max-width: 1000px;
    margin: 10px auto 26px;
    padding: 0 4px;
    font-size: 0.56rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
  }
  .official-updates-status strong {
    color: rgba(255,255,255,0.72);
    font-weight: 500;
  }

  /* ===== TRAINING PAGE ===== */
  .training-page-intro {
    padding: 100px 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .training-page-content {
    padding: 80px; background: var(--navy-mid);
  }
  .training-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;
    max-width: 1000px; margin: 0 auto;
  }
  .training-feature {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s;
  }
  .training-feature:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .training-feature .icon { font-size: 1.6rem; margin-bottom: 14px; color: var(--gold); }
  .training-feature h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 10px;
  }
  .training-feature p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== CONTACT PAGE ===== */
  .contact-section {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start;
  }
  .contact-info h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .contact-info p {
    font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 36px;
  }
  .accreditation-card {
    margin-top: 34px;
    padding-top: 12px;
    border-top: 1px solid rgba(197,165,90,0.14);
  }
  .accreditation-card .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 12px;
  }
  .portal-intro {
    font-size: 0.7rem;
    line-height: 1.8;
    color: var(--slate);
    font-weight: 300;
    margin: 0 0 18px;
    max-width: 560px;
  }
  .portal-links-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portal-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    padding: 18px 20px;
    border: 1px solid rgba(197,165,90,0.16);
    background: rgba(255,255,255,0.02);
    border-radius: 16px;
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  }
  .portal-link:hover {
    transform: translateY(-2px);
    border-color: rgba(197,165,90,0.34);
    background: rgba(197,165,90,0.04);
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  }
  .portal-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  .portal-link-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
  }
  .portal-logo {
    display: block;
    max-width: min(240px, 100%);
    width: auto;
    height: auto;
    max-height: 48px;
  }
  .portal-logo-bloom { max-height: 44px; }
  .portal-logo-constellia { max-height: 40px; }
  .portal-logo-delta { max-height: 64px; }
  .portal-caption {
    font-size: 0.56rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.52);
    font-weight: 500;
    text-align: center;
  }
  .contact-detail {
    display: flex; gap: 14px; margin-bottom: 24px; align-items: flex-start;
  }
  .contact-detail .cd-icon {
    width: 36px; height: 36px; border: 1px solid rgba(197,165,90,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.8rem; color: var(--gold); flex-shrink: 0;
  }
  .contact-detail .cd-text .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 4px;
  }
  .contact-detail .cd-text .cd-value {
    font-size: 0.75rem; color: rgba(255,255,255,0.7); font-weight: 300;
  }
  .contact-form {
    background: var(--navy); padding: 50px 44px; border: 1px solid rgba(197,165,90,0.1);
  }
  .contact-form h3 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 30px;
  }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
  .form-group { margin-bottom: 20px; }
  .form-group label {
    display: block; font-size: 0.55rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--slate); font-weight: 500; margin-bottom: 8px;
  }
  .form-group input, .form-group select, .form-group textarea {
    width: 100%; background: var(--navy-mid); border: 1px solid rgba(197,165,90,0.15);
    color: var(--white); padding: 14px 16px; font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem; font-weight: 300; outline: none; transition: border-color 0.3s;
  }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--gold); }
  .form-group textarea { min-height: 120px; resize: vertical; }
  .form-group select { cursor: pointer; appearance: none; }
  .form-group select option { background: var(--navy-mid); }
  .form-submit { display: flex; align-items: center; gap: 20px; margin-top: 10px; }
  .form-success {
    display: none; padding: 28px 24px; background: rgba(197,165,90,0.08);
    border: 1px solid rgba(197,165,90,0.4); border-top: 3px solid var(--gold); text-align: center; margin-top: 20px;
    border-radius: 4px;
  }
  .contact-form.submitted > *:not(.form-success) { display: none !important; }
  .contact-form.submitted .form-success { display: block; }
  .form-success.show { display: block; }
  .form-success p {
    font-family: 'Cinzel', serif; font-size: 1.02rem; color: var(--gold);
    letter-spacing: 2px; margin-bottom: 12px; text-transform: uppercase;
  }
  .form-success span {
    font-size: 0.78rem; color: rgba(255,255,255,0.82); font-weight: 300;
    display: block; margin-top: 0; line-height: 1.85;
  }

  /* ===== PRIVACY POLICY PAGE ===== */
  .policy-content {
    padding: 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .policy-updated {
    font-size: 0.65rem; letter-spacing: 2px; color: var(--gold);
    text-transform: uppercase; font-weight: 500; margin-bottom: 30px;
  }
  .policy-section { margin-bottom: 36px; }
  .policy-content h2 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 16px;
  }
  .policy-content h3 {
    font-size: 0.72rem; font-weight: 600; color: var(--gold);
    letter-spacing: 1px; margin: 16px 0 8px; text-transform: uppercase;
  }
  .policy-content p {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    margin-bottom: 14px;
  }
  .policy-content ul {
    list-style: none; padding: 0; margin-bottom: 14px;
  }
  .policy-content ul li {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    padding-left: 20px; position: relative;
  }
  .policy-content ul li::before {
    content: ''; position: absolute; left: 0; top: 12px;
    width: 6px; height: 1px; background: var(--gold);
  }
  .policy-content strong { color: var(--white); font-weight: 500; }

  @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

  /* ===== REFINED DIMENSIONAL EFFECTS ===== */
  #page-home .hero-content {
    perspective: none;
    transform-style: flat;
  }

  .svc,
  .feature-split-card,
  .why-card,
  .sector-card,
  .insight-card,
  .training-feature,
  .toolkit-paid-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .value-item,
  .process-step {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 14px 30px rgba(9,16,28,0.14);
    transition: box-shadow 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
  }
  .svc::before,
  .feature-split-card::before,
  .why-card::before,
  .sector-card::before,
  .insight-card::before,
  .training-feature::before,
  .toolkit-paid-card::before,
  .tk-portal-card::before,
  .tk-gloss-term::before,
  .tk-notice-card::before,
  .value-item::before,
  .process-step::before {
    content:'';
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
    opacity:0;
    pointer-events:none;
    transition: opacity 0.28s ease;
  }
  .svc:hover,
  .feature-split-card:hover,
  .why-card:hover,
  .sector-card:hover,
  .insight-card:hover,
  .training-feature:hover,
  .toolkit-paid-card:hover,
  .tk-portal-card:hover,
  .tk-gloss-term:hover,
  .tk-notice-card:hover,
  .value-item:hover,
  .process-step:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .svc:hover::before,
  .feature-split-card:hover::before,
  .why-card:hover::before,
  .sector-card:hover::before,
  .insight-card:hover::before,
  .training-feature:hover::before,
  .toolkit-paid-card:hover::before,
  .tk-portal-card:hover::before,
  .tk-gloss-term:hover::before,
  .tk-notice-card:hover::before,
  .value-item:hover::before,
  .process-step:hover::before {
    opacity: 1;
  }

  .feature-split-card,
  .toolkit-paid-card,
  .training-feature,
  .insight-card,
  .sector-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .svc,
  .process-step {
    background-image: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  }

  .process-step {
    border: 1px solid rgba(197,165,90,0.08);
    padding: 26px 18px 24px;
    text-align: center;
  }
  .process-step:hover {
    background: linear-gradient(180deg, rgba(197,165,90,0.06), rgba(255,255,255,0.01));
  }
  .process-step .step-num {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }
  .process-step:hover .step-num {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    border-color: rgba(217,197,128,0.85);
  }

  .stats-row .stat-item {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
    border: 1px solid rgba(197,165,90,0.1);
    box-shadow: 0 16px 30px rgba(8,14,24,0.16);
    transition: transform 0.32s ease, box-shadow 0.32s ease, border-color 0.32s ease;
  }
  .stats-row .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .stats-row .stat-item::after {
    content: '';
    position: absolute;
    left: 18%; right: 18%; bottom: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.8), transparent);
    opacity: 0.55;
  }

  .nav-cta,
  .contact-form .btn-gold {
    transform: translateZ(0);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  }
  .nav-cta:hover,
  .contact-form .btn-gold:hover {
    transform: translateY(-2px) scale(1.035);
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
  }

  .insight-card {
    border: 1px solid rgba(197,165,90,0.12);
    border-left-width: 2px;
  }
  .insight-card::after {
    content:'';
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg, rgba(197,165,90,0), rgba(197,165,90,0.75), rgba(197,165,90,0));
    opacity:0.35;
    transition: opacity 0.28s ease;
  }
  .insight-card:hover::after {
    opacity:0.9;
  }
  .insight-card:hover .read-more,
  .sector-card:hover h3,
  .training-feature:hover h4,
  .toolkit-paid-card:hover .toolkit-card-link {
    color: var(--gold-light);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc,
    .feature-split-card,
    .why-card,
    .sector-card,
    .insight-card,
    .training-feature,
    .toolkit-paid-card,
    .tk-portal-card,
    .tk-gloss-term,
    .tk-notice-card,
    .value-item,
    .process-step,
    .stats-row .stat-item,
    .nav-cta,
    .contact-form .btn-gold {
      transition: none !important;
      transform: none !important;
    }
    .svc::before,
    .feature-split-card::before,
    .why-card::before,
    .sector-card::before,
    .insight-card::before,
    .training-feature::before,
    .toolkit-paid-card::before,
    .tk-portal-card::before,
    .tk-gloss-term::before,
    .tk-notice-card::before,
    .value-item::before,
    .process-step::before,
    .insight-card::after {
      transition: none !important;
    }
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 1024px) {
    .hero-content h1 { font-size: 2.6rem; }
    .about-story { grid-template-columns: 1fr; gap: 40px; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-section { grid-template-columns: 1fr; gap: 50px; }
    .why { grid-template-columns: 1fr; gap: 50px; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .process-steps::before { display: none; }
  }
  @media (max-width: 768px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger { display: flex; z-index: 101; }
    .hero { min-height: 100vh; padding: 0 24px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-desc { font-size: 0.72rem; }
    .hero-btns { flex-direction: column; align-items: center; gap: 12px; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; text-align: center; }
    .services, .why, .cta-dark, .about-hero, .about-story, .values-section, .contact-section, .training-page-content, .how-we-work { padding: 60px 24px; }
    .stats-row { padding: 60px 24px; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .quote-section { padding: 50px 24px; }
    .quote-section blockquote { font-size: 1.2rem; }
    .service-rows { grid-template-columns: 1fr; }
    .svc { padding: 32px 24px; }
    .svc h3 { font-size: 0.85rem; }
    .why-right { grid-template-columns: 1fr; }
    .values-grid { grid-template-columns: 1fr; }
    .sectors-grid { grid-template-columns: 1fr; }
    .insights-grid { grid-template-columns: 1fr; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: 1fr; gap: 30px; }
    .process-step .step-num { width: 46px; height: 46px; font-size: 0.95rem; }
    .form-row { grid-template-columns: 1fr; }
    .contact-form { padding: 36px 24px; }

    .accreditation-card { margin-top: 28px; padding-top: 10px; }
    .portal-links-grid { gap: 12px; }
    .portal-link { min-height: 82px; padding: 16px; }
    .portal-logo-bloom { max-height: 38px; }
    .portal-logo-constellia { max-height: 34px; }
    .portal-logo-delta { max-height: 54px; }
    footer { padding: 30px 24px 20px; }
    .footer-main { grid-template-columns: 1fr; gap: 30px; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .about-hero { padding: 80px 24px 40px; min-height: auto; }
    .about-content h1 { font-size: 1.8rem; }
    .about-content p { font-size: 0.72rem; }
    .about-story h2 { font-size: 1.4rem; }
    .stat-item .num { font-size: 2rem; }
    .section-head h2 { font-size: 1.4rem; }
    .cta-dark h2 { font-size: 1.4rem; letter-spacing: 2px; }
    .why-left h2 { font-size: 1.5rem; }
    .policy-content { padding: 40px 24px; }
    .policy-section h2 { font-size: 0.9rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    
    /* -- TOOLKIT INLINE STYLE OVERRIDES ----------------------- */
    .how-we-work { padding: 60px 24px !important; }
    #tk-notices-out { grid-template-columns: 1fr !important; }
    #tk-gloss-out { grid-template-columns: 1fr !important; }
    #page-toolkit .svc { overflow-x: hidden; overflow: hidden; }
    .svc::after { display: none; }
    .svc:hover { background: none; }
    #page-toolkit [style*="max-width:1100px"],
    #page-toolkit [style*="max-width:1000px"],
    #page-toolkit [style*="max-width:800px"] { max-width: 100% !important; padding-left: 0; padding-right: 0; }

    /* -- TOOLKIT OVERFLOW FIX --------------------------------- */
    #toolkit, #toolkit * { max-width: 100%; box-sizing: border-box; }
    #toolkit .container { overflow-x: hidden; }
    /* -- TOOLKIT PAGE MOBILE ----------------------------------- */
    .tk-portal-card { padding: 16px 18px; width: 100%; box-sizing: border-box; }
    .tk-portal-card strong { font-size: 0.75rem; }
    .tk-portal-card span { font-size: 0.7rem; }
    .tk-opt { padding: 10px 16px; font-size: 0.62rem; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .tk-gloss-term { padding: 12px 14px; }
    .tk-gloss-term strong { font-size: 0.7rem; }
    .tk-gloss-term span { font-size: 0.68rem; }
    .tk-milestone { flex-wrap: wrap; gap: 6px; }
    .tk-milestone-label { font-size: 0.66rem; flex-basis: 100%; }
    .tk-milestone-date { font-size: 0.66rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    [class*="tk-"] > * { max-width: 100%; box-sizing: border-box; }
    .tk-tool-panel, .tk-section, .tk-grid, .tk-card-grid { grid-template-columns: 1fr !important; }
    .tk-opt-group { display: flex; flex-direction: column; gap: 8px; width: 100%; }
    .tk-result { padding: 20px 16px; font-size: 0.72rem; }
    .tk-input, .tk-select { width: 100%; max-width: 100%; font-size: 0.78rem; padding: 10px 12px; box-sizing: border-box; }
    .tk-btn { width: 100%; min-height: 44px; font-size: 0.65rem; }
    .tk-tabs { flex-wrap: wrap; gap: 6px; }
    .tk-tab { flex: 1 1 auto; text-align: center; font-size: 0.6rem; padding: 8px 10px; }

  }

  /* -- TOOLKIT PAGE ------------------------------------------ */
  .tk-opt {
    background: transparent; border: 1px solid rgba(197,165,90,0.25);
    color: rgba(255,255,255,0.7); padding: 8px 18px;
    font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    font-family: 'Montserrat', sans-serif; cursor: pointer;
    border-radius: 2px; transition: all 0.3s;
  }
  .tk-opt:hover { border-color: var(--gold); color: var(--gold); background: rgba(197,165,90,0.06); }
  .tk-portal-card {
    display: block; padding: 20px 24px;
    border: 1px solid rgba(197,165,90,0.1);
    text-decoration: none; color: inherit;
    transition: all 0.3s; border-radius: 2px;
  }
  .tk-portal-card:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.018); }
  .tk-portal-card strong { font-family: 'Cinzel', serif; font-size: 0.8rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 6px; }
  .tk-portal-card span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-gloss-term { padding: 14px 18px; border: 1px solid rgba(197,165,90,0.08); border-radius: 2px; }
  .tk-gloss-term strong { font-family: 'Cinzel', serif; font-size: 0.72rem; color: var(--gold); display: block; margin-bottom: 4px; letter-spacing: 1px; }
  .tk-gloss-term span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-milestone { display: flex; align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .tk-milestone:last-child { border-bottom: none; }
  .tk-milestone-label { font-size: 0.68rem; color: rgba(255,255,255,0.5); flex: 1; }
  .tk-milestone-date { font-size: 0.68rem; color: var(--gold); font-family: 'Cinzel', serif; white-space: nowrap; }
  .tk-milestone-flag { font-size: 0.58rem; color: #e07070; margin-left: 6px; }

  /* -- PA23 NOTICES ------------------------------------------ */
  .tk-nf-active { border-color: var(--gold) !important; color: var(--gold) !important; background: rgba(197,165,90,0.08) !important; }
  .tk-notice-card {
    padding: 20px 22px; border: 1px solid rgba(197,165,90,0.1);
    border-radius: 2px; transition: border-color 0.3s;
  }
  .tk-notice-card:hover { border-color: rgba(197,165,90,0.3); }
  .tk-notice-ref { font-family: 'Cinzel', serif; font-size: 0.75rem; color: var(--gold); letter-spacing: 2px; font-weight: 600; }
  .tk-notice-cat { font-size: 0.5rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); font-family: 'Montserrat', sans-serif; }
  .tk-notice-title { font-family: 'Cinzel', serif; font-size: 0.82rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 14px; }
  .tk-notice-section { margin-bottom: 10px; }
  .tk-notice-section:last-child { margin-bottom: 0; }
  .tk-notice-label { font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); font-weight: 500; display: block; margin-bottom: 3px; }
  .tk-notice-section p { font-size: 0.68rem; color: rgba(255,255,255,0.55); line-height: 1.75; margin: 0; }

  /* Global mobile overflow protection */
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }
  .btn-gold:focus-visible, .btn-ghost:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }

  @media (max-width: 768px) {

    
    /* -- NOTICE CARDS MOBILE FIX ------------------------------- */
    .tk-notice-card { padding: 16px 14px; box-sizing: border-box; word-break: break-word; }
    .tk-notice-cat { 
      font-size: 0.42rem; 
      letter-spacing: 1px; 
      white-space: normal; 
      text-align: right;
      max-width: 120px;
      line-height: 1.4;
    }
    .tk-notice-ref { flex-shrink: 0; }
    #tk-notices-out { 
      grid-template-columns: 1fr !important; 
      overflow: hidden;
    }
    #tk-notices-out .tk-notice-card { width: 100%; max-width: 100%; overflow: hidden; }

    /* -- SERVICES DECORATIVE LINE FIX ------------------------- */
    .services::before { display: none; }

    /* -- GRID LINES MOBILE FIX -------------------------------- */
    .hero-lines { display: none; }
    .about-hero { overflow: hidden; }
    .services { overflow: hidden; }
    #page-toolkit .services { isolation: isolate; }

  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible, .btn-gold:focus-visible, .btn-ghost:focus-visible,
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- GLOSSARY SCROLLBAR ------------------------------------ */
  #tk-gloss-out::-webkit-scrollbar {
    width: 4px;
  }
  #tk-gloss-out::-webkit-scrollbar-track {
    background: rgba(25,40,66,0.6);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb {
    background: rgba(197,165,90,0.4);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb:hover {
    background: rgba(197,165,90,0.7);
  }

  /* ===== EDITORIAL / TOOLKIT ENHANCEMENTS ===== */
  .svc-link, .training-link-inline {
    display:inline-block;
    margin-top:14px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    text-decoration:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .svc-link:hover, .training-link-inline:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }

  .toolkit-paid {
    padding:80px; padding:clamp(40px,5vw,80px) clamp(20px,5vw,80px);
    background: var(--navy);
  }
  .feature-split-grid {
    max-width:1100px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px;
    align-items:stretch;
  }
  .feature-split-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:48px 52px;
    background:rgba(255,255,255,0.012);
    min-height:430px;
    display:flex;
    flex-direction:column;
    text-align:center;
  }
  .feature-split-card h4 {
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:3px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:20px;
  }
  .feature-split-card p {
    font-size:0.84rem;
    line-height:1.95;
    color:var(--slate);
    font-weight:300;
    max-width:560px;
    margin:0 auto 26px;
  }
  .feature-split-actions {
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .feature-split-actions .btn-gold,
  .feature-split-actions .btn-ghost {
    width:min(360px,100%);
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:14px 24px;
  }
  .support-products-grid {
    max-width:1100px;
    margin:0 auto 36px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
  }
  .toolkit-paid-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:38px 42px 34px;
    background:rgba(255,255,255,0.012);
    display:flex;
    flex-direction:column;
    min-height:0;
  }
  .toolkit-paid-card h4 {
    font-family:'Cinzel',serif;
    font-size:0.98rem;
    font-weight:500;
    letter-spacing:2px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .toolkit-paid-card > p {
    font-size:0.79rem;
    line-height:1.85;
    color:var(--slate);
    font-weight:300;
    margin-bottom:24px;
  }
  .toolkit-card-footer {
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid rgba(197,165,90,0.12);
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .toolkit-card-label {
    display:block;
    margin-bottom:10px;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
  }
  .toolkit-card-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .toolkit-card-list li {
    position:relative;
    padding-left:16px;
    font-size:0.69rem;
    line-height:1.7;
    color:rgba(255,255,255,0.62);
  }
  .toolkit-card-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:1px;
    background:var(--gold);
    opacity:0.8;
  }
  .toolkit-card-fit {
    margin:0;
    font-size:0.68rem;
    line-height:1.75;
    color:rgba(255,255,255,0.52);
  }
  .toolkit-card-link {
    align-self:flex-start;
    background:none;
    border:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    color:var(--gold);
    padding:0 0 4px;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    text-decoration:none;
  }
  .toolkit-card-link:hover {
    color:var(--gold-light);
    border-bottom-color:var(--gold-light);
  }
  .toolkit-paid-actions {
    max-width:1100px;
    margin:0 auto;
    text-align:center;
  }
  .toolkit-paid-note {
    max-width:680px;
    margin:18px auto 0;
    font-size:0.65rem;
    line-height:1.8;
    color:rgba(255,255,255,0.28);
  }

  .toolkit-toggle-btn {
    background:transparent;
    border:1px solid rgba(197,165,90,0.28);
    color:var(--gold);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    cursor:pointer;
    border-radius:2px;
    margin-bottom:18px;
  }
  .toolkit-toggle-btn:hover { background:rgba(197,165,90,0.06); border-color:var(--gold); }

  .insight-card.featured {
    background:rgba(255,255,255,0.015);
    border-left-width:4px;
  }
  .featured-label {
    font-size:0.48rem;
    letter-spacing:4px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
    margin-bottom:12px;
  }
  .insight-meta {
    font-size:0.54rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.42);
    margin-bottom:14px;
  }
  .insight-body {
    display:none;
    margin-top:18px;
  }
  .insight-body p {
    margin-bottom:14px;
    font-size:0.72rem;
    line-height:1.9;
    color:var(--slate);
  }
  .insight-toggle {
    margin-top:auto;
    align-self:flex-start;
    background:none;
    border:none;
    color:var(--gold);
    padding:0;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .insight-toggle:hover { color:var(--gold-light); border-bottom-color:var(--gold-light); }
  .insights-more { display:none; }
  .insights-more-wrap { text-align:center; margin-top:36px; }
  .insight-card h3 { text-wrap:balance; }
  .article-readtime { display:inline-block; }

  @media (max-width: 768px) {
    .feature-split-grid, .support-products-grid { grid-template-columns:1fr; gap:18px; }
    .feature-split-card { padding:30px 24px; min-height:auto; }
    .feature-split-card h4 { font-size:0.92rem; }
    .feature-split-card p { font-size:0.78rem; }
    .feature-split-actions .btn-gold, .feature-split-actions .btn-ghost { width:100%; min-height:46px; }
    .toolkit-paid-card { padding:28px 24px; min-height:auto; }
    .toolkit-paid-card h4 { font-size:0.86rem; }
    .toolkit-paid-card > p { font-size:0.76rem; }
    .toolkit-card-footer { padding-top:18px; gap:14px; }
    .toolkit-card-list li { font-size:0.68rem; }
    .toolkit-card-fit { font-size:0.67rem; }
    .toolkit-card-link { font-size:0.54rem; letter-spacing:2.2px; }
    .svc-link, .training-link-inline, .insight-toggle { font-size:0.54rem; letter-spacing:2.2px; }
  }

  /* ===== PCC TOOLKIT CALCULATORS ===== */
  .tk-calc-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:760px;
    margin-bottom:1.35rem;
    align-items:end;
  }
  .tk-calc-field label {
    display:block;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:8px;
    font-family:'Cinzel',serif;
  }
  .tk-calc-field input,
  .tk-calc-field select {
    width:100%;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(197,165,90,0.2);
    color:var(--white);
    padding:10px 14px;
    font-family:'Montserrat',sans-serif;
    font-size:0.75rem;
    border-radius:2px;
    box-sizing:border-box;
  }
  .tk-calc-field input::placeholder { color:rgba(255,255,255,0.28); }
  .tk-calc-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:1rem;
  }
  .tk-calc-btn {
    background:var(--gold);
    color:var(--navy);
    border:none;
    padding:10px 24px;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    cursor:pointer;
    white-space:nowrap;
    border-radius:2px;
  }
  .tk-calc-btn-secondary {
    background:transparent;
    color:var(--gold);
    border:1px solid rgba(197,165,90,0.3);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-radius:2px;
  }
  .tk-calc-note {
    font-size:0.62rem;
    color:rgba(255,255,255,0.38);
    line-height:1.75;
    max-width:760px;
    margin-top:0.85rem;
  }
  .tk-calc-note strong {
    color:rgba(255,255,255,0.62);
    font-weight:600;
  }
  .tk-calc-out {
    display:none;
    max-width:900px;
    background:rgba(0,0,0,0.2);
    border:1px solid rgba(197,165,90,0.15);
    padding:1.5rem;
    border-radius:2px;
    color:rgba(255,255,255,0.72);
    margin-top:0;
  }
  .tk-tool-copy {
    max-width:760px;
    margin-bottom:1.5rem;
  }
  .tk-tool-copy p,
  .tk-tool-copy .tk-calc-note {
    margin-left:0;
    margin-right:0;
  }
  .tk-cta {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(255,255,255,0.06);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .tk-cta-text {
    margin:0;
    font-size:0.68rem;
    line-height:1.8;
    color:rgba(255,255,255,0.6);
    flex:1 1 320px;
  }
  .tk-cta-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 18px;
    border:1px solid rgba(197,165,90,0.3);
    color:var(--gold);
    text-decoration:none;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    border-radius:2px;
    transition:border-color .25s ease, background .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .tk-cta-btn:hover {
    border-color:var(--gold);
    background:rgba(197,165,90,0.08);
  }
  .tk-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:1rem;
  }
  .tk-summary-item {
    border:1px solid rgba(197,165,90,0.12);
    background:rgba(255,255,255,0.02);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-summary-item span {
    display:block;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:8px;
  }
  .tk-summary-item strong {
    display:block;
    font-family:'Cinzel',serif;
    color:var(--gold);
    font-size:0.95rem;
    letter-spacing:1px;
    font-weight:500;
  }
  .tk-standstill-days {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:1rem;
  }
  .tk-standstill-day {
    border:1px solid rgba(197,165,90,0.1);
    background:rgba(255,255,255,0.015);
    padding:12px 14px;
  }
  .tk-standstill-day span {
    display:block;
    font-size:0.5rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:5px;
  }
  .tk-standstill-day strong {
    display:block;
    font-size:0.72rem;
    color:var(--white);
    font-weight:500;
  }
  .tk-vat-breakdown {
    margin-top:0.6rem;
    padding-top:0.9rem;
    border-top:1px solid rgba(255,255,255,0.06);
    font-size:0.68rem;
    color:rgba(255,255,255,0.56);
    line-height:1.9;
  }
  .tk-vat-breakdown strong { color:var(--gold); font-weight:600; }
  .tk-toggle-group {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
  }
  .tk-toggle-btn {
    appearance:none;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.03);
    color:var(--white);
    min-height:72px;
    padding:0.9rem 1rem;
    font-size:0.72rem;
    line-height:1.55;
    letter-spacing:0.4px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    flex:1 1 180px;
    text-align:left;
  }
  .tk-toggle-btn:hover,
  .tk-toggle-btn:focus-visible {
    border-color:rgba(197,165,90,0.45);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-toggle-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.14);
    color:var(--gold);
    box-shadow:0 12px 28px rgba(0,0,0,0.16);
  }
  .tk-toggle-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.82rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.18rem;
    color:inherit;
  }
  .tk-toggle-btn span {
    display:block;
    font-size:0.64rem;
    line-height:1.7;
    color:inherit;
    opacity:0.9;
  }

  .tk-vat-grid {
    display:grid;
    grid-template-columns:minmax(0, 760px);
    gap:16px;
    max-width:760px;
    align-items:start;
    margin-bottom:1.35rem;
  }
  .tk-vat-field-wide {
    grid-column:1 / -1;
  }
  .tk-pill-group {
    display:grid;
    gap:12px;
    width:100%;
  }
  .tk-pill-group-mode {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-group-rates {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-btn {
    appearance:none;
    border:1px solid rgba(197,165,90,0.18);
    background:rgba(255,255,255,0.03);
    color:rgba(255,255,255,0.78);
    min-height:84px;
    padding:1rem 1rem 0.95rem;
    font-size:0.68rem;
    line-height:1.35;
    letter-spacing:0.5px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
    text-align:left;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  .tk-pill-btn:hover,
  .tk-pill-btn:focus-visible {
    border-color:rgba(197,165,90,0.42);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-pill-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.12);
    color:var(--gold);
  }
  .tk-pill-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.76rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.16rem;
    color:inherit;
  }
  .tk-pill-btn span {
    display:block;
    font-size:0.58rem;
    line-height:1.5;
    color:inherit;
    opacity:0.92;
  }
  .tk-vat-custom-wrap {
    max-width:260px;
  }
  .tk-cycle-layout {
    display:grid;
    grid-template-columns:minmax(360px, 520px) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    max-width:1100px;
  }
  .tk-cycle-wheel-wrap {
    position:relative;
    width:min(100%, 520px);
    aspect-ratio:1 / 1;
    margin:0 auto;
  }
  .tk-cycle-wheel {
    width:100%;
    height:100%;
    display:block;
    overflow:visible;
    filter:drop-shadow(0 18px 34px rgba(0,0,0,0.2));
  }
  .tk-cycle-stage {
    transition: transform .22s ease, filter .22s ease;
  }
  .tk-cycle-stage:hover,
  .tk-cycle-stage:focus-within {
    transform: translate(var(--tk-shift-x, 0px), var(--tk-shift-y, 0px));
    filter: drop-shadow(0 10px 14px rgba(0,0,0,0.18));
  }
  .tk-cycle-stage.is-active {
    transform: translate(calc(var(--tk-shift-x, 0px) * 0.72), calc(var(--tk-shift-y, 0px) * 0.72));
    filter: drop-shadow(0 12px 16px rgba(0,0,0,0.2));
  }
  .tk-cycle-segment {
    fill:#102648;
    stroke:rgba(230,232,237,0.88);
    stroke-width:2.4;
    cursor:pointer;
    transition:fill .22s ease, stroke .22s ease, opacity .22s ease;
    outline:none !important;
    -webkit-tap-highlight-color:transparent;
  }
  .tk-cycle-stage:hover .tk-cycle-segment,
  .tk-cycle-stage:focus-within .tk-cycle-segment {
    fill:#17345f;
    stroke:rgba(255,255,255,0.95);
  }
  .tk-cycle-stage.is-active:hover .tk-cycle-segment,
  .tk-cycle-stage.is-active:focus-within .tk-cycle-segment,
  .tk-cycle-segment.active {
    fill:var(--gold);
    stroke:rgba(217,197,128,0.95);
  }
  .tk-cycle-segment:focus,
  .tk-cycle-segment:focus-visible {
    outline:none !important;
  }
  .tk-cycle-stage-number {
    fill:var(--white);
    font-family:'Montserrat',sans-serif;
    font-size:20px;
    font-weight:800;
    text-anchor:middle;
    dominant-baseline:middle;
    pointer-events:none;
    transition: fill .22s ease, transform .22s ease;
    paint-order: stroke;
    stroke: rgba(10,20,38,0.18);
    stroke-width: 0.7px;
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage:hover .tk-cycle-stage-number {
    transform: translateY(-1px);
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage-number.active,
  .tk-cycle-stage.is-active:hover .tk-cycle-stage-number {
    fill:var(--white);
    stroke: rgba(15,27,45,0.45);
  }
  .tk-cycle-center {
    position:absolute;
    inset:50% auto auto 50%;
    width:46%;
    aspect-ratio:1 / 1;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    background:radial-gradient(circle at 35% 30%, rgba(31,69,121,0.98), rgba(10,30,59,0.98));
    color:var(--white);
    box-shadow:0 0 0 10px rgba(197,165,90,0.18), inset 0 0 0 1px rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.18);
    padding:28px;
  }
  .tk-cycle-center::after {
    content:'';
    position:absolute;
    inset:12px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.06);
    pointer-events:none;
  }
  .tk-cycle-center span {
    display:block;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(197,165,90,0.92);
    margin-bottom:0.5rem;
  }
  .tk-cycle-center strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:1.06rem;
    line-height:1.4;
    letter-spacing:1px;
    font-weight:600;
    color:#f7f7f3;
  }
  .tk-cycle-center small {
    display:block;
    margin-top:0.7rem;
    font-size:0.72rem;
    line-height:1.6;
    color:rgba(255,255,255,0.72);
    max-width:190px;
  }
  .tk-cycle-panel {
    max-width:560px;
    background:linear-gradient(180deg, rgba(8,22,44,0.42), rgba(8,22,44,0.28));
    border:1px solid rgba(197,165,90,0.18);
    padding:1.6rem 1.65rem;
    border-radius:6px;
    min-height:420px;
    box-shadow:0 20px 36px rgba(5,11,21,0.14);
  }
  .tk-cycle-panel-head {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-bottom:0.95rem;
  }
  .tk-cycle-panel-tag {
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
  }
  .tk-cycle-panel h4 {
    margin:0;
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:1px;
    color:var(--white);
  }
  .tk-cycle-panel p {
    margin:0 0 1rem;
    font-size:0.7rem;
    line-height:1.9;
    color:rgba(255,255,255,0.66);
  }
  .tk-cycle-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .tk-cycle-detail-box {
    border:1px solid rgba(197,165,90,0.14);
    background:rgba(255,255,255,0.025);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-cycle-detail-box span {
    display:block;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.4);
    margin-bottom:8px;
  }
  .tk-cycle-detail-box ul {
    margin:0;
    padding-left:1.1rem;
    color:rgba(255,255,255,0.66);
    font-size:0.68rem;
    line-height:1.8;
  }
  @media (max-width: 900px) {
    .tk-pill-group-rates {
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tk-cycle-layout {
      grid-template-columns:1fr;
    }
    .tk-cycle-panel {
      min-height:auto;
    }
  }
  @media (max-width: 768px) {
    .tk-vat-grid { max-width:none; }
    .tk-pill-group-mode,
    .tk-pill-group-rates,
    .tk-cycle-detail-grid {
      grid-template-columns:1fr;
    }
    .tk-cycle-center {
      width:52%;
      padding:22px;
    }
    .tk-cycle-center strong {
      font-size:0.88rem;
    }
    .tk-cycle-center small {
      font-size:0.64rem;
      max-width:140px;
    }
    .tk-cycle-stage-number {
      font-size:22px;
    }
  }

  @media (max-width: 768px) {
    .tk-calc-grid { grid-template-columns:1fr; gap:14px; }
    .tk-summary-grid { grid-template-columns:1fr; }
    .tk-calc-actions { flex-direction:column; align-items:stretch; }
    .tk-calc-btn, .tk-calc-btn-secondary { width:100%; }
    .tk-calc-out { padding:1.2rem; }
    .tk-cta { flex-direction:column; align-items:stretch; }
    .tk-cta-btn { width:100%; }
    .tk-toggle-btn { flex:1 1 100%; min-height:auto; }
  }

/* ===== PCC DYNAMIC ARTICLES ===== */
.article-modal {
  position: fixed;
  inset: 0;
  background: rgba(3, 10, 24, 0.82);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}
.article-modal.open { display: flex; }
.article-modal-dialog {
  width: min(920px, 100%);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, rgba(10,24,52,0.98), rgba(6,15,33,0.98));
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
  position: relative;
}
.article-modal-content {
  padding: 34px 30px 36px;
}
.article-modal-close {
  position: sticky;
  top: 16px;
  margin-left: calc(100% - 56px);
  width: 40px;
  height: 40px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.article-modal-close:hover { opacity: 0.8; }
.article-modal-excerpt {
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--white);
  opacity: 0.92;
  margin-bottom: 22px;
}
 .article-modal-body h2 {
  font-size: 1.05rem;
  margin: 24px 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
}
.article-modal-body p {
  color: var(--white);
  opacity: 0.92;
  line-height: 1.95;
  margin: 0 0 14px;
  font-size: 0.92rem;
}
.article-modal-body a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-modal-body a:hover {
  color: var(--gold);
}
@media (max-width: 768px) {
  .article-modal { padding: 12px; }
  .article-modal-content { padding: 26px 18px 24px; }
  .quick-slot-grid {
    flex-direction: column;
    align-items: stretch;
  }
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: accessibility-statement.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
    --panel: rgba(255,255,255,0.03);
    --line: rgba(197,165,90,0.15);
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body {
    background: var(--navy);
    color: var(--white);
    font-family: 'Montserrat', sans-serif;
    overflow-x: hidden;
  }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  a { color: inherit; text-decoration: none; }
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 24px 60px; background: rgba(25,40,66,0.96); backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(197,165,90,0.08);
  }
  .nav-logo { display: flex; align-items: center; gap: 14px; text-decoration: none; }
  .nav-logo svg { width: 32px; height: 40px; flex: 0 0 auto; }
  .nav-brand { font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px; white-space: nowrap; }
  .nav-links { display: flex; gap: 28px; align-items: center; flex-wrap: wrap; }
  .nav-links a { color: rgba(255,255,255,0.6); font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase; transition: color 0.3s; }
  .nav-links a:hover { color: var(--gold); }
  .nav-cta { border: 1.5px solid var(--gold); color: var(--gold) !important; padding: 10px 24px; font-weight: 600; }
  .nav-cta:hover { background: var(--gold); color: var(--navy) !important; }
  .wrap { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
  .hero { padding: 140px 0 40px; }
  .eyebrow {
    display: inline-block; margin-bottom: 18px; color: var(--gold-light);
    letter-spacing: 0.18em; text-transform: uppercase; font-size: 0.78rem;
  }
  h1 {
    font-family: 'Cinzel', serif; font-weight: 500; line-height: 1.08;
    font-size: clamp(2.1rem, 4vw, 3.6rem); margin-bottom: 16px;
  }
  .intro { max-width: 900px; color: rgba(248,245,239,0.86); line-height: 1.8; font-size: 1.04rem; }
  .meta-bar {
    margin-top: 24px; display: flex; gap: 12px; flex-wrap: wrap;
  }
  .pill {
    display: inline-flex; align-items: center; min-height: 38px; padding: 0 14px;
    border: 1px solid rgba(197,165,90,0.24); color: var(--gold-light);
    background: rgba(255,255,255,0.02); font-size: 0.76rem; letter-spacing: 0.12em;
    text-transform: uppercase;
  }
  .layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 24px; padding: 12px 0 64px; }
  .card {
    background: var(--panel); border: 1px solid var(--line); border-radius: 6px;
    padding: 28px;
  }
  .card + .card { margin-top: 18px; }
  h2 { font-family: 'Cinzel', serif; font-weight: 500; font-size: 1.45rem; margin-bottom: 12px; }
  h3 { font-size: 1rem; color: var(--gold-light); letter-spacing: 0.08em; text-transform: uppercase; margin: 0 0 10px; }
  p, li { color: rgba(248,245,239,0.86); line-height: 1.82; }
  ul { padding-left: 20px; }
  li + li { margin-top: 8px; }
  .aside-title { font-size: 0.85rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--gold-light); margin-bottom: 12px; }
  .aside-list { display: grid; gap: 12px; }
  .aside-list a { color: var(--gold-light); text-decoration: underline; text-underline-offset: 4px; }
  .card a, aside a, footer a { overflow-wrap: anywhere; word-break: break-word; }
  .small { font-size: 0.94rem; color: rgba(248,245,239,0.68); overflow-wrap: anywhere; word-break: break-word; }
  footer { padding: 0 0 56px; }
  .footer-card { padding: 22px 28px; }
  @media (max-width: 900px) { .layout { grid-template-columns: 1fr; } }
  @media (max-width: 640px) {
    nav { padding: 18px 20px; position: fixed; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.56rem; letter-spacing: 2px; }
    .wrap { width: min(1120px, calc(100% - 24px)); }
    .hero { padding-top: 118px; }
    .card { padding: 20px; }
  }

/* ===== Source: accessibility-statement.html style block 2 ===== */
@media (max-width: 900px) {
    body.legal-policy-page #hamburger {
      background: none !important;
      border: 0 !important;
      display: flex !important;
      flex-direction: column !important;
      gap: 5px !important;
      padding: 8px !important;
      position: fixed !important;
      left: 330px !important;
      right: auto !important;
      top: 18px !important;
      z-index: 101 !important;
    }
    body.legal-policy-page #hamburger span {
      background: #ffffff !important;
      display: block !important;
      height: 1.5px !important;
      width: 24px !important;
    }
  }
  @media (max-width: 360px) {
    body.legal-policy-page #hamburger {
      left: calc(100vw - 48px) !important;
      right: auto !important;
    }
  }

/* ===== Source: article.html style block 1 ===== */
:root {
      --navy: #192842;
      --navy-mid: #253a59;
      --gold: #c5a55a;
      --gold-light: #d9c580;
      --white: #ffffff;
      --slate: #a0b0c0;
      --panel: rgba(255,255,255,0.03);
      --border: rgba(197,165,90,0.18);
    }
    * { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }
    body {
      background: linear-gradient(180deg, #192842 0%, #203350 100%);
      color: var(--white);
      font-family: 'Montserrat', sans-serif;
      min-height: 100vh;
    }
    a { color: inherit; text-decoration: none; }
    .topbar {
      position: sticky;
      top: 0;
      z-index: 50;
      background: rgba(25,40,66,0.96);
      backdrop-filter: blur(10px);
      border-bottom: 1px solid rgba(255,255,255,0.05);
    }
    .topbar-inner {
      max-width: 1180px;
      margin: 0 auto;
      padding: 18px 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
    }
    .brand {
      display: inline-flex;
      align-items: center;
      gap: 14px;
      font-family: 'Cinzel', serif;
      letter-spacing: 2px;
      font-size: 0.9rem;
      color: var(--white);
    }
    .brand-mark {
      width: 28px;
      height: 36px;
      flex: 0 0 auto;
      display: block;
    }
    .brand-text {
      display: inline-block;
      line-height: 1;
      white-space: nowrap;
    }
    .top-links {
      display: flex;
      gap: 18px;
      flex-wrap: wrap;
      align-items: center;
    }
    .top-links a {
      font-size: 0.72rem;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      color: rgba(255,255,255,0.72);
    }
    .top-links a:hover { color: var(--gold); }
    .page-shell {
      max-width: 980px;
      margin: 0 auto;
      padding: 42px 24px 80px;
    }
    .breadcrumb {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      align-items: center;
      font-size: 0.72rem;
      letter-spacing: 1px;
      text-transform: uppercase;
      color: var(--slate);
      margin-bottom: 26px;
    }
    .breadcrumb a { color: rgba(255,255,255,0.74); }
    .breadcrumb a:hover { color: var(--gold); }
    .article-shell {
      background: var(--panel);
      border: 1px solid var(--border);
      border-radius: 18px;
      padding: 36px 32px;
      box-shadow: 0 18px 48px rgba(0,0,0,0.18);
    }
    .tag-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      align-items: center;
      margin-bottom: 18px;
    }
    .featured-label,
    .tag {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 32px;
      padding: 7px 14px;
      border-radius: 999px;
      font-size: 0.68rem;
      letter-spacing: 1.4px;
      text-transform: uppercase;
      font-weight: 600;
    }
    .featured-label {
      background: rgba(197,165,90,0.14);
      color: var(--gold-light);
      border: 1px solid rgba(197,165,90,0.2);
    }
    .tag {
      background: rgba(255,255,255,0.05);
      color: rgba(255,255,255,0.86);
      border: 1px solid rgba(255,255,255,0.08);
    }
    .article-meta {
      font-size: 0.78rem;
      line-height: 1.8;
      color: var(--slate);
      margin-bottom: 16px;
    }
    .article-title {
      font-family: 'Cinzel', serif;
      font-size: 2.45rem;
      line-height: 1.25;
      margin-bottom: 18px;
      letter-spacing: 1px;
    }
    .article-excerpt {
      font-size: 0.98rem;
      line-height: 1.9;
      color: rgba(255,255,255,0.82);
      margin-bottom: 28px;
    }
    .article-body {
      font-size: 0.95rem;
      line-height: 1.95;
      color: rgba(255,255,255,0.92);
    }
    .article-body h2 {
      font-family: 'Cinzel', serif;
      font-size: 1.5rem;
      margin-top: 34px;
      margin-bottom: 14px;
      color: var(--gold-light);
      line-height: 1.35;
    }
    .article-body h3 {
      font-family: 'Cinzel', serif;
      font-size: 1.2rem;
      margin-top: 28px;
      margin-bottom: 12px;
      color: var(--gold-light);
      line-height: 1.35;
    }
    .article-body p,
    .article-body ul,
    .article-body ol,
    .article-body blockquote { margin-bottom: 16px; }
    .article-body ul,
    .article-body ol { padding-left: 22px; }
    .article-body li { margin-bottom: 8px; }
    .article-body a {
      color: var(--gold-light);
      text-decoration: underline;
      text-underline-offset: 2px;
    }
    .article-body strong { color: #ffffff; }
    .article-body blockquote {
      border-left: 3px solid rgba(197,165,90,0.4);
      padding-left: 16px;
      color: rgba(255,255,255,0.8);
    }
    .page-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 34px;
    }
    .action-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 44px;
      padding: 12px 18px;
      border-radius: 999px;
      font-size: 0.72rem;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      font-weight: 600;
      transition: 0.25s ease;
    }
    .action-btn.primary { background: var(--gold); color: var(--navy); }
    .action-btn.primary:hover { background: var(--gold-light); }
    .action-btn.secondary {
      border: 1px solid rgba(197,165,90,0.28);
      color: var(--gold-light);
      background: transparent;
    }
    .action-btn.secondary:hover { background: rgba(197,165,90,0.1); }
    .state-box {
      background: rgba(255,255,255,0.03);
      border: 1px solid rgba(255,255,255,0.08);
      border-radius: 14px;
      padding: 22px;
    }
    .state-box h1,
    .state-box h2 {
      font-family: 'Cinzel', serif;
      margin-bottom: 12px;
      line-height: 1.35;
    }
    .state-box p {
      color: rgba(255,255,255,0.82);
      line-height: 1.85;
      margin-bottom: 12px;
    }
    @media (max-width: 768px) {
      .topbar-inner {
        padding: 16px 18px;
        align-items: flex-start;
        flex-direction: column;
      }
      .page-shell { padding: 28px 16px 60px; }
      .article-shell { padding: 24px 18px; }
      .article-title { font-size: 1.8rem; }
      .top-links { gap: 12px; }
    }
  
/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: articles.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --white: #ffffff;
    --slate: #a0b0c0;
    --panel: rgba(255,255,255,0.02);
  }
  * { box-sizing: border-box; margin: 0; padding: 0; }
  html { scroll-behavior: smooth; }
  body {
    background: var(--navy);
    color: var(--white);
    font-family: 'Montserrat', sans-serif;
    overflow-x: hidden;
  }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }

  nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 28px 60px;
    background: transparent;
    transition: all 0.4s;
  }
  nav.scrolled {
    background: rgba(25,40,66,0.96);
    backdrop-filter: blur(10px);
    padding: 18px 60px;
  }
  .nav-logo {
    display: flex;
    align-items: center;
    gap: 14px;
    text-decoration: none;
  }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--white);
    letter-spacing: 3px;
  }
  .nav-links {
    display: flex;
    gap: 28px;
    align-items: center;
  }
  .nav-links a {
    text-decoration: none;
    font-size: 0.65rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.6);
    font-weight: 400;
    transition: color 0.3s;
    position: relative;
  }
  .nav-links a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0;
    height: 1px;
    background: var(--gold);
    transition: width 0.3s;
  }
  .nav-links a:hover,
  .nav-links a.active { color: var(--gold); }
  .nav-links a:hover::after,
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent;
    border: 1.5px solid var(--gold);
    color: var(--gold);
    padding: 10px 24px;
    font-size: 0.6rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-weight: 600;
  }
  .nav-cta:hover {
    background: var(--gold);
    color: var(--navy);
  }
  .hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
    background: none;
    border: none;
    padding: 8px;
  }
  .hamburger span {
    width: 24px;
    height: 1.5px;
    background: var(--white);
    transition: all 0.3s;
  }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }
  .mobile-menu {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(25,40,66,0.98);
    z-index: 99;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a {
    text-decoration: none;
    font-family: 'Cinzel', serif;
    font-size: 1.4rem;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.6);
  }
  .mobile-menu a:hover,
  .mobile-menu a.active { color: var(--gold); }

  .hero {
    min-height: 68vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
    padding: 140px 24px 90px;
  }
  .hero-lines {
    position: absolute;
    inset: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    pointer-events: none;
  }
  .hero-content {
    position: relative;
    z-index: 1;
    max-width: 900px;
  }
  .hero-content .overline {
    font-size: 0.6rem;
    letter-spacing: 8px;
    text-transform: uppercase;
    color: var(--gold);
    font-weight: 500;
    margin-bottom: 22px;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif;
    font-size: 3.1rem;
    font-weight: 400;
    letter-spacing: 5px;
    text-transform: uppercase;
    line-height: 1.2;
    margin-bottom: 22px;
  }
  .hero-content p {
    font-size: 0.82rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.65);
    max-width: 760px;
    margin: 0 auto 34px;
    font-weight: 300;
  }
  .hero-actions {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
  }
  .btn-gold,
  .btn-ghost {
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 16px 30px;
    font-size: 0.6rem;
    letter-spacing: 3px;
    text-transform: uppercase;
  }
  .btn-gold {
    background: var(--gold);
    color: var(--navy);
    font-weight: 700;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .btn-ghost {
    border: 1px solid rgba(255,255,255,0.2);
    color: var(--white);
  }
  .btn-ghost:hover {
    border-color: var(--gold);
    color: var(--gold);
  }

  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }
  .archive-section {
    padding: 84px 80px 100px;
    background: var(--navy-mid);
  }
  .archive-shell {
    max-width: 1180px;
    margin: 0 auto;
  }
  .section-head {
    text-align: center;
    max-width: 900px;
    margin: 0 auto 44px;
  }
  .section-head .over {
    font-size: 0.55rem;
    letter-spacing: 6px;
    text-transform: uppercase;
    color: var(--gold);
    font-weight: 500;
    margin-bottom: 14px;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 18px;
  }
  .section-head p {
    font-size: 0.75rem;
    line-height: 1.9;
    color: var(--slate);
    font-weight: 300;
  }
  .archive-status {
    margin: 0 auto 28px;
    font-size: 0.58rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.5);
    text-align: center;
  }

  .archive-controls {
    max-width: 1180px;
    margin: 0 auto 30px;
    padding: 24px 26px 22px;
    border: 1px solid rgba(197,165,90,0.14);
    background: rgba(255,255,255,0.02);
  }
  .archive-controls-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) repeat(2, minmax(180px, 1fr)) auto;
    gap: 14px;
    align-items: end;
  }
  .archive-control label {
    display: block;
    margin-bottom: 8px;
    font-size: 0.48rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--gold);
    font-weight: 600;
  }
  .archive-input,
  .archive-select {
    width: 100%;
    min-height: 52px;
    padding: 0 16px;
    border: 1px solid rgba(197,165,90,0.18);
    background: rgba(25,40,66,0.88);
    color: var(--white);
    font-family: 'Montserrat', sans-serif;
    font-size: 0.68rem;
    outline: none;
  }
  .archive-input::placeholder {
    color: rgba(255,255,255,0.36);
  }
  .archive-input:focus,
  .archive-select:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 2px rgba(197,165,90,0.08);
  }
  .archive-select option {
    background: #192842;
    color: var(--white);
  }
  .archive-clear-btn {
    min-height: 52px;
    padding: 0 18px;
    border: 1px solid rgba(255,255,255,0.16);
    background: transparent;
    color: var(--white);
    font-family: 'Montserrat', sans-serif;
    font-size: 0.56rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.3s ease;
  }
  .archive-clear-btn:hover {
    border-color: var(--gold);
    color: var(--gold);
    background: rgba(197,165,90,0.06);
  }
  .archive-help {
    margin-top: 12px;
    font-size: 0.62rem;
    line-height: 1.8;
    color: rgba(255,255,255,0.5);
  }
  .archive-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    align-items: stretch;
  }
  .insight-card {
    background: var(--panel);
    padding: 40px 36px;
    border-left: 3px solid var(--gold);
    transition: transform 0.3s ease, background 0.3s ease;
    display: flex;
    flex-direction: column;
    min-height: 100%;
  }
  .insight-card:hover {
    transform: translateY(-4px);
    background: rgba(255,255,255,0.03);
  }
  .insight-card.featured {
    border-left-width: 4px;
    background: rgba(255,255,255,0.04);
  }
  .featured-label {
    font-size: 0.48rem;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: var(--gold);
    font-weight: 600;
    margin-bottom: 12px;
  }
  .insight-meta {
    font-size: 0.54rem;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 14px;
  }
  .insight-card .tag {
    font-size: 0.5rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--gold);
    font-weight: 600;
    margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--white);
    letter-spacing: 1px;
    margin-bottom: 12px;
    line-height: 1.5;
    text-wrap: balance;
  }
  .insight-card p {
    font-size: 0.72rem;
    line-height: 1.85;
    color: var(--slate);
    font-weight: 300;
    margin-bottom: 18px;
  }
  .insight-toggle {
    margin-top: auto;
    align-self: flex-start;
    background: none;
    border: none;
    color: var(--gold);
    padding: 0 0 4px;
    font-size: 0.54rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    cursor: pointer;
    border-bottom: 1px solid rgba(197,165,90,0.35);
    line-height: 1.2;
  }
  .insight-toggle:hover {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .archive-pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 42px;
  }
  .archive-page-btn {
    min-width: 44px;
    height: 44px;
    padding: 0 14px;
    border: 1px solid rgba(197,165,90,0.24);
    background: transparent;
    color: rgba(255,255,255,0.75);
    font-size: 0.62rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
  }
  .archive-page-btn:hover:not(:disabled) {
    border-color: var(--gold);
    color: var(--gold);
    background: rgba(197,165,90,0.06);
  }
  .archive-page-btn.active {
    background: var(--gold);
    color: var(--navy);
    border-color: var(--gold);
    font-weight: 700;
  }
  .archive-page-btn:disabled {
    opacity: 0.35;
    cursor: not-allowed;
  }
  .archive-empty {
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
    border: 1px solid rgba(197,165,90,0.15);
    padding: 40px 28px;
    background: rgba(255,255,255,0.02);
  }
  .archive-empty h3 {
    font-family: 'Cinzel', serif;
    font-size: 1rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 12px;
  }
  .archive-empty p {
    font-size: 0.74rem;
    line-height: 1.8;
    color: var(--slate);
  }
  .article-readtime { display: inline-block; }
  .footer {
    background: #192842;
    padding: 34px 24px 24px;
    border-top: 1px solid rgba(197,165,90,0.1);
    text-align: center;
  }
  .footer p {
    font-size: 0.58rem;
    color: rgba(255,255,255,0.35);
    line-height: 1.8;
  }
  .footer a {
    color: var(--gold);
    text-decoration: none;
  }
  .footer a:hover { color: var(--gold-light); }

  a:focus-visible,
  button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }

  @media (max-width: 1024px) {
    .archive-grid { grid-template-columns: 1fr; }
    .archive-controls-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }
  @media (max-width: 768px) {
    .archive-controls { padding: 20px 18px 18px; }
    .archive-controls-grid { grid-template-columns: 1fr; }
    .archive-clear-btn,
    .archive-input,
    .archive-select { width: 100%; }
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger { display: flex; z-index: 101; }
    .hero { min-height: auto; padding: 120px 24px 72px; }
    .hero-lines { display: none; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content p { font-size: 0.74rem; }
    .hero-actions { flex-direction: column; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; }
    .archive-section { padding: 60px 24px 72px; }
    .section-head h2 { font-size: 1.4rem; }
    .insight-card { padding: 30px 24px; }
    .archive-pagination { gap: 8px; }
    .archive-page-btn { min-width: 40px; height: 40px; font-size: 0.56rem; padding: 0 12px; }
  }
  @media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
  }

/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: company-information-and-complaints.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
    --panel: rgba(255,255,255,0.03);
    --line: rgba(197,165,90,0.15);
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body {
    background: var(--navy);
    color: var(--white);
    font-family: 'Montserrat', sans-serif;
    overflow-x: hidden;
  }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  a { color: inherit; text-decoration: none; }
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 24px 60px; background: rgba(25,40,66,0.96); backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(197,165,90,0.08);
  }
  .nav-logo { display: flex; align-items: center; gap: 14px; text-decoration: none; }
  .nav-logo svg { width: 32px; height: 40px; flex: 0 0 auto; }
  .nav-brand { font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px; white-space: nowrap; }
  .nav-links { display: flex; gap: 28px; align-items: center; flex-wrap: wrap; }
  .nav-links a { color: rgba(255,255,255,0.6); font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase; transition: color 0.3s; }
  .nav-links a:hover { color: var(--gold); }
  .nav-cta { border: 1.5px solid var(--gold); color: var(--gold) !important; padding: 10px 24px; font-weight: 600; }
  .nav-cta:hover { background: var(--gold); color: var(--navy) !important; }
  .wrap { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
  .hero { padding: 140px 0 40px; }
  .eyebrow {
    display: inline-block; margin-bottom: 18px; color: var(--gold-light);
    letter-spacing: 0.18em; text-transform: uppercase; font-size: 0.78rem;
  }
  h1 {
    font-family: 'Cinzel', serif; font-weight: 500; line-height: 1.08;
    font-size: clamp(2.1rem, 4vw, 3.6rem); margin-bottom: 16px;
  }
  .intro { max-width: 900px; color: rgba(248,245,239,0.86); line-height: 1.8; font-size: 1.04rem; }
  .meta-bar {
    margin-top: 24px; display: flex; gap: 12px; flex-wrap: wrap;
  }
  .pill {
    display: inline-flex; align-items: center; min-height: 38px; padding: 0 14px;
    border: 1px solid rgba(197,165,90,0.24); color: var(--gold-light);
    background: rgba(255,255,255,0.02); font-size: 0.76rem; letter-spacing: 0.12em;
    text-transform: uppercase;
  }
  .layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 24px; padding: 12px 0 64px; }
  .card {
    background: var(--panel); border: 1px solid var(--line); border-radius: 6px;
    padding: 28px;
  }
  .card + .card { margin-top: 18px; }
  h2 { font-family: 'Cinzel', serif; font-weight: 500; font-size: 1.45rem; margin-bottom: 12px; }
  h3 { font-size: 1rem; color: var(--gold-light); letter-spacing: 0.08em; text-transform: uppercase; margin: 0 0 10px; }
  p, li { color: rgba(248,245,239,0.86); line-height: 1.82; }
  ul { padding-left: 20px; }
  li + li { margin-top: 8px; }
  .aside-title { font-size: 0.85rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--gold-light); margin-bottom: 12px; }
  .aside-list { display: grid; gap: 12px; }
  .aside-list a { color: var(--gold-light); text-decoration: underline; text-underline-offset: 4px; }
  .card a, aside a, footer a { overflow-wrap: anywhere; word-break: break-word; }
  .small { font-size: 0.94rem; color: rgba(248,245,239,0.68); overflow-wrap: anywhere; word-break: break-word; }
  footer { padding: 0 0 56px; }
  .footer-card { padding: 22px 28px; }
  @media (max-width: 900px) { .layout { grid-template-columns: 1fr; } }
  @media (max-width: 640px) {
    nav { padding: 18px 20px; position: fixed; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.56rem; letter-spacing: 2px; }
    .wrap { width: min(1120px, calc(100% - 24px)); }
    .hero { padding-top: 118px; }
    .card { padding: 20px; }
  }

/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: contact.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  html { scroll-behavior: smooth; }
  body { background: var(--navy); color: var(--white); font-family: 'Montserrat', sans-serif; overflow-x: hidden; }

  /* PAGE TRANSITIONS */
  .page { display: none; opacity: 0; transition: opacity 0.5s ease; }
  .page.active { display: block; }
  .page.visible { opacity: 1; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0; transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
  }
  .reveal.revealed { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }
  .reveal-delay-6 { transition-delay: 0.6s; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 28px 60px; background: transparent; transition: all 0.4s;
  }
  nav.scrolled { background: rgba(25,40,66,0.96); backdrop-filter: blur(10px); padding: 18px 60px; }
  .nav-logo { display: flex; align-items: center; gap: 14px; cursor: pointer; -webkit-tap-highlight-color: rgba(197,165,90,0.2); }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px;
    display: inline-block; white-space: nowrap; overflow: hidden; max-width: 0; opacity: 0; transform: translateX(-10px);
    animation: navBrandUnscroll 1.05s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
  }
  @keyframes navBrandUnscroll {
    0% { max-width: 0; opacity: 0; transform: translateX(-10px); }
    35% { opacity: 1; }
    100% { max-width: 420px; opacity: 1; transform: translateX(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-brand { animation: none; max-width: 420px; opacity: 1; transform: none; }
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px;
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
    transition: color 0.3s; cursor: pointer; position: relative;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: -4px; left: 0;
    width: 0; height: 1px; background: var(--gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active { color: var(--gold); }
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent; border: 1.5px solid var(--gold); color: var(--gold);
    padding: 10px 24px; font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 600; transition: all 0.3s;
  }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .nav-cta.active { background: var(--gold); color: var(--navy); }

  /* MOBILE NAV */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer;
    background: none; border: none; padding: 8px; -webkit-appearance: none; touch-action: manipulation;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(25,40,66,0.98); z-index: 99;
    flex-direction: column; align-items: center; justify-content: center; gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.4rem;
    letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.6);
    transition: color 0.3s; cursor: pointer;
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  /* HERO */
  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
  }
  .hero-watermark {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%); opacity: 0.04;
  }
  .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    z-index: 0;
    pointer-events: none;
  }
  .hero-content { position: relative; z-index: 2; animation: fadeIn 1.2s ease; }
  .hero-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 28px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .hero-content .overline::before, .hero-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif; font-size: 3.8rem; font-weight: 400;
    letter-spacing: 6px; color: var(--white); line-height: 1.2;
    text-transform: uppercase; margin-bottom: 24px;
  }
  .hero-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .hero-desc {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 600px; margin: 0 auto 40px; font-weight: 300;
  }
  .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

  .toolkit-toggle-btn.is-open {
    background: rgba(197,165,90,0.1);
    border-color: var(--gold);
    color: var(--gold-light);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16), inset 0 0 0 1px rgba(217,197,128,0.12);
  }
  .insight-card:focus-within,
  .insight-card.is-active {
    transform: translateY(-4px);
    border-left-color: var(--gold);
    box-shadow: 0 18px 36px rgba(0,0,0,0.2), inset 0 0 0 1px rgba(217,197,128,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.012));
  }
  .insight-card:focus-within .read-more,
  .insight-card.is-active .read-more,
  .insight-card:focus-within .insight-toggle,
  .insight-card.is-active .insight-toggle {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .tk-pill-btn.active,
  .tk-opt.tk-nf-active {
    box-shadow: 0 10px 24px rgba(0,0,0,0.14), inset 0 0 0 1px rgba(217,197,128,0.08);
  }
  .btn-gold {
    background: var(--gold); color: var(--navy); padding: 16px 36px; border: none;
    font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 700; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .btn-ghost {
    background: transparent; border: 1px solid rgba(255,255,255,0.2); color: var(--white);
    padding: 16px 36px; font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 400; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  /* DIVIDER */
  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }

  /* SECTION HEADS */
  .section-head { margin-bottom: 60px; }
  .section-head .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    color: var(--white); letter-spacing: 3px; margin-top: 10px; text-transform: uppercase;
  }

  /* SERVICES */
  .services {
    padding: 100px 80px; background: var(--navy-mid); position: relative;
  }
  .services::before {
    content: ''; position: absolute; top: 0; left: 60px; bottom: 0;
    width: 1px; background: linear-gradient(180deg, transparent, rgba(197,165,90,0.15), transparent);
  }
  .service-rows { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1100px; margin: 0 auto; }
  .svc {
    padding: 44px 40px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative;
  }
  .svc::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 2px; background: var(--gold); transition: width 0.5s;
  }
  .svc:hover::after { width: 100%; }
  .svc:hover { background: rgba(197,165,90,0.018); }
  .svc .num { font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 300; color: rgba(197,165,90,0.3); margin-bottom: 14px; }
  .svc h3 { font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500; color: var(--white); letter-spacing: 2px; margin-bottom: 10px; }
  .svc p { font-size: 0.72rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* TRAINING HIGHLIGHT */
  .training-highlight {
    padding: 80px; background: var(--navy);
    text-align: center;
  }
  .training-inner {
    max-width: 800px; margin: 0 auto;
    padding: 50px 60px;
    border: 1px solid rgba(197,165,90,0.15);
    position: relative;
  }
  .training-inner::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 60px; height: 3px; background: var(--gold);
  }
  .training-inner .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-inner h3 {
    font-family: 'Cinzel', serif; font-size: 1.3rem; font-weight: 400;
    color: var(--white); letter-spacing: 2px; margin-bottom: 14px; text-transform: uppercase;
  }
  .training-inner p {
    font-size: 0.75rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 28px;
  }

  /* HOW WE WORK */
  .how-we-work {
    padding: 100px 80px; background: var(--navy);
  }
  .process-steps {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
    max-width: 1100px; margin: 0 auto; position: relative;
  }
  .process-steps::before {
    content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
    height: 1px; background: rgba(197,165,90,0.25);
  }
  .process-step {
    text-align: center; padding: 0 16px; position: relative;
  }
  .process-step .step-num {
    width: 56px; height: 56px; border: 2px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-family: 'Cinzel', serif; font-size: 1.1rem;
    font-weight: 600; color: var(--gold); background: var(--navy);
    position: relative; z-index: 2;
  }
  .process-step h4 {
    font-family: 'Cinzel', serif; font-size: 0.7rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 10px;
  }
  .process-step p {
    font-size: 0.65rem; line-height: 1.7; color: var(--slate); font-weight: 300;
  }

  /* WHY SECTION */
  .why {
    padding: 100px 80px; background: var(--navy);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center;
  }
  .why-left h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .why-left p { font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 32px; }
  .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .why-card {
    background: var(--navy-mid); padding: 32px 28px;
    border-top: 2px solid var(--gold); transition: transform 0.3s;
  }
  .why-card:hover { transform: translateY(-4px); }
  .why-card .icon { font-size: 1.6rem; margin-bottom: 12px; color: var(--gold); }
  .why-card h4 {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); margin-bottom: 8px; text-transform: uppercase;
  }
  .why-card p { font-size: 0.68rem; line-height: 1.7; color: var(--slate); font-weight: 300; }

  /* QUOTE */
  .quote-section {
    padding: 80px; background: var(--gold); text-align: center; position: relative;
  }
  .quote-section blockquote {
    font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; font-weight: 400;
    font-style: italic; color: var(--navy); max-width: 700px;
    margin: 0 auto; line-height: 1.5;
  }
  .quote-section .attr {
    font-family: 'Montserrat', sans-serif; font-size: 0.65rem; letter-spacing: 3px;
    text-transform: uppercase; color: var(--navy); font-weight: 700; margin-top: 24px;
  }

  /* CTA DARK */
  .cta-dark {
    padding: 100px 80px; text-align: center; background: var(--navy);
  }
  .cta-dark h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 4px; color: var(--white); text-transform: uppercase; margin-bottom: 14px;
  }
  .cta-dark p { font-size: 0.75rem; color: var(--slate); margin-bottom: 36px; font-weight: 300; }

  /* FOOTER */
  footer {
    background: #192842; padding: 50px 80px 30px;
    border-top: 1px solid rgba(197,165,90,0.1);
  }
  .footer-main {
    display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 60px;
    margin-bottom: 40px;
  }
  .footer-brand { display: flex; align-items: flex-start; gap: 16px; }
  .footer-brand svg { width: 28px; height: 34px; flex-shrink: 0; margin-top: 3px; }
  .footer-brand-text span {
    font-family: 'Cinzel', serif; font-size: 0.8rem; letter-spacing: 3px;
    color: rgba(255,255,255,0.5); display: inline-block; margin-bottom: 16px;
    line-height: 1.4; padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }
  .footer-brand-text p {
    font-size: 0.62rem; line-height: 1.9; color: rgba(255,255,255,0.3); font-weight: 300;
    max-width: 340px;
  }
  .footer-col h5 {
    font-family: 'Cinzel', serif; font-size: 0.6rem; font-weight: 600;
    letter-spacing: 3px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; padding-bottom: 12px;
    border-bottom: 1px solid rgba(197,165,90,0.3);
    display: inline-block;
  }
  .footer-col p, .footer-col a {
    font-size: 0.62rem; line-height: 2; color: rgba(255,255,255,0.35);
    font-weight: 300; text-decoration: none; display: block;
  }
  .footer-col a:hover { color: var(--gold); }
  .footer-social {
    display: flex; gap: 16px; margin-top: 14px;
  }
  .footer-social a {
    width: 32px; height: 32px; border: 1px solid rgba(197,165,90,0.2);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.65rem; color: rgba(255,255,255,0.4); transition: all 0.3s;
  }
  .footer-social a:hover { border-color: var(--gold); color: var(--gold); }
  .footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.08); padding-top: 24px;
    flex-wrap: wrap; gap: 12px;
  }
  .footer-bottom p {
    font-size: 0.55rem; color: rgba(255,255,255,0.2); letter-spacing: 1px;
  }

  /* ===== ABOUT PAGE ===== */
  .about-hero {
    min-height: 60vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
    padding: 140px 80px 80px;
  }
  .about-hero .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .about-content { position: relative; z-index: 2; }
  .about-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .about-content .overline::before, .about-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .about-content h1 {
    font-family: 'Cinzel', serif; font-size: 3rem; font-weight: 400;
    letter-spacing: 5px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .about-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .about-content p {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 650px; margin: 0 auto; font-weight: 300;
  }

  .about-story {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
  }
  .about-story h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 24px;
  }
  .about-story p {
    font-size: 0.78rem; line-height: 2; color: var(--slate); font-weight: 300; margin-bottom: 20px;
  }

  .stats-row {
    padding: 80px; background: var(--navy);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; text-align: center;
  }
  .stat-item { padding: 20px; }
  .stat-item .num {
    font-family: 'Cinzel', serif; font-size: 2.8rem; font-weight: 400; color: var(--gold); margin-bottom: 8px;
  }
  .stat-item .label {
    font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase; color: var(--slate); font-weight: 400;
  }

  .values-section { padding: 100px 80px; background: var(--navy-mid); }
  .values-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .value-item {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s; text-align: center;
  }
  .value-item:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .value-item .icon { font-size: 1.8rem; margin-bottom: 16px; color: var(--gold); }
  .value-item h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 12px;
  }
  .value-item p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== SECTORS PAGE ===== */
  .sectors-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1200px; margin: 0 auto;
  }
  .sector-card {
    padding: 50px 36px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative; overflow: hidden;
  }
  .sector-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0;
    height: 3px; background: var(--gold); transform: scaleX(0);
    transform-origin: left; transition: transform 0.5s;
  }
  .sector-card:hover::before { transform: scaleX(1); }
  .sector-card:hover { background: rgba(197,165,90,0.018); }
  .sector-card .sector-icon { font-size: 2rem; margin-bottom: 20px; color: var(--gold); opacity: 0.8; }
  .sector-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); margin-bottom: 12px; text-transform: uppercase;
  }
  .sector-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== INSIGHTS PAGE ===== */
  .insights-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .insight-card {
    background: var(--navy-mid); padding: 40px 36px;
    border-left: 3px solid var(--gold); transition: all 0.4s;
    display:flex;
    flex-direction:column;
    min-height:100%;
  }
  .insight-card:hover { transform: translateY(-2px); }
  .insight-card .tag {
    font-size: 0.5rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.95rem; font-weight: 500;
    color: var(--white); letter-spacing: 1px; margin-bottom: 12px; line-height: 1.5;
  }
  .insight-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; margin-bottom: 16px; }
  .insight-card .read-more {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; text-decoration: none; cursor: pointer; transition: opacity 0.3s;
  }
  .insight-card .read-more:hover { opacity: 0.7; }
  .insights-grid, .insights-more { align-items:stretch; }

  .official-updates-section {
    padding-top: 64px !important;
  }
  .official-updates-section .section-head {
    max-width: 920px;
    margin: 0 auto 34px;
    padding-top: 6px;
  }
  .official-updates-section .section-head .over {
    display: block;
    margin-bottom: 22px;
  }
  .official-updates-section .section-head h2 {
    margin-bottom: 24px;
  }
  .official-updates-section .section-head p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
  .official-updates-section .insights-grid {
    align-items: stretch;
  }
  .official-updates-section .insight-card {
    min-height: 100%;
  }
  .official-meta {
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 10px;
    font-weight: 500;
  }
  .official-date {
    display: block;
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 16px;
    font-weight: 500;
  }
  .official-note {
    max-width: 860px;
    margin: 12px auto 0;
    font-size: 0.64rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.42);
    text-align: center;
  }

  .official-updates-status {
    max-width: 1000px;
    margin: 10px auto 26px;
    padding: 0 4px;
    font-size: 0.56rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
  }
  .official-updates-status strong {
    color: rgba(255,255,255,0.72);
    font-weight: 500;
  }

  /* ===== TRAINING PAGE ===== */
  .training-page-intro {
    padding: 100px 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .training-page-content {
    padding: 80px; background: var(--navy-mid);
  }
  .training-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;
    max-width: 1000px; margin: 0 auto;
  }
  .training-feature {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s;
  }
  .training-feature:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .training-feature .icon { font-size: 1.6rem; margin-bottom: 14px; color: var(--gold); }
  .training-feature h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 10px;
  }
  .training-feature p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== CONTACT PAGE ===== */
  .contact-section {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start;
  }
  .contact-info h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .contact-info p {
    font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 36px;
  }
  .accreditation-card {
    margin-top: 34px;
    padding-top: 12px;
    border-top: 1px solid rgba(197,165,90,0.14);
  }
  .accreditation-card .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 12px;
  }
  .portal-intro {
    font-size: 0.7rem;
    line-height: 1.8;
    color: var(--slate);
    font-weight: 300;
    margin: 0 0 18px;
    max-width: 560px;
  }
  .portal-links-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portal-link {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 132px;
    padding: 22px 28px;
    border: 1px solid rgba(197,165,90,0.16);
    background: rgba(255,255,255,0.02);
    border-radius: 8px;
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  }
  .portal-link:hover {
    transform: translateY(-2px);
    border-color: rgba(197,165,90,0.34);
    background: rgba(197,165,90,0.04);
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  }
  .portal-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  .portal-link-inner {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 28px;
    width: 100%;
  }
  .portal-logo {
    display: block;
    max-width: 100%;
    height: auto;
    padding: 10px;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.16);
    box-sizing: border-box;
    object-fit: contain;
    object-position: center;
  }
  .portal-logo-bloom {
    width: min(300px, 46%);
  }
  .portal-logo-constellia {
    width: min(250px, 42%);
  }
  .portal-logo-delta {
    width: 120px;
    height: 120px;
    padding: 14px;
  }
  .portal-caption {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 190px;
    text-align: left;
  }
  .portal-name {
    font-family: 'Cinzel', serif;
    font-size: 0.72rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--white);
    font-weight: 500;
  }
  .portal-status {
    font-size: 0.68rem;
    letter-spacing: 0;
    color: var(--slate);
    font-weight: 300;
    line-height: 1.5;
  }
  .contact-detail {
    display: flex; gap: 14px; margin-bottom: 24px; align-items: flex-start;
  }
  .contact-detail .cd-icon {
    width: 36px; height: 36px; border: 1px solid rgba(197,165,90,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.8rem; color: var(--gold); flex-shrink: 0;
  }
  .contact-detail .cd-icon svg {
    width: 16px;
    height: 16px;
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .contact-detail .cd-text .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 4px;
  }
  .contact-detail .cd-text .cd-value {
    font-size: 0.75rem; color: rgba(255,255,255,0.7); font-weight: 300;
  }
  .contact-form {
    background: var(--navy); padding: 50px 44px; border: 1px solid rgba(197,165,90,0.1);
  }
  .contact-form h3 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 30px;
  }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
  .form-group { margin-bottom: 20px; }
  .form-group label {
    display: block; font-size: 0.55rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--slate); font-weight: 500; margin-bottom: 8px;
  }
  .form-group input, .form-group select, .form-group textarea {
    width: 100%; background: var(--navy-mid); border: 1px solid rgba(197,165,90,0.15);
    color: var(--white); padding: 14px 16px; font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem; font-weight: 300; outline: none; transition: border-color 0.3s;
  }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--gold); }
  .form-group textarea { min-height: 120px; resize: vertical; }
  .form-group select { cursor: pointer; appearance: none; }
  .form-group select option { background: var(--navy-mid); }
  .form-submit { display: flex; align-items: center; gap: 20px; margin-top: 10px; }
  .form-success {
    display: none; padding: 28px 24px; background: rgba(197,165,90,0.08);
    border: 1px solid rgba(197,165,90,0.4); border-top: 3px solid var(--gold); text-align: center; margin-top: 20px;
    border-radius: 4px;
  }
  .contact-form.submitted > *:not(.form-success) { display: none !important; }
  .contact-form.submitted .form-success { display: block; }
  .form-success.show { display: block; }
  .form-success p {
    font-family: 'Cinzel', serif; font-size: 1.02rem; color: var(--gold);
    letter-spacing: 2px; margin-bottom: 12px; text-transform: uppercase;
  }
  .form-success span {
    font-size: 0.78rem; color: rgba(255,255,255,0.82); font-weight: 300;
    display: block; margin-top: 0; line-height: 1.85;
  }

  /* ===== PRIVACY POLICY PAGE ===== */
  .policy-content {
    padding: 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .policy-updated {
    font-size: 0.65rem; letter-spacing: 2px; color: var(--gold);
    text-transform: uppercase; font-weight: 500; margin-bottom: 30px;
  }
  .policy-section { margin-bottom: 36px; }
  .policy-content h2 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 16px;
  }
  .policy-content h3 {
    font-size: 0.72rem; font-weight: 600; color: var(--gold);
    letter-spacing: 1px; margin: 16px 0 8px; text-transform: uppercase;
  }
  .policy-content p {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    margin-bottom: 14px;
  }
  .policy-content ul {
    list-style: none; padding: 0; margin-bottom: 14px;
  }
  .policy-content ul li {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    padding-left: 20px; position: relative;
  }
  .policy-content ul li::before {
    content: ''; position: absolute; left: 0; top: 12px;
    width: 6px; height: 1px; background: var(--gold);
  }
  .policy-content strong { color: var(--white); font-weight: 500; }

  @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

  /* ===== REFINED DIMENSIONAL EFFECTS ===== */
  #page-home .hero-content {
    perspective: none;
    transform-style: flat;
  }

  .svc,
  .feature-split-card,
  .why-card,
  .sector-card,
  .insight-card,
  .training-feature,
  .toolkit-paid-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .value-item,
  .process-step {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 14px 30px rgba(9,16,28,0.14);
    transition: box-shadow 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
  }
  .svc::before,
  .feature-split-card::before,
  .why-card::before,
  .sector-card::before,
  .insight-card::before,
  .training-feature::before,
  .toolkit-paid-card::before,
  .tk-portal-card::before,
  .tk-gloss-term::before,
  .tk-notice-card::before,
  .value-item::before,
  .process-step::before {
    content:'';
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
    opacity:0;
    pointer-events:none;
    transition: opacity 0.28s ease;
  }
  .svc:hover,
  .feature-split-card:hover,
  .why-card:hover,
  .sector-card:hover,
  .insight-card:hover,
  .training-feature:hover,
  .toolkit-paid-card:hover,
  .tk-portal-card:hover,
  .tk-gloss-term:hover,
  .tk-notice-card:hover,
  .value-item:hover,
  .process-step:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .svc:hover::before,
  .feature-split-card:hover::before,
  .why-card:hover::before,
  .sector-card:hover::before,
  .insight-card:hover::before,
  .training-feature:hover::before,
  .toolkit-paid-card:hover::before,
  .tk-portal-card:hover::before,
  .tk-gloss-term:hover::before,
  .tk-notice-card:hover::before,
  .value-item:hover::before,
  .process-step:hover::before {
    opacity: 1;
  }

  .feature-split-card,
  .toolkit-paid-card,
  .training-feature,
  .insight-card,
  .sector-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .svc,
  .process-step {
    background-image: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  }

  .process-step {
    border: 1px solid rgba(197,165,90,0.08);
    padding: 26px 18px 24px;
    text-align: center;
  }
  .process-step:hover {
    background: linear-gradient(180deg, rgba(197,165,90,0.06), rgba(255,255,255,0.01));
  }
  .process-step .step-num {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }
  .process-step:hover .step-num {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    border-color: rgba(217,197,128,0.85);
  }

  .stats-row .stat-item {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
    border: 1px solid rgba(197,165,90,0.1);
    box-shadow: 0 16px 30px rgba(8,14,24,0.16);
    transition: transform 0.32s ease, box-shadow 0.32s ease, border-color 0.32s ease;
  }
  .stats-row .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .stats-row .stat-item::after {
    content: '';
    position: absolute;
    left: 18%; right: 18%; bottom: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.8), transparent);
    opacity: 0.55;
  }

  .nav-cta,
  .contact-form .btn-gold {
    transform: translateZ(0);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  }
  .nav-cta:hover,
  .contact-form .btn-gold:hover {
    transform: translateY(-2px) scale(1.035);
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
  }

  .insight-card {
    border: 1px solid rgba(197,165,90,0.12);
    border-left-width: 2px;
  }
  .insight-card::after {
    content:'';
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg, rgba(197,165,90,0), rgba(197,165,90,0.75), rgba(197,165,90,0));
    opacity:0.35;
    transition: opacity 0.28s ease;
  }
  .insight-card:hover::after {
    opacity:0.9;
  }
  .insight-card:hover .read-more,
  .sector-card:hover h3,
  .training-feature:hover h4,
  .toolkit-paid-card:hover .toolkit-card-link {
    color: var(--gold-light);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc,
    .feature-split-card,
    .why-card,
    .sector-card,
    .insight-card,
    .training-feature,
    .toolkit-paid-card,
    .tk-portal-card,
    .tk-gloss-term,
    .tk-notice-card,
    .value-item,
    .process-step,
    .stats-row .stat-item,
    .nav-cta,
    .contact-form .btn-gold {
      transition: none !important;
      transform: none !important;
    }
    .svc::before,
    .feature-split-card::before,
    .why-card::before,
    .sector-card::before,
    .insight-card::before,
    .training-feature::before,
    .toolkit-paid-card::before,
    .tk-portal-card::before,
    .tk-gloss-term::before,
    .tk-notice-card::before,
    .value-item::before,
    .process-step::before,
    .insight-card::after {
      transition: none !important;
    }
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 1024px) {
    .hero-content h1 { font-size: 2.6rem; }
    .about-story { grid-template-columns: 1fr; gap: 40px; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-section { grid-template-columns: 1fr; gap: 50px; }
    .why { grid-template-columns: 1fr; gap: 50px; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .process-steps::before { display: none; }
  }
  @media (max-width: 768px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger { display: flex; z-index: 101; }
    .hero { min-height: 100vh; padding: 0 24px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-desc { font-size: 0.72rem; }
    .hero-btns { flex-direction: column; align-items: center; gap: 12px; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; text-align: center; }
    .services, .why, .cta-dark, .about-hero, .about-story, .values-section, .contact-section, .training-page-content, .how-we-work { padding: 60px 24px; }
    .stats-row { padding: 60px 24px; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .quote-section { padding: 50px 24px; }
    .quote-section blockquote { font-size: 1.2rem; }
    .service-rows { grid-template-columns: 1fr; }
    .svc { padding: 32px 24px; }
    .svc h3 { font-size: 0.85rem; }
    .why-right { grid-template-columns: 1fr; }
    .values-grid { grid-template-columns: 1fr; }
    .sectors-grid { grid-template-columns: 1fr; }
    .insights-grid { grid-template-columns: 1fr; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: 1fr; gap: 30px; }
    .process-step .step-num { width: 46px; height: 46px; font-size: 0.95rem; }
    .form-row { grid-template-columns: 1fr; }
    .contact-form { padding: 36px 24px; }

    .accreditation-card { margin-top: 28px; padding-top: 10px; }
    .portal-links-grid { gap: 12px; }
    .portal-link { min-height: 0; padding: 18px; }
    .portal-link-inner { flex-direction: column; gap: 14px; text-align: center; }
    .portal-logo-bloom { width: min(260px, 100%); }
    .portal-logo-constellia { width: min(220px, 100%); }
    .portal-logo-delta { width: 110px; height: 110px; }
    .portal-caption { align-items: center; min-width: 0; text-align: center; }
    footer { padding: 30px 24px 20px; }
    .footer-main { grid-template-columns: 1fr; gap: 30px; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .about-hero { padding: 80px 24px 40px; min-height: auto; }
    .about-content h1 { font-size: 1.8rem; }
    .about-content p { font-size: 0.72rem; }
    .about-story h2 { font-size: 1.4rem; }
    .stat-item .num { font-size: 2rem; }
    .section-head h2 { font-size: 1.4rem; }
    .cta-dark h2 { font-size: 1.4rem; letter-spacing: 2px; }
    .why-left h2 { font-size: 1.5rem; }
    .policy-content { padding: 40px 24px; }
    .policy-section h2 { font-size: 0.9rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    
    /* -- TOOLKIT INLINE STYLE OVERRIDES ----------------------- */
    .how-we-work { padding: 60px 24px !important; }
    #tk-notices-out { grid-template-columns: 1fr !important; }
    #tk-gloss-out { grid-template-columns: 1fr !important; }
    #page-toolkit .svc { overflow-x: hidden; overflow: hidden; }
    .svc::after { display: none; }
    .svc:hover { background: none; }
    #page-toolkit [style*="max-width:1100px"],
    #page-toolkit [style*="max-width:1000px"],
    #page-toolkit [style*="max-width:800px"] { max-width: 100% !important; padding-left: 0; padding-right: 0; }

    /* -- TOOLKIT OVERFLOW FIX --------------------------------- */
    #toolkit, #toolkit * { max-width: 100%; box-sizing: border-box; }
    #toolkit .container { overflow-x: hidden; }
    /* -- TOOLKIT PAGE MOBILE ----------------------------------- */
    .tk-portal-card { padding: 16px 18px; width: 100%; box-sizing: border-box; }
    .tk-portal-card strong { font-size: 0.75rem; }
    .tk-portal-card span { font-size: 0.7rem; }
    .tk-opt { padding: 10px 16px; font-size: 0.62rem; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .tk-gloss-term { padding: 12px 14px; }
    .tk-gloss-term strong { font-size: 0.7rem; }
    .tk-gloss-term span { font-size: 0.68rem; }
    .tk-milestone { flex-wrap: wrap; gap: 6px; }
    .tk-milestone-label { font-size: 0.66rem; flex-basis: 100%; }
    .tk-milestone-date { font-size: 0.66rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    [class*="tk-"] > * { max-width: 100%; box-sizing: border-box; }
    .tk-tool-panel, .tk-section, .tk-grid, .tk-card-grid { grid-template-columns: 1fr !important; }
    .tk-opt-group { display: flex; flex-direction: column; gap: 8px; width: 100%; }
    .tk-result { padding: 20px 16px; font-size: 0.72rem; }
    .tk-input, .tk-select { width: 100%; max-width: 100%; font-size: 0.78rem; padding: 10px 12px; box-sizing: border-box; }
    .tk-btn { width: 100%; min-height: 44px; font-size: 0.65rem; }
    .tk-tabs { flex-wrap: wrap; gap: 6px; }
    .tk-tab { flex: 1 1 auto; text-align: center; font-size: 0.6rem; padding: 8px 10px; }

  }

  /* -- TOOLKIT PAGE ------------------------------------------ */
  .tk-opt {
    background: transparent; border: 1px solid rgba(197,165,90,0.25);
    color: rgba(255,255,255,0.7); padding: 8px 18px;
    font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    font-family: 'Montserrat', sans-serif; cursor: pointer;
    border-radius: 2px; transition: all 0.3s;
  }
  .tk-opt:hover { border-color: var(--gold); color: var(--gold); background: rgba(197,165,90,0.06); }
  .tk-portal-card {
    display: block; padding: 20px 24px;
    border: 1px solid rgba(197,165,90,0.1);
    text-decoration: none; color: inherit;
    transition: all 0.3s; border-radius: 2px;
  }
  .tk-portal-card:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.018); }
  .tk-portal-card strong { font-family: 'Cinzel', serif; font-size: 0.8rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 6px; }
  .tk-portal-card span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-gloss-term { padding: 14px 18px; border: 1px solid rgba(197,165,90,0.08); border-radius: 2px; }
  .tk-gloss-term strong { font-family: 'Cinzel', serif; font-size: 0.72rem; color: var(--gold); display: block; margin-bottom: 4px; letter-spacing: 1px; }
  .tk-gloss-term span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-milestone { display: flex; align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .tk-milestone:last-child { border-bottom: none; }
  .tk-milestone-label { font-size: 0.68rem; color: rgba(255,255,255,0.5); flex: 1; }
  .tk-milestone-date { font-size: 0.68rem; color: var(--gold); font-family: 'Cinzel', serif; white-space: nowrap; }
  .tk-milestone-flag { font-size: 0.58rem; color: #e07070; margin-left: 6px; }

  /* -- PA23 NOTICES ------------------------------------------ */
  .tk-nf-active { border-color: var(--gold) !important; color: var(--gold) !important; background: rgba(197,165,90,0.08) !important; }
  .tk-notice-card {
    padding: 20px 22px; border: 1px solid rgba(197,165,90,0.1);
    border-radius: 2px; transition: border-color 0.3s;
  }
  .tk-notice-card:hover { border-color: rgba(197,165,90,0.3); }
  .tk-notice-ref { font-family: 'Cinzel', serif; font-size: 0.75rem; color: var(--gold); letter-spacing: 2px; font-weight: 600; }
  .tk-notice-cat { font-size: 0.5rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); font-family: 'Montserrat', sans-serif; }
  .tk-notice-title { font-family: 'Cinzel', serif; font-size: 0.82rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 14px; }
  .tk-notice-section { margin-bottom: 10px; }
  .tk-notice-section:last-child { margin-bottom: 0; }
  .tk-notice-label { font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); font-weight: 500; display: block; margin-bottom: 3px; }
  .tk-notice-section p { font-size: 0.68rem; color: rgba(255,255,255,0.55); line-height: 1.75; margin: 0; }

  /* Global mobile overflow protection */
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }
  .btn-gold:focus-visible, .btn-ghost:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }

  @media (max-width: 768px) {

    
    /* -- NOTICE CARDS MOBILE FIX ------------------------------- */
    .tk-notice-card { padding: 16px 14px; box-sizing: border-box; word-break: break-word; }
    .tk-notice-cat { 
      font-size: 0.42rem; 
      letter-spacing: 1px; 
      white-space: normal; 
      text-align: right;
      max-width: 120px;
      line-height: 1.4;
    }
    .tk-notice-ref { flex-shrink: 0; }
    #tk-notices-out { 
      grid-template-columns: 1fr !important; 
      overflow: hidden;
    }
    #tk-notices-out .tk-notice-card { width: 100%; max-width: 100%; overflow: hidden; }

    /* -- SERVICES DECORATIVE LINE FIX ------------------------- */
    .services::before { display: none; }

    /* -- GRID LINES MOBILE FIX -------------------------------- */
    .hero-lines { display: none; }
    .about-hero { overflow: hidden; }
    .services { overflow: hidden; }
    #page-toolkit .services { isolation: isolate; }

  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible, .btn-gold:focus-visible, .btn-ghost:focus-visible,
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- GLOSSARY SCROLLBAR ------------------------------------ */
  #tk-gloss-out::-webkit-scrollbar {
    width: 4px;
  }
  #tk-gloss-out::-webkit-scrollbar-track {
    background: rgba(25,40,66,0.6);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb {
    background: rgba(197,165,90,0.4);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb:hover {
    background: rgba(197,165,90,0.7);
  }

  /* ===== EDITORIAL / TOOLKIT ENHANCEMENTS ===== */
  .svc-link, .training-link-inline {
    display:inline-block;
    margin-top:14px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    text-decoration:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .svc-link:hover, .training-link-inline:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }

  .toolkit-paid {
    padding:80px; padding:clamp(40px,5vw,80px) clamp(20px,5vw,80px);
    background: var(--navy);
  }
  .feature-split-grid {
    max-width:1100px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px;
    align-items:stretch;
  }
  .feature-split-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:48px 52px;
    background:rgba(255,255,255,0.012);
    min-height:430px;
    display:flex;
    flex-direction:column;
    text-align:center;
  }
  .feature-split-card h4 {
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:3px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:20px;
  }
  .feature-split-card p {
    font-size:0.84rem;
    line-height:1.95;
    color:var(--slate);
    font-weight:300;
    max-width:560px;
    margin:0 auto 26px;
  }
  .feature-split-actions {
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .feature-split-actions .btn-gold,
  .feature-split-actions .btn-ghost {
    width:min(360px,100%);
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:14px 24px;
  }
  .support-products-grid {
    max-width:1100px;
    margin:0 auto 36px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
  }
  .toolkit-paid-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:38px 42px 34px;
    background:rgba(255,255,255,0.012);
    display:flex;
    flex-direction:column;
    min-height:0;
  }
  .toolkit-paid-card h4 {
    font-family:'Cinzel',serif;
    font-size:0.98rem;
    font-weight:500;
    letter-spacing:2px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .toolkit-paid-card > p {
    font-size:0.79rem;
    line-height:1.85;
    color:var(--slate);
    font-weight:300;
    margin-bottom:24px;
  }
  .toolkit-card-footer {
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid rgba(197,165,90,0.12);
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .toolkit-card-label {
    display:block;
    margin-bottom:10px;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
  }
  .toolkit-card-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .toolkit-card-list li {
    position:relative;
    padding-left:16px;
    font-size:0.69rem;
    line-height:1.7;
    color:rgba(255,255,255,0.62);
  }
  .toolkit-card-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:1px;
    background:var(--gold);
    opacity:0.8;
  }
  .toolkit-card-fit {
    margin:0;
    font-size:0.68rem;
    line-height:1.75;
    color:rgba(255,255,255,0.52);
  }
  .toolkit-card-link {
    align-self:flex-start;
    background:none;
    border:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    color:var(--gold);
    padding:0 0 4px;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    text-decoration:none;
  }
  .toolkit-card-link:hover {
    color:var(--gold-light);
    border-bottom-color:var(--gold-light);
  }
  .toolkit-paid-actions {
    max-width:1100px;
    margin:0 auto;
    text-align:center;
  }
  .toolkit-paid-note {
    max-width:680px;
    margin:18px auto 0;
    font-size:0.65rem;
    line-height:1.8;
    color:rgba(255,255,255,0.28);
  }

  .toolkit-toggle-btn {
    background:transparent;
    border:1px solid rgba(197,165,90,0.28);
    color:var(--gold);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    cursor:pointer;
    border-radius:2px;
    margin-bottom:18px;
  }
  .toolkit-toggle-btn:hover { background:rgba(197,165,90,0.06); border-color:var(--gold); }

  .insight-card.featured {
    background:rgba(255,255,255,0.015);
    border-left-width:4px;
  }
  .featured-label {
    font-size:0.48rem;
    letter-spacing:4px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
    margin-bottom:12px;
  }
  .insight-meta {
    font-size:0.54rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.42);
    margin-bottom:14px;
  }
  .insight-body {
    display:none;
    margin-top:18px;
  }
  .insight-body p {
    margin-bottom:14px;
    font-size:0.72rem;
    line-height:1.9;
    color:var(--slate);
  }
  .insight-toggle {
    margin-top:auto;
    align-self:flex-start;
    background:none;
    border:none;
    color:var(--gold);
    padding:0;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .insight-toggle:hover { color:var(--gold-light); border-bottom-color:var(--gold-light); }
  .insights-more { display:none; }
  .insights-more-wrap { text-align:center; margin-top:36px; }
  .insight-card h3 { text-wrap:balance; }
  .article-readtime { display:inline-block; }

  @media (max-width: 768px) {
    .feature-split-grid, .support-products-grid { grid-template-columns:1fr; gap:18px; }
    .feature-split-card { padding:30px 24px; min-height:auto; }
    .feature-split-card h4 { font-size:0.92rem; }
    .feature-split-card p { font-size:0.78rem; }
    .feature-split-actions .btn-gold, .feature-split-actions .btn-ghost { width:100%; min-height:46px; }
    .toolkit-paid-card { padding:28px 24px; min-height:auto; }
    .toolkit-paid-card h4 { font-size:0.86rem; }
    .toolkit-paid-card > p { font-size:0.76rem; }
    .toolkit-card-footer { padding-top:18px; gap:14px; }
    .toolkit-card-list li { font-size:0.68rem; }
    .toolkit-card-fit { font-size:0.67rem; }
    .toolkit-card-link { font-size:0.54rem; letter-spacing:2.2px; }
    .svc-link, .training-link-inline, .insight-toggle { font-size:0.54rem; letter-spacing:2.2px; }
  }

  /* ===== PCC TOOLKIT CALCULATORS ===== */
  .tk-calc-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:760px;
    margin-bottom:1.35rem;
    align-items:end;
  }
  .tk-calc-field label {
    display:block;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:8px;
    font-family:'Cinzel',serif;
  }
  .tk-calc-field input,
  .tk-calc-field select {
    width:100%;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(197,165,90,0.2);
    color:var(--white);
    padding:10px 14px;
    font-family:'Montserrat',sans-serif;
    font-size:0.75rem;
    border-radius:2px;
    box-sizing:border-box;
  }
  .tk-calc-field input::placeholder { color:rgba(255,255,255,0.28); }
  .tk-calc-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:1rem;
  }
  .tk-calc-btn {
    background:var(--gold);
    color:var(--navy);
    border:none;
    padding:10px 24px;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    cursor:pointer;
    white-space:nowrap;
    border-radius:2px;
  }
  .tk-calc-btn-secondary {
    background:transparent;
    color:var(--gold);
    border:1px solid rgba(197,165,90,0.3);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-radius:2px;
  }
  .tk-calc-note {
    font-size:0.62rem;
    color:rgba(255,255,255,0.38);
    line-height:1.75;
    max-width:760px;
    margin-top:0.85rem;
  }
  .tk-calc-note strong {
    color:rgba(255,255,255,0.62);
    font-weight:600;
  }
  .tk-calc-out {
    display:none;
    max-width:900px;
    background:rgba(0,0,0,0.2);
    border:1px solid rgba(197,165,90,0.15);
    padding:1.5rem;
    border-radius:2px;
    color:rgba(255,255,255,0.72);
    margin-top:0;
  }
  .tk-tool-copy {
    max-width:760px;
    margin-bottom:1.5rem;
  }
  .tk-tool-copy p,
  .tk-tool-copy .tk-calc-note {
    margin-left:0;
    margin-right:0;
  }
  .tk-cta {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(255,255,255,0.06);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .tk-cta-text {
    margin:0;
    font-size:0.68rem;
    line-height:1.8;
    color:rgba(255,255,255,0.6);
    flex:1 1 320px;
  }
  .tk-cta-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 18px;
    border:1px solid rgba(197,165,90,0.3);
    color:var(--gold);
    text-decoration:none;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    border-radius:2px;
    transition:border-color .25s ease, background .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .tk-cta-btn:hover {
    border-color:var(--gold);
    background:rgba(197,165,90,0.08);
  }
  .tk-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:1rem;
  }
  .tk-summary-item {
    border:1px solid rgba(197,165,90,0.12);
    background:rgba(255,255,255,0.02);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-summary-item span {
    display:block;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:8px;
  }
  .tk-summary-item strong {
    display:block;
    font-family:'Cinzel',serif;
    color:var(--gold);
    font-size:0.95rem;
    letter-spacing:1px;
    font-weight:500;
  }
  .tk-standstill-days {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:1rem;
  }
  .tk-standstill-day {
    border:1px solid rgba(197,165,90,0.1);
    background:rgba(255,255,255,0.015);
    padding:12px 14px;
  }
  .tk-standstill-day span {
    display:block;
    font-size:0.5rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:5px;
  }
  .tk-standstill-day strong {
    display:block;
    font-size:0.72rem;
    color:var(--white);
    font-weight:500;
  }
  .tk-vat-breakdown {
    margin-top:0.6rem;
    padding-top:0.9rem;
    border-top:1px solid rgba(255,255,255,0.06);
    font-size:0.68rem;
    color:rgba(255,255,255,0.56);
    line-height:1.9;
  }
  .tk-vat-breakdown strong { color:var(--gold); font-weight:600; }
  .tk-toggle-group {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
  }
  .tk-toggle-btn {
    appearance:none;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.03);
    color:var(--white);
    min-height:72px;
    padding:0.9rem 1rem;
    font-size:0.72rem;
    line-height:1.55;
    letter-spacing:0.4px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    flex:1 1 180px;
    text-align:left;
  }
  .tk-toggle-btn:hover,
  .tk-toggle-btn:focus-visible {
    border-color:rgba(197,165,90,0.45);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-toggle-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.14);
    color:var(--gold);
    box-shadow:0 12px 28px rgba(0,0,0,0.16);
  }
  .tk-toggle-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.82rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.18rem;
    color:inherit;
  }
  .tk-toggle-btn span {
    display:block;
    font-size:0.64rem;
    line-height:1.7;
    color:inherit;
    opacity:0.9;
  }

  .tk-vat-grid {
    display:grid;
    grid-template-columns:minmax(0, 760px);
    gap:16px;
    max-width:760px;
    align-items:start;
    margin-bottom:1.35rem;
  }
  .tk-vat-field-wide {
    grid-column:1 / -1;
  }
  .tk-pill-group {
    display:grid;
    gap:12px;
    width:100%;
  }
  .tk-pill-group-mode {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-group-rates {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-btn {
    appearance:none;
    border:1px solid rgba(197,165,90,0.18);
    background:rgba(255,255,255,0.03);
    color:rgba(255,255,255,0.78);
    min-height:84px;
    padding:1rem 1rem 0.95rem;
    font-size:0.68rem;
    line-height:1.35;
    letter-spacing:0.5px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
    text-align:left;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  .tk-pill-btn:hover,
  .tk-pill-btn:focus-visible {
    border-color:rgba(197,165,90,0.42);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-pill-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.12);
    color:var(--gold);
  }
  .tk-pill-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.76rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.16rem;
    color:inherit;
  }
  .tk-pill-btn span {
    display:block;
    font-size:0.58rem;
    line-height:1.5;
    color:inherit;
    opacity:0.92;
  }
  .tk-vat-custom-wrap {
    max-width:260px;
  }
  .tk-cycle-layout {
    display:grid;
    grid-template-columns:minmax(360px, 520px) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    max-width:1100px;
  }
  .tk-cycle-wheel-wrap {
    position:relative;
    width:min(100%, 520px);
    aspect-ratio:1 / 1;
    margin:0 auto;
  }
  .tk-cycle-wheel {
    width:100%;
    height:100%;
    display:block;
    overflow:visible;
    filter:drop-shadow(0 18px 34px rgba(0,0,0,0.2));
  }
  .tk-cycle-stage {
    transition: transform .22s ease, filter .22s ease;
  }
  .tk-cycle-stage:hover,
  .tk-cycle-stage:focus-within {
    transform: translate(var(--tk-shift-x, 0px), var(--tk-shift-y, 0px));
    filter: drop-shadow(0 10px 14px rgba(0,0,0,0.18));
  }
  .tk-cycle-stage.is-active {
    transform: translate(calc(var(--tk-shift-x, 0px) * 0.72), calc(var(--tk-shift-y, 0px) * 0.72));
    filter: drop-shadow(0 12px 16px rgba(0,0,0,0.2));
  }
  .tk-cycle-segment {
    fill:#102648;
    stroke:rgba(230,232,237,0.88);
    stroke-width:2.4;
    cursor:pointer;
    transition:fill .22s ease, stroke .22s ease, opacity .22s ease;
    outline:none !important;
    -webkit-tap-highlight-color:transparent;
  }
  .tk-cycle-stage:hover .tk-cycle-segment,
  .tk-cycle-stage:focus-within .tk-cycle-segment {
    fill:#17345f;
    stroke:rgba(255,255,255,0.95);
  }
  .tk-cycle-stage.is-active:hover .tk-cycle-segment,
  .tk-cycle-stage.is-active:focus-within .tk-cycle-segment,
  .tk-cycle-segment.active {
    fill:var(--gold);
    stroke:rgba(217,197,128,0.95);
  }
  .tk-cycle-segment:focus,
  .tk-cycle-segment:focus-visible {
    outline:none !important;
  }
  .tk-cycle-stage-number {
    fill:var(--white);
    font-family:'Montserrat',sans-serif;
    font-size:20px;
    font-weight:800;
    text-anchor:middle;
    dominant-baseline:middle;
    pointer-events:none;
    transition: fill .22s ease, transform .22s ease;
    paint-order: stroke;
    stroke: rgba(10,20,38,0.18);
    stroke-width: 0.7px;
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage:hover .tk-cycle-stage-number {
    transform: translateY(-1px);
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage-number.active,
  .tk-cycle-stage.is-active:hover .tk-cycle-stage-number {
    fill:var(--white);
    stroke: rgba(15,27,45,0.45);
  }
  .tk-cycle-center {
    position:absolute;
    inset:50% auto auto 50%;
    width:46%;
    aspect-ratio:1 / 1;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    background:radial-gradient(circle at 35% 30%, rgba(31,69,121,0.98), rgba(10,30,59,0.98));
    color:var(--white);
    box-shadow:0 0 0 10px rgba(197,165,90,0.18), inset 0 0 0 1px rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.18);
    padding:28px;
  }
  .tk-cycle-center::after {
    content:'';
    position:absolute;
    inset:12px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.06);
    pointer-events:none;
  }
  .tk-cycle-center span {
    display:block;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(197,165,90,0.92);
    margin-bottom:0.5rem;
  }
  .tk-cycle-center strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:1.06rem;
    line-height:1.4;
    letter-spacing:1px;
    font-weight:600;
    color:#f7f7f3;
  }
  .tk-cycle-center small {
    display:block;
    margin-top:0.7rem;
    font-size:0.72rem;
    line-height:1.6;
    color:rgba(255,255,255,0.72);
    max-width:190px;
  }
  .tk-cycle-panel {
    max-width:560px;
    background:linear-gradient(180deg, rgba(8,22,44,0.42), rgba(8,22,44,0.28));
    border:1px solid rgba(197,165,90,0.18);
    padding:1.6rem 1.65rem;
    border-radius:6px;
    min-height:420px;
    box-shadow:0 20px 36px rgba(5,11,21,0.14);
  }
  .tk-cycle-panel-head {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-bottom:0.95rem;
  }
  .tk-cycle-panel-tag {
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
  }
  .tk-cycle-panel h4 {
    margin:0;
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:1px;
    color:var(--white);
  }
  .tk-cycle-panel p {
    margin:0 0 1rem;
    font-size:0.7rem;
    line-height:1.9;
    color:rgba(255,255,255,0.66);
  }
  .tk-cycle-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .tk-cycle-detail-box {
    border:1px solid rgba(197,165,90,0.14);
    background:rgba(255,255,255,0.025);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-cycle-detail-box span {
    display:block;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.4);
    margin-bottom:8px;
  }
  .tk-cycle-detail-box ul {
    margin:0;
    padding-left:1.1rem;
    color:rgba(255,255,255,0.66);
    font-size:0.68rem;
    line-height:1.8;
  }
  @media (max-width: 900px) {
    .tk-pill-group-rates {
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tk-cycle-layout {
      grid-template-columns:1fr;
    }
    .tk-cycle-panel {
      min-height:auto;
    }
  }
  @media (max-width: 768px) {
    .tk-vat-grid { max-width:none; }
    .tk-pill-group-mode,
    .tk-pill-group-rates,
    .tk-cycle-detail-grid {
      grid-template-columns:1fr;
    }
    .tk-cycle-center {
      width:52%;
      padding:22px;
    }
    .tk-cycle-center strong {
      font-size:0.88rem;
    }
    .tk-cycle-center small {
      font-size:0.64rem;
      max-width:140px;
    }
    .tk-cycle-stage-number {
      font-size:22px;
    }
  }

  @media (max-width: 768px) {
    .tk-calc-grid { grid-template-columns:1fr; gap:14px; }
    .tk-summary-grid { grid-template-columns:1fr; }
    .tk-calc-actions { flex-direction:column; align-items:stretch; }
    .tk-calc-btn, .tk-calc-btn-secondary { width:100%; }
    .tk-calc-out { padding:1.2rem; }
    .tk-cta { flex-direction:column; align-items:stretch; }
    .tk-cta-btn { width:100%; }
    .tk-toggle-btn { flex:1 1 100%; min-height:auto; }
  }

/* ===== PCC DYNAMIC ARTICLES ===== */
.article-modal {
  position: fixed;
  inset: 0;
  background: rgba(3, 10, 24, 0.82);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}
.article-modal.open { display: flex; }
.article-modal-dialog {
  width: min(920px, 100%);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, rgba(10,24,52,0.98), rgba(6,15,33,0.98));
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
  position: relative;
}
.article-modal-content {
  padding: 34px 30px 36px;
}
.article-modal-close {
  position: sticky;
  top: 16px;
  margin-left: calc(100% - 56px);
  width: 40px;
  height: 40px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.article-modal-close:hover { opacity: 0.8; }
.article-modal-excerpt {
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--white);
  opacity: 0.92;
  margin-bottom: 22px;
}
 .article-modal-body h2 {
  font-size: 1.05rem;
  margin: 24px 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
}
.article-modal-body p {
  color: var(--white);
  opacity: 0.92;
  line-height: 1.95;
  margin: 0 0 14px;
  font-size: 0.92rem;
}
.article-modal-body a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-modal-body a:hover {
  color: var(--gold);
}
@media (max-width: 768px) {
  .article-modal { padding: 12px; }
  .article-modal-content { padding: 26px 18px 24px; }
  .quick-slot-grid {
    flex-direction: column;
    align-items: stretch;
  }
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: digital-tools-full-editable-supplier-statements-pack.html style block 1 ===== */
:root{--navy:#192842;--navy-mid:#253a59;--gold:#c5a55a;--gold-light:#d9c580;--white:#fff;--slate:#a0b0c0}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--navy);color:var(--white);font-family:Montserrat,sans-serif;overflow-x:hidden}a,button{-webkit-tap-highlight-color:rgba(197,165,90,.2);touch-action:manipulation}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:28px 60px;background:transparent;transition:all .4s}nav.scrolled{background:rgba(25,40,66,.96);backdrop-filter:blur(10px);padding:18px 60px;border-bottom:1px solid rgba(197,165,90,.08)}.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none;cursor:pointer}.nav-logo svg{width:32px;height:40px}.nav-brand{font-family:Cinzel,serif;font-size:.75rem;font-weight:600;color:var(--white);letter-spacing:3px;white-space:nowrap}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{text-decoration:none;font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);transition:color .3s;position:relative}.nav-links a:after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}.nav-links a:hover{color:var(--gold)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-links a.active{color:var(--gold)}.nav-cta{background:transparent;border:1.5px solid var(--gold);color:var(--gold);padding:10px 24px;font-size:.6rem;letter-spacing:3px;text-transform:uppercase;text-decoration:none;font-weight:600;cursor:pointer;font-family:Montserrat,sans-serif;transition:all .3s}.nav-cta:hover{background:var(--gold);color:var(--navy)}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:8px}.hamburger span{width:24px;height:1.5px;background:var(--white);transition:all .3s}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(25,40,66,.98);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:36px}.mobile-menu.open{display:flex}.mobile-menu a{text-decoration:none;font-family:Cinzel,serif;font-size:1.4rem;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.6);transition:color .3s}.mobile-menu a:hover,.mobile-menu a.active{color:var(--gold)}.hero{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:150px 24px 80px;position:relative;overflow:hidden}.hero-lines{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%);background-size:80px 80px}.hero-content{position:relative;z-index:2;max-width:860px}.overline{font-size:.6rem;letter-spacing:8px;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:28px;display:flex;align-items:center;justify-content:center;gap:16px}.overline:before,.overline:after{content:'';width:40px;height:1px;background:var(--gold);opacity:.4}h1{font-family:Cinzel,serif;font-size:3rem;font-weight:400;letter-spacing:5px;line-height:1.2;text-transform:uppercase;margin-bottom:24px}h1 em{font-style:normal;color:var(--gold);font-weight:700}.hero p{font-size:.82rem;line-height:1.95;color:rgba(255,255,255,.62);max-width:720px;margin:0 auto}.gold-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.3}.section{padding:86px 80px}.section.alt{background:var(--navy-mid)}.wrap{max-width:1100px;margin:0 auto}.detail-grid{display:grid;grid-template-columns:1fr .72fr;gap:34px;align-items:start}.panel{border:1px solid rgba(197,165,90,.12);background:rgba(255,255,255,.012);padding:40px 44px}.panel h2,.panel h3{font-family:Cinzel,serif;font-size:1rem;font-weight:500;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:16px}.panel p{font-size:.78rem;line-height:1.9;color:var(--slate);font-weight:300;margin-bottom:18px}.price{font-family:Cinzel,serif;font-size:2.1rem;letter-spacing:2px;color:var(--white);margin:4px 0 20px}.price span{font-family:Montserrat,sans-serif;font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-left:8px}ul{list-style:none;display:grid;gap:10px;margin:0;padding:0}li{position:relative;padding-left:18px;font-size:.72rem;line-height:1.8;color:rgba(255,255,255,.66)}li:before{content:'';position:absolute;left:0;top:13px;width:7px;height:1px;background:var(--gold)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.btn-ghost,.buy-placeholder{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 26px;font-size:.58rem;letter-spacing:3px;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:700;text-decoration:none}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.22);color:var(--white)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.buy-placeholder{background:rgba(197,165,90,.1);border:1px solid rgba(197,165,90,.42);color:var(--gold-light);cursor:default}.micro{font-size:.66rem!important;color:rgba(255,255,255,.42)!important;margin-top:14px!important}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.back-link{color:var(--gold);font-size:.62rem;letter-spacing:3px;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(197,165,90,.35);padding-bottom:4px}footer{background:#192842;padding:44px 60px;border-top:1px solid rgba(197,165,90,.1);text-align:center}footer p{font-size:.66rem;line-height:1.8;color:rgba(255,255,255,.38)}@media(max-width:900px){nav{padding:18px 24px}.nav-links,.nav-cta{display:none}.hamburger{display:flex;z-index:101}.nav-brand{font-size:.56rem;letter-spacing:2px}h1{font-size:2rem;letter-spacing:3px}.section{padding:58px 24px}.detail-grid,.three{grid-template-columns:1fr}.panel{padding:32px 26px}.actions{flex-direction:column}.btn-ghost,.buy-placeholder{width:100%;text-align:center}}
.buy-placeholder.live-buy{background:var(--gold);border-color:var(--gold);color:var(--navy);cursor:pointer}.buy-placeholder.live-buy:hover{background:var(--gold-light);border-color:var(--gold-light)}
@media(max-width:900px){nav{position:fixed;flex-direction:row;gap:0}.hero{padding-top:120px}}

/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: digital-tools-pa23-assessment-summary-award-letter-template-pack.html style block 1 ===== */
:root{--navy:#192842;--navy-mid:#253a59;--gold:#c5a55a;--gold-light:#d9c580;--white:#fff;--slate:#a0b0c0}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--navy);color:var(--white);font-family:Montserrat,sans-serif;overflow-x:hidden}a,button{-webkit-tap-highlight-color:rgba(197,165,90,.2);touch-action:manipulation}nav{position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:28px 60px;background:transparent;transition:all .4s}nav.scrolled{background:rgba(25,40,66,.96);backdrop-filter:blur(10px);padding:18px 60px;border-bottom:1px solid rgba(197,165,90,.08)}.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none}.nav-logo svg{width:32px;height:40px}.nav-brand{font-family:Cinzel,serif;font-size:.75rem;font-weight:600;color:var(--white);letter-spacing:3px;white-space:nowrap}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{text-decoration:none;font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);position:relative}.nav-links a:after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}.nav-links a:hover,.nav-links a.active{color:var(--gold)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-cta{background:transparent;border:1.5px solid var(--gold);color:var(--gold);padding:10px 24px;font-size:.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;cursor:pointer;font-family:Montserrat,sans-serif;transition:all .3s}.nav-cta:hover{background:var(--gold);color:var(--navy)}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px}.hamburger span{width:24px;height:1.5px;background:var(--white)}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu{display:none;position:fixed;inset:0;background:rgba(25,40,66,.98);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:36px}.mobile-menu.open{display:flex}.mobile-menu a{text-decoration:none;font-family:Cinzel,serif;font-size:1.4rem;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.6)}.mobile-menu a:hover,.mobile-menu a.active{color:var(--gold)}.hero{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:150px 24px 80px;position:relative;overflow:hidden}.hero-lines{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%);background-size:80px 80px}.hero-content{position:relative;z-index:2;max-width:900px}.overline{font-size:.6rem;letter-spacing:8px;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:28px;display:flex;align-items:center;justify-content:center;gap:16px}.overline:before,.overline:after{content:'';width:40px;height:1px;background:var(--gold);opacity:.4}h1{font-family:Cinzel,serif;font-size:2.55rem;font-weight:400;letter-spacing:5px;line-height:1.25;text-transform:uppercase;margin-bottom:24px}h1 em{font-style:normal;color:var(--gold);font-weight:700}.hero p{font-size:.82rem;line-height:1.95;color:rgba(255,255,255,.62);max-width:760px;margin:0 auto}.gold-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.3}.section{padding:86px 80px}.section.alt{background:var(--navy-mid)}.wrap{max-width:1100px;margin:0 auto}.detail-grid{display:grid;grid-template-columns:1fr .72fr;gap:34px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.panel{border:1px solid rgba(197,165,90,.12);background:rgba(255,255,255,.012);padding:40px 44px}.panel h2,.panel h3{font-family:Cinzel,serif;font-size:1rem;font-weight:500;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:16px}.panel p{font-size:.78rem;line-height:1.9;color:var(--slate);font-weight:300;margin-bottom:18px}.price{font-family:Cinzel,serif;font-size:2.1rem;letter-spacing:2px;color:var(--white);margin:4px 0 20px}.price span{font-family:Montserrat,sans-serif;font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-left:8px}ul{list-style:none;display:grid;gap:10px}li{position:relative;padding-left:18px;font-size:.72rem;line-height:1.8;color:rgba(255,255,255,.66)}li:before{content:'';position:absolute;left:0;top:13px;width:7px;height:1px;background:var(--gold)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.btn-ghost,.buy-placeholder{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 26px;font-size:.58rem;letter-spacing:3px;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:700;text-decoration:none}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.22);color:var(--white)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.buy-placeholder{background:rgba(197,165,90,.1);border:1px solid rgba(197,165,90,.42);color:var(--gold-light);transition:all .2s}.buy-placeholder:hover{background:var(--gold);border-color:var(--gold);color:var(--navy);box-shadow:0 0 24px rgba(197,165,90,.18)}.micro{font-size:.66rem!important;color:rgba(255,255,255,.42)!important;margin-top:14px!important}.back-link{color:var(--gold);font-size:.62rem;letter-spacing:3px;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(197,165,90,.35);padding-bottom:4px}footer{background:#192842;padding:44px 60px;border-top:1px solid rgba(197,165,90,.1);text-align:center}footer p{font-size:.66rem;line-height:1.8;color:rgba(255,255,255,.38)}@media(max-width:900px){nav{padding:18px 24px}.nav-links,.nav-cta{display:none}.hamburger{display:flex;z-index:101}.nav-brand{font-size:.56rem;letter-spacing:2px}h1{font-size:1.75rem;letter-spacing:2px}.hero{padding-top:120px}.section{padding:58px 24px}.detail-grid,.three{grid-template-columns:1fr}.panel{padding:32px 26px}.actions{flex-direction:column}.btn-ghost,.buy-placeholder{width:100%;text-align:center}}

/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: digital-tools-pa23-evaluation-matrix-template.html style block 1 ===== */
:root{--navy:#192842;--navy-mid:#253a59;--gold:#c5a55a;--gold-light:#d9c580;--white:#fff;--slate:#a0b0c0}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--navy);color:var(--white);font-family:Montserrat,sans-serif;overflow-x:hidden}a,button{-webkit-tap-highlight-color:rgba(197,165,90,.2);touch-action:manipulation}nav{position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:28px 60px;background:transparent;transition:all .4s}nav.scrolled{background:rgba(25,40,66,.96);backdrop-filter:blur(10px);padding:18px 60px;border-bottom:1px solid rgba(197,165,90,.08)}.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none}.nav-logo svg{width:32px;height:40px}.nav-brand{font-family:Cinzel,serif;font-size:.75rem;font-weight:600;color:var(--white);letter-spacing:3px;white-space:nowrap}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{text-decoration:none;font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);transition:color .3s;position:relative}.nav-links a:after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}.nav-links a:hover,.nav-links a.active{color:var(--gold)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-cta{background:transparent;border:1.5px solid var(--gold);color:var(--gold);padding:10px 24px;font-size:.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;cursor:pointer;font-family:Montserrat,sans-serif;transition:all .3s}.nav-cta:hover{background:var(--gold);color:var(--navy)}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px}.hamburger span{width:24px;height:1.5px;background:var(--white);transition:all .3s}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu{display:none;position:fixed;inset:0;background:rgba(25,40,66,.98);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:36px}.mobile-menu.open{display:flex}.mobile-menu a{text-decoration:none;font-family:Cinzel,serif;font-size:1.4rem;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.6)}.mobile-menu a:hover,.mobile-menu a.active{color:var(--gold)}.hero{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:150px 24px 80px;position:relative;overflow:hidden}.hero-lines{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%);background-size:80px 80px}.hero-content{position:relative;z-index:2;max-width:860px}.overline{font-size:.6rem;letter-spacing:8px;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:28px;display:flex;align-items:center;justify-content:center;gap:16px}.overline:before,.overline:after{content:'';width:40px;height:1px;background:var(--gold);opacity:.4}h1{font-family:Cinzel,serif;font-size:3rem;font-weight:400;letter-spacing:5px;line-height:1.2;text-transform:uppercase;margin-bottom:24px}h1 em{font-style:normal;color:var(--gold);font-weight:700}.hero p{font-size:.82rem;line-height:1.95;color:rgba(255,255,255,.62);max-width:720px;margin:0 auto}.gold-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.3}.section{padding:86px 80px}.section.alt{background:var(--navy-mid)}.wrap{max-width:1100px;margin:0 auto}.detail-grid{display:grid;grid-template-columns:1fr .72fr;gap:34px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.panel{border:1px solid rgba(197,165,90,.12);background:rgba(255,255,255,.012);padding:40px 44px}.panel h2,.panel h3{font-family:Cinzel,serif;font-size:1rem;font-weight:500;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:16px}.panel p{font-size:.78rem;line-height:1.9;color:var(--slate);font-weight:300;margin-bottom:18px}.price{font-family:Cinzel,serif;font-size:2.1rem;letter-spacing:2px;color:var(--white);margin:4px 0 20px}.price span{font-family:Montserrat,sans-serif;font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-left:8px}ul{list-style:none;display:grid;gap:10px}li{position:relative;padding-left:18px;font-size:.72rem;line-height:1.8;color:rgba(255,255,255,.66)}li:before{content:'';position:absolute;left:0;top:13px;width:7px;height:1px;background:var(--gold)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.btn-ghost,.buy-placeholder{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 26px;font-size:.58rem;letter-spacing:3px;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:700;text-decoration:none}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.22);color:var(--white)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.buy-placeholder{background:rgba(197,165,90,.1);border:1px solid rgba(197,165,90,.42);color:var(--gold-light);transition:all .2s}.buy-placeholder:hover{background:var(--gold);border-color:var(--gold);color:var(--navy);box-shadow:0 0 24px rgba(197,165,90,.18)}.micro{font-size:.66rem!important;color:rgba(255,255,255,.42)!important;margin-top:14px!important}.back-link{color:var(--gold);font-size:.62rem;letter-spacing:3px;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(197,165,90,.35);padding-bottom:4px}footer{background:#192842;padding:44px 60px;border-top:1px solid rgba(197,165,90,.1);text-align:center}footer p{font-size:.66rem;line-height:1.8;color:rgba(255,255,255,.38)}@media(max-width:900px){nav{padding:18px 24px}.nav-links,.nav-cta{display:none}.hamburger{display:flex;z-index:101}.nav-brand{font-size:.56rem;letter-spacing:2px}h1{font-size:2rem;letter-spacing:3px}.hero{padding-top:120px}.section{padding:58px 24px}.detail-grid,.three{grid-template-columns:1fr}.panel{padding:32px 26px}.actions{flex-direction:column}.btn-ghost,.buy-placeholder{width:100%;text-align:center}}

/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: digital-tools-procurement-tracker.html style block 1 ===== */
:root{--navy:#192842;--navy-mid:#253a59;--gold:#c5a55a;--gold-light:#d9c580;--white:#fff;--slate:#a0b0c0}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--navy);color:var(--white);font-family:Montserrat,sans-serif;overflow-x:hidden}a,button{-webkit-tap-highlight-color:rgba(197,165,90,.2);touch-action:manipulation}nav{position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:28px 60px;background:transparent;transition:all .4s}nav.scrolled{background:rgba(25,40,66,.96);backdrop-filter:blur(10px);padding:18px 60px;border-bottom:1px solid rgba(197,165,90,.08)}.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none}.nav-logo svg{width:32px;height:40px}.nav-brand{font-family:Cinzel,serif;font-size:.75rem;font-weight:600;color:var(--white);letter-spacing:3px;white-space:nowrap}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{text-decoration:none;font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);position:relative}.nav-links a:after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}.nav-links a:hover,.nav-links a.active{color:var(--gold)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-cta{background:transparent;border:1.5px solid var(--gold);color:var(--gold);padding:10px 24px;font-size:.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;cursor:pointer;font-family:Montserrat,sans-serif;transition:all .3s}.nav-cta:hover{background:var(--gold);color:var(--navy)}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px}.hamburger span{width:24px;height:1.5px;background:var(--white)}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu{display:none;position:fixed;inset:0;background:rgba(25,40,66,.98);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:36px}.mobile-menu.open{display:flex}.mobile-menu a{text-decoration:none;font-family:Cinzel,serif;font-size:1.4rem;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.6)}.mobile-menu a:hover,.mobile-menu a.active{color:var(--gold)}.hero{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:150px 24px 80px;position:relative;overflow:hidden}.hero-lines{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%);background-size:80px 80px}.hero-content{position:relative;z-index:2;max-width:860px}.overline{font-size:.6rem;letter-spacing:8px;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:28px;display:flex;align-items:center;justify-content:center;gap:16px}.overline:before,.overline:after{content:'';width:40px;height:1px;background:var(--gold);opacity:.4}h1{font-family:Cinzel,serif;font-size:3rem;font-weight:400;letter-spacing:5px;line-height:1.2;text-transform:uppercase;margin-bottom:24px}h1 em{font-style:normal;color:var(--gold);font-weight:700}.hero p{font-size:.82rem;line-height:1.95;color:rgba(255,255,255,.62);max-width:720px;margin:0 auto}.gold-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.3}.section{padding:86px 80px}.section.alt{background:var(--navy-mid)}.wrap{max-width:1100px;margin:0 auto}.detail-grid{display:grid;grid-template-columns:1fr .72fr;gap:34px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.panel{border:1px solid rgba(197,165,90,.12);background:rgba(255,255,255,.012);padding:40px 44px}.panel h2,.panel h3{font-family:Cinzel,serif;font-size:1rem;font-weight:500;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:16px}.panel p{font-size:.78rem;line-height:1.9;color:var(--slate);font-weight:300;margin-bottom:18px}.price{font-family:Cinzel,serif;font-size:2.1rem;letter-spacing:2px;color:var(--white);margin:4px 0 20px}.price span{font-family:Montserrat,sans-serif;font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-left:8px}ul{list-style:none;display:grid;gap:10px}li{position:relative;padding-left:18px;font-size:.72rem;line-height:1.8;color:rgba(255,255,255,.66)}li:before{content:'';position:absolute;left:0;top:13px;width:7px;height:1px;background:var(--gold)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.btn-ghost,.buy-placeholder{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 26px;font-size:.58rem;letter-spacing:3px;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:700;text-decoration:none}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.22);color:var(--white)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.buy-placeholder{background:rgba(197,165,90,.1);border:1px solid rgba(197,165,90,.42);color:var(--gold-light);transition:all .2s}.buy-placeholder:hover{background:var(--gold);border-color:var(--gold);color:var(--navy);box-shadow:0 0 24px rgba(197,165,90,.18)}.micro{font-size:.66rem!important;color:rgba(255,255,255,.42)!important;margin-top:14px!important}.back-link{color:var(--gold);font-size:.62rem;letter-spacing:3px;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(197,165,90,.35);padding-bottom:4px}footer{background:#192842;padding:44px 60px;border-top:1px solid rgba(197,165,90,.1);text-align:center}footer p{font-size:.66rem;line-height:1.8;color:rgba(255,255,255,.38)}@media(max-width:900px){nav{padding:18px 24px}.nav-links,.nav-cta{display:none}.hamburger{display:flex;z-index:101}.nav-brand{font-size:.56rem;letter-spacing:2px}h1{font-size:2rem;letter-spacing:3px}.hero{padding-top:120px}.section{padding:58px 24px}.detail-grid,.three{grid-template-columns:1fr}.panel{padding:32px 26px}.actions{flex-direction:column}.btn-ghost,.buy-placeholder{width:100%;text-align:center}}

/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: digital-tools-supplier-onboarding-checklist.html style block 1 ===== */
:root{--navy:#192842;--navy-mid:#253a59;--gold:#c5a55a;--gold-light:#d9c580;--white:#fff;--slate:#a0b0c0}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--navy);color:var(--white);font-family:Montserrat,sans-serif;overflow-x:hidden}a,button{-webkit-tap-highlight-color:rgba(197,165,90,.2);touch-action:manipulation}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:24px 60px;background:rgba(25,40,66,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(197,165,90,.08)}.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none}.nav-logo svg{width:32px;height:40px}.nav-brand{font-family:Cinzel,serif;font-size:.75rem;font-weight:600;color:var(--white);letter-spacing:3px;white-space:nowrap}.nav-links{display:flex;gap:28px}.nav-links a{text-decoration:none;font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6)}.nav-links a:hover,.nav-links a.active{color:var(--gold)}.nav-cta{background:transparent;border:1.5px solid var(--gold);color:var(--gold);padding:10px 24px;font-size:.6rem;letter-spacing:3px;text-transform:uppercase;text-decoration:none;font-weight:600}.hero{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:150px 24px 80px;position:relative;overflow:hidden}.hero-lines{position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%);background-size:80px 80px}.hero-content{position:relative;z-index:2;max-width:860px}.overline{font-size:.6rem;letter-spacing:8px;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:28px;display:flex;align-items:center;justify-content:center;gap:16px}.overline:before,.overline:after{content:'';width:40px;height:1px;background:var(--gold);opacity:.4}h1{font-family:Cinzel,serif;font-size:3rem;font-weight:400;letter-spacing:5px;line-height:1.2;text-transform:uppercase;margin-bottom:24px}h1 em{font-style:normal;color:var(--gold);font-weight:700}.hero p{font-size:.82rem;line-height:1.95;color:rgba(255,255,255,.62);max-width:720px;margin:0 auto}.gold-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.3}.section{padding:86px 80px}.section.alt{background:var(--navy-mid)}.wrap{max-width:1100px;margin:0 auto}.detail-grid{display:grid;grid-template-columns:1fr .72fr;gap:34px;align-items:start}.panel{border:1px solid rgba(197,165,90,.12);background:rgba(255,255,255,.012);padding:40px 44px}.panel h2,.panel h3{font-family:Cinzel,serif;font-size:1rem;font-weight:500;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:16px}.panel p{font-size:.78rem;line-height:1.9;color:var(--slate);font-weight:300;margin-bottom:18px}.price{font-family:Cinzel,serif;font-size:2.1rem;letter-spacing:2px;color:var(--white);margin:4px 0 20px}.price span{font-family:Montserrat,sans-serif;font-size:.62rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-left:8px}ul{list-style:none;display:grid;gap:10px;margin:0;padding:0}li{position:relative;padding-left:18px;font-size:.72rem;line-height:1.8;color:rgba(255,255,255,.66)}li:before{content:'';position:absolute;left:0;top:13px;width:7px;height:1px;background:var(--gold)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.btn-ghost,.buy-placeholder{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 26px;font-size:.58rem;letter-spacing:3px;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:700;text-decoration:none}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.22);color:var(--white)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.buy-placeholder{background:rgba(197,165,90,.1);border:1px solid rgba(197,165,90,.42);color:var(--gold-light);cursor:default}.micro{font-size:.66rem!important;color:rgba(255,255,255,.42)!important;margin-top:14px!important}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.back-link{color:var(--gold);font-size:.62rem;letter-spacing:3px;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(197,165,90,.35);padding-bottom:4px}footer{background:#192842;padding:44px 60px;border-top:1px solid rgba(197,165,90,.1);text-align:center}footer p{font-size:.66rem;line-height:1.8;color:rgba(255,255,255,.38)}@media(max-width:900px){nav{padding:18px 24px}.nav-links,.nav-cta{display:none}.nav-brand{font-size:.56rem;letter-spacing:2px}h1{font-size:2rem;letter-spacing:3px}.section{padding:58px 24px}.detail-grid,.three{grid-template-columns:1fr}.panel{padding:32px 26px}.actions{flex-direction:column}.btn-ghost,.buy-placeholder{width:100%;text-align:center}}
@media(max-width:900px){nav{position:relative;flex-direction:column;gap:14px}.nav-links{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.hero{padding-top:70px}}

/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: digital-tools-supplier-onboarding-checklist.html style block 2 ===== */
.buy-placeholder { cursor: pointer; transition: background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease; }
  .buy-placeholder:hover { background: var(--gold); border-color: var(--gold); color: var(--navy); box-shadow: 0 0 24px rgba(197,165,90,.18); }

/* ===== Source: digital-tools-supplier-onboarding-checklist.html style block 3 ===== */
nav { padding: 28px 60px; background: transparent; transition: all .4s; border-bottom: 0; }
  nav.scrolled { background: rgba(25,40,66,.96); backdrop-filter: blur(10px); padding: 18px 60px; border-bottom: 1px solid rgba(197,165,90,.08); }
  .nav-logo { cursor: pointer; }
  .nav-links { align-items: center; }
  .nav-links a { position: relative; transition: color .3s; }
  .nav-links a:after { content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 1px; background: var(--gold); transition: width .3s; }
  .nav-links a:hover:after, .nav-links a.active:after { width: 100%; }
  .nav-cta { cursor: pointer; font-family: Montserrat,sans-serif; transition: all .3s; }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; background: none; border: none; padding: 8px; }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all .3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px,4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px,-5px); }
  .mobile-menu { display: none; position: fixed; inset: 0; background: rgba(25,40,66,.98); z-index: 99; flex-direction: column; align-items: center; justify-content: center; gap: 36px; }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { text-decoration: none; font-family: Cinzel,serif; font-size: 1.4rem; letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,.6); transition: color .3s; }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }
  @media(max-width:900px) { nav { position: fixed; flex-direction: row; gap: 0; padding: 18px 24px; } .nav-links, .nav-cta { display: none; } .hamburger { display: flex; z-index: 101; } .hero { padding-top: 120px; } }

/* ===== Source: index.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  html { scroll-behavior: smooth; }
  body { background: var(--navy); color: var(--white); font-family: 'Montserrat', sans-serif; overflow-x: hidden; }

  /* PAGE TRANSITIONS */
  .page { display: none; opacity: 0; transition: opacity 0.5s ease; }
  .page.active { display: block; }
  .page.visible { opacity: 1; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0; transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
  }
  .reveal.revealed { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }
  .reveal-delay-6 { transition-delay: 0.6s; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 28px 60px; background: transparent; transition: all 0.4s;
  }
  nav.scrolled { background: rgba(25,40,66,0.96); backdrop-filter: blur(10px); padding: 18px 60px; }
  .nav-logo { display: flex; align-items: center; gap: 14px; cursor: pointer; -webkit-tap-highlight-color: rgba(197,165,90,0.2); }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px;
    display: inline-block; white-space: nowrap; overflow: hidden; max-width: 0; opacity: 0; transform: translateX(-10px);
    animation: navBrandUnscroll 1.05s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
  }
  @keyframes navBrandUnscroll {
    0% { max-width: 0; opacity: 0; transform: translateX(-10px); }
    35% { opacity: 1; }
    100% { max-width: 420px; opacity: 1; transform: translateX(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-brand { animation: none; max-width: 420px; opacity: 1; transform: none; }
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px;
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
    transition: color 0.3s; cursor: pointer; position: relative;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: -4px; left: 0;
    width: 0; height: 1px; background: var(--gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active { color: var(--gold); }
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent; border: 1.5px solid var(--gold); color: var(--gold);
    padding: 10px 24px; font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 600; transition: all 0.3s;
  }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .nav-cta.active { background: var(--gold); color: var(--navy); }

  /* MOBILE NAV */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer;
    background: none; border: none; padding: 8px; -webkit-appearance: none; touch-action: manipulation;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(25,40,66,0.98); z-index: 99;
    flex-direction: column; align-items: center; justify-content: center; gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.4rem;
    letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.6);
    transition: color 0.3s; cursor: pointer;
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  /* HERO */
  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
  }
  .hero-watermark {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%); opacity: 0.04;
  }
  .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    z-index: 0;
    pointer-events: none;
  }
  .hero-content { position: relative; z-index: 2; animation: fadeIn 1.2s ease; }
  .hero-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 28px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .hero-content .overline::before, .hero-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif; font-size: 3.8rem; font-weight: 400;
    letter-spacing: 6px; color: var(--white); line-height: 1.2;
    text-transform: uppercase; margin-bottom: 24px;
  }
  .hero-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .hero-desc {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 600px; margin: 0 auto 40px; font-weight: 300;
  }
  .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
  .hero-trust {
    position: absolute;
    left: 50%;
    bottom: clamp(34px, 7vh, 78px);
    z-index: 3;
    width: min(760px, calc(100vw - 48px));
    max-width: 760px;
    margin: 0;
    transform: translateX(-50%);
  }
  .hero-trust p {
    margin: 0;
    font-size: 0.62rem;
    line-height: 2;
    letter-spacing: 1.6px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.48);
    font-weight: 400;
  }
  .hero-trust a {
    color: rgba(217,197,128,0.86);
    text-decoration: none;
    border-bottom: 1px solid rgba(197,165,90,0.28);
    transition: color 0.25s ease, border-color 0.25s ease;
  }
  .hero-trust a:hover,
  .hero-trust a:focus-visible {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }

  .toolkit-toggle-btn.is-open {
    background: rgba(197,165,90,0.1);
    border-color: var(--gold);
    color: var(--gold-light);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16), inset 0 0 0 1px rgba(217,197,128,0.12);
  }
  .insight-card:focus-within,
  .insight-card.is-active {
    transform: translateY(-4px);
    border-left-color: var(--gold);
    box-shadow: 0 18px 36px rgba(0,0,0,0.2), inset 0 0 0 1px rgba(217,197,128,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.012));
  }
  .insight-card:focus-within .read-more,
  .insight-card.is-active .read-more,
  .insight-card:focus-within .insight-toggle,
  .insight-card.is-active .insight-toggle {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .tk-pill-btn.active,
  .tk-opt.tk-nf-active {
    box-shadow: 0 10px 24px rgba(0,0,0,0.14), inset 0 0 0 1px rgba(217,197,128,0.08);
  }
  .btn-gold {
    background: var(--gold); color: var(--navy); padding: 16px 36px; border: none;
    font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 700; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .hero .btn-gold {
    position: relative;
    overflow: hidden;
    isolation: isolate;
  }
  .hero .btn-gold::after {
    content: '';
    position: absolute;
    inset: -40% auto -40% -55%;
    width: 38%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.36), transparent);
    transform: skewX(-18deg);
    animation: pccGoldSheen 1.15s ease-out 0.55s 1 both;
    pointer-events: none;
  }
  @keyframes pccGoldSheen {
    0% { left: -55%; opacity: 0; }
    18% { opacity: 0.55; }
    100% { left: 115%; opacity: 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    .hero .btn-gold::after { animation: none; display: none; }
  }
  .btn-ghost {
    background: transparent; border: 1px solid rgba(255,255,255,0.2); color: var(--white);
    padding: 16px 36px; font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 400; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  /* DIVIDER */
  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }

  /* SECTION HEADS */
  .section-head { margin-bottom: 60px; }
  .section-head .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    color: var(--white); letter-spacing: 3px; margin-top: 10px; text-transform: uppercase;
  }

  /* SERVICES */
  .services {
    padding: 100px 80px; background: var(--navy-mid); position: relative;
  }
  .services::before {
    content: ''; position: absolute; top: 0; left: 60px; bottom: 0;
    width: 1px; background: linear-gradient(180deg, transparent, rgba(197,165,90,0.15), transparent);
  }
  .service-rows { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1100px; margin: 0 auto; }
  .svc {
    padding: 44px 40px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative;
  }
  .svc::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 2px; background: var(--gold); transition: width 0.5s;
  }
  .svc:hover::after { width: 100%; }
  .svc:hover { background: rgba(197,165,90,0.018); }
  .svc .num { font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 300; color: rgba(197,165,90,0.3); margin-bottom: 14px; }
  .svc h3 { font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500; color: var(--white); letter-spacing: 2px; margin-bottom: 10px; }
  .svc p { font-size: 0.72rem; line-height: 1.8; color: var(--slate); font-weight: 300; }
  #page-home .services .svc {
    padding: 42px 44px 40px;
  }
  #page-home .services .svc .num {
    display: none;
  }
  #page-home .services .svc h3 {
    font-size: 1.08rem;
    letter-spacing: 2.2px;
    line-height: 1.5;
    margin-bottom: 16px;
  }
  #page-home .services .svc p {
    font-size: 0.82rem;
    line-height: 1.95;
  }

  /* TRAINING HIGHLIGHT */
  .training-highlight {
    padding: 80px; background: var(--navy);
    text-align: center;
  }
  .training-inner {
    max-width: 800px; margin: 0 auto;
    padding: 50px 60px;
    border: 1px solid rgba(197,165,90,0.15);
    position: relative;
  }
  .training-inner::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 60px; height: 3px; background: var(--gold);
  }
  .training-inner .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-inner h3 {
    font-family: 'Cinzel', serif; font-size: 1.3rem; font-weight: 400;
    color: var(--white); letter-spacing: 2px; margin-bottom: 14px; text-transform: uppercase;
  }
  .training-inner p {
    font-size: 0.75rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 28px;
  }

  /* HOW WE WORK */
  .how-we-work {
    padding: 100px 80px; background: var(--navy);
  }
  .process-steps {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
    max-width: 1100px; margin: 0 auto; position: relative;
  }
  .process-steps::before {
    content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
    height: 1px; background: rgba(197,165,90,0.25);
  }
  .process-step {
    text-align: center; padding: 0 16px; position: relative;
  }
  .process-step .step-num {
    width: 56px; height: 56px; border: 2px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-family: 'Cinzel', serif; font-size: 1.1rem;
    font-weight: 600; color: var(--gold); background: var(--navy);
    position: relative; z-index: 2;
  }
  .process-step h4 {
    font-family: 'Cinzel', serif; font-size: 0.7rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 10px;
  }
  .process-step p {
    font-size: 0.65rem; line-height: 1.7; color: var(--slate); font-weight: 300;
  }

  /* WHY SECTION */
  .why {
    padding: 100px 80px; background: var(--navy);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center;
  }
  .why-left h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .why-left p { font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 32px; }
  .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .why-card {
    background: var(--navy-mid); padding: 32px 28px;
    border-top: 2px solid var(--gold); transition: transform 0.3s;
  }
  .why-card:hover { transform: translateY(-4px); }
  .why-card .icon { font-size: 1.6rem; margin-bottom: 12px; color: var(--gold); }
  .why-card h4 {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); margin-bottom: 8px; text-transform: uppercase;
  }
  .why-card p { font-size: 0.68rem; line-height: 1.7; color: var(--slate); font-weight: 300; }

  /* QUOTE */
  .quote-section {
    padding: 80px; background: var(--gold); text-align: center; position: relative;
  }
  .quote-section blockquote {
    font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; font-weight: 400;
    font-style: italic; color: var(--navy); max-width: 700px;
    margin: 0 auto; line-height: 1.5;
  }
  .quote-section .attr {
    font-family: 'Montserrat', sans-serif; font-size: 0.65rem; letter-spacing: 3px;
    text-transform: uppercase; color: var(--navy); font-weight: 700; margin-top: 24px;
  }

  /* CTA DARK */
  .cta-dark {
    padding: 100px 80px; text-align: center; background: var(--navy);
  }
  .cta-dark h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 4px; color: var(--white); text-transform: uppercase; margin-bottom: 14px;
  }
  .cta-dark p { font-size: 0.75rem; color: var(--slate); margin-bottom: 36px; font-weight: 300; }

  /* FOOTER */
  footer {
    background: #192842; padding: 50px 80px 30px;
    border-top: 1px solid rgba(197,165,90,0.1);
  }
  .footer-main {
    display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 60px;
    margin-bottom: 40px;
  }
  .footer-brand { display: flex; align-items: flex-start; gap: 16px; }
  .footer-brand svg { width: 28px; height: 34px; flex-shrink: 0; margin-top: 3px; }
  .footer-brand-text span {
    font-family: 'Cinzel', serif; font-size: 0.8rem; letter-spacing: 3px;
    color: rgba(255,255,255,0.5); display: inline-block; margin-bottom: 16px;
    line-height: 1.4; padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }
  .footer-brand-text p {
    font-size: 0.62rem; line-height: 1.9; color: rgba(255,255,255,0.3); font-weight: 300;
    max-width: 340px;
  }
  .footer-col h5 {
    font-family: 'Cinzel', serif; font-size: 0.6rem; font-weight: 600;
    letter-spacing: 3px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; padding-bottom: 12px;
    border-bottom: 1px solid rgba(197,165,90,0.3);
    display: inline-block;
  }
  .footer-col p, .footer-col a {
    font-size: 0.62rem; line-height: 2; color: rgba(255,255,255,0.35);
    font-weight: 300; text-decoration: none; display: block;
  }
  .footer-col a:hover { color: var(--gold); }
  .footer-social {
    display: flex; gap: 16px; margin-top: 14px;
  }
  .footer-social a {
    width: 32px; height: 32px; border: 1px solid rgba(197,165,90,0.2);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.65rem; color: rgba(255,255,255,0.4); transition: all 0.3s;
  }
  .footer-social a:hover { border-color: var(--gold); color: var(--gold); }
  .footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.08); padding-top: 24px;
    flex-wrap: wrap; gap: 12px;
  }
  .footer-bottom p {
    font-size: 0.55rem; color: rgba(255,255,255,0.2); letter-spacing: 1px;
  }

  /* ===== ABOUT PAGE ===== */
  .about-hero {
    min-height: 60vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
    padding: 140px 80px 80px;
  }
  .about-hero .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .about-content { position: relative; z-index: 2; }
  .about-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .about-content .overline::before, .about-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .about-content h1 {
    font-family: 'Cinzel', serif; font-size: 3rem; font-weight: 400;
    letter-spacing: 5px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .about-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .about-content p {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 650px; margin: 0 auto; font-weight: 300;
  }

  .about-story {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
  }
  .about-story h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 24px;
  }
  .about-story p {
    font-size: 0.78rem; line-height: 2; color: var(--slate); font-weight: 300; margin-bottom: 20px;
  }

  .stats-row {
    padding: 80px; background: var(--navy);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; text-align: center;
  }
  .stat-item { padding: 20px; }
  .stat-item .num {
    font-family: 'Cinzel', serif; font-size: 2.8rem; font-weight: 400; color: var(--gold); margin-bottom: 8px;
  }
  .stat-item .label {
    font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase; color: var(--slate); font-weight: 400;
  }

  .values-section { padding: 100px 80px; background: var(--navy-mid); }
  .values-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .value-item {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s; text-align: center;
  }
  .value-item:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .value-item .icon { font-size: 1.8rem; margin-bottom: 16px; color: var(--gold); }
  .value-item h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 12px;
  }
  .value-item p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== SECTORS PAGE ===== */
  .sectors-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1200px; margin: 0 auto;
  }
  .sector-card {
    padding: 50px 36px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative; overflow: hidden;
  }
  .sector-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0;
    height: 3px; background: var(--gold); transform: scaleX(0);
    transform-origin: left; transition: transform 0.5s;
  }
  .sector-card:hover::before { transform: scaleX(1); }
  .sector-card:hover { background: rgba(197,165,90,0.018); }
  .sector-card .sector-icon { font-size: 2rem; margin-bottom: 20px; color: var(--gold); opacity: 0.8; }
  .sector-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); margin-bottom: 12px; text-transform: uppercase;
  }
  .sector-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== INSIGHTS PAGE ===== */
  .insights-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .insight-card {
    background: var(--navy-mid); padding: 40px 36px;
    border-left: 3px solid var(--gold); transition: all 0.4s;
    display:flex;
    flex-direction:column;
    min-height:100%;
  }
  .insight-card:hover { transform: translateY(-2px); }
  .insight-card .tag {
    font-size: 0.5rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.95rem; font-weight: 500;
    color: var(--white); letter-spacing: 1px; margin-bottom: 12px; line-height: 1.5;
  }
  .insight-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; margin-bottom: 16px; }
  .insight-card .read-more {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; text-decoration: none; cursor: pointer; transition: opacity 0.3s;
  }
  .insight-card .read-more:hover { opacity: 0.7; }
  .insights-grid, .insights-more { align-items:stretch; }

  .official-updates-section {
    padding-top: 64px !important;
  }
  .official-updates-section .section-head {
    max-width: 920px;
    margin: 0 auto 34px;
    padding-top: 6px;
  }
  .official-updates-section .section-head .over {
    display: block;
    margin-bottom: 22px;
  }
  .official-updates-section .section-head h2 {
    margin-bottom: 24px;
  }
  .official-updates-section .section-head p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
  .official-updates-section .insights-grid {
    align-items: stretch;
  }
  .official-updates-section .insight-card {
    min-height: 100%;
  }
  .official-meta {
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 10px;
    font-weight: 500;
  }
  .official-date {
    display: block;
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 16px;
    font-weight: 500;
  }
  .official-note {
    max-width: 860px;
    margin: 12px auto 0;
    font-size: 0.64rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.42);
    text-align: center;
  }

  .official-updates-status {
    max-width: 1000px;
    margin: 10px auto 26px;
    padding: 0 4px;
    font-size: 0.56rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
  }
  .official-updates-status strong {
    color: rgba(255,255,255,0.72);
    font-weight: 500;
  }

  /* ===== TRAINING PAGE ===== */
  .training-page-intro {
    padding: 100px 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .training-page-content {
    padding: 80px; background: var(--navy-mid);
  }
  .training-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;
    max-width: 1000px; margin: 0 auto;
  }
  .training-feature {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s;
  }
  .training-feature:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .training-feature .icon { font-size: 1.6rem; margin-bottom: 14px; color: var(--gold); }
  .training-feature h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 10px;
  }
  .training-feature p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== CONTACT PAGE ===== */
  .contact-section {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start;
  }
  .contact-info h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .contact-info p {
    font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 36px;
  }
  .accreditation-card {
    margin-top: 34px;
    padding-top: 12px;
    border-top: 1px solid rgba(197,165,90,0.14);
  }
  .accreditation-card .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 12px;
  }
  .portal-intro {
    font-size: 0.7rem;
    line-height: 1.8;
    color: var(--slate);
    font-weight: 300;
    margin: 0 0 18px;
    max-width: 560px;
  }
  .portal-links-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portal-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    padding: 18px 20px;
    border: 1px solid rgba(197,165,90,0.16);
    background: rgba(255,255,255,0.02);
    border-radius: 16px;
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  }
  .portal-link:hover {
    transform: translateY(-2px);
    border-color: rgba(197,165,90,0.34);
    background: rgba(197,165,90,0.04);
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  }
  .portal-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  .portal-link-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
  }
  .portal-logo {
    display: block;
    max-width: min(240px, 100%);
    width: auto;
    height: auto;
    max-height: 48px;
  }
  .portal-logo-bloom { max-height: 44px; }
  .portal-logo-constellia { max-height: 40px; }
  .portal-logo-delta { max-height: 64px; }
  .portal-caption {
    font-size: 0.56rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.52);
    font-weight: 500;
    text-align: center;
  }
  .contact-detail {
    display: flex; gap: 14px; margin-bottom: 24px; align-items: flex-start;
  }
  .contact-detail .cd-icon {
    width: 36px; height: 36px; border: 1px solid rgba(197,165,90,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.8rem; color: var(--gold); flex-shrink: 0;
  }
  .contact-detail .cd-text .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 4px;
  }
  .contact-detail .cd-text .cd-value {
    font-size: 0.75rem; color: rgba(255,255,255,0.7); font-weight: 300;
  }
  .contact-form {
    background: var(--navy); padding: 50px 44px; border: 1px solid rgba(197,165,90,0.1);
  }
  .contact-form h3 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 30px;
  }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
  .form-group { margin-bottom: 20px; }
  .form-group label {
    display: block; font-size: 0.55rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--slate); font-weight: 500; margin-bottom: 8px;
  }
  .form-group input, .form-group select, .form-group textarea {
    width: 100%; background: var(--navy-mid); border: 1px solid rgba(197,165,90,0.15);
    color: var(--white); padding: 14px 16px; font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem; font-weight: 300; outline: none; transition: border-color 0.3s;
  }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--gold); }
  .form-group textarea { min-height: 120px; resize: vertical; }
  .form-group select { cursor: pointer; appearance: none; }
  .form-group select option { background: var(--navy-mid); }
  .form-submit { display: flex; align-items: center; gap: 20px; margin-top: 10px; }
  .form-success {
    display: none; padding: 28px 24px; background: rgba(197,165,90,0.08);
    border: 1px solid rgba(197,165,90,0.4); border-top: 3px solid var(--gold); text-align: center; margin-top: 20px;
    border-radius: 4px;
  }
  .contact-form.submitted > *:not(.form-success) { display: none !important; }
  .contact-form.submitted .form-success { display: block; }
  .form-success.show { display: block; }
  .form-success p {
    font-family: 'Cinzel', serif; font-size: 1.02rem; color: var(--gold);
    letter-spacing: 2px; margin-bottom: 12px; text-transform: uppercase;
  }
  .form-success span {
    font-size: 0.78rem; color: rgba(255,255,255,0.82); font-weight: 300;
    display: block; margin-top: 0; line-height: 1.85;
  }

  /* ===== PRIVACY POLICY PAGE ===== */
  .policy-content {
    padding: 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .policy-updated {
    font-size: 0.65rem; letter-spacing: 2px; color: var(--gold);
    text-transform: uppercase; font-weight: 500; margin-bottom: 30px;
  }
  .policy-section { margin-bottom: 36px; }
  .policy-content h2 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 16px;
  }
  .policy-content h3 {
    font-size: 0.72rem; font-weight: 600; color: var(--gold);
    letter-spacing: 1px; margin: 16px 0 8px; text-transform: uppercase;
  }
  .policy-content p {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    margin-bottom: 14px;
  }
  .policy-content ul {
    list-style: none; padding: 0; margin-bottom: 14px;
  }
  .policy-content ul li {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    padding-left: 20px; position: relative;
  }
  .policy-content ul li::before {
    content: ''; position: absolute; left: 0; top: 12px;
    width: 6px; height: 1px; background: var(--gold);
  }
  .policy-content strong { color: var(--white); font-weight: 500; }

  @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

  /* ===== REFINED DIMENSIONAL EFFECTS ===== */
  #page-home .hero-content {
    perspective: none;
    transform-style: flat;
  }

  .svc,
  .feature-split-card,
  .why-card,
  .sector-card,
  .insight-card,
  .training-feature,
  .toolkit-paid-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .value-item,
  .process-step {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 14px 30px rgba(9,16,28,0.14);
    transition: box-shadow 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
  }
  .svc::before,
  .feature-split-card::before,
  .why-card::before,
  .sector-card::before,
  .insight-card::before,
  .training-feature::before,
  .toolkit-paid-card::before,
  .tk-portal-card::before,
  .tk-gloss-term::before,
  .tk-notice-card::before,
  .value-item::before,
  .process-step::before {
    content:'';
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
    opacity:0;
    pointer-events:none;
    transition: opacity 0.28s ease;
  }
  .svc:hover,
  .feature-split-card:hover,
  .why-card:hover,
  .sector-card:hover,
  .insight-card:hover,
  .training-feature:hover,
  .toolkit-paid-card:hover,
  .tk-portal-card:hover,
  .tk-gloss-term:hover,
  .tk-notice-card:hover,
  .value-item:hover,
  .process-step:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .svc:hover::before,
  .feature-split-card:hover::before,
  .why-card:hover::before,
  .sector-card:hover::before,
  .insight-card:hover::before,
  .training-feature:hover::before,
  .toolkit-paid-card:hover::before,
  .tk-portal-card:hover::before,
  .tk-gloss-term:hover::before,
  .tk-notice-card:hover::before,
  .value-item:hover::before,
  .process-step:hover::before {
    opacity: 1;
  }

  .feature-split-card,
  .toolkit-paid-card,
  .training-feature,
  .insight-card,
  .sector-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .svc,
  .process-step {
    background-image: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  }

  .process-step {
    border: 1px solid rgba(197,165,90,0.08);
    padding: 26px 18px 24px;
    text-align: center;
  }
  .process-step:hover {
    background: linear-gradient(180deg, rgba(197,165,90,0.06), rgba(255,255,255,0.01));
  }
  .process-step .step-num {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }
  .process-step:hover .step-num {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    border-color: rgba(217,197,128,0.85);
  }

  .stats-row .stat-item {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
    border: 1px solid rgba(197,165,90,0.1);
    box-shadow: 0 16px 30px rgba(8,14,24,0.16);
    transition: transform 0.32s ease, box-shadow 0.32s ease, border-color 0.32s ease;
  }
  .stats-row .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .stats-row .stat-item::after {
    content: '';
    position: absolute;
    left: 18%; right: 18%; bottom: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.8), transparent);
    opacity: 0.55;
  }

  .nav-cta,
  .contact-form .btn-gold {
    transform: translateZ(0);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  }
  .nav-cta:hover,
  .contact-form .btn-gold:hover {
    transform: translateY(-2px) scale(1.035);
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
  }

  .insight-card {
    border: 1px solid rgba(197,165,90,0.12);
    border-left-width: 2px;
  }
  .insight-card::after {
    content:'';
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg, rgba(197,165,90,0), rgba(197,165,90,0.75), rgba(197,165,90,0));
    opacity:0.35;
    transition: opacity 0.28s ease;
  }
  .insight-card:hover::after {
    opacity:0.9;
  }
  .insight-card:hover .read-more,
  .sector-card:hover h3,
  .training-feature:hover h4,
  .toolkit-paid-card:hover .toolkit-card-link {
    color: var(--gold-light);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc,
    .feature-split-card,
    .why-card,
    .sector-card,
    .insight-card,
    .training-feature,
    .toolkit-paid-card,
    .tk-portal-card,
    .tk-gloss-term,
    .tk-notice-card,
    .value-item,
    .process-step,
    .stats-row .stat-item,
    .nav-cta,
    .contact-form .btn-gold {
      transition: none !important;
      transform: none !important;
    }
    .svc::before,
    .feature-split-card::before,
    .why-card::before,
    .sector-card::before,
    .insight-card::before,
    .training-feature::before,
    .toolkit-paid-card::before,
    .tk-portal-card::before,
    .tk-gloss-term::before,
    .tk-notice-card::before,
    .value-item::before,
    .process-step::before,
    .insight-card::after {
      transition: none !important;
    }
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 1024px) {
    .hero-content h1 { font-size: 2.6rem; }
    .about-story { grid-template-columns: 1fr; gap: 40px; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-section { grid-template-columns: 1fr; gap: 50px; }
    .why { grid-template-columns: 1fr; gap: 50px; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .process-steps::before { display: none; }
  }
  @media (max-width: 768px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger {
      align-items: center !important;
      background: rgba(25,40,66,0.86) !important;
      border: 1px solid rgba(197,165,90,0.26) !important;
      display: flex !important;
      flex-direction: column !important;
      gap: 5px !important;
      height: 44px !important;
      justify-content: center !important;
      position: fixed !important;
      right: 24px !important;
      top: 24px !important;
      width: 44px !important;
      z-index: 101 !important;
    }
    .hamburger span {
      background: var(--white) !important;
      display: block !important;
      flex: 0 0 auto !important;
      height: 1.5px !important;
      width: 24px !important;
    }
    .hero { min-height: 100vh; padding: 0 24px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-desc { font-size: 0.72rem; }
    .hero-btns { flex-direction: column; align-items: center; gap: 12px; }
    .hero-trust { bottom: 40px; width: calc(100vw - 48px); }
    .hero-trust p { font-size: 0.55rem; letter-spacing: 1.2px; line-height: 2.1; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; text-align: center; }
    .services, .why, .cta-dark, .about-hero, .about-story, .values-section, .contact-section, .training-page-content, .how-we-work { padding: 60px 24px; }
    .stats-row { padding: 60px 24px; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .quote-section { padding: 50px 24px; }
    .quote-section blockquote { font-size: 1.2rem; }
    .service-rows { grid-template-columns: 1fr; }
    .svc { padding: 32px 24px; }
    .svc h3 { font-size: 0.85rem; }
    #page-home .services .svc {
      padding: 34px 26px 32px;
    }
    #page-home .services .svc h3 {
      font-size: 0.98rem;
      letter-spacing: 1.4px;
      line-height: 1.45;
    }
    #page-home .services .svc p {
      font-size: 0.78rem;
      line-height: 1.9;
    }
    .why-right { grid-template-columns: 1fr; }
    .values-grid { grid-template-columns: 1fr; }
    .sectors-grid { grid-template-columns: 1fr; }
    .insights-grid { grid-template-columns: 1fr; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: 1fr; gap: 30px; }
    .process-step .step-num { width: 46px; height: 46px; font-size: 0.95rem; }
    .form-row { grid-template-columns: 1fr; }
    .contact-form { padding: 36px 24px; }

    .accreditation-card { margin-top: 28px; padding-top: 10px; }
    .portal-links-grid { gap: 12px; }
    .portal-link { min-height: 82px; padding: 16px; }
    .portal-logo-bloom { max-height: 38px; }
    .portal-logo-constellia { max-height: 34px; }
    .portal-logo-delta { max-height: 54px; }
    footer { padding: 30px 24px 20px; }
    .footer-main { grid-template-columns: 1fr; gap: 30px; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .about-hero { padding: 80px 24px 40px; min-height: auto; }
    .about-content h1 { font-size: 1.8rem; }
    .about-content p { font-size: 0.72rem; }
    .about-story h2 { font-size: 1.4rem; }
    .stat-item .num { font-size: 2rem; }
    .section-head h2 { font-size: 1.4rem; }
    .cta-dark h2 { font-size: 1.4rem; letter-spacing: 2px; }
    .why-left h2 { font-size: 1.5rem; }
    .policy-content { padding: 40px 24px; }
    .policy-section h2 { font-size: 0.9rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    
    /* -- TOOLKIT INLINE STYLE OVERRIDES ----------------------- */
    .how-we-work { padding: 60px 24px !important; }
    #tk-notices-out { grid-template-columns: 1fr !important; }
    #tk-gloss-out { grid-template-columns: 1fr !important; }
    #page-toolkit .svc { overflow-x: hidden; overflow: hidden; }
    .svc::after { display: none; }
    .svc:hover { background: none; }
    #page-toolkit [style*="max-width:1100px"],
    #page-toolkit [style*="max-width:1000px"],
    #page-toolkit [style*="max-width:800px"] { max-width: 100% !important; padding-left: 0; padding-right: 0; }

    /* -- TOOLKIT OVERFLOW FIX --------------------------------- */
    #toolkit, #toolkit * { max-width: 100%; box-sizing: border-box; }
    #toolkit .container { overflow-x: hidden; }
    /* -- TOOLKIT PAGE MOBILE ----------------------------------- */
    .tk-portal-card { padding: 16px 18px; width: 100%; box-sizing: border-box; }
    .tk-portal-card strong { font-size: 0.75rem; }
    .tk-portal-card span { font-size: 0.7rem; }
    .tk-opt { padding: 10px 16px; font-size: 0.62rem; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .tk-gloss-term { padding: 12px 14px; }
    .tk-gloss-term strong { font-size: 0.7rem; }
    .tk-gloss-term span { font-size: 0.68rem; }
    .tk-milestone { flex-wrap: wrap; gap: 6px; }
    .tk-milestone-label { font-size: 0.66rem; flex-basis: 100%; }
    .tk-milestone-date { font-size: 0.66rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    [class*="tk-"] > * { max-width: 100%; box-sizing: border-box; }
    .tk-tool-panel, .tk-section, .tk-grid, .tk-card-grid { grid-template-columns: 1fr !important; }
    .tk-opt-group { display: flex; flex-direction: column; gap: 8px; width: 100%; }
    .tk-result { padding: 20px 16px; font-size: 0.72rem; }
    .tk-input, .tk-select { width: 100%; max-width: 100%; font-size: 0.78rem; padding: 10px 12px; box-sizing: border-box; }
    .tk-btn { width: 100%; min-height: 44px; font-size: 0.65rem; }
    .tk-tabs { flex-wrap: wrap; gap: 6px; }
    .tk-tab { flex: 1 1 auto; text-align: center; font-size: 0.6rem; padding: 8px 10px; }

  }

  /* -- TOOLKIT PAGE ------------------------------------------ */
  .tk-opt {
    background: transparent; border: 1px solid rgba(197,165,90,0.25);
    color: rgba(255,255,255,0.7); padding: 8px 18px;
    font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    font-family: 'Montserrat', sans-serif; cursor: pointer;
    border-radius: 2px; transition: all 0.3s;
  }
  .tk-opt:hover { border-color: var(--gold); color: var(--gold); background: rgba(197,165,90,0.06); }
  .tk-portal-card {
    display: block; padding: 20px 24px;
    border: 1px solid rgba(197,165,90,0.1);
    text-decoration: none; color: inherit;
    transition: all 0.3s; border-radius: 2px;
  }
  .tk-portal-card:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.018); }
  .tk-portal-card strong { font-family: 'Cinzel', serif; font-size: 0.8rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 6px; }
  .tk-portal-card span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-gloss-term { padding: 14px 18px; border: 1px solid rgba(197,165,90,0.08); border-radius: 2px; }
  .tk-gloss-term strong { font-family: 'Cinzel', serif; font-size: 0.72rem; color: var(--gold); display: block; margin-bottom: 4px; letter-spacing: 1px; }
  .tk-gloss-term span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-milestone { display: flex; align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .tk-milestone:last-child { border-bottom: none; }
  .tk-milestone-label { font-size: 0.68rem; color: rgba(255,255,255,0.5); flex: 1; }
  .tk-milestone-date { font-size: 0.68rem; color: var(--gold); font-family: 'Cinzel', serif; white-space: nowrap; }
  .tk-milestone-flag { font-size: 0.58rem; color: #e07070; margin-left: 6px; }

  /* -- PA23 NOTICES ------------------------------------------ */
  .tk-nf-active { border-color: var(--gold) !important; color: var(--gold) !important; background: rgba(197,165,90,0.08) !important; }
  .tk-notice-card {
    padding: 20px 22px; border: 1px solid rgba(197,165,90,0.1);
    border-radius: 2px; transition: border-color 0.3s;
  }
  .tk-notice-card:hover { border-color: rgba(197,165,90,0.3); }
  .tk-notice-ref { font-family: 'Cinzel', serif; font-size: 0.75rem; color: var(--gold); letter-spacing: 2px; font-weight: 600; }
  .tk-notice-cat { font-size: 0.5rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); font-family: 'Montserrat', sans-serif; }
  .tk-notice-title { font-family: 'Cinzel', serif; font-size: 0.82rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 14px; }
  .tk-notice-section { margin-bottom: 10px; }
  .tk-notice-section:last-child { margin-bottom: 0; }
  .tk-notice-label { font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); font-weight: 500; display: block; margin-bottom: 3px; }
  .tk-notice-section p { font-size: 0.68rem; color: rgba(255,255,255,0.55); line-height: 1.75; margin: 0; }

  /* Global mobile overflow protection */
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }
  .btn-gold:focus-visible, .btn-ghost:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }

  @media (max-width: 768px) {

    
    /* -- NOTICE CARDS MOBILE FIX ------------------------------- */
    .tk-notice-card { padding: 16px 14px; box-sizing: border-box; word-break: break-word; }
    .tk-notice-cat { 
      font-size: 0.42rem; 
      letter-spacing: 1px; 
      white-space: normal; 
      text-align: right;
      max-width: 120px;
      line-height: 1.4;
    }
    .tk-notice-ref { flex-shrink: 0; }
    #tk-notices-out { 
      grid-template-columns: 1fr !important; 
      overflow: hidden;
    }
    #tk-notices-out .tk-notice-card { width: 100%; max-width: 100%; overflow: hidden; }

    /* -- SERVICES DECORATIVE LINE FIX ------------------------- */
    .services::before { display: none; }

    /* -- GRID LINES MOBILE FIX -------------------------------- */
    .hero-lines { display: none; }
    .about-hero { overflow: hidden; }
    .services { overflow: hidden; }
    #page-toolkit .services { isolation: isolate; }

  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible, .btn-gold:focus-visible, .btn-ghost:focus-visible,
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- GLOSSARY SCROLLBAR ------------------------------------ */
  #tk-gloss-out::-webkit-scrollbar {
    width: 4px;
  }
  #tk-gloss-out::-webkit-scrollbar-track {
    background: rgba(25,40,66,0.6);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb {
    background: rgba(197,165,90,0.4);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb:hover {
    background: rgba(197,165,90,0.7);
  }

  /* ===== EDITORIAL / TOOLKIT ENHANCEMENTS ===== */
  .svc-link, .training-link-inline {
    display:inline-block;
    margin-top:14px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    text-decoration:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .svc-link:hover, .training-link-inline:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }

  .toolkit-paid {
    padding:80px; padding:clamp(40px,5vw,80px) clamp(20px,5vw,80px);
    background: var(--navy);
  }
  .feature-split-grid {
    max-width:1100px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px;
    align-items:stretch;
  }
  .feature-split-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:48px 52px;
    background:rgba(255,255,255,0.012);
    min-height:430px;
    display:flex;
    flex-direction:column;
    text-align:center;
  }
  .feature-split-card h4 {
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:3px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:20px;
  }
  .feature-split-card p {
    font-size:0.84rem;
    line-height:1.95;
    color:var(--slate);
    font-weight:300;
    max-width:560px;
    margin:0 auto 26px;
  }
  .feature-split-actions {
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .feature-split-actions .btn-gold,
  .feature-split-actions .btn-ghost {
    width:min(360px,100%);
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:14px 24px;
  }
  .support-products-grid {
    max-width:1100px;
    margin:0 auto 36px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
  }
  .toolkit-paid-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:38px 42px 34px;
    background:rgba(255,255,255,0.012);
    display:flex;
    flex-direction:column;
    min-height:0;
  }
  .toolkit-paid-card h4 {
    font-family:'Cinzel',serif;
    font-size:0.98rem;
    font-weight:500;
    letter-spacing:2px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .toolkit-paid-card > p {
    font-size:0.79rem;
    line-height:1.85;
    color:var(--slate);
    font-weight:300;
    margin-bottom:24px;
  }
  .toolkit-card-footer {
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid rgba(197,165,90,0.12);
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .toolkit-card-label {
    display:block;
    margin-bottom:10px;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
  }
  .toolkit-card-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .toolkit-card-list li {
    position:relative;
    padding-left:16px;
    font-size:0.69rem;
    line-height:1.7;
    color:rgba(255,255,255,0.62);
  }
  .toolkit-card-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:1px;
    background:var(--gold);
    opacity:0.8;
  }
  .toolkit-card-fit {
    margin:0;
    font-size:0.68rem;
    line-height:1.75;
    color:rgba(255,255,255,0.52);
  }
  .toolkit-card-link {
    align-self:flex-start;
    background:none;
    border:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    color:var(--gold);
    padding:0 0 4px;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    text-decoration:none;
  }
  .toolkit-card-link:hover {
    color:var(--gold-light);
    border-bottom-color:var(--gold-light);
  }
  .toolkit-paid-actions {
    max-width:1100px;
    margin:0 auto;
    text-align:center;
  }
  .toolkit-paid-note {
    max-width:680px;
    margin:18px auto 0;
    font-size:0.65rem;
    line-height:1.8;
    color:rgba(255,255,255,0.28);
  }

  .toolkit-toggle-btn {
    background:transparent;
    border:1px solid rgba(197,165,90,0.28);
    color:var(--gold);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    cursor:pointer;
    border-radius:2px;
    margin-bottom:18px;
  }
  .toolkit-toggle-btn:hover { background:rgba(197,165,90,0.06); border-color:var(--gold); }

  .insight-card.featured {
    background:rgba(255,255,255,0.015);
    border-left-width:4px;
  }
  .featured-label {
    font-size:0.48rem;
    letter-spacing:4px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
    margin-bottom:12px;
  }
  .insight-meta {
    font-size:0.54rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.42);
    margin-bottom:14px;
  }
  .insight-body {
    display:none;
    margin-top:18px;
  }
  .insight-body p {
    margin-bottom:14px;
    font-size:0.72rem;
    line-height:1.9;
    color:var(--slate);
  }
  .insight-toggle {
    margin-top:auto;
    align-self:flex-start;
    background:none;
    border:none;
    color:var(--gold);
    padding:0;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .insight-toggle:hover { color:var(--gold-light); border-bottom-color:var(--gold-light); }
  .insights-more { display:none; }
  .insights-more-wrap { text-align:center; margin-top:36px; }
  .insight-card h3 { text-wrap:balance; }
  .article-readtime { display:inline-block; }

  @media (max-width: 768px) {
    .feature-split-grid, .support-products-grid { grid-template-columns:1fr; gap:18px; }
    .feature-split-card { padding:30px 24px; min-height:auto; }
    .feature-split-card h4 { font-size:0.92rem; }
    .feature-split-card p { font-size:0.78rem; }
    .feature-split-actions .btn-gold, .feature-split-actions .btn-ghost { width:100%; min-height:46px; }
    .toolkit-paid-card { padding:28px 24px; min-height:auto; }
    .toolkit-paid-card h4 { font-size:0.86rem; }
    .toolkit-paid-card > p { font-size:0.76rem; }
    .toolkit-card-footer { padding-top:18px; gap:14px; }
    .toolkit-card-list li { font-size:0.68rem; }
    .toolkit-card-fit { font-size:0.67rem; }
    .toolkit-card-link { font-size:0.54rem; letter-spacing:2.2px; }
    .svc-link, .training-link-inline, .insight-toggle { font-size:0.54rem; letter-spacing:2.2px; }
  }

  /* ===== PCC TOOLKIT CALCULATORS ===== */
  .tk-calc-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:760px;
    margin-bottom:1.35rem;
    align-items:end;
  }
  .tk-calc-field label {
    display:block;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:8px;
    font-family:'Cinzel',serif;
  }
  .tk-calc-field input,
  .tk-calc-field select {
    width:100%;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(197,165,90,0.2);
    color:var(--white);
    padding:10px 14px;
    font-family:'Montserrat',sans-serif;
    font-size:0.75rem;
    border-radius:2px;
    box-sizing:border-box;
  }
  .tk-calc-field input::placeholder { color:rgba(255,255,255,0.28); }
  .tk-calc-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:1rem;
  }
  .tk-calc-btn {
    background:var(--gold);
    color:var(--navy);
    border:none;
    padding:10px 24px;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    cursor:pointer;
    white-space:nowrap;
    border-radius:2px;
  }
  .tk-calc-btn-secondary {
    background:transparent;
    color:var(--gold);
    border:1px solid rgba(197,165,90,0.3);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-radius:2px;
  }
  .tk-calc-note {
    font-size:0.62rem;
    color:rgba(255,255,255,0.38);
    line-height:1.75;
    max-width:760px;
    margin-top:0.85rem;
  }
  .tk-calc-note strong {
    color:rgba(255,255,255,0.62);
    font-weight:600;
  }
  .tk-calc-out {
    display:none;
    max-width:900px;
    background:rgba(0,0,0,0.2);
    border:1px solid rgba(197,165,90,0.15);
    padding:1.5rem;
    border-radius:2px;
    color:rgba(255,255,255,0.72);
    margin-top:0;
  }
  .tk-tool-copy {
    max-width:760px;
    margin-bottom:1.5rem;
  }
  .tk-tool-copy p,
  .tk-tool-copy .tk-calc-note {
    margin-left:0;
    margin-right:0;
  }
  .tk-cta {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(255,255,255,0.06);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .tk-cta-text {
    margin:0;
    font-size:0.68rem;
    line-height:1.8;
    color:rgba(255,255,255,0.6);
    flex:1 1 320px;
  }
  .tk-cta-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 18px;
    border:1px solid rgba(197,165,90,0.3);
    color:var(--gold);
    text-decoration:none;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    border-radius:2px;
    transition:border-color .25s ease, background .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .tk-cta-btn:hover {
    border-color:var(--gold);
    background:rgba(197,165,90,0.08);
  }
  .tk-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:1rem;
  }
  .tk-summary-item {
    border:1px solid rgba(197,165,90,0.12);
    background:rgba(255,255,255,0.02);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-summary-item span {
    display:block;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:8px;
  }
  .tk-summary-item strong {
    display:block;
    font-family:'Cinzel',serif;
    color:var(--gold);
    font-size:0.95rem;
    letter-spacing:1px;
    font-weight:500;
  }
  .tk-standstill-days {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:1rem;
  }
  .tk-standstill-day {
    border:1px solid rgba(197,165,90,0.1);
    background:rgba(255,255,255,0.015);
    padding:12px 14px;
  }
  .tk-standstill-day span {
    display:block;
    font-size:0.5rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:5px;
  }
  .tk-standstill-day strong {
    display:block;
    font-size:0.72rem;
    color:var(--white);
    font-weight:500;
  }
  .tk-vat-breakdown {
    margin-top:0.6rem;
    padding-top:0.9rem;
    border-top:1px solid rgba(255,255,255,0.06);
    font-size:0.68rem;
    color:rgba(255,255,255,0.56);
    line-height:1.9;
  }
  .tk-vat-breakdown strong { color:var(--gold); font-weight:600; }
  .tk-toggle-group {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
  }
  .tk-toggle-btn {
    appearance:none;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.03);
    color:var(--white);
    min-height:72px;
    padding:0.9rem 1rem;
    font-size:0.72rem;
    line-height:1.55;
    letter-spacing:0.4px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    flex:1 1 180px;
    text-align:left;
  }
  .tk-toggle-btn:hover,
  .tk-toggle-btn:focus-visible {
    border-color:rgba(197,165,90,0.45);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-toggle-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.14);
    color:var(--gold);
    box-shadow:0 12px 28px rgba(0,0,0,0.16);
  }
  .tk-toggle-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.82rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.18rem;
    color:inherit;
  }
  .tk-toggle-btn span {
    display:block;
    font-size:0.64rem;
    line-height:1.7;
    color:inherit;
    opacity:0.9;
  }

  .tk-vat-grid {
    display:grid;
    grid-template-columns:minmax(0, 760px);
    gap:16px;
    max-width:760px;
    align-items:start;
    margin-bottom:1.35rem;
  }
  .tk-vat-field-wide {
    grid-column:1 / -1;
  }
  .tk-pill-group {
    display:grid;
    gap:12px;
    width:100%;
  }
  .tk-pill-group-mode {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-group-rates {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-btn {
    appearance:none;
    border:1px solid rgba(197,165,90,0.18);
    background:rgba(255,255,255,0.03);
    color:rgba(255,255,255,0.78);
    min-height:84px;
    padding:1rem 1rem 0.95rem;
    font-size:0.68rem;
    line-height:1.35;
    letter-spacing:0.5px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
    text-align:left;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  .tk-pill-btn:hover,
  .tk-pill-btn:focus-visible {
    border-color:rgba(197,165,90,0.42);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-pill-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.12);
    color:var(--gold);
  }
  .tk-pill-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.76rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.16rem;
    color:inherit;
  }
  .tk-pill-btn span {
    display:block;
    font-size:0.58rem;
    line-height:1.5;
    color:inherit;
    opacity:0.92;
  }
  .tk-vat-custom-wrap {
    max-width:260px;
  }
  .tk-cycle-layout {
    display:grid;
    grid-template-columns:minmax(360px, 520px) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    max-width:1100px;
  }
  .tk-cycle-wheel-wrap {
    position:relative;
    width:min(100%, 520px);
    aspect-ratio:1 / 1;
    margin:0 auto;
  }
  .tk-cycle-wheel {
    width:100%;
    height:100%;
    display:block;
    overflow:visible;
    filter:drop-shadow(0 18px 34px rgba(0,0,0,0.2));
  }
  .tk-cycle-stage {
    transition: transform .22s ease, filter .22s ease;
  }
  .tk-cycle-stage:hover,
  .tk-cycle-stage:focus-within {
    transform: translate(var(--tk-shift-x, 0px), var(--tk-shift-y, 0px));
    filter: drop-shadow(0 10px 14px rgba(0,0,0,0.18));
  }
  .tk-cycle-stage.is-active {
    transform: translate(calc(var(--tk-shift-x, 0px) * 0.72), calc(var(--tk-shift-y, 0px) * 0.72));
    filter: drop-shadow(0 12px 16px rgba(0,0,0,0.2));
  }
  .tk-cycle-segment {
    fill:#102648;
    stroke:rgba(230,232,237,0.88);
    stroke-width:2.4;
    cursor:pointer;
    transition:fill .22s ease, stroke .22s ease, opacity .22s ease;
    outline:none !important;
    -webkit-tap-highlight-color:transparent;
  }
  .tk-cycle-stage:hover .tk-cycle-segment,
  .tk-cycle-stage:focus-within .tk-cycle-segment {
    fill:#17345f;
    stroke:rgba(255,255,255,0.95);
  }
  .tk-cycle-stage.is-active:hover .tk-cycle-segment,
  .tk-cycle-stage.is-active:focus-within .tk-cycle-segment,
  .tk-cycle-segment.active {
    fill:var(--gold);
    stroke:rgba(217,197,128,0.95);
  }
  .tk-cycle-segment:focus,
  .tk-cycle-segment:focus-visible {
    outline:none !important;
  }
  .tk-cycle-stage-number {
    fill:var(--white);
    font-family:'Montserrat',sans-serif;
    font-size:20px;
    font-weight:800;
    text-anchor:middle;
    dominant-baseline:middle;
    pointer-events:none;
    transition: fill .22s ease, transform .22s ease;
    paint-order: stroke;
    stroke: rgba(10,20,38,0.18);
    stroke-width: 0.7px;
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage:hover .tk-cycle-stage-number {
    transform: translateY(-1px);
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage-number.active,
  .tk-cycle-stage.is-active:hover .tk-cycle-stage-number {
    fill:var(--white);
    stroke: rgba(15,27,45,0.45);
  }
  .tk-cycle-center {
    position:absolute;
    inset:50% auto auto 50%;
    width:46%;
    aspect-ratio:1 / 1;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    background:radial-gradient(circle at 35% 30%, rgba(31,69,121,0.98), rgba(10,30,59,0.98));
    color:var(--white);
    box-shadow:0 0 0 10px rgba(197,165,90,0.18), inset 0 0 0 1px rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.18);
    padding:28px;
  }
  .tk-cycle-center::after {
    content:'';
    position:absolute;
    inset:12px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.06);
    pointer-events:none;
  }
  .tk-cycle-center span {
    display:block;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(197,165,90,0.92);
    margin-bottom:0.5rem;
  }
  .tk-cycle-center strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:1.06rem;
    line-height:1.4;
    letter-spacing:1px;
    font-weight:600;
    color:#f7f7f3;
  }
  .tk-cycle-center small {
    display:block;
    margin-top:0.7rem;
    font-size:0.72rem;
    line-height:1.6;
    color:rgba(255,255,255,0.72);
    max-width:190px;
  }
  .tk-cycle-panel {
    max-width:560px;
    background:linear-gradient(180deg, rgba(8,22,44,0.42), rgba(8,22,44,0.28));
    border:1px solid rgba(197,165,90,0.18);
    padding:1.6rem 1.65rem;
    border-radius:6px;
    min-height:420px;
    box-shadow:0 20px 36px rgba(5,11,21,0.14);
  }
  .tk-cycle-panel-head {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-bottom:0.95rem;
  }
  .tk-cycle-panel-tag {
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
  }
  .tk-cycle-panel h4 {
    margin:0;
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:1px;
    color:var(--white);
  }
  .tk-cycle-panel p {
    margin:0 0 1rem;
    font-size:0.7rem;
    line-height:1.9;
    color:rgba(255,255,255,0.66);
  }
  .tk-cycle-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .tk-cycle-detail-box {
    border:1px solid rgba(197,165,90,0.14);
    background:rgba(255,255,255,0.025);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-cycle-detail-box span {
    display:block;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.4);
    margin-bottom:8px;
  }
  .tk-cycle-detail-box ul {
    margin:0;
    padding-left:1.1rem;
    color:rgba(255,255,255,0.66);
    font-size:0.68rem;
    line-height:1.8;
  }
  @media (max-width: 900px) {
    .tk-pill-group-rates {
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tk-cycle-layout {
      grid-template-columns:1fr;
    }
    .tk-cycle-panel {
      min-height:auto;
    }
  }
  @media (max-width: 768px) {
    .tk-vat-grid { max-width:none; }
    .tk-pill-group-mode,
    .tk-pill-group-rates,
    .tk-cycle-detail-grid {
      grid-template-columns:1fr;
    }
    .tk-cycle-center {
      width:52%;
      padding:22px;
    }
    .tk-cycle-center strong {
      font-size:0.88rem;
    }
    .tk-cycle-center small {
      font-size:0.64rem;
      max-width:140px;
    }
    .tk-cycle-stage-number {
      font-size:22px;
    }
  }

  @media (max-width: 768px) {
    .tk-calc-grid { grid-template-columns:1fr; gap:14px; }
    .tk-summary-grid { grid-template-columns:1fr; }
    .tk-calc-actions { flex-direction:column; align-items:stretch; }
    .tk-calc-btn, .tk-calc-btn-secondary { width:100%; }
    .tk-calc-out { padding:1.2rem; }
    .tk-cta { flex-direction:column; align-items:stretch; }
    .tk-cta-btn { width:100%; }
    .tk-toggle-btn { flex:1 1 100%; min-height:auto; }
  }

/* ===== PCC DYNAMIC ARTICLES ===== */
.article-modal {
  position: fixed;
  inset: 0;
  background: rgba(3, 10, 24, 0.82);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}
.article-modal.open { display: flex; }
.article-modal-dialog {
  width: min(920px, 100%);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, rgba(10,24,52,0.98), rgba(6,15,33,0.98));
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
  position: relative;
}
.article-modal-content {
  padding: 34px 30px 36px;
}
.article-modal-close {
  position: sticky;
  top: 16px;
  margin-left: calc(100% - 56px);
  width: 40px;
  height: 40px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.article-modal-close:hover { opacity: 0.8; }
.article-modal-excerpt {
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--white);
  opacity: 0.92;
  margin-bottom: 22px;
}
 .article-modal-body h2 {
  font-size: 1.05rem;
  margin: 24px 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
}
.article-modal-body p {
  color: var(--white);
  opacity: 0.92;
  line-height: 1.95;
  margin: 0 0 14px;
  font-size: 0.92rem;
}
.article-modal-body a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-modal-body a:hover {
  color: var(--gold);
}
@media (max-width: 768px) {
  .article-modal { padding: 12px; }
  .article-modal-content { padding: 26px 18px 24px; }
  .quick-slot-grid {
    flex-direction: column;
    align-items: stretch;
  }
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: index-offline.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  html { scroll-behavior: smooth; }
  body { background: var(--navy); color: var(--white); font-family: 'Montserrat', sans-serif; overflow-x: hidden; }

  /* PAGE TRANSITIONS */
  .page { display: none; opacity: 0; transition: opacity 0.5s ease; }
  .page.active { display: block; }
  .page.visible { opacity: 1; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0; transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
  }
  .reveal.revealed { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }
  .reveal-delay-6 { transition-delay: 0.6s; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 28px 60px; background: transparent; transition: all 0.4s;
  }
  nav.scrolled { background: rgba(25,40,66,0.96); backdrop-filter: blur(10px); padding: 18px 60px; }
  .nav-logo { display: flex; align-items: center; gap: 14px; cursor: pointer; -webkit-tap-highlight-color: rgba(197,165,90,0.2); }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px;
    display: inline-block; white-space: nowrap; overflow: hidden; max-width: 0; opacity: 0; transform: translateX(-10px);
    animation: navBrandUnscroll 1.05s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
  }
  @keyframes navBrandUnscroll {
    0% { max-width: 0; opacity: 0; transform: translateX(-10px); }
    35% { opacity: 1; }
    100% { max-width: 420px; opacity: 1; transform: translateX(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-brand { animation: none; max-width: 420px; opacity: 1; transform: none; }
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px;
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
    transition: color 0.3s; cursor: pointer; position: relative;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: -4px; left: 0;
    width: 0; height: 1px; background: var(--gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active { color: var(--gold); }
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent; border: 1.5px solid var(--gold); color: var(--gold);
    padding: 10px 24px; font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 600; transition: all 0.3s;
  }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .nav-cta.active { background: var(--gold); color: var(--navy); }

  /* MOBILE NAV */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer;
    background: none; border: none; padding: 8px; -webkit-appearance: none; touch-action: manipulation;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(25,40,66,0.98); z-index: 99;
    flex-direction: column; align-items: center; justify-content: center; gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.4rem;
    letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.6);
    transition: color 0.3s; cursor: pointer;
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  /* HERO */
  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
  }
  .hero-watermark {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%); opacity: 0.04;
  }
  .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    z-index: 0;
    pointer-events: none;
  }
  .hero-content { position: relative; z-index: 2; animation: fadeIn 1.2s ease; }
  .hero-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 28px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .hero-content .overline::before, .hero-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif; font-size: 3.8rem; font-weight: 400;
    letter-spacing: 6px; color: var(--white); line-height: 1.2;
    text-transform: uppercase; margin-bottom: 24px;
  }
  .hero-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .hero-desc {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 600px; margin: 0 auto 40px; font-weight: 300;
  }
  .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

  .toolkit-toggle-btn.is-open {
    background: rgba(197,165,90,0.1);
    border-color: var(--gold);
    color: var(--gold-light);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16), inset 0 0 0 1px rgba(217,197,128,0.12);
  }
  .insight-card:focus-within,
  .insight-card.is-active {
    transform: translateY(-4px);
    border-left-color: var(--gold);
    box-shadow: 0 18px 36px rgba(0,0,0,0.2), inset 0 0 0 1px rgba(217,197,128,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.012));
  }
  .insight-card:focus-within .read-more,
  .insight-card.is-active .read-more,
  .insight-card:focus-within .insight-toggle,
  .insight-card.is-active .insight-toggle {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .tk-pill-btn.active,
  .tk-opt.tk-nf-active {
    box-shadow: 0 10px 24px rgba(0,0,0,0.14), inset 0 0 0 1px rgba(217,197,128,0.08);
  }
  .btn-gold {
    background: var(--gold); color: var(--navy); padding: 16px 36px; border: none;
    font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 700; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .hero .btn-gold {
    position: relative;
    overflow: hidden;
    isolation: isolate;
  }
  .hero .btn-gold::after {
    content: '';
    position: absolute;
    inset: -40% auto -40% -55%;
    width: 38%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.36), transparent);
    transform: skewX(-18deg);
    animation: pccGoldSheen 1.15s ease-out 0.55s 1 both;
    pointer-events: none;
  }
  @keyframes pccGoldSheen {
    0% { left: -55%; opacity: 0; }
    18% { opacity: 0.55; }
    100% { left: 115%; opacity: 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    .hero .btn-gold::after { animation: none; display: none; }
  }
  .btn-ghost {
    background: transparent; border: 1px solid rgba(255,255,255,0.2); color: var(--white);
    padding: 16px 36px; font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 400; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  /* DIVIDER */
  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }

  /* SECTION HEADS */
  .section-head { margin-bottom: 60px; }
  .section-head .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    color: var(--white); letter-spacing: 3px; margin-top: 10px; text-transform: uppercase;
  }

  /* SERVICES */
  .services {
    padding: 100px 80px; background: var(--navy-mid); position: relative;
  }
  .services::before {
    content: ''; position: absolute; top: 0; left: 60px; bottom: 0;
    width: 1px; background: linear-gradient(180deg, transparent, rgba(197,165,90,0.15), transparent);
  }
  .service-rows { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1100px; margin: 0 auto; }
  .svc {
    padding: 44px 40px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative;
  }
  .svc::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 2px; background: var(--gold); transition: width 0.5s;
  }
  .svc:hover::after { width: 100%; }
  .svc:hover { background: rgba(197,165,90,0.018); }
  .svc .num { font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 300; color: rgba(197,165,90,0.3); margin-bottom: 14px; }
  .svc h3 { font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500; color: var(--white); letter-spacing: 2px; margin-bottom: 10px; }
  .svc p { font-size: 0.72rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* TRAINING HIGHLIGHT */
  .training-highlight {
    padding: 80px; background: var(--navy);
    text-align: center;
  }
  .training-inner {
    max-width: 800px; margin: 0 auto;
    padding: 50px 60px;
    border: 1px solid rgba(197,165,90,0.15);
    position: relative;
  }
  .training-inner::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 60px; height: 3px; background: var(--gold);
  }
  .training-inner .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-inner h3 {
    font-family: 'Cinzel', serif; font-size: 1.3rem; font-weight: 400;
    color: var(--white); letter-spacing: 2px; margin-bottom: 14px; text-transform: uppercase;
  }
  .training-inner p {
    font-size: 0.75rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 28px;
  }

  /* HOW WE WORK */
  .how-we-work {
    padding: 100px 80px; background: var(--navy);
  }
  .process-steps {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
    max-width: 1100px; margin: 0 auto; position: relative;
  }
  .process-steps::before {
    content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
    height: 1px; background: rgba(197,165,90,0.25);
  }
  .process-step {
    text-align: center; padding: 0 16px; position: relative;
  }
  .process-step .step-num {
    width: 56px; height: 56px; border: 2px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-family: 'Cinzel', serif; font-size: 1.1rem;
    font-weight: 600; color: var(--gold); background: var(--navy);
    position: relative; z-index: 2;
  }
  .process-step h4 {
    font-family: 'Cinzel', serif; font-size: 0.7rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 10px;
  }
  .process-step p {
    font-size: 0.65rem; line-height: 1.7; color: var(--slate); font-weight: 300;
  }

  /* WHY SECTION */
  .why {
    padding: 100px 80px; background: var(--navy);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center;
  }
  .why-left h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .why-left p { font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 32px; }
  .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .why-card {
    background: var(--navy-mid); padding: 32px 28px;
    border-top: 2px solid var(--gold); transition: transform 0.3s;
  }
  .why-card:hover { transform: translateY(-4px); }
  .why-card .icon { font-size: 1.6rem; margin-bottom: 12px; color: var(--gold); }
  .why-card h4 {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); margin-bottom: 8px; text-transform: uppercase;
  }
  .why-card p { font-size: 0.68rem; line-height: 1.7; color: var(--slate); font-weight: 300; }

  /* QUOTE */
  .quote-section {
    padding: 80px; background: var(--gold); text-align: center; position: relative;
  }
  .quote-section blockquote {
    font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; font-weight: 400;
    font-style: italic; color: var(--navy); max-width: 700px;
    margin: 0 auto; line-height: 1.5;
  }
  .quote-section .attr {
    font-family: 'Montserrat', sans-serif; font-size: 0.65rem; letter-spacing: 3px;
    text-transform: uppercase; color: var(--navy); font-weight: 700; margin-top: 24px;
  }

  /* CTA DARK */
  .cta-dark {
    padding: 100px 80px; text-align: center; background: var(--navy);
  }
  .cta-dark h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 4px; color: var(--white); text-transform: uppercase; margin-bottom: 14px;
  }
  .cta-dark p { font-size: 0.75rem; color: var(--slate); margin-bottom: 36px; font-weight: 300; }

  /* FOOTER */
  footer {
    background: #192842; padding: 50px 80px 30px;
    border-top: 1px solid rgba(197,165,90,0.1);
  }
  .footer-main {
    display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 60px;
    margin-bottom: 40px;
  }
  .footer-brand { display: flex; align-items: flex-start; gap: 16px; }
  .footer-brand svg { width: 28px; height: 34px; flex-shrink: 0; margin-top: 3px; }
  .footer-brand-text span {
    font-family: 'Cinzel', serif; font-size: 0.8rem; letter-spacing: 3px;
    color: rgba(255,255,255,0.5); display: inline-block; margin-bottom: 16px;
    line-height: 1.4; padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }
  .footer-brand-text p {
    font-size: 0.62rem; line-height: 1.9; color: rgba(255,255,255,0.3); font-weight: 300;
    max-width: 340px;
  }
  .footer-col h5 {
    font-family: 'Cinzel', serif; font-size: 0.6rem; font-weight: 600;
    letter-spacing: 3px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; padding-bottom: 12px;
    border-bottom: 1px solid rgba(197,165,90,0.3);
    display: inline-block;
  }
  .footer-col p, .footer-col a {
    font-size: 0.62rem; line-height: 2; color: rgba(255,255,255,0.35);
    font-weight: 300; text-decoration: none; display: block;
  }
  .footer-col a:hover { color: var(--gold); }
  .footer-social {
    display: flex; gap: 16px; margin-top: 14px;
  }
  .footer-social a {
    width: 32px; height: 32px; border: 1px solid rgba(197,165,90,0.2);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.65rem; color: rgba(255,255,255,0.4); transition: all 0.3s;
  }
  .footer-social a:hover { border-color: var(--gold); color: var(--gold); }
  .footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.08); padding-top: 24px;
    flex-wrap: wrap; gap: 12px;
  }
  .footer-bottom p {
    font-size: 0.55rem; color: rgba(255,255,255,0.2); letter-spacing: 1px;
  }

  /* ===== ABOUT PAGE ===== */
  .about-hero {
    min-height: 60vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
    padding: 140px 80px 80px;
  }
  .about-hero .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .about-content { position: relative; z-index: 2; }
  .about-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .about-content .overline::before, .about-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .about-content h1 {
    font-family: 'Cinzel', serif; font-size: 3rem; font-weight: 400;
    letter-spacing: 5px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .about-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .about-content p {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 650px; margin: 0 auto; font-weight: 300;
  }

  .about-story {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
  }
  .about-story h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 24px;
  }
  .about-story p {
    font-size: 0.78rem; line-height: 2; color: var(--slate); font-weight: 300; margin-bottom: 20px;
  }

  .stats-row {
    padding: 80px; background: var(--navy);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; text-align: center;
  }
  .stat-item { padding: 20px; }
  .stat-item .num {
    font-family: 'Cinzel', serif; font-size: 2.8rem; font-weight: 400; color: var(--gold); margin-bottom: 8px;
  }
  .stat-item .label {
    font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase; color: var(--slate); font-weight: 400;
  }

  .values-section { padding: 100px 80px; background: var(--navy-mid); }
  .values-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .value-item {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s; text-align: center;
  }
  .value-item:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .value-item .icon { font-size: 1.8rem; margin-bottom: 16px; color: var(--gold); }
  .value-item h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 12px;
  }
  .value-item p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== SECTORS PAGE ===== */
  .sectors-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1200px; margin: 0 auto;
  }
  .sector-card {
    padding: 50px 36px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative; overflow: hidden;
  }
  .sector-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0;
    height: 3px; background: var(--gold); transform: scaleX(0);
    transform-origin: left; transition: transform 0.5s;
  }
  .sector-card:hover::before { transform: scaleX(1); }
  .sector-card:hover { background: rgba(197,165,90,0.018); }
  .sector-card .sector-icon { font-size: 2rem; margin-bottom: 20px; color: var(--gold); opacity: 0.8; }
  .sector-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); margin-bottom: 12px; text-transform: uppercase;
  }
  .sector-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== INSIGHTS PAGE ===== */
  .insights-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .insight-card {
    background: var(--navy-mid); padding: 40px 36px;
    border-left: 3px solid var(--gold); transition: all 0.4s;
    display:flex;
    flex-direction:column;
    min-height:100%;
  }
  .insight-card:hover { transform: translateY(-2px); }
  .insight-card .tag {
    font-size: 0.5rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.95rem; font-weight: 500;
    color: var(--white); letter-spacing: 1px; margin-bottom: 12px; line-height: 1.5;
  }
  .insight-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; margin-bottom: 16px; }
  .insight-card .read-more {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; text-decoration: none; cursor: pointer; transition: opacity 0.3s;
  }
  .insight-card .read-more:hover { opacity: 0.7; }
  .insights-grid, .insights-more { align-items:stretch; }

  .official-updates-section {
    padding-top: 64px !important;
  }
  .official-updates-section .section-head {
    max-width: 920px;
    margin: 0 auto 34px;
    padding-top: 6px;
  }
  .official-updates-section .section-head .over {
    display: block;
    margin-bottom: 22px;
  }
  .official-updates-section .section-head h2 {
    margin-bottom: 24px;
  }
  .official-updates-section .section-head p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
  .official-updates-section .insights-grid {
    align-items: stretch;
  }
  .official-updates-section .insight-card {
    min-height: 100%;
  }
  .official-meta {
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 10px;
    font-weight: 500;
  }
  .official-date {
    display: block;
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 16px;
    font-weight: 500;
  }
  .official-note {
    max-width: 860px;
    margin: 12px auto 0;
    font-size: 0.64rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.42);
    text-align: center;
  }

  .official-updates-status {
    max-width: 1000px;
    margin: 10px auto 26px;
    padding: 0 4px;
    font-size: 0.56rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
  }
  .official-updates-status strong {
    color: rgba(255,255,255,0.72);
    font-weight: 500;
  }

  /* ===== TRAINING PAGE ===== */
  .training-page-intro {
    padding: 100px 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .training-page-content {
    padding: 80px; background: var(--navy-mid);
  }
  .training-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;
    max-width: 1000px; margin: 0 auto;
  }
  .training-feature {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s;
  }
  .training-feature:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .training-feature .icon { font-size: 1.6rem; margin-bottom: 14px; color: var(--gold); }
  .training-feature h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 10px;
  }
  .training-feature p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== CONTACT PAGE ===== */
  .contact-section {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start;
  }
  .contact-info h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .contact-info p {
    font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 36px;
  }
  .accreditation-card {
    margin-top: 34px;
    padding-top: 12px;
    border-top: 1px solid rgba(197,165,90,0.14);
  }
  .accreditation-card .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 12px;
  }
  .portal-intro {
    font-size: 0.7rem;
    line-height: 1.8;
    color: var(--slate);
    font-weight: 300;
    margin: 0 0 18px;
    max-width: 560px;
  }
  .portal-links-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portal-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    padding: 18px 20px;
    border: 1px solid rgba(197,165,90,0.16);
    background: rgba(255,255,255,0.02);
    border-radius: 16px;
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  }
  .portal-link:hover {
    transform: translateY(-2px);
    border-color: rgba(197,165,90,0.34);
    background: rgba(197,165,90,0.04);
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  }
  .portal-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  .portal-link-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
  }
  .portal-logo {
    display: block;
    max-width: min(240px, 100%);
    width: auto;
    height: auto;
    max-height: 48px;
  }
  .portal-logo-bloom { max-height: 44px; }
  .portal-logo-constellia { max-height: 40px; }
  .portal-logo-delta { max-height: 64px; }
  .portal-caption {
    font-size: 0.56rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.52);
    font-weight: 500;
    text-align: center;
  }
  .contact-detail {
    display: flex; gap: 14px; margin-bottom: 24px; align-items: flex-start;
  }
  .contact-detail .cd-icon {
    width: 36px; height: 36px; border: 1px solid rgba(197,165,90,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.8rem; color: var(--gold); flex-shrink: 0;
  }
  .contact-detail .cd-text .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 4px;
  }
  .contact-detail .cd-text .cd-value {
    font-size: 0.75rem; color: rgba(255,255,255,0.7); font-weight: 300;
  }
  .contact-form {
    background: var(--navy); padding: 50px 44px; border: 1px solid rgba(197,165,90,0.1);
  }
  .contact-form h3 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 30px;
  }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
  .form-group { margin-bottom: 20px; }
  .form-group label {
    display: block; font-size: 0.55rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--slate); font-weight: 500; margin-bottom: 8px;
  }
  .form-group input, .form-group select, .form-group textarea {
    width: 100%; background: var(--navy-mid); border: 1px solid rgba(197,165,90,0.15);
    color: var(--white); padding: 14px 16px; font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem; font-weight: 300; outline: none; transition: border-color 0.3s;
  }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--gold); }
  .form-group textarea { min-height: 120px; resize: vertical; }
  .form-group select { cursor: pointer; appearance: none; }
  .form-group select option { background: var(--navy-mid); }
  .form-submit { display: flex; align-items: center; gap: 20px; margin-top: 10px; }
  .form-success {
    display: none; padding: 28px 24px; background: rgba(197,165,90,0.08);
    border: 1px solid rgba(197,165,90,0.4); border-top: 3px solid var(--gold); text-align: center; margin-top: 20px;
    border-radius: 4px;
  }
  .contact-form.submitted > *:not(.form-success) { display: none !important; }
  .contact-form.submitted .form-success { display: block; }
  .form-success.show { display: block; }
  .form-success p {
    font-family: 'Cinzel', serif; font-size: 1.02rem; color: var(--gold);
    letter-spacing: 2px; margin-bottom: 12px; text-transform: uppercase;
  }
  .form-success span {
    font-size: 0.78rem; color: rgba(255,255,255,0.82); font-weight: 300;
    display: block; margin-top: 0; line-height: 1.85;
  }

  /* ===== PRIVACY POLICY PAGE ===== */
  .policy-content {
    padding: 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .policy-updated {
    font-size: 0.65rem; letter-spacing: 2px; color: var(--gold);
    text-transform: uppercase; font-weight: 500; margin-bottom: 30px;
  }
  .policy-section { margin-bottom: 36px; }
  .policy-content h2 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 16px;
  }
  .policy-content h3 {
    font-size: 0.72rem; font-weight: 600; color: var(--gold);
    letter-spacing: 1px; margin: 16px 0 8px; text-transform: uppercase;
  }
  .policy-content p {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    margin-bottom: 14px;
  }
  .policy-content ul {
    list-style: none; padding: 0; margin-bottom: 14px;
  }
  .policy-content ul li {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    padding-left: 20px; position: relative;
  }
  .policy-content ul li::before {
    content: ''; position: absolute; left: 0; top: 12px;
    width: 6px; height: 1px; background: var(--gold);
  }
  .policy-content strong { color: var(--white); font-weight: 500; }

  @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

  /* ===== REFINED DIMENSIONAL EFFECTS ===== */
  #page-home .hero-content {
    perspective: none;
    transform-style: flat;
  }

  .svc,
  .feature-split-card,
  .why-card,
  .sector-card,
  .insight-card,
  .training-feature,
  .toolkit-paid-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .value-item,
  .process-step {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 14px 30px rgba(9,16,28,0.14);
    transition: box-shadow 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
  }
  .svc::before,
  .feature-split-card::before,
  .why-card::before,
  .sector-card::before,
  .insight-card::before,
  .training-feature::before,
  .toolkit-paid-card::before,
  .tk-portal-card::before,
  .tk-gloss-term::before,
  .tk-notice-card::before,
  .value-item::before,
  .process-step::before {
    content:'';
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
    opacity:0;
    pointer-events:none;
    transition: opacity 0.28s ease;
  }
  .svc:hover,
  .feature-split-card:hover,
  .why-card:hover,
  .sector-card:hover,
  .insight-card:hover,
  .training-feature:hover,
  .toolkit-paid-card:hover,
  .tk-portal-card:hover,
  .tk-gloss-term:hover,
  .tk-notice-card:hover,
  .value-item:hover,
  .process-step:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .svc:hover::before,
  .feature-split-card:hover::before,
  .why-card:hover::before,
  .sector-card:hover::before,
  .insight-card:hover::before,
  .training-feature:hover::before,
  .toolkit-paid-card:hover::before,
  .tk-portal-card:hover::before,
  .tk-gloss-term:hover::before,
  .tk-notice-card:hover::before,
  .value-item:hover::before,
  .process-step:hover::before {
    opacity: 1;
  }

  .feature-split-card,
  .toolkit-paid-card,
  .training-feature,
  .insight-card,
  .sector-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .svc,
  .process-step {
    background-image: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  }

  .process-step {
    border: 1px solid rgba(197,165,90,0.08);
    padding: 26px 18px 24px;
    text-align: center;
  }
  .process-step:hover {
    background: linear-gradient(180deg, rgba(197,165,90,0.06), rgba(255,255,255,0.01));
  }
  .process-step .step-num {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }
  .process-step:hover .step-num {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    border-color: rgba(217,197,128,0.85);
  }

  .stats-row .stat-item {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
    border: 1px solid rgba(197,165,90,0.1);
    box-shadow: 0 16px 30px rgba(8,14,24,0.16);
    transition: transform 0.32s ease, box-shadow 0.32s ease, border-color 0.32s ease;
  }
  .stats-row .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .stats-row .stat-item::after {
    content: '';
    position: absolute;
    left: 18%; right: 18%; bottom: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.8), transparent);
    opacity: 0.55;
  }

  .nav-cta,
  .contact-form .btn-gold {
    transform: translateZ(0);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  }
  .nav-cta:hover,
  .contact-form .btn-gold:hover {
    transform: translateY(-2px) scale(1.035);
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
  }

  .insight-card {
    border: 1px solid rgba(197,165,90,0.12);
    border-left-width: 2px;
  }
  .insight-card::after {
    content:'';
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg, rgba(197,165,90,0), rgba(197,165,90,0.75), rgba(197,165,90,0));
    opacity:0.35;
    transition: opacity 0.28s ease;
  }
  .insight-card:hover::after {
    opacity:0.9;
  }
  .insight-card:hover .read-more,
  .sector-card:hover h3,
  .training-feature:hover h4,
  .toolkit-paid-card:hover .toolkit-card-link {
    color: var(--gold-light);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc,
    .feature-split-card,
    .why-card,
    .sector-card,
    .insight-card,
    .training-feature,
    .toolkit-paid-card,
    .tk-portal-card,
    .tk-gloss-term,
    .tk-notice-card,
    .value-item,
    .process-step,
    .stats-row .stat-item,
    .nav-cta,
    .contact-form .btn-gold {
      transition: none !important;
      transform: none !important;
    }
    .svc::before,
    .feature-split-card::before,
    .why-card::before,
    .sector-card::before,
    .insight-card::before,
    .training-feature::before,
    .toolkit-paid-card::before,
    .tk-portal-card::before,
    .tk-gloss-term::before,
    .tk-notice-card::before,
    .value-item::before,
    .process-step::before,
    .insight-card::after {
      transition: none !important;
    }
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 1024px) {
    .hero-content h1 { font-size: 2.6rem; }
    .about-story { grid-template-columns: 1fr; gap: 40px; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-section { grid-template-columns: 1fr; gap: 50px; }
    .why { grid-template-columns: 1fr; gap: 50px; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .process-steps::before { display: none; }
  }
  @media (max-width: 768px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger { display: flex; z-index: 101; }
    .hero { min-height: 100vh; padding: 0 24px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-desc { font-size: 0.72rem; }
    .hero-btns { flex-direction: column; align-items: center; gap: 12px; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; text-align: center; }
    .services, .why, .cta-dark, .about-hero, .about-story, .values-section, .contact-section, .training-page-content, .how-we-work { padding: 60px 24px; }
    .stats-row { padding: 60px 24px; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .quote-section { padding: 50px 24px; }
    .quote-section blockquote { font-size: 1.2rem; }
    .service-rows { grid-template-columns: 1fr; }
    .svc { padding: 32px 24px; }
    .svc h3 { font-size: 0.85rem; }
    .why-right { grid-template-columns: 1fr; }
    .values-grid { grid-template-columns: 1fr; }
    .sectors-grid { grid-template-columns: 1fr; }
    .insights-grid { grid-template-columns: 1fr; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: 1fr; gap: 30px; }
    .process-step .step-num { width: 46px; height: 46px; font-size: 0.95rem; }
    .form-row { grid-template-columns: 1fr; }
    .contact-form { padding: 36px 24px; }

    .accreditation-card { margin-top: 28px; padding-top: 10px; }
    .portal-links-grid { gap: 12px; }
    .portal-link { min-height: 82px; padding: 16px; }
    .portal-logo-bloom { max-height: 38px; }
    .portal-logo-constellia { max-height: 34px; }
    .portal-logo-delta { max-height: 54px; }
    footer { padding: 30px 24px 20px; }
    .footer-main { grid-template-columns: 1fr; gap: 30px; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .about-hero { padding: 80px 24px 40px; min-height: auto; }
    .about-content h1 { font-size: 1.8rem; }
    .about-content p { font-size: 0.72rem; }
    .about-story h2 { font-size: 1.4rem; }
    .stat-item .num { font-size: 2rem; }
    .section-head h2 { font-size: 1.4rem; }
    .cta-dark h2 { font-size: 1.4rem; letter-spacing: 2px; }
    .why-left h2 { font-size: 1.5rem; }
    .policy-content { padding: 40px 24px; }
    .policy-section h2 { font-size: 0.9rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    
    /* -- TOOLKIT INLINE STYLE OVERRIDES ----------------------- */
    .how-we-work { padding: 60px 24px !important; }
    #tk-notices-out { grid-template-columns: 1fr !important; }
    #tk-gloss-out { grid-template-columns: 1fr !important; }
    #page-toolkit .svc { overflow-x: hidden; overflow: hidden; }
    .svc::after { display: none; }
    .svc:hover { background: none; }
    #page-toolkit [style*="max-width:1100px"],
    #page-toolkit [style*="max-width:1000px"],
    #page-toolkit [style*="max-width:800px"] { max-width: 100% !important; padding-left: 0; padding-right: 0; }

    /* -- TOOLKIT OVERFLOW FIX --------------------------------- */
    #toolkit, #toolkit * { max-width: 100%; box-sizing: border-box; }
    #toolkit .container { overflow-x: hidden; }
    /* -- TOOLKIT PAGE MOBILE ----------------------------------- */
    .tk-portal-card { padding: 16px 18px; width: 100%; box-sizing: border-box; }
    .tk-portal-card strong { font-size: 0.75rem; }
    .tk-portal-card span { font-size: 0.7rem; }
    .tk-opt { padding: 10px 16px; font-size: 0.62rem; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .tk-gloss-term { padding: 12px 14px; }
    .tk-gloss-term strong { font-size: 0.7rem; }
    .tk-gloss-term span { font-size: 0.68rem; }
    .tk-milestone { flex-wrap: wrap; gap: 6px; }
    .tk-milestone-label { font-size: 0.66rem; flex-basis: 100%; }
    .tk-milestone-date { font-size: 0.66rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    [class*="tk-"] > * { max-width: 100%; box-sizing: border-box; }
    .tk-tool-panel, .tk-section, .tk-grid, .tk-card-grid { grid-template-columns: 1fr !important; }
    .tk-opt-group { display: flex; flex-direction: column; gap: 8px; width: 100%; }
    .tk-result { padding: 20px 16px; font-size: 0.72rem; }
    .tk-input, .tk-select { width: 100%; max-width: 100%; font-size: 0.78rem; padding: 10px 12px; box-sizing: border-box; }
    .tk-btn { width: 100%; min-height: 44px; font-size: 0.65rem; }
    .tk-tabs { flex-wrap: wrap; gap: 6px; }
    .tk-tab { flex: 1 1 auto; text-align: center; font-size: 0.6rem; padding: 8px 10px; }

  }

  /* -- TOOLKIT PAGE ------------------------------------------ */
  .tk-opt {
    background: transparent; border: 1px solid rgba(197,165,90,0.25);
    color: rgba(255,255,255,0.7); padding: 8px 18px;
    font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    font-family: 'Montserrat', sans-serif; cursor: pointer;
    border-radius: 2px; transition: all 0.3s;
  }
  .tk-opt:hover { border-color: var(--gold); color: var(--gold); background: rgba(197,165,90,0.06); }
  .tk-portal-card {
    display: block; padding: 20px 24px;
    border: 1px solid rgba(197,165,90,0.1);
    text-decoration: none; color: inherit;
    transition: all 0.3s; border-radius: 2px;
  }
  .tk-portal-card:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.018); }
  .tk-portal-card strong { font-family: 'Cinzel', serif; font-size: 0.8rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 6px; }
  .tk-portal-card span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-gloss-term { padding: 14px 18px; border: 1px solid rgba(197,165,90,0.08); border-radius: 2px; }
  .tk-gloss-term strong { font-family: 'Cinzel', serif; font-size: 0.72rem; color: var(--gold); display: block; margin-bottom: 4px; letter-spacing: 1px; }
  .tk-gloss-term span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-milestone { display: flex; align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .tk-milestone:last-child { border-bottom: none; }
  .tk-milestone-label { font-size: 0.68rem; color: rgba(255,255,255,0.5); flex: 1; }
  .tk-milestone-date { font-size: 0.68rem; color: var(--gold); font-family: 'Cinzel', serif; white-space: nowrap; }
  .tk-milestone-flag { font-size: 0.58rem; color: #e07070; margin-left: 6px; }

  /* -- PA23 NOTICES ------------------------------------------ */
  .tk-nf-active { border-color: var(--gold) !important; color: var(--gold) !important; background: rgba(197,165,90,0.08) !important; }
  .tk-notice-card {
    padding: 20px 22px; border: 1px solid rgba(197,165,90,0.1);
    border-radius: 2px; transition: border-color 0.3s;
  }
  .tk-notice-card:hover { border-color: rgba(197,165,90,0.3); }
  .tk-notice-ref { font-family: 'Cinzel', serif; font-size: 0.75rem; color: var(--gold); letter-spacing: 2px; font-weight: 600; }
  .tk-notice-cat { font-size: 0.5rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); font-family: 'Montserrat', sans-serif; }
  .tk-notice-title { font-family: 'Cinzel', serif; font-size: 0.82rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 14px; }
  .tk-notice-section { margin-bottom: 10px; }
  .tk-notice-section:last-child { margin-bottom: 0; }
  .tk-notice-label { font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); font-weight: 500; display: block; margin-bottom: 3px; }
  .tk-notice-section p { font-size: 0.68rem; color: rgba(255,255,255,0.55); line-height: 1.75; margin: 0; }

  /* Global mobile overflow protection */
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }
  .btn-gold:focus-visible, .btn-ghost:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }

  @media (max-width: 768px) {

    
    /* -- NOTICE CARDS MOBILE FIX ------------------------------- */
    .tk-notice-card { padding: 16px 14px; box-sizing: border-box; word-break: break-word; }
    .tk-notice-cat { 
      font-size: 0.42rem; 
      letter-spacing: 1px; 
      white-space: normal; 
      text-align: right;
      max-width: 120px;
      line-height: 1.4;
    }
    .tk-notice-ref { flex-shrink: 0; }
    #tk-notices-out { 
      grid-template-columns: 1fr !important; 
      overflow: hidden;
    }
    #tk-notices-out .tk-notice-card { width: 100%; max-width: 100%; overflow: hidden; }

    /* -- SERVICES DECORATIVE LINE FIX ------------------------- */
    .services::before { display: none; }

    /* -- GRID LINES MOBILE FIX -------------------------------- */
    .hero-lines { display: none; }
    .about-hero { overflow: hidden; }
    .services { overflow: hidden; }
    #page-toolkit .services { isolation: isolate; }

  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible, .btn-gold:focus-visible, .btn-ghost:focus-visible,
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- GLOSSARY SCROLLBAR ------------------------------------ */
  #tk-gloss-out::-webkit-scrollbar {
    width: 4px;
  }
  #tk-gloss-out::-webkit-scrollbar-track {
    background: rgba(25,40,66,0.6);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb {
    background: rgba(197,165,90,0.4);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb:hover {
    background: rgba(197,165,90,0.7);
  }

  /* ===== EDITORIAL / TOOLKIT ENHANCEMENTS ===== */
  .svc-link, .training-link-inline {
    display:inline-block;
    margin-top:14px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    text-decoration:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .svc-link:hover, .training-link-inline:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }

  .toolkit-paid {
    padding:80px; padding:clamp(40px,5vw,80px) clamp(20px,5vw,80px);
    background: var(--navy);
  }
  .feature-split-grid {
    max-width:1100px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px;
    align-items:stretch;
  }
  .feature-split-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:48px 52px;
    background:rgba(255,255,255,0.012);
    min-height:430px;
    display:flex;
    flex-direction:column;
    text-align:center;
  }
  .feature-split-card h4 {
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:3px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:20px;
  }
  .feature-split-card p {
    font-size:0.84rem;
    line-height:1.95;
    color:var(--slate);
    font-weight:300;
    max-width:560px;
    margin:0 auto 26px;
  }
  .feature-split-actions {
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .feature-split-actions .btn-gold,
  .feature-split-actions .btn-ghost {
    width:min(360px,100%);
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:14px 24px;
  }
  .support-products-grid {
    max-width:1100px;
    margin:0 auto 36px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
  }
  .toolkit-paid-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:38px 42px 34px;
    background:rgba(255,255,255,0.012);
    display:flex;
    flex-direction:column;
    min-height:0;
  }
  .toolkit-paid-card h4 {
    font-family:'Cinzel',serif;
    font-size:0.98rem;
    font-weight:500;
    letter-spacing:2px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .toolkit-paid-card > p {
    font-size:0.79rem;
    line-height:1.85;
    color:var(--slate);
    font-weight:300;
    margin-bottom:24px;
  }
  .toolkit-card-footer {
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid rgba(197,165,90,0.12);
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .toolkit-card-label {
    display:block;
    margin-bottom:10px;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
  }
  .toolkit-card-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .toolkit-card-list li {
    position:relative;
    padding-left:16px;
    font-size:0.69rem;
    line-height:1.7;
    color:rgba(255,255,255,0.62);
  }
  .toolkit-card-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:1px;
    background:var(--gold);
    opacity:0.8;
  }
  .toolkit-card-fit {
    margin:0;
    font-size:0.68rem;
    line-height:1.75;
    color:rgba(255,255,255,0.52);
  }
  .toolkit-card-link {
    align-self:flex-start;
    background:none;
    border:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    color:var(--gold);
    padding:0 0 4px;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    text-decoration:none;
  }
  .toolkit-card-link:hover {
    color:var(--gold-light);
    border-bottom-color:var(--gold-light);
  }
  .toolkit-paid-actions {
    max-width:1100px;
    margin:0 auto;
    text-align:center;
  }
  .toolkit-paid-note {
    max-width:680px;
    margin:18px auto 0;
    font-size:0.65rem;
    line-height:1.8;
    color:rgba(255,255,255,0.28);
  }

  .toolkit-toggle-btn {
    background:transparent;
    border:1px solid rgba(197,165,90,0.28);
    color:var(--gold);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    cursor:pointer;
    border-radius:2px;
    margin-bottom:18px;
  }
  .toolkit-toggle-btn:hover { background:rgba(197,165,90,0.06); border-color:var(--gold); }

  .insight-card.featured {
    background:rgba(255,255,255,0.015);
    border-left-width:4px;
  }
  .featured-label {
    font-size:0.48rem;
    letter-spacing:4px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
    margin-bottom:12px;
  }
  .insight-meta {
    font-size:0.54rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.42);
    margin-bottom:14px;
  }
  .insight-body {
    display:none;
    margin-top:18px;
  }
  .insight-body p {
    margin-bottom:14px;
    font-size:0.72rem;
    line-height:1.9;
    color:var(--slate);
  }
  .insight-toggle {
    margin-top:auto;
    align-self:flex-start;
    background:none;
    border:none;
    color:var(--gold);
    padding:0;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .insight-toggle:hover { color:var(--gold-light); border-bottom-color:var(--gold-light); }
  .insights-more { display:none; }
  .insights-more-wrap { text-align:center; margin-top:36px; }
  .insight-card h3 { text-wrap:balance; }
  .article-readtime { display:inline-block; }

  @media (max-width: 768px) {
    .feature-split-grid, .support-products-grid { grid-template-columns:1fr; gap:18px; }
    .feature-split-card { padding:30px 24px; min-height:auto; }
    .feature-split-card h4 { font-size:0.92rem; }
    .feature-split-card p { font-size:0.78rem; }
    .feature-split-actions .btn-gold, .feature-split-actions .btn-ghost { width:100%; min-height:46px; }
    .toolkit-paid-card { padding:28px 24px; min-height:auto; }
    .toolkit-paid-card h4 { font-size:0.86rem; }
    .toolkit-paid-card > p { font-size:0.76rem; }
    .toolkit-card-footer { padding-top:18px; gap:14px; }
    .toolkit-card-list li { font-size:0.68rem; }
    .toolkit-card-fit { font-size:0.67rem; }
    .toolkit-card-link { font-size:0.54rem; letter-spacing:2.2px; }
    .svc-link, .training-link-inline, .insight-toggle { font-size:0.54rem; letter-spacing:2.2px; }
  }

  /* ===== PCC TOOLKIT CALCULATORS ===== */
  .tk-calc-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:760px;
    margin-bottom:1.35rem;
    align-items:end;
  }
  .tk-calc-field label {
    display:block;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:8px;
    font-family:'Cinzel',serif;
  }
  .tk-calc-field input,
  .tk-calc-field select {
    width:100%;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(197,165,90,0.2);
    color:var(--white);
    padding:10px 14px;
    font-family:'Montserrat',sans-serif;
    font-size:0.75rem;
    border-radius:2px;
    box-sizing:border-box;
  }
  .tk-calc-field input::placeholder { color:rgba(255,255,255,0.28); }
  .tk-calc-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:1rem;
  }
  .tk-calc-btn {
    background:var(--gold);
    color:var(--navy);
    border:none;
    padding:10px 24px;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    cursor:pointer;
    white-space:nowrap;
    border-radius:2px;
  }
  .tk-calc-btn-secondary {
    background:transparent;
    color:var(--gold);
    border:1px solid rgba(197,165,90,0.3);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-radius:2px;
  }
  .tk-calc-note {
    font-size:0.62rem;
    color:rgba(255,255,255,0.38);
    line-height:1.75;
    max-width:760px;
    margin-top:0.85rem;
  }
  .tk-calc-note strong {
    color:rgba(255,255,255,0.62);
    font-weight:600;
  }
  .tk-calc-out {
    display:none;
    max-width:900px;
    background:rgba(0,0,0,0.2);
    border:1px solid rgba(197,165,90,0.15);
    padding:1.5rem;
    border-radius:2px;
    color:rgba(255,255,255,0.72);
    margin-top:0;
  }
  .tk-tool-copy {
    max-width:760px;
    margin-bottom:1.5rem;
  }
  .tk-tool-copy p,
  .tk-tool-copy .tk-calc-note {
    margin-left:0;
    margin-right:0;
  }
  .tk-cta {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(255,255,255,0.06);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .tk-cta-text {
    margin:0;
    font-size:0.68rem;
    line-height:1.8;
    color:rgba(255,255,255,0.6);
    flex:1 1 320px;
  }
  .tk-cta-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 18px;
    border:1px solid rgba(197,165,90,0.3);
    color:var(--gold);
    text-decoration:none;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    border-radius:2px;
    transition:border-color .25s ease, background .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .tk-cta-btn:hover {
    border-color:var(--gold);
    background:rgba(197,165,90,0.08);
  }
  .tk-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:1rem;
  }
  .tk-summary-item {
    border:1px solid rgba(197,165,90,0.12);
    background:rgba(255,255,255,0.02);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-summary-item span {
    display:block;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:8px;
  }
  .tk-summary-item strong {
    display:block;
    font-family:'Cinzel',serif;
    color:var(--gold);
    font-size:0.95rem;
    letter-spacing:1px;
    font-weight:500;
  }
  .tk-standstill-days {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:1rem;
  }
  .tk-standstill-day {
    border:1px solid rgba(197,165,90,0.1);
    background:rgba(255,255,255,0.015);
    padding:12px 14px;
  }
  .tk-standstill-day span {
    display:block;
    font-size:0.5rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:5px;
  }
  .tk-standstill-day strong {
    display:block;
    font-size:0.72rem;
    color:var(--white);
    font-weight:500;
  }
  .tk-vat-breakdown {
    margin-top:0.6rem;
    padding-top:0.9rem;
    border-top:1px solid rgba(255,255,255,0.06);
    font-size:0.68rem;
    color:rgba(255,255,255,0.56);
    line-height:1.9;
  }
  .tk-vat-breakdown strong { color:var(--gold); font-weight:600; }
  .tk-toggle-group {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
  }
  .tk-toggle-btn {
    appearance:none;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.03);
    color:var(--white);
    min-height:72px;
    padding:0.9rem 1rem;
    font-size:0.72rem;
    line-height:1.55;
    letter-spacing:0.4px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    flex:1 1 180px;
    text-align:left;
  }
  .tk-toggle-btn:hover,
  .tk-toggle-btn:focus-visible {
    border-color:rgba(197,165,90,0.45);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-toggle-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.14);
    color:var(--gold);
    box-shadow:0 12px 28px rgba(0,0,0,0.16);
  }
  .tk-toggle-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.82rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.18rem;
    color:inherit;
  }
  .tk-toggle-btn span {
    display:block;
    font-size:0.64rem;
    line-height:1.7;
    color:inherit;
    opacity:0.9;
  }

  .tk-vat-grid {
    display:grid;
    grid-template-columns:minmax(0, 760px);
    gap:16px;
    max-width:760px;
    align-items:start;
    margin-bottom:1.35rem;
  }
  .tk-vat-field-wide {
    grid-column:1 / -1;
  }
  .tk-pill-group {
    display:grid;
    gap:12px;
    width:100%;
  }
  .tk-pill-group-mode {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-group-rates {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-btn {
    appearance:none;
    border:1px solid rgba(197,165,90,0.18);
    background:rgba(255,255,255,0.03);
    color:rgba(255,255,255,0.78);
    min-height:84px;
    padding:1rem 1rem 0.95rem;
    font-size:0.68rem;
    line-height:1.35;
    letter-spacing:0.5px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
    text-align:left;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  .tk-pill-btn:hover,
  .tk-pill-btn:focus-visible {
    border-color:rgba(197,165,90,0.42);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-pill-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.12);
    color:var(--gold);
  }
  .tk-pill-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.76rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.16rem;
    color:inherit;
  }
  .tk-pill-btn span {
    display:block;
    font-size:0.58rem;
    line-height:1.5;
    color:inherit;
    opacity:0.92;
  }
  .tk-vat-custom-wrap {
    max-width:260px;
  }
  .tk-cycle-layout {
    display:grid;
    grid-template-columns:minmax(360px, 520px) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    max-width:1100px;
  }
  .tk-cycle-wheel-wrap {
    position:relative;
    width:min(100%, 520px);
    aspect-ratio:1 / 1;
    margin:0 auto;
  }
  .tk-cycle-wheel {
    width:100%;
    height:100%;
    display:block;
    overflow:visible;
    filter:drop-shadow(0 18px 34px rgba(0,0,0,0.2));
  }
  .tk-cycle-stage {
    transition: transform .22s ease, filter .22s ease;
  }
  .tk-cycle-stage:hover,
  .tk-cycle-stage:focus-within {
    transform: translate(var(--tk-shift-x, 0px), var(--tk-shift-y, 0px));
    filter: drop-shadow(0 10px 14px rgba(0,0,0,0.18));
  }
  .tk-cycle-stage.is-active {
    transform: translate(calc(var(--tk-shift-x, 0px) * 0.72), calc(var(--tk-shift-y, 0px) * 0.72));
    filter: drop-shadow(0 12px 16px rgba(0,0,0,0.2));
  }
  .tk-cycle-segment {
    fill:#102648;
    stroke:rgba(230,232,237,0.88);
    stroke-width:2.4;
    cursor:pointer;
    transition:fill .22s ease, stroke .22s ease, opacity .22s ease;
    outline:none !important;
    -webkit-tap-highlight-color:transparent;
  }
  .tk-cycle-stage:hover .tk-cycle-segment,
  .tk-cycle-stage:focus-within .tk-cycle-segment {
    fill:#17345f;
    stroke:rgba(255,255,255,0.95);
  }
  .tk-cycle-stage.is-active:hover .tk-cycle-segment,
  .tk-cycle-stage.is-active:focus-within .tk-cycle-segment,
  .tk-cycle-segment.active {
    fill:var(--gold);
    stroke:rgba(217,197,128,0.95);
  }
  .tk-cycle-segment:focus,
  .tk-cycle-segment:focus-visible {
    outline:none !important;
  }
  .tk-cycle-stage-number {
    fill:var(--white);
    font-family:'Montserrat',sans-serif;
    font-size:20px;
    font-weight:800;
    text-anchor:middle;
    dominant-baseline:middle;
    pointer-events:none;
    transition: fill .22s ease, transform .22s ease;
    paint-order: stroke;
    stroke: rgba(10,20,38,0.18);
    stroke-width: 0.7px;
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage:hover .tk-cycle-stage-number {
    transform: translateY(-1px);
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage-number.active,
  .tk-cycle-stage.is-active:hover .tk-cycle-stage-number {
    fill:var(--white);
    stroke: rgba(15,27,45,0.45);
  }
  .tk-cycle-center {
    position:absolute;
    inset:50% auto auto 50%;
    width:46%;
    aspect-ratio:1 / 1;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    background:radial-gradient(circle at 35% 30%, rgba(31,69,121,0.98), rgba(10,30,59,0.98));
    color:var(--white);
    box-shadow:0 0 0 10px rgba(197,165,90,0.18), inset 0 0 0 1px rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.18);
    padding:28px;
  }
  .tk-cycle-center::after {
    content:'';
    position:absolute;
    inset:12px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.06);
    pointer-events:none;
  }
  .tk-cycle-center span {
    display:block;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(197,165,90,0.92);
    margin-bottom:0.5rem;
  }
  .tk-cycle-center strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:1.06rem;
    line-height:1.4;
    letter-spacing:1px;
    font-weight:600;
    color:#f7f7f3;
  }
  .tk-cycle-center small {
    display:block;
    margin-top:0.7rem;
    font-size:0.72rem;
    line-height:1.6;
    color:rgba(255,255,255,0.72);
    max-width:190px;
  }
  .tk-cycle-panel {
    max-width:560px;
    background:linear-gradient(180deg, rgba(8,22,44,0.42), rgba(8,22,44,0.28));
    border:1px solid rgba(197,165,90,0.18);
    padding:1.6rem 1.65rem;
    border-radius:6px;
    min-height:420px;
    box-shadow:0 20px 36px rgba(5,11,21,0.14);
  }
  .tk-cycle-panel-head {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-bottom:0.95rem;
  }
  .tk-cycle-panel-tag {
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
  }
  .tk-cycle-panel h4 {
    margin:0;
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:1px;
    color:var(--white);
  }
  .tk-cycle-panel p {
    margin:0 0 1rem;
    font-size:0.7rem;
    line-height:1.9;
    color:rgba(255,255,255,0.66);
  }
  .tk-cycle-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .tk-cycle-detail-box {
    border:1px solid rgba(197,165,90,0.14);
    background:rgba(255,255,255,0.025);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-cycle-detail-box span {
    display:block;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.4);
    margin-bottom:8px;
  }
  .tk-cycle-detail-box ul {
    margin:0;
    padding-left:1.1rem;
    color:rgba(255,255,255,0.66);
    font-size:0.68rem;
    line-height:1.8;
  }
  @media (max-width: 900px) {
    .tk-pill-group-rates {
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tk-cycle-layout {
      grid-template-columns:1fr;
    }
    .tk-cycle-panel {
      min-height:auto;
    }
  }
  @media (max-width: 768px) {
    .tk-vat-grid { max-width:none; }
    .tk-pill-group-mode,
    .tk-pill-group-rates,
    .tk-cycle-detail-grid {
      grid-template-columns:1fr;
    }
    .tk-cycle-center {
      width:52%;
      padding:22px;
    }
    .tk-cycle-center strong {
      font-size:0.88rem;
    }
    .tk-cycle-center small {
      font-size:0.64rem;
      max-width:140px;
    }
    .tk-cycle-stage-number {
      font-size:22px;
    }
  }

  @media (max-width: 768px) {
    .tk-calc-grid { grid-template-columns:1fr; gap:14px; }
    .tk-summary-grid { grid-template-columns:1fr; }
    .tk-calc-actions { flex-direction:column; align-items:stretch; }
    .tk-calc-btn, .tk-calc-btn-secondary { width:100%; }
    .tk-calc-out { padding:1.2rem; }
    .tk-cta { flex-direction:column; align-items:stretch; }
    .tk-cta-btn { width:100%; }
    .tk-toggle-btn { flex:1 1 100%; min-height:auto; }
  }

/* ===== PCC DYNAMIC ARTICLES ===== */
.article-modal {
  position: fixed;
  inset: 0;
  background: rgba(3, 10, 24, 0.82);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}
.article-modal.open { display: flex; }
.article-modal-dialog {
  width: min(920px, 100%);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, rgba(10,24,52,0.98), rgba(6,15,33,0.98));
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
  position: relative;
}
.article-modal-content {
  padding: 34px 30px 36px;
}
.article-modal-close {
  position: sticky;
  top: 16px;
  margin-left: calc(100% - 56px);
  width: 40px;
  height: 40px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.article-modal-close:hover { opacity: 0.8; }
.article-modal-excerpt {
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--white);
  opacity: 0.92;
  margin-bottom: 22px;
}
 .article-modal-body h2 {
  font-size: 1.05rem;
  margin: 24px 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
}
.article-modal-body p {
  color: var(--white);
  opacity: 0.92;
  line-height: 1.95;
  margin: 0 0 14px;
  font-size: 0.92rem;
}
.article-modal-body a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-modal-body a:hover {
  color: var(--gold);
}
@media (max-width: 768px) {
  .article-modal { padding: 12px; }
  .article-modal-content { padding: 26px 18px 24px; }
  .quick-slot-grid {
    flex-direction: column;
    align-items: stretch;
  }
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: publish.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  html { scroll-behavior: smooth; }
  body { background: var(--navy); color: var(--white); font-family: 'Montserrat', sans-serif; overflow-x: hidden; }

  /* PAGE TRANSITIONS */
  .page { display: none; opacity: 0; transition: opacity 0.5s ease; }
  .page.active { display: block; }
  .page.visible { opacity: 1; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0; transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
  }
  .reveal.revealed { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }
  .reveal-delay-6 { transition-delay: 0.6s; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 28px 60px; background: transparent; transition: all 0.4s;
  }
  nav.scrolled { background: rgba(25,40,66,0.96); backdrop-filter: blur(10px); padding: 18px 60px; }
  .nav-logo { display: flex; align-items: center; gap: 14px; cursor: pointer; -webkit-tap-highlight-color: rgba(197,165,90,0.2); }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px;
    display: inline-block; white-space: nowrap; overflow: hidden; max-width: 0; opacity: 0; transform: translateX(-10px);
    animation: navBrandUnscroll 1.05s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
  }
  @keyframes navBrandUnscroll {
    0% { max-width: 0; opacity: 0; transform: translateX(-10px); }
    35% { opacity: 1; }
    100% { max-width: 420px; opacity: 1; transform: translateX(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-brand { animation: none; max-width: 420px; opacity: 1; transform: none; }
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px;
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
    transition: color 0.3s; cursor: pointer; position: relative;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: -4px; left: 0;
    width: 0; height: 1px; background: var(--gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active { color: var(--gold); }
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent; border: 1.5px solid var(--gold); color: var(--gold);
    padding: 10px 24px; font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 600; transition: all 0.3s;
  }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .nav-cta.active { background: var(--gold); color: var(--navy); }

  /* MOBILE NAV */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer;
    background: none; border: none; padding: 8px; -webkit-appearance: none; touch-action: manipulation;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(25,40,66,0.98); z-index: 99;
    flex-direction: column; align-items: center; justify-content: center; gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.4rem;
    letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.6);
    transition: color 0.3s; cursor: pointer;
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  /* HERO */
  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
  }
  .hero-watermark {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%); opacity: 0.04;
  }
  .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    z-index: 0;
    pointer-events: none;
  }
  .hero-content { position: relative; z-index: 2; animation: fadeIn 1.2s ease; }
  .hero-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 28px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .hero-content .overline::before, .hero-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif; font-size: 3.8rem; font-weight: 400;
    letter-spacing: 6px; color: var(--white); line-height: 1.2;
    text-transform: uppercase; margin-bottom: 24px;
  }
  .hero-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .hero-desc {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 600px; margin: 0 auto 40px; font-weight: 300;
  }
  .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

  .toolkit-toggle-btn.is-open {
    background: rgba(197,165,90,0.1);
    border-color: var(--gold);
    color: var(--gold-light);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16), inset 0 0 0 1px rgba(217,197,128,0.12);
  }
  .insight-card:focus-within,
  .insight-card.is-active {
    transform: translateY(-4px);
    border-left-color: var(--gold);
    box-shadow: 0 18px 36px rgba(0,0,0,0.2), inset 0 0 0 1px rgba(217,197,128,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.012));
  }
  .insight-card:focus-within .read-more,
  .insight-card.is-active .read-more,
  .insight-card:focus-within .insight-toggle,
  .insight-card.is-active .insight-toggle {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .tk-pill-btn.active,
  .tk-opt.tk-nf-active {
    box-shadow: 0 10px 24px rgba(0,0,0,0.14), inset 0 0 0 1px rgba(217,197,128,0.08);
  }
  .btn-gold {
    background: var(--gold); color: var(--navy); padding: 16px 36px; border: none;
    font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 700; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .btn-ghost {
    background: transparent; border: 1px solid rgba(255,255,255,0.2); color: var(--white);
    padding: 16px 36px; font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 400; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  /* DIVIDER */
  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }

  /* SECTION HEADS */
  .section-head { margin-bottom: 60px; }
  .section-head .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    color: var(--white); letter-spacing: 3px; margin-top: 10px; text-transform: uppercase;
  }

  /* SERVICES */
  .services {
    padding: 100px 80px; background: var(--navy-mid); position: relative;
  }
  .services::before {
    content: ''; position: absolute; top: 0; left: 60px; bottom: 0;
    width: 1px; background: linear-gradient(180deg, transparent, rgba(197,165,90,0.15), transparent);
  }
  .service-rows { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1100px; margin: 0 auto; }
  .svc {
    padding: 44px 40px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative;
  }
  .svc::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 2px; background: var(--gold); transition: width 0.5s;
  }
  .svc:hover::after { width: 100%; }
  .svc:hover { background: rgba(197,165,90,0.018); }
  .svc .num { font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 300; color: rgba(197,165,90,0.3); margin-bottom: 14px; }
  .svc h3 { font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500; color: var(--white); letter-spacing: 2px; margin-bottom: 10px; }
  .svc p { font-size: 0.72rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* TRAINING HIGHLIGHT */
  .training-highlight {
    padding: 80px; background: var(--navy);
    text-align: center;
  }
  .training-inner {
    max-width: 800px; margin: 0 auto;
    padding: 50px 60px;
    border: 1px solid rgba(197,165,90,0.15);
    position: relative;
  }
  .training-inner::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 60px; height: 3px; background: var(--gold);
  }
  .training-inner .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-inner h3 {
    font-family: 'Cinzel', serif; font-size: 1.3rem; font-weight: 400;
    color: var(--white); letter-spacing: 2px; margin-bottom: 14px; text-transform: uppercase;
  }
  .training-inner p {
    font-size: 0.75rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 28px;
  }

  /* HOW WE WORK */
  .how-we-work {
    padding: 100px 80px; background: var(--navy);
  }
  .process-steps {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
    max-width: 1100px; margin: 0 auto; position: relative;
  }
  .process-steps::before {
    content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
    height: 1px; background: rgba(197,165,90,0.25);
  }
  .process-step {
    text-align: center; padding: 0 16px; position: relative;
  }
  .process-step .step-num {
    width: 56px; height: 56px; border: 2px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-family: 'Cinzel', serif; font-size: 1.1rem;
    font-weight: 600; color: var(--gold); background: var(--navy);
    position: relative; z-index: 2;
  }
  .process-step h4 {
    font-family: 'Cinzel', serif; font-size: 0.7rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 10px;
  }
  .process-step p {
    font-size: 0.65rem; line-height: 1.7; color: var(--slate); font-weight: 300;
  }

  /* WHY SECTION */
  .why {
    padding: 100px 80px; background: var(--navy);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center;
  }
  .why-left h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .why-left p { font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 32px; }
  .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .why-card {
    background: var(--navy-mid); padding: 32px 28px;
    border-top: 2px solid var(--gold); transition: transform 0.3s;
  }
  .why-card:hover { transform: translateY(-4px); }
  .why-card .icon { font-size: 1.6rem; margin-bottom: 12px; color: var(--gold); }
  .why-card h4 {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); margin-bottom: 8px; text-transform: uppercase;
  }
  .why-card p { font-size: 0.68rem; line-height: 1.7; color: var(--slate); font-weight: 300; }

  /* QUOTE */
  .quote-section {
    padding: 80px; background: var(--gold); text-align: center; position: relative;
  }
  .quote-section blockquote {
    font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; font-weight: 400;
    font-style: italic; color: var(--navy); max-width: 700px;
    margin: 0 auto; line-height: 1.5;
  }
  .quote-section .attr {
    font-family: 'Montserrat', sans-serif; font-size: 0.65rem; letter-spacing: 3px;
    text-transform: uppercase; color: var(--navy); font-weight: 700; margin-top: 24px;
  }

  /* CTA DARK */
  .cta-dark {
    padding: 100px 80px; text-align: center; background: var(--navy);
  }
  .cta-dark h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 4px; color: var(--white); text-transform: uppercase; margin-bottom: 14px;
  }
  .cta-dark p { font-size: 0.75rem; color: var(--slate); margin-bottom: 36px; font-weight: 300; }

  /* FOOTER */
  footer {
    background: #192842; padding: 50px 80px 30px;
    border-top: 1px solid rgba(197,165,90,0.1);
  }
  .footer-main {
    display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 60px;
    margin-bottom: 40px;
  }
  .footer-brand { display: flex; align-items: flex-start; gap: 16px; }
  .footer-brand svg { width: 28px; height: 34px; flex-shrink: 0; margin-top: 3px; }
  .footer-brand-text span {
    font-family: 'Cinzel', serif; font-size: 0.8rem; letter-spacing: 3px;
    color: rgba(255,255,255,0.5); display: inline-block; margin-bottom: 16px;
    line-height: 1.4; padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }
  .footer-brand-text p {
    font-size: 0.62rem; line-height: 1.9; color: rgba(255,255,255,0.3); font-weight: 300;
    max-width: 340px;
  }
  .footer-col h5 {
    font-family: 'Cinzel', serif; font-size: 0.6rem; font-weight: 600;
    letter-spacing: 3px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; padding-bottom: 12px;
    border-bottom: 1px solid rgba(197,165,90,0.3);
    display: inline-block;
  }
  .footer-col p, .footer-col a {
    font-size: 0.62rem; line-height: 2; color: rgba(255,255,255,0.35);
    font-weight: 300; text-decoration: none; display: block;
  }
  .footer-col a:hover { color: var(--gold); }
  .footer-social {
    display: flex; gap: 16px; margin-top: 14px;
  }
  .footer-social a {
    width: 32px; height: 32px; border: 1px solid rgba(197,165,90,0.2);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.65rem; color: rgba(255,255,255,0.4); transition: all 0.3s;
  }
  .footer-social a:hover { border-color: var(--gold); color: var(--gold); }
  .footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.08); padding-top: 24px;
    flex-wrap: wrap; gap: 12px;
  }
  .footer-bottom p {
    font-size: 0.55rem; color: rgba(255,255,255,0.2); letter-spacing: 1px;
  }

  /* ===== ABOUT PAGE ===== */
  .about-hero {
    min-height: 60vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
    padding: 140px 80px 80px;
  }
  .about-hero .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .about-content { position: relative; z-index: 2; }
  .about-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .about-content .overline::before, .about-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .about-content h1 {
    font-family: 'Cinzel', serif; font-size: 3rem; font-weight: 400;
    letter-spacing: 5px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .about-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .about-content p {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 650px; margin: 0 auto; font-weight: 300;
  }

  .about-story {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
  }
  .about-story h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 24px;
  }
  .about-story p {
    font-size: 0.78rem; line-height: 2; color: var(--slate); font-weight: 300; margin-bottom: 20px;
  }

  .stats-row {
    padding: 80px; background: var(--navy);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; text-align: center;
  }
  .stat-item { padding: 20px; }
  .stat-item .num {
    font-family: 'Cinzel', serif; font-size: 2.8rem; font-weight: 400; color: var(--gold); margin-bottom: 8px;
  }
  .stat-item .label {
    font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase; color: var(--slate); font-weight: 400;
  }

  .values-section { padding: 100px 80px; background: var(--navy-mid); }
  .values-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .value-item {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s; text-align: center;
  }
  .value-item:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .value-item .icon { font-size: 1.8rem; margin-bottom: 16px; color: var(--gold); }
  .value-item h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 12px;
  }
  .value-item p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== SECTORS PAGE ===== */
  .sectors-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1200px; margin: 0 auto;
  }
  .sector-card {
    padding: 50px 36px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative; overflow: hidden;
  }
  .sector-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0;
    height: 3px; background: var(--gold); transform: scaleX(0);
    transform-origin: left; transition: transform 0.5s;
  }
  .sector-card:hover::before { transform: scaleX(1); }
  .sector-card:hover { background: rgba(197,165,90,0.018); }
  .sector-card .sector-icon { font-size: 2rem; margin-bottom: 20px; color: var(--gold); opacity: 0.8; }
  .sector-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); margin-bottom: 12px; text-transform: uppercase;
  }
  .sector-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== INSIGHTS PAGE ===== */
  .insights-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .insight-card {
    background: var(--navy-mid); padding: 40px 36px;
    border-left: 3px solid var(--gold); transition: all 0.4s;
    display:flex;
    flex-direction:column;
    min-height:100%;
  }
  .insight-card:hover { transform: translateY(-2px); }
  .insight-card .tag {
    font-size: 0.5rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.95rem; font-weight: 500;
    color: var(--white); letter-spacing: 1px; margin-bottom: 12px; line-height: 1.5;
  }
  .insight-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; margin-bottom: 16px; }
  .insight-card .read-more {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; text-decoration: none; cursor: pointer; transition: opacity 0.3s;
  }
  .insight-card .read-more:hover { opacity: 0.7; }
  .insights-grid, .insights-more { align-items:stretch; }


  .official-updates-section {
    padding-top: 64px !important;
  }
  .official-updates-section .section-head {
    max-width: 920px;
    margin: 0 auto 34px;
    padding-top: 6px;
  }
  .official-updates-section .section-head .over {
    display: block;
    margin-bottom: 22px;
  }
  .official-updates-section .section-head h2 {
    margin-bottom: 24px;
  }
  .official-updates-section .section-head p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
  .official-updates-section .insights-grid {
    align-items: stretch;
  }
  .official-updates-section .insight-card {
    min-height: 100%;
  }
  .official-meta {
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 10px;
    font-weight: 500;
  }
  .official-date {
    display: block;
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 16px;
    font-weight: 500;
  }
  .official-note {
    max-width: 860px;
    margin: 12px auto 0;
    font-size: 0.64rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.42);
    text-align: center;
  }

  .official-updates-status {
    max-width: 1000px;
    margin: 10px auto 26px;
    padding: 0 4px;
    font-size: 0.56rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
  }
  .official-updates-status strong {
    color: rgba(255,255,255,0.72);
    font-weight: 500;
  }

  /* ===== TRAINING PAGE ===== */
  .training-page-intro {
    padding: 100px 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .training-page-content {
    padding: 80px; background: var(--navy-mid);
  }
  .training-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;
    max-width: 1000px; margin: 0 auto;
  }
  .training-feature {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s;
  }
  .training-feature:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .training-feature .icon { font-size: 1.6rem; margin-bottom: 14px; color: var(--gold); }
  .training-feature h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 10px;
  }
  .training-feature p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== CONTACT PAGE ===== */
  .contact-section {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start;
  }
  .contact-info h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .contact-info p {
    font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 36px;
  }
  .accreditation-card {
    margin-top: 34px;
    padding-top: 12px;
    border-top: 1px solid rgba(197,165,90,0.14);
  }
  .accreditation-card .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 12px;
  }
  .portal-intro {
    font-size: 0.7rem;
    line-height: 1.8;
    color: var(--slate);
    font-weight: 300;
    margin: 0 0 18px;
    max-width: 560px;
  }
  .portal-links-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portal-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    padding: 18px 20px;
    border: 1px solid rgba(197,165,90,0.16);
    background: rgba(255,255,255,0.02);
    border-radius: 16px;
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  }
  .portal-link:hover {
    transform: translateY(-2px);
    border-color: rgba(197,165,90,0.34);
    background: rgba(197,165,90,0.04);
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  }
  .portal-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  .portal-link-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
  }
  .portal-logo {
    display: block;
    max-width: min(240px, 100%);
    width: auto;
    height: auto;
    max-height: 48px;
  }
  .portal-logo-bloom { max-height: 44px; }
  .portal-logo-constellia { max-height: 40px; }
  .portal-logo-delta { max-height: 64px; }
  .portal-caption {
    font-size: 0.56rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.52);
    font-weight: 500;
    text-align: center;
  }
  .contact-detail {
    display: flex; gap: 14px; margin-bottom: 24px; align-items: flex-start;
  }
  .contact-detail .cd-icon {
    width: 36px; height: 36px; border: 1px solid rgba(197,165,90,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.8rem; color: var(--gold); flex-shrink: 0;
  }
  .contact-detail .cd-text .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 4px;
  }
  .contact-detail .cd-text .cd-value {
    font-size: 0.75rem; color: rgba(255,255,255,0.7); font-weight: 300;
  }
  .contact-form {
    background: var(--navy); padding: 50px 44px; border: 1px solid rgba(197,165,90,0.1);
  }
  .contact-form h3 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 30px;
  }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
  .form-group { margin-bottom: 20px; }
  .form-group label {
    display: block; font-size: 0.55rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--slate); font-weight: 500; margin-bottom: 8px;
  }
  .form-group input, .form-group select, .form-group textarea {
    width: 100%; background: var(--navy-mid); border: 1px solid rgba(197,165,90,0.15);
    color: var(--white); padding: 14px 16px; font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem; font-weight: 300; outline: none; transition: border-color 0.3s;
  }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--gold); }
  .form-group textarea { min-height: 120px; resize: vertical; }
  .form-group select { cursor: pointer; appearance: none; }
  .form-group select option { background: var(--navy-mid); }
  .form-submit { display: flex; align-items: center; gap: 20px; margin-top: 10px; }
  .form-success {
    display: none; padding: 28px 24px; background: rgba(197,165,90,0.08);
    border: 1px solid rgba(197,165,90,0.4); border-top: 3px solid var(--gold); text-align: center; margin-top: 20px;
    border-radius: 4px;
  }
  .contact-form.submitted > *:not(.form-success) { display: none !important; }
  .contact-form.submitted .form-success { display: block; }
  .form-success.show { display: block; }
  .form-success p {
    font-family: 'Cinzel', serif; font-size: 1.02rem; color: var(--gold);
    letter-spacing: 2px; margin-bottom: 12px; text-transform: uppercase;
  }
  .form-success span {
    font-size: 0.78rem; color: rgba(255,255,255,0.82); font-weight: 300;
    display: block; margin-top: 0; line-height: 1.85;
  }

  /* ===== PRIVACY POLICY PAGE ===== */
  .policy-content {
    padding: 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .policy-updated {
    font-size: 0.65rem; letter-spacing: 2px; color: var(--gold);
    text-transform: uppercase; font-weight: 500; margin-bottom: 30px;
  }
  .policy-section { margin-bottom: 36px; }
  .policy-content h2 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 16px;
  }
  .policy-content h3 {
    font-size: 0.72rem; font-weight: 600; color: var(--gold);
    letter-spacing: 1px; margin: 16px 0 8px; text-transform: uppercase;
  }
  .policy-content p {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    margin-bottom: 14px;
  }
  .policy-content ul {
    list-style: none; padding: 0; margin-bottom: 14px;
  }
  .policy-content ul li {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    padding-left: 20px; position: relative;
  }
  .policy-content ul li::before {
    content: ''; position: absolute; left: 0; top: 12px;
    width: 6px; height: 1px; background: var(--gold);
  }
  .policy-content strong { color: var(--white); font-weight: 500; }

  @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }



  /* ===== REFINED DIMENSIONAL EFFECTS ===== */
  #page-home .hero-content {
    perspective: none;
    transform-style: flat;
  }

  .svc,
  .feature-split-card,
  .why-card,
  .sector-card,
  .insight-card,
  .training-feature,
  .toolkit-paid-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .value-item,
  .process-step {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 14px 30px rgba(9,16,28,0.14);
    transition: box-shadow 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
  }
  .svc::before,
  .feature-split-card::before,
  .why-card::before,
  .sector-card::before,
  .insight-card::before,
  .training-feature::before,
  .toolkit-paid-card::before,
  .tk-portal-card::before,
  .tk-gloss-term::before,
  .tk-notice-card::before,
  .value-item::before,
  .process-step::before {
    content:'';
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
    opacity:0;
    pointer-events:none;
    transition: opacity 0.28s ease;
  }
  .svc:hover,
  .feature-split-card:hover,
  .why-card:hover,
  .sector-card:hover,
  .insight-card:hover,
  .training-feature:hover,
  .toolkit-paid-card:hover,
  .tk-portal-card:hover,
  .tk-gloss-term:hover,
  .tk-notice-card:hover,
  .value-item:hover,
  .process-step:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .svc:hover::before,
  .feature-split-card:hover::before,
  .why-card:hover::before,
  .sector-card:hover::before,
  .insight-card:hover::before,
  .training-feature:hover::before,
  .toolkit-paid-card:hover::before,
  .tk-portal-card:hover::before,
  .tk-gloss-term:hover::before,
  .tk-notice-card:hover::before,
  .value-item:hover::before,
  .process-step:hover::before {
    opacity: 1;
  }

  .feature-split-card,
  .toolkit-paid-card,
  .training-feature,
  .insight-card,
  .sector-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .svc,
  .process-step {
    background-image: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  }

  .process-step {
    border: 1px solid rgba(197,165,90,0.08);
    padding: 26px 18px 24px;
    text-align: center;
  }
  .process-step:hover {
    background: linear-gradient(180deg, rgba(197,165,90,0.06), rgba(255,255,255,0.01));
  }
  .process-step .step-num {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }
  .process-step:hover .step-num {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    border-color: rgba(217,197,128,0.85);
  }

  .stats-row .stat-item {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
    border: 1px solid rgba(197,165,90,0.1);
    box-shadow: 0 16px 30px rgba(8,14,24,0.16);
    transition: transform 0.32s ease, box-shadow 0.32s ease, border-color 0.32s ease;
  }
  .stats-row .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .stats-row .stat-item::after {
    content: '';
    position: absolute;
    left: 18%; right: 18%; bottom: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.8), transparent);
    opacity: 0.55;
  }

  .nav-cta,
  .contact-form .btn-gold {
    transform: translateZ(0);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  }
  .nav-cta:hover,
  .contact-form .btn-gold:hover {
    transform: translateY(-2px) scale(1.035);
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
  }

  .insight-card {
    border: 1px solid rgba(197,165,90,0.12);
    border-left-width: 2px;
  }
  .insight-card::after {
    content:'';
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg, rgba(197,165,90,0), rgba(197,165,90,0.75), rgba(197,165,90,0));
    opacity:0.35;
    transition: opacity 0.28s ease;
  }
  .insight-card:hover::after {
    opacity:0.9;
  }
  .insight-card:hover .read-more,
  .sector-card:hover h3,
  .training-feature:hover h4,
  .toolkit-paid-card:hover .toolkit-card-link {
    color: var(--gold-light);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc,
    .feature-split-card,
    .why-card,
    .sector-card,
    .insight-card,
    .training-feature,
    .toolkit-paid-card,
    .tk-portal-card,
    .tk-gloss-term,
    .tk-notice-card,
    .value-item,
    .process-step,
    .stats-row .stat-item,
    .nav-cta,
    .contact-form .btn-gold {
      transition: none !important;
      transform: none !important;
    }
    .svc::before,
    .feature-split-card::before,
    .why-card::before,
    .sector-card::before,
    .insight-card::before,
    .training-feature::before,
    .toolkit-paid-card::before,
    .tk-portal-card::before,
    .tk-gloss-term::before,
    .tk-notice-card::before,
    .value-item::before,
    .process-step::before,
    .insight-card::after {
      transition: none !important;
    }
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 1024px) {
    .hero-content h1 { font-size: 2.6rem; }
    .about-story { grid-template-columns: 1fr; gap: 40px; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-section { grid-template-columns: 1fr; gap: 50px; }
    .why { grid-template-columns: 1fr; gap: 50px; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .process-steps::before { display: none; }
  }
  @media (max-width: 768px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger { display: flex; z-index: 101; }
    .hero { min-height: 100vh; padding: 0 24px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-desc { font-size: 0.72rem; }
    .hero-btns { flex-direction: column; align-items: center; gap: 12px; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; text-align: center; }
    .services, .why, .cta-dark, .about-hero, .about-story, .values-section, .contact-section, .training-page-content, .how-we-work { padding: 60px 24px; }
    .stats-row { padding: 60px 24px; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .quote-section { padding: 50px 24px; }
    .quote-section blockquote { font-size: 1.2rem; }
    .service-rows { grid-template-columns: 1fr; }
    .svc { padding: 32px 24px; }
    .svc h3 { font-size: 0.85rem; }
    .why-right { grid-template-columns: 1fr; }
    .values-grid { grid-template-columns: 1fr; }
    .sectors-grid { grid-template-columns: 1fr; }
    .insights-grid { grid-template-columns: 1fr; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: 1fr; gap: 30px; }
    .process-step .step-num { width: 46px; height: 46px; font-size: 0.95rem; }
    .form-row { grid-template-columns: 1fr; }
    .contact-form { padding: 36px 24px; }

    .accreditation-card { margin-top: 28px; padding-top: 10px; }
    .portal-links-grid { gap: 12px; }
    .portal-link { min-height: 82px; padding: 16px; }
    .portal-logo-bloom { max-height: 38px; }
    .portal-logo-constellia { max-height: 34px; }
    .portal-logo-delta { max-height: 54px; }
    footer { padding: 30px 24px 20px; }
    .footer-main { grid-template-columns: 1fr; gap: 30px; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .about-hero { padding: 80px 24px 40px; min-height: auto; }
    .about-content h1 { font-size: 1.8rem; }
    .about-content p { font-size: 0.72rem; }
    .about-story h2 { font-size: 1.4rem; }
    .stat-item .num { font-size: 2rem; }
    .section-head h2 { font-size: 1.4rem; }
    .cta-dark h2 { font-size: 1.4rem; letter-spacing: 2px; }
    .why-left h2 { font-size: 1.5rem; }
    .policy-content { padding: 40px 24px; }
    .policy-section h2 { font-size: 0.9rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    
    /* -- TOOLKIT INLINE STYLE OVERRIDES ----------------------- */
    .how-we-work { padding: 60px 24px !important; }
    #tk-notices-out { grid-template-columns: 1fr !important; }
    #tk-gloss-out { grid-template-columns: 1fr !important; }
    #page-toolkit .svc { overflow-x: hidden; overflow: hidden; }
    .svc::after { display: none; }
    .svc:hover { background: none; }
    #page-toolkit [style*="max-width:1100px"],
    #page-toolkit [style*="max-width:1000px"],
    #page-toolkit [style*="max-width:800px"] { max-width: 100% !important; padding-left: 0; padding-right: 0; }

    /* -- TOOLKIT OVERFLOW FIX --------------------------------- */
    #toolkit, #toolkit * { max-width: 100%; box-sizing: border-box; }
    #toolkit .container { overflow-x: hidden; }
    /* -- TOOLKIT PAGE MOBILE ----------------------------------- */
    .tk-portal-card { padding: 16px 18px; width: 100%; box-sizing: border-box; }
    .tk-portal-card strong { font-size: 0.75rem; }
    .tk-portal-card span { font-size: 0.7rem; }
    .tk-opt { padding: 10px 16px; font-size: 0.62rem; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .tk-gloss-term { padding: 12px 14px; }
    .tk-gloss-term strong { font-size: 0.7rem; }
    .tk-gloss-term span { font-size: 0.68rem; }
    .tk-milestone { flex-wrap: wrap; gap: 6px; }
    .tk-milestone-label { font-size: 0.66rem; flex-basis: 100%; }
    .tk-milestone-date { font-size: 0.66rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    [class*="tk-"] > * { max-width: 100%; box-sizing: border-box; }
    .tk-tool-panel, .tk-section, .tk-grid, .tk-card-grid { grid-template-columns: 1fr !important; }
    .tk-opt-group { display: flex; flex-direction: column; gap: 8px; width: 100%; }
    .tk-result { padding: 20px 16px; font-size: 0.72rem; }
    .tk-input, .tk-select { width: 100%; max-width: 100%; font-size: 0.78rem; padding: 10px 12px; box-sizing: border-box; }
    .tk-btn { width: 100%; min-height: 44px; font-size: 0.65rem; }
    .tk-tabs { flex-wrap: wrap; gap: 6px; }
    .tk-tab { flex: 1 1 auto; text-align: center; font-size: 0.6rem; padding: 8px 10px; }

  }

  /* -- TOOLKIT PAGE ------------------------------------------ */
  .tk-opt {
    background: transparent; border: 1px solid rgba(197,165,90,0.25);
    color: rgba(255,255,255,0.7); padding: 8px 18px;
    font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    font-family: 'Montserrat', sans-serif; cursor: pointer;
    border-radius: 2px; transition: all 0.3s;
  }
  .tk-opt:hover { border-color: var(--gold); color: var(--gold); background: rgba(197,165,90,0.06); }
  .tk-portal-card {
    display: block; padding: 20px 24px;
    border: 1px solid rgba(197,165,90,0.1);
    text-decoration: none; color: inherit;
    transition: all 0.3s; border-radius: 2px;
  }
  .tk-portal-card:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.018); }
  .tk-portal-card strong { font-family: 'Cinzel', serif; font-size: 0.8rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 6px; }
  .tk-portal-card span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-gloss-term { padding: 14px 18px; border: 1px solid rgba(197,165,90,0.08); border-radius: 2px; }
  .tk-gloss-term strong { font-family: 'Cinzel', serif; font-size: 0.72rem; color: var(--gold); display: block; margin-bottom: 4px; letter-spacing: 1px; }
  .tk-gloss-term span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-milestone { display: flex; align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .tk-milestone:last-child { border-bottom: none; }
  .tk-milestone-label { font-size: 0.68rem; color: rgba(255,255,255,0.5); flex: 1; }
  .tk-milestone-date { font-size: 0.68rem; color: var(--gold); font-family: 'Cinzel', serif; white-space: nowrap; }
  .tk-milestone-flag { font-size: 0.58rem; color: #e07070; margin-left: 6px; }


  /* -- PA23 NOTICES ------------------------------------------ */
  .tk-nf-active { border-color: var(--gold) !important; color: var(--gold) !important; background: rgba(197,165,90,0.08) !important; }
  .tk-notice-card {
    padding: 20px 22px; border: 1px solid rgba(197,165,90,0.1);
    border-radius: 2px; transition: border-color 0.3s;
  }
  .tk-notice-card:hover { border-color: rgba(197,165,90,0.3); }
  .tk-notice-ref { font-family: 'Cinzel', serif; font-size: 0.75rem; color: var(--gold); letter-spacing: 2px; font-weight: 600; }
  .tk-notice-cat { font-size: 0.5rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); font-family: 'Montserrat', sans-serif; }
  .tk-notice-title { font-family: 'Cinzel', serif; font-size: 0.82rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 14px; }
  .tk-notice-section { margin-bottom: 10px; }
  .tk-notice-section:last-child { margin-bottom: 0; }
  .tk-notice-label { font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); font-weight: 500; display: block; margin-bottom: 3px; }
  .tk-notice-section p { font-size: 0.68rem; color: rgba(255,255,255,0.55); line-height: 1.75; margin: 0; }


  /* Global mobile overflow protection */
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }


  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }
  .btn-gold:focus-visible, .btn-ghost:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }


  @media (max-width: 768px) {

    
    /* -- NOTICE CARDS MOBILE FIX ------------------------------- */
    .tk-notice-card { padding: 16px 14px; box-sizing: border-box; word-break: break-word; }
    .tk-notice-cat { 
      font-size: 0.42rem; 
      letter-spacing: 1px; 
      white-space: normal; 
      text-align: right;
      max-width: 120px;
      line-height: 1.4;
    }
    .tk-notice-ref { flex-shrink: 0; }
    #tk-notices-out { 
      grid-template-columns: 1fr !important; 
      overflow: hidden;
    }
    #tk-notices-out .tk-notice-card { width: 100%; max-width: 100%; overflow: hidden; }

    /* -- SERVICES DECORATIVE LINE FIX ------------------------- */
    .services::before { display: none; }

    /* -- GRID LINES MOBILE FIX -------------------------------- */
    .hero-lines { display: none; }
    .about-hero { overflow: hidden; }
    .services { overflow: hidden; }
    #page-toolkit .services { isolation: isolate; }

  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible, .btn-gold:focus-visible, .btn-ghost:focus-visible,
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- GLOSSARY SCROLLBAR ------------------------------------ */
  #tk-gloss-out::-webkit-scrollbar {
    width: 4px;
  }
  #tk-gloss-out::-webkit-scrollbar-track {
    background: rgba(25,40,66,0.6);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb {
    background: rgba(197,165,90,0.4);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb:hover {
    background: rgba(197,165,90,0.7);
  }


  /* ===== EDITORIAL / TOOLKIT ENHANCEMENTS ===== */
  .svc-link, .training-link-inline {
    display:inline-block;
    margin-top:14px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    text-decoration:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .svc-link:hover, .training-link-inline:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }

  .toolkit-paid {
    padding:80px; padding:clamp(40px,5vw,80px) clamp(20px,5vw,80px);
    background: var(--navy);
  }
  .feature-split-grid {
    max-width:1100px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px;
    align-items:stretch;
  }
  .feature-split-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:48px 52px;
    background:rgba(255,255,255,0.012);
    min-height:430px;
    display:flex;
    flex-direction:column;
    text-align:center;
  }
  .feature-split-card h4 {
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:3px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:20px;
  }
  .feature-split-card p {
    font-size:0.84rem;
    line-height:1.95;
    color:var(--slate);
    font-weight:300;
    max-width:560px;
    margin:0 auto 26px;
  }
  .feature-split-actions {
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .feature-split-actions .btn-gold,
  .feature-split-actions .btn-ghost {
    width:min(360px,100%);
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:14px 24px;
  }
  .support-products-grid {
    max-width:1100px;
    margin:0 auto 36px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
  }
  .toolkit-paid-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:38px 42px 34px;
    background:rgba(255,255,255,0.012);
    display:flex;
    flex-direction:column;
    min-height:0;
  }
  .toolkit-paid-card h4 {
    font-family:'Cinzel',serif;
    font-size:0.98rem;
    font-weight:500;
    letter-spacing:2px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .toolkit-paid-card > p {
    font-size:0.79rem;
    line-height:1.85;
    color:var(--slate);
    font-weight:300;
    margin-bottom:24px;
  }
  .toolkit-card-footer {
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid rgba(197,165,90,0.12);
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .toolkit-card-label {
    display:block;
    margin-bottom:10px;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
  }
  .toolkit-card-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .toolkit-card-list li {
    position:relative;
    padding-left:16px;
    font-size:0.69rem;
    line-height:1.7;
    color:rgba(255,255,255,0.62);
  }
  .toolkit-card-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:1px;
    background:var(--gold);
    opacity:0.8;
  }
  .toolkit-card-fit {
    margin:0;
    font-size:0.68rem;
    line-height:1.75;
    color:rgba(255,255,255,0.52);
  }
  .toolkit-card-link {
    align-self:flex-start;
    background:none;
    border:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    color:var(--gold);
    padding:0 0 4px;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    text-decoration:none;
  }
  .toolkit-card-link:hover {
    color:var(--gold-light);
    border-bottom-color:var(--gold-light);
  }
  .toolkit-paid-actions {
    max-width:1100px;
    margin:0 auto;
    text-align:center;
  }
  .toolkit-paid-note {
    max-width:680px;
    margin:18px auto 0;
    font-size:0.65rem;
    line-height:1.8;
    color:rgba(255,255,255,0.28);
  }

  .toolkit-toggle-btn {
    background:transparent;
    border:1px solid rgba(197,165,90,0.28);
    color:var(--gold);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    cursor:pointer;
    border-radius:2px;
    margin-bottom:18px;
  }
  .toolkit-toggle-btn:hover { background:rgba(197,165,90,0.06); border-color:var(--gold); }

  .insight-card.featured {
    background:rgba(255,255,255,0.015);
    border-left-width:4px;
  }
  .featured-label {
    font-size:0.48rem;
    letter-spacing:4px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
    margin-bottom:12px;
  }
  .insight-meta {
    font-size:0.54rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.42);
    margin-bottom:14px;
  }
  .insight-body {
    display:none;
    margin-top:18px;
  }
  .insight-body p {
    margin-bottom:14px;
    font-size:0.72rem;
    line-height:1.9;
    color:var(--slate);
  }
  .insight-toggle {
    margin-top:auto;
    align-self:flex-start;
    background:none;
    border:none;
    color:var(--gold);
    padding:0;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .insight-toggle:hover { color:var(--gold-light); border-bottom-color:var(--gold-light); }
  .insights-more { display:none; }
  .insights-more-wrap { text-align:center; margin-top:36px; }
  .insight-card h3 { text-wrap:balance; }
  .article-readtime { display:inline-block; }

  @media (max-width: 768px) {
    .feature-split-grid, .support-products-grid { grid-template-columns:1fr; gap:18px; }
    .feature-split-card { padding:30px 24px; min-height:auto; }
    .feature-split-card h4 { font-size:0.92rem; }
    .feature-split-card p { font-size:0.78rem; }
    .feature-split-actions .btn-gold, .feature-split-actions .btn-ghost { width:100%; min-height:46px; }
    .toolkit-paid-card { padding:28px 24px; min-height:auto; }
    .toolkit-paid-card h4 { font-size:0.86rem; }
    .toolkit-paid-card > p { font-size:0.76rem; }
    .toolkit-card-footer { padding-top:18px; gap:14px; }
    .toolkit-card-list li { font-size:0.68rem; }
    .toolkit-card-fit { font-size:0.67rem; }
    .toolkit-card-link { font-size:0.54rem; letter-spacing:2.2px; }
    .svc-link, .training-link-inline, .insight-toggle { font-size:0.54rem; letter-spacing:2.2px; }
  }




  /* ===== PCC TOOLKIT CALCULATORS ===== */
  .tk-calc-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:760px;
    margin-bottom:1.35rem;
    align-items:end;
  }
  .tk-calc-field label {
    display:block;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:8px;
    font-family:'Cinzel',serif;
  }
  .tk-calc-field input,
  .tk-calc-field select {
    width:100%;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(197,165,90,0.2);
    color:var(--white);
    padding:10px 14px;
    font-family:'Montserrat',sans-serif;
    font-size:0.75rem;
    border-radius:2px;
    box-sizing:border-box;
  }
  .tk-calc-field input::placeholder { color:rgba(255,255,255,0.28); }
  .tk-calc-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:1rem;
  }
  .tk-calc-btn {
    background:var(--gold);
    color:var(--navy);
    border:none;
    padding:10px 24px;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    cursor:pointer;
    white-space:nowrap;
    border-radius:2px;
  }
  .tk-calc-btn-secondary {
    background:transparent;
    color:var(--gold);
    border:1px solid rgba(197,165,90,0.3);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-radius:2px;
  }
  .tk-calc-note {
    font-size:0.62rem;
    color:rgba(255,255,255,0.38);
    line-height:1.75;
    max-width:760px;
    margin-top:0.85rem;
  }
  .tk-calc-note strong {
    color:rgba(255,255,255,0.62);
    font-weight:600;
  }
  .tk-calc-out {
    display:none;
    max-width:900px;
    background:rgba(0,0,0,0.2);
    border:1px solid rgba(197,165,90,0.15);
    padding:1.5rem;
    border-radius:2px;
    color:rgba(255,255,255,0.72);
    margin-top:0;
  }
  .tk-tool-copy {
    max-width:760px;
    margin-bottom:1.5rem;
  }
  .tk-tool-copy p,
  .tk-tool-copy .tk-calc-note {
    margin-left:0;
    margin-right:0;
  }
  .tk-cta {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(255,255,255,0.06);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .tk-cta-text {
    margin:0;
    font-size:0.68rem;
    line-height:1.8;
    color:rgba(255,255,255,0.6);
    flex:1 1 320px;
  }
  .tk-cta-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 18px;
    border:1px solid rgba(197,165,90,0.3);
    color:var(--gold);
    text-decoration:none;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    border-radius:2px;
    transition:border-color .25s ease, background .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .tk-cta-btn:hover {
    border-color:var(--gold);
    background:rgba(197,165,90,0.08);
  }
  .tk-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:1rem;
  }
  .tk-summary-item {
    border:1px solid rgba(197,165,90,0.12);
    background:rgba(255,255,255,0.02);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-summary-item span {
    display:block;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:8px;
  }
  .tk-summary-item strong {
    display:block;
    font-family:'Cinzel',serif;
    color:var(--gold);
    font-size:0.95rem;
    letter-spacing:1px;
    font-weight:500;
  }
  .tk-standstill-days {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:1rem;
  }
  .tk-standstill-day {
    border:1px solid rgba(197,165,90,0.1);
    background:rgba(255,255,255,0.015);
    padding:12px 14px;
  }
  .tk-standstill-day span {
    display:block;
    font-size:0.5rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:5px;
  }
  .tk-standstill-day strong {
    display:block;
    font-size:0.72rem;
    color:var(--white);
    font-weight:500;
  }
  .tk-vat-breakdown {
    margin-top:0.6rem;
    padding-top:0.9rem;
    border-top:1px solid rgba(255,255,255,0.06);
    font-size:0.68rem;
    color:rgba(255,255,255,0.56);
    line-height:1.9;
  }
  .tk-vat-breakdown strong { color:var(--gold); font-weight:600; }
  .tk-toggle-group {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
  }
  .tk-toggle-btn {
    appearance:none;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.03);
    color:var(--white);
    min-height:72px;
    padding:0.9rem 1rem;
    font-size:0.72rem;
    line-height:1.55;
    letter-spacing:0.4px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    flex:1 1 180px;
    text-align:left;
  }
  .tk-toggle-btn:hover,
  .tk-toggle-btn:focus-visible {
    border-color:rgba(197,165,90,0.45);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-toggle-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.14);
    color:var(--gold);
    box-shadow:0 12px 28px rgba(0,0,0,0.16);
  }
  .tk-toggle-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.82rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.18rem;
    color:inherit;
  }
  .tk-toggle-btn span {
    display:block;
    font-size:0.64rem;
    line-height:1.7;
    color:inherit;
    opacity:0.9;
  }

  .tk-vat-grid {
    display:grid;
    grid-template-columns:minmax(0, 760px);
    gap:16px;
    max-width:760px;
    align-items:start;
    margin-bottom:1.35rem;
  }
  .tk-vat-field-wide {
    grid-column:1 / -1;
  }
  .tk-pill-group {
    display:grid;
    gap:12px;
    width:100%;
  }
  .tk-pill-group-mode {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-group-rates {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-btn {
    appearance:none;
    border:1px solid rgba(197,165,90,0.18);
    background:rgba(255,255,255,0.03);
    color:rgba(255,255,255,0.78);
    min-height:84px;
    padding:1rem 1rem 0.95rem;
    font-size:0.68rem;
    line-height:1.35;
    letter-spacing:0.5px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
    text-align:left;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  .tk-pill-btn:hover,
  .tk-pill-btn:focus-visible {
    border-color:rgba(197,165,90,0.42);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-pill-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.12);
    color:var(--gold);
  }
  .tk-pill-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.76rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.16rem;
    color:inherit;
  }
  .tk-pill-btn span {
    display:block;
    font-size:0.58rem;
    line-height:1.5;
    color:inherit;
    opacity:0.92;
  }
  .tk-vat-custom-wrap {
    max-width:260px;
  }
  .tk-cycle-layout {
    display:grid;
    grid-template-columns:minmax(360px, 520px) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    max-width:1100px;
  }
  .tk-cycle-wheel-wrap {
    position:relative;
    width:min(100%, 520px);
    aspect-ratio:1 / 1;
    margin:0 auto;
  }
  .tk-cycle-wheel {
    width:100%;
    height:100%;
    display:block;
    overflow:visible;
    filter:drop-shadow(0 18px 34px rgba(0,0,0,0.2));
  }
  .tk-cycle-stage {
    transition: transform .22s ease, filter .22s ease;
  }
  .tk-cycle-stage:hover,
  .tk-cycle-stage:focus-within {
    transform: translate(var(--tk-shift-x, 0px), var(--tk-shift-y, 0px));
    filter: drop-shadow(0 10px 14px rgba(0,0,0,0.18));
  }
  .tk-cycle-stage.is-active {
    transform: translate(calc(var(--tk-shift-x, 0px) * 0.72), calc(var(--tk-shift-y, 0px) * 0.72));
    filter: drop-shadow(0 12px 16px rgba(0,0,0,0.2));
  }
  .tk-cycle-segment {
    fill:#102648;
    stroke:rgba(230,232,237,0.88);
    stroke-width:2.4;
    cursor:pointer;
    transition:fill .22s ease, stroke .22s ease, opacity .22s ease;
    outline:none !important;
    -webkit-tap-highlight-color:transparent;
  }
  .tk-cycle-stage:hover .tk-cycle-segment,
  .tk-cycle-stage:focus-within .tk-cycle-segment {
    fill:#17345f;
    stroke:rgba(255,255,255,0.95);
  }
  .tk-cycle-stage.is-active:hover .tk-cycle-segment,
  .tk-cycle-stage.is-active:focus-within .tk-cycle-segment,
  .tk-cycle-segment.active {
    fill:var(--gold);
    stroke:rgba(217,197,128,0.95);
  }
  .tk-cycle-segment:focus,
  .tk-cycle-segment:focus-visible {
    outline:none !important;
  }
  .tk-cycle-stage-number {
    fill:var(--white);
    font-family:'Montserrat',sans-serif;
    font-size:20px;
    font-weight:800;
    text-anchor:middle;
    dominant-baseline:middle;
    pointer-events:none;
    transition: fill .22s ease, transform .22s ease;
    paint-order: stroke;
    stroke: rgba(10,20,38,0.18);
    stroke-width: 0.7px;
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage:hover .tk-cycle-stage-number {
    transform: translateY(-1px);
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage-number.active,
  .tk-cycle-stage.is-active:hover .tk-cycle-stage-number {
    fill:var(--white);
    stroke: rgba(15,27,45,0.45);
  }
  .tk-cycle-center {
    position:absolute;
    inset:50% auto auto 50%;
    width:46%;
    aspect-ratio:1 / 1;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    background:radial-gradient(circle at 35% 30%, rgba(31,69,121,0.98), rgba(10,30,59,0.98));
    color:var(--white);
    box-shadow:0 0 0 10px rgba(197,165,90,0.18), inset 0 0 0 1px rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.18);
    padding:28px;
  }
  .tk-cycle-center::after {
    content:'';
    position:absolute;
    inset:12px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.06);
    pointer-events:none;
  }
  .tk-cycle-center span {
    display:block;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(197,165,90,0.92);
    margin-bottom:0.5rem;
  }
  .tk-cycle-center strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:1.06rem;
    line-height:1.4;
    letter-spacing:1px;
    font-weight:600;
    color:#f7f7f3;
  }
  .tk-cycle-center small {
    display:block;
    margin-top:0.7rem;
    font-size:0.72rem;
    line-height:1.6;
    color:rgba(255,255,255,0.72);
    max-width:190px;
  }
  .tk-cycle-panel {
    max-width:560px;
    background:linear-gradient(180deg, rgba(8,22,44,0.42), rgba(8,22,44,0.28));
    border:1px solid rgba(197,165,90,0.18);
    padding:1.6rem 1.65rem;
    border-radius:6px;
    min-height:420px;
    box-shadow:0 20px 36px rgba(5,11,21,0.14);
  }
  .tk-cycle-panel-head {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-bottom:0.95rem;
  }
  .tk-cycle-panel-tag {
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
  }
  .tk-cycle-panel h4 {
    margin:0;
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:1px;
    color:var(--white);
  }
  .tk-cycle-panel p {
    margin:0 0 1rem;
    font-size:0.7rem;
    line-height:1.9;
    color:rgba(255,255,255,0.66);
  }
  .tk-cycle-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .tk-cycle-detail-box {
    border:1px solid rgba(197,165,90,0.14);
    background:rgba(255,255,255,0.025);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-cycle-detail-box span {
    display:block;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.4);
    margin-bottom:8px;
  }
  .tk-cycle-detail-box ul {
    margin:0;
    padding-left:1.1rem;
    color:rgba(255,255,255,0.66);
    font-size:0.68rem;
    line-height:1.8;
  }
  @media (max-width: 900px) {
    .tk-pill-group-rates {
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tk-cycle-layout {
      grid-template-columns:1fr;
    }
    .tk-cycle-panel {
      min-height:auto;
    }
  }
  @media (max-width: 768px) {
    .tk-vat-grid { max-width:none; }
    .tk-pill-group-mode,
    .tk-pill-group-rates,
    .tk-cycle-detail-grid {
      grid-template-columns:1fr;
    }
    .tk-cycle-center {
      width:52%;
      padding:22px;
    }
    .tk-cycle-center strong {
      font-size:0.88rem;
    }
    .tk-cycle-center small {
      font-size:0.64rem;
      max-width:140px;
    }
    .tk-cycle-stage-number {
      font-size:22px;
    }
  }

  @media (max-width: 768px) {
    .tk-calc-grid { grid-template-columns:1fr; gap:14px; }
    .tk-summary-grid { grid-template-columns:1fr; }
    .tk-calc-actions { flex-direction:column; align-items:stretch; }
    .tk-calc-btn, .tk-calc-btn-secondary { width:100%; }
    .tk-calc-out { padding:1.2rem; }
    .tk-cta { flex-direction:column; align-items:stretch; }
    .tk-cta-btn { width:100%; }
    .tk-toggle-btn { flex:1 1 100%; min-height:auto; }
  }


/* ===== PCC DYNAMIC ARTICLES ===== */
.article-modal {
  position: fixed;
  inset: 0;
  background: rgba(3, 10, 24, 0.82);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}
.article-modal.open { display: flex; }
.article-modal-dialog {
  width: min(920px, 100%);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, rgba(10,24,52,0.98), rgba(6,15,33,0.98));
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
  position: relative;
}
.article-modal-content {
  padding: 34px 30px 36px;
}
.article-modal-close {
  position: sticky;
  top: 16px;
  margin-left: calc(100% - 56px);
  width: 40px;
  height: 40px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.article-modal-close:hover { opacity: 0.8; }
.article-modal-excerpt {
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--white);
  opacity: 0.92;
  margin-bottom: 22px;
}
 .article-modal-body h2 {
  font-size: 1.05rem;
  margin: 24px 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
}
.article-modal-body p {
  color: var(--white);
  opacity: 0.92;
  line-height: 1.95;
  margin: 0 0 14px;
  font-size: 0.92rem;
}
.article-modal-body a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-modal-body a:hover {
  color: var(--gold);
}
.publish-panel,
.article-desk-panel {
  max-width: 1100px;
  margin: 0 auto 22px;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(212, 175, 55, 0.18);
  border-radius: 20px;
  padding: 26px;
}
.publish-panel-head,
.article-desk-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.publish-panel-head p,
.article-desk-head p {
  max-width: 760px;
  font-size: 0.74rem;
  line-height: 1.9;
  color: var(--slate);
}
.publish-form {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.publish-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.publish-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.publish-field label,
.publish-checkbox,
.publish-mini-label {
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
}
.publish-field input,
.publish-field textarea,
.publish-field select,
.article-desk-toolbar input,
.article-desk-toolbar select {
  width: 100%;
  border: 1px solid rgba(212, 175, 55, 0.2);
  background: rgba(255,255,255,0.02);
  color: var(--white);
  border-radius: 12px;
  padding: 14px 16px;
  font-size: 0.92rem;
  font-family: inherit;
}
.publish-field select option,
.article-desk-toolbar select option {
  color: #111827;
}
.publish-field input::placeholder,
.publish-field textarea::placeholder,
.article-desk-toolbar input::placeholder {
  color: rgba(255,255,255,0.45);
}
.publish-field textarea {
  resize: vertical;
}
.publish-checkbox {
  display: flex;
  align-items: center;
  gap: 10px;
}
.publish-checkbox input {
  width: 18px;
  height: 18px;
}
.publish-actions,
.article-desk-actions,
.schedule-presets {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.btn-outline,
.btn-quiet,
.btn-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.9rem 1.4rem;
  border-radius: 999px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  background: transparent;
  color: var(--white);
  cursor: pointer;
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-family: inherit;
}
.btn-quiet {
  padding: 0.8rem 1.1rem;
}
.btn-chip {
  padding: 0.72rem 1rem;
  font-size: 0.64rem;
  letter-spacing: 0.12em;
}
.btn-outline:hover,
.btn-quiet:hover,
.btn-chip:hover {
  border-color: var(--gold-light);
  color: var(--gold-light);
}
.publish-status,
.article-desk-status,
.publish-helper-text {
  min-height: 24px;
  font-size: 0.78rem;
  color: var(--slate);
  line-height: 1.8;
}
.publish-helper-text {
  min-height: 0;
}
.publish-mode-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(197,165,90,0.12);
  border: 1px solid rgba(197,165,90,0.18);
  color: var(--gold-light);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.quick-slot-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.article-desk-toolbar {
  display: grid;
  grid-template-columns: 1.1fr 0.7fr auto;
  gap: 12px;
  margin-bottom: 18px;
}
.article-desk-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}
.article-desk-stat {
  border: 1px solid rgba(212, 175, 55, 0.14);
  border-radius: 16px;
  padding: 16px 18px;
  background: rgba(255,255,255,0.02);
}
.article-desk-stat strong {
  display: block;
  font-family: 'Cinzel', serif;
  font-size: 1.55rem;
  color: var(--white);
  margin-bottom: 8px;
}
.article-desk-stat span {
  font-size: 0.7rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--slate);
}
.article-desk-empty {
  border: 1px dashed rgba(212,175,55,0.18);
  border-radius: 18px;
  padding: 28px 24px;
  color: var(--slate);
  text-align: center;
  line-height: 1.9;
}
.schedule-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 20px;
}
.schedule-card {
  border: 1px solid rgba(212,175,55,0.16);
  border-radius: 16px;
  background: rgba(255,255,255,0.02);
  padding: 18px 18px 16px;
}
.schedule-card h3 {
  font-family: 'Cinzel', serif;
  font-size: 0.95rem;
  color: var(--white);
  letter-spacing: 0.04em;
  margin-bottom: 10px;
}
.schedule-card p {
  font-size: 0.76rem;
  line-height: 1.8;
  color: var(--slate);
  margin-bottom: 8px;
}
.status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.08);
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.status-pill.published {
  background: rgba(73, 168, 107, 0.12);
  border-color: rgba(73, 168, 107, 0.22);
  color: #b6f1c6;
}
.status-pill.scheduled {
  background: rgba(197,165,90,0.12);
  border-color: rgba(197,165,90,0.22);
  color: var(--gold-light);
}
.status-pill.draft {
  background: rgba(142, 163, 184, 0.12);
  border-color: rgba(142, 163, 184, 0.22);
  color: #d7e3ee;
}
.article-desk-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(212,175,55,0.14);
  border-radius: 18px;
}
.article-desk-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 880px;
}
.article-desk-table th,
.article-desk-table td {
  padding: 14px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  text-align: left;
  vertical-align: top;
}
.article-desk-table th {
  font-size: 0.66rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
  background: rgba(255,255,255,0.02);
}
.article-desk-table td {
  font-size: 0.78rem;
  line-height: 1.7;
  color: rgba(255,255,255,0.88);
}
.article-desk-table tr:last-child td {
  border-bottom: none;
}
.article-desk-row-title {
  font-weight: 600;
  color: var(--white);
  margin-bottom: 4px;
}
.article-desk-row-meta {
  font-size: 0.7rem;
  color: var(--slate);
}
.article-row-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.article-row-link {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-row-link:hover {
  color: var(--gold);
}
.pcc-extra-card { display: none; }
@media (max-width: 980px) {
  .article-desk-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .schedule-list {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 768px) {
  .publish-grid,
  .article-desk-toolbar,
  .article-desk-summary {
    grid-template-columns: 1fr;
  }
  .publish-panel,
  .article-desk-panel { padding: 18px; }
  .article-modal { padding: 12px; }
  .article-modal-content { padding: 26px 18px 24px; }
  .publish-actions,
  .article-desk-actions,
  .quick-slot-grid {
    flex-direction: column;
    align-items: stretch;
  }
  .btn-outline,
  .btn-quiet,
  .btn-chip {
    width: 100%;
  }
}



/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: sectors.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  html { scroll-behavior: smooth; }
  body { background: var(--navy); color: var(--white); font-family: 'Montserrat', sans-serif; overflow-x: hidden; }

  /* PAGE TRANSITIONS */
  .page { display: none; opacity: 0; transition: opacity 0.5s ease; }
  .page.active { display: block; }
  .page.visible { opacity: 1; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0; transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
  }
  .reveal.revealed { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }
  .reveal-delay-6 { transition-delay: 0.6s; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 28px 60px; background: transparent; transition: all 0.4s;
  }
  nav.scrolled { background: rgba(25,40,66,0.96); backdrop-filter: blur(10px); padding: 18px 60px; }
  .nav-logo { display: flex; align-items: center; gap: 14px; cursor: pointer; -webkit-tap-highlight-color: rgba(197,165,90,0.2); }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px;
    display: inline-block; white-space: nowrap; overflow: hidden; max-width: 0; opacity: 0; transform: translateX(-10px);
    animation: navBrandUnscroll 1.05s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
  }
  @keyframes navBrandUnscroll {
    0% { max-width: 0; opacity: 0; transform: translateX(-10px); }
    35% { opacity: 1; }
    100% { max-width: 420px; opacity: 1; transform: translateX(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-brand { animation: none; max-width: 420px; opacity: 1; transform: none; }
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px;
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
    transition: color 0.3s; cursor: pointer; position: relative;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: -4px; left: 0;
    width: 0; height: 1px; background: var(--gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active { color: var(--gold); }
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent; border: 1.5px solid var(--gold); color: var(--gold);
    padding: 10px 24px; font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 600; transition: all 0.3s;
  }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .nav-cta.active { background: var(--gold); color: var(--navy); }

  /* MOBILE NAV */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer;
    background: none; border: none; padding: 8px; -webkit-appearance: none; touch-action: manipulation;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(25,40,66,0.98); z-index: 99;
    flex-direction: column; align-items: center; justify-content: center; gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.4rem;
    letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.6);
    transition: color 0.3s; cursor: pointer;
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  /* HERO */
  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
  }
  .hero-watermark {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%); opacity: 0.04;
  }
  .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    z-index: 0;
    pointer-events: none;
  }
  .hero-content { position: relative; z-index: 2; animation: fadeIn 1.2s ease; }
  .hero-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 28px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .hero-content .overline::before, .hero-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif; font-size: 3.8rem; font-weight: 400;
    letter-spacing: 6px; color: var(--white); line-height: 1.2;
    text-transform: uppercase; margin-bottom: 24px;
  }
  .hero-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .hero-desc {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 600px; margin: 0 auto 40px; font-weight: 300;
  }
  .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

  .toolkit-toggle-btn.is-open {
    background: rgba(197,165,90,0.1);
    border-color: var(--gold);
    color: var(--gold-light);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16), inset 0 0 0 1px rgba(217,197,128,0.12);
  }
  .insight-card:focus-within,
  .insight-card.is-active {
    transform: translateY(-4px);
    border-left-color: var(--gold);
    box-shadow: 0 18px 36px rgba(0,0,0,0.2), inset 0 0 0 1px rgba(217,197,128,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.012));
  }
  .insight-card:focus-within .read-more,
  .insight-card.is-active .read-more,
  .insight-card:focus-within .insight-toggle,
  .insight-card.is-active .insight-toggle {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .tk-pill-btn.active,
  .tk-opt.tk-nf-active {
    box-shadow: 0 10px 24px rgba(0,0,0,0.14), inset 0 0 0 1px rgba(217,197,128,0.08);
  }
  .btn-gold {
    background: var(--gold); color: var(--navy); padding: 16px 36px; border: none;
    font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 700; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .btn-ghost {
    background: transparent; border: 1px solid rgba(255,255,255,0.2); color: var(--white);
    padding: 16px 36px; font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 400; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  /* DIVIDER */
  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }

  /* SECTION HEADS */
  .section-head { margin-bottom: 60px; }
  .section-head .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    color: var(--white); letter-spacing: 3px; margin-top: 10px; text-transform: uppercase;
  }

  /* SERVICES */
  .services {
    padding: 100px 80px; background: var(--navy-mid); position: relative;
  }
  .services::before {
    content: ''; position: absolute; top: 0; left: 60px; bottom: 0;
    width: 1px; background: linear-gradient(180deg, transparent, rgba(197,165,90,0.15), transparent);
  }
  .service-rows { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1100px; margin: 0 auto; }
  .svc {
    padding: 44px 40px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative;
  }
  .svc::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 2px; background: var(--gold); transition: width 0.5s;
  }
  .svc:hover::after { width: 100%; }
  .svc:hover { background: rgba(197,165,90,0.018); }
  .svc .num { font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 300; color: rgba(197,165,90,0.3); margin-bottom: 14px; }
  .svc h3 { font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500; color: var(--white); letter-spacing: 2px; margin-bottom: 10px; }
  .svc p { font-size: 0.72rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* TRAINING HIGHLIGHT */
  .training-highlight {
    padding: 80px; background: var(--navy);
    text-align: center;
  }
  .training-inner {
    max-width: 800px; margin: 0 auto;
    padding: 50px 60px;
    border: 1px solid rgba(197,165,90,0.15);
    position: relative;
  }
  .training-inner::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 60px; height: 3px; background: var(--gold);
  }
  .training-inner .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-inner h3 {
    font-family: 'Cinzel', serif; font-size: 1.3rem; font-weight: 400;
    color: var(--white); letter-spacing: 2px; margin-bottom: 14px; text-transform: uppercase;
  }
  .training-inner p {
    font-size: 0.75rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 28px;
  }

  /* HOW WE WORK */
  .how-we-work {
    padding: 100px 80px; background: var(--navy);
  }
  .process-steps {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
    max-width: 1100px; margin: 0 auto; position: relative;
  }
  .process-steps::before {
    content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
    height: 1px; background: rgba(197,165,90,0.25);
  }
  .process-step {
    text-align: center; padding: 0 16px; position: relative;
  }
  .process-step .step-num {
    width: 56px; height: 56px; border: 2px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-family: 'Cinzel', serif; font-size: 1.1rem;
    font-weight: 600; color: var(--gold); background: var(--navy);
    position: relative; z-index: 2;
  }
  .process-step h4 {
    font-family: 'Cinzel', serif; font-size: 0.7rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 10px;
  }
  .process-step p {
    font-size: 0.65rem; line-height: 1.7; color: var(--slate); font-weight: 300;
  }

  /* WHY SECTION */
  .why {
    padding: 100px 80px; background: var(--navy);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center;
  }
  .why-left h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .why-left p { font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 32px; }
  .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .why-card {
    background: var(--navy-mid); padding: 32px 28px;
    border-top: 2px solid var(--gold); transition: transform 0.3s;
  }
  .why-card:hover { transform: translateY(-4px); }
  .why-card .icon { font-size: 1.6rem; margin-bottom: 12px; color: var(--gold); }
  .why-card h4 {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); margin-bottom: 8px; text-transform: uppercase;
  }
  .why-card p { font-size: 0.68rem; line-height: 1.7; color: var(--slate); font-weight: 300; }

  /* QUOTE */
  .quote-section {
    padding: 80px; background: var(--gold); text-align: center; position: relative;
  }
  .quote-section blockquote {
    font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; font-weight: 400;
    font-style: italic; color: var(--navy); max-width: 700px;
    margin: 0 auto; line-height: 1.5;
  }
  .quote-section .attr {
    font-family: 'Montserrat', sans-serif; font-size: 0.65rem; letter-spacing: 3px;
    text-transform: uppercase; color: var(--navy); font-weight: 700; margin-top: 24px;
  }

  /* CTA DARK */
  .cta-dark {
    padding: 100px 80px; text-align: center; background: var(--navy);
  }
  .cta-dark h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 4px; color: var(--white); text-transform: uppercase; margin-bottom: 14px;
  }
  .cta-dark p { font-size: 0.75rem; color: var(--slate); margin-bottom: 36px; font-weight: 300; }

  /* FOOTER */
  footer {
    background: #192842; padding: 50px 80px 30px;
    border-top: 1px solid rgba(197,165,90,0.1);
  }
  .footer-main {
    display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 60px;
    margin-bottom: 40px;
  }
  .footer-brand { display: flex; align-items: flex-start; gap: 16px; }
  .footer-brand svg { width: 28px; height: 34px; flex-shrink: 0; margin-top: 3px; }
  .footer-brand-text span {
    font-family: 'Cinzel', serif; font-size: 0.8rem; letter-spacing: 3px;
    color: rgba(255,255,255,0.5); display: inline-block; margin-bottom: 16px;
    line-height: 1.4; padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }
  .footer-brand-text p {
    font-size: 0.62rem; line-height: 1.9; color: rgba(255,255,255,0.3); font-weight: 300;
    max-width: 340px;
  }
  .footer-col h5 {
    font-family: 'Cinzel', serif; font-size: 0.6rem; font-weight: 600;
    letter-spacing: 3px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; padding-bottom: 12px;
    border-bottom: 1px solid rgba(197,165,90,0.3);
    display: inline-block;
  }
  .footer-col p, .footer-col a {
    font-size: 0.62rem; line-height: 2; color: rgba(255,255,255,0.35);
    font-weight: 300; text-decoration: none; display: block;
  }
  .footer-col a:hover { color: var(--gold); }
  .footer-social {
    display: flex; gap: 16px; margin-top: 14px;
  }
  .footer-social a {
    width: 32px; height: 32px; border: 1px solid rgba(197,165,90,0.2);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.65rem; color: rgba(255,255,255,0.4); transition: all 0.3s;
  }
  .footer-social a:hover { border-color: var(--gold); color: var(--gold); }
  .footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.08); padding-top: 24px;
    flex-wrap: wrap; gap: 12px;
  }
  .footer-bottom p {
    font-size: 0.55rem; color: rgba(255,255,255,0.2); letter-spacing: 1px;
  }

  /* ===== ABOUT PAGE ===== */
  .about-hero {
    min-height: 60vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
    padding: 140px 80px 80px;
  }
  .about-hero .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .about-content { position: relative; z-index: 2; }
  .about-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .about-content .overline::before, .about-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .about-content h1 {
    font-family: 'Cinzel', serif; font-size: 3rem; font-weight: 400;
    letter-spacing: 5px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .about-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .about-content p {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 650px; margin: 0 auto; font-weight: 300;
  }

  .about-story {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
  }
  .about-story h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 24px;
  }
  .about-story p {
    font-size: 0.78rem; line-height: 2; color: var(--slate); font-weight: 300; margin-bottom: 20px;
  }

  .stats-row {
    padding: 80px; background: var(--navy);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; text-align: center;
  }
  .stat-item { padding: 20px; }
  .stat-item .num {
    font-family: 'Cinzel', serif; font-size: 2.8rem; font-weight: 400; color: var(--gold); margin-bottom: 8px;
  }
  .stat-item .label {
    font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase; color: var(--slate); font-weight: 400;
  }

  .values-section { padding: 100px 80px; background: var(--navy-mid); }
  .values-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .value-item {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s; text-align: center;
  }
  .value-item:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .value-item .icon { font-size: 1.8rem; margin-bottom: 16px; color: var(--gold); }
  .value-item h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 12px;
  }
  .value-item p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== SECTORS PAGE ===== */
  .sectors-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1200px; margin: 0 auto;
  }
  .sector-card {
    padding: 50px 36px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative; overflow: hidden;
  }
  .sector-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0;
    height: 3px; background: var(--gold); transform: scaleX(0);
    transform-origin: left; transition: transform 0.5s;
  }
  .sector-card:hover::before { transform: scaleX(1); }
  .sector-card:hover { background: rgba(197,165,90,0.018); }
  .sector-card .sector-icon { font-size: 2rem; margin-bottom: 20px; color: var(--gold); opacity: 0.8; }
  .sector-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); margin-bottom: 12px; text-transform: uppercase;
  }
  .sector-card p { font-size: 0.71rem; line-height: 1.85; color: var(--slate); font-weight: 300; }
  .sector-intro-grid {
    max-width: 1120px; margin: 0 auto 62px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 42px; align-items: stretch;
  }
  .sector-lead,
  .sector-assurance-panel {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: 100%;
    padding: 36px;
    border: 1px solid rgba(197,165,90,0.14);
    border-left: 2px solid rgba(197,165,90,0.35);
    background: rgba(255,255,255,0.02);
  }
  .sector-lead .over {
    font-size: 0.52rem; letter-spacing: 5px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 18px;
  }
  .sector-lead h3,
  .sector-assurance-panel h3 {
    font-family: 'Cinzel', serif; font-size: 1.02rem; line-height: 1.55;
    letter-spacing: 2px; text-transform: uppercase; color: var(--white); font-weight: 500;
    margin-bottom: 18px;
  }
  .sector-lead p,
  .sector-assurance-panel p {
    color: var(--slate); font-size: 0.75rem; line-height: 1.9; font-weight: 300;
  }
  .sector-assurance-points {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px 22px;
    margin-top: auto; padding-top: 30px;
  }
  .sector-assurance-points span {
    display: block; padding: 12px 0 0;
    border-top: 1px solid rgba(197,165,90,0.22);
    color: rgba(255,255,255,0.66);
    font-size: 0.64rem; line-height: 1.65; letter-spacing: 0.2px;
  }
  .sector-card {
    min-height: 100%;
    padding-top: 42px;
  }
  .sector-method {
    max-width: 1120px; margin: 68px auto 0;
    display: grid; grid-template-columns: 0.86fr 1.14fr; gap: 40px; align-items: stretch;
    border-top: 1px solid rgba(197,165,90,0.14);
    border-bottom: 1px solid rgba(197,165,90,0.14);
    padding: 42px 0;
  }
  .sector-method-copy .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 16px;
  }
  .sector-method-copy h3 {
    font-family: 'Cinzel', serif; font-size: 1.12rem; line-height: 1.55;
    letter-spacing: 2px; text-transform: uppercase; color: var(--white); font-weight: 500;
    margin-bottom: 16px;
  }
  .sector-method-copy p {
    color: var(--slate); font-size: 0.74rem; line-height: 1.9; font-weight: 300;
  }
  .sector-method-list {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px;
  }
  .sector-method-list span {
    display: block; padding: 16px 18px;
    background: rgba(25,40,66,0.34);
    border-left: 1px solid rgba(197,165,90,0.42);
    color: rgba(255,255,255,0.7);
    font-size: 0.68rem; line-height: 1.7; font-weight: 300;
  }

  /* ===== INSIGHTS PAGE ===== */
  .insights-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .insight-card {
    background: var(--navy-mid); padding: 40px 36px;
    border-left: 3px solid var(--gold); transition: all 0.4s;
    display:flex;
    flex-direction:column;
    min-height:100%;
  }
  .insight-card:hover { transform: translateY(-2px); }
  .insight-card .tag {
    font-size: 0.5rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.95rem; font-weight: 500;
    color: var(--white); letter-spacing: 1px; margin-bottom: 12px; line-height: 1.5;
  }
  .insight-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; margin-bottom: 16px; }
  .insight-card .read-more {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; text-decoration: none; cursor: pointer; transition: opacity 0.3s;
  }
  .insight-card .read-more:hover { opacity: 0.7; }
  .insights-grid, .insights-more { align-items:stretch; }

  .official-updates-section {
    padding-top: 64px !important;
  }
  .official-updates-section .section-head {
    max-width: 920px;
    margin: 0 auto 34px;
    padding-top: 6px;
  }
  .official-updates-section .section-head .over {
    display: block;
    margin-bottom: 22px;
  }
  .official-updates-section .section-head h2 {
    margin-bottom: 24px;
  }
  .official-updates-section .section-head p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
  .official-updates-section .insights-grid {
    align-items: stretch;
  }
  .official-updates-section .insight-card {
    min-height: 100%;
  }
  .official-meta {
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 10px;
    font-weight: 500;
  }
  .official-date {
    display: block;
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 16px;
    font-weight: 500;
  }
  .official-note {
    max-width: 860px;
    margin: 12px auto 0;
    font-size: 0.64rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.42);
    text-align: center;
  }

  .official-updates-status {
    max-width: 1000px;
    margin: 10px auto 26px;
    padding: 0 4px;
    font-size: 0.56rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
  }
  .official-updates-status strong {
    color: rgba(255,255,255,0.72);
    font-weight: 500;
  }

  /* ===== TRAINING PAGE ===== */
  .training-page-intro {
    padding: 100px 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .training-page-content {
    padding: 80px; background: var(--navy-mid);
  }
  .training-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;
    max-width: 1000px; margin: 0 auto;
  }
  .training-feature {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s;
  }
  .training-feature:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .training-feature .icon { font-size: 1.6rem; margin-bottom: 14px; color: var(--gold); }
  .training-feature h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 10px;
  }
  .training-feature p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== CONTACT PAGE ===== */
  .contact-section {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start;
  }
  .contact-info h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .contact-info p {
    font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 36px;
  }
  .accreditation-card {
    margin-top: 34px;
    padding-top: 12px;
    border-top: 1px solid rgba(197,165,90,0.14);
  }
  .accreditation-card .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 12px;
  }
  .portal-intro {
    font-size: 0.7rem;
    line-height: 1.8;
    color: var(--slate);
    font-weight: 300;
    margin: 0 0 18px;
    max-width: 560px;
  }
  .portal-links-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portal-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    padding: 18px 20px;
    border: 1px solid rgba(197,165,90,0.16);
    background: rgba(255,255,255,0.02);
    border-radius: 16px;
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  }
  .portal-link:hover {
    transform: translateY(-2px);
    border-color: rgba(197,165,90,0.34);
    background: rgba(197,165,90,0.04);
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  }
  .portal-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  .portal-link-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
  }
  .portal-logo {
    display: block;
    max-width: min(240px, 100%);
    width: auto;
    height: auto;
    max-height: 48px;
  }
  .portal-logo-bloom { max-height: 44px; }
  .portal-logo-constellia { max-height: 40px; }
  .portal-logo-delta { max-height: 64px; }
  .portal-caption {
    font-size: 0.56rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.52);
    font-weight: 500;
    text-align: center;
  }
  .contact-detail {
    display: flex; gap: 14px; margin-bottom: 24px; align-items: flex-start;
  }
  .contact-detail .cd-icon {
    width: 36px; height: 36px; border: 1px solid rgba(197,165,90,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.8rem; color: var(--gold); flex-shrink: 0;
  }
  .contact-detail .cd-text .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 4px;
  }
  .contact-detail .cd-text .cd-value {
    font-size: 0.75rem; color: rgba(255,255,255,0.7); font-weight: 300;
  }
  .contact-form {
    background: var(--navy); padding: 50px 44px; border: 1px solid rgba(197,165,90,0.1);
  }
  .contact-form h3 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 30px;
  }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
  .form-group { margin-bottom: 20px; }
  .form-group label {
    display: block; font-size: 0.55rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--slate); font-weight: 500; margin-bottom: 8px;
  }
  .form-group input, .form-group select, .form-group textarea {
    width: 100%; background: var(--navy-mid); border: 1px solid rgba(197,165,90,0.15);
    color: var(--white); padding: 14px 16px; font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem; font-weight: 300; outline: none; transition: border-color 0.3s;
  }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--gold); }
  .form-group textarea { min-height: 120px; resize: vertical; }
  .form-group select { cursor: pointer; appearance: none; }
  .form-group select option { background: var(--navy-mid); }
  .form-submit { display: flex; align-items: center; gap: 20px; margin-top: 10px; }
  .form-success {
    display: none; padding: 28px 24px; background: rgba(197,165,90,0.08);
    border: 1px solid rgba(197,165,90,0.4); border-top: 3px solid var(--gold); text-align: center; margin-top: 20px;
    border-radius: 4px;
  }
  .contact-form.submitted > *:not(.form-success) { display: none !important; }
  .contact-form.submitted .form-success { display: block; }
  .form-success.show { display: block; }
  .form-success p {
    font-family: 'Cinzel', serif; font-size: 1.02rem; color: var(--gold);
    letter-spacing: 2px; margin-bottom: 12px; text-transform: uppercase;
  }
  .form-success span {
    font-size: 0.78rem; color: rgba(255,255,255,0.82); font-weight: 300;
    display: block; margin-top: 0; line-height: 1.85;
  }

  /* ===== PRIVACY POLICY PAGE ===== */
  .policy-content {
    padding: 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .policy-updated {
    font-size: 0.65rem; letter-spacing: 2px; color: var(--gold);
    text-transform: uppercase; font-weight: 500; margin-bottom: 30px;
  }
  .policy-section { margin-bottom: 36px; }
  .policy-content h2 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 16px;
  }
  .policy-content h3 {
    font-size: 0.72rem; font-weight: 600; color: var(--gold);
    letter-spacing: 1px; margin: 16px 0 8px; text-transform: uppercase;
  }
  .policy-content p {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    margin-bottom: 14px;
  }
  .policy-content ul {
    list-style: none; padding: 0; margin-bottom: 14px;
  }
  .policy-content ul li {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    padding-left: 20px; position: relative;
  }
  .policy-content ul li::before {
    content: ''; position: absolute; left: 0; top: 12px;
    width: 6px; height: 1px; background: var(--gold);
  }
  .policy-content strong { color: var(--white); font-weight: 500; }

  @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

  /* ===== REFINED DIMENSIONAL EFFECTS ===== */
  #page-home .hero-content {
    perspective: none;
    transform-style: flat;
  }

  .svc,
  .feature-split-card,
  .why-card,
  .sector-card,
  .insight-card,
  .training-feature,
  .toolkit-paid-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .value-item,
  .process-step {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 14px 30px rgba(9,16,28,0.14);
    transition: box-shadow 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
  }
  .svc::before,
  .feature-split-card::before,
  .why-card::before,
  .sector-card::before,
  .insight-card::before,
  .training-feature::before,
  .toolkit-paid-card::before,
  .tk-portal-card::before,
  .tk-gloss-term::before,
  .tk-notice-card::before,
  .value-item::before,
  .process-step::before {
    content:'';
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
    opacity:0;
    pointer-events:none;
    transition: opacity 0.28s ease;
  }
  .svc:hover,
  .feature-split-card:hover,
  .why-card:hover,
  .sector-card:hover,
  .insight-card:hover,
  .training-feature:hover,
  .toolkit-paid-card:hover,
  .tk-portal-card:hover,
  .tk-gloss-term:hover,
  .tk-notice-card:hover,
  .value-item:hover,
  .process-step:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .svc:hover::before,
  .feature-split-card:hover::before,
  .why-card:hover::before,
  .sector-card:hover::before,
  .insight-card:hover::before,
  .training-feature:hover::before,
  .toolkit-paid-card:hover::before,
  .tk-portal-card:hover::before,
  .tk-gloss-term:hover::before,
  .tk-notice-card:hover::before,
  .value-item:hover::before,
  .process-step:hover::before {
    opacity: 1;
  }

  .feature-split-card,
  .toolkit-paid-card,
  .training-feature,
  .insight-card,
  .sector-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .svc,
  .process-step {
    background-image: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  }

  .process-step {
    border: 1px solid rgba(197,165,90,0.08);
    padding: 26px 18px 24px;
    text-align: center;
  }
  .process-step:hover {
    background: linear-gradient(180deg, rgba(197,165,90,0.06), rgba(255,255,255,0.01));
  }
  .process-step .step-num {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }
  .process-step:hover .step-num {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    border-color: rgba(217,197,128,0.85);
  }

  .stats-row .stat-item {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
    border: 1px solid rgba(197,165,90,0.1);
    box-shadow: 0 16px 30px rgba(8,14,24,0.16);
    transition: transform 0.32s ease, box-shadow 0.32s ease, border-color 0.32s ease;
  }
  .stats-row .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .stats-row .stat-item::after {
    content: '';
    position: absolute;
    left: 18%; right: 18%; bottom: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.8), transparent);
    opacity: 0.55;
  }

  .nav-cta,
  .contact-form .btn-gold {
    transform: translateZ(0);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  }
  .nav-cta:hover,
  .contact-form .btn-gold:hover {
    transform: translateY(-2px) scale(1.035);
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
  }

  .insight-card {
    border: 1px solid rgba(197,165,90,0.12);
    border-left-width: 2px;
  }
  .insight-card::after {
    content:'';
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg, rgba(197,165,90,0), rgba(197,165,90,0.75), rgba(197,165,90,0));
    opacity:0.35;
    transition: opacity 0.28s ease;
  }
  .insight-card:hover::after {
    opacity:0.9;
  }
  .insight-card:hover .read-more,
  .sector-card:hover h3,
  .training-feature:hover h4,
  .toolkit-paid-card:hover .toolkit-card-link {
    color: var(--gold-light);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc,
    .feature-split-card,
    .why-card,
    .sector-card,
    .insight-card,
    .training-feature,
    .toolkit-paid-card,
    .tk-portal-card,
    .tk-gloss-term,
    .tk-notice-card,
    .value-item,
    .process-step,
    .stats-row .stat-item,
    .nav-cta,
    .contact-form .btn-gold {
      transition: none !important;
      transform: none !important;
    }
    .svc::before,
    .feature-split-card::before,
    .why-card::before,
    .sector-card::before,
    .insight-card::before,
    .training-feature::before,
    .toolkit-paid-card::before,
    .tk-portal-card::before,
    .tk-gloss-term::before,
    .tk-notice-card::before,
    .value-item::before,
    .process-step::before,
    .insight-card::after {
      transition: none !important;
    }
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 1024px) {
    .hero-content h1 { font-size: 2.6rem; }
    .about-story { grid-template-columns: 1fr; gap: 40px; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .sector-intro-grid,
    .sector-method { grid-template-columns: 1fr; }
    .sector-method-list { grid-template-columns: repeat(2, 1fr); }
    .contact-section { grid-template-columns: 1fr; gap: 50px; }
    .why { grid-template-columns: 1fr; gap: 50px; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .process-steps::before { display: none; }
  }
  @media (max-width: 768px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger { display: flex; z-index: 101; }
    .hero { min-height: 100vh; padding: 0 24px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-desc { font-size: 0.72rem; }
    .hero-btns { flex-direction: column; align-items: center; gap: 12px; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; text-align: center; }
    .services, .why, .cta-dark, .about-hero, .about-story, .values-section, .contact-section, .training-page-content, .how-we-work { padding: 60px 24px; }
    .stats-row { padding: 60px 24px; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .quote-section { padding: 50px 24px; }
    .quote-section blockquote { font-size: 1.2rem; }
    .service-rows { grid-template-columns: 1fr; }
    .svc { padding: 32px 24px; }
    .svc h3 { font-size: 0.85rem; }
    .why-right { grid-template-columns: 1fr; }
    .values-grid { grid-template-columns: 1fr; }
    .sectors-grid { grid-template-columns: 1fr; }
    .sector-assurance-points,
    .sector-method-list { grid-template-columns: 1fr; }
    .sector-lead,
    .sector-assurance-panel { padding: 28px 22px; }
    .insights-grid { grid-template-columns: 1fr; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: 1fr; gap: 30px; }
    .process-step .step-num { width: 46px; height: 46px; font-size: 0.95rem; }
    .form-row { grid-template-columns: 1fr; }
    .contact-form { padding: 36px 24px; }

    .accreditation-card { margin-top: 28px; padding-top: 10px; }
    .portal-links-grid { gap: 12px; }
    .portal-link { min-height: 82px; padding: 16px; }
    .portal-logo-bloom { max-height: 38px; }
    .portal-logo-constellia { max-height: 34px; }
    .portal-logo-delta { max-height: 54px; }
    footer { padding: 30px 24px 20px; }
    .footer-main { grid-template-columns: 1fr; gap: 30px; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .about-hero { padding: 80px 24px 40px; min-height: auto; }
    .about-content h1 { font-size: 1.8rem; }
    .about-content p { font-size: 0.72rem; }
    .about-story h2 { font-size: 1.4rem; }
    .stat-item .num { font-size: 2rem; }
    .section-head h2 { font-size: 1.4rem; }
    .cta-dark h2 { font-size: 1.4rem; letter-spacing: 2px; }
    .why-left h2 { font-size: 1.5rem; }
    .policy-content { padding: 40px 24px; }
    .policy-section h2 { font-size: 0.9rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    
    /* -- TOOLKIT INLINE STYLE OVERRIDES ----------------------- */
    .how-we-work { padding: 60px 24px !important; }
    #tk-notices-out { grid-template-columns: 1fr !important; }
    #tk-gloss-out { grid-template-columns: 1fr !important; }
    #page-toolkit .svc { overflow-x: hidden; overflow: hidden; }
    .svc::after { display: none; }
    .svc:hover { background: none; }
    #page-toolkit [style*="max-width:1100px"],
    #page-toolkit [style*="max-width:1000px"],
    #page-toolkit [style*="max-width:800px"] { max-width: 100% !important; padding-left: 0; padding-right: 0; }

    /* -- TOOLKIT OVERFLOW FIX --------------------------------- */
    #toolkit, #toolkit * { max-width: 100%; box-sizing: border-box; }
    #toolkit .container { overflow-x: hidden; }
    /* -- TOOLKIT PAGE MOBILE ----------------------------------- */
    .tk-portal-card { padding: 16px 18px; width: 100%; box-sizing: border-box; }
    .tk-portal-card strong { font-size: 0.75rem; }
    .tk-portal-card span { font-size: 0.7rem; }
    .tk-opt { padding: 10px 16px; font-size: 0.62rem; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .tk-gloss-term { padding: 12px 14px; }
    .tk-gloss-term strong { font-size: 0.7rem; }
    .tk-gloss-term span { font-size: 0.68rem; }
    .tk-milestone { flex-wrap: wrap; gap: 6px; }
    .tk-milestone-label { font-size: 0.66rem; flex-basis: 100%; }
    .tk-milestone-date { font-size: 0.66rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    [class*="tk-"] > * { max-width: 100%; box-sizing: border-box; }
    .tk-tool-panel, .tk-section, .tk-grid, .tk-card-grid { grid-template-columns: 1fr !important; }
    .tk-opt-group { display: flex; flex-direction: column; gap: 8px; width: 100%; }
    .tk-result { padding: 20px 16px; font-size: 0.72rem; }
    .tk-input, .tk-select { width: 100%; max-width: 100%; font-size: 0.78rem; padding: 10px 12px; box-sizing: border-box; }
    .tk-btn { width: 100%; min-height: 44px; font-size: 0.65rem; }
    .tk-tabs { flex-wrap: wrap; gap: 6px; }
    .tk-tab { flex: 1 1 auto; text-align: center; font-size: 0.6rem; padding: 8px 10px; }

  }

  /* -- TOOLKIT PAGE ------------------------------------------ */
  .tk-opt {
    background: transparent; border: 1px solid rgba(197,165,90,0.25);
    color: rgba(255,255,255,0.7); padding: 8px 18px;
    font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    font-family: 'Montserrat', sans-serif; cursor: pointer;
    border-radius: 2px; transition: all 0.3s;
  }
  .tk-opt:hover { border-color: var(--gold); color: var(--gold); background: rgba(197,165,90,0.06); }
  .tk-portal-card {
    display: block; padding: 20px 24px;
    border: 1px solid rgba(197,165,90,0.1);
    text-decoration: none; color: inherit;
    transition: all 0.3s; border-radius: 2px;
  }
  .tk-portal-card:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.018); }
  .tk-portal-card strong { font-family: 'Cinzel', serif; font-size: 0.8rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 6px; }
  .tk-portal-card span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-gloss-term { padding: 14px 18px; border: 1px solid rgba(197,165,90,0.08); border-radius: 2px; }
  .tk-gloss-term strong { font-family: 'Cinzel', serif; font-size: 0.72rem; color: var(--gold); display: block; margin-bottom: 4px; letter-spacing: 1px; }
  .tk-gloss-term span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-milestone { display: flex; align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .tk-milestone:last-child { border-bottom: none; }
  .tk-milestone-label { font-size: 0.68rem; color: rgba(255,255,255,0.5); flex: 1; }
  .tk-milestone-date { font-size: 0.68rem; color: var(--gold); font-family: 'Cinzel', serif; white-space: nowrap; }
  .tk-milestone-flag { font-size: 0.58rem; color: #e07070; margin-left: 6px; }

  /* -- PA23 NOTICES ------------------------------------------ */
  .tk-nf-active { border-color: var(--gold) !important; color: var(--gold) !important; background: rgba(197,165,90,0.08) !important; }
  .tk-notice-card {
    padding: 20px 22px; border: 1px solid rgba(197,165,90,0.1);
    border-radius: 2px; transition: border-color 0.3s;
  }
  .tk-notice-card:hover { border-color: rgba(197,165,90,0.3); }
  .tk-notice-ref { font-family: 'Cinzel', serif; font-size: 0.75rem; color: var(--gold); letter-spacing: 2px; font-weight: 600; }
  .tk-notice-cat { font-size: 0.5rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); font-family: 'Montserrat', sans-serif; }
  .tk-notice-title { font-family: 'Cinzel', serif; font-size: 0.82rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 14px; }
  .tk-notice-section { margin-bottom: 10px; }
  .tk-notice-section:last-child { margin-bottom: 0; }
  .tk-notice-label { font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); font-weight: 500; display: block; margin-bottom: 3px; }
  .tk-notice-section p { font-size: 0.68rem; color: rgba(255,255,255,0.55); line-height: 1.75; margin: 0; }

  /* Global mobile overflow protection */
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }
  .btn-gold:focus-visible, .btn-ghost:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }

  @media (max-width: 768px) {

    
    /* -- NOTICE CARDS MOBILE FIX ------------------------------- */
    .tk-notice-card { padding: 16px 14px; box-sizing: border-box; word-break: break-word; }
    .tk-notice-cat { 
      font-size: 0.42rem; 
      letter-spacing: 1px; 
      white-space: normal; 
      text-align: right;
      max-width: 120px;
      line-height: 1.4;
    }
    .tk-notice-ref { flex-shrink: 0; }
    #tk-notices-out { 
      grid-template-columns: 1fr !important; 
      overflow: hidden;
    }
    #tk-notices-out .tk-notice-card { width: 100%; max-width: 100%; overflow: hidden; }

    /* -- SERVICES DECORATIVE LINE FIX ------------------------- */
    .services::before { display: none; }

    /* -- GRID LINES MOBILE FIX -------------------------------- */
    .hero-lines { display: none; }
    .about-hero { overflow: hidden; }
    .services { overflow: hidden; }
    #page-toolkit .services { isolation: isolate; }

  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible, .btn-gold:focus-visible, .btn-ghost:focus-visible,
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- GLOSSARY SCROLLBAR ------------------------------------ */
  #tk-gloss-out::-webkit-scrollbar {
    width: 4px;
  }
  #tk-gloss-out::-webkit-scrollbar-track {
    background: rgba(25,40,66,0.6);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb {
    background: rgba(197,165,90,0.4);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb:hover {
    background: rgba(197,165,90,0.7);
  }

  /* ===== EDITORIAL / TOOLKIT ENHANCEMENTS ===== */
  .svc-link, .training-link-inline {
    display:inline-block;
    margin-top:14px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    text-decoration:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .svc-link:hover, .training-link-inline:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }

  .toolkit-paid {
    padding:80px; padding:clamp(40px,5vw,80px) clamp(20px,5vw,80px);
    background: var(--navy);
  }
  .feature-split-grid {
    max-width:1100px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px;
    align-items:stretch;
  }
  .feature-split-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:48px 52px;
    background:rgba(255,255,255,0.012);
    min-height:430px;
    display:flex;
    flex-direction:column;
    text-align:center;
  }
  .feature-split-card h4 {
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:3px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:20px;
  }
  .feature-split-card p {
    font-size:0.84rem;
    line-height:1.95;
    color:var(--slate);
    font-weight:300;
    max-width:560px;
    margin:0 auto 26px;
  }
  .feature-split-actions {
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .feature-split-actions .btn-gold,
  .feature-split-actions .btn-ghost {
    width:min(360px,100%);
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:14px 24px;
  }
  .support-products-grid {
    max-width:1100px;
    margin:0 auto 36px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
  }
  .toolkit-paid-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:38px 42px 34px;
    background:rgba(255,255,255,0.012);
    display:flex;
    flex-direction:column;
    min-height:0;
  }
  .toolkit-paid-card h4 {
    font-family:'Cinzel',serif;
    font-size:0.98rem;
    font-weight:500;
    letter-spacing:2px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .toolkit-paid-card > p {
    font-size:0.79rem;
    line-height:1.85;
    color:var(--slate);
    font-weight:300;
    margin-bottom:24px;
  }
  .toolkit-card-footer {
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid rgba(197,165,90,0.12);
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .toolkit-card-label {
    display:block;
    margin-bottom:10px;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
  }
  .toolkit-card-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .toolkit-card-list li {
    position:relative;
    padding-left:16px;
    font-size:0.69rem;
    line-height:1.7;
    color:rgba(255,255,255,0.62);
  }
  .toolkit-card-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:1px;
    background:var(--gold);
    opacity:0.8;
  }
  .toolkit-card-fit {
    margin:0;
    font-size:0.68rem;
    line-height:1.75;
    color:rgba(255,255,255,0.52);
  }
  .toolkit-card-link {
    align-self:flex-start;
    background:none;
    border:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    color:var(--gold);
    padding:0 0 4px;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    text-decoration:none;
  }
  .toolkit-card-link:hover {
    color:var(--gold-light);
    border-bottom-color:var(--gold-light);
  }
  .toolkit-paid-actions {
    max-width:1100px;
    margin:0 auto;
    text-align:center;
  }
  .toolkit-paid-note {
    max-width:680px;
    margin:18px auto 0;
    font-size:0.65rem;
    line-height:1.8;
    color:rgba(255,255,255,0.28);
  }

  .toolkit-toggle-btn {
    background:transparent;
    border:1px solid rgba(197,165,90,0.28);
    color:var(--gold);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    cursor:pointer;
    border-radius:2px;
    margin-bottom:18px;
  }
  .toolkit-toggle-btn:hover { background:rgba(197,165,90,0.06); border-color:var(--gold); }

  .insight-card.featured {
    background:rgba(255,255,255,0.015);
    border-left-width:4px;
  }
  .featured-label {
    font-size:0.48rem;
    letter-spacing:4px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
    margin-bottom:12px;
  }
  .insight-meta {
    font-size:0.54rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.42);
    margin-bottom:14px;
  }
  .insight-body {
    display:none;
    margin-top:18px;
  }
  .insight-body p {
    margin-bottom:14px;
    font-size:0.72rem;
    line-height:1.9;
    color:var(--slate);
  }
  .insight-toggle {
    margin-top:auto;
    align-self:flex-start;
    background:none;
    border:none;
    color:var(--gold);
    padding:0;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .insight-toggle:hover { color:var(--gold-light); border-bottom-color:var(--gold-light); }
  .insights-more { display:none; }
  .insights-more-wrap { text-align:center; margin-top:36px; }
  .insight-card h3 { text-wrap:balance; }
  .article-readtime { display:inline-block; }

  @media (max-width: 768px) {
    .feature-split-grid, .support-products-grid { grid-template-columns:1fr; gap:18px; }
    .feature-split-card { padding:30px 24px; min-height:auto; }
    .feature-split-card h4 { font-size:0.92rem; }
    .feature-split-card p { font-size:0.78rem; }
    .feature-split-actions .btn-gold, .feature-split-actions .btn-ghost { width:100%; min-height:46px; }
    .toolkit-paid-card { padding:28px 24px; min-height:auto; }
    .toolkit-paid-card h4 { font-size:0.86rem; }
    .toolkit-paid-card > p { font-size:0.76rem; }
    .toolkit-card-footer { padding-top:18px; gap:14px; }
    .toolkit-card-list li { font-size:0.68rem; }
    .toolkit-card-fit { font-size:0.67rem; }
    .toolkit-card-link { font-size:0.54rem; letter-spacing:2.2px; }
    .svc-link, .training-link-inline, .insight-toggle { font-size:0.54rem; letter-spacing:2.2px; }
  }

  /* ===== PCC TOOLKIT CALCULATORS ===== */
  .tk-calc-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:760px;
    margin-bottom:1.35rem;
    align-items:end;
  }
  .tk-calc-field label {
    display:block;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:8px;
    font-family:'Cinzel',serif;
  }
  .tk-calc-field input,
  .tk-calc-field select {
    width:100%;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(197,165,90,0.2);
    color:var(--white);
    padding:10px 14px;
    font-family:'Montserrat',sans-serif;
    font-size:0.75rem;
    border-radius:2px;
    box-sizing:border-box;
  }
  .tk-calc-field input::placeholder { color:rgba(255,255,255,0.28); }
  .tk-calc-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:1rem;
  }
  .tk-calc-btn {
    background:var(--gold);
    color:var(--navy);
    border:none;
    padding:10px 24px;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    cursor:pointer;
    white-space:nowrap;
    border-radius:2px;
  }
  .tk-calc-btn-secondary {
    background:transparent;
    color:var(--gold);
    border:1px solid rgba(197,165,90,0.3);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-radius:2px;
  }
  .tk-calc-note {
    font-size:0.62rem;
    color:rgba(255,255,255,0.38);
    line-height:1.75;
    max-width:760px;
    margin-top:0.85rem;
  }
  .tk-calc-note strong {
    color:rgba(255,255,255,0.62);
    font-weight:600;
  }
  .tk-calc-out {
    display:none;
    max-width:900px;
    background:rgba(0,0,0,0.2);
    border:1px solid rgba(197,165,90,0.15);
    padding:1.5rem;
    border-radius:2px;
    color:rgba(255,255,255,0.72);
    margin-top:0;
  }
  .tk-tool-copy {
    max-width:760px;
    margin-bottom:1.5rem;
  }
  .tk-tool-copy p,
  .tk-tool-copy .tk-calc-note {
    margin-left:0;
    margin-right:0;
  }
  .tk-cta {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(255,255,255,0.06);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .tk-cta-text {
    margin:0;
    font-size:0.68rem;
    line-height:1.8;
    color:rgba(255,255,255,0.6);
    flex:1 1 320px;
  }
  .tk-cta-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 18px;
    border:1px solid rgba(197,165,90,0.3);
    color:var(--gold);
    text-decoration:none;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    border-radius:2px;
    transition:border-color .25s ease, background .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .tk-cta-btn:hover {
    border-color:var(--gold);
    background:rgba(197,165,90,0.08);
  }
  .tk-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:1rem;
  }
  .tk-summary-item {
    border:1px solid rgba(197,165,90,0.12);
    background:rgba(255,255,255,0.02);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-summary-item span {
    display:block;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:8px;
  }
  .tk-summary-item strong {
    display:block;
    font-family:'Cinzel',serif;
    color:var(--gold);
    font-size:0.95rem;
    letter-spacing:1px;
    font-weight:500;
  }
  .tk-standstill-days {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:1rem;
  }
  .tk-standstill-day {
    border:1px solid rgba(197,165,90,0.1);
    background:rgba(255,255,255,0.015);
    padding:12px 14px;
  }
  .tk-standstill-day span {
    display:block;
    font-size:0.5rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:5px;
  }
  .tk-standstill-day strong {
    display:block;
    font-size:0.72rem;
    color:var(--white);
    font-weight:500;
  }
  .tk-vat-breakdown {
    margin-top:0.6rem;
    padding-top:0.9rem;
    border-top:1px solid rgba(255,255,255,0.06);
    font-size:0.68rem;
    color:rgba(255,255,255,0.56);
    line-height:1.9;
  }
  .tk-vat-breakdown strong { color:var(--gold); font-weight:600; }
  .tk-toggle-group {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
  }
  .tk-toggle-btn {
    appearance:none;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.03);
    color:var(--white);
    min-height:72px;
    padding:0.9rem 1rem;
    font-size:0.72rem;
    line-height:1.55;
    letter-spacing:0.4px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    flex:1 1 180px;
    text-align:left;
  }
  .tk-toggle-btn:hover,
  .tk-toggle-btn:focus-visible {
    border-color:rgba(197,165,90,0.45);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-toggle-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.14);
    color:var(--gold);
    box-shadow:0 12px 28px rgba(0,0,0,0.16);
  }
  .tk-toggle-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.82rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.18rem;
    color:inherit;
  }
  .tk-toggle-btn span {
    display:block;
    font-size:0.64rem;
    line-height:1.7;
    color:inherit;
    opacity:0.9;
  }

  .tk-vat-grid {
    display:grid;
    grid-template-columns:minmax(0, 760px);
    gap:16px;
    max-width:760px;
    align-items:start;
    margin-bottom:1.35rem;
  }
  .tk-vat-field-wide {
    grid-column:1 / -1;
  }
  .tk-pill-group {
    display:grid;
    gap:12px;
    width:100%;
  }
  .tk-pill-group-mode {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-group-rates {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-btn {
    appearance:none;
    border:1px solid rgba(197,165,90,0.18);
    background:rgba(255,255,255,0.03);
    color:rgba(255,255,255,0.78);
    min-height:84px;
    padding:1rem 1rem 0.95rem;
    font-size:0.68rem;
    line-height:1.35;
    letter-spacing:0.5px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
    text-align:left;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  .tk-pill-btn:hover,
  .tk-pill-btn:focus-visible {
    border-color:rgba(197,165,90,0.42);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-pill-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.12);
    color:var(--gold);
  }
  .tk-pill-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.76rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.16rem;
    color:inherit;
  }
  .tk-pill-btn span {
    display:block;
    font-size:0.58rem;
    line-height:1.5;
    color:inherit;
    opacity:0.92;
  }
  .tk-vat-custom-wrap {
    max-width:260px;
  }
  .tk-cycle-layout {
    display:grid;
    grid-template-columns:minmax(360px, 520px) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    max-width:1100px;
  }
  .tk-cycle-wheel-wrap {
    position:relative;
    width:min(100%, 520px);
    aspect-ratio:1 / 1;
    margin:0 auto;
  }
  .tk-cycle-wheel {
    width:100%;
    height:100%;
    display:block;
    overflow:visible;
    filter:drop-shadow(0 18px 34px rgba(0,0,0,0.2));
  }
  .tk-cycle-stage {
    transition: transform .22s ease, filter .22s ease;
  }
  .tk-cycle-stage:hover,
  .tk-cycle-stage:focus-within {
    transform: translate(var(--tk-shift-x, 0px), var(--tk-shift-y, 0px));
    filter: drop-shadow(0 10px 14px rgba(0,0,0,0.18));
  }
  .tk-cycle-stage.is-active {
    transform: translate(calc(var(--tk-shift-x, 0px) * 0.72), calc(var(--tk-shift-y, 0px) * 0.72));
    filter: drop-shadow(0 12px 16px rgba(0,0,0,0.2));
  }
  .tk-cycle-segment {
    fill:#102648;
    stroke:rgba(230,232,237,0.88);
    stroke-width:2.4;
    cursor:pointer;
    transition:fill .22s ease, stroke .22s ease, opacity .22s ease;
    outline:none !important;
    -webkit-tap-highlight-color:transparent;
  }
  .tk-cycle-stage:hover .tk-cycle-segment,
  .tk-cycle-stage:focus-within .tk-cycle-segment {
    fill:#17345f;
    stroke:rgba(255,255,255,0.95);
  }
  .tk-cycle-stage.is-active:hover .tk-cycle-segment,
  .tk-cycle-stage.is-active:focus-within .tk-cycle-segment,
  .tk-cycle-segment.active {
    fill:var(--gold);
    stroke:rgba(217,197,128,0.95);
  }
  .tk-cycle-segment:focus,
  .tk-cycle-segment:focus-visible {
    outline:none !important;
  }
  .tk-cycle-stage-number {
    fill:var(--white);
    font-family:'Montserrat',sans-serif;
    font-size:20px;
    font-weight:800;
    text-anchor:middle;
    dominant-baseline:middle;
    pointer-events:none;
    transition: fill .22s ease, transform .22s ease;
    paint-order: stroke;
    stroke: rgba(10,20,38,0.18);
    stroke-width: 0.7px;
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage:hover .tk-cycle-stage-number {
    transform: translateY(-1px);
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage-number.active,
  .tk-cycle-stage.is-active:hover .tk-cycle-stage-number {
    fill:var(--white);
    stroke: rgba(15,27,45,0.45);
  }
  .tk-cycle-center {
    position:absolute;
    inset:50% auto auto 50%;
    width:46%;
    aspect-ratio:1 / 1;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    background:radial-gradient(circle at 35% 30%, rgba(31,69,121,0.98), rgba(10,30,59,0.98));
    color:var(--white);
    box-shadow:0 0 0 10px rgba(197,165,90,0.18), inset 0 0 0 1px rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.18);
    padding:28px;
  }
  .tk-cycle-center::after {
    content:'';
    position:absolute;
    inset:12px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.06);
    pointer-events:none;
  }
  .tk-cycle-center span {
    display:block;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(197,165,90,0.92);
    margin-bottom:0.5rem;
  }
  .tk-cycle-center strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:1.06rem;
    line-height:1.4;
    letter-spacing:1px;
    font-weight:600;
    color:#f7f7f3;
  }
  .tk-cycle-center small {
    display:block;
    margin-top:0.7rem;
    font-size:0.72rem;
    line-height:1.6;
    color:rgba(255,255,255,0.72);
    max-width:190px;
  }
  .tk-cycle-panel {
    max-width:560px;
    background:linear-gradient(180deg, rgba(8,22,44,0.42), rgba(8,22,44,0.28));
    border:1px solid rgba(197,165,90,0.18);
    padding:1.6rem 1.65rem;
    border-radius:6px;
    min-height:420px;
    box-shadow:0 20px 36px rgba(5,11,21,0.14);
  }
  .tk-cycle-panel-head {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-bottom:0.95rem;
  }
  .tk-cycle-panel-tag {
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
  }
  .tk-cycle-panel h4 {
    margin:0;
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:1px;
    color:var(--white);
  }
  .tk-cycle-panel p {
    margin:0 0 1rem;
    font-size:0.7rem;
    line-height:1.9;
    color:rgba(255,255,255,0.66);
  }
  .tk-cycle-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .tk-cycle-detail-box {
    border:1px solid rgba(197,165,90,0.14);
    background:rgba(255,255,255,0.025);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-cycle-detail-box span {
    display:block;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.4);
    margin-bottom:8px;
  }
  .tk-cycle-detail-box ul {
    margin:0;
    padding-left:1.1rem;
    color:rgba(255,255,255,0.66);
    font-size:0.68rem;
    line-height:1.8;
  }
  @media (max-width: 900px) {
    .tk-pill-group-rates {
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tk-cycle-layout {
      grid-template-columns:1fr;
    }
    .tk-cycle-panel {
      min-height:auto;
    }
  }
  @media (max-width: 768px) {
    .tk-vat-grid { max-width:none; }
    .tk-pill-group-mode,
    .tk-pill-group-rates,
    .tk-cycle-detail-grid {
      grid-template-columns:1fr;
    }
    .tk-cycle-center {
      width:52%;
      padding:22px;
    }
    .tk-cycle-center strong {
      font-size:0.88rem;
    }
    .tk-cycle-center small {
      font-size:0.64rem;
      max-width:140px;
    }
    .tk-cycle-stage-number {
      font-size:22px;
    }
  }

  @media (max-width: 768px) {
    .tk-calc-grid { grid-template-columns:1fr; gap:14px; }
    .tk-summary-grid { grid-template-columns:1fr; }
    .tk-calc-actions { flex-direction:column; align-items:stretch; }
    .tk-calc-btn, .tk-calc-btn-secondary { width:100%; }
    .tk-calc-out { padding:1.2rem; }
    .tk-cta { flex-direction:column; align-items:stretch; }
    .tk-cta-btn { width:100%; }
    .tk-toggle-btn { flex:1 1 100%; min-height:auto; }
  }

/* ===== PCC DYNAMIC ARTICLES ===== */
.article-modal {
  position: fixed;
  inset: 0;
  background: rgba(3, 10, 24, 0.82);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}
.article-modal.open { display: flex; }
.article-modal-dialog {
  width: min(920px, 100%);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, rgba(10,24,52,0.98), rgba(6,15,33,0.98));
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
  position: relative;
}
.article-modal-content {
  padding: 34px 30px 36px;
}
.article-modal-close {
  position: sticky;
  top: 16px;
  margin-left: calc(100% - 56px);
  width: 40px;
  height: 40px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.article-modal-close:hover { opacity: 0.8; }
.article-modal-excerpt {
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--white);
  opacity: 0.92;
  margin-bottom: 22px;
}
 .article-modal-body h2 {
  font-size: 1.05rem;
  margin: 24px 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
}
.article-modal-body p {
  color: var(--white);
  opacity: 0.92;
  line-height: 1.95;
  margin: 0 0 14px;
  font-size: 0.92rem;
}
.article-modal-body a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-modal-body a:hover {
  color: var(--gold);
}
@media (max-width: 768px) {
  .article-modal { padding: 12px; }
  .article-modal-content { padding: 26px 18px 24px; }
  .quick-slot-grid {
    flex-direction: column;
    align-items: stretch;
  }
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: supplier-support.html style block 1 ===== */
:root{--navy:#192842;--navy-mid:#253a59;--gold:#c5a55a;--gold-light:#d9c580;--white:#fff;--slate:#a0b0c0}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--navy);color:var(--white);font-family:Montserrat,sans-serif;overflow-x:hidden}a,button{-webkit-tap-highlight-color:rgba(197,165,90,.2);touch-action:manipulation}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:28px 60px;background:transparent;transition:all .4s}nav.scrolled{background:rgba(25,40,66,.96);backdrop-filter:blur(10px);padding:18px 60px;border-bottom:1px solid rgba(197,165,90,.08)}.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none}.nav-logo svg{width:32px;height:40px}.nav-brand{font-family:Cinzel,serif;font-size:.75rem;font-weight:600;color:var(--white);letter-spacing:3px;white-space:nowrap}.nav-links{display:flex;gap:28px;align-items:center}.nav-links a{text-decoration:none;font-size:.65rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);transition:color .3s;position:relative}.nav-links a:after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}.nav-links a:hover,.nav-links a.active{color:var(--gold)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-cta{background:transparent;border:1.5px solid var(--gold);color:var(--gold);padding:10px 24px;font-size:.6rem;letter-spacing:3px;text-transform:uppercase;text-decoration:none;font-weight:600;cursor:pointer;font-family:Montserrat,sans-serif}.nav-cta:hover{background:var(--gold);color:var(--navy)}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:8px}.hamburger span{width:24px;height:1.5px;background:var(--white);transition:all .3s}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu{display:none;position:fixed;inset:0;background:rgba(25,40,66,.98);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:30px}.mobile-menu.open{display:flex}.mobile-menu a{text-decoration:none;font-family:Cinzel,serif;font-size:1.25rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.65)}.mobile-menu a:hover{color:var(--gold)}.hero{min-height:78vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:150px 24px 90px;position:relative;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%),linear-gradient(0deg,transparent 49.5%,rgba(197,165,90,.018) 49.5%,rgba(197,165,90,.018) 50.5%,transparent 50.5%);background-size:80px 80px}.hero-content{position:relative;z-index:2;max-width:960px}.overline{font-size:.6rem;letter-spacing:7px;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:28px;display:flex;align-items:center;justify-content:center;gap:16px}.overline:before,.overline:after{content:'';width:40px;height:1px;background:var(--gold);opacity:.4}h1{font-family:Cinzel,serif;font-size:3rem;font-weight:400;letter-spacing:5px;line-height:1.2;text-transform:uppercase;margin-bottom:24px}h1 em{font-style:normal;color:var(--gold);font-weight:700}.hero p{font-size:.84rem;line-height:1.95;color:rgba(255,255,255,.72);max-width:760px;margin:0 auto}.actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}.btn-gold,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 26px;font-size:.58rem;letter-spacing:3px;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:700;text-decoration:none}.btn-gold{background:var(--gold);border:1px solid var(--gold);color:var(--navy)}.btn-gold:hover{background:var(--gold-light);border-color:var(--gold-light)}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.24);color:var(--white)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.gold-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.3}.section{padding:86px 80px}.section.alt{background:var(--navy-mid)}.wrap{max-width:1120px;margin:0 auto}.section-head{text-align:center;margin:0 auto 38px;max-width:820px}.section-head .over{color:var(--gold);font-size:.56rem;letter-spacing:5px;text-transform:uppercase;margin-bottom:14px}.section-head h2{font-family:Cinzel,serif;font-size:1.8rem;font-weight:400;letter-spacing:3px;text-transform:uppercase;color:var(--white)}.section-head p{font-size:.75rem;line-height:1.85;color:var(--slate);margin-top:16px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.panel{border:1px solid rgba(197,165,90,.14);background:rgba(255,255,255,.018);padding:34px 32px;min-width:0}.panel h3{font-family:Cinzel,serif;color:var(--gold);font-weight:500;font-size:.96rem;line-height:1.45;text-transform:uppercase;margin-bottom:14px}.panel p,.panel li{font-size:.72rem;line-height:1.85;color:var(--slate);font-weight:300}.panel ul{display:grid;gap:8px;list-style:none;margin-top:16px}.panel li{position:relative;padding-left:16px}.panel li:before{content:'';position:absolute;left:0;top:13px;width:7px;height:1px;background:var(--gold)}.two{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start}.notice{border-top:1px solid rgba(197,165,90,.2);padding-top:24px;margin-top:24px;color:rgba(255,255,255,.58);font-size:.68rem;line-height:1.8}footer{background:#192842;padding:44px 60px;border-top:1px solid rgba(197,165,90,.1);text-align:center}footer p{font-size:.66rem;line-height:1.8;color:rgba(255,255,255,.52)}footer a{color:rgba(255,255,255,.82);text-decoration:none}.footer-links{margin-top:10px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}@media(max-width:900px){nav{padding:18px 24px}.nav-links,.nav-cta{display:none}.hamburger{display:flex;z-index:101}.nav-brand{font-size:.55rem;letter-spacing:1.4px;max-width:210px;overflow:hidden;text-overflow:ellipsis}.nav-logo svg{width:24px;height:30px}.hero{padding-top:120px;min-height:auto}h1{font-size:1.72rem;letter-spacing:1px}.overline{letter-spacing:2px;line-height:1.6;flex-wrap:wrap}.overline:before,.overline:after{width:24px}.section{padding:58px 24px}.grid,.two{grid-template-columns:1fr}.panel{padding:28px 24px}.actions{flex-direction:column}.btn-gold,.btn-ghost{width:100%;text-align:center}.footer-links{flex-direction:column}}

/* ===== Source: support-hub.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  html { scroll-behavior: smooth; }
  body { background: var(--navy); color: var(--white); font-family: 'Montserrat', sans-serif; overflow-x: hidden; }

  /* PAGE TRANSITIONS */
  .page { display: none; opacity: 0; transition: opacity 0.5s ease; }
  .page.active { display: block; }
  .page.visible { opacity: 1; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0; transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
  }
  .reveal.revealed { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }
  .reveal-delay-6 { transition-delay: 0.6s; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 28px 60px; background: transparent; transition: all 0.4s;
  }
  nav.scrolled { background: rgba(25,40,66,0.96); backdrop-filter: blur(10px); padding: 18px 60px; }
  .nav-logo { display: flex; align-items: center; gap: 14px; cursor: pointer; -webkit-tap-highlight-color: rgba(197,165,90,0.2); }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px;
    display: inline-block; white-space: nowrap; overflow: hidden; max-width: 0; opacity: 0; transform: translateX(-10px);
    animation: navBrandUnscroll 1.05s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
  }
  @keyframes navBrandUnscroll {
    0% { max-width: 0; opacity: 0; transform: translateX(-10px); }
    35% { opacity: 1; }
    100% { max-width: 420px; opacity: 1; transform: translateX(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-brand { animation: none; max-width: 420px; opacity: 1; transform: none; }
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px;
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
    transition: color 0.3s; cursor: pointer; position: relative;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: -4px; left: 0;
    width: 0; height: 1px; background: var(--gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active { color: var(--gold); }
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent; border: 1.5px solid var(--gold); color: var(--gold);
    padding: 10px 24px; font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 600; transition: all 0.3s;
  }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .nav-cta.active { background: var(--gold); color: var(--navy); }

  /* MOBILE NAV */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer;
    background: none; border: none; padding: 8px; -webkit-appearance: none; touch-action: manipulation;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(25,40,66,0.98); z-index: 99;
    flex-direction: column; align-items: center; justify-content: center; gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.4rem;
    letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.6);
    transition: color 0.3s; cursor: pointer;
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  /* HERO */
  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
  }
  .hero-watermark {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%); opacity: 0.04;
  }
  .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    z-index: 0;
    pointer-events: none;
  }
  .hero-content { position: relative; z-index: 2; animation: fadeIn 1.2s ease; }
  .hero-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 28px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .hero-content .overline::before, .hero-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif; font-size: 3.8rem; font-weight: 400;
    letter-spacing: 6px; color: var(--white); line-height: 1.2;
    text-transform: uppercase; margin-bottom: 24px;
  }
  .hero-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .hero-desc {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 600px; margin: 0 auto 40px; font-weight: 300;
  }
  .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

  .toolkit-toggle-btn.is-open {
    background: rgba(197,165,90,0.1);
    border-color: var(--gold);
    color: var(--gold-light);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16), inset 0 0 0 1px rgba(217,197,128,0.12);
  }
  .insight-card:focus-within,
  .insight-card.is-active {
    transform: translateY(-4px);
    border-left-color: var(--gold);
    box-shadow: 0 18px 36px rgba(0,0,0,0.2), inset 0 0 0 1px rgba(217,197,128,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.012));
  }
  .insight-card:focus-within .read-more,
  .insight-card.is-active .read-more,
  .insight-card:focus-within .insight-toggle,
  .insight-card.is-active .insight-toggle {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .tk-pill-btn.active,
  .tk-opt.tk-nf-active {
    box-shadow: 0 10px 24px rgba(0,0,0,0.14), inset 0 0 0 1px rgba(217,197,128,0.08);
  }
  .btn-gold {
    background: var(--gold); color: var(--navy); padding: 16px 36px; border: none;
    font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 700; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .btn-ghost {
    background: transparent; border: 1px solid rgba(255,255,255,0.2); color: var(--white);
    padding: 16px 36px; font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 400; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  /* DIVIDER */
  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }

  /* SECTION HEADS */
  .section-head { margin-bottom: 60px; }
  .section-head .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    color: var(--white); letter-spacing: 3px; margin-top: 10px; text-transform: uppercase;
  }

  /* SERVICES */
  .services {
    padding: 100px 80px; background: var(--navy-mid); position: relative;
  }
  .services::before {
    content: ''; position: absolute; top: 0; left: 60px; bottom: 0;
    width: 1px; background: linear-gradient(180deg, transparent, rgba(197,165,90,0.15), transparent);
  }
  .service-rows { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1100px; margin: 0 auto; }
  .svc {
    padding: 44px 40px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative;
  }
  .svc::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 2px; background: var(--gold); transition: width 0.5s;
  }
  .svc:hover::after { width: 100%; }
  .svc:hover { background: rgba(197,165,90,0.018); }
  .svc .num { font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 300; color: rgba(197,165,90,0.3); margin-bottom: 14px; }
  .svc h3 { font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500; color: var(--white); letter-spacing: 2px; margin-bottom: 10px; }
  .svc p { font-size: 0.72rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* TRAINING HIGHLIGHT */
  .training-highlight {
    padding: 80px; background: var(--navy);
    text-align: center;
  }
  .training-inner {
    max-width: 800px; margin: 0 auto;
    padding: 50px 60px;
    border: 1px solid rgba(197,165,90,0.15);
    position: relative;
  }
  .training-inner::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 60px; height: 3px; background: var(--gold);
  }
  .training-inner .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-inner h3 {
    font-family: 'Cinzel', serif; font-size: 1.3rem; font-weight: 400;
    color: var(--white); letter-spacing: 2px; margin-bottom: 14px; text-transform: uppercase;
  }
  .training-inner p {
    font-size: 0.75rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 28px;
  }

  /* HOW WE WORK */
  .how-we-work {
    padding: 100px 80px; background: var(--navy);
  }
  .process-steps {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
    max-width: 1100px; margin: 0 auto; position: relative;
  }
  .process-steps::before {
    content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
    height: 1px; background: rgba(197,165,90,0.25);
  }
  .process-step {
    text-align: center; padding: 0 16px; position: relative;
  }
  .process-step .step-num {
    width: 56px; height: 56px; border: 2px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-family: 'Cinzel', serif; font-size: 1.1rem;
    font-weight: 600; color: var(--gold); background: var(--navy);
    position: relative; z-index: 2;
  }
  .process-step h4 {
    font-family: 'Cinzel', serif; font-size: 0.7rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 10px;
  }
  .process-step p {
    font-size: 0.65rem; line-height: 1.7; color: var(--slate); font-weight: 300;
  }

  /* WHY SECTION */
  .why {
    padding: 100px 80px; background: var(--navy);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center;
  }
  .why-left h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .why-left p { font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 32px; }
  .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .why-card {
    background: var(--navy-mid); padding: 32px 28px;
    border-top: 2px solid var(--gold); transition: transform 0.3s;
  }
  .why-card:hover { transform: translateY(-4px); }
  .why-card .icon { font-size: 1.6rem; margin-bottom: 12px; color: var(--gold); }
  .why-card h4 {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); margin-bottom: 8px; text-transform: uppercase;
  }
  .why-card p { font-size: 0.68rem; line-height: 1.7; color: var(--slate); font-weight: 300; }

  /* QUOTE */
  .quote-section {
    padding: 80px; background: var(--gold); text-align: center; position: relative;
  }
  .quote-section blockquote {
    font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; font-weight: 400;
    font-style: italic; color: var(--navy); max-width: 700px;
    margin: 0 auto; line-height: 1.5;
  }
  .quote-section .attr {
    font-family: 'Montserrat', sans-serif; font-size: 0.65rem; letter-spacing: 3px;
    text-transform: uppercase; color: var(--navy); font-weight: 700; margin-top: 24px;
  }

  /* CTA DARK */
  .cta-dark {
    padding: 100px 80px; text-align: center; background: var(--navy);
  }
  .cta-dark h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 4px; color: var(--white); text-transform: uppercase; margin-bottom: 14px;
  }
  .cta-dark p { font-size: 0.75rem; color: var(--slate); margin-bottom: 36px; font-weight: 300; }

  /* FOOTER */
  footer {
    background: #192842; padding: 50px 80px 30px;
    border-top: 1px solid rgba(197,165,90,0.1);
  }
  .footer-main {
    display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 60px;
    margin-bottom: 40px;
  }
  .footer-brand { display: flex; align-items: flex-start; gap: 16px; }
  .footer-brand svg { width: 28px; height: 34px; flex-shrink: 0; margin-top: 3px; }
  .footer-brand-text span {
    font-family: 'Cinzel', serif; font-size: 0.8rem; letter-spacing: 3px;
    color: rgba(255,255,255,0.5); display: inline-block; margin-bottom: 16px;
    line-height: 1.4; padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }
  .footer-brand-text p {
    font-size: 0.62rem; line-height: 1.9; color: rgba(255,255,255,0.3); font-weight: 300;
    max-width: 340px;
  }
  .footer-col h5 {
    font-family: 'Cinzel', serif; font-size: 0.6rem; font-weight: 600;
    letter-spacing: 3px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; padding-bottom: 12px;
    border-bottom: 1px solid rgba(197,165,90,0.3);
    display: inline-block;
  }
  .footer-col p, .footer-col a {
    font-size: 0.62rem; line-height: 2; color: rgba(255,255,255,0.35);
    font-weight: 300; text-decoration: none; display: block;
  }
  .footer-col a:hover { color: var(--gold); }
  .footer-social {
    display: flex; gap: 16px; margin-top: 14px;
  }
  .footer-social a {
    width: 32px; height: 32px; border: 1px solid rgba(197,165,90,0.2);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.65rem; color: rgba(255,255,255,0.4); transition: all 0.3s;
  }
  .footer-social a:hover { border-color: var(--gold); color: var(--gold); }
  .footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.08); padding-top: 24px;
    flex-wrap: wrap; gap: 12px;
  }
  .footer-bottom p {
    font-size: 0.55rem; color: rgba(255,255,255,0.2); letter-spacing: 1px;
  }

  /* ===== ABOUT PAGE ===== */
  .about-hero {
    min-height: 60vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
    padding: 140px 80px 80px;
  }
  .about-hero .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .about-content { position: relative; z-index: 2; }
  .about-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .about-content .overline::before, .about-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .about-content h1 {
    font-family: 'Cinzel', serif; font-size: 3rem; font-weight: 400;
    letter-spacing: 5px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .about-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .about-content p {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 650px; margin: 0 auto; font-weight: 300;
  }

  .about-story {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
  }
  .about-story h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 24px;
  }
  .about-story p {
    font-size: 0.78rem; line-height: 2; color: var(--slate); font-weight: 300; margin-bottom: 20px;
  }

  .stats-row {
    padding: 80px; background: var(--navy);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; text-align: center;
  }
  .stat-item { padding: 20px; }
  .stat-item .num {
    font-family: 'Cinzel', serif; font-size: 2.8rem; font-weight: 400; color: var(--gold); margin-bottom: 8px;
  }
  .stat-item .label {
    font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase; color: var(--slate); font-weight: 400;
  }

  .values-section { padding: 100px 80px; background: var(--navy-mid); }
  .values-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .value-item {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s; text-align: center;
  }
  .value-item:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .value-item .icon { font-size: 1.8rem; margin-bottom: 16px; color: var(--gold); }
  .value-item h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 12px;
  }
  .value-item p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== SECTORS PAGE ===== */
  .sectors-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1200px; margin: 0 auto;
  }
  .sector-card {
    padding: 50px 36px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative; overflow: hidden;
  }
  .sector-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0;
    height: 3px; background: var(--gold); transform: scaleX(0);
    transform-origin: left; transition: transform 0.5s;
  }
  .sector-card:hover::before { transform: scaleX(1); }
  .sector-card:hover { background: rgba(197,165,90,0.018); }
  .sector-card .sector-icon { font-size: 2rem; margin-bottom: 20px; color: var(--gold); opacity: 0.8; }
  .sector-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); margin-bottom: 12px; text-transform: uppercase;
  }
  .sector-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== INSIGHTS PAGE ===== */
  .insights-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .insight-card {
    background: var(--navy-mid); padding: 40px 36px;
    border-left: 3px solid var(--gold); transition: all 0.4s;
    display:flex;
    flex-direction:column;
    min-height:100%;
  }
  .insight-card:hover { transform: translateY(-2px); }
  .insight-card .tag {
    font-size: 0.5rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.95rem; font-weight: 500;
    color: var(--white); letter-spacing: 1px; margin-bottom: 12px; line-height: 1.5;
  }
  .insight-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; margin-bottom: 16px; }
  .insight-card .read-more {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; text-decoration: none; cursor: pointer; transition: opacity 0.3s;
  }
  .insight-card .read-more:hover { opacity: 0.7; }
  .insights-grid, .insights-more { align-items:stretch; }

  .official-updates-section {
    padding-top: 64px !important;
  }
  .official-updates-section .section-head {
    max-width: 920px;
    margin: 0 auto 34px;
    padding-top: 6px;
  }
  .official-updates-section .section-head .over {
    display: block;
    margin-bottom: 22px;
  }
  .official-updates-section .section-head h2 {
    margin-bottom: 24px;
  }
  .official-updates-section .section-head p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
  .official-updates-section .insights-grid {
    align-items: stretch;
  }
  .official-updates-section .insight-card {
    min-height: 100%;
  }
  .official-meta {
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 10px;
    font-weight: 500;
  }
  .official-date {
    display: block;
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 16px;
    font-weight: 500;
  }
  .official-note {
    max-width: 860px;
    margin: 12px auto 0;
    font-size: 0.64rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.42);
    text-align: center;
  }

  .official-updates-status {
    max-width: 1000px;
    margin: 10px auto 26px;
    padding: 0 4px;
    font-size: 0.56rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
  }
  .official-updates-status strong {
    color: rgba(255,255,255,0.72);
    font-weight: 500;
  }

  /* ===== TRAINING PAGE ===== */
  .training-page-intro {
    padding: 100px 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .training-page-content {
    padding: 80px; background: var(--navy-mid);
  }
  .training-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;
    max-width: 1000px; margin: 0 auto;
  }
  .training-feature {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s;
  }
  .training-feature:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .training-feature .icon { font-size: 1.6rem; margin-bottom: 14px; color: var(--gold); }
  .training-feature h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 10px;
  }
  .training-feature p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== CONTACT PAGE ===== */
  .contact-section {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start;
  }
  .contact-info h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .contact-info p {
    font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 36px;
  }
  .accreditation-card {
    margin-top: 34px;
    padding-top: 12px;
    border-top: 1px solid rgba(197,165,90,0.14);
  }
  .accreditation-card .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 12px;
  }
  .portal-intro {
    font-size: 0.7rem;
    line-height: 1.8;
    color: var(--slate);
    font-weight: 300;
    margin: 0 0 18px;
    max-width: 560px;
  }
  .portal-links-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portal-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    padding: 18px 20px;
    border: 1px solid rgba(197,165,90,0.16);
    background: rgba(255,255,255,0.02);
    border-radius: 16px;
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  }
  .portal-link:hover {
    transform: translateY(-2px);
    border-color: rgba(197,165,90,0.34);
    background: rgba(197,165,90,0.04);
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  }
  .portal-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  .portal-link-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
  }
  .portal-logo {
    display: block;
    max-width: min(240px, 100%);
    width: auto;
    height: auto;
    max-height: 48px;
  }
  .portal-logo-bloom { max-height: 44px; }
  .portal-logo-constellia { max-height: 40px; }
  .portal-logo-delta { max-height: 64px; }
  .portal-caption {
    font-size: 0.56rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.52);
    font-weight: 500;
    text-align: center;
  }
  .contact-detail {
    display: flex; gap: 14px; margin-bottom: 24px; align-items: flex-start;
  }
  .contact-detail .cd-icon {
    width: 36px; height: 36px; border: 1px solid rgba(197,165,90,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.8rem; color: var(--gold); flex-shrink: 0;
  }
  .contact-detail .cd-text .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 4px;
  }
  .contact-detail .cd-text .cd-value {
    font-size: 0.75rem; color: rgba(255,255,255,0.7); font-weight: 300;
  }
  .contact-form {
    background: var(--navy); padding: 50px 44px; border: 1px solid rgba(197,165,90,0.1);
  }
  .contact-form h3 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 30px;
  }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
  .form-group { margin-bottom: 20px; }
  .form-group label {
    display: block; font-size: 0.55rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--slate); font-weight: 500; margin-bottom: 8px;
  }
  .form-group input, .form-group select, .form-group textarea {
    width: 100%; background: var(--navy-mid); border: 1px solid rgba(197,165,90,0.15);
    color: var(--white); padding: 14px 16px; font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem; font-weight: 300; outline: none; transition: border-color 0.3s;
  }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--gold); }
  .form-group textarea { min-height: 120px; resize: vertical; }
  .form-group select { cursor: pointer; appearance: none; }
  .form-group select option { background: var(--navy-mid); }
  .form-submit { display: flex; align-items: center; gap: 20px; margin-top: 10px; }
  .form-success {
    display: none; padding: 28px 24px; background: rgba(197,165,90,0.08);
    border: 1px solid rgba(197,165,90,0.4); border-top: 3px solid var(--gold); text-align: center; margin-top: 20px;
    border-radius: 4px;
  }
  .contact-form.submitted > *:not(.form-success) { display: none !important; }
  .contact-form.submitted .form-success { display: block; }
  .form-success.show { display: block; }
  .form-success p {
    font-family: 'Cinzel', serif; font-size: 1.02rem; color: var(--gold);
    letter-spacing: 2px; margin-bottom: 12px; text-transform: uppercase;
  }
  .form-success span {
    font-size: 0.78rem; color: rgba(255,255,255,0.82); font-weight: 300;
    display: block; margin-top: 0; line-height: 1.85;
  }

  /* ===== PRIVACY POLICY PAGE ===== */
  .policy-content {
    padding: 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .policy-updated {
    font-size: 0.65rem; letter-spacing: 2px; color: var(--gold);
    text-transform: uppercase; font-weight: 500; margin-bottom: 30px;
  }
  .policy-section { margin-bottom: 36px; }
  .policy-content h2 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 16px;
  }
  .policy-content h3 {
    font-size: 0.72rem; font-weight: 600; color: var(--gold);
    letter-spacing: 1px; margin: 16px 0 8px; text-transform: uppercase;
  }
  .policy-content p {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    margin-bottom: 14px;
  }
  .policy-content ul {
    list-style: none; padding: 0; margin-bottom: 14px;
  }
  .policy-content ul li {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    padding-left: 20px; position: relative;
  }
  .policy-content ul li::before {
    content: ''; position: absolute; left: 0; top: 12px;
    width: 6px; height: 1px; background: var(--gold);
  }
  .policy-content strong { color: var(--white); font-weight: 500; }

  @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

  /* ===== REFINED DIMENSIONAL EFFECTS ===== */
  #page-home .hero-content {
    perspective: none;
    transform-style: flat;
  }

  .svc,
  .feature-split-card,
  .why-card,
  .sector-card,
  .insight-card,
  .training-feature,
  .toolkit-paid-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .value-item,
  .process-step {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 14px 30px rgba(9,16,28,0.14);
    transition: box-shadow 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
  }
  .svc::before,
  .feature-split-card::before,
  .why-card::before,
  .sector-card::before,
  .insight-card::before,
  .training-feature::before,
  .toolkit-paid-card::before,
  .tk-portal-card::before,
  .tk-gloss-term::before,
  .tk-notice-card::before,
  .value-item::before,
  .process-step::before {
    content:'';
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
    opacity:0;
    pointer-events:none;
    transition: opacity 0.28s ease;
  }
  .svc:hover,
  .feature-split-card:hover,
  .why-card:hover,
  .sector-card:hover,
  .insight-card:hover,
  .training-feature:hover,
  .toolkit-paid-card:hover,
  .tk-portal-card:hover,
  .tk-gloss-term:hover,
  .tk-notice-card:hover,
  .value-item:hover,
  .process-step:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .svc:hover::before,
  .feature-split-card:hover::before,
  .why-card:hover::before,
  .sector-card:hover::before,
  .insight-card:hover::before,
  .training-feature:hover::before,
  .toolkit-paid-card:hover::before,
  .tk-portal-card:hover::before,
  .tk-gloss-term:hover::before,
  .tk-notice-card:hover::before,
  .value-item:hover::before,
  .process-step:hover::before {
    opacity: 1;
  }

  .feature-split-card,
  .toolkit-paid-card,
  .training-feature,
  .insight-card,
  .sector-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .svc,
  .process-step {
    background-image: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  }

  .process-step {
    border: 1px solid rgba(197,165,90,0.08);
    padding: 26px 18px 24px;
    text-align: center;
  }
  .process-step:hover {
    background: linear-gradient(180deg, rgba(197,165,90,0.06), rgba(255,255,255,0.01));
  }
  .process-step .step-num {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }
  .process-step:hover .step-num {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    border-color: rgba(217,197,128,0.85);
  }

  .stats-row .stat-item {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
    border: 1px solid rgba(197,165,90,0.1);
    box-shadow: 0 16px 30px rgba(8,14,24,0.16);
    transition: transform 0.32s ease, box-shadow 0.32s ease, border-color 0.32s ease;
  }
  .stats-row .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .stats-row .stat-item::after {
    content: '';
    position: absolute;
    left: 18%; right: 18%; bottom: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.8), transparent);
    opacity: 0.55;
  }

  .nav-cta,
  .contact-form .btn-gold {
    transform: translateZ(0);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  }
  .nav-cta:hover,
  .contact-form .btn-gold:hover {
    transform: translateY(-2px) scale(1.035);
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
  }

  .insight-card {
    border: 1px solid rgba(197,165,90,0.12);
    border-left-width: 2px;
  }
  .insight-card::after {
    content:'';
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg, rgba(197,165,90,0), rgba(197,165,90,0.75), rgba(197,165,90,0));
    opacity:0.35;
    transition: opacity 0.28s ease;
  }
  .insight-card:hover::after {
    opacity:0.9;
  }
  .insight-card:hover .read-more,
  .sector-card:hover h3,
  .training-feature:hover h4 {
    color: var(--gold-light);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc,
    .feature-split-card,
    .why-card,
    .sector-card,
    .insight-card,
    .training-feature,
    .toolkit-paid-card,
    .tk-portal-card,
    .tk-gloss-term,
    .tk-notice-card,
    .value-item,
    .process-step,
    .stats-row .stat-item,
    .nav-cta,
    .contact-form .btn-gold {
      transition: none !important;
      transform: none !important;
    }
    .svc::before,
    .feature-split-card::before,
    .why-card::before,
    .sector-card::before,
    .insight-card::before,
    .training-feature::before,
    .toolkit-paid-card::before,
    .tk-portal-card::before,
    .tk-gloss-term::before,
    .tk-notice-card::before,
    .value-item::before,
    .process-step::before,
    .insight-card::after {
      transition: none !important;
    }
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 1024px) {
    .hero-content h1 { font-size: 2.6rem; }
    .about-story { grid-template-columns: 1fr; gap: 40px; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-section { grid-template-columns: 1fr; gap: 50px; }
    .why { grid-template-columns: 1fr; gap: 50px; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .process-steps::before { display: none; }
  }
  @media (max-width: 768px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger { display: flex; z-index: 101; }
    .hero { min-height: 100vh; padding: 0 24px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-desc { font-size: 0.72rem; }
    .hero-btns { flex-direction: column; align-items: center; gap: 12px; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; text-align: center; }
    .services, .why, .cta-dark, .about-hero, .about-story, .values-section, .contact-section, .training-page-content, .how-we-work { padding: 60px 24px; }
    .stats-row { padding: 60px 24px; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .quote-section { padding: 50px 24px; }
    .quote-section blockquote { font-size: 1.2rem; }
    .service-rows { grid-template-columns: 1fr; }
    .svc { padding: 32px 24px; }
    .svc h3 { font-size: 0.85rem; }
    .why-right { grid-template-columns: 1fr; }
    .values-grid { grid-template-columns: 1fr; }
    .sectors-grid { grid-template-columns: 1fr; }
    .insights-grid { grid-template-columns: 1fr; }
    .training-features { grid-template-columns: 1fr; }
    .process-steps { grid-template-columns: 1fr; gap: 30px; }
    .process-step .step-num { width: 46px; height: 46px; font-size: 0.95rem; }
    .form-row { grid-template-columns: 1fr; }
    .contact-form { padding: 36px 24px; }

    .accreditation-card { margin-top: 28px; padding-top: 10px; }
    .portal-links-grid { gap: 12px; }
    .portal-link { min-height: 82px; padding: 16px; }
    .portal-logo-bloom { max-height: 38px; }
    .portal-logo-constellia { max-height: 34px; }
    .portal-logo-delta { max-height: 54px; }
    footer { padding: 30px 24px 20px; }
    .footer-main { grid-template-columns: 1fr; gap: 30px; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .about-hero { padding: 80px 24px 40px; min-height: auto; }
    .about-content h1 { font-size: 1.8rem; }
    .about-content p { font-size: 0.72rem; }
    .about-story h2 { font-size: 1.4rem; }
    .stat-item .num { font-size: 2rem; }
    .section-head h2 { font-size: 1.4rem; }
    .cta-dark h2 { font-size: 1.4rem; letter-spacing: 2px; }
    .why-left h2 { font-size: 1.5rem; }
    .policy-content { padding: 40px 24px; }
    .policy-section h2 { font-size: 0.9rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    
    /* -- TOOLKIT INLINE STYLE OVERRIDES ----------------------- */
    .how-we-work { padding: 60px 24px !important; }
    #tk-notices-out { grid-template-columns: 1fr !important; }
    #tk-gloss-out { grid-template-columns: 1fr !important; }
    #page-toolkit .svc { overflow-x: hidden; overflow: hidden; }
    .svc::after { display: none; }
    .svc:hover { background: none; }
    #page-toolkit [style*="max-width:1100px"],
    #page-toolkit [style*="max-width:1000px"],
    #page-toolkit [style*="max-width:800px"] { max-width: 100% !important; padding-left: 0; padding-right: 0; }

    /* -- TOOLKIT OVERFLOW FIX --------------------------------- */
    #toolkit, #toolkit * { max-width: 100%; box-sizing: border-box; }
    #toolkit .container { overflow-x: hidden; }
    /* -- TOOLKIT PAGE MOBILE ----------------------------------- */
    .tk-portal-card { padding: 16px 18px; width: 100%; box-sizing: border-box; }
    .tk-portal-card strong { font-size: 0.75rem; }
    .tk-portal-card span { font-size: 0.7rem; }
    .tk-opt { padding: 10px 16px; font-size: 0.62rem; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .tk-gloss-term { padding: 12px 14px; }
    .tk-gloss-term strong { font-size: 0.7rem; }
    .tk-gloss-term span { font-size: 0.68rem; }
    .tk-milestone { flex-wrap: wrap; gap: 6px; }
    .tk-milestone-label { font-size: 0.66rem; flex-basis: 100%; }
    .tk-milestone-date { font-size: 0.66rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    [class*="tk-"] > * { max-width: 100%; box-sizing: border-box; }
    .tk-tool-panel, .tk-section, .tk-grid, .tk-card-grid { grid-template-columns: 1fr !important; }
    .tk-opt-group { display: flex; flex-direction: column; gap: 8px; width: 100%; }
    .tk-result { padding: 20px 16px; font-size: 0.72rem; }
    .tk-input, .tk-select { width: 100%; max-width: 100%; font-size: 0.78rem; padding: 10px 12px; box-sizing: border-box; }
    .tk-btn { width: 100%; min-height: 44px; font-size: 0.65rem; }
    .tk-tabs { flex-wrap: wrap; gap: 6px; }
    .tk-tab { flex: 1 1 auto; text-align: center; font-size: 0.6rem; padding: 8px 10px; }

  }

  /* -- TOOLKIT PAGE ------------------------------------------ */
  .tk-opt {
    background: transparent; border: 1px solid rgba(197,165,90,0.25);
    color: rgba(255,255,255,0.7); padding: 8px 18px;
    font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    font-family: 'Montserrat', sans-serif; cursor: pointer;
    border-radius: 2px; transition: all 0.3s;
  }
  .tk-opt:hover { border-color: var(--gold); color: var(--gold); background: rgba(197,165,90,0.06); }
  .tk-portal-card {
    display: block; padding: 20px 24px;
    border: 1px solid rgba(197,165,90,0.1);
    text-decoration: none; color: inherit;
    transition: all 0.3s; border-radius: 2px;
  }
  .tk-portal-card:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.018); }
  .tk-portal-card strong { font-family: 'Cinzel', serif; font-size: 0.8rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 6px; }
  .tk-portal-card span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-gloss-term { padding: 14px 18px; border: 1px solid rgba(197,165,90,0.08); border-radius: 2px; }
  .tk-gloss-term strong { font-family: 'Cinzel', serif; font-size: 0.72rem; color: var(--gold); display: block; margin-bottom: 4px; letter-spacing: 1px; }
  .tk-gloss-term span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-milestone { display: flex; align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .tk-milestone:last-child { border-bottom: none; }
  .tk-milestone-label { font-size: 0.68rem; color: rgba(255,255,255,0.5); flex: 1; }
  .tk-milestone-date { font-size: 0.68rem; color: var(--gold); font-family: 'Cinzel', serif; white-space: nowrap; }
  .tk-milestone-flag { font-size: 0.58rem; color: #e07070; margin-left: 6px; }

  /* -- PA23 NOTICES ------------------------------------------ */
  .tk-nf-active { border-color: var(--gold) !important; color: var(--gold) !important; background: rgba(197,165,90,0.08) !important; }
  .tk-notice-card {
    padding: 20px 22px; border: 1px solid rgba(197,165,90,0.1);
    border-radius: 2px; transition: border-color 0.3s;
  }
  .tk-notice-card:hover { border-color: rgba(197,165,90,0.3); }
  .tk-notice-ref { font-family: 'Cinzel', serif; font-size: 0.75rem; color: var(--gold); letter-spacing: 2px; font-weight: 600; }
  .tk-notice-cat { font-size: 0.5rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); font-family: 'Montserrat', sans-serif; }
  .tk-notice-title { font-family: 'Cinzel', serif; font-size: 0.82rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 14px; }
  .tk-notice-section { margin-bottom: 10px; }
  .tk-notice-section:last-child { margin-bottom: 0; }
  .tk-notice-label { font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); font-weight: 500; display: block; margin-bottom: 3px; }
  .tk-notice-section p { font-size: 0.68rem; color: rgba(255,255,255,0.55); line-height: 1.75; margin: 0; }

  /* Global mobile overflow protection */
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }
  .btn-gold:focus-visible, .btn-ghost:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }

  @media (max-width: 768px) {

    
    /* -- NOTICE CARDS MOBILE FIX ------------------------------- */
    .tk-notice-card { padding: 16px 14px; box-sizing: border-box; word-break: break-word; }
    .tk-notice-cat { 
      font-size: 0.42rem; 
      letter-spacing: 1px; 
      white-space: normal; 
      text-align: right;
      max-width: 120px;
      line-height: 1.4;
    }
    .tk-notice-ref { flex-shrink: 0; }
    #tk-notices-out { 
      grid-template-columns: 1fr !important; 
      overflow: hidden;
    }
    #tk-notices-out .tk-notice-card { width: 100%; max-width: 100%; overflow: hidden; }

    /* -- SERVICES DECORATIVE LINE FIX ------------------------- */
    .services::before { display: none; }

    /* -- GRID LINES MOBILE FIX -------------------------------- */
    .hero-lines { display: none; }
    .about-hero { overflow: hidden; }
    .services { overflow: hidden; }
    #page-toolkit .services { isolation: isolate; }

  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible, .btn-gold:focus-visible, .btn-ghost:focus-visible,
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- GLOSSARY SCROLLBAR ------------------------------------ */
  #tk-gloss-out::-webkit-scrollbar {
    width: 4px;
  }
  #tk-gloss-out::-webkit-scrollbar-track {
    background: rgba(25,40,66,0.6);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb {
    background: rgba(197,165,90,0.4);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb:hover {
    background: rgba(197,165,90,0.7);
  }

  /* ===== EDITORIAL / TOOLKIT ENHANCEMENTS ===== */
  .svc-link, .training-link-inline {
    display:inline-block;
    margin-top:14px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    text-decoration:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .svc-link:hover, .training-link-inline:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }

  .toolkit-paid {
    padding:80px; padding:clamp(40px,5vw,80px) clamp(20px,5vw,80px);
    background: var(--navy);
  }
  .feature-split-grid {
    max-width:1100px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px;
    align-items:stretch;
  }
  .feature-split-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:48px 52px;
    background:rgba(255,255,255,0.012);
    min-height:430px;
    display:flex;
    flex-direction:column;
    text-align:center;
  }
  .feature-split-card h4 {
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:3px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:20px;
  }
  .feature-split-card p {
    font-size:0.84rem;
    line-height:1.95;
    color:var(--slate);
    font-weight:300;
    max-width:560px;
    margin:0 auto 26px;
  }
  .feature-split-actions {
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .feature-split-actions .btn-gold,
  .feature-split-actions .btn-ghost {
    width:min(360px,100%);
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:14px 24px;
  }
  .support-products-grid {
    max-width:1100px;
    margin:0 auto 36px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
  }
  .toolkit-paid-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:38px 42px 34px;
    background:rgba(255,255,255,0.012);
    display:flex;
    flex-direction:column;
    min-height:0;
  }
  .toolkit-paid-card h4 {
    font-family:'Cinzel',serif;
    font-size:0.98rem;
    font-weight:500;
    letter-spacing:2px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .toolkit-paid-card > p {
    font-size:0.79rem;
    line-height:1.85;
    color:var(--slate);
    font-weight:300;
    margin-bottom:24px;
  }
  .toolkit-card-footer {
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid rgba(197,165,90,0.12);
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .toolkit-card-label {
    display:block;
    margin-bottom:10px;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
  }
  .toolkit-card-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .toolkit-card-list li {
    position:relative;
    padding-left:16px;
    font-size:0.69rem;
    line-height:1.7;
    color:rgba(255,255,255,0.62);
  }
  .toolkit-card-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:1px;
    background:var(--gold);
    opacity:0.8;
  }
  .toolkit-card-fit {
    margin:0;
    font-size:0.68rem;
    line-height:1.75;
    color:rgba(255,255,255,0.52);
  }
  .toolkit-card-link {
    align-self:flex-start;
    background:var(--gold);
    border:1px solid var(--gold);
    color:var(--navy);
    padding:11px 26px;
    font-size:0.62rem;
    letter-spacing:3.2px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    line-height:1.2;
    cursor:pointer;
    text-decoration:none;
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:background 0.22s ease, color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
  }
  .toolkit-card-link:hover {
    background:var(--gold-light);
    border-color:var(--gold-light);
    color:var(--navy);
    box-shadow:0 12px 24px rgba(0,0,0,0.18);
    transform:translateY(-1px);
  }
  .toolkit-paid-actions {
    max-width:1100px;
    margin:0 auto;
    text-align:center;
  }
  .toolkit-paid-note {
    max-width:680px;
    margin:18px auto 0;
    font-size:0.65rem;
    line-height:1.8;
    color:rgba(255,255,255,0.28);
  }
  .toolkit-tailored-card {
    width:100%;
    max-width:536px;
    margin:0 auto;
  }
  .toolkit-tailored-card h4 {
    text-align:center;
  }
  .toolkit-tailored-card .toolkit-card-footer {
    align-items:center;
    text-align:center;
  }
  .toolkit-tailored-card .toolkit-card-link {
    align-self:center;
  }

  .toolkit-toggle-btn {
    background:transparent;
    border:1px solid rgba(197,165,90,0.28);
    color:var(--gold);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    cursor:pointer;
    border-radius:2px;
    margin-bottom:18px;
  }
  .toolkit-toggle-btn:hover { background:rgba(197,165,90,0.06); border-color:var(--gold); }

  .insight-card.featured {
    background:rgba(255,255,255,0.015);
    border-left-width:4px;
  }
  .featured-label {
    font-size:0.48rem;
    letter-spacing:4px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
    margin-bottom:12px;
  }
  .insight-meta {
    font-size:0.54rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.42);
    margin-bottom:14px;
  }
  .insight-body {
    display:none;
    margin-top:18px;
  }
  .insight-body p {
    margin-bottom:14px;
    font-size:0.72rem;
    line-height:1.9;
    color:var(--slate);
  }
  .insight-toggle {
    margin-top:auto;
    align-self:flex-start;
    background:none;
    border:none;
    color:var(--gold);
    padding:0;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .insight-toggle:hover { color:var(--gold-light); border-bottom-color:var(--gold-light); }
  .insights-more { display:none; }
  .insights-more-wrap { text-align:center; margin-top:36px; }
  .insight-card h3 { text-wrap:balance; }
  .article-readtime { display:inline-block; }

  @media (max-width: 768px) {
    .feature-split-grid, .support-products-grid { grid-template-columns:1fr; gap:18px; }
    .feature-split-card { padding:30px 24px; min-height:auto; }
    .feature-split-card h4 { font-size:0.92rem; }
    .feature-split-card p { font-size:0.78rem; }
    .feature-split-actions .btn-gold, .feature-split-actions .btn-ghost { width:100%; min-height:46px; }
    .toolkit-paid-card { padding:28px 24px; min-height:auto; }
    .toolkit-paid-card h4 { font-size:0.86rem; }
    .toolkit-paid-card > p { font-size:0.76rem; }
    .toolkit-card-footer { padding-top:18px; gap:14px; }
    .toolkit-card-list li { font-size:0.68rem; }
    .toolkit-card-fit { font-size:0.67rem; }
    .toolkit-card-link { font-size:0.54rem; letter-spacing:2.2px; width:100%; }
    .toolkit-tailored-card { max-width:none; margin-top:18px; }
    .svc-link, .training-link-inline, .insight-toggle { font-size:0.54rem; letter-spacing:2.2px; }
  }

  /* ===== PCC TOOLKIT CALCULATORS ===== */
  .tk-calc-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:760px;
    margin-bottom:1.35rem;
    align-items:end;
  }
  .tk-calc-field label {
    display:block;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:8px;
    font-family:'Cinzel',serif;
  }
  .tk-calc-field input,
  .tk-calc-field select {
    width:100%;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(197,165,90,0.2);
    color:var(--white);
    padding:10px 14px;
    font-family:'Montserrat',sans-serif;
    font-size:0.75rem;
    border-radius:2px;
    box-sizing:border-box;
  }
  .tk-calc-field input::placeholder { color:rgba(255,255,255,0.28); }
  .tk-calc-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:1rem;
  }
  .tk-calc-btn {
    background:var(--gold);
    color:var(--navy);
    border:none;
    padding:10px 24px;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    cursor:pointer;
    white-space:nowrap;
    border-radius:2px;
  }
  .tk-calc-btn-secondary {
    background:transparent;
    color:var(--gold);
    border:1px solid rgba(197,165,90,0.3);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-radius:2px;
  }
  .tk-calc-note {
    font-size:0.62rem;
    color:rgba(255,255,255,0.38);
    line-height:1.75;
    max-width:760px;
    margin-top:0.85rem;
  }
  .tk-calc-note strong {
    color:rgba(255,255,255,0.62);
    font-weight:600;
  }
  .tk-calc-out {
    display:none;
    max-width:900px;
    background:rgba(0,0,0,0.2);
    border:1px solid rgba(197,165,90,0.15);
    padding:1.5rem;
    border-radius:2px;
    color:rgba(255,255,255,0.72);
    margin-top:0;
  }
  .tk-tool-copy {
    max-width:760px;
    margin-bottom:1.5rem;
  }
  .tk-tool-copy p,
  .tk-tool-copy .tk-calc-note {
    margin-left:0;
    margin-right:0;
  }
  .tk-cta {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(255,255,255,0.06);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .tk-cta-text {
    margin:0;
    font-size:0.68rem;
    line-height:1.8;
    color:rgba(255,255,255,0.6);
    flex:1 1 320px;
  }
  .tk-cta-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 18px;
    border:1px solid rgba(197,165,90,0.3);
    color:var(--gold);
    text-decoration:none;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    border-radius:2px;
    transition:border-color .25s ease, background .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .tk-cta-btn:hover {
    border-color:var(--gold);
    background:rgba(197,165,90,0.08);
  }
  .tk-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:1rem;
  }
  .tk-summary-item {
    border:1px solid rgba(197,165,90,0.12);
    background:rgba(255,255,255,0.02);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-summary-item span {
    display:block;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:8px;
  }
  .tk-summary-item strong {
    display:block;
    font-family:'Cinzel',serif;
    color:var(--gold);
    font-size:0.95rem;
    letter-spacing:1px;
    font-weight:500;
  }
  .tk-standstill-days {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:1rem;
  }
  .tk-standstill-day {
    border:1px solid rgba(197,165,90,0.1);
    background:rgba(255,255,255,0.015);
    padding:12px 14px;
  }
  .tk-standstill-day span {
    display:block;
    font-size:0.5rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:5px;
  }
  .tk-standstill-day strong {
    display:block;
    font-size:0.72rem;
    color:var(--white);
    font-weight:500;
  }
  .tk-vat-breakdown {
    margin-top:0.6rem;
    padding-top:0.9rem;
    border-top:1px solid rgba(255,255,255,0.06);
    font-size:0.68rem;
    color:rgba(255,255,255,0.56);
    line-height:1.9;
  }
  .tk-vat-breakdown strong { color:var(--gold); font-weight:600; }
  .tk-toggle-group {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
  }
  .tk-toggle-btn {
    appearance:none;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.03);
    color:var(--white);
    min-height:72px;
    padding:0.9rem 1rem;
    font-size:0.72rem;
    line-height:1.55;
    letter-spacing:0.4px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    flex:1 1 180px;
    text-align:left;
  }
  .tk-toggle-btn:hover,
  .tk-toggle-btn:focus-visible {
    border-color:rgba(197,165,90,0.45);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-toggle-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.14);
    color:var(--gold);
    box-shadow:0 12px 28px rgba(0,0,0,0.16);
  }
  .tk-toggle-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.82rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.18rem;
    color:inherit;
  }
  .tk-toggle-btn span {
    display:block;
    font-size:0.64rem;
    line-height:1.7;
    color:inherit;
    opacity:0.9;
  }

  .tk-vat-grid {
    display:grid;
    grid-template-columns:minmax(0, 760px);
    gap:16px;
    max-width:760px;
    align-items:start;
    margin-bottom:1.35rem;
  }
  .tk-vat-field-wide {
    grid-column:1 / -1;
  }
  .tk-pill-group {
    display:grid;
    gap:12px;
    width:100%;
  }
  .tk-pill-group-mode {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-group-rates {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-btn {
    appearance:none;
    border:1px solid rgba(197,165,90,0.18);
    background:rgba(255,255,255,0.03);
    color:rgba(255,255,255,0.78);
    min-height:84px;
    padding:1rem 1rem 0.95rem;
    font-size:0.68rem;
    line-height:1.35;
    letter-spacing:0.5px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
    text-align:left;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  .tk-pill-btn:hover,
  .tk-pill-btn:focus-visible {
    border-color:rgba(197,165,90,0.42);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-pill-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.12);
    color:var(--gold);
  }
  .tk-pill-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.76rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.16rem;
    color:inherit;
  }
  .tk-pill-btn span {
    display:block;
    font-size:0.58rem;
    line-height:1.5;
    color:inherit;
    opacity:0.92;
  }
  .tk-vat-custom-wrap {
    max-width:260px;
  }
  .tk-cycle-layout {
    display:grid;
    grid-template-columns:minmax(360px, 520px) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    max-width:1100px;
  }
  .tk-cycle-wheel-wrap {
    position:relative;
    width:min(100%, 520px);
    aspect-ratio:1 / 1;
    margin:0 auto;
  }
  .tk-cycle-wheel {
    width:100%;
    height:100%;
    display:block;
    overflow:visible;
    filter:drop-shadow(0 18px 34px rgba(0,0,0,0.2));
  }
  .tk-cycle-stage {
    transition: transform .22s ease, filter .22s ease;
  }
  .tk-cycle-stage:hover,
  .tk-cycle-stage:focus-within {
    transform: translate(var(--tk-shift-x, 0px), var(--tk-shift-y, 0px));
    filter: drop-shadow(0 10px 14px rgba(0,0,0,0.18));
  }
  .tk-cycle-stage.is-active {
    transform: translate(calc(var(--tk-shift-x, 0px) * 0.72), calc(var(--tk-shift-y, 0px) * 0.72));
    filter: drop-shadow(0 12px 16px rgba(0,0,0,0.2));
  }
  .tk-cycle-segment {
    fill:#102648;
    stroke:rgba(230,232,237,0.88);
    stroke-width:2.4;
    cursor:pointer;
    transition:fill .22s ease, stroke .22s ease, opacity .22s ease;
    outline:none !important;
    -webkit-tap-highlight-color:transparent;
  }
  .tk-cycle-stage:hover .tk-cycle-segment,
  .tk-cycle-stage:focus-within .tk-cycle-segment {
    fill:#17345f;
    stroke:rgba(255,255,255,0.95);
  }
  .tk-cycle-stage.is-active:hover .tk-cycle-segment,
  .tk-cycle-stage.is-active:focus-within .tk-cycle-segment,
  .tk-cycle-segment.active {
    fill:var(--gold);
    stroke:rgba(217,197,128,0.95);
  }
  .tk-cycle-segment:focus,
  .tk-cycle-segment:focus-visible {
    outline:none !important;
  }
  .tk-cycle-stage-number {
    fill:var(--white);
    font-family:'Montserrat',sans-serif;
    font-size:20px;
    font-weight:800;
    text-anchor:middle;
    dominant-baseline:middle;
    pointer-events:none;
    transition: fill .22s ease, transform .22s ease;
    paint-order: stroke;
    stroke: rgba(10,20,38,0.18);
    stroke-width: 0.7px;
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage:hover .tk-cycle-stage-number {
    transform: translateY(-1px);
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage-number.active,
  .tk-cycle-stage.is-active:hover .tk-cycle-stage-number {
    fill:var(--white);
    stroke: rgba(15,27,45,0.45);
  }
  .tk-cycle-center {
    position:absolute;
    inset:50% auto auto 50%;
    width:46%;
    aspect-ratio:1 / 1;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    background:radial-gradient(circle at 35% 30%, rgba(31,69,121,0.98), rgba(10,30,59,0.98));
    color:var(--white);
    box-shadow:0 0 0 10px rgba(197,165,90,0.18), inset 0 0 0 1px rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.18);
    padding:28px;
  }
  .tk-cycle-center::after {
    content:'';
    position:absolute;
    inset:12px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.06);
    pointer-events:none;
  }
  .tk-cycle-center span {
    display:block;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(197,165,90,0.92);
    margin-bottom:0.5rem;
  }
  .tk-cycle-center strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:1.06rem;
    line-height:1.4;
    letter-spacing:1px;
    font-weight:600;
    color:#f7f7f3;
  }
  .tk-cycle-center small {
    display:block;
    margin-top:0.7rem;
    font-size:0.72rem;
    line-height:1.6;
    color:rgba(255,255,255,0.72);
    max-width:190px;
  }
  .tk-cycle-panel {
    max-width:560px;
    background:linear-gradient(180deg, rgba(8,22,44,0.42), rgba(8,22,44,0.28));
    border:1px solid rgba(197,165,90,0.18);
    padding:1.6rem 1.65rem;
    border-radius:6px;
    min-height:420px;
    box-shadow:0 20px 36px rgba(5,11,21,0.14);
  }
  .tk-cycle-panel-head {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-bottom:0.95rem;
  }
  .tk-cycle-panel-tag {
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
  }
  .tk-cycle-panel h4 {
    margin:0;
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:1px;
    color:var(--white);
  }
  .tk-cycle-panel p {
    margin:0 0 1rem;
    font-size:0.7rem;
    line-height:1.9;
    color:rgba(255,255,255,0.66);
  }
  .tk-cycle-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .tk-cycle-detail-box {
    border:1px solid rgba(197,165,90,0.14);
    background:rgba(255,255,255,0.025);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-cycle-detail-box span {
    display:block;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.4);
    margin-bottom:8px;
  }
  .tk-cycle-detail-box ul {
    margin:0;
    padding-left:1.1rem;
    color:rgba(255,255,255,0.66);
    font-size:0.68rem;
    line-height:1.8;
  }
  @media (max-width: 900px) {
    .tk-pill-group-rates {
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tk-cycle-layout {
      grid-template-columns:1fr;
    }
    .tk-cycle-panel {
      min-height:auto;
    }
  }
  @media (max-width: 768px) {
    .tk-vat-grid { max-width:none; }
    .tk-pill-group-mode,
    .tk-pill-group-rates,
    .tk-cycle-detail-grid {
      grid-template-columns:1fr;
    }
    .tk-cycle-center {
      width:52%;
      padding:22px;
    }
    .tk-cycle-center strong {
      font-size:0.88rem;
    }
    .tk-cycle-center small {
      font-size:0.64rem;
      max-width:140px;
    }
    .tk-cycle-stage-number {
      font-size:22px;
    }
  }

  @media (max-width: 768px) {
    .tk-calc-grid { grid-template-columns:1fr; gap:14px; }
    .tk-summary-grid { grid-template-columns:1fr; }
    .tk-calc-actions { flex-direction:column; align-items:stretch; }
    .tk-calc-btn, .tk-calc-btn-secondary { width:100%; }
    .tk-calc-out { padding:1.2rem; }
    .tk-cta { flex-direction:column; align-items:stretch; }
    .tk-cta-btn { width:100%; }
    .tk-toggle-btn { flex:1 1 100%; min-height:auto; }
  }

/* ===== PCC DYNAMIC ARTICLES ===== */
.article-modal {
  position: fixed;
  inset: 0;
  background: rgba(3, 10, 24, 0.82);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}
.article-modal.open { display: flex; }
.article-modal-dialog {
  width: min(920px, 100%);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, rgba(10,24,52,0.98), rgba(6,15,33,0.98));
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
  position: relative;
}
.article-modal-content {
  padding: 34px 30px 36px;
}
.article-modal-close {
  position: sticky;
  top: 16px;
  margin-left: calc(100% - 56px);
  width: 40px;
  height: 40px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.article-modal-close:hover { opacity: 0.8; }
.article-modal-excerpt {
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--white);
  opacity: 0.92;
  margin-bottom: 22px;
}
 .article-modal-body h2 {
  font-size: 1.05rem;
  margin: 24px 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
}
.article-modal-body p {
  color: var(--white);
  opacity: 0.92;
  line-height: 1.95;
  margin: 0 0 14px;
  font-size: 0.92rem;
}
.article-modal-body a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-modal-body a:hover {
  color: var(--gold);
}
@media (max-width: 768px) {
  .article-modal { padding: 12px; }
  .article-modal-content { padding: 26px 18px 24px; }
  .quick-slot-grid {
    flex-direction: column;
    align-items: stretch;
  }
}
#page-toolkit {
  display: block;
  opacity: 1;
}
noscript + #page-toolkit,
#page-toolkit .reveal {
  opacity: 1;
  transform: none;
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: thank-you.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body {
    background: var(--navy);
    color: var(--white);
    font-family: 'Montserrat', sans-serif;
    overflow-x: hidden;
  }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }

  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 24px 60px; background: rgba(25,40,66,0.96); backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(197,165,90,0.08);
  }
  .nav-logo { display: flex; align-items: center; gap: 14px; text-decoration: none; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    color: var(--white); letter-spacing: 3px; white-space: nowrap;
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    color: rgba(255,255,255,0.6); transition: color 0.3s;
  }
  .nav-links a:hover, .nav-links a.active { color: var(--gold); }
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer; background: none; border: none; padding: 8px;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(25,40,66,0.98);
    z-index: 99; flex-direction: column; align-items: center; justify-content: center; gap: 30px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.2rem; letter-spacing: 3px; text-transform: uppercase;
    color: rgba(255,255,255,0.75);
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    padding: 140px 24px 80px; position: relative; overflow: hidden;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .thank-you-card {
    width: 100%; max-width: 860px; background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));
    border: 1px solid rgba(197,165,90,0.14); box-shadow: 0 24px 46px rgba(6,12,22,0.22);
    padding: 52px 56px; position: relative;
  }
  .thank-you-card::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 90px; height: 3px; background: var(--gold);
  }
  .overline {
    font-size: 0.56rem; letter-spacing: 6px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; font-weight: 600;
  }
  h1 {
    font-family: 'Cinzel', serif; font-size: 2.3rem; line-height: 1.2; letter-spacing: 3px;
    text-transform: uppercase; font-weight: 400; margin-bottom: 20px; color: var(--white);
  }
  .intro {
    font-size: 0.82rem; line-height: 2; color: rgba(255,255,255,0.8); margin-bottom: 24px;
    max-width: 700px;
  }
  .sub-intro {
    font-size: 0.74rem; line-height: 1.95; color: var(--slate); margin-bottom: 30px; max-width: 720px;
  }
  .summary-box {
    background: rgba(255,255,255,0.03); border: 1px solid rgba(197,165,90,0.12);
    padding: 24px 26px; margin-bottom: 28px;
  }
  .summary-box h2 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .summary-box ul { list-style: none; }
  .summary-box li {
    position: relative; padding-left: 18px; margin-bottom: 12px; color: rgba(255,255,255,0.82);
    font-size: 0.74rem; line-height: 1.85;
  }
  .summary-box li:last-child { margin-bottom: 0; }
  .summary-box li::before {
    content: ''; position: absolute; left: 0; top: 12px; width: 6px; height: 1px; background: var(--gold);
  }
  .actions {
    display: flex; gap: 14px; flex-wrap: wrap; margin-top: 8px;
  }
  .btn-gold, .btn-ghost {
    display: inline-block; text-decoration: none; padding: 16px 28px; font-size: 0.6rem; letter-spacing: 4px;
    text-transform: uppercase; font-weight: 700; transition: all 0.3s;
  }
  .btn-gold {
    background: var(--gold); color: var(--navy);
  }
  .btn-gold:hover { background: var(--gold-light); }
  .btn-ghost {
    border: 1px solid rgba(255,255,255,0.24); color: var(--white);
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  footer {
    background: #192842; padding: 34px 24px 28px; border-top: 1px solid rgba(197,165,90,0.1); text-align: center;
  }
  footer p {
    font-size: 0.62rem; line-height: 1.8; color: rgba(255,255,255,0.35);
  }

  @media (max-width: 768px) {
    nav { padding: 18px 24px; }
    .nav-links { display: none; }
    .hamburger { display: flex; z-index: 101; }
    .nav-brand { font-size: 0.56rem; letter-spacing: 2px; }
    .thank-you-card { padding: 40px 24px; }
    h1 { font-size: 1.6rem; letter-spacing: 2px; }
    .intro { font-size: 0.76rem; }
    .sub-intro { font-size: 0.7rem; }
    .actions { flex-direction: column; }
    .btn-gold, .btn-ghost { text-align: center; width: 100%; }
  }

/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* ===== Source: training.html style block 1 ===== */
:root {
    --navy: #192842;
    --navy-mid: #253a59;
    --navy-light: #30486e;
    --gold: #c5a55a;
    --gold-light: #d9c580;
    --gold-muted: #8a7a50;
    --cream: #f8f5ef;
    --white: #ffffff;
    --slate: #a0b0c0;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  a, button { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  html { scroll-behavior: smooth; }
  body { background: var(--navy); color: var(--white); font-family: 'Montserrat', sans-serif; overflow-x: hidden; }

  /* PAGE TRANSITIONS */
  .page { display: none; opacity: 0; transition: opacity 0.5s ease; }
  .page.active { display: block; }
  .page.visible { opacity: 1; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0; transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
  }
  .reveal.revealed { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }
  .reveal-delay-6 { transition-delay: 0.6s; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    display: flex; align-items: center; justify-content: space-between;
    padding: 28px 60px; background: transparent; transition: all 0.4s;
  }
  nav.scrolled { background: rgba(25,40,66,0.96); backdrop-filter: blur(10px); padding: 18px 60px; }
  .nav-logo { display: flex; align-items: center; gap: 14px; cursor: pointer; -webkit-tap-highlight-color: rgba(197,165,90,0.2); }
  .nav-logo svg { width: 32px; height: 40px; }
  .nav-brand {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600; color: var(--white); letter-spacing: 3px;
    display: inline-block; white-space: nowrap; overflow: hidden; max-width: 0; opacity: 0; transform: translateX(-10px);
    animation: navBrandUnscroll 1.05s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
  }
  @keyframes navBrandUnscroll {
    0% { max-width: 0; opacity: 0; transform: translateX(-10px); }
    35% { opacity: 1; }
    100% { max-width: 420px; opacity: 1; transform: translateX(0); }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-brand { animation: none; max-width: 420px; opacity: 1; transform: none; }
  }
  .nav-links { display: flex; gap: 28px; align-items: center; }
  .nav-links a {
    text-decoration: none; font-size: 0.65rem; letter-spacing: 2px;
    text-transform: uppercase; color: rgba(255,255,255,0.6); font-weight: 400;
    transition: color 0.3s; cursor: pointer; position: relative;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: -4px; left: 0;
    width: 0; height: 1px; background: var(--gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active { color: var(--gold); }
  .nav-links a.active::after { width: 100%; }
  .nav-cta {
    background: transparent; border: 1.5px solid var(--gold); color: var(--gold);
    padding: 10px 24px; font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 600; transition: all 0.3s;
  }
  .nav-cta:hover { background: var(--gold); color: var(--navy); }
  .nav-cta.active { background: var(--gold); color: var(--navy); }

  /* MOBILE NAV */
  .hamburger {
    display: none; flex-direction: column; gap: 5px; cursor: pointer;
    background: none; border: none; padding: 8px; -webkit-appearance: none; touch-action: manipulation;
  }
  .hamburger span { width: 24px; height: 1.5px; background: var(--white); transition: all 0.3s; }
  .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(4px, 4px); }
  .hamburger.open span:nth-child(2) { opacity: 0; }
  .hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

  .mobile-menu {
    display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(25,40,66,0.98); z-index: 99;
    flex-direction: column; align-items: center; justify-content: center; gap: 36px;
  }
  .mobile-menu.open { display: flex; }
  .mobile-menu a { -webkit-tap-highlight-color: rgba(197,165,90,0.2); touch-action: manipulation; }
  .mobile-menu a {
    text-decoration: none; font-family: 'Cinzel', serif; font-size: 1.4rem;
    letter-spacing: 4px; text-transform: uppercase; color: rgba(255,255,255,0.6);
    transition: color 0.3s; cursor: pointer;
  }
  .mobile-menu a:hover, .mobile-menu a.active { color: var(--gold); }

  /* HERO */
  .hero {
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
  }
  .hero-watermark {
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%); opacity: 0.04;
  }
  .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
    z-index: 0;
    pointer-events: none;
  }
  .hero-content { position: relative; z-index: 2; animation: fadeIn 1.2s ease; }
  .hero-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 28px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .hero-content .overline::before, .hero-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .hero-content h1 {
    font-family: 'Cinzel', serif; font-size: 3.8rem; font-weight: 400;
    letter-spacing: 6px; color: var(--white); line-height: 1.2;
    text-transform: uppercase; margin-bottom: 24px;
  }
  .hero-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .hero-desc {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 600px; margin: 0 auto 40px; font-weight: 300;
  }
  .hero-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

  .toolkit-toggle-btn.is-open {
    background: rgba(197,165,90,0.1);
    border-color: var(--gold);
    color: var(--gold-light);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16), inset 0 0 0 1px rgba(217,197,128,0.12);
  }
  .insight-card:focus-within,
  .insight-card.is-active {
    transform: translateY(-4px);
    border-left-color: var(--gold);
    box-shadow: 0 18px 36px rgba(0,0,0,0.2), inset 0 0 0 1px rgba(217,197,128,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.012));
  }
  .insight-card:focus-within .read-more,
  .insight-card.is-active .read-more,
  .insight-card:focus-within .insight-toggle,
  .insight-card.is-active .insight-toggle {
    color: var(--gold-light);
    border-bottom-color: var(--gold-light);
  }
  .tk-pill-btn.active,
  .tk-opt.tk-nf-active {
    box-shadow: 0 10px 24px rgba(0,0,0,0.14), inset 0 0 0 1px rgba(217,197,128,0.08);
  }
  .btn-gold {
    background: var(--gold); color: var(--navy); padding: 16px 36px; border: none;
    font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 700; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-gold:hover { background: var(--gold-light); }
  .btn-ghost {
    background: transparent; border: 1px solid rgba(255,255,255,0.2); color: var(--white);
    padding: 16px 36px; font-size: 0.6rem; letter-spacing: 4px; text-transform: uppercase;
    cursor: pointer; font-family: 'Montserrat', sans-serif; font-weight: 400; transition: all 0.3s;
    text-decoration: none; display: inline-block;
  }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold); }

  /* DIVIDER */
  .gold-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0.3;
  }

  /* SECTION HEADS */
  .section-head { margin-bottom: 60px; }
  .section-head .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500;
  }
  .section-head h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    color: var(--white); letter-spacing: 3px; margin-top: 10px; text-transform: uppercase;
  }

  /* SERVICES */
  .services {
    padding: 100px 80px; background: var(--navy-mid); position: relative;
  }
  .services::before {
    content: ''; position: absolute; top: 0; left: 60px; bottom: 0;
    width: 1px; background: linear-gradient(180deg, transparent, rgba(197,165,90,0.15), transparent);
  }
  .service-rows { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; max-width: 1100px; margin: 0 auto; }
  .svc {
    padding: 44px 40px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative;
  }
  .svc::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 2px; background: var(--gold); transition: width 0.5s;
  }
  .svc:hover::after { width: 100%; }
  .svc:hover { background: rgba(197,165,90,0.018); }
  .svc .num { font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 300; color: rgba(197,165,90,0.3); margin-bottom: 14px; }
  .svc h3 { font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500; color: var(--white); letter-spacing: 2px; margin-bottom: 10px; }
  .svc p { font-size: 0.72rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* TRAINING HIGHLIGHT */
  .training-highlight {
    padding: 80px; background: var(--navy);
    text-align: center;
  }
  .training-inner {
    max-width: 800px; margin: 0 auto;
    padding: 50px 60px;
    border: 1px solid rgba(197,165,90,0.15);
    position: relative;
  }
  .training-inner::before {
    content: ''; position: absolute; top: -1px; left: 50%; transform: translateX(-50%);
    width: 60px; height: 3px; background: var(--gold);
  }
  .training-inner .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-inner h3 {
    font-family: 'Cinzel', serif; font-size: 1.3rem; font-weight: 400;
    color: var(--white); letter-spacing: 2px; margin-bottom: 14px; text-transform: uppercase;
  }
  .training-inner p {
    font-size: 0.75rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 28px;
  }

  /* HOW WE WORK */
  .how-we-work {
    padding: 100px 80px; background: var(--navy);
  }
  .process-steps {
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
    max-width: 1100px; margin: 0 auto; position: relative;
  }
  .process-steps::before {
    content: ''; position: absolute; top: 28px; left: 10%; right: 10%;
    height: 1px; background: rgba(197,165,90,0.25);
  }
  .process-step {
    text-align: center; padding: 0 16px; position: relative;
  }
  .process-step .step-num {
    width: 56px; height: 56px; border: 2px solid var(--gold);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 20px; font-family: 'Cinzel', serif; font-size: 1.1rem;
    font-weight: 600; color: var(--gold); background: var(--navy);
    position: relative; z-index: 2;
  }
  .process-step h4 {
    font-family: 'Cinzel', serif; font-size: 0.7rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 10px;
  }
  .process-step p {
    font-size: 0.65rem; line-height: 1.7; color: var(--slate); font-weight: 300;
  }

  /* WHY SECTION */
  .why {
    padding: 100px 80px; background: var(--navy);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: center;
  }
  .why-left h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .why-left p { font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 32px; }
  .why-right { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .why-card {
    background: var(--navy-mid); padding: 32px 28px;
    border-top: 2px solid var(--gold); transition: transform 0.3s;
  }
  .why-card:hover { transform: translateY(-4px); }
  .why-card .icon { font-size: 1.6rem; margin-bottom: 12px; color: var(--gold); }
  .why-card h4 {
    font-family: 'Cinzel', serif; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); margin-bottom: 8px; text-transform: uppercase;
  }
  .why-card p { font-size: 0.68rem; line-height: 1.7; color: var(--slate); font-weight: 300; }

  /* QUOTE */
  .quote-section {
    padding: 80px; background: var(--gold); text-align: center; position: relative;
  }
  .quote-section blockquote {
    font-family: 'Cormorant Garamond', serif; font-size: 1.8rem; font-weight: 400;
    font-style: italic; color: var(--navy); max-width: 700px;
    margin: 0 auto; line-height: 1.5;
  }
  .quote-section .attr {
    font-family: 'Montserrat', sans-serif; font-size: 0.65rem; letter-spacing: 3px;
    text-transform: uppercase; color: var(--navy); font-weight: 700; margin-top: 24px;
  }

  /* CTA DARK */
  .cta-dark {
    padding: 100px 80px; text-align: center; background: var(--navy);
  }
  .cta-dark h2 {
    font-family: 'Cinzel', serif; font-size: 2rem; font-weight: 400;
    letter-spacing: 4px; color: var(--white); text-transform: uppercase; margin-bottom: 14px;
  }
  .cta-dark p { font-size: 0.75rem; color: var(--slate); margin-bottom: 36px; font-weight: 300; }

  /* FOOTER */
  footer {
    background: #192842; padding: 50px 80px 30px;
    border-top: 1px solid rgba(197,165,90,0.1);
  }
  .footer-main {
    display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 60px;
    margin-bottom: 40px;
  }
  .footer-brand { display: flex; align-items: flex-start; gap: 16px; }
  .footer-brand svg { width: 28px; height: 34px; flex-shrink: 0; margin-top: 3px; }
  .footer-brand-text span {
    font-family: 'Cinzel', serif; font-size: 0.8rem; letter-spacing: 3px;
    color: rgba(255,255,255,0.5); display: inline-block; margin-bottom: 16px;
    line-height: 1.4; padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
  }
  .footer-brand-text p {
    font-size: 0.62rem; line-height: 1.9; color: rgba(255,255,255,0.3); font-weight: 300;
    max-width: 340px;
  }
  .footer-col h5 {
    font-family: 'Cinzel', serif; font-size: 0.6rem; font-weight: 600;
    letter-spacing: 3px; text-transform: uppercase; color: var(--gold);
    margin-bottom: 18px; padding-bottom: 12px;
    border-bottom: 1px solid rgba(197,165,90,0.3);
    display: inline-block;
  }
  .footer-col p, .footer-col a {
    font-size: 0.62rem; line-height: 2; color: rgba(255,255,255,0.35);
    font-weight: 300; text-decoration: none; display: block;
  }
  .footer-col a:hover { color: var(--gold); }
  .footer-social {
    display: flex; gap: 16px; margin-top: 14px;
  }
  .footer-social a {
    width: 32px; height: 32px; border: 1px solid rgba(197,165,90,0.2);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.65rem; color: rgba(255,255,255,0.4); transition: all 0.3s;
  }
  .footer-social a:hover { border-color: var(--gold); color: var(--gold); }
  .footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.08); padding-top: 24px;
    flex-wrap: wrap; gap: 12px;
  }
  .footer-bottom p {
    font-size: 0.55rem; color: rgba(255,255,255,0.2); letter-spacing: 1px;
  }

  /* ===== ABOUT PAGE ===== */
  .about-hero {
    min-height: 60vh; display: flex; align-items: center; justify-content: center;
    text-align: center; position: relative; overflow: hidden;
    padding: 140px 80px 80px;
  }
  .about-hero .hero-lines {
    position: absolute; top: 0; right: 0; bottom: 0; left: 0;
    background:
      linear-gradient(90deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%),
      linear-gradient(0deg, transparent 49.5%, rgba(197,165,90,0.018) 49.5%, rgba(197,165,90,0.018) 50.5%, transparent 50.5%);
    background-size: 80px 80px;
  }
  .about-content { position: relative; z-index: 2; }
  .about-content .overline {
    font-size: 0.6rem; letter-spacing: 8px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 20px;
    display: flex; align-items: center; justify-content: center; gap: 16px;
  }
  .about-content .overline::before, .about-content .overline::after {
    content: ''; width: 40px; height: 1px; background: var(--gold); opacity: 0.4;
  }
  .about-content h1 {
    font-family: 'Cinzel', serif; font-size: 3rem; font-weight: 400;
    letter-spacing: 5px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .about-content h1 em { font-style: normal; color: var(--gold); font-weight: 700; }
  .about-content p {
    font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.5);
    max-width: 650px; margin: 0 auto; font-weight: 300;
  }

  .about-story {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start;
  }
  .about-story h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 24px;
  }
  .about-story p {
    font-size: 0.78rem; line-height: 2; color: var(--slate); font-weight: 300; margin-bottom: 20px;
  }

  .stats-row {
    padding: 80px; background: var(--navy);
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px; text-align: center;
  }
  .stat-item { padding: 20px; }
  .stat-item .num {
    font-family: 'Cinzel', serif; font-size: 2.8rem; font-weight: 400; color: var(--gold); margin-bottom: 8px;
  }
  .stat-item .label {
    font-size: 0.6rem; letter-spacing: 3px; text-transform: uppercase; color: var(--slate); font-weight: 400;
  }

  .values-section { padding: 100px 80px; background: var(--navy-mid); }
  .values-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .value-item {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s; text-align: center;
  }
  .value-item:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .value-item .icon { font-size: 1.8rem; margin-bottom: 16px; color: var(--gold); }
  .value-item h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 12px;
  }
  .value-item p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== SECTORS PAGE ===== */
  .sectors-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; max-width: 1200px; margin: 0 auto;
  }
  .sector-card {
    padding: 50px 36px; border: 1px solid rgba(197,165,90,0.08);
    transition: all 0.4s; position: relative; overflow: hidden;
  }
  .sector-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0;
    height: 3px; background: var(--gold); transform: scaleX(0);
    transform-origin: left; transition: transform 0.5s;
  }
  .sector-card:hover::before { transform: scaleX(1); }
  .sector-card:hover { background: rgba(197,165,90,0.018); }
  .sector-card .sector-icon { font-size: 2rem; margin-bottom: 20px; color: var(--gold); opacity: 0.8; }
  .sector-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.9rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); margin-bottom: 12px; text-transform: uppercase;
  }
  .sector-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }

  /* ===== INSIGHTS PAGE ===== */
  .insights-grid {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; max-width: 1000px; margin: 0 auto;
  }
  .insight-card {
    background: var(--navy-mid); padding: 40px 36px;
    border-left: 3px solid var(--gold); transition: all 0.4s;
    display:flex;
    flex-direction:column;
    min-height:100%;
  }
  .insight-card:hover { transform: translateY(-2px); }
  .insight-card .tag {
    font-size: 0.5rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 14px;
  }
  .insight-card h3 {
    font-family: 'Cinzel', serif; font-size: 0.95rem; font-weight: 500;
    color: var(--white); letter-spacing: 1px; margin-bottom: 12px; line-height: 1.5;
  }
  .insight-card p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; margin-bottom: 16px; }
  .insight-card .read-more {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; text-decoration: none; cursor: pointer; transition: opacity 0.3s;
  }
  .insight-card .read-more:hover { opacity: 0.7; }
  .insights-grid, .insights-more { align-items:stretch; }

  .official-updates-section {
    padding-top: 64px !important;
  }
  .official-updates-section .section-head {
    max-width: 920px;
    margin: 0 auto 34px;
    padding-top: 6px;
  }
  .official-updates-section .section-head .over {
    display: block;
    margin-bottom: 22px;
  }
  .official-updates-section .section-head h2 {
    margin-bottom: 24px;
  }
  .official-updates-section .section-head p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
  }
  .official-updates-section .insights-grid {
    align-items: stretch;
  }
  .official-updates-section .insight-card {
    min-height: 100%;
  }
  .official-meta {
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 10px;
    font-weight: 500;
  }
  .official-date {
    display: block;
    font-size: 0.55rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    margin-bottom: 16px;
    font-weight: 500;
  }
  .official-note {
    max-width: 860px;
    margin: 12px auto 0;
    font-size: 0.64rem;
    line-height: 1.9;
    color: rgba(255,255,255,0.42);
    text-align: center;
  }

  .official-updates-status {
    max-width: 1000px;
    margin: 10px auto 26px;
    padding: 0 4px;
    font-size: 0.56rem;
    letter-spacing: 2.2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
  }
  .official-updates-status strong {
    color: rgba(255,255,255,0.72);
    font-weight: 500;
  }

  /* ===== TRAINING PAGE ===== */
  .training-page-intro {
    padding: 100px 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .training-page-content {
    padding: 80px; background: var(--navy-mid);
  }
  .training-features {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px;
    max-width: 1000px; margin: 0 auto;
  }
  .training-feature {
    padding: 40px 32px; border: 1px solid rgba(197,165,90,0.1);
    transition: all 0.4s;
  }
  .training-feature:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.03); }
  .training-feature .icon { font-size: 1.6rem; margin-bottom: 14px; color: var(--gold); }
  .training-feature h4 {
    font-family: 'Cinzel', serif; font-size: 0.8rem; font-weight: 600;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 10px;
  }
  .training-feature p { font-size: 0.7rem; line-height: 1.8; color: var(--slate); font-weight: 300; }
  .training-intro-grid {
    max-width: 1120px; margin: 0 auto 64px;
    display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 34px; align-items: start;
  }
  .training-lead {
    border-left: 1px solid rgba(197,165,90,0.28);
    padding-left: 32px;
  }
  .training-lead p {
    font-size: 0.8rem; line-height: 1.95; color: var(--slate); font-weight: 300;
  }
  .training-actions {
    display: flex; gap: 16px; flex-wrap: wrap; margin-top: 28px;
  }
  .training-actions .btn-gold,
  .training-actions .btn-ghost {
    min-height: 50px; display: inline-flex; align-items: center; justify-content: center;
    padding: 14px 24px; font-size: 0.56rem; letter-spacing: 3px;
  }
  .training-pathways {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px;
  }
  .training-pathway {
    position: relative; min-height: 100%;
    padding: 34px 28px 32px;
    border: 1px solid rgba(197,165,90,0.12);
    background: rgba(255,255,255,0.015);
    transition: border-color 0.3s, background 0.3s, transform 0.3s;
  }
  .training-pathway::before {
    content: ''; position: absolute; top: 0; left: 28px; right: 28px; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.72), transparent);
  }
  .training-pathway:hover {
    border-color: rgba(197,165,90,0.32);
    background: rgba(197,165,90,0.035);
    transform: translateY(-2px);
  }
  .training-pathway .kicker,
  .training-format .kicker {
    display: block; margin-bottom: 16px;
    font-size: 0.52rem; letter-spacing: 4px; text-transform: uppercase;
    color: var(--gold);
  }
  .training-pathway h3,
  .training-outcomes h3,
  .training-format h3 {
    font-family: 'Cinzel', serif; font-weight: 500; text-transform: uppercase;
    color: var(--white); letter-spacing: 2px;
  }
  .training-pathway h3 { font-size: 0.9rem; line-height: 1.45; margin-bottom: 14px; }
  .training-pathway p,
  .training-outcomes p,
  .training-format p {
    font-size: 0.72rem; line-height: 1.85; color: var(--slate); font-weight: 300;
  }
  .training-outcomes {
    max-width: 1120px; margin: 0 auto 68px; padding: 36px 0;
    display: grid; grid-template-columns: 0.8fr 1.2fr; gap: 42px; align-items: center;
    border-top: 1px solid rgba(197,165,90,0.14);
    border-bottom: 1px solid rgba(197,165,90,0.14);
  }
  .training-outcomes .over {
    font-size: 0.55rem; letter-spacing: 6px; text-transform: uppercase;
    color: var(--gold); font-weight: 500; margin-bottom: 14px;
  }
  .training-outcomes h3 { font-size: 1.1rem; line-height: 1.55; margin-bottom: 16px; }
  .training-outcome-list {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px;
  }
  .training-outcome-list span {
    display: block; padding: 14px 16px 14px 18px;
    border-left: 1px solid rgba(197,165,90,0.44);
    background: rgba(255,255,255,0.012);
    color: rgba(255,255,255,0.74);
    font-size: 0.68rem; line-height: 1.65; letter-spacing: 0.2px;
  }
  .training-delivery-grid {
    max-width: 1120px; margin: 0 auto;
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px;
  }
  .training-format {
    padding: 28px 24px 30px;
    border-top: 1px solid rgba(197,165,90,0.26);
    background: rgba(25,40,66,0.34);
  }
  .training-format h3 { font-size: 0.78rem; line-height: 1.45; margin-bottom: 12px; }

  /* ===== CONTACT PAGE ===== */
  .contact-section {
    padding: 100px 80px; background: var(--navy-mid);
    display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; align-items: start;
  }
  .contact-info h2 {
    font-family: 'Cinzel', serif; font-size: 1.8rem; font-weight: 400;
    letter-spacing: 3px; color: var(--white); text-transform: uppercase; margin-bottom: 20px;
  }
  .contact-info p {
    font-size: 0.78rem; line-height: 1.9; color: var(--slate); font-weight: 300; margin-bottom: 36px;
  }
  .accreditation-card {
    margin-top: 34px;
    padding-top: 12px;
    border-top: 1px solid rgba(197,165,90,0.14);
  }
  .accreditation-card .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 12px;
  }
  .portal-intro {
    font-size: 0.7rem;
    line-height: 1.8;
    color: var(--slate);
    font-weight: 300;
    margin: 0 0 18px;
    max-width: 560px;
  }
  .portal-links-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portal-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    padding: 18px 20px;
    border: 1px solid rgba(197,165,90,0.16);
    background: rgba(255,255,255,0.02);
    border-radius: 16px;
    text-decoration: none;
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  }
  .portal-link:hover {
    transform: translateY(-2px);
    border-color: rgba(197,165,90,0.34);
    background: rgba(197,165,90,0.04);
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  }
  .portal-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  .portal-link-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
  }
  .portal-logo {
    display: block;
    max-width: min(240px, 100%);
    width: auto;
    height: auto;
    max-height: 48px;
  }
  .portal-logo-bloom { max-height: 44px; }
  .portal-logo-constellia { max-height: 40px; }
  .portal-logo-delta { max-height: 64px; }
  .portal-caption {
    font-size: 0.56rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.52);
    font-weight: 500;
    text-align: center;
  }
  .contact-detail {
    display: flex; gap: 14px; margin-bottom: 24px; align-items: flex-start;
  }
  .contact-detail .cd-icon {
    width: 36px; height: 36px; border: 1px solid rgba(197,165,90,0.3);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.8rem; color: var(--gold); flex-shrink: 0;
  }
  .contact-detail .cd-text .cd-label {
    font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase;
    color: var(--gold); font-weight: 600; margin-bottom: 4px;
  }
  .contact-detail .cd-text .cd-value {
    font-size: 0.75rem; color: rgba(255,255,255,0.7); font-weight: 300;
  }
  .contact-form {
    background: var(--navy); padding: 50px 44px; border: 1px solid rgba(197,165,90,0.1);
  }
  .contact-form h3 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase; margin-bottom: 30px;
  }
  .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
  .form-group { margin-bottom: 20px; }
  .form-group label {
    display: block; font-size: 0.55rem; letter-spacing: 2px; text-transform: uppercase;
    color: var(--slate); font-weight: 500; margin-bottom: 8px;
  }
  .form-group input, .form-group select, .form-group textarea {
    width: 100%; background: var(--navy-mid); border: 1px solid rgba(197,165,90,0.15);
    color: var(--white); padding: 14px 16px; font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem; font-weight: 300; outline: none; transition: border-color 0.3s;
  }
  .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--gold); }
  .form-group textarea { min-height: 120px; resize: vertical; }
  .form-group select { cursor: pointer; appearance: none; }
  .form-group select option { background: var(--navy-mid); }
  .form-submit { display: flex; align-items: center; gap: 20px; margin-top: 10px; }
  .form-success {
    display: none; padding: 28px 24px; background: rgba(197,165,90,0.08);
    border: 1px solid rgba(197,165,90,0.4); border-top: 3px solid var(--gold); text-align: center; margin-top: 20px;
    border-radius: 4px;
  }
  .contact-form.submitted > *:not(.form-success) { display: none !important; }
  .contact-form.submitted .form-success { display: block; }
  .form-success.show { display: block; }
  .form-success p {
    font-family: 'Cinzel', serif; font-size: 1.02rem; color: var(--gold);
    letter-spacing: 2px; margin-bottom: 12px; text-transform: uppercase;
  }
  .form-success span {
    font-size: 0.78rem; color: rgba(255,255,255,0.82); font-weight: 300;
    display: block; margin-top: 0; line-height: 1.85;
  }

  /* ===== PRIVACY POLICY PAGE ===== */
  .policy-content {
    padding: 80px; background: var(--navy-mid);
    max-width: 900px; margin: 0 auto;
  }
  .policy-updated {
    font-size: 0.65rem; letter-spacing: 2px; color: var(--gold);
    text-transform: uppercase; font-weight: 500; margin-bottom: 30px;
  }
  .policy-section { margin-bottom: 36px; }
  .policy-content h2 {
    font-family: 'Cinzel', serif; font-size: 1rem; font-weight: 500;
    letter-spacing: 2px; color: var(--white); text-transform: uppercase;
    margin-bottom: 16px;
  }
  .policy-content h3 {
    font-size: 0.72rem; font-weight: 600; color: var(--gold);
    letter-spacing: 1px; margin: 16px 0 8px; text-transform: uppercase;
  }
  .policy-content p {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    margin-bottom: 14px;
  }
  .policy-content ul {
    list-style: none; padding: 0; margin-bottom: 14px;
  }
  .policy-content ul li {
    font-size: 0.75rem; line-height: 2; color: var(--slate); font-weight: 300;
    padding-left: 20px; position: relative;
  }
  .policy-content ul li::before {
    content: ''; position: absolute; left: 0; top: 12px;
    width: 6px; height: 1px; background: var(--gold);
  }
  .policy-content strong { color: var(--white); font-weight: 500; }

  @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

  /* ===== REFINED DIMENSIONAL EFFECTS ===== */
  #page-home .hero-content {
    perspective: none;
    transform-style: flat;
  }

  .svc,
  .feature-split-card,
  .why-card,
  .sector-card,
  .insight-card,
  .training-feature,
  .toolkit-paid-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .value-item,
  .process-step {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    box-shadow: 0 14px 30px rgba(9,16,28,0.14);
    transition: box-shadow 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
  }
  .svc::before,
  .feature-split-card::before,
  .why-card::before,
  .sector-card::before,
  .insight-card::before,
  .training-feature::before,
  .toolkit-paid-card::before,
  .tk-portal-card::before,
  .tk-gloss-term::before,
  .tk-notice-card::before,
  .value-item::before,
  .process-step::before {
    content:'';
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0));
    opacity:0;
    pointer-events:none;
    transition: opacity 0.28s ease;
  }
  .svc:hover,
  .feature-split-card:hover,
  .why-card:hover,
  .sector-card:hover,
  .insight-card:hover,
  .training-feature:hover,
  .toolkit-paid-card:hover,
  .tk-portal-card:hover,
  .tk-gloss-term:hover,
  .tk-notice-card:hover,
  .value-item:hover,
  .process-step:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .svc:hover::before,
  .feature-split-card:hover::before,
  .why-card:hover::before,
  .sector-card:hover::before,
  .insight-card:hover::before,
  .training-feature:hover::before,
  .toolkit-paid-card:hover::before,
  .tk-portal-card:hover::before,
  .tk-gloss-term:hover::before,
  .tk-notice-card:hover::before,
  .value-item:hover::before,
  .process-step:hover::before {
    opacity: 1;
  }

  .feature-split-card,
  .toolkit-paid-card,
  .training-feature,
  .insight-card,
  .sector-card,
  .tk-portal-card,
  .tk-gloss-term,
  .tk-notice-card,
  .svc,
  .process-step {
    background-image: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
  }

  .process-step {
    border: 1px solid rgba(197,165,90,0.08);
    padding: 26px 18px 24px;
    text-align: center;
  }
  .process-step:hover {
    background: linear-gradient(180deg, rgba(197,165,90,0.06), rgba(255,255,255,0.01));
  }
  .process-step .step-num {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }
  .process-step:hover .step-num {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.16);
    border-color: rgba(217,197,128,0.85);
  }

  .stats-row .stat-item {
    position: relative;
    background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
    border: 1px solid rgba(197,165,90,0.1);
    box-shadow: 0 16px 30px rgba(8,14,24,0.16);
    transition: transform 0.32s ease, box-shadow 0.32s ease, border-color 0.32s ease;
  }
  .stats-row .stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 38px rgba(6,12,22,0.22);
    border-color: rgba(197,165,90,0.22);
  }
  .stats-row .stat-item::after {
    content: '';
    position: absolute;
    left: 18%; right: 18%; bottom: 12px;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(197,165,90,0.8), transparent);
    opacity: 0.55;
  }

  .nav-cta,
  .contact-form .btn-gold {
    transform: translateZ(0);
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  }
  .nav-cta:hover,
  .contact-form .btn-gold:hover {
    transform: translateY(-2px) scale(1.035);
    box-shadow: 0 12px 24px rgba(0,0,0,0.18);
  }

  .insight-card {
    border: 1px solid rgba(197,165,90,0.12);
    border-left-width: 2px;
  }
  .insight-card::after {
    content:'';
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg, rgba(197,165,90,0), rgba(197,165,90,0.75), rgba(197,165,90,0));
    opacity:0.35;
    transition: opacity 0.28s ease;
  }
  .insight-card:hover::after {
    opacity:0.9;
  }
  .insight-card:hover .read-more,
  .sector-card:hover h3,
  .training-feature:hover h4,
  .toolkit-paid-card:hover .toolkit-card-link {
    color: var(--gold-light);
  }

  @media (prefers-reduced-motion: reduce) {
    .svc,
    .feature-split-card,
    .why-card,
    .sector-card,
    .insight-card,
    .training-feature,
    .toolkit-paid-card,
    .tk-portal-card,
    .tk-gloss-term,
    .tk-notice-card,
    .value-item,
    .process-step,
    .stats-row .stat-item,
    .nav-cta,
    .contact-form .btn-gold {
      transition: none !important;
      transform: none !important;
    }
    .svc::before,
    .feature-split-card::before,
    .why-card::before,
    .sector-card::before,
    .insight-card::before,
    .training-feature::before,
    .toolkit-paid-card::before,
    .tk-portal-card::before,
    .tk-gloss-term::before,
    .tk-notice-card::before,
    .value-item::before,
    .process-step::before,
    .insight-card::after {
      transition: none !important;
    }
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 1024px) {
    .hero-content h1 { font-size: 2.6rem; }
    .about-story { grid-template-columns: 1fr; gap: 40px; }
    .stats-row { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .sectors-grid { grid-template-columns: repeat(2, 1fr); }
    .contact-section { grid-template-columns: 1fr; gap: 50px; }
    .why { grid-template-columns: 1fr; gap: 50px; }
    .training-features { grid-template-columns: 1fr; }
    .training-intro-grid,
    .training-outcomes { grid-template-columns: 1fr; }
    .training-pathways,
    .training-delivery-grid { grid-template-columns: repeat(2, 1fr); }
    .process-steps { grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .process-steps::before { display: none; }
  }
  @media (max-width: 768px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }
    .nav-links { display: none; }
    .nav-brand { font-size: 0.55rem; letter-spacing: 2px; }
    .nav-logo svg { width: 24px; height: 30px; }
    .hamburger { display: flex; z-index: 101; }
    .hero { min-height: 100vh; padding: 0 24px; }
    .hero-content h1 { font-size: 1.8rem; letter-spacing: 2px; }
    .hero-content .overline { font-size: 0.5rem; letter-spacing: 5px; }
    .hero-desc { font-size: 0.72rem; }
    .hero-btns { flex-direction: column; align-items: center; gap: 12px; }
    .btn-gold, .btn-ghost { width: 100%; max-width: 280px; text-align: center; }
    .services, .why, .cta-dark, .about-hero, .about-story, .values-section, .contact-section, .training-page-content, .how-we-work { padding: 60px 24px; }
    .stats-row { padding: 60px 24px; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .quote-section { padding: 50px 24px; }
    .quote-section blockquote { font-size: 1.2rem; }
    .service-rows { grid-template-columns: 1fr; }
    .svc { padding: 32px 24px; }
    .svc h3 { font-size: 0.85rem; }
    .why-right { grid-template-columns: 1fr; }
    .values-grid { grid-template-columns: 1fr; }
    .sectors-grid { grid-template-columns: 1fr; }
    .insights-grid { grid-template-columns: 1fr; }
    .training-features { grid-template-columns: 1fr; }
    .training-pathways,
    .training-delivery-grid,
    .training-outcome-list { grid-template-columns: 1fr; }
    .training-lead { padding-left: 22px; }
    .training-actions .btn-gold,
    .training-actions .btn-ghost { width: 100%; }
    .process-steps { grid-template-columns: 1fr; gap: 30px; }
    .process-step .step-num { width: 46px; height: 46px; font-size: 0.95rem; }
    .form-row { grid-template-columns: 1fr; }
    .contact-form { padding: 36px 24px; }

    .accreditation-card { margin-top: 28px; padding-top: 10px; }
    .portal-links-grid { gap: 12px; }
    .portal-link { min-height: 82px; padding: 16px; }
    .portal-logo-bloom { max-height: 38px; }
    .portal-logo-constellia { max-height: 34px; }
    .portal-logo-delta { max-height: 54px; }
    footer { padding: 30px 24px 20px; }
    .footer-main { grid-template-columns: 1fr; gap: 30px; }
    .footer-bottom { flex-direction: column; text-align: center; }
    .about-hero { padding: 80px 24px 40px; min-height: auto; }
    .about-content h1 { font-size: 1.8rem; }
    .about-content p { font-size: 0.72rem; }
    .about-story h2 { font-size: 1.4rem; }
    .stat-item .num { font-size: 2rem; }
    .section-head h2 { font-size: 1.4rem; }
    .cta-dark h2 { font-size: 1.4rem; letter-spacing: 2px; }
    .why-left h2 { font-size: 1.5rem; }
    .policy-content { padding: 40px 24px; }
    .policy-section h2 { font-size: 0.9rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    
    /* -- TOOLKIT INLINE STYLE OVERRIDES ----------------------- */
    .how-we-work { padding: 60px 24px !important; }
    #tk-notices-out { grid-template-columns: 1fr !important; }
    #tk-gloss-out { grid-template-columns: 1fr !important; }
    #page-toolkit .svc { overflow-x: hidden; overflow: hidden; }
    .svc::after { display: none; }
    .svc:hover { background: none; }
    #page-toolkit [style*="max-width:1100px"],
    #page-toolkit [style*="max-width:1000px"],
    #page-toolkit [style*="max-width:800px"] { max-width: 100% !important; padding-left: 0; padding-right: 0; }

    /* -- TOOLKIT OVERFLOW FIX --------------------------------- */
    #toolkit, #toolkit * { max-width: 100%; box-sizing: border-box; }
    #toolkit .container { overflow-x: hidden; }
    /* -- TOOLKIT PAGE MOBILE ----------------------------------- */
    .tk-portal-card { padding: 16px 18px; width: 100%; box-sizing: border-box; }
    .tk-portal-card strong { font-size: 0.75rem; }
    .tk-portal-card span { font-size: 0.7rem; }
    .tk-opt { padding: 10px 16px; font-size: 0.62rem; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
    .tk-gloss-term { padding: 12px 14px; }
    .tk-gloss-term strong { font-size: 0.7rem; }
    .tk-gloss-term span { font-size: 0.68rem; }
    .tk-milestone { flex-wrap: wrap; gap: 6px; }
    .tk-milestone-label { font-size: 0.66rem; flex-basis: 100%; }
    .tk-milestone-date { font-size: 0.66rem; }
    .tk-date-grid { grid-template-columns: 1fr !important; }
    [class*="tk-"] > * { max-width: 100%; box-sizing: border-box; }
    .tk-tool-panel, .tk-section, .tk-grid, .tk-card-grid { grid-template-columns: 1fr !important; }
    .tk-opt-group { display: flex; flex-direction: column; gap: 8px; width: 100%; }
    .tk-result { padding: 20px 16px; font-size: 0.72rem; }
    .tk-input, .tk-select { width: 100%; max-width: 100%; font-size: 0.78rem; padding: 10px 12px; box-sizing: border-box; }
    .tk-btn { width: 100%; min-height: 44px; font-size: 0.65rem; }
    .tk-tabs { flex-wrap: wrap; gap: 6px; }
    .tk-tab { flex: 1 1 auto; text-align: center; font-size: 0.6rem; padding: 8px 10px; }

  }

  /* -- TOOLKIT PAGE ------------------------------------------ */
  .tk-opt {
    background: transparent; border: 1px solid rgba(197,165,90,0.25);
    color: rgba(255,255,255,0.7); padding: 8px 18px;
    font-size: 0.65rem; letter-spacing: 2px; text-transform: uppercase;
    font-family: 'Montserrat', sans-serif; cursor: pointer;
    border-radius: 2px; transition: all 0.3s;
  }
  .tk-opt:hover { border-color: var(--gold); color: var(--gold); background: rgba(197,165,90,0.06); }
  .tk-portal-card {
    display: block; padding: 20px 24px;
    border: 1px solid rgba(197,165,90,0.1);
    text-decoration: none; color: inherit;
    transition: all 0.3s; border-radius: 2px;
  }
  .tk-portal-card:hover { border-color: rgba(197,165,90,0.3); background: rgba(197,165,90,0.018); }
  .tk-portal-card strong { font-family: 'Cinzel', serif; font-size: 0.8rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 6px; }
  .tk-portal-card span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-gloss-term { padding: 14px 18px; border: 1px solid rgba(197,165,90,0.08); border-radius: 2px; }
  .tk-gloss-term strong { font-family: 'Cinzel', serif; font-size: 0.72rem; color: var(--gold); display: block; margin-bottom: 4px; letter-spacing: 1px; }
  .tk-gloss-term span { font-size: 0.68rem; color: var(--slate); line-height: 1.7; }
  .tk-milestone { display: flex; align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .tk-milestone:last-child { border-bottom: none; }
  .tk-milestone-label { font-size: 0.68rem; color: rgba(255,255,255,0.5); flex: 1; }
  .tk-milestone-date { font-size: 0.68rem; color: var(--gold); font-family: 'Cinzel', serif; white-space: nowrap; }
  .tk-milestone-flag { font-size: 0.58rem; color: #e07070; margin-left: 6px; }

  /* -- PA23 NOTICES ------------------------------------------ */
  .tk-nf-active { border-color: var(--gold) !important; color: var(--gold) !important; background: rgba(197,165,90,0.08) !important; }
  .tk-notice-card {
    padding: 20px 22px; border: 1px solid rgba(197,165,90,0.1);
    border-radius: 2px; transition: border-color 0.3s;
  }
  .tk-notice-card:hover { border-color: rgba(197,165,90,0.3); }
  .tk-notice-ref { font-family: 'Cinzel', serif; font-size: 0.75rem; color: var(--gold); letter-spacing: 2px; font-weight: 600; }
  .tk-notice-cat { font-size: 0.5rem; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,0.3); font-family: 'Montserrat', sans-serif; }
  .tk-notice-title { font-family: 'Cinzel', serif; font-size: 0.82rem; color: var(--white); letter-spacing: 1px; display: block; margin-bottom: 14px; }
  .tk-notice-section { margin-bottom: 10px; }
  .tk-notice-section:last-child { margin-bottom: 0; }
  .tk-notice-label { font-size: 0.55rem; letter-spacing: 3px; text-transform: uppercase; color: var(--gold); font-weight: 500; display: block; margin-bottom: 3px; }
  .tk-notice-section p { font-size: 0.68rem; color: rgba(255,255,255,0.55); line-height: 1.75; margin: 0; }

  /* Global mobile overflow protection */
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }
  .btn-gold:focus-visible, .btn-ghost:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
  }

  @media (max-width: 768px) {

    
    /* -- NOTICE CARDS MOBILE FIX ------------------------------- */
    .tk-notice-card { padding: 16px 14px; box-sizing: border-box; word-break: break-word; }
    .tk-notice-cat { 
      font-size: 0.42rem; 
      letter-spacing: 1px; 
      white-space: normal; 
      text-align: right;
      max-width: 120px;
      line-height: 1.4;
    }
    .tk-notice-ref { flex-shrink: 0; }
    #tk-notices-out { 
      grid-template-columns: 1fr !important; 
      overflow: hidden;
    }
    #tk-notices-out .tk-notice-card { width: 100%; max-width: 100%; overflow: hidden; }

    /* -- SERVICES DECORATIVE LINE FIX ------------------------- */
    .services::before { display: none; }

    /* -- GRID LINES MOBILE FIX -------------------------------- */
    .hero-lines { display: none; }
    .about-hero { overflow: hidden; }
    .services { overflow: hidden; }
    #page-toolkit .services { isolation: isolate; }

  }

  /* -- FOCUS / KEYBOARD STYLES -------------------------------- */
  .tk-opt:focus-visible, .btn-gold:focus-visible, .btn-ghost:focus-visible,
  a:focus-visible, button:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
  }
  @media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  }
  @media (max-width: 768px) {
    html, body { overflow-x: hidden; }
  }

  /* -- GLOSSARY SCROLLBAR ------------------------------------ */
  #tk-gloss-out::-webkit-scrollbar {
    width: 4px;
  }
  #tk-gloss-out::-webkit-scrollbar-track {
    background: rgba(25,40,66,0.6);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb {
    background: rgba(197,165,90,0.4);
    border-radius: 2px;
  }
  #tk-gloss-out::-webkit-scrollbar-thumb:hover {
    background: rgba(197,165,90,0.7);
  }

  /* ===== EDITORIAL / TOOLKIT ENHANCEMENTS ===== */
  .svc-link, .training-link-inline {
    display:inline-block;
    margin-top:14px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    text-decoration:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .svc-link:hover, .training-link-inline:hover { color: var(--gold-light); border-bottom-color: var(--gold-light); }

  .toolkit-paid {
    padding:80px; padding:clamp(40px,5vw,80px) clamp(20px,5vw,80px);
    background: var(--navy);
  }
  .feature-split-grid {
    max-width:1100px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:42px;
    align-items:stretch;
  }
  .feature-split-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:48px 52px;
    background:rgba(255,255,255,0.012);
    min-height:430px;
    display:flex;
    flex-direction:column;
    text-align:center;
  }
  .feature-split-card h4 {
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:3px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:20px;
  }
  .feature-split-card p {
    font-size:0.84rem;
    line-height:1.95;
    color:var(--slate);
    font-weight:300;
    max-width:560px;
    margin:0 auto 26px;
  }
  .feature-split-actions {
    margin-top:auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .feature-split-actions .btn-gold,
  .feature-split-actions .btn-ghost {
    width:min(360px,100%);
    min-height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:14px 24px;
  }
  .support-products-grid {
    max-width:1100px;
    margin:0 auto 36px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    align-items:stretch;
  }
  .toolkit-paid-card {
    border:1px solid rgba(197,165,90,0.12);
    padding:38px 42px 34px;
    background:rgba(255,255,255,0.012);
    display:flex;
    flex-direction:column;
    min-height:0;
  }
  .toolkit-paid-card h4 {
    font-family:'Cinzel',serif;
    font-size:0.98rem;
    font-weight:500;
    letter-spacing:2px;
    color:var(--gold);
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .toolkit-paid-card > p {
    font-size:0.79rem;
    line-height:1.85;
    color:var(--slate);
    font-weight:300;
    margin-bottom:24px;
  }
  .toolkit-card-footer {
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid rgba(197,165,90,0.12);
    display:flex;
    flex-direction:column;
    gap:16px;
  }
  .toolkit-card-label {
    display:block;
    margin-bottom:10px;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
  }
  .toolkit-card-list {
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .toolkit-card-list li {
    position:relative;
    padding-left:16px;
    font-size:0.69rem;
    line-height:1.7;
    color:rgba(255,255,255,0.62);
  }
  .toolkit-card-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:1px;
    background:var(--gold);
    opacity:0.8;
  }
  .toolkit-card-fit {
    margin:0;
    font-size:0.68rem;
    line-height:1.75;
    color:rgba(255,255,255,0.52);
  }
  .toolkit-card-link {
    align-self:flex-start;
    background:none;
    border:none;
    border-bottom:1px solid rgba(197,165,90,0.35);
    color:var(--gold);
    padding:0 0 4px;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    text-decoration:none;
  }
  .toolkit-card-link:hover {
    color:var(--gold-light);
    border-bottom-color:var(--gold-light);
  }
  .toolkit-paid-actions {
    max-width:1100px;
    margin:0 auto;
    text-align:center;
  }
  .toolkit-paid-note {
    max-width:680px;
    margin:18px auto 0;
    font-size:0.65rem;
    line-height:1.8;
    color:rgba(255,255,255,0.28);
  }

  .toolkit-toggle-btn {
    background:transparent;
    border:1px solid rgba(197,165,90,0.28);
    color:var(--gold);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    cursor:pointer;
    border-radius:2px;
    margin-bottom:18px;
  }
  .toolkit-toggle-btn:hover { background:rgba(197,165,90,0.06); border-color:var(--gold); }

  .insight-card.featured {
    background:rgba(255,255,255,0.015);
    border-left-width:4px;
  }
  .featured-label {
    font-size:0.48rem;
    letter-spacing:4px;
    text-transform:uppercase;
    color:var(--gold);
    font-weight:600;
    margin-bottom:12px;
  }
  .insight-meta {
    font-size:0.54rem;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.42);
    margin-bottom:14px;
  }
  .insight-body {
    display:none;
    margin-top:18px;
  }
  .insight-body p {
    margin-bottom:14px;
    font-size:0.72rem;
    line-height:1.9;
    color:var(--slate);
  }
  .insight-toggle {
    margin-top:auto;
    align-self:flex-start;
    background:none;
    border:none;
    color:var(--gold);
    padding:0;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-bottom:1px solid rgba(197,165,90,0.35);
    padding-bottom:4px;
    line-height:1.2;
  }
  .insight-toggle:hover { color:var(--gold-light); border-bottom-color:var(--gold-light); }
  .insights-more { display:none; }
  .insights-more-wrap { text-align:center; margin-top:36px; }
  .insight-card h3 { text-wrap:balance; }
  .article-readtime { display:inline-block; }

  @media (max-width: 768px) {
    .feature-split-grid, .support-products-grid { grid-template-columns:1fr; gap:18px; }
    .feature-split-card { padding:30px 24px; min-height:auto; }
    .feature-split-card h4 { font-size:0.92rem; }
    .feature-split-card p { font-size:0.78rem; }
    .feature-split-actions .btn-gold, .feature-split-actions .btn-ghost { width:100%; min-height:46px; }
    .toolkit-paid-card { padding:28px 24px; min-height:auto; }
    .toolkit-paid-card h4 { font-size:0.86rem; }
    .toolkit-paid-card > p { font-size:0.76rem; }
    .toolkit-card-footer { padding-top:18px; gap:14px; }
    .toolkit-card-list li { font-size:0.68rem; }
    .toolkit-card-fit { font-size:0.67rem; }
    .toolkit-card-link { font-size:0.54rem; letter-spacing:2.2px; }
    .svc-link, .training-link-inline, .insight-toggle { font-size:0.54rem; letter-spacing:2.2px; }
  }

  /* ===== PCC TOOLKIT CALCULATORS ===== */
  .tk-calc-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    max-width:760px;
    margin-bottom:1.35rem;
    align-items:end;
  }
  .tk-calc-field label {
    display:block;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:8px;
    font-family:'Cinzel',serif;
  }
  .tk-calc-field input,
  .tk-calc-field select {
    width:100%;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(197,165,90,0.2);
    color:var(--white);
    padding:10px 14px;
    font-family:'Montserrat',sans-serif;
    font-size:0.75rem;
    border-radius:2px;
    box-sizing:border-box;
  }
  .tk-calc-field input::placeholder { color:rgba(255,255,255,0.28); }
  .tk-calc-actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:1rem;
  }
  .tk-calc-btn {
    background:var(--gold);
    color:var(--navy);
    border:none;
    padding:10px 24px;
    font-size:0.6rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:700;
    cursor:pointer;
    white-space:nowrap;
    border-radius:2px;
  }
  .tk-calc-btn-secondary {
    background:transparent;
    color:var(--gold);
    border:1px solid rgba(197,165,90,0.3);
    padding:10px 18px;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    cursor:pointer;
    border-radius:2px;
  }
  .tk-calc-note {
    font-size:0.62rem;
    color:rgba(255,255,255,0.38);
    line-height:1.75;
    max-width:760px;
    margin-top:0.85rem;
  }
  .tk-calc-note strong {
    color:rgba(255,255,255,0.62);
    font-weight:600;
  }
  .tk-calc-out {
    display:none;
    max-width:900px;
    background:rgba(0,0,0,0.2);
    border:1px solid rgba(197,165,90,0.15);
    padding:1.5rem;
    border-radius:2px;
    color:rgba(255,255,255,0.72);
    margin-top:0;
  }
  .tk-tool-copy {
    max-width:760px;
    margin-bottom:1.5rem;
  }
  .tk-tool-copy p,
  .tk-tool-copy .tk-calc-note {
    margin-left:0;
    margin-right:0;
  }
  .tk-cta {
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(255,255,255,0.06);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
  }
  .tk-cta-text {
    margin:0;
    font-size:0.68rem;
    line-height:1.8;
    color:rgba(255,255,255,0.6);
    flex:1 1 320px;
  }
  .tk-cta-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 18px;
    border:1px solid rgba(197,165,90,0.3);
    color:var(--gold);
    text-decoration:none;
    font-size:0.58rem;
    letter-spacing:3px;
    text-transform:uppercase;
    font-family:'Montserrat',sans-serif;
    font-weight:600;
    border-radius:2px;
    transition:border-color .25s ease, background .25s ease, color .25s ease;
    white-space:nowrap;
  }
  .tk-cta-btn:hover {
    border-color:var(--gold);
    background:rgba(197,165,90,0.08);
  }
  .tk-summary-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:1rem;
  }
  .tk-summary-item {
    border:1px solid rgba(197,165,90,0.12);
    background:rgba(255,255,255,0.02);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-summary-item span {
    display:block;
    font-size:0.54rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:8px;
  }
  .tk-summary-item strong {
    display:block;
    font-family:'Cinzel',serif;
    color:var(--gold);
    font-size:0.95rem;
    letter-spacing:1px;
    font-weight:500;
  }
  .tk-standstill-days {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
    gap:10px;
    margin-top:1rem;
  }
  .tk-standstill-day {
    border:1px solid rgba(197,165,90,0.1);
    background:rgba(255,255,255,0.015);
    padding:12px 14px;
  }
  .tk-standstill-day span {
    display:block;
    font-size:0.5rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.34);
    margin-bottom:5px;
  }
  .tk-standstill-day strong {
    display:block;
    font-size:0.72rem;
    color:var(--white);
    font-weight:500;
  }
  .tk-vat-breakdown {
    margin-top:0.6rem;
    padding-top:0.9rem;
    border-top:1px solid rgba(255,255,255,0.06);
    font-size:0.68rem;
    color:rgba(255,255,255,0.56);
    line-height:1.9;
  }
  .tk-vat-breakdown strong { color:var(--gold); font-weight:600; }
  .tk-toggle-group {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
  }
  .tk-toggle-btn {
    appearance:none;
    border:1px solid rgba(255,255,255,0.12);
    background:rgba(255,255,255,0.03);
    color:var(--white);
    min-height:72px;
    padding:0.9rem 1rem;
    font-size:0.72rem;
    line-height:1.55;
    letter-spacing:0.4px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
    flex:1 1 180px;
    text-align:left;
  }
  .tk-toggle-btn:hover,
  .tk-toggle-btn:focus-visible {
    border-color:rgba(197,165,90,0.45);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-toggle-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.14);
    color:var(--gold);
    box-shadow:0 12px 28px rgba(0,0,0,0.16);
  }
  .tk-toggle-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.82rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.18rem;
    color:inherit;
  }
  .tk-toggle-btn span {
    display:block;
    font-size:0.64rem;
    line-height:1.7;
    color:inherit;
    opacity:0.9;
  }

  .tk-vat-grid {
    display:grid;
    grid-template-columns:minmax(0, 760px);
    gap:16px;
    max-width:760px;
    align-items:start;
    margin-bottom:1.35rem;
  }
  .tk-vat-field-wide {
    grid-column:1 / -1;
  }
  .tk-pill-group {
    display:grid;
    gap:12px;
    width:100%;
  }
  .tk-pill-group-mode {
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-group-rates {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
  }
  .tk-pill-btn {
    appearance:none;
    border:1px solid rgba(197,165,90,0.18);
    background:rgba(255,255,255,0.03);
    color:rgba(255,255,255,0.78);
    min-height:84px;
    padding:1rem 1rem 0.95rem;
    font-size:0.68rem;
    line-height:1.35;
    letter-spacing:0.5px;
    cursor:pointer;
    transition:border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
    text-align:left;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  .tk-pill-btn:hover,
  .tk-pill-btn:focus-visible {
    border-color:rgba(197,165,90,0.42);
    background:rgba(255,255,255,0.05);
    outline:none;
    transform:translateY(-1px);
  }
  .tk-pill-btn.active {
    border-color:rgba(197,165,90,0.55);
    background:rgba(197,165,90,0.12);
    color:var(--gold);
  }
  .tk-pill-btn strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:0.76rem;
    letter-spacing:1px;
    font-weight:500;
    margin-bottom:0.16rem;
    color:inherit;
  }
  .tk-pill-btn span {
    display:block;
    font-size:0.58rem;
    line-height:1.5;
    color:inherit;
    opacity:0.92;
  }
  .tk-vat-custom-wrap {
    max-width:260px;
  }
  .tk-cycle-layout {
    display:grid;
    grid-template-columns:minmax(360px, 520px) minmax(0, 1fr);
    gap:34px;
    align-items:center;
    max-width:1100px;
  }
  .tk-cycle-wheel-wrap {
    position:relative;
    width:min(100%, 520px);
    aspect-ratio:1 / 1;
    margin:0 auto;
  }
  .tk-cycle-wheel {
    width:100%;
    height:100%;
    display:block;
    overflow:visible;
    filter:drop-shadow(0 18px 34px rgba(0,0,0,0.2));
  }
  .tk-cycle-stage {
    transition: transform .22s ease, filter .22s ease;
  }
  .tk-cycle-stage:hover,
  .tk-cycle-stage:focus-within {
    transform: translate(var(--tk-shift-x, 0px), var(--tk-shift-y, 0px));
    filter: drop-shadow(0 10px 14px rgba(0,0,0,0.18));
  }
  .tk-cycle-stage.is-active {
    transform: translate(calc(var(--tk-shift-x, 0px) * 0.72), calc(var(--tk-shift-y, 0px) * 0.72));
    filter: drop-shadow(0 12px 16px rgba(0,0,0,0.2));
  }
  .tk-cycle-segment {
    fill:#102648;
    stroke:rgba(230,232,237,0.88);
    stroke-width:2.4;
    cursor:pointer;
    transition:fill .22s ease, stroke .22s ease, opacity .22s ease;
    outline:none !important;
    -webkit-tap-highlight-color:transparent;
  }
  .tk-cycle-stage:hover .tk-cycle-segment,
  .tk-cycle-stage:focus-within .tk-cycle-segment {
    fill:#17345f;
    stroke:rgba(255,255,255,0.95);
  }
  .tk-cycle-stage.is-active:hover .tk-cycle-segment,
  .tk-cycle-stage.is-active:focus-within .tk-cycle-segment,
  .tk-cycle-segment.active {
    fill:var(--gold);
    stroke:rgba(217,197,128,0.95);
  }
  .tk-cycle-segment:focus,
  .tk-cycle-segment:focus-visible {
    outline:none !important;
  }
  .tk-cycle-stage-number {
    fill:var(--white);
    font-family:'Montserrat',sans-serif;
    font-size:20px;
    font-weight:800;
    text-anchor:middle;
    dominant-baseline:middle;
    pointer-events:none;
    transition: fill .22s ease, transform .22s ease;
    paint-order: stroke;
    stroke: rgba(10,20,38,0.18);
    stroke-width: 0.7px;
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage:hover .tk-cycle-stage-number {
    transform: translateY(-1px);
  }
  .tk-cycle-stage.is-active .tk-cycle-stage-number,
  .tk-cycle-stage-number.active,
  .tk-cycle-stage.is-active:hover .tk-cycle-stage-number {
    fill:var(--white);
    stroke: rgba(15,27,45,0.45);
  }
  .tk-cycle-center {
    position:absolute;
    inset:50% auto auto 50%;
    width:46%;
    aspect-ratio:1 / 1;
    transform:translate(-50%, -50%);
    border-radius:50%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    background:radial-gradient(circle at 35% 30%, rgba(31,69,121,0.98), rgba(10,30,59,0.98));
    color:var(--white);
    box-shadow:0 0 0 10px rgba(197,165,90,0.18), inset 0 0 0 1px rgba(255,255,255,0.08), 0 18px 36px rgba(0,0,0,0.18);
    padding:28px;
  }
  .tk-cycle-center::after {
    content:'';
    position:absolute;
    inset:12px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.06);
    pointer-events:none;
  }
  .tk-cycle-center span {
    display:block;
    font-size:0.56rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(197,165,90,0.92);
    margin-bottom:0.5rem;
  }
  .tk-cycle-center strong {
    display:block;
    font-family:'Cinzel',serif;
    font-size:1.06rem;
    line-height:1.4;
    letter-spacing:1px;
    font-weight:600;
    color:#f7f7f3;
  }
  .tk-cycle-center small {
    display:block;
    margin-top:0.7rem;
    font-size:0.72rem;
    line-height:1.6;
    color:rgba(255,255,255,0.72);
    max-width:190px;
  }
  .tk-cycle-panel {
    max-width:560px;
    background:linear-gradient(180deg, rgba(8,22,44,0.42), rgba(8,22,44,0.28));
    border:1px solid rgba(197,165,90,0.18);
    padding:1.6rem 1.65rem;
    border-radius:6px;
    min-height:420px;
    box-shadow:0 20px 36px rgba(5,11,21,0.14);
  }
  .tk-cycle-panel-head {
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
    margin-bottom:0.95rem;
  }
  .tk-cycle-panel-tag {
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:var(--gold);
  }
  .tk-cycle-panel h4 {
    margin:0;
    font-family:'Cinzel',serif;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:1px;
    color:var(--white);
  }
  .tk-cycle-panel p {
    margin:0 0 1rem;
    font-size:0.7rem;
    line-height:1.9;
    color:rgba(255,255,255,0.66);
  }
  .tk-cycle-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .tk-cycle-detail-box {
    border:1px solid rgba(197,165,90,0.14);
    background:rgba(255,255,255,0.025);
    padding:14px 16px;
    min-height:100%;
  }
  .tk-cycle-detail-box span {
    display:block;
    font-size:0.52rem;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(255,255,255,0.4);
    margin-bottom:8px;
  }
  .tk-cycle-detail-box ul {
    margin:0;
    padding-left:1.1rem;
    color:rgba(255,255,255,0.66);
    font-size:0.68rem;
    line-height:1.8;
  }
  @media (max-width: 900px) {
    .tk-pill-group-rates {
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tk-cycle-layout {
      grid-template-columns:1fr;
    }
    .tk-cycle-panel {
      min-height:auto;
    }
  }
  @media (max-width: 768px) {
    .tk-vat-grid { max-width:none; }
    .tk-pill-group-mode,
    .tk-pill-group-rates,
    .tk-cycle-detail-grid {
      grid-template-columns:1fr;
    }
    .tk-cycle-center {
      width:52%;
      padding:22px;
    }
    .tk-cycle-center strong {
      font-size:0.88rem;
    }
    .tk-cycle-center small {
      font-size:0.64rem;
      max-width:140px;
    }
    .tk-cycle-stage-number {
      font-size:22px;
    }
  }

  @media (max-width: 768px) {
    .tk-calc-grid { grid-template-columns:1fr; gap:14px; }
    .tk-summary-grid { grid-template-columns:1fr; }
    .tk-calc-actions { flex-direction:column; align-items:stretch; }
    .tk-calc-btn, .tk-calc-btn-secondary { width:100%; }
    .tk-calc-out { padding:1.2rem; }
    .tk-cta { flex-direction:column; align-items:stretch; }
    .tk-cta-btn { width:100%; }
    .tk-toggle-btn { flex:1 1 100%; min-height:auto; }
  }

/* ===== PCC DYNAMIC ARTICLES ===== */
.article-modal {
  position: fixed;
  inset: 0;
  background: rgba(3, 10, 24, 0.82);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  z-index: 9999;
}
.article-modal.open { display: flex; }
.article-modal-dialog {
  width: min(920px, 100%);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, rgba(10,24,52,0.98), rgba(6,15,33,0.98));
  border: 1px solid rgba(212, 175, 55, 0.2);
  border-radius: 20px;
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.35);
  position: relative;
}
.article-modal-content {
  padding: 34px 30px 36px;
}
.article-modal-close {
  position: sticky;
  top: 16px;
  margin-left: calc(100% - 56px);
  width: 40px;
  height: 40px;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.article-modal-close:hover { opacity: 0.8; }
.article-modal-excerpt {
  font-size: 0.95rem;
  line-height: 1.9;
  color: var(--white);
  opacity: 0.92;
  margin-bottom: 22px;
}
 .article-modal-body h2 {
  font-size: 1.05rem;
  margin: 24px 0 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
}
.article-modal-body p {
  color: var(--white);
  opacity: 0.92;
  line-height: 1.95;
  margin: 0 0 14px;
  font-size: 0.92rem;
}
.article-modal-body a {
  color: var(--gold-light);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.article-modal-body a:hover {
  color: var(--gold);
}
@media (max-width: 768px) {
  .article-modal { padding: 12px; }
  .article-modal-content { padding: 26px 18px 24px; }
  .quick-slot-grid {
    flex-direction: column;
    align-items: stretch;
  }
}


/* PCC visual polish repair */
.why-card h4,
.value-item h4,
.training-feature h4,
.sector-card h3 {
  font-size:clamp(0.88rem, 1vw, 1.02rem);
  line-height:1.45;
  letter-spacing:1.8px;
}
.value-item h4,
.training-feature h4,
.why-card h4 {
  margin-bottom:14px;
}
.sector-card h3 {
  margin-bottom:16px;
}
#page-services .svc h3 {
  max-width:92%;
  margin-bottom:14px;
  font-size:0.92rem;
  line-height:1.45;
  letter-spacing:1.5px;
}
#page-services .svc {
  padding-top:40px;
}
h1 {
  position:relative;
  display:inline-block;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  h1,
  h1 em {
    background-image:linear-gradient(110deg, currentColor 0%, currentColor 42%, var(--gold-light) 50%, currentColor 58%, currentColor 100%);
    background-size:240% 100%;
    background-position:120% 0;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:pccTextSheen 1.35s ease-out 0.35s 1 both;
  }
  h1 em {
    color:var(--gold);
  }
}
@keyframes pccTextSheen {
  0% { background-position:120% 0; }
  100% { background-position:-80% 0; }
}
@media (prefers-reduced-motion: reduce) {
  h1,
  h1 em {
    animation:none;
    background-position:0 0;
  }
}

/* PCC shared CSS cleaned 2026-04-25: removed redirect/success page global body/main/nav rules from shared cascade. */
