/* Arc-inspired study. All production styles remain untouched. */
body.arc-concept {
  --canvas: #fafafa; --surface: #fff; --surface-2: #f4f5f6;
  --ink: #24262c; --ink-2: #62656d; --ink-3: #767a83; --hairline: #e8e9eb;
  background: #fafafa; color: #24262c;
}
.arc-concept .imsg { --imsg-maxw: 1536px; --imsg-gutter: 32px; }
.arc-concept .nav { position: absolute; padding: 18px 32px; }
.arc-concept .nav-inner { max-width: 1472px; box-shadow: none; background: transparent; border-color: transparent; }
.arc-concept .nav-logo-icon { height: 28px; }
.arc-concept .nav-actions .nav-get-started { background: #24262c!important; border-color:#24262c!important; box-shadow:none!important; }
.concept-return { position: fixed; z-index: 100; bottom: 16px; left: 18px; display: inline-flex; align-items:center; gap:16px; padding: 10px 16px; min-height:44px; border:1px solid #e3e4e8; border-radius: 30px; background: #fffffff2; color:#555b65; font-size:12px; text-decoration:none; box-shadow:0 3px 20px #22222208; }
.arc-concept .imsg section { padding-block: 76px; }
.arc-concept .imsg section.imsg-hero {
  position:relative; isolation:isolate; overflow:hidden; margin:110px 24px 0; padding:116px 28px 120px;
  --hero-radius:34px; border-radius:var(--hero-radius); background:#f6f7f8;
  /* Explicitly clip composited gradient layers, including Safari first paint. */
  clip-path:inset(0 round var(--hero-radius));
}
.arc-concept .imsg-hero::before,.arc-concept .imsg-hero::after {
  content:""; position:absolute; z-index:-1; inset:-25%; pointer-events:none;
  background:radial-gradient(ellipse at 85% 17%,#b6cafa 0%,transparent 34%),radial-gradient(ellipse at 8% 78%,#ebc8d7 0%,transparent 29%),radial-gradient(ellipse at 60% 100%,#f3e9bd 0%,transparent 36%);
  filter:blur(40px); opacity:.72; animation:arc-wash 20s ease-in-out infinite alternate;
}
.arc-concept .imsg-hero::after { background:radial-gradient(ellipse at 18% 15%,#d4eee7,transparent 38%); animation-delay:-10s; opacity:.4; }
@keyframes arc-wash { from{transform:translate3d(-2%,1%,0) scale(1); } to{transform:translate3d(5%,-4%,0) scale(1.12); } }
.arc-concept .imsg-hero .imsg-container { display:block; text-align:center; max-width:1100px; padding:0; }
.arc-concept .imsg-hero h1 { margin:auto; max-width:13ch; font-size:clamp(52px,6vw,88px); font-weight:400; line-height:1.04; letter-spacing:-.05em; }
.arc-concept .imsg-hero .hero-sub { margin:28px auto 0; max-width:49ch; font-size:19px; line-height:1.6; }
.arc-concept .imsg-hero .waitlist-form { margin:34px auto 0; max-width:500px; }
.arc-concept .imsg-hero .waitlist-form input { background:#ffffff85; border-color:#c6c8ce; }
.arc-concept .imsg-hero .waitlist-form .btn { border-radius:999px; }   /* same corners as the phone field beside it */
.arc-concept .imsg .btn { border-radius:16px; min-height:48px; }
.arc-concept .imsg .btn.btn-primary { background:#24262c!important; border-color:#24262c!important; }
.arc-concept .imsg .btn.btn-primary:hover { background:#3d414b!important; }
.arc-concept .imsg-hero .form-msg { text-align:center; }
.arc-concept .imsg .sec-head { max-width:760px; margin-bottom:36px; }
.arc-concept .imsg .sec-head h2 { font-weight:400; font-size:clamp(32px,3.7vw,52px); letter-spacing:-.04em; line-height:1.12; }
.arc-concept .imsg .sec-sub { margin-top:20px; font-size:17px; }
.arc-concept .imsg-cases .case-grid { grid-template-columns:1.3fr 1fr; gap:20px; }
.arc-concept .imsg .tile { border-radius:28px; border:1px solid #e7e8eb; background:#fff; box-shadow:none; }
.arc-concept .imsg-cases .case-wide { grid-column:auto; }
.arc-concept .imsg-cases .case { background:#f1f3f6; }
.arc-concept .imsg-cases .case-copy,.arc-concept .imsg-cases #agent .case-copy,.arc-concept .imsg-cases .sup-case .case-copy { display:block; padding:32px 32px 0; }
.arc-concept .imsg-cases .case h3,.arc-concept .imsg-cases #agent h3 { font-size:26px; font-weight:400; max-width:25ch; letter-spacing:-.025em; line-height:1.18; }
.arc-concept .imsg-cases .case p { font-size:16px; margin-top:14px; max-width:44ch; }
.arc-concept .imsg-cases .case-link { font-family:var(--font); font-size:14px; color:#5a6373; margin-top:8px; }
.arc-concept .imsg-cases .case-media { margin-top:24px; padding:0 28px 28px; }
.arc-concept .imsg-cases .case-wide .sup-media { padding:0 28px 36px; margin-top:30px; }
.arc-concept .sup-case { background:linear-gradient(145deg,#f2f4fc,#edf4f2)!important; }
.arc-concept #retention { background:linear-gradient(140deg,#f7f2f1,#f1effa); }
.arc-concept .retention-phone { width:min(330px,100%); }
.arc-concept .notification-animation { border-radius:40px; overflow:hidden; mix-blend-mode:multiply; }
.arc-concept #retention .case-media { flex:1 0 auto; align-items:center; margin-top:24px; padding-bottom:28px; }
.arc-concept #retention .notification-animation { margin-bottom:0; }
.arc-concept #agent { background:linear-gradient(145deg,#eff4f4,#f2f3f7); }
.arc-concept .imsg-cases #agent .agent-media { padding:0 24px 24px; }
.arc-concept .agent-grid { grid-template-columns:1fr; gap:8px; }
.arc-concept .agent-ring { width: min(340px,100%); --node-w:112px; --r:35%; }
.arc-concept .loop-node { padding:10px; border-radius:16px; }
.arc-concept .loop-title { font-size:13px; }
.arc-concept .loop-node .mono { font-size:10px; }
.arc-concept .imsg-cases .case-phone { width:250px; box-shadow:0 12px 36px #252a3920; }
/* Six features read as one unit: a single rounded panel split by hairlines, no gaps between tiles. */
.arc-concept .feature-grid { gap:1px; border:1px solid #e7e8eb; background:#e7e8eb; border-radius:28px; overflow:hidden; }
.arc-concept .feature { overflow:hidden; }
.arc-concept .feature h3 { font-size:22px; font-weight:400; }
.arc-concept .feature-media { aspect-ratio:16/10; }
.arc-concept .feature-body { padding:24px 28px 32px; }
.arc-concept .imsg-pricing .sec-head { margin:0 auto 42px; text-align:center; }
.arc-concept .plan-grid { max-width:1120px; gap:20px; }
body.arc-concept .plan-badge { background:#3266d8; color:#fff; }
[data-theme="dark"] body.arc-concept .plan-badge { background:#a8c9ff; color:#182b50; }
.arc-concept .plan { padding:36px; }
.arc-concept .plan.featured { background:linear-gradient(145deg,#f0f3fc,#fbfbfd 70%); border-color:#d9dfe9; }
.arc-concept .plan-name { font-weight:400; font-size:24px; }
.arc-concept .plan-figure { font-weight:400; font-size:60px; }
.arc-concept .plan .btn-cta { background:#24262c!important; border-color:#24262c!important; box-shadow:none!important; }
/* Features and FAQ share the plan grid's 1120px width, so the three sections line up. */
.arc-concept .imsg-features .imsg-container, .arc-concept .imsg-faq .imsg-container { max-width:calc(1120px + 2 * var(--imsg-gutter)); }
.arc-concept .faq-list { max-width:none; }
.arc-concept .faq-question { font-weight:500; }
.arc-concept .imsg-impl { margin:0 24px 40px; border-radius:32px; background:linear-gradient(120deg,#edf1fa,#f7f3ea,#edf6f1); }
.arc-concept .prompt-row { background:#ffffffb3; }
.arc-concept .footer { background:#fafafa; }
@media(min-width:1100px) { .arc-concept .sup-stage { margin-top:40px; } }
@media(max-width:900px) {
 .arc-concept .imsg-cases .case-grid { grid-template-columns:1fr; }
 .arc-concept .imsg section.imsg-hero { margin-top:94px; padding:80px 28px; }
 .arc-concept .imsg .feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .arc-concept .imsg .feature:last-child { grid-column:auto; }
 .arc-concept .imsg .feature:last-child .feature-media { aspect-ratio:16/10; }
 .arc-concept #retention .notification-animation { margin-bottom:0; }
 .arc-concept #retention .case-media { padding-bottom:28px; }
}
@media(max-width:560px) {
 .arc-concept .imsg { --imsg-gutter:20px; }
 .arc-concept .imsg .feature-grid { grid-template-columns:1fr; }
 .arc-concept .nav { padding:12px 20px; }
 .arc-concept .imsg section { padding-block:48px; }
 .arc-concept .imsg section.imsg-hero { margin:84px 12px 0; padding:64px 22px; --hero-radius:26px; border-radius:var(--hero-radius); }
 .arc-concept .imsg-hero h1 { font-size:48px; }
 .arc-concept .imsg-hero .hero-sub { font-size:17px; margin-top:22px; }
 .arc-concept .imsg-hero .waitlist-form { margin-top:26px; }
 .arc-concept .imsg-cases .case-copy,.arc-concept .imsg-cases #agent .case-copy,.arc-concept .imsg-cases .sup-case .case-copy { padding:26px 22px 0; }
 .arc-concept .imsg-cases .case h3,.arc-concept .imsg-cases #agent h3 { font-size:25px; }
 .arc-concept .imsg-cases .case-wide .sup-media { padding:0 12px 24px; }
 .arc-concept .agent-grid { grid-template-columns:1fr; }
 .arc-concept .agent-ring { --node-w:90px; }
 .arc-concept .imsg-cases .case-phone,.arc-concept .retention-phone { width:min(260px,100%); }
 .arc-concept .plan { padding:28px 24px; }
 .arc-concept .imsg-impl { margin-inline:12px; }
 .concept-return { bottom:10px; left:10px; }
}
@media(prefers-reduced-motion:reduce) { .arc-concept .imsg-hero::before,.arc-concept .imsg-hero::after { animation:none; } }

.arc-concept #retention .case-media { mix-blend-mode: multiply; }

/* Restore the approved floating navigation shell across the concept. */
body.arc-concept .nav {
  position:fixed; padding:max(14px, env(safe-area-inset-top)) 32px 0;
}
body.arc-concept .nav-inner {
  max-width:1408px; background:rgba(255,255,255,.88);
  border:1px solid rgba(32,40,50,.1);
  box-shadow:0 8px 30px rgba(28,39,48,.07),0 1px 3px rgba(28,39,48,.03);
  backdrop-filter:blur(20px) saturate(150%);
  -webkit-backdrop-filter:blur(20px) saturate(150%);
}
body.arc-concept .nav-actions .nav-get-started {
  background:#3266d8!important; border-color:#3266d8!important;
  box-shadow:0 5px 16px #3266d826!important;
}
body.arc-concept .nav.nav-hidden { transform:none!important; }
body.arc-concept .nav-logo:focus-visible,body.arc-concept .nav a:focus-visible { outline:2px solid #007aff; outline-offset:4px; }
@media(max-width:560px) { body.arc-concept .nav { padding:12px 20px 0; } }

.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; }
.arc-concept .arc-legal .imsg-hero { padding-block:72px; }
.arc-concept .arc-legal .imsg-hero h1 { font-size:clamp(40px,5vw,64px); max-width:22ch; }
.arc-concept .arc-legal .legal-container { max-width:860px; padding:64px 28px; }
.arc-concept .arc-legal .legal-container h2 { font-size:25px; font-weight:500; margin:42px 0 16px; line-height:1.3; }
.arc-concept .arc-legal .legal-container h3 { font-size:19px; margin:28px 0 12px; }
.arc-concept .arc-legal .legal-container p,.arc-concept .arc-legal .legal-container ul,.arc-concept .arc-legal .legal-container ol { font-size:16px; line-height:1.8; margin-bottom:20px; }
.arc-concept .arc-legal .legal-container a { color:#2469c7; text-underline-offset:3px; overflow-wrap:anywhere; }
.arc-concept .arc-legal .legal-container table { display:block; max-width:100%; overflow:auto; }
.arc-concept .arc-legal .legal-actions { display:flex; justify-content:center; flex-wrap:wrap; gap:16px; padding:0 24px 64px; }
@media(max-width:1150px) {
 body.arc-concept .nav-minimal .nav-actions > a { display:none; }
 body.arc-concept .nav-minimal .nav-mobile-toggle { display:inline-flex; }
 body.arc-concept .nav-minimal .nav-mobile-menu .btn { width:100%; margin-top:8px; }
}
@media(max-width:560px) {
 body.arc-concept .nav-inner { gap:8px; padding-left:14px; }
 .arc-concept .nav-logo-icon { height:23px; }
 body.arc-concept .nav-actions { gap:7px; }
 .arc-concept .arc-legal .legal-container { padding:40px 24px; }
}

/* The dark theme follows the same hierarchy, with restrained color washes. */
[data-theme="dark"] body.arc-concept {
 --canvas:#141518; --surface:#1b1d21; --surface-2:#22252a; --ink:#f0f1f4;
 --ink-2:#b9bdc7; --ink-3:#a0a6b2; --hairline:#353941; --hairline-2:#454a54;
 background:#141518; color:var(--ink);
}
[data-theme="dark"] .arc-concept .nav-inner { background:rgba(26,28,32,.9); border-color:#ffffff16; box-shadow:0 8px 28px #0003; }
[data-theme="dark"] .arc-concept .imsg section.imsg-hero { background:#1d2028; }
[data-theme="dark"] .arc-concept .imsg-hero::before { opacity:.22; }
[data-theme="dark"] .arc-concept .imsg-hero::after { opacity:.12; }
[data-theme="dark"] .arc-concept .imsg-hero .waitlist-form input { background:#1b1d2199; border-color:#626977; }
[data-theme="dark"] .arc-concept .imsg .btn.btn-primary,[data-theme="dark"] .arc-concept .plan .btn-cta { background:#edf0f6!important; border-color:#edf0f6!important; color:#20242d!important; }
[data-theme="dark"] .arc-concept .imsg .tile,[data-theme="dark"] .arc-concept .feature { background:#1b1d21; border-color:#30343c; }
[data-theme="dark"] .arc-concept .feature-grid { background:#30343c; border-color:#30343c; }
[data-theme="dark"] .arc-concept .sup-case { background:linear-gradient(145deg,#242938,#202c2b)!important; }
[data-theme="dark"] .arc-concept #retention { background:linear-gradient(140deg,#30292d,#26263b); }
[data-theme="dark"] .arc-concept #agent { background:linear-gradient(145deg,#202f30,#242735); }
[data-theme="dark"] .arc-concept .case-link { color:#bec9dc; }
[data-theme="dark"] .arc-concept .notification-animation,[data-theme="dark"] .arc-concept #retention .case-media { mix-blend-mode:normal; }
[data-theme="dark"] .arc-concept .notification-animation { clip-path:inset(1% 2% round 14% / 7%); }
[data-theme="dark"] .arc-concept .feature-media.is-img { background:#fff; }
[data-theme="dark"] .arc-concept .plan.featured { background:linear-gradient(145deg,#272e40,#1c1e24 75%); border-color:#46516a; }
[data-theme="dark"] .arc-concept .imsg-impl { background:linear-gradient(120deg,#252d40,#332f2b,#21342d); }
[data-theme="dark"] .arc-concept .prompt-row { background:#1b1d21b3; }
[data-theme="dark"] .arc-concept .footer { background:#141518; }
[data-theme="dark"] .concept-return { background:#24272def; color:#d8dce5; border-color:#464b56; }
[data-theme="dark"] .arc-concept .arc-legal .legal-container a { color:#9dc3ff; }

/* Keep the hero aligned with the product canvas, including ultrawide displays. */
body.arc-concept .imsg section.imsg-hero { width:calc(100% - 48px); max-width:1472px; margin:110px auto 0; }
body.arc-concept .imsg-impl { width:calc(100% - 48px); max-width:1472px; margin-inline:auto; }
.arc-concept .agent-left { padding-bottom:16px; }
@media(max-width:560px) {
 body.arc-concept .imsg section.imsg-hero { width:calc(100% - 24px); margin-top:94px; padding:48px 22px; }
 .arc-concept .imsg-hero h1 { font-size:clamp(38px,11.5vw,48px); }
 body.arc-concept .imsg-impl { width:calc(100% - 24px); }
 .arc-concept .case-link { min-height:44px; }
 .arc-concept .concept-return { position:static; display:flex; width:max-content; margin:16px auto; }
}

/* Blue brand: a clear signature, pale washes, and familiar icon-only theme control. */
.arc-concept .brand-dark { display:none; }
[data-theme="dark"] .arc-concept .brand-light { display:none; }
[data-theme="dark"] .arc-concept .brand-dark { display:block; }
body.arc-concept .nav-logo-icon { width:137px; height:32px; object-fit:contain; }
.arc-concept .footer-logo img { width:171px; height:auto; }
/* the logo: a black wordmark beside the iMessage-blue mark; on dark, the white-wordmark copy stands in */
body.arc-concept .logo-on-dark,[data-theme="dark"] body.arc-concept .logo-on-light { display:none; }
[data-theme="dark"] body.arc-concept .logo-on-dark { display:inline-block; }
.arc-theme-toggle { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:44px; height:44px; padding:0; border:1px solid var(--hairline); border-radius:50%; background:var(--surface); color:var(--ink); cursor:pointer; }
.arc-theme-toggle:focus-visible { outline:2px solid #3266d8; outline-offset:3px; }
.arc-theme-toggle .arc-sun { display:none; }
[data-theme="dark"] .arc-theme-toggle .arc-sun { display:block; }
[data-theme="dark"] .arc-theme-toggle .arc-moon { display:none; }
body.arc-concept .nav-actions .nav-get-started,body.arc-concept .nav-mobile-menu .btn-cta,body.arc-concept .imsg .btn.btn-primary,body.arc-concept .plan .btn-cta { background:#3266d8!important; border-color:#3266d8!important; color:#fff!important; box-shadow:0 5px 16px #3266d81c!important; }
[data-theme="dark"] body.arc-concept .nav-actions .nav-get-started,[data-theme="dark"] body.arc-concept .nav-mobile-menu .btn-cta,[data-theme="dark"] body.arc-concept .imsg .btn.btn-primary,[data-theme="dark"] body.arc-concept .plan .btn-cta { background:#a8c9ff!important; border-color:#a8c9ff!important; color:#182b50!important; }
@media(max-width:560px) { body.arc-concept .nav-logo-icon { width:120px; height:28px; } }

/* Brand interaction tokens also replace inherited green selection/focus states. */
body.arc-concept { --green:#3266d8; --green-deep:#244fae; --green-tint:#dce8ff; --brand-green:#3266d8; }
[data-theme="dark"] body.arc-concept { --green:#a8c9ff; --green-deep:#e4edff; --green-tint:#31476c; --brand-green:#a8c9ff; }
body.arc-concept ::selection { background:var(--green-tint); color:var(--green-deep); }
body.arc-concept .nav-actions > a,body.arc-concept .arc-theme-toggle,body.arc-concept .nav-mobile-toggle,body.arc-concept .nav-mobile-item { transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
body.arc-concept .nav-jump,body.arc-concept .nav-docs-link { border-radius:16px; }
@media(hover:hover) {
 body.arc-concept .nav-actions > .nav-docs-link:hover,body.arc-concept .nav-login-pill:hover,body.arc-concept .arc-theme-toggle:hover,body.arc-concept .nav-mobile-toggle:hover,body.arc-concept .nav-mobile-item:hover { background:var(--green-tint)!important; color:var(--green-deep)!important; box-shadow:0 0 0 6px var(--green-tint); }
 body.arc-concept .nav-actions .nav-get-started:hover,body.arc-concept .nav-mobile-menu .btn-cta:hover,body.arc-concept .imsg .btn.btn-primary:hover,body.arc-concept .plan .btn-cta:hover { background:#244fae!important; border-color:#244fae!important; transform:translateY(-1px); box-shadow:0 6px 18px #3266d833!important; }
 [data-theme="dark"] body.arc-concept .nav-actions .nav-get-started:hover,[data-theme="dark"] body.arc-concept .nav-mobile-menu .btn-cta:hover,[data-theme="dark"] body.arc-concept .imsg .btn.btn-primary:hover,[data-theme="dark"] body.arc-concept .plan .btn-cta:hover { background:#c6dcff!important; border-color:#c6dcff!important; }
}
body.arc-concept .nav a:active,body.arc-concept .arc-theme-toggle:active { transform:translateY(1px); }
@media(prefers-reduced-motion:reduce) { body.arc-concept .nav-actions > a,body.arc-concept .arc-theme-toggle,body.arc-concept .nav-mobile-toggle,body.arc-concept .nav-mobile-item { transition:none; } }
body.arc-concept .btn.btn-cta:focus-visible { outline:3px solid #7fa7ee; outline-offset:3px; }
.arc-concept .sup-window { --sup-green:#3266d8; --sup-green-ink:#244fae; --sup-green-soft:#e7efff; }
.arc-concept .sup-field.focus { border-color:#3266d8; box-shadow:0 0 0 3px #3266d82e; }

/* Selected Exchange signature. */
body.arc-concept .nav-logo { display:inline-flex; align-items:center; gap:8px; color:#353946; }
body.arc-concept .nav-zero-mark { width:32px; height:32px; overflow:visible; flex-shrink:0; }
body.arc-concept .nav-brand-name { font-family:var(--font); font-size:20px; font-weight:600; letter-spacing:-.6px; }
[data-theme="dark"] body.arc-concept .nav-logo { color:#e6e9f2; }
/* Selected Exchange mark: reciprocal separation and return. */
body.arc-concept .nav-zero-mark { color:#007aff; }
[data-theme="dark"] body.arc-concept .nav-zero-mark { color:#5caaff; }
@keyframes exchange-out { 0%,100% { transform:translate(0,0); } 40% { transform:translate(-4px,-3px); } 75% { transform:translate(1px,0); } }
@keyframes exchange-back { 0%,100% { transform:translate(0,0); } 40% { transform:translate(4px,3px); } 75% { transform:translate(-1px,0); } }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .arc-concept .nav-logo:hover .exchange-a { animation:exchange-out .95s cubic-bezier(.22,.7,.2,1) both; }
 .arc-concept .nav-logo:hover .exchange-b { animation:exchange-back .95s cubic-bezier(.22,.7,.2,1) both; }
}
@media(prefers-reduced-motion:no-preference) {
 .arc-concept .nav-logo:focus-visible .exchange-a { animation:exchange-out .95s cubic-bezier(.22,.7,.2,1) both; }
 .arc-concept .nav-logo:focus-visible .exchange-b { animation:exchange-back .95s cubic-bezier(.22,.7,.2,1) both; }
}
@media(max-width:560px) {
 body.arc-concept .nav-zero-mark { width:28px; height:28px; }
 body.arc-concept .nav-brand-name { font-size:18px; }
 body.arc-concept .nav-logo { gap:6px; }
}

/* Restore the product-led hero inside the constrained gradient canvas. */
body.arc-concept .imsg section.hero-with-phone { padding:54px clamp(28px,5vw,80px); }
.arc-concept .hero-with-phone .imsg-container { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr); align-items:center; gap:56px; max-width:1180px; text-align:left; }
.arc-concept .hero-with-phone h1 { margin:0; max-width:14ch; font-size:clamp(48px,5vw,72px); line-height:1.06; }
.arc-concept .hero-with-phone .hero-sub { margin:26px 0 0; max-width:44ch; }
.arc-concept .hero-with-phone .waitlist-form { margin:30px 0 0; }
.arc-concept .hero-with-phone .form-msg { text-align:left; }
.arc-concept .hero-with-phone .hero-phone { width:clamp(260px,21vw,310px); max-width:100%; margin:0 auto; }
.arc-concept .hero-with-phone .notification-animation { mix-blend-mode:multiply; }
[data-theme="dark"] .arc-concept .hero-with-phone .notification-animation { mix-blend-mode:normal; }
@media(max-width:900px) {
 body.arc-concept .imsg section.hero-with-phone { padding:48px 24px 36px; }
 .arc-concept .hero-with-phone .imsg-container { grid-template-columns:1fr; gap:36px; text-align:center; }
 .arc-concept .hero-with-phone .hero-copy { max-width:580px; margin:auto; }
 .arc-concept .hero-with-phone h1 { margin:auto; font-size:clamp(38px,7vw,58px); }
 .arc-concept .hero-with-phone .hero-sub { margin:22px auto 0; font-size:17px; }
 .arc-concept .hero-with-phone .waitlist-form { margin:26px auto 0; }
 .arc-concept .hero-with-phone .form-msg { text-align:center; }
 .arc-concept .hero-with-phone .hero-phone { width:260px; }
}
[data-theme="dark"] .arc-concept .hero-with-phone .imsg-blue-text { color:#69adff; }

/* Keep the entire disclosure row visibly actionable. */
body.arc-concept .faq-question,
body.arc-concept .faq-question * { cursor:pointer; }
/* Ambient light reacts gently while headline typography remains still. */
@media(prefers-reduced-motion:no-preference) {
 .arc-concept .hero-with-phone::before {
  opacity:.82;
  animation-duration:24s;
  translate:var(--light-x,0px) var(--light-y,0px);
  transition:translate 1400ms cubic-bezier(.16,1,.3,1);
 }
 .arc-concept .hero-with-phone::after {
  translate:calc(var(--light-x,0px) * -.6) calc(var(--light-y,0px) * -.6);
  transition:translate 1800ms cubic-bezier(.16,1,.3,1);
 }
 .arc-concept .hero-with-phone .demo-form .btn svg { transition:transform 180ms ease; }
 .arc-concept .hero-with-phone .demo-form .btn:is(:hover,:focus-visible) svg { transform:translateX(3px); }
}

/* A little breathing room between landing sections without expanding cards. */
.arc-concept .imsg:not(.arc-legal) > section + section { margin-top:24px; }
@media(max-width:560px) {
 .arc-concept .imsg:not(.arc-legal) > section + section { margin-top:16px; }
}
/* "Text me an example" sent: the button says "Sent!", then the form fades and
   "Book a 15-minute demo" takes its place. */
.demo-form .btn.is-sent, .demo-form .btn.is-sent:disabled { opacity: 1; cursor: default; }
.demo-form .btn.is-sent svg { animation: demo-sent-check 320ms cubic-bezier(.2,.8,.2,1) both; }
@keyframes demo-sent-check { from { opacity: 0; transform: scale(.6); } to { opacity: 1; transform: none; } }
.demo-form.is-leaving { opacity: 0; transform: translateY(-4px); transition: opacity 240ms ease, transform 240ms ease; }
.demo-next { animation: demo-next-in 360ms cubic-bezier(.2,.8,.2,1) both; }
.demo-next { width: 100%; }
.demo-next .btn { flex: 1 1 100%; justify-content: center; }
.demo-next .btn svg { transition: transform 180ms ease; }
.demo-next .btn:is(:hover,:focus-visible) svg { transform: translateX(3px); }
@keyframes demo-next-in { from { opacity: 0; transform: translateY(6px) scale(.98); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .demo-next { animation: none; } }

/* Hero, lower edge: who built it and how much it carries, one centred line of quiet proof. */
.arc-concept .imsg section.imsg-hero:has(.hero-proof) { padding-bottom:56px; }
.arc-concept .hero-proof {
  display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:14px 36px;
  margin:88px auto 0; padding:0 16px; color:var(--ink-3); font-size:15px; letter-spacing:-.005em;
}
.arc-concept .hero-proof p { margin:0; }
.arc-concept .hero-proof-team { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:10px 22px; }
.arc-concept .hero-proof-logos { display:flex; align-items:center; gap:28px; color:var(--ink-2); opacity:.8; }
.arc-concept .hero-proof-logos svg { display:block; width:auto; fill:currentColor; }
.arc-concept .hero-proof .logo-apple { height:24px; margin-top:-3px; }
.arc-concept .hero-proof .logo-tesla { height:13px; }
.arc-concept .hero-proof .logo-microsoft { height:22px; }
.arc-concept .hero-proof-stats { display:flex; align-items:center; gap:36px; }
.arc-concept .hero-proof-stat { position:relative; padding-left:37px; white-space:nowrap; }
.arc-concept .hero-proof-stat::before { content:""; position:absolute; left:0; top:50%; width:1px; height:22px; transform:translateY(-50%); background:currentColor; opacity:.35; }
.arc-concept .hero-proof-stat strong { color:var(--ink); font-weight:600; }
@media(max-width:900px) {
 .arc-concept .imsg section.imsg-hero:has(.hero-proof) { padding-bottom:48px; }
 .arc-concept .hero-proof { flex-direction:column; gap:16px; margin-top:48px; }
 .arc-concept .hero-proof-stats { gap:24px; }
 .arc-concept .hero-proof-stat { padding-left:25px; }
 .arc-concept .hero-proof-stat:first-child { padding-left:0; }
 .arc-concept .hero-proof-stat:first-child::before { display:none; }
}
@media(max-width:640px) {
 .arc-concept .hero-proof { margin-top:40px; font-size:14px; }
 .arc-concept .hero-proof-team { flex-direction:column; gap:12px; }
 .arc-concept .hero-proof-logos { gap:24px; }
 .arc-concept .hero-proof-stats { gap:16px; }
 .arc-concept .hero-proof-stat { padding-left:17px; }
}
@media(max-width:360px) {
 .arc-concept .hero-proof-stats { flex-direction:column; gap:8px; }
 .arc-concept .hero-proof-stat { padding-left:0; }
 .arc-concept .hero-proof-stat::before { display:none; }
}

/* Feature tiles drawn in HTML: the console's personality picker and the three CRM marks.
   Sized in em off the tile width (cqw), so they fill the 16:10 media box the same at every breakpoint. */
.arc-concept .feature-media.persona-media,.arc-concept .feature-media.crm-media { container-type:inline-size; --pp-brand:#3266d8; --pp-soft:#e7efff; }
[data-theme="dark"] .arc-concept .feature-media.persona-media { --pp-brand:#a8c9ff; --pp-soft:color-mix(in srgb,#a8c9ff 14%,var(--surface)); }
.arc-concept .pp-panel { font-size:min(3.5cqw,15px); width:27em; max-width:calc(100% - 1.5em); display:flex; flex-direction:column; gap:.6em; padding:.85em; border:1px solid var(--hairline); border-radius:1.1em; background:var(--surface); box-shadow:0 .6em 1.8em #1d22300d; color:var(--ink); }
.arc-concept .pp-label { font-size:.9em; font-weight:600; letter-spacing:-.01em; }
.arc-concept .pp-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45em; }
.arc-concept .pp-card { display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:.6em; row-gap:.15em; align-content:start; min-width:0; padding:.5em; border:1px solid var(--hairline-2,#dcdee2); border-radius:.85em; background:var(--surface); }
.arc-concept .pp-card.on { border-color:var(--pp-brand); background:var(--pp-soft); box-shadow:0 0 0 1px var(--pp-brand); }
.arc-concept .pp-icon { flex:0 0 auto; display:grid; place-items:center; width:2.1em; height:2.1em; border-radius:.6em; background:var(--surface-2); color:var(--ink-2); }
.arc-concept .pp-card.on .pp-icon { background:color-mix(in srgb,var(--pp-brand) 16%,var(--surface)); color:var(--pp-brand); }
.arc-concept .pp-icon svg { width:1.3em; height:1.3em; display:block; }
.arc-concept .pp-icon .d { fill:currentColor; fill-opacity:.24; }
.arc-concept .pp-icon .d.lens { fill-opacity:.34; }
.arc-concept .pp-name { font-size:.82em; font-weight:600; line-height:1.25; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.arc-concept .pp-icon { grid-row:span 2; align-self:start; }
.arc-concept .pp-name { align-self:end; }
.arc-concept .pp-desc { font-size:.72em; line-height:1.35; color:var(--ink-3); }
.arc-concept .pp-card.on .pp-desc { color:var(--ink-2); }
.arc-concept .pp-extra { display:none; }
@container (max-width: 300px) {
  .arc-concept .pp-desc { display:none; }
  .arc-concept .pp-extra { display:grid; }
  .arc-concept .pp-card { align-items:center; }
  .arc-concept .pp-icon { grid-row:auto; align-self:center; }
  .arc-concept .pp-name { align-self:center; }
}
.arc-concept .feature-media.crm-media { gap:min(7cqw,32px); }
.arc-concept .crm-tile { font-size:min(3.5cqw,15px); display:flex; flex-direction:column; align-items:center; gap:.75em; }
.arc-concept .crm-logo { display:grid; place-items:center; width:5.4em; height:5.4em; border-radius:1.3em; background:#fff; border:1px solid var(--hairline); box-shadow:0 .5em 1.4em #1d22300f; }
.arc-concept .crm-logo svg { width:3.1em; height:3.1em; display:block; }
.arc-concept .crm-name { font-size:.9em; font-weight:500; color:var(--ink-2); }
[data-theme="dark"] .arc-concept .crm-logo { border-color:transparent; box-shadow:0 .5em 1.4em #0004; }

/* Hero "Get a demo iMessage" card: country picker + number in one field, Submit
   beside it, the no-spam promise under it. Submit stays pale until the number
   could be real. */
.arc-concept .demo-card {
 --demo-blue:#3266d8;
 margin:30px 0 0; max-width:540px; padding:26px 28px 20px; text-align:left;
 background:#ffffffb8; border:1px solid #e3e4e8; border-radius:24px;
 -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
}
.arc-concept .demo-card-title { margin:0 0 18px; font-size:22px; font-weight:500; letter-spacing:-.02em; line-height:1.25; color:var(--ink); }
.arc-concept .demo-card .demo-form { display:flex; gap:12px; align-items:stretch; }
.arc-concept .demo-card .demo-form[hidden] { display:none; }
.arc-concept .demo-card input[name="_gotcha"] { position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
.arc-concept .demo-field {
 flex:1 1 auto; min-width:0; display:flex; align-items:center; height:54px;
 background:#fff; border:1px solid #c6c8ce; border-radius:16px;
 transition:border-color 150ms ease, box-shadow 150ms ease;
}
.arc-concept .demo-field:focus-within { border-color:var(--demo-blue); box-shadow:0 0 0 4px color-mix(in srgb,var(--demo-blue) 16%,transparent); }
.arc-concept .demo-country {
 position:relative; flex:0 0 auto; display:flex; align-items:center; gap:7px; height:100%;
 padding:0 12px 0 16px; color:var(--ink-2); font-size:16px; font-weight:500; cursor:pointer;
}
.arc-concept .demo-country-flag { font-size:20px; line-height:1; }
.arc-concept .demo-country-chevron { width:14px; height:14px; color:var(--ink-3); }
.arc-concept .demo-country select { position:absolute; inset:0; width:100%; opacity:0; cursor:pointer; font-size:16px; }
.arc-concept .demo-country:has(select:focus-visible) { outline:2px solid var(--demo-blue); outline-offset:-4px; border-radius:12px; }
.arc-concept .demo-card .demo-field input[type="tel"] {
 flex:1 1 auto; min-width:0; height:100%; padding:0 16px 0 4px; border:0; border-radius:0 16px 16px 0;
 background:transparent; box-shadow:none; outline:none; font:inherit; font-size:17px; color:var(--ink);
}
.arc-concept .demo-card .demo-field input::placeholder { color:var(--ink-3); opacity:.8; }
.arc-concept .demo-submit {
 flex:0 0 auto; min-width:118px; height:54px; padding:0 26px; border:0; border-radius:999px;
 background:var(--demo-blue); color:#fff; font:inherit; font-size:16px; font-weight:600; cursor:pointer;
 display:inline-flex; align-items:center; justify-content:center; gap:6px;
 opacity:.38; transition:opacity 180ms ease, background-color 150ms ease, transform 120ms ease;
}
.arc-concept .demo-submit:is(.is-ready,.is-sent,:disabled) { opacity:1; }
.arc-concept .demo-submit.is-ready:not(:disabled):hover { background:#2856bd; }
.arc-concept .demo-submit.is-ready:not(:disabled):active { transform:scale(.97); }
.arc-concept .demo-submit:disabled { cursor:default; }
.arc-concept .demo-submit svg { width:16px; height:16px; }
.arc-concept .demo-card-note { margin:14px 0 0; font-size:13.5px; color:var(--ink-3); }
.arc-concept .demo-card-note[hidden] { display:none; }
.arc-concept .demo-card .form-msg { margin:10px 0 0; text-align:left; }
.arc-concept .demo-card .demo-next { display:flex; margin:0; }
[data-theme="dark"] .arc-concept .demo-card { background:#1b1d21b8; border-color:#30343c; }
[data-theme="dark"] .arc-concept .demo-field { background:#14161a; border-color:#454a54; }
[data-theme="dark"] .arc-concept .demo-card { --demo-blue:#4a7fee; }
@media(max-width:900px) {
 .arc-concept .hero-with-phone .demo-card { margin:26px auto 0; width:100%; }
}
@media(max-width:480px) {
 .arc-concept .demo-card { padding:22px 16px 16px; border-radius:20px; }
 .arc-concept .demo-card-title { font-size:20px; margin-bottom:14px; }
 .arc-concept .demo-card .demo-form { flex-wrap:wrap; gap:10px; }
 .arc-concept .demo-field { flex-basis:100%; }
 .arc-concept .demo-submit { flex:1 1 100%; }
}

/* Feature tiles are title-only: even padding around the one line. */
.arc-concept .feature-body { padding:22px 28px 24px; }
.arc-concept .feature-body h3:only-child { margin:0; }
@media(max-width:560px) { .arc-concept .feature-body { padding:16px 20px 18px; } }
