500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#173234;--muted:#6b7c7c;--teal:#185957;--teal2:#16786e;--mint:#e8f2ef;--sand:#f7f6f2;--line:#e3eae7;--white:#fff;--orange:#db8557;--red:#bd5651;--shadow:0 18px 48px rgba(17,61,57,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:15px/1.5 'DM Sans',system-ui,-apple-system,sans-serif;background:var(--sand);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:Manrope,'DM Sans',sans-serif;letter-spacing:-.035em;line-height:1.2}h1{font-size:clamp(36px,5vw,68px)}h2{font-size:26px}h3{font-size:18px}.muted{color:var(--muted)}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--teal2)}.small{font-size:12px}.tiny{font-size:11px}.tight{margin-bottom:5px}.grid{display:grid;gap:18px}.row{display:flex;gap:12px;align-items:center}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.start{align-items:flex-start}.grow{flex:1}.right{text-align:right}.center{text-align:center}.mt{margin-top:20px}.mb{margin-bottom:24px}.hide{display:none!important}.btn{background:var(--teal);color:#fff;border:1px solid var(--teal);border-radius:11px;min-height:42px;padding:10px 15px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s}.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn.secondary{color:var(--teal);background:#fff;border-color:#c8d9d4}.btn.ghost{color:var(--ink);background:transparent;border-color:transparent}.btn.soft{color:var(--teal);background:var(--mint);border-color:var(--mint)}.btn.danger{color:var(--red);border-color:#f2d7d5;background:#fff}.btn.sm{padding:7px 10px;min-height:33px;font-size:12px;border-radius:9px}.btn.full{width:100%}.btn.inline{white-space:nowrap}.pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;background:#edf0ee;color:#5d6f6a;font-size:11px;font-weight:800;text-transform:capitalize;white-space:nowrap}.pill.accepted,.pill.approved,.pill.paid,.pill.completed{color:#207457;background:#e1f3e9}.pill.sent,.pill.scheduled,.pill.awaiting,.pill.awaiting-approval{color:#8b641d;background:#fff1d9}.pill.declined{color:#a94847;background:#fae3e1}.dot{height:7px;width:7px;background:currentColor;border-radius:50%}.banner{background:#e9f2ee;border:1px solid #d4e6de;border-radius:13px;padding:12px 16px;color:#3b6256;font-size:12px}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:21px;box-shadow:0 4px 18px rgba(20,60,50,.025)}.card.flat{box-shadow:none}.soft-card{border-radius:15px;background:#f3f8f5;padding:17px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.section-head h2,.section-head h3{margin:0}.empty{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:170px;gap:8px;border:1px dashed #cedbd5;border-radius:14px;background:#fcfdfb;padding:30px}.empty .big-icon{font-size:30px}.empty p{margin:0}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;min-width:610px}.table th{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em;text-align:left;font-weight:800;padding:11px;border-bottom:1px solid var(--line)}.table td{padding:14px 11px;border-bottom:1px solid #edf0ed;vertical-align:middle;font-size:13px}.table tr:last-child td{border-bottom:0}.table .strong{font-weight:800}.split{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(270px,.85fr);gap:18px}.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:15px}.field label{font-size:12px;font-weight:800;color:#395551}.field input,.field select,.field textarea{width:100%;background:#fff;border:1px solid #d9e3df;border-radius:10px;padding:10px 11px;outline:0;min-height:43px;color:var(--ink)}.field textarea{min-height:100px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#539c8e;box-shadow:0 0 0 3px #d9f0e8}.field small{color:var(--muted)}.field input[type=checkbox]{width:auto;min-height:0;accent-color:var(--teal)}.checkline{display:flex;align-items:center;gap:10px}.checkline label{font-weight:500}.shell{display:flex;min-height:100vh}.sidebar{width:240px;background:#123b3c;color:white;display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh;padding:28px 16px}.logo{font-family:Manrope,sans-serif;font-weight:800;font-size:21px;letter-spacing:-.06em;display:flex;align-items:center;gap:9px}.logo-mark{display:inline-flex;background:#cfecdf;color:#154a45;border-radius:10px;width:34px;height:34px;align-items:center;justify-content:center;font-size:20px}.logo small{font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:.08em;font-weight:600;display:block;color:#aed4ca;text-transform:uppercase}.sidebar .nav{display:flex;flex-direction:column;gap:4px;margin-top:30px;flex:1}.nav-item{border:0;background:transparent;color:#cae0d9;padding:12px 13px;display:flex;gap:13px;align-items:center;text-align:left;border-radius:10px;font-weight:700;font-size:13px}.nav-item:hover,.nav-item.active{background:#286363;color:white}.sidebar-foot{border-top:1px solid #427170;padding-top:16px;font-size:11px;color:#bdd5ce}.main{flex:1;min-width:0}.topbar{height:83px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 37px;gap:15px}.topbar h2{margin:0;font-size:19px}.content{padding:28px 37px 48px;max-width:1600px;margin:auto}.iconbox{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--mint);color:var(--teal);font-size:19px}.metric{padding:20px}.metric .num{font-size:30px;font-weight:800;font-family:Manrope,sans-serif;letter-spacing:-.045em;margin-top:8px}.metric .cap{font-size:12px;color:var(--muted)}.metric .foot{font-size:11px;margin-top:9px;color:#4b7f6e}.page-title{margin-bottom:22px}.page-title h1{font-size:28px;margin:3px 0 5px}.page-title p{margin:0;color:var(--muted)}.welcome{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#194e4d;color:#fff;border-radius:19px;padding:29px;margin-bottom:19px;position:relative;overflow:hidden}.welcome:after{content:'';position:absolute;height:240px;width:240px;border:1px solid #78bbb273;border-radius:50%;right:-30px;top:-130px;pointer-events:none}.welcome h1{font-size:28px;margin:7px 0}.welcome p{color:#bad9d2;margin:0}.welcome .btn{background:#dbf0e5;border-color:#dbf0e5;color:#20524a}.job-item{display:flex;justify-content:space-between;gap:13px;padding:13px 0;border-bottom:1px solid var(--line);align-items:center}.job-item:last-child{border:0}.job-time{font-size:11px;color:var(--teal);font-weight:800;min-width:59px}.job-name{font-weight:800;font-size:13px}.job-desc{font-size:11px;color:var(--muted)}.quick-action{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:13px;margin-bottom:9px;background:#fff;cursor:pointer;width:100%;text-align:left}.quick-action:hover{background:var(--mint)}.quick-action span:first-child{display:grid;place-items:center;background:#eaf4ef;color:var(--teal);border-radius:10px;width:36px;height:36px;font-size:18px}.quick-action b{font-size:12px}.quick-action small{display:block;color:var(--muted);font-size:10px}.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.weekday{text-align:center;color:#7a8d87;font-size:10px;text-transform:uppercase;font-weight:800;padding:8px 0}.day{border:1px solid #e5ebe8;background:white;border-radius:10px;height:95px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;padding:9px;overflow:hidden}.day:hover{border-color:#90b9a8}.day.other{opacity:.4}.day.selected{border:2px solid #207c6e;padding:8px;background:#f3fbf6}.day.today .day-n{background:var(--teal);color:white;border-radius:50%;width:24px;height:24px;display:grid;place-items:center}.day-n{font-size:12px;font-weight:800}.event-chip{font-size:9px;background:#d8f0e9;border-radius:5px;color:#21655c;padding:3px 4px;margin-top:4px;max-width:100%;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-chip.orange{background:#fff0df;color:#9d631c}.calendar-side .job-item{align-items:flex-start}.modal-layer{position:fixed;inset:0;background:#092726aa;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#fff;width:min(620px,100%);max-height:91vh;overflow-y:auto;border-radius:18px;box-shadow:0 30px 100px #09272666}.modal-head{padding:22px 25px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;align-items:center}.modal-head h2{margin:0;font-size:20px}.modal-body{padding:23px 25px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;margin-top:10px}.xclose{border:0;background:#eef2f0;color:#3a5d58;border-radius:50%;width:34px;height:34px;font-size:21px;display:grid;place-items:center}.toast{position:fixed;bottom:24px;right:24px;padding:13px 17px;border-radius:12px;color:white;background:#164c49;box-shadow:var(--shadow);max-width:370px;font-size:13px;z-index:1100}.demo-bar{font-size:11px;background:#fff7e9;color:#9d6b22;border:1px solid #f1e3c8;padding:9px 13px;border-radius:9px}.market{background:#fbfaf5}.market-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 5%;border-bottom:1px solid #dfe8e0;background:white}.market-logo{color:var(--ink)}.market-nav .links{display:flex;gap:23px;align-items:center}.market-nav .links a{font-size:13px;font-weight:800;color:#546962}.market-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:center;max-width:1190px;margin:auto;padding:86px 30px 94px}.market-hero h1{margin:13px 0 20px;line-height:1.08}.market-hero p{font-size:17px;line-height:1.75;color:#657a74;max-width:530px}.market-hero .btn{min-height:49px;padding:12px 22px}.hero-visual{min-height:440px;background:linear-gradient(140deg,#cfe3d6,#a2c3ad);border-radius:22px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.house-illustration{width:75%;max-width:380px;filter:drop-shadow(0 24px 24px rgba(30,68,43,.14))}.hero-overlay{position:absolute;bottom:20px;left:20px;right:20px;padding:19px 22px;background:#ffffffea;border-radius:14px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow)}.services{background:#f0f5f1;padding:72px 30px}.services-inner{max-width:1150px;margin:auto}.service-card{background:white;border-radius:16px;padding:25px;min-height:215px;border:1px solid #e0eae3}.service-card .service-icon{font-size:28px}.service-card h3{margin:19px 0 10px}.service-card p{font-size:13px;color:#657972;line-height:1.75}.steps{padding:70px 30px;max-width:1140px;margin:auto}.step-num{display:grid;place-items:center;width:38px;height:38px;background:var(--mint);border-radius:50%;color:var(--teal);font-weight:800}.request{padding:75px 30px;background:#173f3f;color:white}.request-inner{max-width:1050px;margin:auto;display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.request p{color:#c1d9d2}.request .card{color:var(--ink)}.client-shell{max-width:1100px;margin:auto;padding:27px 22px 70px}.client-top{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:30px}.customer-heading{padding:28px;background:#194e4d;border-radius:18px;color:#fff;margin-bottom:18px}.customer-heading p{color:#c1d9d2;margin-bottom:0}.customer-card{border:1px solid var(--line);padding:21px;border-radius:16px;background:white;margin-bottom:13px}.customer-card h3{margin-bottom:7px}.customer-card p{color:var(--muted);font-size:13px}.customer-card .actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:15px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:15px}.customer-section{margin-top:31px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}.photo-grid img{width:100%;height:112px;object-fit:cover;border-radius:9px;border:1px solid var(--line)}.login-page{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at top right,#b4d5c2,transparent 36%),#e7efea}.login-card{width:min(440px,100%);background:#fff;padding:36px;border-radius:23px;box-shadow:0 25px 85px #1948411a}.login-card h1{font-size:30px;margin-top:30px}.login-card p{color:var(--muted)}.login-card .demo-bar{margin:20px 0}.mini-link{font-size:12px;color:var(--teal);text-decoration:underline}.mobile-menu{display:none}.footer{padding:25px;text-align:center;background:#102f2f;color:#bad7cf;font-size:12px}.print-only{display:none}
@media(max-width:1150px){.four{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.sidebar{width:205px}.topbar{padding:0 23px}.content{padding:25px}}
@media(max-width:800px){.sidebar{position:fixed;z-index:100;transform:translateX(-110%);transition:transform .2s;width:250px;box-shadow:0 0 50px #0003}.sidebar.open{transform:translateX(0)}.mobile-menu{display:inline-flex}.topbar{height:auto;min-height:77px;padding:12px 18px}.content{padding:20px 15px}.topbar .hide-mobile{display:none}.three{grid-template-columns:1fr 1fr}.market-hero{grid-template-columns:1fr;padding:60px 22px}.hero-visual{min-height:320px}.request-inner{grid-template-columns:1fr;gap:20px}.market-nav .links a{display:none}.services{padding:55px 19px}}
@media(max-width:550px){.four,.two,.three{grid-template-columns:1fr}.welcome{padding:23px;flex-direction:column;align-items:flex-start}.welcome h1{font-size:24px}.page-title h1{font-size:24px}.modal-layer{padding:8px}.modal{max-height:97vh}.modal-body{padding:18px}.modal-head{padding:18px}.market-hero h1{font-size:38px}.market-hero p{font-size:15px}.market-nav{padding:17px}.logo{font-size:17px}.logo-mark{width:30px;height:30px}.day{height:70px;padding:5px;border-radius:6px}.day.selected{padding:4px}.weekday{font-size:9px}.day-n{font-size:10px}.event-chip{font-size:0;height:5px;width:14px;border-radius:4px}.client-top{flex-direction:column;align-items:stretch}.photo-grid{grid-template-columns:repeat(2,1fr)}.topbar .btn{padding:7px 9px;font-size:11px}.card{padding:17px}}
@media print{body{background:white}.sidebar,.topbar,.modal-layer,.btn,.demo-bar,.no-print{display:none!important}.content{padding:0}.card{border:0;box-shadow:none}.shell{display:block}}
