
:root{
  --bg:#f7f9fb; --card:#ffffff; --ink:#13233f; --muted:#7a879b;
  --line:#e5eaef; --green:#0aa886; --green-dark:#079979; --green-soft:#e9f8f4;
  --yellow:#ffb313; --shadow:0 4px 18px rgba(26,44,72,.07);
  --radius:14px;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px}
a{text-decoration:none;color:inherit;cursor:pointer}
.topbar{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px}
.brand{display:flex;gap:10px;align-items:center;font-weight:800;font-size:28px;letter-spacing:-.8px}.brand-mark{color:var(--green);font-size:32px}
.toplinks{display:flex;align-items:center;gap:24px;font-size:13px}.avatar-mini{width:34px;height:34px;border-radius:50%;background:#1d2e4b;color:#fff;display:grid;place-items:center;font-size:11px}
.searchbar-wrap{background:#fff;padding:16px 0;border-bottom:1px solid var(--line)}
.searchbar{max-width:1055px;margin:auto;display:grid;grid-template-columns:1.5fr .9fr 140px;gap:0}
.searchfield,.locationfield{height:44px;border:1px solid var(--line);display:flex;align-items:center;padding:0 16px;color:var(--muted);background:#fff}
.searchfield{border-radius:8px 0 0 8px}.locationfield{border-left:0}
.btn{border:0;border-radius:7px;padding:12px 18px;font-weight:700;font-family:inherit;cursor:pointer}
.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:var(--green-dark)}
.searchbar .btn{border-radius:0 8px 8px 0}
.btn-outline{background:#fff;border:1px solid var(--green);color:var(--green)}
.page-shell{max-width:1055px;margin:0 auto;padding:16px 0 28px}
.breadcrumb{font-size:11px;color:#8a95a6;margin:0 0 12px}
.layout{display:grid;grid-template-columns:minmax(0,2fr) 310px;gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.profile-card{padding:18px;display:grid;grid-template-columns:190px 1fr;gap:20px}
.profile-photo{height:230px;border-radius:11px;background:linear-gradient(135deg,#e8e2da,#cfc4b8);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.photo-placeholder{width:120px;height:120px;border-radius:50%;background:#1d2e4b;color:#fff;display:grid;place-items:center;font-size:38px;font-weight:700}
.available{position:absolute;left:12px;bottom:12px;background:rgba(19,35,63,.78);color:#fff;padding:8px 12px;border-radius:8px;font-size:12px}
.profile-info h1{font-size:27px;margin:2px 0 5px;letter-spacing:-.6px}.verified{color:var(--green);font-size:18px}.name-row{display:flex;justify-content:space-between}.bookmark{font-size:18px}
.role{font-size:15px;margin-bottom:13px}.rating-row{display:flex;gap:8px;align-items:center;font-size:12px}.stars,.bigstars{color:var(--yellow)}.dot{color:#9aa4b2}.badges{display:flex;gap:10px;margin:18px 0}.badge{background:var(--green-soft);color:#177d69;padding:10px 12px;border-radius:8px;font-weight:600;line-height:1.25}.badge small{font-weight:500}.meta{margin:10px 0}.muted{color:var(--muted)}
.tabs{display:flex;gap:38px;align-items:center;height:54px;border-bottom:1px solid var(--line);margin-bottom:14px;padding-left:18px;font-size:12px}
.tabs a{padding:18px 0}.tabs .active{color:var(--green);border-bottom:2px solid var(--green);font-weight:700}
.section-card{padding:18px;margin-bottom:14px}.section-card h2,.booking-card h2{font-size:15px;margin:0 0 16px}.section-card p{line-height:1.7;color:#34445f}
.chips{display:flex;gap:8px}.chips span{background:var(--green-soft);color:#177d69;padding:7px 10px;border-radius:7px;font-size:11px;font-weight:600}
.specialties{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.specialty{display:flex;align-items:center;gap:10px}.ico{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-size:18px}.specialty span{font-size:11px;line-height:1.4}
.service-row{display:grid;grid-template-columns:1fr 80px 90px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.service-row strong{text-align:right}.more{display:inline-block;color:var(--green);font-weight:700;font-size:11px;margin-top:14px}
.booking-card,.side-card{padding:18px;margin-bottom:14px}.price{font-size:25px;font-weight:800;margin:4px 0 14px}.full{width:100%;margin-bottom:10px}.response{text-align:center;color:#8a95a6;font-size:11px;margin-top:10px}
.side-card h3{font-size:13px;margin:0 0 14px}.side-card p{font-size:11px;line-height:1.6;color:#33415a}
.insurers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 8px;font-size:10px;color:#2e809d;font-weight:700}.socials{display:flex;gap:11px}.socials span{width:31px;height:31px;border-radius:8px;background:#eef3f6;display:grid;place-items:center;font-weight:800}
.sharebox{border:1px solid var(--line);border-radius:7px;padding:9px 10px;font-size:10px;color:#79869a;display:flex;align-items:center;justify-content:space-between}.sharebox button{border:0;background:transparent;cursor:pointer}
.availability-row{display:flex;justify-content:space-between;padding:9px 8px;font-size:11px}.today{background:var(--green-soft);color:#14876f;border-radius:7px}.today strong{font-weight:700}
.opinions-grid{display:grid;grid-template-columns:120px 1fr 150px;gap:20px;align-items:center}.score-num{font-size:34px;font-weight:800}.score{text-align:center}.bars>div{display:grid;grid-template-columns:65px 1fr 18px;gap:8px;align-items:center;font-size:10px;margin:7px 0}.bar{height:7px;background:#edf0f3;border-radius:9px;overflow:hidden}.bar i{display:block;height:100%;background:var(--green)}.small{padding:10px 12px;font-size:10px}.review{display:grid;grid-template-columns:42px 1fr;gap:14px}.review-avatar{width:38px;height:38px;border-radius:50%;background:#cfd5dc;display:grid;place-items:center;color:#fff}.review p{font-size:11px}.smallstars{font-size:11px;margin-top:4px}
.trustbar{margin-top:18px;background:linear-gradient(90deg,#effaf7,#f4fbf9);border-radius:14px;padding:18px 22px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.trustbar div{display:flex;flex-direction:column;gap:5px}.trustbar b{font-size:11px}.trustbar span{font-size:9px;color:#506176;line-height:1.35}
@media (max-width:900px){
  .toplinks a{display:none}.searchbar{grid-template-columns:1fr;gap:8px;padding:0 14px}.searchfield,.locationfield,.searchbar .btn{border-radius:8px;border:1px solid var(--line)}
  .page-shell{padding:14px}.layout{grid-template-columns:1fr}.profile-card{grid-template-columns:1fr}.profile-photo{height:260px}
  .tabs{overflow:auto;gap:24px;padding-left:4px}.specialties{grid-template-columns:repeat(2,1fr)}.trustbar{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .topbar{padding:0 16px}.brand{font-size:22px}.profile-info h1{font-size:23px}.badges{flex-direction:column}.opinions-grid{grid-template-columns:1fr}.service-row{grid-template-columns:1fr 60px 75px}.trustbar{grid-template-columns:1fr}
}
