*{box-sizing:border-box}body{margin:0;background:#f5f8f8;color:#173747;font:15px/1.6 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.wrap{max-width:1180px;margin:auto;padding:0 20px}.skip{position:absolute;top:-60px;left:15px}.skip:focus{top:10px}.mainnav{background:#fff;display:flex;justify-content:space-between;align-items:center;padding:16px max(20px,calc((100% - 1140px)/2));gap:20px;border-bottom:1px solid #e1eaea}.mainnav nav{display:flex;align-items:center;gap:17px}.mainnav a,footer a{color:#325d60;text-decoration:none;font-weight:700;font-size:13px}.mainnav .brand{font-weight:900;font-size:21px;color:#173747;white-space:nowrap}.brand span{color:#167d69}.button,.toolbar button{display:inline-flex;align-items:center;justify-content:center;background:#147d6c;color:#fff!important;border:1px solid #147d6c;border-radius:10px;padding:12px 19px;font-weight:800;text-decoration:none;cursor:pointer;white-space:nowrap}.button.outline{background:#fff;color:#147d6c!important}.hero{background:linear-gradient(120deg,#143a4b,#166d69 65%,#358d7b);padding:64px 0;color:#fff}.label{font-size:11px;text-transform:uppercase;letter-spacing:2px;font-weight:900;color:#b9ecdc}.label.dark{color:#177a69}.hero h1{font-size:clamp(34px,5vw,57px);letter-spacing:-2px;line-height:1.05;max-width:850px;margin:15px 0}.hero h1 em{font-style:normal;color:#b3f2d7}.hero p{max-width:760px;color:#e2f0f0;font-size:17px}.hero-points{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;font-weight:700;margin-top:25px;color:#d3f2e5}.directory{padding-top:34px;padding-bottom:45px}.toolbar{background:#fff;border:1px solid #e1eaea;border-radius:14px;padding:16px;display:grid;grid-template-columns:1fr 1fr 1.2fr auto;gap:13px;align-items:end}.toolbar label{display:block;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.8px;color:#718995}.toolbar input,.toolbar select{width:100%;border:1px solid #d6e5e9;border-radius:9px;min-height:43px;margin-top:6px;padding:9px;color:#2b4b57;background:#fff}.toolbar button{min-height:43px}.heading{margin:30px 0 17px;display:flex;justify-content:space-between;gap:10px;align-items:end}.heading h2{font-size:26px;letter-spacing:-.5px;margin:4px 0}.heading>span{color:#7c909a;font-size:12px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.card{background:#fff;border-radius:15px;border:1px solid #e4ecee;overflow:hidden;box-shadow:0 10px 25px #1643540b}.photo{height:115px;background:linear-gradient(135deg,#d9f4e7,#ecf1f7);display:grid;place-items:center;font-size:40px}.photo img{width:100%;height:100%;object-fit:cover}.body{padding:19px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tag{font-weight:800;font-size:10px;padding:5px 9px;background:#e4f6ef;color:#137e64;border-radius:30px}.tag.unverified{background:#f1f4f6;color:#77858c}.card h3{font-size:18px;line-height:1.3;margin:14px 0 7px}.card p{font-size:13px;color:#647988;line-height:1.65}.footer-row{border-top:1px solid #edf2f4;margin-top:19px;padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.footer-row strong{color:#166d63;font-size:13px}.footer-row button,.detail-button{border:1px solid #d4e6e7;border-radius:9px;background:#fff;color:#175d62;font-weight:800;padding:9px 12px;cursor:pointer}.detail-button{margin:12px}.banner{border-radius:20px;background:#e5f5f0;display:flex;justify-content:space-between;gap:22px;align-items:center;padding:25px;margin-bottom:60px}.banner h2{margin:0;font-size:25px}.banner p{color:#57777b;margin:6px 0 0}footer{border-top:1px solid #e1e8eb;background:white;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 8%;font-size:12px;color:#7e8e99}#details[hidden]{display:none}#details{margin-top:20px;padding:25px;border:1px solid #dde8ea;background:#fff;border-radius:16px}#details p{white-space:pre-wrap;overflow-wrap:anywhere}#details h2{font-size:27px;margin:8px 0}#details a{color:#147d6c;font-weight:800}#details .button{margin-top:15px}.empty{background:#fff;border:1px dashed #bfd3d8;border-radius:14px;padding:35px;color:#657c86}
@media(max-width:850px){.toolbar{grid-template-columns:1fr 1fr}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.banner{flex-direction:column;align-items:flex-start}.mainnav nav>a:not(.button){display:none}}
@media(max-width:580px){.cards,.toolbar{grid-template-columns:1fr}.mainnav{padding:12px 16px}.mainnav nav{gap:8px}.mainnav nav .outline{display:none}.hero{padding:44px 0}.hero-points{gap:10px}.cards .photo{height:95px}footer{flex-wrap:wrap}.heading{align-items:flex-start;flex-direction:column}}
