/* ═══════════════════════════════════════════
       TOKENS
    ═══════════════════════════════════════════ */
    :root {
      --bg:        #f3f1ed;
      --bg2:       #e9e5dc;
      --surface:   #ffffff;
      --border:    rgba(0,0,0,.08);
      --text:      #1b1916;
      --text2:     #5a5550;
      --text3:     #948f88;
      --accent:    #e87722;   /* Zentra orange */
      --accent2:   #ff922b;
      --dark:      #1b1916;
      --nav-bg:    rgba(243,241,237,.93);
      --card-bg:   #ffffff;
      --hero-ol:   rgba(10,8,5,.54);
      --tr:        .3s cubic-bezier(.4,0,.2,1);
    }

    /* ═══════════════════════════════════════════
       BASE
    ═══════════════════════════════════════════ */
    *, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
    html { scroll-behavior:smooth; }
    body { font-family:'DM Sans',sans-serif; background:var(--bg); color:var(--text); overflow-x:hidden; transition:background var(--tr),color var(--tr); }
    a { color:inherit; text-decoration:none; }
    img, video { display:block; max-width:100%; }

    /* ═══════════════════════════════════════════
       NAV
    ═══════════════════════════════════════════ */
    nav {
      position:fixed; top:0; left:0; right:0; z-index:300;
      backdrop-filter:blur(20px) saturate(1.4);
      background:var(--nav-bg);
      border-bottom:1px solid var(--border);
      transition:background var(--tr), box-shadow var(--tr);
    }
    .nav-inner {
      max-width:1440px; margin:0 auto;
      display:flex; align-items:center;
      padding:0 2.5rem; height:70px; gap:2rem;
    }
    /* logo */
    .logo { display:flex; align-items:center; gap:.55rem; flex-shrink:0; }
    .logo-icon {
      width:36px; height:36px; flex-shrink:0;
      /* Zentra Z-shape rendered in SVG inline */
    }
    .logo-img { height:44px; width:auto; object-fit:contain; flex-shrink:0; }
    .logo-text {
      font-family:'Barlow Condensed',sans-serif;
      font-size:1.15rem; font-weight:800; letter-spacing:.06em;
      text-transform:uppercase; line-height:1.1;
    }

    /* nav links */
    .nav-links { display:flex; align-items:center; gap:.05rem; list-style:none; flex:1; }
    .nav-links>li { position:relative; }
    .nav-links>li>a {
      display:block; padding:.5rem .78rem;
      font-size:.72rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase;
      color:var(--text2); border-radius:4px;
      transition:color var(--tr),background var(--tr);
      font-family:'Barlow',sans-serif;
    }
    .nav-links>li>a:hover { color:var(--text); background:var(--border); }
    .nav-links>li:hover .dropdown { opacity:1; pointer-events:all; transform:translateY(0); }
    .dropdown {
      position:absolute; top:100%; left:0;
      background:var(--surface); border:1px solid var(--border);
      border-radius:8px; min-width:220px; padding:10px 0 .55rem;
      opacity:0; pointer-events:none; transform:translateY(8px);
      transition:opacity .2s,transform .2s;
      box-shadow:0 24px 60px rgba(0,0,0,.13);
    }
    .dropdown a {
      display:block; padding:.58rem 1.2rem;
      font-size:.7rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase;
      color:var(--text2); transition:color var(--tr),padding-left .18s;
    }
    .dropdown a:hover { color:var(--accent); padding-left:1.65rem; }
    .dd-div { height:1px; background:var(--border); margin:.3rem 0; }

    /* nav right */
    .nav-right { display:flex; align-items:center; gap:.9rem; margin-left:auto; flex-shrink:0; }
    .nav-cta {
      padding:.52rem 1.25rem;
      background:var(--accent); color:#fff!important;
      border-radius:3px; font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase;
      white-space:nowrap; transition:background var(--tr),transform .18s;
      font-family:'Barlow',sans-serif;
    }
    .nav-cta:hover { background:var(--accent2); transform:translateY(-1px); }
    .hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:4px; }
    .hamburger span { width:23px; height:2px; background:var(--text); border-radius:2px; }

    /* mobile nav */
    .mob-nav {
      display:none; position:fixed; inset:0; z-index:290;
      background:var(--surface); padding:80px 1.5rem 2rem;
      flex-direction:column; gap:.3rem; overflow-y:auto;
    }
    .mob-nav.open { display:flex; }
    .mob-nav a {
      padding:.8rem 0; border-bottom:1px solid var(--border);
      font-size:.95rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--text);
    }

    /* ═══════════════════════════════════════════
       HERO
    ═══════════════════════════════════════════ */
    .hero {
      position:relative; height:100vh; min-height:660px;
      display:flex; align-items:flex-end; overflow:hidden;
    }
    .hero-video {
      position:absolute; inset:0;
      width:100%; height:100%; object-fit:cover; object-position:center 30%;
      /* poster image shows when video hasn't loaded yet */
      background-color:#1b1916;
    }
    .hero-ol {
      position:absolute; inset:0; background:var(--hero-ol);
    }
    .hero-ol::after {
      content:''; position:absolute; inset:0;
      background:linear-gradient(to top, rgba(0,0,0,.65) 0%, transparent 55%);
    }
    /* orange left bar — matches Zentra brand diagonal accent */
    .hero::before {
      content:''; position:absolute; left:0; top:0; bottom:0;
      width:6px; background:var(--accent); z-index:4;
    }
    .hero-content {
      position:relative; z-index:5;
      max-width:1440px; margin:0 auto; width:100%;
      padding:0 4rem 7rem;
    }
    .hero-eyebrow {
      font-size:.65rem; font-weight:800; letter-spacing:.24em; text-transform:uppercase;
      color:var(--accent); margin-bottom:1rem;
      display:flex; align-items:center; gap:.75rem;
    }
    .hero-eyebrow::before { content:''; width:32px; height:2px; background:var(--accent); flex-shrink:0; }
    .hero h1 {
      font-family:'Barlow Condensed',sans-serif;
      font-size:clamp(3rem,7.5vw,7.5rem);
      font-weight:700; line-height:.98; color:#fff; letter-spacing:-.01em;
      max-width:860px; margin-bottom:1.75rem; text-transform:uppercase;
    }
    .hero h1 em { font-style:italic; color:#ffc59a; font-weight:300; text-transform:none; }
    .hero h1 strong { font-weight:800; }
    .hero-sub {
      font-size:.85rem; color:rgba(255,255,255,.6);
      max-width:400px; line-height:1.78; margin-bottom:2.5rem;
    }
    .hero-actions { display:flex; gap:1rem; flex-wrap:wrap; }
    .btn-p {
      padding:.88rem 2.3rem; background:var(--accent); color:#fff;
      border-radius:2px; font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase;
      transition:background .22s,transform .18s; font-family:'Barlow',sans-serif;
    }
    .btn-p:hover { background:var(--accent2); transform:translateY(-2px); }
    .btn-o {
      padding:.88rem 2.3rem; border:1px solid rgba(255,255,255,.35); color:rgba(255,255,255,.82);
      border-radius:2px; font-size:.75rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase;
      transition:border-color .22s,color .22s,background .22s; font-family:'Barlow',sans-serif;
    }
    .btn-o:hover { border-color:#fff; color:#fff; background:rgba(255,255,255,.09); }
    .hero-scroll {
      position:absolute; right:2.5rem; bottom:5.5rem; z-index:5;
      writing-mode:vertical-rl; font-size:.6rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase;
      color:rgba(255,255,255,.35); display:flex; align-items:center; gap:.55rem;
    }
    .hero-scroll::after { content:''; width:1px; height:44px; background:linear-gradient(to bottom,rgba(255,255,255,.3),transparent); }

    /* ═══════════════════════════════════════════
       STATS BAND
    ═══════════════════════════════════════════ */
    .stats-band { background:var(--accent); padding:2.6rem 2.5rem; }
    .stats-inner { max-width:1440px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
    .stat { text-align:center; }
    .stat-num { font-family:'Barlow Condensed',sans-serif; font-size:2.7rem; font-weight:700; color:#fff; line-height:1; margin-bottom:.3rem; letter-spacing:-.01em; }
    .stat-label { font-size:.65rem; font-weight:600; letter-spacing:.13em; text-transform:uppercase; color:rgba(255,255,255,.75); font-family:'Barlow',sans-serif; }

    /* ═══════════════════════════════════════════
       SHARED
    ═══════════════════════════════════════════ */
    section { padding:6.5rem 2.5rem; }
    .si { max-width:1440px; margin:0 auto; }
    .stag { font-size:.65rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--accent); margin-bottom:.65rem; display:flex; align-items:center; gap:.5rem; font-family:'Barlow',sans-serif; }
    .stag::before { content:''; width:20px; height:2px; background:var(--accent); flex-shrink:0; }
    .stitle { font-family:'Barlow Condensed',sans-serif; font-size:clamp(2.2rem,4vw,3.8rem); font-weight:700; line-height:1.0; margin-bottom:1.1rem; text-transform:uppercase; letter-spacing:-.01em; }
    .stitle em { font-style:italic; color:var(--accent); font-weight:300; text-transform:none; }

    /* ═══════════════════════════════════════════
       ABOUT
    ═══════════════════════════════════════════ */
    .about { background:var(--bg2); }
    .about-grid { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:center; }
    .about-video { position:relative; aspect-ratio:4/3; overflow:hidden; border-radius:2px; }
    .about-video video { width:100%; height:100%; object-fit:cover; }
    .about-video::before {
      content:''; position:absolute; top:-12px; left:-12px;
      width:50%; height:50%; border:3px solid var(--accent); border-radius:2px; z-index:-1;
    }
    .about-badge {
      position:absolute; bottom:1.2rem; left:1.2rem; z-index:2;
      background:var(--accent); color:#fff;
      padding:.6rem 1rem; font-size:.62rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase;
    }
    .about-text p { font-size:.84rem; color:var(--text2); line-height:1.88; margin-bottom:1rem; }
    .vm-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; margin:2rem 0; }
    .vm-card {
      border-left:3px solid var(--accent); padding:.9rem 1rem;
      background:var(--surface); border-radius:0 2px 2px 0;
    }
    .vm-card h4 { font-size:.7rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); margin-bottom:.4rem; font-family:'Barlow',sans-serif; }
    .vm-card p { font-size:.76rem; color:var(--text2); line-height:1.65; }
    .reg-info {
      margin-top:1.5rem; padding:1.1rem 1.2rem;
      background:var(--bg2); border-radius:2px; border:1px solid var(--border);
      display:grid; grid-template-columns:1fr 1fr; gap:.6rem 1.5rem;
    }
    .reg-row { font-size:.72rem; color:var(--text2); }
    .reg-row strong { color:var(--text); font-weight:700; display:block; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; margin-bottom:.15rem; }


    /* ═══════════════════════════════════════════
       PRODUCTS — REDESIGNED
    ═══════════════════════════════════════════ */
    .products {
      background: #000000;
      padding: 7rem 2.5rem;
      position: relative;
      overflow: hidden;
    }
    .products::before {
      content: '';
      position: absolute;
      inset: 0;
      background:
        radial-gradient(ellipse 60% 50% at 10% 20%, rgba(232,119,34,.12) 0%, transparent 60%),
        radial-gradient(ellipse 40% 60% at 90% 80%, rgba(232,119,34,.07) 0%, transparent 60%);
      pointer-events: none;
    }
    .products .si { position: relative; z-index: 1; }
    .prod-head {
      display: flex; align-items: flex-end;
      justify-content: space-between; gap: 2rem;
      margin-bottom: 4rem; flex-wrap: wrap;
    }
    .prod-head .stag { color: #e87722; }
    .prod-head .stitle { color: #ffffff; }
    .prod-head .stitle em { color: #e87722; }
    .prod-head p { max-width:380px; color:rgba(255,255,255,.5); font-size:.84rem; line-height:1.85; }
    .prod-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.5rem;
      background: transparent;
      border: none;
    }
    .prod-card {
      background: rgba(255,255,255,.04);
      border: 1px solid rgba(255,255,255,.08);
      border-radius: 4px;
      padding: 2.2rem 2rem;
      display: flex; flex-direction: column;
      position: relative; overflow: hidden; cursor: pointer;
      transition: background .3s, border-color .3s, transform .3s;
      backdrop-filter: blur(4px);
    }
    .prod-card:hover {
      background: rgba(232,119,34,.12);
      border-color: rgba(232,119,34,.5);
      transform: translateY(-4px);
    }
    .prod-card::before {
      content: '';
      position: absolute; top: 0; left: 0; right: 0; height: 3px;
      background: linear-gradient(90deg, #e87722, #ffb366);
      transform: scaleX(0); transform-origin: left;
      transition: transform .35s cubic-bezier(.4,0,.2,1);
      border-radius: 4px 4px 0 0;
    }
    .prod-card:hover::before { transform: scaleX(1); }
    .prod-num {
      font-family: 'Barlow Condensed', sans-serif;
      font-size: 3.5rem; font-weight: 800;
      color: rgba(255,255,255,.08);
      line-height: 1; margin-bottom: .8rem;
      letter-spacing: -.03em;
      transition: color .3s;
    }
    .prod-card:hover .prod-num { color: rgba(232,119,34,.25); }
    .prod-icon { display: none; }
    .prod-card h3 {
      font-family: 'Barlow Condensed', sans-serif;
      font-size: 1.35rem; font-weight: 700;
      margin-bottom: .6rem; line-height: 1.1;
      text-transform: uppercase; letter-spacing: .03em;
      color: #ffffff;
      transition: color .3s;
    }
    .prod-card:hover h3 { color: #ffb366; }
    .prod-card p {
      font-size: .79rem; color: rgba(255,255,255,.45);
      line-height: 1.75; flex: 1;
      transition: color .3s;
    }
    .prod-card:hover p { color: rgba(255,255,255,.75); }
    .prod-specs { margin-top: 1.1rem; display: flex; flex-wrap: wrap; gap: .4rem; }
    .spec {
      font-size: .6rem; font-weight: 700;
      letter-spacing: .07em; text-transform: uppercase;
      padding: .26rem .65rem;
      background: rgba(255,255,255,.07);
      border: 1px solid rgba(255,255,255,.1);
      border-radius: 3px;
      color: rgba(255,255,255,.5);
      transition: background .3s, color .3s;
    }
    .spec-grade {
      background: rgba(232,119,34,.15);
      border-color: rgba(232,119,34,.35);
      color: #e87722;
    }
    .prod-card:hover .spec {
      background: rgba(255,255,255,.1);
      color: rgba(255,255,255,.75);
    }
    .prod-card:hover .spec-grade {
      background: rgba(232,119,34,.25);
      color: #ffb366;
      border-color: rgba(232,119,34,.6);
    }
    .prod-link {
      margin-top: 1.4rem; font-size: .68rem;
      font-weight: 800; letter-spacing: .1em;
      text-transform: uppercase;
      color: rgba(255,255,255,.3);
      display: flex; align-items: center; gap: .35rem;
      transition: color .3s;
    }
    .prod-link::after { content: '→'; transition: transform .2s; }
    .prod-card:hover .prod-link { color: #e87722; }
    .prod-card:hover .prod-link::after { transform: translateX(5px); }

    /* hover image overlay */
    .prod-card { isolation: isolate; }
    .prod-hover-img {
      position: absolute; inset: 0;
      width: 100%; height: 100%;
      object-fit: cover; object-position: center;
      opacity: 0; transition: opacity .45s ease;
      z-index: 1;
    }
    .prod-card:hover .prod-hover-img { opacity: 1; }
    .prod-card::after {
      content: '';
      position: absolute; inset: 0;
      background: linear-gradient(160deg,
        rgba(22,20,15,.82) 0%,
        rgba(22,20,15,.65) 50%,
        rgba(232,119,34,.25) 100%);
      opacity: 0; transition: opacity .45s;
      z-index: 2;
    }
    .prod-card:hover::after { opacity: 1; }
    .prod-card > *:not(.prod-hover-img) { position: relative; z-index: 3; }
    .prod-card:hover::before { z-index: 4; }

/* ═══════════════════════════════════════════
       SERVICES
    ═══════════════════════════════════════════ */
.svc-row-img { width:100%; height:200px; }
      .svc-row-body { padding:1rem 0 0; }
      .svc-header-title { font-size:2rem; }
    }

    /* ══════════════════════════════════════════
       QUALITY / COMPLIANCE
    ═══════════════════════════════════════════ */
    .quality {
      background: #f3f1ed !important;
      padding: 6.5rem 2.5rem;
      position: relative;
    }
    .quality::before { display:none; }
    .quality > * { position:relative; z-index:1; }
    .qual-inner { max-width:1440px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:center; position:relative; z-index:1; }
    .quality .stag { color:#e87722 !important; font-weight:700; letter-spacing:.2em; }
    .qual-left .stitle { color:#1b1916 !important; }
    .qual-left p { font-size:.93rem; color:#1b1916 !important; font-weight:600; line-height:1.9; margin-top:1rem; }
    .qual-items { margin-top:2.5rem; display:flex; flex-direction:column; gap:0; }
    .qual-item {
      display:flex; gap:1.4rem; align-items:flex-start;
      padding:1.5rem 0; border-bottom:1px solid rgba(0,0,0,.12);
    }
    .qual-item:last-child { border-bottom:none; }
    .qual-dot { width:10px; height:10px; border-radius:50%; background:#e87722; flex-shrink:0; margin-top:.35rem; }
    .qual-body h4 { font-size:.82rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:#1b1916 !important; margin-bottom:.4rem; font-family:'Barlow',sans-serif; }
    .qual-body p { font-size:.86rem; color:#1b1916 !important; font-weight:600; line-height:1.75; }
    .qual-video { position:relative; aspect-ratio:4/3; border-radius:2px; overflow:hidden; z-index:1; }
    .qual-video video { width:100%; height:100%; object-fit:cover; }

    /* ═══════════════════════════════════════════
       APPLICATIONS
    ═══════════════════════════════════════════ */
    .apps { background:var(--bg); }
    .apps-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:3.5rem; }

    .app-icon-img {
      width: 80px; height: 80px;
      margin-bottom: 1.2rem;
      border-radius: 16px;
      flex-shrink: 0;
    }
    .app-card:hover .app-icon-img { transform: scale(1.08); transition: transform .28s; }
    .app-card {
      background: var(--card-bg);
      border: 1px solid var(--border);
      border-radius: 6px;
      padding: 2rem 1.6rem 1.8rem;
      display: flex; flex-direction: column;
      align-items: center; text-align: center;
      transition: transform .28s, box-shadow .28s, border-color .28s;
      cursor: default;
    }
    .app-card:hover { transform:translateY(-5px); box-shadow:0 20px 50px rgba(0,0,0,.1); border-color:var(--accent); }
    .app-icon { font-size:2rem; margin-bottom:.9rem; }
    .app-icon { display:none; }
    .app-card h3 { font-size:.82rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; margin-bottom:.5rem; font-family:'Barlow',sans-serif; text-align:center; }
    .app-card p { font-size:.74rem; color:var(--text2); line-height:1.65; text-align:center; }

    /* ═══════════ CONTACT ═══════════ */
    .contact { background:var(--bg2); padding:0; }
    .contact-banner {
      background:var(--text); padding:3.5rem 2.5rem;
    }
    
    .contact-banner-inner {
      display:flex; align-items:center; justify-content:space-between;
      gap:2rem; flex-wrap:wrap;
    }
    .contact-quicklinks { display:flex; gap:1rem; flex-wrap:wrap; }
    .cq-btn {
      display:flex; align-items:center; gap:.6rem;
      padding:.75rem 1.4rem; border:1px solid rgba(255,255,255,.18);
      border-radius:3px; color:rgba(255,255,255,.8);
      font-family:'Barlow',sans-serif; font-size:.78rem; font-weight:600; letter-spacing:.06em;
      transition:border-color .2s,color .2s,background .2s;
    }
    .cq-btn:hover { border-color:var(--accent); color:#fff; background:rgba(232,119,34,.12); }

    .contact-grid {
      display:grid; grid-template-columns:1fr 1.4fr;
      gap:0; padding:0;
    }

    /* left info card */
    .contact-info-card {
      background:var(--surface); border-right:1px solid var(--border);
      padding:3rem 2.5rem; display:flex; flex-direction:column; gap:2rem;
    }
    .cic-header { display:flex; align-items:center; gap:.9rem; padding-bottom:1.5rem; border-bottom:1px solid var(--border); }
    .ci-items { display:flex; flex-direction:column; gap:1.2rem; }
    .ci-item { display:flex; gap:.9rem; align-items:flex-start; }
    .ci-item-icon {
      width:36px; height:36px; border-radius:3px;
      background:rgba(232,119,34,.1); display:flex; align-items:center; justify-content:center;
      flex-shrink:0;
    }
    .ci-item-label {
      font-size:.62rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
      color:var(--text3); margin-bottom:.2rem; font-family:'Barlow',sans-serif;
    }
    .ci-item-val { font-size:.82rem; color:var(--text2); line-height:1.55; display:block; }
    .ci-link { transition:color .2s; }
    .ci-link:hover { color:var(--accent); }
    .contact-map { border-radius:3px; overflow:hidden; border:1px solid var(--border); }

    /* right form card */
    .contact-form-card {
      background:var(--bg); padding:3rem 2.5rem;
    }
    .form-title {
      font-family:'Barlow Condensed',sans-serif;
      font-size:2rem; font-weight:700; text-transform:uppercase;
      letter-spacing:-.01em; margin-bottom:.3rem;
    }
    .form-title em { font-style:italic; color:var(--accent); font-weight:300; text-transform:none; }
    .form-subtitle { font-size:.82rem; color:var(--text2); margin-bottom:1.8rem; line-height:1.6; }
    .contact-form { display:flex; flex-direction:column; gap:1rem; }
    .form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
    .form-group { display:flex; flex-direction:column; gap:.35rem; }
    .form-group label {
      font-size:.65rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
      color:var(--text3); font-family:'Barlow',sans-serif;
    }
    .req { color:var(--accent); }
    .form-group input, .form-group textarea, .form-group select {
      padding:.75rem 1rem; background:var(--surface);
      border:1px solid var(--border); border-radius:3px;
      font-family:'DM Sans',sans-serif; font-size:.83rem; color:var(--text);
      transition:border-color .2s, box-shadow .2s; outline:none;
      -webkit-appearance:none;
    }
    .form-group input:focus, .form-group textarea:focus, .form-group select:focus {
      border-color:var(--accent);
      box-shadow:0 0 0 3px rgba(232,119,34,.12);
    }
    .form-group textarea { resize:vertical; min-height:110px; }
    .form-footer { display:flex; align-items:center; gap:1.5rem; flex-wrap:wrap; margin-top:.5rem; }
    .form-submit {
      display:flex; align-items:center; gap:.6rem;
      padding:.9rem 2rem; background:var(--accent); color:#fff; border:none; border-radius:3px;
      font-family:'Barlow',sans-serif; font-size:.76rem; font-weight:800;
      letter-spacing:.1em; text-transform:uppercase;
      cursor:pointer; transition:background .2s,transform .18s;
      white-space:nowrap;
    }
    .form-submit:hover { background:var(--accent2); transform:translateY(-1px); }
    .form-note { font-size:.7rem; color:var(--text3); line-height:1.55; max-width:280px; }
    .form-success {
      display:flex; align-items:center; gap:.75rem; margin-top:.5rem;
      padding:1rem 1.25rem; background:rgba(232,119,34,.08);
      border:1px solid rgba(232,119,34,.25); border-radius:3px;
      font-size:.84rem; color:var(--text);
    }

    /* ═══════════════════════════════════════════
       CTA BAND
    ═══════════════════════════════════════════ */
    .cta-band { background:var(--accent); padding:5rem 2.5rem; }
    .cta-inner { max-width:1440px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap; }
    .cta-inner h2 { font-family:'Barlow Condensed',sans-serif; font-size:clamp(2rem,3.5vw,3.2rem); font-weight:700; color:#fff; line-height:1.05; text-transform:uppercase; letter-spacing:-.01em; }
    .cta-inner h2 em { font-style:italic; }
    .cta-inner p { font-size:.83rem; color:rgba(255,255,255,.68); margin-top:.4rem; max-width:380px; line-height:1.7; }
    .cta-btn { padding:1rem 2.4rem; background:#1b1916; color:#fff!important; border-radius:2px; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; white-space:nowrap; flex-shrink:0; transition:transform .18s,background .2s; }
    .cta-btn:hover { background:#000; transform:translateY(-2px); }

    /* ═══════════════════════════════════════════
       CONTACT
    ═══════════════════════════════════════════ */
    .contact { background:var(--bg2); }
    .contact-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:4rem; margin-top:3.5rem; }
    .contact-info { display:flex; flex-direction:column; gap:1.2rem; }
    .ci-row { display:flex; gap:1rem; align-items:flex-start; }
    .ci-icon { font-size:1.3rem; flex-shrink:0; width:2.2rem; }
    .ci-body h4 { font-size:.68rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--accent); margin-bottom:.25rem; }
    .ci-body p, .ci-body a { font-size:.82rem; color:var(--text2); line-height:1.65; }
    .ci-body a:hover { color:var(--accent); }
    .contact-form { display:flex; flex-direction:column; gap:1rem; }
    .form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
    .form-group { display:flex; flex-direction:column; gap:.4rem; }
    .form-group label { font-size:.66rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--text3); }
    .form-group input, .form-group textarea, .form-group select {
      padding:.75rem 1rem; background:var(--surface);
      border:1px solid var(--border); border-radius:2px;
      font-family:'DM Sans',sans-serif; font-size:.82rem; color:var(--text);
      transition:border-color .2s;
      outline:none;
    }
    .form-group input:focus, .form-group textarea:focus, .form-group select:focus { border-color:var(--accent); }
    .form-group textarea { resize:vertical; min-height:100px; }
    .form-submit { padding:.9rem 2rem; background:var(--accent); color:#fff; border:none; border-radius:2px; font-family:'Barlow',sans-serif; font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; cursor:pointer; transition:background .2s,transform .18s; align-self:flex-start; }
    .form-submit:hover { background:var(--accent2); transform:translateY(-1px); }

    /* ═══════════════════════════════════════════
       FOOTER
    ═══════════════════════════════════════════ */
    footer { background:#100e0b; color:rgba(243,241,237,.52); padding:5rem 2.5rem 2.5rem; }
    .footer-inner { max-width:1440px; margin:0 auto; }
    .footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:3rem; padding-bottom:3rem; border-bottom:1px solid rgba(255,255,255,.07); }
    .f-logo { display:flex !important; align-items:center; gap:1rem; margin-bottom:1.4rem; }

    .f-logo-text span { color:var(--accent); }
    .f-logo-sub { font-size:.52rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.3); display:block; }
    .footer-brand p { font-size:.76rem; line-height:1.8; margin-bottom:.4rem; }
    .f-socials { display:flex; gap:.55rem; margin-top:1.1rem; }
    .f-soc { width:34px; height:34px; border:1px solid rgba(255,255,255,.12); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.75rem; cursor:pointer; transition:border-color .2s,background .2s; }
    .f-soc:hover { border-color:var(--accent); background:rgba(232,119,34,.18); }
    footer h4 { font-size:.6rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; color:rgba(255,255,255,.3); margin-bottom:1.1rem; }
    .f-links { list-style:none; }
    .f-links li { margin-bottom:.5rem; }
    .f-links a { font-size:.75rem; color:rgba(243,241,237,.48); transition:color .2s; }
    .f-links a:hover { color:var(--accent); }
    .footer-bot { display:flex; justify-content:space-between; align-items:center; padding-top:1.8rem; flex-wrap:wrap; gap:1rem; }
    .footer-bot p { font-size:.68rem; }
    .f-legal { display:flex; gap:1.5rem; flex-wrap:wrap; }
    .f-legal a { font-size:.68rem; color:rgba(243,241,237,.32); transition:color .2s; }
    .f-legal a:hover { color:var(--accent); }

    /* ═══════════════════════════════════════════
       RESPONSIVE
    ═══════════════════════════════════════════ */
    @media(max-width:1100px){
      .nav-links { display:none; }
      .hamburger { display:flex; }
      .prod-grid { grid-template-columns:1fr 1fr; }
      .about-grid { grid-template-columns:1fr; gap:2.5rem; }
      .qual-inner { grid-template-columns:1fr; gap:3rem; }
      .apps-grid { grid-template-columns:1fr 1fr; }
      .contact-grid { grid-template-columns:1fr; }
      .contact-info-card { border-right:none; border-bottom:1px solid var(--border); }
      .contact-banner-inner { flex-direction:column; align-items:flex-start; }
      .form-row { grid-template-columns:1fr; }
      .footer-top { grid-template-columns:1fr 1fr; }
      .stats-inner { grid-template-columns:repeat(2,1fr); }
    }
    @media(max-width:768px){
      section { padding:5rem 1.25rem; }
      .prod-grid { grid-template-columns:1fr; }
      .apps-grid { grid-template-columns:1fr 1fr; }
      .vm-grid { grid-template-columns:1fr; }
      .reg-info { grid-template-columns:1fr; }
      .footer-top { grid-template-columns:1fr 1fr; }
      .nav-inner { padding:0 1.25rem; }
      .hero-content { padding:0 1.5rem 5.5rem 1.8rem; }
      .stats-band,.cta-band { padding-left:1.25rem; padding-right:1.25rem; }
      .form-row { grid-template-columns:1fr; }
    }
    @media(max-width:480px){
      .footer-top { grid-template-columns:1fr; }
      .apps-grid { grid-template-columns:1fr; }
      .hero-actions { flex-direction:column; }
      .stats-inner { grid-template-columns:1fr 1fr; }
    }

    /* ═══════════════════════════════════════════
       ANIMATIONS
    ═══════════════════════════════════════════ */
    @keyframes fadeUp { from{opacity:0;transform:translateY(26px)} to{opacity:1;transform:translateY(0)} }
    .hero-eyebrow { animation:fadeUp .7s .1s both; }
    .hero h1      { animation:fadeUp .9s .25s both; }
    .hero-sub     { animation:fadeUp .8s .4s both; }
    .hero-actions { animation:fadeUp .7s .55s both; }
    .hero-scroll  { animation:fadeUp .6s .85s both; }
  
    /* ── PRODUCT CARD HOVER IMAGE ──────────────────── */
    .prod-card { isolation: isolate; }
    .prod-hover-img {
      position:absolute; inset:0;
      width:100%; height:100%; object-fit:cover;
      opacity:0;
      transition:opacity .45s cubic-bezier(.4,0,.2,1);
      z-index:0; border-radius:0;
      pointer-events:none;
    }
    .prod-card:hover .prod-hover-img { opacity:1; }
    /* Dark gradient over image so text stays readable */
    .prod-card::after {
      content:'';
      position:absolute; inset:0; z-index:1;
      background: linear-gradient(
        160deg,
        rgba(15,12,8,.82) 0%,
        rgba(15,12,8,.70) 55%,
        rgba(232,119,34,.30) 100%
      );
      opacity:0;
      transition:opacity .45s cubic-bezier(.4,0,.2,1);
      pointer-events:none;
    }
    .prod-card:hover::after { opacity:1; }
    /* Lift all card content above the image + overlay */
    .prod-card > *:not(.prod-hover-img) { position:relative; z-index:2; }
    /* On hover: lighten text for readability over dark image */
    .prod-card:hover h3              { color:#fff; }
    .prod-card:hover p               { color:rgba(255,255,255,.72); }
    .prod-card:hover .prod-num       { color:rgba(255,255,255,.18); }
    .prod-card:hover .spec           { background:rgba(255,255,255,.12); color:rgba(255,255,255,.7); }
    .prod-card:hover .prod-link      { color:#ffb366; }
    /* keep the orange top bar on hover */
    .prod-card:hover::before         { transform:scaleX(1); z-index:3; }

  
    .f-logo-img { height:56px; width:auto; object-fit:contain; flex-shrink:0; }
    .services { background:var(--bg2); }
    .svc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:3.5rem; }
    .svc-card {
      background:var(--card-bg); padding:2rem 1.8rem; border-radius:2px;
      transition:transform var(--tr), box-shadow var(--tr);
    }
    .svc-card:hover { transform:translateY(-4px); box-shadow:0 18px 50px rgba(0,0,0,.09); }
    .svc-icon { width:52px; height:52px; margin-bottom:1.2rem; display:flex; align-items:center; }
    .svc-card h3 { font-family:'Barlow Condensed',sans-serif; font-size:1.4rem; font-weight:700; margin-bottom:.6rem; text-transform:uppercase; letter-spacing:.02em; }

    .svc-photo { width:100%; height:160px; object-fit:cover; border-radius:2px; margin-bottom:1.2rem; }
    .svc-card p { font-size:.78rem; color:var(--text2); line-height:1.75; }
