:root{--font-header:"Poppins",sans-serif;--font-body:"Inter",sans-serif;--green:#07624e;--green-hover:#0a745d;--green-deep:#064735;--orange:#d27744;--orange-hover:#e38a56;--orange-deep:#8a4a26;--mint:#ecfdf6;--cream:#fcf6f0;--ink:#000;--muted:rgba(0,0,0,0.75);--faint:rgba(0,0,0,0.55);--card-border:rgba(7,98,78,0.18);--card-hover-shadow:0 14px 30px rgba(7,98,78,0.12);--btn-radius:24px}*{box-sizing:border-box}body{margin:0;background:#ffffff;font-family:var(--font-body);font-size:17px;font-weight:400;line-height:1.5;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}body,h1,h2,h3,h4{color:var(--ink);-webkit-hyphens:none;hyphens:none}h1,h2,h3,h4{font-family:var(--font-header);margin:.25em 0;text-wrap:balance}h1{font-size:clamp(2rem,1.45rem + 2.3vw,3rem);line-height:1.15}h1,h2{font-weight:800;letter-spacing:-.01em}h2{font-size:clamp(1.75rem,1.4rem + 1.5vw,2.5rem);line-height:1.2}h3{font-size:clamp(1.375rem,1.2rem + .75vw,1.75rem);line-height:1.3}h3,h4{font-weight:700}h4{font-size:1.25rem;line-height:1.35}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--green-hover);outline-offset:3px}.about-html a,.lede a,.txt-link,p a{font-weight:800;text-decoration:underline;color:var(--orange);transition:color .3s ease}.about-html a:hover,.lede a:hover,.txt-link:hover,p a:hover{color:var(--orange-hover)}.wrap{max-width:1080px;margin:0 auto;padding:0 24px}.topbar{background:var(--green)}.topbar-row{display:flex;gap:26px;padding:8px 24px;flex-wrap:wrap;justify-content:center}.topbar a{color:#fdfaf3;font-size:13.5px;font-weight:600;transition:color .3s ease}.topbar a:hover{color:var(--orange-hover);text-decoration:none}@media (max-width:700px){.topbar-row{gap:14px}.topbar a{font-size:12.5px}}.site-header{background:#ffffff}.site-header .wrap{justify-content:space-between;padding-top:14px;padding-bottom:14px;gap:16px;flex-wrap:wrap}.brand,.site-header .wrap{display:flex;align-items:center}.brand-logo{height:54px;width:auto;display:block}@media (max-width:700px){.brand-logo{height:44px}}.nav{display:flex;gap:26px;align-items:center;font-size:16px;font-weight:600}.nav a{color:var(--ink);transition:color .3s ease}.nav a:hover{color:var(--green)}.hamburger{display:none;background:none;border:1px solid var(--card-border);border-radius:10px;font-size:22px;line-height:1;padding:8px 12px;color:var(--green);cursor:pointer}.mobile-menu{display:none;position:absolute;left:12px;right:12px;top:100%;z-index:80;background:#fff;border:1px solid var(--card-border);border-radius:18px;box-shadow:0 14px 30px rgba(7,98,78,.16);padding:16px;flex-direction:column;gap:4px}.mobile-menu a{padding:11px 12px;border-radius:10px;font-weight:600;color:var(--ink)}.mobile-menu a:hover{background:var(--mint);color:var(--green);text-decoration:none}.mobile-menu a.btn{color:#fff;text-align:center;margin-top:6px}@media (max-width:900px){.site-header .wrap{position:relative}.desktop-nav{display:none}.hamburger{display:block}.mobile-menu{display:flex}}.btn{display:inline-block;font-family:var(--font-body);font-size:18px;font-weight:700;color:#ffffff;background-color:var(--green);border:none;border-radius:var(--btn-radius);padding:16px 34px;text-align:center;line-height:1.5;cursor:pointer;box-shadow:none;transition:background-color .3s ease}.btn:hover{background-color:var(--green-hover);color:#ffffff}.btn.small{font-size:16px;padding:12px 26px}.btn.action{font-size:14.5px;padding:10px 20px;border-radius:999px}.btn.ghost.action{color:var(--muted);border-color:var(--card-border);font-weight:600}.btn.ghost.action:hover{color:var(--green);border-color:var(--green);background:#fff}.btn.orange{background-color:var(--orange)}.btn.orange:hover{background-color:var(--orange-hover)}.btn.ghost{background:#ffffff;color:var(--green);border:1px solid var(--card-border)}.btn.ghost:hover{background:#f8f8f8;color:var(--green-deep)}.hero-band{background:var(--mint);padding:56px 0 52px;text-align:center}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-gap:44px;gap:44px;align-items:center;text-align:left}.hero-grid .hero-copy h1{margin-left:0;max-width:15ch}.hero-grid .searchbox,.hero-grid .sub{margin-left:0}.hero-grid .popular{justify-content:flex-start}.hero-art img{width:100%;max-width:420px;height:auto;display:block;margin:0 auto}@media (max-width:900px){.hero-grid{grid-template-columns:1fr;text-align:center}.hero-grid .hero-copy h1,.hero-grid .searchbox,.hero-grid .sub{margin-left:auto;margin-right:auto}.hero-grid .popular{justify-content:center}.hero-art{order:-1}.hero-art img{max-width:250px}}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:26px;gap:26px;padding:38px 0 8px}@media (max-width:800px){.trust-row{grid-template-columns:1fr;gap:18px}}.trust{display:flex;gap:14px;align-items:flex-start}.trust-badge{flex:none;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;margin-top:2px}.trust h4{margin:0 0 4px;font-size:1.05rem}.trust p{margin:0;font-size:.95rem;color:var(--muted)}.steps-band .step{text-align:left}.step-num{width:42px;height:42px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-header);font-weight:800;font-size:18px;margin-bottom:14px}.step h3{font-size:1.2rem;margin:0 0 8px}.step p{margin:0;font-size:.975rem;color:var(--muted)}.kicker{display:inline-block;background:#ffffff;color:var(--green);font-family:var(--font-header);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 18px;border-radius:999px;margin-bottom:18px;border:1px solid var(--card-border)}.hero-band h1{max-width:720px;margin-left:auto;margin-right:auto}.hero-band .sub{font-size:1.125rem;color:var(--muted);max-width:560px;margin:14px auto 30px}.searchbox{position:relative;max-width:640px;margin:0 auto;text-align:left}.search-row{display:flex;gap:10px;background:#ffffff;border:1px solid var(--card-border);border-radius:999px;padding:8px 8px 8px 26px;align-items:center;box-shadow:0 4px 14px rgba(0,0,0,.06)}.search-row input{border:none;outline:none;flex:1 1;min-width:0;font-family:var(--font-body);font-size:18px;height:44px;background:transparent}.search-row .btn{padding:12px 30px;font-size:16px}.search-pop{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:30;background:#ffffff;border:1px solid var(--card-border);border-radius:20px;box-shadow:0 14px 30px rgba(7,98,78,.14);padding:10px;max-height:420px;overflow-y:auto}.search-pop .group-label{font-family:var(--font-header);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:10px 12px 4px}.search-pop a{display:flex;align-items:baseline;gap:8px;padding:9px 12px;border-radius:12px;font-size:15.5px;font-weight:600;color:var(--ink)}.search-pop a.active,.search-pop a:hover{background:var(--cream);color:var(--green)}.search-pop a .where{font-size:13px;font-weight:400;color:var(--faint)}.popular{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:18px}.popular a{background:#ffffff;border:1px solid var(--card-border);border-radius:999px;padding:8px 18px;font-size:14.5px;font-weight:600;color:var(--green);transition:border-color .3s ease}.popular a:hover{border-color:var(--green)}.loc-control{position:relative}.loc-btn{font-family:var(--font-body);font-size:15px;font-weight:700;color:var(--green);background:var(--mint);border:1px solid var(--card-border);border-radius:999px;padding:9px 16px;cursor:pointer;transition:border-color .3s ease}.loc-btn:hover{border-color:var(--green)}.loc-pop{position:absolute;right:0;top:calc(100% + 10px);z-index:60;background:#ffffff;border:1px solid var(--card-border);border-radius:18px;box-shadow:0 14px 30px rgba(7,98,78,.14);padding:16px;width:320px}.loc-pop-label{font-family:var(--font-header);font-weight:700;font-size:.95rem;margin-bottom:10px}.loc-pop-row{display:flex;gap:8px;align-items:stretch}.loc-pop-row .inp{padding:10px 12px;font-size:15px}@media (max-width:560px){.loc-pop{position:fixed;left:12px;right:12px;width:auto}}.finder{display:flex;gap:10px;max-width:640px;margin:14px 0 0;align-items:stretch;flex-wrap:wrap}.finder-sel{flex:1 1;min-width:180px;font-family:var(--font-body);font-size:15.5px;font-weight:600;color:var(--ink);border:1px solid var(--card-border);border-radius:999px;background:#ffffff;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2307624e' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding:12px 38px 12px 16px}@media (max-width:640px){.finder{flex-direction:column}.finder .btn{width:100%}}.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:12px;gap:12px}.svc-tile{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:68px;padding:14px 20px;background:#ffffff;border:1px solid var(--card-border);border-radius:16px;transition:border-color .3s ease,background .3s ease}.svc-tile:hover{border-color:var(--green);background:var(--mint);text-decoration:none}.svc-tile .svc-name{font-family:var(--font-header);font-weight:700;font-size:1rem;line-height:1.25;color:var(--ink)}.svc-tile .svc-n,.svc-tile:hover .svc-name{color:var(--green)}.svc-tile .svc-n{flex:none;background:var(--mint);font-weight:700;font-size:.825rem;padding:4px 12px;border-radius:999px}.svc-tile:hover .svc-n{background:#ffffff}.crumbs{font-size:13.5px;margin:26px 0 14px}.crumbs,.crumbs a{color:var(--faint)}.crumbs a:hover{color:var(--green)}.crumbs .sep{margin:0 6px}.lede{color:var(--muted);font-size:1.075rem;max-width:62ch;margin:0 0 26px}.grid{display:grid;grid-gap:30px;gap:30px}.cards2{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}@media (max-width:440px){.cards2{grid-template-columns:1fr}}.cards3{grid-template-columns:repeat(3,1fr)}@media (max-width:980px){.cards3{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.cards3{grid-template-columns:1fr}}.card{background:#ffffff;border:1px solid var(--card-border);border-radius:20px;padding:24px 26px;transition:border-color .3s ease,transform .3s ease,box-shadow .3s ease}.card.hoverable:hover,.grid .card:hover{border-color:var(--green);transform:translateY(-3px);box-shadow:var(--card-hover-shadow)}.card h3{font-size:1.25rem;margin:0 0 4px}.card h3 a{color:var(--green)}.card h3 a:hover{color:var(--green-hover)}.card .meta{font-size:.925rem;color:var(--faint)}@media (prefers-reduced-motion:reduce){.card,.grid .card:hover{transition:none;transform:none}}.vendor-card{display:flex;gap:18px;align-items:flex-start;padding:26px}a.vendor-card{color:var(--ink)}a.vendor-card:hover{text-decoration:none}.vendor-body{min-width:0;display:flex;flex-direction:column}.vendor-card h3{font-size:1.3rem;line-height:1.25;margin:0 0 2px;color:var(--green)}a.vendor-card:hover h3{color:var(--green-hover)}.vendor-cat{display:inline-block;align-self:flex-start;background:var(--mint);color:var(--green);font-weight:700;font-size:.85rem;padding:3px 12px;border-radius:999px;margin:6px 0}.vendor-loc{font-size:.975rem;font-weight:600;color:var(--ink)}.vendor-blurb{margin:8px 0 0;font-size:.95rem;line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vendor-more{margin-top:12px;font-weight:700;font-size:.925rem;letter-spacing:.02em;color:var(--orange)}a.vendor-card:hover .vendor-more{color:var(--orange-deep)}.logo-sq{border-radius:16px;object-fit:cover;border:1px solid var(--card-border);background:#fff}.logo-initials,.logo-sq{flex:none;width:88px;height:88px}.logo-initials{border-radius:16px;background:var(--green);color:#fff;font-family:var(--font-header);font-weight:800;font-size:26px;display:flex;align-items:center;justify-content:center}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.chip{background:var(--cream);border:none;font-size:13px;font-weight:500;padding:4px 12px;border-radius:999px;color:var(--muted)}.chip.cat{background:var(--mint);color:var(--green);font-weight:700}.chip.cert{background:#fff;border:1px solid var(--card-border);color:var(--green);font-weight:600}.profile-logo{width:160px!important;height:160px!important;border-radius:22px!important}@media (max-width:640px){.profile-logo{width:110px!important;height:110px!important}}.photo-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px;margin:24px 0 4px}.photo-strip img{width:100%;aspect-ratio:1;object-fit:cover;display:block;border-radius:14px;border:1px solid var(--card-border);transition:transform .25s ease}.photo-strip a:hover img{transform:scale(1.03)}@media (prefers-reduced-motion:reduce){.photo-strip a:hover img{transform:none}}.section{padding:34px 0 10px}.hub-list{display:flex;flex-wrap:wrap;gap:10px}.hub-list a{background:#ffffff;border:1px solid var(--card-border);border-radius:999px;padding:9px 18px;font-size:15px;font-weight:600;color:var(--ink);transition:border-color .3s ease,color .3s ease}.hub-list a:hover{border-color:var(--green);color:var(--green)}.hub-list .n{color:var(--faint);font-size:13px;font-weight:400}.profile-cols{display:grid;grid-template-columns:1.6fr 1fr;grid-gap:34px;gap:34px}@media (max-width:760px){.profile-cols{grid-template-columns:1fr}}.quote{font-family:var(--font-header);font-weight:600;font-size:1.15rem;line-height:1.5;color:var(--green);border-left:4px solid var(--orange);padding-left:18px;margin:24px 0}.about-html p{margin:0 0 12px;max-width:64ch;color:var(--muted)}.kv{display:grid;grid-gap:14px;gap:14px}.kv .item{background:var(--cream);border:none;border-radius:14px;padding:15px 18px}.kv .k{font-family:var(--font-header);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--orange-deep);margin-bottom:3px}.kv .v{font-size:.95rem;color:var(--ink)}.kv .v a{color:var(--orange);font-weight:700;text-decoration:underline}.kv .v a:hover{color:var(--orange-hover)}.admin-tablewrap{overflow-x:auto;background:#fff;border:1px solid var(--card-border);border-radius:14px}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table th{text-align:left;font-family:var(--font-header);font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);padding:12px 16px;border-bottom:1px solid var(--card-border);background:var(--cream);white-space:nowrap;position:-webkit-sticky;position:sticky;top:0}.admin-table td{padding:9px 16px;border-bottom:1px solid rgba(7,98,78,.08);vertical-align:middle;white-space:nowrap}.admin-table tr:last-child td{border-bottom:none}.admin-table tbody tr:hover td{background:#fbfaf7}.admin-name{color:var(--green);font-weight:700}.admin-name:hover{color:var(--green-hover);text-decoration:none}.admin-dim{color:var(--muted);max-width:240px;overflow:hidden;text-overflow:ellipsis}.admin-row{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--card-border);border-radius:14px;padding:10px 16px}.admin-logo{flex:none;width:40px;height:40px;border-radius:10px;object-fit:cover;border:1px solid var(--card-border)}.admin-logo-blank{background:var(--mint);color:var(--green);display:flex;align-items:center;justify-content:center;font-weight:800;font-family:var(--font-header)}.admin-chip{flex:none;font-size:12px;font-weight:700;letter-spacing:.03em;padding:4px 12px;border-radius:999px}.admin-actions{flex:none;display:flex;gap:4px;align-items:center}.admin-actions a,.admin-actions button{font-family:var(--font-body);font-size:13px;font-weight:700;color:var(--muted);background:none;border:none;cursor:pointer;padding:6px 8px;border-radius:8px}.admin-actions a:hover,.admin-actions button:hover{background:var(--cream);color:var(--green);text-decoration:none}@media (max-width:640px){.admin-row{flex-wrap:wrap}}.form-grid{display:grid;grid-gap:16px;gap:16px}.form-grid label{font-family:var(--font-header);font-weight:700;font-size:.975rem}.inp{display:block;width:100%;margin-top:6px;padding:13px 16px;border:1px solid var(--card-border);border-radius:14px;font-size:16px;font-family:var(--font-body);background:#fff}textarea.inp{resize:vertical;min-height:120px}.band-mint{background:var(--mint);padding:44px 48px}.band-green,.band-mint{border-radius:28px;margin:44px 0}.band-green{background:var(--green);padding:48px;text-align:center}.band-green h2{color:#ffffff}.band-green p{color:rgba(255,255,255,.85)}footer.site{margin-top:60px;background:var(--cream);padding:34px 0 44px;color:var(--muted);font-size:15px}footer.site a{color:var(--orange);font-weight:700;text-decoration:underline}footer.site a:hover{color:var(--orange-hover)}@media (max-width:767px){.hero-band{padding:44px 0 40px}.band-mint{padding:30px 24px}.band-green{padding:34px 24px}.search-row .btn{padding:12px 20px}.btn{display:inline-block}}