/* TapConvo UI v389 | logo-matched hybrid brand layer.
   Loaded AFTER tapconvo-v2.css, tapconvo-brand-full.css and tapconvo-ui-v385.css.
   Presentation only: no form, API, chat, navigation or Turnstile JavaScript changes. */
:root {
  --tc-brand-navy: #013160;
  --tc-brand-blue: #01A1F2;
  --tc-brand-cyan: #49C8FB;
  --tc-primary: #0369A1;
  --tc-primary-hover: #075985;
  --tc-background: #F6FAFE;
  --tc-surface: #FFFFFF;
  --tc-text: #0B2136;
  --tc-text-muted: #476277;
  --tc-border: #D9E8F2;
  --tc-dark-background: #0A1B2E;
  --tc-dark-surface: #013160;
  --tc-radius: 12px;
  --tc-focus-color: #49C8FB;
  --tc-brand-gradient: linear-gradient(135deg,#49C8FB 0%,#01A1F2 50%,#013160 100%);
  --tc-cta-gradient: linear-gradient(115deg,#0369A1 0%,#014E83 100%);
}

/* Shared: accessible action colors and consistent corners. */
.home-page, .login-page, .signup-page { color-scheme: light; }
.home-page .button-primary, .login-page .button-primary, .signup-page .button-primary {
  background: var(--tc-cta-gradient); color: #fff;
  border-color: rgba(2,64,111,.14);
  box-shadow: 0 11px 24px rgba(3,105,161,.20);
}
.home-page .button-primary:hover, .login-page .button-primary:hover, .signup-page .button-primary:hover {
  background: linear-gradient(115deg,#075985,#013160);
  box-shadow: 0 13px 27px rgba(3,105,161,.27);
}
.home-page a:focus-visible, .home-page button:focus-visible,
.login-page a:focus-visible, .login-page button:focus-visible, .login-page input:focus-visible,
.signup-page a:focus-visible, .signup-page button:focus-visible, .signup-page input:focus-visible {
  outline: 3px solid #159ED6 !important; outline-offset: 3px;
}
.home-page .brand img, .login-page .brand img, .signup-page .brand img {
  filter: none;
}

/* Home navigation: logo's dark wordmark stays readable on white. */
.home-page { background: var(--tc-background); color: var(--tc-text); }
.home-page .site-header {
  background: rgba(255,255,255,.97); border-top: 2px solid var(--tc-brand-blue);
  border-bottom: 1px solid var(--tc-border);
  box-shadow: 0 4px 22px rgba(1,49,96,.05);
}
.home-page .site-header .header-inner { height: 92px !important; }
.home-page .site-header .brand img.tc-full-logo {
  width: 102px !important; height: auto !important;
  max-height: 88px !important; object-fit: contain;
}
.home-page .primary-nav a, .home-page .nav-signin { color: #24485F; }
.home-page .primary-nav a:hover, .home-page .nav-signin:hover { color: var(--tc-primary); }
.home-page .nav-actions .nav-trial { border-radius: var(--tc-radius); }

/* Navy hero retains contrast for white copy and original dark inbox illustration. */
.home-page .hero-section {
  color: #F6FBFF;
  background: radial-gradient(circle at 76% 9%,rgba(1,161,242,.17),transparent 44%),
              linear-gradient(128deg,#07192B 0%,#092B4D 54%,#071A30 100%);
}
.home-page .hero-glow-one { background: rgba(73,200,251,.16); }
.home-page .hero-glow-two { background: rgba(1,161,242,.10); }
.home-page .hero-description { color: #BED0E2; }
.home-page .eyebrow, .home-page .hero-section .section-kicker { color: #95E4FF; }
.home-page .text-gradient, .login-page .text-gradient, .signup-page .text-gradient {
  background: linear-gradient(105deg,#D6F5FF 0%,#74D8FF 48%,#49B9F9 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.home-page .hero-section .button-outline,
.home-page .contact-panel .button-outline {
  border-color: rgba(214,239,255,.32); color: #F3FAFF; background: rgba(255,255,255,.05);
}
.home-page .hero-section .button-outline:hover,
.home-page .contact-panel .button-outline:hover { background: rgba(255,255,255,.12); }
.home-page .tc-hero-signin { color: #C1D6E7; }
.home-page .tc-hero-signin a { color: #B8E7FF; }
.home-page .hero-notes { color: #C3D8E7; }
.home-page .note-check { color: #65E3C8; }
.home-page .hero-bottom, .home-page .preview-disclaimer { color: #9AB8D3; }

/* Clean light content panels to balance the dark hero. */
.home-page .section-features, .home-page .process-section,
.home-page .faq-section { color: var(--tc-text); background: var(--tc-background); }
.home-page .process-section { background: #FFFFFF; border-color: var(--tc-border); }
.home-page .section-features { border-top: none; }
.home-page .section-kicker { color: var(--tc-primary); }
.home-page .muted-headline { color: #5C7287; }
.home-page .section-intro p, .home-page .process-heading p,
.home-page .faq-subtitle, .home-page .step p { color: var(--tc-text-muted); }
.home-page .bento-card {
  background: #FFFFFF; color: var(--tc-text);
  border-color: #D7E6F0;
  box-shadow: 0 13px 34px rgba(1,49,96,.055);
}
.home-page .bento-feature-accent { background: linear-gradient(140deg,#F0F9FF,#E9F4FC); }
.home-page .bento-card:hover { border-color: #7CBCE1; }
.home-page .bento-card p { color: var(--tc-text-muted); }
.home-page .cyan-icon, .home-page .blue-icon { color: #0369A1; background: #DFEFF9; }
.home-page .purple-icon { color: #225F9D; background: #E1EEFF; }
.home-page .green-icon { color: #087A68; background: #E3F7F2; }
.home-page .stack-item {
  background: #EDF6FC; border: 1px solid #CDE4F2;
  color: #173A55; box-shadow: 0 8px 20px rgba(1,49,96,.08);
}
.home-page .stack-item>span:last-child { color: #43718C; }
.home-page .team-avatars span:not(.avatar-more) { border-color: #F0F9FF; }
.home-page .team-avatars .avatar-more,
.home-page .mini-context { color: #526F84; }
.home-page .workflow-chain { color: #31556C; }
.home-page .workflow-chain span { background: #E8F3FB; border-color: #C8E1F2; }
.home-page .workflow-chain em { color: #0369A1; }
.home-page .process-section .text-gradient {
  background: linear-gradient(105deg,#0369A1,#013160);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.home-page .text-link { color: #0369A1; }
.home-page .text-link:hover { color: #013160; }
.home-page .steps, .home-page .step,
.home-page .faq-items, .home-page .faq-items details { border-color: #D9E8F2; }
.home-page .step-number, .home-page .step-arrow { color: #0369A1; }
.home-page .faq-items summary { color: #163850; }
.home-page .faq-items summary span { color: #0369A1; }
.home-page .faq-items details p { color: var(--tc-text-muted); }

/* Contact stays navy; footer returns to white so the logo is clear. */
.home-page .contact-section { background: #F6FAFE; }
.home-page .contact-panel {
  color: #F5FAFF; border-color: rgba(73,200,251,.24);
  background: radial-gradient(circle at 89% 18%,rgba(1,161,242,.20),transparent 48%),
              linear-gradient(125deg,#07192C,#013160 68%,#062444);
}
.home-page .contact-panel .section-kicker { color: #8EE1FF; }
.home-page .contact-content>p { color: #C2D6E8; }
.home-page .contact-content .contact-note { color: #ADCAE3; }
.home-page .site-footer { color: #284B66; background: #FFFFFF; border-color: #D9E8F2; }
.home-page .site-footer .footer-inner p,
.home-page .copyright { color: #527188; }
.home-page .footer-links a { color: #315C78; }
.home-page .footer-links a:hover { color: #0369A1; }

/* Auth right side: white form surface improves logo, field and Turnstile readability. */
.login-page, .signup-page { background: #FFFFFF; color: var(--tc-text); }
.login-page .login-main, .signup-page .login-main { background: #FFFFFF; color: var(--tc-text); }
.login-page .login-editorial, .signup-page .login-editorial,
.signup-page .tc-signup-editorial {
  color: #F4F9FE;
  background: radial-gradient(circle at 72% 42%,rgba(73,200,251,.14),transparent 47%),
              linear-gradient(145deg,#071A30,#013160 70%,#06172A);
}
/* The original logo has dark-navy letters: give it a white backing ONLY on the dark panel. */
.login-page .login-editorial .login-brand,
.signup-page .login-editorial .login-brand {
  display: inline-flex; align-self: flex-start;
  background: #FFFFFF !important;
  border-radius: 19px; padding: 5px 12px !important;
  box-shadow: 0 9px 29px rgba(0,0,0,.13) !important;
}
.login-page .login-editorial .login-brand img.tc-full-logo,
.signup-page .login-editorial .login-brand img.tc-full-logo {
  width: 135px; max-height: 117px; height: auto;
}
.login-page .editorial-content>p, .signup-page .editorial-content>p { color: #BED3E6; }
.login-page .editorial-card { background: rgba(255,255,255,.065); border-color: rgba(186,224,252,.17); }
.login-page .editorial-card p { color: #DFEDFA; }
.login-page .editorial-footnote, .signup-page .editorial-footnote { color: #9BBBD6; }
.login-page .login-toplink a, .signup-page .login-toplink a { color: #315D77; }
.login-page .login-toplink a:hover, .signup-page .login-toplink a:hover { color: #013160; }
.login-page .login-badge, .signup-page .login-badge { color: #0369A1; }
.login-page .login-title-dot, .signup-page .login-title-dot { color: #01A1F2; }
.login-page .login-form-header p, .signup-page .login-form-header p { color: #506B80; }
.login-page .form-field label, .signup-page .form-field label { color: #153D5A; }
.login-page .form-field input, .signup-page .form-field input {
  background: #F8FBFE; color: #0B2136; border: 1px solid #C9DAE8;
  border-radius: var(--tc-radius); caret-color: #0369A1;
}
.login-page .form-field input::placeholder, .signup-page .form-field input::placeholder { color: #647D91; }
.login-page .form-field input:focus, .signup-page .form-field input:focus {
  background: #FFFFFF; border-color: #0369A1;
  box-shadow: 0 0 0 3px rgba(1,161,242,.13);
}
.login-page .password-wrapper button { color: #0369A1; }
.login-page .login-help {
  background: #F0F7FC; border-color: #D9E8F2;
}
.login-page .login-help p { color: #4C667B; }
.login-page .login-help strong { color: #153D5A; }
.login-page .login-contact, .signup-page .tc-signup-terms { color: #5C7489; }
.login-page .login-contact a { color: #0369A1; }
.login-page .tc-auth-switch, .signup-page .tc-auth-switch { color: #456177; }
.login-page .tc-auth-switch a, .signup-page .tc-auth-switch a { color: #0369A1; border-color: #80B8D7; }
.login-page .tc-auth-switch a:hover, .signup-page .tc-auth-switch a:hover { color: #013160; }
.login-page .login-footer, .signup-page .login-footer { color: #688197; }
.login-page .login-error { color: #9F1837; background: #FFF2F4; border-color: #F8BCC9; }
.signup-page .tc-input-hint, .signup-page .tc-captcha-label { color: #46627A; }
.signup-page .tc-signup-status { color: #235672; }
.signup-page .tc-trial-benefits > div > span { color: #72F0D2; }
.signup-page .tc-trial-benefits strong { color: #F0F8FF; }
.signup-page .tc-trial-benefits small { color: #C7DBEB; }
.signup-page .tc-signup-form .login-submit:disabled { opacity: .62; }

/* Existing v385 breakpoints take priority unless necessary for brand visibility. */
@media (max-width:980px) {
  .home-page .site-header .header-inner { height: 78px !important; }
  .home-page .site-header .brand img.tc-full-logo { width: 84px !important; max-height: 73px !important; }
  .home-page .primary-nav {
    background: #FFFFFF; border-color: #D9E8F2;
    box-shadow: 0 16px 36px rgba(1,49,96,.15);
  }
  .home-page .primary-nav a { color: #24485F; }
  .home-page .primary-nav a:hover { background: #EAF5FC; color: #0369A1; }
  .home-page .tc-menu-toggle { background: #EFF7FC; color: #013160; border-color: #D0E5F2; }
  .login-page .login-main, .signup-page .login-main { background: #FFFFFF; }
}
@media (max-width:600px) {
  .home-page .site-header .header-inner { height: 73px !important; }
  .home-page .site-header .brand img.tc-full-logo { width: 76px !important; max-height: 66px !important; }
  .home-page .primary-nav .tc-nav-trial { background: var(--tc-cta-gradient); color: white; }
  .home-page .hero-section { padding-top: 45px; }
  .home-page .bento-card { box-shadow: 0 6px 22px rgba(1,49,96,.045); }
  .login-page .login-main .tc-mobile-brand img.tc-full-logo,
  .signup-page .login-main .tc-mobile-brand img.tc-full-logo {
    width: 114px !important; max-height: 104px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .home-page .button, .login-page .button, .signup-page .button { transition: none; }
}
