header.top{border-bottom:1px solid var(--c-line);position:sticky;top:0;background:var(--c-bg);z-index:10}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px}
.brand{display:flex;align-items:center;gap:10px;font:700 20px var(--f-heading);text-decoration:none}.brand img{height:36px;width:auto}
.hero{padding:56px 0;background:var(--c-surface)}.hero h1{font-size:clamp(28px,6vw,48px)}.hero p{max-width:620px;color:var(--c-muted)}
section{padding:36px 0}
.svc{display:flex;flex-direction:column;gap:6px}.svc .price{font-weight:700}
.pro{display:flex;gap:12px;align-items:center}.pro img,.avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;background:var(--c-line)}
dialog{border:none;border-radius:var(--radius);padding:0;width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;background:var(--c-bg);color:var(--c-text)}
dialog::backdrop{background:#0008}.dlg{padding:20px}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin-top:8px}
.slot{min-height:44px;border:1px solid var(--c-line);border-radius:var(--radius);background:var(--c-bg);cursor:pointer;font:600 14px var(--f-body)}.slot[aria-pressed=true]{background:var(--c-primary);color:var(--c-bg)}
.steps{display:flex;gap:6px;margin-bottom:12px}.steps i{flex:1;height:4px;border-radius:2px;background:var(--c-line)}.steps i.on{background:var(--c-accent)}
footer{border-top:1px solid var(--c-line);padding:24px 0;font-size:14px;color:var(--c-muted)}
.preview{background:#FFE9B8;color:#4a3500;text-align:center;padding:6px;font-size:13px}

.wa-fab{position:fixed;right:14px;bottom:14px;z-index:40;display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:10px 18px;border-radius:99px;background:#1FA855;color:#fff;font:600 15px var(--f-body);text-decoration:none;box-shadow:0 6px 20px #0004}.wa-fab:hover{filter:brightness(1.08)}.wa-fab:focus-visible{outline:3px solid var(--c-accent);outline-offset:2px}
/* platform home (no business on this address) */
html.plat[data-theme=light]{--c-primary:#0A3D2E;--c-accent:#C9A84C;--c-bg:#F3F6F4;--c-surface:#fff;--c-text:#10201A;--c-muted:#5D6B66;--c-line:#DFE6E2}
html.plat[data-theme=dark]{--c-primary:#34B27D;--c-accent:#D4B45A;--c-bg:#07140F;--c-surface:#0E1F18;--c-text:#E8F0EC;--c-muted:#93A89F;--c-line:#1E3329}
html.plat .btn.accent{color:#0B1511}html.plat .btn:not(.ghost):not(.accent){color:#fff}
.plat-page{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(900px 420px at 80% -10%,color-mix(in srgb,var(--c-accent) 16%,transparent),transparent),var(--c-bg)}
.plat-top{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1080px;width:100%;margin:0 auto;padding:18px 16px}
.plat-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:600 20px/1 var(--f-heading);letter-spacing:.14em}.plat-brand b{color:var(--c-accent);font-weight:600}.plat-brand img{border-radius:8px}
.plat-main{max-width:1080px;width:100%;margin:0 auto;padding:36px 16px 24px;flex:1}
.plat-kicker{letter-spacing:.2em;font-size:12px;color:var(--c-accent);font-weight:700;margin:0 0 12px}
.plat-main h1{font-size:clamp(34px,6vw,60px);max-width:16em;margin-bottom:.4em}.plat-main h1 em{font-style:normal;color:var(--c-accent)}
.plat-lead{max-width:40em;color:var(--c-muted);font-size:18px;margin:0 0 22px}.plat-cta{gap:12px;margin-bottom:44px}
.plat-h{font-size:20px;margin:0 0 14px}
.plat-roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-bottom:36px}
.plat-role{display:flex;flex-direction:column;gap:4px;padding:18px;border:1px solid var(--c-line);border-radius:14px;background:var(--c-surface);text-decoration:none;transition:border-color .15s,transform .15s}
.plat-role:hover{border-color:var(--c-accent);transform:translateY(-2px)}.plat-role strong{font-size:17px}.plat-role span{color:var(--c-muted);font-size:14px}
.plat-feats{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 10px}.plat-feats li{padding:7px 14px;border:1px solid var(--c-line);border-radius:999px;font-size:13px;color:var(--c-muted)}
.plat-foot{max-width:1080px;width:100%;margin:0 auto;padding:22px 16px 30px;color:var(--c-muted);font-size:13px}
/* freelancer booking page */
.fl{min-height:100vh;background:var(--c-bg);padding:0 0 40px}
.fl-card{max-width:520px;margin:0 auto;padding:12px 18px 28px}
.fl-top{display:flex;justify-content:flex-end;padding:6px 0}.fl-top a{color:var(--c-muted)}
.fl-hero{text-align:center;padding:6px 0 18px}.fl-hero h1{font-size:28px;margin:12px 0 2px}
.fl-ph{width:116px;height:116px;border-radius:50%;object-fit:cover;margin:0 auto;display:grid;place-items:center;border:3px solid var(--c-accent);background:var(--c-surface)}
.fl-ini{font:700 38px var(--f-heading);color:var(--c-accent)}
.fl-head{margin:0;color:var(--c-muted)}.fl-rate{margin:6px 0 0;font-weight:600}
.fl-badges{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-top:8px}.fl-badges:empty{display:none}
.fl-chips{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:12px 0}.fl-chips span{padding:4px 12px;border:1px solid var(--c-line);border-radius:999px;font-size:13px;background:var(--c-surface)}
.fl-bio{text-align:left;margin:10px 0 4px;line-height:1.55}.fl-loc{margin:8px 0 0}
.fl-book{width:100%;min-height:52px;font-size:17px;margin:8px 0 22px}
.fl-h{display:flex;justify-content:space-between;align-items:baseline;margin:10px 0 8px}.fl-h h2{margin:0;font-size:19px}
.fl-list{display:flex;flex-direction:column;gap:8px;margin-bottom:22px}
.fl-svc{display:grid;grid-template-columns:56px 1fr 40px;gap:12px;align-items:center;width:100%;text-align:left;padding:10px;border:1px solid var(--c-line);border-radius:14px;background:var(--c-surface);color:inherit;font:inherit;cursor:pointer}
.fl-svc:hover{border-color:var(--c-accent)}.fl-svc img,.fl-svc-ph{width:56px;height:56px;border-radius:10px;object-fit:cover}
.fl-svc-ph{display:grid;place-items:center;background:var(--c-bg);color:var(--c-accent);font:700 20px var(--f-heading);border:1px solid var(--c-line)}
.fl-svc-t{display:flex;flex-direction:column;gap:1px;min-width:0}.fl-svc-t small{color:var(--c-muted)}.fl-svc-d{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fl-plus{width:36px;height:36px;border-radius:50%;border:1px solid var(--c-accent);display:grid;place-items:center;color:var(--c-accent);font-size:22px;line-height:1}
.fl-share{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:16px 0 8px}.fl-share .btn{width:auto;flex:1 1 140px}
.fl-pol{text-align:center}.fl-foot{text-align:center;color:var(--c-muted);font-size:13px;margin-top:14px}

