:root {
  --ksd-ink: #1b0d0a;
  --ksd-ink-soft: #2a1712;
  --ksd-cream: #f3e7d2;
  --ksd-paper: #fbf7ef;
  --ksd-orange: #f36c2d;
  --ksd-orange-bright: #ff7b3d;
  --ksd-tan: #d7b98a;
  --ksd-line: rgba(46, 25, 18, 0.16);
  --ksd-max: 1280px;
}

body.home #masthead,
body.home #colophon,
body.home .entry-header,
body.home .content-area .entry-content-wrap > .entry-header { display: none !important; }
body.home .site-main,
body.home .content-area,
body.home .content-container,
body.home .site-container,
body.home .entry-content-wrap,
body.home .entry-content { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
body.home { background: var(--ksd-paper); }
.ksd-home { overflow: hidden; color: var(--ksd-ink); background: var(--ksd-paper); font-family: Inter, "Segoe UI", Arial, sans-serif; }
.ksd-home *, .ksd-home *::before, .ksd-home *::after { box-sizing: border-box; }
.ksd-home a { color: inherit; text-decoration: none; }
.ksd-home img { display: block; max-width: 100%; }

.ksd-nav { position: absolute; z-index: 10; top: 0; left: 50%; transform: translateX(-50%); width: min(calc(100% - 64px), var(--ksd-max)); height: 96px; display: flex; align-items: center; justify-content: space-between; color: #fff; }
.ksd-brand { display: inline-flex; align-items: center; gap: 10px; min-width: 180px; }
.ksd-brand > span:last-child { display: flex; flex-direction: column; line-height: 1; }
.ksd-brand strong { font-size: 21px; letter-spacing: .14em; }
.ksd-brand small { margin-top: 5px; font-size: 7px; letter-spacing: .2em; opacity: .72; }
.ksd-bean { display: inline-grid; place-items: center; width: 32px; height: 32px; color: var(--ksd-orange); font-size: 31px; transform: rotate(-30deg); }
.ksd-nav-links { display: flex; align-items: center; gap: 36px; margin-left: auto; margin-right: 42px; }
.ksd-nav-links a { font-size: 13px; color: rgba(255,255,255,.78); }
.ksd-nav-links a:hover { color: #fff; }

.ksd-pill { min-height: 54px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; padding: 0 24px; border-radius: 999px; color: #fff !important; background: var(--ksd-orange); font-size: 13px; font-weight: 750; }
.ksd-pill:hover { background: var(--ksd-orange-bright); }
.ksd-pill-small { min-height: 44px; padding: 0 20px; font-size: 12px; }
.ksd-pill-outline { border: 1px solid rgba(255,255,255,.26); background: transparent; }
.ksd-pill-outline:hover { border-color: var(--ksd-orange); background: transparent; color: var(--ksd-orange-bright) !important; }

.ksd-hero { min-height: 820px; position: relative; padding: 150px max(32px, calc((100vw - var(--ksd-max)) / 2)) 100px; color: #fff; background: radial-gradient(circle at 74% 48%, #462117 0, var(--ksd-ink-soft) 29%, var(--ksd-ink) 62%); isolation: isolate; }
.ksd-hero::before { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .7; background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px); background-size: 46px 46px; }
.ksd-hero-grid { min-height: 570px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; }
.ksd-hero-copy { position: relative; z-index: 2; max-width: 720px; }
.ksd-eyebrow { margin: 0 0 24px; display: flex; align-items: center; gap: 12px; color: var(--ksd-orange); font-size: 11px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.ksd-eyebrow > span { width: 34px; height: 2px; background: currentColor; }
.ksd-eyebrow.ksd-dark { color: #a84720; }
.ksd-hero h1 { margin: 0; max-width: 720px; color: #fff; font-size: clamp(64px, 7.2vw, 116px); line-height: .86; letter-spacing: -.062em; text-transform: uppercase; }
.ksd-lead { max-width: 650px; margin: 32px 0 0; color: rgba(255,255,255,.66); font-size: 17px; line-height: 1.72; }
.ksd-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 40px; }
.ksd-hero-visual { position: relative; min-height: 610px; display: grid; place-items: center; }
.ksd-hero-visual::before { content: ""; position: absolute; width: 72%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(243,108,45,.3), transparent 67%); }
.ksd-hero-visual img { position: relative; z-index: 2; width: min(88%, 600px); max-height: 580px; object-fit: contain; filter: drop-shadow(0 42px 40px rgba(0,0,0,.42)); }
.ksd-orbit { position: absolute; width: 600px; height: 600px; border: 1px solid rgba(243,108,45,.16); border-radius: 50%; box-shadow: 0 0 0 90px rgba(215,185,138,.035); }
.ksd-float { position: absolute; z-index: 3; width: 106px; height: 106px; border-radius: 50%; display: flex; flex-direction: column; justify-content: center; align-items: center; background: rgba(31,16,12,.78); border: 1px solid rgba(243,108,45,.36); box-shadow: 0 18px 50px rgba(0,0,0,.22); }
.ksd-float strong { color: #fff; font-size: 23px; }
.ksd-float small { margin-top: 5px; color: var(--ksd-tan); font-size: 8px; letter-spacing: .2em; }
.ksd-float-a { left: 1%; top: 25%; }
.ksd-float-b { right: 0; bottom: 18%; }

.ksd-metrics { display: grid; grid-template-columns: repeat(4, 1fr); padding: 0 max(32px, calc((100vw - var(--ksd-max)) / 2)); background: var(--ksd-cream); }
.ksd-metrics > div { min-height: 150px; padding: 38px 40px; display: flex; flex-direction: column; justify-content: center; border-left: 1px solid var(--ksd-line); }
.ksd-metrics > div:last-child { border-right: 1px solid var(--ksd-line); }
.ksd-metrics strong { font-size: clamp(28px, 3vw, 42px); line-height: 1; letter-spacing: -.045em; }
.ksd-metrics span { margin-top: 13px; color: #806b5d; font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }

.ksd-section { width: min(calc(100% - 64px), var(--ksd-max)); margin: 0 auto; padding: 124px 0; }
.ksd-section-head { display: grid; grid-template-columns: 1fr .63fr; align-items: end; gap: 90px; margin-bottom: 58px; }
.ksd-section h2, .ksd-engineering h2, .ksd-about h2, .ksd-contact h2 { margin: 0; font-size: clamp(42px, 5.1vw, 74px); line-height: 1.02; letter-spacing: -.052em; }
.ksd-engineering h2, .ksd-about h2, .ksd-contact h2 { color: #fff; }
.ksd-section-head > p, .ksd-proof > div > p:last-child { margin: 0 0 6px; color: #77695f; font-size: 17px; line-height: 1.7; }

.ksd-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ksd-product-card { margin: 0; border: 1px solid var(--ksd-line); border-radius: 24px; background: #f6eedf; overflow: hidden; transition: transform .25s ease, box-shadow .25s ease; }
.ksd-product-card:hover { transform: translateY(-5px); box-shadow: 0 20px 50px rgba(63,35,20,.1); }
.ksd-product-image { position: relative; min-height: 360px; display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 50% 44%, #fffdf8 0 21%, #f0dfc7 67%, #e9d1b2 100%); overflow: hidden; }
.ksd-product-image img { width: 88%; height: 315px; object-fit: contain; transition: transform .35s ease; }
.ksd-product-card:hover .ksd-product-image img { transform: scale(1.035); }
.ksd-product-tag { position: absolute; z-index: 2; top: 18px; left: 18px; padding: 8px 11px; border-radius: 999px; background: rgba(255,255,255,.82); border: 1px solid rgba(60,30,15,.1); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ksd-product-copy { padding: 25px 25px 28px; }
.ksd-product-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.ksd-product-heading h3 { margin: 0; font-size: 25px; letter-spacing: -.03em; }
.ksd-product-heading span { color: var(--ksd-orange); font-size: 19px; }
.ksd-product-copy > p { min-height: 66px; margin: 12px 0 20px; color: #75665c; font-size: 14px; line-height: 1.55; }
.ksd-product-copy ul { margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 7px; list-style: none; }
.ksd-product-copy li { padding: 7px 9px; border: 1px solid rgba(69,41,26,.11); border-radius: 999px; color: #694f3e; font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }

.ksd-engineering { min-height: 850px; display: grid; grid-template-columns: 1fr 1fr; color: #fff; background: var(--ksd-ink); }
.ksd-engineering-visual { position: relative; min-height: 740px; display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 44% 47%, #5c2b1d 0, #2d1611 45%, #1b0d0a 76%); overflow: hidden; }
.ksd-engineering-visual::before { content: ""; position: absolute; width: 580px; height: 580px; border: 1px solid rgba(243,108,45,.2); border-radius: 50%; box-shadow: 0 0 0 90px rgba(215,185,138,.025); }
.ksd-engineering-visual img { position: relative; z-index: 2; width: min(76%, 550px); max-height: 620px; object-fit: contain; filter: drop-shadow(0 38px 34px rgba(0,0,0,.38)); }
.ksd-vertical { position: absolute; left: 34px; top: 50%; transform: translate(-44%, -50%) rotate(-90deg); color: rgba(255,255,255,.28); font-size: 9px; letter-spacing: .22em; }
.ksd-engineering-copy { align-self: center; padding: 110px clamp(50px, 7vw, 118px); }
.ksd-feature-list { margin-top: 44px; }
.ksd-feature-list article { display: grid; grid-template-columns: 48px 1fr; gap: 18px; padding: 22px 0; border-top: 1px solid rgba(255,255,255,.12); }
.ksd-feature-list article > span { color: var(--ksd-orange); font-size: 10px; font-weight: 800; }
.ksd-feature-list h3 { margin: 0 0 8px; color: #fff; font-size: 16px; }
.ksd-feature-list p { margin: 0; color: rgba(255,255,255,.5); font-size: 13px; line-height: 1.62; }

.ksd-process { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--ksd-line); border-bottom: 1px solid var(--ksd-line); }
.ksd-process article { min-height: 250px; padding: 32px; border-right: 1px solid var(--ksd-line); }
.ksd-process article:last-child { border-right: 0; }
.ksd-process article > span { color: var(--ksd-orange); font-size: 11px; font-weight: 800; }
.ksd-process h3 { margin: 64px 0 12px; font-size: 22px; }
.ksd-process p { margin: 0; color: #796b61; font-size: 13px; line-height: 1.65; }
.ksd-moq { margin-top: 22px; min-height: 235px; padding: 50px 58px; display: flex; align-items: center; justify-content: space-between; gap: 40px; color: #fff; border-radius: 26px; background: linear-gradient(120deg, #2b1510, #1b0d0a); overflow: hidden; }
.ksd-moq small { color: var(--ksd-orange); font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.ksd-moq h3 { max-width: 500px; margin: 10px 0 0; color: #fff; font-size: 29px; }
.ksd-moq-values { display: flex; align-items: center; gap: 32px; }
.ksd-moq-values p { margin: 0; min-width: 150px; display: flex; flex-direction: column; }
.ksd-moq-values strong { color: #fff; font-size: 42px; letter-spacing: -.05em; }
.ksd-moq-values span { margin-top: 7px; color: rgba(255,255,255,.5); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.ksd-moq-values i { width: 1px; height: 66px; background: rgba(255,255,255,.18); }

.ksd-about { min-height: 850px; display: grid; grid-template-columns: .9fr 1.1fr; color: #fff; background: #24110d; }
.ksd-about-copy { padding: 130px clamp(50px, 7vw, 118px) 120px max(32px, calc((100vw - var(--ksd-max)) / 2)); }
.ksd-timeline { margin-top: 42px; border-top: 1px solid rgba(255,255,255,.12); }
.ksd-timeline > div { display: grid; grid-template-columns: 86px 1fr; gap: 24px; padding: 22px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.ksd-timeline strong { color: var(--ksd-orange); font-size: 20px; }
.ksd-timeline span { color: rgba(255,255,255,.48); font-size: 12px; line-height: 1.6; }
.ksd-timeline b { display: block; margin-bottom: 4px; color: #fff; font-size: 14px; }
.ksd-factory { position: relative; min-height: 780px; overflow: hidden; }
.ksd-factory-main { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.05); }
.ksd-factory-team { position: absolute; z-index: 2; right: 8%; bottom: 8%; width: 46%; aspect-ratio: 4/3; object-fit: cover; border: 7px solid #24110d; }
.ksd-stamp { position: absolute; z-index: 3; left: 8%; bottom: 8%; width: 132px; height: 132px; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--ksd-ink); background: var(--ksd-cream); transform: rotate(-7deg); }
.ksd-stamp strong { font-size: 10px; letter-spacing: .12em; }
.ksd-stamp small { margin-top: 4px; font-size: 7px; letter-spacing: .16em; }

.ksd-proof { display: grid; grid-template-columns: .64fr 1.36fr; gap: 100px; align-items: center; }
.ksd-certificates { min-height: 440px; display: flex; align-items: center; justify-content: center; position: relative; }
.ksd-certificates::before { content: ""; position: absolute; width: 78%; height: 70%; border-radius: 50%; background: rgba(243,108,45,.1); filter: blur(45px); }
.ksd-certificates img { position: relative; width: 29%; max-height: 390px; object-fit: contain; background: #fff; border: 8px solid #fff; box-shadow: 0 24px 50px rgba(48,27,15,.16); }
.ksd-certificates img:first-child { transform: rotate(-7deg) translateX(12px); }
.ksd-certificates img:nth-child(2) { z-index: 2; width: 34%; transform: translateY(-10px); }
.ksd-certificates img:last-child { transform: rotate(7deg) translateX(-12px); }

.ksd-contact { min-height: 680px; display: grid; grid-template-columns: 1.08fr .92fr; gap: 100px; align-items: center; padding: 120px max(32px, calc((100vw - var(--ksd-max)) / 2)); color: #fff; background: radial-gradient(circle at 100% 100%, #412016 0, var(--ksd-ink) 46%); }
.ksd-contact-card { padding: 42px; border: 1px solid rgba(255,255,255,.14); border-radius: 24px; background: rgba(255,255,255,.055); }
.ksd-contact-card > small { display: block; margin-bottom: 30px; color: var(--ksd-orange); font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.ksd-contact-card > div { display: grid; gap: 7px; padding: 21px 0; border-top: 1px solid rgba(255,255,255,.12); }
.ksd-contact-card strong { color: #fff; font-size: 18px; }
.ksd-contact-card a { width: fit-content; color: rgba(255,255,255,.57); font-size: 13px; }
.ksd-footer { min-height: 126px; padding: 30px max(32px, calc((100vw - var(--ksd-max)) / 2)); display: flex; align-items: center; justify-content: space-between; gap: 30px; color: #fff; background: #110806; border-top: 1px solid rgba(255,255,255,.08); }
.ksd-footer p, .ksd-footer > span { margin: 0; color: rgba(255,255,255,.38); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }

.single-ksd_product .entry-content-wrap { border-radius: 24px; }
.single-ksd_product .post-thumbnail { padding: 32px; border-radius: 24px; background: #f3e7d2; }
.single-ksd_product .post-thumbnail img { max-height: 680px; width: 100%; object-fit: contain; }
.single-ksd_product .entry-title { letter-spacing: -.04em; }
.ksd-product-detail-media { margin: 0 0 42px; padding: 30px; border-radius: 24px; background: radial-gradient(circle at 50% 44%, #fffdf8 0 21%, #f0dfc7 67%, #e9d1b2 100%); }
.ksd-product-detail-media img { width: 100%; max-height: 680px; object-fit: contain; }
.ksd-product-intro { font-size: 19px; line-height: 1.7; color: #6f5d52; }
.ksd-spec-table table { border-collapse: separate; border-spacing: 0; overflow: hidden; border: 1px solid var(--ksd-line); border-radius: 18px; }
.ksd-spec-table th { width: 34%; color: var(--ksd-ink); text-align: left; background: #f3e7d2; }
.ksd-spec-table th, .ksd-spec-table td { padding: 15px 18px; border-color: var(--ksd-line); }
.single-ksd_product .wp-block-button__link { background: var(--ksd-orange); }

@media (max-width: 960px) {
  .ksd-nav-links { display: none; }
  .ksd-hero-grid { grid-template-columns: 1.12fr .88fr; }
  .ksd-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ksd-engineering, .ksd-about { grid-template-columns: 1fr; }
  .ksd-engineering-copy, .ksd-about-copy { padding: 90px 48px; }
  .ksd-process { grid-template-columns: repeat(2, 1fr); }
  .ksd-process article:nth-child(2) { border-right: 0; }
  .ksd-process article:nth-child(-n+2) { border-bottom: 1px solid var(--ksd-line); }
  .ksd-proof { grid-template-columns: 1fr; gap: 50px; }
  .ksd-contact { grid-template-columns: 1fr; gap: 50px; }
}

@media (max-width: 640px) {
  .ksd-nav { width: calc(100% - 32px); height: 78px; }
  .ksd-nav .ksd-pill-small { display: none; }
  .ksd-brand { min-width: 0; }
  .ksd-hero { min-height: 900px; padding: 120px 20px 80px; }
  .ksd-hero-grid { display: block; }
  .ksd-hero h1 { font-size: 54px; }
  .ksd-lead { font-size: 16px; }
  .ksd-hero-visual { min-height: 390px; margin-top: 10px; opacity: .82; }
  .ksd-orbit { width: 390px; height: 390px; }
  .ksd-float { display: none; }
  .ksd-actions { flex-direction: column; align-items: stretch; max-width: 330px; }
  .ksd-metrics { grid-template-columns: repeat(2, 1fr); padding: 0; }
  .ksd-metrics > div { min-height: 122px; padding: 28px 22px; border-bottom: 1px solid var(--ksd-line); }
  .ksd-section { width: calc(100% - 40px); padding: 78px 0; }
  .ksd-section-head { grid-template-columns: 1fr; gap: 24px; }
  .ksd-section h2, .ksd-engineering h2, .ksd-about h2, .ksd-contact h2 { font-size: 42px; }
  .ksd-product-grid { grid-template-columns: 1fr; }
  .ksd-product-image { min-height: 330px; }
  .ksd-product-image img { height: 290px; }
  .ksd-engineering-visual { min-height: 520px; }
  .ksd-engineering-copy, .ksd-about-copy { padding: 78px 20px; }
  .ksd-process { grid-template-columns: 1fr; }
  .ksd-process article { min-height: 210px; border-right: 0; border-bottom: 1px solid var(--ksd-line); }
  .ksd-process article:last-child { border-bottom: 0; }
  .ksd-process h3 { margin-top: 42px; }
  .ksd-moq { padding: 38px 28px; flex-direction: column; align-items: flex-start; }
  .ksd-moq-values { gap: 18px; }
  .ksd-moq-values p { min-width: 108px; }
  .ksd-moq-values strong { font-size: 34px; }
  .ksd-factory { min-height: 590px; }
  .ksd-factory-team { width: 58%; right: 5%; }
  .ksd-certificates { min-height: 300px; }
  .ksd-certificates img { border-width: 4px; }
  .ksd-contact { padding: 80px 20px; }
  .ksd-contact-card { padding: 28px; }
  .ksd-footer { padding: 34px 20px; align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .ksd-home *, .ksd-home *::before, .ksd-home *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
