/*
Theme Name: Astra Child -- TradeFlux
Template: astra
Version: 1.2
*/
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=JetBrains+Mono:wght@300;400&display=swap');

:root {
  --tf-navy:    #040d1a;
  --tf-navy2:   #071428;
  --tf-navy3:   #0a1f3d;
  --tf-blue:    #1a6fff;
  --tf-electric:#00b4ff;
  --tf-chrome:  #b8cfe6;
  --tf-silver:  #ddeaf7;
  --tf-white:   #f5f8ff;
  --tf-muted:   #7a9ab8;
  --tf-font:    'Space Grotesk', sans-serif;
  --tf-mono:    'JetBrains Mono', monospace;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--tf-navy)!important;color:var(--tf-white)!important;font-family:var(--tf-font)!important;overflow-x:hidden;line-height:1.6;}

/* CANVAS */
#tf-bg-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;opacity:.45;pointer-events:none;}
.entry-content,.ast-container,#content,.site-main,#masthead{position:relative;z-index:1;}

/* ASTRA HEADER */
#masthead,.site-header,.ast-header-wrap,.main-header-bar,.ast-primary-header-bar{
  background:rgba(4,13,26,.92)!important;
  backdrop-filter:blur(20px)!important;
  border-bottom:1px solid rgba(0,180,255,.12)!important;
}
.site-header.ast-sticky-header-active{background:rgba(4,13,26,.97)!important;}
.ast-site-identity .site-title,.ast-site-identity .site-title a{
  color:var(--tf-white)!important;font-family:var(--tf-font)!important;
  font-weight:700!important;letter-spacing:.05em!important;font-size:1.1rem!important;
}
.ast-primary-nav .menu-item>a,.main-header-menu .menu-item>a,#ast-hf-menu-1 .menu-item>a{
  color:var(--tf-chrome)!important;font-family:var(--tf-mono)!important;
  font-size:.75rem!important;font-weight:500!important;
  letter-spacing:.1em!important;text-transform:uppercase!important;transition:color .2s!important;
}
.ast-primary-nav .menu-item>a:hover,.main-header-menu .menu-item>a:hover{color:var(--tf-electric)!important;}

/* ASTRA FOOTER */
.site-footer,#colophon,footer.site-footer{
  background:var(--tf-navy2)!important;
  border-top:1px solid rgba(0,180,255,.08)!important;
  color:var(--tf-chrome)!important;
}
.site-footer a,#colophon a{color:var(--tf-chrome)!important;transition:color .2s!important;}
.site-footer a:hover,#colophon a:hover{color:var(--tf-electric)!important;}

/* TYPOGRAPHY */
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4{
  font-family:var(--tf-font)!important;color:var(--tf-white)!important;
  letter-spacing:-.02em;line-height:1.1;
}
.entry-content p{color:#c8dff5;line-height:1.8;}
.entry-title,.ast-breadcrumbs-wrapper,.page-header{display:none!important;}

/* DIVIDER */
.tf-divider{position:relative;height:2px;background:linear-gradient(90deg,transparent,var(--tf-electric),transparent);margin:0;}
.tf-divider::before,.tf-divider::after{content:'';position:absolute;top:50%;transform:translateY(-50%);width:6px;height:6px;background:var(--tf-electric);border-radius:50%;box-shadow:0 0 10px var(--tf-electric);}
.tf-divider::before{left:20%;}.tf-divider::after{right:20%;}

/* SECTION LABEL */
.tf-label{font-family:var(--tf-mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--tf-electric);margin-bottom:1rem;display:flex;align-items:center;gap:.75rem;}
.tf-label::before{content:'';width:30px;height:1px;background:var(--tf-electric);display:inline-block;flex-shrink:0;}

/* CONTAINERS */
.tf-section{position:relative;padding:7rem 2rem;z-index:1;}
.tf-dark{background:var(--tf-navy);}
.tf-navy2{background:var(--tf-navy2);}
.tf-wrap{max-width:1200px;margin:0 auto;}

/* H2 */
.tf-h2{font-size:clamp(2.2rem,4vw,3.5rem)!important;font-weight:700!important;letter-spacing:-.02em!important;line-height:1.1!important;margin-bottom:1.5rem!important;color:var(--tf-white)!important;}
.tf-h2 em{font-style:normal;color:transparent;background:linear-gradient(135deg,var(--tf-electric),var(--tf-blue));-webkit-background-clip:text;background-clip:text;}
.tf-lead{font-size:1.05rem;color:#c8dff5;line-height:1.8;max-width:600px;margin-bottom:1.5rem;}

/* BUTTONS */
.tf-btn{background:linear-gradient(135deg,var(--tf-blue),var(--tf-electric));color:#fff!important;padding:.9rem 2rem;border:none;border-radius:3px;font-family:var(--tf-font);font-size:.95rem;font-weight:600;cursor:pointer;text-decoration:none!important;display:inline-block;transition:all .2s;box-shadow:0 0 25px rgba(0,180,255,.3);}
.tf-btn:hover{transform:translateY(-2px);box-shadow:0 0 40px rgba(0,180,255,.5);color:#fff!important;}
.tf-btn-out{background:transparent;color:var(--tf-white)!important;padding:.9rem 2rem;border:1px solid rgba(0,180,255,.3);border-radius:3px;font-family:var(--tf-font);font-size:.95rem;font-weight:500;text-decoration:none!important;display:inline-block;transition:all .2s;}
.tf-btn-out:hover{border-color:var(--tf-electric);color:var(--tf-electric)!important;}

/* HERO */
.tf-hero{min-height:100vh;display:flex;align-items:center;padding:8rem 2rem 4rem;position:relative;overflow:hidden;background:var(--tf-navy);}
.tf-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,180,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,255,.04) 1px,transparent 1px);background-size:50px 50px;mask-image:radial-gradient(ellipse 80% 70% at 50% 50%,black 20%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 50%,black 20%,transparent 100%);}
.tf-hero-radial{position:absolute;width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,rgba(0,100,255,.12) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;}
.tf-hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;max-width:1200px;margin:0 auto;width:100%;position:relative;z-index:1;}
.tf-badge{display:inline-flex;align-items:center;gap:.6rem;background:rgba(0,180,255,.08);border:1px solid rgba(0,180,255,.25);border-radius:2px;padding:.4rem 1rem;font-family:var(--tf-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tf-electric);margin-bottom:1.75rem;}
.tf-badge-dot{width:6px;height:6px;background:var(--tf-electric);border-radius:50%;animation:tf-blink 1.5s infinite;}
@keyframes tf-blink{0%,100%{opacity:1}50%{opacity:.2}}
.tf-hero h1{font-size:clamp(3rem,5.5vw,5rem)!important;font-weight:700!important;letter-spacing:-.03em!important;line-height:1!important;margin-bottom:1.5rem!important;color:var(--tf-white)!important;}
.tf-hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--tf-electric) 0%,#4fa3ff 50%,var(--tf-chrome) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.tf-hero-sub{font-size:1.05rem;color:var(--tf-chrome);line-height:1.8;margin-bottom:2.5rem;max-width:520px;}
.tf-btns{display:flex;gap:1rem;flex-wrap:wrap;}
.tf-hero-visual{position:relative;height:480px;display:flex;align-items:center;justify-content:center;}
.tf-logo-wrap{position:relative;display:flex;align-items:center;justify-content:center;}
.tf-logo-img{width:280px;height:auto;position:relative;z-index:2;filter:drop-shadow(0 0 40px rgba(0,150,255,.5)) drop-shadow(0 0 80px rgba(0,80,200,.3));}
.tf-ring{position:absolute;border:1px solid rgba(0,180,255,.15);border-radius:50%;animation:tf-spin linear infinite;}
.tf-ring:nth-child(1){width:340px;height:340px;animation-duration:12s;}
.tf-ring:nth-child(2){width:420px;height:420px;animation-duration:18s;animation-direction:reverse;border-color:rgba(0,100,255,.1);}
.tf-ring:nth-child(3){width:500px;height:500px;animation-duration:25s;border-color:rgba(100,180,255,.07);}
.tf-ring-dot{position:absolute;top:-4px;left:50%;transform:translateX(-50%);width:7px;height:7px;background:var(--tf-electric);border-radius:50%;box-shadow:0 0 12px var(--tf-electric);}
@keyframes tf-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* TRUST STATS */
.tf-trust{padding:4rem 2rem;background:rgba(7,20,40,.9);border-top:1px solid rgba(0,180,255,.08);border-bottom:1px solid rgba(0,180,255,.08);position:relative;z-index:1;}
.tf-trust-lbl{text-align:center;font-family:var(--tf-mono);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tf-muted);margin-bottom:2.5rem;}
.tf-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(0,180,255,.05);border:1px solid rgba(0,180,255,.1);max-width:1200px;margin:0 auto;}
.tf-stat{background:var(--tf-navy);padding:2.5rem 2rem;text-align:center;transition:background .3s;}
.tf-stat:hover{background:var(--tf-navy2);}
.tf-stat-icon{font-size:1.5rem;margin-bottom:.75rem;}
.tf-stat-num{font-size:2.8rem;font-weight:700;color:var(--tf-electric);letter-spacing:-.03em;line-height:1;}
.tf-stat-desc{font-family:var(--tf-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#8ab8d8;margin-top:.5rem;}

/* PROBLEM */
.tf-problem{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.tf-problems{display:flex;flex-direction:column;gap:1rem;margin-top:2rem;}
.tf-prob-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:rgba(255,50,50,.04);border:1px solid rgba(255,50,50,.1);border-radius:3px;font-size:.9rem;color:var(--tf-chrome);}
.tf-prob-item::before{content:'x';color:#ff4444;font-size:1.2rem;font-weight:700;flex-shrink:0;}
.tf-quote{font-size:.95rem;color:var(--tf-chrome);line-height:1.8;padding:1.5rem;border-left:2px solid var(--tf-electric);background:rgba(0,180,255,.04);margin-top:1.5rem;}

/* SOLUTION */
.tf-sol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(0,180,255,.06);border:1px solid rgba(0,180,255,.1);margin-top:3rem;}
.tf-sol{background:var(--tf-navy2);padding:2rem;transition:background .3s;}
.tf-sol:hover{background:var(--tf-navy3);}
.tf-sol-num{font-family:var(--tf-mono);font-size:.65rem;letter-spacing:.15em;color:var(--tf-electric);margin-bottom:1rem;}
.tf-sol h4{font-size:1rem!important;font-weight:600!important;margin-bottom:.75rem!important;color:var(--tf-white)!important;}
.tf-sol p{font-size:.85rem;color:var(--tf-chrome);line-height:1.7;}

/* SERVICES */
.tf-svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5px;background:rgba(0,180,255,.06);border:1px solid rgba(0,180,255,.08);margin-top:3rem;}
.tf-card{background:var(--tf-navy);padding:3rem;position:relative;overflow:hidden;transition:background .3s;}
.tf-card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--tf-electric),transparent);opacity:0;transition:opacity .3s;}
.tf-card:hover{background:var(--tf-navy2);}.tf-card:hover::after{opacity:1;}
.tf-svc-tag{font-family:var(--tf-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tf-electric);border:1px solid rgba(0,180,255,.2);padding:.25rem .7rem;border-radius:2px;display:inline-block;margin-bottom:1.5rem;}
.tf-card h3{font-size:1.4rem!important;font-weight:700!important;margin-bottom:.75rem!important;letter-spacing:-.01em!important;color:var(--tf-white)!important;}
.tf-card>p{font-size:.9rem;color:#c0d8f0;line-height:1.7;margin-bottom:1.5rem;}
.tf-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;}
.tf-pill{font-family:var(--tf-mono);font-size:.68rem;letter-spacing:.05em;color:var(--tf-chrome);background:rgba(0,180,255,.06);border:1px solid rgba(0,180,255,.12);padding:.2rem .7rem;border-radius:20px;}
.tf-svc-list{list-style:none;padding:0;margin:0;}
.tf-svc-list li{font-size:.85rem;color:#c0d8f0;padding:.45rem 0;border-bottom:1px solid rgba(255,255,255,.04);display:flex;align-items:center;gap:.75rem;}
.tf-svc-list li::before{content:'>';color:var(--tf-electric);font-size:.8rem;flex-shrink:0;}

/* PROCESS */
.tf-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:4rem;position:relative;}
.tf-steps::before{content:'';position:absolute;top:36px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,var(--tf-electric),transparent);z-index:0;}
.tf-step{position:relative;padding:0 1.5rem;text-align:center;z-index:1;}
.tf-step-num{width:72px;height:72px;border:1px solid rgba(0,180,255,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;background:var(--tf-navy2);font-family:var(--tf-mono);font-size:.75rem;color:var(--tf-electric);letter-spacing:.1em;position:relative;transition:box-shadow .3s,border-color .3s;}
.tf-step-num::before{content:'';position:absolute;inset:-4px;border-radius:50%;border:1px solid rgba(0,180,255,.1);}
.tf-step:hover .tf-step-num{box-shadow:0 0 24px rgba(0,180,255,.35);border-color:rgba(0,180,255,.6);}
.tf-step h4{font-size:1rem!important;font-weight:600!important;margin-bottom:.75rem!important;color:var(--tf-white)!important;}
.tf-step p{font-size:.83rem;color:#c0d8f0;line-height:1.7;}

/* USE CASES */
.tf-cases{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(0,180,255,.05);border:1px solid rgba(0,180,255,.08);margin-top:3rem;}
.tf-case{background:var(--tf-navy);padding:2.5rem;transition:background .3s;}
.tf-case:hover{background:var(--tf-navy2);}
.tf-case-icon{font-size:2rem;margin-bottom:1.25rem;display:block;}
.tf-case h4{font-size:1.05rem!important;font-weight:600!important;margin-bottom:.75rem!important;color:var(--tf-white)!important;letter-spacing:-.01em!important;}
.tf-case p{font-size:.85rem;color:#c0d8f0;line-height:1.7;}
.tf-case-tag{font-family:var(--tf-mono);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tf-electric);margin-top:1rem;display:block;}

/* STACK */
.tf-stack{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.5rem;}
.tf-stack-pill{display:flex;align-items:center;gap:.5rem;background:rgba(0,180,255,.05);border:1px solid rgba(0,180,255,.12);border-radius:3px;padding:.7rem 1.25rem;font-family:var(--tf-mono);font-size:.78rem;letter-spacing:.05em;color:var(--tf-silver);transition:all .2s;}
.tf-stack-pill:hover{background:rgba(0,180,255,.1);border-color:rgba(0,180,255,.3);color:var(--tf-electric);transform:translateY(-2px);}
.tf-dot{width:5px;height:5px;background:var(--tf-electric);border-radius:50%;opacity:.6;}

/* WHY */
.tf-why{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;}
.tf-why-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(0,180,255,.06);border:1px solid rgba(0,180,255,.1);}
.tf-why-card{background:var(--tf-navy2);padding:2rem;transition:background .3s;}
.tf-why-card:hover{background:var(--tf-navy3);}
.tf-why-icon{font-size:1.4rem;margin-bottom:1rem;display:block;}
.tf-why-card h4{font-size:.95rem!important;font-weight:600!important;margin-bottom:.6rem!important;color:var(--tf-white)!important;}
.tf-why-card p{font-size:.82rem;color:#c0d8f0;line-height:1.7;}
.tf-why-note{font-family:var(--tf-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--tf-electric);margin-top:.75rem;display:block;}

/* TESTIMONIALS */
.tf-testis{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5px;background:rgba(0,180,255,.05);border:1px solid rgba(0,180,255,.08);margin-top:3rem;}
.tf-testi{background:var(--tf-navy);padding:2.5rem;transition:background .3s;}
.tf-testi:hover{background:var(--tf-navy2);}
.tf-stars{color:#f0b429;font-size:.85rem;letter-spacing:2px;margin-bottom:1.25rem;}
.tf-testi blockquote{font-size:.92rem;color:#ddeaf7;line-height:1.8;font-style:italic;margin-bottom:1.5rem;border:none;padding:0;background:none;}
.tf-testi-author{display:flex;align-items:center;gap:1rem;border-top:1px solid rgba(0,180,255,.08);padding-top:1.25rem;}
.tf-avatar{width:38px;height:38px;background:linear-gradient(135deg,var(--tf-blue),var(--tf-electric));border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:#fff;flex-shrink:0;}
.tf-author-name{font-size:.85rem;font-weight:600;color:var(--tf-white);}
.tf-author-role{font-family:var(--tf-mono);font-size:.68rem;letter-spacing:.06em;color:var(--tf-muted);}

/* CTA */
.tf-cta{padding:9rem 2rem;background:var(--tf-navy2);text-align:center;position:relative;overflow:hidden;}
.tf-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(0,100,255,.1) 0%,transparent 70%);}
.tf-cta>*{position:relative;z-index:1;}
.tf-cta h2{font-size:clamp(2.5rem,5vw,4rem)!important;font-weight:700!important;letter-spacing:-.02em!important;margin-bottom:1.5rem!important;color:var(--tf-white)!important;}
.tf-cta h2 em{font-style:normal;color:transparent;background:linear-gradient(135deg,var(--tf-electric),var(--tf-blue));-webkit-background-clip:text;background-clip:text;}
.tf-cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;}
.tf-cta-note{margin-top:1.5rem;font-family:var(--tf-mono);font-size:.72rem;letter-spacing:.1em;color:var(--tf-muted);}

/* CONTACT */
.tf-contact{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;}
.tf-contact-row{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.5rem;}
.tf-contact-ico{width:38px;height:38px;border:1px solid rgba(0,180,255,.2);display:flex;align-items:center;justify-content:center;border-radius:3px;color:var(--tf-electric);flex-shrink:0;font-size:1rem;}
.tf-contact-lbl{font-family:var(--tf-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tf-muted);margin-bottom:.2rem;}
.tf-contact-val{font-size:.9rem;color:var(--tf-chrome);}

/* FOOTER INNER */
.tf-footer{max-width:1200px;margin:0 auto;padding:4rem 2rem 2rem;}
.tf-footer-top{display:flex;flex-wrap:wrap;gap:3rem;margin-bottom:3rem;}
.tf-footer-brand{flex:0 0 240px;}
.tf-brand-name{font-size:1.2rem;font-weight:700;letter-spacing:.08em;color:var(--tf-white);margin-bottom:.75rem;}
.tf-brand-name span{color:var(--tf-electric);}
.tf-footer-brand p{font-size:.82rem;color:var(--tf-muted);line-height:1.7;margin:0;}
.tf-footer-cols{display:flex;flex:1;gap:2rem;flex-wrap:wrap;}
.tf-fcol{flex:1;min-width:110px;}
.tf-fcol h5{font-family:var(--tf-mono);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tf-chrome);margin-bottom:1.25rem;font-weight:400;}
.tf-fcol ul{list-style:none;padding:0;margin:0;}
.tf-fcol ul li{margin-bottom:.65rem;}
.tf-fcol ul li a{color:var(--tf-muted)!important;text-decoration:none!important;font-size:.85rem!important;transition:color .2s!important;}
.tf-fcol ul li a:hover{color:var(--tf-electric)!important;}
.tf-footer-bot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;padding-top:2rem;border-top:1px solid rgba(0,180,255,.06);font-family:var(--tf-mono);font-size:.72rem;color:var(--tf-muted);}
.tf-socials{display:flex;gap:1rem;}
.tf-socials a{color:var(--tf-muted)!important;text-decoration:none!important;transition:color .2s!important;}
.tf-socials a:hover{color:var(--tf-electric)!important;}

/* REVEAL ANIMATION */
.tf-reveal{opacity:0;transform:translateY(24px);transition:opacity .65s cubic-bezier(.22,.68,0,1.2),transform .65s cubic-bezier(.22,.68,0,1.2);}
.tf-revealed{opacity:1!important;transform:translateY(0)!important;}

/* RESPONSIVE */
@media(max-width:1024px){
  .tf-hero-inner{grid-template-columns:1fr;}
  .tf-hero-visual{display:none;}
  .tf-steps{grid-template-columns:repeat(2,1fr);gap:3rem;}
  .tf-steps::before{display:none;}
  .tf-problem{grid-template-columns:1fr;gap:3rem;}
  .tf-why{grid-template-columns:1fr;gap:3rem;}
  .tf-contact{grid-template-columns:1fr;gap:3rem;}
}
@media(max-width:768px){
  .tf-hero{padding:6rem 1.25rem 3rem;}
  .tf-stats{grid-template-columns:repeat(2,1fr);}
  .tf-sol-grid{grid-template-columns:1fr;}
  .tf-svc-grid{grid-template-columns:1fr;}
  .tf-cases{grid-template-columns:1fr;}
  .tf-testis{grid-template-columns:1fr;}
  .tf-why-grid{grid-template-columns:1fr;}
  .tf-section{padding:4rem 1.25rem;}
  .tf-card{padding:2rem;}
  .tf-cta{padding:5rem 1.25rem;}
  .tf-footer-top{flex-direction:column;gap:2rem;}
  .tf-footer-brand{flex:unset;width:100%;}
  .tf-footer-cols{flex-direction:row;flex-wrap:wrap;gap:1.5rem;}
  .tf-fcol{flex:1 1 120px;}
  .tf-footer-bot{flex-direction:column;text-align:center;}
}
@media(max-width:480px){
  .tf-hero h1{font-size:2.2rem!important;}
  .tf-btns{flex-direction:column;}
  .tf-btn,.tf-btn-out{width:100%;text-align:center;padding:1rem;}
  .tf-steps{grid-template-columns:1fr;}
  .tf-footer-cols{flex-direction:column;}
  .tf-fcol{flex:unset;width:100%;}
}


/* PAGE HERO (inner pages) */
.tf-page-hero{min-height:55vh;display:flex;align-items:center;padding:9rem 2rem 5rem;position:relative;overflow:hidden;background:var(--tf-navy);}
.tf-page-hero-inner{max-width:1200px;margin:0 auto;position:relative;z-index:1;}
.tf-breadcrumb{font-family:var(--tf-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tf-muted);margin-bottom:1.5rem;}
.tf-breadcrumb a{color:var(--tf-muted);text-decoration:none;}
.tf-breadcrumb a:hover{color:var(--tf-electric);}
.tf-page-hero h1{font-size:clamp(2.8rem,5vw,5rem)!important;font-weight:700!important;letter-spacing:-.03em!important;line-height:1!important;margin-bottom:1.5rem!important;color:var(--tf-white)!important;}
.tf-page-hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--tf-electric) 0%,#4fa3ff 50%,var(--tf-chrome) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.tf-page-sub{font-size:1.05rem;color:var(--tf-chrome);line-height:1.8;max-width:600px;}

/* ABOUT — story sections */
.tf-story{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-bottom:5rem;}
.tf-story:last-child{margin-bottom:0;}
.tf-story-num{font-family:var(--tf-mono);font-size:4rem;font-weight:700;color:rgba(0,180,255,.12);line-height:1;margin-bottom:1rem;}
.tf-story-visual{display:flex;align-items:center;justify-content:center;height:300px;border:1px solid rgba(0,180,255,.1);background:var(--tf-navy);position:relative;overflow:hidden;}
.tf-story-icon{font-size:5rem;filter:drop-shadow(0 0 30px rgba(0,180,255,.4));}

/* VALUES GRID */
.tf-values{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(0,180,255,.06);border:1px solid rgba(0,180,255,.1);margin-top:3rem;}
.tf-value{background:var(--tf-navy2);padding:2rem;transition:background .3s;}
.tf-value:hover{background:var(--tf-navy3);}
.tf-value-icon{font-size:1.6rem;margin-bottom:1rem;display:block;}
.tf-value h4{font-size:1rem!important;font-weight:600!important;margin-bottom:.6rem!important;color:var(--tf-white)!important;}
.tf-value p{font-size:.85rem;color:#c0d8f0;line-height:1.7;}

/* ABOUT STATS */
.tf-about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(0,180,255,.05);border:1px solid rgba(0,180,255,.1);margin-top:3rem;}
.tf-about-stat{background:var(--tf-navy2);padding:2.5rem 2rem;text-align:center;}
.tf-about-stat-num{font-size:3rem;font-weight:700;color:var(--tf-electric);letter-spacing:-.03em;line-height:1;}
.tf-about-stat-lbl{font-family:var(--tf-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#8ab8d8;margin-top:.5rem;}

/* PROCESS TIMELINE */
.tf-timeline{position:relative;padding-left:120px;}
.tf-timeline::before{content:'';position:absolute;left:52px;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent,var(--tf-electric),transparent);}
.tf-tl-item{position:relative;margin-bottom:5rem;}
.tf-tl-item:last-child{margin-bottom:0;}
.tf-tl-bubble{position:absolute;left:-120px;top:0;width:72px;text-align:center;}
.tf-tl-num{width:72px;height:72px;border:1px solid rgba(0,180,255,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--tf-navy);font-family:var(--tf-mono);font-size:.9rem;color:var(--tf-electric);margin-bottom:.5rem;transition:box-shadow .3s;}
.tf-tl-item:hover .tf-tl-num{box-shadow:0 0 24px rgba(0,180,255,.35);}
.tf-tl-icon{font-size:1.4rem;display:block;text-align:center;}
.tf-tl-phase{font-family:var(--tf-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tf-electric);margin-bottom:.75rem;}
.tf-tl-item h3{font-size:1.4rem!important;font-weight:700!important;margin-bottom:.75rem!important;color:var(--tf-white)!important;}
.tf-tl-item p{font-size:.9rem;color:#c0d8f0;line-height:1.8;margin-bottom:1.25rem;}
.tf-deliverables{list-style:none;padding:0;margin:0 0 1.25rem;display:flex;flex-direction:column;gap:.5rem;}
.tf-deliverables li{font-size:.85rem;color:var(--tf-chrome);display:flex;align-items:center;gap:.75rem;}
.tf-deliverables li::before{content:'✓';color:var(--tf-electric);font-size:.8rem;flex-shrink:0;}
.tf-duration{font-family:var(--tf-mono);font-size:.72rem;letter-spacing:.08em;color:var(--tf-electric);border:1px solid rgba(0,180,255,.2);display:inline-block;padding:.3rem .85rem;border-radius:2px;}

/* PRICING */
.tf-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(0,180,255,.06);border:1px solid rgba(0,180,255,.1);margin-top:3rem;}
.tf-price-card{background:var(--tf-navy2);padding:2.5rem;position:relative;transition:background .3s;}
.tf-price-card.tf-featured{background:var(--tf-navy3);border:1px solid rgba(0,180,255,.25);}
.tf-price-card:hover{background:var(--tf-navy3);}
.tf-price-name{font-family:var(--tf-mono);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--tf-electric);margin-bottom:1rem;}
.tf-price-amt{font-size:2.8rem;font-weight:700;color:var(--tf-white);letter-spacing:-.03em;line-height:1;margin-bottom:.25rem;}
.tf-price-period{font-family:var(--tf-mono);font-size:.72rem;color:var(--tf-muted);margin-bottom:2rem;}
.tf-price-feats{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-direction:column;gap:.75rem;}
.tf-price-feats li{font-size:.85rem;color:#c0d8f0;display:flex;align-items:center;gap:.75rem;}
.tf-price-feats li::before{content:'→';color:var(--tf-electric);flex-shrink:0;}

/* FAQ */
.tf-faq{display:flex;flex-direction:column;gap:1px;background:rgba(0,180,255,.06);border:1px solid rgba(0,180,255,.1);margin-top:3rem;}
.tf-faq-item{background:var(--tf-navy2);padding:1.75rem 2rem;cursor:pointer;transition:background .3s;}
.tf-faq-item:hover{background:var(--tf-navy3);}
.tf-faq-q{font-size:.95rem;font-weight:600;color:var(--tf-white);margin-bottom:.75rem;display:flex;justify-content:space-between;align-items:center;}
.tf-faq-q::after{content:'+';color:var(--tf-electric);font-size:1.2rem;flex-shrink:0;}
.tf-faq-a{font-size:.88rem;color:#c0d8f0;line-height:1.8;}

/* LEGAL PAGES */
.tf-legal{max-width:860px;margin:0 auto;padding:7rem 2rem;}
.tf-legal h1{font-size:clamp(2.2rem,4vw,3.5rem)!important;font-weight:700!important;margin-bottom:.5rem!important;color:var(--tf-white)!important;}
.tf-legal .tf-last-updated{font-family:var(--tf-mono);font-size:.72rem;color:var(--tf-muted);letter-spacing:.08em;margin-bottom:3rem;display:block;}
.tf-legal h2{font-size:1.3rem!important;font-weight:600!important;color:var(--tf-white)!important;margin:2.5rem 0 1rem!important;padding-bottom:.5rem;border-bottom:1px solid rgba(0,180,255,.1);}
.tf-legal p{font-size:.92rem;color:#c0d8f0;line-height:1.9;margin-bottom:1.25rem;}

/* CONTACT PAGE */
.tf-contact-form{background:var(--tf-navy2);border:1px solid rgba(0,180,255,.1);padding:2.5rem;border-radius:3px;}
.tf-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;}
.tf-form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem;}
.tf-form-label{font-family:var(--tf-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tf-muted);}
.tf-form-input,.tf-form-textarea,.tf-form-select{background:rgba(0,180,255,.04);border:1px solid rgba(0,180,255,.15);border-radius:3px;padding:.75rem 1rem;font-family:var(--tf-font);font-size:.9rem;color:var(--tf-white);width:100%;transition:border-color .2s;outline:none;}
.tf-form-input:focus,.tf-form-textarea:focus,.tf-form-select:focus{border-color:rgba(0,180,255,.4);}
.tf-form-textarea{min-height:140px;resize:vertical;}
.tf-form-select option{background:var(--tf-navy2);}

/* RESPONSIVE ADDITIONS */
@media(max-width:1024px){
  .tf-story{grid-template-columns:1fr;gap:2.5rem;}
  .tf-timeline{padding-left:80px;}
  .tf-timeline::before{left:36px;}
  .tf-tl-bubble{left:-80px;}
  .tf-tl-num{width:56px;height:56px;font-size:.8rem;}
  .tf-pricing{grid-template-columns:1fr;}
  .tf-values{grid-template-columns:repeat(2,1fr);}
  .tf-about-stats{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:768px){
  .tf-page-hero{padding:7rem 1.25rem 3rem;}
  .tf-timeline{padding-left:0;padding-top:80px;}
  .tf-timeline::before{display:none;}
  .tf-tl-bubble{position:static;display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;}
  .tf-tl-item{margin-bottom:3.5rem;}
  .tf-values{grid-template-columns:1fr;}
  .tf-about-stats{grid-template-columns:repeat(2,1fr);}
  .tf-form-row{grid-template-columns:1fr;}
}

/* ===== BUGFIX PATCH v6.0 ===== */

/* 1. MOBILE REVEAL FALLBACK
   JS scroll-reveal is fixed but CSS is a safety net:
   On mobile, .tf-reveal elements always visible */
@media (max-width: 767px) {
  .tf-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* 2. POINTER-EVENTS: overlays must never block clicks */
.tf-hero-grid,
.tf-hero-radial,
.tf-page-hero .tf-hero-grid,
.tf-page-hero .tf-hero-radial,
.tf-cta::before { pointer-events: none !important; }

/* 3. CTA inner content above ::before overlay */
.tf-cta > * { position: relative !important; z-index: 1 !important; }

/* 4. ASTRA MOBILE MENU */
#ast-mobile-popup-wrap,
.ast-mobile-popup-drawer,
.ast-mobile-popup { z-index: 99999 !important; }
.menu-toggle,
button.ast-menu-toggle,
.ast-menu-toggle { position: relative !important; z-index: 99999 !important; pointer-events: auto !important; }
#masthead, .site-header { z-index: 9999 !important; position: relative !important; }

/* 5. BLOG CARD GRID */
.wp-block-post-template {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 1.5rem !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 2rem 0 !important;
}
.wp-block-post {
  background: var(--tf-navy2, #071428) !important;
  border: 1px solid rgba(0,180,255,.1) !important;
  border-radius: 3px !important;
  overflow: hidden !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
  display: flex !important;
  flex-direction: column !important;
}
.wp-block-post:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 40px rgba(0,180,255,.12) !important;
}
.wp-block-post .wp-block-post-title {
  font-family: var(--tf-font, 'Space Grotesk', sans-serif) !important;
  font-size: 1.05rem !important; font-weight: 700 !important;
  color: var(--tf-white, #f5f8ff) !important;
  padding: 1.25rem 1.5rem .5rem !important; margin: 0 !important;
}
.wp-block-post .wp-block-post-title a { color: inherit !important; text-decoration: none !important; }
.wp-block-post .wp-block-post-title a:hover { color: var(--tf-electric, #00b4ff) !important; }
.wp-block-post .wp-block-post-date {
  font-size: .68rem !important; letter-spacing: .08em !important;
  text-transform: uppercase !important; color: var(--tf-muted, #7a9ab8) !important;
  padding: 0 1.5rem .5rem !important; margin: 0 !important;
}
.wp-block-post .wp-block-post-excerpt {
  font-size: .88rem !important; color: #c0d8f0 !important;
  line-height: 1.75 !important; padding: 0 1.5rem 1rem !important;
  flex: 1 !important; margin: 0 !important;
}
.blog .ast-container, .archive .ast-container { max-width: 1200px !important; padding: 2rem !important; }

@media (max-width: 1024px) {
  .wp-block-post-template { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 768px) {
  .wp-block-post-template { grid-template-columns: 1fr !important; }
}

/* ===== WPFORMS DARK THEME ===== */

/* Labels */
.wpforms-form .wpforms-field-label,
.wpforms-form .wpforms-field-label-inline,
.wpforms-form .wpforms-field-sublabel,
.wpforms-form legend,
.wpforms-form .wpforms-field-description {
  color: #c0d8f0 !important;
  font-family: var(--tf-font, 'Space Grotesk', sans-serif) !important;
  font-size: .88rem !important;
  letter-spacing: .03em !important;
}

/* Inputs, textareas, selects */
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form input[type="number"],
.wpforms-form input[type="url"],
.wpforms-form textarea,
.wpforms-form select {
  background: rgba(0,20,50,.55) !important;
  border: 1px solid rgba(0,180,255,.25) !important;
  border-radius: 4px !important;
  color: #f5f8ff !important;
  font-family: var(--tf-font, 'Space Grotesk', sans-serif) !important;
  font-size: .95rem !important;
  padding: .65rem 1rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: border-color .2s !important;
}
.wpforms-form input[type="text"]:focus,
.wpforms-form input[type="email"]:focus,
.wpforms-form textarea:focus,
.wpforms-form select:focus {
  border-color: #00b4ff !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(0,180,255,.15) !important;
}

/* Placeholder */
.wpforms-form input::placeholder,
.wpforms-form textarea::placeholder {
  color: rgba(160,200,230,.45) !important;
}

/* Select arrow color fix */
.wpforms-form select {
  appearance: auto !important;
  -webkit-appearance: auto !important;
}

/* Checkboxes / radio labels (GDPR etc.) */
.wpforms-form .wpforms-field-checkbox label,
.wpforms-form .wpforms-field-radio label,
.wpforms-form .wpforms-field-gdpr-checkbox label,
.wpforms-form .wpforms-field-gdpr label,
.wpforms-form .wpforms-field-checkbox .wpforms-field-label-inline {
  color: #c0d8f0 !important;
  font-size: .85rem !important;
}

/* Submit button */
.wpforms-form .wpforms-submit,
.wpforms-form button[type="submit"] {
  background: var(--tf-electric, #00b4ff) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px !important;
  padding: .75rem 2rem !important;
  font-family: var(--tf-font, 'Space Grotesk', sans-serif) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  cursor: pointer !important;
  transition: background .2s, transform .15s !important;
  width: 100% !important;
  margin-top: .5rem !important;
}
.wpforms-form .wpforms-submit:hover,
.wpforms-form button[type="submit"]:hover {
  background: #0099dd !important;
  transform: translateY(-1px) !important;
}

/* Error messages */
.wpforms-form .wpforms-error-container,
.wpforms-form label.wpforms-error {
  color: #ff6b6b !important;
  font-size: .8rem !important;
}

/* Remove WPForms default white box background */
.wpforms-container,
.wpforms-container-full {
  background: transparent !important;
  padding: 0 !important;
}

/* Field spacing */
.wpforms-form .wpforms-field {
  padding: .5rem 0 !important;
}

/* ===== END WPFORMS DARK THEME ===== */
