@font-face{font-family:"IBM Plex Sans";src:url("fonts/plex-sans.ttf") format("truetype");font-style:normal;font-weight:100 900;font-display:swap}
.jm-interior{--jm-paper:#f6f3ed;--jm-ink:#173436;--jm-teal:#0e6c6c;--jm-orange:#b55230;--jm-muted:#5c706c;--jm-line:#d9ded6;--bg-main:var(--jm-paper);--bg-warm:var(--jm-paper);--bg-paper:#f0eee7;--bg-card:#fffdfa;--text-primary:var(--jm-ink);--text-muted:var(--jm-muted);--text-light:var(--jm-muted);--accent-orange:var(--jm-orange);--accent-rust:var(--jm-orange);--accent-terracotta:var(--jm-orange);--accent-bronze:var(--jm-teal);--accent-sage:var(--jm-teal);--accent-slate:var(--jm-teal);--accent-royal:var(--jm-teal);--accent-caribbean:var(--jm-teal);--accent-deep-blue:var(--jm-teal);--accent-ocean:var(--jm-teal);--border:var(--jm-line);--border-subtle:var(--jm-line);background:var(--jm-paper)!important;color:var(--jm-ink);font-family:"IBM Plex Sans",Arial,sans-serif!important;font-size:16px;line-height:1.7;padding:0!important;overflow-x:clip}
.jm-interior::before{display:none!important}
.jm-interior *{box-sizing:border-box}
.jm-interior [hidden]{display:none!important}
.jm-interior a{color:var(--jm-teal);text-underline-offset:4px}
.jm-interior a:hover{color:var(--jm-orange)}
.jm-interior :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--jm-orange)!important;outline-offset:4px;box-shadow:none!important}
.jm-interior :is(button,input,select,textarea){font-family:"IBM Plex Sans",Arial,sans-serif!important}
.jm-interior img{max-width:100%;height:auto}
.jm-interior :is(h1,h2,h3,h4,.essay-title,.section-heading,.page-title,.book-title){font-family:Georgia,"Times New Roman",serif!important;letter-spacing:-.035em;font-weight:400;line-height:1.15;text-wrap:balance;color:var(--jm-ink)}
.jm-interior h1{font-size:clamp(2.6rem,5.5vw,4.6rem)!important;font-weight:400!important}
.jm-interior h2{font-size:clamp(1.7rem,3vw,2.4rem)!important}
.jm-interior h3{font-size:1.45rem}
.jm-shell-header{position:relative!important;z-index:100!important;background:var(--jm-paper)!important;border-bottom:1px solid var(--jm-line)!important;padding:0!important;margin:0!important;width:100%;color:var(--jm-ink)!important}
.jm-shell-header .jm-shell-inner{max-width:1280px;padding:22px 40px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:28px}
.jm-shell-header .jm-brand{font-family:Georgia,serif!important;font-size:24px!important;letter-spacing:-.04em!important;font-weight:400!important;line-height:1.15!important;display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--jm-ink)!important;white-space:nowrap}
.jm-shell-header .jm-brand-mark{display:grid;place-items:center;width:35px;height:35px;background:var(--jm-orange);color:#fffdfa;font-family:Georgia,serif;font-size:16px;letter-spacing:-.06em;border-radius:50%}
.jm-shell-header .jm-shell-nav{position:static!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;padding:0!important;margin:0!important;background:none!important;flex-wrap:wrap!important;width:auto!important;inset:auto!important}
.jm-shell-header .jm-shell-nav a{display:block;padding:8px 11px;font-family:"IBM Plex Sans",Arial,sans-serif!important;font-size:13px!important;font-weight:500;line-height:1.4;letter-spacing:0!important;text-transform:none!important;text-decoration:none;color:var(--jm-ink)!important;border:1px solid transparent;border-radius:100px;white-space:nowrap}
.jm-shell-header .jm-shell-nav a:hover{border-color:var(--jm-line);color:var(--jm-orange)!important;background:#ecebe3}
.jm-shell-header .jm-shell-nav a[aria-current="page"]{background:var(--jm-teal);color:#fff!important}
.jm-shell-header .jm-search-trigger{min-height:36px;padding:7px 11px;border:1px solid var(--jm-line);border-radius:5px;background:#fffdfa;color:var(--jm-ink);font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:10px;margin-left:6px}
.jm-shell-header .jm-search-trigger:hover{border-color:var(--jm-teal)}
.jm-shell-header .jm-search-trigger kbd{font-family:inherit;font-size:9px;color:var(--jm-muted)}
.jm-interior.dialog-open{overflow:hidden!important}
.jm-interior .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.jm-interior .search-dialog{color:var(--jm-ink);border:1px solid var(--jm-line);border-radius:8px;background:#fffdfa;padding:0;box-shadow:0 30px 100px #071a2355;width:min(640px,calc(100% - 30px));max-height:80vh;top:12vh;left:0;right:0;margin:0 auto}
.jm-interior .search-dialog::backdrop{background:#102e32b8;backdrop-filter:blur(5px)}
.jm-interior .dialog-top{display:flex;align-items:center;justify-content:space-between;padding:19px 24px;border-bottom:1px solid var(--jm-line);gap:20px}
.jm-interior .dialog-top h2{font-family:"IBM Plex Sans",Arial,sans-serif!important;font-size:14px!important;letter-spacing:0;font-weight:600;margin:0!important}
.jm-interior .dialog-close{border:1px solid var(--jm-line);background:transparent;border-radius:4px;color:var(--jm-ink);width:35px;height:35px;font-size:21px;cursor:pointer;flex-shrink:0}
.jm-interior .search-dialog-field{display:flex;align-items:center;padding:10px 24px;gap:15px;border-bottom:1px solid var(--jm-line)}
.jm-interior .search-dialog-field svg{width:21px;flex-shrink:0;color:var(--jm-teal)}
.jm-interior .search-dialog-field input{border:0;background:transparent;color:var(--jm-ink);padding:12px 0;width:100%;font-size:16px;outline:none;box-shadow:none}
.jm-interior .search-results{max-height:45vh;overflow:auto;padding:9px}
.jm-interior .search-result{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 16px;border-radius:4px;text-decoration:none;color:var(--jm-ink)}
.jm-interior .search-result:hover,.jm-interior .search-result:focus-visible{background:#e5eee6;color:var(--jm-ink)}
.jm-interior .search-result strong{display:block;font-size:13px;font-weight:600}
.jm-interior .search-result small{display:block;font-size:10px;color:var(--jm-muted);margin-top:4px}
.jm-interior .search-empty{padding:24px 18px;color:var(--jm-muted);font-size:13px}
.jm-interior .search-help{padding:12px 24px;border-top:1px solid var(--jm-line);font-size:10px;color:var(--jm-muted)}
.jm-skip-link{position:absolute;left:20px;top:-100px;background:var(--jm-ink);color:#fff!important;padding:10px 16px;z-index:99999;border-radius:4px}
.jm-skip-link:focus{top:12px}
.jm-interior>.container{max-width:1040px!important;padding:42px 40px 80px!important;margin:auto}
.jm-interior .back-link{font-family:"IBM Plex Sans",Arial,sans-serif!important;font-size:13px!important;font-weight:500!important;color:var(--jm-teal)!important;background:none!important;box-shadow:none!important;padding:0!important;border-radius:0!important;margin-bottom:25px;transform:none!important}
.jm-interior .breadcrumbs{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;color:var(--jm-muted);display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 28px;padding:0;line-height:1.6}
.jm-interior .breadcrumbs a{color:var(--jm-teal)}
.jm-interior .breadcrumbs span{color:var(--jm-muted);margin:0}
.jm-interior :is(.essay-card,.content-card,.main-card,.build-card){background:#fffdfa!important;border:1px solid var(--jm-line)!important;border-radius:12px!important;box-shadow:none!important;padding:clamp(28px,6vw,66px)!important}
.jm-interior .essay-card{padding:54px 64px!important}
.jm-interior .essay-header{border-bottom:1px solid var(--jm-line);padding-bottom:32px;margin-bottom:40px}
.jm-interior :is(.essay-label,.section-label){font-family:"IBM Plex Sans",Arial,sans-serif!important;font-size:11px!important;letter-spacing:.14em;font-weight:600;color:var(--jm-orange)}
.jm-interior .essay-label{background:transparent!important;padding:0!important;color:var(--jm-orange)!important}
.jm-interior :is(.essay-subtitle,.essay-dek,.page-subtitle){font-size:1.1rem;line-height:1.65;color:var(--jm-muted)}
.jm-interior .essay-meta{font-family:"IBM Plex Sans",Arial,sans-serif;font-style:normal;font-size:12px;color:var(--jm-muted)}
.jm-interior .essay-section{max-width:730px;margin-left:auto;margin-right:auto}
.jm-interior :is(.essay-section p,.story-section p,.body-text,.build-description){font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.06rem,2vw,1.2rem);line-height:1.9;color:var(--jm-ink)}
.jm-interior .essay-section p:first-of-type::first-letter{float:none;font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;color:inherit}
.jm-interior :is(.pullquote,.quote-box){font-family:Georgia,serif;font-size:clamp(1.35rem,2.8vw,1.75rem);line-height:1.6;background:#edf1eb!important;color:var(--jm-teal)!important;border-left:3px solid var(--jm-orange)!important;box-shadow:none!important;border-radius:0!important;padding:28px 32px;margin:35px 0}
.jm-interior :is(.hero-photo,.build-image){border-radius:8px;box-shadow:none;display:block}
.jm-interior .caption{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;font-style:normal;color:var(--jm-muted)}
.jm-interior :is(.share-buttons,.action-buttons){gap:10px}
.jm-interior :is(.share-btn,.share-button,.print-button,.checklist-btn){font-family:"IBM Plex Sans",Arial,sans-serif!important;font-size:12px!important;font-weight:500!important;min-height:40px;padding:10px 17px!important;border:1px solid var(--jm-line)!important;border-radius:6px!important;background:#fffdfa!important;color:var(--jm-teal)!important;box-shadow:none!important;line-height:1.45;transform:none!important;cursor:pointer}
.jm-interior :is(.share-btn,.share-button,.print-button,.checklist-btn):hover{background:#edf1eb!important;color:var(--jm-ink)!important;border-color:var(--jm-teal)!important}
.jm-interior .share-icon{width:15px;height:15px}
.jm-interior .social-share-container{position:static!important;float:none!important;margin:0 0 22px!important}
.jm-interior .social-share-buttons{flex-direction:row!important;background:none!important;box-shadow:none!important;padding:0!important;gap:8px!important}
.jm-interior .recipe-card:not(a){background:#fffdfa!important;border:1px solid var(--jm-line)!important;border-radius:12px!important;box-shadow:none!important;padding:clamp(28px,6vw,62px)!important}
.jm-recipe .recipe-card h1{max-width:850px;margin:0 0 20px;color:var(--jm-ink)}
.jm-recipe .recipe-meta{font-family:"IBM Plex Sans",Arial,sans-serif;font-style:normal;color:var(--jm-muted);font-size:15px;border-bottom:1px solid var(--jm-line);padding-bottom:26px;margin-bottom:24px}
.jm-recipe .recipe-image{width:100%!important;height:auto!important;max-height:460px;object-fit:cover;border-radius:7px!important;margin:28px 0!important;box-shadow:none!important}
.jm-recipe h2{margin:42px 0 20px;color:var(--jm-teal)}
.jm-recipe :is(.ingredients-list,.instructions-list){font-family:Georgia,serif;font-size:1.05rem;line-height:1.8;margin-top:20px;margin-bottom:30px}
.jm-recipe .instructions-list{padding-left:24px;margin-left:0}
.jm-recipe .instructions-list li{padding-left:8px;margin-bottom:18px}
.jm-recipe .instructions-list li::marker{color:var(--jm-orange);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;font-weight:600}
.jm-recipe .ingredients-list{padding:0!important;margin-left:0!important;list-style:none!important}
.jm-recipe .ingredients-list li{padding:0!important;border-bottom:1px solid #eceee8!important;margin:0!important;cursor:default!important;user-select:text;position:relative;transition:none!important}
.jm-recipe .ingredients-list li:before,.jm-recipe .ingredients-list li:after{display:none!important}
.jm-recipe .ingredients-list li label{display:flex;gap:14px;align-items:flex-start;cursor:pointer;padding:13px 0;line-height:1.65}
.jm-recipe .ingredients-list li input{width:18px;height:18px;flex:0 0 18px;margin-top:5px;accent-color:var(--jm-teal);cursor:pointer}
.jm-recipe .ingredients-list li.checked{opacity:1!important;text-decoration:none!important}
.jm-recipe .ingredients-list li.checked .jm-ingredient-text{color:#74847c;text-decoration:line-through}
.jm-recipe .recipe-note{background:#edf1eb!important;border-left:3px solid var(--jm-orange)!important;padding:22px 26px!important;border-radius:0!important;font-family:Georgia,serif}
.jm-recipe .recipe-note strong{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;color:var(--jm-teal)!important}
.jm-recipe .conversion-toggle{position:static!important;display:flex!important;align-items:center;justify-content:space-between;gap:20px;max-width:none!important;margin:24px 0!important;padding:16px 0!important;background:transparent!important;box-shadow:none!important;border:0!important;border-top:1px solid var(--jm-line)!important;border-bottom:1px solid var(--jm-line)!important;border-radius:0!important;transform:none!important;cursor:default;flex-wrap:wrap}
.jm-recipe .conversion-toggle-label{font-size:12px;color:var(--jm-muted);margin:0;font-weight:500}
.jm-recipe .conversion-btn{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;min-height:38px;padding:8px 13px;border:1px solid var(--jm-line);border-radius:5px;background:#fffdfa;color:var(--jm-ink);cursor:pointer}
.jm-recipe .conversion-btn.active{background:var(--jm-teal);color:#fff;border-color:var(--jm-teal)}
.jm-unit-note{font-size:12px;font-family:"IBM Plex Sans",Arial,sans-serif;color:var(--jm-muted);margin:0 0 20px}
.jm-interior .related-recipes{max-width:1040px;background:none!important;box-shadow:none!important;border-radius:0!important;padding:0 40px 45px!important;margin:0 auto!important}
.jm-interior .related-recipes-title{font-family:Georgia,serif;font-size:2rem!important;margin-bottom:24px;color:var(--jm-ink)}
.jm-interior .related-recipe-card{border:1px solid var(--jm-line)!important;border-radius:8px!important;box-shadow:none!important;background:#fffdfa!important;transform:none!important}
.jm-interior .related-recipe-image{display:none}
.jm-interior .related-recipe-content{padding:22px}
.jm-interior .related-recipe-name{font-family:Georgia,serif;font-size:1.2rem;color:var(--jm-ink)}
.jm-interior .related-recipe-category{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:10px;color:var(--jm-orange);letter-spacing:.1em;margin-top:9px}
.jm-recipe .made-this-container{max-width:960px;margin:0 auto 45px!important;padding:22px 28px!important;background:var(--jm-ink)!important;box-shadow:none!important;border-radius:8px!important;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;text-align:left}
.jm-recipe .made-this-label{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:13px;margin:0!important;color:#e5ece5}
.jm-recipe .made-this-btn{background:#fffdfa!important;color:var(--jm-ink)!important;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px!important;min-height:40px;padding:10px 16px!important;border-radius:5px!important;box-shadow:none!important;transform:none!important;cursor:pointer}
.jm-recipe .made-this-btn.clicked{background:#b5d3c8!important;color:var(--jm-ink)!important}
.jm-recipe .made-this-thanks{font-size:12px;color:#dcebe5;flex-basis:100%;margin:0!important}
.jm-recipe .made-this-thanks:not(.show){display:none}
.jm-interior .jm-shell-footer{max-width:1280px;margin:auto;padding:38px 40px;border-top:1px solid var(--jm-line);font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--jm-muted)}
.jm-interior .jm-shell-footer a{color:var(--jm-teal);text-decoration:none}
/* Recipe collection */
.jm-recipes>.container{max-width:1280px!important;padding-top:65px!important}
.jm-recipes .header{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;text-align:left!important;padding:0!important;margin:0 0 38px!important}
.jm-recipes .header .back-link{margin-bottom:22px}
.jm-recipes .jm-kicker{display:block;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:var(--jm-orange);margin-bottom:18px}
.jm-recipes h1{font-size:clamp(3.6rem,8vw,6.5rem)!important;line-height:1.02;margin-bottom:22px;max-width:800px}
.jm-recipes .subtitle{font-family:Georgia,serif;font-size:1.2rem;font-weight:400;max-width:570px;margin-bottom:36px;line-height:1.7;color:var(--jm-muted)}
.jm-recipes .jm-search-label{display:block;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--jm-ink);margin-bottom:8px}
.jm-recipes .search-input{display:block;max-width:100%;width:100%;padding:18px 20px!important;border:1px solid var(--jm-line)!important;border-radius:7px!important;background:#fffdfa!important;font-size:16px!important;margin-bottom:22px!important;box-shadow:none!important;transform:none!important}
.jm-recipes .filters{justify-content:flex-start!important;gap:8px;margin-bottom:22px}
.jm-recipes .filter-btn{min-height:40px;padding:9px 15px!important;border:1px solid var(--jm-line)!important;border-radius:100px!important;background:#fffdfa!important;box-shadow:none!important;transform:none!important;font-family:"IBM Plex Sans",Arial,sans-serif!important;font-size:12px!important;font-weight:500!important;color:var(--jm-ink)!important}
.jm-recipes .filter-btn:hover{border-color:var(--jm-teal)!important;background:#edf1eb!important}
.jm-recipes .filter-btn.active{background:var(--jm-teal)!important;color:#fff!important;border-color:var(--jm-teal)!important}
.jm-recipes .recipe-count{text-align:left!important;font-family:"IBM Plex Sans",Arial,sans-serif!important;font-weight:400!important;font-size:12px!important;color:var(--jm-muted)!important;border-top:1px solid var(--jm-line);padding-top:18px;margin:0!important}
.jm-recipes .category-section{margin-bottom:50px;scroll-margin-top:25px}
.jm-recipes .category-header{background:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0 0 18px!important;margin:0!important;display:flex;align-items:center;justify-content:space-between}
.jm-recipes .category-emoji{display:none}
.jm-recipes .category-title{font-family:Georgia,serif!important;font-size:2rem!important;font-weight:400!important;letter-spacing:-.03em}
.jm-category-count{font-size:11px;color:var(--jm-muted);font-family:"IBM Plex Sans",Arial,sans-serif}
.jm-recipes .recipe-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
.jm-recipes a.recipe-card{padding:0!important;overflow:hidden;display:flex!important;flex-direction:column;background:#fffdfa!important;border:1px solid var(--jm-line)!important;border-radius:8px!important;box-shadow:none!important;transition:transform .2s ease,border-color .2s ease!important;color:var(--jm-ink)}
.jm-recipes a.recipe-card[hidden]{display:none!important}
.jm-recipes a.recipe-card:hover{transform:translateY(-5px)!important;border-color:var(--jm-teal)!important;box-shadow:0 10px 24px #1734360d!important}
.jm-recipe-cover{aspect-ratio:4/3;overflow:hidden;position:relative;background:#e5e9de;display:flex;align-items:center;justify-content:center}
.jm-recipe-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.jm-recipes .recipe-card:hover .jm-recipe-cover img{transform:scale(1.045)}
.jm-recipe-cover--type{background:var(--jm-ink);padding:25px;color:#dcebe5}
.jm-recipe-cover--type::before{content:"JM";font-family:Georgia,serif;font-size:70px;font-style:italic;position:absolute;color:#dcebe50d;inset:0;display:grid;place-items:center}
.jm-recipe-cover--type span{font-family:Georgia,serif;font-size:21px;text-align:center;position:relative}
.jm-recipes .recipe-name{font-family:Georgia,serif!important;font-size:1.16rem!important;font-weight:400!important;line-height:1.3;padding:19px 19px 6px!important;margin:0!important;letter-spacing:-.02em;color:var(--jm-ink)!important}
.jm-recipes .recipe-desc{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px!important;line-height:1.65;padding:0 19px 20px;color:var(--jm-muted)!important}
.jm-empty-results{padding:70px 25px;text-align:center;border:1px dashed var(--jm-line);border-radius:8px;background:#fffdfa}
.jm-empty-results h2{font-size:2rem!important;margin-bottom:15px}
.jm-empty-results p{font-size:14px;color:var(--jm-muted);margin-bottom:22px}
.jm-reset-search{border:1px solid var(--jm-teal);background:var(--jm-teal);color:#fff;padding:12px 20px;border-radius:5px;font-size:13px;cursor:pointer}
/* Professional services retain their content and working forms. */
.jm-service{--dark-void:var(--jm-paper);--dark-deep:#eeeee6;--dark-mid:#e7ebe1;--dark-surface:#fffdfa;--dark-raised:#edf1e9;--border-dim:var(--jm-line);--border-glow:#87b8a7;--sage:var(--jm-teal);--slate:var(--jm-teal);--rust:var(--jm-orange);--orange:var(--jm-orange);--cream:var(--jm-ink);--muted:var(--jm-muted);--faint:#667d74;--ember:#0e6c6c08;--ember-soft:#0e6c6c08;--ember-gold:#b5523006;--sheen:#17343604;--shadow-deep:#1734360a;font-size:16px}
.jm-service .site-header{position:relative;top:auto;z-index:5;background:#e9ede4;border:0;border-bottom:1px solid var(--jm-line);padding:18px max(30px,calc((100vw - 1180px)/2));backdrop-filter:none;gap:20px}
.jm-service .header-brand .hl-name{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:13px;letter-spacing:.07em;font-weight:600}
.jm-service .header-brand .hl-sub{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:9px;letter-spacing:.11em}
.jm-service .header-badge-svg{width:36px;height:36px}
.jm-service .header-lockup{border:0!important;padding-left:0!important;margin:0!important}
.jm-service .header-nav a{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:11px;color:var(--jm-ink);padding:5px 8px}
.jm-service .header-nav a:hover{color:var(--jm-orange)}
.jm-service .header-nav a.cta{color:#fff}
.jm-service .hero{padding:86px 32px 76px;max-width:1240px}
.jm-service .section::before{max-width:100%}
.jm-service #pricing::before{display:none}
.jm-service .hero-title{font-size:clamp(3rem,7vw,5.8rem)!important;letter-spacing:-.04em;max-width:950px;margin-left:auto;margin-right:auto}
.jm-service .hero-title em{font-family:Georgia,serif;color:var(--jm-orange);text-shadow:none}
.jm-service .hero-sub{font-family:"IBM Plex Sans",Arial,sans-serif;font-style:normal;font-size:16px;max-width:590px;line-height:1.8}
.jm-service :is(.hero-eyebrow,.section-eyebrow,.pricing-tier,.card-icon,.bundle-eyebrow,.subsection-title,.step-number,.footer-links-title){font-family:"IBM Plex Sans",Arial,sans-serif!important}
.jm-service :is(.hero-eyebrow,.section-eyebrow){font-size:11px;letter-spacing:.13em;font-weight:500}
.jm-service .btn{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;font-weight:500;letter-spacing:0;border-radius:5px;min-height:44px;box-shadow:none!important}
.jm-service .btn-primary{background:var(--jm-orange);color:#fff;border-color:var(--jm-orange)}
.jm-service .btn-primary:hover{background:var(--jm-teal);color:#fff;border-color:var(--jm-teal)}
.jm-service .btn-ghost{background:#fffdfa;color:var(--jm-teal);border-color:var(--jm-line)}
.jm-service .btn-ghost:hover{color:var(--jm-ink);border-color:var(--jm-teal)}
.jm-service :is(.service-card,.pricing-card,.diff-card,.pain-card,.promise-card,.client-card,.work-card,.package-picker,.sample-card){border:1px solid var(--jm-line);box-shadow:none!important;border-radius:8px}
.jm-service :is(.card-title,.pricing-name,.work-title,.promise-title,.step-title,.contact-info-title){font-family:Georgia,serif!important;font-weight:400;letter-spacing:-.02em;color:var(--jm-ink)}
.jm-service :is(.card-body,.card-list,.promise-body,.work-body,.work-list,.section-intro,.step-body,.pricing-features,.contact-info-body,.sample-desc,.bestfor,.subsection-note,.quote-block,.cta-block p){font-family:"IBM Plex Sans",Arial,sans-serif;font-size:14px;line-height:1.8}
.jm-service .pricing-card.featured{border:2px solid var(--jm-teal);background:#edf1e9}
.jm-service .pricing-card.featured::after{background:var(--jm-teal);color:#fff;box-shadow:none;font-family:"IBM Plex Sans",Arial,sans-serif;letter-spacing:.06em}
.jm-service :is(.bundle,.quote-block,.cta-block,.package-picker){background:#edf1e9!important;color:var(--jm-ink)!important;box-shadow:none;border-color:var(--jm-line)}
.jm-service .price-amount{font-family:Georgia,serif;color:var(--jm-teal)}
.jm-service .sample-preview{color:#fff}
.jm-service .sample-preview .sample-preview-title{color:inherit}
.jm-service .sample-preview-type{color:#fff9}
.jm-service .sample-preview-artist{color:#4d453b}
.jm-service .sample-preview-artist .sample-preview-type{color:#6a6259}
.jm-service :is(.sample-tag,.work-tag,.fineprint,.sample-features,.price-note,.form-note,.footer-tagline,.footer-links){font-family:"IBM Plex Sans",Arial,sans-serif;font-size:11px}
.jm-service .form-group label{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;letter-spacing:0}
.jm-service .form-group :is(input,select,textarea){background:#fffdfa;color:var(--jm-ink);border:1px solid var(--jm-line);border-radius:5px;font-size:14px}
.jm-service .form-group :is(input,textarea)::placeholder{color:#77877f}
.jm-service .form-submit{background:var(--jm-orange);color:#fff;border-radius:5px;font-family:"IBM Plex Sans",Arial,sans-serif;font-size:13px}
.jm-service footer{background:#e9ede4;border-color:var(--jm-line)}
.jm-service .footer-brand-name{font-family:Georgia,serif;color:var(--jm-ink);letter-spacing:-.02em}
/* Keep the foundation's own purple identity, with a quiet shared frame. */
.jm-memorial .hero{background:#fffdfa;border:1px solid #ded4e6;box-shadow:none;border-radius:12px}
.jm-memorial :is(.main-card,.quote-box,.process-step,.value-item){box-shadow:none!important}
.jm-memorial .hero-tagline{color:var(--purple-deep);font-family:Georgia,serif}
.jm-memorial :is(.section-heading,.river-name){color:var(--purple-deep)}
.jm-memorial .body-text{color:var(--text-primary);font-size:1.1rem}
.jm-support .content-card{margin-bottom:45px}
.jm-support .page-header{border-color:var(--jm-line)}
.jm-support .important-note{box-shadow:none;background:#edf1e9;border-color:var(--jm-teal)}
.jm-support .needs-list{background:#f2eee3;border-color:var(--jm-orange)}
/* Book and instrument pages keep their own distinct identities. */
.jm-book .wordmark{display:none}
.jm-book .page{max-width:1180px;padding-top:44px}
.jm-book .book-hero{background:none;border:0;box-shadow:none}
.jm-book .hero-kicker{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:11px;color:var(--jm-orange)}
.jm-book .buy-panel{background:var(--jm-ink);color:#f6f3ed;border:0;border-radius:8px;box-shadow:none}
.jm-book .buy-panel :is(h2,.buy-head){color:#f6f3ed}
.jm-book .buy-panel :is(.buy-sub,.buy-fine){color:#cbdbd2}
.jm-book .buy-panel .buy-fine a{color:#d1e5db}
.jm-book .btn{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:12px;border-radius:5px;box-shadow:none}
.jm-book .btn-primary{color:#fff!important;background:var(--jm-orange);border-color:var(--jm-orange)}
.jm-book .btn-ghost{color:var(--jm-teal);border-color:var(--jm-line);background:#fffdfa}
.jm-book .card{border:1px solid var(--jm-line);box-shadow:none;border-radius:8px;background:#fffdfa}
.jm-book :is(.excerpt,.hero-epigraph,.book-logline){font-family:Georgia,serif}
.jm-book :is(.book-logline,.hero-epigraph,.close-line-2){color:var(--jm-ink)}
.jm-book :is(.cta-fine,.footer-tagline,footer){color:var(--jm-muted)}
.jm-book .book-byline{font-family:"IBM Plex Sans",Arial,sans-serif;font-size:13px;color:var(--jm-muted)}
.jm-book .close-line-1{color:var(--jm-teal)}
.jm-project{background:#173436!important;color:#f6f3ed!important;--ink:#173436;--coal:#1b3d3e;--char:#224847;--smoke:#2e5550;--ash:#48736b;--brass:#d9926c;--gold:#df9771;--pale-gold:#edb48f;--cream:#f6f3ed;--fog:#bdcfc4}
.jm-project>.jm-shell-header{background:var(--jm-paper)!important}
.jm-project>nav{position:relative;top:auto;background:#0e292c;padding:20px 48px}
.jm-project h1,.jm-project h2,.jm-project h3{color:#f6f3ed}
.jm-project a{color:#edb48f}
.jm-project a:hover{color:#f6f3ed}
.jm-project .nav-links a{color:#bdcfc4}
.jm-project .btn-primary{color:var(--ink)}
.jm-project .hero{min-height:740px}
.jm-project .hero-title{font-size:clamp(3rem,6vw,5.5rem)!important}
.jm-project .jm-shell-footer{border-color:#56746b;color:#bdcfc4}
.jm-project .jm-shell-footer a{color:#f6f3ed}
.jm-interior.jm-thanks>.card{max-width:620px;margin:80px auto;background:#fffdfa;border:1px solid var(--jm-line);box-shadow:none;padding:45px;border-radius:12px}
.jm-thanks .badge{background:#e1eee5;color:var(--jm-teal)}
@media(min-width:1500px){.jm-recipes .recipe-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.jm-recipes .recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.jm-shell-header .jm-shell-inner{padding:20px 25px;gap:14px}.jm-shell-header .jm-shell-nav a{padding:8px;font-size:12px!important}.jm-service .site-header{flex-wrap:wrap}}
@media(max-width:760px){.jm-shell-header .jm-shell-inner{flex-direction:column;align-items:flex-start;padding:20px;gap:12px}.jm-shell-header .jm-shell-nav{justify-content:flex-start!important;gap:2px!important}.jm-shell-header .jm-shell-nav a{padding:7px 10px;font-size:12px!important}.jm-shell-header .jm-brand{font-size:23px!important}.jm-interior>.container{padding:30px 18px 45px!important}.jm-interior .essay-card{padding:32px 23px!important}.jm-interior h1{font-size:clamp(2.4rem,9vw,3.6rem)!important}.jm-recipes>.container{padding-top:38px!important}.jm-recipes h1{font-size:3.8rem!important}.jm-recipes .recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.jm-recipes .recipe-name{font-size:1.05rem!important;padding:15px 14px 6px!important}.jm-recipes .recipe-desc{padding:0 14px 17px;font-size:11px!important}.jm-recipes .category-header{flex-direction:row!important;text-align:left;gap:10px;align-items:center}.jm-recipes .category-title{font-size:1.7rem!important}.jm-recipes .filters{gap:6px}.jm-recipes .filter-btn{padding:9px 13px!important}.jm-interior .related-recipes{padding:0 18px 30px!important}.jm-interior .related-recipes-grid{grid-template-columns:1fr}.jm-recipe .made-this-container{margin:0 18px 30px!important;padding:22px!important}.jm-interior .jm-shell-footer{padding:28px 20px;align-items:flex-start;flex-direction:column}.jm-service .site-header{padding:16px 20px;align-items:flex-start;gap:13px}.jm-service .header-nav{justify-content:flex-start;gap:2px}.jm-service .hero{padding:52px 20px}.jm-service .hero-title{font-size:3.2rem!important}.jm-service .hero-sub{font-size:15px}.jm-service .section{padding:44px 20px}.jm-service .section-title{font-size:2.4rem!important}.jm-memorial .hero{padding:38px 24px}.jm-book .page{padding:25px 18px}.jm-project>nav{padding:20px}.jm-project .hero{min-height:auto}.jm-project .hero-left{padding:60px 28px!important}.jm-thanks.jm-interior>.card{margin:45px 18px;padding:35px 23px}}
@media(max-width:390px){.jm-recipes .recipe-grid{grid-template-columns:1fr}.jm-recipes h1{font-size:3.3rem!important}.jm-shell-header .jm-shell-nav a{padding:7px 8px}.jm-recipe .conversion-toggle{gap:10px}}
@media(prefers-reduced-motion:reduce){.jm-interior{scroll-behavior:auto!important}.jm-interior *,.jm-interior *::before,.jm-interior *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.jm-interior .fade-up{opacity:1!important;transform:none!important}.jm-recipes a.recipe-card:hover{transform:none!important}}
@media print{.jm-interior{background:#fff!important;color:#000!important;padding:0!important;font-size:11pt}.jm-interior :is(.jm-shell-header,.jm-shell-footer,.jm-skip-link,.breadcrumbs,.back-link,.action-buttons,.social-share-container,.conversion-toggle,.checklist-actions,.made-this-container,.related-recipes,.fb-comments,.comments-wrap,.share-buttons,.jm-unit-note){display:none!important}.jm-interior>.container{padding:0!important;max-width:none!important}.jm-interior .recipe-card:not(a),.jm-interior .essay-card{border:0!important;padding:0!important;background:#fff!important}.jm-interior h1{font-size:27pt!important;color:#000!important}.jm-interior h2{font-size:18pt!important;color:#000!important;break-after:avoid}.jm-recipe .recipe-image{max-height:180px;object-fit:contain}.jm-recipe .recipe-meta{display:block!important;margin:0 0 16pt;padding-bottom:10pt}.jm-recipe .ingredients-list li label{padding:4px 0}.jm-recipe .ingredients-list li{break-inside:avoid}.jm-interior a{color:#000!important}.jm-recipe .ingredients-list li.checked .jm-ingredient-text{color:#000;text-decoration:none}.jm-recipe .ingredients-list input{display:none}}
/* Shared identity and comfortable mobile field text. */
.jm-shell-header .jm-brand-mark{background:transparent;color:var(--jm-orange);border:1px solid var(--jm-orange);width:41px;height:41px;font-size:18px;letter-spacing:-2px;padding-right:2px;font-weight:400}
@media(max-width:760px){.jm-shell-header .jm-brand-mark{width:35px;height:35px;font-size:16px}.jm-service input,.jm-service select,.jm-service textarea{font-size:16px!important}}
