/* 21st Feature List Showcase, adapted to Next Step's existing design. */
.ns-services{background:var(--paper);border-top:1px solid var(--line);scroll-margin-top:100px;color:var(--ink)}
.ns-services-inner{max-width:1280px;padding:100px 48px;margin:auto}
.ns-services-header{margin-bottom:54px}.ns-services-header .eyebrow{display:block;margin-bottom:30px}
.ns-services-header h2{font-size:clamp(36px,4.5vw,58px);line-height:1.08;letter-spacing:-.045em;font-weight:500;margin:0}.ns-services-header h2 em{font-family:Georgia,serif;font-weight:400}
.ns-services-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:64px;align-items:start}
.ns-services-list{border-top:1px solid var(--line)}.ns-service-item{width:100%;display:flex;align-items:flex-start;gap:20px;border:0;border-bottom:1px solid var(--line);padding:26px 0;background:transparent;text-align:left;color:var(--ink);transition:color .2s}
.ns-service-number{font-size:12px;color:var(--muted);padding-top:7px}.ns-service-item-body{flex:1;min-width:0}.ns-service-title{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:23px;line-height:1.3;letter-spacing:-.025em;font-weight:500}
.ns-service-description{display:block;color:var(--muted);font-size:15px;line-height:1.65;max-width:330px;margin-top:16px}.ns-service-indicator{font-size:24px;line-height:1.2;font-weight:400}.ns-service-item.is-active .ns-service-number,.ns-service-item.is-active .ns-service-indicator{color:#a65c00}.ns-service-item.is-active{border-bottom-color:var(--orange)}
.ns-service-item:hover .ns-service-title{color:#9a5300}.ns-service-item:focus-visible,.ns-service-panel a:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
.ns-service-badge{font-size:10px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);border-radius:999px;padding:4px 8px;color:var(--muted);font-weight:400;white-space:nowrap}
.ns-service-panel[hidden]{display:none}.ns-service-display{min-width:0}.ns-service-panel{animation:ns-service-enter .3s ease}
.ns-service-browser{background:#e6e1d8;border:1px solid #d9d4cc;border-radius:16px;overflow:hidden;box-shadow:0 15px 40px #2424240a}.ns-service-browserbar{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#5c5954;padding:13px 18px;background:#f1eee8}.ns-service-browserbar>span:first-child{font-size:8px;letter-spacing:3px;color:#b0a99e}.ns-service-browser img{display:block;width:100%;height:auto;aspect-ratio:1100/764;object-fit:cover;object-position:top}
.ns-service-display-copy{padding-top:26px}.ns-service-kicker{font-size:10px;letter-spacing:.1em;color:var(--muted)}.ns-service-display-copy h3{font-size:25px;font-weight:500;letter-spacing:-.03em;line-height:1.2;margin:10px 0}.ns-service-display-copy p{font-size:14px;color:var(--muted);max-width:480px;margin:0 0 18px}.ns-service-display-copy a{gap:20px;border-bottom:1px solid var(--ink);padding-bottom:5px}
.ns-service-placeholder{min-height:560px;border:1px dashed #c9c2b6;border-radius:16px;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}.ns-placeholder-number{font-size:110px;line-height:1;letter-spacing:-.07em;color:#d4cec3;font-weight:400;margin-bottom:30px}.ns-service-placeholder h3{font-size:30px;font-weight:500;margin:20px 0 8px;letter-spacing:-.035em}.ns-service-placeholder p{margin:0;color:var(--muted)}.ns-placeholder-note{font-size:12px;margin-top:32px;color:var(--muted)}
@keyframes ns-service-enter{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:900px){.ns-services-inner{padding:80px 32px}.ns-services-grid{gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.ns-service-title{font-size:20px}.ns-service-placeholder{min-height:480px}}
@media(max-width:640px){.ns-services-inner{padding:66px 24px}.ns-services-header{margin-bottom:35px}.ns-services-header .eyebrow{margin-bottom:24px}.ns-services-grid{grid-template-columns:1fr;gap:32px}.ns-service-item{padding:22px 0;gap:16px}.ns-service-title{font-size:21px}.ns-service-description{max-width:none}.ns-service-placeholder{min-height:380px}.ns-service-display-copy h3{font-size:24px}.ns-service-browserbar{padding:11px 12px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.ns-service-panel{animation:none}.ns-service-item{transition:none}}
/* Keep all four options aligned with a stable display height. */
.ns-services-grid{--service-display-height:680px;align-items:start}
.ns-services-list{height:var(--service-display-height);display:grid;grid-template-rows:repeat(4,minmax(0,1fr))}
.ns-service-item{height:100%;align-items:center;padding:16px 0}
.ns-service-description{font-size:14px;line-height:1.5;margin-top:10px}
.ns-service-display{height:var(--service-display-height)}
.ns-service-panel:not([hidden]){height:100%;display:flex;flex-direction:column;animation:none}
.ns-service-browser{flex:1;min-height:0;display:flex;flex-direction:column}
.ns-service-browserbar{flex:none}
.ns-service-browser img{flex:1;min-height:0;height:0;aspect-ratio:auto;object-fit:cover;object-position:top}
.ns-service-display-copy{flex:none;padding-top:24px}
.ns-service-placeholder{height:100%;min-height:0;flex:1}
@media(max-width:900px) and (min-width:641px){.ns-services-grid{--service-display-height:720px}.ns-service-title{font-size:20px}.ns-service-description{font-size:13px}.ns-service-item{gap:12px}}
@media(max-width:640px){.ns-services-grid{--service-display-height:640px}.ns-services-list{height:640px}.ns-service-item{padding:14px 0}.ns-service-display{height:600px}.ns-service-description{font-size:14px}.ns-service-title{font-size:21px}}

.ns-service-chat{flex:1;min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}
.ns-chat-label{display:flex;align-items:center;justify-content:space-between;gap:12px}.ns-service-chat h3{font-weight:500;font-size:36px;line-height:1.08;letter-spacing:-.04em;margin:0}
.ns-chat-example{display:flex;flex-direction:column;gap:16px;font-size:14px;line-height:1.5}.ns-chat-question{align-self:flex-end;background:var(--ink);color:var(--paper);border-radius:16px 16px 4px 16px;padding:12px 18px;max-width:90%}.ns-chat-answer{align-self:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:16px 16px 16px 4px;padding:18px;max-width:90%}.ns-chat-agent-name{font-size:11px;font-weight:600}.ns-chat-answer p{margin:8px 0 14px;font-size:14px}.ns-chat-source{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:10px;display:block}.ns-chat-documents{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px}
@media(max-width:900px){.ns-service-chat{padding:22px}.ns-service-chat h3{font-size:30px}.ns-chat-label{flex-wrap:wrap}}
@media(max-width:640px){.ns-service-chat{padding:20px;gap:14px}.ns-service-chat h3{font-size:28px}.ns-chat-example{gap:10px}.ns-chat-question{padding:10px 14px;font-size:12px}.ns-chat-answer{padding:12px}.ns-chat-answer p{font-size:12px}.ns-chat-documents{font-size:10px}}

.ns-service-offer{flex:1;min-height:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}.ns-service-offer>h3{font-size:36px;line-height:1.08;font-weight:500;letter-spacing:-.04em;margin:0}.ns-offer-footnote{font-size:11px;color:var(--muted)}
.ns-quickstart-browser{background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden}.ns-quickstart-nav{display:flex;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);font-size:10px}.ns-quickstart-nav span{font-size:9px;color:var(--muted)}.ns-quickstart-content{padding:24px}.ns-quickstart-content h4{font-size:28px;font-weight:500;line-height:1.1;letter-spacing:-.035em;margin:12px 0}.ns-quickstart-content p{font-size:12px;color:var(--muted);margin:0 0 14px}.ns-quickstart-action{display:inline-block;font-size:11px;background:var(--orange);border-radius:999px;padding:9px 16px}
.ns-reviews-flow{display:flex;flex-direction:column;gap:12px}.ns-reviews-step{display:flex;gap:16px;align-items:center;border-top:1px solid var(--line);padding-top:12px}.ns-reviews-number{width:34px;height:34px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--orange);font-size:11px}.ns-reviews-step h4{margin:0 0 3px;font-size:17px;font-weight:500;line-height:1.2}.ns-reviews-step p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:900px){.ns-service-offer{padding:22px}.ns-service-offer>h3{font-size:30px}.ns-quickstart-nav{flex-wrap:wrap;gap:4px}.ns-quickstart-content{padding:18px}.ns-quickstart-content h4{font-size:25px}}
@media(max-width:640px){.ns-service-offer{padding:20px;gap:12px}.ns-service-offer>h3{font-size:28px}.ns-quickstart-content{padding:16px}.ns-quickstart-content h4{font-size:24px}.ns-quickstart-content p{font-size:11px}.ns-quickstart-content .ns-service-kicker{font-size:8px}.ns-reviews-flow{gap:10px}.ns-reviews-step{padding-top:10px;gap:12px}.ns-reviews-step h4{font-size:16px}.ns-reviews-step p{font-size:11px}.ns-offer-footnote{font-size:10px}}
