.ess-home-start,.ess-home-games,.ess-home-routes,.ess-home-search,.ess-site-search{--ess-entry-ink:#153d35;--ess-entry-teal:#116c72;--ess-entry-muted:#455f59;font:16px/1.6 system-ui,sans-serif;color:var(--ess-entry-ink);box-sizing:border-box;text-align:left}
.ess-home-start *,.ess-home-games *,.ess-home-routes *,.ess-home-search *,.ess-site-search *{box-sizing:border-box;min-width:0}
.ess-home-width{max-width:1120px;margin:0 auto}
.ess-home-start{padding:56px 24px 42px;background:#eff8f6;border-bottom:1px solid #d3e4df}
.ess-home-eyebrow{font-size:.8rem;font-weight:750;letter-spacing:.08em;color:var(--ess-entry-teal);margin:0 0 14px;text-transform:uppercase}
.ess-home-start h1{font:800 clamp(2.1rem,4.6vw,3.5rem)/1.15 system-ui,sans-serif;letter-spacing:-.025em;margin:0 0 20px;color:var(--ess-entry-ink)}
.ess-home-lead{max-width:650px;font-size:1.1rem;color:var(--ess-entry-muted);margin:0 0 26px}
.ess-home-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}
.ess-home-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:50px;padding:12px 22px;border:1px solid var(--ess-entry-teal);border-radius:10px;background:var(--ess-entry-teal);color:white;text-decoration:none;font-weight:700}
.ess-home-button-secondary{background:white;color:var(--ess-entry-teal)}
.ess-home-button:hover{box-shadow:0 3px 12px #153d3520;text-decoration:underline}
.ess-home-start .ess-home-actions{margin-bottom:12px}
.ess-home-app-entry{max-width:760px;margin-bottom:28px}
.ess-home-app-note{margin:0 0 12px;font-size:.9rem;color:var(--ess-entry-muted)}
.ess-home-app-guide{border:1px solid #c8ddd5;border-radius:10px;background:#fff;overflow-wrap:anywhere}
.ess-home-app-guide summary{cursor:pointer;min-height:48px;padding:12px 18px;color:var(--ess-entry-teal);font-weight:700}
.ess-home-app-guide summary:focus-visible{outline:3px solid #c9005d;outline-offset:3px;border-radius:10px}
.ess-home-app-guide[open] summary{border-bottom:1px solid #dce8e3}
.ess-home-app-guide-body{padding:16px 18px 10px;font-size:.95rem;color:var(--ess-entry-muted)}
.ess-home-app-guide-body p{margin:0 0 12px}.ess-home-app-guide-body ul{padding-left:22px;margin:0 0 12px}.ess-home-app-guide-body li{margin-bottom:12px}
.ess-home-app-guide-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;color:var(--ess-entry-teal);font-weight:700}
.ess-home-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;border-top:1px solid #c8ddd5;padding-top:22px}
.ess-home-paths a{display:block;color:var(--ess-entry-teal);text-decoration:none;min-height:60px;padding:4px 0}
.ess-home-paths a>span{display:block;font-size:.87rem;color:var(--ess-entry-muted);margin-bottom:3px}
.ess-home-paths strong{font-size:1rem}.ess-home-paths a:hover strong{text-decoration:underline}
.ess-home-start a:focus-visible,.ess-home-games a:focus-visible,.ess-home-routes a:focus-visible,.ess-home-search :is(input,button):focus-visible,.ess-site-search :is(a,input,button):focus-visible{outline:3px solid #c9005d;outline-offset:4px}
.ess-home-games,.ess-home-routes{padding:48px 24px;background:#f5faf9}.ess-home-routes{background:#edf5f8}
.ess-home-games h2,.ess-home-routes h2,.ess-home-search h2{font:750 clamp(1.55rem,3vw,2.2rem)/1.25 system-ui,sans-serif;margin:0 0 14px;color:var(--ess-entry-ink)}
.ess-home-section-intro{max-width:740px;color:var(--ess-entry-muted);margin:0 0 24px}
.ess-home-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ess-home-card{display:flex;flex-direction:column;padding:24px;border:1px solid #cfdfd9;border-radius:14px;background:white}
.ess-home-card-label{font-size:.8rem;font-weight:700;color:var(--ess-entry-teal);margin:0 0 10px}
.ess-home-card h3{font:750 1.25rem/1.3 system-ui,sans-serif;margin:0 0 12px;color:var(--ess-entry-ink)}
.ess-home-card>p:not(.ess-home-card-label){margin:0 0 18px;color:var(--ess-entry-muted);flex-grow:1}
.ess-home-card>a{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding-top:12px;border-top:1px solid #dbe7e3;color:var(--ess-entry-teal);font-weight:700;text-decoration:none}
.ess-home-card>a:hover{text-decoration:underline}
.ess-home-directory-link{display:inline-flex;align-items:center;gap:12px;min-height:48px;margin-top:18px;color:var(--ess-entry-teal);font-weight:700}
.ess-home-search{padding:48px 24px;background:#f6f8ec;border-block:1px solid #dce1ca}
.ess-home-search .ess-home-width{max-width:800px}
.ess-learning-search-form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:24px 0}
.ess-learning-search-form>div{flex:1 1 300px}
.ess-learning-search-form label{display:block;font-weight:650;margin-bottom:6px}
.ess-learning-search-form input{width:100%;min-height:48px;border:1px solid #829f97;border-radius:9px;padding:11px 14px;background:white;font:inherit;color:var(--ess-entry-ink)}
.ess-learning-search-form button{min-height:48px;border:1px solid var(--ess-entry-teal);border-radius:9px;padding:11px 24px;background:var(--ess-entry-teal);color:white;font:650 1rem/1.5 system-ui,sans-serif;cursor:pointer}
.ess-site-search{padding:40px 24px 56px;background:#f5faf9;min-height:60vh}.ess-site-search .ess-home-width{max-width:900px}
.ess-site-search h1{font:800 clamp(1.8rem,4vw,2.5rem)/1.2 system-ui,sans-serif;margin:0 0 20px;color:var(--ess-entry-ink)}
.ess-search-result-count{font:700 1.25rem/1.4 system-ui,sans-serif;margin:30px 0 16px;overflow-wrap:anywhere}
.ess-search-results{display:grid;gap:16px}
.ess-search-result{padding:22px 24px;border:1px solid #cfdfd9;background:white;border-radius:12px;overflow-wrap:anywhere}
.ess-search-result h3{font:700 1.3rem/1.4 system-ui,sans-serif;margin:0 0 10px}.ess-search-result h3 a{color:var(--ess-entry-teal);display:inline-block;min-height:44px;padding:4px 0}
.ess-search-result>p:last-child{color:var(--ess-entry-muted);margin:0}
.ess-search-pagination ul{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;list-style:none;padding:20px 0;margin:16px 0}
.ess-search-pagination :is(a,span){display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:8px 12px;border:1px solid #b4cdc3;border-radius:8px;color:var(--ess-entry-teal)}
.ess-search-pagination .current{background:var(--ess-entry-teal);color:white}
.ess-search-collections{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid #cbded6}
.ess-search-collections a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #b4cdc3;border-radius:8px;color:var(--ess-entry-teal);font-weight:650;background:white}
.ess-search-empty{padding:24px;border:1px solid #cfdfd9;border-radius:12px;background:white;margin-top:28px}.ess-search-empty h2{font-size:1.35rem;margin:0 0 10px}.ess-search-empty p{margin:0;color:var(--ess-entry-muted)}
@media(max-width:850px){.ess-home-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ess-home-games .ess-home-card-grid{grid-template-columns:1fr}}
@media(max-width:600px){.ess-home-start{padding:30px 20px 26px}.ess-home-start h1{font-size:2.05rem}.ess-home-lead{font-size:1rem}.ess-home-actions{gap:10px;margin-bottom:22px}.ess-home-button{width:100%}.ess-home-paths{grid-template-columns:1fr;gap:10px;padding-top:16px}.ess-home-paths a{min-height:56px}.ess-home-games,.ess-home-routes,.ess-home-search,.ess-site-search{padding:30px 20px}.ess-home-card-grid{grid-template-columns:1fr;gap:16px}.ess-home-card{padding:20px}.ess-learning-search-form button{width:100%}.ess-search-result{padding:18px}.ess-search-empty{padding:20px}}
