/* Guide and resource pages. Uses only the style variables (--ground, --text, --accent, …), so all four styles apply. */
.wp-site-blocks{min-height:100vh;display:flex;flex-direction:column}
.wp-site-blocks>main{flex:1}

/* --- guide (a single post) --- */
.guide{max-width:1160px;margin:0 auto;padding:clamp(112px,13vw,150px) clamp(16px,5vw,48px) 96px;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:clamp(32px,5vw,72px);align-items:start}
.guide-head{grid-column:1/-1}
.kicker{font:13px var(--mono);color:var(--accent);letter-spacing:.06em;text-transform:uppercase;margin:0 0 14px;display:flex;gap:10px;flex-wrap:wrap}
.kicker .wp-block-post-date,.kicker p{margin:0}
.guide-head h1{font-size:clamp(36px,5.2vw,64px);line-height:1.04;letter-spacing:-.03em;margin:0 0 20px;max-width:20ch}
.guide-head .wp-block-post-excerpt__excerpt{color:var(--text-2);font-size:clamp(18px,1.6vw,21px);max-width:56ch;margin:0}
.guide-body{max-width:68ch;min-width:0}
.guide-body>*+*{margin-top:1.1em}
.guide-body h2{font-size:clamp(26px,2.6vw,34px);line-height:1.15;letter-spacing:-.02em;margin:2.2em 0 .6em;scroll-margin-top:96px}
.guide-body h3{font-size:21px;margin:1.8em 0 .4em}
.guide-body a{text-underline-offset:3px}
.guide-body code{font:.88em var(--mono);background:var(--ground-2);border:1px solid var(--line);border-radius:6px;padding:.1em .4em}
.guide-body pre{font:14px/1.6 var(--mono);background:var(--ground-2);border:1px solid var(--line-2);border-radius:10px;padding:16px 18px;overflow-x:auto}
.guide-body pre code{background:none;border:0;padding:0}
.guide-body blockquote{margin-left:0;padding:4px 0 4px 20px;border-left:3px solid var(--accent);color:var(--text-2)}
.guide-body img{max-width:100%;height:auto;border-radius:10px}
.guide-body .wp-block-table{margin:1.4em 0;overflow-x:auto}
.guide-body table{width:100%;border-collapse:collapse;font-size:15px}
.guide-body th,.guide-body td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
.guide-body th{color:var(--text);font-weight:600;border-bottom-color:var(--line-2)}
.guide-body td{color:var(--text-2)}

.toc{position:sticky;top:96px;font-size:14px;border-left:1px solid var(--line);padding-left:18px}
.toc>small{display:block;font:12px var(--mono);color:var(--mute);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.toc ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.toc a{color:var(--text-2);text-decoration:none}
.toc a:hover,.toc a[aria-current="true"]{color:var(--accent)}
.toc:empty,.toc[hidden]{display:none}

/* --- sources box: every guide ends with one (ADR-0003) --- */
.sources{margin-top:3em!important;border:1px solid var(--line-2);border-radius:14px;padding:24px clamp(18px,3vw,28px);background:var(--ground-2)}
.sources h2{font:13px var(--mono)!important;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px!important}
.sources h3{font:600 15px var(--sans);color:var(--text);margin:18px 0 8px!important}
.sources ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.sources li{color:var(--text-2);font-size:15px;line-height:1.55}
.sources li strong{color:var(--text)}
.sources .t{font:12px var(--mono);border:1px solid var(--line-2);border-radius:6px;padding:2px 7px;margin-right:6px;text-decoration:none;white-space:nowrap}
.sources p{font-size:14px;color:var(--mute);margin:16px 0 0}

/* --- resource pages: a grid of cards, one per video or teacher --- */
.resources{max-width:1160px;margin:0 auto;padding:clamp(112px,13vw,150px) clamp(16px,5vw,48px) 96px}
.resources>h1{font-size:clamp(36px,5.2vw,64px);line-height:1.04;letter-spacing:-.03em;margin:0 0 28px}
.resources .wp-block-post-content>p:first-child{color:var(--text-2);font-size:clamp(18px,1.6vw,21px);max-width:56ch}
.resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:18px;margin-top:36px}
.resource-card{border:1px solid var(--line-2);border-radius:14px;padding:22px 22px 20px;background:var(--ground-2);display:flex;flex-direction:column;gap:10px;transition:border-color .2s,box-shadow .2s}
.resource-card:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 10px 40px var(--glow)}
.resource-card>*{margin:0!important}
.resource-card h3{font-size:20px;line-height:1.25}
.resource-card h3 a{color:var(--text);text-decoration:none}
.resource-card h3 a:hover{color:var(--accent)}
.resource-card .why{color:var(--text-2);font-size:15px;line-height:1.55}
.resource-card .tags{display:flex;flex-wrap:wrap;gap:6px}
.resource-card .tag{font:12px var(--mono);color:var(--text-2);border:1px solid var(--line-2);border-radius:999px;padding:2px 9px;line-height:1.4}
.resource-card .meta{font:12px var(--mono);color:var(--mute);margin-top:auto!important}

/* a resource page is one section per creator; the cards carry the topic tags */
.resources h2{font-size:clamp(26px,2.6vw,34px);line-height:1.15;letter-spacing:-.02em;margin:2.4em 0 0;scroll-margin-top:96px}
.resources h2+.resource-grid{margin-top:18px}

/* --- plain pages and the post list --- */
.plain{max-width:760px;margin:0 auto;padding:clamp(112px,13vw,150px) clamp(16px,5vw,48px) 96px}
.plain h1{font-size:clamp(34px,4.6vw,56px);line-height:1.06;letter-spacing:-.03em}
.plain .wp-block-post-title a{color:var(--text);text-decoration:none}
.plain .wp-block-post-template{list-style:none;padding:0;display:grid;gap:28px}

/* --- contact page: one clear route, no form --- */
.contact{max-width:760px;margin:0 auto;padding:clamp(112px,13vw,150px) clamp(16px,5vw,48px) 96px}
.contact h1{font-size:clamp(34px,4.6vw,56px);line-height:1.06;letter-spacing:-.03em;margin:0 0 18px}
.contact p{color:var(--text-2);font-size:18px;max-width:56ch}
.contact .small{font-size:14px;color:var(--mute)}
.button{display:inline-block;margin:10px 0 18px;padding:14px 22px;min-height:44px;border-radius:10px;background:var(--accent);color:var(--accent-ink);font-weight:600;text-decoration:none;transition:filter .2s,transform .2s}
.button:hover{filter:brightness(1.08)}
.button:active{transform:translateY(1px)}

/* --- 404 --- */
.notfound{max-width:760px;margin:0 auto;padding:clamp(112px,13vw,150px) clamp(16px,5vw,48px) 96px}
.notfound h1{font-size:clamp(34px,4.6vw,56px);line-height:1.06;letter-spacing:-.03em;margin:0 0 18px}
.notfound p{color:var(--text-2);font-size:18px;max-width:56ch}
.notfound .actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:24px}

@media (max-width:960px){
  .guide{grid-template-columns:minmax(0,1fr)}
  .toc{position:static;grid-row:2;border:1px solid var(--line);border-radius:12px;padding:16px 18px}
}
@media (max-width:820px){
  .wp-site-blocks>footer{padding-bottom:84px}
}
.wp-site-blocks>footer .foot-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;width:100%}
.wp-site-blocks>footer a{color:var(--text-2);text-decoration:none}
.wp-site-blocks>footer a:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.kicker p::after{content:"·";margin-left:10px}
