/* Local full-site utility pages. Articles and shared batch assets do not load this file. */
body.kb-utilities{font-size:18px;line-height:1.65;background:#fff;color:#09233d}
.kb-utilities main .container{width:min(1200px,calc(100% - 64px))}
.kb-utilities main h1{font-size:clamp(52px,4.5vw,64px);line-height:1.05;letter-spacing:-2px;margin:0 0 20px;max-width:900px}
.kb-utilities main h2{font-size:clamp(30px,3vw,42px);line-height:1.12;letter-spacing:-1px}
.kb-utilities main h3{font-size:24px;line-height:1.2}
.kb-utilities main p,.kb-utilities main .section-copy{font-size:18px;color:#526b82}
.kb-utilities main .eyebrow{font-size:12px;color:#0670c9;letter-spacing:1.5px}
.kb-utilities main .reveal{opacity:1;transform:none}
.kb-utilities main section{scroll-margin-top:24px}
.kb-utilities main .hero{background:linear-gradient(120deg,#fff,#f1f7fb);color:#09233d;overflow:visible}
.kb-utilities main .hero::before,.kb-utilities main .hero::after,.kb-utilities main .quote::before{display:none}
.kb-utilities main .hero-grid{min-height:0;gap:48px;align-items:start;padding:48px 0}
.kb-utilities main .hero-copy{padding:0}
.kb-utilities main .hero-copy>p:not(.eyebrow){max-width:720px;font-size:18px;color:#526b82;margin-bottom:20px}
.kb-utilities main .breadcrumbs{color:#526b82;margin:0 0 20px;font-size:12px}
.kb-utilities main .btn{border-radius:6px;min-height:48px;font-size:15px;padding:12px 20px}
.kb-utilities main .btn-light{background:#fff;color:#0670c9;border:1px solid #91b8d7}
.kb-utilities main .hero-actions{margin-top:20px}
.kb-utilities main .section-head,.kb-utilities main .overview-head{grid-template-columns:1fr 1fr;gap:48px;margin-bottom:32px}
.kb-utilities main :is(.file-guide,.gerber,.bom,.supporting,.panelized,.preflight,.handoff,.faq,.lead,.contact-paths,.intent,.locations,.quote,.next,.resource,.overview,.contact-section){padding:72px 0;color:#09233d;background:#fff}
.kb-utilities main :is(.gerber,.preflight,.panelized,.locations,.next,.resource,.contact-section){background:#f3f8fb}
.kb-utilities main :is(.gerber-grid,.bom-grid,.preflight-grid,.lead-grid,.faq-grid,.intent-grid,.quote-grid,.next-grid,.contact-grid){gap:48px}
.kb-utilities main :is(.quote-intro,.lead-intro)>p:not(.eyebrow){color:#526b82}
.kb-utilities main :is(.quote-form,.lead-form){border:1px solid #d5e3ed;box-shadow:0 12px 30px rgba(3,31,57,.05);border-radius:12px;padding:28px}
.kb-utilities main .field :is(input,select,textarea){font-size:16px;min-width:0;border:1px solid #b8d0e0;background:#fff;min-height:48px}
.kb-utilities main .field label{font-size:14px}
.kb-utilities main .fields{margin-top:20px}
.kb-utilities main :is(.form-note,.form-footer small,.form-submit small,.format-note,.upload-name,.file-name){font-size:13px}
.kb-utilities main :is(.quote-steps,.quote-points,.lead-points){color:#526b82}
.kb-utilities main :is(.quote-step,.next-step) p,.kb-utilities main .quote-step span{color:#526b82}
.kb-utilities main .quote::after{display:none}
.kb-utilities main :is(.upload,.upload-zone){min-width:0;overflow-wrap:anywhere}
.kb-utilities main :is(.upload input[type=file],.upload-zone input[type=file]){max-width:100%;font-size:13px}
.kb-utilities main .local-message{overflow-wrap:anywhere}
.kb-utilities main :is(a,button,input,select,textarea):focus-visible{outline:3px solid #0670c9;outline-offset:3px}
.kb-utilities main :is(.hero-pack,.hero-summary){color:#09233d;background:#fff;border:1px solid #d5e3ed;box-shadow:none;backdrop-filter:none;border-radius:12px;margin:0;padding:24px}
.kb-utilities main :is(.hero-pack,.hero-summary) :is(span,small){color:#526b82}
.kb-utilities main .hero-file{border-color:#d5e3ed;font-size:16px}
.kb-utilities main .hero-file strong{font-size:16px}
.kb-utilities main .hero-file span{font-size:13px}
.kb-utilities main .hero-file b{background:#eaf3fa;color:#0670c9}
.kb-utilities main .hero-file:focus-visible,.kb-utilities main .hero-file:hover{background:#f1f7fb}
.kb-utilities main .pack-badge{display:none}
.kb-utilities main .proof-grid{box-shadow:none;border-radius:0;border:1px solid #d5e3ed;margin:0 auto 48px}
.kb-utilities main .proof{padding:20px}
.kb-utilities main .guide-stage{min-height:0;grid-template-columns:330px 1fr;box-shadow:none;border-radius:12px}
.kb-utilities main .guide-tabs{background:#eef5fa;padding:16px}
.kb-utilities main .guide-tab{color:#09233d;border-color:#d5e3ed;padding:14px;font-size:16px}
.kb-utilities main .guide-tab span{color:#526b82;font-size:13px}
.kb-utilities main .guide-tab b{color:#0670c9;border-color:#b8d0e0;border-radius:6px}
.kb-utilities main .guide-tab.active{background:#fff;border-radius:8px;box-shadow:0 0 0 1px #91b8d7}
.kb-utilities main .guide-visual{min-height:0;background:none!important;display:flex;flex-direction:column}
.kb-utilities main .guide-photo{width:100%;height:270px;object-fit:cover;display:block}
.kb-utilities main .guide-visual::after{display:none}
.kb-utilities main .guide-panel{position:static;color:#09233d;padding:28px}
.kb-utilities main .guide-panel h3{font-size:28px}
.kb-utilities main .guide-panel p{color:#526b82}
.kb-utilities main .guide-count{color:#0670c9}
.kb-utilities main .guide-details span{color:#31546b;background:#eef5fa;border-color:#d5e3ed;font-size:13px}
.kb-utilities main .guide-controls button{color:#0670c9;background:#fff;border-color:#91b8d7}
.kb-utilities main .native-reference{margin:24px 0 0;border:1px solid #d5e3ed;border-radius:8px;background:#fff;padding:20px}
.kb-utilities main .native-reference summary{cursor:pointer;color:#09233d;font-weight:800}
.kb-utilities main .native-reference article{padding:20px 0;border-bottom:1px solid #d5e3ed}
.kb-utilities main .native-reference article:last-child{border:0;padding-bottom:0}
.kb-utilities main .native-reference h3{font-size:21px;margin-bottom:8px}
.kb-utilities main .progress-card{background:#fff;border:1px solid #d5e3ed;border-radius:12px}
.kb-utilities main .progress-number strong{color:#0670c9;font-size:56px}
.kb-utilities main .progress-number span,.kb-utilities main .progress-card p{color:#526b82}
.kb-utilities main .progress-bar{background:#e3edf4}
.kb-utilities main .reset-checklist{color:#0670c9}
.kb-utilities main .check-item{background:#fff;color:#09233d;border:1px solid #d5e3ed;padding:18px}
.kb-utilities main .check-item small{color:#526b82;font-size:14px}
.kb-utilities main .check-box{border-color:#91b8d7}
.kb-utilities main .check-item.checked{background:#eff9dc;border-color:#92c436}
.kb-utilities main :is(.bom-photo,.support-card){min-height:0;background:none!important;box-shadow:none;border:1px solid #d5e3ed;border-radius:12px;color:#09233d}
.kb-utilities main :is(.bom-photo,.support-card)::after{display:none}
.kb-utilities main .utility-photo{display:block;width:100%;height:300px;object-fit:cover}
.kb-utilities main :is(.bom-photo-copy,.support-copy){position:static;padding:28px}
.kb-utilities main :is(.bom-photo-copy,.support-copy) h3{font-size:27px}
.kb-utilities main :is(.bom-photo-copy,.support-copy) :is(p,b){color:#526b82}
.kb-utilities main .bom-table-wrap{border:1px solid #d5e3ed;background:#f7fafc;border-radius:12px;padding:28px}
.kb-utilities main .bom-table-wrap>p{color:#526b82}
.kb-utilities main .bom-column{grid-template-columns:36px 1fr 84px;padding:13px;border-bottom:1px solid #d5e3ed;border-radius:0}
.kb-utilities main .bom-column span{font-size:13px}
.kb-utilities main .bom-column small{font-size:11px}
.kb-utilities main .bom-tip{color:#526b82;background:#eaf3fa}
.kb-utilities main .data-sample{background:#eef5fa;border-color:#d5e3ed;color:#31546b}
.kb-utilities main .data-sample span{border-color:#d5e3ed;font-size:12px}
.kb-utilities main .panelized-grid{min-height:0;border-radius:12px;box-shadow:none;border:1px solid #d5e3ed}
.kb-utilities main .panelized-image{min-height:400px}
.kb-utilities main .panelized-copy{padding:32px}
.kb-utilities main .handoff-step{border-radius:12px;min-height:0}
.kb-utilities main .handoff-copy p{font-size:16px}
.kb-utilities main .handoff-copy h3{font-size:22px}
.kb-utilities main .contact-start{padding:40px 0 64px;background:linear-gradient(120deg,#fff,#f1f7fb)}
.kb-utilities main .contact-start-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.kb-utilities main .contact-start .hero{background:none}
.kb-utilities main .contact-start .hero-grid{display:block;padding:0}
.kb-utilities main .contact-start .quote{padding:0;background:none}
.kb-utilities main .contact-start .quote-grid{display:block}
.kb-utilities main .contact-start .hero-proof{margin-top:28px;border-color:#d5e3ed}
.kb-utilities main .hero-proof :is(strong,span){color:#526b82}
.kb-utilities main .contact-context .container{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;padding:56px 0}
.kb-utilities main .contact-context .hero-visual{min-height:370px;border-radius:12px;background-color:#eef5fa}
.kb-utilities main .quote-steps{margin-bottom:24px}
.kb-utilities main .secure-note{background:#eef5fa;color:#526b82;border-color:#d5e3ed;font-size:15px}
.kb-utilities main .route-strip{background:#eef5fa;color:#09233d}
.kb-utilities main .route-item{border-color:#d5e3ed}
.kb-utilities main .route-item span{color:#526b82}
.kb-utilities main .path-card{box-shadow:none;border:1px solid #d5e3ed}
.kb-utilities main .path-card a{overflow-wrap:anywhere}
.kb-utilities main .location-card{color:#09233d;background:#fff;border-color:#d5e3ed}
.kb-utilities main .location-card p{color:#526b82}
.kb-utilities main .location-card a{color:#0670c9}
.kb-utilities main .next-step h3{font-size:23px}
.kb-utilities main .faq-grid{grid-template-columns:360px 1fr}
.kb-utilities main .faq-list summary{font-size:18px}
.kb-utilities main .faq-list p{padding-right:0}
.kb-utilities main .utility-faq-intro .hero-grid{display:block;padding:36px 0 28px}
.kb-utilities main .utility-faq-intro .hero-copy{max-width:820px}
.kb-utilities main .utility-faq-intro .hero-topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.kb-utilities main .hero-topics a{border:1px solid #b8d0e0;background:#fff;color:#0670c9;border-radius:6px;padding:9px 14px;font-size:14px;font-weight:800}
.kb-utilities main .faq-search{max-width:720px;margin-top:20px}
.kb-utilities main .faq-search input{background:#fff;color:#09233d;border:1px solid #91b8d7;height:54px;font-size:17px;padding:0 48px 0 16px}
.kb-utilities main .faq-search input::placeholder{color:#526b82}
.kb-utilities main .faq-countline{margin:14px 0 0;font-size:14px;color:#526b82}
.kb-utilities main .quick{background:#fff;color:#09233d;border-top:1px solid #d5e3ed;border-bottom:1px solid #d5e3ed}
.kb-utilities main .quick a{border-color:#d5e3ed;min-height:100px}
.kb-utilities main .quick a span{color:#526b82}
.kb-utilities main .faq-explorer{padding:48px 0 72px;background:#fff}
.kb-utilities main .explorer-head{margin-bottom:28px}
.kb-utilities main .explorer-head h2{font-size:30px}
.kb-utilities main .explorer-grid{grid-template-columns:260px 1fr;gap:40px}
.kb-utilities main .category-panel{background:#f3f8fb;border:1px solid #d5e3ed;border-radius:12px;box-shadow:none}
.kb-utilities main .category-button{font-size:14px}
.kb-utilities main .faq-item{box-shadow:none;border-radius:8px;border:1px solid #d5e3ed}
.kb-utilities main .faq-item summary{font-size:18px}
.kb-utilities main .answer p{font-size:18px}
.kb-utilities main .resource-card{min-height:0;box-shadow:none;color:#09233d;background:#fff!important;border:1px solid #d5e3ed;border-radius:12px}
.kb-utilities main .resource-card::after,.kb-utilities main .resource-card::before{display:none}
.kb-utilities main .resource-copy{position:static;padding:28px}
.kb-utilities main .resource-copy :is(p,b){color:#526b82}
.kb-utilities main .resource-copy a{color:#0670c9}
.kb-utilities main .resource-copy h3{font-size:24px}
.kb-utilities main .utility-terms-intro .hero-grid{display:block;padding:32px 0 28px}
.kb-utilities main .utility-terms-intro .hero-copy{max-width:880px}
.kb-utilities main .utility-terms-intro h1{font-size:56px}
.kb-utilities main .utility-terms-intro .hero-actions{margin-top:16px}
.kb-utilities main .terms{padding:40px 0 64px}
.kb-utilities main .terms-layout{grid-template-columns:270px minmax(0,760px);gap:48px}
.kb-utilities main .term-sidebar{background:#f3f8fb;border-radius:10px;padding:20px}
.kb-utilities main .toc a{font-size:14px;padding:9px 7px}
.kb-utilities main .sidebar-contact{background:#eaf3fa;color:#09233d;border-radius:6px}
.kb-utilities main .sidebar-contact span{color:#526b82}
.kb-utilities main .sidebar-contact a{color:#0670c9;overflow-wrap:anywhere}
.kb-utilities main .legal-intro{padding:24px;border-radius:8px;box-shadow:none}
.kb-utilities main .term-section{padding:32px 0}
.kb-utilities main .term-section h2{font-size:30px}
.kb-utilities main .term-section :is(p,li){font-size:18px;color:#3f6078}
.kb-utilities main .term-section .definition span{font-size:16px}
.kb-utilities main .restriction-list{display:block}
.kb-utilities main .restriction-list li{margin:8px 0;background:#f3f8fb;border-radius:4px}
.kb-utilities main .disclaimer-box{background:#eef5fa;color:#09233d;border-radius:8px;border-left:3px solid #0670c9}
.kb-utilities main .disclaimer-box strong{color:#09233d}
.kb-utilities main .term-search-jump{display:flex;gap:14px;margin-top:12px;font-size:14px;color:#0670c9;flex-wrap:wrap}
.kb-utilities main .term-search-jump a{text-decoration:underline}
.kb-utilities main .terms-secondary{border-top:1px solid #d5e3ed;background:#f7fafc}
.kb-utilities main .terms-secondary>.container{padding:40px 0}
.kb-utilities main .terms-secondary .hero-summary{max-width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.kb-utilities main .terms-secondary .hero-summary>span,.kb-utilities main .terms-secondary .hero-summary h2{grid-column:1/-1;margin:0}
.kb-utilities main .terms-secondary .summary-row{border-color:#d5e3ed}
.kb-utilities main .status-strip{margin:0 auto;border-radius:0;box-shadow:none;border:1px solid #d5e3ed}
.kb-utilities main .overview-card{min-height:0;padding:24px;border-radius:10px;box-shadow:none}
.kb-utilities main .overview-card::after{display:none}
.kb-utilities main .contact-card{border:1px solid #d5e3ed;border-radius:12px}
.kb-utilities main .contact-section p{color:#526b82}
@media(max-width:1000px){
 .kb-utilities main :is(.hero-grid,.gerber-grid,.bom-grid,.panelized-grid,.preflight-grid,.lead-grid,.intent-grid,.quote-grid,.next-grid,.contact-grid){grid-template-columns:1fr;gap:32px}
 .kb-utilities main .contact-start-grid{grid-template-columns:1fr;gap:24px}
 .kb-utilities main .contact-context .container{grid-template-columns:1fr;gap:32px}
 .kb-utilities main .guide-stage{grid-template-columns:280px 1fr}
 .kb-utilities main .terms-layout{grid-template-columns:230px minmax(0,1fr);gap:32px}
 .kb-utilities main .faq-grid{grid-template-columns:1fr;gap:24px}
 .kb-utilities main .explorer-grid{grid-template-columns:220px minmax(0,1fr);gap:24px}
 .kb-utilities main .bom-photo{min-height:0}
}
@media(max-width:767px){
 body.kb-utilities{font-size:16px}
 .kb-utilities main .container{width:calc(100% - 32px)}
 .kb-utilities main h1,.kb-utilities main .utility-terms-intro h1{font-size:34px;line-height:1.08;letter-spacing:-1px;margin-bottom:16px}
 .kb-utilities main h2{font-size:28px;letter-spacing:-.6px}
 .kb-utilities main h3{font-size:22px}
 .kb-utilities main p,.kb-utilities main .section-copy,.kb-utilities main .hero-copy>p:not(.eyebrow),.kb-utilities main .answer p,.kb-utilities main .term-section :is(p,li){font-size:16px}
 .kb-utilities main .hero-grid{padding:28px 0;gap:20px}
 .kb-utilities main .hero-copy{padding:0}
 .kb-utilities main .breadcrumbs{margin-bottom:16px;font-size:11px}
 .kb-utilities main .hero-actions{margin-top:16px;gap:8px}
 .kb-utilities main .hero-actions .btn{width:auto;flex:1;padding:10px 14px;font-size:14px}
 .kb-utilities main :is(.file-guide,.gerber,.bom,.supporting,.panelized,.preflight,.handoff,.faq,.lead,.contact-paths,.intent,.locations,.quote,.next,.resource,.overview,.contact-section){padding:48px 0}
 .kb-utilities main .section-head,.kb-utilities main .overview-head{display:block;margin-bottom:24px}
 .kb-utilities main .section-copy{margin-top:12px}
 .kb-utilities main .hero-pack{padding:18px}
 .kb-utilities main .pack-top{gap:12px}
 .kb-utilities main .zip-icon{width:42px;height:42px;font-size:18px}
 .kb-utilities main .hero-file{grid-template-columns:32px 1fr auto;padding:11px 0}
 .kb-utilities main .hero-file strong{font-size:15px}
 .kb-utilities main .hero-file span{font-size:12px}
 .kb-utilities main .proof-grid{grid-template-columns:1fr 1fr;margin-bottom:32px}
 .kb-utilities main .proof{padding:16px}
 .kb-utilities main .proof strong{font-size:16px}
 .kb-utilities main .guide-stage{display:block}
 .kb-utilities main .guide-tabs{padding:12px}
 .kb-utilities main .guide-tab{padding:12px;grid-template-columns:36px 1fr;gap:10px}
 .kb-utilities main .guide-tab b{width:34px;height:34px}
 .kb-utilities main .guide-photo{height:230px}
 .kb-utilities main .guide-panel{padding:22px}
 .kb-utilities main .guide-panel h3{font-size:25px}
 .kb-utilities main .checklist{grid-template-columns:1fr;gap:8px}
 .kb-utilities main .check-item{padding:14px}
 .kb-utilities main .preflight-grid{gap:24px}
 .kb-utilities main .progress-card{padding:20px}
 .kb-utilities main .bom-table-wrap{padding:18px}
 .kb-utilities main .bom-column{grid-template-columns:28px 1fr;gap:8px}
 .kb-utilities main .bom-column small{grid-column:2;justify-self:start}
 .kb-utilities main .support-grid{grid-template-columns:1fr}
 .kb-utilities main .utility-photo{height:230px}
 .kb-utilities main :is(.bom-photo-copy,.support-copy){padding:22px}
 .kb-utilities main :is(.bom-photo-copy,.support-copy) h3{font-size:24px}
 .kb-utilities main .panelized-image{min-height:250px}
 .kb-utilities main .panelized-copy{padding:22px}
 .kb-utilities main .layer-screen{height:380px}
 .kb-utilities main :is(.quote-form,.lead-form){padding:20px}
 .kb-utilities main .lead-form,.kb-utilities main .fields{grid-template-columns:1fr}
 .kb-utilities main .form-footer,.kb-utilities main .form-submit{flex-direction:column;align-items:stretch}
 .kb-utilities main .form-footer .btn,.kb-utilities main .form-submit .btn{width:100%}
 .kb-utilities main .contact-start{padding:24px 0 40px}
 .kb-utilities main .contact-start-grid{gap:20px}
 .kb-utilities main .contact-start .quote{padding:0}
 .kb-utilities main .contact-start .hero-copy>p:not(.eyebrow){margin-bottom:12px}
 .kb-utilities main .contact-context .container{padding:40px 0}
 .kb-utilities main .contact-context .hero-visual{min-height:300px}
 .kb-utilities main .route-strip .container{grid-template-columns:1fr 1fr}
 .kb-utilities main .route-item{padding:14px 12px}
 .kb-utilities main .path-grid{grid-template-columns:1fr}
 .kb-utilities main .utility-faq-intro .hero-grid{padding:28px 0 24px}
 .kb-utilities main .utility-faq-intro .hero-topics{gap:7px}
 .kb-utilities main .hero-topics a{font-size:13px;padding:8px 11px}
 .kb-utilities main .faq-search input{font-size:16px}
 .kb-utilities main .quick .container{width:100%;grid-template-columns:1fr 1fr}
 .kb-utilities main .quick a{padding:14px;min-height:100px}
 .kb-utilities main .faq-explorer{padding:32px 0 48px}
 .kb-utilities main .explorer-grid{grid-template-columns:1fr;gap:24px}
 .kb-utilities main .explorer-head h2{font-size:27px}
 .kb-utilities main .category-panel{position:static;padding:18px}
 .kb-utilities main .category-buttons{grid-template-columns:1fr 1fr;gap:8px}
 .kb-utilities main .category-button{padding:12px;gap:6px;min-height:52px}
 .kb-utilities main .category-button b{display:none}
 .kb-utilities main .category-button strong{font-size:13px}
 .kb-utilities main .category-button span{font-size:11px}
 .kb-utilities main .faq-item summary{font-size:16px;padding-right:50px}
 .kb-utilities main .resource-copy{padding:22px}
 .kb-utilities main .utility-terms-intro .hero-grid{padding:28px 0 24px}
 .kb-utilities main .terms{padding:28px 0 48px}
 .kb-utilities main .terms-layout{grid-template-columns:1fr;gap:28px}
 .kb-utilities main .term-sidebar{position:static;padding:18px}
 .kb-utilities main .toc{grid-template-columns:1fr 1fr;gap:3px}
 .kb-utilities main .toc a{font-size:13px;min-height:42px}
 .kb-utilities main .term-section h2{font-size:26px}
 .kb-utilities main .legal-intro{padding:20px}
 .kb-utilities main .terms-secondary .hero-summary{display:block;padding:20px}
 .kb-utilities main .terms-secondary .hero-summary h2{font-size:26px;margin:12px 0}
 .kb-utilities main .status-strip{grid-template-columns:1fr}
 .kb-utilities main .overview-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.kb-utilities main *{animation:none!important;transition:none!important;scroll-behavior:auto}}

.kb-utilities main .hero-copy::before,.kb-utilities main .hero-copy::after{display:none}

/* 20261008: keep narrow RFQ grids and file-picker help within their container. */
.kb-utilities main :is(.quote-grid,.fields,.field,.quote-form,.quote-intro){min-width:0}
.kb-utilities main .quote-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.kb-utilities main .upload-zone{grid-template-columns:minmax(0,1fr);gap:12px}
.kb-utilities main .upload-button{width:fit-content;max-width:100%;white-space:normal}
.kb-utilities main [data-kb-upload-limits]{grid-column:1/-1;display:block;color:#42647c;font-size:13px;line-height:1.5}
@media(max-width:1000px){.kb-utilities main .quote-grid{grid-template-columns:minmax(0,1fr)}}
