:root{--ink:#153047;--teal:#086f78;--muted:#506373;--line:#cfdcde;--paper:#f4f6f4;--mint:#e2efea;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'Segoe UI',sans-serif}a{color:inherit;text-underline-offset:5px}button,input{font:inherit}button,a,input{touch-action:manipulation}::selection{background:#b7ded4;color:#153047}:focus-visible{outline:3px solid #a25d13;outline-offset:5px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}.skip{position:absolute;top:-90px;background:white;padding:12px;z-index:5}.skip:focus{top:0}.top,.bottom{display:flex;align-items:center;gap:32px;max-width:1280px;margin:auto;padding:28px 40px}.top{border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:650;font-size:23px;letter-spacing:-.02em}.top nav{display:flex;gap:28px;margin-left:auto}.top nav a,.login-link{text-decoration:none;font-size:14px}.login-link{padding:9px 20px;border:1px solid var(--ink);border-radius:7px;font-weight:600}main{max-width:1280px;margin:auto;padding:0 40px}h1,h2,h3{line-height:1.12;letter-spacing:-.035em;font-weight:600;text-wrap:balance}h1{font-size:clamp(44px,5.8vw,76px);margin:0 0 30px}h1 em{font-style:normal;color:var(--teal)}h2{font-size:clamp(30px,3.5vw,46px);margin:0 0 24px}h3{font-size:30px;margin:0 0 18px}p{max-width:68ch;margin:0 0 20px}.subtle{font-size:14px;color:var(--muted)}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;padding:85px 0 95px;align-items:center}.intro-text{font-size:20px;max-width:40ch;color:var(--muted)}.primary{display:inline-flex;align-items:center;gap:32px;padding:14px 22px;border-radius:8px;background:var(--teal);color:white;text-decoration:none;font-weight:600;min-height:48px}.primary:hover{background:#075c64}.intro-note{margin-top:20px;max-width:38ch}.journey{padding:38px 34px;background:var(--ink);color:white;border-radius:16px}.journey-caption{font-size:18px;margin-bottom:34px;color:#dce9e8}.journey-step{display:flex;gap:20px;position:relative;min-height:112px}.journey-step::after{content:'';position:absolute;left:7px;top:17px;bottom:2px;width:1px;background:#628b94}.journey-last{min-height:86px}.journey-last::after{display:none}.journey-dot{flex:none;width:15px;height:15px;border-radius:50%;border:1px solid #8be2cc;background:#49bda5;margin-top:6px}.journey-step strong{font-size:22px;font-weight:550}.journey-step p{font-size:14px;color:#c5d7dc;margin-top:6px}.journey-foot{font-size:12px;color:#c5d7dc;margin:12px 0 0;padding-top:22px;border-top:1px solid #496474}.section{padding:70px 0;border-top:1px solid var(--line);scroll-margin-top:30px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;margin-bottom:34px}.section-heading p{color:var(--muted);max-width:50ch}.audience-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px}.audience-buttons button{border:1px solid var(--line);background:var(--white);padding:12px 18px;border-radius:7px;color:var(--ink)}.audience-buttons button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.audience-story{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;min-height:210px;padding:34px;background:var(--mint);border-radius:12px}.audience-story p{margin-bottom:12px}.text-link{display:inline-block;color:var(--teal);font-weight:600;padding:8px 0}.section-lead{color:var(--muted);max-width:60ch}.chapters{margin-top:36px;max-width:900px}.chapters details,.module-list details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 0;font-size:21px;font-weight:550;line-height:1.4}summary::-webkit-details-marker{display:none}summary::after{content:'+';font-size:26px;font-weight:400;color:var(--teal)}details[open]>summary::after{content:'−'}details p,details ul{padding-bottom:12px}details[open]>summary{color:var(--teal)}.module-list summary{font-size:25px;flex-wrap:wrap}.module-state{margin-left:auto;font-size:12px;color:var(--muted);font-weight:400;letter-spacing:0}.module-body{padding:0 0 22px;max-width:850px}.module-body p{margin-bottom:12px}.rpm{display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.rpm details{border-top:1px solid var(--line)}.rpm ul{padding-left:22px}.rpm li{padding:6px 0}.closing{text-align:center;padding-bottom:90px}.closing p{margin:0 auto 26px;max-width:60ch}.bottom{border-top:1px solid var(--line);align-items:start;padding-top:32px;padding-bottom:40px}.bottom p{font-size:12px;color:var(--muted);max-width:40ch;margin:0 auto}.bottom>span{font-size:12px;color:var(--muted)}[hidden]{display:none!important}.owner-main{max-width:660px;margin:70px auto 100px;padding:0 24px}.owner-main h1{font-size:42px}.owner-form{padding:28px;background:white;border:1px solid var(--line);border-radius:12px;margin-top:28px}.owner-form label{display:block;font-size:14px;font-weight:600;margin-bottom:14px}.owner-form input{display:block;width:100%;padding:12px;border:1px solid #8b9ea7;border-radius:6px;margin-top:8px;color:var(--ink)}.owner-form button{border:0}.owner-form .primary{margin-top:8px}.owner-form p{margin:16px 0 0}.owner-error{color:#8b321d;min-height:26px}.owner-note{font-size:14px;color:var(--muted)}.owner-setup{padding:20px;background:var(--mint);border-radius:8px;margin:24px 0}.owner-setup code{font-family:Consolas,monospace}.owner-back{display:inline-block;margin-top:24px;font-size:14px}@media(max-width:800px){.top,.bottom{padding:20px 22px;gap:18px}.top nav{display:none}.login-link{margin-left:auto}main{padding:0 22px}.intro{grid-template-columns:1fr;gap:32px;padding:50px 0 60px}h1{font-size:clamp(40px,9vw,64px)}.journey{padding:28px 24px}.journey-step{min-height:100px}.section{padding:44px 0}.section-heading,.audience-story,.rpm{grid-template-columns:1fr;gap:22px}.section-heading{margin-bottom:24px}.audience-story{padding:24px;min-height:0}h3{font-size:26px}.module-list summary{font-size:22px;gap:12px}.module-state{width:100%;margin:0;order:2}.module-list summary::after{margin-left:auto}.bottom{flex-wrap:wrap}.bottom p{margin:0;flex-basis:100%;order:3}.bottom>span{margin-left:auto}.owner-main{margin-top:44px}.owner-main h1{font-size:34px}.owner-form{padding:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(prefers-reduced-motion:no-preference){.journey-dot{animation:arrive .6s ease-out backwards}.journey-step:nth-of-type(2) .journey-dot{animation-delay:.15s}.journey-step:nth-of-type(3) .journey-dot{animation-delay:.3s}@keyframes arrive{from{clip-path:circle(0 at 50% 50%)}to{clip-path:circle(75% at 50% 50%)}}}
.module-facts{margin:24px 0;max-width:72ch}.module-facts dt{font-weight:600;margin:22px 0 6px}.module-facts dd{margin:0;color:var(--muted);overflow-wrap:anywhere}
.module-choice{display:flex;align-items:center;gap:12px;min-height:48px;color:var(--teal);font-weight:600}.module-choice input,#module-request input{width:20px;height:20px;accent-color:var(--teal);flex:none}#module-request{max-width:850px}#module-request fieldset{border:1px solid var(--line);border-radius:8px;padding:20px;margin:0 0 22px}#module-request legend{padding:0 8px;font-weight:600}#module-request label{display:flex;align-items:center;gap:12px;min-height:48px}#module-request button{border:0;cursor:pointer}#module-request button:disabled{cursor:default;background:var(--muted)}#module-request .subtle{margin-top:18px}
.rpm-request-form{min-width:0;padding-bottom:24px}.rpm-request-form label{display:grid;gap:8px;margin:18px 0;font-size:14px;font-weight:600}.rpm-request-form input,.rpm-request-form textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%;font:inherit;font-weight:400;padding:12px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink)}.rpm-request-form textarea{resize:vertical}.rpm-request-form button{border:0;white-space:normal;text-align:left;max-width:100%}.rpm-request-form p{overflow-wrap:anywhere}

.module-request-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.module-request-actions .secondary{background:transparent;color:var(--teal);text-decoration:underline;min-height:44px;padding:12px;font:inherit}.module-request-actions button{max-width:100%;white-space:normal}

.audience-steps{margin:16px 0;padding-left:24px}.audience-steps li{padding-left:4px;margin-bottom:12px}.audience-story>div{min-width:0}.audience-story .text-link{min-height:44px}

.module-chosen{padding:0;list-style:none;margin:20px 0}.module-chosen li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}#module-request .remove-module{flex:none;min-height:44px;padding:8px 12px;background:transparent;color:var(--teal);text-decoration:underline;text-underline-offset:4px}.module-chosen span{min-width:0;overflow-wrap:anywhere}

.module-import{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:20px}.module-import summary{min-height:48px;padding:12px 0;cursor:pointer}.module-import input[type=file]{width:100%!important;height:auto!important;min-width:0;max-width:100%;font-size:14px}#module-request .module-import label{display:grid;gap:10px;margin:12px 0}.module-import p{overflow-wrap:anywhere}

.rpm-request-restore{min-width:0;margin:24px 0;padding:16px;border:1px solid var(--line);border-radius:8px}.rpm-request-restore legend{padding:0 6px;font-weight:600}.rpm-request-restore dd{margin:4px 0 16px;overflow-wrap:anywhere;white-space:pre-wrap}.rpm-request-restore dt{font-weight:600}

 .public-example details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.public-example summary{font-size:20px;font-weight:600;cursor:pointer;padding:12px 0;line-height:1.4}.public-example fieldset{min-width:0;border:1px solid var(--line);border-radius:8px;padding:20px;margin:24px 0}.public-example legend{font-weight:600;padding:0 8px}.public-example label{display:flex;align-items:flex-start;gap:12px;padding:12px 0;line-height:1.6;min-height:44px;cursor:pointer}.public-example input{width:20px;height:20px;flex:none;accent-color:var(--teal);margin-top:3px}.public-example button{border:0;cursor:pointer;white-space:normal;max-width:100%}.public-example button:disabled{opacity:.55;cursor:default}.public-example summary:focus-visible,.public-example input:focus-visible{outline:3px solid var(--teal);outline-offset:4px}#public-example-result{max-width:760px;margin-top:20px;line-height:1.7;overflow-wrap:anywhere}
