
:root{--qw-border:#e2e8f0;--qw-accent:#0ea5e9;--qw-accent-600:#0284c7}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial}
.container{max-width:1120px;margin:0 auto;padding:clamp(16px,3vw,24px)}
header{position:sticky;top:0;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--qw-border)}
.btn{border:1px solid var(--qw-border);padding:.7rem 1rem;border-radius:12px;font-weight:700;background:#fff}
.btn-primary{background:linear-gradient(180deg,var(--qw-accent),var(--qw-accent-600));color:#fff;border-color:transparent;box-shadow:0 8px 20px rgba(14,165,233,.25)}
.card{background:#fff;border:1px solid var(--qw-border);border-radius:16px;padding:clamp(16px,2.2vw,22px);box-shadow:0 10px 25px rgba(15,23,42,.08),0 2px 10px rgba(2,8,23,.06)}
.qw-grid{display:grid;gap:14px}
@media(min-width:920px){.qw-grid.two{grid-template-columns:1fr 1fr}.qw-grid.three{grid-template-columns:1fr 1fr 1fr}}
.qw-stepper{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 .75rem}
.qw-stepper .dot{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--qw-border);border-radius:999px;background:#fff}
.qw-stepper .dot .num{height:28px;width:28px;border-radius:999px;display:grid;place-items:center;font-weight:800;background:#e2f2fb;color:#0369a1}
.qw-stepper .dot.active{border-color:transparent;background:linear-gradient(180deg,var(--qw-accent),var(--qw-accent-600));color:#fff}
.qw-stepper .dot.active .num{background:rgba(255,255,255,.22);color:#fff}
.field-error{color:#b91c1c;font-size:.85rem;margin-top:.25rem}
.error-summary{border:1px solid #fecaca;background:#fff1f2;color:#991b1b;border-radius:12px;padding:.6rem .8rem;margin-bottom:.5rem}
.badge{display:inline-block;padding:.25rem .5rem;border-radius:999px;background:#e2f2fb;color:#0369a1;font-weight:700;font-size:.8rem}
.sig-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}

.reveal{opacity:0;transform:translateY(10px);transition:opacity .35s ease,transform .35s ease}
.reveal.show{opacity:1;transform:none}

/* Mega-nav lite */
.dropdown{ position:relative }
.dropdown .menu{ position:absolute; top:110%; left:0; display:none; background:#fff; border:1px solid var(--qw-border); border-radius:12px; padding:.5rem; box-shadow:0 10px 25px rgba(15,23,42,.08) }
.dropdown:hover .menu{ display:block }
.dropdown .menu a{ display:block; padding:.4rem .6rem; border-radius:8px; text-decoration:none; color:inherit }
.dropdown .menu a:hover{ background:#f1f5f9 }

/* Testimonials carousel */
.carousel{ overflow:hidden; position:relative }
.carousel-track{ display:flex; transition:transform .5s ease }
.carousel .slide{ min-width:100%; display:grid; place-items:center; text-align:center; gap:.4rem; padding:10px }
.carousel .slide img{ width:72px; height:72px; border-radius:999px; object-fit:cover; }
.carousel-controls{ position:absolute; inset:auto 8px 8px auto; display:flex; gap:.4rem }

@media(min-width:920px){.qw-grid.four{grid-template-columns:repeat(4,1fr)}}

/* accessibility focus ring */
:focus-visible{ outline:3px solid #0ea5e9; outline-offset:2px; border-radius:8px }
.skip-link{ position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden }
.skip-link:focus{ position:fixed; left:12px; top:12px; width:auto; height:auto; padding:.5rem .75rem; background:#0ea5e9; color:#fff; border-radius:10px; z-index:9999 }

/* dark mode */
@media (prefers-color-scheme: dark){
  body{ background:#0b1220; color:#e5e7eb }
  .card{ background:#0f172a; border-color:#1f2a44; box-shadow:none }
  header{ background:rgba(15,23,42,.8); border-color:#1f2a44 }
  .btn{ background:#111827; color:#e5e7eb; border-color:#1f2a44 }
  .btn-primary{ background:linear-gradient(180deg,#0ea5e9,#0284c7); color:#fff }
  .qw-stepper .dot{ background:#0f172a; border-color:#1f2a44; color:#e5e7eb }
  .qw-stepper .dot.active{ color:#fff }
  footer .container div{ color:#94a3b8 }
}

/* print styles */
@media print{
  header, footer, nav, .qw-controls, .carousel-controls, #contact-strip{ display:none !important }
  .card{ box-shadow:none; border-color:#cbd5e1 }
  body{ color:#111827 }
}

.dropdown.open .menu{ display:block }

/* Mobile header simplification */
@media (max-width: 720px){
  header .contact .btn-email,
  header .contact .btn-schedule { display:none }
}
/* Insights 'View all' link */
.insights-viewall{ display:inline-block; margin-top:.5rem }

/* Sticky mobile footer: Apply + Call */
.sticky-cta{
  position:fixed; left:0; right:0; bottom:0;
  display:none; gap:.5rem; justify-content:center; align-items:center;
  padding:.5rem; background:rgba(15,23,42,.9); backdrop-filter:saturate(140%) blur(6px);
  z-index:9999;
}
.sticky-cta .btn{ color:#e5e7eb; background:#111827; }
.sticky-cta .btn.btn-primary{ background:#0ea5e9; color:#fff; }
@media (max-width: 720px){
  .sticky-cta{ display:flex }
  footer{ padding-bottom:3.2rem } /* keep footer content above sticky bar */
}


/* Accessibility polish */
a{ color:#0C4A6E; } /* darker accessible link color on light bg */
a:hover{ text-decoration:underline }
:focus-visible{
  outline: 3px solid #0EA5E9;
  outline-offset: 2px;
}
.skip-link{
  position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;
}
.skip-link:focus{
  position:fixed; left:12px; top:12px; width:auto; height:auto; padding:.5rem .75rem;
  background:#0EA5E9; color:#fff; border-radius:.5rem; z-index:9999;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce){
  *{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important; }
}

/* Inline form errors */
.form-error{ color:#B91C1C; font-size:.9rem; margin-top:.25rem }
input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"]{
  border-color:#B91C1C !important;
  box-shadow: 0 0 0 3px rgba(185,28,28,.12);
}

/* Comparison tables */
.table-wrap{ overflow:auto; -webkit-overflow-scrolling:touch; border-radius:12px; border:1px solid var(--qw-border,#E5E7EB) }
.table{ width:100%; border-collapse:separate; border-spacing:0 }
.table caption{ text-align:left; font-weight:600; padding:.5rem }
.table th, .table td{ padding:.6rem .7rem; border-bottom:1px solid var(--qw-border,#E5E7EB); vertical-align:top }
.table thead th{ font-weight:700; background:#F8FAFC; }
.table tbody tr:last-child td{ border-bottom:0 }
.table.zebra tbody tr:nth-child(even){ background:#F9FAFB }
.table.sticky thead th{ position:sticky; top:0; z-index:1 }
@media (max-width: 720px){
  .table th, .table td{ padding:.5rem }
}

/* Scenario recommendation badges for comparison table */
.table thead th{ position:relative }
.rec-badge{
  display:inline-block;
  margin-top:.25rem;
  padding:.15rem .4rem;
  font-size:.72rem;
  font-weight:600;
  background:#E0F2FE; /* light blue */
  color:#0C4A6E;      /* deep blue text */
  border:1px solid #BAE6FD;
  border-radius:9999px;
  line-height:1.2;
  white-space:nowrap;
}
@media (prefers-color-scheme: dark){
  .rec-badge{
    background:rgba(14,165,233,.18);
    color:#93C5FD;
    border-color:rgba(59,130,246,.35);
  }
}

/* Small recommendation chips */
.chip{
  display:inline-block;
  padding:.15rem .5rem;
  font-size:.72rem;
  font-weight:600;
  border-radius:9999px;
  border:1px solid #BBF7D0;
  background:#DCFCE7;
  color:#166534;
  line-height:1.2;
}
@media (prefers-color-scheme: dark){
  .chip{
    background:rgba(34,197,94,.15);
    border-color:rgba(34,197,94,.35);
    color:#86EFAC;
  }
}

/* Inline tooltip hints */
.hint{
  position:relative;
  display:inline-grid;
  place-items:center;
  margin-left:.35rem;
  width:1.1rem;height:1.1rem;
  border-radius:9999px;
  background:#0EA5E9; color:#fff;
  font-size:.72rem; font-weight:700; line-height:1;
  cursor:help;
}
.hint::after{
  content: attr(data-tip);
  position:absolute; left:50%; bottom:130%;
  transform:translateX(-50%);
  max-width: min(80vw, 360px);
  padding:.45rem .55rem;
  background:#0F172A; color:#E5E7EB;
  border:1px solid #1F2A44; border-radius:.5rem;
  font-size:.82rem; line-height:1.3;
  box-shadow:0 6px 24px rgba(2,8,23,.24);
  opacity:0; pointer-events:none; transition:opacity .15s ease;
  white-space:normal; text-align:left;
  z-index:9999;
}
.hint::before{
  content:''; position:absolute; left:50%; bottom:120%; transform:translateX(-50%);
  border:6px solid transparent; border-top-color:#0F172A;
  opacity:0; transition:opacity .15s ease;
}
.hint:hover::after, .hint:focus-visible::after,
.hint:hover::before, .hint:focus-visible::before{ opacity:1 }
@media (prefers-color-scheme: light){
  .hint::after{ background:#111827; color:#F9FAFB; border-color:#E5E7EB }
  .hint::before{ border-top-color:#111827 }
}
.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}


/* === QuickWave: improved dropdown visibility (accessibility) === */
header .dropdown .menu{
  background:#ffffff !important;
  color:#0f172a !important;      /* Slate-900 for strong contrast */
  border:1px solid rgba(2,6,23,.12) !important;
  box-shadow:0 12px 30px rgba(15,23,42,.15), 0 3px 12px rgba(2,6,23,.10) !important;
  z-index: 9999 !important;
  filter: none !important;
}
header .dropdown .menu a{
  color:#0f172a !important;
  font-weight:600;
}
header .dropdown .menu a:hover{
  background:#eef2ff !important; /* subtle hover */
}
/* keep menu from being cut off inside header */
header{ overflow:visible; }


/* === QuickWave: improved content readability === */
main, article, section, .content, .insights, body{
  color:#0f172a !important; /* dark slate text for readability */
}
table{
  border-collapse: collapse;
  width:100%;
  margin: 1.5rem 0;
  font-size: 0.95rem;
  color:#0f172a !important;
  background:#ffffff !important;
}
table th, table td{
  border:1px solid #e2e8f0;
  padding:0.6rem 0.8rem;
  text-align:left;
  vertical-align:top;
  color:#0f172a !important;
  background:#ffffff !important;
}
table th{
  background:#f1f5f9 !important;
  font-weight:700;
}
a{
  color:#0ea5e9;
  text-decoration:none;
}
a:hover{
  text-decoration:underline;
}


/* QuickWave: dropdown chevron alignment */
header .dropdown button .chevron{
  margin-left:4px;
  opacity:0.75;
}
header .dropdown.open button .chevron{
  transform:rotate(180deg);
}


/* === QuickWave: unify all top nav dropdowns === */
header .dropdown .menu{ display:none !important; }
header .dropdown.open .menu{ display:block !important; }
header .dropdown:hover .menu{ display:none !important; } /* prevent hover-only open */
header .dropdown > .btn{
  display:flex; align-items:center; gap:.35rem;
}
header .dropdown > .btn::after{
  content:"\25BE"; /* small down chevron ▾ */
  font-size:.85em; opacity:.75;
}
/* focus ring for keyboard users */
header .dropdown > .btn:focus{ outline:2px solid rgba(14,165,233,.55); outline-offset:2px; }

/* Ensure secondary nav buttons (like Insights) look consistent */
nav .btn{ background:transparent; border:1px solid rgba(148,163,184,.25); }
nav .btn:hover{ background:rgba(148,163,184,.10); }


/* === QuickWave: Insights readability fix === */
.insights, .content, main, article, section {
  color: #f8fafc !important;       /* near-white for dark background */
  line-height: 1.6;
}
.insights h1, .insights h2, .insights h3,
main h1, main h2, main h3 {
  color: #ffffff !important;       /* bright white headings */
  font-weight: 700;
}
.insights p, main p, .insights li, main li {
  color: #e2e8f0 !important;       /* soft light gray for body copy */
}
.insights .card, main .card {
  background: #0f172a !important;
  color: #f1f5f9 !important;
}


/* === QuickWave: Global table readability fix === */
table, table td, table th {
  color: #e2e8f0 !important;        /* light gray for readability */
  border-color: #334155 !important; /* subtle dark slate borders */
}
table thead th {
  color: #f8fafc !important;        /* brighter headings */
  background: #1e293b !important;   /* dark slate header background */
}


/* === QuickWave: global table readability on dark backgrounds === */
table, table td, table th {
  color: #e2e8f0 !important;            /* light gray body text */
  border-color: #334155 !important;     /* subtle dark border */
}
table thead th {
  color: #f8fafc !important;            /* brighter header text */
  background: #1e293b !important;       /* slate-800 header bg */
}



.industry-grid{
  display:grid; gap:1rem;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.industry-card{
  position:relative; border-radius:16px;
  background:#0b1228;
  border:1px solid rgba(217,222,230,.28);
  padding:20px 18px;
  text-align:center;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.industry-card:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(217,222,230,.14);
  border-color: rgba(217,222,230,.5);
}
.industry-card .icon{
  width:56px; height:56px; margin:4px auto 10px;
  color: var(--lux);
  display:block;
}
.industry-card h3{
  margin:.25rem 0 .35rem; font-size:1.05rem; color:#fff;
}
.industry-card p{
  margin:0; font-size:.9rem; color:#cbd5e1;
}
.industry-card a{ text-decoration:none; color:inherit; display:block; }


/* === QuickWave: Luxury industry cards (Platinum Silver) === */
:root{ --lux: #D9DEE6; }
.industry-grid{
  display:grid; gap:1rem;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.industry-card{
  position:relative; border-radius:16px;
  background:#0b1228;
  border:1px solid rgba(229,231,235,.25);
  padding:20px 18px;
  text-align:center;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.industry-card:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(229,231,235,.12);
  border-color: rgba(229,231,235,.45);
}
.industry-card .icon{
  width:56px; height:56px; margin:4px auto 10px;
  color: var(--lux);
  display:block;
}
.industry-card h3{
  margin:.25rem 0 .35rem; font-size:1.05rem; color:#fff;
}
.industry-card p{
  margin:0; font-size:.9rem; color:#cbd5e1;
}
.industry-card a{ text-decoration:none; color:inherit; display:block; }


/* === QuickWave: Global Platinum Accent === */
:root{ --lux: #D9DEE6; } /* platinum silver */
hr, .divider{ border-color: var(--lux) !important; }
button:focus, .btn:focus{ outline:2px solid var(--lux) !important; outline-offset:2px; }
.btn:hover{ border-color: var(--lux) !important; }
a:hover{ color: var(--lux) !important; }


/* === QuickWave: Platinum accent propagation === */
hr, .divider{ border-color: rgba(217,222,230,.35) !important; }
.section-underline { border-bottom:1px solid rgba(217,222,230,.35); }
a:focus, button:focus, .btn:focus { outline: 2px solid rgba(217,222,230,.55); outline-offset: 2px; }
.badge-accent { color: var(--lux); border:1px solid rgba(217,222,230,.35); border-radius:999px; padding:2px 8px; }
.border-accent { border-color: rgba(217,222,230,.35) !important; }
.text-accent { color: var(--lux) !important; }


/* === QuickWave: Breadcrumbs + active nav highlight === */
.breadcrumb{font-size:.9rem;color:#cbd5e1;margin:.25rem 0 .5rem}
.breadcrumb a{color:#e2e8f0;text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
.breadcrumb .sep{opacity:.6;margin:0 .35rem}
nav a.active, nav .btn.active{border-color: var(--lux) !important; color: var(--lux) !important;}


/* === QuickWave: Animated logo hero (luxury shimmer) === */
.logo-hero{ display:flex; align-items:center; justify-content:center; padding:18px 0 6px; }
.logo-hero img{ width:160px; height:auto; filter: drop-shadow(0 8px 24px rgba(217,222,230,.18)); animation: qwShimmer 9s infinite ease-in-out; }
@keyframes qwShimmer{
  0%{ filter: drop-shadow(0 8px 24px rgba(217,222,230,.18)) brightness(1); }
  50%{ filter: drop-shadow(0 10px 28px rgba(217,222,230,.28)) brightness(1.18); }
  100%{ filter: drop-shadow(0 8px 24px rgba(217,222,230,.18)) brightness(1); }
}
/* Hide old wave hero graphic on homepage */
.home-hero img[src*="/assets/img/hero-"]{ display:none !important; }


/* === QuickWave: hero logo positioned on right (replacing wave) === */
.home-hero{ position:relative; min-height:280px; }
.logo-hero{ position:absolute; right:28px; top:50%; transform:translateY(-50%); display:block; }
.logo-hero img{ width:260px; height:auto; }
@media (max-width: 860px){
  .logo-hero{ position:static; transform:none; display:flex; justify-content:center; margin-top:10px; }
  .logo-hero img{ width:180px; }
}


/* === QuickWave: stable dropdowns (no flicker) === */
.nav-item{ position:relative; }
.dropdown{
  position:absolute; top:100%; left:0;
  background:#0b1228; border:1px solid rgba(217,222,230,.28);
  border-radius:12px; padding:10px; min-width:220px;
  box-shadow:0 14px 30px rgba(0,0,0,.35);
  opacity:0; transform:translateY(6px); pointer-events:none;
  transition:opacity .12s ease, transform .12s ease;
  z-index:60;
}
.nav-item:hover .dropdown,
.nav-item:focus-within .dropdown,
.nav-item.open .dropdown{
  opacity:1; transform:translateY(0); pointer-events:auto;
}
/* increase hover area so moving into menu doesn't close it instantly */
.nav-item > a{ position:relative; z-index:61; }


/* === QuickWave: Insights Library (high-contrast, luxe) === */
.page-insights{ background:#0a1024; }
.page-insights .container{ color:#e5e7eb; }
.insights-grid{
  display:grid; gap:16px;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  margin-top:14px;
}
.insight-card{
  background:#0f1733;
  border:1px solid rgba(217,222,230,.28);
  border-radius:14px;
  padding:16px 14px;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.insight-card:hover{
  transform:translateY(-2px);
  border-color:rgba(217,222,230,.5);
  box-shadow:0 16px 34px rgba(0,0,0,.35);
}
.insight-card a{
  color:#f8fafc;
  text-decoration:none;
  display:block;
  line-height:1.35;
}
.insight-card a .subtitle{
  display:block;
  color:#cbd5e1;
  font-size:.92rem;
  margin-top:4px;
}
.insights-hero h1, .insights-hero h2{ color:#fff; }
.insights-hero p{ color:#cbd5e1; }


/* === QuickWave: ensure industry icons are clearly visible on dark === */
.industry-card .icon{
  width:64px; height:64px; display:block; margin:4px auto 10px;
  /* Force light platinum tone even if the SVG default is dark */
  filter: invert(92%) sepia(6%) saturate(160%) hue-rotate(180deg) brightness(110%) contrast(92%);
  opacity:.95;
}
@media (max-width: 860px){
  .industry-card .icon{ width:56px; height:56px; }
}
/* Remove accidental underlines inside card anchors */
.industry-card a, .industry-card a *{ text-decoration: none !important; }


/* === QuickWave: cookie banner polish (non-blocking, dismissible) === */
.cookie-banner, #cookie-banner, .cookiebar, .cookie-bar{
  position:fixed; left:16px; right:16px; bottom:14px;
  background:#0b1228; color:#e2e8f0;
  border:1px solid rgba(217,222,230,.25); border-radius:12px;
  padding:10px 12px; z-index:1000;
  box-shadow:0 14px 30px rgba(0,0,0,.35);
}
.cookie-banner.min{ opacity:.85; transform:translateY(6px); }
.cookie-banner .actions, #cookie-banner .actions{ display:flex; gap:8px; align-items:center; float:right; }
.cookie-banner .btn, #cookie-banner .btn{ padding:6px 10px; border-radius:10px; }
body.with-cookie{ margin-bottom:76px; }  /* keep content visible above banner */
@media (max-width: 640px){ body.with-cookie{ margin-bottom:96px; } }


/* === QuickWave: Insights page hardening (ensures visibility + match to home) === */
.page-insights{ background:#0a1024; }
.page-insights .container{ color:#e5e7eb; }
.insights-hero h1{ color:#fff; margin-bottom:6px; }
.insights-hero p{ color:#cbd5e1; }
.insights-grid{ display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); }
.insight-card{ background:#0f1733; border:1px solid rgba(217,222,230,.28); border-radius:14px; padding:16px 14px; }
.insight-card:hover{ border-color:rgba(217,222,230,.5); box-shadow:0 16px 34px rgba(0,0,0,.35); transform:translateY(-1px); transition:all .15s ease; }
.insight-card a{ display:block; text-decoration:none; color:#f8fafc; }
.insight-card .title{ display:block; font-weight:700; }
.insight-card .subtitle{ display:block; margin-top:4px; color:#cbd5e1; font-size:.92rem; }


/* === QuickWave: top CTA bar (Insights / Apply / How we operate / Who we fund) === */
.quick-cta-bar{
  display:flex; gap:10px; flex-wrap:wrap;
  align-items:center;
  padding:8px 0 6px;
}
.quick-cta-bar .btn{
  display:inline-block; padding:8px 14px; border-radius:999px;
  border:1px solid rgba(217,222,230,.32);
  color:#e6edf5; text-decoration:none;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.00));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
  transition: all .15s ease;
}
.quick-cta-bar .btn:hover{
  border-color: rgba(217,222,230,.55);
  transform: translateY(-1px);
}
.quick-cta-bar .btn-primary{
  background: linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.12));
  border-color: rgba(56,189,248,.55);
}


/* === QuickWave: integrated brand chip (top-left) === */
header{ position:relative; }
.brand-chip{
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 10px; border-radius:14px;
  border:1px solid rgba(217,222,230,.18);
  background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,0));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
  margin-right:10px;
}
.brand-chip img{
  height:22px; width:22px; border-radius:50%;
  object-fit:cover; image-rendering:auto;
  filter: brightness(1.08) contrast(1.05);
}
.brand-chip .name{ color:#e6edf5; font-weight:600; letter-spacing:.2px; }
@media (max-width: 760px){ .brand-chip .name{ display:none; } }


.logo-hero img{ width:300px; }
@media (max-width: 860px){ .logo-hero img{ width:190px; } }


.brand-chip .brand-link{
  display:inline-flex; align-items:center; gap:8px; text-decoration:none; color:inherit;
}
.brand-chip .brand-link:hover{ opacity:.9; }


/* === QuickWave: brand lockup (monogram + name) === */
.brand-lockup{
  display:inline-flex; align-items:center; gap:10px;
  text-decoration:none; color:#D9DEE6;
  padding:8px 12px; border-radius:16px;
}
.brand-lockup__mark{ width:22px; height:22px; border-radius:50%; display:block; }
.brand-lockup__name{ font-weight:700; letter-spacing:.2px; }
.brand-lockup:hover{ opacity:.92; }
@media (max-width: 720px){
  .brand-lockup__name{ display:none; }
  .brand-lockup{ padding:8px; }
}


/* === QuickWave: Testimonial quote card (luxe, aligned) === */
.quote-card{
  background:#0f1733;
  border:1px solid rgba(217,222,230,.32);
  border-color:#D9DEE633;
  border-radius:16px;
  padding:18px 18px;
  box-shadow:0 16px 34px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.05);
  display:grid; grid-template-columns:48px 1fr; gap:14px; align-items:center;
}
.quote-card .avatar{
  width:48px; height:48px; border-radius:50%; background:#1c274a; 
  color:#D9DEE6; font-weight:700; display:flex; align-items:center; justify-content:center;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.quote-card .quote{
  color:#e9edf4; line-height:1.45; margin:0;
}
.quote-card .author{
  color:#cbd5e1; font-size:.92rem; margin-top:6px; display:block;
}
/* section title */
.section-testimonials h2, .section-testimonials h3{ color:#fff; }
/* ensure carousel arrows (if present) sit centered vertically */
.section-testimonials .controls{ align-self:center; }


/* Insights: improve readability inside comparison tables */
.page-insights .comparison-table th,
.page-insights .comparison-table td{
  color:#111827;
  font-weight:500;
  border-color:#D9DEE6;
}
.page-insights .comparison-table th{ font-weight:700; }


/* === QuickWave: Luxury Brand Lockup (monogram centerpiece) === */
.brand-lockup{
  display:inline-flex; align-items:center; gap:14px;
  text-decoration:none; color:#D9DEE6;
}
.brand-lockup__mark{
  height:64px; width:auto; display:block;
  filter: brightness(1.08) contrast(1.05);
  transition: transform .25s ease, filter .25s ease;
}
.brand-lockup__name{
  font-size:1.55rem; font-weight:600; letter-spacing:.3px; color:#D9DEE6;
  transition: color .25s ease;
}
.brand-lockup:hover .brand-lockup__mark{
  transform: scale(1.05);
  filter: brightness(1.2) contrast(1.1);
}
.brand-lockup:hover .brand-lockup__name{
  color:#ffffff;
}
@media(max-width:760px){
  .brand-lockup__mark{ height:48px; }
  .brand-lockup__name{ font-size:1.25rem; }
}


/* === QuickWave: centerpiece brand lockup (left-aligned) === */
.brand-lockup{
  display:inline-flex; align-items:center; gap:12px;
  text-decoration:none; color:#D9DEE6;
  padding:6px 2px;
}
.brand-lockup__mark{ width:64px; height:64px; border-radius:12px; display:block;
  filter: drop-shadow(0 8px 22px rgba(217,222,230,.18));
  transition: transform .15s ease, filter .15s ease, opacity .15s ease;
}
.brand-lockup__name{ font-weight:600; letter-spacing:.2px; font-size:1.45rem; line-height:1; }
.brand-lockup:hover{ opacity:.98; }
.brand-lockup:hover .brand-lockup__mark{
  filter: drop-shadow(0 10px 28px rgba(217,222,230,.28)) brightness(1.06);
  transform: translateY(-1px);
}
.brand-lockup:hover .brand-lockup__name{ text-shadow: 0 0 12px rgba(217,222,230,.18); }

@media (max-width: 900px){
  .brand-lockup__mark{ width:48px; height:48px; border-radius:10px; }
  .brand-lockup__name{ font-size:1.2rem; }
}
@media (max-width: 720px){
  .brand-lockup__mark{ width:40px; height:40px; border-radius:10px; }
  .brand-lockup__name{ display:none; }
}


/* === QuickWave: 5-box CTA strip === */
.quick-cta-bar{
  display:grid; grid-template-columns: repeat(5, minmax(0,1fr));
  gap:12px; margin:14px 0 6px;
}
.quick-cta-bar .btn{
  display:flex; align-items:center; justify-content:center;
  padding:12px 14px; border-radius:14px;
  border:1px solid rgba(217,222,230,.32);
  color:#e6edf5; text-decoration:none;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
  transition:all .15s ease;
  min-height:46px;
}
.quick-cta-bar .btn:hover{ border-color:rgba(217,222,230,.55); transform:translateY(-1px); }
.quick-cta-bar .btn-primary{
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.12));
  border-color:rgba(56,189,248,.55);
}
.quick-cta-bar .btn-accent{
  background:linear-gradient(180deg, rgba(168,85,247,.22), rgba(168,85,247,.12));
  border-color:rgba(168,85,247,.55);
}
@media (max-width: 980px){ .quick-cta-bar{ grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 640px){ .quick-cta-bar{ grid-template-columns: repeat(2, minmax(0,1fr)); } }


/* === QuickWave: Centerpiece 5-Box CTA (uniform) === */
.quick-cta-bar.centerpiece{
  display:grid; grid-template-columns: repeat(5, minmax(0,1fr));
  gap:16px; margin:18px 0 10px;
  max-width: 1100px;
}
.quick-cta-bar.centerpiece .btn.pill{
  display:flex; align-items:center; justify-content:center;
  min-height:56px; padding:14px 18px; border-radius:16px;
  border:1px solid #D9DEE633; color:#EAF0F8; text-decoration:none;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .15s ease, box-shadow .2s ease, border-color .15s ease;
  font-weight:600;
}
.quick-cta-bar.centerpiece .btn.pill:hover{
  transform:translateY(-2px);
  border-color:#D9DEE666;
  box-shadow:0 10px 28px rgba(0,0,0,.35), 0 0 0 3px rgba(217,222,230,.08);
}
.quick-cta-bar.centerpiece .btn.pill.primary{
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.10));
  border-color:rgba(56,189,248,.55);
}
.quick-cta-bar.centerpiece .btn.pill.primary:hover{
  box-shadow:0 12px 30px rgba(56,189,248,.25), 0 0 0 3px rgba(56,189,248,.20);
}
@media (max-width: 1100px){
  .quick-cta-bar.centerpiece{ grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 720px){
  .quick-cta-bar.centerpiece{ grid-template-columns: repeat(2, minmax(0,1fr)); }
  .quick-cta-bar.centerpiece .btn.pill{ min-height:52px; }
}


/* === v61 polish === */
/* a) Tables (Insights) — bump contrast a notch */
.page-insights .comparison-table th,
.page-insights .comparison-table td{
  color:#0f172a; /* darker slate for readability */
  border-color:#D9DEE6;
}
.page-insights .comparison-table th{ font-weight:700; }
/* b) 5-box centerpiece spacing on mobile */
@media (max-width: 720px){
  .quick-cta-bar.centerpiece{ margin:22px 0 14px; row-gap:14px; }
}
/* c) Keyboard focus outlines (WCAG) */
a:focus-visible, button:focus-visible, .btn:focus-visible{
  outline: 2px solid rgba(56,189,248,.85);
  outline-offset: 3px;
  border-radius: 14px;
}


/* === v61a HOTFIX: Centerpiece alignment (uniform 5 across on desktop) === */
.quick-cta-bar.centerpiece{
  display:grid;
  grid-template-columns: repeat(5, minmax(180px, 1fr));
  justify-content:center;
  align-items:stretch;
  gap:16px;
  max-width:1200px;
  width:100%;
  margin-left:auto; margin-right:auto;
}
.quick-cta-bar.centerpiece .btn.pill{
  width:100%;
  min-height:56px;
  margin:0;                /* prevent stray margins from pushing rows */
  display:flex; align-items:center; justify-content:center;
}
/* Insights page sometimes has a narrower wrapper—force same behavior */
.page-insights .quick-cta-bar.centerpiece{
  grid-template-columns: repeat(5, minmax(180px, 1fr));
}
/* Responsive stack */
@media (max-width: 980px){
  .quick-cta-bar.centerpiece{ grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 680px){
  .quick-cta-bar.centerpiece{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}


/* === v61b: Remove stray duplicate logo under header === */
/* Keep only the brand lockup logo. Hide any additional logo images in the header. */
header .brand-lockup img{ display:block; }
header img[src*="logo"]{ display:none; }
header .brand-lockup img[src*="logo"]{ display:block; } /* re-allow inside lockup */
header .logo-watermark, header .brand-watermark, header .hero-badge-logo{ display:none !important; }
/* Some templates injected an extra <img> after the lockup; hide any siblings */
header .brand-lockup ~ img{ display:none !important; }
header .brand-lockup ~ .brand-mark{ display:none !important; }
/* Page-scoped fallbacks */
.page-how-we-operate header img[src*="logo"]:not(.keep){ display:none !important; }
.page-who-we-fund header img[src*="logo"]:not(.keep){ display:none !important; }
/* Ensure CTA row alignment on these pages too */
.page-how-we-operate .quick-cta-bar.centerpiece,
.page-who-we-fund .quick-cta-bar.centerpiece{
  display:grid; grid-template-columns: repeat(5, minmax(180px,1fr));
  gap:16px; max-width:1200px; margin:18px auto 10px;
}


/* v62a: HubSpot form theming (Apply) */
.hs-form-frame, .hs-form-iframe{ width:100%; }
.hs-form input, .hs-form select, .hs-form textarea{
  background:rgba(0,0,0,.25)!important; border:1px solid #2b3340!important; color:#EAF0F8!important;
  border-radius:12px!important; padding:10px 12px!important;
}
.hs-form .hs-button{
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.10))!important;
  border:1px solid rgba(56,189,248,.55)!important; color:#EAF0F8!important;
  border-radius:16px!important; padding:12px 18px!important; font-weight:700!important;
}
.hs-form .hs-button:hover{
  box-shadow:0 12px 30px rgba(56,189,248,.25), 0 0 0 3px rgba(56,189,248,.20)!important;
  transform: translateY(-1px);
}
.hs-form label{ color:#EAF0F8!important; font-weight:600!important; }
.hs-error-msg, .hs_error_rollup{ color:#ff7d7d!important; }


/* v63: Apply page polish */
.page-apply .form-card{max-width: 980px; margin: 0 auto;}
.page-apply .hero-pad{max-width:980px;margin:0 auto 16px auto}
.hs-form-iframe{min-height: 1200px; border: none;}
/* Headline alignment */
.page-apply .h1{letter-spacing:-0.01em}
/* Tighten field spacing on large forms */
.hs-form fieldset.form-columns-2 .hs-form-field{padding-right: 10px!important}


/* v63e: Ensure elegant HubSpot theming present */
.page-apply .form-card{max-width:980px;margin:0 auto;}
.page-apply .hero-pad{max-width:980px;margin:0 auto 16px}
.apply-embed-wrapper{padding:12px}
.apply-embed-inner{
  border:1px solid #D9DEE633; border-radius:18px; padding:20px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 20px 40px rgba(0,0,0,.28);
}
.hs-form input, .hs-form select, .hs-form textarea{
  background:rgba(0,0,0,.25)!important; border:1px solid #2b3340!important; color:#EAF0F8!important;
  border-radius:12px!important; padding:10px 12px!important;
}
.hs-form .hs-button{
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.10))!important;
  border:1px solid rgba(56,189,248,.55)!important; color:#EAF0F8!important;
  border-radius:16px!important; padding:12px 18px!important; font-weight:700!important;
}
iframe.hs-form-iframe{width:100%!important; min-height:1300px!important; background:transparent}
.alert-warn{background:rgba(255,200,0,.08);border:1px solid rgba(255,200,0,.35);color:#ffe8a6;padding:12px 14px;border-radius:12px;margin-bottom:12px}
.alert-warn a{ color:#b3e1ff; text-decoration:underline; }

/* v64: schedule page width match */
.page-schedule .form-card{max-width:980px;margin:0 auto;}
.page-schedule .hero-pad{max-width:980px;margin:0 auto 16px;}

/* v64a: HS embed hard-loader */
.hs-skeleton{display:block;padding:8px 0}
.hs-skeleton .bar{height:12px;background:#ffffff12;border-radius:8px;margin:8px 0}
.hs-skeleton .bar.short{width:60%}

/* v64d: ensure HS iframes and fallback space are visible */
iframe.hs-form-iframe{width:100%!important;min-height:1300px!important;background:transparent}
.hs-fallback-target{min-height:1300px}

/* v64e helpers */
.panel.subtle{margin-top:24px;padding:16px 20px;border-radius:14px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.arrow-links{margin:12px 0 0 0;padding:0;list-style:none}
.arrow-links li{margin:8px 0}
.arrow-links a{text-decoration:none}
.arrow-links a:hover{text-decoration:underline}

/* v64g: hard iframe fallback for HubSpot Share URL */
.hs-direct-iframe-wrap{margin-top:12px;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset, 0 10px 30px rgba(0,0,0,0.25)}
.hs-direct-iframe{width:100%;min-height:1200px;border:0;background:transparent;display:none}

/* v64h: hard iframe fallback blocks */
.hs-direct-iframe-wrap,.schedule-direct-iframe-wrap{margin-top:12px;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset, 0 10px 30px rgba(0,0,0,0.25)}
.hs-direct-iframe,.schedule-direct-iframe{width:100%;min-height:1200px;border:0;background:transparent;display:none}
@media (max-width: 640px){
  .hs-direct-iframe,.schedule-direct-iframe{min-height:1400px}
}

/* v65: mobile-friendly height tuning for HS share iframes */
@media (max-width: 640px){
  .hs-direct-iframe{min-height:1500px}
  .schedule-direct-iframe{min-height:1200px}
}
/* smooth container padding for iframes */
.hs-direct-iframe-wrap,.schedule-direct-iframe-wrap{
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
}

/* v66 full fix */
.page-apply .form-card,.page-schedule .form-card{max-width:980px;margin:0 auto}
.page-apply .hero-pad,.page-schedule .hero-pad{max-width:980px;margin:0 auto 16px}

.apply-embed-wrapper{padding:12px}
.apply-embed-inner{
  border:1px solid #D9DEE633; border-radius:18px; padding:20px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 20px 40px rgba(0,0,0,.28);
}
.arrow-links{margin:0;padding:0;list-style:none}
.arrow-links li{margin:8px 0}
.panel.subtle{margin:20px auto;padding:16px 20px;border-radius:14px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);max-width:980px}

iframe.hs-form-iframe{width:100%!important;min-height:1300px!important;background:transparent}
.page-apply .direct-iframe, .page-schedule .direct-iframe{width:100%;min-height:1200px;border:0}
.page-apply .hs-direct-iframe,.page-schedule .schedule-direct-iframe{width:100%;min-height:1200px;border:0;background:transparent}
.page-apply .hs-direct-iframe-wrap,.page-schedule .schedule-direct-iframe-wrap{
  margin-top:12px;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset, 0 10px 30px rgba(0,0,0,0.25)
}
@media (max-width: 640px){
  .hs-form-iframe{min-height:1500px!important}
  .page-apply .hs-direct-iframe, .page-schedule .schedule-direct-iframe{min-height:1500px}
}
.hs-form input, .hs-form select, .hs-form textarea{
  background:rgba(0,0,0,.25)!important; border:1px solid #2b3340!important; color:#EAF0F8!important;
  border-radius:12px!important; padding:10px 12px!important;
}
.hs-form .hs-button{
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.10))!important;
  border:1px solid rgba(56,189,248,.55)!important; color:#EAF0F8!important;
  border-radius:16px!important; padding:12px 18px!important; font-weight:700!important;
  transition: transform .15s ease, box-shadow .2s ease;
}
.hs-form .hs-button:hover{
  box-shadow:0 12px 30px rgba(56,189,248,.25), 0 0 0 3px rgba(56,189,248,.20)!important;
  transform: translateY(-1px);
}

/* v66a: visible secure-open CTA */
.fallback-cta.always-visible .btn{display:inline-block;padding:10px 16px;border-radius:14px;
  border:1px solid rgba(56,189,248,.55); text-decoration:none;
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.10));
  color:#EAF0F8; font-weight:700; box-shadow:0 10px 24px rgba(56,189,248,.18);
}
.fallback-cta.always-visible .btn:hover{box-shadow:0 14px 30px rgba(56,189,248,.28)}

/* v67 referral band */
.referral-band{margin:36px auto;max-width:980px;border:1px solid #D9DEE633;border-radius:16px;
  padding:20px;background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 20px 40px rgba(0,0,0,.28);
}
.referral-band .btn{display:inline-block;margin-top:8px;padding:10px 16px;border-radius:14px;
  border:1px solid rgba(56,189,248,.55); text-decoration:none;
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.10));
  color:#EAF0F8; font-weight:700; box-shadow:0 10px 24px rgba(56,189,248,.18);
}
.referral-band .btn:hover{box-shadow:0 14px 30px rgba(56,189,248,.28)}


/* v67a: Dramatic but performant hero ambient */
.hero{position:relative;overflow:hidden}
.hero-ambient{
  position:absolute; inset:-20% -20% auto -20%; height:120%;
  background:
    radial-gradient(40% 40% at 20% 30%, rgba(56,189,248,.25), transparent 60%),
    radial-gradient(35% 35% at 80% 20%, rgba(180,220,255,.15), transparent 65%),
    radial-gradient(45% 45% at 60% 70%, rgba(148,163,184,.12), transparent 60%);
  filter: blur(40px);
  pointer-events:none;
  transform: translateZ(0);
  animation: heroFloat 18s ease-in-out infinite alternate;
}

/* Motion-safe */
@media (prefers-reduced-motion: reduce){
  .hero-ambient{animation: none}
}

@keyframes heroFloat{
  0%{ transform: translate3d(-2%, -1%, 0) scale(1.02); }
  50%{ transform: translate3d(2%, 1%, 0) scale(1.05); }
  100%{ transform: translate3d(-1%, 2%, 0) scale(1.03); }
}


/* v67a: Footer referral placement */
.footer-referral{
  margin:24px auto 0 auto; max-width:980px;
  border:1px solid #D9DEE633; border-radius:16px; padding:18px 20px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 16px 34px rgba(0,0,0,.26);
}
.footer-referral .btn{display:inline-block;margin-top:8px;padding:10px 16px;border-radius:14px;
  border:1px solid rgba(56,189,248,.55); text-decoration:none;
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.10));
  color:#EAF0F8; font-weight:700; box-shadow:0 10px 24px rgba(56,189,248,.18);
}
.footer-referral .btn:hover{box-shadow:0 14px 30px rgba(56,189,248,.28)}

/* v67b: referral page sizing */
.referral-direct-iframe-wrap{margin-top:12px;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset, 0 10px 30px rgba(0,0,0,0.25)}
.referral-direct-iframe{width:100%;min-height:1200px;border:0;background:transparent;display:none}
@media (max-width: 640px){ .referral-direct-iframe{min-height:1500px} }
.hero-title-wrap{will-change: transform}


/* v68 — "wow" polish: variables, type, buttons, cards, microinteractions */
:root{
  --qw-bg:#0b0f14;
  --qw-panel:rgba(255,255,255,.04);
  --qw-border:rgba(217,222,230,.20);
  --qw-border-strong:rgba(217,222,230,.33);
  --qw-text:#EAF0F8;
  --qw-dim:#9fb2c7;
  --qw-accent:#58c3ff;
  --qw-accent-2:#b3e1ff;
  --qw-glow:0 24px 60px rgba(56,189,248,.22);
}
html,body{background:var(--qw-bg);color:var(--qw-text)}

.container{max-width:1100px;margin:0 auto;padding:0 16px}

.h1,.hero h1{letter-spacing:-0.01em;line-height:1.06}
.lead{color:var(--qw-dim);font-size:1.05rem}

.btn, .btn-primary, .btn-outline{
  position:relative; display:inline-block; padding:12px 18px; border-radius:14px;
  font-weight:700; text-decoration:none; transition:transform .15s ease, box-shadow .25s ease, border-color .2s ease;
}
.btn-primary{
  background:linear-gradient(180deg, rgba(56,189,248,.22), rgba(56,189,248,.10));
  border:1px solid rgba(56,189,248,.55); color:var(--qw-text); box-shadow: var(--qw-glow);
}
.btn-outline{
  background:transparent; border:1px solid var(--qw-border-strong); color:var(--qw-text);
}
.btn:hover{transform:translateY(-1px); box-shadow:0 18px 50px rgba(56,189,248,.28)}

.card{
  background:var(--qw-panel); border:1px solid var(--qw-border); border-radius:18px; padding:20px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 18px 40px rgba(0,0,0,.28);
}

.section{padding:56px 0}
.section + .section{padding-top:32px}

.stats-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:20px auto; max-width:980px;
}
.stats-grid .stat{border:1px solid var(--qw-border); border-radius:16px; padding:16px; background:var(--qw-panel)}
.stats-grid .k{font-size:1.25rem; font-weight:800}
.stats-grid .k-sub{color:var(--qw-dim)}

.nav a{position:relative}
.nav a:after{
  content:""; position:absolute; left:0; right:0; bottom:-6px; height:2px; background:linear-gradient(90deg, transparent, var(--qw-accent), transparent);
  opacity:0; transform:translateY(4px); transition:all .2s ease;
}
.nav a:hover:after, .nav a[aria-current="page"]:after{opacity:1; transform:translateY(0)}

/* Scroll reveal */
.reveal{opacity:0; transform:translateY(14px); transition:opacity .6s ease, transform .6s ease}
.reveal.is-in{opacity:1; transform:none}

/* Subtle image polish */
img{border-radius:12px}

/* Keep forms styling consistent (from earlier versions) */


/* v68c: Transparent funding section uniformization & spacing fixes */
.section{padding:56px 0}
.section.compact{padding:36px 0}
.section .card{background:var(--qw-panel); border:1px solid var(--qw-border); border-radius:18px; padding:20px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 18px 40px rgba(0,0,0,.28);
}
.transparent-funding .card, .transparent-funding{max-width:980px; margin:0 auto}
.transparent-funding h2{margin:0 0 8px 0}
.transparent-funding .lead{margin:0}
/* Headings & paragraph rhythm */
h1,h2,h3{line-height:1.12; margin:0 0 10px 0}
p{margin:0 0 12px 0}
/* Section separators: ensure consistent gap between stacked sections */
.section + .section{padding-top:44px}
/* Reduce excessive gaps above/below hero-pad & form-card */
.hero-pad{padding-top:20px; padding-bottom:8px}
.form-card{margin-top:8px}
@media (max-width: 720px){
  .section{padding:40px 0}
  .section + .section{padding-top:28px}
}


/* v68-netlify: global rhythm, cards, grid, banner, iframe */
.section{padding:56px 0}
.section.compact{padding:36px 0}
.section.tight{padding:28px 0}
.section + .section{padding-top:44px}
.hero-pad{padding-top:22px; padding-bottom:10px}
.form-card{margin-top:10px}
h1,h2,h3{line-height:1.12; margin:0 0 10px 0}
p{margin:0 0 12px 0}
@media (max-width: 720px){
  .section{padding:40px 0}
  .section + .section{padding-top:28px}
}

/* Cards & grids */
.cards-4{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:14px; margin-top:14px}
@media (max-width: 1024px){ .cards-4{grid-template-columns:repeat(2,1fr)} }
@media (max-width: 560px){ .cards-4{grid-template-columns:1fr} }
.card{background:var(--qw-panel); border:1px solid var(--qw-border); border-radius:18px; padding:20px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 18px 40px rgba(0,0,0,.28);
}

/* Conversion help banner */
.conv-help-banner{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  margin:0 0 10px 0; padding:10px 12px; border-radius:12px;
  border:1px solid rgba(217,222,230,.20);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
}
.conv-help-banner .btn.btn-ghost{
  display:inline-block; padding:8px 12px; border-radius:12px;
  border:1px solid rgba(217,222,230,.33); text-decoration:none; color:#EAF0F8;
  background:transparent;
}
.conv-help-banner .btn.btn-ghost:hover{box-shadow:0 10px 24px rgba(56,189,248,.18)}
@media (max-width:560px){
  .conv-help-banner{flex-direction:column; align-items:stretch}
  .conv-help-banner .btn{width:100%; text-align:center}
}

/* Hard iframe wrapper */
.direct-iframe-wrap{margin-top:12px;border-radius:16px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset, 0 10px 30px rgba(0,0,0,0.25)}
.direct-iframe{width:100%;min-height:1200px;border:0;background:transparent}
@media (max-width: 640px){ .direct-iframe{min-height:1500px} }


/* v68j: apply-first layout + compact hero */
.hero.compact{padding-top:24px; padding-bottom:16px}
.apply-quick-actions.top{display:flex; gap:10px; margin:12px 0 12px 0; flex-wrap:wrap}
.apply-quick-actions.top .btn{white-space:nowrap}
.apply-sticky-bar{
  position:fixed; bottom:14px; left:50%; transform:translateX(-50%);
  display:flex; gap:10px; padding:8px 10px; border-radius:14px; z-index:50;
  background:rgba(11,15,20,.7); backdrop-filter: blur(8px);
  border:1px solid rgba(217,222,230,.20); box-shadow:0 12px 28px rgba(0,0,0,.35);
}
@media (min-width: 900px){ .apply-sticky-bar{display:none} }


/* v68k: apply form contrast fixes */
.apply-form-contrast{border-radius:18px; padding:12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12)}
/* HubSpot embedded form iframe (script-injected) */
iframe.hs-form-iframe{background:#ffffff; border-radius:12px; display:block}
/* Hard Share-URL iframe fallback */
.direct-iframe{background:#ffffff; border-radius:12px}
/* Inputs inside Share-URL if the page allows light mode */
.hs-form input, .hs-form select, .hs-form textarea{background:#fff !important; color:#0b0f14 !important}
.hs-form label, .hs-form .hs-form-field label{color:#0b0f14 !important}
/* Ensure adequate padding around the form */
.apply-form-contrast .hs-fallback-target, .apply-form-contrast .direct-iframe-wrap{margin-top:10px}


/* v68l: schedule-first layout + contrast + sticky actions */
.schedule-form-contrast{border-radius:18px; padding:12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12)}
.schedule-form-contrast iframe.hs-form-iframe{background:#ffffff; border-radius:12px; display:block}
.schedule-form-contrast .direct-iframe{background:#ffffff; border-radius:12px}
.schedule-quick-actions{display:flex; gap:10px; margin:12px 0; flex-wrap:wrap}
.schedule-quick-actions .btn{white-space:nowrap}
.schedule-sticky-bar{
  position:fixed; bottom:14px; left:50%; transform:translateX(-50%);
  display:flex; gap:10px; padding:8px 10px; border-radius:14px; z-index:50;
  background:rgba(11,15,20,.7); backdrop-filter: blur(8px);
  border:1px solid rgba(217,222,230,.20); box-shadow:0 12px 28px rgba(0,0,0,.35);
}
@media (min-width: 900px){ .schedule-sticky-bar{display:none} }
/* Compact hero pulls content up */
.hero.compact{padding-top:24px; padding-bottom:16px}


/* v68m: apply/schedule contrast & fallback iframes */
.apply-form-contrast{border-radius:18px; padding:12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12)}
.apply-form-contrast iframe.hs-form-iframe{background:#ffffff; border-radius:12px; display:block}
.direct-iframe-wrap{margin-top:8px}
.direct-iframe{width:100%; min-height:760px; border:0; background:#fff; border-radius:12px}
@media (max-width: 768px){ .direct-iframe{min-height:900px} }


/* v69a: Apply form high-contrast override */
.apply-form-contrast{border-radius:18px; padding:12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12)}
.apply-form-contrast iframe.hs-form-iframe{background:#ffffff; border-radius:12px; display:block}
.direct-iframe{background:#ffffff; border-radius:12px}


/* v69b: Schedule form high-contrast override (coloring only) */
.schedule-form-contrast{border-radius:18px; padding:12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12)}
.schedule-form-contrast iframe.hs-form-iframe{background:#ffffff; border-radius:12px; display:block}
.schedule-form-contrast .direct-iframe{background:#ffffff; border-radius:12px}

/* v69c: iframe white backgrounds (ensures readability) */
.apply-form-contrast iframe.hs-form-iframe,
.schedule-form-contrast iframe.hs-form-iframe{background:#fff; border-radius:12px; display:block}
.direct-iframe{background:#fff; border-radius:12px}


/* v69d: apply form-first + compact hero (single form visible) */
.hero.compact{padding-top:24px; padding-bottom:16px}
.apply-form-contrast{border-radius:18px; padding:12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12)}
.apply-form-contrast iframe.hs-form-iframe{background:#ffffff; border-radius:12px; display:block}

/* v69f: schedule progressive + compact hero */
.schedule-form-contrast{border-radius:18px; padding:12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12)}
.schedule-form-contrast iframe.hs-form-iframe{background:#ffffff; border-radius:12px; display:block}
.direct-iframe-wrap{margin-top:6px; border-radius:16px; overflow:hidden; box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset, 0 10px 30px rgba(0,0,0,0.25)}
.direct-iframe{width:100%; min-height:900px; border:0; background:#fff}
@media (min-width: 900px){ .direct-iframe{min-height:760px} }
.hero.compact{padding-top:24px; padding-bottom:16px}

/* v69g: apply visibility hotfix */
.apply-form-contrast{border-radius:18px; padding:12px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12)}
.direct-iframe-wrap{margin-top:6px; border-radius:16px; overflow:hidden; box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset, 0 10px 30px rgba(0,0,0,0.25)}
.direct-iframe{width:100%; min-height:900px; border:0; background:#fff}
.apply-quick-links{margin-bottom:8px}
.hero.compact{padding-top:24px; padding-bottom:16px}

/* v69h: form-first zero-gap on apply */
main > #apply-now:first-child{margin-top:0}
#apply-now.form-card{margin-top:0}
.hero.compact{padding-top:16px; padding-bottom:14px}
.apply-quick-links{margin-bottom:8px}
