
:root{--ink:#10202d;--muted:#667685;--brand:#0f6b5a;--brand2:#18a67d;--accent:#f4b942;--bg:#f5f8f7;--white:#fff;--line:#e3ebe8;--shadow:0 18px 50px rgba(16,32,45,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}.container{width:min(1180px,92%);margin:auto}
.topbar{background:#0d1b24;color:#dce7e5;font-size:13px}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:9px 0}.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.navin{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{height:46px;width:auto}.links{display:flex;gap:25px;align-items:center}.links a{text-decoration:none;color:var(--ink);font-weight:700;font-size:14px}.links a:hover{color:var(--brand)}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:13px 20px;font-weight:800;text-decoration:none;cursor:pointer;transition:.2s}.btn-primary{background:var(--brand);color:white;box-shadow:0 8px 20px rgba(15,107,90,.22)}.btn-primary:hover{transform:translateY(-2px);background:#0b594b}.btn-light{background:white;color:var(--brand);border:1px solid #d8e6e2}.menu{display:none;background:none;border:0;font-size:25px}
.hero{min-height:690px;display:grid;align-items:center;background:linear-gradient(90deg,rgba(8,24,32,.88) 0%,rgba(8,24,32,.62) 48%,rgba(8,24,32,.15) 100%),url('assets/img/slider/home1.jpg') center/cover no-repeat;color:white}.hero h1{font-size:clamp(42px,6vw,76px);line-height:1.02;max-width:760px;margin:18px 0}.hero p{font-size:19px;max-width:680px;color:#e9f1ef}.eyebrow{display:inline-flex;gap:8px;align-items:center;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:900;color:#bce8dc}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero .btn-light{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.35)}
.section{padding:90px 0}.section.alt{background:var(--bg)}.head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.head h2{font-size:38px;line-height:1.1;margin:7px 0}.head p{color:var(--muted);max-width:650px;margin:0}.kicker{color:var(--brand);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.card img{width:100%;height:210px;object-fit:cover}.cardbody{padding:22px}.card h3{margin:0 0 8px;font-size:21px}.card p{color:var(--muted);margin:0 0 17px;font-size:14px}.textlink{color:var(--brand);font-weight:900;text-decoration:none}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat{padding:24px;background:white;border:1px solid var(--line);border-radius:18px}.stat strong{display:block;font-size:30px}.stat span{color:var(--muted);font-size:13px}
.formbox{background:white;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:800;font-size:13px}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid #d6e1de;border-radius:11px;font:inherit;background:#fbfdfc;outline:none}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(15,107,90,.10)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}.feature{padding:28px;background:var(--bg);border-radius:22px;border:1px solid var(--line)}.feature h3{margin-top:0}.check{display:flex;gap:10px;margin:11px 0;color:#40545e}.check b{color:var(--brand)}
.calc{background:#0d1b24;color:white;border-radius:26px;padding:34px}.calc .field label{color:#dfeae7}.calc .field input,.calc .field select{background:#fff}.total{margin-top:22px;padding:20px;border-radius:16px;background:rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center}.total strong{font-size:30px;color:#ffe08a}.note{font-size:12px;color:#a9bbb6}
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review{padding:24px;background:#fff;border:1px solid var(--line);border-radius:18px}.stars{color:#f4b400;font-size:21px;letter-spacing:2px}.review p{color:#52636b}.review small{font-weight:800}.reviewform{margin-top:24px}.review-list:empty:before{content:"Be the first customer to leave a review.";display:block;color:var(--muted)}
.chat{position:fixed;right:22px;bottom:22px;z-index:80}.chat-btn{width:60px;height:60px;border-radius:50%;border:0;background:var(--brand);color:#fff;font-size:25px;box-shadow:0 12px 35px rgba(0,0,0,.22);cursor:pointer}.chatbox{position:absolute;right:0;bottom:72px;width:350px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden;display:none}.chatbox.open{display:block}.chathead{background:#0d1b24;color:white;padding:16px 18px;display:flex;justify-content:space-between}.chatmessages{height:320px;overflow:auto;padding:15px;background:#f5f8f7}.msg{max-width:85%;padding:10px 12px;border-radius:13px;margin:8px 0;font-size:14px}.bot{background:#fff;border:1px solid var(--line)}.user{background:#dff4ed;margin-left:auto}.chatinput{display:flex;border-top:1px solid var(--line)}.chatinput input{flex:1;border:0;padding:13px}.chatinput button{border:0;background:var(--brand);color:#fff;padding:0 16px}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery img{width:100%;height:220px;object-fit:cover;border-radius:15px}
.footer{background:#0b171f;color:#d4dfdc;padding:60px 0 20px}.footergrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.footer h3{color:white}.footer a{color:#d4dfdc;text-decoration:none;display:block;margin:8px 0}.copy{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:18px;font-size:12px}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);background:#0d1b24;color:#fff;padding:13px 18px;border-radius:12px;opacity:0;pointer-events:none;transition:.25s;z-index:100}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:900px){.links{display:none}.menu{display:block}.grid,.reviews{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.footergrid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.topbar .container{flex-direction:column;gap:2px}.hero{min-height:620px}.hero h1{font-size:44px}.section{padding:65px 0}.grid,.reviews,.formgrid,.stats,.gallery{grid-template-columns:1fr}.gallery img{height:260px}.chatbox{width:min(350px,calc(100vw - 28px))}.head{display:block}.head h2{font-size:32px}.navin{height:68px}}

/* JC Contracting brand color refresh */
:root{
  --ink:#14232d;
  --muted:#687780;
  --brand:#16834f;
  --brand2:#29b86f;
  --accent:#f5a623;
  --blue:#1677b8;
  --bg:#f4f8f6;
  --line:#dce8e2;
  --shadow:0 18px 50px rgba(20,35,45,.10);
}
body{background:#fff}
.topbar{background:linear-gradient(90deg,#10212b,#143b38 55%,#12352e);border-bottom:3px solid var(--accent)}
.nav{border-bottom:1px solid #dce8e2;box-shadow:0 5px 24px rgba(20,35,45,.05)}
.nav:after{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--brand),var(--blue),var(--accent));position:absolute;left:0;right:0;bottom:-3px}
.navin>a:first-child{display:flex;align-items:center}
.logo{height:58px;width:auto;object-fit:contain}
.links a{position:relative}
.links a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:linear-gradient(90deg,var(--brand),var(--accent));transition:.2s}
.links a:hover:after{right:0}
.btn-primary{background:linear-gradient(135deg,var(--brand),#0e9a5a);box-shadow:0 8px 20px rgba(22,131,79,.24)}
.btn-primary:hover{background:linear-gradient(135deg,#0e7042,#16834f)}
.hero{background:linear-gradient(90deg,rgba(9,27,35,.90),rgba(9,44,39,.67) 48%,rgba(9,27,35,.20)),url('assets/img/slider/home1.jpg') center/cover no-repeat;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;right:-130px;top:-110px;background:rgba(245,166,35,.16);filter:blur(4px)}
.hero:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:22%;bottom:-170px;background:rgba(22,131,79,.18)}
.hero .container{position:relative;z-index:1}
.eyebrow{color:#9ff0bd}
.hero h1{max-width:790px;text-shadow:0 3px 20px rgba(0,0,0,.18)}
.hero .btn-light{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.10)}
.section.alt{background:linear-gradient(180deg,#f5f9f7,#eef6f2)}
.kicker{color:var(--blue)}
.card{border-top:4px solid transparent;transition:transform .22s,box-shadow .22s,border-color .22s}
.card:nth-child(3n+1){border-top-color:var(--brand)}
.card:nth-child(3n+2){border-top-color:var(--blue)}
.card:nth-child(3n){border-top-color:var(--accent)}
.card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(20,35,45,.14)}
.textlink{color:var(--brand)}
.stats .stat:nth-child(1){border-left:4px solid var(--brand)}
.stats .stat:nth-child(2){border-left:4px solid var(--blue)}
.stats .stat:nth-child(3){border-left:4px solid var(--accent)}
.stats .stat:nth-child(4){border-left:4px solid #7b61a8}
.stats strong{color:var(--ink)}
.feature{background:linear-gradient(135deg,#f4faf7,#eef6fb);border-left:4px solid var(--brand)}
.check b{color:var(--brand);background:#e7f7ee;border-radius:50%;width:25px;height:25px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 25px}
.calc{background:linear-gradient(145deg,#10222c,#123e39 62%,#14543d);position:relative;overflow:hidden}
.calc:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-80px;top:-90px;background:rgba(245,166,35,.13)}
.calc>*{position:relative;z-index:1}
.total strong{color:#ffd166}
.stars{background:linear-gradient(90deg,#f5a623,#ffd166,#f5a623);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}
.review{border-top:3px solid var(--accent)}
.chat-btn{background:linear-gradient(135deg,var(--brand),var(--blue));border:3px solid #fff}
.chathead{background:linear-gradient(90deg,#10222c,#146b4d)}
.chatinput button{background:var(--brand)}
.footer{background:linear-gradient(135deg,#0a1720,#10332f)}
.footer .logo{filter:none;background:rgba(255,255,255,.04);padding:5px 8px;border-radius:8px}
.footer h3{position:relative;padding-bottom:8px}
.footer h3:after{content:"";display:block;width:38px;height:3px;background:var(--accent);margin-top:7px;border-radius:3px}
@media(max-width:620px){.logo{height:48px}.navin{gap:12px}}
