/* Friday Intelligence - brand guide: Forest/Charcoal/Stone/Sand, letterspaced caps, frontier imagery */
:root {
  --forest: #0F2D24;
  --charcoal: #0B0F0E;
  --stone: #D9D5C6;
  --sand: #C9BFAF;
  --cream: #F2EFE7;
  --sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--cream);
  color: var(--charcoal);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: inherit; }
.skip-link { position: absolute; left: -9999px; top: 0; }
.skip-link:focus { left: 1rem; top: 1rem; }

/* Hero: full-viewport frontier image, brand lockup top-left */
.hero {
  position: relative;
  min-height: 100svh;
  display: flex; flex-direction: column;
  background: var(--forest) url("../hero.jpg") center / cover no-repeat;
  color: var(--stone);
}
.hero::before {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(11,15,14,0.45) 0%, rgba(11,15,14,0.15) 40%, rgba(11,15,14,0.55) 100%);
}
.hero > * { position: relative; }
.hero-header {
  display: flex; justify-content: space-between; align-items: flex-start;
  padding: 2rem 2.5rem;
}
.brand { display: flex; align-items: center; gap: 1rem; text-decoration: none; }
.brand-mark {
  font-weight: 700; font-size: 2rem; letter-spacing: -0.02em;
  color: #fff;
}
.brand-word {
  font-size: 0.85rem; font-weight: 500;
  letter-spacing: 0.32em; text-transform: uppercase;
  line-height: 1.7;
  color: var(--stone);
}
.site-nav a {
  font-size: 0.9rem; font-weight: 500;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--stone); text-decoration: none;
}
.site-nav a:hover { color: #fff; }
.hero-body {
  flex: 1;
  display: flex; flex-direction: column; justify-content: flex-end;
  padding: 0 2.5rem 12vh;
  max-width: 60rem;
}
.hero h1 {
  font-weight: 500;
  font-size: clamp(1.7rem, 3.6vw, 2.9rem);
  letter-spacing: 0.22em; text-transform: uppercase;
  line-height: 1.5;
  margin: 0 0 2.2rem;
  max-width: 24ch;
  color: #fff;
}
.hero-tagline {
  font-family: 'Newsreader', Georgia, serif;
  font-weight: 400;
  font-size: clamp(1.05rem, 1.8vw, 1.4rem);
  line-height: 1.5;
  margin: -1.2rem 0 2.2rem;
  color: var(--sand);
}
.hero-cta { margin: 0; }
.arrow-link {
  font-size: 0.85rem; font-weight: 500;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--sand);
  text-decoration: none;
}

.lines.plain li::before { content: none; }
.arrow-link::after { content: " ›"; }
.arrow-link:hover { color: #fff; }

/* Sections */
main { max-width: 64rem; margin: 0 auto; padding: 0 2.5rem; }
main > p:first-child { max-width: 48rem; margin: 1.5rem auto 0; text-align: center; }
main > .block:first-of-type { padding-top: 2rem; }
.block { padding: 4.5rem 0 1rem; }
.block h2 {
  font-size: 0.8rem; font-weight: 600;
  letter-spacing: 0.3em; text-transform: uppercase;
  color: var(--forest);
  margin: 0 0 2rem;
}
.lines { list-style: none; margin: 0; padding: 0; max-width: 40rem; }
.lines li {
  font-family: 'Newsreader', Georgia, serif;
  font-size: 1.35rem; font-weight: 400;
  line-height: 1.55;
  margin: 0 0 1.4rem;
  color: var(--charcoal);
}
.lines li::before { content: "\2026\00a0 "; color: var(--sand); }
.lines li a { color: inherit; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color .2s; }
.lines li a:hover { border-bottom-color: var(--sand); }

.logos {
  display: flex; flex-wrap: wrap;
  gap: 1.2rem 2.6rem;
  align-items: center;
  margin: 0;
}
.logos img {
  height: 1.5rem; width: auto;
  filter: grayscale(1) brightness(0.45); opacity: 0.9;
}
.logos img[alt="Anthropic"] { height: 0.95rem; }
.logos img[alt="AWS"] { height: 1.6rem; }
.logos img[alt="Amazon"] { height: 1.55rem; }
.logos img[alt="Microsoft"] { height: 1.55rem; }
.state-wordmark { color: #303030; font-family: Georgia, serif; font-size: 0.92rem; font-weight: 700; line-height: 1.05; letter-spacing: -0.02em; white-space: nowrap; }
.logo-caption {
  margin: 1.1rem 0 0;
  font-size: 0.78rem; font-weight: 500;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--sand);
}

.site-footer {
  margin-top: 5rem;
  background: var(--forest);
  color: var(--stone);
  padding: 2.2rem 2.5rem;
  font-size: 0.8rem;
  letter-spacing: 0.18em; text-transform: uppercase;
}
.site-footer p { margin: 0; }

@media (max-width: 640px) {
  .hero-header { padding: 1.4rem 1.4rem; }
  .hero-body { padding: 0 1.4rem 10vh; }
  .hero h1 { letter-spacing: 0.16em; }
  main { padding: 0 1.4rem; }
  main > p:first-child { margin-top: 1.25rem; }
  main > .block:first-of-type { padding-top: 1.5rem; }
}

/* Treatment A - cards (Steven's pick 9/25; Think with us kept light to match) */
.cards { list-style:none; margin:0; padding:0; display:grid; gap:1rem; grid-template-columns:repeat(2,1fr); max-width:none; }
.cards li {
  background:#FBFAF6; border:1px solid var(--stone);
  padding:1.6rem 1.4rem 1.4rem; margin:0;
  font-family:'Newsreader',Georgia,serif; font-size:1.15rem; line-height:1.5;
}
.cards li::before {
  content:attr(data-n); display:block;
  font-family:var(--sans); font-size:0.72rem; font-weight:600;
  letter-spacing:0.3em; color:var(--sand); margin-bottom:1.1rem;
}
.logo-card {
  background:#FBFAF6; border:1px solid var(--stone);
  padding:2.2rem 2rem;
}
.thinkgrid { list-style:none; margin:0; padding:0; display:grid; gap:1rem; grid-template-columns:repeat(3,1fr); max-width:none; }
.thinkgrid li { background:#FBFAF6; border:1px solid var(--stone); padding:1.6rem 1.4rem; margin:0; }
.thinkgrid li a {
  color:var(--forest); text-decoration:none;
  font-family:'Newsreader',Georgia,serif; font-size:1.15rem; line-height:1.5; display:block;
}
.thinkgrid li a::after { content:" ›"; color:var(--sand); font-family:var(--sans); }
.thinkgrid li a:hover { text-decoration:underline; text-underline-offset:4px; text-decoration-color:var(--sand); }
@media (max-width:640px){ .cards,.thinkgrid{ grid-template-columns:1fr; } }
