/*
Theme Name: PCB Assembly & Manufacturing
Author: PCB Assembly & Manufacturing
Description: Accessible engineering-focused WordPress theme for PCB fabrication, assembly and technical resources.
Version: 1.1.0
Requires at least: 6.6
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: pcb-assembly
*/
:root{--ink:#102b3f;--navy:#081e2e;--lime:#b8f43e;--muted:#566b7a;--line:#dce4e8;--paper:#f3f6f7;--white:#fff;--max:1260px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0;background:var(--white)}a{color:inherit;text-underline-offset:4px}a:hover{color:#486b00}button,input,textarea,select{font:inherit}button,a,summary,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #629611;outline-offset:4px}img{max-width:100%;height:auto}h1,h2,h3,h4{line-height:1.13;letter-spacing:-.035em;margin:0 0 1rem}h1{font-size:clamp(2.5rem,5.4vw,4.9rem);font-weight:600}h2{font-size:clamp(2rem,3.4vw,3.2rem);font-weight:600}h3{font-size:1.45rem}p{margin:0 0 1.25rem}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:99}.skip:focus{top:10px}.utility{background:var(--ink);color:#dfebf2;font-size:.875rem}.utility .wrap{display:flex;justify-content:space-between;padding:9px 0;gap:20px}.utility a{color:white}.site-header{background:white;position:relative;z-index:20;border-bottom:1px solid var(--line)}.nav-row{display:flex;align-items:center;gap:32px;min-height:100px}.brand{display:flex;align-items:center;flex:0 0 215px}.brand img{width:215px;height:85px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:22px;margin-left:auto}.main-nav details{position:static}.main-nav summary{list-style:none;cursor:pointer;font-size:.9rem;font-weight:600;padding:28px 0}.main-nav summary:after{content:'+';margin-left:6px;color:var(--muted)}.main-nav summary::-webkit-details-marker{display:none}.main-nav details[open] summary:after{content:'−'}.mega{position:absolute;left:0;right:0;top:100%;background:white;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 18px 28px #102b3f12;padding:30px max(32px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.mega strong{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:14px}.mega a{display:block;text-decoration:none;font-size:.95rem;padding:6px 0}.nav-contact{font-size:.9rem;font-weight:600;text-decoration:none}.button,button[type=submit]{display:inline-flex;align-items:center;justify-content:center;padding:14px 23px;border:1px solid transparent;background:var(--lime);color:var(--ink);font-weight:700;font-size:.95rem;text-decoration:none;cursor:pointer;line-height:1.3;min-height:48px}.button:hover,button[type=submit]:hover{background:#c8ff5c;color:var(--ink)}.button.dark{background:var(--ink);color:white}.button.outline{background:transparent;border-color:#748792;color:white}.button.outline:hover{background:white;color:var(--ink)}.mobile-toggle{display:none}.hero{background:var(--navy);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;min-height:625px;align-items:center;gap:20px}.hero-copy{padding:62px 0 72px;position:relative;z-index:1}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:700;margin-bottom:24px;color:var(--muted)}.hero .eyebrow{color:var(--lime)}.hero h1 em{font-style:normal;color:var(--lime)}.hero p{font-size:1.1rem;max-width:520px;color:#c8d4de;line-height:1.7}.hero .actions{margin-top:30px}.actions{display:flex;gap:14px;flex-wrap:wrap}.hero-media{position:relative;align-self:stretch;display:flex;align-items:center}.hero-media img{width:calc(100% + 90px);max-width:none;height:100%;object-fit:cover}.hero-caption{position:absolute;bottom:30px;left:26px;border-left:2px solid var(--lime);padding-left:16px;font-size:.8rem;color:#c9d4dc}.hero-caption strong{display:block;color:white;font-size:.95rem}.discipline-bar{background:var(--ink);color:#e4edf2;border-top:1px solid #ffffff20}.discipline-bar .wrap{display:grid;grid-template-columns:repeat(4,1fr)}.discipline-bar span{padding:21px 16px;border-right:1px solid #ffffff20;font-size:.9rem}.discipline-bar b{color:var(--lime);margin-right:16px;font-size:.75rem}.section{padding:88px 0}.section.paper{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:36px}.section-heading h2{max-width:680px}.section-heading p{max-width:380px;color:var(--muted);margin-bottom:4px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);background:white;padding:32px;position:relative}.card .number{display:block;color:var(--muted);font-size:.8rem;letter-spacing:.1em;margin-bottom:45px}.card p{color:var(--muted)}.card a{font-weight:700;font-size:.9rem}.card.featured{background:var(--ink);color:white;border-color:var(--ink)}.card.featured p,.card.featured .number{color:#c5d4de}.card.featured a{color:var(--lime)}.pill{display:inline-block;padding:5px 11px;border:1px solid var(--line);font-size:.75rem;margin:0 5px 9px 0}.card.featured .pill{border-color:#567080;color:#e0e8ed}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.check-list{padding:0;list-style:none}.check-list li{border-bottom:1px solid var(--line);padding:16px 0 16px 28px;position:relative}.check-list li:before{content:'✓';position:absolute;left:0;color:#477800;font-weight:700}.check-list strong{display:block}.check-list span{font-size:.95rem;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;border-top:1px solid var(--line);padding-top:28px;margin-top:40px}.steps b{display:block;color:#517715;font-size:1rem;margin-bottom:25px}.steps h3{font-size:1.22rem}.steps p{font-size:.95rem;color:var(--muted)}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.industry-grid a{padding:28px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-decoration:none;font-weight:700;font-size:1.1rem}.industry-grid span{display:block;font-size:.875rem;color:var(--muted);font-weight:400;margin-top:8px}.cta-band{background:var(--lime);padding:55px 0}.cta-band .wrap{display:flex;justify-content:space-between;gap:40px;align-items:center}.cta-band h2{font-size:2.5rem;max-width:730px}.cta-band p{margin-bottom:0}.resource-links{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}.resource-links a{border-bottom:1px solid var(--line);padding:12px 0}.site-footer{background:var(--navy);color:#bccbd5;padding:62px 0 22px;font-size:.9rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:42px}.footer-grid strong{color:white;display:block;margin-bottom:16px}.footer-grid a{display:block;color:#cbd8e0;text-decoration:none;margin-bottom:10px}.footer-grid p{max-width:320px}.footer-brand{font-size:1.15rem;font-weight:700;line-height:1.4;color:white}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff20;padding-top:25px;margin-top:44px;font-size:.8rem}.footer-bottom a{color:inherit}.page-banner{background:var(--ink);color:white;padding:38px 0 58px}.breadcrumbs{font-size:.85rem;margin-bottom:25px;color:#c3d3dd}.breadcrumbs a{color:inherit}.page-banner h1{font-size:clamp(2.3rem,4.4vw,4rem);max-width:960px}.page-banner p{max-width:830px;font-size:1.12rem;color:#c6d4dd;margin:0}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:70px;padding-top:55px;padding-bottom:80px}.entry-content h2{font-size:2rem;margin:48px 0 20px}.entry-content h3{font-size:1.3rem;margin-top:30px}.entry-content h2:first-child{margin-top:0}.entry-content p,.entry-content li{color:#314a5a}.entry-content li{margin-bottom:9px}.entry-content table{width:100%;border-collapse:collapse;font-size:.93rem;margin:26px 0}.entry-content th,.entry-content td{padding:15px;text-align:left;border:1px solid var(--line);vertical-align:top}.entry-content th{background:var(--paper)}.table-scroll{overflow:auto}.entry-content .note{padding:22px;border-left:3px solid #83b82f;background:var(--paper)}.sidebar .sticky{position:sticky;top:25px}.sidebar-box{border:1px solid var(--line);padding:25px;margin-bottom:22px}.sidebar-box h2{font-size:1.25rem;letter-spacing:-.02em}.sidebar-box p,.sidebar-box a{font-size:.9rem}.sidebar-box .button{width:100%}.sidebar-box ul{padding-left:20px}.faq details{padding:21px 0;border-bottom:1px solid var(--line)}.faq summary{font-weight:700;cursor:pointer}.faq details p{margin:16px 0 0;color:var(--muted)}.inquiry-form{background:var(--paper);padding:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.inquiry-form label{display:block;margin-bottom:18px;font-weight:600;font-size:.9rem}.inquiry-form input:not([type=checkbox]),.inquiry-form select,.inquiry-form textarea{display:block;width:100%;padding:12px;border:1px solid #91a4b0;margin-top:7px;background:white;color:var(--ink)}.inquiry-form .consent{font-weight:400}.inquiry-form .consent input{margin-right:8px}.honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.notice{padding:20px;border:1px solid #7da958;background:#f0f9e9;margin-bottom:25px}.search-form{display:flex;gap:10px}.search-form input{min-width:0;width:100%;padding:12px}.search-results-list article{padding:30px 0;border-bottom:1px solid var(--line)}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.related-grid a{border:1px solid var(--line);padding:20px;text-decoration:none}.tool-panel{padding:24px;background:var(--paper);border:1px solid var(--line)}.tool-panel label{display:block;margin-bottom:15px}.tool-panel input,.tool-panel select,.tool-panel textarea{display:block;width:100%;padding:10px;font:inherit;border:1px solid #8fa2ae}.tool-panel output{display:block;font-weight:700;padding:20px 0;color:var(--ink)}
@media(min-width:1000px){.main-nav>details:hover>.mega{display:grid}.main-nav>details:not([open])>.mega{display:none}}
@media(max-width:1100px){.nav-row{gap:16px}.main-nav{gap:14px}.brand{flex-basis:180px}.brand img{width:180px}.nav-contact{display:none}.hero-grid{min-height:560px}.split{gap:40px}.article-layout{gap:36px}.mega{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.wrap{width:calc(100% - 36px)}.nav-row{min-height:85px;flex-wrap:wrap;justify-content:space-between;gap:10px}.brand img{height:70px}.mobile-toggle{display:inline-flex;align-items:center;background:white;border:1px solid var(--line);padding:10px;font:inherit}.main-nav{display:none;order:3;flex:0 0 100%;padding-bottom:20px;margin:0;flex-direction:column;align-items:stretch;gap:0}.main-nav.is-open{display:flex}.main-nav summary{padding:15px 0}.mega{position:static;display:block;box-shadow:none;border:0;padding:10px 15px;background:var(--paper)}.mega>div{margin-bottom:15px}.nav-contact{display:block;padding:15px 0}.nav-row>.button{display:none}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:48px 0 20px}.hero-media{height:310px}.hero-media img{width:100%;object-position:center}.hero-caption{bottom:20px;left:15px}.discipline-bar .wrap{grid-template-columns:1fr 1fr}.discipline-bar span{padding:15px 5px;font-size:.8rem}.section{padding:58px 0}.section-heading{display:block}.section-heading p{max-width:none}.cards{grid-template-columns:1fr}.card .number{margin-bottom:22px}.split{grid-template-columns:1fr;gap:32px}.steps{grid-template-columns:1fr 1fr}.industry-grid{grid-template-columns:1fr 1fr}.cta-band .wrap{display:block}.cta-band .button{margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{display:block}.article-layout{grid-template-columns:1fr;padding-top:35px}.sidebar .sticky{position:static}.form-grid{grid-template-columns:1fr}.page-banner{padding:25px 0 40px}.resource-links{grid-template-columns:1fr}.utility .wrap>span:last-child{display:none}}
@media(max-width:480px){.steps,.industry-grid,.footer-grid,.related-grid{grid-template-columns:1fr}.hero h1{font-size:2.8rem}.hero-media{height:250px}.button{padding:14px 18px}.entry-content th,.entry-content td{padding:10px}.inquiry-form{padding:20px}.cta-band h2{font-size:2rem}}
@media(prefers-reduced-motion:no-preference){a,button{transition:background-color .15s,color .15s}}
.hero h1{font-size:clamp(2.8rem,4.3vw,3.8rem)}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.search-form label{flex:1;min-width:0}.sidebar .search-form{flex-wrap:wrap}.sidebar .search-form label,.sidebar .search-form button{flex-basis:100%}.search-form input{border:1px solid #91a4b0}
