:root{
  --blue:#1d4ed8;--blue-dk:#1338b0;--blue-lt:#eff6ff;--blue-mid:#dbeafe;
  --ink:#0f172a;--body:#374151;--muted:#6b7280;--border:#e5e7eb;
  --white:#fff;--off:#f8faff;--green:#16a34a;
  --r:8px;--r-lg:14px;--r-xl:20px;
  --font:'Helvetica Neue',Helvetica,Arial,sans-serif;
  --ease:cubic-bezier(.4,0,.2,1);
  --sh:0 1px 3px rgba(0,0,0,.06),0 4px 16px rgba(29,78,216,.08);
  --sh-blue:0 8px 32px rgba(29,78,216,.28);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--font);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
button{cursor:pointer;border:none;background:none;font-family:inherit}ul{list-style:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 28px}
.wrap-sm{max-width:800px;margin:0 auto;padding:0 28px}
.section{padding:88px 0}.section-sm{padding:64px 0}.section-alt{background:var(--off)}
.section-blue-lt{background:var(--blue-lt)}
.overline{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.overline-white{color:rgba(255,255,255,.7)}
h1.display{font-size:clamp(2.6rem,5.5vw,4rem);font-weight:900;line-height:1.06;letter-spacing:-.03em;margin-bottom:20px}
h2.sh{font-size:clamp(1.9rem,3.8vw,2.8rem);font-weight:800;line-height:1.1;letter-spacing:-.025em;margin-bottom:14px}
h3.sh3{font-size:1.2rem;font-weight:800;letter-spacing:-.01em;margin-bottom:8px}
.lead{font-size:1.1rem;color:var(--body);line-height:1.75}
.lead-sm{font-size:.95rem;color:var(--muted);line-height:1.7}
.centered{text-align:center}.centered .lead,.centered .lead-sm{margin:0 auto}.max-600{max-width:600px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:15px 30px;border-radius:var(--r);font-size:14px;font-weight:700;letter-spacing:.01em;transition:.22s var(--ease);cursor:pointer;white-space:nowrap}
.btn-blue{background:var(--blue);color:#fff}.btn-blue:hover{background:var(--blue-dk);transform:translateY(-2px);box-shadow:var(--sh-blue)}
.btn-white{background:#fff;color:var(--blue)}.btn-white:hover{background:var(--blue-lt);transform:translateY(-2px)}
.btn-outline{background:transparent;color:var(--blue);border:2px solid var(--blue)}.btn-outline:hover{background:var(--blue);color:#fff}
.btn-outline-white{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5)}.btn-outline-white:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.btn-lg{padding:18px 38px;font-size:15px;border-radius:var(--r-lg)}.btn-xl{padding:20px 48px;font-size:16px;border-radius:var(--r-lg)}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
nav{position:fixed;top:0;left:0;right:0;z-index:900;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);height:72px;display:flex;align-items:center}
.nav-in{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1140px;margin:0 auto;padding:0 28px}
.nav-logo{display:flex;align-items:center;cursor:pointer}
.nav-logo img{height:44px;width:auto;max-width:200px}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-link{font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;transition:color .2s;letter-spacing:.01em;white-space:nowrap}
.nav-link:hover{color:var(--blue)}
.nav-cta{padding:11px 24px;font-size:13px;font-weight:700;margin-left:4px}
.ham{display:none;flex-direction:column;gap:5px;cursor:pointer}
.ham span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:.3s}
#mob-menu{display:none;position:fixed;top:72px;left:0;right:0;bottom:0;background:#fff;z-index:899;padding:24px 28px;flex-direction:column;gap:0;overflow-y:auto}
#mob-menu.open{display:flex}
.mob-link{font-size:20px;font-weight:700;padding:16px 0;border-bottom:1px solid var(--border);cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:inherit}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse-green{0%,100%{box-shadow:0 0 0 0 rgba(22,163,74,.4)}50%{box-shadow:0 0 0 8px rgba(22,163,74,0)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.a1{animation:fadeUp .6s .05s ease both}.a2{animation:fadeUp .6s .18s ease both}
.a3{animation:fadeUp .6s .3s ease both}.a4{animation:fadeUp .6s .42s ease both}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s var(--ease),transform .55s var(--ease)}
.reveal.vis{opacity:1;transform:translateY(0)}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border);border-radius:var(--r-xl);overflow:hidden}
.feat-card{background:#fff;padding:32px;display:flex;gap:18px;align-items:flex-start;transition:.22s var(--ease)}
.feat-card:hover{background:var(--blue-lt)}.feat-card:hover .feat-icon{background:var(--blue)}.feat-card:hover .feat-icon svg{color:#fff}
.feat-icon{width:52px;height:52px;flex-shrink:0;border-radius:12px;background:var(--blue-mid);display:flex;align-items:center;justify-content:center;transition:.22s var(--ease)}
.feat-icon svg{width:26px;height:26px;color:var(--blue);transition:.22s var(--ease)}
.feat-title{font-size:.95rem;font-weight:800;margin-bottom:6px;color:var(--ink)}
.feat-desc{font-size:13px;color:var(--muted);line-height:1.6}
.price-card{background:#fff;border-radius:var(--r-xl);box-shadow:var(--sh);border:2px solid var(--blue);overflow:hidden;max-width:520px;margin:0 auto}
.price-header{background:var(--blue);padding:32px 36px;text-align:center}
.price-n{font-size:3.8rem;font-weight:900;color:#fff;line-height:1;letter-spacing:-.04em}
.price-n sup{font-size:1.4rem;vertical-align:super;letter-spacing:0}
.price-body{padding:32px 36px}
.price-features{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}
.price-feat{display:flex;align-items:flex-start;gap:10px;font-size:14px}
.p-check{width:20px;height:20px;border-radius:50%;background:var(--blue-mid);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative}
.steps::after{content:'';position:absolute;top:36px;left:16%;right:16%;height:2px;background:linear-gradient(90deg,var(--blue-mid),var(--blue),var(--blue-mid));z-index:0}
.step{text-align:center;padding:0 24px;position:relative;z-index:1}
.step-bubble{width:72px;height:72px;border-radius:50%;background:#fff;border:2px solid var(--blue-mid);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;position:relative;box-shadow:0 4px 14px rgba(29,78,216,.12)}
.step-bubble svg{width:28px;height:28px;color:var(--blue)}
.step-n{position:absolute;top:-7px;right:-5px;width:22px;height:22px;border-radius:50%;background:var(--blue);color:#fff;font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:center}
.step-day{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:6px}
.faq-item{border-bottom:1px solid var(--border)}.faq-item:first-child{border-top:1px solid var(--border)}
.faq-q{display:flex;justify-content:space-between;align-items:center;padding:20px 0;cursor:pointer;font-size:15px;font-weight:700;gap:16px;transition:color .2s;user-select:none}
.faq-q:hover{color:var(--blue)}
.faq-icon{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:.2s}
.faq-icon svg{width:12px;height:12px;transition:transform .2s}
.faq-item.open .faq-icon{border-color:var(--blue);background:var(--blue)}
.faq-item.open .faq-icon svg{color:#fff;transform:rotate(45deg)}
.faq-a{font-size:14px;line-height:1.75;color:var(--muted);padding:0 0 20px;display:none}
.faq-item.open .faq-a{display:block}
.form-wrap{background:#fff;border-radius:var(--r-xl);padding:48px;box-shadow:0 8px 48px rgba(29,78,216,.12);border:1px solid var(--blue-mid)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-full{grid-column:1/-1}
.fl{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.fi{width:100%;padding:13px 16px;border:1.5px solid var(--border);border-radius:var(--r);font-size:14px;color:var(--ink);outline:none;transition:border-color .2s;background:#fff;font-family:var(--font)}
.fi:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(29,78,216,.1)}.fi::placeholder{color:#9ca3af}
.about-founder{display:grid;grid-template-columns:360px 1fr;gap:72px;align-items:start}
.about-photo{border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-blue)}
.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.about-quote{font-size:1.1rem;font-style:italic;color:var(--muted);border-left:3px solid var(--blue);padding-left:22px;margin:24px 0;line-height:1.65}
.matrix-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.matrix-chip{background:#fff;border:1px solid var(--border);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;transition:.2s var(--ease)}
.matrix-chip.linked{cursor:pointer}.matrix-chip.linked:hover{background:var(--blue-lt);border-color:var(--blue);color:var(--blue)}
.matrix-chip-name{font-size:13px;font-weight:700}
.matrix-chip-region{font-size:11px;color:var(--muted)}
.industry-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;transition:.22s var(--ease)}
.industry-card:hover{border-color:var(--blue);box-shadow:var(--sh);transform:translateY(-3px)}
.industry-icon{width:52px;height:52px;border-radius:12px;background:var(--blue-mid);display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:.22s var(--ease)}
.industry-card:hover .industry-icon{background:var(--blue)}
.industry-card:hover .industry-icon svg{color:#fff}
.industry-icon svg{width:26px;height:26px;color:var(--blue);transition:.22s var(--ease)}
.page-hero{background:linear-gradient(160deg,#0f172a 0%,#1e3a8a 45%,#1d4ed8 100%);padding:100px 0 64px;color:#fff}
.check-item{display:flex;align-items:flex-start;gap:12px;font-size:14px;margin-bottom:12px}
.check-dot{width:22px;height:22px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
@media(max-width:1024px){
  .g2{grid-template-columns:1fr;gap:40px}.feat-grid{grid-template-columns:1fr 1fr}
  .g4{grid-template-columns:1fr 1fr}.matrix-grid{grid-template-columns:repeat(3,1fr)}
  .about-founder{grid-template-columns:1fr;gap:40px}
}
@media(max-width:768px){
  .ham{display:flex}.nav-links{display:none}
  h1.display{font-size:2.2rem}.feat-grid{grid-template-columns:1fr}
  .g3{grid-template-columns:1fr}.steps{grid-template-columns:1fr;gap:32px}.steps::after{display:none}
  .form-grid{grid-template-columns:1fr}.matrix-grid{grid-template-columns:1fr 1fr}
  .price-card{max-width:100%}.form-wrap{padding:28px}
}

/* ── SAFE OVERFLOW + LOGO FIX ── */
body{overflow-x:hidden}
/* Nav logo — explicit size, never override */
.nav-logo img{height:44px!important;width:auto!important;max-width:180px!important;display:block!important}
/* All OTHER images scale down but not up */
.about-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;display:block!important}
/* About founder photo container */
.about-photo{width:100%;aspect-ratio:3/4;overflow:hidden;border-radius:14px;box-shadow:0 8px 32px rgba(29,78,216,.2)}
.about-founder{display:grid;grid-template-columns:340px 1fr;gap:64px;align-items:start}
@media(max-width:1024px){
  .about-founder{grid-template-columns:280px 1fr;gap:40px}
}
@media(max-width:768px){
  .nav-logo img{height:38px!important}
  .about-founder{grid-template-columns:1fr!important;gap:32px!important}
  .about-photo{max-width:320px;margin:0 auto}
  /* Redline case study mobile */
  [style*="grid-template-columns:repeat(4,1fr)"][style*="border-bottom"]{grid-template-columns:1fr 1fr!important}
  [style*="background:linear-gradient(135deg,#7f1d1d"] [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important;gap:20px!important}
  [style*="background:linear-gradient(135deg,#7f1d1d"] [style*="padding:36px 48px"],[style*="background:linear-gradient(135deg,#7f1d1d"] [style*="padding:32px 44px"]{padding:20px 16px!important}
  /* All big inline 4-col grids -> 2 col */
  div[style*="grid-template-columns:repeat(4,1fr)"],div[style*="grid-template-columns:repeat(5,1fr)"]{grid-template-columns:1fr 1fr!important}
  /* Footer */
  footer [style*="grid-template-columns:1.4fr"]{grid-template-columns:1fr!important}
  .section{padding:56px 0!important}
  .wrap,.wrap-sm{padding:0 18px!important}
  .feat-grid{grid-template-columns:1fr!important}
  .g2{grid-template-columns:1fr!important;gap:32px!important}
  .g3{grid-template-columns:1fr!important}
  .g4{grid-template-columns:1fr 1fr!important}
  .steps{grid-template-columns:1fr!important;gap:28px!important}
  .steps::after{display:none!important}
  .price-card{max-width:100%!important}
  .form-wrap{padding:24px 18px!important}
  .form-grid{grid-template-columns:1fr!important}
  table{min-width:520px}
  .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .ham{display:flex!important}
  .nav-links{display:none!important}
  h1.display{font-size:clamp(1.8rem,7vw,2.4rem)!important}
}
@media(max-width:480px){
  div[style*="grid-template-columns:repeat(4,1fr)"],div[style*="grid-template-columns:repeat(5,1fr)"],div[style*="grid-template-columns:repeat(3,1fr)"],div[style*="grid-template-columns:repeat(2,1fr)"]{grid-template-columns:1fr 1fr!important}
}
