:root{color:#152f46;background:#f3f7fb;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;line-height:1.45}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit}.home-page{gap:1.5rem;display:grid}.hero{background-image:url(https://images.unsplash.com/photo-1460317442991-0ec209397118?auto=format&fit=crop&w=1800&q=80);background-position:50%;background-size:cover;border-radius:16px;min-height:360px;position:relative;overflow:hidden}.hero-overlay{background:linear-gradient(140deg,#071e30e6,#093957a6);position:absolute;inset:0}.hero-content{z-index:1;color:#fff;max-width:760px;padding:2rem;position:relative}.hero-content h1{margin:0;font-size:clamp(2rem,4vw,3rem)}.hero-content h2{color:#9de0ff;margin-top:.4rem;margin-bottom:1rem;font-size:clamp(1.1rem,2.3vw,1.6rem)}.hero-content p{max-width:640px}.eyebrow{border:1px solid #ffffff59;border-radius:20px;margin:0 0 1rem;padding:.25rem .6rem;font-size:.85rem;display:inline-block}.search-form{gap:.6rem;margin-top:1rem;display:flex}.search-form input{border:0;border-radius:10px;flex:1;min-height:44px;padding:0 .8rem}.search-form button{color:#fff;cursor:pointer;background:#08a1d6;border:0;border-radius:10px;min-height:44px;padding:0 1rem;font-weight:700}.loading{opacity:.8;margin-top:.7rem;display:inline-block}.section{background:#fff;border:1px solid #dbe3ec;border-radius:14px;padding:1rem}.section.alt{background:#f8fbff}.section.trust{color:#fff;background:linear-gradient(120deg,#0f6f9b,#0a5274);border-color:#0000}.section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.section-heading h3{margin:0}.section-heading a{color:#0f6f9b;font-weight:700}.section.trust .section-heading a{color:#fff}.project-grid,.developer-grid,.type-grid,.stats-grid,.community-grid{gap:.8rem;display:grid}.project-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.project-body{padding:.8rem}.project-body h4{margin:.3rem 0}.project-body p{margin:.2rem 0}.project-body .badge{color:#0f6f9b;background:#eef6fd;border-radius:16px;padding:.1rem .5rem;font-size:.8rem;display:inline-block}.project-body .price,.project-body a{font-weight:700}.developer-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.developer-card{text-align:center;color:inherit;background:#fff;border:1px solid #e0e8f0;border-radius:12px;padding:1rem;text-decoration:none}.developer-card img{border-radius:50%;width:72px;height:72px}.developer-card h4{margin:.5rem 0 .3rem}.developer-card p{color:#4c5d71;margin:0}.type-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.type-pill{color:#16324c;background:#f8fbff;border:1px solid #dbe3ec;border-radius:10px;justify-content:center;align-items:center;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stat-card{background:#ffffff14;border:1px solid #ffffff4d;border-radius:12px;padding:.8rem}.stat-card h4{margin:0;font-size:1.4rem}.stat-card p{margin:.2rem 0 0}.community-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.community-link{color:#15324b;background:#fff;border:1px solid #dbe3ec;border-radius:10px;justify-content:center;align-items:center;min-height:48px;font-weight:600;text-decoration:none;display:flex}.market-link-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.7rem;display:grid}.market-link-pill{color:#15324b;background:#fff;border:1px solid #dbe3ec;border-radius:10px;justify-content:center;align-items:center;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}@media (width<=768px){.hero-content{padding:1.2rem}.search-form{flex-direction:column}}.projects-page{gap:1rem;display:grid}.projects-header{background:#fff;border:1px solid #dbe3ec;border-radius:12px;gap:.8rem;padding:1rem;display:grid}.projects-header h1{margin:0}.projects-header p{color:#4f6377;margin:.25rem 0 0}.toolbar{grid-template-columns:1fr 220px auto;gap:.6rem;display:grid}.toolbar input,.toolbar select{background:#fff;border:1px solid #c9d8e6;border-radius:10px;min-height:42px;padding:0 .65rem}.view-toggle{border:1px solid #c9d8e6;border-radius:10px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.view-toggle button{color:#27435f;cursor:pointer;background:#fff;border:0;min-height:42px;font-weight:700}.view-toggle button.active{color:#fff;background:#0f6f9b}.loading{color:#4f6377;margin:0}.empty-state{background:#fff;border:1px dashed #c9d8e6;border-radius:12px;padding:1.2rem}.empty-state h2,.empty-state p{margin:0}.empty-state p{color:#4f6377;margin-top:.3rem}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem;display:grid}.project-card{background:#fff;border:1px solid #dbe3ec;border-radius:12px;overflow:hidden}.project-card img{object-fit:cover;width:100%;height:160px;display:block}.project-card .body{padding:.75rem}.project-card .meta{color:#5e7185;margin:0;font-size:.85rem}.project-card h3{margin:.35rem 0}.project-card p{margin:.2rem 0}.project-card .tags{flex-wrap:wrap;gap:.4rem;margin:.45rem 0;display:flex}.project-card .tags span{background:#f8fbff;border:1px solid #c9d8e6;border-radius:14px;padding:.15rem .45rem;font-size:.78rem}.project-card .price{font-weight:700}.project-card a{color:#0f6f9b;font-weight:700}.map-layout{grid-template-columns:minmax(240px,1.1fr) minmax(260px,1fr);gap:.8rem;display:grid}.map-panel,.list-panel{background:#fff;border:1px solid #dbe3ec;border-radius:12px;padding:.9rem}.map-panel h2,.map-panel p{margin:0}.map-panel p{color:#4f6377;margin-top:.4rem}.list-panel{gap:.45rem;display:grid}.list-item{color:#193650;border:1px solid #dbe3ec;border-radius:10px;gap:.2rem;padding:.65rem;text-decoration:none;display:grid}.list-item span{color:#4f6377}@media (width<=980px){.toolbar,.map-layout{grid-template-columns:1fr}}.inline-filters{grid-template-columns:1fr 220px;gap:.6rem;margin-top:.8rem;display:grid}.inline-filters input,.inline-filters select,.lead-form input,.lead-form button{border:1px solid #c9d8e6;border-radius:10px;min-height:42px;padding:0 .65rem}.simple-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem;display:grid}.simple-card{background:#fff;border:1px solid #dbe3ec;border-radius:12px;overflow:hidden}.simple-card img{object-fit:cover;width:100%;height:160px;display:block}.simple-card .body{padding:.8rem}.simple-card h3,.simple-card p{margin:.3rem 0}.simple-card a{color:#0f6f9b;font-weight:700}.lead-form{gap:.6rem;display:grid}.lead-form button{cursor:pointer;color:#fff;background:#0f6f9b;border-color:#0f6f9b;font-weight:700}.pager{justify-content:center;align-items:center;gap:.8rem;display:flex}.pager button{cursor:pointer;background:#fff;border:1px solid #c9d8e6;border-radius:8px;min-height:38px;padding:0 .8rem;font-weight:700}.pager button:disabled{opacity:.45;cursor:not-allowed}@media (width<=900px){.inline-filters{grid-template-columns:1fr}}.app-root{min-height:100vh}.top-nav{z-index:20;background:#fff;border-bottom:1px solid #d6e2ed;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex;position:sticky;top:0}.brand{flex-direction:column;display:flex}.brand a{color:#103047;font-size:1.1rem;font-weight:800;text-decoration:none}.brand small{color:#5b6c7f}.top-nav nav{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.top-nav nav a{color:#0f6f9b;font-size:.9rem;font-weight:700;text-decoration:none}.lang-chip{color:#0f6f9b;border:1px solid #0f6f9b;border-radius:999px;justify-content:center;align-items:center;min-height:30px;padding:0 .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.lang-chip.muted{color:#64788d;border-color:#c9d8e6}.workspace-body{grid-template-columns:280px 1fr;gap:1rem;padding:1rem;display:grid}.route-toc{background:#fff;border:1px solid #d6e2ed;border-radius:12px;height:fit-content;padding:1rem;position:sticky;top:74px}.route-toc h3{margin:0 0 .5rem}.route-toc ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.route-toc li{color:#204461;font-size:.92rem}.status{text-align:center;border:1px solid #0000;border-radius:999px;min-width:84px;padding:.16rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.status-done{color:#0b6b45;background:#e7f8ef;border-color:#b9ebd1}.status-in_progress{color:#7a5900;background:#fff5db;border-color:#f1d893}.status-pending{color:#5b6c7f;background:#f2f6fa;border-color:#d8e2ed}.workspace-content{min-width:0}.site-footer{background:#fff;border-top:1px solid #d6e2ed;margin-top:1.2rem;padding:1rem}.site-footer-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;display:grid}.site-footer h4{color:#103047;margin:0 0 .45rem}.site-footer p{color:#496175;margin:.25rem 0}.site-footer ul{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:#0f6f9b;text-decoration:none}.site-footer-note{color:#5b6c7f;margin:.9rem 0 0;font-size:.9rem}.callback-panel{background:#f8fbff;border:1px solid #dbe3ec;border-radius:12px;margin-top:1rem;padding:.8rem}.callback-panel h4{margin:0 0 .55rem}.callback-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.5rem;display:grid}.callback-grid input,.callback-grid select{background:#fff;border:1px solid #c9d8e6;border-radius:8px;min-height:38px;padding:0 .55rem}.callback-grid button{color:#fff;cursor:pointer;background:#0f6f9b;border:1px solid #0f6f9b;border-radius:8px;min-height:38px;font-weight:700}.callback-grid button:disabled{opacity:.6;cursor:not-allowed}.utility-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.7rem;display:grid}.utility-card{background:#f8fbff;border:1px solid #dbe3ec;border-radius:10px;padding:.75rem}.page-shell{gap:.8rem;display:grid}.page-header h1{margin:0}.page-header p{color:#4e6175;margin:.35rem 0 0}.panel{background:#fff;border:1px solid #dbe3ec;border-radius:12px;padding:1rem}.panel h2{margin-top:0}.panel ul,.panel ol{margin-bottom:0}.lead-form{gap:.55rem;max-width:620px;display:grid}.lead-form input,.lead-form textarea{min-height:42px;font:inherit;border:1px solid #c9d8e6;border-radius:8px;padding:.55rem .7rem}.lead-form textarea{resize:vertical;min-height:120px}.lead-form button{color:#fff;cursor:pointer;background:#0f6f9b;border:1px solid #0f6f9b;border-radius:8px;width:fit-content;min-height:40px;padding:0 .95rem;font-weight:700}.lead-form button:disabled{opacity:.55;cursor:not-allowed}.form-success{color:#0b6b45;font-weight:700}.form-error{color:#8f1d27;font-weight:700}.tab-row{flex-wrap:wrap;gap:.45rem;margin-bottom:.7rem;display:flex}.detail-note{color:#4e6175;margin:0 0 .7rem;font-size:.92rem}.tab{color:#28445f;cursor:pointer;background:#fff;border:1px solid #c9d8e6;border-radius:8px;min-height:36px;padding:0 .7rem;font-weight:600}.tab.active{color:#fff;background:#0f6f9b;border-color:#0f6f9b}.video-placeholder{color:#5b6c7f;background:#f8fbff;border:1px dashed #c9d8e6;border-radius:12px;justify-content:center;align-items:center;min-height:180px;display:flex}.video-embed{background:#f8fbff;border:1px solid #dbe3ec;border-radius:10px;justify-content:center;align-items:center;min-height:92px;display:flex}.video-embed a{color:#0f6f9b;font-weight:700;text-decoration:none}.gallery-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem;display:grid}.gallery-row img{object-fit:cover;border-radius:10px;width:100%;height:180px;display:block}.detail-stack{gap:.8rem;display:grid}.price-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.7rem;display:grid}.price-card{background:#f8fbff;border:1px solid #dbe3ec;border-radius:10px;padding:.7rem}.price-card h3{color:#204461;margin:0 0 .3rem;font-size:.95rem}.price-card p{color:#103047;margin:0;font-weight:700}.tag-grid{flex-wrap:wrap;gap:.5rem;display:flex}.tag-item{color:#204461;background:#f8fbff;border:1px solid #c9d8e6;border-radius:999px;align-items:center;min-height:30px;padding:0 .65rem;font-size:.88rem;display:inline-flex}.faq-grid{gap:.65rem;display:grid}.faq-card{background:#f8fbff;border:1px solid #dbe3ec;border-radius:10px;padding:.75rem}.faq-card h3{margin:0 0 .35rem}.faq-card p{color:#496175;margin:0}@media (width<=980px){.top-nav{flex-direction:column;align-items:flex-start}.top-nav nav{gap:.5rem;width:100%}.workspace-body{grid-template-columns:1fr}.route-toc{position:static}}
