@scope (html) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.skip-link{position:absolute;left:var(--space-4);top:var(--space-4);z-index:100;padding:var(--space-3) var(--space-4);background:var(--accent);color:var(--accent-contrast);border-radius:var(--radius);font-weight:var(--weight-semibold);text-decoration:none;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0);color:var(--accent-contrast)}}
x-nav{display:contents}@scope (x-nav) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){:scope{display:block;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}@supports not (backdrop-filter:blur(10px)){:scope{background:var(--paper)}}.nav-inner{display:flex;align-items:center;gap:var(--space-6);min-height:68px}.nav-brand{display:flex;align-items:center;margin-right:auto}.nav-brand img{width:140px;height:auto}.nav-links{display:none;gap:var(--space-6)}.nav-links a{color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-medium);text-decoration:none}.nav-links a:hover{color:var(--ink)}.nav-inner a.nav-cta{min-height:40px;padding-inline:var(--space-5);font-size:var(--text-sm)}@media (min-width:840px){.nav-links{display:flex}}@media (max-width:420px){.nav-inner a.nav-cta{padding-inline:var(--space-4);font-size:var(--text-xs)}}}
x-footer{display:contents}@scope (x-footer) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.site-footer{padding-top:var(--section-pad);border-top:1px solid var(--rule);color:var(--ink-soft);font-size:var(--text-sm)}.footer-inner{display:grid;grid-template-columns:1fr;gap:var(--space-7);padding-bottom:var(--space-7)}.footer-brand img{width:138px;height:auto;margin-bottom:var(--space-4)}.footer-brand p{max-width:34ch;margin:0}.footer-nav{display:flex;flex-direction:column;align-items:start;gap:var(--space-2)}.footer-nav h2{margin-bottom:var(--space-2);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:0;color:var(--ink)}.footer-nav a{color:var(--ink-soft);text-decoration:none}.footer-nav a:hover{color:var(--brand)}.footer-meta{padding-block:var(--space-5);border-top:1px solid var(--rule);color:var(--ink-dim);font-size:var(--text-xs)}.footer-meta p{margin:0}@media (min-width:720px){.footer-inner{grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-8)}}}
x-home-hero{display:contents}@scope (x-home-hero) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.home-hero{padding:var(--space-8) 0 var(--space-7);background:var(--home-paper);overflow:clip}.hero-layout{display:grid;gap:var(--space-7);align-items:center}.hero-copy h1{font-size:var(--home-display);color:var(--home-ink);line-height:1.02;letter-spacing:-.045em;margin:var(--space-4) 0 var(--space-5)}.hero-lead{font-size:var(--text-lg);line-height:1.6;color:var(--home-muted);max-width:42ch;margin:0 0 var(--space-6)}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4) var(--space-5)}.hero-note{font-size:var(--text-xs);color:var(--home-muted);margin-top:var(--space-4)}.hero-media{margin:0;position:relative;min-width:0}.hero-media img{display:block;width:100%;height:auto;object-fit:cover}.hero-caption{position:absolute;left:var(--space-5);bottom:var(--space-5);right:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--home-light);color:var(--home-ink);font-size:var(--text-sm);display:flex;gap:var(--space-4);align-items:center}.caption-mark{font-size:var(--text-3xl);font-family:var(--font-display,var(--font));line-height:1}.hero-caption strong{display:block;font-size:var(--text-sm)}.hero-caption span{display:block;font-size:var(--text-xs)}.hero-caption .caption-mark{font-size:var(--text-3xl)}.hero-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-4);padding-top:var(--space-6);margin-top:var(--space-6);border-top:1px solid var(--home-rule);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase}.hero-layout{grid-template-columns:0.9fr 1.1fr}.hero-media{margin-right:calc(-1 * var(--space-7))}.hero-media img{aspect-ratio:5/6}.hero-copy h1{max-width:9ch}.hero-caption{left:calc(-1 * var(--space-7));right:auto;max-width:17rem}@media(min-width:900px){.hero-media{padding-bottom:var(--space-7)}.hero-caption{bottom:0}}@media(max-width:760px){.home-hero{padding-top:var(--space-6)}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-5)}.hero-copy{display:block}.hero-copy h1{font-size:clamp(2.6rem,10.5vw,4rem);max-width:16ch}.hero-media{margin:0;transform:none}.hero-media img{aspect-ratio:4/3}.hero-caption{left:var(--space-3);right:var(--space-3);bottom:var(--space-3);padding:var(--space-3);transform:none}.hero-foot{font-size:var(--text-xs);gap:var(--space-3)}.hero-note{margin-bottom:0}}}
x-home-course{display:contents}@scope (x-home-course) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.course-section{background:var(--home-tint)}.course{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-7);margin-top:var(--space-7);align-items:center}.course-visual{margin:0;position:relative;overflow:hidden;background:var(--home-dark)}.course-visual img{width:100%;height:100%;aspect-ratio:6/5;object-fit:cover;display:block;object-position:center 30%}.course-visual::after{content:'';position:absolute;inset:30% 0 0;background:var(--home-scrim)}.course-visual figcaption{position:absolute;bottom:var(--space-6);left:var(--space-6);right:var(--space-6);z-index:1}.course-visual h3{font-size:var(--text-2xl);color:var(--home-light);max-width:22ch;margin-top:var(--space-3)}.course-label{font-size:var(--text-xs);padding:var(--space-2) var(--space-3);background:var(--home-light);color:var(--home-dark);border-radius:var(--radius-pill)}.lesson-list{counter-reset:lesson;list-style:none;padding:0;margin:var(--space-4) 0 var(--space-6)}.lesson-list li{counter-increment:lesson;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--home-rule);font-size:var(--text-base);line-height:1.45}.lesson-list li::before{content:counter(lesson,decimal-leading-zero);color:var(--home-accent);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.lesson-list li>span:first-child{flex:1}@media(max-width:760px){.course{grid-template-columns:1fr;gap:var(--space-6)}.course-visual img{aspect-ratio:4/3}.lesson-list li{font-size:var(--text-base)}}}
x-home-audience{display:contents}@scope (x-home-audience) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.audience-section{background:var(--home-paper)}.gallery{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:var(--space-5);margin-top:var(--space-7);align-items:start}.gallery figure{margin:0}.gallery img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 30%}.gallery figure:first-child img{aspect-ratio:1}.gallery figure:nth-child(2){padding-top:var(--space-7)}.gallery figcaption{padding-top:var(--space-3);font-size:var(--text-sm);color:var(--home-muted)}@media(max-width:760px){.gallery{grid-template-columns:1fr 1fr;gap:var(--space-4)}.gallery figure:first-child{grid-column:1/-1}.gallery figure:first-child img{aspect-ratio:16/9}.gallery figure:nth-child(2){padding-top:0}.gallery img{aspect-ratio:4/5}}}
x-home-app{display:contents}@scope (x-home-app) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.app-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);align-items:center}.app-copy h2{max-width:15ch}.app-copy .home-lead{margin-block:var(--space-5)}.learning-steps{list-style:none;padding:0;margin:var(--space-6) 0;display:grid;gap:var(--space-5)}.learning-steps li{display:flex;gap:var(--space-4);align-items:start}.step-number{border:1px solid var(--home-rule);border-radius:50%;height:var(--space-7);width:var(--space-7);display:grid;place-items:center;flex:none;color:var(--home-accent);font-size:var(--text-xs)}.learning-steps h3{font-size:var(--text-lg);margin:0 0 var(--space-1);color:var(--home-ink)}.learning-steps p{margin:0;color:var(--home-muted);font-size:var(--text-sm)}.app-visual{position:relative;margin:0;display:grid;justify-items:center;padding:var(--space-6) 0}.app-backdrop{position:absolute;inset:15% 0 12%;overflow:hidden;background:var(--home-tint)}.app-scene{width:100%;height:100%;object-fit:cover;opacity:.8}.app-screen{position:relative;width:55%;max-width:270px;height:auto;border:6px solid var(--home-dark);border-radius:var(--space-6);box-shadow:var(--home-shadow)}.app-visual figcaption{position:relative;margin-top:var(--space-4);font-size:var(--text-xs);color:var(--home-muted)}@media(max-width:760px){.app-layout{grid-template-columns:1fr;gap:var(--space-6)}.app-copy,.app-visual{grid-column:auto;grid-row:auto}.app-copy h2{max-width:20ch}.app-screen{width:58%}}}
x-home-close{display:contents}@scope (x-home-close) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.closing-section{background:var(--home-tint);--faq-answer-color:var(--home-muted)}.closing-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);align-items:start}.closing-layout>div>h2{margin-bottom:var(--space-6);font-size:var(--text-2xl)}.start-panel{padding:var(--space-7);background:var(--home-dark);color:var(--home-light)}.start-panel h2{color:var(--home-light);font-size:var(--text-3xl)}.start-panel .kicker{color:var(--home-accent-light)}.start-panel p:not(.kicker){color:var(--home-light-soft);margin-block:var(--space-5);line-height:1.65}.start-panel .home-button{background:var(--home-light);color:var(--home-dark)}.closing-links{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5);margin-top:var(--space-5);font-size:var(--text-sm)}.closing-links a{color:var(--home-light)}@media(max-width:760px){.closing-layout{grid-template-columns:1fr;gap:var(--space-7)}.start-panel{padding:var(--space-6)}}}
x-faq{display:contents}@scope (x-faq) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.faq-item{border-bottom:1px solid var(--faq-border,color-mix(in srgb,currentColor 20%,transparent))}.faq-item:last-child{border-bottom:0}.faq-question{display:flex;align-items:center;gap:0.75rem;padding:var(--faq-padding,1rem 0);cursor:pointer;font-size:var(--faq-question-size,1.125rem);font-weight:var(--faq-question-weight,600);list-style:none}.faq-question::-webkit-details-marker{display:none}.faq-question::marker{content:none}.faq-question>span{flex:1}.faq-chevron{flex-shrink:0;width:1.25em;height:1.25em;transition:rotate var(--faq-duration,0.25s) ease}.faq-item[open] .faq-chevron{rotate:180deg}.faq-item::details-content{display:block;block-size:0;overflow:hidden;transition:block-size var(--faq-duration,0.3s) ease,content-visibility var(--faq-duration,0.3s) allow-discrete}.faq-item[open]::details-content{block-size:auto;block-size:calc-size(auto,size)}.faq-answer{padding:0 0 1rem;color:var(--faq-answer-color,inherit)}.faq-answer>:first-child{margin-top:0}.faq-answer>:last-child{margin-bottom:0}@media (prefers-reduced-motion:reduce){.faq-item::details-content,.faq-chevron{transition:none}}}
x-legal{display:contents}@scope (x-legal) to (:scope :is(x-base,x-faq,x-footer,x-home-app,x-home-audience,x-home-close,x-home-course,x-home-hero,x-legal,x-nav)>*){.legal .container{max-width:62rem}.legal-head{max-width:var(--measure);margin-bottom:var(--space-7)}.legal-head h1{margin-bottom:var(--space-4)}.legal-head .lead{margin-bottom:0}.prose ul{padding-left:1.1em}.legal-canonical{margin-top:var(--space-7);padding:var(--space-4) var(--space-5);border-left:3px solid var(--accent);background:var(--paper-tint);font-size:var(--text-base)}.legal-nav{display:flex;flex-wrap:wrap;gap:var(--space-5);max-width:var(--measure);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--rule);font-size:var(--text-sm)}.legal-nav a{color:var(--ink-soft);font-weight:var(--weight-medium);text-decoration:none}.legal-nav a:hover{color:var(--brand)}}