/* Elva page template — scoped marketing styles (ai-receptionist). Fonts inherit the theme system stack (Gilroy retired v3.5.0). */
.elva-pg{
  --ai-1:#FFB7A8; --ai-2:#FFA9C9; --ai-g1:#C9B6FF; --ai-g2:#AFC8FF;
  --dur-fast:0.12s; --dur-med:0.4s;
  --gold-tint:rgba(192,137,46,0.14); --info-tint:rgba(91,141,239,0.12);
  --success-tint:rgba(47,138,91,0.12); --terracotta-tint:rgba(199,90,63,0.14);
  --grad-ink:linear-gradient(160deg,var(--sage-1),var(--sage-0));
  --sh-4:0 40px 90px -40px rgba(20,20,30,0.42),0 4px 12px rgba(20,20,30,0.07);
  --star:#E8A93C;
}
.elva-pg,.elva-pg *{box-sizing:border-box;}

/* neutralizers — cancel blog global generic-class leaks inside page templates */
.elva-pg .section-head{display:block;margin-bottom:0;}
.elva-pg .cta{max-width:none;margin:0;}

/* ===== base utilities ===== */
.elva-pg .elva-spectrum{
  background: var(--grad-spectrum);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}
.elva-pg .elva-live{ position: relative; display: inline-flex; width: 8px; height: 8px; flex: none; }
.elva-pg .elva-live::before{ content: ''; position: absolute; inset: 0; border-radius: 999px; background: var(--ai-3); box-shadow: 0 0 8px var(--ai-3); }
.elva-pg .elva-live::after{ content: ''; position: absolute; inset: -2px; border-radius: 999px; border: 1.5px solid var(--ai-3); animation: elva-pulse 2.4s cubic-bezier(0.4,0,0.2,1) infinite; }
@keyframes elva-pulse{ 0% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(2.8); } }
.elva-pg{ overflow-x: hidden; }
.elva-pg .wrap{ max-width: 1180px; margin: 0 auto; padding: 0 32px; }
.elva-pg .wrap-wide{ max-width: 1340px; margin: 0 auto; padding: 0 32px; }
.elva-pg h1,.elva-pg h2,.elva-pg h3,.elva-pg h4{ font-family: var(--font-display); letter-spacing: var(--tracking-tight); color: var(--ink-0); margin: 0; line-height: 1.05; font-weight: 600; }
.elva-pg p{ margin: 0; }
.elva-pg .eyebrow{ font-family: var(--font-mono); font-size:12.5px; font-weight: 500; letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--ink-3); display: inline-flex; align-items: center; gap: 11px; }
.elva-pg .ico{ width: 20px; height: 20px; flex: none; stroke: currentColor; fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.elva-pg .spectrum{ background: var(--grad-spectrum); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
.elva-pg .rainbow{ background: var(--grad-display); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
.elva-pg .serif{ font-family: var(--font-serif); font-style: italic; font-weight: 500; letter-spacing: 0; }
.elva-pg .mono{ font-family: var(--font-mono); }
.elva-pg .btn{ display: inline-flex; align-items: center; gap: 9px; cursor: pointer; font-family: var(--font-body); font-weight: 550; font-size:16px; letter-spacing: -0.01em; padding: 13px 22px; border-radius: var(--r-pill); border: 1px solid transparent; transition: transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-med) var(--ease-out), background var(--dur-fast); white-space: nowrap; }
.elva-pg .btn .ico{ width: 17px; height: 17px; }
.elva-pg .btn-primary{ background: var(--sage-0); color: #fff; box-shadow: var(--sh-btn); }
.elva-pg .btn-primary:hover{ transform: translateY(-1px); box-shadow: 0 16px 30px -14px rgba(20,20,30,.7); }
.elva-pg .btn-green{ background: var(--green-deep); color: #fff; box-shadow: 0 10px 22px -12px rgba(26,107,73,.7); }
.elva-pg .btn-green:hover{ transform: translateY(-1px); }
.elva-pg .btn-ghost{ background: transparent; color: var(--ink-0); border-color: var(--cream-shadow); }
.elva-pg .btn-ghost:hover{ background: #fff; border-color: var(--ink-4); transform: translateY(-1px); }
.elva-pg .btn-lg{ font-size: 16px; padding: 16px 28px; }
.elva-pg .btn-light{ background: #fff; color: var(--ink-0); box-shadow: var(--sh-2); }
.elva-pg .btn-light:hover{ transform: translateY(-1px); }
.elva-pg .brand{ display: flex; align-items: center; gap: 9px; font-family: var(--font-display); font-weight: 600; font-size: 20px; letter-spacing: -0.04em; color: var(--ink-0); }
.elva-pg .brand-mark{ width: 26px; height: 26px; border-radius: 7px; background: var(--grad-spectrum); display: grid; place-items: center; box-shadow: 0 4px 12px -4px rgba(155,92,255,.5); }
.elva-pg .brand-mark::after{ content:''; width: 10px; height: 10px; border-radius: 3px; background: rgba(255,255,255,.92); }
.elva-pg .section{ padding: 108px 0; }
.elva-pg .section.pt-0{ padding-top: 0; }
.elva-pg .section.tight{ padding: 64px 0; }
.elva-pg .section-head{ max-width: 720px; }
.elva-pg .section-head.center{ margin: 0 auto; text-align: center; }
.elva-pg .section-head h2{ font-size: clamp(32px, 4vw, 50px); font-weight: 600; margin-top: 18px; }
.elva-pg .section-head p{ font-size: 18px; line-height: 1.6; color: var(--ink-2); margin-top: 20px; text-wrap: pretty; }
.elva-pg .feature{ display: grid; grid-template-columns: 1fr 1.06fr; gap: 72px; align-items: center; }
.elva-pg .feature.alt .feat-text{ order: 2; }
.elva-pg .feat-text h2{ font-size: clamp(29px, 3.4vw, 42px); font-weight: 600; margin-top: 18px; }
.elva-pg .feat-text .lead{ font-size: 17px; line-height: 1.65; color: var(--ink-2); margin-top: 20px; text-wrap: pretty; }
.elva-pg .feat-text .lead b{ color: var(--ink-0); font-weight: 600; }
.elva-pg .xlink{ display: inline-flex; align-items: center; gap: 7px; margin-top: 24px; font-size:15.5px; font-weight: 600; color: var(--green-deep); }
.elva-pg .xlink svg{ width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 2; transition: transform var(--dur-fast); }
.elva-pg .xlink:hover svg{ transform: translateX(3px); }
.elva-pg .viz{ position: relative; }
.elva-pg .viz::before{ content: ''; position: absolute; inset: -8% -6%; z-index: 0; border-radius: 40px; opacity: .5; filter: blur(60px); pointer-events: none; }
.elva-pg .viz > *{ position: relative; z-index: 1; }
.elva-pg .viz.g-green::before{ background: radial-gradient(60% 60% at 50% 40%, rgba(26,107,73,.30), transparent 70%); }
.elva-pg .viz.g-blue::before{ background: radial-gradient(60% 60% at 50% 40%, rgba(91,141,239,.30), transparent 70%); }
.elva-pg .viz.g-rose::before{ background: radial-gradient(60% 60% at 50% 40%, rgba(199,90,63,.28), transparent 70%); }
.elva-pg .viz.g-purple::before{ background: radial-gradient(60% 60% at 50% 40%, rgba(155,92,255,.30), transparent 70%); }
.elva-pg .viz.g-gold::before{ background: radial-gradient(60% 60% at 50% 40%, rgba(192,137,46,.26), transparent 70%); }
.elva-pg .mini-row{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 30px; }
.elva-pg .mini-row.one{ grid-template-columns: 1fr; }
.elva-pg .mini-card{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-lg); padding: 20px; box-shadow: var(--sh-1); transition: transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out); }
.elva-pg .mini-card:hover{ transform: translateY(-3px); box-shadow: var(--sh-2); }
.elva-pg .mini-card .mc-ic{ width: 36px; height: 36px; border-radius: 10px; background: var(--green-soft); color: var(--green-deep); display: grid; place-items: center; margin-bottom: 14px; }
.elva-pg .mini-card .mc-ic svg{ width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.7; }
.elva-pg .mini-card h4{ font-size:16px; font-weight: 600; }
.elva-pg .mini-card p{ font-size:14.5px; line-height: 1.5; color: var(--ink-2); margin-top: 7px; }
.elva-pg .pain-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 52px; }
.elva-pg .pain{ position: relative; background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-xl); padding: 30px 28px; box-shadow: var(--sh-1); overflow: hidden; transition: transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out); }
.elva-pg .pain:hover{ transform: translateY(-3px); box-shadow: var(--sh-2); }
.elva-pg .pain::before{ content:''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--terracotta); opacity: .85; }
.elva-pg .pain .pn{ font-family: var(--font-serif); font-style: italic; font-size: 40px; font-weight: 500; color: var(--terracotta); line-height: 1; opacity: .9; }
.elva-pg .pain h3{ font-size: 19px; font-weight: 600; margin-top: 16px; }
.elva-pg .pain p{ font-size:15px; line-height: 1.55; color: var(--ink-2); margin-top: 11px; }
.elva-pg .cap-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 56px; }
.elva-pg .cap{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-xl); padding: 26px; box-shadow: var(--sh-1); transition: transform var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out); }
.elva-pg .cap:hover{ transform: translateY(-4px); box-shadow: var(--sh-2); }
.elva-pg .cap-ic{ width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; margin-bottom: 16px; }
.elva-pg .cap-ic svg{ width: 21px; height: 21px; stroke: currentColor; fill: none; stroke-width: 1.7; }
.elva-pg .cap h4{ font-size: 16px; font-weight: 600; }
.elva-pg .cap p{ font-size:15px; line-height: 1.55; color: var(--ink-2); margin-top: 9px; }
.elva-pg .c-teal{ background: rgba(63,184,168,.14); color: #1e9b7e; }
.elva-pg .c-blue{ background: var(--info-tint); color: #2D7FB8; }
.elva-pg .c-purple{ background: var(--ai-tint); color: #7a48c4; }
.elva-pg .c-gold{ background: var(--gold-tint); color: #b5821f; }
.elva-pg .c-rose{ background: rgba(242,84,91,.12); color: #d23b43; }
.elva-pg .c-green{ background: var(--green-soft); color: var(--green-deep); }
.elva-pg .darksec{ position: relative; overflow: hidden; background: radial-gradient(58% 50% at 82% 16%, rgba(46,196,160,.16), transparent 60%), radial-gradient(130% 120% at 50% 0%, #16263c 0%, #0b1320 58%, #070d18 100%); background-color: #070d18; color: #fff; }
.elva-pg .darksec::before{ content:''; position: absolute; inset: 0; pointer-events: none; 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: 46px 46px; -webkit-mask: radial-gradient(82% 78% at 50% 38%, #000, transparent 86%); mask: radial-gradient(82% 78% at 50% 38%, #000, transparent 86%); }
.elva-pg .darksec > *{ position: relative; z-index: 1; }
.elva-pg .darksec h1,.elva-pg .darksec h2,.elva-pg .darksec h3,.elva-pg .darksec h4{ color: #fff; }
.elva-pg .darksec p{ color: rgba(255,255,255,.66); }
.elva-pg .darksec .eyebrow{ color: rgba(255,255,255,.52); }
.elva-pg .trust-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 56px; }
.elva-pg .tcard{ background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); border-radius: var(--r-2xl); padding: 32px; }
.elva-pg .tcard-ic{ width: 48px; height: 48px; border-radius: 13px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); display: grid; place-items: center; color: #fff; margin-bottom: 18px; }
.elva-pg .tcard-ic svg{ width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 1.7; }
.elva-pg .tcard h3{ font-size: 18px; font-weight: 600; }
.elva-pg .tcard p{ font-size:15px; line-height: 1.58; color: rgba(255,255,255,.6); margin-top: 11px; }
.elva-pg .trust-foot{ margin-top: 38px; display: flex; gap: 12px 26px; flex-wrap: wrap; justify-content: center; font-family: var(--font-mono); font-size:13px; letter-spacing: .04em; color: rgba(255,255,255,.5); }
.elva-pg .trust-foot span{ display: inline-flex; align-items: center; gap: 9px; }
.elva-pg .trust-foot .tk{ width: 5px; height: 5px; border-radius: 999px; background: var(--ai-5); box-shadow: 0 0 7px var(--ai-5); }
.elva-pg .cta{ padding: 20px 0 110px; }
.elva-pg .cta-card{ position: relative; overflow: hidden; background: var(--sage-0); border-radius: 36px; padding: 88px 56px; text-align: center; color: #fff; box-shadow: var(--sh-4); }
.elva-pg .cta-glow{ position: absolute; inset: 0; background: radial-gradient(60% 120% at 50% 120%, rgba(155,92,255,.45), transparent 55%), radial-gradient(50% 90% at 15% -10%, rgba(63,184,168,.35), transparent 60%); pointer-events: none; }
.elva-pg .cta-card .eyebrow{ color: rgba(255,255,255,.55); position: relative; justify-content: center; }
.elva-pg .cta-card h2{ color: #fff; font-size: clamp(33px, 4.2vw, 52px); font-weight: 600; margin-top: 16px; position: relative; }
.elva-pg .cta-card p{ font-size: 18px; color: rgba(255,255,255,.68); margin-top: 20px; position: relative; max-width: 54ch; margin-left: auto; margin-right: auto; line-height: 1.55; }
.elva-pg .cta-btns{ display: flex; justify-content: center; gap: 14px; margin-top: 38px; position: relative; flex-wrap: wrap; }
.elva-pg .foot-brand{ max-width: 240px; }
.elva-pg .foot-brand p{ font-size:15px; color: var(--ink-2); line-height: 1.5; margin-top: 16px; }
.elva-pg .foot-contact{ font-size:13.5px; color: var(--ink-3); margin-top: 18px; line-height: 1.7; font-family: var(--font-mono); }
.elva-pg .foot-col h4{ font-family: var(--font-mono); font-size:12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); font-weight: 500; margin: 0 0 16px; }
.elva-pg .foot-col ul{ list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 11px; }
.elva-pg .foot-col a{ font-size:15px; color: var(--ink-1); transition: color var(--dur-fast); }
.elva-pg .foot-col a:hover{ color: var(--green-deep); }
.elva-pg [data-reveal]{ opacity: 0; transform: translateY(24px); transition: opacity .7s var(--ease-out), transform .7s var(--ease-out); }
.elva-pg [data-reveal].in{ opacity: 1; transform: none; }
.elva-pg [data-reveal][data-delay="1"]{ transition-delay: .09s; }
.elva-pg [data-reveal][data-delay="2"]{ transition-delay: .18s; }
.elva-pg [data-reveal][data-delay="3"]{ transition-delay: .27s; }
.elva-pg .ui{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-xl); box-shadow: var(--sh-3); overflow: hidden; position: relative; }
.elva-pg .ui.grad-top::after{ content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--grad-display); z-index: 5; }
.elva-pg .ui-chrome{ display: flex; align-items: center; gap: 10px; padding: 12px 16px; background: #fff; border-bottom: 1px solid var(--cream-2); }
.elva-pg .ui-dots{ display: flex; gap: 6px; }
.elva-pg .ui-dots i{ width: 10px; height: 10px; border-radius: 50%; display: block; }
.elva-pg .ui-dots i:nth-child(1){ background:#E5897E; }
.elva-pg .ui-dots i:nth-child(2){ background:#E8C66B; }
.elva-pg .ui-dots i:nth-child(3){ background:#8FC8A0; }
.elva-pg .ui-bc{ display: flex; align-items: center; gap: 9px; font-family: var(--font-display); font-weight: 600; font-size:15px; color: var(--ink-0); margin-left: 4px; }
.elva-pg .ui-bc .sl{ color: var(--ink-4); }
.elva-pg .ui-bc .pg{ background: var(--grad-display); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
.elva-pg .ui-live{ margin-left: auto; display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-mono); font-size:12.5px; font-weight: 500; color: var(--ink-1); background: var(--cream-0); border: 1px solid var(--cream-2); border-radius: 999px; padding: 5px 12px; }
.elva-pg .ui-live .live-dot{ color: var(--ai-3); }
.elva-pg .ui-body{ padding: 24px; }
.elva-pg .cc-eyebrow{ font-family: var(--font-mono); font-size:12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold); display: inline-flex; align-items: center; gap: 9px; }
.elva-pg .cc-eyebrow .sp{ width: 13px; height: 13px; border: 1.6px solid var(--gold); border-top-color: transparent; border-radius: 50%; animation: spin 2.4s linear infinite; }
@keyframes spin{ to { transform: rotate(360deg); } }
.elva-pg .cc-headline{ display: flex; align-items: baseline; gap: 14px; margin-top: 14px; flex-wrap: wrap; }
.elva-pg .cc-big{ font-family: var(--font-display); font-weight: 700; font-size: 64px; letter-spacing: -.05em; line-height: .8; background: linear-gradient(160deg, #C75A3F, #9B5CFF); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; font-variant-numeric: tabular-nums; }
.elva-pg .cc-rest{ font-family: var(--font-display); font-weight: 600; font-size: 38px; letter-spacing: -.03em; color: var(--ink-0); }
.elva-pg .cc-rest .serif{ font-size: 40px; color: var(--ink-1); }
.elva-pg .cc-pills{ display: flex; gap: 10px; margin-top: 16px; flex-wrap: wrap; }
.elva-pg .io-pill{ display: inline-flex; align-items: center; gap: 8px; font-size:13.5px; font-weight: 600; padding: 7px 13px; border-radius: 999px; }
.elva-pg .io-pill svg{ width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 1.8; }
.elva-pg .io-pill.in{ background: var(--green-soft); color: var(--green-deep); }
.elva-pg .io-pill.out{ background: var(--caller-soft); color: var(--caller); }
.elva-pg .cc-sub{ font-size:14.5px; color: var(--ink-3); margin-top: 14px; max-width: 46ch; line-height: 1.5; }
.elva-pg .spark-card{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-md); padding: 16px 18px; box-shadow: var(--sh-1); }
.elva-pg .spark-top{ display: flex; align-items: center; justify-content: space-between; }
.elva-pg .spark-lbl{ font-family: var(--font-mono); font-size:12px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.elva-pg .spark-up{ font-size:13px; font-weight: 700; color: var(--success); display: inline-flex; align-items: center; gap: 4px; }
.elva-pg .spark-n{ font-size: 34px; font-weight: 700; letter-spacing: -.04em; color: var(--ink-0); margin-top: 8px; line-height: 1; }
.elva-pg .spark-n small{ font-size:16px; font-weight: 500; color: var(--ink-4); }
.elva-pg .spark-svg{ display: block; width: 100%; height: 46px; margin-top: 8px; }
.elva-pg .ux-stats{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 20px 0; }
.elva-pg .ux-stat{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-md); padding: 15px 16px; }
.elva-pg .ux-stat .sl{ font-family: var(--font-mono); font-size:12px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); display: flex; align-items: center; gap: 8px; }
.elva-pg .ux-stat .sl svg{ width: 14px; height: 14px; stroke: var(--ink-3); fill: none; stroke-width: 1.7; }
.elva-pg .ux-stat .sn{ font-size: 32px; font-weight: 700; letter-spacing: -.04em; color: var(--ink-0); margin-top: 9px; line-height: 1; font-variant-numeric: tabular-nums; }
.elva-pg .ux-stat .sd{ font-size:13px; margin-top: 7px; color: var(--ink-3); }
.elva-pg .ux-stat .sd.pos{ color: var(--success); font-weight: 600; }
.elva-pg .ux-stat .sd.neg{ color: var(--gold); font-weight: 600; }
.elva-pg .ux-numhead{ display: flex; align-items: center; gap: 13px; margin: 4px 0 14px; }
.elva-pg .ux-numhead .nx{ font-family: var(--font-mono); font-size:12.5px; color: var(--ink-3); border: 1px solid var(--cream-2); border-radius: 7px; padding: 4px 7px; }
.elva-pg .ux-numhead .bar{ width: 3px; height: 30px; background: var(--green-deep); border-radius: 2px; }
.elva-pg .ux-numhead h4{ font-size: 17px; font-weight: 600; }
.elva-pg .ux-numhead .nsub{ font-size:13px; color: var(--ink-3); margin-top: 2px; }
.elva-pg .ux-numhead .shown{ margin-left: auto; font-family: var(--font-mono); font-size:12px; letter-spacing: .12em; color: var(--ink-4); }
.elva-pg .fpills{ display: flex; gap: 9px; margin-bottom: 16px; flex-wrap: wrap; }
.elva-pg .fpill{ display: inline-flex; align-items: center; gap: 8px; font-size:13.5px; font-weight: 600; color: var(--ink-2); background: #fff; border: 1px solid var(--cream-2); border-radius: 999px; padding: 7px 13px; }
.elva-pg .fpill.active{ background: var(--ink-0); color: #fff; border-color: var(--ink-0); }
.elva-pg .fpill .ct{ font-family: var(--font-mono); font-size:12.5px; color: var(--ink-4); }
.elva-pg .fpill.active .ct{ color: rgba(255,255,255,.6); }
.elva-pg .fpill .ad{ width: 6px; height: 6px; border-radius: 50%; background: var(--terracotta); }
.elva-pg .calls{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.elva-pg .calls.cols-1{ grid-template-columns: 1fr; }
.elva-pg .call{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-md); padding: 16px 17px 15px 19px; position: relative; overflow: hidden; transition: opacity .45s var(--ease-out), transform .45s var(--ease-out), box-shadow var(--dur-med); }
.elva-pg .call:hover{ box-shadow: var(--sh-2); }
.elva-pg .call::before{ content:''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--ink-4); }
.elva-pg .call.s-book::before{ background: var(--green-deep); }
.elva-pg .call.s-verify::before{ background: var(--caller); }
.elva-pg .call.s-urgent::before{ background: var(--terracotta); }
.elva-pg .call.s-transfer::before{ background: var(--ai-3); }
.elva-pg .call.s-new::before{ background: var(--ink-4); }
.elva-pg .call.enter{ opacity: 0; transform: translateY(10px); }
.elva-pg .call-head{ display: flex; align-items: center; gap: 9px; margin-bottom: 11px; }
.elva-pg .call-idx{ font-family: var(--font-mono); font-size:12.5px; color: var(--ink-4); }
.elva-pg .tag{ font-size:12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: 3px 8px; border-radius: 6px; font-family: var(--font-mono); }
.elva-pg .tag.inbound{ background: var(--green-soft); color: var(--green-deep); }
.elva-pg .tag.out{ background: var(--caller-soft); color: var(--caller); }
.elva-pg .tag.pt{ background: var(--ai-tint); color: #7a48c4; }
.elva-pg .tag.frustrated{ background: var(--terracotta-tint); color: var(--terracotta); display: inline-flex; align-items: center; gap: 5px; }
.elva-pg .call-timer{ margin-left: auto; font-family: var(--font-mono); font-size:14.5px; font-weight: 600; color: var(--ink-1); font-variant-numeric: tabular-nums; }
.elva-pg .call.s-urgent .call-timer{ color: var(--terracotta); }
.elva-pg .call-name{ font-size: 16px; font-weight: 600; color: var(--ink-0); }
.elva-pg .call-sub{ font-size:13px; color: var(--ink-3); font-family: var(--font-mono); margin-top: 4px; letter-spacing: .01em; }
.elva-pg .call-sub b{ color: var(--ink-2); font-weight: 600; }
.elva-pg .wave-wrap{ display: flex; align-items: center; gap: 11px; border-radius: 10px; padding: 9px 12px; margin-top: 12px; }
.elva-pg .wave-wrap.elva{ background: var(--green-soft); color: var(--green-deep); }
.elva-pg .wave-wrap.caller{ background: var(--caller-soft); color: var(--caller); }
.elva-pg .wave-lbl{ display: inline-flex; align-items: center; gap: 7px; font-family: var(--font-mono); font-size:12px; font-weight: 600; letter-spacing: .08em; flex: none; }
.elva-pg .wave-lbl i{ width: 18px; height: 18px; border-radius: 50%; background: currentColor; color: #fff; display: grid; place-items: center; font-size: 9px; font-weight: 700; }
.elva-pg .wave-lbl i b{ color: var(--green-deep); }
.elva-pg .wave-wrap.caller .wave-lbl i b{ color: var(--caller); }
.elva-pg .wave{ display: flex; align-items: center; gap: 2.5px; height: 26px; flex: 1; overflow: hidden; }
.elva-pg .wave i{ width: 3px; min-height: 3px; border-radius: 2px; background: currentColor; transform-origin: center; }
.elva-pg .call-quote{ font-size:14.5px; line-height: 1.5; color: var(--ink-1); margin-top: 12px; }
.elva-pg .call-foot{ display: flex; align-items: center; gap: 9px; margin-top: 13px; padding-top: 11px; border-top: 1px solid var(--cream-2); font-size:13.5px; color: var(--ink-2); }
.elva-pg .call-foot .fd{ width: 7px; height: 7px; border-radius: 50%; background: var(--green-deep); flex: none; }
.elva-pg .call.s-urgent .call-foot .fd{ background: var(--terracotta); }
.elva-pg .call.s-new .call-foot .fd{ background: var(--ink-4); }
.elva-pg .call-foot .now{ margin-left: auto; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: .12em; color: var(--ink-4); }
.elva-pg .fields{ display: flex; flex-direction: column; margin-top: 13px; }
.elva-pg .field{ display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-top: 1px solid var(--cream-2); font-size:13.5px; }
.elva-pg .field .k{ color: var(--ink-3); font-family: var(--font-mono); font-size:12.5px; }
.elva-pg .field .v{ color: var(--ink-1); font-weight: 600; text-align: right; }
.elva-pg .field .v.ok{ color: var(--green-deep); display: inline-flex; align-items: center; gap: 5px; }
.elva-pg .field .v.warn{ color: var(--terracotta); }
.elva-pg .field .v.blue{ color: var(--info); }
.elva-pg .wt{ display: grid; grid-template-columns: 0.82fr 1.18fr; gap: 0; }
.elva-pg .wt-left{ padding: 22px; border-right: 1px solid var(--cream-2); background: var(--cream-0); }
.elva-pg .wt-q{ font-family: var(--font-mono); font-size:12px; letter-spacing: .12em; text-transform: uppercase; color: var(--green-deep); margin-bottom: 14px; display: flex; align-items: center; gap: 8px; }
.elva-pg .wt-q svg{ width: 13px; height: 13px; stroke: currentColor; fill: none; stroke-width: 1.8; }
.elva-pg .wt-pt{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-md); padding: 17px; box-shadow: var(--sh-1); position: relative; }
.elva-pg .wt-pt::before{ content:''; position: absolute; top: 0; left: 0; right: 0; height: 3px; border-radius: 3px 3px 0 0; background: var(--grad-display); }
.elva-pg .wt-pt .pt-top{ display: flex; align-items: center; gap: 12px; }
.elva-pg .wt-pt .pt-av{ width: 42px; height: 42px; border-radius: 50%; background: var(--caller-soft); color: var(--caller); display: grid; place-items: center; font-size:16px; font-weight: 700; flex: none; }
.elva-pg .wt-pt .pt-name{ font-size: 16px; font-weight: 600; color: var(--ink-0); display: flex; align-items: center; gap: 9px; }
.elva-pg .wt-pt .pt-name .ub{ font-size:12px; font-weight: 700; color: var(--terracotta); background: var(--terracotta-tint); padding: 2px 7px; border-radius: 5px; letter-spacing: .04em; }
.elva-pg .wt-pt .pt-reason{ font-size:13px; color: var(--ink-3); margin-top: 3px; }
.elva-pg .wt-pickup{ margin-top: 16px; width: 100%; justify-content: center; }
.elva-pg .wt-right{ padding: 22px; }
.elva-pg .wt-sumcard{ background: var(--green-soft); border: 1px solid var(--green-line); border-radius: var(--r-md); padding: 18px 20px; position: relative; overflow: hidden; }
.elva-pg .wt-sumcard::before{ content:''; position: absolute; top:0; left:0; right:0; height: 3px; background: linear-gradient(90deg, var(--green-deep), var(--ai-5)); }
.elva-pg .wt-sumhead{ display: flex; align-items: center; gap: 9px; font-family: var(--font-mono); font-size:12.5px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--green-deep); }
.elva-pg .wt-sumhead svg{ width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 1.8; }
.elva-pg .wt-steps{ list-style: none; padding: 0; margin: 14px 0 0; display: flex; flex-direction: column; gap: 12px; counter-reset: s; }
.elva-pg .wt-steps li{ position: relative; padding-left: 32px; font-size:15px; line-height: 1.5; color: var(--ink-1); counter-increment: s; }
.elva-pg .wt-steps li::before{ content: counter(s); position: absolute; left: 0; top: -1px; width: 21px; height: 21px; border-radius: 50%; background: #fff; border: 1px solid var(--green-line); color: var(--green-deep); font-family: var(--font-mono); font-size:12.5px; font-weight: 600; display: grid; place-items: center; }
.elva-pg .wt-steps li b{ color: var(--ink-0); font-weight: 600; }
.elva-pg .wt-steps li.flag b{ color: var(--terracotta); }
.elva-pg .wt-transcript{ display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 16px; font-size:14.5px; font-weight: 600; color: var(--ink-2); }
.elva-pg .wt-transcript svg{ width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 1.8; }
.elva-pg .cd-head{ display: flex; align-items: center; gap: 13px; padding-bottom: 16px; border-bottom: 1px solid var(--cream-2); margin-bottom: 8px; }
.elva-pg .cd-av{ width: 40px; height: 40px; border-radius: 50%; background: var(--caller-soft); color: var(--caller); display: grid; place-items: center; font-size:15px; font-weight: 700; flex: none; }
.elva-pg .cd-summary{ background: var(--green-soft); border: 1px solid var(--green-line); border-radius: var(--r-md); padding: 15px 17px; margin: 16px 0; }
.elva-pg .cd-summary .sh{ font-family: var(--font-mono); font-size:12px; letter-spacing: .12em; text-transform: uppercase; color: var(--green-deep); margin-bottom: 8px; }
.elva-pg .cd-summary p{ font-size:14.5px; line-height: 1.55; color: var(--ink-1); }
.elva-pg .tl-lbl{ font-family: var(--font-mono); font-size:12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); margin-bottom: 12px; }
.elva-pg .timeline{ list-style: none; padding: 0; margin: 0; position: relative; }
.elva-pg .timeline::before{ content:''; position: absolute; left: 13px; top: 8px; bottom: 26px; width: 2px; background: var(--cream-2); }
.elva-pg .tl{ position: relative; padding: 0 0 18px 40px; }
.elva-pg .tl:last-child{ padding-bottom: 0; }
.elva-pg .tl-dot{ position: absolute; left: 4px; top: 0; width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 2px solid var(--green-deep); display: grid; place-items: center; z-index: 1; }
.elva-pg .tl-dot svg{ width: 10px; height: 10px; stroke: var(--green-deep); fill: none; stroke-width: 2.6; }
.elva-pg .tl.live .tl-dot{ background: var(--green-deep); }
.elva-pg .tl.live .tl-dot::after{ content:''; width: 7px; height: 7px; border-radius: 50%; background: #fff; }
.elva-pg .tl.live .tl-dot svg{ display: none; }
.elva-pg .tl-t{ font-size:15px; font-weight: 600; color: var(--ink-0); }
.elva-pg .tl-d{ font-size:13px; color: var(--ink-2); margin-top: 3px; }
.elva-pg .tl-time{ position: absolute; right: 0; top: 1px; font-family: var(--font-mono); font-size:12px; color: var(--ink-4); }
.elva-pg .cd-controls{ display: flex; gap: 9px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--cream-2); }
.elva-pg .cd-btn{ flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 7px; font-size:13.5px; font-weight: 600; padding: 11px; border-radius: var(--r-md); border: 1px solid var(--cream-2); background: #fff; color: var(--ink-1); }
.elva-pg .cd-btn svg{ width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 1.8; }
.elva-pg .cd-btn.prim{ background: var(--green-deep); color: #fff; border-color: transparent; }
.elva-pg .rep-head{ display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; flex-wrap: wrap; margin-bottom: 22px; }
.elva-pg .rep-title{ font-family: var(--font-display); font-weight: 700; font-size: 40px; letter-spacing: -.04em; line-height: 1; }
.elva-pg .rep-title .serif{ font-size: 42px; }
.elva-pg .rep-sub{ font-size:14.5px; color: var(--ink-3); margin-top: 12px; max-width: 52ch; line-height: 1.5; }
.elva-pg .rep-big{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-md); padding: 16px 22px; box-shadow: var(--sh-1); text-align: right; flex: none; }
.elva-pg .rep-big .rn{ font-size: 44px; font-weight: 700; letter-spacing: -.04em; color: var(--ink-0); line-height: 1; }
.elva-pg .rep-big .rl{ font-size:12.5px; color: var(--ink-3); margin-top: 6px; }
.elva-pg .rep-cards{ display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-bottom: 18px; }
.elva-pg .rep-card{ background: #fff; border: 1px solid var(--cream-2); border-radius: var(--r-md); padding: 14px 15px; }
.elva-pg .rep-card .rcl{ font-family: var(--font-mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); }
.elva-pg .rep-card .rcn{ font-size: 28px; font-weight: 700; letter-spacing: -.03em; color: var(--ink-0); margin-top: 9px; display: flex; align-items: baseline; gap: 7px; }
.elva-pg .rep-card .rcn .pc{ font-family: var(--font-mono); font-size:13px; font-weight: 600; }
.elva-pg .rep-card .track{ height: 5px; border-radius: 999px; background: var(--surface-mute); overflow: hidden; margin-top: 11px; }
.elva-pg .rep-card .track i{ display: block; height: 100%; border-radius: 999px; }
.elva-pg .rep-tbl{ border: 1px solid var(--cream-2); border-radius: var(--r-md); overflow: hidden; }
.elva-pg .rep-tr{ display: grid; grid-template-columns: 1fr 0.9fr 1.5fr 0.9fr; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--cream-2); font-size:13.5px; align-items: center; }
.elva-pg .rep-tr:last-child{ border-bottom: none; }
.elva-pg .rep-tr.head{ background: var(--cream-0); font-family: var(--font-mono); font-size: 9.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-3); }
.elva-pg .rep-tr .nm{ font-weight: 600; color: var(--ink-0); }
.elva-pg .rep-tr .dt{ color: var(--ink-3); font-family: var(--font-mono); font-size:12.5px; }
.elva-pg .rep-tr .dl{ color: var(--ink-2); }
.elva-pg .rep-tr .ins{ color: var(--ink-3); font-family: var(--font-mono); font-size:12.5px; text-align: right; }
.elva-pg .rpill{ font-size:12.5px; font-weight: 600; padding: 3px 9px; border-radius: 6px; white-space: nowrap; }
.elva-pg .rpill.oon{ background: var(--gold-tint); color: #b5821f; }
.elva-pg .rpill.date{ background: var(--surface-mute); color: var(--ink-2); }
.elva-pg .rpill.price{ background: var(--terracotta-tint); color: var(--terracotta); }
.elva-pg .hero{ position: relative; padding: 56px 0 40px; overflow: hidden; }
.elva-pg .hero-glow{ position: absolute; top: -200px; right: -160px; width: 680px; height: 680px; border-radius: 50%; pointer-events: none; z-index: 0; background: conic-gradient(from 200deg at 50% 50%, var(--ai-1), var(--ai-2), var(--ai-g1), var(--ai-g2), var(--ai-5), var(--ai-1)); filter: blur(130px); opacity: .28; animation: spin2 40s linear infinite; }
@keyframes spin2{ to { transform: rotate(360deg); } }
.elva-pg .hero-grid{ position: relative; z-index: 1; display: grid; grid-template-columns: 0.82fr 1.18fr; gap: 56px; align-items: center; }
.elva-pg .hero h1{ font-size: clamp(40px, 5vw, 64px); font-weight: 600; margin: 18px 0 0; max-width: 13ch; line-height: 1.02; }
.elva-pg .hero h1 .serif{ font-size: 1.02em; }
.elva-pg .hero-lead{ font-size: 17.5px; line-height: 1.6; color: var(--ink-2); margin-top: 24px; max-width: 52ch; text-wrap: pretty; }
.elva-pg .hero-cta{ display: flex; align-items: center; gap: 13px; margin-top: 32px; flex-wrap: wrap; }
.elva-pg .hero-chips{ display: flex; gap: 10px; margin-top: 28px; flex-wrap: wrap; }
.elva-pg .hchip{ display: inline-flex; align-items: center; gap: 8px; font-size:13.5px; font-weight: 550; color: var(--ink-1); background: #fff; border: 1px solid var(--cream-2); border-radius: 999px; padding: 8px 14px; box-shadow: var(--sh-1); }
.elva-pg .hchip svg{ width: 14px; height: 14px; stroke: var(--green-deep); fill: none; stroke-width: 1.9; }
.elva-pg .cap-caption{ font-size:13.5px; color: var(--ink-3); margin-top: 16px; display: flex; align-items: center; gap: 8px; }
.elva-pg .cap-caption.center{ justify-content: center; }
.elva-pg .cap-caption::before{ content:''; width: 16px; height: 1px; background: var(--cream-shadow); }
.elva-pg .live-dot{ position: relative; display: inline-flex; width: 8px; height: 8px; flex: none; }
.elva-pg .live-dot::before{ content:''; position:absolute; inset:0; border-radius:999px; background: currentColor; }
.elva-pg .live-dot::after{ content:''; position:absolute; inset:-3px; border-radius:999px; border:1.5px solid currentColor; animation: lpulse 2s cubic-bezier(.4,0,.2,1) infinite; }
@keyframes lpulse{ 0%{opacity:1;transform:scale(1);} 100%{opacity:0;transform:scale(2.6);} }
@media (prefers-reduced-motion: reduce){
.elva-pg [data-reveal]{ opacity: 1; transform: none; transition: none; }
.elva-pg .hero-glow,.elva-pg .live-dot::after,.elva-pg .cc-eyebrow .sp{ animation: none; }
}
@media (max-width: 1040px){
.elva-pg .hero-grid{ grid-template-columns: 1fr; gap: 40px; }
.elva-pg .feature{ grid-template-columns: 1fr; gap: 40px; }
.elva-pg .feature.alt .feat-text{ order: 0; }
.elva-pg .ux-stats{ grid-template-columns: repeat(2, 1fr); }
.elva-pg .rep-cards{ grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 920px){
.elva-pg .pain-grid,.elva-pg .cap-grid,.elva-pg .mini-row,.elva-pg .trust-grid{ grid-template-columns: 1fr; }
.elva-pg .calls{ grid-template-columns: 1fr; }
.elva-pg .wt{ grid-template-columns: 1fr; }
.elva-pg .wt-left{ border-right: none; border-bottom: 1px solid var(--cream-2); }
.elva-pg .foot-brand{ grid-column: 1 / -1; }
.elva-pg .section{ padding: 80px 0; }
}
@media (max-width: 560px){
.elva-pg .wrap,.elva-pg .wrap-wide{ padding: 0 20px; }
.elva-pg .ux-stats,.elva-pg .rep-cards{ grid-template-columns: 1fr; }
.elva-pg .rep-tr{ grid-template-columns: 1fr; gap: 4px; }
.elva-pg .rep-tr .ins,.elva-pg .rep-tr .dt{ text-align: left; }
.elva-pg .cta-card{ padding: 56px 26px; }
.elva-pg .cc-big{ font-size: 52px; }
.elva-pg .ui-body{ padding: 18px; }
}

/* ===== components ===== */

/* page-specific design tokens — pipeline strips source :root, so these ship raw on .elva-pg */
.elva-pg{ --green-deep:#1A6B49; --green-soft:#EAF3EE; --green-line:rgba(26,107,73,.16); --caller:#9A6B43; --caller-soft:#F3ECE1; --font-serif:'Newsreader',Georgia,'Times New Roman',serif; --grad-display:linear-gradient(96deg,#9B5CFF 0%,#5B8DEF 34%,#3FB8A8 64%,#C0892E 100%); }

/* sticky-safe horizontal clipping (overrides scoped body overflow-x:hidden) */
.elva-pg{ overflow-x: clip; }
/* image-slot override: when a real image is assigned in WP admin, it fills the slot */
.elva-pg .img-slot{ position:relative; }
.elva-pg .img-slot.has-img{ background:none; border-style:solid; }
.elva-pg .img-slot-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:inherit; display:block; }

/* ===== readability pass: secondary text one contrast step darker ===== */
.elva-pg{ --ink-2:#5A5A5F; --ink-3:#6E6E73; --ink-4:#98989E; }
