@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');
:root{--ink:#123d32;--paper:#f8f4e9;--gold:#e6b65c;--line:#d9ddce}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}header,main,footer{max-width:1080px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;padding:24px}a{color:inherit}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #b66b24;outline-offset:5px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700}.brand img{width:44px;height:44px;border-radius:50%}.badge,.eyebrow,.hero-note,.card-label{font-size:11px;text-transform:uppercase;letter-spacing:2px}.badge{padding:7px 12px;border:1px solid var(--line);border-radius:30px}.hero{padding:65px 24px 0;background:radial-gradient(ellipse at 85% 35%,#e4e9d8,transparent 55%)}h1{font:clamp(64px,10vw,112px)/1.08 'Libre Baskerville',Georgia,serif;letter-spacing:-5px;margin:20px 0 28px}h1 em{color:#7c7141}h2{font:28px/1.3 'Libre Baskerville',Georgia,serif;margin:8px 0 20px;letter-spacing:-.6px}.intro{max-width:520px;font-size:19px;margin-bottom:30px}.primary{display:inline-block;background:var(--ink);color:white;border:0;border-radius:9px;padding:13px 22px;text-decoration:none;font-weight:600}.text-link{display:inline-block;margin:12px 18px;text-underline-offset:5px}.hero-note{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:55px;padding:22px 0}main>section:not(.hero){padding:55px 24px;border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px}select{display:block;padding:8px;border:1px solid var(--line);background:white;border-radius:6px}.tip{max-width:770px}.card-meta{display:flex;justify-content:space-between;margin:25px 0 10px;font-size:13px}.flashcard{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;width:100%;min-height:310px;padding:30px;background:var(--ink);color:var(--paper);border:0;border-radius:22px;text-align:center;box-shadow:0 15px 35px #123d3214}.flashcard #prompt{font:28px/1.5 'Libre Baskerville',Georgia,serif;max-width:670px}.flashcard #phrase{display:block;font:clamp(29px,5vw,50px)/1.5 'Libre Baskerville',Georgia,serif;color:#f4ca80}.flashcard #meaning,.flashcard #hint{display:block;margin-top:12px}.flashcard #hint{font-size:14px;max-width:620px}.reveal{font-size:12px;opacity:.8}.controls{display:flex;justify-content:center;gap:12px;margin:22px 0}.controls button{border:1px solid var(--line);background:white;padding:12px 18px;border-radius:9px;color:var(--ink)}.controls button:disabled{opacity:.4;cursor:default}.small{font-size:13px;color:#53645b}.sessions{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.session{padding:22px;border:1px solid var(--line);border-radius:12px;background:#fffaf0}.session h3{margin:5px 0;font-size:18px}.session p{margin:8px 0}.session label{display:block;margin-top:12px;font-size:14px}.session input{accent-color:var(--ink);width:18px;height:18px;vertical-align:middle}.options{display:flex;flex-wrap:wrap;gap:10px}.options button{background:white;border:1px solid var(--line);border-radius:10px;padding:16px 24px;color:var(--ink)}.options button.chosen{border:2px solid var(--ink)}.resources{display:grid;grid-template-columns:1fr 1fr;gap:45px}.resources .text-link{margin-left:0}.pilot{background:#e9edde}.pilot details{margin:25px 0}.pilot summary{cursor:pointer}.text-button{padding:0;background:none;border:0;color:inherit;text-decoration:underline;font-size:13px}footer{padding:30px 24px;font-size:13px}#printCards{display:none}[hidden]{display:none!important}@media(max-width:600px){header{padding:18px}.badge{font-size:9px;letter-spacing:1px;padding:5px}.brand{font-size:13px;gap:7px}.brand img{width:32px;height:32px}.hero{padding-top:32px}h1{letter-spacing:-3px}.hero-note,.section-head{align-items:flex-start;flex-direction:column}.controls{gap:6px}.controls button{padding:10px;font-size:13px}.sessions,.resources{grid-template-columns:1fr}.flashcard{padding:24px 16px;min-height:330px}.flashcard #prompt{font-size:23px}main>section:not(.hero){padding-top:35px;padding-bottom:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{body{background:white;color:black;font-family:Arial,sans-serif}header,main,footer{display:none}#printCards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.print-card{break-inside:avoid;border:1px solid #999;padding:20px}.print-card h2{font-size:24px;font-family:Georgia,serif}.print-card p{font-size:13px}.print-title{grid-column:1/-1}a{color:black}@page{margin:15mm}}

.browse{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:20px 0}.browse label{flex:1;min-width:150px}.browse select,.browse input{width:100%}.browse input{display:block;font:inherit;background:white;border:1px solid var(--line);border-radius:6px;padding:8px}.browse button,.listen-button{padding:12px 18px;background:#e9edde;color:var(--ink);border:1px solid var(--line);border-radius:9px}.listen-button{margin-top:16px}.listening{background:#edf0e2}.listening audio{display:block;width:100%;margin:24px 0 12px}.tone-guide{display:flex;gap:12px;margin-top:25px}.tone-guide span{flex:1;padding:18px;border:1px solid #ccd5be;border-radius:10px;font-size:13px}.tone-guide b{display:block;font-size:21px}.listening select{max-width:100%}@media(max-width:600px){.tone-guide{flex-direction:column}.browse{gap:10px}.browse button{width:100%}}

.audio-controls{display:flex;align-items:end;gap:18px;flex-wrap:wrap}.audio-controls button{margin:0}.greeting-guide{background:#fffaf0;border:1px solid var(--line);border-radius:14px;padding:22px;margin-top:24px}.greeting-guide h3{font-size:24px;margin-top:0}
