/* ============================================================
   INDUSTRIES HUB PAGE (SEO-INDUSTRIES-HUB-01)
   /industries/ — full directory of all 26 industries
   Uses BY BANKS design tokens from global.css
   ============================================================ */

.industries-hub{background:var(--black);color:var(--cream)}

/* ============================================
   HERO
   ============================================ */
.ind-hub-hero{position:relative;padding:160px 0 80px;overflow:hidden;border-bottom:1px solid var(--border-dark)}
.ind-hub-hero-glow{position:absolute;top:-100px;left:50%;transform:translateX(-50%);width:1100px;height:600px;background:radial-gradient(ellipse at center,rgba(0,156,111,.18) 0%,rgba(0,156,111,.06) 35%,transparent 70%);pointer-events:none;z-index:0}
.ind-hub-hero .container{position:relative;z-index:1}
.ind-hub-hero-content{text-align:center;max-width:760px;margin:0 auto}
.ind-hub-hero-content h1{font-size:clamp(36px,5.5vw,56px);font-weight:700;line-height:1.1;letter-spacing:-.02em;margin-bottom:20px;color:var(--cream)}
.ind-hub-hero-content h1 .highlight{background:linear-gradient(135deg,var(--accent),var(--accent-bright));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ind-hub-hero-sub{font-size:clamp(15px,1.6vw,18px);color:var(--cream-dim);line-height:1.7;margin-bottom:36px}

.ind-hub-stats{display:inline-flex;gap:32px;align-items:center;padding:18px 32px;background:rgba(255,255,255,.03);border:1px solid var(--border-dark);border-radius:100px}
.ind-hub-stat{text-align:center}
.ind-hub-stat-num{font-size:28px;font-weight:700;color:var(--accent);line-height:1;letter-spacing:-.01em}
.ind-hub-stat-label{font-size:11px;color:var(--cream-muted);margin-top:4px;letter-spacing:.04em;text-transform:uppercase;font-weight:500}
.ind-hub-stat-divider{width:1px;height:32px;background:var(--border-dark)}

@media (max-width:768px){
    .ind-hub-hero{padding:140px 0 60px}
    .ind-hub-stats{flex-wrap:wrap;gap:18px;padding:14px 22px;border-radius:24px;justify-content:center}
    .ind-hub-stat-num{font-size:22px}
    .ind-hub-stat-divider{display:none}
}

/* ============================================
   WHY (light cream section)
   ============================================ */
.ind-hub-why{background:var(--cream);color:var(--black);padding:var(--section-padding) 0}
.ind-hub-why-header{text-align:center;max-width:760px;margin:0 auto 50px}
.ind-hub-why-header h2{font-size:clamp(28px,4vw,42px);font-weight:700;line-height:1.2;letter-spacing:-.02em;margin-bottom:16px;color:var(--black)}
.ind-hub-why-header p{font-size:17px;color:var(--gray);line-height:1.7}

.ind-hub-problems{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ind-hub-problem{background:var(--white);border:1px solid var(--border-light);border-radius:16px;padding:28px;text-align:center;transition:var(--transition-base)}
.ind-hub-problem:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,.08)}
.ind-hub-problem-icon{width:56px;height:56px;background:linear-gradient(135deg,rgba(239,68,68,.12) 0%,rgba(239,68,68,.04) 100%);border-radius:14px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:#dc2626}
.ind-hub-problem-icon svg{width:26px;height:26px}
.ind-hub-problem h4{font-size:18px;font-weight:700;margin-bottom:8px;color:var(--black)}
.ind-hub-problem p{font-size:14px;color:var(--gray);line-height:1.6}

@media (max-width:768px){
    .ind-hub-problems{grid-template-columns:1fr;gap:16px}
}

/* ============================================
   INDUSTRY GRID (dark)
   ============================================ */
.ind-hub-grid-section{padding:var(--section-padding) 0;background:var(--black);position:relative}
.ind-hub-grid-section::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,var(--accent) 50%,transparent 100%);opacity:.4}
.ind-hub-grid-header{text-align:center;max-width:680px;margin:0 auto 50px}
.ind-hub-grid-header h2{font-size:clamp(28px,4vw,42px);font-weight:700;line-height:1.2;letter-spacing:-.02em;margin-bottom:16px;color:var(--cream)}
.ind-hub-grid-header p{font-size:17px;color:var(--cream-dim);line-height:1.7}

.ind-hub-category{margin-bottom:48px}
.ind-hub-category:last-child{margin-bottom:0}
.ind-hub-category-header{display:flex;align-items:center;gap:14px;margin-bottom:24px;padding-bottom:14px;border-bottom:1px solid var(--border-dark)}
.ind-hub-category-icon{width:36px;height:36px;background:var(--accent-dim);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0}
.ind-hub-category-icon svg{width:18px;height:18px}
.ind-hub-category-header h3{font-size:20px;font-weight:700;color:var(--cream);margin:0;letter-spacing:-.01em}
.ind-hub-category-count{margin-left:auto;font-size:12px;color:var(--cream-muted);letter-spacing:.04em;text-transform:uppercase;font-weight:500}

.ind-hub-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ind-hub-card{display:flex;flex-direction:column;background:rgba(255,255,255,.03);border:1px solid var(--border-dark);border-radius:14px;padding:20px;text-decoration:none;transition:var(--transition-base);position:relative;overflow:hidden}
.ind-hub-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--accent) 50%,transparent 100%);opacity:0;transition:opacity var(--transition-base)}
.ind-hub-card:hover{transform:translateY(-3px);border-color:rgba(0,156,111,.4);background:rgba(255,255,255,.05);box-shadow:0 16px 40px rgba(0,0,0,.3)}
.ind-hub-card:hover::before{opacity:1}
.ind-hub-card:hover .ind-hub-card-icon{background:rgba(0,156,111,.2)}
.ind-hub-card:hover .ind-hub-card-cta svg{transform:translateX(4px)}

.ind-hub-card-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ind-hub-card-icon{width:36px;height:36px;background:var(--accent-dim);border-radius:9px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent);flex-shrink:0;transition:background var(--transition-base)}
.ind-hub-card-icon svg{width:18px;height:18px}
.ind-hub-card-name{font-size:15px;font-weight:600;color:var(--cream);line-height:1.3}

.ind-hub-card-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px;flex:1}
.ind-hub-card-pill{font-size:11px;color:var(--cream-dim);background:rgba(255,255,255,.04);border:1px solid var(--border-dark);border-radius:100px;padding:3px 10px;line-height:1.4;white-space:nowrap}

.ind-hub-card-cta{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--accent);margin-top:auto}
.ind-hub-card-cta svg{width:14px;height:14px;transition:transform var(--transition-base)}

@media (max-width:1024px){
    .ind-hub-cards{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
    .ind-hub-cards{grid-template-columns:1fr}
    .ind-hub-category-header{flex-wrap:wrap}
    .ind-hub-category-count{margin-left:0;width:100%;margin-top:4px}
}

/* ============================================
   CTA BAND
   ============================================ */
.ind-hub-cta-band{background:var(--black-light);padding:80px 0;text-align:center;position:relative;overflow:hidden;border-bottom:1px solid var(--border-dark)}
.ind-hub-cta-band::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--accent) 50%,transparent 100%);opacity:.5}
.ind-hub-cta-band::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:700px;height:240px;background:radial-gradient(ellipse at center,rgba(0,156,111,.08) 0%,transparent 70%);pointer-events:none;z-index:0}
.ind-hub-cta-band .container{position:relative;z-index:1}
.ind-hub-cta-band h3{font-size:clamp(24px,3vw,32px);font-weight:700;color:var(--cream);margin-bottom:12px;letter-spacing:-.01em}
.ind-hub-cta-band p{font-size:16px;color:var(--cream-dim);line-height:1.7;max-width:520px;margin:0 auto 28px}
.ind-hub-cta-band .btn{margin:0}

/* ============================================
   FAQ
   ============================================ */
.ind-hub-faq{padding:var(--section-padding) 0;background:var(--black)}
.ind-hub-faq-header{text-align:center;max-width:680px;margin:0 auto 40px}
.ind-hub-faq-header h2{font-size:clamp(28px,4vw,42px);font-weight:700;line-height:1.2;letter-spacing:-.02em;margin-bottom:0;color:var(--cream)}
.ind-hub-faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:10px}

.ind-hub-faq-item{background:rgba(255,255,255,.03);border:1px solid var(--border-dark);border-radius:12px;transition:border-color var(--transition-base)}
.ind-hub-faq-item:hover{border-color:rgba(241,237,228,.18)}
.ind-hub-faq-item--featured{border-color:rgba(0,156,111,.35);border-left:3px solid var(--accent);background:rgba(0,156,111,.04)}
.ind-hub-faq-item--featured:hover{border-color:rgba(0,156,111,.5)}

.ind-hub-faq-item summary{list-style:none;cursor:pointer;padding:18px 56px 18px 22px;color:var(--cream);font-size:15px;font-weight:600;line-height:1.4;position:relative;user-select:none}
.ind-hub-faq-item summary::-webkit-details-marker{display:none}
.ind-hub-faq-item summary::marker{display:none}
.ind-hub-faq-q{display:inline}

.ind-hub-faq-chevron{position:absolute;right:20px;top:50%;transform:translateY(-50%);color:var(--cream-muted);transition:transform var(--transition-base),color var(--transition-base);pointer-events:none;display:inline-flex;align-items:center;justify-content:center}
.ind-hub-faq-chevron svg{width:18px;height:18px;display:block}
.ind-hub-faq-item[open] .ind-hub-faq-chevron{transform:translateY(-50%) rotate(180deg);color:var(--accent)}

.ind-hub-faq-a{padding:0 22px 20px;font-size:14px;color:var(--cream-dim);line-height:1.7}

@media (max-width:640px){
    .ind-hub-faq-item summary{padding:16px 48px 16px 18px;font-size:14px}
    .ind-hub-faq-a{padding:0 18px 18px;font-size:13px}
    .ind-hub-faq-chevron{right:16px}
}
