/* Tarian Ventures family presentation; public website only. */
:root { --forest: #13564d; --ink: #20282b; --tint: #f3f7f6; --rule: #d0dddb; }
body { line-height: 1.65; }
h1, h2, h3 { letter-spacing: -.035em; text-wrap: balance; }
.section h2, .hero h1, .legal-main h1, .not-found h1, .rc-title { font-weight: 500; }
a { text-underline-offset: .25em; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid var(--forest); outline-offset: 4px; }
.header-inner, .section-wide, .footer-inner, .footer-bottom, .cta-band-wrap { max-width: 1248px; }
.header-inner { min-height: 104px; }
.brand img { height: 36px; }
.nav-desktop { gap: 18px; }
.nav-desktop a.nav-link { color: var(--forest); font-size: .875rem; min-height: 44px; display: inline-flex; align-items: center; }
.nav-desktop .btn { font-size: .875rem; padding-inline: 14px; }
.nav-login-outline, .nav-toggle { border-radius: 0; }
.family-bar { background: var(--tint); border-bottom: 1px solid var(--rule); padding: .6rem 24px; }
.family-link { display: flex; align-items: center; gap: .6rem; max-width: 1200px; margin: auto; min-height: 44px; color: var(--forest); font-size: .75rem; text-decoration: none; letter-spacing: .035em; }
.family-link img { width: 30px; height: 30px; }
.family-link:hover { text-decoration: underline; }
.hero { max-width: none; background: var(--tint); color: var(--ink); padding: 80px max(24px, calc((100% - 1000px)/2)) 72px; }
.hero h1 { font-size: clamp(2.7rem, 4.6vw, 4.4rem); line-height: 1.08; color: var(--ink); max-width: 23ch; margin-inline: auto; }
.hero .lead, .hero .muted { color: var(--ink); }
.hero .eyebrow { color: var(--forest); }
.hero .lead { font-size: clamp(1.1rem, 1.6vw, 1.35rem); }
.eyebrow, .rc-eyebrow { font-size: .75rem; letter-spacing: .14em; color: var(--forest); }
.btn { font-weight: 400; border-radius: 0; }
.btn-primary { border-color: var(--forest); }
.btn-primary:hover { background: white; color: var(--forest); }
.hero .btn-primary { background: var(--forest); color: white; border-color: var(--forest); }
.hero .btn-secondary { background: white; color: var(--forest); border-color: var(--forest); }
.hero .btn:hover { background: white; color: var(--forest); }
.site-footer :focus-visible, .cta-band :focus-visible { outline-color: var(--forest); }
.section { padding-block: 80px; }
.section h2 { font-size: clamp(2rem, 3.3vw, 3rem); line-height: 1.12; }
#trust { background: var(--tint); padding-top: 32px; }
.trust-item { border: 0; border-top: 1px solid var(--rule); background: transparent; }
.card { border: 0; border-top: 2px solid var(--forest); padding: 26px 0; }
.card-grid { gap: 32px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); }
.role-pill { border-radius: 0; background: var(--tint); }
.cta-band { background: var(--tint); border: 1px solid var(--rule); }
.cta-band h2 { color: var(--ink); font-weight: 500; }
.cta-band p { color: var(--ink); }
.cta-band-actions a.text-link, .cta-band-actions a.text-link:hover { color: var(--forest); }
.cta-band .btn-secondary-on-dark { background: white; color: var(--forest); border-color: var(--forest); }
.cta-band .btn-secondary-on-dark:hover { background: var(--tint); color: var(--forest); border-color: var(--forest); }
.contact-panel { background: var(--tint); }
.site-footer { background: var(--tint); color: var(--ink); }
.site-footer .footer-tagline, .site-footer .footer-meta, .site-footer .footer-bottom { color: var(--ink); }
.site-footer .footer-col-title, .site-footer a { color: var(--forest); }
.site-footer a:hover { color: var(--forest); text-decoration: underline; }
.footer-brand > img { height: 30px; }
.footer-col a { min-height: 44px; }
.footer-bottom { border-color: var(--rule); }
.footer-family { display: inline-block; margin-top: 12px; font-size: .875rem; min-height: 44px; }
.rc-main--access { background: var(--tint); }
.rc-customer-pill, .rc-status--info { background: var(--tint); }
.rc-title { letter-spacing: -.035em; }
.rc-panel { box-shadow: none; }
.rc-video-wrap, .rc-video { background: var(--tint); }
@media (min-width: 900px) and (max-width: 1150px) { .nav-desktop { gap: 10px; } .header-inner { gap: 14px; } .nav-desktop .nav-link { font-size: .8125rem; } .nav-desktop .btn { padding-inline: 10px; } }
@media (max-width: 899px) { .header-inner { min-height: 88px; } .hero { padding: 52px 24px; } .section { padding-block: 52px; } .hero h1 { font-size: clamp(2.5rem, 8vw, 3.6rem); } }
@media (max-width: 420px) { .header-inner { padding-inline: 16px; gap: 12px; } .brand img { height: 30px; } .family-bar { padding-inline: 16px; } .family-link { font-size: .6875rem; } .cta-band { padding: 32px 24px; } }
@media print { .family-bar, .nav-mobile-bar, .nav-desktop { display: none; } .hero, .site-footer { background: white; color: var(--ink); } .hero h1, .hero .lead, .hero .muted, .hero .eyebrow, .site-footer a, .site-footer .footer-meta, .site-footer .footer-bottom { color: var(--ink); } }

/* Consolidated demonstration enquiry. */
.cta-band .contact-note { margin-top: 1.25rem; font-size: .875rem; }
.cta-band-wrap#contact { scroll-margin-top: 120px; padding-bottom: 64px; }
