/* Extend the existing Savnt design for clearer restaurant and integration content. */
.hero-actions { flex-wrap: wrap; gap: 22px; }
.offer-note { margin-top: 22px; max-width: 590px; font-size: 1rem; line-height: 1.6; color: var(--soft); }
.offer-note strong { color: var(--green); font-weight: 500; }
.metric-note { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 28px; padding: 30px 0; border-bottom: 1px solid var(--line); }
.metric-note p { max-width: 790px; font-size: 1.0625rem; color: #b9c0ba; }
.onboarding-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.onboarding-facts > div { padding: 34px 32px; border-right: 1px solid var(--line); }
.onboarding-facts > div:first-child { padding-left: 0; }
.onboarding-facts > div:last-child { padding-right: 0; border: 0; }
.fact-value { display: block; margin-bottom: 25px; color: var(--green); font: 400 clamp(3.7rem, 6vw, 5.5rem)/1 'Instrument Serif', Georgia, serif; }
.fact-value > span { display: inline-block; font: 500 .875rem/1.5 'JetBrains Mono', monospace; letter-spacing: .04em; }
.onboarding-facts h3 { font: 400 1.75rem/1.2 'Instrument Serif', Georgia, serif; margin-bottom: 14px; }
.onboarding-facts p { color: var(--soft); font-size: 1rem; }
.connected-line { padding: 28px 0 38px; display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; }
.connected-line p { max-width: 730px; line-height: 1.8; font-size: 1rem; color: #c1c8c2; }
.connected-line p > span { display: block; color: var(--soft); font-size: .875rem; margin-bottom: 5px; }
.connected-line .text-link { flex-shrink: 0; max-width: 260px; }
.free-offer { display: flex; justify-content: space-between; align-items: center; gap: 40px; padding: 40px; border: 1px solid rgba(196,240,77,.35); background: linear-gradient(120deg, rgba(196,240,77,.055), rgba(196,240,77,.012)); }
.free-offer h3, .free-offer h2 { font: 400 clamp(2.25rem, 3.8vw, 3.25rem)/1.08 'Instrument Serif', Georgia, serif; letter-spacing: -.01em; margin: 16px 0 20px; }
.free-offer em { color: var(--green); font-weight: 400; }
.free-offer p { max-width: 650px; color: #b6beb7; font-size: 1.0625rem; }
.free-offer > .btn { flex-shrink: 0; }
.integration-card h2 { margin: 48px 0 35px; }
.integration-list { border-top: 1px solid var(--line); }
.integration-row { display: grid; grid-template-columns: minmax(230px, .85fr) minmax(0, 1.15fr); gap: 60px; padding: 34px 0; border-bottom: 1px solid var(--line); }
.integration-kind, .feed-label { color: var(--green); font: 500 .875rem/1.6 'JetBrains Mono', monospace; letter-spacing: .035em; }
.integration-row h3 { font: 400 clamp(2.25rem, 4vw, 3rem)/1.15 'Instrument Serif', Georgia, serif; margin-top: 14px; }
.integration-row p { color: #b7beb8; font-size: 1.125rem; line-height: 1.65; }
.feed-label { display: block; color: #8e998f; margin-top: 17px; }
.connection-note { margin-top: 25px; max-width: 880px; font-size: .9375rem; line-height: 1.6; color: #a1aaa2; }
.future-copy p + p { margin-top: 22px; }
.setup-steps { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.setup-steps li { padding: 32px 32px 15px 0; }
.setup-steps li + li { padding-left: 32px; border-left: 1px solid var(--line); }
.step-number { color: var(--green); font: 500 .875rem/1.5 'JetBrains Mono', monospace; }
.setup-steps h3 { font: 400 2rem/1.15 'Instrument Serif', Georgia, serif; margin: 35px 0 18px; }
.setup-steps p { color: #afb8b0; font-size: 1.0625rem; }
.offer-section { padding: 75px 0; }
.free-offer-large { padding: 55px 44px; }
.free-offer-large h2 { font-size: clamp(2.8rem, 4.5vw, 4.3rem); }
.question-list { border-top: 1px solid var(--line); }
.question-list details { border-bottom: 1px solid var(--line); padding: 0; }
.question-list summary { padding: 23px 36px 23px 0; cursor: pointer; position: relative; list-style: none; font-size: 1.125rem; line-height: 1.5; color: #e1e5e1; }
.question-list summary::-webkit-details-marker { display: none; }
.question-list summary::after { content: '+'; position: absolute; right: 4px; top: 23px; color: var(--green); }
.question-list details[open] summary::after { content: '−'; }
.question-list details > p { padding: 0 36px 25px 0; max-width: 900px; font-size: 1.0625rem; color: #b1bab2; }
.question-list summary:focus-visible { outline: 2px solid var(--green); outline-offset: 5px; }
.eyebrow, .section-label, .cap-num, .program .tag, .site-menu-label { font-size: .875rem; }
.nav-cta, .btn, .text-link { font-size: .875rem; letter-spacing: .075em; }
.site-menu-primary a { font-size: clamp(2.8rem, 5.1vw, 4.4rem); }
@media (max-width: 1000px) {
 .connected-line { align-items: flex-start; flex-direction: column; gap: 15px; }
 .free-offer { flex-direction: column; align-items: flex-start; gap: 26px; }
 .onboarding-facts > div { padding-inline: 22px; }
}
@media (max-width: 900px) {
 .site-menu-grid { grid-template-columns: 1fr; gap: 30px; }
 .site-menu-utility { padding-top: 0; }
}
@media (max-width: 700px) {
 .metric-note { grid-template-columns: 1fr; gap: 15px; }
 .onboarding-facts, .setup-steps { grid-template-columns: 1fr; }
 .onboarding-facts > div, .onboarding-facts > div:first-child, .onboarding-facts > div:last-child { padding: 28px 0; border-right: 0; border-bottom: 1px solid var(--line); }
 .onboarding-facts > div:last-child { border-bottom: 0; }
 .fact-value { margin-bottom: 15px; font-size: 4.4rem; }
 .integration-row { grid-template-columns: 1fr; gap: 18px; padding: 28px 0; }
 .integration-row p { font-size: 1.0625rem; }
 .setup-steps li, .setup-steps li + li { padding: 26px 0; border-left: 0; border-bottom: 1px solid var(--line); }
 .setup-steps h3 { margin-top: 20px; }
 .free-offer, .free-offer-large { padding: 30px 22px; }
 .free-offer h3, .free-offer h2 { font-size: clamp(2.25rem, 9vw, 3.1rem); }
 .site-menu-grid { gap: 25px; }
 .site-menu-primary a { font-size: clamp(2.3rem, 10vw, 3rem); }
}
@media (max-width: 620px) {
 .nav-cta { font-size: .875rem; padding-inline: 12px; letter-spacing: .05em; }
 .hero h1 { font-size: clamp(2.8rem, 11.4vw, 3.5rem); }
 .hero-actions { width: 100%; }
 .hero-actions > .btn { max-width: 100%; }
 .offer-note, .metric-note p { font-size: 1rem; }
 .question-list summary, .question-list details > p { font-size: 1rem; }
}
/* Product storytelling: extend Savnt's existing dark, lime and editorial type. */
.feature-split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:center; margin-top:56px; }
.feature-split > *, .product-hero > * { min-width:0; }
.feature-copy h3 { font:400 clamp(2.3rem,4vw,3.4rem)/1.07 'Instrument Serif',Georgia,serif; margin:20px 0 24px; }
.feature-copy h3 em { color:var(--green); font-weight:400; }
.feature-copy p { font-size:1.0625rem; color:#b6bbb7; line-height:1.7; margin-bottom:20px; }
.feature-copy .text-link { display:inline-block; margin-top:12px; }
.product-shot { margin:0; min-width:0; background:#101410; border:1px solid #30392f; border-radius:8px; overflow:hidden; }
.product-shot > a { display:block; }
.product-shot img { display:block; width:100%; height:auto; background:#f3f4ef; }
.product-shot figcaption { padding:18px 22px; color:#c9d0c7; font-size:.9375rem; line-height:1.6; }
.product-shot figcaption span { display:block; font-size:.8125rem; color:#a1aaa2; margin-top:4px; }
.inbox-shot { width:min(100%,390px); justify-self:center; border-radius:18px; }
.inbox-crop { display:block; width:100%; overflow:hidden; background:#fff; }
.inbox-crop img { position:static; display:block; width:100%; height:auto; }
.delivery-feature { grid-template-columns:minmax(0,1fr) minmax(0,.8fr); }
.metric-feature { margin-top:90px; padding-top:70px; border-top:1px solid var(--line); }
.jessica-feature { margin-block:65px; }
.product-hero { min-height:680px; gap:60px; }
.jessica-hero-shot { align-self:center; }
.metric-hero-card .click-count { font:400 2.6rem/1.1 'Instrument Serif',Georgia,serif; margin:30px 0; }
.click-count strong { display:block; color:var(--green); font-size:9rem; line-height:1; font-weight:400; }
.metric-hero-card > p { color:#b6bbb7; font-size:1.0625rem; }
.metric-hero-card > p.connection-note { font-size:.9375rem; }
.product-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); }
.product-cards article { padding:32px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.product-cards article:first-child { padding-left:0; }
.product-cards article:last-child { border-right:0; }
.product-cards h3 { font:400 2rem/1.15 'Instrument Serif',Georgia,serif; margin:30px 0 16px; }
.product-cards p { font-size:1.0625rem; color:#b6bbb7; line-height:1.7; }
.prose-block { max-width:780px; margin-left:208px; }
.prose-block p { font-size:1.125rem; color:#b6bbb7; margin-bottom:28px; }
.prose-block .text-link { display:inline-block; margin-top:25px; }
.related-pages { padding-top:40px; padding-bottom:70px; }
.related-pages > div:last-child { display:flex; flex-wrap:wrap; gap:20px 35px; margin-top:22px; }
.related-pages a { font-size:1.0625rem; text-underline-offset:6px; }
.related-pages a:hover { color:var(--green); }
.site-menu-primary a { font-size:clamp(2rem,4vw,3rem); padding:18px 0; line-height:1.15; }
.site-menu-primary a span { flex-shrink:0; font-size:.875rem; }
.site-menu-utility a, .footer-links a { font-size:.875rem; }
.product-shot a:focus-visible { outline-offset:-5px; outline:3px solid var(--green); }
@media(max-width:900px) {
 .feature-split { gap:32px; }
 .product-hero { gap:38px; }
 .product-hero > .product-shot { max-width:580px; justify-self:center; }
 .product-hero > .inbox-shot { max-width:390px; }
 .product-cards { grid-template-columns:1fr; }
 .product-cards article,.product-cards article:first-child { padding:28px 0; border-right:0; }
 .prose-block { margin-left:0; }
}
@media(max-width:700px) {
 .feature-split { grid-template-columns:1fr; gap:30px; }
 .feature-copy { order:0; }
 .feature-split > .product-shot { order:1; }
 .metric-feature { margin-top:60px; padding-top:45px; }
 .product-hero { min-height:0; }
 .site-menu-primary a { font-size:clamp(1.7rem,7vw,2.5rem); gap:15px; }
 .site-menu-inner { padding-top:32px; }
 .related-pages > div:last-child { flex-direction:column; gap:20px; }
 .feature-copy h3 { font-size:2.5rem; }
}
/* Mobile business reviews and attributed customer proof. */
.app-phone { width:min(100%,360px); justify-self:center; }
.landscape-review { width:100%; margin-top:30px; }
.review-copy { display:grid; grid-template-columns:1fr 1fr; gap:42px; margin-top:32px; color:#b6bbb7; font-size:1.125rem; line-height:1.7; }
.customer-savings { display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-bottom:45px; }
.customer-savings .proof-stat { border-bottom:1px solid var(--line); }
.customer-quotes { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.customer-quotes .customer-quote { width:100%; margin:0; padding:32px; border:1px solid var(--line); border-top:3px solid var(--green); background:var(--panel-2); }
.customer-quotes blockquote { font:400 clamp(1.5rem,2.5vw,1.9rem)/1.45 'Instrument Serif',Georgia,serif; color:var(--white); }
.customer-quotes figcaption { margin-top:28px; font-size:1rem; line-height:1.6; }
.customer-quotes figcaption strong { display:block; color:var(--green); }
.customer-quotes figcaption span { display:block; color:#b6bbb7; }
@media(max-width:700px){
 .review-copy,.customer-savings,.customer-quotes { grid-template-columns:1fr; gap:24px; }
 .customer-quotes .customer-quote { padding:26px 22px; }
 .customer-savings .proof-num { font-size:clamp(3.7rem,16vw,4.75rem); }
 .customer-savings .proof-num span { display:block; margin:15px 0 0; }
}

/* Keep card headings and customer attribution aligned across each desktop row. */
.today-grid .cap { align-content:start; grid-template-rows:auto 1fr; }
.customer-quotes { row-gap:0; }
.customer-quotes .customer-quote { align-self:stretch; display:grid; grid-row:span 2; grid-template-rows:subgrid; row-gap:0; }
.customer-quotes blockquote { padding-bottom:28px; }
.customer-quotes .customer-quote figcaption { margin-top:0; align-self:start; }
@media(max-width:700px) {
 .customer-quotes { row-gap:24px; }
 .customer-quotes .customer-quote { display:block; grid-row:auto; }
 .today-grid .cap { grid-template-rows:auto; }
}
