 :root {
 --bg: #06111f;
 --bg-soft: #0a1829;
 --panel: #0f2035;
 --panel-2: #132842;
 --text: #eef8ff;
 --muted: #a9bfd3;
 --muted-2: #7d94aa;
 --line: rgba(217, 247, 255, 0.14);
 --line-strong: rgba(217, 247, 255, 0.22);
 --accent: #4de6c4;
 --accent-2: #32b7ff;
 --accent-3: #8b5cf6;
 --warning: #ffd166;
 --shadow: 0 24px 70px rgba(0, 0, 0, 0.36);
 --shadow-soft: 0 16px 44px rgba(0, 0, 0, 0.22);
 --radius: 24px;
 --radius-lg: 34px;
 --radius-sm: 15px;
 --max: 1180px;
}

* { box-sizing: border-box; }

html {
 scroll-behavior: smooth;
 -webkit-text-size-adjust: 100%;
 text-size-adjust: 100%;
}

@supports (font: -apple-system-body) {
 body { -webkit-font-smoothing: antialiased; }
}

body {
 margin: 0;
 font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
 color: var(--text);
 background:
 radial-gradient(circle at 12% 8%, rgba(50, 183, 255, .16), transparent 30rem),
 radial-gradient(circle at 90% 14%, rgba(139, 92, 246, .15), transparent 28rem),
 radial-gradient(circle at 52% 42%, rgba(77, 230, 196, .08), transparent 34rem),
 linear-gradient(180deg, #050d18 0%, #081524 46%, #06111f 100%);
 line-height: 1.6;
 overflow-x: hidden;
 -webkit-font-smoothing: antialiased;
 text-rendering: optimizeLegibility;
}

body::before {
 content: "";
 position: fixed;
 inset: 0;
 pointer-events: none;
 background-image:
 linear-gradient(rgba(217,247,255,.025) 1px, transparent 1px),
 linear-gradient(90deg, rgba(217,247,255,.025) 1px, transparent 1px);
 background-size: 44px 44px;
 -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,.75), transparent 82%);
 mask-image: linear-gradient(180deg, rgba(0,0,0,.75), transparent 82%);
}

a { color: inherit; text-decoration: none; }
img, svg { max-width: 100%; height: auto; }

.container { width: min(var(--max), calc(100% - 40px)); margin-inline: auto; }

.skip-link {
 position: absolute;
 left: 1rem;
 top: -4rem;
 z-index: 100;
 padding: .75rem 1rem;
 border-radius: 999px;
 background: var(--accent);
 color: #04101b;
 font-weight: 850;
}
.skip-link:focus { top: 1rem; }
:focus-visible { outline: 3px solid rgba(77, 230, 196, .72); outline-offset: 3px; }

.site-header {
 position: sticky;
 top: 0;
 z-index: 40;
 border-bottom: 1px solid rgba(217, 247, 255, .09);
 background: rgba(6, 17, 31, .83);
 -webkit-backdrop-filter: blur(18px);
 backdrop-filter: blur(18px);
}

.header-inner {
 min-height: 82px;
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 24px;
}

.brand {
 display: inline-flex;
 align-items: center;
 gap: 12px;
 min-width: max-content;
}

.brand img {
 width: 46px;
 height: 46px;
 filter: drop-shadow(0 14px 26px rgba(50, 183, 255, .28));
}

.brand-text { display: grid; line-height: 1.08; }
.brand-name { font-weight: 900; letter-spacing: -.04em; font-size: 1.05rem; }
.brand-subtitle { color: var(--muted); font-size: .76rem; letter-spacing: .055em; text-transform: uppercase; }

.nav-toggle {
 display: none;
 align-items: center;
 gap: .55rem;
 border: 1px solid var(--line);
 background: rgba(255, 255, 255, .045);
 color: var(--text);
 border-radius: 13px;
 padding: .62rem .82rem;
 font-weight: 800;
 -webkit-tap-highlight-color: transparent;
}

.nav-toggle-bars { position: relative; width: 1.05rem; height: .72rem; display: inline-block; border-top: 2px solid currentColor; }
.nav-toggle-bars::before,
.nav-toggle-bars::after { content: ""; position: absolute; left: 0; width: 100%; border-top: 2px solid currentColor; }
.nav-toggle-bars::before { top: .26rem; }
.nav-toggle-bars::after { top: .55rem; }

.nav { display: flex; align-items: center; gap: 6px; }
.nav a {
 color: #d7e7f5;
 padding: .72rem .92rem;
 border-radius: 999px;
 font-size: .95rem;
 font-weight: 700;
 -webkit-tap-highlight-color: transparent;
}
.nav a:hover,
.nav a[aria-current="page"] { background: rgba(217, 247, 255, .085); color: #fff; }
.nav .nav-cta {
 background: linear-gradient(135deg, var(--accent), var(--accent-2));
 color: #03101c;
 margin-left: 4px;
 box-shadow: 0 14px 34px rgba(50, 183, 255, .2);
}
.nav .nav-cta:hover { background: linear-gradient(135deg, #80f4df, #72ceff); color: #03101c; }

.hero { position: relative; padding: 92px 0 74px; }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(360px, .88fr); gap: 58px; align-items: center; }
.hero-copy-column { position: relative; z-index: 2; }
.eyebrow {
 display: inline-flex;
 align-items: center;
 gap: .55rem;
 width: fit-content;
 max-width: 100%;
 padding: .37rem .78rem;
 border: 1px solid rgba(77, 230, 196, .24);
 border-radius: 999px;
 background: rgba(77, 230, 196, .08);
 color: #b9fff1;
 font-size: .82rem;
 font-weight: 800;
 letter-spacing: .02em;
}
.eyebrow::before {
 content: "";
 width: .5rem;
 height: .5rem;
 border-radius: 50%;
 background: var(--accent);
 box-shadow: 0 0 0 6px rgba(77, 230, 196, .09);
 flex: 0 0 auto;
}

h1, h2, h3 { margin: 0; line-height: 1.04; letter-spacing: -.045em; overflow-wrap: anywhere; text-wrap: balance; }
h1 { margin-top: 22px; font-size: clamp(2.8rem, 6.5vw, 5.7rem); max-width: 13.2ch; }
h2 { font-size: clamp(2rem, 4.2vw, 3.35rem); }
h3 { font-size: 1.28rem; }
.gradient-text {
 background: linear-gradient(135deg, #fff 12%, #c9f7ff 30%, var(--accent) 58%, var(--accent-2));
 -webkit-background-clip: text;
 background-clip: text;
 color: transparent;
}
.hero-copy { margin: 24px 0 0; max-width: 720px; color: #c8dceb; font-size: clamp(1.08rem, 2vw, 1.28rem); text-wrap: pretty; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.button {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 gap: .55rem;
 min-height: 50px;
 padding: .85rem 1.12rem;
 border-radius: 999px;
 border: 1px solid var(--line);
 font-weight: 850;
 letter-spacing: -.01em;
 transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
 -webkit-tap-highlight-color: transparent;
}
.button:hover { transform: translateY(-2px); }
.button-primary { background: linear-gradient(135deg, var(--accent), var(--accent-2)); color: #04101b; border-color: transparent; box-shadow: 0 18px 44px rgba(50, 183, 255, .22); }
.button-secondary { background: rgba(255, 255, 255, .05); color: #eaf6ff; }
.button-secondary:hover { border-color: rgba(77, 230, 196, .35); background: rgba(255, 255, 255, .08); }

.hero-signals {
 margin-top: 34px;
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 12px;
 max-width: 780px;
}
.hero-signals div {
 border: 1px solid var(--line);
 border-radius: 18px;
 padding: 14px;
 background: rgba(255,255,255,.04);
}
.hero-signals strong { display: block; color: #fff; font-size: .98rem; }
.hero-signals span { display: block; color: var(--muted); font-size: .86rem; line-height: 1.35; margin-top: 3px; }

.hero-visual { position: relative; }
.visual-card {
 position: relative;
 border: 1px solid rgba(217, 247, 255, .14);
 border-radius: 38px;
 overflow: hidden;
 box-shadow: var(--shadow);
 background: rgba(12, 28, 47, .72);
}
.premium-visual-card::after {
 content: "";
 position: absolute;
 inset: 0;
 background: linear-gradient(180deg, rgba(255,255,255,.08), transparent 36%);
 pointer-events: none;
}
.visual-card img { display: block; width: 100%; }
.floating-card {
 position: absolute;
 padding: 16px 18px;
 border: 1px solid rgba(217, 247, 255, .15);
 border-radius: 19px;
 background: rgba(8, 19, 33, .91);
 -webkit-backdrop-filter: blur(14px);
 backdrop-filter: blur(14px);
 box-shadow: 0 22px 54px rgba(0,0,0,.38);
}
.floating-card span { display: block; color: var(--muted); font-size: .76rem; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.floating-card strong { display: block; margin-top: 5px; color: #fff; font-size: .98rem; }
.floating-card-top { top: 28px; right: -24px; }
.floating-card-bottom { left: -24px; bottom: -22px; }

.proof-strip { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.026); }
.proof-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px; }
.proof-grid span { padding: 22px 14px; color: #d7e8f6; font-weight: 850; text-align: center; border-left: 1px solid rgba(217, 247, 255, .08); font-size: .94rem; }
.proof-grid span:last-child { border-right: 1px solid rgba(217, 247, 255, .08); }

.section { padding: 84px 0; }
.section-tight { padding: 56px 0; }
.section-header { max-width: 790px; margin-bottom: 36px; }
.section-header.center { margin-inline: auto; text-align: center; }
.no-margin { margin: 0; }
.section-kicker { color: var(--accent); font-size: .82rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 10px; }
.lede { color: #bfd5e7; font-size: 1.08rem; margin: 15px 0 0; text-wrap: pretty; }
.flush { margin: 0; }

.split { display: grid; grid-template-columns: .92fr 1.08fr; gap: 40px; align-items: start; }
.align-center { align-items: center; }
.band {
 border-block: 1px solid var(--line);
 background:
 radial-gradient(circle at 18% 18%, rgba(77, 230, 196, .12), transparent 24rem),
 radial-gradient(circle at 88% 18%, rgba(50, 183, 255, .08), transparent 24rem),
 rgba(255,255,255,.025);
}
.premium-band { box-shadow: inset 0 1px 0 rgba(255,255,255,.02); }

.content-card,
.card,
.feature-card,
.engagement-card,
.process-step,
.contact-card,
.service-row {
 border: 1px solid var(--line);
 background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.026));
 box-shadow: var(--shadow-soft);
}
.content-card { border-radius: 30px; padding: 30px; }
.elevated-card { border-color: rgba(77,230,196,.18); background: linear-gradient(135deg, rgba(77,230,196,.08), rgba(50,183,255,.04) 50%, rgba(255,255,255,.026)); }
.tech-panel { overflow: hidden; }
.content-card h3 { font-size: 1.45rem; margin-bottom: 14px; }
.content-card p { color: #c7d9e9; }

.feature-grid { display: grid; gap: 18px; }
.four-up { grid-template-columns: repeat(4, 1fr); }
.feature-card { position: relative; border-radius: var(--radius); padding: 23px; overflow: hidden; }
.feature-card::after {
 content: "";
 position: absolute;
 inset: auto 18px 0 18px;
 height: 1px;
 background: linear-gradient(90deg, transparent, rgba(77,230,196,.42), transparent);
}
.icon-badge,
.service-number {
 display: inline-grid;
 place-items: center;
 min-width: 40px;
 height: 40px;
 padding-inline: 10px;
 margin-bottom: 16px;
 border-radius: 14px;
 background: rgba(77, 230, 196, .1);
 color: var(--accent);
 font-weight: 950;
 border: 1px solid rgba(77,230,196,.16);
}
.feature-card h3 { margin-bottom: 10px; }
.feature-card p,
.card p,
.engagement-card p,
.process-step p,
.service-row p { color: #bed2e4; margin: 0; }

.cards-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.card { position: relative; border-radius: var(--radius); padding: 25px; overflow: hidden; }
.card::before,
.service-row::before {
 content: "";
 position: absolute;
 inset: 0 0 auto 0;
 height: 3px;
 background: linear-gradient(90deg, var(--accent), var(--accent-2), var(--accent-3));
 opacity: .88;
}
.card h3 { margin-bottom: 12px; }

.engagement-list { display: grid; gap: 16px; }
.engagement-card { border-radius: 24px; padding: 23px; }
.tag {
 display: inline-block;
 margin-bottom: 14px;
 padding: .34rem .62rem;
 border-radius: 999px;
 background: rgba(50, 183, 255, .1);
 color: #aee6ff;
 font-size: .76rem;
 font-weight: 900;
 letter-spacing: .05em;
 text-transform: uppercase;
}
.engagement-card h3 { margin-bottom: 10px; }

.process-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.process-step { border-radius: var(--radius); padding: 22px; }
.process-step h3 { font-size: 1.12rem; margin-bottom: 9px; }

.page-hero { padding: 76px 0 52px; border-bottom: 1px solid var(--line); }
.compact-hero { padding: 70px 0 52px; }
.page-hero-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 44px; align-items: end; }
.page-hero h1 { max-width: 13ch; }
.page-copy { max-width: 780px; }

.service-stack { display: grid; gap: 16px; }
.service-row {
 position: relative;
 display: grid;
 grid-template-columns: .72fr 1fr 1.18fr;
 gap: 24px;
 align-items: start;
 border-radius: 26px;
 padding: 26px;
 overflow: hidden;
}
.service-row h3 { font-size: 1.35rem; }
.service-row ul,
.card ul,
.content-card ul,
.feature-list { margin: 0; padding: 0; list-style: none; }
.service-row li,
.card li,
.content-card li,
.feature-list li {
 position: relative;
 padding-left: 1.1rem;
 color: #c6d9e9;
 margin: .44rem 0;
}
.service-row li::before,
.card li::before,
.content-card li::before,
.feature-list li::before {
 content: "";
 position: absolute;
 left: 0;
 top: .68em;
 width: .42rem;
 height: .42rem;
 border-radius: 50%;
 background: var(--accent);
}
.capability-cloud { display: flex; flex-wrap: wrap; gap: 10px; }
.capability-cloud span { border: 1px solid rgba(217, 247, 255, .14); border-radius: 999px; padding: .55rem .75rem; background: rgba(255,255,255,.04); color: #d8e9f7; font-weight: 750; font-size: .92rem; }

.cta-panel {
 position: relative;
 display: grid;
 grid-template-columns: 1fr auto;
 gap: 28px;
 align-items: center;
 padding: 36px;
 border: 1px solid rgba(77, 230, 196, .23);
 border-radius: 34px;
 background:
 linear-gradient(135deg, rgba(77, 230, 196, .13), rgba(50, 183, 255, .08) 48%, rgba(139, 92, 246, .12)),
 rgba(255,255,255,.035);
 box-shadow: var(--shadow);
 overflow: hidden;
}
.cta-panel::after {
 content: "";
 position: absolute;
 right: -80px;
 top: -120px;
 width: 320px;
 height: 320px;
 border-radius: 50%;
 background: radial-gradient(circle, rgba(50,183,255,.18), transparent 62%);
}
.cta-panel h2 { font-size: clamp(1.9rem, 3.8vw, 3rem); }
.cta-panel p { margin: 12px 0 0; color: #c7d9e9; max-width: 740px; }
.cta-panel > * { position: relative; z-index: 1; }

.contact-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 26px; align-items: start; }
.contact-card { border-radius: 30px; padding: 30px; }
.contact-sidebar { position: sticky; top: 108px; }
.contact-sidebar h2 { font-size: clamp(1.8rem, 3.2vw, 2.55rem); }
.contact-method { display: grid; gap: 6px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.contact-method:last-of-type { border-bottom: 0; }
.contact-method span { color: var(--muted); font-size: .86rem; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.contact-method a,
.contact-method strong { color: #fff; font-size: 1.04rem; }
.mini-panel { margin-top: 22px; padding: 18px; border: 1px solid rgba(77,230,196,.18); border-radius: 18px; background: rgba(77,230,196,.07); }
.mini-panel strong { display: block; margin-bottom: 7px; }
.mini-panel p { margin: 0; color: #c7d9e9; }

.form { display: grid; gap: 14px; }
.form-row { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
label { display: grid; gap: 7px; color: #dbeafa; font-weight: 780; }
input,
textarea,
select,
button {
 font-size: 1rem;
 -webkit-appearance: none;
 appearance: none;
 border-radius: 15px;
}
button { cursor: pointer; }
select { color-scheme: dark; background-image: linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%); background-position: calc(100% - 18px) 50%, calc(100% - 12px) 50%; background-size: 6px 6px, 6px 6px; background-repeat: no-repeat; padding-right: 2.4rem; }
select option { background: #081524; color: #eef8ff; }
input,
textarea,
select {
 width: 100%;
 border: 1px solid rgba(217,247,255,.16);
 border-radius: 15px;
 padding: .88rem .94rem;
 background: rgba(2, 9, 17, .48);
 color: var(--text);
 font: inherit;
 outline: none;
}
textarea { min-height: 170px; resize: vertical; }
input:focus,
textarea:focus,
select:focus { border-color: rgba(77, 230, 196, .58); box-shadow: 0 0 0 4px rgba(77, 230, 196, .08); }
.honeypot { display: none; }
.form-note { color: var(--muted); font-size: .92rem; margin: 0; }
.notice { border: 1px solid rgba(77, 230, 196, .28); border-radius: 16px; padding: 14px 16px; background: rgba(77, 230, 196, .08); color: #dffff8; margin-bottom: 16px; }
.notice.error { border-color: rgba(255, 209, 102, .34); background: rgba(255, 209, 102, .08); color: #fff2c2; }

.site-footer { border-top: 1px solid var(--line); padding: 44px 0; background: rgba(0,0,0,.18); }
.footer-grid { display: grid; grid-template-columns: 1.15fr .9fr .9fr; gap: 28px; align-items: start; }
.footer-title { font-weight: 900; margin-bottom: 10px; }
.footer-text,
.footer-links a,
.footer-links span,
.footer-meta { color: var(--muted); }
.footer-text { max-width: 520px; }
.footer-links { display: grid; gap: 8px; }
.footer-links a:hover { color: #fff; }
.footer-meta { margin-top: 26px; font-size: .92rem; }

@media (min-width: 981px) {
 .card,
 .feature-card,
 .process-step,
 .content-card,
 .engagement-card,
 .service-row,
 .contact-card { transition: border-color .2s ease, transform .2s ease, background .2s ease; }
 .card:hover,
 .feature-card:hover,
 .process-step:hover,
 .engagement-card:hover,
 .service-row:hover { transform: translateY(-3px); border-color: rgba(77, 230, 196, .27); background: linear-gradient(180deg, rgba(255,255,255,.067), rgba(255,255,255,.032)); }
}

@media (max-width: 1080px) {
 .four-up { grid-template-columns: repeat(2, 1fr); }
 .service-row { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 980px) {
 .hero-grid,
 .split,
 .contact-grid,
 .cta-panel,
 .page-hero-grid { grid-template-columns: 1fr; }
 .hero-grid { gap: 42px; }
 .hero-visual { max-width: 640px; margin-inline: auto; }
 .cards-grid { grid-template-columns: repeat(2, 1fr); }
 .process-grid { grid-template-columns: repeat(2, 1fr); }
 .proof-grid { grid-template-columns: repeat(3, 1fr); }
 .page-hero-grid { align-items: start; gap: 18px; }
 .contact-sidebar { position: static; }
}

@media (max-width: 760px) {
 .container { width: min(100% - 28px, var(--max)); }
 .site-header { background: rgba(6, 17, 31, .93); }
 .header-inner { min-height: 70px; }
 .brand { min-width: 0; gap: 10px; }
 .brand img { width: 40px; height: 40px; flex: 0 0 auto; }
 .brand-text { min-width: 0; }
 .brand-name { font-size: .98rem; letter-spacing: -.04em; white-space: nowrap; }
 .brand-subtitle { font-size: .69rem; }
 .nav-toggle { display: inline-flex; min-height: 42px; padding-inline: .82rem; box-shadow: 0 10px 26px rgba(0,0,0,.18); }
 .nav {
 position: absolute;
 inset: 70px 14px auto 14px;
 display: none;
 flex-direction: column;
 align-items: stretch;
 gap: 4px;
 max-height: calc(100vh - 92px);
 max-height: calc(100dvh - 92px);
 overflow-y: auto;
 -webkit-overflow-scrolling: touch;
 padding: 14px;
 border: 1px solid var(--line);
 border-radius: 18px;
 background: rgba(6, 17, 31, .97);
 box-shadow: var(--shadow);
 }
 .nav[data-open="true"] { display: flex; }
 .nav a { border-radius: 12px; padding: .9rem 1rem; font-size: 1rem; }
 .nav .nav-cta { margin-left: 0; text-align: center; }
 .hero { padding: 48px 0 54px; }
 .hero-grid { gap: 32px; }
 h1 { font-size: clamp(2.34rem, 11.6vw, 3.95rem); max-width: 11.5ch; }
 .hero-copy { margin-top: 18px; font-size: 1.02rem; }
 .hero-actions { margin-top: 26px; }
 .hero-actions .button { min-height: 52px; }
 .hero-signals { margin-top: 24px; grid-template-columns: 1fr; gap: 9px; }
 .hero-signals div { padding: 12px 14px; }
 .hero-visual { width: min(100%, 430px); }
 .visual-card { border-radius: 24px; }
 .floating-card { position: relative; inset: auto; width: 100%; margin-top: 12px; padding: 15px 16px; border-radius: 18px; }
 .proof-grid { grid-template-columns: repeat(2, 1fr); }
 .proof-grid span { padding: 17px 11px; font-size: .88rem; }
 .section { padding: 62px 0; }
 .section-tight { padding: 44px 0; }
 .section-header { margin-bottom: 26px; }
 .section-kicker { font-size: .75rem; }
 h2 { font-size: clamp(1.82rem, 8.4vw, 2.65rem); }
 .lede { font-size: 1rem; }
 .cards-grid,
 .four-up,
 .process-grid,
 .form-row { grid-template-columns: 1fr; }
 .content-card,
 .card,
 .feature-card,
 .engagement-card,
 .process-step,
 .contact-card,
 .service-row { padding: 20px; border-radius: 21px; }
 .split { gap: 24px; }
 .cta-panel { padding: 24px; border-radius: 25px; }
 .cta-panel .button { width: 100%; }
 .page-hero,
 .compact-hero { padding: 50px 0 38px; }
 .page-hero h1 { max-width: 12ch; }
 .contact-method a,
 .contact-method strong { overflow-wrap: anywhere; }
 .footer-grid { grid-template-columns: 1fr; }
 .footer-grid .brand-name { white-space: normal; }
}

@media (max-width: 440px) {
 .container { width: min(100% - 24px, var(--max)); }
 .header-inner { min-height: 66px; gap: 10px; }
 .brand img { width: 34px; height: 34px; }
 .brand-name { font-size: .82rem; }
 .brand-subtitle { display: none; }
 .nav-toggle { min-height: 38px; padding: .48rem .62rem; font-size: .9rem; }
 .nav { inset: 66px 12px auto 12px; }
 .eyebrow { line-height: 1.25; font-size: .73rem; }
 .hero { padding-top: 38px; }
 h1 { margin-top: 18px; }
 .hero-copy { font-size: .98rem; }
 .proof-grid { grid-template-columns: repeat(2, 1fr); }
 .proof-grid span { padding: 14px 8px; font-size: .8rem; }
 .hero-actions .button { width: 100%; }
 .service-row { gap: 12px; }
 .contact-card { padding: 18px; }
}

@media (max-width: 360px) {
 .brand-name { max-width: 144px; overflow: hidden; text-overflow: ellipsis; }
 .nav-toggle span:last-child { display: none; }
 .proof-grid { grid-template-columns: 1fr; }
}

/* v4 — Wisconsin identity polish */
.heritage-band {
 position: relative;
 overflow: hidden;
}
.heritage-band::before {
 content: "";
 position: absolute;
 inset: 0;
 background:
 linear-gradient(120deg, rgba(77,230,196,.06), transparent 34%),
 radial-gradient(circle at 72% 32%, rgba(255,209,102,.08), transparent 22rem);
 pointer-events: none;
}
.heritage-grid {
 position: relative;
 z-index: 1;
 display: grid;
 grid-template-columns: .9fr 1.1fr;
 gap: 36px;
 align-items: center;
}
.heritage-cards {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 14px;
}
.heritage-card {
 min-height: 238px;
 border: 1px solid rgba(217, 247, 255, .14);
 border-radius: 24px;
 padding: 22px;
 background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.024));
 box-shadow: var(--shadow-soft);
}
.heritage-card span {
 display: inline-grid;
 place-items: center;
 width: 38px;
 height: 38px;
 margin-bottom: 16px;
 border-radius: 14px;
 border: 1px solid rgba(255,209,102,.28);
 background: rgba(255,209,102,.09);
 color: var(--warning);
 font-weight: 950;
}
.heritage-card h3 { margin-bottom: 10px; }
.heritage-card p { margin: 0; color: #bed2e4; }
.heritage-statement p { color: #c7d9e9; }
.heritage-map-card {
 position: relative;
 min-height: 360px;
 border: 1px solid rgba(217, 247, 255, .14);
 border-radius: 34px;
 overflow: hidden;
 background:
 radial-gradient(circle at 68% 34%, rgba(77,230,196,.22), transparent 15rem),
 radial-gradient(circle at 28% 70%, rgba(50,183,255,.16), transparent 15rem),
 linear-gradient(135deg, rgba(12,28,47,.88), rgba(8,19,33,.88));
 box-shadow: var(--shadow);
}
.heritage-map-card::before {
 content: "";
 position: absolute;
 inset: 0;
 background-image:
 linear-gradient(rgba(217,247,255,.035) 1px, transparent 1px),
 linear-gradient(90deg, rgba(217,247,255,.035) 1px, transparent 1px);
 background-size: 36px 36px;
 opacity: .72;
}
.map-line {
 position: absolute;
 left: 18%;
 right: 18%;
 top: 52%;
 height: 4px;
 border-radius: 999px;
 background: linear-gradient(90deg, var(--accent), var(--warning), var(--accent-2));
 box-shadow: 0 0 24px rgba(77,230,196,.28);
 transform: rotate(-10deg);
}
.map-node {
 position: absolute;
 width: min(250px, 70%);
 padding: 16px 18px;
 border: 1px solid rgba(217,247,255,.16);
 border-radius: 20px;
 background: rgba(6,17,31,.82);
 box-shadow: 0 18px 48px rgba(0,0,0,.32);
 -webkit-backdrop-filter: blur(12px);
 backdrop-filter: blur(12px);
}
.map-node::before {
 content: "";
 display: block;
 width: 11px;
 height: 11px;
 margin-bottom: 10px;
 border-radius: 50%;
 background: var(--accent);
 box-shadow: 0 0 0 7px rgba(77,230,196,.1);
}
.map-node span {
 display: block;
 color: var(--muted);
 font-size: .76rem;
 font-weight: 900;
 text-transform: uppercase;
 letter-spacing: .08em;
}
.map-node strong {
 display: block;
 color: #fff;
 margin-top: 4px;
 font-size: 1.02rem;
}
.node-milwaukee { right: 34px; top: 42px; }
.node-madison { left: 34px; bottom: 46px; }
.node-nationwide { right: 52px; bottom: 40px; }

@media (max-width: 1080px) {
 .heritage-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
 .heritage-cards { grid-template-columns: 1fr; }
 .heritage-card { min-height: auto; padding: 20px; }
 .heritage-map-card { min-height: 390px; border-radius: 24px; }
 .node-milwaukee { right: 18px; top: 24px; }
 .node-madison { left: 18px; bottom: 148px; }
 .node-nationwide { right: 18px; bottom: 22px; }
 .map-node { width: calc(100% - 36px); }
 .map-line { left: 28%; right: 28%; top: 48%; transform: rotate(82deg); }
}

/* v6 — industrial markets, M&A diligence, and responsive polish */
.proof-grid {
 grid-template-columns: repeat(auto-fit, minmax(138px, 1fr));
}
.proof-grid span {
 min-height: 66px;
 display: grid;
 place-items: center;
}
.diligence-card {
 border-color: rgba(255, 209, 102, .22);
 background:
 linear-gradient(135deg, rgba(255,209,102,.08), rgba(77,230,196,.055) 44%, rgba(50,183,255,.045)),
 rgba(255,255,255,.026);
}
.diligence-card h3 {
 margin-bottom: 16px;
}
.premium-cards .card:nth-child(3n+2)::before {
 background: linear-gradient(90deg, var(--warning), var(--accent), var(--accent-2));
}
.premium-cards .card:nth-child(3n)::before {
 background: linear-gradient(90deg, var(--accent-3), var(--accent-2), var(--accent));
}
.engagement-list .engagement-card:nth-child(even) .tag {
 background: rgba(255, 209, 102, .1);
 color: #ffe39b;
}
.service-row#packaging::before,
.service-row#oil-gas::before,
.service-row#diligence::before {
 background: linear-gradient(90deg, var(--warning), var(--accent), var(--accent-2));
}
@media (min-width: 1180px) {
 .cards-grid.premium-cards {
 align-items: stretch;
 }
 .cards-grid.premium-cards .card {
 min-height: 190px;
 }
}
@media (max-width: 980px) {
 .proof-grid {
 grid-template-columns: repeat(3, 1fr);
 }
}
@media (max-width: 760px) {
 .proof-grid {
 grid-template-columns: repeat(2, 1fr);
 }
 .proof-grid span {
 min-height: 58px;
 }
 .cards-grid.premium-cards .card {
 min-height: auto;
 }
}
@media (max-width: 390px) {
 h1 {
 font-size: clamp(2.15rem, 10.6vw, 3.35rem);
 }
 .hero-copy {
 font-size: .965rem;
 }
 .proof-grid span {
 font-size: .77rem;
 }
}


/* v8 — content architecture and conversion polish */
.compact-header { max-width: 860px; }
.audience-section { padding-top: 46px; }
.audience-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 18px;
}
.audience-card {
 position: relative;
 overflow: hidden;
 border: 1px solid rgba(217,247,255,.14);
 border-radius: 28px;
 padding: 24px;
 background:
 linear-gradient(180deg, rgba(255,255,255,.062), rgba(255,255,255,.03)),
 rgba(12,28,47,.62);
 box-shadow: var(--shadow-soft);
}
.audience-card::before {
 content: "";
 position: absolute;
 inset: 0 0 auto 0;
 height: 4px;
 background: linear-gradient(90deg, var(--accent), var(--accent-2), var(--warning));
}
.audience-card span,
.decision-grid strong {
 display: inline-flex;
 width: fit-content;
 color: #b9fff1;
 font-size: .78rem;
 font-weight: 950;
 letter-spacing: .08em;
 text-transform: uppercase;
}
.audience-card h3 { margin-top: 14px; }
.audience-card p { margin: 12px 0 0; color: #bfd3e5; }
.sticky-summary { position: sticky; top: 112px; align-self: start; }
.proof-note { margin-top: 22px; }
.decision-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 14px;
 margin: -10px 0 28px;
}
.decision-grid article {
 border: 1px solid rgba(217,247,255,.13);
 border-radius: 20px;
 padding: 18px;
 background: rgba(255,255,255,.038);
}
.decision-grid span {
 display: block;
 color: var(--muted);
 margin-top: 8px;
 line-height: 1.38;
}
.highlight-card {
 border-color: rgba(255,209,102,.28);
 background:
 linear-gradient(135deg, rgba(255,209,102,.09), rgba(77,230,196,.05)),
 rgba(255,255,255,.035);
}
@media (max-width: 980px) {
 .audience-grid,
 .decision-grid { grid-template-columns: 1fr; }
 .sticky-summary { position: static; }
}
@media (max-width: 760px) {
 .audience-section { padding-top: 22px; }
 .audience-card { padding: 20px; border-radius: 22px; }
 .decision-grid { margin-bottom: 22px; }
}


/* v9 — final responsive, accessibility, and production polish */
.outcome-strip {
 border-block: 1px solid rgba(217,247,255,.09);
 background: linear-gradient(90deg, rgba(77,230,196,.055), rgba(50,183,255,.035), rgba(255,209,102,.035));
}
.outcome-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 1px;
}
.outcome-grid div {
 padding: 22px 20px;
 min-height: 112px;
 background: rgba(6,17,31,.42);
}
.outcome-grid strong,
.trust-item strong,
.risk-grid strong {
 display: block;
 color: #fff;
 font-weight: 950;
 letter-spacing: -.02em;
}
.outcome-grid span,
.trust-item span,
.risk-grid span {
 display: block;
 margin-top: 6px;
 color: var(--muted);
 line-height: 1.38;
 font-size: .94rem;
}
.trust-band { padding-block: 34px; }
.trust-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 14px;
}
.trust-item {
 border: 1px solid rgba(217,247,255,.13);
 border-radius: 20px;
 padding: 18px;
 background: rgba(255,255,255,.036);
}
.capability-jump {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 margin: -8px 0 28px;
}
.capability-jump a {
 border: 1px solid rgba(217,247,255,.14);
 border-radius: 999px;
 padding: .62rem .82rem;
 color: #d8ecfa;
 background: rgba(255,255,255,.045);
 font-weight: 850;
 font-size: .88rem;
}
.capability-jump a:hover { border-color: rgba(77,230,196,.36); color: #fff; background: rgba(77,230,196,.08); }
.risk-grid {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 14px;
}
.risk-grid div {
 min-height: 132px;
 border: 1px solid rgba(217,247,255,.14);
 border-radius: 22px;
 padding: 20px;
 background:
 linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.028)),
 rgba(12,28,47,.58);
}
.privacy-panel {
 border: 1px solid rgba(255,209,102,.22);
 border-radius: 24px;
 padding: 22px 24px;
 background: linear-gradient(135deg, rgba(255,209,102,.08), rgba(77,230,196,.04));
}
.privacy-panel strong { display: block; color: #fff; font-size: 1.08rem; }
.privacy-panel p { margin: 8px 0 0; color: #c8dceb; }
@media (min-width: 981px) {
 .hero-copy-column { max-width: 820px; }
 .page-hero.compact-hero { padding-bottom: 62px; }
}
@media (max-width: 980px) {
 .outcome-grid,
 .trust-grid,
 .risk-grid { grid-template-columns: 1fr; }
 .outcome-grid div { min-height: auto; padding: 18px; }
 .capability-jump { margin-top: 0; }
}
@media (max-width: 760px) {
 .header-inner { min-height: 72px; }
 .brand-subtitle { max-width: 218px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
 .hero { padding-top: 66px; }
 .hero-actions .button { width: 100%; }
 .outcome-strip { margin-top: -4px; }
 .trust-band { padding-block: 22px; }
 .capability-jump { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 8px; scrollbar-width: thin; }
 .capability-jump a { flex: 0 0 auto; }
 .privacy-panel { padding: 18px; border-radius: 20px; }
}
@media (max-width: 420px) {
 .container { width: min(var(--max), calc(100% - 28px)); }
 .brand img { width: 40px; height: 40px; }
 .brand-name { font-size: .96rem; }
 .brand-subtitle { font-size: .68rem; max-width: 190px; }
 .nav-toggle { padding: .56rem .68rem; }
 .eyebrow { font-size: .73rem; white-space: normal; }
 .hero-signals div { padding: 12px; }
 .floating-card { position: relative; inset: auto; margin-top: 10px; }
 .hero-visual .floating-card-top,
 .hero-visual .floating-card-bottom { left: auto; right: auto; top: auto; bottom: auto; }
}
@media (prefers-reduced-motion: reduce) {
 *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .001ms !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; }
}
@media print {
 .site-header, .site-footer, .nav-toggle, .hero-visual, .button, .outcome-strip { display: none !important; }
 body { color: #111; background: #fff; }
 .container { width: 100%; }
 .card, .feature-card, .service-row, .content-card { box-shadow: none; border-color: #ccc; background: #fff; color: #111; }
}


/* v10 — final refinement pass */
.hero-copy { max-width: 760px; }
.proof-shelf { padding-top: 34px; padding-bottom: 28px; }
.shelf-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 14px;
}
.shelf-card {
 position: relative;
 overflow: hidden;
 border: 1px solid rgba(217,247,255,.13);
 border-radius: 24px;
 padding: 20px;
 background:
 linear-gradient(180deg, rgba(255,255,255,.052), rgba(255,255,255,.024)),
 rgba(10,24,41,.58);
 box-shadow: 0 14px 36px rgba(0,0,0,.18);
}
.shelf-card::before {
 content: "";
 position: absolute;
 inset: 0 0 auto 0;
 height: 3px;
 background: linear-gradient(90deg, var(--accent), var(--accent-2), var(--warning));
}
.shelf-card span,
.use-case-rail strong,
.form-intro strong {
 color: #b9fff1;
 font-size: .76rem;
 font-weight: 950;
 letter-spacing: .09em;
 text-transform: uppercase;
}
.shelf-card h3 { margin-top: 12px; margin-bottom: 9px; font-size: 1.18rem; }
.shelf-card p { margin: 0; color: #bed4e6; }
.use-case-rail {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 12px;
 margin: 0 0 26px;
}
.use-case-rail div {
 border: 1px solid rgba(217,247,255,.13);
 border-radius: 18px;
 padding: 16px;
 background: rgba(255,255,255,.036);
}
.use-case-rail span {
 display: block;
 margin-top: 7px;
 color: var(--muted);
 line-height: 1.42;
 font-size: .92rem;
}
.form-intro {
 display: grid;
 gap: 7px;
 margin-bottom: 18px;
 padding: 16px 18px;
 border: 1px solid rgba(77,230,196,.18);
 border-radius: 18px;
 background: linear-gradient(135deg, rgba(77,230,196,.075), rgba(50,183,255,.04));
}
.form-intro span { color: #c7dceb; }
@media (min-width: 981px) {
 .hero-premium h1 { max-width: 12.8ch; }
 .shelf-card { min-height: 168px; }
}
@media (max-width: 980px) {
 .shelf-grid,
 .use-case-rail { grid-template-columns: 1fr; }
 .proof-shelf { padding-top: 24px; }
}
@media (max-width: 760px) {
 .shelf-card { padding: 18px; border-radius: 20px; }
 .use-case-rail { gap: 10px; margin-bottom: 20px; }
 .use-case-rail div { padding: 15px; }
 .form-intro { padding: 15px; }
}


/* v11 — boardroom/F500-level polish */
.boardroom-band {
 position: relative;
 overflow: hidden;
 border-block: 1px solid rgba(217,247,255,.10);
 background:
 radial-gradient(circle at 18% 18%, rgba(255,209,102,.10), transparent 34%),
 radial-gradient(circle at 86% 22%, rgba(77,230,196,.10), transparent 32%),
 linear-gradient(180deg, rgba(255,255,255,.035), rgba(7,17,31,.08));
}
.boardroom-band::before {
 content: "";
 position: absolute;
 inset: 0;
 pointer-events: none;
 background-image: linear-gradient(rgba(217,247,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(217,247,255,.035) 1px, transparent 1px);
 background-size: 56px 56px;
 -webkit-mask-image: linear-gradient(90deg, transparent, #000 16%, #000 84%, transparent);
 mask-image: linear-gradient(90deg, transparent, #000 16%, #000 84%, transparent);
}
.boardroom-grid {
 position: relative;
 z-index: 1;
 display: grid;
 grid-template-columns: .92fr 1.08fr;
 gap: 28px;
 align-items: stretch;
}
.boardroom-cards {
 display: grid;
 grid-template-columns: 1fr;
 gap: 12px;
}
.boardroom-card,
.executive-card {
 border: 1px solid rgba(217,247,255,.14);
 border-radius: 22px;
 padding: 20px;
 background:
 linear-gradient(180deg, rgba(255,255,255,.058), rgba(255,255,255,.024)),
 rgba(7,17,31,.58);
 box-shadow: 0 20px 46px rgba(0,0,0,.18);
}
.boardroom-card span {
 display: inline-flex;
 color: #ffe5a3;
 font-size: .75rem;
 font-weight: 950;
 letter-spacing: .1em;
 text-transform: uppercase;
}
.boardroom-card h3 { margin: 10px 0 8px; font-size: 1.22rem; }
.boardroom-card p { margin: 0; color: #c5d9e9; }
.executive-standard { padding-top: 64px; }
.executive-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 14px;
}
.executive-card strong {
 display: block;
 color: #fff;
 font-size: 1.05rem;
 letter-spacing: -.02em;
}
.executive-card span {
 display: block;
 margin-top: 8px;
 color: var(--muted);
 line-height: 1.42;
}
.hero-premium .button-primary { box-shadow: 0 22px 44px rgba(77,230,196,.18), inset 0 1px 0 rgba(255,255,255,.42); }
@media (min-width: 981px) {
 .boardroom-cards { padding-top: 4px; }
 .boardroom-card:nth-child(2) { margin-left: 28px; }
 .boardroom-card:nth-child(3) { margin-left: 56px; }
}
@media (max-width: 980px) {
 .boardroom-grid,
 .executive-grid { grid-template-columns: 1fr; }
 .boardroom-band { padding-block: 54px; }
}
@media (max-width: 760px) {
 .boardroom-card,
 .executive-card { padding: 18px; border-radius: 20px; }
 .executive-standard { padding-top: 46px; }
 .hero-premium h1 { max-width: 100%; }
}


/* v12 — F500/M7 boardroom language polish */
.strategy-lens {
 position: relative;
 overflow: hidden;
}
.strategy-lens::after {
 content: "";
 position: absolute;
 inset: auto -10% -40% -10%;
 height: 220px;
 pointer-events: none;
 background: radial-gradient(circle at 50% 0%, rgba(255,209,102,.07), transparent 58%);
}
.strategy-lens .container { position: relative; z-index: 1; }
.executive-card { min-height: 156px; }
.executive-card strong { font-size: 1.08rem; }
@media (max-width: 760px) {
 .strategy-lens .section-header h2 { font-size: clamp(1.9rem, 10vw, 2.5rem); }
 .executive-card { min-height: auto; }
}


/* v15 — cross-platform rendering polish for Windows laptops, iPhone, Android, Edge, Chrome, Firefox, and Safari/WebKit */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
 .site-header,
 .floating-card,
 .map-node {
  background: rgba(6, 17, 31, .98);
 }
}

@supports not (text-wrap: balance) {
 h1, h2, h3 { overflow-wrap: break-word; }
}

@media (min-width: 1181px) and (max-width: 1440px) {
 .container { width: min(1160px, calc(100% - 56px)); }
 .hero { padding-block: 78px 64px; }
 .hero-grid { gap: 44px; grid-template-columns: minmax(0, 1.06fr) minmax(330px, .82fr); }
 .hero-premium h1 { font-size: clamp(3.25rem, 5.25vw, 4.95rem); }
 .hero-copy { font-size: 1.07rem; }
 .visual-card { border-radius: 32px; }
}

@media (min-width: 981px) and (max-width: 1180px) {
 .container { width: min(1060px, calc(100% - 44px)); }
 .header-inner { gap: 18px; }
 .nav a { padding-inline: .68rem; font-size: .9rem; }
 .hero-grid { grid-template-columns: minmax(0, 1fr) minmax(300px, .78fr); gap: 34px; }
 .hero-premium h1 { font-size: clamp(3rem, 5.4vw, 4.35rem); }
 .hero-copy { font-size: 1.02rem; }
 .floating-card-top { right: -8px; }
 .floating-card-bottom { left: -8px; }
}

@media (min-width: 761px) and (max-width: 980px) {
 .site-header { position: sticky; }
 .hero-premium h1,
 .page-hero h1 { max-width: 15ch; }
 .hero-copy { max-width: 760px; }
 .hero-visual { width: min(100%, 560px); }
 .floating-card-top,
 .floating-card-bottom { right: 18px; left: auto; }
 .floating-card-bottom { bottom: 18px; }
 .floating-card-top { top: 18px; }
}

@media (max-width: 760px) {
 body { background-attachment: scroll; }
 .site-header { -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
 .hero-premium h1,
 .page-hero h1 { max-width: 100%; letter-spacing: -.05em; }
 .hero-copy,
 .page-copy { max-width: 100%; }
 .content-card p,
 .card p,
 .feature-card p,
 .engagement-card p,
 .process-step p,
 .service-row p,
 .footer-text { overflow-wrap: anywhere; }
 .proof-strip { overflow: hidden; }
 .button { touch-action: manipulation; }
}

@media (max-width: 480px) {
 .brand-name { max-width: 210px; overflow: hidden; text-overflow: ellipsis; }
 .hero { padding-top: 46px; }
 .hero-premium h1 { font-size: clamp(2.25rem, 10.8vw, 3.35rem); }
 .hero-copy { line-height: 1.55; }
 .page-hero h1 { font-size: clamp(2rem, 10vw, 3rem); }
 .section { padding-block: 54px; }
 .proof-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .proof-grid span { min-width: 0; overflow-wrap: anywhere; }
 .footer-text { max-width: 100%; }
}

@media (max-width: 370px) {
 .brand-name { max-width: 168px; }
 .container { width: min(var(--max), calc(100% - 22px)); }
 .hero-premium h1 { font-size: 2.12rem; }
 .button { padding-inline: .92rem; }
 .proof-grid { grid-template-columns: 1fr; }
}

@media screen and (forced-colors: active) {
 .button-primary,
 .nav .nav-cta { border: 1px solid ButtonText; }
 .gradient-text { color: CanvasText; background: none; }
 .card,
 .feature-card,
 .service-row,
 .content-card,
 .contact-card { border-color: CanvasText; }
}
