:root{--paper:#f7f7f0;--ink:#182d32;--muted:#606e70;--accent:#cb482d;--line:#d8ddd5;--bs-body-color:var(--ink);--bs-body-bg:var(--paper);--bs-link-color:var(--ink);--bs-link-hover-color:var(--accent)}
html{scroll-behavior:smooth;scroll-padding-top:30px}body{font-family:Inter,Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{text-underline-offset:4px}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.container{max-width:1240px}.site-header{border-bottom:1px solid var(--line)}.navbar{min-height:104px}.navbar-brand{font-weight:700;font-size:20px;letter-spacing:-.6px;line-height:1.15;color:var(--ink)}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--ink);color:var(--paper);margin-right:10px;font-weight:400}.brand-caption{display:block;font-family:monospace;font-size:9px;letter-spacing:2px;margin:8px 0 0 44px;color:var(--muted)}.nav-link{font-size:14px;color:var(--ink)}.hero{padding-top:88px;padding-bottom:70px}.eyebrow{font-family:monospace;font-size:11px;font-weight:600;letter-spacing:1.5px;margin-bottom:25px}.small-square{display:inline-block;width:7px;height:7px;background:var(--accent);margin-right:9px}h1,h2,h3{font-weight:600;letter-spacing:-1.6px;line-height:1.12}h1{font-size:clamp(44px,5.6vw,76px);margin-bottom:28px}h1>span{color:var(--accent)}.hero-description{font-size:19px;max-width:610px;color:var(--muted);line-height:1.65}.btn{padding:14px 22px;border-radius:4px;font-size:14px;font-weight:600}.btn span{margin-left:20px}.btn-accent{background:var(--accent);border-color:var(--accent);color:white}.btn-accent:hover,.btn-accent:focus{background:#ac381f;color:#fff}.btn-outline-dark{border-color:var(--line);color:var(--ink)}.route-visual{background:var(--ink);color:#f6f7ef;border-radius:6px;padding:25px 27px;position:relative}.visual-top{display:flex;justify-content:space-between;border-bottom:1px solid #496064;padding-bottom:17px;margin-bottom:25px;font:10px monospace;letter-spacing:1.4px;color:#bbc9c6}.route-step{display:flex;gap:17px;position:relative;padding-bottom:27px}.route-step:not(.last):before{content:'';position:absolute;left:4px;top:10px;bottom:0;border-left:1px dashed #68817c}.step-dot{flex:0 0 9px;height:9px;background:#92aaa0;border-radius:50%;margin-top:5px;z-index:1}.accent-dot{background:#e9b760}.route-step small{font:9px monospace;letter-spacing:1.3px;color:#b7cac3;display:block;margin-bottom:5px}.route-step strong{font:20px monospace;letter-spacing:-.5px;overflow-wrap:anywhere}.route-step p{font-size:12px;color:#b7cac3;margin:4px 0 0}.visual-bottom{font-size:10px;border-top:1px solid #496064;padding-top:15px;color:#b7cac3}.visual-bottom span{margin-right:12px;color:#e9b760}.purpose{border-block:1px solid var(--line);padding-top:25px;padding-bottom:25px}.purpose .eyebrow{font-size:10px}.purpose p{font-size:15px}.section-space{padding-top:78px;padding-bottom:78px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:14px}h2{font-size:clamp(31px,3.1vw,43px)}.section-heading>p{font-size:13px;color:var(--muted);margin-bottom:5px}.start-panel{border:1px solid var(--line);padding:31px;border-radius:5px}.tag{display:inline-block;font:10px monospace;letter-spacing:1px;color:var(--muted);margin-bottom:25px}.start-panel h3{font-size:27px;letter-spacing:-.8px;margin-bottom:16px}.start-panel p{font-size:14px;color:var(--muted)}.text-link{font-size:14px;font-weight:600}.text-link span{margin-left:18px}.panel-divider{border-top:1px solid var(--line);margin:25px 0 18px}.link-row{display:flex;flex-wrap:wrap;column-gap:20px;row-gap:8px}.link-row a{font-size:13px}.server-panel{background:#eef0e7}.server-options{margin-top:20px}.server-options>a{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #d1d8cc;padding:14px 0;text-decoration:none;font-size:12px}.server-options b{font-weight:600;white-space:nowrap}.contents{position:sticky;top:30px}.contents .eyebrow{font-size:10px}.contents nav{display:flex;flex-direction:column;gap:15px}.contents nav a{display:flex;gap:13px;font:10px monospace;color:#7b8582;text-decoration:none}.contents nav span{font:13px Arial,sans-serif;color:var(--ink)}.contents nav a:hover span{color:var(--accent)}.method{display:grid;grid-template-columns:42px 1fr;gap:14px;border-top:1px solid var(--line);padding:30px 0}.method:first-child{padding-top:0;border:0}.method-number{font:12px monospace;color:var(--accent);padding-top:5px}.method h3{font-size:24px;letter-spacing:-.6px;margin-bottom:14px}.method p{color:var(--muted);font-size:14px}.service-links{display:flex;flex-wrap:wrap;gap:8px}.service-links a{border:1px solid var(--line);padding:5px 10px;border-radius:3px;font-size:12px;text-decoration:none}.service-links a:hover{border-color:var(--accent)}.resource-strip{border-left:2px solid #b8c2b2;padding-left:17px;margin-top:22px}.resource-strip>span{display:block;font:9px monospace;letter-spacing:1.2px;margin-bottom:10px;color:var(--muted)}.additional-note{display:flex;align-items:start;gap:20px;background:#eceee5;border-radius:4px;padding:22px;font-size:13px}.additional-note>span{color:var(--accent);font-size:24px;line-height:1}.additional-note strong{font-weight:600}.week-section{background:var(--ink);color:var(--paper)}.week-section .eyebrow{color:#c3cec6}.week-section h2{font-size:clamp(36px,4vw,52px);line-height:1.15}.accent-text{color:#edaa72}.week-description{color:#cad5cf;font-size:16px;max-width:335px;margin:25px 0}.source-note{font-size:11px;color:#b3c4bd;max-width:330px}.lesson-list>a{display:flex;align-items:center;gap:20px;color:var(--paper);text-decoration:none;border-top:1px solid #486063;padding:22px 4px}.lesson-list>a:last-child{border-bottom:1px solid #486063}.lesson-list>a:hover{color:#edaa72}.lesson-number{font:11px monospace;color:#b3c4bd}.lesson-list strong{font-size:17px;display:block;font-weight:500}.lesson-list div>span{font-size:12px;color:#b3c4bd;display:block;margin-top:3px}.lesson-arrow{margin-left:auto;font-size:24px;color:#edaa72}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:35px 0;font-size:12px}.footer-inner strong{font-weight:600}.footer-inner p{margin:5px 0 0;color:var(--muted);font-size:11px}.footer-inner>a{font-size:11px}.skip-link{position:absolute;left:12px;top:-80px;background:var(--ink);color:#fff;padding:10px;z-index:100}.skip-link:focus{top:10px}
@media(max-width:991px){.route-visual{max-width:100%}.hero{padding-top:55px}.contents{position:static}.contents nav{display:grid;grid-template-columns:1fr 1fr;gap:16px}.section-heading{align-items:start;flex-direction:column;gap:10px}.section-space{padding-block:55px}}
@media(max-width:575px){.container{padding-left:22px;padding-right:22px}.navbar{min-height:86px}.navbar-brand{font-size:17px}.brand-caption{font-size:8px}.hero{padding-top:42px;padding-bottom:42px}h1{font-size:44px;letter-spacing:-1.9px}.hero-description{font-size:16px}.eyebrow{font-size:9px;letter-spacing:1px}.btn{padding:12px 16px;font-size:12px}.btn span{margin-left:9px}.start-panel{padding:24px}.method{grid-template-columns:26px 1fr;gap:10px}.method h3{font-size:22px}.contents nav{grid-template-columns:1fr}.footer-inner{align-items:start;flex-direction:column;gap:20px}.server-options>a{flex-wrap:wrap;gap:5px}.lesson-list>a{gap:14px}.lesson-list strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
