@import url("https://fonts.googleapis.com/css2?family=Sora:wght@200;300;400;600;700&display=swap");

  /* ---------- SCOPE + TOKENS ---------- */
  .azure-ca {
    --black:#0A0A0A; --white:#FFFFFF; --grey-50:#F4F4F2; --grey-100:#E8E8E6;
    --grey-200:#D0D0CD; --grey-500:#6B6B68; --lime:#D8F26A; --ink:#0A0A0A;
    --font-display:"Sora","Hanken Grotesk",-apple-system,sans-serif;
    --font-body:"Sora","Hanken Grotesk",-apple-system,sans-serif;
    --max-w:1320px; --gutter:clamp(20px,5vw,64px); --section-y:clamp(80px,10vw,140px);
    font-family:var(--font-body); font-weight:300; color:var(--ink);
    background:var(--white); line-height:1.5; -webkit-font-smoothing:antialiased;
  }
  .azure-ca *, .azure-ca *::before, .azure-ca *::after { box-sizing:border-box; }
  .azure-ca img { max-width:100%; display:block; }
  .azure-ca a { color:inherit; text-decoration:none; }
  .azure-ca .az-wrap { max-width:var(--max-w); margin:0 auto; padding:0 var(--gutter); }

  /* ---------- NAV ---------- */
  .azure-ca .az-nav { position:sticky; top:0; z-index:50; background:var(--white); border-bottom:1px solid var(--grey-100); }
  .azure-ca .az-nav-inner { display:flex; align-items:center; justify-content:space-between; height:72px; }
  .azure-ca .az-logo { display:flex !important; flex-direction:row; align-items:center; gap:10px; flex-wrap:nowrap; font-size:18px; letter-spacing:-0.01em; }
  .azure-ca .az-logo .az-mark { width:32px; height:32px; flex:0 0 32px; display:grid; place-items:center; }
  .azure-ca .az-logo .az-mark svg { width:28px !important; height:28px !important; display:block; }
  .azure-ca .az-logo b { font-weight:700; }
  .azure-ca .az-logo span { font-weight:300; color:#222; }
  .azure-ca .az-nav-links { display:flex; gap:36px; font-size:14px; font-weight:400; }
  .azure-ca .az-nav-links a:hover { color:var(--grey-500); }
  .azure-ca .az-nav .az-dot { width:14px; height:14px; border-radius:50%; background:var(--ink); }
  @media (max-width:760px) { .azure-ca .az-nav-links { display:none; } }

  /* ---------- BUTTONS ---------- */
  .azure-ca .az-btn { display:inline-flex; align-items:center; gap:10px; padding:16px 28px; border-radius:999px; font-size:14px; font-weight:600; letter-spacing:0.02em; transition:transform .15s ease, background .2s ease; }
  .azure-ca .az-btn-primary { background:var(--ink); color:var(--lime); }
  .azure-ca .az-btn-primary:hover { transform:translateY(-1px); background:#1a1a1a; }
  .azure-ca .az-btn-ghost { background:transparent; color:var(--ink); border:1px solid var(--ink); }
  .azure-ca .az-btn-ghost:hover { background:var(--ink); color:var(--white); }
  .azure-ca .az-btn .az-arrow { font-size:16px; }

  /* ---------- HERO ---------- */
  .azure-ca .az-hero { position:relative; min-height:clamp(540px,78vh,760px); padding:0; overflow:hidden; background:#0a0a0a; }
  .azure-ca .az-hero-bg { position:absolute; inset:0; z-index:0; }
  .azure-ca .az-hero-bg img { width:100%; height:100%; object-fit:cover; object-position:center center; }
  .azure-ca .az-hero-bg::after { content:""; position:absolute; inset:0; background:linear-gradient(100deg, rgba(0,0,0,0.78) 0%, rgba(0,0,0,0.55) 38%, rgba(0,0,0,0.18) 72%, rgba(0,0,0,0) 100%); }
  .azure-ca .az-hero-content { position:relative; z-index:2; min-height:clamp(540px,78vh,760px); display:flex; align-items:center; padding:clamp(80px,10vh,130px) 0 clamp(60px,8vh,110px); }
  .azure-ca .az-hero-inner { max-width:640px; color:var(--white); }
  .azure-ca .az-eyebrow { display:inline-flex; align-items:center; gap:10px; font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:rgba(255,255,255,0.85); font-weight:600; margin-bottom:28px; }
  .azure-ca .az-eyebrow::before { content:""; width:8px; height:8px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 4px rgba(216,242,106,0.25); }
  .azure-ca h1.az-display { font-family:var(--font-display); font-weight:200; font-size:clamp(40px,5.8vw,76px); line-height:1.04; letter-spacing:-0.025em; margin:0 0 28px; color:var(--white); }
  .azure-ca h1.az-display b { color:var(--white); font-weight:700; }
  .azure-ca h1.az-display .az-accent { color:var(--lime); font-weight:700; }
  .azure-ca .az-lede { font-size:clamp(16px,1.2vw,19px); color:rgba(255,255,255,0.92); max-width:54ch; margin:0 0 36px; font-weight:300; }
  .azure-ca .az-cta-row { display:flex; gap:16px; flex-wrap:wrap; }
  .azure-ca .az-hero .az-btn-primary { background:var(--lime); color:var(--ink); }
  .azure-ca .az-hero .az-btn-primary:hover { background:var(--white); }
  .azure-ca .az-hero .az-btn-ghost { color:var(--white); border-color:rgba(255,255,255,0.5); }
  .azure-ca .az-hero .az-btn-ghost:hover { background:var(--white); color:var(--ink); border-color:var(--white); }

  /* ---------- TRUST BAR ---------- */
  .azure-ca .az-trust { border-top:1px solid var(--grey-100); border-bottom:1px solid var(--grey-100); padding:22px 0; }
  .azure-ca .az-trust-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; font-size:12px; color:var(--grey-500); letter-spacing:0.15em; text-transform:uppercase; }
  .azure-ca .az-trust-inner b { color:var(--ink); font-weight:600; }
  .azure-ca .az-trust-time-mini { background:#E40000; color:#fff; padding:2px 6px; font-size:10px; font-weight:700; letter-spacing:0.05em; border-radius:3px; }

  /* ---------- SECTION ---------- */
  .azure-ca section { padding:var(--section-y) 0; }
  .azure-ca .az-section-head { margin-bottom:clamp(40px,5vw,64px); max-width:920px; }
  .azure-ca .az-section-eyebrow { font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--grey-500); font-weight:600; margin-bottom:18px; }
  .azure-ca h2.az-section-title { font-family:var(--font-display); font-weight:200; font-size:clamp(32px,4.5vw,56px); line-height:1.05; letter-spacing:-0.02em; margin:0 0 20px; }
  .azure-ca h2.az-section-title b { font-weight:700; }
  .azure-ca .az-section-sub { font-size:17px; color:#3a3a3a; max-width:70ch; }

  /* ---------- ABOUT ---------- */
  .azure-ca .az-about { background:var(--grey-50); }
  .azure-ca .az-about-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,6vw,80px); align-items:center; }
  @media (max-width:900px) { .azure-ca .az-about-grid { grid-template-columns:1fr; } }
  .azure-ca .az-about p { font-size:16px; color:#2a2a2a; line-height:1.65; margin:0 0 18px; max-width:58ch; }
  .azure-ca .az-awards { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:36px; }
  @media (max-width:540px) { .azure-ca .az-awards { grid-template-columns:1fr; } }
  .azure-ca .az-award { background:var(--white); border-radius:18px; padding:22px 24px; border:1px solid var(--grey-100); }
  .azure-ca .az-award .az-label { font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:var(--grey-500); font-weight:600; margin-bottom:10px; }
  .azure-ca .az-award .az-name { font-size:17px; font-weight:700; line-height:1.3; }
  .azure-ca .az-press-band { padding:28px 0; background:var(--white); border-top:1px solid var(--grey-100); border-bottom:1px solid var(--grey-100); }
  .azure-ca .az-press-inner { display:flex; align-items:center; justify-content:center; gap:clamp(20px,4vw,56px); flex-wrap:wrap; }
  .azure-ca .az-press-label { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--grey-500); font-weight:600; }
  .azure-ca .az-press-logo { font-weight:700; color:var(--grey-500); letter-spacing:0.04em; font-size:16px; }
  .azure-ca .az-press-logo.az-time-logo { background:#E40000; color:#fff; padding:4px 10px; font-size:14px; letter-spacing:0.05em; }
  .azure-ca .az-press-logo.az-serif { font-family:Georgia, serif; font-style:italic; font-size:18px; }
  .azure-ca .az-press-logo.az-allcaps { text-transform:uppercase; font-size:13px; letter-spacing:0.1em; }

  /* ---------- SOLUTIONS GRID ---------- */
  .azure-ca .az-solutions { display:grid; grid-template-columns:repeat(12,1fr); gap:20px; }
  .azure-ca .az-solution { position:relative; background:var(--ink); border-radius:24px; padding:0; display:flex; flex-direction:column; min-height:380px; overflow:hidden; transition:transform .25s ease, box-shadow .25s ease; color:var(--white); }
  .azure-ca .az-solution:hover { transform:translateY(-3px); box-shadow:0 18px 40px -16px rgba(0,0,0,0.45); }
  .azure-ca .az-solution-img { position:absolute; inset:0; z-index:0; }
  .azure-ca .az-solution-img img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
  .azure-ca .az-solution:hover .az-solution-img img { transform:scale(1.05); }
  .azure-ca .az-solution::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0.10) 0%, rgba(0,0,0,0.35) 45%, rgba(0,0,0,0.88) 100%); z-index:1; pointer-events:none; }
  .azure-ca .az-solution-content { position:relative; z-index:2; margin-top:auto; padding:30px 32px 28px; }
  .azure-ca .az-solution .az-tag { font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:rgba(255,255,255,0.78); font-weight:600; margin-bottom:12px; }
  .azure-ca .az-solution h3 { font-family:var(--font-display); font-weight:400; font-size:26px; line-height:1.15; letter-spacing:-0.015em; margin:0 0 12px; color:var(--white); }
  .azure-ca .az-solution h3 b { font-weight:700; }
  .azure-ca .az-solution p { font-size:14.5px; line-height:1.55; color:rgba(255,255,255,0.88); margin:0 0 22px; }
  .azure-ca .az-solution .az-learn-more { padding-top:16px; border-top:1px solid rgba(255,255,255,0.22); display:flex; justify-content:space-between; align-items:center; font-size:13px; font-weight:600; letter-spacing:0.04em; color:var(--white); }
  .azure-ca .az-solution .az-learn-more .az-arrow { font-size:18px; font-weight:300; color:rgba(255,255,255,0.65); transition:transform .2s ease, color .2s ease; }
  .azure-ca .az-solution:hover .az-learn-more .az-arrow { transform:translateX(4px); color:var(--lime); }
  .azure-ca .az-solution.az-half { grid-column:span 6; min-height:440px; }
  .azure-ca .az-solution.az-third { grid-column:span 4; }
  .azure-ca .az-stretch { position:absolute; inset:0; z-index:3; }
  @media (max-width:900px) { .azure-ca .az-solution.az-half, .azure-ca .az-solution.az-third { grid-column:span 12; } }

  /* ---------- LOCAL CONTEXT ---------- */
  .azure-ca .az-local-context { background:var(--grey-50); }
  .azure-ca .az-local-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  @media (max-width:900px) { .azure-ca .az-local-grid { grid-template-columns:1fr; } }
  .azure-ca .az-local-card { background:var(--white); border-radius:24px; padding:36px 32px; display:flex; flex-direction:column; min-height:280px; border:1px solid var(--grey-100); }
  .azure-ca .az-local-card .az-num { font-size:12px; font-weight:700; color:var(--ink); background:var(--lime); display:inline-block; padding:5px 12px; border-radius:999px; margin-bottom:22px; align-self:flex-start; letter-spacing:0.06em; }
  .azure-ca .az-local-card h3 { font-family:var(--font-display); font-weight:700; font-size:22px; line-height:1.2; margin:0 0 14px; letter-spacing:-0.01em; }
  .azure-ca .az-local-card p { font-size:14.5px; line-height:1.6; color:#333; margin:0; }
  .azure-ca .az-local-card p b { color:var(--ink); }

  /* ---------- CONTACT ---------- */
  .azure-ca .az-contact { background:var(--ink); color:var(--white); }
  .azure-ca .az-contact h2.az-section-title { color:var(--white); }
  .azure-ca .az-contact .az-section-eyebrow { color:rgba(255,255,255,0.6); }
  .azure-ca .az-contact .az-section-sub { color:rgba(255,255,255,0.78); }
  .azure-ca .az-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,6vw,80px); align-items:start; }
  @media (max-width:900px) { .azure-ca .az-contact-grid { grid-template-columns:1fr; } }
  .azure-ca .az-contact-card { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.1); border-radius:20px; padding:28px 32px; }
  .azure-ca .az-contact-card + .az-contact-card { margin-top:16px; }
  .azure-ca .az-contact-card .az-label { font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:rgba(255,255,255,0.5); font-weight:600; margin-bottom:12px; }
  .azure-ca .az-contact-card p, .azure-ca .az-contact-card a { font-size:17px; color:var(--white); font-weight:400; line-height:1.5; margin:0; }
  .azure-ca .az-contact-card a:hover { color:var(--lime); }
  .azure-ca .az-contact .az-btn-primary { background:var(--lime); color:var(--ink); }
  .azure-ca .az-contact .az-btn-primary:hover { background:var(--white); }
  .azure-ca .az-contact .az-btn-ghost { color:var(--white); border-color:rgba(255,255,255,0.4); }
  .azure-ca .az-contact .az-btn-ghost:hover { background:var(--white); color:var(--ink); border-color:var(--white); }

  /* ---------- FOOTER ---------- */
  .azure-ca .az-site-foot { background:var(--ink); color:rgba(255,255,255,0.55); padding:32px 0; font-size:13px; border-top:1px solid rgba(255,255,255,0.08); }
  .azure-ca .az-site-foot .az-wrap { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
  .azure-ca .az-site-foot .az-wrap > div:last-child { white-space:nowrap; flex-shrink:0; }
  .azure-ca .az-site-foot a { color:rgba(255,255,255,0.7); }
  .azure-ca .az-site-foot a:hover { color:var(--lime); }

