/* Editorial imagery and useful, accessible browsing. */
.cm-editorial-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.cm-card-photo{overflow:hidden;background:#f4eae3;aspect-ratio:3/2}
.cm-card-photo img{height:100%;transition:transform .25s ease}
.celebration-card>a:hover .cm-card-photo img,.family-card>a:hover .cm-card-photo img{transform:scale(1.025)}
.cm-guide-image{margin:2rem 0;max-width:100%}
.cm-guide-image img{border-radius:14px}
.cm-guide-image figcaption{font:14px/1.65 Georgia,'Times New Roman',serif;color:#645854;margin-top:10px;text-align:left}
.cm-guide-image figcaption a{display:inline;text-decoration:underline;text-underline-offset:3px;margin-left:.25em}
.cm-guide-hero{margin:1.75rem 0 2.5rem}
.cm-step-image{margin:1.5rem 0 0;max-width:760px}
.cm-guide-toc{padding:24px 28px;background:#f8eee8;border:1px solid #e8d5cd;border-radius:14px;margin:2rem 0}
.cm-guide-toc strong{font-size:1.2rem}.cm-guide-toc ol{margin:14px 0 0;padding-left:22px}.cm-guide-toc li{padding:5px 0}.cm-guide-toc a{color:#713544;text-decoration:underline;text-underline-offset:3px}
[id^="step-"],#imagery{scroll-margin-top:110px}.project-step>div{min-width:0}.project-step .cm-step-image{width:100%}
.cm-quick-links{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 30px}.cm-quick-links a{padding:12px 16px;border-radius:10px;background:#f7eee7;color:#72394b;text-decoration:underline;text-underline-offset:4px}
.cm-blog-search{margin:24px 0}.cm-blog-search label,.cm-local-controls label{display:block;font-weight:bold;margin-bottom:9px}.cm-blog-search>div{display:flex;gap:12px;flex-wrap:wrap}
.cm-blog-search input{flex:1;min-width:200px;max-width:760px;padding:15px 17px;border:1px solid #b8949c;border-radius:8px;font:inherit;background:white;color:#382c32}
.cm-blog-search input:focus,.cm-local-controls select:focus{outline:3px solid #39a9ae;outline-offset:3px}.cm-blog-empty{background:#f9eee8;border-radius:14px;padding:24px;margin:20px 0}
.cm-two-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.cm-life-feature .celebration-copy{padding:24px}.cm-life-feature{padding-top:32px}
.cm-life-article{max-width:1000px}.cm-life-article>.cm-article-section>p,.cm-life-article>.cm-article-section>ul{max-width:780px}.cm-life-article .cm-article-header{max-width:850px}
.cm-local-controls{display:flex;gap:18px;align-items:flex-end;flex-wrap:wrap;padding:20px;background:#f8eee8;border-radius:14px;margin:24px 0}.cm-local-controls>div{flex:1;min-width:200px}.cm-local-controls select{font:inherit;padding:12px;border:1px solid #b8949c;border-radius:7px;width:100%;max-width:100%;background:white;color:#382c32}
.cm-local-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.cm-place{border:1px solid #e6d8cd;border-radius:14px;padding:24px;background:#fffdfa}.cm-place h3{font-size:1.45rem;margin:12px 0}.cm-place p{font-size:16px;line-height:1.75}.cm-place a,.cm-event a{color:#783145;text-decoration:underline;text-underline-offset:4px}.cm-place .tag{font-size:12px}
.cm-event{padding:24px 0;border-bottom:1px solid #e6d8cd}.cm-event h3{font-size:1.5rem}.cm-event .tag{font-size:13px;line-height:1.6;white-space:normal}.cm-event.past-event{opacity:.8}.cm-past-label{font-size:13px;color:#6c5751}
.cm-hustle{padding:28px;background:#fbf4ee;border-radius:14px;margin:24px 0;border:1px solid #eadbd0}.cm-hustle h3{font-size:1.65rem;margin:8px 0 20px}.cm-hustle p{margin:12px 0;max-width:780px}.cm-life-article .cm-answer{margin:28px 0}.cm-article-section li{margin:10px 0}
[hidden]{display:none!important}
@media(max-width:700px){.cm-two-grid,.cm-local-grid{grid-template-columns:1fr}.cm-guide-toc,.cm-hustle,.cm-place{padding:20px}.cm-blog-search input{min-width:100%;box-sizing:border-box}.cm-blog-search .button{width:100%}.cm-guide-image{margin:1.5rem 0}.cm-guide-image figcaption{font-size:13px}.project-step{gap:12px}.cm-quick-links{gap:8px}.cm-local-controls{padding:16px}.cm-local-controls .button{width:100%}.cm-life-feature .section-head{display:block}}
@media(prefers-reduced-motion:reduce){.cm-card-photo img{transition:none}.celebration-card>a:hover .cm-card-photo img,.family-card>a:hover .cm-card-photo img{transform:none}}
@media print{.cm-guide-image,.cm-guide-toc,.cm-blog-search,.cm-local-controls{display:none!important}.cm-local-grid{display:block}.cm-place,.cm-hustle,.cm-event{break-inside:avoid;background:white}.cm-life-article{max-width:none}}
.cm-life-article .cm-article-section{max-width:none}
.cm-tutorial-image{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#faf4eb}
.cm-tutorial figcaption{padding:18px 20px;background:#fbf4ee;border:1px solid #eadbd0;border-radius:12px;margin-top:12px;font-size:16px;line-height:1.6;color:#483b36}
.cm-tutorial-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;padding-left:23px;margin:14px 0 18px}
.cm-tutorial-steps li{padding-left:3px;break-inside:avoid}
.cm-tutorial-steps li::marker{font-weight:bold;color:#943f26}
.cm-tutorial-note{display:block;font-size:13px;color:#645854;margin-top:12px}
.cm-tutorial figcaption .cm-tutorial-enlarge{display:inline-block;margin-left:0;padding:8px 0;color:#713544}
.cm-tutorial-enlarge:focus-visible{outline:3px solid #39a9ae;outline-offset:4px}
.celebration-article .guide-detail .textlink{white-space:normal;overflow-wrap:anywhere}
@media(max-width:540px){.cm-tutorial-steps{grid-template-columns:1fr;gap:10px}.cm-tutorial figcaption{padding:16px;font-size:15px}}
@media print{.cm-guide-image.cm-tutorial{display:block!important;break-inside:avoid}.cm-tutorial-image{width:350px;max-width:100%;margin:auto}.cm-tutorial figcaption{padding:8px 12px;font-size:11px}.cm-tutorial-steps{gap:4px 20px;margin:6px 0}.cm-tutorial-enlarge,.cm-tutorial-note{display:none!important}}
@media print{.guide-header,.cm-article-header{display:block!important;background:none;border:0}}
