:root {
  --bg: #f3f0e8;
  --paper: #fffaf0;
  --paper-strong: #fff4dc;
  --ink: #191713;
  --muted: #6d675d;
  --line: rgba(25, 23, 19, .13);
  --orange: #ff681e;
  --orange-dark: #d94c0b;
  --yellow: #ffd452;
  --lime: #E2F54B;
  --green: #16835f;
  --radius-lg: 36px;
  --radius-md: 24px;
  --shadow: 0 24px 70px rgba(39, 32, 20, .12);
  --max: 1200px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background:
    radial-gradient(circle at 8% 5%, rgba(255, 212, 82, .26), transparent 26rem),
    radial-gradient(circle at 96% 1%, rgba(255, 104, 30, .16), transparent 30rem),
    var(--bg);
  font-size: 16px;
  line-height: 1.45;
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
.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; }
.section-shell { width: min(var(--max), calc(100% - 40px)); margin-inline: auto; }
.section-pad { padding: clamp(82px, 10vw, 148px) 0; }
.site-header {
  position: fixed; z-index: 50; top: 16px; left: 50%; transform: translateX(-50%);
  width: min(var(--max), calc(100% - 32px)); min-height: 68px; padding: 10px 12px 10px 22px;
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px;
  border: 1px solid rgba(25,23,19,.1); border-radius: 22px;
  background: rgba(255,250,240,.8); backdrop-filter: blur(18px); transition: box-shadow .25s, background .25s;
}
.site-header.is-scrolled { background: rgba(255,250,240,.94); box-shadow: 0 10px 40px rgba(31,27,20,.1); }
.brand { width: fit-content; font-size: 27px; line-height: 1; font-weight: 900; letter-spacing: -.07em; }
.brand span, mark { color: var(--orange); }
.main-nav { display: flex; align-items: center; gap: 30px; color: #4d4941; font-size: 14px; font-weight: 750; }
.main-nav a { transition: color .2s; }
.main-nav a:hover { color: var(--orange); }
.header-cta { justify-self: end; display: flex; align-items: center; gap: 18px; padding: 14px 18px; border-radius: 14px; background: var(--ink); color: #fff; font-size: 14px; font-weight: 800; transition: transform .2s, background .2s; }
.header-cta:hover { background: var(--orange); transform: translateY(-2px); }
.menu-toggle { display: none; }
.hero { min-height: 780px; padding-top: 146px; padding-bottom: 82px; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(420px, .85fr); gap: clamp(40px, 7vw, 88px); align-items: start; }
.eyebrow { margin: 0 0 22px; display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: 12px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow > span { width: 23px; height: 2px; background: var(--orange); }
.hero h1 { max-width: 760px; margin: 0; font-size: clamp(50px, 5.15vw, 70px); line-height: .96; letter-spacing: -.065em; }
h1 em, h2 em { color: var(--muted); font-style: normal; font-weight: 560; }
.hero h1 em { display: block; margin-top: .16em; }
.hero-nowrap { white-space: normal; }
.hero-lead { max-width: 690px; margin: 30px 0 0; color: var(--muted); font-size: clamp(18px, 1.75vw, 22px); line-height: 1.5; }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.button { min-height: 58px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; gap: 24px; border: 1px solid transparent; border-radius: 17px; font-weight: 850; transition: transform .2s, box-shadow .2s, background .2s; }
.button:hover { transform: translateY(-3px); }
.button-primary { color: #fff; background: var(--orange); box-shadow: 0 14px 30px rgba(255,104,30,.24); }
.button-primary:hover { background: var(--orange-dark); box-shadow: 0 18px 34px rgba(255,104,30,.3); }
.button-secondary { background: rgba(255,250,240,.6); border-color: var(--line); }
.button-secondary:hover { background: #fff; }
.hero-proof { margin-top: 38px; display: flex; align-items: center; gap: 13px; color: var(--muted); font-size: 12px; font-weight: 750; text-transform: uppercase; letter-spacing: .06em; }
.hero-proof i { width: 4px; height: 4px; border-radius: 50%; background: var(--orange); }
.hero-system { min-width: 0; margin-top: 2px; padding: 18px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: rgba(255,250,240,.68); box-shadow: var(--shadow); transform: rotate(1.25deg); }
.system-topline { padding: 4px 5px 16px; display: flex; justify-content: space-between; color: var(--muted); font-size: 12px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.live { display: flex; align-items: center; gap: 7px; color: var(--green); }
.live i { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 5px rgba(22,131,95,.1); }
.system-core { position: relative; height: 420px; overflow: hidden; border-radius: 25px; background: var(--ink); }
.system-core::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size: 34px 34px; mask-image: radial-gradient(circle, #000, transparent 80%); }
.orbit { position: absolute; top: 50%; left: 50%; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; transform: translate(-50%,-50%); }
.orbit-one { width: 265px; height: 265px; animation: heroOrbitPulse 5.8s ease-in-out infinite; }
.orbit-two { width: 390px; height: 390px; border-style: dashed; animation: spin 30s linear infinite; }
.core-mark { position: absolute; z-index: 2; top: 50%; left: 50%; width: 126px; height: 126px; display: grid; place-content: center; text-align: center; border-radius: 50%; background: var(--orange); color: #fff; transform: translate(-50%,-50%); box-shadow: 0 0 0 18px rgba(226,245,75,.28), 0 0 42px 24px rgba(226,245,75,.18), 0 0 88px 34px rgba(255,212,82,.12); animation: heroCoreGlow 5.8s ease-in-out infinite; }
.core-mark::before,.core-mark::after { content: ""; position: absolute; inset: -20px; z-index: 0; border-radius: inherit; border: 1px solid rgba(226,245,75,.24); opacity: .55; transform: scale(.96); animation: heroHaloPulse 5.8s ease-in-out infinite; }
.core-mark::after { inset: -39px; border-color: rgba(255,212,82,.16); opacity: .35; animation-delay: -2.9s; }
.core-mark span { font-size: 42px; line-height: 1; font-weight: 950; letter-spacing: -.08em; }
.core-mark small { margin-top: 5px; font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.system-node { position: absolute; z-index: 3; min-width: 205px; padding: 13px; display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 10px; border: 1px solid rgba(255,255,255,.13); border-radius: 15px; background: rgba(44,41,36,.9); color: #fff; box-shadow: 0 12px 24px rgba(0,0,0,.2); }
.node-leads { top: 36px; left: 22px; }.node-agent { top: 80px; right: 18px; }.node-sales { bottom: 36px; left: 45px; }
.node-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; background: rgba(255,255,255,.09); color: var(--orange); font-size: 20px; }
.node-leads .node-icon { color: var(--lime); }
.system-node div { display: grid; }.system-node small { color: #8f8a80; font-size: 8px; letter-spacing: .11em; }.system-node strong { font-size: 12px; }.system-node b { color: var(--lime); font-size: 12px; }
.system-stats { padding-top: 14px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.system-stats div { padding: 13px; border-radius: 15px; background: rgba(25,23,19,.045); display: grid; gap: 4px; }
.system-stats small { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }.system-stats strong { font-size: 15px; }.status-text { color: var(--green); }
@keyframes spin { to { transform: translate(-50%,-50%) rotate(360deg); } }
@keyframes heroCoreGlow { 0%,100% { box-shadow: 0 0 0 17px rgba(226,245,75,.24), 0 0 38px 22px rgba(226,245,75,.16), 0 0 78px 30px rgba(255,212,82,.1); } 50% { box-shadow: 0 0 0 22px rgba(226,245,75,.31), 0 0 52px 29px rgba(226,245,75,.22), 0 0 98px 40px rgba(255,212,82,.14); } }
@keyframes heroHaloPulse { 0%,100% { opacity: .34; transform: scale(.96); } 50% { opacity: .62; transform: scale(1.04); } }
@keyframes heroOrbitPulse { 0%,100% { opacity: .72; transform: translate(-50%,-50%) scale(.985); } 50% { opacity: 1; transform: translate(-50%,-50%) scale(1.025); } }
.section-heading { max-width: 820px; margin-bottom: 48px; }
.section-heading h2 { margin: 0; font-size: clamp(42px, 6vw, 73px); line-height: .98; letter-spacing: -.06em; }
.section-heading h2 mark { padding: 0; background: none; }
.section-heading > p:last-child:not(.eyebrow) { max-width: 430px; margin: 18px 0 0; color: var(--muted); font-size: 18px; }
.split-heading { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(220px,.6fr); gap: 0 50px; align-items: end; max-width: none; }
.split-heading .eyebrow { grid-column: 1 / -1; }.split-heading > p:last-child { margin: 0; }
.problem { padding: clamp(54px, 6vw, 78px) 0; background: rgba(255,250,240,.4); border-block: 1px solid rgba(25,23,19,.08); }
.problem .section-heading { margin-bottom: 28px; align-items: end; }
.problem .eyebrow { margin-bottom: 14px; }
.problem .section-heading h2 { max-width: 700px; font-size: clamp(34px, 4.25vw, 52px); line-height: 1; }
.problem .section-heading > p:last-child:not(.eyebrow) { max-width: 350px; font-size: 16px; }
.problem-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
.problem-grid article { min-height: 142px; padding: 16px; display: grid; grid-template-columns: 1fr auto; align-content: space-between; gap: 20px 8px; border: 1px solid var(--line); border-radius: var(--radius-md); background: rgba(255,250,240,.62); transition: transform .3s, background .3s; }
.problem-grid article:hover { transform: translateY(-5px); background: #fffaf0; }.problem-grid article > span, .card-number { color: #9d978c; font-size: 11px; font-weight: 800; letter-spacing: .1em; }.mini-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--ink); color: #fff; font-size: 16px; }.mini-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }.problem-grid h3 { grid-column: 1 / -1; max-width: 180px; margin: 0; font-size: 16px; line-height: 1.1; letter-spacing: -.035em; }
.closing-statement { margin: 28px 0 0; padding-top: 18px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); font-size: clamp(24px,2.8vw,36px); font-weight: 850; letter-spacing: -.05em; }.closing-statement em { color: var(--orange); font-style: normal; }.closing-statement span { font-weight: 400; }
.service-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; }
.service-card { min-height: 410px; padding: clamp(25px,4vw,40px); display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto 1fr auto; gap: 30px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: rgba(255,250,240,.7); box-shadow: 0 12px 36px rgba(36,30,19,.045); transition: transform .3s, box-shadow .3s; }
.service-card:hover { transform: translateY(-7px); box-shadow: var(--shadow); }.service-card-featured { background: var(--paper-strong); }.service-icon { width: 65px; height: 65px; display: grid; place-items: center; border-radius: 20px; background: var(--orange); color: #fff; font-size: 29px; box-shadow: 0 12px 24px rgba(255,104,30,.17); }.service-card > div:nth-child(3) { grid-column: 1 / -1; align-self: end; }.service-card h3 { margin: 0 0 13px; font-size: clamp(29px,3vw,42px); line-height: 1; letter-spacing: -.05em; }.service-card p { max-width: 470px; margin: 0; color: var(--muted); font-size: 17px; }.card-link { grid-column: 1 / -1; padding-top: 20px; display: flex; justify-content: space-between; border-top: 1px solid var(--line); font-weight: 850; }.card-link b { color: var(--orange); font-size: 20px; }
.systems { padding-top: 60px; }.section-heading-wide { max-width: none; }.showcase-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 16px; }.showcase { position: relative; min-height: 520px; overflow: hidden; border-radius: var(--radius-lg); }.showcase-copy { position: relative; z-index: 2; height: 100%; padding: clamp(30px,5vw,54px); display: flex; flex-direction: column; align-items: flex-start; }.showcase-label { margin: 0 0 auto; font-size: 11px; font-weight: 850; text-transform: uppercase; letter-spacing: .13em; opacity: .65; }.showcase h3 { margin: 55px 0 18px; font-size: clamp(50px,6vw,78px); line-height: .84; letter-spacing: -.07em; }.showcase p:not(.showcase-label) { max-width: 400px; margin: 0 0 28px; font-size: 17px; opacity: .72; }.showcase-funnels { grid-column: 1 / -1; min-height: 570px; background: var(--ink); color: #fff; }.showcase-funnels .showcase-copy { width: 48%; }.button-light { margin-top: auto; background: #fff; color: var(--ink); }.button-dark { margin-top: auto; background: var(--ink); color: #fff; }.funnel-visual { position: absolute; right: 5%; top: 50%; width: 48%; padding: 30px; display: flex; align-items: center; gap: 12px; border: 1px solid rgba(255,255,255,.12); border-radius: 28px; background: rgba(255,255,255,.06); transform: translateY(-50%) rotate(-2deg); }.funnel-visual div { flex: 1; min-height: 150px; padding: 20px 14px; display: grid; align-content: center; gap: 8px; text-align: center; border-radius: 20px; background: rgba(255,255,255,.08); }.funnel-visual small { color: #aaa49a; font-size: 9px; letter-spacing: .1em; }.funnel-visual strong { font-size: clamp(22px,3vw,37px); }.funnel-visual .accent-step { background: var(--orange); }.funnel-visual .accent-step small { color: #fff; }.showcase-insitee { background: var(--orange); color: #fff; }.showcase-insitee h3 span { color: var(--ink); }.insitee-title { margin: 48px 0 18px; display: flex; align-items: center; gap: 15px; }.insitee-title img { width: 54px; height: 54px; padding: 10px; border-radius: 16px; background: #fffaf0; object-fit: contain; box-shadow: 0 10px 24px rgba(82,25,0,.18); }.insitee-title h3 { margin: 0; }.showcase-micro { background: var(--lime); }.showcase-micro .showcase-label { color: rgba(25,23,19,.78); opacity: 1; }.chat-visual { position: absolute; z-index: 1; right: -30px; bottom: -40px; width: 56%; min-width: 275px; padding: 20px; border: 7px solid var(--ink); border-radius: 30px 30px 0 0; background: #fffaf0; color: var(--ink); transform: rotate(3deg); box-shadow: 0 20px 50px rgba(82,25,0,.25); }.chat-head { padding-bottom: 14px; display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); font-size: 12px; }.chat-head i { display: inline-block; width: 8px; height: 8px; margin-right: 5px; border-radius: 50%; background: var(--green); }.chat-head small { color: var(--green); font-size: 8px; }.bubble { width: 85%; margin-top: 12px; padding: 11px; border-radius: 12px; background: #eae6de; font-size: 10px; }.bubble-user { margin-left: auto; background: var(--orange); color: #fff; }.capture-chip { margin-top: 13px; padding: 9px; border-radius: 10px; background: rgba(22,131,95,.1); color: var(--green); font-size: 9px; font-weight: 800; }.showcase-micro .showcase-copy { width: 58%; }.showcase-micro .button-dark { min-width: 190px; justify-content: center; white-space: nowrap; }.micro-visual { position: absolute; z-index: 1; right: -18px; bottom: 30px; width: 34%; display: grid; gap: 8px; transform: rotate(-3deg); }.micro-visual span { padding: 16px; border: 1px solid rgba(25,23,19,.16); border-radius: 15px; background: rgba(255,250,240,.66); color: var(--ink); font-size: 12px; font-weight: 850; box-shadow: 0 8px 18px rgba(92,108,0,.12), inset 0 0 0 1px rgba(226,245,75,.34); }
.why { padding-inline: 20px; }.why-shell { padding: clamp(45px,7vw,84px); border-radius: 45px; background: var(--ink); color: #fff; }.why .section-heading { max-width: 890px; }.eyebrow.light { color: #aaa49a; }.shift .eyebrow.light { color: #E2F54B; text-shadow: 0 1px 2px rgba(58, 23, 8, .55); }.shift .eyebrow.light > span { background: #E2F54B; box-shadow: 0 1px 2px rgba(58, 23, 8, .35); }.why h2 em { color: var(--orange); }.pillars { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }.pillars article { min-height: 230px; padding: 22px; display: grid; grid-template-columns: 1fr auto; align-content: space-between; border: 1px solid rgba(255,255,255,.13); border-radius: var(--radius-md); background: rgba(255,255,255,.055); }.pillars span { color: #88837b; font-size: 10px; }.pillars article > div { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 50%; background: var(--orange); font-size: 20px; }.pillars h3 { grid-column: 1/-1; margin: 70px 0 0; font-size: clamp(23px,2.3vw,31px); letter-spacing: -.04em; }.why-note { margin: 45px 0 0 auto; max-width: 690px; color: #aaa49a; font-size: clamp(18px,2vw,24px); line-height: 1.45; }.why-note strong { color: #fff; }
.shift { padding-inline: 20px; }.shift-card { position: relative; min-height: 590px; padding: clamp(50px,8vw,94px); overflow: hidden; display: grid; grid-template-columns: 1.05fr .65fr; align-items: end; gap: 60px; border-radius: 45px; background: var(--orange); color: #fff; }.shift-card::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.1) 1px, transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px); background-size: 60px 60px; mask-image: linear-gradient(to bottom, #000, transparent 80%); }.shift-copy,.shift-text { position: relative; z-index: 2; }.shift h2 { margin: 0; font-size: clamp(54px,7vw,88px); line-height: .9; letter-spacing: -.07em; }.shift-text { font-size: 18px; }.shift-text p { opacity: .85; }.shift-text .shift-lead { font-size: clamp(25px,3vw,36px); font-weight: 850; letter-spacing: -.04em; opacity: 1; }.shift-orb { position: absolute; top: 34px; right: 5%; width: 300px; height: 300px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; opacity: .72; }.shift-orb::before,.shift-orb::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.2); border-radius:50%; }.shift-orb::before { inset: 35px; }.shift-orb::after { inset: 80px; }.shift-orb span { font-size: 58px; font-weight: 950; letter-spacing: -.08em; }
.final-cta { padding-top: 50px; }.final-card { padding: clamp(45px,8vw,100px); text-align: center; border: 1px solid var(--line); border-radius: 45px; background: var(--paper-strong); box-shadow: var(--shadow); }.final-card .eyebrow { justify-content: center; }.final-card h2 { margin: 0; font-size: clamp(51px,7vw,92px); line-height: .9; letter-spacing: -.07em; }.final-card h2 em { color: var(--orange); }.final-card > p:not(.eyebrow) { max-width: 690px; margin: 28px auto 34px; color: var(--muted); font-size: 19px; }.button-large { min-height: 66px; padding-inline: 28px; }
.site-footer { width: min(var(--max), calc(100% - 40px)); margin: 0 auto; padding: 55px 0 30px; display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 40px; border-top: 1px solid var(--line); }.site-footer p { margin: 15px 0 0; color: var(--muted); }.footer-links,.footer-contact { display: grid; align-content: start; gap: 12px; font-size: 14px; font-weight: 750; }.footer-contact { justify-self: end; text-align: right; }.footer-bottom { grid-column:1/-1; margin-top: 30px; padding-top: 20px; display: flex; justify-content: space-between; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; }
.problem-grid article,.service-card,.showcase,.node-workflow,.pillars article { transition: opacity .6s, transform .6s, box-shadow .3s, background .3s; }.is-visible { opacity: 1 !important; transform: translateY(0) !important; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *,*::before,*::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }.problem-grid article,.service-card,.showcase,.node-workflow,.pillars article { opacity:1; transform:none; } }
@media (max-width: 1000px) {
  .hero { grid-template-columns: 1fr; padding-top: 150px; }.hero-copy { max-width: 860px; }.hero-system { width: min(620px,100%); margin: auto; }.problem-grid { grid-template-columns: repeat(3,1fr); }.showcase-grid { grid-template-columns:1fr; }.showcase-funnels { grid-column:auto; }.showcase-funnels .showcase-copy { width:55%; }.pillars { grid-template-columns:repeat(2,1fr); }.shift-card { grid-template-columns:1fr; align-items:end; }.shift-copy { align-self:end; }.shift-text { max-width:580px; }
}
@media (max-width: 820px) {
  .site-header { grid-template-columns:1fr auto; }.header-cta { display:none; }.menu-toggle { justify-self:end; width:44px; height:44px; display:grid; place-content:center; gap:6px; border:0; border-radius:13px; background:var(--ink); }.menu-toggle i { width:19px; height:2px; background:#fff; transition:transform .2s; }.menu-toggle[aria-expanded="true"] i:first-of-type { transform:translateY(4px) rotate(45deg); }.menu-toggle[aria-expanded="true"] i:last-of-type { transform:translateY(-4px) rotate(-45deg); }.main-nav { position:absolute; top:76px; left:0; width:100%; padding:18px; display:none; align-items:stretch; flex-direction:column; gap:0; border:1px solid var(--line); border-radius:20px; background:var(--paper); box-shadow:var(--shadow); }.main-nav.is-open { display:flex; }.main-nav a { padding:14px; border-bottom:1px solid var(--line); }.main-nav a:last-child { border:0; }.split-heading { grid-template-columns:1fr; }.split-heading > p:last-child { margin-top:20px; }.showcase-funnels .showcase-copy { width:100%; padding-bottom:280px; }.funnel-visual { top:auto; bottom:35px; right:5%; width:90%; transform:rotate(-1deg); }.showcase { min-height:600px; }.showcase-insitee .showcase-copy { padding-bottom:230px; }.showcase-micro .showcase-copy { width:100%; padding-bottom:250px; }.chat-visual { width:62%; }.micro-visual { right:-18px; bottom:128px; width:54%; grid-template-columns:1fr 1fr; }.shift-card { min-height:650px; }.site-footer { grid-template-columns:1fr 1fr; }.site-footer > div:first-child { grid-column:1/-1; }.footer-contact { justify-self:end; }
}
@media (max-width: 600px) {
  .section-shell { width:min(var(--max),calc(100% - 24px)); }.section-pad { padding:76px 0; }.site-header { top:10px; width:calc(100% - 20px); min-height:60px; padding:8px 9px 8px 17px; }.brand { font-size:24px; }.hero { min-height:auto; padding-top:120px; padding-bottom:70px; }.hero h1 { font-size:clamp(40px,10.8vw,52px); }.hero-nowrap { white-space:nowrap; }.hero-system { display:none; }.hero-lead { font-size:17px; }.button-row { flex-direction:column; }.button-row .button { width:100%; }.hero-system { padding:11px; border-radius:27px; transform:none; }.system-core { height:390px; }.orbit-two { width:335px;height:335px; }.orbit-one { width:230px;height:230px; }.core-mark { width:105px;height:105px; }.system-node { min-width:170px; padding:10px; grid-template-columns:32px 1fr auto; }.node-icon { width:32px;height:32px; }.node-leads { top:25px;left:13px; }.node-agent { top:94px;right:10px; }.node-sales { bottom:30px;left:18px; }.system-stats div { padding:10px 7px; }.system-stats strong { font-size:12px; }.section-heading { margin-bottom:32px; }.section-heading h2 { font-size:clamp(39px,12vw,58px); }.problem { padding:52px 0; }.problem .section-heading { margin-bottom:24px; }.problem .section-heading h2 { font-size:clamp(34px,10vw,46px); }.problem-grid { grid-template-columns:repeat(2,1fr); }.service-grid { grid-template-columns:1fr; }.problem-grid article { min-height:132px; }.closing-statement { align-items:flex-end; }.service-card { min-height:360px; }.showcase { min-height:590px; }.showcase h3 { font-size:58px; }.showcase-funnels .showcase-copy { padding-bottom:275px; }.funnel-visual { padding:13px; gap:5px; }.funnel-visual div { min-height:120px; padding:10px 5px; }.funnel-visual > span { font-size:12px; }.funnel-visual strong { font-size:20px; }.chat-visual { right:-8px; width:76%; }.showcase-micro .showcase-copy { padding-bottom:275px; }.micro-visual { right:-12px; bottom:154px; width:calc(100% - 36px); grid-template-columns:1fr 1fr; transform:rotate(-2deg); }.micro-visual span { padding:13px; }.shift-orb { top:28px; right:18px; width:250px; height:250px; }.shift-orb span { font-size:50px; }.why,.shift { padding-inline:12px; }.why-shell,.shift-card,.final-card { border-radius:30px; }.why-shell { padding:42px 22px; }.pillars { grid-template-columns:1fr 1fr; }.pillars article { min-height:170px; padding:16px; }.pillars h3 { margin-top:42px; font-size:20px; }.why-note br { display:none; }.shift-card { min-height:670px; padding:42px 24px; }.shift h2 { font-size:54px; }.final-card { padding:55px 20px; }.final-card h2 { font-size:50px; }.site-footer { grid-template-columns:1fr; }.site-footer > div:first-child { grid-column:auto; }.footer-contact { justify-self:start; text-align:left; }.footer-bottom { grid-column:auto; }
}

/* Homepage brand marks */
.brand { width: 42px; height: 36px; display: inline-flex; align-items: center; justify-content: center; }
.brand img { display: block; width: 36px; height: 31px; object-fit: contain; }
.core-mark img { position: relative; z-index: 1; display: block; width: 61px; height: auto; max-height: 58px; object-fit: contain; }

/* Connected node-based workflow canvas */
.workflow-lab { padding: clamp(22px, 4vw, 42px); overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius-lg); background: rgba(255, 250, 240, .72); box-shadow: 0 20px 55px rgba(39, 32, 20, .07); }
.node-workflow-list { display: grid; gap: 12px; }
.node-workflow { padding: 18px; display: grid; grid-template-columns: 128px minmax(0, 1fr); align-items: center; gap: 20px; border: 1px solid rgba(25, 23, 19, .1); border-radius: 22px; background-color: rgba(255, 255, 255, .48); background-image: radial-gradient(rgba(25, 23, 19, .11) .7px, transparent .7px); background-size: 15px 15px; }
.node-workflow-meta { display: grid; align-content: center; gap: 4px; }
.node-workflow-meta > span { width: 32px; height: 32px; margin-bottom: 8px; display: grid; place-items: center; border-radius: 10px; background: var(--ink); color: #fff; font-size: 9px; font-weight: 850; letter-spacing: .08em; }
.node-workflow-meta strong { font-size: 13px; }
.node-workflow-meta small { color: var(--muted); font-size: 10px; }
.node-flow { min-width: 0; display: grid; grid-template-columns: minmax(100px, 1fr) 24px minmax(100px, 1fr) 24px minmax(100px, 1fr) 24px minmax(100px, 1fr) 24px minmax(100px, 1fr); align-items: center; }
.flow-node { position: relative; z-index: 2; min-width: 0; min-height: 76px; padding: 14px 13px; display: grid; align-content: center; gap: 5px; border: 1px solid rgba(25, 23, 19, .15); border-radius: 14px; background: #fffaf0; box-shadow: 0 8px 20px rgba(39, 32, 20, .08); }
.flow-node::before, .flow-node::after { content: ""; position: absolute; top: 50%; width: 8px; height: 8px; border: 2px solid #fffaf0; border-radius: 50%; background: #a8a198; transform: translateY(-50%); }
.flow-node::before { left: -5px; }
.flow-node::after { right: -5px; }
.flow-node:first-child::before, .flow-node:last-child::after { display: none; }
.flow-node small { color: var(--orange-dark); font-size: 8px; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.flow-node strong { overflow-wrap: anywhere; font-size: 11px; line-height: 1.18; }
.flow-node-trigger { border-color: rgba(255, 104, 30, .42); }
.flow-node-trigger::after, .flow-node-result::before { background: var(--orange); }
.flow-node-result { border-color: var(--orange); background: var(--orange); color: #fff; box-shadow: 0 10px 24px rgba(255, 104, 30, .22); }
.flow-node-result::before { border-color: var(--orange); }
.flow-node-result small { color: rgba(255, 255, 255, .72); }
.flow-connector { position: relative; z-index: 1; height: 2px; background: rgba(255, 104, 30, .58); }
.flow-connector::after { content: ""; position: absolute; top: 50%; right: 1px; width: 6px; height: 6px; border-top: 2px solid var(--orange); border-right: 2px solid var(--orange); transform: translateY(-50%) rotate(45deg); }

/* Lift the decorative AI orbit while keeping the AI letters inside the orange card. */
.shift-orb { top: -26px; }

@media (max-width: 1000px) {
  .node-workflow { grid-template-columns: 110px minmax(0, 1fr); gap: 14px; }
  .node-flow { grid-template-columns: minmax(82px, 1fr) 18px minmax(82px, 1fr) 18px minmax(82px, 1fr) 18px minmax(82px, 1fr) 18px minmax(82px, 1fr); }
  .flow-node { padding-inline: 9px; }
}

@media (max-width: 820px) {
  .node-workflow { grid-template-columns: 1fr; }
  .node-workflow-meta { grid-template-columns: auto 1fr; align-items: center; column-gap: 10px; }
  .node-workflow-meta > span { grid-row: 1 / 3; margin: 0; }
  .node-flow { width: 100%; grid-template-columns: 1fr; justify-items: stretch; }
  .flow-node { min-height: 66px; }
  .flow-node::before, .flow-node::after { top: auto; left: 50%; right: auto; transform: translateX(-50%); }
  .flow-node::before { top: -5px; }
  .flow-node::after { bottom: -5px; }
  .flow-connector { width: 2px; height: 24px; justify-self: center; }
  .flow-connector::after { top: auto; right: auto; bottom: 1px; left: 50%; transform: translateX(-50%) rotate(135deg); }
}

@media (max-width: 600px) {
  .brand img { width: 32px; height: 28px; }
  .core-mark img { width: 51px; max-height: 49px; }
  .workflow-lab { padding: 16px; border-radius: 26px; }
  .node-workflow { padding: 14px; border-radius: 18px; }
  .shift-orb { top: -72px; right: -24px; width: 220px; height: 220px; opacity: .56; }
  .shift-orb span { font-size: 44px; }
}

/* Homepage consultation modal */
.header-cta,
.button { border: 0; cursor: pointer; }
.footer-brand { display: flex; flex-direction: column; align-items: flex-start; }
.footer-brand .brand { flex: 0 0 auto; }
.footer-copyright { color: var(--muted); font-size: 12px; }

body.modal-open { overflow: hidden; }
.consultation-modal[hidden] { display: none; }
.consultation-modal { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 20px; }
.consultation-modal__backdrop { position: absolute; inset: 0; background: rgba(24, 22, 18, .68); backdrop-filter: blur(8px); }
.consultation-dialog {
  position: relative;
  z-index: 1;
  width: min(1080px, 100%);
  max-height: calc(100dvh - 40px);
  overflow-y: auto;
  display: grid;
  grid-template-columns: minmax(250px, .7fr) minmax(560px, 1.3fr);
  align-items: start;
  gap: clamp(28px, 4vw, 48px);
  padding: clamp(28px, 4vw, 44px);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: var(--paper);
  box-shadow: 0 28px 90px rgba(0, 0, 0, .28);
}
.consultation-dialog:focus { outline: none; }
.consultation-dialog__close {
  position: absolute;
  top: 14px;
  right: 16px;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: var(--ink);
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}
.consultation-dialog__close:hover { background: var(--paper-strong); }
.consultation-intro h2 { margin: 0; font-size: clamp(38px, 4.5vw, 58px); line-height: .96; letter-spacing: -.055em; }
.consultation-intro > p:last-child { margin: 24px 0 0; color: var(--muted); font-size: 16px; }
.consult-form { min-width: 0; display: grid; gap: 14px; }
.consult-form label:not(.privacy-consent) { min-width: 0; display: grid; gap: 6px; }
.consult-form .field-label { color: var(--muted); font-size: 12px; font-weight: 800; line-height: 1.2; letter-spacing: .01em; white-space: nowrap; }
.consult-form input,
.consult-form select {
  width: 100%;
  height: 52px;
  min-width: 0;
  min-height: 52px;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-size: 15px;
  outline: none;
}
.consult-form select { padding-right: 38px; text-overflow: ellipsis; }
.consult-form input:focus,
.consult-form select:focus { border-color: var(--orange); box-shadow: 0 0 0 4px rgba(255, 104, 30, .12); }
.consult-form input[aria-invalid="true"] { border-color: #b42318; }
.consult-form .field-error { color: #b42318; font-size: 13px; font-weight: 750; }
.consult-form .field-error[hidden] { display: none; }
.consult-form__schedule { display: grid; grid-template-columns: minmax(145px, .9fr) minmax(125px, .75fr) minmax(210px, 1.35fr); gap: 12px; }
.consult-form__phone { display: grid; grid-template-columns: minmax(150px, .72fr) minmax(240px, 1.28fr); gap: 12px; }
.consult-form .button { width: 100%; }
.privacy-consent { display: flex; align-items: flex-start; gap: 10px; width: fit-content; color: var(--muted); font-size: 13px; line-height: 1.4; cursor: pointer; }
.privacy-consent input { flex: 0 0 auto; width: 18px; min-height: 18px; height: 18px; margin: 1px 0 0; padding: 0; border-radius: 5px; accent-color: var(--orange); cursor: pointer; }
.privacy-consent a { color: var(--orange); font-weight: 850; text-decoration: underline; text-underline-offset: 3px; }
.privacy-consent a:hover { color: var(--orange-dark); }

@media (max-width: 980px) {
  .consultation-dialog { width: min(680px, 100%); grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .consultation-modal { padding: 10px; }
  .consultation-dialog { max-height: calc(100dvh - 20px); padding: 58px 18px 22px; border-radius: 24px; gap: 22px; }
  .consultation-intro h2 { font-size: 36px; }
  .consult-form__schedule,
  .consult-form__phone { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .consult-form .field-label { white-space: normal; }
}

/* Keep the mobile Micro Services showcase compact without changing desktop sizing. */
@media (max-width: 600px) {
  .showcase-micro { min-height: 500px; }
  .showcase-micro .showcase-copy { padding-bottom: 185px; }
  .showcase-micro .micro-visual { bottom: 50px; }
}

#ready-when-you-are { scroll-margin-top: 100px; }
.mobile-header-cta { display: none; }

@media (max-width: 820px) {
  .main-nav .mobile-header-cta {
    margin-top: 12px;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border: 0;
    border-radius: 14px;
    background: var(--ink);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    transition: transform .2s, background .2s;
  }
  .main-nav .mobile-header-cta:hover { background: var(--orange); transform: translateY(-2px); }
}
