/* Partner directory and guided project configurators. */
.kemb-smart-logo{display:block;width:100%;max-width:360px;height:auto;margin:18px 0 22px;background:none}
.kemb-text-link{display:inline-block;color:#fff!important;font-size:13px;font-weight:700;margin-top:20px;border-bottom:1px solid #e5332a;padding-bottom:7px}
.kemb-smart-feature{background:#131813;border-block:1px solid #354333}
.kemb-smart-feature>.sec-inner{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:64px}
.kemb-smart-feature p{font-size:15px;line-height:1.8;color:#ccc}
.kemb-smart-feature .eyebrow{color:#81c77b}
.kemb-smart-feature em{color:#81c77b}
.kemb-smart-brand{display:block;padding:24px 0}.kemb-smart-brand img{max-width:470px;margin:0}
.kemb-partners{padding:56px 32px;overflow:hidden;color:#fff;border-block:1px solid #303030}
.kemb-partner-heading,.kemb-partner-foot{max-width:1320px;margin:0 auto}
.kemb-partner-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}
.kemb-partner-heading h2{font-size:clamp(24px,3vw,34px);color:#fff}
.kemb-slider-toggle{color:#fff;background:transparent;border:1px solid #555;padding:10px 15px;cursor:pointer;font:12px Arial;flex-shrink:0}
.kemb-partner-window{overflow:auto;scrollbar-width:thin;padding:8px 0 18px}
.kemb-partner-track,.kemb-partner-group{display:flex;width:max-content}
.kemb-partner-group{gap:16px;padding-right:16px;align-items:stretch}
.kemb-brand{display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:210px;padding:24px;border:1px solid #343434;background:#111;color:#fff!important}
.kemb-brand strong{font-size:24px;letter-spacing:.3px;color:#fff!important;white-space:nowrap}.kemb-brand span{font-size:11px;color:#ccc;letter-spacing:.5px}
.kemb-brand:hover{border-color:#e5332a;background:#1e1515}
.kemb-partners.is-moving .kemb-partner-window{overflow:hidden}
.kemb-partners.is-moving .kemb-partner-track{animation:kemb-brands 105s linear infinite}
.kemb-partners:hover .kemb-partner-track,.kemb-partners:focus-within .kemb-partner-track,.kemb-partners.is-paused .kemb-partner-track{animation-play-state:paused}
@keyframes kemb-brands{to{transform:translateX(-50%)}}
.kemb-partner-foot{font-size:12px;line-height:1.8;color:#bdbdbd;padding-top:18px}
.kemb-partner-foot a{color:#fff;text-decoration:underline;text-underline-offset:4px;margin-left:8px}
.kemb-brand-directory .partner-card{text-align:left;display:flex;flex-direction:column;padding:28px;border:1px solid #333;background:#151515;color:#fff}
.kemb-brand-directory .partner-card h3{font-size:25px;color:#fff;margin:12px 0 18px}
.kemb-brand-directory .p-type{font-size:11px;color:#e7807a;letter-spacing:1px}
.kemb-brand-directory .partner-card p{color:#ccc;margin-bottom:26px}
.kemb-brand-link{color:#fff;font-size:12px;margin-top:auto;padding-top:16px;border-top:1px solid #444}
.kemb-feature-media{height:250px}.kemb-feature-copy{padding:26px}.kemb-feature h3{font-size:27px}
.kc-section{scroll-margin-top:130px}.kc-section .sec-inner{max-width:1240px}
.kc-explanation{max-width:900px;font-size:13px;line-height:1.8;color:#bdbdbd;margin:18px 0 32px}
.kc-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:32px 0 24px}
.kc-tabs button{padding:17px 18px;text-align:left;background:#181818;color:#eee;border:1px solid #444;font:700 14px/1.4 Arial;cursor:pointer;min-height:56px}
.kc-tabs button:hover{border-color:#e5332a}.kc-tabs button[aria-selected=true]{border-color:#e5332a;background:#e5332a;color:#fff}
.kc-panel{scroll-margin-top:150px;background:#171717;border:1px solid #393939;padding:36px}
.kc-panel[hidden],.kc-panel [hidden],.kemb-slider-toggle[hidden]{display:none!important}
.kc-form{min-width:0}.kc-form h3{font-size:27px;line-height:1.25;margin:0 0 12px}.kc-intro{font-size:14px;line-height:1.75;color:#ccc;max-width:850px;margin-bottom:28px}
.kc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.kc-field{min-width:0}.kc-field label{display:block;color:#eee;font-size:13px;font-weight:600;line-height:1.5;margin-bottom:9px}
.kc-field input,.kc-field select,.kc-field textarea{box-sizing:border-box;width:100%;min-height:50px;padding:13px 14px;background:#090909;border:1px solid #555;border-radius:3px;color:#fff;font:15px/1.45 Arial;accent-color:#e5332a;color-scheme:dark}
.kc-field textarea{height:100px;resize:vertical}.kc-field input::placeholder,.kc-field textarea::placeholder{color:#aaa}
.kc-form fieldset{min-width:0;border:0;padding:0;margin:32px 0}
.kc-form legend{font-size:18px;font-weight:700;color:#fff;margin-bottom:10px;padding:0}
.kc-help{font-size:12px;line-height:1.7;color:#bbb;margin:0 0 16px}
.kc-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.kc-choice{display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding:15px 16px;background:#101010;border:1px solid #3d3d3d;font-size:13px;color:#ddd;line-height:1.5;border-radius:3px}
.kc-choice:has(input:checked){background:#291b18;border-color:#e5332a;color:#fff}
.kc-choice input{appearance:auto;accent-color:#e5332a;width:18px;height:18px;flex:0 0 18px;margin:1px 0 0}
.kc-check-block{margin-bottom:12px}.kc-check-title{font-size:15px;font-weight:700}.kc-form .kc-check-fields{background:#202020;padding:20px;margin:0}.kc-check-fields legend{padding-top:16px;font-size:14px}
.kc-final-fields{margin-top:28px;padding-top:26px;border-top:1px solid #333}
.kc-result{margin-top:32px;padding:28px;background:#0c0c0c;border-top:3px solid #e5332a;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px}
.kc-result h4{font-size:27px;line-height:1.3;margin-bottom:12px}.kc-result p{font-size:13px;line-height:1.7;color:#c4c4c4}.kc-result .kc-price{font-size:clamp(28px,3.4vw,40px);font-weight:800;color:#fff;line-height:1.3;margin:12px 0}
.kc-result .kc-tax{font-size:11px;margin-bottom:18px}.kc-result .kc-count{color:#eee;margin-top:16px}
.kc-result details{margin-top:20px;border-top:1px solid #333;padding-top:18px}.kc-result summary{cursor:pointer;color:#fff;font-size:14px;font-weight:600}
.kc-summary{font-size:13px;line-height:1.7;margin:16px 0 0;padding-left:18px;color:#ccc}.kc-summary li{padding-bottom:5px;overflow-wrap:anywhere}
.kc-actions{display:flex;flex-direction:column;gap:12px;align-items:stretch}.kc-actions button{font:700 13px/1.5 Arial;cursor:pointer;padding:13px 16px;color:#fff;white-space:normal}
.kc-actions .btn-primary{border:0}.kc-download{background:#222;border:1px solid #555}.kc-reset{background:none;border:0;text-decoration:underline;text-underline-offset:4px}.kc-actions p{font-size:11px;color:#aaa}.kc-feedback{color:#fff!important}
.kc-progress{display:flex;gap:6px;margin:28px 0;list-style:none;padding:0}.kc-progress li{flex:1;border-top:3px solid #444;padding-top:9px;color:#999;font-size:12px;line-height:1.5}.kc-progress li.active{border-color:#e5332a;color:#fff}.kc-progress li.done{border-color:#8a5552;color:#ddd}
.kc-step-nav{display:flex;justify-content:space-between;gap:16px;margin-top:28px;padding-top:24px;border-top:1px solid #3b3b3b}
.kc-step-nav button{cursor:pointer;padding:13px 20px;border:1px solid #555;background:#222;color:#fff;font:700 13px Arial}.kc-step-nav .kc-next{background:#e5332a;border-color:#e5332a;margin-left:auto}.kc-step-nav button:disabled{opacity:.4;cursor:default}
.kc-question{font-size:19px;color:#fff;font-weight:700;margin-bottom:22px}.kc-price-notes{font-size:12px;line-height:1.8;color:#ccc;margin:12px 0;padding-left:18px}
@media(max-width:1000px){.kemb-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kemb-feature{display:flex}.kemb-feature-media{height:230px;min-height:0}.kc-result{grid-template-columns:1fr}.kc-actions{display:grid;grid-template-columns:1fr 1fr}.kc-actions p{grid-column:1/-1}.kemb-smart-feature>.sec-inner{gap:32px}}
@media(max-width:650px){.kemb-feature-grid{grid-template-columns:1fr}.kemb-feature-media{height:260px}.kemb-smart-feature>.sec-inner{grid-template-columns:1fr;gap:18px}.kemb-partners{padding:40px 20px}.kemb-partner-heading{align-items:flex-start;flex-direction:column;gap:16px}.kemb-brand{min-width:190px;padding:20px}.kc-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.kc-tabs button{padding:12px;font-size:12px}.kc-panel{padding:22px 18px}.kc-fields,.kc-choices,.kc-actions{grid-template-columns:1fr}.kc-form h3{font-size:23px}.kc-result{padding:20px;gap:24px}.kc-field input,.kc-field select,.kc-field textarea{font-size:16px}.kc-progress li{font-size:11px}.kc-step-nav button{padding:13px 12px}}
@media(prefers-reduced-motion:reduce){.kemb-partners.is-moving .kemb-partner-window{overflow:auto}.kemb-partners .kemb-partner-track{animation:none!important;transform:none!important}.kemb-partner-group[aria-hidden=true]{display:none}}

.kemb-service{padding:76px 32px;background:#1b1312;border-top:3px solid #e5332a;scroll-margin-top:130px}.kemb-service>.sec-inner{max-width:1240px;display:grid;grid-template-columns:1.45fr 1fr;gap:72px;align-items:center}.kemb-service h2{font-size:clamp(32px,4.4vw,54px);line-height:1.1;margin:0 0 24px}.kemb-service h2 em{color:#f16860;font-style:normal}.kemb-service p{color:#ddd;font-size:15px;line-height:1.8;max-width:690px}.kemb-service-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.kemb-service-tags span{border:1px solid #60443f;padding:8px 12px;font-size:12px;color:#eee}.kemb-service-contact{padding:32px;background:#111;border:1px solid #66433e}.kemb-service-contact .kemb-icon{width:48px;height:48px;margin-bottom:18px}.kemb-service-contact h3{font-size:22px;line-height:1.3;margin-bottom:12px}.kemb-service-contact p{font-size:13px;margin-bottom:24px}.kemb-service-contact .btn-primary{display:block;text-align:center}.kemb-service-phone{display:block;color:#fff;font-weight:700;font-size:23px;margin-top:24px}.kemb-service-contact>span{font-size:12px;color:#aaa;display:block;margin-top:7px}@media(max-width:750px){.kemb-service{padding:52px 20px}.kemb-service>.sec-inner{grid-template-columns:1fr;gap:32px}.kemb-service-contact{padding:26px}}
