/* ═══════════════════════════════════════════
   NANOGLOW SCIENTIFIC — Global Stylesheet
   Entegris-inspired corporate design
   ═══════════════════════════════════════════ */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --dark:#1a1a2e;
  --dark-nav:#222240;
  --dark-footer:#161628;
  --accent:#1a9e96;
  --accent-hover:#15857e;
  --accent-light:#e6f5f4;
  --blue:#2878b5;
  --green:#3db56a;
  --orange:#e07b3a;
  --red:#c0392b;
  --text:#333;
  --text-light:#666;
  --text-lighter:#999;
  --border:#ddd;
  --bg:#fff;
  --bg-gray:#f5f5f5;
  --font:'Nunito',Arial,Helvetica,sans-serif;
}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1280px;margin:0 auto;padding:0 40px}

/* ── BRAND STRIPE ── */
.brand-stripe{height:4px;background:linear-gradient(90deg,var(--blue),var(--accent),var(--green),var(--orange),var(--red))}

/* ── UTILITY BAR ── */
.utility-bar{background:var(--dark);border-bottom:1px solid rgba(255,255,255,.08)}
.utility-bar .wrap{display:flex;justify-content:flex-end;align-items:center;height:36px;gap:24px}
.utility-bar a{color:#aaa;font-size:12px;transition:color .2s}
.utility-bar a:hover{color:#fff}
.utility-bar .sep{color:#444;font-size:10px}

/* ── MAIN HEADER ── */
.main-header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:999;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.main-header .wrap{display:flex;align-items:center;justify-content:space-between;height:80px}
.logo{display:flex;align-items:center;gap:10px}
.logo-img{height:72px;width:auto;display:block;object-fit:contain;mix-blend-mode:multiply}
.main-nav{display:flex;align-items:center}
.main-nav a{color:var(--text-light);font-size:14px;font-weight:600;padding:20px 16px;display:flex;align-items:center;gap:6px;transition:all .2s;position:relative}
.main-nav a::after{content:'';position:absolute;bottom:0;left:16px;right:16px;height:3px;background:var(--accent);transform:scaleX(0);transition:transform .2s}
.main-nav a:hover,.main-nav a.active{color:var(--dark)}
.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}
.nav-right{display:flex;align-items:center;gap:12px}
.nav-search{background:none;border:none;color:var(--text-light);cursor:pointer;padding:8px}
.nav-search:hover{color:var(--dark)}
.nav-search svg{width:20px;height:20px}
.mobile-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--dark)}
.mobile-btn svg{width:24px;height:24px}

/* ── HERO ── */
.hero{position:relative;height:520px;overflow:hidden;background:var(--dark)}
.hero-slides{display:flex;transition:transform .6s ease;height:100%}
.hero-slide{min-width:100%;height:100%;position:relative;display:flex;align-items:center}
.hero-slide-bg{position:absolute;inset:0}
.hero-slide-overlay{position:absolute;inset:0}
.hero-content{position:relative;z-index:2;width:100%}
.hero-content .wrap{max-width:1280px;margin:0 auto;padding:0 40px}
.hero-content .eyebrow{display:inline-block;color:var(--accent);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:16px}
.hero-content h1{color:#fff;font-size:42px;font-weight:900;line-height:1.1;text-transform:uppercase;max-width:600px;margin-bottom:16px;letter-spacing:.5px}
.hero-content p{color:rgba(255,255,255,.7);font-size:16px;max-width:520px;margin-bottom:28px;line-height:1.65}
.hero-btn{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff;padding:12px 28px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1px;transition:background .2s}
.hero-btn:hover{background:var(--accent-hover)}
.hero-btn svg{width:16px;height:16px}
.hero-dots{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:10;display:flex;gap:10px}
.hero-dot{width:12px;height:12px;border-radius:50%;border:2px solid rgba(255,255,255,.4);background:transparent;cursor:pointer;transition:all .3s}
.hero-dot.active{background:var(--accent);border-color:var(--accent)}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:rgba(0,0,0,.35);border:none;color:#fff;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}
.hero-arrow:hover{background:rgba(0,0,0,.6)}
.hero-arrow svg{width:24px;height:24px}
.hero-arrow.prev{left:0}
.hero-arrow.next{right:0}

/* ── PAGE BANNER (inner pages) ── */
.page-banner{background:var(--bg-gray);border-bottom:1px solid var(--border);padding:56px 0 48px;position:relative;overflow:hidden}
.page-banner::before{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(26,158,150,.07),transparent 70%);top:-200px;right:-100px}
.page-banner .wrap{position:relative;z-index:1}
.page-banner .eyebrow{color:var(--accent);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;display:block}
.page-banner h1{color:var(--dark);font-size:36px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}
.page-banner p{color:var(--text-light);font-size:16px;max-width:640px;line-height:1.65}
.breadcrumb{margin-top:16px;font-size:13px;color:var(--text-lighter)}
.breadcrumb a{color:var(--text-light);transition:color .2s}
.breadcrumb a:hover{color:var(--accent)}
.breadcrumb span{margin:0 8px}

/* ── SECTIONS ── */
.section{padding:64px 0}
.section-gray{background:var(--bg-gray)}
.section-dark{background:var(--bg-gray);color:var(--text)}
.section-head{text-align:center;margin-bottom:48px}
.section-head h2{font-size:28px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;color:var(--dark)}
.section-dark .section-head h2{color:#fff}
.section-head p{font-size:16px;color:var(--text-light);max-width:680px;margin:0 auto;line-height:1.65}
.section-dark .section-head p{color:rgba(255,255,255,.6)}
.section-head .underline{width:48px;height:3px;background:var(--accent);margin:14px auto 0}

/* ── SPLIT PANELS (Entegris style) ── */
.split{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:360px}
.split-text{padding:56px 48px;display:flex;flex-direction:column;justify-content:center}
.split-text.dark{background:#f9f9fb;border:1px solid var(--border)}
.split-text h2{color:var(--dark);font-size:34px;font-weight:900;text-transform:uppercase;line-height:1.1;margin-bottom:16px}
.split-text p{color:var(--text-light);font-size:15px;line-height:1.7;margin-bottom:16px}
.split-visual{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.split-visual.navy{background:linear-gradient(135deg,#e8f5f4,#d0eeec)}
.split-visual.dark{background:linear-gradient(135deg,#eef6f5,#ddf0ee)}
.btn-link{color:var(--accent);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1px;display:inline-flex;align-items:center;gap:6px;transition:color .2s;margin-top:4px}
.btn-link:hover{color:var(--accent-hover)}
.btn-link svg{width:14px;height:14px}
.arrow-icon{width:16px;height:16px}

/* ── PRODUCT CARDS ── */
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.product-card{background:#fff;border:1px solid var(--border);transition:all .25s;position:relative;overflow:hidden}
.product-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.1);z-index:2;transform:translateY(-2px)}
.pc-img{height:200px;background:linear-gradient(135deg,#0d1b2a,#1a3050);display:flex;align-items:center;justify-content:center;position:relative}
.pc-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.3))}
.p-icon{position:relative;z-index:1;width:64px;height:64px;border-radius:50%;background:rgba(26,158,150,.15);border:1.5px solid rgba(26,158,150,.3);display:flex;align-items:center;justify-content:center}
.p-icon svg{width:28px;height:28px;color:var(--accent)}
.pc-body{padding:24px 24px 28px}
.pc-body h3{font-size:18px;font-weight:700;margin-bottom:8px;color:var(--dark)}
.pc-body p{font-size:14px;color:var(--text-light);line-height:1.6;margin-bottom:16px}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.tag{font-size:11px;padding:4px 10px;background:var(--accent-light);color:var(--accent);font-weight:600;letter-spacing:.3px}
.card-link{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:color .2s}
.card-link:hover{color:var(--accent-hover)}
.card-link svg{width:14px;height:14px;transition:transform .2s}
.product-card:hover .card-link svg{transform:translateX(3px)}

/* ── SPECS TABLE ── */
.specs-wrap{background:#fff;border:1px solid var(--border);padding:36px;margin-top:32px}
.specs-wrap h3{font-size:20px;font-weight:700;margin-bottom:4px;color:var(--dark)}
.specs-wrap>p{font-size:14px;color:var(--text-light);margin-bottom:20px}
table.spec{width:100%;border-collapse:collapse;font-size:13px}
table.spec thead{background:var(--accent)}
table.spec th{color:#fff;padding:12px 14px;text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.8px}
table.spec td{padding:11px 14px;border-bottom:1px solid #eee}
table.spec tr:nth-child(even){background:var(--bg-gray)}
table.spec td:first-child{font-weight:700;color:var(--dark)}

/* ── AI / TECH ── */
.tech-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.tech-text h3{font-size:16px;font-weight:700;color:var(--dark);margin-bottom:8px}
.tech-text>p{font-size:14px;color:var(--text-light);line-height:1.65;margin-bottom:20px}
.pipeline{margin-top:24px}
.pipe-step{display:flex;gap:16px;padding:14px 18px;border-left:3px solid transparent;transition:all .25s;margin-bottom:2px}
.pipe-step:hover{background:rgba(26,158,150,.05);border-left-color:var(--accent)}
.pipe-num{font-size:28px;font-weight:900;color:var(--accent);line-height:1;min-width:36px}
.pipe-body h4{font-size:14px;font-weight:700;color:var(--dark);margin-bottom:2px}
.pipe-body p{font-size:13px;color:var(--text-light);line-height:1.5}
.model-chart{background:#fff;border:1px solid var(--border);padding:28px}
.model-chart h4{font-size:14px;font-weight:700;color:var(--dark);margin-bottom:20px;text-transform:uppercase;letter-spacing:.5px}
.bar-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.bar-label{font-size:12px;color:var(--text-light);width:90px;text-align:right;font-weight:600}
.bar-track{flex:1;height:24px;background:var(--bg-gray)}
.bar-fill{height:100%;display:flex;align-items:center;padding-left:8px;font-size:11px;font-weight:700;color:#fff}
.bar-fill.t1{background:var(--accent)}.bar-fill.t2{background:var(--blue)}.bar-fill.t3{background:#ccc}
.fem-card{background:#fff;border:1px solid var(--border);padding:24px;margin-top:20px;text-align:center}
.fem-card h4{font-size:14px;font-weight:700;color:var(--dark);margin-bottom:8px}
.fem-card p{font-size:13px;color:var(--text-light);line-height:1.5;margin-bottom:14px}
.fem-tags{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.fem-tag{font-size:11px;padding:5px 12px;border:1px solid rgba(26,158,150,.3);color:var(--accent);font-weight:600}

/* ── SOLUTIONS GRID ── */
.sol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.sol-card{padding:40px 32px;border:1px solid var(--border);text-align:center;transition:all .25s;position:relative;background:#fff}
.sol-card::before{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--accent);transform:scaleX(0);transition:transform .3s}
.sol-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.sol-card:hover::before{transform:scaleX(1)}
.sol-icon{width:56px;height:56px;border-radius:50%;background:var(--accent-light);margin:0 auto 18px;display:flex;align-items:center;justify-content:center}
.sol-icon svg{width:24px;height:24px;color:var(--accent)}
.sol-card h3{font-size:16px;font-weight:700;margin-bottom:10px;color:var(--dark)}
.sol-card p{font-size:14px;color:var(--text-light);line-height:1.6}

/* ── PARTNERS ── */
.partners{padding:40px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.partners .wrap{display:flex;align-items:center;justify-content:center;gap:56px;flex-wrap:wrap}
.partners-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--text-lighter);white-space:nowrap}
.partner{font-size:16px;font-weight:700;color:#bbb;transition:color .3s}
.partner:hover{color:var(--text)}

/* ── CTA ── */
.cta{background:var(--accent);padding:72px 0;text-align:center;position:relative;overflow:hidden}
.cta::before{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 70%);top:-100px;right:-100px}
.cta h2{font-size:30px;font-weight:900;color:#fff;text-transform:uppercase;margin-bottom:12px;position:relative}
.cta p{font-size:16px;color:rgba(255,255,255,.85);max-width:500px;margin:0 auto 28px;line-height:1.6;position:relative}
.cta .hero-btn{background:#fff;color:var(--accent)}
.cta .hero-btn:hover{background:rgba(255,255,255,.9)}

/* ── CONTACT ── */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.c-card{background:var(--bg-gray);padding:24px;margin-bottom:12px;border-left:3px solid var(--accent)}
.c-card h4{font-size:14px;font-weight:700;margin-bottom:6px;color:var(--dark);display:flex;align-items:center;gap:8px}
.c-card h4 svg{width:16px;height:16px;color:var(--accent)}
.c-card p{font-size:14px;color:var(--text-light);line-height:1.55}
.c-card a{color:var(--accent);transition:color .2s}
.c-card a:hover{color:var(--accent-hover)}
.contact-form{background:var(--bg-gray);padding:36px;border-top:3px solid var(--accent)}
.contact-form h3{font-size:20px;font-weight:700;margin-bottom:4px;color:var(--dark)}
.contact-form>p{font-size:14px;color:var(--text-light);margin-bottom:24px}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.f-group{display:flex;flex-direction:column;gap:4px}
.f-group.full{grid-column:span 2}
.f-group label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-light)}
.f-group input,.f-group textarea,.f-group select{padding:10px 14px;border:1px solid var(--border);font-family:var(--font);font-size:14px;background:#fff;outline:none;transition:border-color .2s}
.f-group input:focus,.f-group textarea:focus,.f-group select:focus{border-color:var(--accent)}
.f-group textarea{resize:vertical;min-height:90px}
.submit-btn{margin-top:16px;background:var(--accent);color:#fff;border:none;padding:12px 32px;font-family:var(--font);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:background .2s;width:100%}
.submit-btn:hover{background:var(--accent-hover)}

/* ── ABOUT COLS ── */
.about-cols{display:grid;grid-template-columns:1fr 1fr;gap:40px;font-size:15px;line-height:1.7;color:var(--text-light)}

/* ── FOOTER ── */
footer{background:#f0f0f4;border-top:1px solid var(--border);padding:48px 0 0;color:var(--text-light)}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--border)}
.footer-brand p{font-size:13px;line-height:1.6;margin-top:16px;max-width:260px}
.footer-col h5{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--text-lighter);margin-bottom:16px}
.footer-col a{display:block;font-size:13px;margin-bottom:8px;transition:color .2s;color:var(--text-light)}
.footer-col a:hover{color:var(--accent)}
.footer-bottom{padding:20px 0;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--text-lighter);flex-wrap:wrap;gap:12px}
.footer-links{display:flex;gap:20px}
.footer-links a:hover{color:var(--accent)}
.social-links{display:flex;gap:14px;margin-top:12px}
.social-links a{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;transition:all .2s}
.social-links a:hover{border-color:var(--accent);background:var(--accent-light)}
.social-links a svg{width:14px;height:14px;color:var(--text-light)}

/* ── WAFER ANIMATION ── */
.wafer-ring{width:220px;height:220px;border-radius:50%;border:1px solid rgba(26,158,150,.2);display:flex;align-items:center;justify-content:center;position:relative;animation:spin 25s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.wafer-ring::before{content:'';position:absolute;width:160%;height:160%;border-radius:50%;border:1px dashed rgba(26,158,150,.08)}
.wafer-inner{animation:spin 25s linear infinite reverse;text-align:center}
.wafer-inner .val{font-size:52px;font-weight:900;color:var(--accent);line-height:1}
.wafer-inner .lbl{font-size:12px;color:rgba(255,255,255,.45);letter-spacing:2px;text-transform:uppercase;margin-top:4px}
.orbit-dot{position:absolute;width:10px;height:10px;border-radius:50%;box-shadow:0 0 10px currentColor}

/* ── MOBILE NAV DRAWER ── */
.mobile-nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1998;backdrop-filter:blur(2px);opacity:0;transition:opacity .3s}
.mobile-nav-overlay.active{display:block;opacity:1}
.mobile-nav-drawer{position:fixed;top:0;right:0;bottom:0;width:300px;max-width:85vw;background:#fff;z-index:1999;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:-4px 0 32px rgba(0,0,0,.12)}
.mobile-nav-drawer.open{transform:translateX(0)}
.mobile-nav-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}
.mobile-close-btn{background:none;border:none;color:var(--text-light);cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;transition:color .2s}
.mobile-close-btn:hover{color:var(--dark)}
.mobile-close-btn svg{width:22px;height:22px}
.mobile-nav-links{flex:1;overflow-y:auto;padding:12px 0}
.mobile-nav-link{display:block;color:var(--text-light);font-size:15px;font-weight:600;padding:16px 24px;border-left:3px solid transparent;transition:all .2s;letter-spacing:.3px}
.mobile-nav-link:hover,.mobile-nav-link.active{color:var(--dark);background:var(--bg-gray);border-left-color:var(--accent)}
.mobile-nav-footer{padding:20px 24px;border-top:1px solid var(--border)}

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .split{grid-template-columns:1fr}
  .split-visual{min-height:260px}
  .product-grid,.sol-grid{grid-template-columns:1fr 1fr}
  .tech-layout{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .about-cols{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .wrap{padding:0 20px}
  .utility-bar .wrap{justify-content:center}
  .main-nav{display:none}
  .mobile-btn{display:block}
  .hero{height:420px}
  .hero-content h1{font-size:28px}
  .product-grid,.sol-grid{grid-template-columns:1fr}
  .f-row{grid-template-columns:1fr}
  .f-group.full{grid-column:span 1}
  .footer-top{grid-template-columns:1fr}
  .split-text{padding:40px 24px}
  .page-banner h1{font-size:28px}
}
