/* The Admin Studio's published photograph is the only patterned-red source. */
:root{--tg-red-fabric:none;--tg-fabric-red:#d21b30;--tg-fabric-size:100vw}
.button-primary,.form-submit,.workflow-tab.is-active,.capability-rail,.manifesto-section,
.eyebrow-dot,.stage-active-dot,.display-active,.callout-icon,.result-check,
.bottom-bubble,.ios-primary,.ios-run-step.is-done .ios-step-bullet,.ios-progress span,.ios-stage-dot{
 background-color:var(--tg-fabric-red);background-image:var(--tg-red-fabric);
 background-size:var(--tg-fabric-size) auto;background-position:center top;background-repeat:repeat;
}
.button-primary,.form-submit,.workflow-tab.is-active{border:0;box-shadow:none;color:#fffaf8}
.button-primary:hover,.form-submit:hover,.workflow-tab.is-active:hover{background-image:var(--tg-red-fabric);filter:brightness(1.07)}
.capability-rail,.manifesto-section{border-block:0}
.bottom-bubble{color:#fffaf8}
.ios-feature .ios-primary{background:#fff;color:#28232a;background-image:none}
.ios-run-step.is-done .ios-step-bullet{color:#fff}
.hero h1 em,.workflow-heading h2 span,.connected-copy h2 span,.contact-intro h2 em,
.ios-product-copy h2 em,.punct,.brand-period,.footer-brand .brand-period,
.eyebrow,.section-index,.index-light,.pillar-number,.result-tag,.lead-pill span,
.step-main small,.ios-link,.ios-back,.ios-tabs button.is-active,
.faq-list summary span,.form-field label span,.footer-links a:hover,.footer-bottom a:hover{
 color:var(--tg-fabric-red);background-image:var(--tg-red-fabric);
 background-size:var(--tg-fabric-size) auto;background-position:center top;background-repeat:repeat;
 -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
 -webkit-text-stroke:0;
}



#tg-ink-blot path{stroke:#18181a;stroke-width:.8;stroke-linejoin:round;paint-order:stroke fill}
.tg-ink-mark use{fill:url(#tg-fabric)}
.hero-stage .incoming-icon img{filter:drop-shadow(0 0 1px rgba(255,250,247,.4))}
.workflow-section .tg-ink-mark,.hero-stage .tg-ink-mark{filter:drop-shadow(0 0 .8px #ffe7e2)}
.button-primary .tg-ink-mark,.form-submit .tg-ink-mark,.workflow-tab.is-active .tg-ink-mark,
.rail-track .tg-ink-mark,.manifesto-link .tg-ink-mark{filter:brightness(0) invert(1)}
.manifesto-layout h2,.manifesto-layout h2 em{color:#fffaf8;text-shadow:none}
.manifesto-section .section-index{color:#fffaf8;background-image:none;-webkit-text-fill-color:#fffaf8;-webkit-text-stroke:0}
@media(prefers-reduced-motion:reduce){.capability-rail{animation:none}}

/* One physical photo scale across all red fills: mobile viewport-wide, capped at the source resolution. On larger surfaces it repeats rather than stretching pixels. */
:where(.button-primary,.form-submit,.workflow-tab.is-active,.capability-rail,.manifesto-section,.eyebrow-dot,.stage-active-dot,.display-active,.callout-icon,.result-check,.bottom-bubble,.ios-primary,.ios-run-step.is-done .ios-step-bullet,.ios-progress span,.ios-stage-dot,.hero h1 em,.workflow-heading h2 span,.connected-copy h2 span,.contact-intro h2 em,.ios-product-copy h2 em,.punct,.brand-period,.footer-brand .brand-period,.eyebrow,.section-index,.index-light,.pillar-number,.result-tag,.lead-pill span,.step-main small,.ios-link,.ios-back,.ios-tabs button.is-active,.faq-list summary span,.form-field label span,.footer-links a:hover,.footer-bottom a:hover){background-size:var(--tg-fabric-size) auto;background-position:center top;background-repeat:repeat}

/* Keep the final italic glyph fully inside the clipped background, even with tight serif kerning. */
.hero h1 em{padding-inline-end:.13em;margin-inline-end:-.13em;letter-spacing:-.065em}
