:root {
  --ink:#111;
  --muted:#625f5a;
  --stone:#8b7d6b;
  --sand:#f3f0eb;
  --paper:#fff;
  --line:#ded8d0;
  font-family:Inter,system-ui,sans-serif;
  color:var(--ink);
  background:var(--paper)
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth
}
body {
  margin:0
}
.privacy-list {
  margin-top:.5rem;
  padding-left:1.4rem
}
.privacy-list li {
  padding:.3rem 0;
  line-height:1.55
}

.privacy-table{width:100%;border-collapse:collapse;font-size:.95rem}.privacy-table th,.privacy-table td{padding:.85rem;text-align:left;vertical-align:top;border:1px solid var(--line)}.privacy-table th{background:#f8fafc}@media(max-width:700px){.privacy-table{display:block;overflow-x:auto}}
.footer-legal-links {
  display:flex;
  flex-wrap:wrap;
  gap:.35rem 1rem;
  margin-top:.5rem
}
.footer-legal-links a {
  color:inherit;
  text-decoration:underline;
  text-underline-offset:.2em
}
.appbar {
  background:rgba(255,255,255,.94)!important;
  color:var(--ink)!important;
  border-bottom:1px solid var(--line);
  padding:0 5vw;
  backdrop-filter:blur(10px)
}
.brand {
  display:flex;
  flex-direction:column;
  line-height:1.1;
  color:inherit;
  text-decoration:none
}
.admin-brand-button {
  padding:0;
  border:0;
  background:transparent;
  font:inherit;
  text-align:left;
  cursor:pointer
}
.brand strong {
  font-family:"Playfair Display",serif;
  font-size:1.1rem
}
.brand span {
  font-size:.63rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
  margin-top:.25rem
}
.admin-link {
  opacity:.5
}
.main-navigation {
  display:flex;
  align-items:center
}
.mobile-menu-toggle {
  display:none!important
}
.mobile-navigation-shell {
  display:none!important
}
.mobile-navigation {
  display:none
}
.mobile-menu-backdrop {
  display:none
}
.mud-main-content {
  padding-top:0!important
}
main {
  min-height:78vh
}
.hero,.section {
  padding:clamp(4.5rem,9vw,9rem) max(5vw,1.25rem);
  max-width:1300px;
  margin:auto
}
.hero-editorial {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(230px,280px);
  gap:clamp(2rem,5vw,5rem);
  align-items:end;
  min-height:min(770px,calc(100vh - 64px))
}
.hero h1,h1,h2,h3 {
  font-family:"Playfair Display",serif
}
.hero h1 {
  font-size:clamp(3.2rem,6.6vw,6.6rem);
  letter-spacing:-.045em;
  line-height:.98;
  margin:.6rem 0 1.7rem;
  max-width:890px
}
.hero-lead {
  font-size:clamp(1.1rem,1.7vw,1.3rem);
  color:var(--muted);
  max-width:610px;
  line-height:1.7
}
.eyebrow {
  letter-spacing:.14em;
  color:var(--stone);
  font-size:.71rem;
  font-weight:700;
  margin:0 0 .75rem
}
.hero-actions {
  display:flex;
  gap:.65rem;
  align-items:center;
  flex-wrap:wrap;
  margin-top:2.25rem
}
.hero-note {
  background:var(--sand);
  padding:2rem;
  position:relative
}
.hero-note:before {
  content:"â€œ";
  font-family:"Playfair Display",serif;
  font-size:7rem;
  line-height:.4;
  color:var(--stone);
  position:absolute;
  right:1rem;
  top:2.5rem;
  opacity:.38
}
.quote {
  font-family:"Playfair Display",serif;
  font-size:1.55rem;
  line-height:1.25;
  position:relative
}
.note-line {
  height:1px;
  background:var(--stone);
  margin:2rem 0
}
.hero-note>p:last-child {
  font-size:.78rem;
  letter-spacing:.07em;
  text-transform:uppercase
}
.proof-band {
  background:var(--ink);
  color:#fff;
  padding:2rem max(5vw,1.25rem);
  display:flex;
  gap:.75rem;
  flex-wrap:wrap;
  justify-content:center;
  font-family:"Playfair Display",serif;
  font-size:clamp(1.2rem,2vw,1.7rem)
}
.proof-band p {
  margin:0;
  color:#d8d2ca
}
.section {
  border-top:1px solid var(--line)
}
.section h2 {
  font-size:clamp(2.2rem,4vw,4rem);
  letter-spacing:-.035em;
  line-height:1.04;
  margin:.25rem 0 2rem
}
.manifesto {
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:clamp(1rem,2vw,2rem)
}
.manifesto-copy {
  padding-top:1.2rem
}
.manifesto-copy p {
  font-size:1.15rem;
  color:var(--muted);
  line-height:1.75;
  margin-top:0
}
.section-heading {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.4rem;
  margin-bottom:2.8rem
}
.section-heading>p {
  max-width:620px;
  line-height:1.6;
  color:var(--muted);
  margin:0 0 0 .1rem
}
.offer-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(245px,1fr));
  border-top:1px solid var(--ink);
  border-left:1px solid var(--line)
}
.offer-card {
  padding:1.6rem;
  min-height:290px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  flex-direction:column;
  transition:background .2s ease
}
.offer-card:hover {
  background:var(--sand)
}
.card-index {
  font-size:.75rem;
  color:var(--stone);
  letter-spacing:.08em
}
.offer-card h3 {
  font-size:1.7rem;
  line-height:1.08;
  margin:2.5rem 0 1rem
}
.offer-card p {
  line-height:1.6;
  color:var(--muted);
  font-size:.95rem
}
.offer-card a {
  margin-top:auto;
  color:var(--ink);
  font-weight:600;
  text-decoration:none;
  border-bottom:1px solid var(--ink);
  padding-bottom:.35rem;
  display:flex;
  justify-content:space-between
}
.offer-card a span {
  color:var(--stone)
}
.empty-state {
  color:var(--muted)
}
.integration-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--ink);
  border-left:1px solid var(--line)
}
.integration-card {
  min-height:280px;
  padding:1.6rem;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  flex-direction:column;
  position:relative;
  background:#fff
}
.integration-card:before {
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:var(--accent)
}
.integration-logo {
  width:88px;
  height:52px;
  object-fit:contain;
  object-position:left center;
  margin:1.35rem 0 1.15rem
}
.integration-logo-pair {
  width:100%;
  min-height:126px;
  margin:1.35rem 0 1.15rem;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.65rem
}
.integration-logo-pair img {
  width:210px;
  max-width:100%;
  height:56px;
  object-fit:contain
}
.integration-logo-pair img:first-child {
  object-position:center
}
.integration-logo-pair img:last-child {
  width:170px;
  object-position:center
}
.integration-card h3 {
  font-size:1.45rem;
  margin:0 0 .75rem
}
.integration-card p {
  color:var(--muted);
  line-height:1.6;
  margin:0
}
.integration-availability {
  margin-top:auto;
  padding-top:1.25rem;
  font-size:.78rem;
  font-weight:700;
  text-transform:uppercase;
  color:var(--ink)
}
.email-page-header {
  padding-bottom:3rem
}
.email-page-header h1 {
  max-width:900px;
  margin:.5rem 0 1rem;
  font-size:clamp(2.5rem,6vw,5.4rem);
  line-height:1
}
.email-page-header>p:not(.eyebrow) {
  max-width:700px;
  color:var(--muted);
  line-height:1.65
}
.email-sequence {
  display:grid;
  gap:1.5rem;
  padding-top:0
}
.email-draft {
  border:1px solid var(--line);
  background:#fff;
  padding:clamp(1.25rem,3vw,2.4rem)
}
.email-draft header {
  border-bottom:1px solid var(--line);
  padding-bottom:1rem;
  margin-bottom:1.25rem
}
.email-draft header span,
.email-draft strong {
  display:block;
  font-size:.78rem;
  font-weight:700;
  text-transform:uppercase
}
.email-draft h2 {
  margin:.35rem 0 0;
  font-size:clamp(1.7rem,3vw,2.4rem)
}
.email-source {
  background:#f2f7fb;
  border-left:4px solid #2386bd;
  padding:1rem 1.15rem;
  margin-bottom:1.25rem
}
.email-source p,
.email-draft footer p {
  margin:.35rem 0 0
}
.email-meta-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
  margin-bottom:1.5rem
}
.email-meta-grid>div {
  border:1px solid var(--line);
  padding:1rem
}
.email-meta-grid ul {
  padding-left:1.15rem;
  margin:.65rem 0 0
}
.email-meta-grid li+li {
  margin-top:.45rem
}
.email-body {
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:1.25rem 0
}
.email-body p {
  white-space:pre-line;
  line-height:1.75
}
.email-draft footer {
  padding-top:1.25rem
}
.services-hero {
  min-height:calc(100vh - 64px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,430px);
  align-items:center;
  gap:clamp(2rem,7vw,7rem);
  padding:clamp(4rem,8vw,8rem) max(5vw,1.25rem);
  background:#f3f5f7
}
.services-hero-copy {
  max-width:920px
}
.services-hero h1 {
  font-size:clamp(3rem,6vw,6.4rem);
  line-height:.98;
  margin:.65rem 0 1.5rem
}
.services-hero-copy>p:not(.eyebrow) {
  max-width:720px;
  color:var(--muted);
  font-size:1.1rem;
  line-height:1.7
}
.services-hero-mark {
  display:flex;
  flex-direction:column;
  gap:clamp(1.25rem,2.5vw,2rem)
}
.services-hero-mark img {
  display:block;
  width:100%;
  aspect-ratio:1;
  object-fit:contain
}
.services-hero-note {
  background:#fff;
  border:1px solid var(--line);
  border-left:3px solid var(--sage);
  border-radius:14px;
  padding:1.5rem 1.6rem;
  box-shadow:0 12px 32px rgba(11,12,15,.06)
}
.services-hero-note .eyebrow {
  margin-bottom:.5rem
}
.services-hero-note p:not(.eyebrow) {
  margin:0;
  color:var(--ink);
  font-size:1.05rem;
  line-height:1.55
}
.services-visual-band {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  background:#0b0c0f;
  color:#fff
}
.services-visual-band figure {
  margin:0;
  border-right:1px solid rgba(255,255,255,.18)
}
.services-visual-band figure:last-child {
  border-right:0
}
.services-visual-band img {
  width:100%;
  aspect-ratio:4/3;
  display:block;
  object-fit:cover
}
.services-visual-band figcaption {
  padding:1rem 1.25rem;
  font-weight:600
}
.services-method-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--line);
  border-left:1px solid var(--line)
}
.services-method-grid article {
  min-height:270px;
  padding:1.5rem;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line)
}
.services-method-grid span {
  color:#2386bd;
  font-weight:700
}
.services-method-grid h3 {
  margin:2.5rem 0 .8rem;
  font-size:1.4rem
}
.services-method-grid p,
.capability-grid p {
  color:var(--muted);
  line-height:1.6
}
.crm-services {
  max-width:none;
  background:#eef3f6
}
.crm-services>.section-heading,
.crm-service-grid {
  max-width:1300px;
  margin-left:auto;
  margin-right:auto
}
.crm-service-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem
}
.crm-service-grid article {
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:1.5rem;
  padding:1.5rem;
  background:#fff;
  border:1px solid #d9e2e8
}
.crm-service-grid img {
  width:100%;
  height:90px;
  object-fit:contain
}
.crm-service-grid h3 {
  margin:.35rem 0 .8rem;
  font-size:1.55rem
}
.crm-service-grid ul {
  padding-left:1.2rem;
  line-height:1.7
}
.crm-service-grid a {
  color:var(--ink);
  font-weight:600
}
.capability-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid var(--ink)
}
.capability-grid article {
  padding:1.5rem 0;
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  column-gap:1.25rem
}
.capability-grid article:nth-child(odd) {
  padding-right:1.5rem
}
.capability-grid article:nth-child(even) {
  padding-left:1.5rem;
  border-left:1px solid var(--line)
}
.capability-grid span {
  grid-row:1/3;
  color:#2386bd;
  font-size:.78rem;
  font-weight:700;
  text-transform:uppercase
}
.capability-grid h3 {
  margin:0;
  font-size:1.25rem
}
.capability-grid p {
  margin:.45rem 0 0
}
.services-cta {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,420px);
  align-items:center;
  gap:clamp(2rem,7vw,7rem);
  padding:clamp(4rem,8vw,8rem) max(5vw,1.25rem);
  background:#0b0c0f;
  color:#fff
}
.services-cta h2 {
  max-width:850px;
  font-size:clamp(2.5rem,5vw,5rem);
  line-height:1;
  margin:.5rem 0 1.25rem
}
.services-cta>div>p:not(.eyebrow) {
  max-width:680px;
  color:#c8cdd5;
  line-height:1.7
}
.services-cta img {
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top
}
.client-name-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-bottom:2rem;
  border-top:1px solid var(--ink);
  border-left:1px solid var(--line)
}
.client-name-grid span {
  min-height:96px;
  padding:1rem;
  display:flex;
  align-items:center;
  font-weight:600;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line)
}
.process {
  background:var(--sand);
  max-width:none;
  padding-left:max(5vw,1.25rem);
  padding-right:max(5vw,1.25rem)
}
.process>h2 {
  max-width:850px
}
.process-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:0;
  border-top:1px solid var(--stone);
  margin-top:3rem
}
.process-grid article {
  padding:1.4rem 2rem 1.4rem 0;
  border-right:1px solid var(--line);
  margin-right:2rem
}
.process-grid article:last-child {
  border:0
}
.process-grid span {
  color:var(--stone);
  font-weight:700;
  font-size:.8rem
}
.process-grid h3 {
  font-size:1.45rem;
  margin:2.5rem 0 .8rem
}
.process-grid p {
  color:var(--muted);
  line-height:1.6
}
.two-columns {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4rem
}
.benefits {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:.8rem;
  padding:0;
  list-style:none
}
.benefits li:before {
  content:"â€” ";
  color:var(--stone)
}
.tags {
  display:flex;
  flex-wrap:wrap;
  gap:.6rem
}
.tags span {
  border:1px solid var(--line);
  padding:.45rem .75rem;
  border-radius:99px
}
.contact {
  max-width:780px
}
.contact .mud-input-control {
  margin-bottom:1rem
}
.contact .mud-input {
  background:#fff
}
footer {
    padding: 3.5rem 5vw;
    border-top: 1px solid var(--line);
    display: flex;
    gap: 7rem;
    justify-content: center;
    flex-wrap: wrap;
    background: var(--ink);
    color: #fff
}
footer strong {
  font-family:"Playfair Display",serif;
  font-size:1.4rem
}
footer p,footer span {
  color:#d8d2ca;
  line-height:1.5;
  margin:.5rem 0
}
footer a {
  display:block;
  color:#fff;
  margin-top:.5rem
}
.chat-widget {
  position:fixed;
  right:clamp(1rem,3vw,2rem);
  bottom:clamp(1rem,3vw,2rem);
  z-index:1200;
  display:grid;
  justify-items:end;
  gap:.8rem;
  pointer-events:none
}
.chat-widget > * {
  pointer-events:auto
}
.chat-panel {
  width:min(380px,calc(100vw - 2rem));
  background:#fff;
  border:1px solid rgba(11,12,15,.12);
  box-shadow:0 28px 90px rgba(7,15,28,.22);
  overflow:hidden
}
.chat-header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  padding:1rem 1rem .9rem;
  background:#0b0c0f;
  color:#fff
}
.chat-header span,
.chat-header strong {
  display:block
}
.chat-header span {
  color:#8fd8ff;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase
}
.chat-header strong {
  font-family:"Playfair Display",serif;
  font-size:1.25rem;
  line-height:1.1;
  margin-top:.15rem
}
.chat-body {
  display:grid;
  gap:.75rem;
  max-height:min(430px,58vh);
  overflow:auto;
  padding:1rem;
  background:linear-gradient(180deg,#f8fafc,#eef4f8)
}
.chat-message {
  max-width:92%;
  padding:.78rem .9rem;
  line-height:1.5;
  font-size:.94rem;
  box-shadow:0 10px 30px rgba(11,12,15,.08)
}
.chat-message.bot {
  justify-self:start;
  background:#fff;
  color:var(--ink);
  border:1px solid var(--line)
}
.chat-message.user {
  justify-self:end;
  background:#0b0c0f;
  color:#fff
}
.chat-quick-actions {
  display:grid;
  gap:.45rem;
  margin:.15rem 0
}
.chat-chip {
  width:100%;
  border:1px solid #d8e3ec;
  background:#fff;
  color:var(--ink);
  padding:.68rem .75rem;
  text-align:left;
  font:inherit;
  font-size:.9rem;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,transform .18s ease
}
.chat-chip:hover {
  background:#eaf6ff;
  border-color:#8fd8ff;
  transform:translateY(-1px)
}
.chat-footer {
  display:grid;
  grid-template-columns:minmax(180px, 1fr);
  justify-items:center;
  gap:.55rem;
  padding:.85rem;
  background:#fff;
  border-top:1px solid var(--line)
}
.chat-footer a {
  display:grid;
  place-items:center;
  width:min(100%, 220px);
  min-height:42px;
  padding:.55rem .7rem;
  text-align:center;
  text-decoration:none;
  font-weight:800;
  font-size:.84rem;
  line-height:1.2
}
.chat-primary {
  background:#0b0c0f;
  color:#fff
}
.chat-secondary {
  border:1px solid var(--line);
  color:var(--ink);
  background:#fff
}
.chat-toggle {
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  border:0;
  background:#0b0c0f;
  color:#fff;
  min-height:54px;
  padding:0 1rem;
  box-shadow:0 20px 60px rgba(7,15,28,.24);
  cursor:pointer;
  font:inherit;
  font-weight:800
}
.chat-widget.is-open .chat-toggle {
  width:54px;
  justify-content:center;
  padding:0
}
.chat-widget.is-open .chat-toggle span {
  display:none
}
.admin-login {
  max-width:430px;
  margin:12vh auto;
  padding:2rem;
  border:1px solid var(--line);
  background:#fff
}
.admin-login .mud-input-control {
  margin-bottom:1rem
}
.admin-header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:2rem
}
.editor {
  padding:2rem;
  margin-top:2rem
}
.editor .mud-input-control {
  margin-bottom:1rem
}
.software-shell {
  padding:clamp(2rem,5vw,4rem) max(5vw,1.25rem) 5rem;
  max-width:1440px;
  margin:auto
}
.admin-ai {
  width:min(1440px,calc(100% - 2.5rem));
  margin:0 auto!important;
  padding:clamp(2rem,5vw,4rem) 0 5rem!important;
  border-top:0
}
.admin-ai .software-header,
.admin-ai .admin-flow,
.admin-ai .landing-preview {
  width:100%
}
.software-header {
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:2rem;
  align-items:end;
  padding:2.5rem 0 2rem
}
.software-header h1 {
  font-size:clamp(2.7rem,5vw,5.8rem);
  line-height:1;
  margin:.35rem 0 1rem;
  max-width:860px
}
.software-header p {
  max-width:780px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.65
}
.status-panel {
  border:1px solid var(--line);
  padding:1.2rem;
  min-height:145px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:#fff
}
.status-panel span,.status-panel small,.dossier-grid span {
  color:var(--muted);
  font-size:.75rem;
  text-transform:uppercase;
  letter-spacing:.08em
}
.status-panel strong {
  font-family:"Playfair Display",serif;
  font-size:2rem;
  line-height:1
}
.workspace-grid {
  display:grid;
  grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);
  gap:1rem;
  align-items:start
}
.admin-flow {
  display:grid;
  gap:1rem
}
.work-panel,.landing-preview {
  border:1px solid var(--line);
  background:#fff;
  padding:1.25rem
}
.admin-step {
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:1rem;
  align-items:start
}
.step-marker {
  width:44px;
  height:44px;
  border:1px solid var(--ink);
  background:var(--ink);
  color:#fff;
  display:grid;
  place-items:center;
  font-weight:700;
  font-size:1.05rem
}
.step-body {
  min-width:0
}
.step-help {
  color:var(--muted);
  line-height:1.55;
  max-width:760px;
  margin:.55rem 0 0
}
.locked-step {
  background:#fbfaf8
}
.locked-step .step-marker {
  background:#fff;
  color:var(--muted);
  border-color:var(--line)
}
.panel-heading {
  margin-bottom:1.2rem
}
.panel-heading h2 {
  font-size:clamp(1.65rem,2.4vw,2.5rem);
  margin:.2rem 0 0;
  line-height:1.05
}
.analysis-actions {
  display:flex;
  gap:.65rem;
  flex-wrap:wrap;
  margin:1rem 0 1.35rem
}
.pipeline-list {
  display:grid;
  gap:.55rem
}
.pipeline-step {
  display:grid;
  grid-template-columns:42px 1fr;
  gap:.8rem;
  align-items:start;
  border:1px solid var(--line);
  padding:.75rem;
  background:var(--sand);
  text-align:left;
  color:var(--ink);
  cursor:pointer;
  width:100%;
  font:inherit
}
.pipeline-step:hover {
  border-color:var(--stone);
  background:#f8f5f0
}
.pipeline-step:disabled {
  cursor:default;
  opacity:.68
}
.pipeline-step.complete {
  background:#eef5ef;
  border-color:#b9d0bd
}
.pipeline-step span {
  font-weight:700;
  color:var(--stone)
}
.pipeline-step strong,.pipeline-step small {
  display:block
}
.pipeline-step small {
  color:var(--muted);
  margin-top:.2rem;
  line-height:1.4
}
.dossier-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.8rem
}
.dossier-grid article {
  border:1px solid var(--line);
  padding:1rem;
  min-height:170px;
  display:flex;
  flex-direction:column;
  gap:.65rem
}
.dossier-grid strong {
  font-family:"Playfair Display",serif;
  font-size:1.35rem;
  line-height:1.12
}
.dossier-grid p {
  margin:0;
  color:var(--muted);
  line-height:1.55
}
.channel-row {
  display:flex;
  gap:.5rem;
  flex-wrap:wrap;
  margin:0 0 1rem
}
.channel-row span,
.channel-button {
  border:1px solid var(--line);
  padding:.45rem .7rem;
  background:var(--sand);
  font-size:.88rem
}
.channel-button {
  color:var(--ink);
  cursor:pointer;
  font:inherit
}
.channel-button:hover,
.channel-button.active {
  border-color:var(--ink);
  background:var(--ink);
  color:#fff
}
.landing-preview {
  margin-top:1rem
}
.inline-output {
  border-top:1px solid var(--line);
  margin-top:1.1rem;
  padding-top:1.1rem
}
.compact-preview {
  border-color:var(--line);
  padding:1.2rem
}
.compact-preview h3 {
  font-size:clamp(1.55rem,2.4vw,2.35rem)
}
.output-list {
  display:grid;
  gap:.7rem
}
.output-list article {
  border:1px solid var(--line);
  padding:1rem;
  background:#fbfaf8
}
.output-list span {
  display:block;
  color:var(--stone);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  margin-bottom:.4rem
}
.output-list p {
  margin:0;
  color:var(--ink);
  line-height:1.55
}
.saved-url {
  align-self:center;
  color:var(--muted);
  font-size:.95rem
}

/* Modern glossy visual refresh */
:root {
  --ink:#0b0c0f;
  --muted:#626873;
  --stone:#6f7d8f;
  --sand:#f4f6f8;
  --line:#dfe4ea;
  --gloss:#050609
}
body {
  background:#f7f8fa
}
.appbar {
  background:rgba(255,255,255,.86)!important;
  backdrop-filter:blur(16px) saturate(1.22);
  box-shadow:0 10px 38px rgba(11,12,15,.06)
}
.hero-editorial {
  --accent:#8fd8ff;
  max-width:none;
  padding-left:max(5vw,1.25rem);
  padding-right:max(5vw,1.25rem);
  color:#fff;
  background:
    radial-gradient(circle at 78% 18%, rgba(86,178,255,.24), transparent 28%),
    linear-gradient(138deg,#050609 0%,#10141c 46%,#1b2029 100%);
  position:relative;
  overflow:hidden
}
.hero-editorial {
  grid-template-columns:minmax(0,980px) minmax(240px,300px);
  justify-content:center;
  column-gap:clamp(3rem,6vw,7rem)
}
.hero-editorial .hero-copy {
  max-width:980px;
  padding-left:clamp(0rem,3vw,3.5rem)
}
.hero-editorial h1 {
  max-width:920px
}
.hero-editorial .hero-lead {
  max-width:680px
}
.hero-editorial:after {
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent)
}
.hero-editorial .hero-copy,
.hero-editorial .hero-aside {
  position:relative;
  z-index:1
}
.hero-editorial h1 {
  letter-spacing:-.035em;
  text-shadow:0 1px 0 rgba(255,255,255,.08),0 24px 80px rgba(0,0,0,.5)
}
.hero-editorial .eyebrow {
  color:#8fd8ff
}
.hero-editorial .hero-lead {
  color:#c6ccd6
}
.hero-gloss-panel,
.hero-note {
  border:1px solid rgba(255,255,255,.16);
  background:linear-gradient(160deg,rgba(255,255,255,.15),rgba(255,255,255,.045));
  box-shadow:0 24px 80px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.24);
  backdrop-filter:blur(18px)
}
.hero-gloss-panel {
  padding:1rem;
  margin-bottom:1rem
}
.hero-gloss-panel img {
  width:100%;
  max-height:110px;
  object-fit:contain;
  background:#fff;
  padding:1rem
}
.hero-gloss-panel div {
  display:flex;
  flex-wrap:wrap;
  gap:.4rem;
  margin-top:.8rem
}
.hero-gloss-panel span {
  border:1px solid rgba(255,255,255,.18);
  color:#e9f6ff;
  padding:.3rem .48rem;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase
}
.hero-note p,
.hero-note .quote {
  color:#fff
}
.hero-note:before {
  color:#8fd8ff
}
.note-line {
  background:rgba(255,255,255,.28)
}
.proof-band {
  background:#050609
}
.signal-strip {
  max-width:none;
  padding:0 max(5vw,1.25rem);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:#050609;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.12)
}
.signal-strip article {
  padding:1.6rem 2rem 1.8rem 0;
  border-right:1px solid rgba(255,255,255,.12);
  margin-right:2rem
}
.signal-strip article:last-child {
  border-right:0;
  margin-right:0
}
.signal-strip span {
  color:#8fd8ff;
  font-weight:800;
  font-size:.78rem;
  letter-spacing:.12em
}
.signal-strip strong {
  display:block;
  font-family:"Playfair Display",serif;
  font-size:1.45rem;
  margin:1.15rem 0 .55rem
}
.signal-strip p {
  color:#c6ccd6;
  line-height:1.55;
  margin:0
}
.offer-grid {
  gap:1rem;
  border:0
}
.offer-card {
  min-height:330px;
  border:1px solid rgba(11,12,15,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,249,252,.98));
  box-shadow:0 18px 50px rgba(11,12,15,.08);
  position:relative;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease
}
.offer-card:before {
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,var(--accent,#8fd8ff),#0b0c0f)
}
.offer-card:hover {
  background:linear-gradient(180deg,#fff,#f3f7fb);
  transform:translateY(-4px);
  box-shadow:0 26px 70px rgba(11,12,15,.13);
  border-color:rgba(11,12,15,.18)
}
.offer-card h3 {
  margin-top:1.4rem
}
.offer-card .card-index {
  color:var(--accent,var(--stone))
}
.offer-card a {
  border-color:var(--accent,#0b0c0f)
}
.offer-card-logo {
  width:64px;
  height:42px;
  object-fit:contain;
  background:#fff;
  border:1px solid var(--line);
  padding:.35rem;
  margin-top:1.3rem
}
.process {
  background:linear-gradient(180deg,#f4f6f8,#e9eef5)
}
.hero:not(.hero-editorial) {
  --accent:#6f7d8f;
  max-width:none;
  padding-left:max(5vw,1.25rem);
  padding-right:max(5vw,1.25rem);
  color:#fff;
  background:
    radial-gradient(circle at 85% 12%, color-mix(in srgb,var(--accent) 35%, transparent), transparent 30%),
    linear-gradient(135deg,#050609 0%,#10141d 52%,#171d27 100%);
  border-bottom:1px solid color-mix(in srgb,var(--accent) 55%, transparent)
}
.hero:not(.hero-editorial) .eyebrow {
  color:color-mix(in srgb,var(--accent) 70%, white)
}
.hero:not(.hero-editorial)>p:not(.eyebrow) {
  color:#d7dde6;
  max-width:760px;
  line-height:1.65;
  font-size:clamp(1.08rem,1.7vw,1.32rem)
}
.hero:not(.hero-editorial) .mud-button-root {
  background:var(--accent)!important;
  color:#061014!important;
  box-shadow:0 20px 60px color-mix(in srgb,var(--accent) 28%, transparent)!important
}
.offer-logo {
  max-width:150px;
  max-height:82px;
  object-fit:contain;
  background:#fff;
  padding:.8rem;
  border:1px solid rgba(255,255,255,.24);
  box-shadow:0 18px 50px rgba(0,0,0,.22);
  margin:.3rem 0 1.4rem
}
.two-columns:before,
.fit-grid:before,
.offer-method:before,
.offer-included:before,
.compatibility-cta:before {
  content:"";
  display:block;
  width:76px;
  height:4px;
  background:var(--accent,#6f7d8f);
  margin-bottom:1.4rem
}
.offer-story,
.fit-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem
}
.offer-story>div,
.fit-grid>div,
.case,
.compatibility-cta {
  border:1px solid var(--line);
  background:linear-gradient(180deg,#fff,#f7f9fc);
  box-shadow:0 18px 50px rgba(11,12,15,.06)
}
.offer-story>div,
.fit-grid>div,
.compatibility-cta,
.case {
  padding:1.4rem
}
.contact {
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(243,247,251,.96));
  border:1px solid rgba(11,12,15,.08);
  box-shadow:0 24px 80px rgba(11,12,15,.10);
  position:relative;
  overflow:hidden
}
.contact:before {
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,#8fd8ff,#0b0c0f)
}
.contact .eyebrow {
  color:#2386bd
}
.contact-intro {
  position:relative;
  z-index:1
}
.contact-portrait {
  border:1px solid rgba(11,12,15,.08);
  background:#fff;
  box-shadow:0 18px 48px rgba(11,12,15,.08)
}
.contact .mud-input-control,
.contact .mud-checkbox {
  position:relative;
  z-index:1
}
.contact .mud-input {
  background:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)
}
.contact .mud-button-root {
  background:#0b0c0f!important;
  color:#fff!important;
  box-shadow:0 18px 48px rgba(11,12,15,.18)!important
}
.benefits li:before {
  content:"- ";
  color:var(--accent,var(--stone));
  font-weight:800
}
@media(max-width:760px) {
  .signal-strip,
  .offer-story,
  .fit-grid {
    grid-template-columns:1fr
  }
  .signal-strip article {
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.12);
    margin-right:0;
    padding-right:0
  }
  .signal-strip article:last-child {
    border-bottom:0
  }
}
.published-offers {
  display:grid;
  gap:.7rem
}
.published-offer-row {
  border:1px solid var(--line);
  background:#fbfaf8;
  padding:.9rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:1rem;
  align-items:center
}
.published-offer-row strong,
.published-offer-row span {
  display:block
}
.published-offer-row strong {
  line-height:1.25
}
.published-offer-row span {
  color:var(--muted);
  font-size:.92rem;
  margin-top:.25rem;
  overflow-wrap:anywhere
}
.visibility-state {
  display:inline-block;
  border:1px solid var(--line);
  font-style:normal;
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:.18rem .45rem;
  margin-top:.45rem
}
.visibility-state.is-visible {
  color:#27613a;
  background:#eef5ef;
  border-color:#b9d0bd
}
.visibility-state.is-hidden {
  color:#7a4a19;
  background:#fbf1e5;
  border-color:#e4c99d
}
.published-offer-actions {
  display:flex;
  gap:.45rem;
  flex-wrap:wrap;
  justify-content:flex-end
}
.offer-editor-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.9rem
}
.offer-editor-grid .mud-input-control:nth-child(3),
.offer-editor-grid .mud-input-control:nth-child(4),
.offer-editor-grid .mud-input-control:nth-child(5),
.offer-editor-grid .mud-input-control:nth-child(6),
.offer-editor-grid .mud-input-control:nth-child(7),
.offer-editor-grid .mud-input-control:nth-child(8),
.offer-editor-grid .mud-input-control:nth-child(9),
.offer-editor-grid .mud-input-control:nth-child(10),
.offer-editor-grid .mud-input-control:nth-child(11),
.offer-editor-grid .mud-input-control:nth-child(12),
.offer-editor-grid .mud-input-control:nth-child(13),
.offer-editor-grid .mud-input-control:nth-child(14),
.offer-editor-grid .mud-input-control:nth-child(18),
.offer-editor-grid .mud-input-control:nth-child(20) {
  grid-column:1 / -1
}
.admin-leads {
  display:grid;
  gap:.8rem
}
.admin-lead-row {
  border:1px solid var(--line);
  background:#fbfaf8;
  padding:1rem;
  display:grid;
  grid-template-columns:minmax(160px,.65fr) minmax(180px,.85fr) minmax(0,1.5fr);
  gap:1rem;
  align-items:start
}
.admin-lead-row strong,
.admin-lead-row span,
.admin-lead-row a {
  display:block
}
.admin-lead-row span,
.admin-lead-row a {
  color:var(--muted);
  font-size:.92rem;
  overflow-wrap:anywhere
}
.admin-lead-row a {
  color:var(--ink);
  text-decoration:none
}
.admin-lead-row p {
  margin:0;
  color:var(--ink);
  line-height:1.5
}
.compatibility-cta {
  display:grid;
  gap:1rem;
  align-items:start
}
.compatibility-cta p {
  max-width:760px;
  color:var(--muted);
  line-height:1.65;
  margin:0
}
.preview-frame {
  border:1px solid var(--ink);
  padding:clamp(1.4rem,3vw,2.5rem);
  background:#fbfaf8
}
.preview-frame h3 {
  font-size:clamp(2rem,4vw,4rem);
  line-height:1.02;
  max-width:850px;
  margin:.35rem 0 1rem
}
.preview-frame p {
  color:var(--muted);
  max-width:720px;
  line-height:1.65;
  font-size:1.08rem
}
.preview-frame ul {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:.6rem;
  padding:0;
  list-style:none;
  margin:1.4rem 0
}
.preview-frame li {
  border-top:1px solid var(--line);
  padding-top:.6rem;
  color:var(--ink)
}
@media(max-width:1100px) {
  .hero-editorial,.manifesto,.two-columns {
    grid-template-columns:1fr;
    gap:2.5rem
  }
  .hero-editorial {
    min-height:auto
  }
  .hero h1 {
    font-size:clamp(3rem,15vw,4.3rem)
  }
  .appbar {
    display:none!important
  }
  .mobile-navigation-shell {
    display:block!important;
    position:fixed;
    z-index:1401;
    top:.75rem;
    left:.75rem
  }
  .mobile-menu-toggle {
    display:inline-flex!important;
    position:relative;
    z-index:1401;
    flex:0 0 auto;
    width:48px;
    height:48px;
    background:#fff!important;
    border:1px solid var(--line)!important;
    box-shadow:0 8px 24px rgba(17,17,17,.14)
  }
  .brand span,.admin-link {
    display:none
  }
  .mobile-navigation {
    display:flex;
    position:fixed;
    z-index:1400;
    inset:0 auto 0 0;
    width:min(86vw,340px);
    max-height:100dvh;
    overflow-y:auto;
    padding:4.75rem 1rem 1.25rem;
    background:#fff;
    border-right:1px solid var(--line);
    box-shadow:18px 0 45px rgba(17,17,17,.16);
    flex-direction:column;
    align-items:stretch;
    transform:translateX(-105%);
    visibility:hidden;
    transition:transform .22s ease,visibility .22s ease
  }
  .mobile-navigation.is-open {
    transform:translateX(0);
    visibility:visible
  }
  .mobile-menu-backdrop {
    display:block;
    position:fixed;
    z-index:1399;
    inset:0;
    width:100%;
    height:100%;
    padding:0;
    border:0;
    background:rgba(17,17,17,.36)
  }
  .mobile-navigation .mud-button-root {
    width:100%;
    min-height:46px;
    justify-content:flex-start;
    padding:.65rem .35rem;
    border-bottom:1px solid var(--line);
    font-size:.9rem
  }
  .hero,.section {
    padding-left:1.25rem;
    padding-right:1.25rem
  }
  .hero,
  .about-hero,
  .reviews-hero,
  .services-hero,
  .services-cta {
    padding-top:3.5rem;
    padding-bottom:3.5rem
  }
  .hero h1,
  .about-hero h1,
  .reviews-hero h1,
  .services-hero h1,
  .email-page-header h1 {
    overflow-wrap:break-word
  }
  img,
  svg,
  video {
    max-width:100%;
    height:auto
  }
  .section-heading {
    display:block
  }
  .section-heading>p {
    margin-top:-1rem;
    margin-bottom:2rem
  }
  .process {
    padding-left:1.25rem;
    padding-right:1.25rem
  }
  .integration-grid {
    grid-template-columns:1fr
  }
  .email-meta-grid {
    grid-template-columns:1fr
  }
  .services-hero,
  .services-cta {
    grid-template-columns:1fr;
    min-height:auto
  }
  .services-hero h1 {
    font-size:clamp(2rem,10vw,4.2rem)
  }
  .services-hero-mark {
    max-width:280px
  }
  .services-visual-band,
  .services-method-grid,
  .crm-service-grid,
  .capability-grid {
    grid-template-columns:1fr
  }
  .services-visual-band figure {
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.18)
  }
  .services-method-grid article {
    min-height:0
  }
  .crm-service-grid article {
    grid-template-columns:72px minmax(0,1fr);
    gap:1rem
  }
  .capability-grid article,
  .capability-grid article:nth-child(odd),
  .capability-grid article:nth-child(even) {
    padding:1.25rem 0;
    border-left:0
  }
  .client-name-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .process-grid {
    grid-template-columns:1fr
  }
  .process-grid article {
    border-right:0;
    border-bottom:1px solid var(--line);
    margin:0;
    padding:1.5rem 0
  }
  .process-grid article:last-child {
    border-bottom:0
  }
  .proof-band {
    justify-content:flex-start
  }
  .software-header,.workspace-grid,.dossier-grid,.admin-step {
    grid-template-columns:1fr
  }
  .admin-step {
    gap:.75rem
  }
  .published-offer-row {
    grid-template-columns:1fr
  }
  .published-offer-actions {
    justify-content:flex-start
  }
  .offer-editor-grid,
  .admin-lead-row {
    grid-template-columns:1fr
  }
  .offer-editor-grid .mud-input-control {
    grid-column:1 / -1
  }
  .software-header {
    padding-top:1rem
  }
  .chat-widget {
    right:1rem;
    left:1rem;
    bottom:1rem;
    justify-items:stretch
  }
  .chat-panel {
    width:100%
  }
  .chat-toggle {
    justify-self:end
  }
  .chat-footer {
    grid-template-columns:1fr
  }
  footer {
    justify-content:flex-start;
    gap:2rem;
    padding:2.5rem 1.25rem
  }
}

@media(max-width:420px) {
  .hero h1,
  .about-hero h1,
  .reviews-hero h1,
  .services-hero h1 {
    font-size:clamp(1.85rem,10vw,2.9rem)
  }
  .hero-actions .mud-button-root {
    width:100%
  }
  .client-name-grid,
  .ads-summary-grid.compact {
    grid-template-columns:1fr
  }
  .contact-intro,
  .crm-service-grid article {
    grid-template-columns:1fr
  }
}

/* Final contact form color correction */
.ads-admin{display:grid;gap:1.5rem}.ads-safety-banner{display:grid;gap:.3rem;padding:1.15rem 1.35rem;background:#fff1f2;border:1px solid #fecdd3;border-left:5px solid #be123c;color:#881337}.ads-safety-banner strong{font-size:1.05rem}.ads-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.ads-summary-grid article{display:grid;gap:.25rem;padding:1.2rem;background:#fff;border:1px solid var(--line)}.ads-summary-grid span,.ads-detail-grid>article>span{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ads-summary-grid strong{font-family:"Playfair Display",serif;font-size:1.45rem}.ads-summary-grid small{color:var(--muted)}.ads-form-grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.ads-control-panel,.ads-preview-panel{display:grid;gap:1.25rem}.ads-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.ads-detail-grid>article{padding:1.25rem;background:#f8fafc;border:1px solid #e2e8f0}.ads-detail-grid h3{margin:.5rem 0 1rem}.ads-detail-grid ol{margin:.75rem 0 0;padding-left:1.25rem}.ads-detail-grid li{padding:.35rem 0;border-bottom:1px solid #e2e8f0}.ads-detail-grid li small{float:right;color:var(--muted)}.ads-chip-list{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.ads-chip-list span{padding:.35rem .55rem;border-radius:999px;background:#e0f2fe;color:#075985;font-size:.78rem}.ads-chip-list.negative span{background:#f1f5f9;color:#475569}.ads-create-box{display:grid;gap:1rem;padding:1.2rem;border:1px solid #fecaca;background:#fff7f7}.ads-ready strong{color:#166534}.ads-missing strong{color:#b45309}.ads-table-wrap{overflow-x:auto}.ads-report-table{width:100%;border-collapse:collapse}.ads-report-table th,.ads-report-table td{text-align:left;padding:.8rem;border-bottom:1px solid var(--line);white-space:nowrap}.ads-report-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
@media(max-width:760px){.ads-summary-grid,.ads-detail-grid,.ads-form-grid{grid-template-columns:1fr}.ads-summary-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}

section.contact {
  background:linear-gradient(180deg,#ffffff 0%,#f2f7fb 100%)!important;
  border:1px solid #d8e3ec!important;
  box-shadow:0 28px 90px rgba(7,15,28,.12)!important
}
section.contact:before {
  background:linear-gradient(90deg,#8fd8ff,#111827)!important
}
section.contact .contact-intro,
section.contact form,
section.contact .mud-checkbox {
  background:transparent!important
}
section.contact .mud-input,
section.contact .mud-input-slot,
section.contact textarea,
section.contact input {
  background:#fff!important
}
