/* Shared look for the guide pages (/teleprompter-app/, /script-generator/, /viral-video-ideas/). */
:root { --bg:#FDFCFB; --fg:#1A1A1A; --muted:#5f5f5f; --line:#EBE8E4; --card:#F4F2F0; --brand:#6E8B74; --accent:#FF5126; }
@media (prefers-color-scheme: dark) { :root { --bg:#121212; --fg:#FDFCFB; --muted:#AEAEB2; --line:#2C2C2E; --card:#1C1C1E; --brand:#8BA390; } }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:17px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; }
a { color:var(--brand); }
.wrap { max-width:960px; margin:0 auto; padding:0 16px; }
header { display:flex; align-items:center; gap:10px; padding:20px 0; flex-wrap:wrap; }
header a.home { display:flex; align-items:center; gap:10px; color:inherit; text-decoration:none; }
header img { width:36px; height:36px; border-radius:10px; }
header b { font-size:20px; letter-spacing:-0.3px; }
header nav { margin-left:auto; display:flex; gap:16px; flex-wrap:wrap; font-size:15px; }
header nav a { color:var(--muted); text-decoration:none; }
header nav a[aria-current="page"] { color:var(--fg); font-weight:600; }
.intro { display:grid; grid-template-columns:1.3fr .7fr; gap:40px; align-items:center; padding:40px 0 24px; }
.intro h1 { font-size:clamp(32px, 5.5vw, 50px); line-height:1.08; letter-spacing:-1.2px; margin:0 0 16px; }
.intro h1 em { font-style:normal; color:var(--accent); }
.intro p { font-size:19px; color:var(--muted); margin:0 0 24px; }
.shot { justify-self:center; width:min(250px, 64vw); aspect-ratio:1/2; border-radius:34px; background:#0d0d0d; padding:8px;
        box-shadow:0 24px 60px -18px rgba(0,0,0,.45), 0 0 0 1px var(--line); }
.shot img { width:100%; height:100%; object-fit:cover; object-position:top; border-radius:27px; display:block; background:#000; }
.badge { display:inline-flex; align-items:center; gap:12px; padding:12px 20px 12px 16px; border-radius:14px; background:var(--fg); color:var(--bg);
         font-weight:700; text-decoration:none; min-height:56px; }
.badge svg { width:26px; height:26px; flex:none; }
.badge small { display:block; font-weight:500; font-size:12px; opacity:.75; }
article { max-width:720px; padding-bottom:24px; }
article h2 { font-size:26px; letter-spacing:-0.4px; margin:44px 0 10px; }
article h3 { font-size:19px; margin:24px 0 6px; }
article p, article li { color:var(--fg); }
article li { margin:6px 0; }
.note { background:var(--card); border:1px solid var(--line); border-radius:16px; padding:16px 20px; margin:24px 0; }
.example { border-left:4px solid var(--brand); background:var(--card); border-radius:0 12px 12px 0; padding:12px 18px; margin:12px 0; }
.example b { display:block; font-size:13px; letter-spacing:.4px; text-transform:uppercase; color:var(--brand); }
.cta { border-top:1px solid var(--line); margin-top:48px; padding:36px 0; display:flex; gap:20px; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.cta p { margin:0; font-size:20px; font-weight:700; max-width:28em; }
.more { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:16px; padding:0 0 48px; }
.more a { display:block; background:var(--card); border:1px solid var(--line); border-radius:16px; padding:18px; text-decoration:none; color:var(--fg); }
.more a b { display:block; margin-bottom:4px; }
.more a span { color:var(--muted); font-size:15px; }
footer { border-top:1px solid var(--line); padding:28px 0 40px; color:var(--muted); font-size:14px; display:flex; flex-wrap:wrap; gap:8px 20px; justify-content:space-between; }
footer nav { display:flex; gap:16px; flex-wrap:wrap; }
@media (max-width:720px) { .intro { grid-template-columns:1fr; padding-top:16px; } header nav { margin-left:0; width:100%; } }
