/* Secondary pages share the accepted homepage shell. Road artwork is unchanged. */
.theme-product {
  --bg-2:#0c1015;
  --surface:#11171d;
  --surface-2:#182129;
  --muted:#a8b4c2;
  --faint:#93a1b1;
  --line:rgb(178 215 215 / .12);
  --line-2:rgb(178 215 215 / .24);
  --radius:12px;
  --radius-sm:8px;
}
.theme-product main.wrap { max-width:1280px; }
.theme-product .hero { min-height:0; padding-block:72px 64px; }
.theme-product .hero::before, .theme-product .hero::after { content:none; }
.theme-product .hero-layout { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:72px; }
.theme-product .hero-copy { max-width:640px; margin:0; text-align:left; }
.theme-product .hero h1 { font-size:clamp(40px,4.4vw,64px); line-height:1.06; letter-spacing:-.045em; }
.theme-product .hero .lede { font-size:18px; max-width:560px; }
.theme-product .hero .kicker { font-size:11px; letter-spacing:.02em; margin-bottom:24px; }
.theme-product .hero-layout .hero-shot { width:280px; justify-self:center; margin:0; }
.theme-product .hero-shot figcaption { text-align:left; font-size:12px; line-height:1.6; }
.theme-product .btn-primary { box-shadow:none; }
.theme-product .nav .btn-primary { color:var(--accent-ink); }
.theme-product .btn-primary:hover, .theme-product .shot-close:hover { background:#adcaff; }
.theme-product .btn-ghost { background:transparent; }
.theme-product .section { padding-block:80px; border-top:1px solid var(--line); }
.theme-product .section > h2 { font-size:clamp(30px,3.4vw,44px); letter-spacing:-.035em; max-width:800px; }
.theme-product .section-lead { max-width:720px; margin-bottom:36px; color:var(--muted); }
.theme-product .eyebrow, .theme-product .place-role { color:#85c6c2; }
.theme-product .journey-nav { display:flex; flex-wrap:wrap; gap:12px 32px; padding-block:24px; border-top:1px solid var(--line); }
.theme-product .journey-nav a { display:flex; align-items:center; gap:16px; padding:8px 0; text-decoration:none; font-size:14px; color:var(--muted); }
.theme-product .journey-nav a:hover { color:var(--text); }
.theme-product .journey-nav span { color:#85c6c2; }
.theme-product .moment { gap:64px; padding-block:48px; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); }
.theme-product .moment-copy h3 { font-size:clamp(24px,2.6vw,32px); line-height:1.18; margin-bottom:20px; }
.theme-product .moment-copy > p { max-width:440px; }
.theme-product .moment-shot { width:100%; max-width:540px; margin:0; justify-self:end; }
.theme-product .shot-open { border-radius:12px; border-color:var(--line-2); background:var(--surface); box-shadow:none; }
.theme-product .moment-shot .shot-open, .theme-product .desk-panel .shot-open { padding-top:0; background-image:none; }
.theme-product .shot-open::after { background:rgb(8 10 13 / .92); }
.theme-product figcaption { color:var(--muted); line-height:1.6; font-size:13px; margin-top:16px; }
.theme-product .thumbs { gap:32px; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); }
.theme-product .thumbs figure { margin:0; max-width:440px; }
.theme-product .example-content { padding:8px 24px 24px; }
.theme-product summary { min-height:52px; line-height:1.5; }
.theme-product details[open] > summary { margin-bottom:12px; color:#b6dfda; }
.theme-product .outcomes { gap:16px; margin-top:32px; }
.theme-product .outcomes article { padding:28px; border-radius:12px; }
.theme-product .outcomes h3 { font-size:20px; margin-bottom:12px; }
.theme-product .outcomes p { font-size:16px; }
.theme-product .tabs { width:100%; margin-block:36px 32px; padding:0; gap:8px; border:0; border-bottom:1px solid var(--line-2); border-radius:0; background:transparent; }
.theme-product .tabs button { min-height:48px; padding:12px 16px; border-radius:8px 8px 0 0; font-weight:500; }
.theme-product .tab-ink { display:none; }
.theme-product .tabs button[aria-selected="true"] { background:rgb(133 198 194 / .08); box-shadow:inset 0 -2px #85c6c2; color:#c5e8e3; }
.theme-product .tabs button:hover { background:var(--surface); }
.theme-product .desk-panel { grid-template-columns:minmax(0,1fr) minmax(0,1.7fr); gap:48px; }
.theme-product .desk-copy { position:static; padding-top:8px; }
.theme-product .desk-copy .place-role { margin-bottom:20px; }
.theme-product .desk-copy h3 { font-size:28px; margin-bottom:20px; }
.theme-product .desk-panel figure { margin:0; max-width:680px; width:100%; justify-self:end; }
.theme-product .badge { color:#c1d2dd; border-color:var(--line-2); background:var(--surface); }
.theme-product .steps { gap:16px; margin-top:32px; }
.theme-product .steps li { background:var(--bg-2); border-color:var(--line); padding:28px; }
.theme-product .steps li::before { color:#85c6c2; }
.theme-product .questions { max-width:860px; }
.theme-product .questions details { background:transparent; }
.theme-product .cta-band { background:var(--bg-2); background-image:none; border-color:var(--line-2); border-radius:12px; padding:48px 32px; }
.theme-product .contact-page { padding-block:80px 24px; }
.theme-product .contact-layout { gap:64px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.theme-product .contact-copy { padding-top:16px; }
.theme-product .contact-copy h1 { font-size:clamp(38px,4.2vw,60px); line-height:1.08; letter-spacing:-.04em; }
.theme-product .contact-copy .lede { font-size:18px; line-height:1.7; margin-bottom:32px; }
.theme-product .contact-copy .more-link { font-size:15px; color:#b6dfda; text-underline-offset:5px; }
.theme-product .contact-form { padding:32px; }
.theme-product .contact-form h2 { font-size:26px; margin-bottom:12px; }
.theme-product .form-note { font-size:13px; line-height:1.65; }
.theme-product .form-field { margin-block:24px; }
.theme-product .form-field input, .theme-product .form-field textarea { padding:12px 14px; border-radius:8px; background:#080c10; }
.theme-product .form-field label { margin-bottom:8px; font-weight:500; }
.theme-product .contact-form button { min-height:48px; }
.theme-product .form-status { padding:20px; border-color:#85c6c2; background:rgb(133 198 194 / .06); }
.theme-product .form-status[data-failed="true"] { border-color:#da9b88; background:rgb(218 155 136 / .06); }
.theme-product main.legal { max-width:880px; padding-block:72px 24px; }
.theme-product .legal h1 { font-size:clamp(40px,4.4vw,60px); margin-bottom:16px; }
.theme-product .legal .meta { margin-bottom:32px; }
.theme-product .legal h2 { margin-top:40px; font-size:22px; }
.theme-product .legal p, .theme-product .legal li { line-height:1.8; }
.theme-product .not-found { min-height:calc(100svh - 76px); padding-block:100px; }
.theme-product .not-found .lede { margin-top:24px; }
.theme-product .not-found .hero-actions { justify-content:center; }
.theme-product .footer-inner { gap:24px; }
.theme-product .footer-inner nav { flex-wrap:wrap; }
.theme-product .shot-stage { padding:16px; }
.theme-product .shot-bar { padding:16px; }
.theme-product .shot-actions button { min-height:44px; }
.theme-product .shot-full { box-shadow:0 0 0 1px var(--line-2); }
@media(max-width:1000px) {
  .theme-product .hero-layout { gap:40px; }
  .theme-product .moment { gap:40px; }
  .theme-product .contact-layout { gap:40px; }
}
@media(max-width:900px) {
  .theme-product .hero { display:block; padding-block:56px; }
  .theme-product .hero-layout { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); }
  .theme-product .hero-layout .hero-copy { text-align:left; }
  .theme-product .hero .hero-actions { justify-content:flex-start; }
  .theme-product .hero-layout .hero-shot { width:240px; }
  .theme-product .hero .kicker { white-space:normal; }
  .theme-product .section { padding-block:64px; }
  .theme-product .moment, .theme-product .desk-panel { grid-template-columns:1fr; gap:28px; }
  .theme-product .moment-shot, .theme-product .desk-panel figure { max-width:640px; justify-self:start; }
  .theme-product .moment-copy > p { max-width:600px; }
  .theme-product .outcomes-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:800px) {
  .theme-product .contact-layout { grid-template-columns:1fr; gap:40px; }
  .theme-product .contact-copy { max-width:600px; padding-top:0; }
  .theme-product .contact-form { max-width:600px; width:100%; }
}
@media(max-width:640px) {
  /* Keep both product and manager destinations available on phones. */
  .theme-product .header-inner { flex-wrap:wrap; padding-block:16px 8px; gap:12px; }
  .theme-product .nav { display:contents; }
  .theme-product .nav a:not(.btn) { display:block; order:2; padding:8px 0; font-size:13px; border-radius:0; }
  .theme-product .nav a[href="/walkthrough#manager"] { margin-right:auto; }
  .theme-product .nav .btn { margin:0 0 0 auto; }
  .theme-product .hero { padding-block:40px; }
  .theme-product .hero-layout { grid-template-columns:1fr; gap:32px; }
  .theme-product .hero h1 { font-size:clamp(36px,9.4vw,52px); }
  .theme-product .hero .lede { font-size:16px; }
  .theme-product .hero-layout .hero-shot { width:240px; }
  .theme-product .hero .hero-proof { max-width:none; font-size:12px; }
  .theme-product .journey-nav { display:grid; grid-template-columns:1fr; gap:0; padding-block:12px; }
  .theme-product .journey-nav a { justify-content:space-between; min-height:44px; }
  .theme-product .section { padding-block:48px; scroll-margin-top:48px; }
  .theme-product .moment { padding-block:32px; scroll-margin-top:48px; }
  .theme-product .outcomes, .theme-product .outcomes-2 { grid-template-columns:1fr; }
  .theme-product .outcomes article { padding:24px; }
  .theme-product .section-lead { margin-bottom:28px; font-size:16px; }
  .theme-product .example-content { padding:0 16px 20px; }
  .theme-product .tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; margin-top:28px; }
  .theme-product .tabs button { padding:12px 8px; font-size:13px; border-radius:8px; }
  .theme-product .desk-copy h3 { font-size:26px; }
  .theme-product .cta-band { padding:32px 20px; }
  .theme-product .contact-page { padding-block:40px 0; }
  .theme-product .contact-copy h1 { font-size:clamp(36px,9.6vw,48px); }
  .theme-product .contact-copy .lede { font-size:16px; }
  .theme-product .contact-form { padding:24px 20px; }
  .theme-product .contact-form [type="submit"] { width:100%; }
  .theme-product main.legal { padding-top:40px; }
  .theme-product .legal h1 { font-size:40px; }
  .theme-product .site-footer { margin-top:56px; }
  .theme-product .footer-inner { align-items:flex-start; flex-direction:column; font-size:13px; }
  .theme-product .shot-bar { gap:12px; padding:12px; }
  .theme-product .shot-stage { padding:8px; }
  .theme-product .shot-caption { font-size:12px; }
  .theme-product .shot-actions { width:100%; margin:0; }
  .theme-product .shot-actions button { flex:1; padding-inline:8px; }
}
