@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:200 900;font-display:swap;src:url("/fonts/SourceSans3.woff2") format("woff2");}
@font-face{font-family:"Source Sans 3";font-style:italic;font-weight:200 900;font-display:swap;src:url("/fonts/SourceSans3-Italic.woff2") format("woff2");}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url("/fonts/SourceSerif4.woff2") format("woff2");}
@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url("/fonts/SourceSerif4-Italic.woff2") format("woff2");}
:root{--vero-accent:#243B53;--vero-heading:#252A30;--vero-background:#F4F6FA;--vero-surface:#FFFFFF;--vero-text:#182536;--vero-secondary:#526278;--vero-selected:#DCE6F5;--vero-border:#718198;--vero-hover:#1B2D40;--vero-warning-text:#704C00;--vero-warning-bg:#FFF1CC;--vero-error-text:#9F2433;--vero-error-bg:#FCECEF;--vero-overflow-bg:#000000;--vero-overflow-text:#FFFFFF;--vero-success-text:#24563C;--vero-success-bg:#E5F1E9;--vero-font:"Source Sans 3",Arial,sans-serif;--vero-heading-font:"Source Serif 4",Georgia,serif;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--vero-background);color:var(--vero-text);font:18px/1.65 var(--vero-font)}a{color:var(--vero-accent);text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--vero-accent);outline-offset:4px}[hidden]{display:none!important}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.skip{position:absolute;top:-100px;left:24px;z-index:10;background:white;padding:12px}.skip:focus{top:12px}.utility{background:var(--vero-accent);color:white;font-size:14px}.utility .wrap{display:flex;gap:24px;align-items:center;min-height:40px}.utility span{margin-right:auto}.utility a{color:white;padding:8px 0}.utility :focus-visible,.cta :focus-visible{outline-color:white}header{background:white;border-bottom:1px solid var(--vero-selected)}.nav{display:flex;gap:32px;align-items:center;min-height:98px}.brand{font-weight:700;font-size:40px;letter-spacing:-2px;text-decoration:none;color:var(--vero-heading)}.brand span{color:var(--vero-accent)}nav{display:flex;gap:28px;margin-left:auto;flex-wrap:wrap}nav a{text-decoration:none;font-size:16px;font-weight:500;padding:10px 0}nav a:hover,nav a[aria-current]{text-decoration:underline}p{margin:0 0 24px}h1,h2,h3{color:var(--vero-heading);line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(42px,5.4vw,76px);font-weight:600;margin:18px 0 28px;max-width:940px}h2{font-size:clamp(30px,3.4vw,46px);font-weight:600;margin:12px 0 24px}h3{font-size:25px;font-weight:600;margin:12px 0 16px}h1 em{font-style:normal;color:var(--vero-accent)}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--vero-secondary);margin:0 0 16px}.lead{font-size:22px;line-height:1.5;max-width:700px;color:var(--vero-secondary)}.small,figcaption{font-size:16px;line-height:1.5;color:var(--vero-secondary)}.button,button{display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:48px;padding:12px 22px;background:var(--vero-accent);color:white;text-decoration:none;font-weight:600;border:1px solid var(--vero-accent);border-radius:8px;cursor:pointer}.button:hover,button:hover{background:var(--vero-hover)}.button.secondary,button.secondary{background:white;color:var(--vero-accent);border-color:var(--vero-border)}.actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:28px 0}.hero{padding:88px 0 64px}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:60px;align-items:center}.hero h1{font-size:clamp(42px,4.8vw,68px)}.hero .lead{font-size:21px}.badge{display:inline-block;padding:5px 12px;border-radius:99px;background:var(--vero-selected);font-size:13px;font-weight:600;color:var(--vero-accent)}section{padding:80px 0;scroll-margin-top:24px}.section-intro{max-width:760px}.white{background:white}.tint{background:var(--vero-selected)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:28px;background:white;border:1px solid var(--vero-border);border-radius:12px}.card p:last-child{margin-bottom:0}.card .eyebrow{color:var(--vero-accent)}.card p{color:var(--vero-secondary)}.number{font-size:16px;font-weight:700;color:var(--vero-secondary)}.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.quote{font-size:clamp(27px,3vw,40px);line-height:1.3;letter-spacing:-.02em;margin:0;padding:32px 0;border-top:2px solid var(--vero-accent);color:var(--vero-heading)}.quote small{display:block;margin-top:24px;font-size:16px;letter-spacing:0;color:var(--vero-secondary)}.text-link{font-weight:600}.feature-list{padding-left:22px}.feature-list li{margin:12px 0}.note{border-left:4px solid var(--vero-accent);background:var(--vero-selected);padding:20px 24px;border-radius:0 8px 8px 0}.prose{max-width:780px;margin:auto}.prose p{font-size:20px}.prose h2{margin-top:48px;font-size:32px}.page-head{padding:72px 0 48px}.page-head .lead{max-width:820px}.page-body{padding-top:24px}.story-signature{border-top:1px solid var(--vero-border);padding-top:24px}.cta{background:var(--vero-accent);color:white}.cta h2{color:white;max-width:780px}.cta .eyebrow,.cta .small{color:var(--vero-selected)}.cta p{max-width:700px}.button.light{background:white;color:var(--vero-accent)}footer{background:white;padding:56px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px}footer h2{font-size:18px;letter-spacing:0;margin:8px 0 20px}footer a:not(.brand){display:block;font-size:16px;margin:10px 0}footer p{color:var(--vero-secondary);margin-top:12px}.footer-bottom{border-top:1px solid var(--vero-selected);margin-top:32px;padding-top:20px;font-size:14px;color:var(--vero-secondary)}.mockup{margin:0}.writer-frame{background:var(--vero-accent);border-radius:18px;padding:14px;box-shadow:0 20px 44px #18253620;transform:rotate(-2deg)}.writer-screen{background:var(--vero-background);border-radius:8px;overflow:hidden;font-size:13px}.writer-top{display:flex;gap:16px;align-items:center;padding:16px;border-bottom:1px solid var(--vero-border)}.writer-top span{margin-left:auto;font-variant-numeric:tabular-nums}.writer-content{display:grid;grid-template-columns:100px 1fr;gap:12px;padding:16px}.writer-questions{display:flex;gap:8px;flex-direction:column}.writer-questions span{border:1px solid var(--vero-border);border-radius:6px;padding:8px;font-size:11px;background:white}.writer-questions .active{background:var(--vero-selected);border-left:4px solid var(--vero-accent)}.writing-paper{background:white;padding:20px;min-height:270px;border:1px solid var(--vero-border)}.writing-paper h3{font-size:18px;letter-spacing:0;margin:0 0 14px}.writing-paper p{font-size:16px;line-height:1.7;margin-bottom:18px}.writer-bottom{padding:4px 16px 16px;color:var(--vero-secondary);display:flex;justify-content:space-between;gap:12px}.writer-bottom b{color:var(--vero-accent)}figcaption{margin-top:28px;text-align:center;font-size:13px}.proof-bar{display:flex;gap:24px;justify-content:space-between;border-block:1px solid var(--vero-border);padding:22px 0;font-size:16px;font-weight:500;margin-top:56px}.research-card{padding-block:32px;border-top:1px solid var(--vero-border)}.research-card h2{font-size:30px}.research-card .badge{margin-bottom:12px}.research-card p{max-width:800px}.research-card .limit{font-size:16px;color:var(--vero-secondary)}.faq{margin-top:32px}details{border-bottom:1px solid var(--vero-border);padding:20px 0}summary{font-weight:600;cursor:pointer}details p{margin:16px 0 0;max-width:850px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.full{grid-column:1/-1}label{display:block;font-weight:600;font-size:16px;margin-bottom:6px}input,select,textarea{width:100%;min-height:48px;border:1px solid var(--vero-border);border-radius:8px;padding:12px;background:white;color:var(--vero-text)}textarea{resize:vertical;min-height:130px}.pilot-form{background:white;border:1px solid var(--vero-border);border-radius:12px;padding:32px}.pilot-form .small{margin-top:8px}.form-status{margin-top:20px}.mail-preview{padding:24px;background:var(--vero-selected);border-radius:8px;margin-top:24px}.mail-preview textarea{font-size:16px;min-height:260px}.status-panel{border-top:1px solid var(--vero-border);padding-top:20px;margin-top:24px}.status-panel h3{font-size:21px}code{overflow-wrap:anywhere}button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:1000px){.nav{gap:20px;flex-wrap:wrap;padding-block:18px}nav{gap:18px}.hero-grid{gap:32px}.grid{gap:16px}.card{padding:22px}.split{gap:32px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.utility span{display:none}.utility .wrap{justify-content:flex-end;gap:20px}.nav{gap:12px}.nav nav{order:3;width:100%;margin:0;justify-content:space-between;gap:12px}.nav>.button{margin-left:auto;font-size:16px;padding:10px 16px}.hero{padding:44px 0}.hero-grid,.grid,.split,.footer-grid{grid-template-columns:1fr}.hero-grid{gap:40px}.hero h1{font-size:48px}.lead{font-size:20px}section{padding:48px 0}.page-head{padding:48px 0 24px}.proof-bar{flex-wrap:wrap;gap:12px 24px;margin-top:40px}.footer-grid{gap:24px}.form-grid{grid-template-columns:1fr}.pilot-form{padding:22px}.writer-frame{transform:none}.writer-content{grid-template-columns:76px 1fr;padding:10px;gap:8px}.writing-paper{padding:14px;min-height:250px}.writer-questions span{font-size:10px;padding:6px}.writing-paper p{font-size:14px}.writer-top{padding:12px;font-size:12px}.writer-bottom{font-size:11px}.brand{font-size:36px}.prose p{font-size:18px}.actions .button{width:100%}nav a{font-size:14px}.footer-bottom{margin-top:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.guide-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:40px;align-items:start}.guide-nav{display:flex;flex-direction:column;gap:8px;position:sticky;top:20px;margin:24px 0}.guide-nav a{padding:8px}.guide-content{min-width:0;max-width:850px}.guide-content section{padding:28px 0;scroll-margin-top:20px}.guide-content details{border:1px solid var(--vero-border);background:var(--vero-surface);border-radius:8px;padding:16px;margin:16px 0}.guide-content summary{font-weight:600;cursor:pointer;min-height:28px}.guide-content dt{font-weight:700;margin-top:20px}.guide-content dd{margin:8px 0}.guide-content blockquote{margin:16px 0;padding:4px 20px;border-left:4px solid var(--vero-accent)}.guide-content li{margin:12px 0}.guide-content a{overflow-wrap:anywhere}.guide-content .card{margin:20px 0}.guide-content summary:focus-visible{outline:3px solid var(--vero-accent);outline-offset:4px}@media(max-width:760px){.guide-layout{grid-template-columns:1fr;gap:8px}.guide-nav{position:static;flex-direction:row;flex-wrap:wrap}.nav nav{flex-wrap:wrap;justify-content:flex-start}.guide-content section{padding:24px 0}}@media print{header,footer,.cta,.guide-nav,.actions{display:none}.guide-layout{display:block}.guide-content{max-width:none}details{break-inside:avoid}}

/* Real product captures and readable classroom workflow. */
.product-screen{max-width:1024px;margin:40px 0 0}.product-screen img{display:block;width:100%;height:auto;border:1px solid var(--vero-border);border-radius:8px}.product-screen figcaption{text-align:left;margin-top:12px;max-width:800px;font-size:16px}.workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-left:24px}.workflow li{padding-left:8px}.workflow h3{font-size:24px}.hero h1{max-width:1000px}.prose{max-width:820px}@media(max-width:760px){.workflow{grid-template-columns:1fr;gap:12px}.hero h1{font-size:clamp(36px,9vw,48px)}.product-screen{margin-top:28px}}

.guide-cards .card{display:flex;flex-direction:column;align-items:flex-start}.guide-cards h2{font-size:30px;line-height:1.2}.guide-cards .button{margin-top:auto}

.contact-email{overflow-wrap:anywhere}

.brand{display:inline-flex;align-items:center;flex-shrink:0;line-height:1}.brand img{display:block;width:154px;height:auto;background:#fff;border-radius:3px}
/* Interactive sample follows the native Writer stages; scoped to avoid site control conflicts. */
.writer-demo{margin-top:40px;max-width:1100px;font-size:16px;line-height:1.5}.demo-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px}.demo-intro h2{font-size:24px;letter-spacing:0;margin:0 0 6px}.demo-intro p{margin:0;max-width:740px;font-size:16px;color:var(--vero-secondary)}.writer-demo button{font-size:16px;gap:6px;padding:8px 12px;min-height:44px}.demo-device{padding:16px;background:var(--vero-background);border:1px solid var(--vero-border);border-radius:12px}.demo-header{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--vero-border);padding-bottom:12px}.demo-header img{width:100px;height:auto}.demo-header strong{font-size:22px;font-weight:500}.demo-header button{margin-left:auto;flex-shrink:0}.demo-meta{display:flex;gap:20px;flex-wrap:wrap;padding:12px 0;color:var(--vero-secondary)}.demo-meta span:last-child{margin-left:auto}.demo-body{display:grid;grid-template-columns:minmax(180px,28%) minmax(0,1fr);gap:20px}.demo-reference h3,.demo-panel h3{font-size:20px;letter-spacing:0;margin:0 0 16px}.demo-reference p{margin-bottom:20px}.demo-workspace{min-width:0}.demo-tabs{display:flex;gap:4px;margin-bottom:12px}.demo-tabs button{flex:1;background:white;color:var(--vero-text);border:1px solid var(--vero-border);border-bottom-width:3px}.demo-tabs button[aria-selected="true"]{background:var(--vero-selected);border-bottom-color:var(--vero-accent)}.demo-tabs button[data-state="complete"]{color:var(--vero-success-text);background:var(--vero-success-bg)}.demo-tabs button[data-state="revisit"]{color:var(--vero-warning-text);background:var(--vero-warning-bg)}.demo-tabs button[aria-selected="true"]{outline:2px solid var(--vero-accent);outline-offset:-3px}.demo-tabs button:focus-visible{outline:3px solid var(--vero-accent);outline-offset:3px}.demo-panel{min-height:320px}.demo-panel p{margin-bottom:12px}.demo-panel label{margin:8px 0;font-size:18px}.demo-panel textarea{font-size:20px;line-height:1.5;min-height:190px;resize:vertical;width:100%}.demo-panel #demo-write{min-height:300px}.demo-panel ul{padding-left:24px;margin:0 0 16px}.demo-check{display:flex;align-items:flex-start;gap:10px;font-weight:400}.demo-check input{width:20px;min-height:20px;height:20px;padding:0;margin:4px 0;flex-shrink:0;accent-color:var(--vero-accent)}.demo-stage-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.demo-stage-actions span{flex:1 1 180px;color:var(--vero-secondary);font-size:14px}.demo-bottom{display:flex;gap:16px;justify-content:space-between;align-items:center;border-top:1px solid var(--vero-border);margin-top:16px;padding-top:12px}.demo-bottom span{font-size:14px;color:var(--vero-secondary)}.demo-bottom button{flex-shrink:0}.demo-focused .demo-reference{display:none}.demo-focused .demo-body{grid-template-columns:minmax(0,1fr)}.demo-dialog{max-width:500px;width:calc(100% - 32px);border:1px solid var(--vero-border);border-radius:12px;padding:24px;color:var(--vero-text);background:white}.demo-dialog::backdrop{background:#18253680}.demo-dialog h3{font-size:24px;letter-spacing:0;margin-top:0}.demo-dialog .actions{margin-bottom:0}@media(max-width:760px){.demo-intro{align-items:flex-start;flex-direction:column;gap:12px}.demo-header{flex-wrap:wrap;gap:12px}.demo-header strong{font-size:18px}.demo-header button{margin-left:0}.demo-meta{gap:8px 16px}.demo-meta span:last-child{margin-left:0}.demo-body{grid-template-columns:minmax(0,1fr)}.demo-reference{border-bottom:1px solid var(--vero-border);padding-bottom:4px}.demo-device{padding:12px}.demo-tabs button{padding:8px 5px}.demo-bottom{align-items:flex-start;flex-direction:column}.demo-panel textarea{font-size:18px}.demo-panel{min-height:0}}

.demo-stage-actions{margin:0 0 12px}
/* LMS documentation uses shared tokens; provider artwork retains its original colors. */
.lms-content{padding-top:16px}.lms-content .prose{max-width:900px}.lms-content h2{scroll-margin-top:24px}.lms-content li{margin-bottom:16px}.lms-steps{padding-left:28px}.lms-figure{margin:32px 0 48px}.lms-image{display:block;position:relative;border:1px solid var(--vero-border);border-radius:8px;overflow:hidden;background:var(--vero-surface)}.lms-image img{display:block;width:100%;height:auto}.lms-marker{position:absolute;background:var(--vero-accent);color:var(--vero-surface);border:3px solid var(--vero-surface);border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-weight:700;box-shadow:0 0 0 2px var(--vero-accent)}.marker-canvas-authorize{left:85%;top:82%}.marker-canvas-create{left:34%;top:62%}.marker-canvas-launch{left:56%;top:77%}.marker-canvas-open{left:34%;top:52%}.marker-canvas-delivered{left:55%;top:72%}.lms-figure figcaption{margin-top:14px}.lms-card-preview{width:100%;max-width:330px;height:160px;object-fit:contain;object-position:left center;margin-bottom:24px}.lms-provider-icon{display:block;margin:0 0 24px;object-fit:contain}.lms-attribution{margin-top:32px}.lms-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-left:24px}.lms-flow li{padding:16px;background:var(--vero-surface)}.lms-help dt{font-weight:700;margin-top:24px}.lms-help dd{margin:8px 0 24px}.nav{flex-wrap:wrap;padding-top:16px;padding-bottom:16px}.nav nav{gap:20px}
@media(max-width:800px){.lms-flow{grid-template-columns:1fr}.lms-content .grid.two{grid-template-columns:1fr}.lms-marker{width:26px;height:26px;font-size:14px;border-width:2px}.lms-figure{margin-left:0;margin-right:0}}
.lms-school-card{margin:32px 0 48px}.lms-permissions{margin:32px 0;padding:24px;background:var(--vero-surface);border:1px solid var(--vero-border);border-radius:12px}.lms-permissions summary{cursor:pointer;min-height:44px;font-weight:600}.lms-permissions p{margin-top:16px}.lms-scope-list{padding-left:24px}.lms-scope-list li{margin:12px 0}.lms-scope-list code,.lms-endpoints code{overflow-wrap:anywhere;font:inherit}.lms-content .card .small{margin-bottom:0}
/* LMS documentation: saved progress and annotated, expandable real screenshots. */
.guide-progress{padding:24px;margin:0 0 32px;background:var(--vero-surface);border:1px solid var(--vero-border);border-radius:12px}.guide-progress h2{font-size:28px}.guide-check{display:flex;align-items:center;gap:12px;min-height:44px;margin-top:12px;font-size:16px;font-weight:600}.guide-check input{width:24px;height:24px;accent-color:var(--vero-accent);flex-shrink:0}.lms-figure{max-width:720px}.lms-figure a{display:block}.guide-lightbox{width:min(1100px,96vw);max-height:94vh;padding:24px;border:1px solid var(--vero-border);border-radius:12px;background:var(--vero-surface);color:var(--vero-text);overflow:auto}.guide-lightbox::backdrop{background:rgb(24 37 54 / 70%)}.guide-lightbox button{margin-bottom:16px}.guide-lightbox p{margin-top:16px}.guide-lightbox .lms-image{width:100%}.lms-content code{overflow-wrap:anywhere}.lms-content .grid.two h2{font-size:30px}.lms-content .prose h2{font-size:32px}.guide-callout{display:block;background:var(--vero-accent);color:var(--vero-surface);padding:12px 16px;font-size:16px;font-weight:600}.guide-callout::before{content:'Look here: ';}@media(max-width:600px){.guide-progress,.guide-lightbox{padding:16px}.lms-content .prose h2{font-size:28px}.lms-figure{margin:24px 0}}@media print{.guide-progress button,.guide-lightbox{display:none}.guide-check{break-inside:avoid}}
.guide-capture{display:block;position:relative}.guide-target{position:absolute;border:3px solid var(--vero-accent);outline:2px solid var(--vero-surface);border-radius:8px;pointer-events:none}.google-connect .guide-target{left:27%;top:85%;width:30%;height:7%}.google-roster .guide-target{left:27%;top:37%;width:21%;height:10%}.google-create .guide-target{left:27%;top:47%;width:28%;height:13%}.google-delivery .guide-target{left:47%;top:45%;width:30%;height:7%}
.marker-canvas-create{left:42%;top:62%}.marker-canvas-launch{left:93%;top:62%}
/* Approved web typography; native Writer retains its own Atkinson tokens. */
h1,h2,h3,h4,h5,h6{font-family:var(--vero-heading-font);font-optical-sizing:auto;letter-spacing:normal}

/* Website composition. Colors and fonts are generated from shared Vero tokens.
   See website/EDITORIAL.md. No website-specific palette overrides. */
body { background: var(--vero-surface); }
.wrap { width: min(1200px, calc(100% - 64px)); }
section { padding: 64px 0; }
p { margin-bottom: 20px; }
h1 { font-size: clamp(38px, 4.6vw, 64px); max-width: 980px; margin: 16px 0 24px; }
h2 { font-size: clamp(28px, 3vw, 40px); line-height: 1.18; margin: 0 0 20px; }
h3 { line-height: 1.25; }
.eyebrow { text-transform: none; letter-spacing: .04em; font-size: 16px; }
.lead { max-width: 760px; }
.nav { gap: 24px; padding-block: 16px; }
.nav nav { gap: 20px; }
.nav .brand { display: flex; padding: 8px 0; }
.nav > .button { padding-inline: 16px; }
nav a { min-height: 44px; }
.page-head { padding: 48px 0 32px; background: var(--vero-selected); border-bottom: 1px solid var(--vero-border); }
.page-head p:last-child { margin-bottom: 0; }
.page-head > .wrap > p:first-child:not(.lead) { font-size: 16px; }
.page-body, .lms-content { padding-top: 40px; }
.page-head + section > .grid, .page-head + section > .wrap > .grid { margin-top: 0; }
.split { gap: 48px; }
.grid { gap: 24px; margin-top: 32px; }
.card { padding: 24px; border-radius: 12px; }
.card h2 { font-size: 28px; }
.guide-cards .card, .provider-card { display: flex; flex-direction: column; align-items: flex-start; }
.guide-cards .card > a:last-child, .provider-card > a:last-child { margin-top: auto; }
.guide-cards .card > p:last-of-type { margin-bottom: 24px; }
.badge { font-size: 14px; line-height: 1.4; padding: 6px 12px; align-self: flex-start; margin: 0 0 16px; }
.prose, .lms-content .prose { max-width: 820px; }
.prose p { font-size: 18px; }
.prose h2 { margin-top: 40px; }
.prose > h2:first-child, .guide-progress h2 { margin-top: 0; }
.guide-content { max-width: 820px; }
.guide-content h2, .lms-content .prose h2 { font-size: 30px; }
.guide-nav { background: var(--vero-background); padding: 12px; border-radius: 8px; }
.guide-nav a { min-height: 44px; }
.guide-progress { background: var(--vero-background); padding: 20px 24px; }
.guide-progress h2 { font-size: 24px; margin-bottom: 12px; }
.guide-progress p { font-size: 16px; margin-bottom: 12px; }
.guide-progress button { background: var(--vero-surface); color: var(--vero-accent); }
.lms-figure { margin: 24px 0 32px; }
.lms-figure figcaption { max-width: 70ch; }
.lms-school-card { margin: 24px 0; }
.lms-flow { gap: 16px; padding-left: 24px; }
.lms-flow li { background: var(--vero-selected); border-radius: 8px; }
.lms-content .grid.two h2 { font-size: 28px; }
.provider-grid { margin: 0; }
.provider-card { padding: 32px; border-top: 4px solid var(--vero-accent); }
.provider-art { height: 112px; width: 100%; display: flex; align-items: flex-start; margin-bottom: 16px; }
.provider-art img { width: 80px; height: 80px; object-fit: contain; }
.provider-card h2 { margin: 0 0 16px; }
.provider-card .button { margin-top: auto; }
.lms-content .provider-card .small { margin-bottom: 24px; }
.lms-attribution { max-width: 85ch; }
.home-hero { background: var(--vero-accent); color: var(--vero-surface); padding: 64px 0 48px; }
.home-hero h1 { color: var(--vero-surface); font-size: clamp(42px,4.8vw,68px); line-height: 1.05; }
.home-hero .lead, .home-hero .eyebrow, .home-hero .small { color: var(--vero-selected); }
.home-hero a:not(.button) { color: var(--vero-surface); }
.home-hero :focus-visible { outline-color: var(--vero-surface); }
.home-hero .hero-grid { grid-template-columns: 1.05fr 1fr; gap: 48px; }
.home-hero .actions { margin-bottom: 20px; }
.writing-preview { color: var(--vero-text); background: var(--vero-surface); border-radius: 12px; overflow: hidden; border: 1px solid var(--vero-border); }
.preview-heading { background: var(--vero-selected); padding: 20px 24px; display: flex; justify-content: space-between; gap: 12px; font-size: 16px; }
.preview-paper { padding: 24px; }
.preview-paper h2 { font-size: 24px; }
.preview-stages { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 24px; font-size: 14px; }
.preview-stages span { border: 1px solid var(--vero-border); border-radius: 8px; padding: 4px 12px; }
.preview-stages .active { background: var(--vero-selected); font-weight: 700; }
.preview-paper blockquote { margin: 16px 0; padding-left: 16px; border-left: 3px solid var(--vero-accent); font-size: 20px; line-height: 1.5; }
.preview-paper p { font-size: 16px; color: var(--vero-secondary); margin-bottom: 0; }
.proof-strip { display: flex; flex-wrap: wrap; gap: 16px 32px; padding-top: 32px; margin-top: 32px; border-top: 1px solid var(--vero-border); font-size: 16px; }
.proof-strip span::before { content: '✓'; margin-right: 8px; }
.section-heading { display: flex; justify-content: space-between; gap: 24px; align-items: end; }
.section-heading > div { max-width: 730px; }
.section-heading > a { flex-shrink: 0; margin-bottom: 20px; }
.workflow-cards .card { border: 0; border-top: 3px solid var(--vero-accent); border-radius: 0; background: transparent; padding: 24px 0 0; }
.workflow-cards .number { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: var(--vero-selected); color: var(--vero-accent); margin-bottom: 12px; }
.sample-section { background: var(--vero-selected); }
.writer-demo { max-width: none; margin-top: 0; }
.demo-device { background: var(--vero-surface); padding: 24px; }
.demo-intro { margin-bottom: 24px; }
.demo-intro h2 { font-size: 32px; }
.home-lms { background: var(--vero-background); }
.home-lms .provider-links { display: grid; gap: 16px; }
.provider-link { display: flex; gap: 20px; align-items: center; padding: 20px 24px; background: var(--vero-surface); border: 1px solid var(--vero-border); border-radius: 12px; text-decoration: none; }
.provider-link img { width: 48px; height: 48px; object-fit: contain; }
.provider-link strong { font-size: 22px; display: block; }
.provider-link span { color: var(--vero-secondary); font-size: 16px; }
.provider-link:hover strong { text-decoration: underline; }
.evidence-band { background: var(--vero-selected); }
.evidence-band .split > div { padding: 8px 0; }
.cta { padding: 56px 0; }
.cta a:not(.button) { color: var(--vero-surface); }
footer { border-top: 1px solid var(--vero-border); }
.workflow { grid-template-columns: repeat(auto-fit,minmax(min(240px,100%),1fr)); }
.faq details { background: var(--vero-background); }
img { max-width: 100%; }
main a:not(.button), footer a { overflow-wrap: anywhere; }
@media(max-width:1100px) { .nav nav { order: 3; width: 100%; margin: 0; justify-content: space-between; } .nav > .button { margin-left: auto; } }
@media(max-width:800px) { .home-hero .hero-grid, .split { grid-template-columns: 1fr; gap: 32px; } .grid:not(.provider-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); } .section-heading { display: block; } .home-hero { padding-top: 40px; } }
@media(max-width:600px) { .wrap { width: calc(100% - 32px); } section { padding: 40px 0; } .page-head { padding: 32px 0; } .page-body,.lms-content { padding-top: 32px; } .grid, .grid.two, .grid:not(.provider-grid) { grid-template-columns: 1fr; } .nav nav { gap: 0 16px; justify-content: flex-start; } .nav .button { font-size: 14px; padding-inline: 12px; } .nav { gap: 12px; } .provider-card { padding: 24px; } .provider-art { height: 88px; margin-bottom: 16px; } .provider-art img { width: 64px; height: 64px; } .proof-strip { gap: 12px; flex-direction: column; } .home-hero h1 { font-size: 44px; } .preview-paper,.preview-heading,.demo-device { padding: 16px; } .lead { font-size: 20px; } .guide-content h2 { font-size: 28px; } }

/* Web serif headings use natural spacing rather than the former sans tracking. */
h1,h2,h3,h4,h5,h6{font-family:var(--vero-heading-font);font-optical-sizing:auto;letter-spacing:normal}
/* Device previews retain Writer typography instead of implying a device change. */
.writing-preview,.demo-device{font-family:"Atkinson Hyperlegible Next",Arial,sans-serif}
.writing-preview :is(h1,h2,h3,h4),.demo-device :is(h1,h2,h3,h4){font-family:inherit}



/* How it works: approved architecture-first marketing layout. */

.architecture-hero{background:var(--vero-background);padding:56px 0 48px}
.architecture-hero .intro{max-width:820px;margin:0 auto;text-align:center}
.architecture-hero h1{font-size:clamp(38px,4.2vw,60px);margin:12px auto 20px}
.architecture-hero .lead{margin:0 auto 20px;font-size:22px}
.architecture-hero .actions{justify-content:center;margin:24px 0 40px}
.architecture{display:grid;grid-template-columns:1fr 230px 1fr;align-items:center;gap:32px;padding:36px;background:var(--vero-surface);border:1px solid var(--vero-border);border-radius:16px}
.architecture h2{font-size:28px;margin:24px 0 12px}.architecture p{font-size:17px;margin:0;color:var(--vero-secondary)}
.endpoint{text-align:center;min-width:0}.laptop{padding:12px 12px 0;background:var(--vero-accent);border-radius:12px 12px 0 0;max-width:350px;margin:auto}
.laptop-screen{background:var(--vero-background);border-radius:5px;padding:16px;text-align:left;min-height:150px;color:var(--vero-text)}
.mini-top{font-size:13px;font-weight:700;border-bottom:1px solid var(--vero-border);padding-bottom:8px;margin-bottom:12px}
.mini-title{font:600 20px var(--vero-heading-font);margin-bottom:12px}
.mini-row{display:flex;justify-content:space-between;font-size:12px;padding:6px 0;border-top:1px solid var(--vero-selected)}
.laptop-base{height:10px;border-radius:0 0 10px 10px;background:var(--vero-border);max-width:370px;margin:auto}
.software{display:flex;justify-content:center;gap:8px;margin:12px 0 0;font-size:13px}.software span{padding:4px 10px;border-radius:6px;background:var(--vero-selected)}
.device-stack{display:flex;justify-content:center;gap:12px;align-items:center;min-height:195px}.device{background:var(--vero-accent);border-radius:12px;padding:10px;width:170px;box-shadow:0 6px 12px #18253614}
.device:nth-child(2){margin-top:30px}.device-screen{background:var(--vero-surface);min-height:95px;padding:10px;border-radius:5px;text-align:left}.device-screen strong{font-size:12px}.device-screen p{font-size:10px;margin:8px 0;line-height:1.4}.device-tabs{font-size:9px;border-bottom:1px solid var(--vero-selected);padding-bottom:6px}.keyboard{height:37px;margin-top:8px;background:repeating-linear-gradient(90deg,var(--vero-border) 0 9px,transparent 9px 12px);opacity:.75;border-radius:4px}
.connections{text-align:center}.connections .eyebrow{font-size:15px;letter-spacing:0;margin-bottom:24px}.transfer{margin:20px 0;font-size:15px;font-weight:600}.arrow{position:relative;border-top:2px solid var(--vero-accent);margin:10px 0}.arrow.right:after{content:'›';position:absolute;right:-3px;top:-22px;font-size:30px;color:var(--vero-accent)}.arrow.left:before{content:'‹';position:absolute;left:-3px;top:-22px;font-size:30px;color:var(--vero-accent)}.receipt{font-size:14px!important;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:22px!important;color:var(--vero-success-text)!important}
.diagram-caption{text-align:center;font-size:14px;color:var(--vero-secondary);margin:16px 0 0}
.marketing-section{padding:56px 0}.marketing-section .section-heading{margin-bottom:28px}.marketing-section .section-heading p{margin:0}.lesson-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.lesson-step{border-top:2px solid var(--vero-accent);padding-top:20px}.lesson-step h3{font-size:26px;margin:12px 0}.lesson-step p{margin-bottom:0;font-size:18px}.step-number{font-size:14px;font-weight:700;color:var(--vero-secondary)}
.writer-showcase{background:var(--vero-selected)}.writer-showcase .split{align-items:center;grid-template-columns:.8fr 1.2fr;gap:48px}.writer-showcase img{width:100%;border:1px solid var(--vero-border);border-radius:10px;display:block}.writer-showcase figure{margin:0}.writer-showcase figcaption{font-size:14px;margin-top:12px;text-align:left}.stage-line{font-size:17px;font-weight:600;padding:14px 0;border-block:1px solid var(--vero-border);margin:24px 0}.boundaries{max-width:870px;margin:auto;text-align:center}.boundaries h2{font-size:40px}.boundary-list{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:24px 0}.boundary-list span{background:var(--vero-selected);border-radius:6px;padding:8px 14px;font-size:16px;font-weight:600}.boundaries .closing{font-weight:600;color:var(--vero-accent);margin-bottom:0}.classroom-band{background:var(--vero-background)}.classroom-band h2{font-size:34px}.classroom-band p:last-child{margin:0}
@media(max-width:1000px){.architecture{grid-template-columns:1fr 180px 1fr;gap:16px;padding:24px}.device-stack{gap:6px}.device{width:130px}.software{flex-wrap:wrap}}
@media(max-width:760px){.architecture-hero{padding:36px 0}.architecture-hero .intro{text-align:left}.architecture-hero .lead{font-size:20px}.architecture-hero .actions{justify-content:start;margin-bottom:28px}.architecture{grid-template-columns:1fr;gap:24px;padding:24px 20px}.connections{padding:0 16px}.connections .eyebrow{margin:0}.transfer{margin:16px 0}.arrow.right:after{content:'↓';top:-17px;font-size:24px}.arrow.left:before{content:'↑';top:-17px;font-size:24px}.device-stack{min-height:165px}.device{width:145px}.lesson-grid{grid-template-columns:1fr;gap:24px}.marketing-section{padding:40px 0}.writer-showcase .split{grid-template-columns:1fr;gap:24px}.boundaries{text-align:left}.boundaries h2{font-size:32px}.boundary-list{justify-content:start}.architecture h2{margin-top:16px}.diagram-caption{text-align:left}.classroom-band .split{gap:24px}}
.vero-icon{--icon-ink:var(--vero-accent,#243B53);--icon-bg:var(--vero-selected,#DCE6F5);display:inline-grid;place-items:center;vertical-align:middle;flex:none;width:32px;height:32px;margin-right:8px;border:1px solid var(--icon-ink);border-radius:8px;background:var(--icon-bg);box-shadow:0 2px 0 var(--icon-ink),0 4px 7px #243B531c}.vero-icon::before{content:"";display:block;width:20px;height:20px;background:var(--icon-ink);mask:var(--icon-source) center/contain no-repeat;-webkit-mask:var(--icon-source) center/contain no-repeat}.vero-icon[data-tone=success]{--icon-ink:#24563C;--icon-bg:#E5F1E9}.vero-icon[data-tone=error]{--icon-ink:#9F2433;--icon-bg:#FCECEF}.vero-icon[data-tone=warning]{--icon-ink:#704C00;--icon-bg:#FFF1CC}
.vero-icon[data-icon="connected"]{--icon-source:url("/icons/connected.svg")}
.vero-icon[data-icon="disconnected"]{--icon-source:url("/icons/disconnected.svg")}
.vero-icon[data-icon="reconnect"]{--icon-source:url("/icons/reconnect.svg")}
.vero-icon[data-icon="unknown"]{--icon-source:url("/icons/unknown.svg")}
.vero-icon[data-icon="students"]{--icon-source:url("/icons/students.svg")}
.vero-icon[data-icon="received"]{--icon-source:url("/icons/received.svg")}
.vero-icon[data-icon="delivered"]{--icon-source:url("/icons/delivered.svg")}
.vero-icon[data-icon="refresh"]{--icon-source:url("/icons/refresh.svg")}
.vero-icon[data-icon="external"]{--icon-source:url("/icons/external.svg")}
.vero-icon[data-icon="download"]{--icon-source:url("/icons/download.svg")}
.vero-icon[data-icon="edit"]{--icon-source:url("/icons/edit.svg")}
.vero-icon[data-icon="help"]{--icon-source:url("/icons/help.svg")}

.vero-icon[data-icon="choose"]{--icon-source:url("/icons/choose.svg")}
.vero-icon[data-icon="import"]{--icon-source:url("/icons/import.svg")}

.vero-icon[data-icon="home"]{--icon-source:url("/icons/home.svg")}
.vero-icon[data-icon="assignments"]{--icon-source:url("/icons/assignments.svg")}
.vero-icon[data-icon="sessions"]{--icon-source:url("/icons/sessions.svg")}
.vero-icon[data-icon="classes"]{--icon-source:url("/icons/classes.svg")}
.vero-icon[data-icon="typing"]{--icon-source:url("/icons/typing.svg")}
.vero-icon[data-icon="settings"]{--icon-source:url("/icons/settings.svg")}

.vero-icon[data-icon="open"]{--icon-source:url("/icons/open.svg")}
.vero-icon[data-icon="revise"]{--icon-source:url("/icons/revise.svg")}
.vero-icon[data-icon="delete"]{--icon-source:url("/icons/delete.svg")}
.vero-icon[data-icon="processor"]{--icon-source:url("/icons/processor.svg")}

.vero-icon[data-icon="assignment-bank"]{--icon-source:url("/icons/assignment-bank.svg")}
.vero-icon[data-icon="rubric"]{--icon-source:url("/icons/rubric.svg")}
.vero-icon[data-icon="processes"]{--icon-source:url("/icons/processes.svg")}
.vero-icon[data-icon="process-bank"]{--icon-source:url("/icons/process-bank.svg")}

@font-face{font-family:"Atkinson Hyperlegible Next";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/AtkinsonHyperlegibleNext-Regular.woff2") format("woff2");}
@font-face{font-family:"Atkinson Hyperlegible Next";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/AtkinsonHyperlegibleNext-SemiBold.woff2") format("woff2");}