/* Shared service-page system */
.service-page { background: var(--warm-white); }
.service-main { overflow: clip; }
.service-shell { width: min(calc(100% - (var(--side) * 2)), 1240px); margin-inline: auto; }
.service-hero { display: flex; min-height: 650px; justify-content: center; flex-direction: column; padding: 178px 0 92px; }
.service-eyebrow { display: flex; align-items: center; gap: 10px; color: #71452c; font-size: 12px; font-weight: 700; letter-spacing: .14em; }
.service-eyebrow::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--orange); box-shadow: 0 0 0 6px rgba(251,174,23,.13); }
.service-hero h1 { max-width: 900px; margin-top: 28px; font-family: Archivo, sans-serif; font-size: clamp(58px, 6.2vw, 88px); font-weight: 500; line-height: .96; letter-spacing: -.055em; }
.service-hero h1 span { display: block; color: #9d948b; }
.service-hero__sub { max-width: 52ch; margin-top: 30px; color: #525252; font-size: 18px; line-height: 1.65; }
.service-hero__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 36px; }
.service-text-link { display: inline-flex; min-height: 44px; align-items: center; padding-inline: 4px; font-size: 15px; font-weight: 600; }
.service-text-link:hover { opacity: .58; }

/* Demo centerpiece */
.service-demo-section { padding-bottom: 128px; }
.demo-stage { position: relative; min-height: 560px; padding: 44px; overflow: hidden; border-radius: 24px; background: #120e0a; box-shadow: 0 34px 90px rgba(70,34,16,.2); color: #fff; isolation: isolate; }
.demo-stage::before { content: ""; position: absolute; z-index: -1; top: -210px; left: 8%; width: 560px; height: 560px; border-radius: 50%; background: radial-gradient(circle, rgba(251,139,75,.25), rgba(241,88,75,.08) 45%, transparent 72%); }
.demo-stage::after { content: ""; position: absolute; z-index: -1; right: -180px; bottom: -260px; width: 620px; height: 620px; border-radius: 50%; background: radial-gradient(circle, rgba(255,196,77,.18), transparent 68%); }
.demo-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 26px; color: #8f8177; font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.demo-toolbar__status { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border-radius: 999px; background: rgba(255,255,255,.06); color: #ffd36c; }
.demo-toolbar__status::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #ffc44d; }
.demo-grid { position: relative; display: grid; min-width: 0; grid-template-columns: minmax(0, .84fr) minmax(0, 1.16fr); gap: 24px; }
.demo-grid > * { min-width: 0; }
.demo-window { min-width: 0; padding: 22px; border-radius: 20px; background: rgba(38,29,23,.86); box-shadow: 0 0 0 1px rgba(255,255,255,.08), 0 22px 54px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.04); }
.demo-window__header { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; color: #978a80; font-size: 10px; font-weight: 700; letter-spacing: .1em; }
.demo-window__header b { color: #ffc44d; font-weight: 600; }
.demo-stage [data-animate] { opacity: 0; transform: translateY(13px) scale(.985); transition-property: transform, opacity; transition-duration: 440ms; transition-timing-function: cubic-bezier(.2,0,0,1); }
.demo-stage [data-animate].is-on { opacity: 1; transform: none; }
.demo-stage [data-animate].is-out { opacity: 0; transform: translateX(-32px) scale(.985); transition-duration: 230ms; }
.demo-stage .slide-right { transform: translateX(22px) scale(.985); }
.demo-stage .slide-left { transform: translateX(-22px) scale(.985); }
.demo-stage .scale-in { transform: scale(.25); }
.demo-chip { display: inline-flex; width: fit-content; align-items: center; gap: 6px; padding: 7px 10px; border-radius: 999px; background: rgba(255,196,77,.12); box-shadow: inset 0 0 0 1px rgba(255,196,77,.18); color: #ffd36c; font-size: 10px; font-weight: 700; }
.demo-chip--solid { background: var(--sunset); box-shadow: none; color: #21130a; }
.demo-muted { color: #9c8e83; }
.demo-stage img { outline: 1px solid rgba(255,255,255,.1); outline-offset: -1px; }
.demo-stage strong, .demo-stage b, .demo-metric, .demo-counter { font-variant-numeric: tabular-nums; }
.demo-caret::after { content: ""; display: inline-block; width: 1px; height: 1em; margin-left: 3px; background: #ffc44d; vertical-align: -.12em; animation: serviceCaret .72s steps(1,end) infinite; }
@keyframes serviceCaret { 50% { opacity: 0; } }

/* Speed to lead */
.lead-stack { display: grid; gap: 10px; }
.demo-lead { display: grid; min-height: 66px; grid-template-columns: 11px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; background: #1b1511; box-shadow: inset 0 0 0 1px rgba(255,255,255,.06); }
.demo-lead i { width: 9px; height: 9px; border-radius: 50%; background: var(--lead-color, #ffc44d); }
.demo-lead b, .demo-lead small { display: block; }
.demo-lead b { font-size: 13px; font-weight: 600; }
.demo-lead small { margin-top: 2px; color: #8f8177; font-size: 10px; }
.demo-lead time { color: #7e7168; font-size: 10px; }
.demo-lead > span, .inventory-row > span, .market-copy, .prospect-row > div { min-width: 0; }
.conversation { position: relative; min-height: 384px; }
.demo-bubble { width: fit-content; max-width: 84%; margin-bottom: 10px; padding: 11px 14px; border-radius: 16px 16px 16px 5px; background: #34271e; color: #e9e2dc; font-size: 12px; line-height: 1.45; }
.demo-bubble--buyer { margin-left: auto; border-radius: 16px 16px 5px 16px; background: #f1e8de; color: #2a2019; }
.demo-bubble--confirm { margin-left: auto; background: #ffc44d; color: #21130a; }
.demo-typing { display: flex; width: 54px; gap: 5px; }
.demo-typing i { width: 5px; height: 5px; border-radius: 50%; background: #b4a69a; animation: serviceTyping .8s ease-in-out infinite alternate; }
.demo-typing i:nth-child(2) { animation-delay: -.25s; }.demo-typing i:nth-child(3) { animation-delay: -.5s; }
@keyframes serviceTyping { to { opacity: .3; transform: translateY(-3px); } }
.reply-speed { position: absolute; right: 22px; bottom: 20px; }
.appointment-card { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 12px; margin-top: 16px; padding: 13px; border-radius: 14px; background: rgba(251,139,75,.12); box-shadow: inset 0 0 0 1px rgba(251,174,23,.22); }
.appointment-card i { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; background: var(--sunset); color: #21130a; font-style: normal; }
.appointment-card b, .appointment-card small { display: block; }.appointment-card b { font-size: 12px; }.appointment-card small { color: #aa9b90; font-size: 10px; }

/* Campaign automation */
.inventory-list { display: grid; gap: 11px; }
.inventory-row { display: grid; grid-template-columns: 78px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 9px; border-radius: 14px; background: #1b1511; box-shadow: inset 0 0 0 1px rgba(255,255,255,.06); }
.inventory-row img { width: 78px; height: 58px; object-fit: cover; border-radius: 10px; }
.inventory-row b, .inventory-row small { display: block; }.inventory-row b { font-size: 12px; }.inventory-row small { margin-top: 3px; color: #8e8177; font-size: 9px; }
.inventory-row em { color: #ffc44d; font-size: 9px; font-style: normal; }
.campaign-composer { position: relative; }
.assembled-ad { display: grid; grid-template-columns: 126px minmax(0,1fr); gap: 15px; padding: 12px; border-radius: 16px; background: #1b1511; box-shadow: inset 0 0 0 1px rgba(255,255,255,.07); }
.assembled-ad img { width: 126px; height: 104px; object-fit: cover; border-radius: 12px; }
.assembled-ad small, .assembled-ad strong { display: block; }.assembled-ad small { color: #8f8177; font-size: 9px; letter-spacing: .08em; }.assembled-ad strong { min-height: 48px; margin-top: 7px; font: 600 17px/1.25 Archivo,sans-serif; }
.push-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 13px; }
.budget-panel { margin-top: 16px; padding: 14px; border-radius: 14px; background: rgba(255,255,255,.04); }
.budget-row { display: grid; grid-template-columns: 74px minmax(0,1fr) 34px; align-items: center; gap: 10px; margin-top: 9px; color: #ac9e93; font-size: 9px; }
.budget-track { height: 6px; overflow: hidden; border-radius: 99px; background: #3b3029; }
.budget-track i { display: block; width: 100%; height: 100%; border-radius: inherit; background: var(--sunset); transform: scaleX(0); transform-origin: left; transition-property: transform, opacity; transition-duration: 900ms; transition-timing-function: cubic-bezier(.2,0,0,1); }
.budget-track i.is-on { opacity: 1; transform: scaleX(var(--fill, .6)); }
.demo-metrics { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin-top: 14px; }
.demo-metrics span { padding: 10px; border-radius: 12px; background: #1b1511; color: #8f8177; font-size: 9px; }
.demo-metrics strong { display: block; margin-top: 4px; color: #ffc44d; font-size: 16px; }
.sold-flag { position: absolute; z-index: 3; top: 72px; left: 50%; transform: translate(-50%,12px) rotate(-4deg) !important; padding: 10px 17px; border-radius: 999px; background: #fff2e8; color: #b83a2e; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.sold-flag.is-on { transform: translate(-50%,0) rotate(-4deg) !important; }

/* CRM autopilot */
.call-card { position: relative; }
.call-person { display: flex; align-items: center; gap: 12px; }
.call-person i { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: var(--sunset); color: #21130a; font: 700 13px Archivo,sans-serif; }
.call-person b, .call-person small { display: block; }.call-person b { font-size: 13px; }.call-person small { color: #94867c; font-size: 10px; }
.service-wave { display: flex; height: 82px; align-items: center; justify-content: center; gap: 6px; margin: 18px 0; }
.service-wave i { width: 5px; height: 58px; border-radius: 99px; background: var(--sunset); transform: scaleY(.22); animation: serviceWave 920ms ease-in-out infinite alternate; }
.service-wave i:nth-child(2n) { animation-delay: -.45s; }.service-wave i:nth-child(3n) { animation-delay: -.7s; }
@keyframes serviceWave { to { transform: scaleY(1); } }
.transcript { display: grid; gap: 8px; }
.transcript p { min-height: 34px; padding: 9px 11px; border-radius: 11px; background: #1b1511; color: #b6aaa0; font-size: 10px; line-height: 1.45; }
.call-queue { margin-top: 12px; padding: 10px 12px; border-radius: 12px; background: rgba(255,196,77,.08); color: #c6b8ad; font-size: 10px; }
.crm-record { display: grid; gap: 9px; }
.crm-record__row { display: grid; min-height: 48px; grid-template-columns: 92px minmax(0,1fr); align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; background: #1b1511; }
.crm-record__row span { color: #82756b; font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.crm-record__row strong { min-width: 0; font-size: 12px; overflow-wrap: anywhere; }
.crm-sync-done { justify-self: end; margin-top: 5px; }

/* Reactivation */
.aging-unit { display: grid; grid-template-columns: 132px minmax(0,1fr); gap: 17px; }
.aging-unit img { width: 132px; height: 116px; object-fit: cover; border-radius: 14px; }
.aging-unit h3 { margin: 7px 0 4px; font: 600 18px Archivo,sans-serif; }
.day-badge { color: #ffc44d; font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.price-switch { position: relative; min-height: 76px; margin-top: 20px; }
.price-old, .price-new { position: absolute; inset: 0 auto auto 0; font: 600 46px/1 Archivo,sans-serif; letter-spacing: -.04em; }
.price-old { color: #7d7169; }
.price-old::after { content: ""; position: absolute; top: 52%; left: -3%; width: 106%; height: 3px; border-radius: 99px; background: #f1584b; transform: scaleX(0); transform-origin: left; transition-property: transform, opacity; transition-duration: 420ms; }
.price-old.is-cut::after { transform: scaleX(1); }
.price-new { color: #ffc44d; }
.text-fan { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.mini-text { max-width: 180px; padding: 8px 10px; border-radius: 12px 12px 12px 4px; background: #f0e7df; color: #2b211b; font-size: 9px; }
.response-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.next-unit { display: flex; align-items: center; gap: 10px; margin-top: 15px; padding: 10px; border-radius: 12px; background: #1b1511; color: #9c8e83; font-size: 10px; }
.next-unit img { width: 46px; height: 36px; object-fit: cover; border-radius: 8px; }

/* Marketplace */
.market-listing { display: grid; grid-template-columns: 44% minmax(0,1fr); gap: 18px; }
.market-listing > img { width: 100%; height: 250px; object-fit: cover; border-radius: 16px; }
.market-copy h3 { margin: 8px 0 6px; font: 600 20px Archivo,sans-serif; }
.market-description { min-height: 88px; color: #aea096; font-size: 11px; line-height: 1.55; }
.market-statuses { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 13px; }
.freshness { margin-top: 16px; color: #8f8177; font-size: 10px; }
.market-dm { display: grid; gap: 9px; margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.08); }
.market-dm .demo-bubble { max-width: 72%; margin-bottom: 0; }
.market-sold { justify-self: end; }

/* Reviews */
.review-demo { grid-template-columns: .72fr 1.28fr; }
.delivery-card { display: flex; min-height: 164px; justify-content: center; flex-direction: column; align-items: center; text-align: center; }
.delivery-check { display: grid; width: 58px; height: 58px; place-items: center; border-radius: 50%; background: var(--sunset); color: #21130a; font-size: 22px; }
.delivery-card h3 { margin-top: 15px; font: 600 19px Archivo,sans-serif; }
.review-request { margin-top: 18px; }
.google-review { padding: 20px; border-radius: 18px; background: #f7f1eb; color: #211a15; box-shadow: 0 18px 48px rgba(0,0,0,.25); }
.review-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.review-head b { font-size: 13px; }.review-head span { color: #777; font-size: 9px; }
.stars { display: flex; gap: 4px; margin: 15px 0 10px; color: #f7b718; font-size: 21px; }
.stars i { font-style: normal; opacity: .18; transform: scale(.75); transition-property: transform, opacity; transition-duration: 280ms; transition-timing-function: cubic-bezier(.2,0,0,1); }
.stars i.is-on { opacity: 1; transform: scale(1); }
.review-copy { min-height: 54px; color: #4f4842; font-size: 11px; line-height: 1.55; }
.owner-response { margin-top: 14px; padding: 12px; border-radius: 12px; background: #eae1d9; color: #514941; font-size: 10px; }
.review-total { display: flex; align-items: baseline; justify-content: space-between; margin-top: 14px; color: #9a8d83; font-size: 10px; }.review-total strong { color: #ffc44d; font-size: 25px; }

/* Newsletters */
.newsletter-demo { grid-template-columns: 1.08fr .92fr; }
.email-subject { min-height: 48px; margin-bottom: 14px; padding: 13px; border-radius: 12px; background: #1b1511; font: 600 13px Archivo,sans-serif; }
.vehicle-blocks { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.vehicle-block { overflow: hidden; border-radius: 12px; background: #1b1511; }
.vehicle-block img { width: 100%; height: 92px; object-fit: cover; }
.vehicle-block span { display: block; padding: 9px; color: #b8aaa0; font-size: 9px; }
.send-row { display: flex; justify-content: flex-end; margin-top: 14px; }
.trade-timeline { position: relative; display: grid; gap: 15px; padding-left: 20px; }
.trade-timeline::before { content: ""; position: absolute; top: 8px; bottom: 8px; left: 5px; width: 1px; background: rgba(255,255,255,.13); }
.timeline-item { position: relative; padding: 12px; border-radius: 12px; background: #1b1511; color: #b5a79d; font-size: 10px; }
.timeline-item::before { content: ""; position: absolute; top: 17px; left: -19px; width: 9px; height: 9px; border-radius: 50%; background: #ffc44d; box-shadow: 0 0 0 5px #2a2019; }
.timeline-item b { display: block; margin-bottom: 3px; color: #fff; font-size: 11px; }
.equity-outreach { margin-top: 18px; padding: 15px; border-radius: 14px; background: rgba(251,139,75,.12); box-shadow: inset 0 0 0 1px rgba(251,174,23,.2); color: #e9ded5; font-size: 11px; line-height: 1.5; }
.equity-outreach .demo-chip { margin-top: 10px; }

/* Cold email */
.prospect-table { display: grid; gap: 8px; }
.prospect-row { display: grid; min-height: 53px; grid-template-columns: minmax(0,1fr) minmax(0,.9fr) auto; align-items: center; gap: 9px; padding: 9px 11px; border-radius: 12px; background: #1b1511; }
.prospect-row b, .prospect-row small { display: block; }.prospect-row b { font-size: 11px; }.prospect-row small { color: #867970; font-size: 9px; }
.prospect-status { color: #ffc44d; font-size: 9px; }
.email-compose { display: grid; gap: 11px; }
.email-line { min-height: 46px; padding: 12px; border-radius: 12px; background: #1b1511; color: #a99b91; font-size: 10px; line-height: 1.5; }
.email-line strong { color: #fff; }
.merge-field { display: inline-block; padding: 1px 5px; border-radius: 5px; background: rgba(251,174,23,.14); color: #ffc44d; }
.email-body { min-height: 130px; }
.send-flight { display: flex; align-items: center; justify-content: flex-end; gap: 8px; color: #ffc44d; font-size: 10px; }
.send-flight i { display: inline-block; font-style: normal; }

/* Content sections */
.service-features { padding: 124px 0; }
.service-section-heading { max-width: 720px; font-family: Archivo,sans-serif; font-size: clamp(42px,4.2vw,62px); font-weight: 500; line-height: 1.02; letter-spacing: -.045em; }
.service-section-heading > span { display: block; color: #9d948b; }
.service-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin-top: 64px; }
.service-feature-card { display: flex; min-width: 0; min-height: 240px; flex-direction: column; padding: 28px; border-radius: 16px; background: #fff; box-shadow: 0 1px 2px rgba(0,0,0,.05), 0 8px 24px rgba(0,0,0,.06); transition-property: transform, box-shadow; transition-duration: 250ms; transition-timing-function: cubic-bezier(.2,0,0,1); }
.service-feature-card:hover { transform: translateY(-4px); box-shadow: 0 2px 4px rgba(0,0,0,.07), 0 18px 40px rgba(63,37,20,.13); }
.service-feature-card__top { display: flex; min-width: 0; align-items: center; gap: 14px; }
.service-feature-icon { display: grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; border-radius: 12px; background: linear-gradient(145deg,#fff4d2,#ffc86b 48%,#fb8b4b); background-size: 180% 180%; background-position: 0 50%; color: #6b351e; font: 700 17px Archivo,sans-serif; box-shadow: inset 0 1px rgba(255,255,255,.7); transition-property: background-position; transition-duration: 250ms; transition-timing-function: cubic-bezier(.2,0,0,1); }
.service-feature-card:hover .service-feature-icon { background-position: 100% 50%; }
.service-feature-card h3 { min-width: 0; font: 600 22px/1.15 Archivo,sans-serif; letter-spacing: -.025em; text-wrap: balance; }
.service-feature-card p { margin-top: 12px; color: #525252; font-size: 15px; line-height: 1.6; text-wrap: pretty; }
.service-feature-detail { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 7px; margin-top: auto; padding-top: 20px; }
.service-detail-chip { display: inline-flex; max-width: 100%; min-height: 28px; align-items: center; padding: 7px 10px; border: 1px solid #e5e5e5; border-radius: 999px; background: #f5f5f5; color: var(--ink); font-size: 11px; font-weight: 600; line-height: 1.15; overflow-wrap: anywhere; }
.service-detail-chip--message { border-color: #1c1c1e; background: #1c1c1e; color: #fff; }
.service-detail-chip--success { border-color: transparent; background: var(--sunset); color: #21130a; }
.service-detail-chip--tabular, .service-budget-labels, .service-price-detail { font-variant-numeric: tabular-nums; }
.service-budget-detail { display: block; }
.service-budget-labels { display: flex; justify-content: space-between; gap: 12px; color: var(--mid); font-size: 11px; }
.service-budget-labels span { min-width: 0; }
.service-budget-labels strong { color: var(--ink); font-weight: 600; white-space: nowrap; }
.service-budget-bar { display: flex; height: 8px; gap: 2px; margin-top: 9px; overflow: hidden; border-radius: 999px; background: #f5f5f5; }
.service-budget-bar i { display: block; height: 100%; background: var(--sunset); transition-property: transform, background; transition-duration: 250ms; transition-timing-function: cubic-bezier(.2,0,0,1); }
.service-budget-bar i:first-child { width: 64%; transform-origin: left; }
.service-budget-bar i:last-child { width: 36%; background: var(--orange); transform-origin: right; }
.service-feature-card:hover .service-budget-bar i:first-child { transform: scaleX(.88); }
.service-feature-card:hover .service-budget-bar i:last-child { transform: scaleX(1.18); }
.service-price-detail { gap: 9px; color: var(--mid); font-size: 15px; }
.service-price-detail span { position: relative; }
.service-price-detail span::after { content: ""; position: absolute; top: 52%; left: -3%; width: 106%; height: 2px; border-radius: 999px; background: #f1584b; }
.service-price-detail i { color: var(--muted); font-style: normal; }
.service-price-detail strong { color: var(--orange-dot); font: 600 18px Archivo,sans-serif; }
.service-how { padding: 118px 0; background: #f6eee5; }
.service-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 44px; margin-top: 72px; }
.service-step { min-width: 0; }
.service-step strong { display: block; color: #bd6d3c; font: 500 44px/1 Archivo,sans-serif; letter-spacing: -.04em; }
.service-step i { display: block; width: 100%; height: 1px; margin: 24px 0; background: #d9c9b8; transform-origin: left; }
.service-step p { max-width: 28ch; color: #4f4944; font-size: 17px; line-height: 1.5; }
.service-stats { padding: 84px 0; background: #1a130e; color: #fff; }
.service-stats-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.service-stat { min-height: 180px; padding: 25px 42px; border-right: 1px solid rgba(255,255,255,.12); }
.service-stat:first-child { padding-left: 0; }.service-stat:last-child { padding-right: 0; border-right: 0; }
.service-stat strong { display: block; color: #ffc44d; font: 600 clamp(56px,5.1vw,74px)/1 Archivo,sans-serif; letter-spacing: -.05em; font-variant-numeric: tabular-nums; }
.service-stat--compact strong { font-size: clamp(36px,3.7vw,54px); overflow-wrap: anywhere; }
.service-stat span { display: block; max-width: 24ch; margin-top: 18px; color: #a99a90; font-size: 15px; line-height: 1.45; }
.service-cta { padding: 120px 0; }
.service-cta-panel { display: flex; min-height: 390px; align-items: center; justify-content: space-between; gap: 48px; padding: 64px; overflow: hidden; border-radius: 24px; background: var(--sunset); color: #fff; box-shadow: inset 0 1px rgba(255,255,255,.35), 0 30px 70px rgba(143,61,35,.18); }
.service-cta-panel h2 { max-width: 760px; font: 500 clamp(48px,5vw,72px)/1 Archivo,sans-serif; letter-spacing: -.055em; }
.service-cta-panel .button { flex: none; }

/* Osmo-inspired group reveal, rebuilt without a runtime dependency */
[data-service-reveal] > * { opacity: 0; transform: translateY(24px); transition-property: transform, opacity; transition-duration: 720ms; transition-timing-function: cubic-bezier(.2,0,0,1); transition-delay: var(--reveal-delay,0ms); }
[data-service-reveal].is-visible > * { opacity: 1; transform: none; }
.service-feature-grid.is-reveal-complete > .service-feature-card { transition-property: transform, box-shadow; transition-duration: 250ms; transition-delay: 0ms; }

@media (max-width: 900px) {
  .service-hero { min-height: 620px; padding-top: 156px; }
  .demo-stage { min-height: 620px; padding: 32px; }
  .demo-grid { gap: 16px; }
  .service-feature-grid { grid-template-columns: 1fr; }
  .service-feature-card { min-height: 240px; }
  .service-steps { gap: 24px; }
  .service-stat { padding-inline: 24px; }
  .service-cta-panel { min-height: 340px; padding: 48px; }
}

@media (max-width: 640px) {
  .service-hero { min-height: 610px; padding: 132px 0 72px; }
  .service-hero h1 { font-size: 50px; }
  .service-hero__sub { font-size: 16px; }
  .service-hero__actions { align-items: flex-start; flex-direction: column; gap: 12px; }
  .service-demo-section { padding-bottom: 88px; }
  .demo-stage { min-height: 0; padding: 24px 16px; border-radius: 20px; }
  .demo-toolbar { margin-bottom: 18px; }
  .demo-grid, .review-demo, .newsletter-demo { grid-template-columns: 1fr; }
  .demo-window { padding: 16px; border-radius: 16px; }
  .conversation { min-height: 360px; }
  .reply-speed { right: 16px; bottom: 16px; }
  .inventory-row { grid-template-columns: 64px minmax(0,1fr) auto; }.inventory-row img { width: 64px; height: 52px; }
  .assembled-ad { grid-template-columns: 92px minmax(0,1fr); }.assembled-ad img { width: 92px; height: 90px; }.assembled-ad strong { font-size: 14px; }
  .demo-metrics { grid-template-columns: 1fr 1fr 1fr; }.demo-metrics span { padding: 8px; }.demo-metrics strong { font-size: 13px; }
  .crm-record__row { grid-template-columns: 78px minmax(0,1fr); }
  .aging-unit { grid-template-columns: 98px minmax(0,1fr); }.aging-unit img { width: 98px; height: 96px; }.price-old, .price-new { font-size: 39px; }
  .market-listing { grid-template-columns: 1fr; }.market-listing > img { height: 190px; }
  .vehicle-blocks { grid-template-columns: 1fr 1fr; }.vehicle-block:last-child { grid-column: 1 / -1; }.vehicle-block img { height: 84px; }
  .prospect-row { grid-template-columns: minmax(0,1fr) auto; }.prospect-row > div:nth-child(2) { display: none; }
  .service-features, .service-how, .service-cta { padding: 88px 0; }
  .service-feature-grid { margin-top: 44px; }
  .service-feature-card { padding: 24px; }
  .service-detail-chip { font-size: 10px; }
  .service-steps { grid-template-columns: 1fr; gap: 50px; margin-top: 52px; }
  .service-step p { max-width: none; }
  .service-stats { padding: 60px 0; }
  .service-stats-grid { grid-template-columns: 1fr; }
  .service-stat, .service-stat:first-child, .service-stat:last-child { min-height: 150px; padding: 28px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.12); }
  .service-stat:last-child { border-bottom: 0; }
  .service-cta-panel { min-height: 420px; align-items: flex-start; justify-content: center; flex-direction: column; padding: 34px 26px; }
  .service-cta-panel h2 { font-size: 48px; }
}

@media (prefers-reduced-motion: reduce) {
  .demo-stage [data-animate], .demo-stage [data-animate].is-on, .demo-stage [data-animate].is-out, .demo-stage .budget-track i, .demo-stage .stars i { opacity: 1; transform: none; }
  .demo-stage .budget-track i { transform: scaleX(var(--fill,1)); }
  .demo-stage .sold-flag, .demo-stage .sold-flag.is-on { transform: translate(-50%,0) rotate(-4deg) !important; }
  .demo-stage .demo-typing { display: none; }
  .service-wave i, .demo-typing i, .demo-caret::after { animation: none !important; }
  [data-service-reveal] > * { opacity: 1; transform: none; }
}
