/* Shared Gutenberg landing-page styles. Every selector stays within the explicit wrapper. */
.thisline-landing {
  --tl-black:#000000; --tl-lime:#ccff00; --tl-white:#ffffff;
  --tl-surface-2:#0d0d0d; --tl-surface-3:#1a1a1a; --tl-line:#2a2a2a;
  --tl-text-mid:#cccccc; --tl-text-lo:#888888; --tl-lime-hover:#d6ff33;
  --tl-display:'Roboto Condensed','Arial Narrow',sans-serif;
  --tl-body:'Inter',system-ui,-apple-system,sans-serif;
  color:var(--tl-white); background:var(--tl-black); font-family:var(--tl-body);
  font-size:19px; font-weight:300; line-height:1.6; isolation:isolate;
}
.thisline-landing *, .thisline-landing *::before, .thisline-landing *::after { box-sizing:border-box; }
.thisline-landing ::selection { background:var(--tl-lime); color:var(--tl-black); }
.thisline-landing p { color:var(--tl-text-mid); margin:0 0 24px; max-width:68ch; }
.thisline-landing h1,.thisline-landing h2,.thisline-landing h3 {
  color:var(--tl-white); font-family:var(--tl-display); font-weight:700;
  text-transform:uppercase; line-height:1.05; letter-spacing:-.01em; margin:0 0 24px;
  overflow-wrap:normal;
}
.thisline-landing h3 { font-size:30px; }
.thisline-landing a { color:var(--tl-white); text-decoration:none; transition:color 200ms ease,background-color 200ms ease; }
.thisline-landing a:hover { color:var(--tl-lime); }
.thisline-landing a:focus-visible { outline:2px solid var(--tl-lime); outline-offset:4px; box-shadow:0 0 0 2px #000; }
.thisline-landing .tl-container { width:100%; max-width:1100px; margin:0 auto; }
.thisline-landing .tl-section { padding:100px 24px; margin:0; }
.thisline-landing .tl-eyebrow {
  font-family:var(--tl-display); font-weight:700; color:var(--tl-lime); font-size:11px;
  line-height:1.5; letter-spacing:.28em; text-transform:uppercase; margin-bottom:24px;
}
.thisline-landing .tl-meta { color:var(--tl-text-lo); font-size:14px; line-height:1.6; }
.thisline-landing .tl-note { color:var(--tl-text-lo); font-size:15px; margin:32px 0 0; }
.thisline-landing .tl-display { font-size:clamp(72px,8vw,112px); font-weight:900; line-height:.94; letter-spacing:-.03em; margin-bottom:32px; }
.thisline-landing .tl-section-display { font-size:clamp(40px,4.4vw,64px); line-height:1; letter-spacing:-.02em; }
.thisline-landing .tl-lead { max-width:44ch; font-size:19px; line-height:1.6; }
.thisline-landing .wp-block-buttons { display:flex; flex-wrap:wrap; gap:16px; margin:32px 0; }
.thisline-landing .wp-block-button__link {
  border-radius:0; padding:16px 32px; font-family:var(--tl-display); font-size:16px;
  font-weight:900; text-transform:uppercase; letter-spacing:.12em; line-height:1.2;
  min-height:52px; display:inline-flex; align-items:center; justify-content:center;
  text-align:center; border:2px solid transparent; box-shadow:none;
}
.thisline-landing .tl-button-primary .wp-block-button__link { background:var(--tl-lime); color:var(--tl-black); }
.thisline-landing .tl-button-primary .wp-block-button__link:hover { background:var(--tl-lime-hover); color:var(--tl-black); }
.thisline-landing .tl-button-primary .wp-block-button__link:active { background:#b8e600; }
.thisline-landing .tl-button-secondary .wp-block-button__link { background:transparent; color:var(--tl-white); border-color:#393939; }
.thisline-landing .tl-button-secondary .wp-block-button__link:hover { background:var(--tl-lime); border-color:var(--tl-lime); color:var(--tl-black); }
.thisline-landing .tl-hero { padding:80px 24px; position:relative; margin:0; min-height:720px; }
.thisline-landing .tl-hero .wp-block-cover__inner-container { width:100%; }
.thisline-landing .tl-hero .wp-block-cover__background { opacity:.5; }
.thisline-landing .tl-hero::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.65) 0%,transparent 85%),linear-gradient(0deg,#000 0%,transparent 24%); pointer-events:none; z-index:1; }
.thisline-landing .tl-hero .wp-block-cover__inner-container { position:relative; z-index:2; }
.thisline-landing .tl-hero .wp-block-cover__image-background { object-position:50% 62%; }
.thisline-landing .tl-hero-copy { max-width:800px; }
.thisline-landing .tl-hero .tl-meta { margin:32px 0 0; }
.thisline-landing .tl-page-nav { background:var(--tl-black); border-block:1px solid var(--tl-line); padding:8px 24px; }
.thisline-landing .tl-nav-inner { display:flex; flex-wrap:wrap; align-items:center; gap:0 32px; }
.thisline-landing .tl-nav-inner p { margin:0; font:700 14px/1.2 var(--tl-display); text-transform:uppercase; letter-spacing:.04em; }
.thisline-landing .tl-nav-inner a { display:block; padding:16px 0; min-height:48px; }
.thisline-landing .tl-nav-support { margin-left:auto!important; }
.thisline-landing .tl-nav-support a { color:var(--tl-lime); }
.thisline-landing .wp-block-columns { gap:48px; margin:0; }
.thisline-landing .wp-block-column { min-width:0; }
.thisline-landing .tl-story-columns,.thisline-landing .tl-podcast-columns,.thisline-landing .tl-follow-columns { align-items:center; gap:64px; }
.thisline-landing figure { margin:0; }
.thisline-landing .wp-block-image img { display:block; width:100%; height:auto; }
.thisline-landing figcaption { color:var(--tl-text-lo); font-size:14px; line-height:1.6; margin:12px 0 0; }
.thisline-landing .tl-portrait img { aspect-ratio:4/5; object-fit:cover; object-position:50% 50%; }
.thisline-landing .tl-goals { background:var(--tl-surface-2); border-block:1px solid var(--tl-line); }
.thisline-landing .tl-section-intro { margin-bottom:48px; align-items:end; }
.thisline-landing .tl-section-intro p { margin-bottom:24px; }
.thisline-landing .tl-card-columns { gap:24px; align-items:stretch; }
.thisline-landing .tl-card-columns>.wp-block-column { display:flex; }
.thisline-landing .tl-card { width:100%; border:1px solid var(--tl-line); background:var(--tl-surface-3); padding:32px; }
.thisline-landing .tl-card .tl-eyebrow { padding-bottom:24px; border-bottom:1px solid #393939; }
.thisline-landing .tl-card p:last-child { margin-bottom:0; }
.thisline-landing .tl-text-link { font-size:15px; }
.thisline-landing .tl-text-link a { display:inline-block; min-height:44px; padding:8px 0; }
.thisline-landing .tl-player { border-top:1px solid var(--tl-line); padding-top:24px; margin-top:32px; }
.thisline-landing .tl-spotify { margin:0; }
.thisline-landing .tl-player iframe { display:block; width:100%; max-width:100%; min-height:152px; border:0; border-radius:0; }
.thisline-landing .tl-podcast-photo img { aspect-ratio:3/4; object-fit:cover; object-position:50% 48%; }
.thisline-landing .tl-expedition { border-block:1px solid var(--tl-line); }
.thisline-landing .tl-step-columns { gap:24px; margin-top:48px; }
.thisline-landing .tl-step { border-top:1px solid #393939; padding-top:24px; }
.thisline-landing .tl-step-number { color:var(--tl-lime); font:900 48px/1 var(--tl-display); margin-bottom:24px; }
.thisline-landing .tl-step p:last-child { font-size:17px; margin-bottom:0; }
.thisline-landing .tl-follow-photo img { aspect-ratio:4/5; object-fit:cover; object-position:50% 50%; }
.thisline-landing .tl-follow-extra { border-top:1px solid var(--tl-line); margin-top:48px; padding-top:32px; }
.thisline-landing .tl-follow-extra p { font-size:17px; }
.thisline-landing .tl-support { border-top:3px solid var(--tl-lime); background:var(--tl-surface-2); }
.thisline-landing .tl-support-columns { align-items:center; }
.thisline-landing .tl-target { border-left:1px solid #393939; padding-left:32px; }
.thisline-landing .tl-target-number { font:900 clamp(48px,5.4vw,72px)/1 var(--tl-display); color:var(--tl-lime); letter-spacing:-.03em; margin-bottom:16px; }
.thisline-landing .tl-target-label { font-size:17px; }
.thisline-landing .tl-signoff { border-top:1px solid var(--tl-line); padding:48px 24px; }
.thisline-landing .tl-signoff>.tl-container { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.thisline-landing .tl-signoff p { margin:0; }
.thisline-landing .tl-wordmark { color:#fff; font:900 32px/1 var(--tl-display); letter-spacing:-.03em; }
.thisline-landing [id] { scroll-margin-top:120px; }
@media(max-width:900px) {
  .thisline-landing .tl-nav-support { margin-left:0!important; }
  .thisline-landing .tl-story-columns,.thisline-landing .tl-podcast-columns,.thisline-landing .tl-follow-columns { gap:32px; }
  .thisline-landing .tl-section-display { font-size:48px; }
  .thisline-landing .tl-card { padding:24px; }
}
@media(max-width:781px) {
  .thisline-landing .tl-section { padding:64px 24px; }
  .thisline-landing .tl-hero { min-height:720px!important; padding:64px 24px; }
  .thisline-landing .tl-display { font-size:64px; }
  .thisline-landing .tl-section-display { font-size:40px; }
  .thisline-landing .wp-block-columns { flex-wrap:wrap!important; gap:32px; }
  .thisline-landing .wp-block-columns>.wp-block-column { flex-basis:100%!important; }
  .thisline-landing .tl-section-intro { gap:0; margin-bottom:32px; }
  .thisline-landing .tl-nav-inner { gap:0 24px; }
  .thisline-landing .tl-nav-inner p { font-size:13px; }
  .thisline-landing .tl-target { border-left:0; border-top:1px solid #393939; padding:32px 0 0; }
  .thisline-landing .tl-podcast-photo img { max-height:520px; }
  .thisline-landing .tl-step-columns { gap:32px; }
  .thisline-landing .tl-story-columns>.wp-block-column:first-child { order:2; }
  .thisline-landing .tl-story-columns>.wp-block-column:last-child { order:1; }
  .thisline-landing .tl-portrait img,.thisline-landing .tl-follow-photo img { max-height:560px; }
}
@media(max-width:480px) {
  .thisline-landing .tl-display { font-size:48px; }
}
@media(max-width:380px) {
  .thisline-landing .tl-section-display { font-size:35px; }
  .thisline-landing .wp-block-button { width:100%; }
  .thisline-landing .wp-block-button__link { width:100%; padding:16px 24px; }
}
@media(prefers-reduced-motion:reduce) { .thisline-landing a { transition:none; } }
