/* Effortless Math tutor directory /tutors/ v1.0.0 — everything scoped to .emtd */
.emtd{--ink:#15233d;--muted:#5b6678;--line:#e6e1d8;--cream:#fbf6ee;--paper:#fff;
  --green:#0f8a4f;--green-2:#e3f5ea;--orange:#f26b1d;--orange-2:#fff0e5;--blue:#2f6fde;--blue-2:#e8f0ff;
  --purple:#7b5cf0;--purple-2:#f0ecff;--pink:#e5528a;--pink-2:#ffeaf2;--teal:#11a3a3;--teal-2:#e2f7f6;
  --yellow:#f2b318;--yellow-2:#fff6db;--red:#e0483d;--red-2:#ffe9e7;--lime:#8cc63f;--lime-2:#f1f9e3;
  color:var(--ink);font-family:Roboto,-apple-system,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.55;background:var(--paper);overflow-x:clip}
.emtd *,.emtd *::before,.emtd *::after{box-sizing:border-box}
.emtd h1,.emtd h2,.emtd h3{color:var(--ink);font-family:inherit;letter-spacing:-.01em;margin:0}
.emtd p{margin:0}
.emtd a{color:var(--green)}
.emtd-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.emtd-ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.emtd-wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.emtd .c-green{--c:var(--green);--c2:var(--green-2)}.emtd .c-orange{--c:var(--orange);--c2:var(--orange-2)}.emtd .c-blue{--c:var(--blue);--c2:var(--blue-2)}
.emtd .c-purple{--c:var(--purple);--c2:var(--purple-2)}.emtd .c-pink{--c:var(--pink);--c2:var(--pink-2)}.emtd .c-teal{--c:var(--teal);--c2:var(--teal-2)}
.emtd .c-yellow{--c:var(--yellow);--c2:var(--yellow-2)}.emtd .c-red{--c:var(--red);--c2:var(--red-2)}.emtd .c-lime{--c:var(--lime);--c2:var(--lime-2)}
.emtd-preview{max-width:1160px;margin:14px auto 0;padding:10px 16px;border-radius:12px;background:#fff6db;border:1px solid #f2d27a;font-size:14.5px}
.emtd-preview a{font-weight:700}

/* Buttons and chips */
.emtd-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 20px;border-radius:12px;border:2px solid var(--orange);background:var(--orange);color:#fff!important;font-weight:700;font-size:15px;line-height:1.2;text-decoration:none!important;cursor:pointer;transition:transform .15s,background .15s,box-shadow .15s}
.emtd-btn:hover{background:#d95712;border-color:#d95712;transform:translateY(-1px);box-shadow:0 6px 16px rgba(242,107,29,.25)}
.emtd-btn.ghost{background:#fff;color:var(--ink)!important;border-color:var(--line)}
.emtd-btn.ghost:hover{border-color:var(--ink);box-shadow:none;background:#fff}
.emtd-btn.light{background:#fff;border-color:#fff;color:var(--ink)!important}
.emtd-btn.light:hover{background:var(--ink);border-color:var(--ink);color:#fff!important}
.emtd-chip{padding:6px 13px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-size:13.5px;font-weight:600;cursor:pointer;transition:all .15s}
.emtd-chip:hover{border-color:var(--green);color:var(--green)}
.emtd-chip[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}
.emtd button:focus-visible,.emtd a:focus-visible,.emtd input:focus-visible,.emtd select:focus-visible,.emtd summary:focus-visible{outline:3px solid var(--blue);outline-offset:2px}

/* Hero */
.emtd-hero{position:relative;background:var(--cream);padding:56px 20px 50px;overflow:hidden}
.emtd-hero-in{position:relative;z-index:2;max-width:720px;margin:0 auto;text-align:center}
.emtd-eyebrow{display:inline-block;margin-bottom:12px!important;padding:5px 12px;border-radius:999px;background:#fff;color:var(--green);font-weight:800;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 2px 8px rgba(21,35,61,.06)}
.emtd-hero h1{font-size:clamp(30px,4.6vw,48px);line-height:1.12;font-weight:800}
.emtd-rot{display:inline-block;position:relative;padding:0 .18em;margin-top:4px;border-radius:.2em;background:var(--lime);color:var(--ink);white-space:nowrap}
.emtd-rot-w{display:inline-block;transition:opacity .28s,transform .28s}
.emtd-rot-w.out{opacity:0;transform:translateY(-.35em)}
.emtd-sub{max-width:560px;margin:14px auto 22px!important;color:var(--muted);font-size:17.5px}
.emtd-search{display:flex;align-items:stretch;max-width:660px;margin:0 auto;background:#fff;border:2px solid var(--ink);border-radius:16px;box-shadow:0 10px 28px rgba(21,35,61,.12);overflow:hidden}
.emtd-search-ic{display:flex;align-items:center;padding:0 4px 0 16px;color:var(--muted)}
.emtd-search input{flex:1;min-width:0;border:0!important;outline:0;padding:15px 10px;font-size:16.5px;background:transparent;color:var(--ink);box-shadow:none!important}
.emtd-search select{border:0;border-left:1px solid var(--line);padding:0 12px;font-size:14.5px;background:#fff;color:var(--ink);max-width:190px;cursor:pointer}
.emtd-search button{border:0;padding:0 24px;background:var(--orange);color:#fff;font-weight:800;font-size:16px;cursor:pointer;transition:background .15s}
.emtd-search button:hover{background:#d95712}
.emtd-trend{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:16px;font-size:14px;color:var(--muted)}
.emtd-trend>span{font-weight:700}
.emtd-props{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:760px;margin:34px auto 0!important;padding:0!important;list-style:none!important;text-align:left}
.emtd-props li{display:flex;gap:10px;align-items:flex-start;margin:0!important;font-size:14px;color:var(--muted)}
.emtd-props b{display:block;color:var(--ink);font-size:15px}
.emtd-pi{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--c2);color:var(--c);flex:none}

/* Diamonds */
.emtd-art{position:absolute;top:0;bottom:0;width:30%;z-index:1;pointer-events:none}
.emtd-art-l{left:0}.emtd-art-r{right:0}
.emtd-dia{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;border-radius:14px;transform:rotate(45deg);background:var(--c);box-shadow:0 10px 24px rgba(21,35,61,.12);animation:emtd-float 7s ease-in-out infinite}
.emtd-dia .emtd-ic{transform:rotate(-45deg);width:44%;height:44%;color:#fff;stroke-width:1.6}
.emtd-dia.photo{overflow:hidden;background:#fff;border:5px solid #fff}
.emtd-dia.photo img{width:142%;height:142%;max-width:none;object-fit:cover;transform:rotate(-45deg)}
.emtd-art .d1{width:140px;height:140px;top:16%;left:18%}
.emtd-art .d2{width:110px;height:110px;top:56%;left:44%;animation-delay:-2s}
.emtd-art .d3{width:58px;height:58px;top:10%;left:62%;animation-delay:-4s}
.emtd-art .d4{width:46px;height:46px;top:72%;left:10%;animation-delay:-1s}
.emtd-art-r .d1{left:auto;right:18%}.emtd-art-r .d2{left:auto;right:44%}.emtd-art-r .d3{left:auto;right:62%}.emtd-art-r .d4{left:auto;right:10%}
.emtd-bar{position:absolute;z-index:0;width:200px;height:26px;border-radius:6px;transform:rotate(-45deg);opacity:.85}
.emtd-art .b1{top:42%;left:-40px;background:var(--orange)}.emtd-art .b2{top:84%;left:46%;width:120px;background:var(--green)}
.emtd-art-r .b1{left:auto;right:-40px;background:var(--green);transform:rotate(45deg)}.emtd-art-r .b2{left:auto;right:46%;background:var(--orange);transform:rotate(45deg)}
@keyframes emtd-float{0%,100%{translate:0 0}50%{translate:0 -10px}}

/* Independent-tutor notice */
.emtd-notice{display:flex;gap:16px;align-items:flex-start;margin-top:28px}
.emtd-notice>div{flex:1;padding:22px 24px;border:2px solid #f2b318;border-radius:20px;background:#fff9e8}
.emtd-notice-ic{display:none}
.emtd-notice h2{font-size:clamp(20px,2.4vw,26px)!important;margin-bottom:10px!important}
.emtd-notice ul{margin:0 0 12px!important;padding-left:20px!important}
.emtd-notice li{margin:0 0 6px!important;color:#33405a}
.emtd-notice strong{color:var(--ink)}
.emtd-notice-scam{padding:12px 14px;border-radius:12px;background:#fff;border:1px solid #f3d27a;color:#33405a}
.emtd-sub strong{color:var(--ink)}

/* Section headings */
.emtd-cats{margin-top:48px!important}
.emtd-cats,.emtd-results,.emtd-practice,.emtd-safe,.emtd-faq{margin-top:64px}
.emtd h2{font-size:clamp(26px,3vw,34px);line-height:1.2;font-weight:800}
.emtd-lead{margin:8px 0 22px!important;color:var(--muted);font-size:17px}

/* Subject tiles */
.emtd-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.emtd-cat{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:18px;border:2px solid transparent;border-radius:18px;background:var(--c2);color:var(--ink);text-align:left;cursor:pointer;overflow:hidden;transition:transform .18s,box-shadow .18s,border-color .18s}
.emtd-cat::after{content:"";position:absolute;right:-26px;bottom:-26px;width:80px;height:80px;border-radius:14px;background:var(--c);opacity:.14;transform:rotate(45deg);transition:transform .3s}
.emtd-cat:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(21,35,61,.1)}
.emtd-cat:hover::after{transform:rotate(45deg) scale(1.25)}
.emtd-cat[aria-pressed=true]{border-color:var(--c);box-shadow:0 0 0 3px var(--c2) inset}
.emtd-cat-ic{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;background:var(--c);color:#fff}
.emtd-cat-t{font-weight:800;font-size:16.5px;margin-top:4px}
.emtd-cat-n{font-size:13.5px;color:var(--muted)}

/* Filters */
.emtd-res-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:16px}
.emtd-count{color:var(--muted);font-weight:600}
.emtd-bar-f{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 4px 16px rgba(21,35,61,.05);position:sticky;top:70px;z-index:5}
.emtd-f-search{flex:1 1 240px;display:flex;align-items:center;gap:6px;padding:0 12px;border:1.5px solid var(--line);border-radius:12px;color:var(--muted)}
.emtd-f-search input{flex:1;min-width:0;border:0!important;outline:0;padding:10px 4px;font-size:15px;background:transparent;box-shadow:none!important}
.emtd-bar-f select{padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;background:#fff;font-size:14.5px;color:var(--ink);cursor:pointer}
.emtd-seg{display:inline-flex;padding:3px;border-radius:12px;background:#f2efe9}
.emtd-seg button{display:inline-flex;align-items:center;gap:5px;padding:8px 12px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-weight:700;font-size:14px;cursor:pointer}
.emtd-seg button .emtd-ic{width:17px;height:17px}
.emtd-seg button[aria-checked=true]{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(21,35,61,.12)}
.emtd-levels{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 20px;font-size:14px;color:var(--muted)}
.emtd-levels>span{font-weight:700}
.emtd-clear{border:0;background:none;color:var(--orange);font-weight:700;cursor:pointer;text-decoration:underline;font-size:14px}

/* Cards */
.emtd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:18px}
.emtd-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;transition:transform .18s,box-shadow .18s,border-color .18s}
.emtd-card::before{content:"";position:absolute;inset:0 0 auto 0;height:6px;border-radius:20px 20px 0 0;background:linear-gradient(90deg,var(--c),var(--c2))}
.emtd-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(21,35,61,.12);border-color:transparent}
.emtd-card[hidden]{display:none}
.emtd-card-top{display:flex;gap:14px;align-items:center}
.emtd-ph{position:relative;flex:none;width:84px;height:84px;border-radius:22px;overflow:hidden;background:var(--c2);display:flex;align-items:center;justify-content:center;text-decoration:none!important}
.emtd-ph img{width:100%;height:100%;object-fit:cover}
.emtd-ph span{font-weight:800;font-size:28px;color:var(--c)}
.emtd-card-id{flex:1;min-width:0}
.emtd-card h3{font-size:19px;line-height:1.25;font-weight:800}
.emtd-card h3 a{color:var(--ink)!important;text-decoration:none!important}
.emtd-card h3 a:hover{color:var(--green)!important}
.emtd-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0 0!important}
.emtd-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700}
.emtd-badge .emtd-ic{width:13px;height:13px;stroke-width:2.6}
.emtd-badge.ok{background:var(--green-2);color:var(--green)}
.emtd-badge.pend{background:var(--yellow-2);color:#946200}
.emtd-hl{font-size:15.5px;font-weight:600;line-height:1.4;color:var(--ink)}
.emtd-rate{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--c2);color:var(--ink);font-weight:800;font-size:13px}
.emtd-facts{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0!important;padding:0!important;list-style:none!important;font-size:13.5px;color:var(--muted)}
.emtd-facts li{display:flex;align-items:center;gap:5px;margin:0!important}
.emtd-facts .emtd-ic{width:17px;height:17px;color:var(--c)}
.emtd-ver{display:flex;gap:6px;align-items:flex-start;padding:8px 10px;border-radius:12px;background:var(--green-2);color:#0b5e35;font-size:13.5px}.emtd-ver .emtd-ic{width:18px;height:18px;color:var(--green)}
.emtd-vchip[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}
.emtd-ex{font-size:14.5px;color:#3b4658;line-height:1.55}
.emtd-tags{display:flex;flex-wrap:wrap;gap:6px}
.emtd-tags span{padding:3px 10px;border-radius:999px;background:#f3f1ec;font-size:12.5px;font-weight:600;color:#3b4658}
.emtd-tags span.more{background:transparent;border:1px dashed var(--line)}
.emtd-actions{display:flex;gap:10px;margin-top:auto;padding-top:4px}
.emtd-actions .emtd-btn{flex:1;padding:10px 14px;font-size:14.5px}
.emtd-empty,.emtd-soon{padding:34px 24px;border:2px dashed var(--line);border-radius:20px;text-align:center;background:var(--cream)}
.emtd-empty p{margin-bottom:14px!important}
.emtd-soon h3{font-size:24px;margin:14px 0 8px}
.emtd-soon p{max-width:620px;margin:0 auto!important;color:var(--muted)}
.emtd-soon .emtd-soon-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px!important}
.emtd-soon-art{display:flex;justify-content:center;gap:26px;height:70px;align-items:center}
.emtd-soon-art .emtd-dia{position:relative;width:52px;height:52px}

/* How it works */
.emtd-how{margin-top:72px;padding:56px 0;background:var(--cream)}
.emtd-how h2{text-align:center}
.emtd-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0 0!important;padding:0!important;list-style:none!important;counter-reset:none}
.emtd-steps li{position:relative;margin:0!important;padding:28px 22px 24px;border-radius:20px;background:#fff;text-align:center;box-shadow:0 6px 20px rgba(21,35,61,.06)}
.emtd-step-n{position:absolute;top:14px;left:16px;font-weight:800;font-size:13px;color:var(--c)}
.emtd-step-art{display:inline-flex;align-items:center;justify-content:center;width:74px;height:74px;margin-bottom:12px;border-radius:22px;background:var(--c2);color:var(--c);transform:rotate(45deg)}
.emtd-step-art .emtd-ic{width:32px;height:32px;transform:rotate(-45deg)}
.emtd-steps h3{font-size:19px;margin-bottom:6px}
.emtd-steps p{color:var(--muted);font-size:15px}

/* Practice band */
.emtd-practice{display:grid;grid-template-columns:1fr 1.4fr;gap:26px;align-items:center}
.emtd-practice p{margin-top:8px!important;color:var(--muted);font-size:16.5px}
.emtd-pr-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.emtd-pr-links a{display:flex;flex-direction:column;gap:8px;padding:18px;border-radius:18px;background:var(--c2);color:var(--ink)!important;text-decoration:none!important;transition:transform .18s,box-shadow .18s}
.emtd-pr-links a:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(21,35,61,.1)}
.emtd-pr-links .emtd-ic{width:30px;height:30px;color:var(--c)}
.emtd-pr-links b{display:block;font-size:16px;color:var(--ink)}
.emtd-pr-links span{font-size:13.5px;color:var(--muted)}

/* Safety + FAQ */
.emtd-safe{display:flex;gap:18px;align-items:flex-start}
.emtd-safe>div{padding:22px 24px;border-radius:20px;background:var(--blue-2)}
.emtd-safe h2{font-size:22px;margin-bottom:6px}
.emtd-safe p{color:#33405a}
.emtd-safe-ic{display:none}
.emtd-faq h2{margin-bottom:16px}
.emtd-faq details{border-bottom:1px solid var(--line)}
.emtd-faq summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 4px;font-weight:700;font-size:17px;cursor:pointer;list-style:none}
.emtd-faq summary::-webkit-details-marker{display:none}
.emtd-faq summary::after{content:"+";flex:none;width:30px;height:30px;border-radius:50%;background:var(--green-2);color:var(--green);font-size:20px;line-height:30px;text-align:center;transition:transform .2s}
.emtd-faq details[open] summary::after{transform:rotate(45deg)}
.emtd-faq details p{padding:0 4px 16px;color:var(--muted)}

/* Join band */
.emtd-join{position:relative;margin-top:72px;padding:64px 20px;background:var(--yellow);overflow:hidden;text-align:center}
.emtd-join-in{position:relative;z-index:2;max-width:640px;margin:0 auto}
.emtd-join h2{font-size:clamp(26px,3.4vw,36px)}
.emtd-join p{margin:10px 0 22px!important;font-size:17px;color:#3a2c00}
.emtd-join-s{position:absolute;width:220px;height:220px;transform:rotate(45deg);opacity:.9}
.emtd-join .s1{left:-60px;top:-110px;background:var(--orange)}.emtd-join .s2{left:90px;bottom:-150px;background:var(--lime)}
.emtd-join .s3{right:-60px;top:-110px;background:var(--lime)}.emtd-join .s4{right:90px;bottom:-150px;background:var(--orange)}

/* Quick look dialog */
.emtd-dlg{width:min(680px,calc(100vw - 24px));max-height:calc(100vh - 40px);padding:0;border:0;border-radius:22px;box-shadow:0 30px 80px rgba(21,35,61,.35);color:var(--ink)}
.emtd-dlg::backdrop{background:rgba(21,35,61,.5)}
.emtd-dlg[open]{animation:emtd-pop .22s ease-out}
@keyframes emtd-pop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.emtd-dlg-in{padding:26px}
.emtd-dlg-x{position:absolute;top:12px;right:12px;width:38px;height:38px;border:0;border-radius:50%;background:#f2efe9;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center}
.emtd-dlg-head{display:flex;gap:16px;align-items:center;margin-bottom:16px;padding-right:40px}
.emtd-dlg-head .emtd-ph{width:96px;height:96px}
.emtd-dlg h2{font-size:24px}
.emtd-dmeta{margin-top:6px!important;font-size:14px;color:var(--muted)}.emtd-dmeta b{color:var(--ink)}
.emtd-dlg h4{margin:16px 0 6px;font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.emtd-dlg .emtd-bio{white-space:pre-line;color:#33405a}
.emtd-dlg-warn{margin-top:16px!important;padding:10px 12px;border-radius:10px;background:#fff9e8;border:1px solid #f3d27a;font-size:14px;color:#33405a}
.emtd-dlg-foot{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

/* Reveal on scroll */
.emtd-js .emtd-reveal{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease}
.emtd-js .emtd-reveal.in{opacity:1;transform:none}

@media (max-width:1100px){.emtd-art{width:22%;opacity:.55}.emtd-art .d1{width:100px;height:100px}.emtd-art .d2{width:80px;height:80px}}
@media (max-width:900px){.emtd-art{display:none}.emtd-practice{grid-template-columns:1fr}.emtd-steps{grid-template-columns:1fr}.emtd-bar-f{position:static}}
@media (max-width:640px){
  .emtd-hero{padding:36px 16px 34px}
  .emtd-search{flex-wrap:wrap;border-radius:14px}
  .emtd-search input{flex:1 1 70%;padding:13px 8px}
  .emtd-search select{flex:1 1 100%;max-width:none;border-left:0;border-top:1px solid var(--line);padding:11px 14px}
  .emtd-search button{flex:1 1 100%;padding:13px}
  .emtd-props{grid-template-columns:1fr;gap:12px}
  .emtd-wrap{padding:0 16px}
  .emtd-cats,.emtd-results,.emtd-practice,.emtd-safe,.emtd-faq{margin-top:46px}
  .emtd-cat-grid{grid-template-columns:1fr 1fr;gap:10px}
  .emtd-cat{padding:14px}
  .emtd-grid{grid-template-columns:1fr}
  .emtd-card{padding:16px}
  .emtd-ph{width:68px;height:68px;border-radius:18px}
  .emtd-pr-links{grid-template-columns:1fr}
  .emtd-bar-f select,.emtd-seg{flex:1 1 100%}
  .emtd-seg button{flex:1;justify-content:center}
  .emtd-dlg-in{padding:20px}
  .emtd-dlg-head{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  .emtd *{animation:none!important;transition:none!important}
  .emtd-js .emtd-reveal{opacity:1;transform:none}
}
