:root{--nav:#0d3b60;--nav2:#082e4c;--accent:#ff3b0a;--bg:#eef3f9;--card:#fff;--text:#17212b;--muted:#667788;--line:#d9e2ea;--pill:#338eb6}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}.wrap{width:min(1180px,calc(100% - 32px));margin:auto}.site-header{background:var(--nav);color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 12px #0003}.topbar{display:flex;align-items:center;gap:24px;min-height:68px}.brand{font-size:28px;font-weight:800;text-decoration:none;white-space:nowrap}.brand span{color:#ffb31a}.menu-toggle{display:none;margin-left:auto;border:0;background:#fff;color:var(--nav);font-size:22px;border-radius:6px;padding:7px 11px}.nav{display:flex;align-items:center;gap:4px;flex:1}.nav>a,.dropbtn{color:#fff;text-decoration:none;padding:24px 13px;display:block;background:none;border:0;font:inherit;cursor:pointer}.nav>a:hover,.dropdown:hover .dropbtn{background:var(--nav2)}.dropdown{position:relative}.dropdown-panel{display:none;position:absolute;top:100%;left:0;min-width:290px;max-height:70vh;overflow:auto;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:0 14px 30px #0003;padding:12px}.dropdown:hover .dropdown-panel,.dropdown:focus-within .dropdown-panel{display:block}.dropdown-panel a{display:block;padding:9px 10px;text-decoration:none;border-radius:5px}.dropdown-panel a:hover{background:#edf4f8;color:var(--nav)}.mega{width:min(760px,80vw);display:none;grid-template-columns:repeat(3,minmax(180px,1fr));gap:5px}.dropdown:hover .mega,.dropdown:focus-within .mega{display:grid}.hero{background:linear-gradient(135deg,var(--nav),#155b88);color:#fff;padding:58px 0}.hero h1{font-size:clamp(34px,5vw,58px);margin:0 0 12px}.hero p{font-size:20px;max-width:750px;line-height:1.5}.searchbar{display:grid;grid-template-columns:1.3fr 1fr auto;gap:8px;background:#fff;padding:10px;border-radius:10px;max-width:900px;box-shadow:0 8px 24px #0003}.searchbar input,.searchbar select{width:100%;border:1px solid #ccd6df;border-radius:6px;padding:13px;font-size:16px}.btn{display:inline-block;border:0;border-radius:6px;background:var(--nav);color:#fff;text-decoration:none;padding:12px 18px;font-weight:700;cursor:pointer}.btn-accent{background:var(--accent)}.section{padding:36px 0}.section h2{margin-top:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px;box-shadow:0 4px 14px #0000000f}.business-card h3{margin:0 0 8px;color:var(--accent);font-size:22px}.business-card a{text-decoration:none}.meta{color:var(--muted);font-size:14px}.pill{display:inline-block;background:var(--pill);color:#fff;border-radius:999px;padding:4px 9px;font-size:12px;margin:3px 3px 0 0}.list{display:grid;gap:12px}.result{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.result h2{font-size:22px;margin:0 0 6px;color:var(--accent)}.pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.pagination a,.pagination span{padding:8px 12px;background:#fff;border:1px solid var(--line);border-radius:5px;text-decoration:none}.pagination .active{background:var(--nav);color:#fff}.profile-hero{background:#fff;border-bottom:1px solid var(--line);padding:28px 0}.profile-banner{min-height:220px;border-radius:12px;background:#dce6ee center/cover no-repeat;display:flex;align-items:flex-end;overflow:hidden}.profile-title{width:100%;min-height:220px;padding:128px 24px 18px;background:linear-gradient(transparent 38%,#000c 78%);color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.profile-title h1{margin:0;font-size:38px;line-height:1.08;text-shadow:0 2px 4px #000}.profile-grid{display:grid;grid-template-columns:2fr 1fr;gap:22px}.contact-row{padding:10px 0;border-bottom:1px solid var(--line)}.contact-row strong{display:block;color:var(--muted);font-size:12px;text-transform:uppercase}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tabs a{background:#fff;border:1px solid var(--line);padding:9px 14px;border-radius:6px;text-decoration:none}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gallery img{width:100%;height:190px;object-fit:cover;border-radius:8px;background:#ddd}.footer{background:var(--nav);color:#fff;padding:30px 0;margin-top:40px}.empty{padding:28px;text-align:center;color:var(--muted)}.notice{background:#fff3df;border:1px solid #efd4a7;padding:12px;border-radius:8px}.admin-link{margin-left:auto}
@media(max-width:850px){.menu-toggle{display:block}.topbar{flex-wrap:wrap;padding:12px 0}.nav{display:none;width:100%;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav>a,.dropbtn{padding:12px}.dropdown-panel,.mega{position:static!important;width:100%;max-width:none;box-shadow:none;border-radius:6px;display:none!important;grid-template-columns:1fr}.dropdown.open .dropdown-panel,.dropdown.open .mega{display:grid!important}.searchbar{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.admin-link{margin-left:0}}
@media(max-width:520px){.wrap{width:min(100% - 20px,1180px)}.hero{padding:38px 0}.gallery{grid-template-columns:1fr}.result{grid-template-columns:1fr}.profile-title h1{font-size:30px}}
.profile-banner{position:relative}.profile-logo{position:absolute;left:24px;top:20px;max-width:min(360px,55%);max-height:100px;background:#fff;padding:8px 12px;border-radius:8px;box-shadow:0 4px 16px #0003}.profile-logo img{display:block;max-width:100%;max-height:84px;width:auto;height:auto}.contact-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.action-btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;font-weight:700;padding:11px 18px;border-radius:7px}.action-btn:hover{filter:brightness(.93)}
@media(max-width:520px){.profile-logo{left:14px;top:14px;max-width:70%;max-height:78px}.profile-logo img{max-height:60px}.contact-actions{display:grid;grid-template-columns:1fr 1fr}.action-btn{text-align:center}}
.action-btn{display:inline-flex;align-items:center;gap:7px}.action-btn svg{width:18px;height:18px;fill:currentColor;flex:0 0 auto}

@media(max-width:520px){.profile-banner{min-height:190px}.profile-title{min-height:190px;padding:102px 14px 14px}.profile-title h1{font-size:28px}}
