:root{color-scheme:light;--paper:#faf6ec;--ink:#23342b;--muted:#56594c;--red:#9e3526;--green:#20362d;--line:#d8cdb7;--wash:#f0e8d7;--serif:Georgia,"Times New Roman",serif}

*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.6 system-ui,sans-serif}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button,input{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b34230;outline-offset:4px}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{line-height:1.12}
h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em}
h1{font-size:clamp(3rem,6.15vw,6.2rem)}
h2{font-size:clamp(2.15rem,4vw,3.55rem)}
h3{font-size:1.13rem}
h1 em{color:var(--red);font-weight:inherit}
.wrap{width:min(1160px,calc(100% - 72px));margin-inline:auto}
.skip{position:absolute;left:1rem;top:-9rem;background:white;padding:.7rem;z-index:10}
.skip:focus{top:1rem}
.sitehead{border-bottom:1px solid var(--line)}
.navrow,.footrow{min-height:73px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-weight:760;letter-spacing:-.025em}
.navrow nav{display:flex;align-items:center;gap:clamp(14px,3vw,36px);font-size:.88rem;font-weight:650}
.navrow nav a{text-decoration:none}
.navrow nav a:hover,.textlink:hover{color:var(--red)}
.hero{display:grid;grid-template-columns:1.28fr .82fr;gap:clamp(24px,5vw,78px);align-items:center;padding-block:clamp(40px,7vw,95px)}
.eyebrow{color:var(--red);font-weight:780;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;display:flex;align-items:center;gap:.65rem}
.dash{width:25px;height:1px;background:currentColor;flex:none}
.hero h1,.lesson h1,.practice h1{margin-top:15px}
.lead{color:var(--muted);font-size:clamp(1.05rem,1.65vw,1.25rem);max-width:33rem;margin-top:20px}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px 25px;margin-top:26px}
.button{background:var(--red);color:#fff8ef;text-decoration:none;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:14px;font-size:.92rem;font-weight:720;border-radius:4px}
.button:hover{background:#7c281d}
.textlink{font-weight:750;text-underline-offset:4px;font-size:.9rem}
.hero-art{background:var(--wash);border:1px solid var(--line);padding:12px;box-shadow:6px 6px 0 #e5d9c4;transform:rotate(1.1deg)}
.hero-art img,.lesson-art img{width:100%;height:auto}
.art-heading,.hero-art figcaption{display:flex;justify-content:space-between;gap:8px;font-size:.66rem;font-weight:750;letter-spacing:.12em;color:#5c503c}
.art-heading{padding:1px 2px 8px}
.art-heading span[lang]{color:var(--red)}
.hero-art figcaption{padding:9px 2px 0}
.facts{background:var(--green);color:#faf4e8}
.factsrow{display:grid;grid-template-columns:repeat(3,1fr);padding-block:16px;text-align:center}
.factsrow span{font-size:.82rem}
.factsrow span+span{border-left:1px solid #647368}
.factsrow strong{font-family:var(--serif);font-weight:500;font-size:1.6rem;color:#f2c29c;margin-right:8px}
.section{padding-block:clamp(35px,6vw,74px)}
.section h2,.plan-callout h2{margin-top:8px}
.section-intro,.plan-callout p:not(.eyebrow){margin-top:8px;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:25px}
.card{display:flex;flex-direction:column;text-decoration:none;border:1px solid var(--line);background:#fffaf0;border-radius:5px;overflow:hidden}
.card:hover{border-color:var(--red)}
.card img{width:100%;aspect-ratio:1.48;object-fit:cover}
.cardtext{padding:16px;display:flex;flex-direction:column;flex:1}
.card .eyebrow{justify-content:space-between;margin-bottom:6px}
.cn{font-size:.78rem}
.card p:not(.eyebrow){font-size:.88rem;color:var(--muted);margin:8px 0 14px}
.card .textlink{color:var(--red);margin-top:auto}
.plan-callout{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:clamp(21px,4vw,42px);background:var(--wash);border:1px solid var(--line);border-left:4px solid var(--red);margin-bottom:clamp(35px,6vw,74px)}
footer{border-top:1px solid var(--line);color:var(--muted);font-size:.86rem}
.footrow{min-height:66px;flex-wrap:wrap;gap:8px 20px;padding-block:12px}
.back{display:inline-block;text-underline-offset:4px;font-size:.9rem;margin-bottom:23px}
.lesson,.practice{padding-block:clamp(29px,5vw,62px)}
.lesson-hero{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:26px;padding-bottom:30px;border-bottom:1px solid var(--line)}
.lesson h1,.practice h1{font-size:clamp(2.85rem,6vw,5.4rem)}
.label{color:var(--red);margin-top:9px;font-weight:700}
.label span{margin-left:.4rem}
.lesson-art{background:var(--wash);padding:10px;border:1px solid var(--line);max-width:410px;justify-self:end;width:100%}
.lesson-art img{max-height:310px;object-fit:contain;background:#e9dfcb}
.lesson-art figcaption{font-size:.82rem;color:var(--muted);padding:5px 2px 0}
.lesson-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(20px,5vw,66px);margin-top:32px}
.lesson-grid h2{font-size:clamp(1.65rem,3.6vw,2.6rem)}
.steps{margin:14px 0 0;padding:0;list-style:none;counter-reset:steps}
.steps li{counter-increment:steps;display:flex;gap:14px;align-items:flex-start;padding:15px 0;border-bottom:1px solid var(--line)}
.steps li::before{content:counter(steps,decimal-leading-zero);font-weight:760;color:var(--red);min-width:2rem}
.steps p{margin-top:5px;color:var(--muted)}
.notes{background:var(--wash);padding:21px;border:1px solid var(--line);align-self:start}
.notes h2{margin-top:7px}
.notes dt{font-weight:740}
.notes dd{margin:0 0 8px;color:var(--muted)}
.notes hr{border:0;border-top:1px solid var(--line);margin:14px 0}
.notes p:last-child{margin-top:5px}
.practice-note,.reference{font-size:.88rem;color:var(--muted);margin-top:22px}
.practice-note{border-left:3px solid var(--red);padding-left:11px}
.practice{max-width:800px}
.tracker{border:1px solid var(--line);background:var(--wash);padding:18px;margin:25px 0 18px}
.tracker-label{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-weight:730}
.tracker-actions{display:flex;flex-wrap:wrap;gap:8px}
.tracker button{background:none;border:1px solid #a99b82;border-radius:3px;padding:5px 9px;cursor:pointer;color:var(--ink);font-size:.83rem}
.tracker progress{width:100%;accent-color:var(--red);height:16px}
.tracker p{font-size:.82rem;color:var(--muted)}
.daylist{margin:0;padding:0;list-style:none}
.daylist li{display:grid;grid-template-columns:96px 1fr;gap:12px;border-bottom:1px solid var(--line);padding:17px 0}
.day-check{display:flex;align-items:center;gap:7px;cursor:pointer;align-self:start;min-height:36px;font-weight:720}
.day-check input{width:1.2rem;height:1.2rem;accent-color:var(--red)}
.daylist h2{font-size:1.45rem;letter-spacing:-.025em}
.daylist p{margin-top:4px;color:var(--muted)}
.day-links{display:flex;flex-wrap:wrap;gap:3px 12px;font-size:.86rem;font-weight:690;color:var(--red);margin-top:7px}

@media(max-width:850px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:620px){.wrap{width:calc(100% - 32px)}
.navrow{min-height:64px}
.brand{font-size:.91rem;gap:7px}
.brand img{width:28px}
.navrow nav{gap:12px;font-size:.8rem}
.hero,.lesson-hero,.lesson-grid{grid-template-columns:1fr}
.hero{gap:24px}
.hero-art{transform:none}
.hero-art img{max-height:290px;object-fit:contain;background:#e9dfcb}
.factsrow{padding-block:10px}
.factsrow strong{display:block;margin:0}
.factsrow span{font-size:.72rem}
.plan-callout{align-items:flex-start;flex-direction:column}
.lesson-art{justify-self:start}
.cards{gap:10px}
.cardtext{padding:11px}
.card h3{font-size:1rem}
.daylist li{grid-template-columns:79px 1fr}
}

@media(max-width:350px){.cards{grid-template-columns:1fr}
.navrow{flex-wrap:wrap;padding:8px 0}
}


.photo-reference {
  max-width: 820px;
  margin: 30px auto 0;
  border: 1px solid var(--line);
  background: var(--wash);
}
.photo-reference img {
  width: 100%;
}
.photo-reference figcaption {
  padding: 12px 15px;
}
.photo-reference figcaption p {
  color: var(--muted);
}
.photo-credit {
  margin-top: 5px;
  font-size: .82rem;
}
