:root {
      --apm-blue:   #1A3C8F;
      --apm-lblue:  #2651B8;
      --apm-gold:   #F5A623;
      --apm-dark:   #0D1B2A;
      --apm-font:   'Outfit', sans-serif;
    }

    /* ---------- TOPBAR ---------- */
    .apm-topbar {
      background: linear-gradient(90deg, var(--apm-blue) 0%, var(--apm-lblue) 100%);
      color: white; font-size: 12px; padding: 10px 0; font-weight: 500;
    }

    /* ---------- NAV ---------- */
    .apm-nav-master {
      background: #ffffff;
      border-bottom: 3px solid var(--apm-gold);
      transition: all 0.4s cubic-bezier(0.4,0,0.2,1);
      width: 100%; z-index: 1050;
    }
    .apm-nav-sticky {
      position: fixed !important;
      top: 0; left: 0; right: 0;
      background: rgba(255,255,255,0.95) !important;
      backdrop-filter: blur(15px);
      box-shadow: 0 10px 40px rgba(26,60,143,0.12);
      border-bottom: 3px solid var(--apm-blue) !important;
      animation: apmSlideDown 0.5s ease;
    }
    @keyframes apmSlideDown {
      from { transform: translateY(-100%); } to { transform: translateY(0); }
    }

    /* ---------- BRAND ---------- */
    .apm-brand {
      display: flex; align-items: center; gap: 12px;
      text-decoration: none !important; flex-shrink: 1; min-width: 0; margin-right: 10px;
    }
    .apm-logo-img {
      height: 60px;
      width: auto;
      object-fit: contain;
      flex-shrink: 0;
    }
    .apm-brand-title {
      font-weight: 800; line-height: 1.1; text-transform: uppercase;
      white-space: nowrap; letter-spacing: -0.2px;
    }
    .apm-brand-name-full  { font-size: 20px; color: var(--apm-dark); }
    .apm-brand-name-short { font-size: 20px; color: var(--apm-dark); display: none; }
    .apm-brand-slogan {
      font-weight: 700; color: var(--apm-gold); text-transform: uppercase;
      white-space: nowrap; letter-spacing: 0.5px;
      margin-top: 4px; font-size: 10px; display: block;
    }

    /* ---------- NAV LINKS ---------- */
    .apm-nav-link {
      color: var(--apm-dark) !important; font-weight: 700; font-size: 13px;
      padding: 10px 0; margin: 0 9px; text-transform: uppercase;
      position: relative; transition: 0.3s; text-decoration: none !important; white-space: nowrap;
    }
    .apm-nav-link::after {
      content: ''; position: absolute; bottom: -5px; left: 0;
      width: 0; height: 3px; background: var(--apm-blue); transition: 0.3s ease;
    }
    .apm-nav-link:hover, .apm-nav-link.active-nav { color: var(--apm-blue) !important; }
    .apm-nav-link:hover::after, .apm-nav-link.active-nav::after { width: 100%; }

    /* ---------- QUOTE BUTTON ---------- */
    .apm-btn-quote {
      background: var(--apm-gold); color: #000 !important;
      padding: 10px 22px; border-radius: 4px; font-weight: 800; font-size: 13px;
      border: none; display: inline-flex; align-items: center; gap: 8px;
      transition: 0.3s; text-decoration: none !important; white-space: nowrap; margin-left: 15px;
    }
    .apm-btn-quote:hover {
      background: var(--apm-blue); color: #fff !important; transform: translateY(-2px);
    }

    /* ---------- MOBILE TOGGLE ---------- */
    .apm-mobile-toggle {
      color: var(--apm-blue); font-size: 28px; border: none;
      background: none; padding: 5px 15px 5px 10px; flex-shrink: 0;
    }
    .mobile-toggle-wrapper { display: flex; align-items: center; flex-shrink: 0; }

    /* ---------- OFFCANVAS ---------- */
    .apm-offcanvas { width: 280px !important; background: #fff; border-left: 5px solid var(--apm-blue); }
    .apm-mobile-link {
      padding: 14px 20px; font-weight: 700; color: var(--apm-dark);
      text-decoration: none !important; border-bottom: 1px solid #f1f1f1;
      display: block; font-size: 13px;
    }
    .apm-mobile-link.active { background: #f0f4ff; color: var(--apm-blue); }
    .apm-mobile-link:hover  { background: #f5f8ff; color: var(--apm-blue); }

    /* ---------- RESPONSIVE ---------- */
    @media (max-width: 1300px) {
      .desktop-menu-wrapper { display: none !important; }
      .mobile-toggle-wrapper { display: flex !important; }
    }
    @media (min-width: 1301px) {
      .mobile-toggle-wrapper { display: none !important; }
      .desktop-menu-wrapper  { display: flex !important; flex-grow: 1; justify-content: flex-end; }
    }
    @media (max-width: 991px) {
      .apm-logo-img { height: 45px; }
      .apm-brand-name-full  { font-size: 16px; }
    }
    @media (max-width: 767px) {
      .apm-brand-name-full  { display: none; }
      .apm-brand-name-short { display: inline; font-size: 15px; }
      .apm-logo-img { height: 38px; }
      .apm-brand-slogan { font-size: 7px; }
      .apm-brand { gap: 8px; }
    }

    /* ---------- FLOATING BUTTONS ---------- */
    .apm-call-float {
      position: fixed; bottom: 105px; right: 30px; z-index: 9999;
      background: var(--apm-blue); color: #fff; width: 60px; height: 60px;
      border-radius: 50%; display: flex; align-items: center; justify-content: center;
      font-size: 24px; box-shadow: 0 8px 25px rgba(26,60,143,0.45);
      text-decoration: none; transition: 0.3s;
    }
    .apm-call-float:hover { background: var(--apm-gold); color: #000; transform: translateY(-3px); }
    
    .apm-wa-float {
      position: fixed; bottom: 30px; right: 30px; z-index: 9999;
      background: #25D366; color: #fff; width: 60px; height: 60px;
      border-radius: 50%; display: flex; align-items: center; justify-content: center;
      font-size: 28px; box-shadow: 0 8px 25px rgba(37,211,102,0.45);
      text-decoration: none; animation: waFloat 2s infinite;
    }
    @keyframes waFloat {
      0%   { box-shadow: 0 0 0 0 rgba(37,211,102,0.7); }
      70%  { box-shadow: 0 0 0 15px rgba(37,211,102,0); }
      100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); }
    }

    /* ---------- PAGE HERO (shared) ---------- */
    .apm-page-hero {
      background: linear-gradient(135deg, var(--apm-blue) 0%, var(--apm-dark) 100%); background-image: radial-gradient(circle at top right, rgba(38, 81, 184, 0.4) 0%, transparent 60%), linear-gradient(135deg, var(--apm-dark) 0%, var(--apm-blue) 100%);
      border-bottom: 5px solid var(--apm-gold);
      padding: 80px 0; text-align: center; color: #fff;
      position: relative; overflow: hidden;
    }
    .apm-page-hero::before {
      content: ''; position: absolute; inset: 0;
      background: none;
      opacity: 0.2;
    }
    .apm-page-hero .container { position: relative; z-index: 1; }
    .apm-page-hero h1 { font-weight: 900; font-size: 3rem; margin-bottom: 10px; }
    .apm-page-hero .badge-sub {
      color: var(--apm-gold); font-size: 0.85rem; font-weight: 800;
      letter-spacing: 3px; text-transform: uppercase; display: block; margin-bottom: 15px;
    }
    .apm-page-hero .breadcrumb-item a          { color: var(--apm-gold); text-decoration: none; }
    .apm-page-hero .breadcrumb-item.active     { color: #ccc; }
    .apm-page-hero .breadcrumb-item+.breadcrumb-item::before { color: #666; }

    /* ---------- FOOTER (shared) ---------- */
    .apm-footer { background: #060913; border-top: 5px solid var(--apm-gold); color: #ccc; padding: 80px 0 0; }
    .apm-footer-brand-title { font-size: 1.3rem; font-weight: 900; color: #fff; text-transform: uppercase; }
    .apm-footer-brand-title span { color: var(--apm-gold); }
    .apm-footer-desc { color: #9ca3af; font-size: 0.88rem; line-height: 1.8; margin-top: 15px; }
    .apm-footer-heading {
      color: #fff; font-weight: 800; font-size: 1rem; text-transform: uppercase;
      letter-spacing: 1px; margin-bottom: 20px; position: relative; padding-bottom: 12px;
    }
    .apm-footer-heading::after {
      content: ''; position: absolute; bottom: 0; left: 0;
      width: 40px; height: 3px; background: var(--apm-gold);
    }
    .apm-footer-link {
      display: block; color: #9ca3af; font-size: 0.88rem;
      text-decoration: none; padding: 5px 0; transition: 0.3s;
    }
    .apm-footer-link:hover { color: var(--apm-gold); padding-left: 8px; }
    .apm-footer-contact { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 18px; }
    .apm-footer-ci {
      width: 35px; height: 35px; background: rgba(245,166,35,0.1);
      border-radius: 8px; display: flex; align-items: center; justify-content: center;
      color: var(--apm-gold); flex-shrink: 0; font-size: 0.9rem;
    }
    .apm-footer-ct { color: #9ca3af; font-size: 0.88rem; line-height: 1.6; }
    .apm-footer-social a {
      display: inline-flex; align-items: center; justify-content: center;
      width: 38px; height: 38px; border-radius: 50%;
      background: rgba(255,255,255,0.06); color: #9ca3af;
      margin-right: 8px; transition: 0.3s; text-decoration: none;
    }
    .apm-footer-social a:hover { background: var(--apm-gold); color: #000; }
    .apm-footer-bottom {
      background: #050710; margin-top: 60px; padding: 20px 0; text-align: center;
    }
    .apm-footer-bottom p { color: #6b7280; font-size: 0.8rem; margin: 0; }