﻿@font-face{font-family:Guide;src:url('/assets/fonts/InterLatin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:light;--paper:#faf8f2;--white:#fffefa;--ink:#203e35;--muted:#526159;--accent:#a4381b;--line:#cbd3c7;--mint:#e8eee3;--peach:#f5e6d6;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px;scrollbar-color:#809483 var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.7 Guide,Arial,sans-serif}::selection{background:#ecd0bb;color:var(--ink)}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:hover{color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}svg{flex-shrink:0}[hidden]{display:none!important}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance;line-height:1.14;font-weight:620;letter-spacing:-.035em}h1{font-size:clamp(3rem,6.4vw,6rem)}h2{font-size:clamp(2rem,3.3vw,3.3rem)}h3{font-size:1.22rem;letter-spacing:-.02em;line-height:1.35}p{color:var(--muted)}p+p{margin-top:20px}ol,ul{padding-left:24px}li+li{margin-top:12px}.wrap{width:calc(100% - 112px);max-width:1280px;margin-inline:auto}.section{padding-block:100px}.lead{font-size:clamp(1.12rem,1.5vw,1.3rem);line-height:1.65}.quiet{font-size:.88rem}.skip{position:fixed;top:12px;left:20px;z-index:100;padding:12px 20px;background:var(--white);border:1px solid var(--accent);transform:translateY(-180%)}.skip:focus{transform:none}.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:1.1rem;font-weight:720;letter-spacing:-.03em;text-decoration:none;flex-shrink:0}.site-nav{display:flex;align-items:center;gap:21px;font-size:.86rem;font-weight:580}.site-nav a{display:flex;align-items:center;min-height:44px;text-decoration:none;white-space:nowrap}.site-nav [aria-current]{box-shadow:inset 0 -2px var(--accent);color:var(--accent)}.site-nav .nav-learn{border:1px solid var(--ink);border-radius:5px;padding:8px 15px;margin-left:6px}.menu-toggle{display:inline-flex;align-items:center;gap:16px;min-height:44px;border:1px solid var(--line);background:transparent;border-radius:5px;padding:8px 12px;color:var(--ink)}.breadcrumbs{font-size:.82rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:0}.breadcrumbs li{margin:0;display:flex;align-items:center;gap:12px;min-height:44px}.breadcrumbs li+li:before{content:"/";color:var(--muted)}.breadcrumbs a{display:inline-flex;min-height:44px;align-items:center}.hero{background:#f1ecdf;border-bottom:1px solid var(--line)}.hero>.wrap{padding-top:22px}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:64px;align-items:center;padding-block:28px 64px}.hero-copy h1{line-height:1.04}.hero-copy em{font-family:Georgia,serif;font-weight:400;color:var(--accent)}.hero-copy .lead{max-width:520px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:54px;padding:14px 22px;border-radius:5px;background:var(--ink);color:var(--white);font-size:1rem;font-weight:580;text-decoration:none;transition:background .2s,transform .2s}.button:hover{color:var(--white);background:#315849;transform:translateY(-2px)}.hero-copy .button{margin-top:30px}.hero-copy .quiet{margin-top:18px}.arrow{transition:transform .25s var(--ease)}a:hover>.arrow{transform:translateX(4px)}.hero-art{min-width:0}.hero-art img{width:100%}.hero-art figcaption{text-align:center;font-size:.82rem;padding-top:10px;color:var(--muted)}.hero-rule{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #bcc7b8;padding-block:22px;font-size:.82rem;font-weight:580}.path-layout{display:grid;grid-template-columns:.85fr 1.25fr;gap:110px;align-items:start}.path-intro{position:static}.path-intro p{margin-top:26px}.text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-weight:580}.path-intro .text-link{margin-top:26px}.guide-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.guide-list li{margin:0;border-bottom:1px solid var(--line)}.guide-list a{display:grid;grid-template-columns:44px 1fr 24px;gap:22px;align-items:center;min-height:126px;padding-block:24px;text-decoration:none;transition:background .25s,padding .25s var(--ease)}.guide-list a:hover{background:var(--mint);padding-inline:10px;color:var(--ink)}.path-step{font-family:Georgia,serif;font-size:1.5rem;color:var(--accent);width:44px;height:44px;display:grid;place-items:center;border:1px solid #b7c2b0;border-radius:50%}.guide-list strong{display:block;font-size:1.35rem;font-weight:600;line-height:1.25;letter-spacing:-.025em}.guide-summary{display:block;font-size:.95rem;color:var(--muted);margin-top:10px;line-height:1.6}.pause-band{background:var(--ink);color:var(--white);padding-block:76px}.pause-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.pause-layout h2{font-size:clamp(2rem,3.7vw,3.7rem)}.pause-layout p{color:#d6e0d1}.pause-layout a{color:#f5d9bd;margin-top:24px}.pause-layout a:hover{color:var(--white)}.pause-layout :focus-visible{outline-color:#f5d9bd}.learning-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:100px;align-items:start}.learning-layout .lead{margin-block:28px 16px}.learning-layout>div>p{max-width:49ch}.form-placeholder{border:1px solid #8c9e8a;min-height:360px;display:grid;place-items:center;background:var(--white);padding:28px;text-align:center}.form-placeholder p{color:var(--muted)}.form-slot{min-width:0}.form-slot iframe{display:block}.chapter-hero{padding-block:22px 60px;border-bottom:1px solid var(--line);background:#f1ecdf}.chapter-hero h1{font-size:clamp(2.75rem,5.2vw,5.1rem);max-width:1080px;margin-top:26px}.chapter-hero .lead{max-width:68ch;margin-top:30px}.education-note{margin-top:26px;font-size:.85rem;font-weight:600;color:var(--ink)}.reading-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:90px;align-items:start;padding-block:72px 100px}.contents{position:sticky;top:120px;font-size:.88rem}.contents>p{font-weight:650;color:var(--ink)}.contents ol{list-style:none;padding:0;margin:18px 0 20px;border-top:1px solid var(--line)}.contents li{margin:0;border-bottom:1px solid var(--line)}.contents a{display:block;min-height:44px;padding-block:12px;text-decoration:none;line-height:1.5}.contents a:hover{text-decoration:underline}.contents-back{font-size:.82rem;color:var(--accent)}.article{min-width:0;max-width:76ch}.article-section{scroll-margin-top:120px;padding-block:0 56px;margin-bottom:56px;border-bottom:1px solid var(--line)}.article-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.article h2{font-size:clamp(1.9rem,2.8vw,2.7rem);margin-bottom:26px;max-width:28ch}.article h3{margin-top:30px;margin-bottom:14px}.article p{line-height:1.8}.article ul,.article ol{margin-block:26px;color:var(--muted)}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-block:34px}.comparison>div{border-top:2px solid var(--ink);padding-top:18px}.comparison dt{font-weight:650;line-height:1.4;margin-bottom:12px}.comparison dd{margin:0;color:var(--muted);font-size:.96rem}.patterns{margin-block:28px}.patterns>div{padding-block:24px;border-top:1px solid var(--line)}.patterns dt{font-weight:620;font-size:1.15rem;line-height:1.4;letter-spacing:-.02em}.patterns dd{margin:12px 0 0;color:var(--muted)}.note{background:var(--peach);border:1px solid #d7bfa8;border-radius:12px;padding:28px;margin-top:34px}.note h3{margin-top:0}.note p{color:#604a3b}.steps{padding-left:26px}.steps>li{padding-left:14px;margin-top:28px}.steps>li::marker{color:var(--accent);font-weight:600}.steps h3{margin-top:0}.checklist{list-style:none;padding:0!important}.checklist li{position:relative;padding:17px 0 17px 32px;border-top:1px solid var(--line);margin:0}.checklist li:before{content:"";position:absolute;left:2px;top:24px;width:12px;height:12px;border:1px solid #72866f;border-radius:2px}.resources{padding-left:20px}.resources a{display:inline-block;padding-block:10px;min-height:44px}.resources li+li{margin-top:0}.source{font-size:.9rem;margin-top:28px}.lineage{border:1px solid var(--line);border-radius:12px;padding:24px;margin-block:30px;background:var(--mint)}.lineage>div{position:relative;display:flex;flex-direction:column;gap:5px;padding:0 0 25px 28px;border-left:1px solid #8b9f82}.lineage>div:before{content:"";position:absolute;width:10px;height:10px;border:1px solid var(--ink);background:var(--paper);border-radius:50%;left:-6px;top:8px}.lineage>div:nth-child(2){margin-left:16px}.lineage>div:last-child{padding-bottom:0;margin-left:32px;border-left-color:transparent}.lineage span{font-size:.88rem;color:var(--muted)}.table-region{max-width:100%;overflow-x:auto;margin-block:30px;scrollbar-color:#809483 var(--mint)}table{border-collapse:collapse;width:100%;min-width:590px;font-size:.85rem;line-height:1.6;font-variant-numeric:tabular-nums}caption{text-align:left;font-weight:600;padding-bottom:16px;color:var(--muted)}th,td{padding:18px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}thead{background:var(--ink);color:var(--white)}tbody th{width:32%;font-weight:600}tbody tr:nth-child(even){background:var(--mint)}.next-section{background:var(--mint);padding-block:56px;border-block:1px solid var(--line)}.next-layout{display:flex;align-items:center;justify-content:space-between;gap:60px}.next-layout>div{max-width:720px}.next-layout p{font-size:.85rem;margin-bottom:14px}.next-layout h2{font-size:clamp(1.8rem,2.8vw,2.7rem)}.next-layout .button{flex-shrink:0}.error-links{max-width:800px}.error-links>.text-link{margin-bottom:35px}.site-footer{padding-block:42px 28px;background:#eeeee4;border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-top>p{font-family:Georgia,serif;font-size:1.15rem}.footer-nav{display:flex;flex-wrap:wrap;gap:8px 28px;margin-block:26px}.footer-nav a{display:flex;align-items:center;min-height:44px;font-size:.87rem}.footer-bottom{display:flex;justify-content:space-between;gap:35px;border-top:1px solid var(--line);padding-top:24px;font-size:.78rem}.footer-bottom p{max-width:85ch}.footer-bottom>span{white-space:nowrap;color:var(--muted)}

@media(max-width:1180px){.wrap{width:calc(100% - 64px)}.header-inner{flex-wrap:wrap;gap:0;padding-block:15px;min-height:80px}.site-nav{width:100%;flex-wrap:wrap;font-size:1rem;gap:8px 26px;padding-top:20px}.site-nav .nav-learn{margin-left:0}.menu-enabled .site-nav{display:none}.menu-enabled .site-nav.is-open{display:flex}.hero-grid{gap:32px}.path-layout,.pause-layout,.learning-layout{gap:58px}.reading-layout{grid-template-columns:200px minmax(0,1fr);gap:50px}.next-layout{align-items:flex-start;flex-direction:column;gap:28px}}
@media(max-width:900px){.section{padding-block:72px}.hero-rule{font-size:.74rem;gap:16px}.path-layout{grid-template-columns:1fr 1.25fr;gap:36px}.learning-layout{gap:40px}.reading-layout{grid-template-columns:1fr;gap:44px;padding-block:40px 72px}.contents{position:static;max-width:76ch}.contents ol{display:grid;grid-template-columns:1fr 1fr;column-gap:26px}.contents-back{display:inline-block!important}.article{max-width:76ch}.pause-layout{gap:45px}.hero-copy .lead{font-size:1.06rem}.guide-list a{gap:16px;grid-template-columns:38px 1fr 24px}.path-step{width:36px;height:36px}.footer-bottom{flex-direction:column;gap:16px}}
@media(max-width:650px){html{scroll-padding-top:100px}.wrap{width:calc(100% - 40px)}.brand{font-size:1rem;gap:10px}.brand img{width:38px;height:38px}.hero-grid{grid-template-columns:1fr;padding-block:22px 38px;gap:30px}.hero-copy h1{font-size:clamp(2.7rem,12.8vw,4.5rem)}.hero-copy .lead{margin-top:24px;font-size:1.12rem}.hero-art{max-width:440px;margin-inline:auto}.hero-art figcaption{font-size:.78rem}.hero-rule{flex-direction:column;gap:10px;padding-block:20px;font-size:.85rem}.hero-rule>span{display:flex;align-items:center;gap:12px}.hero-rule>span:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}.section{padding-block:58px}.path-layout,.pause-layout,.learning-layout{grid-template-columns:1fr;gap:34px}.path-intro p{margin-top:20px}.path-intro .text-link{margin-top:18px}.guide-list a{min-height:120px;padding-block:23px;gap:14px;grid-template-columns:36px 1fr 24px}.guide-list strong{font-size:1.28rem}.guide-summary{font-size:.9rem}.pause-band{padding-block:56px}.pause-layout h2{font-size:2.3rem}.learning-layout .lead{margin-top:24px}.form-placeholder{min-height:260px}.chapter-hero{padding-block:18px 40px}.chapter-hero h1{font-size:clamp(2.45rem,10.8vw,3.5rem);margin-top:20px;overflow-wrap:break-word}.chapter-hero .lead{margin-top:24px}.contents ol{grid-template-columns:1fr}.contents li:last-child{border-bottom:1px solid var(--line)}.reading-layout{gap:35px;padding-bottom:58px}.article h2{font-size:1.95rem}.article-section{scroll-margin-top:108px;padding-bottom:38px;margin-bottom:38px}.comparison{grid-template-columns:1fr;gap:24px}.note{padding:24px}.table-region{margin-inline:0}th,td{padding:16px 12px}.next-section{padding-block:44px}.next-layout .button{max-width:100%}.footer-top{align-items:flex-start;flex-direction:column;gap:16px}.footer-nav{gap:4px 22px}.site-footer{padding-top:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover,a:hover>.arrow{transform:none}}

.article p a,.learning-layout p a{display:inline-block;min-height:44px;padding-block:7px}.article .table-hint{font-size:.85rem;margin-top:-14px}
.family-role{font-size:1rem;line-height:1.5;margin:0 0 18px;font-weight:600;letter-spacing:0}
.form-embed iframe{min-height:inherit}
#learn-more{scroll-margin-top:120px}

/* The home scene shares its route and checkpoints with the topic illustrations. */
.hero{background:var(--peach);position:relative}
.hero-grid{grid-template-columns:1.04fr 1.1fr;gap:48px;padding-block:34px 54px;min-height:586px}
.hero-art{width:100%;position:relative}
.safety-scene{display:block;width:100%;height:auto;overflow:visible}
.hero-art figcaption{max-width:38ch;margin:8px auto 0;line-height:1.5}
.hero-rule{list-style:none;margin:0;padding:24px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;font-size:1rem;font-weight:400;border-top-color:#b7baa7}
.hero-rule li{margin:0;display:flex;flex-direction:column;gap:3px;color:var(--muted)}
.hero-rule span{font-weight:650;color:var(--ink)}
.hero-rule li+li{border-left:1px solid #b7baa7;padding-left:32px}
.hero-copy .quiet{font-size:1rem}
.path-layout{grid-template-columns:.78fr 1.3fr;gap:100px}
@media(min-width:901px){.path-intro{position:sticky;top:120px;align-self:start}}
.topic-stops{min-width:0;border-top:1px solid var(--line)}
.topic-stop{display:grid;grid-template-columns:112px minmax(0,1fr);gap:30px;padding-block:42px;border-bottom:1px solid var(--line)}
.topic-motif{color:var(--ink);align-self:start;background:var(--mint);border-radius:50%;aspect-ratio:1;display:grid;place-items:center}
.topic-motif svg{width:100%;height:auto;transition:transform .3s var(--ease)}
.topic-stop:nth-child(even) .topic-motif{background:var(--peach);border-radius:12px}
.topic-stop:focus-within .topic-motif svg{transform:translateY(-3px)}
.topic-copy h3{font-size:clamp(1.5rem,2.05vw,2rem);line-height:1.2}
.topic-copy p{margin-top:18px;max-width:46ch}
.topic-copy .text-link{margin-top:18px;line-height:1.5;gap:14px;text-decoration-color:#8c9e8a}
.topic-copy .text-link .arrow{margin-left:auto}
.text-link:focus-visible>.arrow{transform:translateX(4px)}
.button:active{transform:translateY(0)}
@media(hover:hover){.topic-stop:hover .topic-motif svg{transform:translateY(-3px)}}
@media(prefers-reduced-motion:no-preference){
  .scene-route{stroke-dasharray:1;animation:route-assemble 1.2s var(--ease) both}
  .scene-piece{transform-box:fill-box;transform-origin:center;animation:scene-assemble .7s var(--ease) both}
  .scene-key{animation-delay:.08s}.scene-backup{animation-delay:.27s}.scene-request{animation-delay:.46s}.scene-pause{animation-delay:.65s}
  .scene-tick{animation:checkpoint-appear .35s var(--ease) .9s both}
  @keyframes route-assemble{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
  @keyframes scene-assemble{from{opacity:0;transform:translateY(16px) rotate(-3deg)}to{opacity:1;transform:none}}
  @keyframes checkpoint-appear{from{opacity:0}to{opacity:1}}
}
@media(max-width:1180px){.hero-grid{gap:24px;min-height:500px}.path-layout{gap:50px}.topic-stop{grid-template-columns:86px minmax(0,1fr);gap:22px}}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr 1fr;min-height:460px}.hero-rule{gap:20px}.hero-rule li+li{padding-left:20px}.path-layout{grid-template-columns:1fr;gap:38px}.path-intro{max-width:38rem}.topic-stop{grid-template-columns:112px minmax(0,1fr);gap:30px}.topic-copy h3{font-size:1.8rem}}
@media(max-width:650px){
  .hero-grid{grid-template-columns:1fr;gap:28px;min-height:0;padding-block:22px 32px}
  .hero-art{max-width:440px}.hero-art figcaption{font-size:.88rem;margin-top:14px}
  .hero-rule{grid-template-columns:1fr;gap:0;padding-block:8px;font-size:1rem}
  .hero-rule li{flex-direction:row;justify-content:space-between;gap:12px;padding-block:12px}
  .hero-rule li+li{border-left:0;border-top:1px solid #c8c6b4;padding-left:0}
  .hero-rule span:before{display:none}
  .topic-stop{grid-template-columns:58px minmax(0,1fr);gap:18px;padding-block:30px}
  .topic-copy h3{font-size:1.5rem}.topic-copy p{margin-top:14px}.topic-copy .text-link{font-size:1rem;align-items:flex-start;padding-block:8px}
  .topic-copy .arrow{margin-top:1px}.path-layout{gap:30px}
}
@media(prefers-reduced-motion:reduce){.topic-stop .topic-motif svg,.text-link:focus-visible>.arrow{transform:none}}
