/* Interior editorial layouts. Homepage remains the reference, with no additional payload.
   Use the shared light-system tokens; containers only group controls and real choices. */
body.tt-site[data-page] .split-container {
  min-height: 0; gap: clamp(32px,6vw,88px) !important;
  align-items: center; margin-block: var(--brand-section-space,clamp(72px,7vw,120px)) !important;
  overflow: visible; border: 0 !important; border-radius: 0 !important;
  background: transparent !important; box-shadow: none !important;
}
body.tt-site[data-page] .split-container > :is(.left-side,.right-side,.resellers,.resellers-h,.text-content) {
  min-width: 0; min-height: 0; padding: 0 !important;
  align-self: center; background: transparent !important; border: 0; box-shadow: none;
}
body.tt-site[data-page] .split-container :is(h2,h3,.subtitle) {
  margin: 0 0 20px !important; font-size: var(--brand-type-feature,clamp(28px,2.7vw,44px)) !important;
  letter-spacing: -.035em !important; line-height: 1.17 !important;
}
body.tt-site[data-page] .split-container :is(p,.description) {
  max-width: 62ch; margin: 0 0 18px !important; font-size: 18px !important; line-height: 1.65 !important; text-align: left !important;
}
body.tt-site[data-page] .split-container :is(.right-side,.resellers) img {
  display: block; width: 100% !important; max-width: 600px !important;
  max-height: 490px; height: auto; object-fit: contain !important;
  filter: none !important; transform: none !important; transition: none;
}
body.tt-site[data-page] .split-container > .right-side[data-feature-image-align] { align-items: center; justify-content: center; }
body.tt-site[data-page] .split-container > .right-side[data-feature-image-align] img { object-position: center; }
body.tt-site[data-page] .split-container .box-in-image { position: static; width: 100%; margin: 24px 0 0; padding: 0; border: 0; background: transparent; }

/* Each explanation travels with its image, including on narrow screens. */
.tt-product-capabilities {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px 64px;
  width: var(--tt-shell); max-width: 1280px; margin: var(--brand-section-space,clamp(72px,7vw,120px)) auto;
}
.tt-product-capability {
  display: grid; grid-template-columns: minmax(110px,.65fr) minmax(0,1fr);
  align-items: center; gap: 28px; padding-block: 28px; border-top: 1px solid var(--tt-border);
}
.tt-product-capability-media { min-width: 0; }
.tt-product-capability-media img { display: block; width: 100%; height: auto; max-height: 250px; object-fit: contain; border-radius: 12px; }
.tt-product-capability-copy > p { margin: 0; font-size: 19px; font-weight: 650; line-height: 1.5; letter-spacing: -.025em; color: var(--tt-color-ink); }
.tt-product-capability-copy .tt-product-capability-detail { margin-top: 12px; font-size: 16px; font-weight: 400; letter-spacing: 0; line-height: 1.65; color: var(--tt-color-muted); }
.tt-product-ecosystem {
  display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); align-items: center;
  gap: clamp(32px,6vw,88px); width: var(--tt-shell); max-width: 1280px; margin: var(--brand-section-space,clamp(72px,7vw,120px)) auto;
}
body.tt-site .tt-product-ecosystem .subtitle { margin: 0 0 20px !important; color: var(--tt-color-ink); font-size: var(--brand-type-feature,clamp(28px,2.7vw,44px)); line-height: 1.17; letter-spacing: -.035em; text-align: left; }
body.tt-site .tt-product-ecosystem .description { margin: 0; color: var(--tt-color-muted); font-size: 17px; line-height: 1.75; text-align: left; }
.tt-product-ecosystem-media img { display: block; width: 100%; height: auto; max-height: 640px; object-fit: contain; }

/* One form surface, with a specific invitation alongside rather than nested panels. */
.tt-product-contact { padding-block: clamp(64px,8vw,112px); background: var(--tt-surface-subtle); }
.tt-product-contact-layout { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(32px,6vw,88px); align-items: start; }
.tt-product-contact-copy { padding-top: 24px; }
body.tt-site .tt-product-contact-copy h2 { text-align: left !important; max-width: 20ch; margin: 0 0 24px; color: var(--tt-color-ink); font-size: clamp(30px,3.5vw,48px); line-height: 1.15; letter-spacing: -.045em; font-weight: 750; }
.tt-product-contact-copy p { text-align: left !important; max-width: 48ch; margin: 0 0 24px; color: var(--tt-color-muted); font-size: 17px; line-height: 1.75; }
.tt-product-contact-link { display: inline-flex; min-height: 44px; align-items: center; gap: 16px; font-size: 15px; font-weight: 750; color: var(--tt-brand) !important; }
.tt-product-contact-link:hover { text-decoration: underline; text-underline-offset: 5px; }
body.tt-site[data-page] .tt-product-contact-form .box-contact { width: 100%; margin: 0 !important; padding: clamp(24px,3vw,40px) !important; border: 1px solid var(--tt-border); border-radius: 16px; background: var(--tt-surface-paper) !important; box-shadow: none !important; }
.tt-product-contact-form .wpcf7 { display: block !important; width: 100% !important; }
body.tt-site .tt-product-contact-form #standard-contact-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 0 !important; display: grid !important; }
body.tt-site .tt-product-contact-form #standard-contact-form > [class*="col-md-"] { width: auto !important; min-width: 0; max-width: none; flex: none !important; padding: 0 !important; margin: 0 !important; }
body.tt-site .tt-product-contact-form #standard-contact-form > :is(.col-md-12,.col-md-6:nth-of-type(6)) { grid-column: 1 / -1; }
body.tt-site .tt-product-contact-form #standard-contact-form :is(label,.wpcf7-form-control-wrap) { display: block; width: 100% !important; min-width: 0; margin: 0 !important; white-space: normal; }
body.tt-site .tt-product-contact-form #standard-contact-form :is(input[type="text"],input[type="email"],input[type="tel"],select,textarea) { width: 100% !important; min-width: 0; max-width: 100%; margin: 0 !important; padding: 12px 14px !important; border-radius: 9px !important; font-size: 16px !important; }
body.tt-site .tt-product-contact-form #standard-contact-form textarea { min-height: 128px; height: 128px; resize: vertical; }
body.tt-site .tt-product-contact-form #standard-contact-form > .checkbox { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; }
body.tt-site .tt-product-contact-form .checkbox > .col-md-6 { width: auto; max-width: 100%; flex: none; padding: 0; }
body.tt-site .tt-product-contact-form .checkbox-title { margin: 0; color: var(--tt-color-ink); font-size: 14px; }
body.tt-site .tt-product-contact-form .wpcf7-checkbox { display: flex; flex-wrap: wrap; gap: 8px 20px; }
body.tt-site .tt-product-contact-form .wpcf7-list-item { margin: 0; }
body.tt-site .tt-product-contact-form #standard-contact-form label.tt-form-checkbox { display: inline-flex; width: auto; align-items: center; min-height: 44px; }
body.tt-site .tt-product-contact-form .checkbox-approve p { margin: 0; font-size: 13px; line-height: 1.65; }
body.tt-site .tt-product-contact-form #standard-contact-form input[type="submit"] { width: 100% !important; margin: 0; min-height: 52px; font-size: 15px; }

/* Restaurant types: category at left, useful module descriptions in a readable index. */
.tt-type-module-group { display: grid; grid-template-columns: minmax(160px,.65fr) minmax(0,2fr); gap: 48px; border-top: 1px solid var(--tt-border); padding-top: 28px; }
.tt-type-module-group > h3 { margin: 0; padding: 4px 0 0; border: 0; font-size: 13px; line-height: 1.6; letter-spacing: .06em; }
.tt-type-module-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 48px; }
.tt-type-module { min-height: 0; padding: 0 0 24px; border: 0; border-bottom: 1px solid var(--tt-border); border-radius: 0; background: transparent; overflow: visible; }
.tt-type-module:hover { transform: none; box-shadow: none; }
.tt-type-module h4 { font-size: 24px; line-height: 1.25; }
.tt-type-module p { margin: 0 0 16px; font-size: 16px; line-height: 1.7; }
.tt-type-module:hover h4 { color: var(--tt-brand); text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 1px; }
.tt-type-module b { font-size: 13px; }
.tt-type-scope-note { border-radius: 0; border: 0; border-left: 3px solid var(--tt-type-accent); background: transparent; padding: 8px 0 8px 28px; grid-template-columns: 1fr; }
.tt-type-scope-note > i,.tt-type-scope-note > svg { display: none; }

/* Ecosystem overview: horizontal categories instead of two columns of nested boxes. */
.tt-rs-proof-item,.tt-rs-proof-item--reverse { border: 0; border-radius: 0; background: transparent; gap: clamp(32px,5vw,72px); min-height: 0; align-items: center; }
.tt-rs-proof-copy { padding: 0; }
.tt-rs-proof-copy h3 { line-height: 1.15; }
.tt-rs-proof-copy p { font-size: 17px; }
.tt-rs-proof-item figure { background: transparent; }
.tt-rs-proof-item figure img { height: auto; aspect-ratio: 4 / 3; border-radius: 16px; }
.tt-rs-module-groups { grid-template-columns: 1fr; gap: 48px; }
.tt-rs-module-group { display: grid; grid-template-columns: minmax(180px,.8fr) minmax(0,2fr); gap: 48px; padding-top: 28px; border: 0; border-top: 1px solid var(--tt-border); border-radius: 0; background: transparent; overflow: visible; }
.tt-rs-module-group > header { padding: 0; min-height: 0; background: transparent; border: 0; }
.tt-rs-module-group > header p { font-size: 15px; }
.tt-rs-module-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 32px; }
.tt-rs-module-list a { grid-template-columns: 1fr 20px; padding: 16px 0; min-height: 100px; }
.tt-rs-module-list a:hover { background: transparent; }
.tt-rs-module-list a:hover strong { text-decoration: underline; text-underline-offset: 5px; color: var(--tt-brand); }
.tt-rs-module-list strong { font-size: 17px; }
.tt-rs-module-list small { font-size: 14px; line-height: 1.6; }
.tt-rs-module-list a:last-child { border-bottom: 1px solid var(--tt-border); }
.tt-rs-type-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0 40px; }
.tt-rs-type-grid a { min-height: 0; padding: 24px 0; border: 0; border-bottom: 1px solid var(--tt-border); border-radius: 0; background: transparent; }
.tt-rs-type-grid a:hover { transform: none; box-shadow: none; background: transparent; }
.tt-rs-reason-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px 64px; }
.tt-rs-reason-grid > article { min-height: 0; padding: 28px 0 0; border: 0; border-top: 1px solid var(--tt-border); border-radius: 0; background: transparent; }
.tt-rs-reason-grid h3 { font-size: 28px; line-height: 1.2; }
.tt-rs-reason-grid p { font-size: 16px; line-height: 1.7; }

/* Office and contact are real places and channels, not promotional panels. */
body.tt-site[data-page="about-us"] .our-office .section-inner { display: grid; grid-template-columns: minmax(0,.65fr) minmax(0,1.35fr); gap: 48px; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
body.tt-site[data-page="about-us"] .our-office-title { width: auto; margin: 0; padding: 0; text-align: left; }
body.tt-site[data-page="about-us"] .our-office-title h4 { font-size: clamp(30px,3vw,44px) !important; line-height: 1.16 !important; text-align: left; }
.tt-office-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.tt-office-gallery > div { min-width: 0; }
.tt-office-gallery > div:first-child { grid-column: 1 / -1; }
.tt-office-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; }
.tt-office-gallery > div:first-child img { aspect-ratio: 16 / 8; }
.tt-about-contact-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 64px; margin-top: 48px; }
.tt-about-contact-details > div { padding-top: 24px; border-top: 1px solid var(--tt-border); }
.tt-about-contact-details h3 { margin: 0 0 14px; font-size: 25px; line-height: 1.25; }
.tt-about-contact-details :is(p,a) { color: var(--tt-color-muted); font-size: 16px; line-height: 1.7; }
.tt-about-contact-details .social { display: flex; gap: 12px; margin-top: 16px; }
.tt-about-contact-details .social a { display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid var(--tt-field-border); border-radius: 9px; color: var(--tt-color-ink); }
.tt-about-contact-details .social svg { width: 22px; height: 22px; fill: currentColor; }
.tt-about-contact-details .social a:hover { color: var(--tt-brand); border-color: var(--tt-brand); }

/* Resellers: a shared product context, two programs and one set of benefits. */
body.tt-site.page-template-resellers #top-part { display: flex !important; flex-direction: column; align-items: flex-start; justify-content: flex-start; min-height: 0 !important; gap: 24px; padding-block: clamp(64px,8vw,112px) !important; }
body.tt-site.page-template-resellers #top-part :is(h1,.tt-partner-lead,.custom-btn) { margin: 0 !important; text-align: left !important; align-self: flex-start; }
body.tt-site.page-template-resellers #top-part :is(h1,.tt-partner-lead) { width: 100% !important; max-width: 1000px; }
body.tt-site.page-template-resellers #top-part .tt-partner-lead { padding: 0; color: var(--tt-color-muted); font-size: clamp(16px,1.25vw,18px); font-weight: 480; line-height: 1.7; letter-spacing: .03125em; }
.tt-partner-intro,.tt-partner-programs,.tt-partner-benefits { width: var(--tt-shell); max-width: 1400px; margin: clamp(64px,8vw,112px) auto; }
.tt-partner-intro { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.1fr); gap: clamp(32px,6vw,88px); align-items: center; }
.tt-partner-intro-copy article + article { margin-top: 32px; }
.tt-partner-intro-image { margin: 0; }
.tt-partner-intro-image img { display: block; width: 100%; height: auto; border-radius: 12px; }
.tt-partner-intro h2 { margin: 0 0 12px; font-size: clamp(25px,2.4vw,32px); font-weight: 700; line-height: 1.2; letter-spacing: -.035em; }
.tt-partner-intro p,.tt-partner-programs p { margin: 0; font-size: 17px; line-height: 1.75; color: var(--tt-color-muted); text-align: left; }
.tt-partner-programs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(32px,6vw,88px); }
.tt-partner-programs > article { padding-top: 28px; border-top: 1px solid var(--tt-border); }
.tt-partner-programs h2,.tt-partner-benefits h2 { margin: 0 0 24px; font-weight: 700; font-size: var(--brand-type-feature,clamp(28px,2.7vw,44px)); line-height: 1.17; letter-spacing: -.035em; }
.tt-partner-programs .tt-partner-program-subtitle { margin-bottom: 16px; color: var(--tt-color-ink); font-weight: 600; }
.tt-partner-benefits { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(32px,6vw,88px); padding-top: 32px; border-top: 1px solid var(--tt-border); }
.tt-partner-benefits ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 32px; padding: 0; margin: 0; list-style: none; }
.tt-partner-benefits li { padding: 18px 0; border-bottom: 1px solid var(--tt-border); font-size: 17px; line-height: 1.5; font-weight: 650; color: var(--tt-color-ink); }
body.tt-site.page-template-resellers :is(.tt-partner-intro,.tt-partner-programs,.tt-partner-benefits) h2 { width: 100%; text-align: left !important; }

/* Genuine comparison remains grouped; investment copy has its own reading column. */
body.tt-site.page-template-branded-mobile-app-2 .big-card { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: 64px; width: var(--tt-shell); max-width: 1400px; padding: 0 !important; margin: 96px auto !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
body.tt-site.page-template-branded-mobile-app-2 .big-card :is(h2,p) { text-align: left; width: 100% !important; max-width: 60ch; padding: 0 !important; margin: 0 0 24px !important; }
body.tt-site.page-template-branded-mobile-app-2 .big-card img { width: 100%; height: auto; max-width: 100%; margin: 0; }
body.tt-site.page-template-branded-mobile-app-2 .content { gap: clamp(32px,6vw,88px); padding: 0 !important; border: 0 !important; background: transparent !important; }
body.tt-site.page-template-branded-mobile-app-2 .content :is(.content-left,.content-right) { padding: 0 !important; background: transparent !important; border: 0 !important; }
body.tt-site.page-template-branded-mobile-app-2 .box-text .item { padding: 20px 0 !important; border: 0 !important; border-bottom: 1px solid var(--tt-border) !important; border-radius: 0 !important; background: transparent !important; }
body.tt-site.page-template-branded-mobile-app-2 .box-text .item > img { display: none; }
body.tt-site.page-template-branded-mobile-app-2 .box-text h5 { width: 100%; margin: 0 !important; }
body.tt-site.page-template-branded-mobile-app-2 .box-text button { width: 100%; min-height: 44px; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
body.tt-site.page-template-branded-mobile-app-2 .box-text button[aria-expanded="true"] { color: var(--tt-brand); }
body.tt-site.page-template-branded-mobile-app-2 .box-text p { margin: 16px 0 24px !important; font-size: 16px; line-height: 1.7; }
body.tt-site.page-template-branded-mobile-app-2 :is(.choiceColumn1,.choiceColumn2) { padding: clamp(24px,3vw,40px) !important; border: 1px solid var(--tt-border) !important; border-radius: 16px !important; box-shadow: none; }
body.tt-site.page-template-branded-mobile-app-2 :is(.textUnderTitlePowerOfChoice1,.textUnderTitlePowerOfChoice2) { padding: 0; border: 0; background: transparent !important; }
body.tt-site.page-template-branded-mobile-app-2 :is(.explanationText,.explanationText2) { font-size: 16px; line-height: 1.65; }

/* A shared open FAQ uses semantic question controls and a single answer column. */
body.tt-site .tt-editorial-faq { display: grid; grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr); align-items: start; gap: 64px; width: var(--tt-shell); max-width: 1400px; margin: 96px auto; padding: 0; }
.tt-editorial-faq > h2 { margin: 0; font-size: var(--brand-type-feature,clamp(28px,2.7vw,44px)); font-weight: 700; line-height: 1.17; letter-spacing: -.035em; text-align: left; }
.tt-faq-list,.tt-faq-group { width: 100%; min-width: 0; }
.tt-faq-question { display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 100%; min-height: 64px; margin: 0; padding: 22px 0; border: 0; border-bottom: 1px solid var(--tt-border); background: transparent; color: var(--tt-color-ink); font: inherit; font-size: 17px; font-weight: 600; line-height: 1.5; text-align: left; cursor: pointer; }
.tt-faq-question svg { flex: 0 0 16px; color: var(--tt-brand); }
.tt-faq-question[aria-expanded="true"] svg { transform: rotate(45deg); }
.tt-faq-question:hover,.tt-faq-question[aria-expanded="true"] { color: var(--tt-brand); }
.tt-faq-answer { padding: 18px 0 28px; color: var(--tt-color-muted); font-size: 16px; line-height: 1.7; }
.tt-faq-answer p { margin: 0 0 16px; }

/* Documents use a reading measure. Numbered legal clauses retain their meaning. */
body.tt-site[data-page] section#legal .wrapper { gap: clamp(32px,5vw,72px); }
body.tt-site[data-page] section#legal .main { max-width: 78ch; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
body.tt-site[data-page] section#legal .sidebar { border: 0 !important; border-radius: 0 !important; background: transparent !important; }
body.tt-site[data-page] section#legal .main .terms-intro .div-group > p.d-flex { padding: 6px 0; border: 0; border-radius: 0; background: transparent; font-size: 16px; }
body.tt-site[data-page] section#legal .main .tt-legal-subsection { padding: 0 0 0 24px; border: 0; border-left: 2px solid var(--tt-border); border-radius: 0; background: transparent; }
body.tt-site[data-page] section#legal .main :is(p,li) { font-size: 16px !important; line-height: 1.75 !important; }
body.tt-site[data-page] section#legal .main .terms-intro :is(h3,.tt-legal-section > h2) { line-height: 1.3 !important; }
body.tt-site[data-page] section#legal .main .tt-legal-document-head .home-title { font-size: clamp(36px,4.8vw,64px) !important; line-height: 1.1 !important; }
/* Security is a readable policy overview, with no decorative panel nesting. */
.tt-security-intro { width: var(--tt-shell); max-width: 1400px; margin: 0 auto; padding: clamp(152px,13vw,192px) 0 clamp(64px,7vw,104px); }
body.tt-site .tt-security-intro h1 { max-width: 1000px; margin: 0 0 28px; color: var(--tt-color-ink); font-size: clamp(36px,4.3vw,62px); font-weight: 700; line-height: 1.08; letter-spacing: -.05em; text-align: left !important; }
.tt-security-intro p { max-width: 65ch; margin: 0; color: var(--tt-color-muted); font-size: 19px; line-height: 1.7; }
.tt-security-section { display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1.6fr); gap: 64px; width: var(--tt-shell); max-width: 1400px; margin: 0 auto 72px; padding: 32px 0 0; border-top: 1px solid var(--tt-border); }
body.tt-site .tt-security-group-heading h2 { margin: 0 0 20px; font-size: clamp(26px,2.6vw,34px); font-weight: 700; line-height: 1.2; letter-spacing: -.035em; text-align: left !important; }
.tt-security-items { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; align-items: start; }
body.tt-site .tt-security-items h3 { margin: 0 0 12px; font-size: 18px; font-weight: 700; line-height: 1.4; text-align: left !important; }
body.tt-site .tt-security-section p { margin: 0; color: var(--tt-color-muted); font-size: 16px; line-height: 1.75; text-align: left !important; }
.tt-security-group-heading > a { display: inline-flex; align-items: center; min-height: 44px; margin-top: 12px; color: var(--tt-brand); font-size: 16px; text-decoration: underline; text-underline-offset: 4px; }
body.tt-site .security-footer .section-inner { width: var(--tt-shell); max-width: 1400px; margin-inline: auto; }
body.tt-site .security-footer p { max-width: 65ch; margin: 0; text-align: left !important; }
body.tt-site[data-page] .write-for-us .box-p { display: grid; grid-template-columns: minmax(180px,.65fr) minmax(0,1.35fr); gap: 24px 64px; padding: 32px 0 !important; border: 0 !important; border-top: 1px solid var(--tt-border) !important; border-radius: 0 !important; background: transparent !important; }
body.tt-site[data-page] .write-for-us .row:first-child .box-p { display: block; max-width: 75ch; border-top: 0 !important; }
body.tt-site[data-page] .write-for-us .box-p :is(ul,ol) { padding-left: 20px; margin: 0; }
body.tt-site[data-page] .write-for-us .box-p :is(p,li) { font-size: 16px; line-height: 1.75; }
body.tt-site[data-page] .write-for-us .box-p h4 { font-size: 28px; line-height: 1.25; }
.tt-integration-jumps { display: flex; flex-wrap: wrap; gap: 8px 28px; margin-bottom: 48px; }
.tt-integration-jumps[hidden] { display: none; }
.tt-integration-jumps a { display: inline-flex; align-items: center; min-height: 44px; color: var(--tt-brand); font-size: 14px; font-weight: 700; text-underline-offset: 5px; }
#integration-systems > section { scroll-margin-top: 120px; }

@media (max-width: 1000px) {
  .tt-product-capabilities { gap: 20px 32px; }
  .tt-product-capability { grid-template-columns: 1fr; gap: 20px; align-content: start; }
  .tt-product-capability-media img { height: 220px; }
  .tt-product-contact-layout { grid-template-columns: 1fr; }
  .tt-product-contact-copy { display: grid; grid-template-columns: 1fr 1fr; gap: 0 40px; padding-top: 0; }
  .tt-product-contact-copy h2 { grid-row: span 2; }
  .tt-type-module-group,.tt-rs-module-group { grid-template-columns: 1fr; gap: 24px; }
  body.tt-site[data-page="about-us"] .our-office .section-inner { grid-template-columns: 1fr; }
  body.tt-site .tt-editorial-faq { grid-template-columns: 1fr; gap: 28px; }
  .tt-security-section { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 700px) {
  body.tt-site[data-page] .split-container { grid-template-columns: 1fr; gap: 28px !important; }
  body.tt-site[data-page] .split-container > :is(.left-side,.resellers-h) { order: -1; }
  body.tt-site[data-page] .split-container :is(p,.description) { font-size: 16px !important; }
  body.tt-site[data-page] .split-container :is(.right-side,.resellers) img { max-height: 420px; }
  .tt-product-capabilities,.tt-product-ecosystem { grid-template-columns: 1fr; gap: 28px; }
  .tt-product-capability { grid-template-columns: minmax(100px,.55fr) minmax(0,1fr); gap: 20px; padding-block: 24px; }
  .tt-product-capability-media img { height: auto; max-height: 210px; border-radius: 8px; }
  .tt-product-capability-copy > p { font-size: 17px; }
  .tt-product-contact-copy { display: block; }
  body.tt-site .tt-product-contact-form #standard-contact-form { grid-template-columns: 1fr; }
  .tt-type-module-grid,.tt-rs-type-grid,.tt-rs-reason-grid { grid-template-columns: 1fr; }
  .tt-type-module h4 { font-size: 23px; }
  .tt-rs-module-list { grid-template-columns: 1fr; }
  .tt-rs-proof-item,.tt-rs-proof-item--reverse { grid-template-columns: 1fr; }
  .tt-rs-proof-item--reverse .tt-rs-proof-copy { order: 0; }
  .tt-about-contact-details { grid-template-columns: 1fr; gap: 32px; }
  .tt-partner-intro,.tt-partner-programs,.tt-partner-benefits { grid-template-columns: 1fr; }
  body.tt-site.page-template-branded-mobile-app-2 .big-card { grid-template-columns: 1fr; gap: 28px; }
  .tt-security-items { grid-template-columns: 1fr; gap: 28px; }
  body.tt-site[data-page] .write-for-us .box-p { grid-template-columns: 1fr; gap: 20px; }
}

/* A quiet customer signature completes the security explanation. */
.tt-security-trust { width: var(--tt-shell); max-width: 1400px; margin: 64px auto; padding-block: 32px; border-block: 1px solid var(--tt-border); display: grid; grid-template-columns: minmax(180px,1fr) minmax(0,2fr); gap: 48px; align-items: center; }
.tt-security-trust h2 { text-align: left !important; margin: 0; font-size: 30px; font-weight: 700; line-height: 1.2; }
.tt-security-trust-logos { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 32px; align-items: center; justify-items: center; }
.tt-security-trust-logos img { width: auto; max-width: 100%; height: auto; max-height: 80px; object-fit: contain; filter: grayscale(1) brightness(0); opacity: .75; }
@media(max-width:700px) { .tt-security-trust { grid-template-columns: 1fr; gap: 28px; } .tt-security-trust-logos { gap: 20px; } .tt-security-trust-logos img { max-height: 64px; } }
/* Category navigation is content navigation, without legacy global nav paint. */
body.tt-site .tt-integration-jumps { width: var(--tt-shell) !important; max-width: 1400px !important; margin-inline: auto; padding: 0; background: transparent !important; border: 0; box-shadow: none; }

/* Keep the complete error code legible on the light canvas. */
body.tt-site[data-page="not-found"] .tt-not-found__zero { color: var(--tt-mint); -webkit-text-stroke: 0; }
body.tt-site[data-page="not-found"] .tt-not-found__zero::after { display: none; }
body.tt-site[data-page="not-found"] .tt-not-found :is(h1,h2,h3) { text-align: left !important; }

/* Keep the active branded-app preview within the reading grid at tablet widths. */
body.tt-site.page-template-branded-mobile-app-2 .content{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
body.tt-site.page-template-branded-mobile-app-2 .content :is(.content-left,.content-right){min-width:0;width:100%!important;max-width:100%!important}
body.tt-site.page-template-branded-mobile-app-2 .content-right{min-height:0;place-items:center}
@media(max-width:900px){
 body.tt-site.page-template-branded-mobile-app-2 .content{grid-template-columns:minmax(0,1fr)}
 body.tt-site.page-template-branded-mobile-app-2 .content-right{width:min(360px,100%)!important;justify-self:center}
}
