/* TVC public coherence pass: quiet light surfaces, account-page controls. */
:root{
  --tvc-paper:#fff;--tvc-soft:#f7f7f5;--tvc-ink:#090909;--tvc-muted:#686866;
  --tvc-faint:#999997;--tvc-line:#d8d8d5;--tvc-danger:#8c1d14;
  --tvc-sans:'DM Sans',sans-serif;
}
.stay-connected-signature{display:block;width:min(180px,55%);height:auto;margin:42px 0 0}
body.tvc-public-shell,body.tvc-utility-page,body.tvc-onboarding{
  background:var(--tvc-paper)!important;color:var(--tvc-ink)!important;
  font-family:var(--tvc-sans)!important;-webkit-font-smoothing:antialiased;
}
body.tvc-public-shell .nav,body.tvc-utility-page .utility-header{
  background:#fff!important;border-bottom:1px solid var(--tvc-line)!important;
  box-shadow:none!important;backdrop-filter:none!important;
}
body.tvc-public-shell .nav-logo,body.tvc-public-shell .nav-about,
body.tvc-public-shell .nav-link,body.tvc-public-shell .nav-menu-btn{color:var(--tvc-ink)!important}
body.tvc-public-shell .nav-menu-btn span{background:var(--tvc-ink)!important}
body.tvc-public-shell .menu-backdrop{background:rgba(9,9,9,.22)!important;backdrop-filter:none!important}
body.tvc-public-shell .menu-panel{
  background:#fff!important;border-left:1px solid var(--tvc-line)!important;
  box-shadow:-20px 0 40px rgba(0,0,0,.06)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
body.tvc-public-shell .menu-link{color:var(--tvc-ink)!important}
body.tvc-public-shell .menu-link:hover{color:#777!important}
body.tvc-public-shell .menu-icon{border-radius:50%!important;border-color:var(--tvc-line)!important;color:#555!important}
body.tvc-public-shell :is(a,button,input,textarea,select):focus-visible{
  outline:2px solid var(--tvc-ink)!important;outline-offset:3px;
}
body.tvc-public-shell #home-footer{background:#fff!important;border-top:1px solid var(--tvc-line)!important}
body.tvc-public-shell #home-footer-copy{color:var(--tvc-ink)!important}
body.tvc-public-shell .home-footer-link{color:#555!important;border-radius:0!important}
body.tvc-public-shell .home-footer-link:hover{background:var(--tvc-soft)!important;color:var(--tvc-ink)!important}
/* About: replace the old editorial dark/cream layer without touching copy or hooks. */
body.tvc-public-shell:has(.hero) .hero,
body.tvc-public-shell:has(.hero) .section,
body.tvc-public-shell:has(.hero) .site-footer{background:#fff!important;color:var(--tvc-ink)!important;border-color:var(--tvc-line)!important}
body.tvc-public-shell:has(.hero) .hero h1,
body.tvc-public-shell:has(.hero) .section h2,
body.tvc-public-shell:has(.hero) .collab h2,
body.tvc-public-shell:has(.hero) .signup h2{color:var(--tvc-ink)!important}
body.tvc-public-shell:has(.hero) .nav-link,
body.tvc-public-shell:has(.hero) .nav-link:hover,
body.tvc-public-shell:has(.hero) .nav-link.is-current{
  color:var(--tvc-ink)!important;
}
body.tvc-public-shell:has(.hero) .nav-link.is-current{
  border-bottom-color:var(--tvc-ink)!important;
}
body.tvc-public-shell:has(.hero) :is(.kicker,.hero-copy .body,.story-copy p,.collab-copy p,.section-intro,
  .find-item p,.signup-copy,.footer-copy){color:var(--tvc-muted)!important}
body.tvc-public-shell:has(.hero) .hero-copy .lead{color:#292929!important}
body.tvc-public-shell:has(.hero) .button{border-color:var(--tvc-ink)!important;color:var(--tvc-ink)!important;background:#fff!important}
body.tvc-public-shell:has(.hero) #aboutSecondaryCta{
  border-color:var(--tvc-ink)!important;
  background:var(--tvc-ink)!important;
  color:#fff!important;
}
body.tvc-public-shell:has(.hero) .button.primary,
body.tvc-public-shell:has(.hero) .submit-btn{background:var(--tvc-ink)!important;color:#fff!important}
body.tvc-public-shell:has(.hero) .find-grid{border-color:var(--tvc-line)!important}
body.tvc-public-shell:has(.hero) .find-item+.find-item{border-color:var(--tvc-line)!important}
body.tvc-public-shell:has(.hero) .find-icon svg{stroke:var(--tvc-ink)!important}
body.tvc-public-shell:has(.hero) .find-num,
body.tvc-public-shell:has(.hero) .text-link,
body.tvc-public-shell:has(.hero) .footer-link,
body.tvc-public-shell:has(.hero) .menu-icon{color:var(--tvc-ink)!important}
body.tvc-public-shell:has(.hero) .text-link,
body.tvc-public-shell:has(.hero) .footer-link,
body.tvc-public-shell:has(.hero) .menu-icon{border-color:var(--tvc-line)!important}
body.tvc-public-shell:has(.hero) .find-num{color:var(--tvc-muted)!important}
body.tvc-public-shell:has(.hero) :is(.text-link,.footer-link,.menu-icon):hover,
body.tvc-public-shell:has(.hero) :is(.text-link,.footer-link,.menu-icon):focus-visible{
  color:var(--tvc-ink)!important;border-color:var(--tvc-ink)!important;
}
body.tvc-public-shell:has(.hero) .signup{background:#fff!important;border-top:1px solid var(--tvc-line)!important}
body.tvc-public-shell:has(.hero) .email-input{border-color:var(--tvc-ink)!important;background:#fff!important}
body.tvc-public-shell:has(.hero) .listener-interests{margin-top:24px!important}
body.tvc-public-shell:has(.hero) .consent{color:var(--tvc-muted)!important}
body.tvc-public-shell:has(.hero) .form-status:not(:empty){
  margin-top:14px;padding:12px 14px;border:1px solid var(--tvc-line);
  background:#fff;color:var(--tvc-ink)!important;font-size:12px;line-height:1.55;
}
body.tvc-public-shell:has(.hero) .form-status.error{border-color:#a52b20;color:var(--tvc-danger)!important}
body.tvc-public-shell:has(.hero) .submit-btn:disabled{
  position:relative;color:transparent!important;cursor:wait;opacity:1;
}
body.tvc-public-shell:has(.hero) .submit-btn:disabled::after{
  content:"Submitting…";position:absolute;inset:0;display:grid;place-items:center;color:#fff;
}
/* Curator utility page */
body.tvc-utility-page{
  min-height:100dvh;display:flex;flex-direction:column;
  align-items:stretch;justify-content:flex-start;padding:0;overflow-x:hidden;
}
.utility-header{
  width:100%;height:60px;display:flex;align-items:center;justify-content:space-between;
  padding:0 22px;flex:0 0 auto;
}
.utility-header a{color:var(--tvc-ink);text-decoration:none;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.utility-header .utility-back{font-size:10px;letter-spacing:.14em}
body.tvc-utility-page .container{width:min(100% - 44px,420px);margin:clamp(64px,10vw,120px) auto 100px;padding:0;background:#fff;border:0;border-radius:0;box-shadow:none}
body.tvc-utility-page h1{font-size:clamp(42px,5vw,60px);font-weight:500;line-height:.95;letter-spacing:-.055em;text-transform:uppercase;color:var(--tvc-ink);margin-bottom:24px}
body.tvc-utility-page .subtitle{color:var(--tvc-muted);font-size:14px;line-height:1.7;margin-bottom:34px}
body.tvc-utility-page label{color:#222;font-size:9px;font-weight:500;letter-spacing:.17em;text-transform:uppercase;margin-bottom:8px}
body.tvc-utility-page .form-group{margin-bottom:18px}
body.tvc-utility-page input[type=text],body.tvc-utility-page input[type=email],body.tvc-utility-page textarea{
 width:100%;padding:12px 14px;background:#fff;border:1px solid var(--tvc-ink);border-radius:0;color:var(--tvc-ink);font:14px var(--tvc-sans)
}
body.tvc-utility-page textarea{min-height:112px}
body.tvc-utility-page input:focus,body.tvc-utility-page textarea:focus{outline:none;box-shadow:0 0 0 2px var(--tvc-ink)}
body.tvc-utility-page .legal-consent{color:var(--tvc-muted);font-size:11px;line-height:1.6}
body.tvc-utility-page .legal-consent a{color:var(--tvc-ink)}
body.tvc-utility-page button[type=submit]{width:100%;min-height:52px;padding:13px 20px;background:var(--tvc-ink);border:1px solid var(--tvc-ink);border-radius:0;color:#fff;font:500 10px var(--tvc-sans);letter-spacing:.14em;text-transform:uppercase}
body.tvc-utility-page button[type=submit]:hover{background:#fff;color:var(--tvc-ink)}
body.tvc-utility-page .success-message,body.tvc-utility-page .error-message{margin-top:18px;padding:14px;background:#fff;border:1px solid var(--tvc-line);border-radius:0;color:var(--tvc-ink)}
body.tvc-utility-page .success-message svg{display:none}
body.tvc-utility-page .error-message{border-color:#a52b20;color:var(--tvc-danger)}
.utility-footer{
  width:100%;margin-top:auto;border-top:1px solid var(--tvc-line);
  padding:19px 22px;color:#777;font-size:9px;letter-spacing:.13em;text-transform:uppercase;
}
/* Legal documents share the same shell and rhythm. */
body:has(.legal-shell){background:#fff!important}
body:has(.legal-shell) .legal-nav{background:#fff;border-color:var(--tvc-line)}
body:has(.legal-shell) .legal-shell{padding-top:88px}
body:has(.legal-shell) .legal-copy section{border-color:var(--tvc-line)}
body:has(.legal-shell) .legal-copy p{color:#50504c}
@media(max-width:700px){
 .utility-header{padding:0 15px}.utility-header a{font-size:12px}
 body.tvc-utility-page .container{width:min(100% - 30px,620px);margin:58px auto 82px}
 .utility-footer{padding:18px 15px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}
}

/* Editorial supporting-flow system — intentionally last so legacy utility
   treatments cannot reintroduce glass, warm surfaces, or rounded controls. */
:root{
  --tvc-paper:#fff;--tvc-ink:#090909;--tvc-muted:#666663;
  --tvc-faint:#999996;--tvc-line:#d8d8d5;--tvc-danger:#8c1d14;
}
body.tvc-utility-page,body.tvc-onboarding{background:#fff!important;color:var(--tvc-ink)!important}
body.tvc-public-shell:has(.hero){background:#fff!important;color:var(--tvc-ink)!important}
body.tvc-public-shell:has(.hero) .hero h1,
body.tvc-public-shell:has(.hero) .section h2,
body.tvc-public-shell:has(.hero) .collab h2,
body.tvc-public-shell:has(.hero) .signup h2{
  font-size:clamp(28px,3.5vw,42px)!important;line-height:1.08!important;
  letter-spacing:.07em!important;font-weight:400!important
}
body.tvc-utility-page .utility-header,
body.tvc-onboarding .masthead{background:#fff!important;border-bottom:1px solid var(--tvc-line)!important}
.utility-nav{display:flex;align-items:center;gap:24px}
.utility-nav>a{color:#111;text-decoration:none;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.utility-nav .nav-menu-btn{width:42px;height:42px;border:0;background:none;display:grid;align-content:center;gap:5px;padding:9px;cursor:pointer}
.utility-nav .nav-menu-btn span{display:block;width:22px;height:1px;background:#111}
body.tvc-utility-page .container{max-width:620px!important;width:min(calc(100% - 44px),620px)!important;margin:48px auto 112px!important}
.utility-eyebrow{margin-bottom:22px;color:#111;font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}
body.tvc-utility-page h1,body.tvc-onboarding h1{
  max-width:none!important;font-size:clamp(27px,3.5vw,38px)!important;line-height:1.08!important;
  letter-spacing:.08em!important;font-weight:400!important;text-transform:uppercase!important;
}
body.tvc-utility-page .subtitle{max-width:43ch;margin:18px 0 42px!important;font-size:14px!important;line-height:1.7!important}
body.tvc-utility-page .form-group{margin-bottom:24px!important}
body.tvc-utility-page label,body.tvc-utility-page legend{
  display:block;color:#222!important;font-size:9px!important;font-weight:500!important;
  letter-spacing:.18em!important;text-transform:uppercase!important;margin-bottom:9px!important;
}
body.tvc-utility-page input[type=text],body.tvc-utility-page input[type=email],
body.tvc-utility-page input[type=url],body.tvc-utility-page textarea{
  min-height:50px!important;padding:13px 14px!important;border:1px solid #111!important;
  border-radius:0!important;background:#fff!important;color:#111!important;font-size:14px!important;
}
body.tvc-utility-page textarea{min-height:124px}
body.tvc-utility-page input:focus,body.tvc-utility-page textarea:focus{
  outline:0!important;box-shadow:0 0 0 2px #111!important
}
body.tvc-utility-page .interest-grid{grid-template-columns:1fr 1fr;gap:10px 18px}
body.tvc-utility-page .interest-grid label,body.tvc-utility-page .legal-consent{
  color:#666!important;font-size:11px!important;letter-spacing:0!important;text-transform:none!important;
  font-weight:400!important;line-height:1.55!important
}
body.tvc-utility-page .interest-grid label{
  display:flex!important;align-items:flex-start!important;gap:12px!important;margin:0!important
}
body.tvc-utility-page .interest-grid input,body.tvc-utility-page .legal-consent input{accent-color:#111}
body.tvc-utility-page button[type=submit]{
  min-height:52px!important;margin-top:18px!important;border:1px solid #090909!important;
  border-radius:0!important;background:#090909!important;color:#fff!important;
  font-size:10px!important;letter-spacing:.16em!important;font-weight:500!important;
  text-transform:uppercase!important
}
body.tvc-utility-page button[type=submit]::after{content:"  →"}
body.tvc-utility-page .success-message{
  margin-top:34px!important;padding:30px 0 0!important;
  border:0!important;border-top:1px solid var(--tvc-line)!important;background:#fff!important;color:#111!important
}
body.tvc-utility-page form.is-success>:not(.success-message):not(.utility-signature){display:none!important}
body.tvc-utility-page form.is-success .success-message{
  min-height:420px;margin-top:0!important;padding:72px 20px!important;border:1px solid var(--tvc-line)!important;
  flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center
}
body.tvc-utility-page form.is-success .success-actions{justify-content:center}
body.tvc-utility-page .success-check{
  width:42px!important;height:42px!important;margin-bottom:24px;border:1px solid #111!important;
  color:#111!important
}
body.tvc-utility-page .success-message strong{display:block;font-size:11px;letter-spacing:.18em;font-weight:500}
body.tvc-utility-page .success-message #successCopy{margin-top:13px;color:#666;font-size:13px;line-height:1.65}
body.tvc-utility-page .success-actions{margin-top:22px}
body.tvc-utility-page .error-message{margin-top:18px!important;padding:13px 14px!important;border:1px solid #a52b20!important;border-radius:0!important;background:#fff!important}
.utility-signature{display:block;width:124px;height:auto;margin:38px auto 0}
body.tvc-onboarding .card{width:min(100% - 44px,760px)!important;margin:86px auto 110px!important}
body.tvc-onboarding .intro{grid-template-columns:1fr!important;padding:0 0 42px!important;border-bottom:1px solid var(--tvc-line)!important}
body.tvc-onboarding .privacy-note{max-width:440px;padding:0!important;border:0!important;background:#fff!important}
body.tvc-onboarding .lede{max-width:46ch!important;color:#666!important}
body.tvc-onboarding .state h2{font-size:32px!important;font-weight:400!important;letter-spacing:.06em!important}
body.tvc-onboarding .section{padding-top:34px!important;margin-top:34px!important}
body.tvc-onboarding input,body.tvc-onboarding select,body.tvc-onboarding textarea{
  border:1px solid #111!important;border-radius:0!important;background:#fff!important
}
body.tvc-onboarding input:focus,body.tvc-onboarding select:focus,body.tvc-onboarding textarea:focus{box-shadow:0 0 0 2px #111!important}
body.tvc-onboarding .legal-consent{border:1px solid var(--tvc-line)!important;border-radius:0!important;background:#fff!important}
body.tvc-onboarding button{border-radius:0!important;background:#090909!important;letter-spacing:.16em!important;text-transform:uppercase!important}
body.tvc-onboarding .loading-dot{animation:none!important;border-top-color:#111!important}
@media(max-width:600px){
 body.tvc-utility-page .container{width:min(calc(100% - 30px),620px)!important;margin:40px auto 82px!important}
 body.tvc-utility-page .interest-grid{grid-template-columns:1fr}
 body.tvc-onboarding .card{width:min(100% - 30px,620px)!important;margin:58px auto 82px!important}
}

/* About responsive composition */
body.tvc-public-shell:has(.hero) .shell{width:min(calc(100% - 64px),1320px)}
body.tvc-public-shell:has(.hero) .section{padding:clamp(88px,9vw,132px) 0}
body.tvc-public-shell:has(.hero) .story-grid,
body.tvc-public-shell:has(.hero) .collab-grid{
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);
  gap:clamp(48px,6vw,88px);
  align-items:start;
}
body.tvc-public-shell:has(.hero) .story-copy,
body.tvc-public-shell:has(.hero) .collab-copy{padding-top:8px;max-width:700px}
body.tvc-public-shell:has(.hero) :is(.story-copy p,.collab-copy p,.hero-copy .body){
  font-size:clamp(16px,1.15vw,18px);line-height:1.72;color:#565654!important;
}
body.tvc-public-shell:has(.hero) .section-head{
  display:block;margin-bottom:20px;max-width:900px;
}
body.tvc-public-shell:has(.hero) .section-head .redundant-kicker{display:none!important}
body.tvc-public-shell:has(.hero) .section-head h2{max-width:none}
body.tvc-public-shell:has(.hero) .section-intro{
  max-width:680px;margin:0 0 46px;
  font-size:clamp(17px,1.4vw,21px);line-height:1.6;color:#565654!important;
}
body.tvc-public-shell:has(.hero) .find-experience{
  display:block;
}
body.tvc-public-shell:has(.hero) .find-experience .find-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  border:1px solid var(--tvc-line)!important;
}
body.tvc-public-shell:has(.hero) .find-experience .find-item{
  display:flex;
  min-width:0;
  min-height:330px;
  padding:24px 18px 28px;
  flex-direction:column;
  align-items:flex-start;
  gap:0;
  border:0;
}
body.tvc-public-shell:has(.hero) .find-experience .find-item+.find-item{
  border-left:1px solid var(--tvc-line)!important;
}
body.tvc-public-shell:has(.hero) .find-experience .find-num{padding:0}
body.tvc-public-shell:has(.hero) .find-experience .find-icon{
  width:min(100%,104px);
  margin:34px 0 28px;
}
body.tvc-public-shell:has(.hero) .find-experience .find-item h3{font-size:16px}
body.tvc-public-shell:has(.hero) .find-panels{
  position:static;
  min-height:0;
  margin-top:28px;
}
body.tvc-public-shell:has(.hero) .find-empty{
  min-height:150px;
}
body.tvc-public-shell:has(.hero) .find-panel{
  min-height:420px;
}
body.tvc-public-shell:has(.hero) .find-experience .find-item p{
  font-size:14px;line-height:1.62;color:#5a5a57!important;
}
body.tvc-public-shell:has(.hero) .find-panel-copy{font-size:16px;line-height:1.7}
body.tvc-public-shell:has(.hero) .signup{padding:clamp(82px,9vw,124px) 0}
body.tvc-public-shell:has(.hero) .signup-grid{
  grid-template-columns:minmax(270px,.78fr) minmax(0,1.22fr);
  gap:clamp(52px,7vw,104px);
}
body.tvc-public-shell:has(.hero) .signup-copy{font-size:18px;line-height:1.65;color:#4f4f4c!important}
body.tvc-public-shell:has(.hero) .form-row{display:block}
body.tvc-public-shell:has(.hero) .email-input{width:100%;border-right:1px solid #111!important}
body.tvc-public-shell:has(.hero) .listener-interests{margin:26px 0 0!important}
body.tvc-public-shell:has(.hero) .listener-interests legend{
  margin-bottom:14px;font-size:11px;line-height:1.5;color:#333;
}
body.tvc-public-shell:has(.hero) .listener-interest-grid{gap:12px 24px}
body.tvc-public-shell:has(.hero) .listener-interest-grid label,
body.tvc-public-shell:has(.hero) .consent{font-size:14px;line-height:1.6;color:#555552!important}
body.tvc-public-shell:has(.hero) .listener-interest-grid input{width:17px;height:17px}
body.tvc-public-shell:has(.hero) .consent{gap:12px;margin-top:22px;max-width:720px}
body.tvc-public-shell:has(.hero) .consent input{width:19px;height:19px}
body.tvc-public-shell:has(.hero) .submit-btn{
  display:block;width:100%;min-height:54px;margin-top:28px;
}
body.tvc-public-shell:has(.hero) .stay-connected-signature{
  width:150px;margin:46px 0 0 auto;
}
@media(max-width:900px){
  body.tvc-public-shell:has(.hero) .shell{width:min(calc(100% - 44px),1320px)}
  body.tvc-public-shell:has(.hero) .story-grid,
  body.tvc-public-shell:has(.hero) .collab-grid,
  body.tvc-public-shell:has(.hero) .signup-grid{grid-template-columns:1fr;gap:38px}
  body.tvc-public-shell:has(.hero) .story-copy,
  body.tvc-public-shell:has(.hero) .collab-copy{padding-top:0}
  body.tvc-public-shell:has(.hero) .find-experience .find-grid{grid-template-columns:1fr}
  body.tvc-public-shell:has(.hero) .find-experience .find-item{
    display:grid;grid-template-columns:30px 84px minmax(0,1fr);
    gap:16px;align-items:center;min-height:0;padding:18px 4px;
    border-top:1px solid var(--tvc-line)!important;
  }
  body.tvc-public-shell:has(.hero) .find-experience .find-item:first-child{border-top:0!important}
  body.tvc-public-shell:has(.hero) .find-experience .find-item+.find-item{border-left:0!important}
  body.tvc-public-shell:has(.hero) .find-experience .find-icon{width:84px;margin:0}
  body.tvc-public-shell:has(.hero) .find-experience .find-item p{grid-column:3}
  body.tvc-public-shell:has(.hero) .find-panels{grid-column:1/-1;margin:0}
}
@media(min-width:901px) and (max-width:1120px){
  body.tvc-public-shell:has(.hero) .find-experience .find-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.tvc-public-shell:has(.hero) .find-experience .find-item:nth-child(4),
  body.tvc-public-shell:has(.hero) .find-experience .find-item:nth-child(5){border-top:1px solid var(--tvc-line)!important}
  body.tvc-public-shell:has(.hero) .find-experience .find-item:nth-child(4){grid-column:1/2}
}
@media(max-width:600px){
  body.tvc-public-shell:has(.hero) .shell{width:min(calc(100% - 30px),1320px)}
  body.tvc-public-shell:has(.hero) .section{padding:76px 0}
  body.tvc-public-shell:has(.hero) .section-intro{margin-bottom:34px}
  body.tvc-public-shell:has(.hero) .listener-interest-grid{display:grid;grid-template-columns:1fr}
  body.tvc-public-shell:has(.hero) .stay-connected-signature{width:126px;margin-top:38px}
}