
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      --steel:        #152232;
      --steel-mid:    #1E3448;
      --steel-light:  #2E4A62;
      --copper:       #B5541A;
      --copper-light: #D4703C;
      --copper-glow:  rgba(181,84,26,0.18);
      --smoke:        #F6F4F0;
      --smoke-dark:   #EDEBE6;
      --white:        #FFFFFF;
      --mid:          #6B7A8C;
      --border:       #DDD9D3;
      --gold:         #C9A84C;
      --gold-light:   #E2C06A;
    }

    html { scroll-behavior: smooth; }
    body { font-family: 'Inter', sans-serif; background: var(--white); color: var(--steel); line-height: 1.6; overflow-x: hidden; }

    /* ── NAV ── */
    nav {
      position: fixed; top: 0; left: 0; right: 0; z-index: 200;
      display: flex; align-items: center; justify-content: space-between;
      padding: 0 5%; height: 66px;
      background: rgba(21,34,50,0.97); backdrop-filter: blur(10px);
      border-bottom: 1px solid rgba(255,255,255,0.06);
      transition: box-shadow 0.3s;
    }
    nav.scrolled { box-shadow: 0 4px 30px rgba(0,0,0,0.3); }
    .nav-logo {
      font-family: 'Playfair Display', serif;
      font-size: 1.3rem; font-weight: 700; color: var(--white);
      letter-spacing: 0.01em; text-decoration: none;
    }
    .nav-logo span { color: var(--copper-light); }
    .nav-links { display: flex; gap: 1.8rem; list-style: none; }
    .nav-links a {
      color: rgba(255,255,255,0.72); text-decoration: none;
      font-size: 0.78rem; font-weight: 500; letter-spacing: 0.1em;
      text-transform: uppercase; transition: color 0.2s;
    }
    .nav-links a:hover { color: var(--copper-light); }
    .nav-cta {
      background: var(--copper); color: #fff !important;
      padding: 0.42rem 1.15rem; border-radius: 3px;
    }
    .nav-cta:hover { background: var(--copper-light) !important; }

    /* ── HERO ── */
    .hero {
      min-height: 100vh; background: var(--steel);
      display: flex; align-items: center;
      padding: 100px 5% 70px; position: relative; overflow: hidden;
    }
    .hero-bg-grid {
      position: absolute; inset: 0; pointer-events: none;
      background-image:
        linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
      background-size: 60px 60px;
    }
    .hero-accent {
      position: absolute; right: -120px; top: 50%; transform: translateY(-50%);
      width: 700px; height: 700px; border-radius: 50%;
      background: radial-gradient(circle, rgba(181,84,26,0.12) 0%, transparent 65%);
      pointer-events: none;
    }
    .hero-content { position: relative; max-width: 640px; }
    .hero-eyebrow {
      font-family: 'DM Mono', monospace;
      font-size: 0.68rem; letter-spacing: 0.22em; text-transform: uppercase;
      color: var(--copper-light); margin-bottom: 1.4rem;
      display: flex; align-items: center; gap: 0.8rem;
    }
    .hero-eyebrow::after { content: ''; flex: 0 0 40px; height: 1px; background: var(--copper-light); opacity: 0.5; }
    .hero h1 {
      font-family: 'Playfair Display', serif;
      font-size: clamp(2.6rem, 5vw, 4.4rem);
      font-weight: 900; color: var(--white); line-height: 1.08;
      margin-bottom: 1.5rem;
    }
    .hero h1 em { font-style: normal; color: var(--copper-light); display: block; }
    .hero-desc {
      color: rgba(255,255,255,0.6); font-size: 1rem;
      max-width: 500px; margin-bottom: 2.5rem; line-height: 1.75;
    }
    .hero-stats { display: flex; gap: 2.5rem; flex-wrap: wrap; margin-bottom: 2.8rem; }
    .hero-stat-val {
      font-family: 'Playfair Display', serif;
      font-size: 2.1rem; font-weight: 700; color: var(--gold);
      display: block; line-height: 1;
    }
    .hero-stat-label {
      font-size: 0.68rem; color: rgba(255,255,255,0.45);
      letter-spacing: 0.1em; text-transform: uppercase; margin-top: 0.3rem;
    }
    .hero-btns { display: flex; gap: 1rem; flex-wrap: wrap; }
    .btn-primary {
      background: var(--copper); color: #fff;
      padding: 0.9rem 2.1rem; border-radius: 3px;
      font-weight: 600; font-size: 0.88rem; text-decoration: none;
      transition: background 0.2s, transform 0.15s;
      border: none; cursor: pointer; display: inline-block;
    }
    .btn-primary:hover { background: var(--copper-light); transform: translateY(-1px); }
    .btn-outline {
      border: 1.5px solid rgba(255,255,255,0.28);
      color: rgba(255,255,255,0.85);
      padding: 0.9rem 2.1rem; border-radius: 3px;
      font-weight: 500; font-size: 0.88rem; text-decoration: none;
      transition: border-color 0.2s, color 0.2s;
    }
    .btn-outline:hover { border-color: var(--copper-light); color: var(--copper-light); }

    /* ── STATS BAR ── */
    .stats-bar { background: var(--steel-mid); padding: 0 5%; }
    .stats-grid { display: grid; grid-template-columns: repeat(2, 1fr); }
    .stat-block {
      padding: 2.2rem 2rem; text-align: center;
      border-right: 1px solid rgba(255,255,255,0.07);
    }
    .stat-block:last-child { border-right: none; }
    .stat-num {
      font-family: 'Playfair Display', serif;
      font-size: 2.4rem; font-weight: 700; color: var(--gold);
      display: block; line-height: 1;
    }
    .stat-label { font-size: 0.72rem; color: rgba(255,255,255,0.5); margin-top: 0.5rem; letter-spacing: 0.06em; text-transform: uppercase; }

    /* ── SECTION BASE ── */
    section { padding: 88px 5%; }
    .section-eyebrow {
      font-family: 'DM Mono', monospace; font-size: 0.68rem;
      letter-spacing: 0.22em; text-transform: uppercase;
      color: var(--copper); margin-bottom: 0.7rem;
    }
    .section-title {
      font-family: 'Playfair Display', serif;
      font-size: clamp(1.8rem, 3vw, 2.6rem);
      font-weight: 700; color: var(--steel);
      margin-bottom: 0.9rem; line-height: 1.2;
    }
    .section-subtitle { color: var(--mid); font-size: 0.97rem; max-width: 580px; line-height: 1.72; }
    .divider { width: 44px; height: 3px; background: var(--copper); margin: 1rem 0 2.5rem; }

    /* ── ABOUT ── */
    .about { background: var(--smoke); }
    .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: center; margin-top: 1rem; }
    .about-text p { color: var(--mid); line-height: 1.78; font-size: 0.96rem; margin-bottom: 1.2rem; }
    .cert-panel {
      background: var(--white); border: 1px solid var(--border);
      border-radius: 8px; padding: 2rem;
      box-shadow: 0 4px 24px rgba(0,0,0,0.05);
    }
    .cert-badge {
      display: inline-block; background: var(--steel); color: var(--white);
      font-size: 0.72rem; font-weight: 600; letter-spacing: 0.1em;
      text-transform: uppercase; padding: 0.38rem 0.9rem; border-radius: 2px; margin-bottom: 1.4rem;
    }
    .cert-items { display: flex; flex-direction: column; gap: 1rem; margin-top: 1.2rem; }
    .cert-item {
      display: flex; align-items: flex-start; gap: 1rem;
      padding: 1rem 1.2rem; background: var(--smoke);
      border-radius: 4px; border-left: 3px solid var(--copper);
    }
    .cert-icon { font-size: 1.4rem; flex-shrink: 0; margin-top: 2px; }
    .cert-item h4 { font-size: 0.88rem; font-weight: 600; color: var(--steel); margin-bottom: 0.15rem; }
    .cert-item p { font-size: 0.8rem; color: var(--mid); }

    /* ── SECTORS ── */
    .sectors-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; margin-top: 3rem; }
    .sector-card {
      background: var(--smoke); border: 1px solid var(--border);
      border-radius: 6px; padding: 2rem 1.5rem; text-align: center;
      transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, border-color 0.3s ease;
    }
    .sector-card:hover { transform: translateY(-5px); box-shadow: 0 16px 40px rgba(28,43,58,0.1); border-color: var(--copper-light); }
    .sector-icon { font-size: 2.4rem; margin-bottom: 1rem; }
    .sector-card h3 { font-size: 1rem; font-weight: 600; color: var(--steel); margin-bottom: 0.4rem; }
    .sector-card p { font-size: 0.8rem; color: var(--mid); line-height: 1.55; }

    /* ── PRODUCTS ── */
    .products { background: var(--steel); }
    .products .section-eyebrow { color: var(--copper-light); }
    .products .section-title { color: var(--white); }
    .products .section-subtitle { color: rgba(255,255,255,0.55); }
    .products .divider { background: var(--copper-light); }

    .product-tabs {
      display: flex; gap: 0.5rem; margin-bottom: 2.5rem;
      flex-wrap: wrap;
    }
    .tab-btn {
      background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.12);
      color: rgba(255,255,255,0.65); padding: 0.5rem 1.2rem;
      border-radius: 3px; font-size: 0.8rem; font-weight: 500;
      cursor: pointer; transition: all 0.2s; font-family: 'Inter', sans-serif;
      letter-spacing: 0.04em;
    }
    .tab-btn:hover, .tab-btn.active {
      background: var(--copper); border-color: var(--copper);
      color: #fff;
    }

    .products-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5px; }
    .product-item {
      position: relative; overflow: hidden;
      aspect-ratio: 4/3; cursor: zoom-in;
      border-radius: 8px; box-shadow: 0 4px 20px rgba(0,0,0,0.2);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    .product-item:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(0,0,0,0.35); }
    .product-item img {
      width: 100%; height: 100%; object-fit: cover;
      transition: transform 0.5s ease, filter 0.3s ease;
      filter: brightness(0.88);
    }
    .product-item:hover img { transform: scale(1.07); filter: brightness(1.02); }
    .product-overlay {
      position: absolute; inset: 0;
      background: linear-gradient(to top, rgba(21,34,50,0.92) 0%, rgba(21,34,50,0.3) 50%, transparent 100%);
      opacity: 0; transition: opacity 0.3s;
      display: flex; flex-direction: column;
      justify-content: flex-end; padding: 1.5rem;
    }
    .product-item:hover .product-overlay { opacity: 1; }
    .product-overlay h3 {
      color: var(--white); font-size: 1rem; font-weight: 600;
      margin-bottom: 0.3rem;
    }
    .product-overlay p { color: rgba(255,255,255,0.65); font-size: 0.78rem; line-height: 1.4; }
    .product-tag {
      position: absolute; top: 1rem; left: 1rem;
      background: var(--copper); color: #fff;
      font-size: 0.65rem; font-weight: 700; letter-spacing: 0.1em;
      text-transform: uppercase; padding: 0.25rem 0.6rem; border-radius: 2px;
    }

    /* Product gallery banner */
    .product-banner {
      position: relative; margin: 0 auto 1.5px;
      max-width: 1180px; width: 100%;
      border-radius: 8px; overflow: hidden;
      aspect-ratio: 16/10;
      background: var(--steel);
    }
    .product-banner img {
      width: 100%; height: 100%; object-fit: contain;
    }
    .product-banner-caption {
      position: absolute; bottom: 0; left: 0; right: 0;
      padding: 2.2rem 1.5rem 1.2rem;
      background: linear-gradient(to top, rgba(21,34,50,0.9), transparent);
      color: rgba(255,255,255,0.92); font-size: 0.85rem;
      font-family: 'DM Mono', monospace; letter-spacing: 0.04em;
    }

    /* Product strip layouts row */
    .strip-row {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5px;
      margin-top: 1.5px;
    }
    .strip-item {
      position: relative; overflow: hidden;
      aspect-ratio: 16/7;
    }
    .strip-item img {
      width: 100%; height: 100%; object-fit: cover;
      filter: brightness(0.8); transition: filter 0.3s;
    }
    .strip-item:hover img { filter: brightness(1); }
    .strip-label {
      position: absolute; bottom: 0.8rem; left: 1rem;
      color: rgba(255,255,255,0.75); font-size: 0.72rem;
      font-family: 'DM Mono', monospace; letter-spacing: 0.08em;
    }

    /* ── CAPABILITIES ── */
    .capabilities { background: var(--smoke-dark); }
    .cap-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; margin-top: 3rem; }
    .cap-block h3 {
      font-family: 'Playfair Display', serif; font-size: 1.15rem;
      font-weight: 700; color: var(--steel); margin-bottom: 1.3rem;
      padding-bottom: 0.7rem; border-bottom: 2px solid var(--copper);
    }
    .cap-list { list-style: none; display: flex; flex-wrap: wrap; gap: 0.5rem; }
    .cap-tag {
      background: var(--white); border: 1px solid var(--border);
      color: var(--steel); font-size: 0.78rem; padding: 0.38rem 0.9rem;
      border-radius: 20px; font-weight: 500; transition: border-color 0.2s, color 0.2s;
    }
    .cap-tag:hover { border-color: var(--copper); color: var(--copper); }

    /* ── MACHINES ── */
    .machines-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 2rem; margin-top: 3rem; }
    .machine-card { border: 1px solid var(--border); border-radius: 6px; overflow: hidden; transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease; }
    .machine-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,0.08); }
    .machine-card-head {
      background: var(--steel); color: var(--white);
      padding: 1rem 1.4rem; font-weight: 600; font-size: 0.88rem; letter-spacing: 0.04em;
    }
    .machine-card ul { padding: 1rem 1.4rem; list-style: none; }
    .machine-card li {
      padding: 0.32rem 0; font-size: 0.8rem; color: var(--mid);
      border-bottom: 1px solid var(--border);
    }
    .machine-card li:last-child { border: none; }
    .machine-card li::before { content: '— '; color: var(--copper); }

    /* ── CLIENTS (simple, PDF style) ── */
    .clients { background: var(--smoke); }
    .clients-inner { margin-top: 2.6rem; }

    .logo-row {
      display: flex; flex-wrap: wrap; justify-content: center;
      align-items: center; gap: 1.4rem; margin: 1rem 0 2.8rem;
    }
    /* ── TRUSTED-BY LOGO MARQUEE ── */
    .logo-marquee {
      position: relative; overflow: hidden; width: 100%;
      margin: 1.6rem 0 3rem; padding: 0.4rem 0;
      -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
              mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
    }
    .logo-track {
      display: flex; width: max-content;
      animation: logoScroll 42s linear infinite;
    }
    .logo-marquee:hover .logo-track { animation-play-state: paused; }
    .logo-set { display: flex; align-items: center; gap: 1.4rem; padding-right: 1.4rem; }
    @keyframes logoScroll {
      from { transform: translateX(0); }
      to   { transform: translateX(-50%); }
    }
    .logo-chip {
      background: var(--white); border: 1.5px solid var(--border);
      border-radius: 10px; width: 170px; height: 90px; flex-shrink: 0;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 0 2px 10px rgba(0,0,0,0.04);
      transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
      cursor: pointer;
    }
    .logo-chip:hover { transform: translateY(-4px); box-shadow: 0 14px 32px rgba(0,0,0,0.12); border-color: var(--copper-light); }
    .logo-chip img {
      max-height: 56px; max-width: 140px; width: auto; object-fit: contain; display: block;
      filter: none; transition: filter 0.3s;
    }
    .logo-chip:hover img { filter: grayscale(0%) opacity(1); }
    .logo-text-chip {
      background: var(--white); border: 1.5px solid var(--border);
      border-radius: 10px; width: 170px; height: 90px; flex-shrink: 0;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 0 2px 10px rgba(0,0,0,0.04);
      transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
      cursor: pointer; padding: 0 1.2rem;
    }
    .logo-text-chip:hover { transform: translateY(-4px); box-shadow: 0 14px 32px rgba(0,0,0,0.12); border-color: var(--copper-light); }
    .logo-text-chip span {
      font-family: 'Inter', sans-serif; font-weight: 800; font-size: 1rem;
      color: var(--steel-mid); letter-spacing: 0.06em; text-transform: uppercase; text-align: center;
      transition: color 0.25s;
    }
    .logo-text-chip:hover span { color: var(--copper); }

    .clients-sub {
      text-align: center; color: var(--mid); font-size: 0.95rem;
      max-width: 640px; margin: 0 auto 3rem; line-height: 1.7;
    }

    .sector-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2.5rem; }
    .sector-col h3 {
      font-family: 'Playfair Display', serif; font-size: 1.25rem; font-weight: 700;
      color: var(--steel); margin-bottom: 1.1rem;
    }
    .sector-col ul { list-style: none; }
    .sector-col li {
      font-size: 0.95rem; color: var(--mid); padding: 0.4rem 0 0.4rem 1.2rem;
      position: relative;
    }
    .sector-col li::before {
      content: '•'; color: var(--copper); position: absolute; left: 0; font-weight: 700;
    }

    /* ── SYSTEMS ── */
    .systems { background: var(--steel-mid); }
    .systems .section-eyebrow { color: var(--copper-light); }
    .systems .section-title { color: var(--white); }
    .systems .section-subtitle { color: rgba(255,255,255,0.55); }
    .systems .divider { background: var(--copper-light); }
    .systems-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: 3rem; }
    .system-card {
      background: rgba(255,255,255,0.05);
      border: 1px solid rgba(255,255,255,0.1);
      border-radius: 6px; padding: 1.8rem;
      transition: background 0.2s, border-color 0.2s;
    }
    .system-card:hover { background: rgba(255,255,255,0.08); border-color: rgba(181,84,26,0.4); }
    .sys-abbr {
      font-family: 'DM Mono', monospace; font-size: 0.68rem;
      letter-spacing: 0.12em; color: var(--copper-light); margin-bottom: 0.5rem;
    }
    .system-card h3 { font-size: 0.95rem; font-weight: 600; color: var(--white); margin-bottom: 0.7rem; }
    .system-card p { font-size: 0.8rem; color: rgba(255,255,255,0.5); line-height: 1.6; }

    /* ── AWARDS ── */
    .awards-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.2rem; margin-top: 3rem; }
    .award-card {
      background: var(--smoke); border: 1px solid var(--border);
      border-radius: 6px; padding: 1.6rem 1.2rem; text-align: center;
      transition: box-shadow 0.2s, border-color 0.2s;
    }
    .award-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,0.07); border-color: var(--gold); }
    .award-icon { font-size: 2rem; margin-bottom: 0.8rem; }
    .award-photo { width: 100%; height: 230px; object-fit: contain; border-radius: 6px; margin-bottom: 0.9rem; background:#fff; padding: 0.6rem; cursor: zoom-in; transition: transform 0.3s ease, box-shadow 0.3s ease; }
    .award-card:hover .award-photo { transform: scale(1.02); box-shadow: 0 6px 18px rgba(0,0,0,0.12); }
    .award-card { display:flex; flex-direction:column; }
    .award-card strong { display: block; font-size: 0.82rem; color: var(--steel); margin-bottom: 0.35rem; }
    .award-card p { font-size: 0.76rem; color: var(--mid); line-height: 1.5; }

    /* ===== CAREERS — BOLD COPPER ACCENT REDESIGN (updated by Claude) ===== */
    .careers { position: relative; overflow: hidden; background: linear-gradient(180deg, var(--steel) 0%, #182838 100%); }
    .careers::before { content:''; position:absolute; inset:0; pointer-events:none; z-index:0;
      background-image:
        radial-gradient(620px 320px at 85% 2%, rgba(181,84,26,0.16), transparent 62%),
        radial-gradient(520px 340px at 8% 100%, rgba(201,168,76,0.10), transparent 62%),
        linear-gradient(rgba(255,255,255,0.028) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.028) 1px, transparent 1px);
      background-size: auto, auto, 42px 42px, 42px 42px;
      -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 78%, transparent 100%);
      mask-image: linear-gradient(180deg, #000 0%, #000 78%, transparent 100%); }
    .careers > * { position: relative; z-index: 1; }
    .careers .section-eyebrow { color: var(--copper-light); }
    .careers .section-title { color: var(--white); }
    .careers .section-subtitle { color: rgba(255,255,255,0.6); }
    .careers .divider { background: var(--copper); }

    .careers-grid { display:grid; grid-template-columns: repeat(3,1fr); gap:1.3rem; margin:3rem auto 0; max-width:1080px; }

    /* Bold copper-accent job cards */
    .job-card-mini {
      background: var(--steel-mid); border:1px solid rgba(255,255,255,0.08); border-left:4px solid var(--copper);
      border-radius:10px; padding:1.7rem 1.6rem; cursor:pointer; text-align:left; font-family:'Inter',sans-serif; width:100%; color:inherit;
      transition: transform .3s ease, box-shadow .3s ease, border-left-color .3s ease, background .3s ease;
    }
    .job-card-mini:hover, .job-card-mini:focus-visible {
      background: var(--steel-light); border-left-color: var(--gold); transform: translateY(-5px);
      box-shadow: 0 18px 40px rgba(0,0,0,0.4); outline:none;
    }
    .job-dept-eyebrow { display:inline-block; font-family:'DM Mono',monospace; font-size:.66rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--copper-light); margin-bottom:.7rem; }
    .job-card-mini h3 { font-family:'Playfair Display',serif; font-size:1.2rem; font-weight:700; color:var(--white); margin-bottom:.7rem; line-height:1.3; }
    .job-mini-meta { font-size:.8rem; color:rgba(255,255,255,0.6); margin-bottom:1.3rem; line-height:1.7; display:flex; flex-direction:column; gap:.3rem; }
    .job-mini-meta .mi { display:inline-flex; align-items:center; gap:.5rem; }
    .job-card-mini .apply-pill { display:inline-flex; align-items:center; gap:.4rem; background:var(--copper); color:#fff; font-size:.76rem; font-weight:700; letter-spacing:.02em; padding:.55rem 1.1rem; border-radius:6px; transition: background .25s ease; }
    .job-card-mini:hover .apply-pill { background:var(--copper-light); }
    .job-card-mini .apply-pill .arw { transition: transform .3s ease; }
    .job-card-mini:hover .apply-pill .arw { transform: translateX(4px); }
    .job-tag { display:inline-block; background: var(--copper); color:#fff; font-size:.62rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:.25rem .55rem; border-radius:3px; }

    .careers-note { background: rgba(255,255,255,0.05); border-left:3px solid var(--gold); border-radius:6px; padding:1.1rem 1.5rem; margin-top:2.4rem; text-align:center; }
    .careers-note p { color: rgba(255,255,255,0.72); font-size:.88rem; }
    .careers-note button.link-btn { background:none; border:none; color:var(--copper-light); font-weight:700; font-size:.88rem; text-decoration:underline; cursor:pointer; padding:0; font-family:'Inter',sans-serif; }

    /* Solid dark modals with copper top accent */
    .modal-overlay { display:none; position:fixed; inset:0; z-index:500; background: rgba(10,17,26,0.85); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); padding:5vh 5vw; overflow-y:auto; align-items:flex-start; justify-content:center; animation: fadeIn .2s ease; }
    .modal-overlay.open { display:flex; }
    .modal-box { background: linear-gradient(165deg,#1E3448,#16232f); border:1px solid rgba(255,255,255,0.1); border-top:3px solid var(--copper); border-radius:12px; max-width:720px; width:100%; padding:2.5rem; position:relative; color:rgba(255,255,255,0.85); box-shadow: 0 30px 80px rgba(0,0,0,0.55); animation: riseIn .3s cubic-bezier(.16,1,.3,1) both; }
    .modal-close { position:absolute; top:1.2rem; right:1.2rem; width:36px; height:36px; border-radius:50%; border:1px solid rgba(255,255,255,0.2); background: rgba(255,255,255,0.08); color:#fff; font-size:1.05rem; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center; transition: background .2s; }
    .modal-close:hover { background: var(--copper); }

    .job-detail-dept { font-family:'DM Mono',monospace; font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--copper-light); margin-bottom:.6rem; }
    .modal-box h3.job-detail-title { font-family:'Playfair Display',serif; font-size:1.6rem; font-weight:800; color:var(--white); margin:0 2rem .35rem 0; line-height:1.25; }
    .job-detail-sub { color: rgba(255,255,255,0.55); font-size:.86rem; margin-bottom:1.6rem; }

    .quick-facts { display:grid; grid-template-columns: repeat(2,1fr); gap:.9rem; margin-bottom:1.7rem; padding:1.3rem; background: rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); border-radius:10px; }
    .quick-fact strong { display:block; font-size:.64rem; text-transform:uppercase; letter-spacing:.07em; color:var(--copper-light); margin-bottom:.25rem; }
    .quick-fact span { font-size:.86rem; color: rgba(255,255,255,0.9); font-weight:600; }

    .job-detail-block { margin-bottom:1.6rem; }
    .job-detail-block h4 { font-size:.92rem; font-weight:700; color:var(--white); margin-bottom:.8rem; padding-bottom:.4rem; border-bottom:2px solid var(--copper); display:inline-block; }
    .job-detail-block ul { list-style:none; }
    .job-detail-block li { font-size:.85rem; color: rgba(255,255,255,0.72); padding:.3rem 0 .3rem 1.3rem; position:relative; line-height:1.6; }
    .job-detail-block li::before { content:''; position:absolute; left:0; top:.75rem; width:6px; height:6px; border-radius:50%; background: var(--copper); }
    .comp-group { margin-bottom:.7rem; font-size:.85rem; color: rgba(255,255,255,0.72); line-height:1.6; }
    .comp-group strong { color:var(--gold-light); }

    .job-detail-note { background: rgba(181,84,26,0.16); border:1px solid rgba(212,112,60,0.3); border-left:3px solid var(--copper); border-radius:6px; padding:.8rem 1.1rem; font-size:.82rem; color: rgba(255,255,255,0.82); margin-bottom:1.7rem; }

    .modal-back-link { display:inline-block; margin-bottom:1rem; font-size:.8rem; color:var(--copper-light); text-decoration:none; font-weight:600; cursor:pointer; background:none; border:none; padding:0; font-family:'Inter',sans-serif; }
    .modal-back-link:hover { text-decoration:underline; }

    .apply-position-badge { background: rgba(181,84,26,0.16); border:1px solid rgba(212,112,60,0.35); border-radius:6px; padding:.8rem 1.1rem; font-size:.88rem; color: var(--gold-light); font-weight:600; margin-bottom:1.2rem; }

    /* Apply form inside dark modal */
    .career-form-wrap h3 { font-family:'Playfair Display',serif; font-size:1.35rem; font-weight:700; color:var(--white); margin-bottom:1.3rem; }
    .modal-box .form-group label { color: rgba(255,255,255,0.75); }
    .modal-box .form-group input, .modal-box .form-group select, .modal-box .form-group textarea { background: rgba(255,255,255,0.07); border:1.5px solid rgba(255,255,255,0.18); color:#fff; }
    .modal-box .form-group input::placeholder, .modal-box .form-group textarea::placeholder { color: rgba(255,255,255,0.45); }
    .modal-box .form-group input:focus, .modal-box .form-group select:focus, .modal-box .form-group textarea:focus { border-color: var(--copper-light); background: rgba(255,255,255,0.11); }
    .modal-box .form-group select option { background:#1E3448; color:#fff; }
    .career-form-wrap .form-note { font-size:.72rem; color: rgba(255,255,255,0.45); margin-top:.35rem; }
    .career-form-wrap input[type="file"] { padding:.55rem .8rem; cursor:pointer; color: rgba(255,255,255,0.75); }
    .modal-box .btn-submit { background: var(--copper); }
    .modal-box .btn-submit:hover { background: var(--copper-light); }
    .career-contact-line { text-align:center; margin-top:1.4rem; color: rgba(255,255,255,0.55); font-size:.84rem; }
    .career-contact-line a { color:var(--copper-light); text-decoration:none; font-weight:600; }
    .career-contact-line a:hover { text-decoration:underline; }

    /* Page header */
    .page-header { background: linear-gradient(180deg, var(--steel), var(--steel-mid)); padding:150px 5% 60px; position:relative; overflow:hidden; }
    .page-header::before { content:''; position:absolute; inset:0; pointer-events:none; z-index:0;
      background-image:
        radial-gradient(520px 280px at 15% -12%, rgba(181,84,26,0.18), transparent 62%),
        linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
      background-size: auto, 42px 42px, 42px 42px; }
    .page-header .breadcrumb, .page-header h1 { position: relative; z-index: 1; }
    .page-header .breadcrumb { font-family:'DM Mono',monospace; font-size:.75rem; color:rgba(255,255,255,0.5); letter-spacing:.04em; margin-bottom:1rem; }
    .page-header .breadcrumb a { color:rgba(255,255,255,0.7); text-decoration:none; }
    .page-header .breadcrumb a:hover { color:var(--copper-light); }
    .page-header h1 { font-family:'Playfair Display',serif; font-size:clamp(2rem,4vw,3rem); font-weight:800; color:var(--white); margin-bottom:.8rem; }
    .page-header p { color:rgba(255,255,255,0.6); font-size:1rem; max-width:560px; line-height:1.7; }
    /* ===== END CAREERS BOLD COPPER ACCENT REDESIGN ===== */

    /* ── CONTACT ── */
    .contact { background: var(--smoke); }
    .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; margin-top: 1rem; }
    .contact-info h3 {
      font-family: 'Playfair Display', serif;
      font-size: 1.25rem; font-weight: 700; color: var(--steel); margin-bottom: 1.5rem;
    }
    .info-block { display: flex; gap: 1rem; margin-bottom: 1.4rem; align-items: flex-start; }
    .info-icon { font-size: 1.2rem; flex-shrink: 0; margin-top: 2px; }
    .info-block strong { display: block; font-size: 0.76rem; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--steel); margin-bottom: 0.18rem; }
    .info-block p, .info-block a { font-size: 0.88rem; color: var(--mid); text-decoration: none; line-height: 1.5; }
    .info-block a:hover { color: var(--copper); }
    .social-links { display: flex; gap: 0.7rem; margin-top: 1.8rem; flex-wrap: wrap; }
    .social-link {
      display: flex; align-items: center; gap: 0.45rem;
      background: var(--steel); color: var(--white);
      padding: 0.5rem 1rem; border-radius: 3px;
      font-size: 0.78rem; font-weight: 500; text-decoration: none;
      transition: background 0.2s;
    }
    .social-link:hover { background: var(--copper); }
    .map-embed { width: 100%; height: 260px; border: 1px solid var(--border); border-radius: 6px; margin-top: 1.8rem; overflow: hidden; }
    .map-embed iframe { width: 100%; height: 100%; border: none; }
    .map-directions {
      display: inline-flex; align-items: center; gap: 0.4rem;
      margin-top: 0.9rem; font-size: 0.82rem; font-weight: 600;
      color: var(--copper); text-decoration: none; letter-spacing: 0.02em;
      transition: color 0.2s;
    }
    .map-directions:hover { color: var(--copper-light); }
    .contact-form h3 {
      font-family: 'Playfair Display', serif;
      font-size: 1.25rem; font-weight: 700; color: var(--steel); margin-bottom: 1.5rem;
    }
    .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
    .form-group { margin-bottom: 1.1rem; }
    .form-group label { display: block; font-size: 0.74rem; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; color: var(--steel); margin-bottom: 0.35rem; }
    .form-group input, .form-group select, .form-group textarea {
      width: 100%; padding: 0.72rem 1rem;
      border: 1.5px solid var(--border); border-radius: 4px;
      font-family: 'Inter', sans-serif; font-size: 0.86rem; color: var(--steel);
      background: var(--white); transition: border-color 0.2s; outline: none;
    }
    .form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color: var(--copper); }
    .form-group textarea { resize: vertical; min-height: 110px; }
    .btn-submit {
      width: 100%; background: var(--steel); color: var(--white);
      border: none; padding: 0.95rem; border-radius: 4px;
      font-family: 'Inter', sans-serif; font-size: 0.88rem; font-weight: 600;
      cursor: pointer; transition: background 0.2s; letter-spacing: 0.05em;
    }
    .btn-submit:hover { background: var(--copper); }
    .form-success {
      display: none; background: #e8f5e9; border: 1px solid #a5d6a7;
      color: #2e7d32; padding: 0.9rem; border-radius: 4px;
      font-size: 0.85rem; margin-top: 1rem; text-align: center;
    }

    /* ── FOOTER ── */
    footer {
      background: var(--steel); color: rgba(255,255,255,0.55);
      padding: 50px 5% 40px; text-align: center;
    }
    .footer-logo {
      font-family: 'Playfair Display', serif; font-size: 1.5rem;
      font-weight: 700; color: var(--white); margin-bottom: 0.5rem;
    }
    .footer-logo span { color: var(--copper-light); }
    footer p { font-size: 0.82rem; line-height: 1.6; }
    .footer-links { display: flex; justify-content: center; gap: 1.5rem; flex-wrap: wrap; margin: 1.5rem 0; }
    .footer-links a { color: rgba(255,255,255,0.45); text-decoration: none; font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase; transition: color 0.2s; }
    .footer-links a:hover { color: var(--copper-light); }

    /* ── FADE IN ── */
    /* anchor offset so the fixed nav never covers a section heading on jump */
    section[id], div[id] { scroll-margin-top: 86px; }

    /* ── ANIMATIONS ── */
    /* shared easing for a refined, premium feel */
    @keyframes floatGlow {
      0%, 100% { transform: translateY(-50%) scale(1); opacity: 0.9; }
      50%      { transform: translateY(-51.5%) scale(1.04); opacity: 0.78; }
    }
    @keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
    @keyframes riseIn {
      from { opacity: 0; transform: translateY(14px); }
      to   { opacity: 1; transform: none; }
    }

    /* gentle, slow background glow (purely decorative, behind content) */
    .hero-accent { animation: floatGlow 14s ease-in-out infinite; will-change: transform, opacity; }

    /* animated nav underline */
    .nav-links a { position: relative; }
    .nav-links a::after {
      content: ''; position: absolute; left: 0; bottom: -5px;
      height: 2px; width: 0;
      background: linear-gradient(90deg, var(--copper-light), var(--gold));
      transition: width 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .nav-links a:hover::after { width: 100%; }
    .nav-cta::after { display: none !important; }

    /* gradient text accents — static, no looping shimmer */
    .hero h1 em {
      background: linear-gradient(120deg, var(--copper-light) 0%, var(--gold-light) 70%, var(--copper-light) 100%);
      -webkit-background-clip: text; background-clip: text;
      -webkit-text-fill-color: transparent; color: transparent;
    }
    .hero-stat-val, .stat-num {
      background: linear-gradient(120deg, var(--gold), var(--gold-light));
      -webkit-background-clip: text; background-clip: text;
      -webkit-text-fill-color: transparent; color: transparent;
    }
    .divider { background: linear-gradient(90deg, var(--copper), var(--gold)) !important; }

    /* gradient, sliding-fill primary buttons */
    .btn-primary, .btn-submit {
      background: linear-gradient(135deg, var(--copper) 0%, var(--copper-light) 50%, var(--gold) 140%);
      background-size: 200% 200%; background-position: left center;
      transition: background-position 0.45s ease, transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease;
    }
    .btn-primary:hover, .btn-submit:hover {
      background-position: right center; transform: translateY(-2px);
      box-shadow: 0 8px 22px var(--copper-glow);
    }
    .btn-primary:active, .btn-submit:active { transform: translateY(0); }

    /* refined staggered entrance — soft fade + slight rise, no scale */
    .fade-in.visible .sector-card,
    .fade-in.visible .product-item,
    .fade-in.visible .system-card,
    .fade-in.visible .leader-card,
    .fade-in.visible .machine-card { animation: riseIn 0.6s cubic-bezier(0.16, 1, 0.3, 1) both; }
    .fade-in.visible > *:nth-child(2) { animation-delay: 0.06s; }
    .fade-in.visible > *:nth-child(3) { animation-delay: 0.12s; }
    .fade-in.visible > *:nth-child(4) { animation-delay: 0.18s; }
    .fade-in.visible > *:nth-child(5) { animation-delay: 0.24s; }
    .fade-in.visible > *:nth-child(6) { animation-delay: 0.30s; }

    /* ── AWARDS: elegant zoom-fade-rise reveal with stagger ── */
    @keyframes awardReveal {
      0%   { opacity: 0; transform: translateY(28px) scale(0.94); filter: blur(2px); }
      60%  { filter: blur(0); }
      100% { opacity: 1; transform: none; filter: blur(0); }
    }
    .awards-grid.fade-in.visible .award-card {
      animation: awardReveal 0.75s cubic-bezier(0.22, 1, 0.36, 1) both;
    }
    .awards-grid.fade-in.visible .award-card:nth-child(1) { animation-delay: 0.00s; }
    .awards-grid.fade-in.visible .award-card:nth-child(2) { animation-delay: 0.10s; }
    .awards-grid.fade-in.visible .award-card:nth-child(3) { animation-delay: 0.20s; }
    .awards-grid.fade-in.visible .award-card:nth-child(4) { animation-delay: 0.30s; }
    .awards-grid.fade-in.visible .award-card:nth-child(5) { animation-delay: 0.40s; }
    .awards-grid.fade-in.visible .award-card:nth-child(6) { animation-delay: 0.50s; }
    .award-card {
      transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease, border-color 0.3s ease;
    }
    .award-card:hover { transform: translateY(-6px); }

    /* ── CELEBRATIONS: lively pop-in gallery ── */
    /* ── CELEBRATIONS: compact flip-card gallery ── */
    .celeb-grid { grid-template-columns: repeat(5, 1fr) !important; gap: 0.75rem !important; }
    .celeb-item { aspect-ratio: 4/3 !important; }
    .celeb-item img { filter: brightness(0.93); transition: transform 0.45s ease, filter 0.35s ease; }
    .celeb-item:hover img { filter: brightness(1.05); transform: scale(1.06); }

    @keyframes celebFlip {
      0%   { opacity: 0; transform: rotateY(-60deg) scale(0.85); }
      60%  { opacity: 1; transform: rotateY(8deg)  scale(1.02); }
      100% { opacity: 1; transform: rotateY(0deg)  scale(1); }
    }
    .celeb-grid.fade-in.visible .celeb-item {
      animation: celebFlip 0.55s cubic-bezier(0.25, 0.8, 0.3, 1) both;
      transform-style: preserve-3d;
    }
    .celeb-grid.fade-in.visible .celeb-item:nth-child(1) { animation-delay: 0.00s; }
    .celeb-grid.fade-in.visible .celeb-item:nth-child(2) { animation-delay: 0.07s; }
    .celeb-grid.fade-in.visible .celeb-item:nth-child(3) { animation-delay: 0.14s; }
    .celeb-grid.fade-in.visible .celeb-item:nth-child(4) { animation-delay: 0.21s; }
    .celeb-grid.fade-in.visible .celeb-item:nth-child(5) { animation-delay: 0.28s; }

    /* Collages — compact 2-up row */
    .celeb-collages {
      margin-top: 1rem; display: flex; flex-direction: row; flex-wrap: wrap;
      align-items: flex-start; justify-content: center; gap: 0.75rem;
    }
    .celeb-collage { display: block; border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,0.10); cursor: zoom-in; }
    .celeb-collage.wide  { flex: 2 1 420px; max-width: 640px; width: 100%; height: 220px; object-fit: cover; }
    .celeb-collage.tall  { flex: 1 1 200px; max-width: 300px; width: 100%; height: 220px; object-fit: cover; }

    /* warm glow on card hovers */
    .sector-card:hover, .system-card:hover, .award-card:hover { box-shadow: 0 16px 40px var(--copper-glow) !important; }

    /* ── LEADERSHIP ── */
    .leaders { display: flex; gap: 1rem; margin: 1.8rem 0 0.4rem; flex-wrap: wrap; }
    .leader-card {
      display: flex; align-items: center; gap: 0.9rem;
      background: var(--white); border: 1px solid var(--border);
      border-left: 3px solid var(--copper); border-radius: 8px;
      padding: 0.95rem 1.15rem; flex: 1 1 210px;
      transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
    }
    .leader-card:hover { transform: translateY(-4px); box-shadow: 0 12px 30px var(--copper-glow); border-left-color: var(--gold); }
    .leader-avatar {
      width: 50px; height: 50px; border-radius: 50%; flex-shrink: 0;
      display: flex; align-items: center; justify-content: center;
      font-family: 'Playfair Display', serif; font-weight: 700;
      color: #fff; font-size: 1.05rem; letter-spacing: 0.02em;
      background: linear-gradient(135deg, var(--copper), var(--gold));
      box-shadow: 0 4px 12px var(--copper-glow);
    }
    .leader-card:nth-child(2) .leader-avatar {
      background: linear-gradient(135deg, var(--steel-light), var(--copper-light));
    }
    .leader-name { font-size: 0.94rem; font-weight: 700; color: var(--steel); line-height: 1.2; }
    .leader-role { font-size: 0.7rem; color: var(--copper); letter-spacing: 0.07em; text-transform: uppercase; font-weight: 600; margin-top: 3px; }

    .fade-in { opacity: 0; transform: translateY(18px); transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.7s cubic-bezier(0.16, 1, 0.3, 1); will-change: opacity, transform; }
    .fade-in.visible { opacity: 1; transform: none; }

    /* ── ACCESSIBILITY: respect reduced-motion preference ── */
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
      }
      .fade-in { opacity: 1 !important; transform: none !important; }
      .hero-accent { animation: none !important; }
    }

    /* ── HAMBURGER MENU ── */
    .hamburger {
      display: none; flex-direction: column; gap: 5px;
      cursor: pointer; padding: 6px; background: none; border: none;
      z-index: 300;
    }
    .hamburger span {
      width: 24px; height: 2px; background: rgba(255,255,255,0.85);
      border-radius: 2px; transition: all 0.3s ease;
      display: block;
    }
    .hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
    .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: 66px; left: 0; right: 0;
      background: rgba(21,34,50,0.99); backdrop-filter: blur(12px);
      padding: 1.5rem 5% 2rem; z-index: 199; flex-direction: column; gap: 0;
      border-bottom: 1px solid rgba(255,255,255,0.08);
      transform: translateY(-10px); opacity: 0;
      transition: transform 0.3s ease, opacity 0.3s ease;
    }
    .mobile-menu.open { display: flex; transform: translateY(0); opacity: 1; }
    .mobile-menu a {
      color: rgba(255,255,255,0.82); text-decoration: none;
      font-size: 1rem; font-weight: 500; padding: 0.9rem 0;
      border-bottom: 1px solid rgba(255,255,255,0.07);
      letter-spacing: 0.05em; transition: color 0.2s;
      display: flex; align-items: center; gap: 0.5rem;
    }
    .mobile-menu a:hover { color: var(--copper-light); }
    .mobile-menu a.mobile-cta {
      margin-top: 1rem; background: var(--copper); color: #fff;
      padding: 0.75rem 1.5rem; border-radius: 4px; border-bottom: none;
      justify-content: center; font-weight: 600;
    }
    .mobile-menu a.mobile-cta:hover { background: var(--copper-light); color: #fff; }

    /* ── RESPONSIVE ── */
    @media (max-width: 900px) {
      .nav-links { display: none; }
      .hamburger { display: flex; }
      .about-grid, .contact-grid, .cap-grid { grid-template-columns: 1fr; gap: 2.5rem; }
      .stats-grid, .sectors-grid { grid-template-columns: repeat(2, 1fr); }
      .products-grid, .strip-row { grid-template-columns: repeat(2, 1fr); }
      .systems-grid { grid-template-columns: repeat(2, 1fr); }
      .awards-grid { grid-template-columns: repeat(2, 1fr); }
      .clients-grid { grid-template-columns: 1fr; }
      /* NEW: careers responsive (added by Claude) */
      .careers-grid { grid-template-columns: repeat(2, 1fr); }
      .modal-box { padding: 1.7rem; }
      .quick-facts { grid-template-columns: 1fr; }
      .awards-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 1rem; }
      .award-card { padding: 1.4rem 1rem; }
      .cap-grid { grid-template-columns: 1fr; }
      section { padding: 60px 5%; }
      .hero { padding: 88px 5% 60px; }
      .hero h1 { font-size: clamp(2rem, 6vw, 3.2rem); }
    }
    @media (max-width: 560px) {
      .stats-grid { grid-template-columns: repeat(2, 1fr); }
      .products-grid, .strip-row { grid-template-columns: 1fr; }
      .form-row { grid-template-columns: 1fr; }
      .sectors-grid { grid-template-columns: repeat(2, 1fr); }
      .awards-grid { grid-template-columns: 1fr !important; }
      .hero-stats { gap: 1.5rem; }
      .hero-btns { flex-direction: column; }
      .btn-primary, .btn-outline { width: 100%; text-align: center; }
      .machines-grid { grid-template-columns: 1fr; }
      .systems-grid { grid-template-columns: 1fr; }
      .careers-grid { grid-template-columns: 1fr; } /* NEW: careers responsive (added by Claude) */
      .modal-overlay { padding: 0; }
      .modal-box { border-radius: 0; min-height: 100vh; padding: 1.5rem; }
      .logo-chip, .logo-text-chip { width: 140px; height: 76px; }
      nav { padding: 0 4%; }
      section { padding: 50px 4%; }
    }


    /* ===== NEW: EXTRA ANIMATIONS across the site (added by Claude) ===== */
    @keyframes fadeUp { from { opacity:0; transform: translateY(16px); } to { opacity:1; transform:none; } }
    @keyframes sheen { to { left:135%; } }
    @keyframes cardPop { 0%{ opacity:0; transform: translateY(18px) scale(.98); } 100%{ opacity:1; transform:none; } }
    @keyframes rippleFx { to { transform: scale(4); opacity:0; } }

    /* Job cards animate in (staggered — delay set inline per card in careers.html) */
    .fade-in.visible .job-card-mini { animation: cardPop .6s cubic-bezier(.16,1,.3,1) both; }

    /* JD popup + apply form: content reveals with a stagger each time the modal opens */
    .modal-overlay.open #jobModalBody > *,
    .modal-overlay.open .career-form-wrap > * { animation: fadeUp .5s ease both; }
    .modal-overlay.open #jobModalBody > *:nth-child(2){ animation-delay:.05s; }
    .modal-overlay.open #jobModalBody > *:nth-child(3){ animation-delay:.10s; }
    .modal-overlay.open #jobModalBody > *:nth-child(4){ animation-delay:.15s; }
    .modal-overlay.open #jobModalBody > *:nth-child(5){ animation-delay:.20s; }
    .modal-overlay.open #jobModalBody > *:nth-child(6){ animation-delay:.25s; }
    .modal-overlay.open #jobModalBody > *:nth-child(7){ animation-delay:.30s; }
    .modal-overlay.open #jobModalBody > *:nth-child(8){ animation-delay:.35s; }
    .modal-overlay.open .career-form-wrap .form-group,
    .modal-overlay.open .career-form-wrap .form-row { animation: fadeUp .5s ease both; }

    /* Animated copper underline on nav links (site-wide, index.html + careers.html) */
    .nav-links a:not(.nav-cta) { position: relative; }
    .nav-links a:not(.nav-cta)::after { content:''; position:absolute; left:0; bottom:-5px; height:2px; width:0;
      background: var(--copper-light); transition: width .28s ease; }
    .nav-links a:not(.nav-cta):hover::after { width:100%; }

    /* Light sweep across primary buttons on hover (site-wide) */
    .btn-submit { position: relative; overflow: hidden; }
    .btn-submit::after { content:''; position:absolute; top:0; left:-140%; width:55%; height:100%;
      background: linear-gradient(120deg, transparent, rgba(255,255,255,0.28), transparent); transform: skewX(-20deg); pointer-events:none; }
    .btn-submit:hover::after { animation: sheen .85s ease; }

    /* Click ripple (spawned by script.js) */
    .ripple { position:absolute; border-radius:50%; transform: scale(0); background: rgba(255,255,255,0.45);
      animation: rippleFx .6s ease-out; pointer-events:none; }

    @media (prefers-reduced-motion: reduce) {
      .fade-in.visible .job-card-mini,
      .modal-overlay.open #jobModalBody > *,
      .modal-overlay.open .career-form-wrap > *,
      .modal-overlay.open .career-form-wrap .form-group,
      .modal-overlay.open .career-form-wrap .form-row { animation: none !important; }
      .btn-submit:hover::after { animation: none !important; }
      .ripple { display:none !important; }
    }
    /* ===== END EXTRA ANIMATIONS ===== */
