
/* KraftCAD V8.2 Cleanup SEO Hygiene */
:root{--kc-ink:#071426;--kc-text:#f8fbff;--kc-muted:rgba(230,238,248,.78);--kc-light-muted:#5d6978;--kc-ice:#7cd5ff;--kc-blue:#4c92ff;--kc-shadow-soft:0 24px 70px rgba(12,26,46,.10)}
html,body{margin:0!important;padding:0!important}.kraftcad-landing-template .wp-site-blocks>header,.kraftcad-landing-template .wp-site-blocks>footer{display:none!important}.kc-template-wrap,.kc-template-content,.wp-block-post-content,.entry-content{margin:0!important;padding:0!important;max-width:none!important}body.kraftcad-landing-template{background:#07101d!important}.kc-page{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0!important;padding:0!important}.kc-page a{text-decoration:none}.kc-shell{width:min(1480px,calc(100% - 88px));margin:0 auto}.kc-wide-shell{width:min(1760px,calc(100% - 72px));margin:0 auto}.kc-eyebrow{display:inline-flex!important;margin:0 0 20px!important;color:var(--kc-ice)!important;font-size:.78rem!important;font-weight:850!important;letter-spacing:.14em!important;text-transform:uppercase!important}
.kc-reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.kc-reveal.is-visible{opacity:1;transform:translateY(0)}
.kc-site-nav-wrap{position:relative;z-index:10}.kc-nav42{min-height:92px;display:flex!important;align-items:center;justify-content:space-between;gap:32px}.kc-logo42{margin:0!important;flex:0 0 auto}.kc-logo42 img{max-height:38px;width:auto!important;display:block}.kc-nav42-menu{flex:1 1 auto;justify-content:flex-end!important;gap:30px}.kc-nav42-menu p{margin:0!important}.kc-nav42-menu a{color:rgba(247,249,253,.76)!important;font-weight:650;font-size:.96rem}.kc-nav42-menu a:hover,.kc-page-services .kc-nav-services a,.kc-page-case-studies .kc-nav-case-studies a,.kc-page-videos .kc-nav-videos a,.kc-page-blog .kc-nav-blog a,.kc-page-about .kc-nav-about a{color:var(--kc-ice)!important;text-shadow:0 0 22px rgba(124,213,255,.42)}.kc-nav42-action{flex:0 0 auto;margin:0!important}.kc-mobile-menu-button{display:none!important}.kc-btn-primary .wp-block-button__link,.kc-premium-button .wp-block-button__link,.kc-premium-button a{min-height:54px;display:inline-flex!important;align-items:center;justify-content:center;padding:0 24px!important;border-radius:999px!important;color:#06101d!important;background:linear-gradient(135deg,#fff,var(--kc-ice))!important;font-weight:850!important;box-shadow:0 20px 54px rgba(76,146,255,.28)!important;border:0!important}.kc-btn-secondary .wp-block-button__link{min-height:54px;display:inline-flex!important;align-items:center;justify-content:center;padding:0 24px!important;border-radius:999px!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;background:rgba(255,255,255,.06)!important;font-weight:800!important}
.kc-mobile-overlay{display:none}
.kc-hero42,.kc-page-hero,.kc-case-hero,.kc-quote-section{color:var(--kc-text);background:radial-gradient(circle at 74% 32%,rgba(94,150,255,.22),transparent 34%),radial-gradient(circle at 20% 12%,rgba(102,209,255,.10),transparent 30%),linear-gradient(135deg,#07101d 0%,#0c1a2d 52%,#101d31 100%);position:relative;overflow:hidden;isolation:isolate}.kc-hero42:before,.kc-page-hero:before,.kc-case-hero:before,.kc-quote-section:before{content:"";position:absolute;inset:0;z-index:0;opacity:.24;background-image:linear-gradient(rgba(255,255,255,.052) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.052) 1px,transparent 1px);background-size:78px 78px}.kc-hero42>*,.kc-page-hero>*,.kc-case-hero>*,.kc-quote-section>*{position:relative;z-index:2}.kc-hero42-grid{min-height:760px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(460px,.9fr);gap:clamp(40px,6vw,96px);align-items:center;padding:72px 0 105px}.kc-hero42-title{margin:0!important;color:#fff!important;max-width:920px;font-size:clamp(4.6rem,6.35vw,9rem);line-height:.92;letter-spacing:-.072em;font-weight:650}.kc-hero42-text{margin:30px 0 0!important;max-width:720px;color:rgba(230,238,248,.82)!important;font-size:clamp(1.08rem,1.18vw,1.28rem);line-height:1.68;font-weight:300}.kc-hero42-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px!important}.kc-hero42-visual{min-height:520px;display:grid;place-items:center;position:relative}.kc-hero42-visual:before{content:"";position:absolute;inset:8% 2%;border-radius:46px;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.12);box-shadow:0 42px 120px rgba(0,0,0,.34)}.kc-hero42-drone{margin:0!important;position:relative;z-index:2}.kc-hero42-drone img{width:min(94%,760px);height:auto;filter:drop-shadow(0 46px 72px rgba(0,0,0,.42))}
.kc-breadcrumb{width:min(1760px,calc(100% - 72px));margin:0 auto!important;padding-top:22px;display:flex;flex-wrap:wrap;align-items:center;gap:9px;color:rgba(248,251,255,.52)!important;font-size:.92rem;font-weight:500;position:relative;z-index:3}.kc-breadcrumb a{color:rgba(248,251,255,.72)!important}.kc-breadcrumb a:hover{color:var(--kc-ice)!important}.kc-breadcrumb span{color:rgba(248,251,255,.34)}.kc-breadcrumb strong{color:rgba(248,251,255,.86);font-weight:650}.kc-page-hero-grid{min-height:560px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,.92fr);gap:clamp(36px,5vw,82px);align-items:center;padding:76px 0 96px}.kc-page-title{margin:0!important;max-width:850px;color:#fff!important;font-size:clamp(3.5rem,5.4vw,7.2rem);line-height:.98;letter-spacing:-.056em;font-weight:660}.kc-page-lead{margin:26px 0 0!important;max-width:700px;color:rgba(230,238,248,.8)!important;font-size:clamp(1.08rem,1.2vw,1.28rem);line-height:1.68;font-weight:300}.kc-page-hero-img{margin:0!important}.kc-page-hero-img img{filter:drop-shadow(0 44px 70px rgba(0,0,0,.42))}
.kc-premium-about,.kc-premium-services,.kc-projects-section,.kc-premium-routing,.kc-premium-detail,.kc-latest-section{background:linear-gradient(180deg,#f7faff,#eef3f8);color:var(--kc-ink)}.kc-premium-about{padding:96px 0}.kc-premium-services,.kc-projects-section,.kc-premium-routing,.kc-premium-detail,.kc-latest-section{padding:108px 0}.kc-premium-about-grid,.kc-premium-section-head,.kc-section-head,.kc-premium-route-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(320px,.54fr);gap:44px;align-items:end}.kc-premium-about h2,.kc-premium-section-head h2,.kc-section-head h2{margin:0!important;color:var(--kc-ink)!important;font-size:clamp(2.5rem,4vw,5.2rem);line-height:1;letter-spacing:-.055em;font-weight:680}.kc-premium-about p,.kc-premium-section-head p,.kc-section-head p{margin:0!important;color:var(--kc-light-muted)!important;font-size:1.04rem;line-height:1.68;font-weight:300}.kc-premium-section-head,.kc-section-head{margin-bottom:38px!important}
.kc-premium-service-grid,.kc-featured-project-grid,.kc-insights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.kc-premium-service-card,.kc-featured-project-card,.kc-insight-card,.kc-quote-card,.kc-detail-card,.kc-case-card{overflow:hidden;border-radius:34px;background:#fff;border:1px solid rgba(7,20,38,.08);box-shadow:0 24px 70px rgba(12,26,46,.1);color:var(--kc-ink)!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.kc-premium-service-card:hover,.kc-featured-project-card:hover,.kc-insight-card:hover,.kc-quote-card:hover{transform:translateY(-7px);box-shadow:0 38px 110px rgba(12,26,46,.18);border-color:rgba(74,144,255,.24)}.kc-premium-service-card{display:grid;grid-template-rows:250px minmax(270px,1fr)}.kc-featured-project-card{display:grid;grid-template-rows:280px minmax(285px,1fr)}.kc-premium-service-card figure,.kc-featured-project-card figure{margin:0!important;height:100%;background:#e8eef5;overflow:hidden}.kc-premium-service-card img,.kc-featured-project-card img{width:100%;height:100%!important;object-fit:cover;display:block}.kc-card-body{padding:30px;display:grid;grid-template-rows:auto auto 1fr auto;gap:14px}.kc-premium-service-card h3,.kc-featured-project-card h3,.kc-insight-card h3,.kc-quote-card h2{margin:0!important;color:var(--kc-ink)!important;font-size:clamp(1.35rem,1.65vw,2rem);line-height:1.12;letter-spacing:-.04em;font-weight:780}.kc-premium-service-card p,.kc-featured-project-card p,.kc-insight-card p,.kc-quote-card p,.kc-detail-card p,.kc-detail-card li,.kc-case-card p{margin:0!important;color:var(--kc-light-muted)!important;font-size:.98rem;line-height:1.65;font-weight:300}.kc-pill{width:fit-content;margin:0!important;padding:8px 12px;border-radius:999px;color:#0a5b93!important;background:rgba(90,170,255,.12);font-size:.72rem!important;line-height:1;text-transform:uppercase;letter-spacing:.085em;font-weight:800!important}.kc-card-cta .wp-block-button__link{background:transparent!important;color:#0a5b93!important;padding:0!important;border-radius:0!important;font-weight:850!important;box-shadow:none!important}.kc-card-cta .wp-block-button__link:after{content:" →"}
.kc-process-section,.kc-tool-stack,.kc-premium-final-cta,.kc-metrics{color:#f8fbff!important;background:radial-gradient(circle at 18% 12%,rgba(124,213,255,.12),transparent 28%),linear-gradient(135deg,#07101d,#0d1d31 65%,#111e31)}.kc-process-section{padding:110px 0}.kc-process-shell,.kc-tool-shell,.kc-projects-shell{width:min(1480px,calc(100% - 88px));margin:0 auto}.kc-process-head{max-width:920px;margin-bottom:42px}.kc-process-head h2,.kc-tool-shell h2,.kc-premium-final-box h2{margin:0!important;color:#fff!important;font-size:clamp(2.8rem,4.4vw,5.6rem);line-height:1;letter-spacing:-.06em;font-weight:680}.kc-process-head p,.kc-premium-final-box p{margin:22px 0 0!important;color:rgba(230,238,248,.76)!important;font-size:1.05rem;line-height:1.65;font-weight:300}.kc-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.kc-process-card{min-height:280px;padding:28px;border-radius:30px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.13);box-shadow:0 28px 90px rgba(0,0,0,.24);backdrop-filter:blur(16px)}.kc-process-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;color:#06101d!important;background:linear-gradient(135deg,#fff,var(--kc-ice));font-weight:850;margin:0 0 28px!important}.kc-process-card h3{margin:0!important;color:#fff!important;font-size:1.28rem;line-height:1.18;letter-spacing:-.03em;font-weight:750}.kc-process-card p{margin:16px 0 0!important;color:rgba(230,238,248,.72)!important;font-size:.96rem;line-height:1.6;font-weight:300}
.kc-insight-icon{height:210px;margin:0!important;display:grid;place-items:center;color:var(--kc-ice)!important;font-size:64px!important;background:radial-gradient(circle at 70% 25%,rgba(124,213,255,.22),transparent 34%),linear-gradient(135deg,#07101d,#0d1d31)}
.kc-tool-stack{padding:82px 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.kc-tool-row{display:flex;flex-wrap:wrap;gap:14px}.kc-tool-row p{margin:0!important}.kc-tool-row a{min-height:52px;display:inline-flex;align-items:center;padding:0 20px;border-radius:999px;color:rgba(248,251,255,.64)!important;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);font-weight:760;opacity:.74}.kc-tool-row a:hover{opacity:1;color:#fff!important;border-color:rgba(124,213,255,.36)}
.kc-premium-detail-grid,.kc-case-grid,.kc-metrics-grid,.kc-quote-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.kc-case-grid,.kc-metrics-grid{width:min(1480px,calc(100% - 88px));margin:0 auto;grid-template-columns:repeat(3,minmax(0,1fr))}.kc-detail-card,.kc-case-card,.kc-quote-card{padding:32px}.kc-detail-card h2,.kc-case-card h2,.kc-quote-card h2{margin:0 0 16px!important;color:var(--kc-ink)!important;font-size:clamp(1.55rem,2vw,2.4rem);line-height:1.1;letter-spacing:-.04em}.kc-detail-card ul{margin:0;padding-left:20px}.kc-case-hero{color:#fff}.kc-case-title-wrap{width:min(1480px,calc(100% - 88px));margin:0 auto;padding:76px 0 110px}.kc-case-title-wrap h1{margin:0!important;max-width:980px;color:#fff!important;font-size:clamp(4rem,7vw,9rem);line-height:.95;letter-spacing:-.065em;font-weight:680}.kc-case-visual{padding:72px 0;background:#f5f7fb}.kc-case-shell{width:min(1480px,calc(100% - 88px));margin:0 auto!important}.kc-case-visual img{width:100%;border-radius:34px;box-shadow:0 34px 96px rgba(12,26,46,.16)}.kc-case-card .num{width:52px;height:52px;display:grid;place-items:center;margin:0 0 28px!important;border-radius:16px;color:#06101d!important;background:linear-gradient(135deg,#fff,var(--kc-ice));font-weight:850!important}.kc-metrics{padding:72px 0}.kc-metric{padding:28px;border-radius:28px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.13)}.kc-metric h3{margin:0!important;color:#fff!important;font-size:clamp(2rem,4vw,4rem);line-height:1;letter-spacing:-.05em}.kc-metric p{margin:12px 0 0!important;color:rgba(230,238,248,.72)!important}
.kc-quote-section{padding:0 0 110px}.kc-quote-shell{width:min(1480px,calc(100% - 88px));margin:0 auto;display:grid;grid-template-columns:.82fr 1fr;gap:72px;align-items:start;padding-top:88px}.kc-quote-copy h1{margin:0!important;color:#fff!important;font-size:clamp(3.2rem,5vw,6.8rem);line-height:.98;letter-spacing:-.06em;font-weight:680}.kc-quote-copy p{margin:28px 0 0!important;color:rgba(230,238,248,.78)!important;font-size:1.08rem;line-height:1.7;font-weight:300}.kc-quote-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kc-quote-card{display:grid;grid-template-rows:auto auto 1fr auto;gap:14px}
.kc-premium-final-cta{padding:94px 0}.kc-premium-final-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:34px;align-items:center;padding:clamp(36px,4vw,58px);border-radius:38px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055);box-shadow:0 42px 120px rgba(0,0,0,.34)}.kc-premium-final-box h2{font-size:clamp(2.4rem,4vw,5.35rem)}.kc-floating-quote-wrap{position:fixed;right:28px;bottom:28px;z-index:9998;transform:translateY(18px);opacity:0;pointer-events:none;transition:opacity .22s ease,transform .22s ease}.kc-floating-quote-wrap.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.kc-floating-quote .wp-block-button__link{min-height:52px;padding:0 22px!important;border-radius:999px!important;color:#06101d!important;background:linear-gradient(135deg,#fff,var(--kc-ice))!important;font-weight:850!important;box-shadow:0 24px 70px rgba(76,146,255,.32)!important}.kc-footer42{background:#05070d;color:rgba(248,251,255,.62);padding:34px 0;border-top:1px solid rgba(255,255,255,.08)}.kc-footer42-inner p{margin:0!important}.kc-footer42-links{gap:18px!important}.kc-footer42 a{color:rgba(248,251,255,.72)!important}.kc-footer42 a:hover{color:var(--kc-ice)!important}
@media(max-width:1100px){.kc-hero42-grid,.kc-page-hero-grid,.kc-premium-about-grid,.kc-premium-section-head,.kc-section-head,.kc-quote-shell{grid-template-columns:1fr}.kc-premium-service-grid,.kc-featured-project-grid,.kc-insights-grid,.kc-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kc-premium-detail-grid,.kc-case-grid,.kc-metrics-grid,.kc-quote-card-grid{grid-template-columns:1fr}}
@media(max-width:900px){.kc-wide-shell,.kc-shell,.kc-process-shell,.kc-tool-shell,.kc-projects-shell,.kc-quote-shell,.kc-case-title-wrap,.kc-case-shell,.kc-case-grid,.kc-metrics-grid{width:min(100% - 36px,760px)}.kc-nav42{min-height:78px}.kc-nav42-menu,.kc-nav42-action{display:none!important}.kc-mobile-menu-button{display:flex!important}.kc-logo42 img{max-height:32px}.kc-hero42-grid{padding:50px 0 80px;min-height:auto}.kc-hero42-visual{min-height:360px}.kc-floating-quote-wrap{right:18px;bottom:18px}.kc-mobile-overlay{display:none;position:fixed!important;inset:0;z-index:9999;padding:96px 24px 28px;background:radial-gradient(circle at 70% 16%,rgba(124,213,255,.16),transparent 30%),rgba(5,7,13,.97);backdrop-filter:blur(22px)}.kc-mobile-overlay.is-open{display:block}.kc-mobile-panel{max-width:680px;margin:0 auto;display:grid;gap:10px}.kc-mobile-panel p{margin:0!important}.kc-mobile-panel a{min-height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-radius:18px;color:#fff!important;font-size:1.25rem;font-weight:760;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.10)}.kc-mobile-quote a{justify-content:center!important;color:#06101d!important;background:linear-gradient(135deg,#fff,var(--kc-ice))!important}.kc-mobile-close a{justify-content:center!important;color:var(--kc-ice)!important}}
@media(max-width:680px){.kc-hero42-title{font-size:clamp(3.2rem,14vw,5.6rem)}.kc-page-title{font-size:clamp(3rem,13vw,5.2rem)}.kc-premium-service-grid,.kc-featured-project-grid,.kc-insights-grid,.kc-process-grid,.kc-premium-route-grid{grid-template-columns:1fr}.kc-premium-about,.kc-premium-services,.kc-projects-section,.kc-process-section,.kc-tool-stack,.kc-premium-routing,.kc-premium-final-cta,.kc-latest-section{padding:72px 0}.kc-premium-service-card,.kc-featured-project-card{grid-template-rows:auto auto}.kc-premium-service-card figure{height:210px}.kc-featured-project-card figure{height:220px!important}.kc-card-body,.kc-process-card,.kc-detail-card,.kc-case-card,.kc-quote-card{padding:24px}.kc-premium-final-box{grid-template-columns:1fr;border-radius:28px}}
@media(prefers-reduced-motion:reduce){.kc-reveal{opacity:1!important;transform:none!important;transition:none!important}}


/* =========================================================
   KraftCAD V6.6 — Section strip cleanup + workflow icons
   ========================================================= */

/* 1) Remove black strips / unwanted gaps between every section */
.kc-page,
.kc-page > *,
.kc-page section,
.kc-page .wp-block-group.alignfull,
.kc-template-wrap,
.kc-template-content,
.wp-block-post-content,
.entry-content,
.wp-site-blocks {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.kc-page section + section,
.kc-page .wp-block-group.alignfull + .wp-block-group.alignfull,
.kc-page .wp-block-group + .wp-block-group {
  margin-top: 0 !important;
}

/* WordPress block themes sometimes add global block gap. Remove it only inside KraftCAD page. */
.kc-page {
  gap: 0 !important;
  --wp--style--block-gap: 0px !important;
}

/* Make sure full-width section backgrounds physically touch each other */
.kc-hero42,
.kc-page-hero,
.kc-case-hero,
.kc-quote-section,
.kc-premium-about,
.kc-premium-services,
.kc-projects-section,
.kc-latest-section,
.kc-premium-detail,
.kc-process-section,
.kc-tool-stack,
.kc-premium-final-cta,
.kc-metrics,
.kc-footer42 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Prevent parent theme focus outline from appearing like a black divider */
:where(.wp-site-blocks *:focus) {
  outline: none !important;
}

:where(.wp-site-blocks a:focus-visible),
:where(.wp-site-blocks button:focus-visible),
:where(.wp-site-blocks .wp-block-button__link:focus-visible) {
  outline: 2px solid rgba(124, 213, 255, 0.78) !important;
  outline-offset: 4px !important;
  border-radius: 999px;
}

/* 2) Workflow icons: no numbering, clean symbolic engineering feel */
.kc-process-icon {
  font-size: 1.26rem !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  font-weight: 800 !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  position: relative;
  overflow: hidden;
}

.kc-process-icon::after {
  content: "";
  position: absolute;
  inset: 10px;
  border-radius: 12px;
  border: 1px solid rgba(6, 16, 29, 0.10);
  pointer-events: none;
}

/* Card-specific subtle glow so icons feel intentional */
.kc-process-card:nth-child(1) .kc-process-icon {
  background: linear-gradient(135deg, #ffffff, #9fe6ff) !important;
}

.kc-process-card:nth-child(2) .kc-process-icon {
  background: linear-gradient(135deg, #ffffff, #7cd5ff) !important;
}

.kc-process-card:nth-child(3) .kc-process-icon {
  background: linear-gradient(135deg, #ffffff, #8fb8ff) !important;
}

.kc-process-card:nth-child(4) .kc-process-icon {
  background: linear-gradient(135deg, #ffffff, #a7f3d0) !important;
}

/* Keep workflow text readable */
.kc-process-card h3 {
  color: #ffffff !important;
}

.kc-process-card p:not(.kc-process-icon) {
  color: rgba(230, 238, 248, 0.72) !important;
}

/* Defensive dark-section readability */
.kc-hero42,
.kc-page-hero,
.kc-case-hero,
.kc-quote-section,
.kc-process-section,
.kc-tool-stack,
.kc-premium-final-cta,
.kc-metrics,
.kc-footer42 {
  color: #f8fbff !important;
}

.kc-hero42 h1,
.kc-page-hero h1,
.kc-case-hero h1,
.kc-quote-section h1,
.kc-process-section h2,
.kc-process-section h3,
.kc-tool-stack h2,
.kc-premium-final-cta h2 {
  color: #ffffff !important;
}

/* KraftCAD V6.7 Premium Refinement */
.kc-page,.kc-page>*,.kc-page section,.kc-page .wp-block-group.alignfull{margin-block-start:0!important;margin-block-end:0!important}.kc-page{--wp--style--block-gap:0px!important;gap:0!important}:where(.wp-site-blocks *:focus){outline:none!important}:where(.wp-site-blocks a:focus-visible),:where(.wp-site-blocks button:focus-visible),:where(.wp-site-blocks .wp-block-button__link:focus-visible){outline:2px solid rgba(124,213,255,.78)!important;outline-offset:4px!important;border-radius:999px}.kc-hero42-visual:before{display:none!important}.kc-hero42-drone img{width:min(98%,820px)!important}.kc-hero42-title{font-size:clamp(4.15rem,6.1vw,8.35rem)!important;line-height:.94!important;letter-spacing:-.068em!important}.kc-hero42-text{max-width:660px!important}.kc-section-head-empty{min-height:1px!important;height:1px!important}.kc-page-hero-img,.kc-page-hero-img img{background:transparent!important;border:0!important;box-shadow:none!important}.kc-page-hero-img img{max-height:560px;object-fit:contain}.kc-process-icon{width:54px!important;height:54px!important;border-radius:18px!important;display:grid!important;place-items:center!important;color:rgba(255,255,255,.96)!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 18px 48px rgba(0,0,0,.18)!important;font-size:1.28rem!important;line-height:1!important;font-weight:700!important;letter-spacing:0!important}.kc-process-icon:after{display:none!important}.kc-service-deep-section,.kc-video-feed-section,.kc-blog-section,.kc-about-trust-section{padding:108px 0;background:linear-gradient(180deg,#f7faff,#eef3f8);color:var(--kc-ink)}.kc-service-deep-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,.8fr);gap:56px;align-items:center}.kc-service-deep-copy h2,.kc-about-trust-copy h2{margin:0!important;color:var(--kc-ink)!important;font-size:clamp(2.6rem,4vw,5.2rem);line-height:1;letter-spacing:-.055em;font-weight:680}.kc-service-deep-copy p:not(.kc-eyebrow),.kc-about-trust-copy p:not(.kc-eyebrow){margin:22px 0 0!important;color:var(--kc-light-muted)!important;font-weight:300!important;line-height:1.68!important;max-width:660px}.kc-service-deep-copy .wp-block-buttons{margin-top:30px!important}.kc-service-deep-visual{margin:0!important;border-radius:34px;overflow:hidden;background:radial-gradient(circle at 55% 35%,rgba(124,213,255,.22),transparent 42%),linear-gradient(135deg,#07101d,#0d1d31);box-shadow:0 34px 96px rgba(12,26,46,.16)}.kc-service-deep-visual img{width:100%;height:430px!important;object-fit:contain;padding:28px}.kc-service-mini-grid{margin-top:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kc-service-mini-card,.kc-about-trust-card{padding:28px;border-radius:28px;background:#fff;border:1px solid rgba(7,20,38,.08);box-shadow:0 24px 70px rgba(12,26,46,.09)}.kc-service-mini-icon{width:46px;height:46px;display:grid;place-items:center;margin:0 0 22px!important;border-radius:16px;color:#0a5b93!important;background:rgba(90,170,255,.12);font-weight:850!important}.kc-service-mini-card h3,.kc-about-trust-card h3{margin:0 0 12px!important;color:var(--kc-ink)!important;font-size:1.25rem;letter-spacing:-.03em}.kc-service-mini-card p,.kc-about-trust-card p{margin:0!important;color:var(--kc-light-muted)!important;line-height:1.62;font-weight:300}.kc-youtube-grid{width:min(1480px,calc(100% - 88px));margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.kc-youtube-card{display:block;overflow:hidden;border-radius:28px;background:#fff;border:1px solid rgba(7,20,38,.08);box-shadow:0 24px 70px rgba(12,26,46,.1);color:var(--kc-ink)!important;transition:transform .22s ease,box-shadow .22s ease}.kc-youtube-card:hover{transform:translateY(-6px);box-shadow:0 38px 110px rgba(12,26,46,.18)}.kc-youtube-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:#07101d}.kc-youtube-thumb img{width:100%;height:100%;object-fit:cover}.kc-youtube-play{position:absolute;left:18px;bottom:16px;width:42px;height:42px;border-radius:999px;display:grid;place-items:center;color:#06101d;background:linear-gradient(135deg,#fff,var(--kc-ice));font-weight:900}.kc-youtube-card h3{margin:0!important;padding:20px 20px 6px;color:var(--kc-ink)!important;font-size:1.04rem;line-height:1.25}.kc-youtube-card time{display:block;padding:0 20px 20px;color:var(--kc-light-muted);font-size:.86rem}.kc-youtube-empty{width:min(1480px,calc(100% - 88px));margin:0 auto;padding:42px;border-radius:34px;background:#fff;border:1px solid rgba(7,20,38,.08);box-shadow:0 24px 70px rgba(12,26,46,.1);color:var(--kc-ink)}.kc-youtube-empty h3{margin:0 0 10px!important;color:var(--kc-ink)!important;font-size:1.5rem}.kc-youtube-empty p{margin:0!important;color:var(--kc-light-muted)!important;line-height:1.6}.kc-blog-topic-row{margin-bottom:28px!important;gap:10px!important}.kc-blog-topic-row p{margin:0!important;padding:10px 14px;border-radius:999px;color:#0a5b93!important;background:rgba(90,170,255,.12);font-size:.86rem;font-weight:750}.kc-blog-latest{width:min(1480px,calc(100% - 88px));margin:0 auto!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0!important;list-style:none!important}.kc-blog-latest li{list-style:none!important;margin:0!important;padding:28px!important;border-radius:30px;background:#fff;border:1px solid rgba(7,20,38,.08);box-shadow:0 24px 70px rgba(12,26,46,.1)}.kc-blog-latest a{color:var(--kc-ink)!important;font-size:1.25rem;line-height:1.2;font-weight:780}.kc-blog-latest .wp-block-latest-posts__post-date,.kc-blog-latest .wp-block-latest-posts__post-excerpt{color:var(--kc-light-muted)!important;font-weight:300;line-height:1.6}.kc-about-trust-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,.9fr);gap:44px;align-items:start}.kc-about-trust-cards{display:grid;gap:16px}.kc-quote-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.kc-quote-card{cursor:pointer}.kc-brand-mark{width:56px;height:56px;margin:0 0 18px!important;display:grid;place-items:center;border-radius:18px;background:rgba(7,20,38,.055);color:var(--kc-ink)!important;font-weight:900!important;font-size:1.16rem!important;letter-spacing:-.04em;border:1px solid rgba(7,20,38,.08)}.kc-brand-email .kc-brand-mark{font-size:1.5rem!important}.kc-brand-upwork .kc-brand-mark{color:#14a800!important}.kc-brand-fiverr .kc-brand-mark{color:#1dbf73!important}.kc-brand-linkedin .kc-brand-mark{color:#0a66c2!important;font-family:Arial,sans-serif!important}.kc-quote-card:hover .kc-brand-mark{background:#07101d;color:#fff!important}@media(max-width:1100px){.kc-service-deep-grid,.kc-about-trust-grid{grid-template-columns:1fr}.kc-service-mini-grid,.kc-youtube-grid,.kc-blog-latest{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:680px){.kc-hero42-title{font-size:clamp(3.25rem,13.5vw,5.2rem)!important}.kc-service-deep-section,.kc-video-feed-section,.kc-blog-section,.kc-about-trust-section{padding:72px 0}.kc-service-mini-grid,.kc-youtube-grid,.kc-blog-latest,.kc-quote-card-grid{grid-template-columns:1fr!important}.kc-service-deep-visual img{height:320px!important}}


/* =========================================================
   KraftCAD V6.8 — Service detail visual spacing fix
   ========================================================= */

/* The visual block after service hero was too close to the 3-card explanation grid.
   Add a more premium breathing space without changing the overall layout. */
.kc-service-deep-grid {
  margin-bottom: 64px !important;
}

.kc-service-mini-grid {
  margin-top: 0 !important;
}

/* Keep the secondary service image visually contained and separated. */
.kc-service-deep-visual {
  margin-bottom: 0 !important;
}

.kc-service-deep-visual img {
  display: block;
}

/* Slightly better vertical rhythm for the whole service detail section. */
.kc-service-deep-section {
  padding-top: 118px !important;
  padding-bottom: 124px !important;
}

/* Mobile/tablet spacing should remain generous but not excessive. */
@media (max-width: 1100px) {
  .kc-service-deep-grid {
    margin-bottom: 48px !important;
  }
}

@media (max-width: 680px) {
  .kc-service-deep-grid {
    margin-bottom: 36px !important;
  }

  .kc-service-deep-section {
    padding-top: 78px !important;
    padding-bottom: 84px !important;
  }
}


/* =========================================================
   KraftCAD V6.9 — Content and visual refinement
   ========================================================= */

/* Transparent minimal workflow icons, no rounded rectangle badge */
.kc-process-icon {
  width: auto !important;
  height: auto !important;
  display: inline-flex !important;
  place-items: unset !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(255,255,255,.92) !important;
  font-size: 2.05rem !important;
  line-height: 1 !important;
  font-weight: 650 !important;
}
.kc-process-icon::after { display: none !important; }

/* Service mini cards: minimal transparent icons */
.kc-service-mini-icon {
  width: auto !important;
  height: auto !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #0a5b93 !important;
  font-size: 1.72rem !important;
  line-height: 1 !important;
  font-weight: 760 !important;
}

/* Better FEA / CAD visual behavior */
.kc-hero-fea .kc-page-hero-img img,
.kc-page-hero-img img[src$="fea-hero-premium.svg"],
.kc-page-hero-img img[src$="cad-hero-premium.svg"] {
  max-height: 520px !important;
  width: 100% !important;
  object-fit: contain !important;
  filter: drop-shadow(0 44px 70px rgba(0,0,0,.34)) !important;
}

/* All non-home heroes use a consistent compact rhythm */
.kc-page-hero-grid {
  min-height: 500px !important;
  padding-top: 64px !important;
  padding-bottom: 76px !important;
}
.kc-case-title-wrap {
  padding-top: 64px !important;
  padding-bottom: 82px !important;
}
.kc-case-title-wrap h1 {
  font-size: clamp(3.4rem, 5.6vw, 6.8rem) !important;
}

/* Blog hero should not dominate the page */
.kc-page-blog .kc-page-hero-grid {
  min-height: 420px !important;
  padding-top: 46px !important;
  padding-bottom: 58px !important;
}
.kc-page-blog .kc-page-hero-img img {
  max-height: 390px !important;
}

/* Hide empty section head helper blocks cleanly */
.kc-section-head-empty {
  height: 1px !important;
  min-height: 1px !important;
  opacity: 0 !important;
}

/* Case Studies: no eyebrow, still balanced */
.kc-page-case-studies .kc-projects-section .kc-section-head {
  grid-template-columns: minmax(0, .8fr) minmax(260px, .45fr);
}

/* Premium CTA wording layout */
.kc-card-cta .wp-block-button__link {
  letter-spacing: -.01em;
}

/* Videos feed: remove admin-like messaging, keep premium empty state */
.kc-youtube-empty {
  text-align: left;
}
.kc-youtube-empty h3 {
  font-size: clamp(1.6rem, 2vw, 2.4rem) !important;
}

/* Blog shortcode grid */
.kc-blog-grid {
  width: min(1480px, calc(100% - 88px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 24px;
}
.kc-blog-card {
  overflow: hidden;
  display: grid;
  border-radius: 30px;
  background: #fff;
  border: 1px solid rgba(7,20,38,.08);
  box-shadow: 0 24px 70px rgba(12,26,46,.1);
  color: var(--kc-ink) !important;
  transition: transform .22s ease, box-shadow .22s ease;
}
.kc-blog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 38px 110px rgba(12,26,46,.18);
}
.kc-blog-card figure {
  margin: 0 !important;
  aspect-ratio: 16/9;
  background: linear-gradient(135deg,#07101d,#0d1d31);
  overflow: hidden;
}
.kc-blog-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.kc-blog-card-body {
  padding: 26px;
}
.kc-blog-card time {
  display: block;
  margin-bottom: 12px;
  color: #0a5b93;
  font-size: .84rem;
  font-weight: 760;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.kc-blog-card h3 {
  margin: 0 !important;
  color: var(--kc-ink) !important;
  font-size: clamp(1.25rem, 1.5vw, 1.8rem);
  line-height: 1.15;
  letter-spacing: -.04em;
}
.kc-blog-card p {
  margin: 14px 0 0 !important;
  color: var(--kc-light-muted) !important;
  line-height: 1.62;
  font-weight: 300;
}
.kc-blog-empty {
  width: min(1480px, calc(100% - 88px));
  margin: 0 auto;
  padding: 42px;
  border-radius: 34px;
  background: #fff;
  border: 1px solid rgba(7,20,38,.08);
  box-shadow: 0 24px 70px rgba(12,26,46,.1);
}
.kc-blog-empty h3 {
  margin: 0 0 10px !important;
  color: var(--kc-ink) !important;
}
.kc-blog-empty p {
  margin: 0 !important;
  color: var(--kc-light-muted) !important;
}

/* Request quote: logos are in CTA area, no top badge */
.kc-quote-card .kc-brand-mark {
  display: none !important;
}
.kc-quote-card .kc-card-cta .wp-block-button__link {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
}
.kc-quote-card .kc-card-cta .wp-block-button__link::after {
  content: " →";
}

/* Remove old auto arrow duplication if inherited */
.kc-card-cta .wp-block-button__link:after {
  content: " →";
}

/* About page: no tool stack, more calm spacing */
.kc-page-about .kc-about-trust-section {
  padding-bottom: 118px !important;
}

/* responsive refinements */
@media(max-width:1100px){
  .kc-blog-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media(max-width:680px){
  .kc-page-hero-grid {
    min-height: auto !important;
    padding-top: 46px !important;
    padding-bottom: 62px !important;
  }
  .kc-blog-grid {
    grid-template-columns: 1fr;
    width: min(100% - 36px, 760px);
  }
}


/* =========================================================
   KraftCAD V7.0 — Hero sizing, Request Quote and icon cleanup
   ========================================================= */

/* 1) All non-home heroes use the compact Blog hero rhythm.
   Home hero remains unchanged. */
.kc-page:not(.kc-page-home) .kc-page-hero-grid {
  min-height: 420px !important;
  padding-top: 46px !important;
  padding-bottom: 58px !important;
}

.kc-page:not(.kc-page-home) .kc-page-title {
  font-size: clamp(3.05rem, 4.8vw, 5.8rem) !important;
  line-height: .98 !important;
}

.kc-page:not(.kc-page-home) .kc-page-lead {
  max-width: 660px !important;
}

.kc-page:not(.kc-page-home) .kc-page-hero-img img {
  max-height: 390px !important;
}

/* Case study heroes should visually match the same compact scale. */
.kc-case-title-wrap {
  padding-top: 46px !important;
  padding-bottom: 58px !important;
}

.kc-case-title-wrap h1 {
  font-size: clamp(3.05rem, 4.8vw, 5.8rem) !important;
  line-height: .98 !important;
}

/* Request Quote hero-like top area should not feel taller than other subpages. */
.kc-quote-shell {
  padding-top: 54px !important;
}

.kc-quote-copy h1 {
  font-size: clamp(3.05rem, 4.8vw, 5.8rem) !important;
}

/* 2) Request Quote: remove all logo/mark blocks completely. */
.kc-quote-card .kc-brand-mark {
  display: none !important;
}

.kc-quote-card .kc-card-cta .wp-block-button__link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
}

/* Keep the CTA premium and clean; no brand prefix. */
.kc-quote-card .kc-card-cta .wp-block-button__link::after,
.kc-card-cta .wp-block-button__link:after {
  content: " →" !important;
}

/* Title hover color change for quote cards. */
.kc-quote-card h2 {
  transition: color .22s ease, text-shadow .22s ease;
}

.kc-quote-card:hover h2 {
  color: #0a5b93 !important;
  text-shadow: 0 0 22px rgba(124, 213, 255, 0.18);
}

/* Card remains clearly clickable. */
.kc-quote-card.kc-clickable-card {
  cursor: pointer;
}

/* 3) All decorative process/service icons:
   no rounded rectangle, no sharp rectangle, no badge, transparent background. */
.kc-process-icon,
.kc-service-mini-icon {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  line-height: 1 !important;
}

.kc-process-icon {
  color: rgba(255,255,255,.92) !important;
  font-size: 2.18rem !important;
  font-weight: 520 !important;
}

.kc-service-mini-icon {
  color: #0a5b93 !important;
  font-size: 2rem !important;
  font-weight: 560 !important;
}

.kc-process-icon::before,
.kc-process-icon::after,
.kc-service-mini-icon::before,
.kc-service-mini-icon::after {
  display: none !important;
  content: none !important;
}

/* Remove any old card-specific icon background styling. */
.kc-process-card:nth-child(1) .kc-process-icon,
.kc-process-card:nth-child(2) .kc-process-icon,
.kc-process-card:nth-child(3) .kc-process-icon,
.kc-process-card:nth-child(4) .kc-process-icon {
  background: transparent !important;
}

/* More premium spacing after unboxed icons. */
.kc-process-card h3,
.kc-service-mini-card h3 {
  margin-top: 0 !important;
}

/* Mobile: compact but readable subpage heroes. */
@media (max-width: 680px) {
  .kc-page:not(.kc-page-home) .kc-page-hero-grid {
    padding-top: 40px !important;
    padding-bottom: 48px !important;
  }

  .kc-page:not(.kc-page-home) .kc-page-title,
  .kc-case-title-wrap h1,
  .kc-quote-copy h1 {
    font-size: clamp(2.75rem, 12vw, 4.6rem) !important;
  }

  .kc-page:not(.kc-page-home) .kc-page-hero-img img {
    max-height: 300px !important;
  }
}


/* =========================================================
   KraftCAD V7.1 — Project/contact/case-study refinement
   ========================================================= */

/* Remove the subtle white/fringe line below the transparent home drone image. */
.kc-hero42-drone,
.kc-hero42-drone img {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.kc-hero42-drone {
  overflow: hidden !important;
  line-height: 0 !important;
}
.kc-hero42-drone img {
  display: block !important;
  clip-path: inset(0 0 7px 0) !important;
  transform: translateY(1px);
}

/* Quote cards open as premium destination cards. */
.kc-quote-card-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.kc-quote-card.kc-clickable-card {
  cursor: pointer;
}
.kc-quote-card h2 {
  transition: color .22s ease, text-shadow .22s ease;
}
.kc-quote-card:hover h2 {
  color: #0a5b93 !important;
  text-shadow: 0 0 22px rgba(124, 213, 255, .18);
}

/* Consistent icon family: transparent, same scale, no box/badge. */
.kc-process-icon,
.kc-service-mini-icon {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 1 !important;
  position: relative;
}
.kc-process-icon::before,
.kc-service-mini-icon::before {
  content: "";
  display: block !important;
  width: 42px;
  height: 42px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 42px 42px;
  opacity: .96;
}
.kc-process-icon::after,
.kc-service-mini-icon::after {
  display: none !important;
  content: none !important;
}
/* Process icons: same line family. */
.kc-process-card:nth-child(1) .kc-process-icon::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='white' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='21' cy='21' r='10'/%3E%3Cpath d='M30 30l9 9M15 21h12M21 15v12'/%3E%3C/svg%3E"); }
.kc-process-card:nth-child(2) .kc-process-icon::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='white' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 8v6M24 34v6M8 24h6M34 24h6M12.7 12.7l4.2 4.2M31.1 31.1l4.2 4.2M35.3 12.7l-4.2 4.2M16.9 31.1l-4.2 4.2'/%3E%3Ccircle cx='24' cy='24' r='8'/%3E%3C/svg%3E"); }
.kc-process-card:nth-child(3) .kc-process-icon::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='white' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 34c5-14 10-14 16 0s11 14 16 0'/%3E%3Cpath d='M8 24h32M8 14h32' opacity='.65'/%3E%3Ccircle cx='24' cy='24' r='3'/%3E%3C/svg%3E"); }
.kc-process-card:nth-child(4) .kc-process-icon::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='white' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 8h14l8 8v24H14z'/%3E%3Cpath d='M28 8v10h10M20 29l4 4 9-10'/%3E%3C/svg%3E"); }
/* Service mini icons: same line family in brand blue. */
.kc-service-mini-card:nth-child(1) .kc-service-mini-icon::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%230a5b93' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='22' cy='22' r='12'/%3E%3Cpath d='M31 31l8 8M16 22h12'/%3E%3C/svg%3E"); }
.kc-service-mini-card:nth-child(2) .kc-service-mini-icon::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%230a5b93' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 8l14 8v16l-14 8-14-8V16zM24 8v16l14 8M24 24l-14 8'/%3E%3C/svg%3E"); }
.kc-service-mini-card:nth-child(3) .kc-service-mini-icon::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%230a5b93' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 26l9 9 19-22'/%3E%3Cpath d='M12 40h24' opacity='.55'/%3E%3C/svg%3E"); }

/* Case studies: premium project image sizing; no oversized hero image after click. */
.kc-case-study-grid {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
}
.kc-featured-project-card figure {
  height: 260px !important;
}
.kc-featured-project-card img {
  object-fit: cover !important;
}
.kc-case-visual {
  padding: 56px 0 !important;
}
.kc-case-shell {
  width: min(1120px, calc(100% - 88px)) !important;
  margin: 0 auto !important;
  border-radius: 32px !important;
  overflow: hidden !important;
  background: #eef3f8;
}
.kc-case-shell img {
  width: 100% !important;
  max-height: 540px !important;
  object-fit: cover !important;
  display: block !important;
}
.kc-case-gallery-section {
  padding: 0 0 90px;
  background: linear-gradient(180deg,#f7faff,#eef3f8);
}
.kc-case-gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 18px;
}
.kc-case-gallery-img {
  margin: 0 !important;
  border-radius: 26px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 24px 70px rgba(12,26,46,.10);
}
.kc-case-gallery-img img {
  width: 100%;
  height: 320px !important;
  object-fit: cover;
  display: block;
}

/* Contact form */
.kc-contact-form-section {
  padding: 108px 0;
  background: linear-gradient(180deg,#f7faff,#eef3f8);
}
.kc-contact-form-shell {
  max-width: 980px;
}
.kc-contact-form {
  padding: clamp(28px, 4vw, 48px);
  border-radius: 34px;
  background: #fff;
  border: 1px solid rgba(7,20,38,.08);
  box-shadow: 0 34px 96px rgba(12,26,46,.14);
}
.kc-form-success,
.kc-form-error {
  margin: 0 0 24px;
  padding: 16px 18px;
  border-radius: 18px;
  font-weight: 650;
}
.kc-form-success { background: rgba(52,211,153,.12); color: #067647; }
.kc-form-error { background: rgba(248,113,113,.12); color: #b42318; }
.kc-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 18px;
}
.kc-contact-form label {
  display: grid;
  gap: 8px;
  color: var(--kc-ink);
  font-weight: 760;
}
.kc-contact-form span {
  font-size: .86rem;
  color: #314056;
}
.kc-contact-form input,
.kc-contact-form select,
.kc-contact-form textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(7,20,38,.12);
  border-radius: 16px;
  padding: 14px 15px;
  font: inherit;
  color: var(--kc-ink);
  background: #f8fbff;
  outline: none;
}
.kc-contact-form input:focus,
.kc-contact-form select:focus,
.kc-contact-form textarea:focus {
  border-color: rgba(124,213,255,.8);
  box-shadow: 0 0 0 4px rgba(124,213,255,.18);
}
.kc-contact-form .kc-full {
  grid-column: 1 / -1;
}
.kc-contact-form button {
  margin-top: 24px;
  min-height: 56px;
  border: 0;
  border-radius: 999px;
  padding: 0 28px;
  color: #06101d;
  background: linear-gradient(135deg,#fff,var(--kc-ice));
  font-weight: 850;
  cursor: pointer;
  box-shadow: 0 20px 54px rgba(76,146,255,.28);
}
.kc-contact-form-note {
  margin: 18px 0 0 !important;
  color: var(--kc-light-muted) !important;
  font-size: .94rem;
}

@media(max-width: 680px){
  .kc-quote-card-grid,
  .kc-form-grid { grid-template-columns: 1fr !important; }
  .kc-case-shell { width: min(100% - 36px, 760px) !important; }
  .kc-case-shell img { max-height: 360px !important; }
  .kc-case-gallery-img img { height: 240px !important; }
}


/* =========================================================
   KraftCAD V7.2 — HydroDrag supplied images
   ========================================================= */

/* HydroDrag main case image should show the whole render, not crop it like a wide banner. */
.kc-hydrodrag-main {
  background: radial-gradient(circle at 50% 45%, rgba(124,213,255,.10), transparent 42%), linear-gradient(135deg,#d9dddd,#aeb5b5) !important;
}
.kc-hydrodrag-main img {
  object-fit: contain !important;
  padding: 34px !important;
  background: transparent !important;
}

/* Make the supplied prototype images look intentional and consistent in the gallery. */
.kc-case-gallery-img img[src$="hydrodrag1.webp"],
.kc-case-gallery-img img[src$="hydrodrag3.webp"],
.kc-case-gallery-img img[src$="hydrodrag2.webp"] {
  object-fit: cover !important;
  object-position: center center !important;
}

/* Card thumbnail: keep HydroDrag centered. */
.kc-featured-project-card img[src$="project-hydrodrag.webp"] {
  object-fit: cover !important;
  object-position: center center !important;
}


/* =========================================================
   KraftCAD V7.3 — Case study layout refinement
   ========================================================= */

/* Hero-after project overview: text left, image right */
.kc-case-visual {
  padding: 82px 0 !important;
  background: linear-gradient(180deg,#f7faff,#eef3f8) !important;
}

.kc-case-summary-shell {
  width: min(1480px, calc(100% - 88px));
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, .72fr) minmax(460px, .9fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}

.kc-case-summary-copy h2 {
  margin: 0 !important;
  color: var(--kc-ink) !important;
  font-size: clamp(2.35rem, 3.6vw, 4.8rem);
  line-height: 1;
  letter-spacing: -.055em;
  font-weight: 680;
}

.kc-case-summary-copy p:not(.kc-eyebrow) {
  margin: 22px 0 0 !important;
  color: var(--kc-light-muted) !important;
  font-size: 1.04rem;
  line-height: 1.72;
  font-weight: 300;
  max-width: 680px;
}

.kc-case-summary-image {
  margin: 0 !important;
  justify-self: end;
  width: 100%;
  max-width: 680px;
  border-radius: 34px;
  overflow: hidden;
  background: radial-gradient(circle at 60% 35%, rgba(124,213,255,.18), transparent 40%), linear-gradient(135deg,#07101d,#0d1d31);
  box-shadow: 0 34px 96px rgba(12,26,46,.16);
}

.kc-case-summary-image img {
  width: 100%;
  height: 420px !important;
  object-fit: cover !important;
  display: block;
}

/* HydroDrag uses product/prototype photos; fit them without awkward cropping */
.kc-case-summary-image img[src*="hydrodrag"] {
  object-fit: cover !important;
  object-position: center center !important;
}

/* Remove old numeric badge style; use unboxed minimal icons */
.kc-case-card .num {
  display: none !important;
}

.kc-case-card-icon {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #0a5b93 !important;
  font-size: 2rem !important;
  line-height: 1 !important;
  font-weight: 560 !important;
}

.kc-case-card-icon::before,
.kc-case-card-icon::after {
  display: none !important;
  content: none !important;
}

/* Better case card rhythm after icon removal */
.kc-case-card h2 {
  margin-top: 0 !important;
}

/* Project metric labels: less huge, more premium and readable */
.kc-metric h3 {
  font-size: clamp(1.55rem, 2.4vw, 2.8rem) !important;
  letter-spacing: -.045em !important;
}

.kc-metric p {
  max-width: 260px;
}

/* Case Studies listing CTA */
.kc-featured-project-card .kc-card-cta .wp-block-button__link {
  color: #0a5b93 !important;
}

/* Responsive */
@media (max-width: 1100px) {
  .kc-case-summary-shell {
    grid-template-columns: 1fr;
  }

  .kc-case-summary-image {
    justify-self: start;
    max-width: 100%;
  }

  .kc-case-summary-image img {
    height: 390px !important;
  }
}

@media (max-width: 680px) {
  .kc-case-visual {
    padding: 64px 0 !important;
  }

  .kc-case-summary-shell {
    width: min(100% - 36px, 760px);
    gap: 28px;
  }

  .kc-case-summary-image img {
    height: 300px !important;
  }
}


/* =========================================================
   KraftCAD V7.4 — Header spacing, card icon cleanup, case hero cleanup
   ========================================================= */

/* Header: give breathing room from the WordPress/admin top edge and restore premium right alignment */
.kc-site-nav-wrap {
  padding-top: clamp(18px, 1.5vw, 30px) !important;
}

.kc-nav42 {
  min-height: 74px !important;
  align-items: center !important;
}

.kc-nav42-menu {
  margin-left: auto !important;
  flex: 1 1 auto !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  text-align: right !important;
  gap: 30px !important;
}

.kc-nav42-menu p {
  margin: 0 !important;
}

.kc-nav42-action {
  margin-left: 10px !important;
  flex: 0 0 auto !important;
  align-self: center !important;
}

.kc-nav42-action .wp-block-button__link {
  transform: translateY(0) !important;
}

/* Make sure header is not visually glued to browser/admin bar */
.kc-hero42 .kc-site-nav-wrap,
.kc-page-hero .kc-site-nav-wrap,
.kc-case-hero .kc-site-nav-wrap,
.kc-quote-section .kc-site-nav-wrap {
  padding-top: clamp(20px, 1.6vw, 32px) !important;
}

/* Remove all card logos/icons site-wide */
.kc-process-icon,
.kc-service-mini-icon,
.kc-case-card-icon,
.kc-insight-icon,
.kc-brand-mark,
.kc-case-card .num {
  display: none !important;
}

/* Cards should size according to content, not forced icon layouts */
.kc-process-card,
.kc-service-mini-card,
.kc-case-card,
.kc-insight-card,
.kc-quote-card {
  min-height: 0 !important;
}

.kc-process-card {
  padding: 30px !important;
}

.kc-process-card h3,
.kc-service-mini-card h3,
.kc-case-card h2,
.kc-insight-card h3,
.kc-quote-card h2 {
  margin-top: 0 !important;
}

/* More content-based card structures */
.kc-insight-card {
  display: block !important;
}

.kc-insight-card .kc-card-body {
  padding: 30px !important;
  display: grid !important;
  grid-template-rows: auto auto 1fr auto !important;
}

.kc-premium-service-card {
  grid-template-rows: 250px auto !important;
}

.kc-featured-project-card {
  grid-template-rows: 280px auto !important;
}

.kc-card-body {
  min-height: 0 !important;
}

/* Case detail hero: project name only, compact and confident */
.kc-case-title-wrap {
  padding-top: 54px !important;
  padding-bottom: 62px !important;
}

.kc-case-title-wrap h1 {
  max-width: 980px !important;
  margin: 0 !important;
}

/* If any old lead remains in case hero, hide it */
.kc-case-hero .kc-page-lead,
.kc-case-hero .kc-eyebrow {
  display: none !important;
}

/* Case detail cards after icon removal */
.kc-case-card {
  padding-top: 34px !important;
}

.kc-case-grid {
  align-items: stretch !important;
}

/* Service mini cards after icon removal */
.kc-service-mini-card {
  padding-top: 30px !important;
}

/* Quote cards after logo removal */
.kc-quote-card {
  padding-top: 32px !important;
}

/* Mobile header still comfortable */
@media (max-width: 900px) {
  .kc-site-nav-wrap,
  .kc-hero42 .kc-site-nav-wrap,
  .kc-page-hero .kc-site-nav-wrap,
  .kc-case-hero .kc-site-nav-wrap,
  .kc-quote-section .kc-site-nav-wrap {
    padding-top: 14px !important;
  }

  .kc-nav42 {
    min-height: 70px !important;
  }
}


/* =========================================================
   KraftCAD V7.5 — Desktop header nav alignment only
   ========================================================= */

/* Keep the logo on the left, and group menu links + Request a Quote on the right. */
@media (min-width: 901px) {
  .kc-nav42 {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 30px !important;
  }

  .kc-logo42 {
    flex: 0 0 auto !important;
    margin-right: auto !important;
  }

  .kc-nav42-menu {
    flex: 0 0 auto !important;
    width: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    text-align: right !important;
    gap: 30px !important;
  }

  .kc-nav42-menu p {
    margin: 0 !important;
    width: auto !important;
    flex: 0 0 auto !important;
    text-align: right !important;
  }

  .kc-nav42-action {
    flex: 0 0 auto !important;
    margin-left: 6px !important;
    margin-right: 0 !important;
  }
}


/* =========================================================
   KraftCAD V7.6 — Home hero title locked to 2 lines
   ========================================================= */

/* The title contains one intentional <br>. This prevents each line from
   wrapping internally into 4 lines while keeping the manual 2-line layout. */
.kc-page-home .kc-hero42-copy {
  max-width: 980px !important;
  width: 100% !important;
}

.kc-page-home .kc-hero42-title {
  white-space: nowrap !important;
  max-width: none !important;
  width: max-content !important;
  font-size: clamp(3.85rem, 5.25vw, 7.05rem) !important;
  line-height: .96 !important;
  letter-spacing: -.064em !important;
}

/* Give the text side enough room on desktop so “Generative Design”
   and “& CAD Solutions” stay as two complete lines. */
@media (min-width: 1101px) {
  .kc-page-home .kc-hero42-grid {
    grid-template-columns: minmax(660px, .78fr) minmax(560px, 1fr) !important;
    gap: clamp(36px, 4.8vw, 88px) !important;
  }
}

/* Tablet: still exactly two lines, but smaller. */
@media (max-width: 1100px) {
  .kc-page-home .kc-hero42-title {
    font-size: clamp(3.6rem, 8.2vw, 6rem) !important;
  }
}

/* Mobile: keep it as 2 lines without horizontal overflow. */
@media (max-width: 680px) {
  .kc-page-home .kc-hero42-title {
    font-size: clamp(2.55rem, 10.7vw, 4.25rem) !important;
    letter-spacing: -.058em !important;
    white-space: nowrap !important;
    width: max-content !important;
    max-width: 100% !important;
  }

  .kc-page-home .kc-hero42-copy {
    overflow: visible !important;
  }
}

/* Very narrow phones: preserve 2 lines, reduce slightly. */
@media (max-width: 420px) {
  .kc-page-home .kc-hero42-title {
    font-size: clamp(2.28rem, 10.2vw, 3.4rem) !important;
  }
}


/* =========================================================
   KraftCAD V7.7 — Mobile-only refinement
   Desktop layout is intentionally untouched.
   ========================================================= */

@media (max-width: 900px) {

  /* 1) Premium mobile header: hide desktop links and show clean Menu button */
  .kc-nav42-menu,
  .kc-nav76-menu,
  .kc-nav42-action,
  .kc-nav76-action {
    display: none !important;
  }

  .kc-mobile-menu-button {
    display: flex !important;
    margin-left: auto !important;
  }

  .kc-nav42,
  .kc-nav76 {
    min-height: 72px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
  }

  .kc-logo42 img {
    max-height: 30px !important;
    width: auto !important;
  }

  .kc-menu-open-button .wp-block-button__link {
    min-height: 44px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    color: #06101d !important;
    background: linear-gradient(135deg, #ffffff, var(--kc-ice)) !important;
    font-size: .9rem !important;
    font-weight: 850 !important;
    letter-spacing: -.01em !important;
    box-shadow: 0 18px 44px rgba(76,146,255,.26) !important;
  }

  .kc-mobile-overlay {
    display: none !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 99999 !important;
    padding: 92px 22px 28px !important;
    background:
      radial-gradient(circle at 78% 18%, rgba(124,213,255,.18), transparent 32%),
      linear-gradient(135deg, rgba(5,7,13,.98), rgba(9,20,35,.98)) !important;
    backdrop-filter: blur(22px) !important;
    overflow-y: auto !important;
  }

  .kc-mobile-overlay.is-open {
    display: block !important;
  }

  .kc-mobile-panel {
    width: min(100%, 560px) !important;
    margin: 0 auto !important;
    display: grid !important;
    gap: 10px !important;
  }

  .kc-mobile-panel p {
    margin: 0 !important;
  }

  .kc-mobile-panel a {
    min-height: 56px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 18px !important;
    border-radius: 18px !important;
    color: rgba(248,251,255,.94) !important;
    background: rgba(255,255,255,.055) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    font-size: 1.14rem !important;
    line-height: 1.1 !important;
    font-weight: 750 !important;
    letter-spacing: -.02em !important;
  }

  .kc-mobile-panel a:hover {
    color: #06101d !important;
    background: linear-gradient(135deg, #ffffff, var(--kc-ice)) !important;
  }

  .kc-mobile-close a {
    justify-content: center !important;
    color: var(--kc-ice) !important;
    background: rgba(124,213,255,.08) !important;
  }

  .kc-mobile-quote a {
    justify-content: center !important;
    color: #06101d !important;
    background: linear-gradient(135deg, #ffffff, var(--kc-ice)) !important;
    border-color: rgba(255,255,255,.28) !important;
  }

  body.kc-mobile-open {
    overflow: hidden !important;
  }

  /* 2) Mobile cards: reduce unnecessary vertical emptiness while keeping premium spacing */
  .kc-premium-service-grid,
  .kc-featured-project-grid,
  .kc-insights-grid {
    gap: 18px !important;
  }

  .kc-premium-service-card,
  .kc-featured-project-card,
  .kc-insight-card {
    min-height: 0 !important;
    grid-template-rows: auto auto !important;
    border-radius: 26px !important;
  }

  .kc-premium-service-card figure {
    height: 168px !important;
  }

  .kc-featured-project-card figure {
    height: 190px !important;
  }

  .kc-premium-service-card img,
  .kc-featured-project-card img {
    height: 100% !important;
    object-fit: cover !important;
  }

  .kc-card-body,
  .kc-insight-card .kc-card-body {
    display: block !important;
    min-height: 0 !important;
    padding: 22px !important;
  }

  .kc-card-body .kc-pill {
    margin-bottom: 12px !important;
  }

  .kc-premium-service-card h3,
  .kc-featured-project-card h3,
  .kc-insight-card h3 {
    margin: 0 0 10px !important;
    font-size: clamp(1.22rem, 5.2vw, 1.55rem) !important;
    line-height: 1.14 !important;
  }

  .kc-premium-service-card p,
  .kc-featured-project-card p,
  .kc-insight-card p {
    margin: 0 0 16px !important;
    line-height: 1.52 !important;
  }

  .kc-premium-service-card .wp-block-buttons,
  .kc-featured-project-card .wp-block-buttons,
  .kc-insight-card .wp-block-buttons {
    margin-top: 12px !important;
  }

  /* 3) Featured Engineering Concepts: more efficient mobile section rhythm */
  .kc-projects-section,
  .kc-premium-services,
  .kc-latest-section {
    padding-top: 68px !important;
    padding-bottom: 70px !important;
  }

  .kc-section-head {
    margin-bottom: 26px !important;
    gap: 16px !important;
  }

  .kc-section-head h2 {
    font-size: clamp(2.15rem, 9vw, 3.2rem) !important;
    line-height: 1.02 !important;
  }

  .kc-section-head p {
    font-size: .98rem !important;
    line-height: 1.55 !important;
  }

  /* 4) Latest Insights: keep Video + Blog, hide Tutorial on mobile */
  .kc-latest-section .kc-insights-grid > .kc-insight-card:nth-child(3) {
    display: none !important;
  }

  /* 5) Tool stack is unnecessary on mobile */
  .kc-tool-stack {
    display: none !important;
  }

  /* 6) Remove all subpage hero images on mobile, except Home hero */
  .kc-page:not(.kc-page-home) .kc-page-hero-img {
    display: none !important;
  }

  .kc-page:not(.kc-page-home) .kc-page-hero-grid {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    padding-top: 42px !important;
    padding-bottom: 56px !important;
  }

  .kc-page:not(.kc-page-home) .kc-page-title {
    max-width: 100% !important;
  }

  .kc-page:not(.kc-page-home) .kc-page-lead {
    max-width: 100% !important;
  }

  /* 7) Project Contact mobile: no hero buttons, no hero image, no bottom Start a Project */
  .kc-page-contact .kc-page-hero .kc-hero42-actions,
  .kc-page-contact .kc-page-hero-img {
    display: none !important;
  }

  .kc-page-contact .kc-premium-final-cta {
    display: none !important;
  }

  .kc-page-contact .kc-contact-form-section {
    padding-top: 64px !important;
    padding-bottom: 72px !important;
  }

  /* Keep form usable on phone */
  .kc-contact-form-shell,
  .kc-contact-form {
    width: min(100% - 36px, 760px) !important;
  }

  .kc-contact-form {
    padding: 22px !important;
    border-radius: 26px !important;
  }
}

@media (max-width: 680px) {

  /* Extra tightening for smaller phones */
  .kc-wide-shell,
  .kc-shell,
  .kc-process-shell,
  .kc-projects-shell {
    width: min(100% - 32px, 760px) !important;
  }

  .kc-premium-service-card figure {
    height: 154px !important;
  }

  .kc-featured-project-card figure {
    height: 174px !important;
  }

  .kc-card-body,
  .kc-insight-card .kc-card-body {
    padding: 20px !important;
  }

  .kc-projects-section,
  .kc-premium-services,
  .kc-latest-section {
    padding-top: 58px !important;
    padding-bottom: 60px !important;
  }
}


/* =========================================================
   KraftCAD V7.8 — Mobile header hard fix only
   Desktop layout remains untouched.
   ========================================================= */

/* On mobile, force the header to be only: logo left + Menu button right. */
@media (max-width: 900px) {

  .kc-site-nav-wrap {
    position: relative !important;
    z-index: 10000 !important;
  }

  .kc-nav42,
  .kc-nav76,
  .kc-site-nav-wrap > .wp-block-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    min-height: 72px !important;
    width: min(100% - 32px, 760px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .kc-logo42,
  .kc-site-nav-wrap .kc-logo42 {
    flex: 0 0 auto !important;
    margin: 0 !important;
    z-index: 3 !important;
  }

  .kc-logo42 img {
    max-height: 30px !important;
    width: auto !important;
    display: block !important;
  }

  /* Hide every possible desktop nav/menu group inside the header on mobile. */
  .kc-site-nav-wrap .kc-nav42-menu,
  .kc-site-nav-wrap .kc-nav76-menu,
  .kc-site-nav-wrap .wp-block-navigation,
  .kc-site-nav-wrap nav,
  .kc-site-nav-wrap .kc-nav-link,
  .kc-site-nav-wrap .kc-nav-services,
  .kc-site-nav-wrap .kc-nav-case-studies,
  .kc-site-nav-wrap .kc-nav-videos,
  .kc-site-nav-wrap .kc-nav-blog,
  .kc-site-nav-wrap .kc-nav-about,
  .kc-site-nav-wrap .kc-nav42-action,
  .kc-site-nav-wrap .kc-nav76-action {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  /* But keep the custom mobile menu button visible. */
  .kc-site-nav-wrap .kc-mobile-menu-button,
  .kc-mobile-menu-button {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    pointer-events: auto !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
    z-index: 4 !important;
  }

  .kc-site-nav-wrap .kc-mobile-menu-button .wp-block-button,
  .kc-site-nav-wrap .kc-mobile-menu-button .wp-block-button__link {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  .kc-menu-open-button .wp-block-button__link {
    min-height: 44px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    color: #06101d !important;
    background: linear-gradient(135deg, #ffffff, var(--kc-ice)) !important;
    font-size: .9rem !important;
    font-weight: 850 !important;
    letter-spacing: -.01em !important;
    box-shadow: 0 18px 44px rgba(76,146,255,.26) !important;
    border: 0 !important;
  }

  /* Overlay menu is hidden until JS adds .is-open. */
  .kc-site-nav-wrap .kc-mobile-overlay,
  .kc-mobile-overlay {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: fixed !important;
    inset: 0 !important;
    z-index: 99999 !important;
    padding: 92px 22px 28px !important;
    background:
      radial-gradient(circle at 78% 18%, rgba(124,213,255,.18), transparent 32%),
      linear-gradient(135deg, rgba(5,7,13,.98), rgba(9,20,35,.98)) !important;
    backdrop-filter: blur(22px) !important;
    overflow-y: auto !important;
    pointer-events: none !important;
  }

  .kc-site-nav-wrap .kc-mobile-overlay.is-open,
  .kc-mobile-overlay.is-open {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .kc-mobile-panel {
    width: min(100%, 560px) !important;
    margin: 0 auto !important;
    display: grid !important;
    gap: 10px !important;
  }

  .kc-mobile-panel p {
    margin: 0 !important;
  }

  .kc-mobile-panel a {
    min-height: 56px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 18px !important;
    border-radius: 18px !important;
    color: rgba(248,251,255,.94) !important;
    background: rgba(255,255,255,.055) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    font-size: 1.14rem !important;
    line-height: 1.1 !important;
    font-weight: 750 !important;
    letter-spacing: -.02em !important;
  }

  .kc-mobile-close a {
    justify-content: center !important;
    color: var(--kc-ice) !important;
    background: rgba(124,213,255,.08) !important;
  }

  .kc-mobile-quote a {
    justify-content: center !important;
    color: #06101d !important;
    background: linear-gradient(135deg, #ffffff, var(--kc-ice)) !important;
    border-color: rgba(255,255,255,.28) !important;
  }
}


/* =========================================================
   KraftCAD V7.9 — Mobile menu panel
   Desktop layout remains untouched.
   ========================================================= */

@media (max-width: 900px) {

  /* Header should be only: logo + Menu. No Request Quote button in mobile header. */
  .kc-site-nav-wrap .kc-nav42,
  .kc-site-nav-wrap .kc-nav76,
  .kc-site-nav-wrap > .wp-block-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: min(100% - 32px, 760px) !important;
    min-height: 72px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    gap: 14px !important;
  }

  .kc-logo42 {
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  .kc-logo42 img {
    max-height: 30px !important;
    width: auto !important;
    display: block !important;
  }

  /* Hide desktop navigation and mobile header Request Quote button.
     Keep the actual mobile menu panel links visible later. */
  .kc-site-nav-wrap .kc-nav42-menu,
  .kc-site-nav-wrap .kc-nav76-menu,
  .kc-site-nav-wrap > .wp-block-group > .kc-nav42-menu,
  .kc-site-nav-wrap > .wp-block-group > .kc-nav76-menu,
  .kc-site-nav-wrap > .wp-block-group > .wp-block-navigation,
  .kc-site-nav-wrap > .wp-block-group > nav,
  .kc-site-nav-wrap .kc-nav42-action,
  .kc-site-nav-wrap .kc-nav76-action {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  /* Make sure no Request Quote button remains beside Menu on mobile. */
  .kc-site-nav-wrap > .wp-block-group > .wp-block-buttons:not(.kc-mobile-menu-button),
  .kc-site-nav-wrap .kc-nav42 > .wp-block-buttons:not(.kc-mobile-menu-button),
  .kc-site-nav-wrap .kc-nav76 > .wp-block-buttons:not(.kc-mobile-menu-button) {
    display: none !important;
  }

  /* Show only the Menu button. */
  .kc-site-nav-wrap .kc-mobile-menu-button,
  .kc-mobile-menu-button {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    pointer-events: auto !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }

  .kc-menu-open-button .wp-block-button__link {
    min-height: 42px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    color: #06101d !important;
    background: linear-gradient(135deg, #ffffff, var(--kc-ice)) !important;
    font-size: .9rem !important;
    font-weight: 850 !important;
    letter-spacing: -.01em !important;
    box-shadow: 0 18px 44px rgba(76,146,255,.24) !important;
    border: 0 !important;
  }

  /* Compact corporate dropdown panel, not full-screen overlay. */
  .kc-site-nav-wrap .kc-mobile-overlay,
  .kc-mobile-overlay {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    inset: auto 16px auto 16px !important;
    top: calc(100% + 8px) !important;
    z-index: 99999 !important;
    padding: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
    pointer-events: none !important;
    overflow: visible !important;
  }

  .kc-site-nav-wrap .kc-mobile-overlay.is-open,
  .kc-mobile-overlay.is-open {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .kc-mobile-panel {
    width: min(100%, 420px) !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    padding: 10px !important;
    display: grid !important;
    gap: 4px !important;
    border-radius: 22px !important;
    background:
      radial-gradient(circle at 85% 10%, rgba(124,213,255,.16), transparent 34%),
      rgba(7, 16, 29, .96) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: 0 28px 90px rgba(0,0,0,.42) !important;
    backdrop-filter: blur(18px) !important;
  }

  .kc-mobile-panel p {
    margin: 0 !important;
  }

  .kc-mobile-panel a {
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 14px !important;
    border-radius: 14px !important;
    color: rgba(248,251,255,.92) !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 1rem !important;
    line-height: 1.1 !important;
    font-weight: 720 !important;
    letter-spacing: -.015em !important;
  }

  .kc-mobile-panel a:hover {
    color: #06101d !important;
    background: linear-gradient(135deg, #ffffff, var(--kc-ice)) !important;
  }

  /* Remove the old Close and Request Quote menu items from mobile panel. */
  .kc-mobile-close,
  .kc-mobile-quote {
    display: none !important;
  }

  /* Mobile panel should contain the actual navigation links. Undo previous hard-hide rules for panel items. */
  .kc-mobile-overlay .kc-mobile-nav-link,
  .kc-mobile-overlay .kc-nav-services,
  .kc-mobile-overlay .kc-nav-case-studies,
  .kc-mobile-overlay .kc-nav-videos,
  .kc-mobile-overlay .kc-nav-blog,
  .kc-mobile-overlay .kc-nav-about {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  /* Make the menu feel like a premium product menu. */
  .kc-mobile-overlay .kc-mobile-nav-link a::after {
    content: "→";
    opacity: .38;
    font-weight: 600;
  }

  body.kc-mobile-open {
    overflow: auto !important;
  }
}


/* =========================================================
   KraftCAD V8.0 — Mobile Menu Click Fix
   ========================================================= */

@media (max-width: 900px) {
  .kc-mobile-menu-button,
  .kc-mobile-menu-button *,
  .kc-menu-open-button,
  .kc-menu-open-button *,
  .kc-menu-open-button .wp-block-button__link {
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
    position: relative !important;
    z-index: 100002 !important;
  }

  .kc-mobile-overlay.is-open,
  .kc-mobile-overlay.is-open *,
  .kc-mobile-panel,
  .kc-mobile-panel * {
    pointer-events: auto !important;
  }

  .kc-mobile-overlay:not(.is-open) {
    pointer-events: none !important;
  }

  .kc-mobile-panel {
    transform-origin: top right;
    animation: kcMobilePanelIn .18s ease-out both;
  }

  @keyframes kcMobilePanelIn {
    from {
      opacity: 0;
      transform: translateY(-8px) scale(.985);
    }
    to {
      opacity: 1;
      transform: translateY(0) scale(1);
    }
  }
}


/* =========================================================
   KraftCAD V8.1 — Home hero image clean-up only
   Removes all extra layers behind the drone image.
   Desktop and mobile only affect the home hero visual area.
   ========================================================= */

/* Home hero image container: no card, no tint, no gradient, no line */
.kc-page-home .kc-hero42-visual,
.kc-page-home .kc-hero42-visual.wp-block-group,
.kc-page-home .kc-hero42-visual .wp-block-group,
.kc-page-home .kc-hero42-drone,
.kc-page-home .kc-hero42-drone.wp-block-image,
.kc-page-home .kc-hero42-drone figure {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* Remove every pseudo layer previously used behind the drone */
.kc-page-home .kc-hero42-visual::before,
.kc-page-home .kc-hero42-visual::after,
.kc-page-home .kc-hero42-drone::before,
.kc-page-home .kc-hero42-drone::after,
.kc-page-home .kc-hero42-visual .wp-block-image::before,
.kc-page-home .kc-hero42-visual .wp-block-image::after {
  display: none !important;
  content: none !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Only the image itself remains. No shadow/filter/white line. */
.kc-page-home .kc-hero42-drone img,
.kc-page-home .kc-hero42-visual img {
  display: block !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  filter: none !important;
}

/* Remove possible inline-image baseline gap that can look like a line under the image */
.kc-page-home .kc-hero42-drone {
  line-height: 0 !important;
  font-size: 0 !important;
  overflow: visible !important;
}

.kc-page-home .kc-hero42-visual {
  overflow: visible !important;
}


/* =========================================================
   KraftCAD V8.2 — Cleanup / SEO hygiene only
   ========================================================= */
#comments,
.comments-area,
.comment-respond,
#respond,
#reply-title,
.comment-form,
.comment-list,
.comments-title,
.wp-block-comments,
.wp-block-comment-template,
.wp-block-post-comments,
.wp-block-post-comments-form,
.wp-block-comments-pagination,
.wp-block-latest-comments,
.wp-block-latest-comments__comment,
.jetpack-comment-form,
.jetpack_remote_comment,
div[id*="comment"],
section[class*="comment"],
form[class*="comment"] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.kc-clean-404 {
  min-height: 100vh;
  color: #f8fbff;
  background: radial-gradient(circle at 78% 18%, rgba(124,213,255,.18), transparent 32%), radial-gradient(circle at 20% 8%, rgba(76,146,255,.12), transparent 28%), linear-gradient(135deg, #07101d 0%, #0c1a2d 56%, #101d31 100%);
}
.kc-clean-404-inner { width: min(1120px, calc(100% - 56px)); margin: 0 auto; padding: 140px 0; }
.kc-clean-404 h1 { margin: 0 !important; max-width: 850px; color: #fff !important; font-size: clamp(3.5rem, 7vw, 8rem); line-height: .95; letter-spacing: -.065em; font-weight: 680; }
.kc-clean-404 p { margin: 26px 0 0 !important; max-width: 640px; color: rgba(230,238,248,.78) !important; font-size: 1.08rem; line-height: 1.7; font-weight: 300; }
.kc-clean-404-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.kc-clean-404-actions a { min-height: 52px; display: inline-flex; align-items: center; justify-content: center; padding: 0 22px; border-radius: 999px; font-weight: 850; text-decoration: none; }
.kc-clean-404-primary { color: #06101d !important; background: linear-gradient(135deg, #fff, var(--kc-ice)); box-shadow: 0 20px 54px rgba(76,146,255,.28); }
.kc-clean-404-secondary { color: #fff !important; border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.06); }

/* KraftCAD v1.9.0 conversion and landing-page strengthening */
.kc-conversion-section,
.kc-deliverables-section,
.kc-ads-route-section,
.kc-scope-section,
.kc-proof-section,
.kc-case-proof-section,
.kc-video-feature-section,
.kc-about-method-section,
.kc-secure-payment-section,
.kc-platform-guidance-section{
  padding:108px 0;
  background:linear-gradient(180deg,#07101d,#0d1d31);
  color:#fff;
}
.kc-deliverables-section,
.kc-scope-section,
.kc-case-proof-section,
.kc-platform-guidance-section{
  background:linear-gradient(180deg,#f7faff,#eef3f8);
  color:var(--kc-ink);
}
.kc-conversion-shell h2{
  margin:0!important;
  color:inherit!important;
  font-size:clamp(2.45rem,4.2vw,5.25rem);
  line-height:1;
  letter-spacing:-.055em;
  font-weight:680;
  max-width:980px;
}
.kc-conversion-lead{
  margin:22px 0 0!important;
  max-width:860px;
  color:rgba(255,255,255,.72)!important;
  font-weight:300!important;
  line-height:1.7!important;
  font-size:1.05rem;
}
.kc-deliverables-section .kc-conversion-lead,
.kc-scope-section .kc-conversion-lead,
.kc-case-proof-section .kc-conversion-lead,
.kc-platform-guidance-section .kc-conversion-lead{
  color:var(--kc-light-muted)!important;
}
.kc-conversion-card-grid{
  margin-top:34px!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.kc-scope-section .kc-conversion-card-grid,
.kc-proof-section .kc-conversion-card-grid,
.kc-video-feature-section .kc-conversion-card-grid,
.kc-secure-payment-section .kc-conversion-card-grid,
.kc-platform-guidance-section .kc-conversion-card-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.kc-video-feature-section .kc-conversion-card-grid,
.kc-about-method-section .kc-conversion-card-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.kc-conversion-card{
  min-height:100%;
  padding:28px!important;
  border-radius:28px;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 24px 70px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08);
}
.kc-deliverables-section .kc-conversion-card,
.kc-scope-section .kc-conversion-card,
.kc-case-proof-section .kc-conversion-card,
.kc-platform-guidance-section .kc-conversion-card{
  background:#fff;
  border:1px solid rgba(7,20,38,.08);
  box-shadow:0 24px 70px rgba(12,26,46,.09);
}
.kc-conversion-card h3{
  margin:0 0 12px!important;
  color:inherit!important;
  font-size:1.18rem;
  line-height:1.22;
  letter-spacing:-.03em;
}
.kc-conversion-card p{
  margin:0!important;
  color:rgba(255,255,255,.68)!important;
  line-height:1.62!important;
  font-weight:300!important;
}
.kc-deliverables-section .kc-conversion-card p,
.kc-scope-section .kc-conversion-card p,
.kc-case-proof-section .kc-conversion-card p,
.kc-platform-guidance-section .kc-conversion-card p{
  color:var(--kc-light-muted)!important;
}
.kc-conversion-actions{
  margin-top:34px!important;
}
.kc-quote-card-grid .kc-brand-upwork,
.kc-quote-card-grid .kc-brand-fiverr{
  border-color:rgba(124,213,255,.38)!important;
  box-shadow:0 34px 95px rgba(10,91,147,.16)!important;
}
.kc-contact-form-note{
  max-width:900px;
}
.kc-contact-form label input::placeholder,
.kc-contact-form label textarea::placeholder{
  color:rgba(255,255,255,.42);
}
.kc-footer42 p:first-child{
  letter-spacing:-.01em;
}
@media(max-width:1100px){
  .kc-conversion-card-grid,
  .kc-scope-section .kc-conversion-card-grid,
  .kc-proof-section .kc-conversion-card-grid,
  .kc-video-feature-section .kc-conversion-card-grid,
  .kc-secure-payment-section .kc-conversion-card-grid,
  .kc-platform-guidance-section .kc-conversion-card-grid,
  .kc-about-method-section .kc-conversion-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  .kc-conversion-section,
  .kc-deliverables-section,
  .kc-ads-route-section,
  .kc-scope-section,
  .kc-proof-section,
  .kc-case-proof-section,
  .kc-video-feature-section,
  .kc-about-method-section,
  .kc-secure-payment-section,
  .kc-platform-guidance-section{
    padding:72px 0;
  }
  .kc-conversion-card-grid,
  .kc-scope-section .kc-conversion-card-grid,
  .kc-proof-section .kc-conversion-card-grid,
  .kc-video-feature-section .kc-conversion-card-grid,
  .kc-secure-payment-section .kc-conversion-card-grid,
  .kc-platform-guidance-section .kc-conversion-card-grid,
  .kc-about-method-section .kc-conversion-card-grid{
    grid-template-columns:1fr!important;
  }
}


/* KraftCAD v1.9.1 safe fixes: readable contact form fields and platform CTA buttons */
.kc-contact-form input,
.kc-contact-form select,
.kc-contact-form textarea{
  color:#2f3a4a!important;
  background:#f8fbff!important;
  -webkit-text-fill-color:#2f3a4a!important;
}
.kc-contact-form input::placeholder,
.kc-contact-form textarea::placeholder,
.kc-contact-form label input::placeholder,
.kc-contact-form label textarea::placeholder{
  color:rgba(49,64,86,.58)!important;
  -webkit-text-fill-color:rgba(49,64,86,.58)!important;
}
.kc-contact-form select option{
  color:#2f3a4a!important;
  background:#ffffff!important;
}
.kc-platform-guidance-section .kc-btn-secondary .wp-block-button__link,
.kc-quote-card .kc-btn-secondary .wp-block-button__link,
.kc-conversion-actions .kc-btn-secondary .wp-block-button__link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:54px!important;
  padding:0 24px!important;
  border-radius:999px!important;
  color:#f8fbff!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(124,213,255,.34)!important;
  box-shadow:0 18px 54px rgba(0,0,0,.18)!important;
  font-weight:850!important;
}
.kc-quote-card .kc-btn-primary .wp-block-button__link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:54px!important;
  padding:0 24px!important;
  border-radius:999px!important;
  color:#06101d!important;
  background:linear-gradient(135deg,#fff,var(--kc-ice))!important;
  box-shadow:0 20px 54px rgba(76,146,255,.26)!important;
  font-weight:850!important;
}


/* v1.9.3 premium polish: hide selected hero images and standardize light-surface buttons */
.kc-page-services-overview .kc-page-hero-img,
.kc-page-fea-review .kc-page-hero-img,
.kc-page-cad-dxf.kc-hero-image-disabled .kc-page-hero-img,
.kc-page-videos .kc-page-hero-img,
.kc-page-blog .kc-page-hero-img,
.kc-page-contact .kc-page-hero-img{display:none!important}

.kc-page-services-overview .kc-page-hero-grid,
.kc-page-fea-review .kc-page-hero-grid,
.kc-page-videos .kc-page-hero-grid,
.kc-page-blog .kc-page-hero-grid,
.kc-page-contact .kc-page-hero-grid{
  grid-template-columns:1fr!important;
  min-height:auto!important;
  padding-top:54px!important;
  padding-bottom:78px!important;
}
.kc-page-services-overview .kc-page-title,
.kc-page-fea-review .kc-page-title,
.kc-page-videos .kc-page-title,
.kc-page-blog .kc-page-title,
.kc-page-contact .kc-page-title{max-width:900px!important}
.kc-page-services-overview .kc-page-lead,
.kc-page-fea-review .kc-page-lead,
.kc-page-videos .kc-page-lead,
.kc-page-blog .kc-page-lead,
.kc-page-contact .kc-page-lead{max-width:760px!important}

/* CAD hero visual refinement */
.kc-page-cad-dxf .kc-page-hero-img{margin-left:auto!important}
.kc-page-cad-dxf .kc-page-hero-img img{
  max-height:480px!important;
  width:min(100%,760px)!important;
  object-fit:contain!important;
  border-radius:30px!important;
  background:transparent!important;
  box-shadow:0 36px 96px rgba(7,20,38,.34)!important;
}
.kc-page-cad-dxf .kc-page-hero-grid{
  grid-template-columns:minmax(0,.95fr) minmax(460px,.88fr)!important;
  gap:clamp(28px,4.5vw,68px)!important;
}
.kc-page-fea-review .kc-service-deep-visual img,
.kc-page-cad-dxf .kc-service-deep-visual img{
  padding:0!important;
  height:430px!important;
  object-fit:cover!important;
}
.kc-page-fea-review .kc-service-deep-visual,
.kc-page-cad-dxf .kc-service-deep-visual{background:#081425!important}

/* Premium dark buttons on light surfaces */
.kc-quote-card .kc-btn-primary .wp-block-button__link,
.kc-quote-card .kc-btn-secondary .wp-block-button__link,
.kc-quote-card .kc-card-cta .wp-block-button__link,
.kc-platform-guidance-section .kc-btn-primary .wp-block-button__link,
.kc-platform-guidance-section .kc-btn-secondary .wp-block-button__link,
.kc-secure-payment-section .kc-btn-primary .wp-block-button__link,
.kc-secure-payment-section .kc-btn-secondary .wp-block-button__link,
.kc-conversion-shell .kc-btn-primary .wp-block-button__link,
.kc-conversion-shell .kc-btn-secondary .wp-block-button__link{
  min-height:54px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 24px!important;
  border-radius:999px!important;
  color:#ffffff!important;
  background:linear-gradient(180deg,#132b57 0%, #0b1730 100%)!important;
  border:1px solid rgba(9,24,50,.92)!important;
  box-shadow:0 16px 36px rgba(8,18,40,.18), inset 0 1px 0 rgba(255,255,255,.10)!important;
  font-weight:820!important;
  text-decoration:none!important;
}
.kc-quote-card .kc-card-cta .wp-block-button__link,
.kc-platform-guidance-section .kc-card-cta .wp-block-button__link{padding:0 22px!important}
.kc-quote-card .kc-card-cta .wp-block-button__link::after,
.kc-platform-guidance-section .kc-card-cta .wp-block-button__link::after,
.kc-card-cta .wp-block-button__link:after{content:""!important}
.kc-quote-card .wp-block-button__link:hover,
.kc-platform-guidance-section .wp-block-button__link:hover,
.kc-secure-payment-section .wp-block-button__link:hover,
.kc-conversion-shell .wp-block-button__link:hover{
  transform:translateY(-1px)!important;
  background:linear-gradient(180deg,#18356a 0%, #102141 100%)!important;
  box-shadow:0 20px 44px rgba(8,18,40,.22), inset 0 1px 0 rgba(255,255,255,.10)!important;
}

/* Keep dark-background hero buttons as the light premium style */
.kc-page-hero .kc-hero42-actions .kc-btn-primary .wp-block-button__link,
.kc-page-hero .kc-hero42-actions .kc-btn-secondary .wp-block-button__link,
.kc-nav82-action .kc-btn-primary .wp-block-button__link{
  box-shadow:0 20px 54px rgba(76,146,255,.28)!important;
}

@media(max-width:1100px){
  .kc-page-cad-dxf .kc-page-hero-grid{grid-template-columns:1fr!important}
  .kc-page-cad-dxf .kc-page-hero-img{margin-top:6px!important}
}


/* v1.9.5 refinements */
/* Request Quote 4 cards: unify CTA appearance as premium inline links */
.kc-page-request-quote .kc-quote-card .kc-card-cta .wp-block-button__link,
.kc-page-request-quote .kc-quote-card .kc-card-cta a{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#0f4f86!important;
  padding:0!important;
  min-height:0!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  font-weight:800!important;
  border-radius:0!important;
}
.kc-page-request-quote .kc-quote-card .kc-card-cta .wp-block-button__link::after,
.kc-page-request-quote .kc-quote-card .kc-card-cta a::after{
  content:"→"!important;
  font-weight:800!important;
}
.kc-page-request-quote .kc-quote-card .kc-card-cta .wp-block-button__link:hover,
.kc-page-request-quote .kc-quote-card .kc-card-cta a:hover{
  color:#0a355d!important;
  transform:none!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Contact buttons: stronger dark premium pills on light surface */
.kc-page-contact .kc-platform-guidance-section .kc-btn-primary .wp-block-button__link,
.kc-page-contact .kc-platform-guidance-section .kc-btn-secondary .wp-block-button__link{
  background:linear-gradient(180deg,#143263 0%, #0c1b36 100%)!important;
  color:#fff!important;
  border:1px solid rgba(10,24,49,.95)!important;
  box-shadow:0 18px 40px rgba(8,18,40,.24), inset 0 1px 0 rgba(255,255,255,.12)!important;
}

/* FEA and CAD visuals feel more premium */
.kc-page-fea-review .kc-service-deep-grid,
.kc-page-cad-dxf .kc-service-deep-grid{align-items:center!important}
.kc-page-fea-review .kc-service-deep-visual,
.kc-page-cad-dxf .kc-service-deep-visual{
  border-radius:36px!important;
  overflow:hidden!important;
  box-shadow:0 34px 96px rgba(8,18,40,.22)!important;
}
.kc-page-fea-review .kc-service-deep-visual img,
.kc-page-cad-dxf .kc-service-deep-visual img{display:block!important}


/* v1.9.6 final requested polish */
/* Make sure these pages render without hero images where requested. */
.kc-page-services-overview .kc-page-hero-img,
.kc-page-fea-review .kc-page-hero-img,
.kc-page-contact .kc-page-hero-img,
.kc-page-videos .kc-page-hero-img,
.kc-page-blog .kc-page-hero-img{display:none!important}

.kc-page-services-overview .kc-page-hero-grid,
.kc-page-fea-review .kc-page-hero-grid,
.kc-page-contact .kc-page-hero-grid,
.kc-page-videos .kc-page-hero-grid,
.kc-page-blog .kc-page-hero-grid{
  grid-template-columns:1fr!important;
  min-height:auto!important;
  padding-top:54px!important;
  padding-bottom:76px!important;
}
.kc-page-services-overview .kc-page-title,
.kc-page-fea-review .kc-page-title,
.kc-page-contact .kc-page-title,
.kc-page-videos .kc-page-title,
.kc-page-blog .kc-page-title{max-width:940px!important}
.kc-page-services-overview .kc-page-lead,
.kc-page-fea-review .kc-page-lead,
.kc-page-contact .kc-page-lead,
.kc-page-videos .kc-page-lead,
.kc-page-blog .kc-page-lead{max-width:760px!important}

/* CAD / DXF hero: no hard square card, no white/boxed background. */
.kc-page-cad-dxf .kc-page-hero-grid{
  grid-template-columns:minmax(0,.88fr) minmax(460px,.9fr)!important;
  gap:clamp(30px,4.8vw,76px)!important;
  align-items:center!important;
}
.kc-page-cad-dxf .kc-page-hero-img{margin:0!important;background:transparent!important;box-shadow:none!important;border:0!important;overflow:visible!important}
.kc-page-cad-dxf .kc-page-hero-img img{
  width:100%!important;
  max-height:470px!important;
  object-fit:contain!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 34px 68px rgba(0,0,0,.30))!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%);
}

/* FEA image placement: keep the visual in the content section, not the hero. */
.kc-page-fea-review .kc-service-deep-grid{align-items:center!important;gap:clamp(34px,4.5vw,68px)!important}
.kc-page-fea-review .kc-service-deep-visual,
.kc-page-cad-dxf .kc-service-deep-visual{
  border-radius:34px!important;
  overflow:hidden!important;
  background:#071424!important;
  border:1px solid rgba(7,20,38,.08)!important;
  box-shadow:0 34px 96px rgba(12,26,46,.16)!important;
}
.kc-page-fea-review .kc-service-deep-visual img,
.kc-page-cad-dxf .kc-service-deep-visual img{
  width:100%!important;
  height:430px!important;
  object-fit:cover!important;
  padding:0!important;
  display:block!important;
}

/* Request Quote: all 4 card CTAs match the existing Send Technical Brief / Open LinkedIn text-link style. */
.kc-page-quote .kc-quote-card .wp-block-button__link,
.kc-page-quote .kc-quote-card .kc-btn-primary .wp-block-button__link,
.kc-page-quote .kc-quote-card .kc-btn-secondary .wp-block-button__link,
.kc-page-quote .kc-quote-card .kc-card-cta .wp-block-button__link{
  min-height:0!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  color:#07567f!important;
  font-weight:850!important;
  text-decoration:none!important;
  display:inline!important;
  line-height:1.35!important;
  transform:none!important;
}
.kc-page-quote .kc-quote-card .wp-block-button__link::after{content:" →"!important}
.kc-page-quote .kc-quote-card .wp-block-button__link:hover{color:#0a75ad!important;text-decoration:none!important;box-shadow:none!important;background:transparent!important}

/* Contact page platform CTAs: dark premium buttons that separate from light cards/background. */
.kc-page-contact .kc-platform-guidance-section .kc-conversion-actions .wp-block-button__link,
.kc-page-contact .kc-conversion-shell .kc-conversion-actions .wp-block-button__link{
  min-height:54px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 25px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:linear-gradient(180deg,#173160 0%,#081832 100%)!important;
  border:1px solid rgba(7,20,38,.95)!important;
  box-shadow:0 18px 42px rgba(8,18,40,.24), inset 0 1px 0 rgba(255,255,255,.12)!important;
  font-weight:850!important;
  text-decoration:none!important;
}
.kc-page-contact .kc-platform-guidance-section .kc-conversion-actions .wp-block-button__link:hover,
.kc-page-contact .kc-conversion-shell .kc-conversion-actions .wp-block-button__link:hover{
  background:linear-gradient(180deg,#1d3d73 0%,#0d2144 100%)!important;
  box-shadow:0 22px 50px rgba(8,18,40,.30), inset 0 1px 0 rgba(255,255,255,.14)!important;
}

@media(max-width:1100px){
  .kc-page-cad-dxf .kc-page-hero-grid{grid-template-columns:1fr!important}
  .kc-page-cad-dxf .kc-page-hero-img img{max-height:390px!important}
}
