/*
Theme Name: KNS Electrical Restored
Theme URI: https://knselec.com/
Author: DECH Digital Ltd
Description: Standalone custom WordPress theme for KNS Electrical Services. Recreates the original site without Elementor or Elementor Pro.
Version: 1.3.0
Text Domain: kns-restored
*/
:root{--navy:#111d2d;--blue:#1174b9;--cyan:#23a9e1;--light:#f3f6f8;--text:#25303c;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.site-header{position:relative;z-index:30;background:#fff;box-shadow:0 2px 18px rgba(0,0,0,.08)}.topbar{background:var(--navy);color:#fff;font-size:13px}.topbar .wrap{display:flex;justify-content:flex-end;gap:25px;padding:8px 0}.mainbar{display:flex;align-items:center;justify-content:space-between;min-height:92px}.brand img{width:185px;display:block}.menu{display:flex;align-items:center;gap:32px;list-style:none;margin:0;padding:0}.menu a{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.menu a:hover,.current-menu-item>a{color:var(--cyan)}.menu-toggle{display:none;background:none;border:0;font-size:28px}.hero{min-height:600px;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;color:#fff}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,20,34,.86),rgba(9,20,34,.46) 55%,rgba(9,20,34,.12))}.hero .wrap{position:relative}.hero-copy{max-width:800px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:#63c6ee;font-size:13px}.hero h1{font-size:clamp(38px,5vw,66px);line-height:1.08;margin:14px 0 28px;font-weight:300}.btn{display:inline-block;padding:14px 26px;background:var(--cyan);color:#fff;text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.08em;border-radius:2px}.btn:hover{background:var(--blue)}.section{padding:85px 0}.section-title{font-size:38px;line-height:1.2;font-weight:300;margin:0 0 20px;color:var(--navy)}.lead{font-size:18px}.about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:65px;align-items:center}.about-image img{width:100%;border-radius:4px}.ticks{padding:0;list-style:none}.ticks li{margin:10px 0;padding-left:28px;position:relative}.ticks li:before{content:'✓';position:absolute;left:0;color:var(--cyan);font-weight:bold}.services{background:var(--light);position:relative}.services-head{text-align:center;max-width:900px;margin:0 auto 45px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:#fff;border:1px solid #dce4e9;min-height:210px;padding:34px 25px;text-align:center;transition:.2s;border-radius:3px}.service-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px rgba(15,40,60,.12);border-color:var(--cyan)}.service-card img{height:62px;width:68px;object-fit:contain;margin-bottom:18px}.service-card h3{margin:0;color:var(--navy);font-size:20px}.projects{background:#fff}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.project-card{background:#fff;border:1px solid #e1e6e9}.project-card img{width:100%;height:250px;object-fit:cover}.project-card-body{padding:22px}.project-card h3{margin:0 0 8px;color:var(--navy)}.contact-band{background:var(--navy);color:#fff;padding:70px 0}.contact-band .section-title{color:#fff}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:45px;align-items:center}.contact-value{font-size:22px;color:#63c6ee}.site-footer{background:#0a1420;color:#aeb8c4;padding:45px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px}.footer-logo{filter:brightness(0) invert(1);width:190px}.site-footer h4{color:#fff;margin-top:0}.copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:35px;padding-top:20px;font-size:12px;display:flex;justify-content:space-between}.page-hero{min-height:360px;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;color:#fff}.page-hero:before{content:"";position:absolute;inset:0;background:rgba(10,25,42,.68)}.page-hero .wrap{position:relative}.page-hero h1{font-size:52px;font-weight:300;margin:0}.content{padding:70px 0}.entry-content{max-width:950px;margin:auto}.entry-content h2{color:var(--navy)}.cf7-wrap{background:var(--light);padding:30px;border-radius:4px}.wpcf7 input,.wpcf7 textarea,.wpcf7 select{width:100%;padding:13px;border:1px solid #ccd5db;background:#fff;margin-top:6px}.wpcf7 input[type=submit]{width:auto;background:var(--cyan);color:#fff;border:0;padding:14px 25px;font-weight:700;cursor:pointer}.admin-edit-note{font-size:12px;color:#777}@media(max-width:800px){.topbar{display:none}.mainbar{min-height:74px}.brand img{width:145px}.menu-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:74px;background:#fff;padding:15px 20px;box-shadow:0 10px 20px rgba(0,0,0,.12)}.primary-nav.open{display:block}.menu{display:block}.menu li{padding:10px 0;border-bottom:1px solid #eee}.hero{min-height:520px}.about-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}.service-grid,.project-grid{grid-template-columns:1fr 1fr}.section{padding:60px 0}}@media(max-width:520px){.service-grid,.project-grid{grid-template-columns:1fr}.wrap{width:min(100% - 28px,var(--max))}.hero h1{font-size:38px}.page-hero h1{font-size:40px}}
/* v1.1 original KNS visual restoration */
:root{--red:#e4003b;--navy:#202d49;--ink:#202d49}
body{font-family:'Century Gothic','Avenir Next',Avenir,'Trebuchet MS',Arial,sans-serif;color:var(--ink);font-weight:400}.topbar{background:#0b1728;color:var(--red)}.topbar a{color:var(--red)}.mainbar{min-height:150px}.brand img,.brand .custom-logo{width:220px;max-height:115px}.menu{gap:42px}.menu a{color:var(--navy);font-size:16px;font-weight:700;letter-spacing:.04em}.menu a:hover,.current-menu-item>a{color:var(--red)}.btn,.wpcf7 input[type=submit]{background:transparent;color:var(--red);border:2px solid var(--red);border-radius:4px}.btn:hover,.wpcf7 input[type=submit]:hover{background:var(--red);color:#fff}.section-title,.service-card h3,.project-card h3,.entry-content h2{color:var(--navy)}
.kns-global-end{background:#fff}.kns-accreditations{padding:58px 0 85px}.kns-accreditations-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:45px;align-items:center;max-width:920px;margin:auto}.kns-accreditations img{display:block;max-height:100px;max-width:100%;width:auto;margin:auto;object-fit:contain}.kns-testimonials{position:relative;background:var(--red);color:#fff;text-align:center;padding:72px 0 105px;overflow:hidden}.kns-testimonials:before{content:"";position:absolute;left:-4%;right:-4%;top:-72px;height:110px;background:#fff;border-radius:0 0 50% 50%}.kns-testimonials:after{content:"";position:absolute;left:-4%;right:-4%;bottom:-70px;height:110px;background:var(--navy);border-radius:50% 50% 0 0}.kns-testimonials .wrap{position:relative;z-index:2;max-width:900px}.kns-testimonials h2{font-size:42px;font-weight:400;margin:0 0 28px}.testimonial-quote{font-size:21px;line-height:1.65;margin:0 auto 24px;max-width:800px}.testimonial-name{font-size:20px;font-weight:700;margin:0}.testimonial-role{margin:0;color:var(--navy);font-size:16px}.site-footer{position:relative;background:var(--navy);color:#fff;padding:105px 0 30px}.footer-grid{grid-template-columns:1.1fr 1fr .8fr;align-items:start}.footer-logo{filter:none;width:190px}.site-footer p,.site-footer a{color:#fff}.site-footer h4{font-size:22px}.site-footer h4,.footer-contact-label{color:#fff}.footer-nav .menu{display:block}.footer-nav .menu li{margin:5px 0}.footer-nav .menu a{color:#fff;font-size:15px;text-transform:none;letter-spacing:0}.footer-nav .menu a:hover{color:var(--red)}.footer-contact a{display:block;margin:7px 0}.footer-social{display:flex;gap:12px;margin-top:18px}.footer-social a{border:1px solid rgba(255,255,255,.7);width:35px;height:35px;display:grid;place-items:center;font-weight:700}.copyright{color:#fff}.copyright a{color:#fff}
@media(max-width:800px){.mainbar{min-height:95px}.brand img,.brand .custom-logo{width:160px}.kns-accreditations-inner{grid-template-columns:1fr 1fr;gap:30px}.kns-testimonials h2{font-size:32px}.testimonial-quote{font-size:17px}.site-footer{padding-top:85px}.footer-grid{grid-template-columns:1fr}.footer-nav .menu{display:block}}

/* v1.2 header refinement */
.site-header{box-shadow:none;border-bottom:1px solid #eef0f3}
.topbar{height:42px;display:flex;align-items:center}
.topbar .wrap{padding:0;min-height:42px;align-items:center;gap:32px;font-size:14px}
.mainbar{min-height:142px;position:relative;overflow:visible}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img,.brand .custom-logo{width:230px;max-width:230px;max-height:112px;object-fit:contain}
.primary-nav{margin-left:auto;align-self:stretch;display:flex;align-items:center}
.primary-nav>.menu{display:flex;align-items:center;gap:48px;height:100%;list-style:none;margin:0;padding:0}
.primary-nav>.menu>li{position:relative;display:flex;align-items:center;height:100%}
.primary-nav>.menu>li>a{display:flex;align-items:center;height:100%;padding:0 2px;color:var(--navy);font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}
.primary-nav>.menu>li>a:hover,.primary-nav>.menu>.current-menu-item>a,.primary-nav>.menu>.current-menu-ancestor>a{color:var(--red)}
.primary-nav .sub-menu{position:absolute;z-index:100;top:calc(50% + 25px);left:50%;transform:translateX(-50%) translateY(8px);min-width:255px;margin:0;padding:12px 0;background:#fff;border-top:3px solid var(--red);box-shadow:0 14px 35px rgba(14,28,48,.16);list-style:none;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.primary-nav .menu>li:hover>.sub-menu,.primary-nav .menu>li:focus-within>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.primary-nav .sub-menu li{display:block;margin:0;padding:0;height:auto}
.primary-nav .sub-menu a{display:block;padding:10px 20px;color:var(--navy);font-size:13px;line-height:1.3;font-weight:700;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap}
.primary-nav .sub-menu a:hover{color:var(--red);background:#f7f8fa}
.primary-nav>.menu>li:last-child>a{height:auto;padding:13px 22px;border:2px solid var(--red);border-radius:4px;color:var(--red)}
.primary-nav>.menu>li:last-child>a:hover{background:var(--red);color:#fff}
@media(max-width:1000px){.primary-nav>.menu{gap:25px}.primary-nav>.menu>li>a{font-size:14px}.brand img,.brand .custom-logo{width:190px}.mainbar{min-height:120px}}
@media(max-width:800px){.topbar{display:none}.mainbar{min-height:88px}.brand img,.brand .custom-logo{width:155px;max-height:74px}.primary-nav{display:none;position:absolute;left:0;right:0;top:88px;background:#fff;padding:12px 22px;box-shadow:0 14px 30px rgba(0,0,0,.14);height:auto}.primary-nav.open{display:block}.primary-nav>.menu{display:block;height:auto}.primary-nav>.menu>li{display:block;height:auto;border-bottom:1px solid #eee}.primary-nav>.menu>li>a{height:auto;padding:13px 0}.primary-nav>.menu>li:last-child>a{border:0;padding:13px 0}.primary-nav>.menu>li:last-child>a:hover{background:transparent;color:var(--red)}.primary-nav .sub-menu{position:static;transform:none!important;min-width:0;box-shadow:none;border-top:0;border-left:2px solid var(--red);margin:0 0 10px 8px;padding:0 0 0 10px;opacity:1;visibility:visible;pointer-events:auto;display:none}.primary-nav .menu>li:hover>.sub-menu,.primary-nav .menu>li:focus-within>.sub-menu{display:block}.primary-nav .sub-menu a{padding:8px 10px;font-size:12px}}


/* v1.3 global credentials strip */
.kns-credentials{background:#fff;padding:58px 0 62px;border-bottom:1px solid #f0f1f3}
.kns-credentials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:58px;align-items:start}
.kns-credential{text-align:center;padding:4px 18px;color:var(--navy)}
.kns-credential-icon{height:82px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.kns-credential-icon img{width:72px;height:72px;object-fit:contain;display:block}
.kns-credential h3{font-size:24px;line-height:1.2;margin:0 0 12px;color:var(--navy);font-weight:700;letter-spacing:.01em}
.kns-credential p{font-size:17px;line-height:1.55;margin:0 auto;max-width:340px;color:var(--navy)}
@media(max-width:800px){.kns-credentials{padding:44px 0}.kns-credentials-grid{grid-template-columns:1fr;gap:38px}.kns-credential{padding:0}.kns-credential-icon{height:68px;margin-bottom:14px}.kns-credential-icon img{width:62px;height:62px}.kns-credential h3{font-size:22px;margin-bottom:8px}.kns-credential p{font-size:16px;max-width:430px}}
