/* Resource pages keep the same quiet, relationship-first marketing language. */
[hidden] { display:none!important; }
.demo-embedded>div.wrap,.demo-embedded>footer { display:none; }
.demo-embedded .resource-hero,.demo-embedded .session-summary,.demo-embedded .resource-note { display:none; }
.demo-embedded .resource-main { width:auto; max-width:none; margin:0; padding:20px; }
.day { display:flex; flex-direction:column; align-items:center; }
.day small { display:block; font-size:.7rem; }
.contact-actions { display:flex; flex-wrap:wrap; gap:20px; align-items:center; }
.copy-email { margin-left:8px; padding:8px 10px; color:var(--blue); background:transparent; border:1px solid #b3bfaa; border-radius:3px; cursor:pointer; }
.contact-status { min-height:1.5em; font-size:.8rem; margin-top:16px; }
#contact { scroll-margin-top:24px; }
.resource-main { padding-bottom:80px; }
.resource-hero { padding:64px 0 44px; }
.resource-hero h1 { max-width:850px; }
.resource-hero h1 em { color:var(--blue); }
.resource-hero>p:last-child { max-width:690px; margin-top:24px; color:var(--muted); font-size:1.05rem; line-height:1.85; }
.session-summary { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--line); margin-bottom:36px; }
.session-summary>span { padding:25px 24px 25px 0; color:var(--muted); font-size:.85rem; }
.session-summary strong { display:block; color:var(--ink); font-weight:600; margin-bottom:8px; }
.resource-note,.hint,.muted,.tz-note,.attest-note { color:var(--muted); font-size:.85rem; }
.resource-note { margin-bottom:24px; }
.layout { display:grid; grid-template-columns:1fr 1.2fr; gap:24px; align-items:start; }
.panel,.done { padding:32px; background:#fffdf7; border:1px solid var(--line); }
.panel h2,.done h2 { font-size:1.65rem; margin-bottom:10px; }
.panel .hint { margin-bottom:24px; }
.row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.panel label { display:block; margin:18px 0 8px; font-size:.85rem; font-weight:600; }
.panel input:not([type=checkbox]),.panel select,.panel textarea { width:100%; min-height:48px; padding:12px; border:1px solid #b7bdaf; border-radius:3px; background:#fffefb; font:inherit; color:var(--ink); }
.panel textarea { resize:vertical; min-height:110px; }
.panel input:focus-visible,.panel select:focus-visible,.panel textarea:focus-visible { outline:3px solid #42695b; outline-offset:3px; }
.opt { font-weight:400; color:var(--muted); }
.btn { display:inline-flex; justify-content:center; padding:13px 22px; background:var(--blue); color:white; border:1px solid var(--blue); border-radius:3px; font:inherit; text-decoration:none; cursor:pointer; }
.panel .btn { margin-top:24px; }
.btn:disabled { opacity:.55; cursor:not-allowed; }
.days,.slots { display:flex; gap:10px; flex-wrap:wrap; margin:20px 0; }
.day,.slot { padding:12px; min-height:44px; border:1px solid var(--line); background:#f7f4ec; color:var(--ink); font:inherit; cursor:pointer; border-radius:3px; }
.day[aria-pressed=true],.slot[aria-pressed=true] { background:var(--blue); color:#fff; }
.selected-summary { padding:16px; background:#eaf0e2; border:1px solid #ccd7c3; font-size:.9rem; }
.selected-summary.empty { color:var(--muted); }
.error,.phi-warning { color:#893b2d; font-size:.85rem; margin-top:16px; }
.pilot-goals { border:0; padding:0; margin:32px 0; min-width:0; }
.pilot-goals legend { font-size:1.2rem; font-weight:600; }
.pilot-goals .hint { margin:8px 0 16px; }
.pilot-goal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.panel .pilot-goal { display:flex; align-items:center; gap:12px; margin:0; padding:16px; min-height:64px; border:1px solid #b7bdaf; border-radius:3px; cursor:pointer; background:#fffefb; }
.pilot-goal input { width:18px; height:18px; flex-shrink:0; accent-color:var(--blue); }
.pilot-goal:has(input:checked) { border-color:var(--blue); background:#eaf0e2; }
.pilot-goal:focus-within { outline:3px solid #42695b; outline-offset:3px; }
.attest-box { margin-top:22px; padding:22px; background:#efece3; }
.attest { display:flex!important; gap:12px; align-items:start; }
.attest input { margin-top:6px; width:18px; height:18px; flex-shrink:0; }
.done { margin-top:64px; max-width:750px; }
.done p { margin:18px 0; }
.check { font-size:2rem; color:var(--blue); }
.support-layout { display:grid; grid-template-columns:1fr 1fr; gap:64px; padding-bottom:56px; }
.support-layout h2 { font-size:1.9rem; margin-bottom:22px; }
.support-contact { padding:32px; background:#eaf0e2; border:1px solid #ccd7c3; }
.support-contact p { color:var(--muted); margin-bottom:24px; }
.support-contact dl { margin:30px 0 0; }
.support-contact dt { font-size:.75rem; margin-top:20px; font-weight:600; }
.support-contact dd { margin:4px 0 0; font-size:.9rem; }
.support-topic { display:block; border-top:1px solid var(--line); padding:24px 0; text-decoration:none; }
.support-topic strong,.support-topic span { display:block; }
.support-topic span { color:var(--muted); font-size:.85rem; margin-top:8px; }
.support-prep { padding:32px 0; border-top:1px solid var(--line); max-width:800px; }
.support-prep h2 { font-size:1.9rem; margin-bottom:20px; }
.support-prep p { color:var(--muted); margin:16px 0; }
.blog-container { padding-top:0; padding-bottom:80px; }
.blog-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.blog-card { display:block; padding:32px; background:#fffdf7; border:1px solid var(--line); text-decoration:none; transition:transform .2s,background .2s; }
.blog-card:hover { transform:translateY(-3px); background:#eaf0e2; }
.blog-card h2 { font-size:1.65rem; margin:14px 0; }
.blog-card p { color:var(--muted); font-size:.9rem; }
.blog-card .blog-card-date { font-size:.75rem; }
.blog-content-wrapper { max-width:840px; margin:48px auto 0; }
.breadcrumbs,.blog-meta { font-size:.8rem; color:var(--muted); margin-bottom:28px; }
.blog-title { max-width:840px; font-size:clamp(2.25rem,4.2vw,3.6rem); margin-bottom:24px; }
.blog-content { margin-top:44px; font-size:1rem; line-height:1.9; overflow-wrap:anywhere; }
.blog-content p,.blog-content ul,.blog-content ol,.blog-content blockquote { margin:22px 0; }
.blog-content h2 { font-size:2rem; margin:44px 0 20px; }
.blog-content h3 { font-size:1.45rem; margin:30px 0 16px; }
.blog-content img { max-width:100%; height:auto; }
.blog-content table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; }
.blog-content td,.blog-content th { border:1px solid var(--line); padding:12px; text-align:left; }
.blog-content blockquote { border-left:3px solid var(--blue); padding-left:24px; color:var(--muted); }
.cta-block { margin-top:60px; padding:36px; background:#eaf0e2; border:1px solid #ccd7c3; }
.cta-block h2 { font-size:2rem; }
.cta-block p { margin:20px 0 26px; color:var(--muted); }
@media(max-width:850px) {
  .layout,.support-layout { grid-template-columns:1fr; gap:28px; }
  .resource-hero { padding-top:40px; }
  .session-summary { grid-template-columns:1fr; }
  .session-summary>span { padding:18px 0; }
  .session-summary>span+span { border-top:1px solid var(--line); }
  .blog-grid { grid-template-columns:1fr; }
}
@media(max-width:480px) {
  .pilot-goal-grid { grid-template-columns:1fr; }
  .row { grid-template-columns:1fr; gap:0; }
  .panel,.support-contact,.blog-card,.cta-block { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { .blog-card { transition:none; } .blog-card:hover { transform:none; } }
