:root{--accent:#00c1f9;--ink:#131b20;--paper:#fafcfd;--pale:#edf4f7;--muted:#52616b;--line:#c6d2d8;--font:"Yu Gothic","Hiragino Kaku Gothic ProN","Meiryo",sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:150px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.9 var(--font);-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-feature-settings:"palt";text-wrap:balance}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border-radius:0}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #006387;outline-offset:5px}.wrap{width:min(1320px,90%);margin-inline:auto}.section{padding:96px 0}.eyebrow{font:700 12px/1.5 Arial,sans-serif;letter-spacing:.1em}.small-note{font-size:12px;color:var(--muted);line-height:1.9;margin-top:20px}.site-header{position:sticky;top:0;z-index:20;background:var(--paper)}.header-main{height:78px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:11px;font-weight:900;font-size:21px;line-height:1.3;white-space:nowrap}.brand small{display:block;font:8px Arial;letter-spacing:.03em;margin-top:6px}.brand-mark{width:44px;height:44px;background:var(--accent);color:#131b20;display:grid;place-items:center;font:900 35px/1 Arial}.header-main nav{display:flex;gap:25px;margin-left:auto;font-size:13px;font-weight:700}.header-main nav a:hover{text-decoration:underline;text-underline-offset:6px}.header-join{border:1px solid currentColor;padding:9px 16px;font-size:13px;font-weight:700;white-space:nowrap}.header-join:hover{background:var(--accent);color:#131b20}.grade-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.grade-inner{display:flex;align-items:center;gap:30px;min-height:54px}.grade-inner>p{font-size:12px}.grade-switch{display:grid;grid-template-columns:repeat(4,105px);align-self:stretch}.grade-switch button{background:transparent;border:0;border-left:1px solid var(--line);font:700 25px/1 Arial;padding:12px 15px;transition:background .15s}.grade-switch button:last-child{border-right:1px solid var(--line)}.grade-switch button span{font:700 12px var(--font);margin-left:6px}.grade-switch button[aria-pressed=true]{background:var(--accent);color:#131b20}.grade-switch button:hover{background:#c5effb;color:#131b20}.grade-switch button[aria-pressed=true]:hover{background:var(--accent)}.page-for{margin-left:auto;font:700 11px Arial;letter-spacing:.1em}.question-band{background:var(--accent);color:#131b20;padding:22px 0}.question-band>.wrap{display:flex;gap:40px;align-items:center}.question-band .eyebrow{font-size:11px;white-space:nowrap}.question-band p{font-size:clamp(19px,2vw,29px);font-weight:600;letter-spacing:-.035em;line-height:1.6}.question-band strong{font-weight:900}.mobile-only{display:none}.hero{display:grid;grid-template-columns:1.13fr 1fr;gap:65px;padding:62px 0 65px;align-items:center;min-height:660px}.hero-copy>.eyebrow{display:flex;gap:16px;align-items:center;font-size:10px}.label-accent{background:var(--accent);color:#131b20;padding:6px 10px;font:700 12px var(--font);letter-spacing:0}.hero h1{font-size:clamp(36px,4.6vw,66px);font-weight:900;line-height:1.5;letter-spacing:-.045em;white-space:pre-line;margin:24px 0}.lead{font-size:16px;line-height:2.1;max-width:34em}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}.button{display:inline-flex;justify-content:center;align-items:center;padding:16px 25px;min-height:56px;border:1px solid #131b20;font-size:14px;font-weight:800;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.dark{background:#131b20;color:#fafcfd}.dark:hover{background:#29424f}.text-link{font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:5px}.hero-goal{font-size:12px;color:var(--muted);border-left:3px solid var(--accent);padding-left:13px;margin-top:25px}.hero-art{position:relative;padding-top:28px}.image-caption-top{position:absolute;top:0;right:0;font:700 10px Arial;letter-spacing:.07em}.hero-art figure{position:relative}.hero-art img{width:100%;height:350px;object-fit:cover;display:block}.hero-art figcaption{position:absolute;bottom:9px;right:10px;background:#fafcfde6;color:#131b20;padding:2px 5px;font-size:10px}.image-under{display:flex;gap:25px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.hero-year{font:700 74px/1 Arial;letter-spacing:-.07em}.image-under .eyebrow{font-size:9px;color:var(--muted)}.image-under p{font-size:14px;font-weight:700;line-height:1.8;white-space:pre-line;margin-top:7px}.image-stamp{position:absolute;left:-22px;bottom:112px;background:var(--accent);color:#131b20;border:1px solid #131b20;padding:17px;font-weight:900;font-size:20px;line-height:1.6;white-space:pre-line;transform:rotate(-6deg)}.session-ribbon{background:#131b20;color:#fafcfd}.session-ribbon>.wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0}.session-ribbon .eyebrow{color:var(--accent);font-size:10px}.session-ribbon p{font-size:13px;display:flex;gap:25px;align-items:center}.session-ribbon strong{font:700 23px Arial;letter-spacing:-.03em}.session-ribbon small{font:10px var(--font)}.session-ribbon p>span{font-size:10px;color:#bdcbd3}.session-ribbon a{font-size:12px;text-decoration:underline;text-underline-offset:5px}.light{background:var(--pale)}.section-head{margin-bottom:44px}.section-head>.eyebrow{color:var(--muted);margin-bottom:25px}.heading-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:end}h2{font-size:clamp(30px,3.5vw,48px);font-weight:900;line-height:1.5;letter-spacing:-.04em;white-space:pre-line}.heading-grid>p{color:var(--muted);font-size:16px;line-height:2.1}.pain-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.pain-list li{border-top:1px solid var(--line);padding-top:22px}.pain-list li>span{font:700 12px Arial;color:var(--muted)}.pain-list h3{font-size:20px;font-weight:900;margin:12px 0}.pain-list p{font-size:16px;color:var(--muted);line-height:2}.compare-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin:68px 0 28px}.compare-heading h3{font-size:29px;line-height:1.7;letter-spacing:-.03em;white-space:pre-line}.compare-heading>p{font-size:14px;color:var(--muted);line-height:2}.comparison{border:1px solid var(--line)}.compare-header,.compare-row{display:grid;grid-template-columns:110px 1fr 1fr}.compare-header>span{padding:20px;font-size:13px;font-weight:800;background:var(--pale)}.compare-header>span:last-child{background:var(--accent);color:#131b20}.compare-header>span+span{border-left:1px solid var(--line)}.compare-row{border-top:1px solid var(--line)}.compare-row>h4{font-size:13px;margin:0;padding:23px 20px}.compare-row>p{font-size:15px;line-height:1.9;padding:20px;border-left:1px solid var(--line)}.compare-row>p:last-child{background:#ddf5fd;color:#131b20;font-weight:600}.promise{background:var(--accent);color:#131b20}.promise .eyebrow{margin-bottom:26px}.promise h2{font-size:clamp(34px,4.8vw,68px);max-width:1100px;line-height:1.5}.promise-bottom{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;margin-top:40px;align-items:end}.promise-bottom>p:first-child{font-size:16px;line-height:2.2;white-space:pre-line}.promise-sign{font-size:24px;font-weight:700;border-left:1px solid #131b20;padding-left:38px;line-height:1.8}.promise-sign strong{font-weight:900}.roadmap{border-top:1px solid var(--line)}.road-step{display:grid;grid-template-columns:85px 1fr .7fr;gap:40px;padding:36px 0;border-bottom:1px solid var(--line);align-items:start}.step-number{font:700 55px/1.2 Arial;letter-spacing:-.04em;color:var(--muted)}.step-content h3{font-size:25px;line-height:1.7;margin-bottom:14px}.step-content p{font-size:16px;color:var(--muted);line-height:2.1}.step-output{border-left:3px solid var(--accent);padding:3px 0 3px 24px;margin-top:9px}.step-output>span{font-size:12px;font-weight:700;color:var(--muted)}.step-output>p{font-size:16px;font-weight:700;margin-top:9px;line-height:1.9}.dark-section{background:#131b20;color:#fafcfd}.dark-section .eyebrow{color:var(--accent)}.dark-section .heading-grid>p{color:#c1cfd7}.activity-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #687c88}.activity-tabs button{background:transparent;color:#fafcfd;border:1px solid #687c88;border-bottom:0;border-right:0;padding:22px 15px;text-align:left;font-size:19px;font-weight:800;display:flex;align-items:center;gap:20px}.activity-tabs button:last-child{border-right:1px solid #687c88}.activity-tabs button>span{font:11px Arial;color:#a8bfcb}.activity-tabs button[aria-selected=true]{background:var(--accent);color:#131b20;border-color:var(--accent)}.activity-tabs button[aria-selected=true]>span{color:#131b20}.activity-panel{border:1px solid #687c88;border-top:0;display:grid;grid-template-columns:1fr 1fr;gap:75px;padding:42px;min-height:410px}.activity-panel h3{font-size:30px;line-height:1.6;margin:21px 0;white-space:pre-line}.activity-panel>div>p:not(.eyebrow){font-size:16px;line-height:2.1;color:#c1cfd7}.mini-heading{font-size:13px;font-weight:800}.activity-work>ol{padding:0;list-style:none;counter-reset:work;margin:10px 0 0}.activity-work li{counter-increment:work;display:flex;gap:14px;border-bottom:1px solid #485d68;padding:14px 0;font-size:15px}.activity-work li:before{content:"0" counter(work);font:11px Arial;color:var(--accent);padding-top:6px}.activity-output{margin-top:23px}.activity-output>span{color:var(--accent);font-size:12px}.activity-output>p{font-size:16px;font-weight:700;margin-top:5px}.cycle{padding-top:38px}.cycle>p:not(.cycle-note){display:flex;align-items:center;flex-wrap:wrap;gap:20px;font-weight:800;font-size:20px;margin-top:15px}.cycle b{font-weight:400;color:#677c88}.cycle-note{font-size:13px;color:#acbec8;margin-top:16px}.output-section{background:var(--pale)}.output-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:65px}.portfolio-cover{background:var(--accent);color:#131b20;min-height:400px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #131b20;transform:rotate(-2deg);margin:8px 10px 8px 0}.cover-top{display:flex;justify-content:space-between;border-bottom:1px solid #131b2077;padding-bottom:17px;gap:10px}.cover-top .eyebrow{font-size:9px}.cover-top>span:last-child{font:700 10px Arial}.cover-title{font-size:clamp(29px,3vw,44px);font-weight:900;line-height:1.65;letter-spacing:-.03em;margin:35px 0;white-space:pre-line}.cover-bottom{border-top:1px solid #131b2077;padding-top:20px}.cover-bottom>span{font:700 11px Arial;letter-spacing:.1em}.cover-bottom>p{font-size:13px;margin-top:5px}.portfolio-list{border-top:1px solid var(--line)}.portfolio-item{display:grid;grid-template-columns:25px 1fr;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.portfolio-item>span{font:700 11px Arial;margin-top:7px}.portfolio-item h3{font-size:20px;margin-bottom:8px}.portfolio-item p{font-size:15px;color:var(--muted);line-height:2}.story-example{margin-top:54px;padding:28px 34px;border-left:4px solid var(--accent);background:var(--paper)}.story-example>.eyebrow{font-family:var(--font);font-size:12px;color:var(--muted);letter-spacing:0}.story-example>p:not(.eyebrow){font-size:21px;line-height:1.9;font-weight:700;margin-top:15px}.story-example>span{display:block;font-size:11px;color:var(--muted);margin-top:17px}.journal-list{border-top:1px solid var(--line)}.journal-entry{display:grid;grid-template-columns:110px 90px 1fr auto;gap:30px;border-bottom:1px solid var(--line);padding:35px 0;align-items:start}.journal-entry>time{font:700 19px Arial;letter-spacing:-.03em;margin-top:8px}.journal-tag{font:10px Arial;border:1px solid var(--line);padding:7px 10px;margin-top:5px;text-align:center}.journal-entry h3{font-size:27px;line-height:1.65}.award-stamp{background:var(--accent);color:#131b20;font:700 22px/1.1 Arial;letter-spacing:-.04em;transform:rotate(-5deg);padding:16px;margin-right:8px}.faq-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.faq-layout>div>.eyebrow{color:var(--muted);margin-bottom:25px}.faq-note{font-size:16px;color:var(--muted);margin-top:24px;line-height:2}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:grid;grid-template-columns:25px 1fr 18px;gap:12px;list-style:none;cursor:pointer;padding:23px 0;font-size:16px;font-weight:700;align-items:start}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:before{content:"Q";font:700 16px Arial;padding-top:6px}.faq-list summary:after{content:"+";font:25px/1.3 Arial}.faq-list details[open] summary:after{content:"−"}.faq-list details>p{font-size:16px;color:var(--muted);line-height:2.1;padding:0 28px 25px 37px}.join-section{background:var(--accent);color:#131b20;padding-bottom:64px}.join-section h2{font-size:clamp(35px,4.8vw,66px);margin-top:25px}.join-lead{font-size:17px;line-height:2;margin-top:23px;max-width:850px;white-space:pre-line}.join-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:45px;padding:35px 0;border-top:1px solid #131b2077;border-bottom:1px solid #131b2077;align-items:center}.session-details h3{font-size:22px;margin-top:12px}.dates{display:flex;gap:35px;margin:23px 0}.dates time{display:flex;align-items:baseline;gap:10px}.dates time>span{font:700 56px/1 Arial;letter-spacing:-.06em}.dates small{font-size:12px}.session-details>p{font-size:12px}.join-action>p:not(.mini-heading){font-size:16px;line-height:2;margin:13px 0 23px}.join-action .button{width:100%;max-width:410px;font-size:16px}.join-action>.small-note{display:block;color:#131b20;font-size:11px;margin-top:10px}.join-topics{display:flex;gap:30px;margin-top:27px;font-size:13px;align-items:start}.join-topics>span{font-weight:800;white-space:nowrap}.join-topics p{line-height:1.9}footer{padding:33px 0;background:#131b20;color:#fafcfd}.footer-inner{display:flex;align-items:center;gap:40px}.footer-brand{font-size:25px;font-weight:900}.footer-inner>div>p{font-size:11px;color:#bdcbd3}.footer-inner>button{background:transparent;border:0;border-bottom:1px solid #6e8794;padding:5px 0;font-size:12px;color:#fafcfd;margin-left:auto}.footer-inner>small{font:9px Arial;letter-spacing:.03em}.skip{position:fixed;top:-100px;left:10px;padding:12px;background:var(--accent);color:#131b20;z-index:100}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.noscript-note{padding:30px}dialog{width:min(800px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid #131b20;background:#fafcfd;color:#131b20;overflow:auto;box-shadow:10px 10px 0 #131b2033}dialog::backdrop{background:#131b20cc;backdrop-filter:blur(6px)}.dialog-top{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:15px 26px;border-bottom:1px solid #131b20}.dialog-top>span:first-child{font-size:18px;font-weight:900}.dialog-top>.eyebrow{font-size:9px;margin-left:auto}.dialog-close{font:25px Arial;background:transparent;border:0;width:30px;height:30px}.dialog-body{padding:30px 42px}.dialog-body>.eyebrow{font-size:10px}.dialog-body h2{font-size:43px;line-height:1.4;margin:16px 0}.dialog-body>p:not(.eyebrow){font-size:14px;color:#52616b}.grade-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:12px;margin-top:24px}.grade-options button{border:1px solid #131b20;border-radius:8px;padding:17px 20px;background:#e5f8ff;color:#131b20;display:flex;gap:20px;text-align:left;align-items:center;transition:background .2s}.grade-options button:hover{background:var(--accent)}.grade-options button>span{font:700 40px Arial;letter-spacing:-.05em}.grade-options small{display:block;font:12px var(--font);letter-spacing:0;margin-top:4px}.grade-options strong{font-size:14px;line-height:1.8}.dialog-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px}.dialog-bottom>button{border:0;border-bottom:1px solid #131b20;background:transparent;padding:5px 0;font-size:12px}.dialog-bottom>span{font-size:10px;color:#52616b}
/* Year 1: open, bright, optimistic. */
body[data-year="1"]{--pale:#edfbff;--paper:#fcfeff}.hero-art{transition:transform .25s}body[data-year="1"] .hero-art img{border-radius:90px 18px 18px 18px}body[data-year="1"] .image-stamp{border:0;border-radius:50%;width:125px;height:125px;display:grid;place-items:center;text-align:center;font-size:18px}body[data-year="1"] .button,body[data-year="1"] .header-join{border-radius:30px}body[data-year="1"] .label-accent{border-radius:20px}body[data-year="1"] .pain-list li{border:0;background:#fff;padding:26px;border-radius:18px}body[data-year="1"] .roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border:0}body[data-year="1"] .road-step{display:block;border:0;padding:26px;background:#eafaff;border-radius:18px}body[data-year="1"] .step-number{display:block;color:#006283;margin-bottom:25px}body[data-year="1"] .step-content h3{font-size:22px}body[data-year="1"] .step-output{margin-top:27px}body[data-year="1"] .portfolio-cover{border:0;transform:none;border-radius:18px}
/* Year 2: friendship, candid photography and a personal notebook. */
body[data-year="2"]{--paper:#fff;--pale:#eefaff}body[data-year="2"] .hero{grid-template-columns:.95fr 1.05fr;gap:65px}body[data-year="2"] .hero h1{font-size:clamp(36px,5vw,71px);line-height:1.45}body[data-year="2"] .hero-art{transform:rotate(3deg);padding-top:0;background:white;box-shadow:8px 10px 0 #d3eef7;border:1px solid #c3d7df;padding:14px}body[data-year="2"] .hero-art img{height:410px}body[data-year="2"] .image-caption-top{position:static;display:block;margin-bottom:10px}body[data-year="2"] .image-under{padding:15px 0 5px;border:0}body[data-year="2"] .image-stamp{left:-30px;transform:rotate(-10deg);border:0;font-size:21px;bottom:105px}body[data-year="2"] .hero-copy>.eyebrow .label-accent{transform:rotate(-4deg)}body[data-year="2"] .pain-list li:nth-child(2){transform:rotate(2deg)}body[data-year="2"] .pain-list li{border:1px solid #abc1cb;padding:25px;background:white;box-shadow:4px 4px 0 #d3eef7}body[data-year="2"] .promise h2{transform:rotate(-1deg)}body[data-year="2"] .roadmap{border-top:2px solid #131b20}body[data-year="2"] .step-number{color:#007ca3}body[data-year="2"] .portfolio-cover{transform:rotate(-4deg);border-width:2px}body[data-year="2"] .story-example{border:2px solid #131b20;transform:rotate(1deg)}
/* Year 3: clear proposals, evidence and business discipline. */
body[data-year="3"]{--paper:#fff;--pale:#f0f3f5}body[data-year="3"] .hero{padding-top:47px;padding-bottom:50px;min-height:600px}body[data-year="3"] .hero h1{font-size:clamp(36px,4.1vw,59px);letter-spacing:-.035em}body[data-year="3"] .hero-art{border:1px solid var(--line);padding:20px}body[data-year="3"] .hero-art img{filter:grayscale(1);height:320px}body[data-year="3"] .image-caption-top{position:static;display:block;margin-bottom:16px;font-family:Consolas,monospace}body[data-year="3"] .image-stamp{position:static;display:block;transform:none;padding:10px 15px;font-size:13px;border:0;margin-top:15px;white-space:normal}body[data-year="3"] .image-under{border-bottom:0;padding-bottom:0}body[data-year="3"] .hero-year{font-family:Consolas,monospace;font-size:55px}body[data-year="3"] .promise h2{font-size:clamp(32px,4vw,55px)}body[data-year="3"] .section{padding:80px 0}body[data-year="3"] .portfolio-cover{transform:none;background:#131b20;color:white}body[data-year="3"] .cover-top,body[data-year="3"] .cover-bottom{border-color:#546773}body[data-year="3"] .cover-title{color:var(--accent)}body[data-year="3"] .award-stamp{transform:none}
/* Year 4: deliberate, ambitious, upward-looking. */
body[data-year="4"]{--ink:#f3f7fa;--paper:#10181e;--pale:#19232c;--muted:#b2c3cd;--line:#40525f}body[data-year="4"] .hero{grid-template-columns:1.05fr .95fr;gap:70px;min-height:720px}body[data-year="4"] .hero h1{font-size:clamp(39px,4.9vw,70px);line-height:1.5}body[data-year="4"] .hero-art img{height:450px;object-position:center}body[data-year="4"] .image-stamp{transform:none;left:-26px;bottom:128px;background:#10181e;color:var(--accent);border:1px solid var(--accent);font-size:21px}body[data-year="4"] .hero-year{color:var(--accent)}body[data-year="4"] .hero-actions .dark{background:var(--accent);color:#131b20;border-color:var(--accent)}body[data-year="4"] .promise{background:#10181e;color:var(--accent);border-block:1px solid #40525f}body[data-year="4"] .promise-bottom>p:first-child{color:#d1dee6}body[data-year="4"] .promise-sign{border-color:var(--accent)}body[data-year="4"] .step-number{color:var(--accent)}body[data-year="4"] .road-step{padding-block:45px}body[data-year="4"] .portfolio-cover{transform:none;background:#10181e;border:1px solid var(--accent);color:var(--accent)}body[data-year="4"] .cover-top,body[data-year="4"] .cover-bottom{border-color:#407286}body[data-year="4"] .award-stamp{transform:none}body[data-year="4"] .dark-section{border-block:1px solid #40525f}body[data-year="4"] :is(button,a,summary,[tabindex]):focus-visible{outline-color:var(--accent)}
@media(max-width:1100px){.header-main nav{gap:15px;font-size:12px}.header-main{gap:18px}.hero{gap:38px}.hero-art img{height:330px}.heading-grid{gap:40px}.road-step{gap:25px;grid-template-columns:65px 1fr .7fr}.activity-panel{gap:35px;padding:32px}.promise-bottom{gap:50px}.join-layout{gap:40px}.dates{gap:25px}.dates time>span{font-size:46px}.footer-inner{gap:24px}.grade-inner{gap:20px}.grade-switch{grid-template-columns:repeat(4,85px)}body[data-year="1"] .roadmap{gap:18px}body[data-year="1"] .road-step{padding:22px}body[data-year="2"] .hero{gap:45px}body[data-year="4"] .hero{gap:40px}}
@media(max-width:800px){html{scroll-padding-top:129px}.wrap{width:88%}.section,body[data-year="3"] .section{padding:65px 0}.header-main{height:66px;width:90%}.brand{font-size:17px;gap:9px}.brand small{font-size:6px}.brand-mark{width:35px;height:35px;font-size:28px}.header-main nav{display:none}.header-join{margin-left:auto;font-size:10px;padding:7px 10px}.grade-inner{width:100%;min-height:49px;gap:0}.grade-inner>p,.page-for{display:none}.grade-switch{grid-template-columns:repeat(4,1fr);width:100%}.grade-switch button{font-size:23px;padding:13px 10px}.grade-switch button:first-child{border-left:0}.grade-switch button:last-child{border-right:0}.grade-switch button span{font-size:11px}.question-band{padding:18px 0}.question-band>.wrap{display:block}.question-band .eyebrow{font-size:9px;display:block;margin-bottom:8px}.question-band p{font-size:clamp(16px,3.9vw,25px);line-height:1.7}.mobile-only{display:block}.hero,body[data-year] .hero{grid-template-columns:1fr;padding:36px 0 38px;gap:35px;min-height:0}.hero h1,body[data-year] .hero h1{font-size:clamp(31px,7.7vw,52px);margin:20px 0;line-height:1.55;letter-spacing:-.05em}.hero-copy>.eyebrow{font-size:9px;gap:12px}.label-accent{font-size:11px}.lead{font-size:16px;line-height:2}.hero-actions{gap:18px;margin-top:23px}.button{font-size:14px;padding:14px 20px;min-height:54px}.text-link{font-size:12px}.hero-goal{font-size:12px;margin-top:23px}.hero-art{padding-top:22px}.hero-art img{height:285px}.image-caption-top{font-size:9px}.image-under{padding:15px 0;gap:23px}.hero-year{font-size:58px}.image-under p{font-size:13px}.image-stamp{left:-10px;bottom:99px;font-size:18px;padding:13px}.session-ribbon>.wrap{width:88%;display:block;padding:20px 0}.session-ribbon .eyebrow{font-size:9px}.session-ribbon p{flex-wrap:wrap;gap:5px 16px;margin-top:8px;font-size:12px}.session-ribbon strong{font-size:22px}.session-ribbon p>span{font-size:10px}.session-ribbon a{display:inline-block;font-size:12px;margin-top:12px}.section-head{margin-bottom:30px}.section-head>.eyebrow{font-size:10px;margin-bottom:18px}.heading-grid{grid-template-columns:1fr;gap:22px}h2{font-size:clamp(28px,6.8vw,42px);line-height:1.55;letter-spacing:-.045em}.heading-grid>p{font-size:16px;line-height:2}.pain-list{grid-template-columns:1fr;gap:25px}.pain-list li{padding-top:19px}.pain-list h3{font-size:20px;margin:8px 0 10px}.pain-list p{font-size:16px}.compare-heading{display:block;margin:45px 0 22px}.compare-heading h3{font-size:25px}.compare-heading>p{font-size:14px;margin-top:18px}.compare-header,.compare-row{grid-template-columns:1fr 1fr}.compare-header>span:first-child{display:none}.compare-header>span{font-size:12px;padding:15px 12px;line-height:1.8}.compare-header>span:nth-child(2){border-left:0}.compare-row>h4{grid-column:1/-1;background:var(--paper);padding:9px 12px;font-size:12px}.compare-row>p{font-size:14px;padding:16px 12px;border-left:0;line-height:1.9}.compare-row>p:last-child{border-left:1px solid var(--line)}.small-note{font-size:11px;margin-top:16px}.promise h2,body[data-year="3"] .promise h2{font-size:clamp(28px,7.1vw,45px)}.promise .eyebrow{font-size:10px;margin-bottom:22px}.promise-bottom{grid-template-columns:1fr;gap:30px;margin-top:27px}.promise-bottom>p:first-child{font-size:16px;line-height:2.1}.promise-sign{font-size:21px;padding-left:22px}.road-step{grid-template-columns:42px 1fr;gap:15px;padding:27px 0}.step-number{font-size:33px}.step-content h3{font-size:21px;margin-bottom:13px}.step-content p{font-size:16px;line-height:2}.step-output{grid-column:2;margin-top:5px;padding-left:17px}.step-output>p{font-size:15px}.activity-tabs button{font-size:12px;display:block;text-align:center;padding:16px 5px}.activity-tabs button>span{display:block;font-size:10px;margin-bottom:8px}.activity-panel{grid-template-columns:1fr;padding:25px 21px;gap:27px;min-height:0}.activity-panel h3{font-size:25px;margin:16px 0;line-height:1.6}.activity-panel>div>p:not(.eyebrow){font-size:16px}.activity-panel .eyebrow{font-size:10px}.activity-work li{font-size:15px;gap:12px}.activity-output>p{font-size:16px}.cycle{padding-top:28px}.cycle>.eyebrow{font-size:10px}.cycle>p:not(.cycle-note){display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:16px}.cycle b{display:none}.cycle-note{font-size:12px;line-height:1.9}.output-layout{grid-template-columns:1fr;gap:35px}.portfolio-cover{width:min(95%,420px);margin:8px auto;padding:25px;min-height:360px}.cover-title{font-size:35px}.cover-bottom>p{font-size:13px}.portfolio-item{gap:15px;padding:21px 0}.portfolio-item h3{font-size:20px}.portfolio-item p{font-size:16px}.story-example{padding:24px 20px;margin-top:30px}.story-example>p:not(.eyebrow){font-size:19px}.story-example>.eyebrow{font-size:11px;line-height:1.9}.story-example>span{font-size:10px}.journal-entry{grid-template-columns:90px 75px 1fr;gap:15px;padding:25px 0;position:relative}.journal-entry>time{font-size:17px}.journal-tag{font-size:9px;padding:7px}.journal-entry>div{grid-column:1/-1}.journal-entry h3{font-size:23px}.award-stamp{position:absolute;right:0;top:25px;font-size:15px;padding:10px;margin:0}.faq-layout{grid-template-columns:1fr;gap:30px}.faq-layout>div>.eyebrow{font-size:10px;margin-bottom:18px}.faq-note{font-size:16px;margin-top:20px}.faq-list summary{font-size:16px;gap:8px;grid-template-columns:23px 1fr 18px}.faq-list details>p{padding:0 5px 22px 31px;font-size:16px}.join-section{padding-bottom:48px}.join-section>.wrap>.eyebrow{font-size:10px}.join-section h2{font-size:clamp(28px,7.2vw,44px);line-height:1.6;margin-top:22px}.join-lead{font-size:16px;margin-top:23px}.join-layout{grid-template-columns:1fr;gap:32px;margin-top:30px;padding:27px 0}.session-details>.eyebrow{font-size:10px}.session-details h3{font-size:18px}.dates{gap:25px;margin:22px 0}.dates time{gap:7px}.dates time>span{font-size:43px}.dates small{font-size:10px}.session-details>p{font-size:11px}.join-action{border-top:1px solid #131b2044;padding-top:27px}.join-action>p:not(.mini-heading){font-size:16px}.join-action .button{font-size:13px;max-width:none;padding-inline:12px}.join-action>.small-note{font-size:10px}.join-topics{display:block;margin-top:24px}.join-topics>span{font-size:12px}.join-topics>p{font-size:13px;margin-top:10px}.footer-inner{flex-wrap:wrap;gap:20px}.footer-brand{font-size:22px}.footer-inner>button{font-size:11px;margin-left:auto}.footer-inner>small{width:100%;font-size:8px}.dialog-top{padding:12px 19px;gap:10px}.dialog-top>span:first-child{font-size:15px}.dialog-top>.eyebrow{font-size:8px}.dialog-body{padding:24px 22px}.dialog-body h2{font-size:35px}.dialog-body>p:not(.eyebrow){font-size:12px}.grade-options{gap:10px;margin-top:23px}.grade-options button{display:block;padding:15px}.grade-options button>span{font-size:36px;display:flex;gap:9px;align-items:baseline}.grade-options small{font-size:11px}.grade-options strong{display:block;margin-top:9px;font-size:12px;line-height:1.8}.dialog-bottom{flex-wrap:wrap;gap:10px;margin-top:21px}.dialog-bottom>button{font-size:11px}.dialog-bottom>span{font-size:10px}body[data-year="1"] .hero-art img{border-radius:55px 14px 14px 14px}body[data-year="1"] .image-stamp{width:104px;height:104px;font-size:15px}body[data-year="1"] .roadmap{grid-template-columns:1fr;gap:18px}body[data-year="1"] .road-step{padding:25px}body[data-year="1"] .step-number{margin-bottom:18px}body[data-year="1"] .step-output{margin-top:22px}body[data-year="2"] .hero-art{width:95%;margin:0 auto;padding:10px}body[data-year="2"] .hero-art img{height:300px}body[data-year="2"] .image-stamp{left:-17px;font-size:17px;padding:13px}body[data-year="2"] .image-under p{font-size:12px}body[data-year="3"] .hero-art{padding:18px}body[data-year="3"] .hero-art img{height:270px}body[data-year="4"] .hero-art img{height:355px}body[data-year="4"] .image-stamp{left:-10px;bottom:110px;font-size:17px}body[data-year="4"] .road-step{padding-block:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Situation images and full-image, handwritten manifesto. */
body[data-year] .pain-list li{padding:0;overflow:hidden}
.pain-photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--line)}
.pain-photo img{position:absolute;display:block;width:300%;max-width:none;height:auto;top:50%;transform:translateY(-50%)}
.pain-copy{padding:22px 24px 27px}.pain-copy>span{font:700 12px Arial;color:var(--muted)}
.pain-copy h3{font-size:20px;line-height:1.75;margin:12px 0}.pain-copy p{font-size:16px;line-height:2;color:var(--muted)}
.image-manifesto{padding:0;background:var(--paper)}
.manifesto-figure{margin:0;width:100%}.manifesto-figure>img{width:100%;height:auto;display:block}
.manifesto-caption{display:grid;grid-template-columns:1.4fr .6fr;align-items:center;gap:70px;background:var(--paper);color:var(--ink);padding:38px max(5%,calc((100% - 1320px)/2)) 45px}
.promise .manifesto-caption .eyebrow{font-size:10px;color:var(--muted);margin-bottom:14px}
.manifesto-caption #promise-body{font-size:16px;line-height:2.1;white-space:pre-line}
.manifesto-credit{border-left:3px solid var(--accent);padding-left:30px}.manifesto-credit p{font-size:21px;line-height:1.8}.manifesto-credit>span{display:block;margin-top:16px;font-size:10px;color:var(--muted)}
body[data-year="1"] .pain-photo{border-radius:18px 18px 0 0}
body[data-year="2"] .pain-copy{padding:22px 24px 27px}
body[data-year="3"] .pain-photo{filter:grayscale(.4)}
body[data-year="4"] .pain-list li{background:var(--paper);border:1px solid var(--line)}
@media(max-width:800px){.pain-list{gap:28px}.pain-photo{aspect-ratio:4/3}.pain-copy{padding:20px}.pain-copy h3{font-size:20px}.pain-copy p{font-size:16px}.manifesto-caption{grid-template-columns:1fr;gap:25px;padding:28px 6% 34px}.manifesto-caption #promise-body{font-size:15px;white-space:normal}.manifesto-credit{padding-left:20px}.manifesto-credit p{font-size:18px}.manifesto-credit>span{font-size:10px;margin-top:10px}}
/* Browser feedback: visual comparisons, illustrated steps, session details. */
.manifesto-caption{grid-template-columns:1fr;gap:0}
.manifesto-caption>div{max-width:900px}
.visual-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.compare-scene{border:1px solid var(--line);background:var(--paper);overflow:hidden}
.compare-scene>h4{font-size:18px;line-height:1.5;margin:0;padding:20px 24px}
.compare-future>h4{background:var(--accent);color:#131b20}
.compare-photo{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--pale)}
.compare-photo img{position:absolute;display:block;width:200%;max-width:none;height:auto;top:50%;transform:translateY(-50%)}
.compare-points{list-style:none;padding:8px 24px 18px;margin:0}
.compare-points li{padding:18px 0;border-bottom:1px solid var(--line)}
.compare-points li:last-child{border-bottom:0}
.compare-points span{font-size:11px;font-weight:800;color:var(--muted)}
.compare-points p{font-size:15px;line-height:1.9;margin-top:5px}
.compare-future{border-top-color:var(--accent)}
.compare-future .compare-points p{font-weight:700}
.step-badge{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.step-illustration{width:80px;height:80px;position:relative;overflow:hidden;border-radius:12px;background:#e5f8ff}
.step-illustration img{position:absolute;width:300%;height:auto;max-width:none;display:block;top:50%;transform:translateY(-50%)}
body[data-year="1"] .step-badge{flex-direction:row;align-items:center;justify-content:space-between;margin-bottom:20px}
body[data-year="1"] .step-badge .step-number{margin:0}
#roadmap-title{font-size:clamp(27px,2.8vw,40px)}
.faq-list details>p{white-space:pre-line}
.session-ribbon p{flex-wrap:wrap;gap:8px 20px}
.session-ribbon strong{font-size:21px}
.dates{flex-wrap:wrap;gap:18px 25px}
.dates time{display:flex;align-items:baseline;gap:8px}
.dates time>span{font-size:clamp(36px,3.8vw,52px)}
.session-details>.session-time{font-size:18px;margin:16px 0 12px}
.session-details>.session-workshop{font-size:15px;line-height:1.9;max-width:39em;margin-bottom:16px}
@media(max-width:800px){.visual-comparison{gap:12px}.compare-scene>h4{font-size:13px;padding:14px 10px}.compare-photo{aspect-ratio:3/4}.compare-photo img{width:266.666%;left:-16.666%!important}.compare-future .compare-photo img{left:-150%!important}.compare-points{padding:0 10px 10px}.compare-points li{padding:14px 0}.compare-points p{font-size:13px;line-height:1.8}.compare-points span{font-size:10px}.road-step{grid-template-columns:1fr}.step-badge{flex-direction:row;align-items:center;gap:20px}.step-output{grid-column:1}.step-illustration{width:64px;height:64px}body[data-year="1"] .step-badge{margin-bottom:0}#roadmap-title{font-size:28px}.session-ribbon strong{font-size:20px}.dates{gap:14px 22px}.dates time>span{font-size:38px}.session-details>.session-time{font-size:17px}.session-details>.session-workshop{font-size:15px}}
/* Per-topic illustrated contrast: now and the future. */
.visual-comparison{display:block}
.contrast-columns{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-bottom:18px}
.contrast-columns>span{font-size:18px;font-weight:800;line-height:1.5;padding:18px 24px;border-bottom:3px solid var(--line)}
.contrast-columns>span:last-child{border-color:var(--accent);background:var(--accent);color:#131b20}
.contrast-row{padding:20px 0 26px;border-bottom:1px solid var(--line)}
.contrast-topic{font-size:13px;font-weight:800;letter-spacing:.08em;margin:0 0 18px;color:var(--muted)}
.contrast-pair{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);gap:8px;align-items:stretch}
.contrast-state{display:grid;grid-template-columns:140px minmax(0,1fr);gap:20px;align-items:center;padding:18px;background:var(--paper)}
.contrast-after{border:1px solid var(--accent)}
.contrast-art{position:relative;aspect-ratio:1;overflow:hidden;background:#fff;border-radius:12px}
.contrast-art img{position:absolute;width:200%;height:400%;max-width:none;display:block}
.contrast-copy h5{font-size:19px;line-height:1.6;margin:0 0 12px;text-wrap:balance}
.contrast-copy p{font-size:14px;line-height:1.9;color:var(--muted);margin:0}
.contrast-arrow{align-self:center;text-align:center;color:var(--muted);font-size:24px;line-height:1}
body[data-year="1"] .contrast-state{border-radius:16px}
@media(max-width:1100px){.contrast-state{grid-template-columns:100px minmax(0,1fr);gap:14px;padding:14px}.contrast-copy h5{font-size:17px}}
@media(max-width:800px){.contrast-columns{gap:24px;margin-bottom:8px}.contrast-columns>span{font-size:13px;padding:14px 8px;text-align:center}.contrast-pair{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);gap:4px}.contrast-state{display:flex;flex-direction:column;align-items:stretch;gap:14px;padding:10px 8px}.contrast-art{width:100%;max-width:180px;margin-inline:auto;border-radius:8px}.contrast-copy h5{font-size:15px;line-height:1.65;margin-bottom:10px;text-wrap:initial}.contrast-copy p{font-size:12px;line-height:1.85}.contrast-topic{margin-bottom:12px;font-size:12px}.contrast-row{padding:18px 0 22px}.contrast-arrow{font-size:18px}}
/* Year 2: a portfolio spread with work and process. */
.portfolio-preview[hidden]{display:none}
body[data-year="2"] .portfolio-cover{position:relative;background:#fff;color:#131b20;border:1px solid #bdced6;transform:rotate(-1deg);padding:24px;min-height:0;box-shadow:5px 5px 0 #edf4f7,6px 6px 0 #bdced6,10px 10px 0 #fff,11px 11px 0 #bdced6;margin:8px 12px 8px 0;justify-content:flex-start}
body[data-year="2"] .cover-top{border-color:#c6d2d8;padding-bottom:14px}
body[data-year="2"] .cover-title{font-size:24px;line-height:1.5;margin:18px 0 20px;letter-spacing:-.04em}
body[data-year="2"] .cover-bottom{border-color:#c6d2d8;padding-top:15px;margin-top:16px}
body[data-year="2"] .cover-bottom>span{color:#006387;font-size:10px}
body[data-year="2"] .cover-bottom>p{font-size:11px;line-height:1.8}
.portfolio-spread{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
.project-kicker{font:700 8px/1.5 Arial;letter-spacing:.08em;display:block;margin-bottom:10px;color:#52616b}
.portfolio-poster{height:170px;position:relative;overflow:hidden;background:#e5f8ff;isolation:isolate}
.poster-orbit{position:absolute;width:150px;height:150px;left:-30px;top:-25px;border:20px solid #00c1f9;border-radius:50%;transform:rotate(-20deg)}
.poster-disc{position:absolute;width:85px;height:85px;background:#131b20;border-radius:50%;right:-15px;top:25px}
.poster-caption{position:absolute;bottom:17px;left:14px;z-index:1;font:900 22px/1.05 Arial;letter-spacing:-.06em}
.portfolio-project h3{font-size:12px;margin-top:10px;line-height:1.6}
.portfolio-project p{font-size:9px;color:#52616b;line-height:1.8;margin-top:4px}
.portfolio-process{border-left:1px solid #c6d2d8;padding-left:15px}
.process-sketch{display:flex;align-items:center;justify-content:space-around;height:56px;background:#f4f7f8;margin:0 0 9px}
.process-sketch i{width:25px;height:30px;border:1px solid #70828e;transform:rotate(-8deg);background:linear-gradient(0deg,#00c1f9 0 25%,transparent 25%)}
.process-sketch i:nth-child(2){transform:rotate(4deg);border-radius:50%;height:25px}
.process-sketch i:nth-child(3){transform:rotate(-3deg);background:#00c1f9}
.portfolio-process>span:not(.project-kicker){font:700 7px Arial;letter-spacing:.05em}
.portfolio-process dl{margin:14px 0 0}
.portfolio-process dt{font-size:9px;font-weight:800;margin-top:10px}
.portfolio-process dd{font-size:9px;line-height:1.7;margin:3px 0 0;color:#52616b}
.portfolio-contact-sheet{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #c6d2d8;padding-top:15px;margin-top:16px}
.portfolio-contact-sheet figure{overflow:hidden}
.portfolio-contact-sheet figure>img{width:100%;height:85px;object-fit:cover;display:block}
.portfolio-sample-photo{height:85px;overflow:hidden;position:relative}
.portfolio-sample-photo img{width:200%;height:100%;position:absolute;left:-100%;object-fit:cover;display:block}
.portfolio-contact-sheet figcaption{font-size:8px;font-weight:700;margin-top:5px}
.portfolio-sample-note{font-size:8px;color:#52616b;margin-top:12px}
@media(max-width:800px){body[data-year="2"] .portfolio-cover{width:94%;max-width:420px;padding:20px;margin:8px auto 20px}body[data-year="2"] .cover-title{font-size:22px}.portfolio-spread{gap:13px}.portfolio-process{padding-left:11px}.portfolio-poster{height:155px}.poster-caption{font-size:20px}.portfolio-contact-sheet figure>img,.portfolio-sample-photo{height:80px}}
/* Put the answers first in the visual hierarchy. */
.portfolio-item h3{font-size:13px;font-weight:600;line-height:1.8;color:var(--muted);margin-bottom:10px}
.portfolio-item p{font-size:22px;font-weight:800;line-height:1.8;color:var(--ink)}
.comparison-intro{font-size:14px;font-weight:800;color:var(--ink);margin-bottom:14px;padding-left:12px;border-left:3px solid var(--accent)}
@media(max-width:800px){.portfolio-item h3{font-size:12px}.portfolio-item p{font-size:20px;line-height:1.85}.comparison-intro{font-size:13px;margin-bottom:12px}}
body[data-year="1"] .cover-title{font-size:clamp(20px,2.8vw,35px)}
@media(max-width:800px){body[data-year="1"] .cover-title{font-size:clamp(20px,5.5vw,30px)}}
