@charset "UTF-8";
:root{--ink:#183524;--muted:#53655a;--forest:#102f1b;--brand:#0a5b21;--highlight:#b5e58e;--paper:#f8faf7;--line:#dbe5d7;--white:#fff;--accent:#52a61a;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:130px}
*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a{text-underline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #287d21;outline-offset:5px}h1,h2,h3,h4,p{margin-top:0}p{line-height:1.65}h1,h2,h3{letter-spacing:-.04em}h2{font-size:clamp(2rem,3.3vw,3rem);line-height:1.12;margin-bottom:0}h3{font-size:1.5rem;line-height:1.2}h4{font-size:1.05rem}section[id]{scroll-margin-top:20px}[hidden]{display:none!important}.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.section-space{padding:100px 0}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.13em;line-height:1.6;margin-bottom:25px}.skip-link{position:fixed;z-index:10;left:16px;top:-100px;background:white;padding:16px}.skip-link:focus{top:12px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.header-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:30px}.wordmark{display:inline-flex;align-items:center;flex:none;text-decoration:none;max-width:100%}.brand-logo{display:block;width:250px;height:auto;max-width:100%}nav{display:flex;align-items:center;gap:32px}nav a{text-decoration:none;font-size:.875rem;font-weight:600;padding:14px 0}nav a:hover{color:var(--brand)}nav .nav-contact{border:1px solid var(--ink);padding:12px 20px;display:flex;gap:24px}.hero{overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:58px;align-items:center;padding-top:75px;padding-bottom:75px}.hero-copy .eyebrow{display:flex;align-items:center;gap:12px;font-size:.7rem}.small-rule{width:26px;height:2px;background:var(--accent);flex:none}h1{font-size:clamp(3.2rem,4.65vw,4.5rem);line-height:1.03;font-weight:600;margin-bottom:28px;letter-spacing:-.06em}h1 span{color:var(--brand)}.hero-description{font-size:1.125rem;color:var(--muted);max-width:500px;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{min-height:50px;padding:15px 21px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-size:.875rem;font-weight:600;text-decoration:none;border:1px solid transparent;line-height:1.3;border-radius:2px;transition:background .15s}.button-primary{color:white;background:var(--brand)}.button-primary:hover{background:#074619}.button-secondary{background:white;color:var(--ink);border-color:#a8bda9}.button-secondary:hover{background:#edf5e8}.text-link{display:inline-flex;gap:14px;align-items:center;text-decoration:none;font-size:.875rem;font-weight:700;line-height:1.4}.text-link:hover{text-decoration:underline}.engagement-note{font-size:.75rem;color:var(--muted);margin-top:30px;margin-bottom:0}.engagement-note span{margin:0 9px;color:#81927f}.hero-visual{background:var(--forest);color:#e5eee0;border:1px solid #34523b;box-shadow:14px 14px 0 #e5eddc;position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between}.visual-heading{padding:23px 25px 0;display:flex;justify-content:space-between;gap:12px;font-family:Consolas,monospace;font-size:.7rem;letter-spacing:.08em;color:#b8cbb0}.layer-diagram{width:100%;height:auto;display:block;margin:6px 0}.visual-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 25px;padding:19px 0 25px;border-top:1px solid #3c5940;font-size:.875rem;line-height:1.55;color:#b7cdb0}.visual-footer strong{color:#e9f1e3;font-weight:400}.diagram-note{font-family:Consolas,monospace;font-size:.65rem;letter-spacing:.07em;text-align:right}.experience-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:white}.experience-grid{display:grid;grid-template-columns:1fr 1fr 1fr;padding-block:29px}.experience-grid p{display:flex;align-items:center;gap:17px;margin:0;padding:0 25px;border-right:1px solid var(--line)}.experience-grid p:first-child{padding-left:0}.experience-grid p:last-child{border:0}.experience-grid strong{font-size:1.35rem;letter-spacing:-.04em;white-space:nowrap}.experience-grid span{font-size:.8rem;color:var(--muted);max-width:125px;line-height:1.45}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:42px}.section-heading .eyebrow{color:var(--brand);margin-bottom:17px}.section-heading>p{max-width:315px;color:var(--muted);margin-bottom:0;font-size:1rem}.primary-service{display:grid;grid-template-columns:1.4fr 1fr;gap:75px;background:var(--forest);color:white;padding:46px;margin-bottom:22px}.primary-service .eyebrow{color:var(--highlight);margin-bottom:17px}.primary-service h3{font-size:2.25rem;margin-bottom:20px}.primary-service p:not(.eyebrow){color:#d4e2cc;max-width:575px}.primary-service .text-link{color:var(--highlight);margin-top:8px}.service-details{border-left:1px solid #476245;padding-left:45px;align-self:center}.service-details ul{list-style:none;padding:0;margin:0;color:#d4e2cc}.service-details li{padding:12px 0;border-bottom:1px solid #476245;line-height:1.4;font-size:.9375rem}.service-details li:last-child{border-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card,.support-card{padding:32px;background:white;border:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start}.service-number{font-family:Consolas,monospace;color:var(--brand);font-size:.8rem;margin-bottom:30px}.service-card h3{min-height:58px;margin-bottom:16px}.service-card p,.support-card p:not(.eyebrow){color:var(--muted);font-size:.9375rem;margin-bottom:28px}.service-card .text-link,.support-card .text-link{margin-top:auto}.library-card{border-top:3px solid var(--accent);padding-top:30px}.support-card{background:#eff6e8;justify-content:center}.support-card .eyebrow{color:var(--brand);margin-bottom:32px}.support-card h3{font-size:1.8rem}.support-card .text-link{margin-top:0}.platforms{margin-top:46px;padding-top:28px;border-top:1px solid var(--line)}.platforms p{font-size:.7rem;letter-spacing:.1em;color:var(--muted);margin-bottom:22px}.platforms ul{list-style:none;display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;padding:0;margin:0;font-size:1.1rem;font-weight:600;letter-spacing:-.03em}.about{background:#eef4e9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about .eyebrow{color:var(--brand)}.about h2{font-size:clamp(2.4rem,3.5vw,3.3rem)}.about h2 span{color:var(--brand)}.about-copy{padding-top:4px}.about-copy p{color:var(--muted)}.about-copy .about-lead{font-size:1.25rem;color:var(--ink);line-height:1.5;margin-bottom:24px}.about-copy .text-link{margin-top:10px}.contact{background:white}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.contact .eyebrow{color:var(--brand)}.contact h2{font-size:clamp(2.4rem,3.7vw,3.5rem);margin-bottom:25px}.contact-copy>p:not(.eyebrow){color:var(--muted);max-width:375px}.contact-details{display:flex;flex-direction:column;gap:7px;margin:37px 0}.contact-details span{font-size:.7rem;letter-spacing:.1em;color:var(--muted);margin-top:15px}.contact-details a{font-size:1.08rem;overflow-wrap:anywhere;text-decoration:none}.contact-details a:hover{text-decoration:underline}.contact-copy .contact-note{font-size:.875rem}.form-panel{background:var(--paper);padding:34px;border:1px solid var(--line)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:9px;margin-bottom:20px}label{font-size:.875rem;font-weight:600}label span{font-weight:400;color:var(--muted);font-size:.75rem}input,select,textarea{width:100%;min-width:0;padding:13px 12px;color:var(--ink);background:white;border:1px solid #acbfa5;border-radius:2px;font-size:1rem;line-height:1.4}textarea{resize:vertical}input,select{min-height:48px}textarea::placeholder{color:#65765e;font-size:.875rem}.form-help{font-size:.8rem;color:var(--muted);margin-bottom:20px}.draft-panel{border-top:1px solid #a8bda0;margin-top:28px;padding-top:28px}.draft-panel h3{font-size:1.3rem}.draft-panel>p{font-size:.875rem;color:var(--muted)}.draft-panel label{display:block;margin-bottom:10px}.draft-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:17px}.copy-status{min-height:20px;margin-bottom:0}.site-footer{background:var(--forest);color:#edf4e8}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:33px}.footer-inner .wordmark{background:white;padding:10px 14px;border-radius:2px}.footer-inner .brand-logo{width:190px}.footer-inner p{font-size:.8rem;color:#c3d3bb;margin:0}.footer-inner>span{font-size:.75rem;color:#c3d3bb}
@media(min-width:1500px){.hero-grid{gap:80px;padding-block:90px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.hero-grid{gap:32px;padding-block:60px}h1{font-size:3.55rem}.hero-actions{gap:20px}.hero-visual{align-self:center}.experience-grid p{padding-inline:20px;gap:12px}.experience-grid strong{font-size:1.2rem}.service-grid{gap:16px}.service-card,.support-card{padding:26px}.library-card{padding-top:24px}.primary-service{gap:40px;padding:36px}.service-details{padding-left:30px}.about-grid,.contact-grid{gap:55px}.form-panel{padding:27px}.visual-heading{font-size:.6rem}}
@media(max-width:800px){.container{width:calc(100% - 40px)}.header-inner{min-height:100px;gap:15px}nav{gap:20px}.brand-logo{width:210px}nav .nav-contact{padding:10px 13px;gap:10px}.hero-grid{grid-template-columns:1fr;gap:42px;padding-block:45px}.hero-copy{max-width:630px}h1{font-size:clamp(3.3rem,8vw,4.6rem)}.hero-description{max-width:560px}.hero-visual{width:100%;max-width:580px;justify-self:center}.layer-diagram{max-height:460px}.visual-heading{font-size:.7rem}.experience-grid{padding-block:23px}.experience-grid p{flex-direction:column;align-items:flex-start;gap:5px}.experience-grid span{max-width:none}.experience-grid p:last-child{padding-right:0}.section-space{padding:70px 0}.section-heading{display:block}.section-heading>p{max-width:540px;margin-top:25px}.primary-service{grid-template-columns:1fr;gap:30px}.service-details{padding-left:0;border-left:0;padding-top:22px;border-top:1px solid #476245}.service-grid{grid-template-columns:1fr 1fr}.about-grid,.contact-grid{grid-template-columns:1fr;gap:38px}.contact-copy>p:not(.eyebrow){max-width:550px}.contact-details{margin:25px 0}.footer-inner{flex-wrap:wrap;gap:20px}.footer-inner p{flex-basis:50%;text-align:right}}
@media(max-width:520px){:root{scroll-padding-top:175px}.header-inner{flex-wrap:wrap;justify-content:center;padding-block:16px;gap:10px}.brand-logo{width:200px}nav{width:100%;justify-content:space-between;gap:12px}nav a{font-size:.8rem;padding:9px 4px}nav .nav-contact{border:0;padding:9px 4px}.nav-contact span{display:none}.hero-grid{padding-top:34px;gap:32px}.hero-copy .eyebrow{font-size:.6rem;letter-spacing:.09em;gap:8px;margin-bottom:21px}.small-rule{width:17px}h1{font-size:clamp(2.85rem,11.1vw,3.75rem);line-height:1.06}.hero-description{font-size:1rem}.hero-actions{gap:24px}.engagement-note{max-width:270px;font-size:.7rem}.hero-visual{box-shadow:7px 7px 0 #e5eddc}.visual-heading{padding:20px 18px 0;font-size:.6rem}.visual-footer{margin-inline:18px;font-size:.8rem;padding-bottom:20px}.diagram-note{font-size:.6rem}.experience-grid{gap:12px}.experience-grid p{padding:0 12px 0 0;gap:8px}.experience-grid strong{font-size:1.05rem}.experience-grid span{font-size:.7rem}.section-space{padding:56px 0}.section-heading{margin-bottom:30px}h2{font-size:2rem}.primary-service{padding:27px 23px}.primary-service h3{font-size:1.9rem}.service-grid{grid-template-columns:1fr}.service-card h3{min-height:0}.service-number{margin-bottom:20px}.service-card,.support-card{padding:28px}.library-card{padding-top:26px}.platforms ul{font-size:1rem;gap:20px 27px}.about h2,.contact h2{font-size:2.4rem}.form-panel{padding:22px}.form-row{grid-template-columns:1fr;gap:0}.footer-inner{flex-direction:column;align-items:flex-start;gap:17px}.footer-inner p{text-align:left}.button{gap:14px}.contact-details a{font-size:1rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}

/* Full-width engagement panel beneath the additional services. */
.support-card{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.support-card .eyebrow{margin-bottom:14px}.support-card h3{margin-bottom:0}.support-card p:not(.eyebrow){margin-bottom:20px}@media(max-width:520px){.support-card{grid-template-columns:1fr;gap:24px}}

/* PCB concept artwork in the homepage hero. */
.hero-visual--photo{display:block;margin:0;aspect-ratio:1 / 1.12;align-self:center;overflow:hidden}.hero-pcb-image{display:block;width:100%;height:100%;object-fit:cover}.hero-art-caption{position:absolute;bottom:0;left:0;right:0;padding:38px 24px 20px;background:linear-gradient(transparent,rgba(5,24,10,.85));color:#f0f5e9;font-size:.75rem;letter-spacing:.07em;line-height:1.5}.hero-art-caption span{opacity:.85}@media(max-width:800px){.hero-visual--photo{aspect-ratio:1 / 1;max-width:580px}}

/* Equal emphasis for the three principal service areas. */
.core-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:22px}
.core-service{background:var(--forest);color:white;border:0;border-top:3px solid var(--accent);padding:32px}
.core-service .service-number,.core-service .text-link{color:var(--highlight)}
.core-service h3{font-size:1.75rem;min-height:68px}
.core-service p{color:#d4e2cc;font-size:1rem;margin-bottom:20px}
.core-service ul{padding-left:18px;margin:0 0 28px;color:#d4e2cc;font-size:.9375rem;line-height:1.6}
.core-service li+li{margin-top:8px}
.core-service .text-link{margin-top:auto}
.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.experience-strip .experience-caption{margin-bottom:0;padding-top:25px;color:var(--muted);font-size:.75rem;letter-spacing:.08em}
@media(max-width:1100px){.core-services{gap:16px}.core-service{padding:26px}.core-service h3{font-size:1.5rem;min-height:58px}}
@media(max-width:800px){.core-services{grid-template-columns:1fr}.core-service h3{min-height:0}.core-service{padding:30px}.core-service .service-number{margin-bottom:18px}}
@media(max-width:520px){.service-grid{grid-template-columns:1fr}.core-service{padding:28px}}

/* Coordinated service illustrations and compact supporting-service icons. */
.core-service{--card-inset:32px;overflow:hidden;border-top:0}
.service-art{margin:calc(-1 * var(--card-inset)) calc(-1 * var(--card-inset)) 28px;width:calc(100% + 2 * var(--card-inset));aspect-ratio:3/2;border-bottom:3px solid var(--accent);background:#143921;overflow:hidden;flex-shrink:0}
.service-art img{display:block;width:100%;height:100%;object-fit:cover}
.core-service .service-number{margin-bottom:15px}
.service-art-note{font-size:.72rem;color:var(--muted);margin:-7px 0 28px;letter-spacing:.02em}
.service-card-top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:20px;min-height:88px}
.service-card-top .service-number{margin:0;align-self:flex-start;padding-top:8px}
.service-icon{width:110px;height:88px;display:block}
.service-grid>.service-card{border-top:2px solid #bddc9e}
@media(max-width:1100px){.core-service{--card-inset:26px}}
@media(max-width:800px){.core-service{--card-inset:30px}.service-art{aspect-ratio:16/9}.service-art img{object-position:center 54%}}
@media(max-width:520px){.core-service{--card-inset:28px}.service-card-top{min-height:76px;margin-bottom:16px}.service-icon{width:95px;height:76px}}

/* Supplied gate-drive CAD render: retain every edge of the original assembly. */
.hero-visual--render{display:block;margin:0;align-self:center;min-width:0;background:#fff;border-color:var(--line);overflow:hidden}
.hero-visual--render .hero-pcb-image{display:block;width:100%;height:auto;object-fit:contain}
.hero-visual--render .hero-art-caption{position:static;padding:16px 20px;background:var(--forest);border-top:3px solid var(--accent);font-size:.75rem}
.hero-visual--render .hero-art-caption span{opacity:1}

.service-art--render{background:#383838}
.service-art--render img{object-fit:contain;object-position:center}
