*,*:before,*:after{box-sizing:border-box}html{font-size:17px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-sans);font-size:.95rem;line-height:1.62;-webkit-font-smoothing:antialiased}.only-web{display:revert}.only-print{display:none!important}img{max-width:100%}a{color:var(--burgundy)}a:hover{color:var(--burgundy-soft)}.shell{max-width:44rem;margin:0 auto;padding:0 var(--gap-md) var(--gap-xl)}.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--canvas) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.site-header .inner{max-width:44rem;margin:0 auto;padding:.7rem var(--gap-md);display:flex;align-items:center;justify-content:space-between;gap:var(--gap-sm)}.site-header a.brand{font-family:var(--font-display);font-size:.9rem;font-weight:600;letter-spacing:.06em;color:var(--olive-deep);text-decoration:none}.site-header nav{display:flex;gap:.9rem;align-items:center}.site-header nav a{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--burgundy)}.session-opener{text-align:center;padding:var(--gap-xl) var(--gap-md) var(--gap-lg)}.session-opener .kicker{font-family:var(--font-sans);font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 .6rem}.session-opener h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem,6vw,3rem);letter-spacing:.04em;color:var(--olive-deep);margin:0;text-transform:uppercase}.session-opener h1 .letter{color:var(--burgundy)}.session-opener .subtitle{font-family:var(--font-serif);font-style:italic;font-size:1.1rem;color:var(--burgundy);margin:.5rem 0 0}.home-hero{text-align:center;padding:var(--gap-xl) var(--gap-md)}.home-hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.1rem,7vw,3.4rem);letter-spacing:.03em;color:var(--olive-deep);margin:.4rem 0 0}.home-hero .tagline{font-family:var(--font-serif);font-style:italic;font-size:1.15rem;color:var(--ink-soft);max-width:30rem;margin:.8rem auto 0}.home-hero .authors{font-family:var(--font-sans);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:1.4rem}.session-list{display:grid;gap:.6rem;margin:var(--gap-lg) 0;padding:0;list-style:none}.session-list a{display:flex;align-items:baseline;gap:.9rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:var(--gap-sm) var(--gap-md);text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}.session-list a:hover{border-color:var(--gold);transform:translateY(-1px)}.session-list .n{font-family:var(--font-display);font-size:1.05rem;color:var(--burgundy);min-width:1.4em}.session-list .t{font-family:var(--font-serif);font-size:1.15rem;color:var(--olive-deep)}.session-list .s{display:block;font-size:.82rem;color:var(--muted)}textarea.only-web,input[type=text].only-web{display:block;width:100%;font-family:var(--font-sans);font-size:.92rem;line-height:1.6;color:var(--ink);background:var(--canvas);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:.6em .75em;resize:vertical}textarea.only-web:focus,input[type=text].only-web:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold);background:var(--surface)}::placeholder{color:color-mix(in srgb,var(--muted) 65%,transparent)}.chip,.scale-btn,.idea{cursor:pointer;transition:background .12s,border-color .12s,color .12s}.chip:hover,.scale-btn:hover,.idea:hover{border-color:var(--gold)}.chip[aria-pressed=true],.scale-btn[aria-pressed=true]{background:var(--burgundy);border-color:var(--burgundy);color:#fff}.idea[aria-pressed=true]{border-color:var(--burgundy);background:color-mix(in srgb,var(--burgundy) 6%,transparent)}.idea .idea-tick{opacity:.25}.idea[aria-pressed=true] .idea-tick{opacity:1}.embed{position:relative;width:100%;padding-bottom:56.25%;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--line);background:#000;margin:var(--gap-sm) 0}.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.block.watch .qr-row,.block.tool .qr-row{display:none}.btn{display:inline-block;font-family:var(--font-sans);font-size:.8rem;font-weight:600;letter-spacing:.04em;background:var(--burgundy);color:#fff;text-decoration:none;border:0;border-radius:999px;padding:.7em 1.5em}.btn:hover{background:var(--burgundy-soft);color:#fff}.btn-ghost{background:transparent;color:var(--burgundy);border:1px solid var(--line-strong)}.btn-ghost:hover{background:var(--surface);border-color:var(--gold);color:var(--burgundy)}.block.godeep{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:0;margin:var(--gap-md) 0}.block.godeep summary{cursor:pointer;list-style:none;font-family:var(--font-sans);font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--burgundy);padding:var(--gap-sm) var(--gap-md)}.block.godeep summary::-webkit-details-marker{display:none}.block.godeep summary:after{content:" +"}.block.godeep[open] summary:after{content:" –"}.godeep-body{padding:0 var(--gap-md) var(--gap-md)}.godeep-note{color:var(--muted);font-size:.85rem;margin-top:0}.godeep-body ol{margin:0;padding-left:1.3em}.godeep-body li{margin-bottom:.5em}.pager{display:flex;justify-content:space-between;gap:var(--gap-sm);margin-top:var(--gap-lg);padding-top:var(--gap-md);border-top:1px solid var(--line)}.pager a{font-size:.8rem;font-weight:600;text-decoration:none}.pager .spacer{flex:1}.site-footer{border-top:1px solid var(--line);margin-top:var(--gap-xl);padding:var(--gap-lg) var(--gap-md);text-align:center;color:var(--muted);font-size:.75rem}.saved-note{font-size:.72rem;color:var(--muted);text-align:center;margin:var(--gap-md) 0 0}.hero-switch{margin:var(--gap-md) 0 0;font-size:.85rem;color:var(--muted)}.hero-switch a{margin-left:.35em;color:var(--burgundy);font-weight:600;text-decoration:underline;text-underline-offset:2px}@media(max-width:640px){html{font-size:16px}.grid-slots.cols-2,.block.dream{grid-template-columns:1fr}.card{padding:var(--gap-sm) var(--gap-md)}.site-header nav a{font-size:.66rem}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}@media print{.site-header,.site-footer,.pager,.saved-note{display:none!important}body{background:#fff}}
