:root{--g:#087443;--d:#073d2d;--r:#ec4c39;--c:#f7f5ed;--ink:#17342c;--muted:#66756d}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:"DM Sans",sans-serif}header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid #e6ebe5;background:#fff}.brand{display:flex;align-items:center;gap:8px;color:var(--d);font-size:1.12rem;text-decoration:none;letter-spacing:-.04em}.brand i{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:var(--g);color:#fff;font:700 1.35rem "Playfair Display",serif;transform:rotate(-8deg)}.brand b{font-weight:700}nav{display:flex;gap:25px}nav a,.user-nav a{color:var(--ink);font-size:.86rem;font-weight:600;text-decoration:none}.user-nav{display:flex;align-items:center;gap:15px}.btn{display:inline-block;padding:13px 18px;border:0;background:var(--g);color:#fff!important;cursor:pointer;font:700 .85rem "DM Sans",sans-serif;text-decoration:none}.btn:hover{background:#065e36}.btn.red{background:var(--r)}.btn.small{padding:10px 14px}.flash{max-width:1100px;margin:18px auto 0;padding:13px 18px;background:#e2f2e7;color:#075f36;font-size:.9rem}.hero{padding:110px 8vw 90px;background:linear-gradient(115deg,#f8f8f1 0 64%,#d5e8bf 64%)}.eyebrow{margin:0 0 16px;color:var(--g);font-size:.7rem;font-weight:700;letter-spacing:.15em}.eyebrow:before{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--r);content:""}.hero h1,.section h2,.auth-card h1,.profile h1{max-width:750px;margin:0;color:var(--d);font:700 clamp(3.1rem,6vw,6rem)/.95 "Playfair Display",serif;letter-spacing:-.06em}.hero h1 em,.section h2 em,.profile h1 em{color:var(--g)}.hero>p:not(.eyebrow){max-width:570px;color:#53655c;font-size:1.05rem;line-height:1.6}.search{display:flex;max-width:740px;margin-top:30px;padding:8px;background:#fff;box-shadow:0 14px 25px #0b3b241c}.search input,.search select{min-width:0;padding:12px;border:0;border-right:1px solid #dde5dc;outline:0;font:500 .9rem "DM Sans",sans-serif}.search input{flex:2}.search select{flex:1}.search button{border:0}.section{padding:90px 8vw}.heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.heading h2{font-size:clamp(2.5rem,4.4vw,4.5rem)}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.category{min-height:155px;padding:19px;color:var(--d);font:700 1.2rem "Playfair Display",serif;text-decoration:none}.category small{display:block;margin-top:9px;font:400 .75rem "DM Sans",sans-serif}.category:nth-child(1){background:#f0d27e}.category:nth-child(2){background:#c4d9ca}.category:nth-child(3){background:#edb5a4}.category:nth-child(4){background:#bfcce3}.category:nth-child(5){background:#d8cfb4}.directory{padding:90px 8vw;background:var(--d);color:#fff}.directory h2{color:#fff}.directory h2 em{color:#b7d632}.businesses{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.business{display:flex;flex-direction:column;min-height:210px;padding:23px;background:#fff;color:var(--ink);text-decoration:none}.business .tag{margin:0 0 8px;color:var(--g);font-size:.65rem;font-weight:700;letter-spacing:.13em}.business h3{margin:0;font:700 1.5rem "Playfair Display",serif}.business p:not(.tag){margin:9px 0;color:var(--muted);font-size:.85rem;line-height:1.5}.place{margin-top:auto;color:#64756a;font-size:.74rem}.empty{grid-column:1/-1;color:#cfe3c8}.plan{display:grid;grid-template-columns:1fr .75fr;gap:10vw;align-items:center;background:var(--c)}.plan-copy p:not(.eyebrow){color:#617269;line-height:1.6}.plan-card{padding:42px;background:var(--d);color:#fff}.plan-card h3{margin:10px 0 25px;font:700 2.5rem/.95 "Playfair Display",serif}.price{font:700 3.5rem "Playfair Display",serif}.price small{display:block;color:#cde0d1;font:400 .75rem "DM Sans",sans-serif}.auth-wrap{min-height:calc(100vh - 178px);display:grid;place-items:center;padding:60px 20px;background:var(--c)}.auth-card{width:min(510px,100%);padding:40px;background:#fff;box-shadow:0 15px 38px #153c2620}.auth-card h1{font-size:2.8rem}.auth-card>p{color:var(--muted);line-height:1.5}.form label{display:block;margin:18px 0 6px;color:#365346;font-size:.78rem;font-weight:700}.form input,.form select,.form textarea{width:100%;padding:12px;border:1px solid #cbd6cc;border-radius:0;background:#fff;color:var(--ink);font:400 .92rem "DM Sans",sans-serif}.form textarea{min-height:125px;resize:vertical}.form .btn{margin-top:22px}.form-note{color:var(--muted);font-size:.78rem;line-height:1.5}.dashboard{max-width:1160px;margin:auto;padding:65px 25px}.dashboard h1{margin:0 0 8px;font:700 3rem "Playfair Display",serif}.dashboard>p{color:var(--muted)}.dashboard-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:15px;border-bottom:1px solid #e2e8e2;text-align:left;font-size:.84rem}.table th{background:#f3f5f0;color:#52665a;font-size:.68rem;letter-spacing:.08em}.badge{display:inline-block;padding:5px 8px;background:#e6eee7;color:#286044;font-size:.68rem;font-weight:700}.badge.payment_reported{background:#fff1ca;color:#876300}.badge.rejected{background:#fae0dc;color:#a13a2d}.badge.pending_payment{background:#e3edf6;color:#315b82}.admin-actions{display:flex;gap:7px;align-items:center}.admin-actions form{margin:0}.link-button{padding:7px 9px;border:1px solid #b4c5b8;background:#fff;color:var(--g);cursor:pointer;font:700 .72rem "DM Sans",sans-serif}.link-button.reject{color:#b43528}.profile{max-width:1000px;margin:auto;padding:60px 25px}.profile-box{padding:38px;background:var(--c)}.profile h1{font-size:3.5rem}.profile .meta{display:flex;flex-wrap:wrap;gap:14px;margin:25px 0;color:#50635a;font-size:.85rem}.profile .description{max-width:700px;font-size:1rem;line-height:1.75}.profile-actions{display:flex;gap:10px;margin-top:28px}footer{display:grid;grid-template-columns:1fr 1fr;padding:45px 8vw 20px;background:#072f23;color:#d3e2d6}footer .brand{color:#fff}footer .brand i{background:#b7d632;color:var(--d)}footer p{margin:0;font:700 1.25rem "Playfair Display",serif}footer small{grid-column:1/-1;margin-top:35px;padding-top:18px;border-top:1px solid #34594c;color:#97afa0}footer small a{color:#cfe3c8}@media(max-width:760px){header{height:auto;min-height:70px;padding:15px 20px;flex-wrap:wrap;gap:13px}nav{display:none}.user-nav{gap:10px}.user-nav>a:not(.btn){display:none}.hero,.section,.directory{padding:70px 20px}.search{display:block}.search input,.search select{width:100%;border-right:0;border-bottom:1px solid #dde5dc}.search .btn{width:100%;margin-top:6px}.category-grid{grid-template-columns:repeat(2,1fr)}.businesses{grid-template-columns:1fr}.plan{display:block}.plan-card{margin-top:40px}.heading{display:block}.dashboard{padding:45px 20px}.dashboard-top{align-items:flex-start;gap:15px;flex-direction:column}.profile{padding:45px 20px}.profile-box{padding:25px}footer{grid-template-columns:1fr;gap:20px}}
