:root{color-scheme:light;--ink:#171514;--muted:#605b58;--red:#d91e25;--red-dark:#b9161c;--line:#e9e4e1;--paper:#faf9f8;--white:#fff;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit}
:focus-visible{outline:3px solid #ed585e;outline-offset:4px}
.wrap{width:min(1136px,calc(100% - 64px));margin-inline:auto}
.skip{position:fixed;z-index:5;top:.75rem;left:.75rem;transform:translateY(-180%);padding:.8rem;background:white}
.skip:focus{transform:none}
.header{position:sticky;top:0;z-index:3;border-bottom:1px solid var(--line);background:#faf9f8f5}
.head{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:24px}
.logo{font-size:21px;font-weight:850;letter-spacing:-.07em;white-space:nowrap}
.logo b{color:var(--red);font-weight:900}
.logo b:first-child{margin-right:2px}
nav{display:flex;gap:29px;font-size:14px;font-weight:550;color:var(--muted)}
nav a:hover,.footer a:hover,.email:hover{color:var(--red)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.8em;min-height:52px;border:1px solid transparent;border-radius:10px;padding:0 21px;background:var(--red);color:white;font-weight:700;font-size:15px;white-space:nowrap;box-shadow:0 4px 10px #d91e2520}
.button:hover{background:var(--red-dark)}
.button.small{min-height:40px;font-size:13px;padding-inline:14px}
.button.outline{background:white;color:var(--ink);border-color:var(--line);box-shadow:none}
.button.outline:hover{border-color:var(--red)}
.play{color:var(--red);font-size:21px;line-height:1}
.hero{padding:79px 0 51px;text-align:center;background:#fff radial-gradient(#d8d8d896 .6px,transparent .85px) center/22px 22px}
.badge{display:inline-flex;align-items:center;gap:8px;border:1px solid #e8e2e0;background:#fff;color:#ab161b;border-radius:999px;padding:8px 13px;font-size:11px;font-weight:750;letter-spacing:.09em}
.badge i,.sample i{width:6px;height:6px;display:inline-block;border-radius:50%;background:#e72d35;flex:none}
h1,h2,h3,p{margin:0}
h1,h2{letter-spacing:-.065em;line-height:.99;font-weight:835}
h1{font-size:clamp(44px,6.7vw,96px);margin:24px auto 21px}
h2{font-size:clamp(34px,5vw,64px);margin-top:15px}
em{color:var(--red);font-style:normal}
.hero p{font-size:clamp(17px,2vw,20px);line-height:1.55;max-width:610px;margin:auto;color:var(--muted)}
.actions,.benefits{display:flex;justify-content:center;flex-wrap:wrap}
.actions{gap:10px;margin-top:25px}
.benefits{padding:0;list-style:none;gap:9px 23px;margin:20px 0 0;color:var(--muted);font-size:13px}
.benefits li::before{content:"✓";margin-right:6px;color:var(--red);font-weight:800}
.demo{border:1px solid #2a2524;border-radius:23px;background:radial-gradient(ellipse at 84% 0%,#372322,transparent 64%),#1b1918;color:white;overflow:hidden;box-shadow:0 18px 42px #32242116}
.demoTop{display:flex;justify-content:space-between;gap:12px;padding:17px 29px;border-bottom:1px solid #ffffff21;color:#d5ceca;font-size:11px;letter-spacing:.13em;font-weight:700}
.demoTop b{margin-right:6px;color:#ff777b}
.sample{display:flex;align-items:center;gap:7px;color:#dbceca;font-weight:550;letter-spacing:0}
.demoBody{display:grid;grid-template-columns:.92fr 1.08fr;gap:38px;padding:36px}
.demoIntro{align-self:center;padding-left:9px}
.eyebrow{font-size:12px;font-weight:760;letter-spacing:.11em;color:var(--red)}
.demo .eyebrow,.demo em,.contact em,.contact .eyebrow{color:#ff7579}
.demoIntro p{color:#d2c8c4;line-height:1.58;max-width:320px;margin-top:15px}
.choices{display:flex;gap:7px;flex-wrap:wrap;margin-top:23px}
.choices button{border:1px solid #ffffff38;border-radius:999px;padding:8px 11px;background:transparent;color:#f5e9e5;font-size:12px;cursor:pointer}
.choices button:hover{border-color:#ff7579}
.choices button[aria-pressed=true]{background:#fff;color:#281f1d;border-color:#fff}
.call{background:#fff;color:var(--ink);border-radius:15px;overflow:hidden}
.callHead,.callResult{display:flex;align-items:center;gap:11px;padding:13px 17px}
.callHead{border-bottom:1px solid var(--line)}
.call strong,.call small{display:block;line-height:1.35}
.call strong{font-size:14px}
.call small{font-size:11px;color:var(--muted);margin-top:2px}
.phone{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#fbe9e9;color:var(--red)}
.phone svg{width:19px;height:19px}
.wave{display:flex;align-items:center;gap:3px;margin-left:auto;padding:0 3px}
.wave i{width:3px;height:12px;border-radius:2px;background:#e85256}
.wave i:nth-child(2n){height:20px}.wave i:nth-child(3n){height:28px}.wave i:nth-child(7){height:8px}
.messages{display:grid;grid-template-rows:1fr 1fr;align-items:start;gap:8px;padding:14px 17px}
.message{width:89%;background:#f3f0ef;border-radius:9px;padding:9px 12px}
.message.reply{justify-self:end;background:#fff1f1}
.message small{margin:0 0 3px;font-weight:700}
.message p{font-size:13px;line-height:1.4}
.callResult{background:#fbf8f6;border-top:1px solid var(--line)}
.callResult>span{color:#216446;background:#e1efe5;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-weight:800;flex:none}
.section{padding-block:98px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:33px}
.grid article{min-width:0}
.grid h3{font-size:21px;letter-spacing:-.045em;line-height:1.2;margin:15px 0 9px}
.grid p,.faq p{font-size:15px;color:var(--muted);line-height:1.6}
.features article{border:1px solid var(--line);border-radius:15px;background:white;padding:25px}
.featureIcon{width:41px;height:41px;display:grid;place-items:center;background:#fceaea;color:var(--red);border-radius:10px;font-size:21px;font-weight:800}
.pale{background:#f2eeeb;border-block:1px solid var(--line)}
.steps article{border-top:1px solid #d9cfca;padding:18px 18px 0 0}
.steps article>span{font-size:18px;color:var(--red);font-weight:750}
.faq{display:grid;grid-template-columns:.72fr 1.28fr;gap:35px}
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{position:relative;cursor:pointer;padding:21px 32px 21px 0;list-style:none;font-size:17px;font-weight:720}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:5px;top:17px;color:var(--red);font-size:23px}
.faq details[open] summary::after{content:"−"}
.faq p{padding:0 25px 18px 0}
.contact{text-align:center;padding:58px 22px;border-radius:22px;background:radial-gradient(ellipse at 50% 95%,#452524,transparent 72%),#1b1918;color:#fff}
.contact p{margin:18px auto 24px;max-width:460px;color:#e4d9d5;line-height:1.6}
.email{display:block;width:max-content;margin:13px auto 0;color:#e4d9d5;font-size:13px}
.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:32px;color:var(--muted);font-size:13px}
.footer .logo{color:var(--ink)}
@media(max-width:850px){.wrap{width:calc(100% - 44px)}nav{gap:14px;font-size:13px}.demoBody{gap:23px;padding:26px}.demoIntro{padding:0}.features article{padding:19px}.section{padding-block:75px}}
@media(max-width:650px){html{scroll-padding-top:76px}.wrap{width:calc(100% - 32px)}.head{min-height:60px;gap:8px}.head nav{display:none}.logo{font-size:19px}.button.small{min-height:36px;font-size:12px;padding:0 9px}.hero{padding:60px 0 38px}h1{font-size:clamp(34px,8.8vw,54px);margin-block:20px 17px}.hero p{font-size:16px}.benefits{font-size:12px}.actions .button{min-height:47px;font-size:13px;padding:0 12px}.demo{border-radius:16px}.demoTop{padding:13px 14px;font-size:9px;letter-spacing:.08em}.demoBody{grid-template-columns:1fr;gap:18px;padding:16px}.demoIntro{padding-top:6px}.demoIntro h2 br,.faq h2 br{display:none}.demoIntro p{max-width:100%;font-size:14px;margin-top:10px}.choices{margin-top:15px}.message{width:95%}.section{padding-block:59px}.grid,.faq{grid-template-columns:1fr}.grid{margin-top:24px}.steps{gap:18px}.faq{gap:23px}.contact{padding:42px 14px;border-radius:16px}.footer{flex-wrap:wrap;gap:8px 20px;padding-block:24px}.footer span{order:3;flex:1 0 100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.icon {
  display: block;
  width: 1em;
  height: 1em;
  flex: none;
}

.button .icon-arrow { width: 1.12em; height: 1.12em; }
.button.outline .play { width: 18px; height: 18px; }
.featureIcon .icon { width: 22px; height: 22px; }

.hero-note {
  display: block;
  margin-top: 10px;
  color: var(--muted);
  font-size: 12px;
}

@media (prefers-reduced-motion: no-preference) {
  .hero .badge, .hero h1, .hero p, .hero-note, .hero .actions, .hero .benefits {
    animation: hero-enter .62s cubic-bezier(.22, .65, .33, 1) backwards;
  }

  .hero h1 { animation-delay: .07s; }
  .hero p, .hero-note { animation-delay: .14s; }
  .hero .actions { animation-delay: .21s; }
  .hero .benefits { animation-delay: .28s; }

  .button .icon-arrow { transition: transform .2s ease; }
  .button:is(:hover, :focus-visible) .icon-arrow { transform: translate(2px, -2px); }
  .choices button { transition: background-color .2s, border-color .2s, color .2s; }

  @keyframes hero-enter {
    from { opacity: .15; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
  }
}

.section-lead {
  max-width: 690px;
  margin-top: 20px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.6;
}

.flow-box {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  align-items: center;
  gap: clamp(24px, 5vw, 72px);
  margin-top: 28px;
  padding: clamp(20px, 4vw, 44px);
  background: #efedeb;
  border: 1px solid var(--line);
  border-radius: 18px;
}

.flow-text h3, .industry-card h3 {
  font-size: clamp(20px, 3vw, 31px);
  line-height: 1.14;
  letter-spacing: -.045em;
}

.flow-text p, .industry-grid p {
  margin-top: 12px;
  color: var(--muted);
  line-height: 1.6;
}

.intake-card {
  min-width: 0;
  padding: 18px 20px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 13px;
}

.intake-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 13px;
  border-bottom: 1px solid var(--line);
}

.intake-head small {
  color: var(--muted);
  font-size: 12px;
}

.intake-card dl {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 12px 16px;
  margin: 15px 0 0;
  font-size: 14px;
  line-height: 1.45;
}

.intake-card dt { color: var(--muted); }
.intake-card dd { margin: 0; font-weight: 600; }

.industry-section {
  background: #fff;
  border-block: 1px solid var(--line);
}

.industry-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 32px;
}

.industry-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--paper);
}

.industry-card img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  background: #eae7e5;
}

.industry-card > div {
  padding: clamp(17px, 3vw, 28px);
}

@media (max-width: 650px) {
  .flow-box, .industry-grid { grid-template-columns: 1fr; }
  .section-lead { font-size: 16px; }
  .intake-card dl { grid-template-columns: 1fr; row-gap: 4px; }
  .intake-card dd + dt { padding-top: 8px; }
}

.account-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.account-action {
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  opacity: 1;
}

.account-register { border-color: var(--line); background: #fff; }
button.button { cursor: pointer; }
button.button:disabled { cursor: wait; opacity: .75; }

.request-dialog {
  width: min(520px, calc(100% - 30px));
  max-height: calc(100dvh - 30px);
  padding: clamp(20px, 5vw, 34px);
  border: 1px solid var(--line);
  border-radius: 17px;
  color: var(--ink);
  background: #fff;
}

.request-dialog::backdrop { background: rgb(23 21 20 / .62); }

.request-dialog h2 {
  margin: 0 32px 10px 0;
  font-size: clamp(25px, 5vw, 37px);
  line-height: 1.06;
}

.request-intro, .request-success p {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.5;
}

.request-close {
  position: absolute;
  top: 12px;
  right: 12px;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  cursor: pointer;
}

.request-form {
  display: grid;
  gap: 14px;
  margin-top: 20px;
}

.request-form > label { display: grid; gap: 6px; font-size: 14px; font-weight: 650; }
.request-form input:not([type="checkbox"]), .request-form textarea {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  padding: 10px;
  border: 1px solid #c8c3c0;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-size: 16px;
  font-weight: 400;
}
.request-form textarea { resize: vertical; }
.request-form .request-consent {
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 9px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
}
.request-consent input { margin: 3px 0 0; accent-color: var(--red); }
.request-consent a { text-decoration: underline; text-underline-offset: 2px; }
.request-error { color: #ab161b; font-size: 14px; }
.request-success .button { margin-top: 18px; }

@media (max-width: 650px) {
  .account-actions { gap: 4px; }
  .account-action { padding: 7px 6px; font-size: 12px; }
}

.request-dialog [hidden] { display: none; }

.account-action:hover { color: var(--red); }
.account-page { min-height: 100vh; }
.account-main { padding: clamp(30px, 8vw, 84px) 16px; }
.account-panel {
  width: min(100%, 468px);
  margin-inline: auto;
  padding: clamp(23px, 6vw, 36px);
  border: 1px solid var(--line);
  border-radius: 17px;
  background: #fff;
}
.account-panel h1 { margin: 0 0 14px; font-size: clamp(29px, 6vw, 46px); line-height: 1.08; }
.account-copy, .account-feedback { color: var(--muted); line-height: 1.5; font-size: 14px; overflow-wrap: anywhere; }
.account-feedback { padding: 10px 12px; margin-bottom: 12px; border-radius: 8px; background: #f4f1ef; }
.account-feedback.is-error { background: #fff2f2; color: #ab161b; }
.account-email { margin-top: 5px; font-weight: 700; overflow-wrap: anywhere; }
.account-links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-top: 17px; }
.account-text-link {
  display: inline-block;
  padding: 0;
  border: 0;
  background: transparent;
  color: #ab161b;
  font-size: 14px;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.account-resend { margin: 16px 0 12px; }
