/* Listen together (Mom & kids): calm, roomy, verse-first; mobile-first (320 px and up). */
.together-main{max-width:760px;margin:0 auto;box-sizing:border-box}
.together-intro{padding:22px 0 8px}
.together-intro h1{margin:6px 0 8px;font-size:clamp(30px,8vw,46px);letter-spacing:-1px;line-height:1.05;color:var(--ink,#202137)}
.together-lead{margin:0 0 6px;font-size:18px;line-height:1.45;color:var(--ink,#202137)}
.together-note{margin:6px 0;font-size:14px;line-height:1.5;color:var(--muted,#626378)}
.together-status{min-height:1.4em;margin:10px 0;color:var(--muted,#626378)}
.together-section-title{font-size:20px;margin:22px 0 12px}
.together-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
@media(min-width:620px){.together-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.together-card{display:flex;align-items:center;gap:12px;box-sizing:border-box;width:100%;min-height:64px;padding:14px 16px;border:1px solid #e3dfeb;border-radius:16px;background:#fff;box-shadow:0 3px 0 #eeebf3;color:inherit;text-decoration:none;overflow-wrap:anywhere}
.together-card:hover,.together-card:focus-visible{border-color:#514be5}
.together-card:focus-visible,.together-button:focus-visible,.together-nav a:focus-visible,.together-speed button:focus-visible{outline:3px solid #514be5;outline-offset:2px}
.together-num{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f1effa;color:#514be5;font-weight:700}
.together-card-text{display:grid;gap:2px;min-width:0;flex:1}
.together-card-tamil{font-size:18px;line-height:1.35}
.together-card-theme{font-size:13px;color:var(--muted,#626378)}
.together-done-badge{flex:none;font-size:13px;color:#24704a;font-weight:600}
.together-activity{box-sizing:border-box;margin:8px 0 18px;padding:20px 18px;border:1px solid #e3dfeb;border-radius:18px;background:#fff;box-shadow:0 3px 0 #eeebf3;overflow-wrap:anywhere}
.together-progress{margin:0 0 10px;font-size:13px;letter-spacing:.3px;color:var(--muted,#626378)}
.together-verse{margin:0 0 10px;font-size:clamp(28px,8.5vw,40px);line-height:1.3;font-weight:700;color:var(--ink,#202137)}
.together-verse:focus{outline:none}
.together-reading{margin:0 0 12px;font-size:17px;font-style:italic;color:#3d3c55}
.together-label{display:inline-block;margin-right:6px;font-size:11px;font-style:normal;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted,#626378)}
.together-meaning{padding:12px 14px;border-radius:12px;background:#f7f6fb;margin-bottom:14px}
.together-meaning p{margin:4px 0;font-size:16px;line-height:1.5}
.together-steps{list-style:none;counter-reset:step;margin:0;padding:0;display:grid;gap:14px}
.together-steps>li{counter-increment:step;position:relative;padding-left:40px}
.together-steps>li::before{content:counter(step);position:absolute;left:0;top:0;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#24483f;color:#fff;font-size:14px;font-weight:700}
.together-steps h3{margin:2px 0 6px;font-size:17px}
.together-steps p{margin:0;font-size:16px;line-height:1.5}
.together-roles{margin:0;padding-left:18px;font-size:16px;line-height:1.6}
.together-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.together-button{box-sizing:border-box;min-height:44px;padding:10px 18px;border:1px solid #d9d3ea;border-radius:12px;background:#fff;color:var(--ink,#202137);font:inherit;font-weight:600;cursor:pointer;max-width:100%}
.together-primary{background:#514be5;border-color:#514be5;color:#fff;box-shadow:0 3px 0 #3833b9}
.together-speed{display:inline-flex;border:1px solid #e3dfeb;border-radius:12px;overflow:hidden}
.together-speed button{min-height:44px;padding:8px 14px;border:0;background:#fff;font:inherit;cursor:pointer;color:var(--muted,#626378)}
.together-speed button[aria-pressed="true"]{background:#f1effa;color:#514be5;font-weight:700}
.together-audio-status{min-height:1.3em;margin-top:6px !important;font-size:14px !important;color:var(--muted,#626378)}
.together-family-note{margin:16px 0 12px;font-size:13px;color:var(--muted,#626378)}
#together-done[aria-pressed="true"]{border-color:#24704a;color:#24704a}
.together-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-top:18px}
.together-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px;color:#514be5;font-weight:600;text-decoration:none}
.together-nav a:last-child{justify-content:flex-end}
.together-nav a:nth-child(2){justify-content:center}
.together-source{margin-top:16px;font-size:13px;color:var(--muted,#626378)}
.together-source summary{cursor:pointer;min-height:32px}
.together-source p{margin:6px 0;line-height:1.5}
.together-grownups{margin:10px 0 30px;padding-top:6px;border-top:1px solid #ece9f3;font-size:15px;line-height:1.5}
@media(max-width:380px){.together-activity{padding:16px 14px}.together-steps>li{padding-left:36px}.together-nav{grid-template-columns:1fr 1fr}.together-nav a:nth-child(2){grid-column:1/-1;grid-row:2;justify-content:center}}
.together-lead-ta{margin:0 0 6px;font-size:16px;line-height:1.5;color:#3d3c55}
.together-lang{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 4px}
.together-lang .together-label{margin-right:2px}
.together-lang button{min-height:44px;min-width:76px;padding:8px 14px;border:1px solid #d9d3ea;border-radius:12px;background:#fff;font:inherit;cursor:pointer;color:var(--muted,#626378)}
.together-lang button[aria-pressed="true"]{border-color:#514be5;background:#f1effa;color:#514be5;font-weight:700}
.together-lang button:focus-visible{outline:3px solid #514be5;outline-offset:2px}
.together-meaning .together-label{margin:0 0 4px}
@media(max-width:380px){.together-lang .together-label{flex-basis:100%}}
/* Optional seven-session path and sharing */
.together-path-intro{margin:4px 0 12px;font-size:14px;line-height:1.5;color:var(--muted,#626378)}.together-path-intro p{margin:4px 0}.together-path-intro a{color:#514be5;font-weight:600}
.together-minutes{margin:-6px 0 10px;font-size:13px;color:var(--muted,#626378)}
.together-share{margin:14px 0 4px}.together-share-manual{display:block;margin-top:6px;font-size:14px;color:var(--muted,#626378)}.together-share-manual[hidden]{display:none}
.together-share-manual input{box-sizing:border-box;display:block;width:100%;max-width:100%;margin-top:4px;padding:10px;border:1px solid #d9d3ea;border-radius:10px;font:inherit;font-size:14px;color:var(--ink,#202137);background:#fff}
