/* Jigsaw Gardens only. Shared Tiny Rhythm styling remains unchanged. */
.jg-site { --ground:#f8f5ed; --surface:#fffdf6; --card:#fff; --ink:#183b30; --ink-muted:#53645b; --separator:#dedfcf; --accent:#246348; --accent-deep:#194c36; --pump:#805729; --feed:#b24d50; --sleep:#56567f; color-scheme:light; }
.jg-site h1,.jg-site h2 {font-family:Georgia,'Times New Roman',serif; font-weight:500; letter-spacing:-.035em; line-height:1.12; text-wrap:balance;}
.jg-site h2 {font-size:clamp(2rem,4vw,2.8rem);margin:12px 0 22px;}
.jg-site a {color:var(--accent);}
.jg-site .btn.primary {background:var(--accent);color:#fff;}
.jg-site .btn.primary:hover {background:var(--accent-deep);}
.jg-site .kicker,.jg-site .pill {color:var(--accent);}
.jg-site .jg-header .wrap {height:auto;min-height:70px;justify-content:space-between;padding-block:12px;gap:12px;flex-wrap:wrap;}
.jg-header nav {display:flex;gap:22px;align-items:center;}
.jg-header nav a {font-size:.92rem;text-decoration:none;font-weight:650;padding-block:8px;}
.jg-site .brand {color:var(--ink);}
.jg-skip {position:absolute;left:12px;top:-80px;z-index:20;background:#fff;padding:12px;}
.jg-skip:focus {top:12px;}
.jg-hero {text-align:center;padding-top:62px;padding-bottom:30px;}
.jg-icon {display:block;border-radius:20px;margin:0 auto 25px;box-shadow:0 6px 18px #183b3020;}
.jg-hero h1 {font-size:clamp(2.75rem,6vw,4.5rem);margin:0 0 20px;}
.jg-product {font-size:1.18rem;letter-spacing:.04em;font-weight:700;margin:0 0 12px;}
.jg-lede {max-width:38rem;margin:0 auto;color:var(--ink-muted);font-size:1.15rem;}
.jg-facts {display:flex;flex-wrap:wrap;justify-content:center;gap:12px 25px;margin:32px 0 10px;font-size:.9rem;color:var(--ink-muted);}
.jg-facts span::before {content:'✓';margin-right:8px;color:var(--accent);}
.jg-section-head {text-align:center;max-width:40rem;margin:0 auto 36px;}
.jg-section-head p {color:var(--ink-muted);}
.jg-theme-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;}
.jg-theme-grid figure {margin:0;text-align:center;}
.jg-phone {background:#17372c;border:5px solid #17372c;border-radius:30px;overflow:hidden;box-shadow:0 16px 36px #17372c22;max-width:285px;margin:auto;}
.jg-phone img {display:block;width:100%;height:auto;}
.jg-theme-grid h3 {font-size:1.15rem;margin:22px 0 5px;}
.jg-theme-grid p {font-size:.92rem;color:var(--ink-muted);margin:0;}
.jg-caption {font-size:.86rem!important;color:var(--ink-muted);max-width:46rem;margin:30px auto 0;text-align:center;}
.jg-band {background:#ecf0e4;border-block:1px solid var(--separator);}
.jg-feature {display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center;}
.jg-feature p,.jg-info-grid p,.jg-story-grid p {color:var(--ink-muted);}
.jg-gameplay {max-width:310px;}
.jg-steps {padding-left:22px;}
.jg-steps li {padding:8px 0 8px 7px;}
.jg-steps li::marker {color:var(--accent);font-weight:700;}
.jg-story-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px;text-align:center;max-width:800px;margin:auto;}
.jg-story-grid h3 {font-size:1.15rem;margin:28px 0 6px;}
.jg-story-grid p {margin:0;font-size:.96rem;}
.jg-info-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px;}
.jg-info-grid h2 {font-size:2rem;}
.jg-end {text-align:center;max-width:720px;}
.jg-end p {color:var(--ink-muted);}
.jg-site .prose {padding-bottom:30px;}
.jg-site .prose h1 {font-size:2.8rem;}
.jg-site .prose h2 {font-family:inherit;font-weight:700;font-size:1.2rem;letter-spacing:-.01em;line-height:1.3;}
.jg-legal-nav {margin:0 0 28px;color:var(--ink-muted);font-size:.9rem;}
.jg-site .prose a {text-underline-offset:3px;}
.jg-site footer.site .foot-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
.jg-site .foot-col {min-width:0;overflow-wrap:anywhere;}
@media(max-width:650px){
 .jg-hero {padding-top:38px;}
 .jg-header nav {gap:15px;}
 .jg-header nav a {font-size:.85rem;}
 .jg-site section {padding-block:42px;}
 .jg-theme-grid {gap:13px;}
 .jg-theme-grid .jg-phone {border-width:3px;border-radius:15px;}
 .jg-theme-grid h3 {font-size:.94rem;}
 .jg-theme-grid p {font-size:.83rem;}
 .jg-feature,.jg-info-grid {grid-template-columns:1fr;gap:32px;}
 .jg-story-grid {gap:22px;}
 .jg-story-grid .jg-phone {border-width:3px;border-radius:20px;}
 .jg-caption {font-size:.82rem!important;}
 .jg-site .prose h1 {font-size:2.25rem;}
}
@media(max-width:390px){.jg-header .brand {font-size:.96rem}.jg-header nav {gap:12px}.jg-theme-grid {gap:9px}.jg-site .wrap{padding-inline:18px}}

.jg-swipe{display:none}
@media(max-width:650px){
 .jg-theme-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 24px;gap:20px;scrollbar-color:#9cae96 transparent}
 .jg-theme-grid figure{flex:0 0 80%;scroll-snap-align:center}
 .jg-theme-grid .jg-phone{border-width:4px;border-radius:25px}
 .jg-theme-grid h3{font-size:1.12rem}
 .jg-theme-grid p{font-size:.92rem}
 .jg-swipe{display:block;font-size:.85rem}
}
.jg-site #how-to-play,.jg-site #content{scroll-margin-top:80px}
