/* Shop detail design: deliberately scoped to keep other theme pages intact. */
body.knsd-store-page { margin: 0; background: #fff; }
.knsd-store-site {
  --knsd-green: #075447;
  --knsd-deep: #073e38;
  --knsd-ink: #253339;
  --knsd-muted: #53616c;
  --knsd-gold: #9a8738;
  --knsd-border: #e5e4dd;
  --knsd-paper: #f9f8f3;
  --knsd-sage: #f1f6ee;
  --knsd-serif: "Noto Serif JP", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
  position: relative;
  width: 100%;
  color: var(--knsd-ink);
  background: #fff;
  font: 400 16px/1.7 "Noto Sans JP", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-align: left;
  overflow-wrap: anywhere;
  isolation: isolate;
}
.knsd-store-site *, .knsd-store-site *::before, .knsd-store-site *::after { box-sizing: border-box; }
.knsd-store-site :where(h1,h2,h3,p,ul,ol,dl,dd,figure) { margin: 0; }
.knsd-store-site :where(ul,ol) { padding: 0; list-style: none; }
.knsd-store-site :where(h1,h2,h3) { clear: none; border: 0; padding: 0; background: none; box-shadow: none; }
.knsd-store-site :where(h1,h2,h3)::before, .knsd-store-site :where(h1,h2,h3)::after { content: none; }
.knsd-store-site :where(h1,h2) { font-family: var(--knsd-serif); font-weight: 700; color: var(--knsd-deep); letter-spacing: .035em; }
.knsd-store-site :where(h2) { font-size: 30px; line-height: 1.4; }
.knsd-store-site :where(h3) { font-size: 19px; font-weight: 700; line-height: 1.45; color: var(--knsd-deep); }
.knsd-store-site :where(a) { color: var(--knsd-green); text-decoration: none; box-shadow: none; transition: color .18s, background .18s, opacity .18s, transform .18s; }
.knsd-store-site :where(a:hover) { color: var(--knsd-deep); }
.knsd-store-site :where(button,input) { margin: 0; font: inherit; }
.knsd-store-site :where(button) { cursor: pointer; }
.knsd-store-site :where(a,button,input,summary):focus-visible { outline: 3px solid #bf962f; outline-offset: 4px; }
.knsd-store-site :where(img) { display: block; max-width: 100%; height: auto; border: 0; border-radius: 0; box-shadow: none; }
.knsd-store-site :where(svg) { width: 1em; height: 1em; display: block; flex: none; }
.knsd-store-site [hidden] { display: none !important; }
.knsd-store-site .knsd-container { width: 90.4%; max-width: 1180px; margin-inline: auto; }
.knsd-store-site .knsd-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; clip: rect(0,0,0,0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; border: 0; }
.knsd-store-site .knsd-skip-link { position: absolute; top: -120px; left: 16px; padding: 12px 20px; z-index: 99999; background: #fff; border: 2px solid var(--knsd-green); }
.knsd-store-site .knsd-skip-link:focus { top: 12px; }
.knsd-store-site .knsd-header { background: rgba(255,255,255,.98); border-bottom: 1px solid var(--knsd-border); box-shadow: 0 3px 14px #18382e08; }
.knsd-store-site .knsd-header__inner { display: flex; justify-content: space-between; align-items: center; min-height: 82px; gap: 30px; }
.knsd-store-site .knsd-brand { display: inline-flex; align-items: center; gap: 10px; flex: none; color: var(--knsd-deep); }
.knsd-store-site .knsd-brand__mark { color: var(--knsd-green); font-size: 61px; display: block; line-height: 1; }
.knsd-store-site .knsd-brand__mark svg { width: 1em; height: .88em; }
.knsd-store-site .knsd-brand__text { display: flex; flex-direction: column; }
.knsd-store-site .knsd-brand__text strong { font-family: var(--knsd-serif); font-size: 29px; letter-spacing: .055em; line-height: 1.25; }
.knsd-store-site .knsd-brand__text small { font-size: 11px; font-weight: 600; letter-spacing: .09em; line-height: 1.6; }
.knsd-store-site .knsd-header-nav { display: flex; gap: 30px; align-items: center; }
.knsd-store-site .knsd-header-nav > a { color: var(--knsd-deep); font-size: 15px; font-weight: 700; white-space: nowrap; }
.knsd-store-site .knsd-header-nav > a:hover { text-decoration: underline; text-underline-offset: 6px; }
.knsd-store-site .knsd-search-toggle, .knsd-store-site .knsd-menu-toggle { display: flex; justify-content: center; align-items: center; width: 38px; height: 38px; padding: 4px; color: var(--knsd-deep); background: transparent; border: 0; border-radius: 3px; }
.knsd-store-site .knsd-search-toggle svg, .knsd-store-site .knsd-menu-toggle svg { width: 28px; height: 28px; }
.knsd-store-site .knsd-menu-toggle { display: none; }
.knsd-store-site .knsd-search-panel { padding-block: 18px; background: var(--knsd-sage); border-top: 1px solid var(--knsd-border); }
.knsd-store-site .knsd-search-form { display: flex; align-items: stretch; gap: 10px; }
.knsd-store-site .knsd-search-form input { width: 100%; min-width: 0; border: 1px solid #cdd6ce; border-radius: 4px; padding: 10px 14px; color: var(--knsd-ink); background: #fff; }
.knsd-store-site .knsd-search-form button { flex: none; padding-inline: 26px; }
.knsd-store-site .knsd-breadcrumb-wrap { background: linear-gradient(180deg,#f9f8f4,#fff); }
.knsd-store-site .knsd-breadcrumb { display: flex; flex-wrap: wrap; gap: 9px; padding-block: 10px 13px; font-size: 13px; line-height: 1.5; }
.knsd-store-site .knsd-breadcrumb a { text-decoration: underline; text-underline-offset: 3px; }
.knsd-store-site .knsd-breadcrumb [aria-current] { color: var(--knsd-ink); }
.knsd-store-site .knsd-shop-heading { padding-block: 13px 10px; }
.knsd-store-site .knsd-labels { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 5px; }
.knsd-store-site .knsd-label { display: inline-flex; align-items: center; justify-content: center; min-height: 26px; padding: 2px 18px; border-radius: 30px; font-size: 13px; font-weight: 700; line-height: 1.4; }
.knsd-store-site .knsd-label--green { color: #fff; background: linear-gradient(110deg,#08715b,#06483e); }
.knsd-store-site .knsd-label--ivory { color: #504b37; background: #f1ecdc; }
.knsd-store-site .knsd-shop-heading h1 { font-size: clamp(30px,3.9vw,48px); line-height: 1.35; margin: 0; }
.knsd-store-site .knsd-shop-lead { font-size: 17px; line-height: 1.7; margin-top: 3px; }
.knsd-store-site .knsd-hero { display: grid; grid-template-columns: minmax(0,1.72fr) minmax(0,1fr); align-items: stretch; gap: 30px; padding-bottom: 14px; }
.knsd-store-site .knsd-hero--no-image { grid-template-columns: 1fr; }
.knsd-store-site .knsd-shop-photo { margin: 0; aspect-ratio: 1.27; border: 1px solid #dddcd6; border-radius: 5px; overflow: hidden; background: #f8f8f5; }
.knsd-store-site .knsd-shop-photo > img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.knsd-store-site .knsd-summary { display: flex; flex-direction: column; min-width: 0; padding: 16px; border: 1px solid var(--knsd-border); border-radius: 6px; background: linear-gradient(115deg,#faf9f4,#fcfbf8); }
.knsd-store-site .knsd-summary h2 { font-size: 29px; line-height: 1.4; margin: 0 0 6px; }
.knsd-store-site .knsd-summary-table { font-size: 15px; line-height: 1.65; margin-bottom: 14px; }
.knsd-store-site .knsd-summary-table > div { display: grid; grid-template-columns: 76px 1fr; gap: 10px; padding: 8px 5px; border-top: 1px solid #e2e3dd; }
.knsd-store-site .knsd-summary-table > div:last-child { border-bottom: 1px solid #e2e3dd; }
.knsd-store-site .knsd-summary-table dt { font-weight: 600; }
.knsd-store-site .knsd-summary-table dd { margin: 0; min-width: 0; }
.knsd-store-site .knsd-summary__actions { display: grid; gap: 10px; }
.knsd-store-site .knsd-button { display: inline-flex; gap: 10px; align-items: center; justify-content: center; min-height: 46px; padding: 10px 18px; border: 1px solid var(--knsd-green); border-radius: 4px; background: var(--knsd-green); color: #fff; font-size: 16px; font-weight: 700; line-height: 1.4; text-align: center; }
.knsd-store-site .knsd-button svg { width: 17px; height: 17px; }
.knsd-store-site .knsd-button:hover { color: #fff; background: #043e34; }
.knsd-store-site .knsd-button--outline { color: var(--knsd-green); background: #fff; }
.knsd-store-site .knsd-button--outline:hover { color: var(--knsd-green); background: #edf5ee; }
.knsd-store-site .knsd-phone { display: flex; align-items: center; justify-content: center; gap: 18px; min-height: 86px; padding: 9px 12px; border: 1px solid #084c3e; border-radius: 5px; background: linear-gradient(115deg,#087152,#063d37); color: #fff; box-shadow: inset 0 1px 2px #ffffff18; }
.knsd-store-site .knsd-phone:hover { color: #fff; background: #064537; }
.knsd-store-site .knsd-phone__icon svg { width: 41px; height: 41px; }
.knsd-store-site .knsd-phone__body { display: flex; flex-direction: column; align-items: center; line-height: 1.2; }
.knsd-store-site .knsd-phone__label { font-size: 17px; font-weight: 700; }
.knsd-store-site .knsd-phone strong { font-family: Arial,"Noto Sans JP",sans-serif; font-size: clamp(23px,2.4vw,35px); font-weight: 700; white-space: nowrap; letter-spacing: .02em; line-height: 1.35; }
.knsd-store-site .knsd-map-link { display: flex; gap: 8px; align-items: center; justify-content: center; padding: 13px 0 10px; color: var(--knsd-green); font-size: 14px; font-weight: 700; line-height: 1.45; text-decoration: underline; text-underline-offset: 3px; }
.knsd-store-site .knsd-map-link > span:first-child svg { width: 23px; height: 23px; }
.knsd-store-site .knsd-services { margin-top: auto; border-top: 1px solid var(--knsd-border); padding-top: 14px; }
.knsd-store-site .knsd-services > p { margin-bottom: 10px; font-size: 14px; font-weight: 600; }
.knsd-store-site .knsd-services ul { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.knsd-store-site .knsd-services li { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 6px; min-height: 78px; padding: 9px 2px; border: 1px solid var(--knsd-border); border-radius: 5px; background: #fff; text-align: center; font-size: 12px; font-weight: 600; line-height: 1.4; }
.knsd-store-site .knsd-services svg { width: 30px; height: 30px; color: var(--knsd-gold); }
.knsd-store-site .knsd-services .knsd-service--parking svg { color: var(--knsd-green); }
.knsd-store-site .knsd-section-nav-wrap { border-bottom: 1px solid #d9e0dc; }
.knsd-store-site .knsd-section-nav { display: flex; align-items: stretch; justify-content: center; overflow-x: auto; scrollbar-width: thin; padding-top: 0; }
.knsd-store-site .knsd-section-nav a { position: relative; flex: 1; max-width: 225px; padding: 12px 14px 11px; color: #43525a; font-size: 15px; font-weight: 600; line-height: 1.4; text-align: center; white-space: nowrap; border-bottom: 3px solid transparent; }
.knsd-store-site .knsd-section-nav a:first-child, .knsd-store-site .knsd-section-nav a.is-active { color: var(--knsd-green); border-bottom-color: var(--knsd-green); }
.knsd-store-site .knsd-section-nav.has-active a:first-child:not(.is-active) { color: #43525a; border-bottom-color: transparent; }
.knsd-store-site .knsd-section-nav a:hover { color: var(--knsd-green); background: #f5f8f4; }
.knsd-store-site .knsd-detail-content { padding-top: 22px; padding-bottom: 14px; }
.knsd-store-site .knsd-section { margin-bottom: 23px; scroll-margin-top: 22px; }
.knsd-store-site .knsd-section h2 { margin: 0 0 8px; }
.knsd-store-site .knsd-overview-grid { display: grid; grid-template-columns: minmax(0,2.3fr) minmax(0,1fr); gap: 24px; align-items: start; scroll-margin-top: 22px; }
.knsd-store-site .knsd-overview-grid--wide { display: block; }
.knsd-store-site .knsd-overview { margin-bottom: 22px; }
.knsd-store-site .knsd-prose { font-size: 16px; line-height: 1.8; }
.knsd-store-site .knsd-prose > * + * { margin-top: 10px; }
.knsd-store-site .knsd-prose :where(h2,h3,h4) { margin-top: 22px; color: var(--knsd-deep); font-weight: 700; }
.knsd-store-site .knsd-prose h2 { font-size: 25px; }
.knsd-store-site .knsd-prose h3 { font-size: 20px; }
.knsd-store-site .knsd-prose h4 { font-size: 17px; }
.knsd-store-site .knsd-prose a { text-decoration: underline; text-underline-offset: 3px; }
.knsd-store-site .knsd-prose :where(ul,ol) { padding-left: 1.6em; list-style: revert; }
.knsd-store-site .knsd-prose li + li { margin-top: 4px; }
.knsd-store-site .knsd-prose :where(table) { width: 100%; border-collapse: collapse; font-size: 14px; }
.knsd-store-site .knsd-prose :where(td,th) { border: 1px solid var(--knsd-border); padding: 8px; }
.knsd-store-site .knsd-prose :where(iframe,video) { max-width: 100%; }
.knsd-store-site .knsd-prose blockquote { margin: 16px 0; padding: 10px 16px; border-left: 3px solid #9aa997; background: #f5f7f2; color: #40534b; }
.knsd-store-site .knsd-prose .aligncenter { margin-inline: auto; }
.knsd-store-site .knsd-prose .wp-caption { max-width: 100%; }
.knsd-store-site .knsd-prose .wp-caption-text { font-size: 12px; color: var(--knsd-muted); }
.knsd-store-site .knsd-contact-aside { padding: 16px; border: 1px solid #e2e7df; border-radius: 5px; background: linear-gradient(110deg,#f1f6ef,#f7f8f2); }
.knsd-store-site .knsd-contact-aside h2 { font-size: 20px; line-height: 1.45; margin: 0 0 12px; text-align: center; }
.knsd-store-site .knsd-aside-phone { display: flex; justify-content: center; align-items: center; gap: 12px; margin-bottom: 15px; color: var(--knsd-deep); }
.knsd-store-site .knsd-aside-phone > span:first-child svg { width: 38px; height: 38px; }
.knsd-store-site .knsd-aside-phone > span:last-child { display: flex; flex-direction: column; }
.knsd-store-site .knsd-aside-phone strong { color: #112b2e; font: 700 clamp(22px,2.4vw,34px)/1.2 Arial,sans-serif; white-space: nowrap; letter-spacing: .01em; }
.knsd-store-site .knsd-aside-phone small { font-size: 15px; line-height: 1.4; }
.knsd-store-site .knsd-contact-aside .knsd-button { width: 100%; font-size: 15px; }
.knsd-store-site .knsd-contact-aside .knsd-map-link { font-size: 13px; padding-bottom: 0; }
.knsd-store-site .knsd-items { margin-bottom: 12px; }
.knsd-store-site .knsd-item-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; }
.knsd-store-site .knsd-item-grid li { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 105px; padding: 8px 5px 6px; border: 1px solid var(--knsd-border); border-radius: 5px; background: linear-gradient(110deg,#faf9f4,#f8f7f3); text-align: center; font-size: 14px; line-height: 1.4; }
.knsd-store-site .knsd-item-grid__icon { margin-bottom: 3px; color: #927a29; }
.knsd-store-site .knsd-item-grid__icon svg { width: 62px; height: 62px; }
.knsd-store-site .knsd-item-grid__image { display: flex; align-items: center; justify-content: center; height: 65px; margin-bottom: 3px; }
.knsd-store-site .knsd-item-grid__image img { max-width: 90px; max-height: 65px; object-fit: contain; }
.knsd-store-site .knsd-item-grid__photo { display: block; width: 70px; height: 70px; flex: none; margin-bottom: 3px; background-image: url(category-sprite.png); background-size: 400% 400%; background-repeat: no-repeat; }
.knsd-store-site .knsd-category-photo--gold { background-position: 0 0; }
.knsd-store-site .knsd-category-photo--jewelry { background-position: 33.3333% 0; }
.knsd-store-site .knsd-category-photo--brand { background-position: 66.6667% 0; }
.knsd-store-site .knsd-category-photo--watch { background-position: 100% 0; }
.knsd-store-site .knsd-category-photo--stamps { background-position: 0 33.3333%; }
.knsd-store-site .knsd-category-photo--coins { background-position: 33.3333% 33.3333%; }
.knsd-store-site .knsd-category-photo--camera { background-position: 66.6667% 33.3333%; }
.knsd-store-site .knsd-category-photo--antiques { background-position: 100% 33.3333%; }
.knsd-store-site .knsd-category-photo--electronics { background-position: 0 66.6667%; }
.knsd-store-site .knsd-category-photo--furniture { background-position: 33.3333% 66.6667%; }
.knsd-store-site .knsd-category-photo--clothing { background-position: 66.6667% 66.6667%; }
.knsd-store-site .knsd-category-photo--toys { background-position: 100% 66.6667%; }
.knsd-store-site .knsd-category-photo--instruments { background-position: 0 100%; }
.knsd-store-site .knsd-category-photo--kimono { background-position: 33.3333% 100%; }
.knsd-store-site .knsd-category-photo--liquor { background-position: 66.6667% 100%; }
.knsd-store-site .knsd-category-photo--tickets { background-position: 100% 100%; }
.knsd-store-site .knsd-item-notes { margin: 0 0 24px; }
.knsd-store-site .knsd-item-notes dl { border: 1px solid var(--knsd-border); border-radius: 4px; overflow: hidden; font-size: 14px; line-height: 1.65; }
.knsd-store-site .knsd-item-notes dl > div { display: grid; grid-template-columns: 205px 1fr; border-bottom: 1px solid #e9e9e2; }
.knsd-store-site .knsd-item-notes dl > div:last-child { border-bottom: 0; }
.knsd-store-site .knsd-item-notes dt { color: var(--knsd-deep); padding: 7px 22px; background: #f5f5ef; font-weight: 700; }
.knsd-store-site .knsd-item-notes dd { padding: 7px 20px; }
.knsd-store-site .knsd-fineprint { margin-top: 6px; font-size: 12px; line-height: 1.6; color: var(--knsd-muted); }
.knsd-store-site .knsd-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.knsd-store-site .knsd-feature-grid li { display: flex; align-items: center; gap: 20px; min-width: 0; padding: 14px 20px; border: 1px solid var(--knsd-border); border-radius: 5px; background: linear-gradient(120deg,#faf9f4,#fbfaf7); }
.knsd-store-site .knsd-feature-grid__icon { color: var(--knsd-gold); flex: none; }
.knsd-store-site .knsd-feature-grid__icon svg { width: 55px; height: 55px; }
.knsd-store-site .knsd-feature-grid h3 { font-family: var(--knsd-serif); font-size: 20px; margin-bottom: 3px; }
.knsd-store-site .knsd-feature-grid p { font-size: 14px; line-height: 1.55; }
.knsd-store-site .knsd-method-note { margin-top: 9px; font-size: 15px; line-height: 1.7; }
.knsd-store-site .knsd-flow-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 35px; }
.knsd-store-site .knsd-flow-grid li { position: relative; display: flex; align-items: flex-start; gap: 14px; padding: 15px 13px; border: 1px solid var(--knsd-border); border-radius: 4px; }
.knsd-store-site .knsd-flow-grid li + li::before { content: ''; position: absolute; left: -26px; top: calc(50% - 6px); width: 13px; height: 13px; transform: rotate(-45deg); border-right: 2px solid var(--knsd-green); border-bottom: 2px solid var(--knsd-green); }
.knsd-store-site .knsd-step-number { display: flex; justify-content: center; align-items: center; width: 46px; height: 46px; flex: none; margin-top: -7px; background: linear-gradient(135deg,#08765c,#064a3f); color: #fff; border-radius: 50%; font: 700 23px/1 Georgia,serif; letter-spacing: .02em; }
.knsd-store-site .knsd-flow-grid__icon { flex: none; color: var(--knsd-green); margin-top: -3px; }
.knsd-store-site .knsd-flow-grid__icon svg { width: 35px; height: 35px; }
.knsd-store-site .knsd-flow-grid h3 { font-size: 17px; margin-bottom: 5px; }
.knsd-store-site .knsd-flow-grid p { font-size: 14px; line-height: 1.65; }
.knsd-store-site .knsd-access-grid { display: grid; grid-template-columns: minmax(0,1.32fr) minmax(0,1fr); align-items: start; gap: 25px; }
.knsd-store-site .knsd-access-grid--wide { display: block; }
.knsd-store-site .knsd-info-table { border: 1px solid #d9dedb; font-size: 14px; line-height: 1.6; }
.knsd-store-site .knsd-info-table > div { display: grid; grid-template-columns: 130px minmax(0,1fr); border-bottom: 1px solid #e1e3df; }
.knsd-store-site .knsd-info-table > div:last-child { border-bottom: 0; }
.knsd-store-site .knsd-info-table dt { padding: 7px 17px; background: #f3f3ee; font-weight: 600; }
.knsd-store-site .knsd-info-table dd { padding: 7px 18px; }
.knsd-store-site .knsd-info-table a { text-decoration: underline; text-underline-offset: 3px; }
.knsd-store-site .knsd-map-embed { position: relative; overflow: hidden; border: 1px solid var(--knsd-border); border-radius: 4px; height: 202px; background: #f3f4ee; }
.knsd-store-site .knsd-map-embed iframe { width: 100%; height: 100%; border: 0; display: block; }
.knsd-store-site .knsd-access-map > .knsd-button { position: relative; display: flex; width: max-content; max-width: calc(100% - 30px); margin: -45px auto 0; min-height: 43px; padding: 8px 22px; z-index: 1; font-size: 15px; box-shadow: 0 1px 5px #142f2210; }
.knsd-store-site .knsd-access-map:not(:has(.knsd-map-embed)) > .knsd-button { margin-top: 0; width: 100%; max-width: 100%; min-height: 80px; background: #f3f7ef; }
.knsd-store-site .knsd-access-map .knsd-fineprint { margin-top: 8px; }
.knsd-store-site .knsd-access-note { margin: -14px 0 23px; font-size: 14px; line-height: 1.8; }
.knsd-store-site .knsd-faq { margin-top: 2px; }
.knsd-store-site .knsd-faq details { border: 1px solid var(--knsd-border); border-radius: 4px; background: linear-gradient(120deg,#faf9f5,#fff); margin-bottom: 6px; overflow: hidden; }
.knsd-store-site .knsd-faq summary { display: flex; align-items: center; gap: 18px; padding: 8px 18px; cursor: pointer; color: var(--knsd-green); font-size: 15px; font-weight: 700; line-height: 1.5; list-style: none; }
.knsd-store-site .knsd-faq summary::-webkit-details-marker { display: none; }
.knsd-store-site .knsd-faq__letter { flex: none; width: 25px; text-align: center; font: 700 25px/1.1 Arial,sans-serif; }
.knsd-store-site .knsd-faq__chevron { margin-left: auto; }
.knsd-store-site .knsd-faq__chevron svg { width: 17px; height: 17px; transition: transform .2s; }
.knsd-store-site .knsd-faq details[open] .knsd-faq__chevron { transform: rotate(180deg); }
.knsd-store-site .knsd-faq__answer { display: flex; gap: 18px; padding: 0 18px 11px; align-items: flex-start; font-size: 14px; line-height: 1.7; }
.knsd-store-site .knsd-faq__answer > .knsd-faq__letter { color: #647079; }
.knsd-store-site .knsd-reviews > ul { display: grid; gap: 12px; }
.knsd-store-site .knsd-reviews li { padding: 17px 20px; border: 1px solid var(--knsd-border); border-radius: 5px; background: #fafaf7; }
.knsd-store-site .knsd-review-summary { margin-bottom: 12px; }
.knsd-store-site .knsd-review-summary strong { color: var(--knsd-green); font-size: 26px; }
.knsd-store-site .knsd-review-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-bottom: 5px; font-size: 13px; color: var(--knsd-muted); }
.knsd-store-site .knsd-review-meta strong { color: var(--knsd-green); }
.knsd-store-site .knsd-articles-section { padding: 21px 0 25px; background: linear-gradient(110deg,#eef5ec,#f5f9f2); }
.knsd-store-site .knsd-articles-section h2 { font-size: 29px; margin: 0 0 2px; }
.knsd-store-site .knsd-articles-intro { font-size: 15px; color: var(--knsd-deep); margin-bottom: 11px; }
.knsd-store-site .knsd-article-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.knsd-store-site .knsd-article-card { min-width: 0; border: 1px solid #e1e7dd; border-radius: 4px; background: #fff; overflow: hidden; }
.knsd-store-site .knsd-article-card__link { display: flex; height: 100%; flex-direction: column; color: var(--knsd-ink); }
.knsd-store-site .knsd-article-card__link:hover { color: var(--knsd-ink); background: #fcfdf9; }
.knsd-store-site .knsd-article-card__image { overflow: hidden; aspect-ratio: 2.36; }
.knsd-store-site .knsd-article-card__image--placeholder { display: grid; place-items: center; color: #919c86; background: linear-gradient(135deg,#e9eee3,#f4f5ee); }
.knsd-store-site .knsd-article-card__image--placeholder svg { width: 50px; height: 50px; }
.knsd-store-site .knsd-article-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.knsd-store-site .knsd-article-card__link:hover .knsd-article-card__image img { transform: scale(1.025); }
.knsd-store-site .knsd-article-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 9px 16px 13px; }
.knsd-store-site .knsd-article-tag { display: inline-block; padding: 1px 9px; background: #f0f1e8; color: var(--knsd-green); border-radius: 20px; font-size: 12px; font-weight: 700; line-height: 1.5; margin-bottom: 5px; }
.knsd-store-site .knsd-article-card h3 { font-family: var(--knsd-serif); font-size: 18px; line-height: 1.45; margin: 0 0 6px; }
.knsd-store-site .knsd-article-card p { font-size: 14px; line-height: 1.6; color: var(--knsd-muted); margin-bottom: 9px; }
.knsd-store-site .knsd-read-more { display: flex; gap: 8px; margin-top: auto; padding-top: 2px; color: var(--knsd-green); font-size: 14px; font-weight: 700; }
.knsd-store-site .knsd-bottom-cta { padding-block: 15px; background: linear-gradient(110deg,#edf3e7,#f4f7ef,#edf3e7); }
.knsd-store-site .knsd-bottom-cta__inner { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 25px; padding-inline: 40px; }
.knsd-store-site .knsd-bottom-cta__inner::before, .knsd-store-site .knsd-bottom-cta__inner::after { content: ''; position: absolute; top: 50%; left: 0; width: 26px; height: 77px; transform: translateY(-50%); background: center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 84'%3E%3Cpath d='M24 81C6 61 5 31 18 3' fill='none' stroke='%239a8738' stroke-width='1.4'/%3E%3Cpath d='M17 10C12 8 13 3 18 1c1 4 1 7-1 9M14 19C7 18 6 13 8 10c5 1 7 4 6 9M11 29C4 27 3 22 4 18c5 2 8 6 7 11M9 40C2 37 1 32 2 28c5 3 8 7 7 12M10 51C3 49 1 43 2 39c5 3 8 7 8 12M13 62C5 59 3 53 4 49c5 4 9 8 9 13M18 73C10 72 6 66 7 61c6 3 10 7 11 12M15 19C20 18 23 13 21 9c-5 2-7 6-6 10M12 30C18 28 21 23 19 19c-5 2-8 6-7 11M11 41C17 37 19 32 17 28c-5 3-7 8-6 13M12 52C18 47 20 42 17 38c-5 4-7 9-5 14M15 64C21 59 23 53 20 49c-4 4-7 10-5 15M20 75C25 69 26 64 23 60c-4 5-6 10-3 15' fill='%23aa9648'/%3E%3C/svg%3E"); }
.knsd-store-site .knsd-bottom-cta__inner::after { right: 0; left: auto; transform: translateY(-50%) scaleX(-1); }
.knsd-store-site .knsd-bottom-cta__copy { min-width: 0; }
.knsd-store-site .knsd-bottom-cta__copy h2 { font-size: 25px; margin: 0 0 2px; letter-spacing: .02em; }
.knsd-store-site .knsd-bottom-cta__copy p { font-size: 14px; color: var(--knsd-deep); }
.knsd-store-site .knsd-bottom-cta__actions { display: grid; grid-template-columns: minmax(240px,1.25fr) minmax(200px,1fr); align-items: start; gap: 0 18px; flex: 1; max-width: 570px; }
.knsd-store-site .knsd-bottom-cta__actions:has(> .knsd-phone:only-child), .knsd-store-site .knsd-bottom-cta__actions:not(:has(> .knsd-phone)) { display: flex; justify-content: flex-end; }
.knsd-store-site .knsd-bottom-cta__actions:has(> .knsd-phone):not(:has(> .knsd-official)) { display: grid; grid-template-columns: 1fr; max-width: 310px; }
.knsd-store-site .knsd-phone--compact { min-height: 57px; padding: 3px 14px; gap: 14px; }
.knsd-store-site .knsd-phone--compact .knsd-phone__icon svg { width: 30px; height: 30px; }
.knsd-store-site .knsd-phone--compact .knsd-phone__label { font-size: 13px; }
.knsd-store-site .knsd-phone--compact strong { font-size: 25px; line-height: 1.2; }
.knsd-store-site .knsd-bottom-cta__actions > .knsd-button { min-height: 49px; margin-top: 4px; font-size: 15px; }
.knsd-store-site .knsd-bottom-cta__hours { grid-column: 1; text-align: center; font-size: 13px; line-height: 1.4; color: var(--knsd-deep); margin-top: 3px; }
.knsd-store-site .knsd-back { padding: 12px 18px; text-align: center; }
.knsd-store-site .knsd-back .knsd-button { min-height: 39px; min-width: 250px; padding: 5px 20px; font-size: 15px; }
.knsd-store-site .knsd-footer { padding-block: 20px; color: #fff; background: linear-gradient(100deg,#075243,#024439); }
.knsd-store-site .knsd-footer__inner { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px 30px; }
.knsd-store-site .knsd-brand--footer { color: #fff; gap: 8px; }
.knsd-store-site .knsd-brand--footer .knsd-brand__mark { color: #fff; font-size: 43px; }
.knsd-store-site .knsd-brand--footer .knsd-brand__text strong { font-size: 21px; }
.knsd-store-site .knsd-brand--footer .knsd-brand__text small { font-size: 8px; }
.knsd-store-site .knsd-footer nav { display: flex; flex-wrap: wrap; gap: 8px 0; }
.knsd-store-site .knsd-footer nav a { display: block; color: #fff; font-size: 11px; line-height: 1.2; padding-inline: 12px; border-right: 1px solid #ffffff80; }
.knsd-store-site .knsd-footer nav a:last-child { border-right: 0; }
.knsd-store-site .knsd-footer nav a:hover { text-decoration: underline; }
.knsd-store-site .knsd-footer__inner > small { font-size: 11px; }
.knsd-store-site .knsd-mobile-contact { display: none; }

@media (max-width: 1120px) {
  .knsd-store-site .knsd-container { width: 90.4%; }
  .knsd-store-site .knsd-header__inner { min-height: 70px; gap: 15px; }
  .knsd-store-site .knsd-brand__mark { font-size: 49px; }
  .knsd-store-site .knsd-brand__text strong { font-size: 25px; }
  .knsd-store-site .knsd-brand__text small { font-size: 9px; }
  .knsd-store-site .knsd-header-nav { gap: 22px; }
  .knsd-store-site .knsd-header-nav > a { font-size: 13px; }
  .knsd-store-site .knsd-hero { gap: 24px; }
  .knsd-store-site .knsd-summary { padding: 14px; }
  .knsd-store-site .knsd-summary h2 { font-size: 26px; }
  .knsd-store-site .knsd-summary-table { font-size: 13px; }
  .knsd-store-site .knsd-summary-table > div { grid-template-columns: 65px 1fr; gap: 7px; padding: 6px 3px; }
  .knsd-store-site .knsd-phone { gap: 12px; min-height: 75px; }
  .knsd-store-site .knsd-phone__icon svg { width: 34px; height: 34px; }
  .knsd-store-site .knsd-phone__label { font-size: 15px; }
  .knsd-store-site .knsd-summary .knsd-button { min-height: 42px; font-size: 15px; }
  .knsd-store-site .knsd-services { padding-top: 10px; }
  .knsd-store-site .knsd-services li { min-height: 68px; font-size: 10px; }
  .knsd-store-site .knsd-services ul { gap: 5px; }
  .knsd-store-site .knsd-services svg { width: 27px; height: 27px; }
  .knsd-store-site .knsd-overview-grid { gap: 20px; }
  .knsd-store-site .knsd-contact-aside { padding: 13px; }
  .knsd-store-site .knsd-contact-aside h2 { font-size: 17px; }
  .knsd-store-site .knsd-aside-phone { gap: 7px; }
  .knsd-store-site .knsd-aside-phone > span:first-child svg { width: 30px; height: 30px; }
  .knsd-store-site .knsd-contact-aside .knsd-button { font-size: 13px; padding-inline: 7px; }
  .knsd-store-site .knsd-contact-aside .knsd-map-link { font-size: 11px; gap: 5px; }
  .knsd-store-site .knsd-feature-grid li { padding: 12px 14px; gap: 13px; }
  .knsd-store-site .knsd-feature-grid__icon svg { width: 44px; height: 44px; }
  .knsd-store-site .knsd-feature-grid h3 { font-size: 17px; }
  .knsd-store-site .knsd-feature-grid p { font-size: 13px; }
  .knsd-store-site .knsd-flow-grid { gap: 25px; }
  .knsd-store-site .knsd-flow-grid li { gap: 10px; padding: 13px 10px; }
  .knsd-store-site .knsd-flow-grid li + li::before { left: -19px; width: 10px; height: 10px; }
  .knsd-store-site .knsd-step-number { width: 38px; height: 38px; font-size: 20px; }
  .knsd-store-site .knsd-flow-grid__icon svg { width: 29px; height: 29px; }
  .knsd-store-site .knsd-flow-grid h3 { font-size: 15px; }
  .knsd-store-site .knsd-flow-grid p { font-size: 12px; }
  .knsd-store-site .knsd-bottom-cta__inner { padding-inline: 32px; }
  .knsd-store-site .knsd-bottom-cta__copy h2 { font-size: 22px; }
  .knsd-store-site .knsd-bottom-cta__copy p { font-size: 12px; }
  .knsd-store-site .knsd-bottom-cta__actions { grid-template-columns: minmax(210px,1.2fr) minmax(160px,1fr); max-width: 460px; gap: 0 12px; }
  .knsd-store-site .knsd-phone--compact { min-height: 53px; padding-inline: 9px; gap: 9px; }
  .knsd-store-site .knsd-phone--compact strong { font-size: 23px; }
  .knsd-store-site .knsd-bottom-cta__actions > .knsd-button { font-size: 13px; padding-inline: 10px; }
}

@media (max-width: 800px) {
  .knsd-store-site { font-size: 14px; }
  .knsd-store-site .knsd-container { width: 90.4%; }
  .knsd-store-site .knsd-header__inner { min-height: 63px; }
  .knsd-store-site .knsd-brand__mark { font-size: 43px; }
  .knsd-store-site .knsd-brand__text strong { font-size: 23px; }
  .knsd-store-site .knsd-header-nav { gap: 18px; }
  .knsd-store-site .knsd-header-nav > a { font-size: 11px; }
  .knsd-store-site .knsd-search-toggle { width: 29px; }
  .knsd-store-site .knsd-search-toggle svg { width: 25px; height: 25px; }
  .knsd-store-site .knsd-shop-heading h1 { font-size: 33px; }
  .knsd-store-site .knsd-shop-lead { font-size: 15px; }
  .knsd-store-site .knsd-hero { gap: 20px; grid-template-columns: minmax(0,1.72fr) minmax(0,1fr); }
  .knsd-store-site .knsd-hero--no-image { grid-template-columns: 1fr; }
  .knsd-store-site .knsd-summary { padding: 10px; }
  .knsd-store-site .knsd-summary h2 { font-size: 21px; line-height: 1.25; margin-bottom: 4px; }
  .knsd-store-site .knsd-summary-table { font-size: 10.5px; margin-bottom: 10px; }
  .knsd-store-site .knsd-summary-table > div { grid-template-columns: 54px 1fr; gap: 5px; padding: 5px 0; }
  .knsd-store-site .knsd-phone { gap: 8px; min-height: 56px; padding-inline: 8px; }
  .knsd-store-site .knsd-phone__icon svg { width: 29px; height: 29px; }
  .knsd-store-site .knsd-phone__label { font-size: 12px; }
  .knsd-store-site .knsd-phone strong { font-size: 24px; letter-spacing: 0; }
  .knsd-store-site .knsd-summary .knsd-button { font-size: 13px; min-height: 33px; padding: 6px; }
  .knsd-store-site .knsd-summary__actions { gap: 7px; }
  .knsd-store-site .knsd-summary .knsd-map-link { padding: 8px 0; font-size: 11px; gap: 5px; }
  .knsd-store-site .knsd-services { padding-top: 9px; }
  .knsd-store-site .knsd-services > p { font-size: 11px; margin-bottom: 7px; }
  .knsd-store-site .knsd-services li { min-height: 55px; padding: 6px 1px; font-size: 9px; gap: 4px; }
  .knsd-store-site .knsd-services svg { width: 23px; height: 23px; }
  .knsd-store-site .knsd-section-nav a { font-size: 13px; padding-inline: 9px; }
  .knsd-store-site :where(h2) { font-size: 25px; }
  .knsd-store-site .knsd-overview-grid { grid-template-columns: minmax(0,2.3fr) minmax(0,1fr); gap: 17px; }
  .knsd-store-site .knsd-prose { font-size: 14px; }
  .knsd-store-site .knsd-contact-aside { padding: 12px; }
  .knsd-store-site .knsd-contact-aside h2 { font-size: 15px; }
  .knsd-store-site .knsd-aside-phone strong { font-size: 23px; }
  .knsd-store-site .knsd-aside-phone small { font-size: 12px; }
  .knsd-store-site .knsd-aside-phone > span:first-child svg { width: 27px; height: 27px; }
  .knsd-store-site .knsd-contact-aside .knsd-button { font-size: 12px; min-height: 36px; }
  .knsd-store-site .knsd-contact-aside .knsd-map-link { font-size: 10px; }
  .knsd-store-site .knsd-item-grid li { min-height: 92px; font-size: 12px; }
  .knsd-store-site .knsd-item-grid__icon svg { width: 52px; height: 52px; }
  .knsd-store-site .knsd-item-grid__photo { width: 58px; height: 58px; }
  .knsd-store-site .knsd-item-notes dl { font-size: 12px; }
  .knsd-store-site .knsd-item-notes dl > div { grid-template-columns: 155px 1fr; }
  .knsd-store-site .knsd-item-notes dt, .knsd-store-site .knsd-item-notes dd { padding: 6px 14px; }
  .knsd-store-site .knsd-fineprint { font-size: 11px; }
  .knsd-store-site .knsd-feature-grid { gap: 10px; }
  .knsd-store-site .knsd-feature-grid li { padding: 11px 13px; gap: 12px; }
  .knsd-store-site .knsd-feature-grid__icon svg { width: 40px; height: 40px; }
  .knsd-store-site .knsd-feature-grid h3 { font-size: 16px; }
  .knsd-store-site .knsd-feature-grid p { font-size: 12px; }
  .knsd-store-site .knsd-method-note { font-size: 13px; }
  .knsd-store-site .knsd-flow-grid li { gap: 10px; padding: 13px 9px; }
  .knsd-store-site .knsd-flow-grid__icon svg { width: 27px; height: 27px; }
  .knsd-store-site .knsd-step-number { width: 36px; height: 36px; font-size: 19px; }
  .knsd-store-site .knsd-flow-grid h3 { font-size: 14px; }
  .knsd-store-site .knsd-flow-grid p { font-size: 11px; }
  .knsd-store-site .knsd-access-grid { gap: 18px; }
  .knsd-store-site .knsd-info-table { font-size: 12px; }
  .knsd-store-site .knsd-info-table > div { grid-template-columns: 95px 1fr; }
  .knsd-store-site .knsd-info-table dt, .knsd-store-site .knsd-info-table dd { padding: 6px 12px; }
  .knsd-store-site .knsd-map-embed { height: 175px; }
  .knsd-store-site .knsd-access-map > .knsd-button { font-size: 13px; min-height: 37px; margin-top: -39px; padding: 7px 16px; }
  .knsd-store-site .knsd-faq summary { font-size: 13px; padding: 7px 14px; gap: 13px; }
  .knsd-store-site .knsd-faq__answer { font-size: 12px; padding: 0 14px 9px; gap: 13px; }
  .knsd-store-site .knsd-faq__letter { font-size: 22px; }
  .knsd-store-site .knsd-articles-section h2 { font-size: 25px; }
  .knsd-store-site .knsd-articles-intro { font-size: 13px; }
  .knsd-store-site .knsd-article-grid { gap: 12px; }
  .knsd-store-site .knsd-article-card__body { padding: 8px 12px 10px; }
  .knsd-store-site .knsd-article-card h3 { font-size: 15px; }
  .knsd-store-site .knsd-article-card p, .knsd-store-site .knsd-read-more { font-size: 12px; }
  .knsd-store-site .knsd-article-tag { font-size: 10px; }
  .knsd-store-site .knsd-bottom-cta__inner { gap: 15px; padding-inline: 30px; }
  .knsd-store-site .knsd-bottom-cta__inner::before, .knsd-store-site .knsd-bottom-cta__inner::after { width: 21px; height: 62px; }
  .knsd-store-site .knsd-bottom-cta__copy h2 { font-size: 17px; }
  .knsd-store-site .knsd-bottom-cta__copy p { font-size: 11px; }
  .knsd-store-site .knsd-bottom-cta__actions { grid-template-columns: minmax(190px,1.15fr) minmax(145px,1fr); gap: 0 10px; max-width: 360px; }
  .knsd-store-site .knsd-phone--compact { min-height: 47px; gap: 8px; padding-inline: 8px; }
  .knsd-store-site .knsd-phone--compact strong { font-size: 20px; }
  .knsd-store-site .knsd-phone--compact .knsd-phone__label { font-size: 10px; }
  .knsd-store-site .knsd-phone--compact .knsd-phone__icon svg { width: 24px; height: 24px; }
  .knsd-store-site .knsd-bottom-cta__actions > .knsd-button { min-height: 38px; font-size: 11px; padding-inline: 8px; }
  .knsd-store-site .knsd-bottom-cta__hours { font-size: 11px; }
  .knsd-store-site .knsd-footer__inner { gap: 16px; }
  .knsd-store-site .knsd-footer nav a { font-size: 10px; padding-inline: 8px; }
  .knsd-store-site .knsd-footer__inner > small { font-size: 10px; }
}

@media (max-width: 680px) {
  .knsd-store-site { padding-bottom: calc(66px + env(safe-area-inset-bottom)); }
  .knsd-store-site .knsd-container { width: calc(100% - 32px); }
  .knsd-store-site .knsd-header__inner { min-height: 65px; flex-wrap: wrap; gap: 0; }
  .knsd-store-site .knsd-brand { gap: 7px; }
  .knsd-store-site .knsd-brand__mark { font-size: 42px; }
  .knsd-store-site .knsd-brand__text strong { font-size: 23px; }
  .knsd-store-site .knsd-brand__text small { font-size: 9px; }
  .knsd-store-site .knsd-menu-toggle { display: flex; }
  .knsd-store-site .knsd-header-nav { display: none; flex-basis: 100%; flex-wrap: wrap; justify-content: center; gap: 0; padding-block: 8px 14px; }
  .knsd-store-site .knsd-header-nav.is-open { display: flex; }
  .knsd-store-site .knsd-header-nav > a { display: block; padding: 10px 12px; font-size: 12px; }
  .knsd-store-site .knsd-search-panel { padding-block: 12px; }
  .knsd-store-site .knsd-search-form button { padding-inline: 15px; min-height: 42px; font-size: 13px; }
  .knsd-store-site .knsd-breadcrumb { font-size: 11px; gap: 7px; padding-block: 10px; }
  .knsd-store-site .knsd-shop-heading { padding-top: 9px; padding-bottom: 13px; }
  .knsd-store-site .knsd-label { font-size: 11px; min-height: 23px; padding-inline: 13px; }
  .knsd-store-site .knsd-labels { gap: 8px; margin-bottom: 7px; }
  .knsd-store-site .knsd-shop-heading h1 { font-size: 29px; line-height: 1.45; letter-spacing: .02em; }
  .knsd-store-site .knsd-shop-lead { font-size: 14px; margin-top: 7px; }
  .knsd-store-site .knsd-hero { display: flex; flex-direction: column; gap: 14px; }
  .knsd-store-site .knsd-shop-photo { aspect-ratio: 1.27; }
  .knsd-store-site .knsd-summary { padding: 17px; }
  .knsd-store-site .knsd-summary h2 { font-size: 26px; line-height: 1.4; margin-bottom: 6px; }
  .knsd-store-site .knsd-summary-table { font-size: 14px; margin-bottom: 13px; }
  .knsd-store-site .knsd-summary-table > div { grid-template-columns: 75px 1fr; gap: 13px; padding: 8px 3px; }
  .knsd-store-site .knsd-phone { min-height: 76px; gap: 17px; }
  .knsd-store-site .knsd-phone__icon svg { width: 37px; height: 37px; }
  .knsd-store-site .knsd-phone__label { font-size: 15px; }
  .knsd-store-site .knsd-phone strong { font-size: 31px; }
  .knsd-store-site .knsd-summary .knsd-button { min-height: 44px; font-size: 15px; }
  .knsd-store-site .knsd-summary .knsd-map-link { font-size: 13px; padding-block: 13px; }
  .knsd-store-site .knsd-services { padding-top: 12px; }
  .knsd-store-site .knsd-services > p { font-size: 13px; }
  .knsd-store-site .knsd-services ul { gap: 8px; }
  .knsd-store-site .knsd-services li { min-height: 72px; font-size: 11px; gap: 6px; }
  .knsd-store-site .knsd-services svg { width: 29px; height: 29px; }
  .knsd-store-site .knsd-section-nav { width: 100%; justify-content: flex-start; padding-inline: 12px; }
  .knsd-store-site .knsd-section-nav a { flex: none; padding: 14px 16px 11px; font-size: 13px; }
  .knsd-store-site .knsd-detail-content { padding-top: 23px; }
  .knsd-store-site :where(h2) { font-size: 23px; line-height: 1.45; }
  .knsd-store-site .knsd-section { margin-bottom: 26px; }
  .knsd-store-site .knsd-section h2 { margin-bottom: 10px; }
  .knsd-store-site .knsd-overview-grid { display: block; }
  .knsd-store-site .knsd-contact-aside { display: none; }
  .knsd-store-site .knsd-overview { margin-bottom: 24px; }
  .knsd-store-site .knsd-prose { font-size: 14px; line-height: 1.9; }
  .knsd-store-site .knsd-prose h2 { font-size: 21px; }
  .knsd-store-site .knsd-prose h3 { font-size: 18px; }
  .knsd-store-site .knsd-item-grid { gap: 7px; }
  .knsd-store-site .knsd-item-grid li { min-height: 95px; font-size: 11px; padding-inline: 3px; }
  .knsd-store-site .knsd-item-grid__icon svg { width: 49px; height: 49px; }
  .knsd-store-site .knsd-item-grid__photo { width: 54px; height: 54px; }
  .knsd-store-site .knsd-item-grid__image { height: 54px; }
  .knsd-store-site .knsd-item-grid__image img { max-height: 54px; max-width: 65px; }
  .knsd-store-site .knsd-item-notes dl > div { grid-template-columns: 100px 1fr; }
  .knsd-store-site .knsd-item-notes dt, .knsd-store-site .knsd-item-notes dd { padding: 9px 10px; }
  .knsd-store-site .knsd-item-notes dl { font-size: 12px; }
  .knsd-store-site .knsd-feature-grid { grid-template-columns: 1fr; gap: 9px; }
  .knsd-store-site .knsd-feature-grid li { padding: 15px 18px; gap: 20px; }
  .knsd-store-site .knsd-feature-grid__icon svg { width: 45px; height: 45px; }
  .knsd-store-site .knsd-feature-grid h3 { font-size: 18px; }
  .knsd-store-site .knsd-feature-grid p { font-size: 13px; }
  .knsd-store-site .knsd-method-note { margin-top: 12px; font-size: 13px; line-height: 1.8; }
  .knsd-store-site .knsd-flow-grid { grid-template-columns: 1fr; gap: 21px; }
  .knsd-store-site .knsd-flow-grid li { min-height: 87px; align-items: center; gap: 15px; padding: 15px; }
  .knsd-store-site .knsd-flow-grid li + li::before { left: calc(50% - 5px); top: -17px; transform: rotate(45deg); }
  .knsd-store-site .knsd-step-number { width: 41px; height: 41px; margin-top: 0; font-size: 22px; }
  .knsd-store-site .knsd-flow-grid__icon { margin-top: 0; }
  .knsd-store-site .knsd-flow-grid__icon svg { width: 31px; height: 31px; }
  .knsd-store-site .knsd-flow-grid h3 { font-size: 16px; }
  .knsd-store-site .knsd-flow-grid p { font-size: 13px; }
  .knsd-store-site .knsd-access-grid { grid-template-columns: 1fr; gap: 14px; }
  .knsd-store-site .knsd-info-table { font-size: 13px; }
  .knsd-store-site .knsd-info-table > div { grid-template-columns: 89px 1fr; }
  .knsd-store-site .knsd-info-table dt, .knsd-store-site .knsd-info-table dd { padding: 9px 11px; }
  .knsd-store-site .knsd-map-embed { height: 220px; }
  .knsd-store-site .knsd-access-map > .knsd-button { margin-top: -44px; min-height: 40px; font-size: 14px; padding-inline: 20px; }
  .knsd-store-site .knsd-faq summary { align-items: flex-start; font-size: 14px; padding: 11px 12px; gap: 10px; }
  .knsd-store-site .knsd-faq__letter { font-size: 22px; width: 22px; }
  .knsd-store-site .knsd-faq__chevron { padding-top: 3px; }
  .knsd-store-site .knsd-faq__answer { font-size: 13px; gap: 10px; padding: 1px 12px 13px; }
  .knsd-store-site .knsd-articles-section { padding-block: 23px 25px; }
  .knsd-store-site .knsd-articles-section h2 { font-size: 23px; line-height: 1.45; margin-bottom: 7px; }
  .knsd-store-site .knsd-articles-intro { font-size: 13px; margin-bottom: 15px; }
  .knsd-store-site .knsd-article-grid { grid-template-columns: 1fr; gap: 14px; }
  .knsd-store-site .knsd-article-card__image { aspect-ratio: 2.25; }
  .knsd-store-site .knsd-article-card__body { padding: 12px 15px 15px; }
  .knsd-store-site .knsd-article-tag { font-size: 11px; }
  .knsd-store-site .knsd-article-card h3 { font-size: 18px; }
  .knsd-store-site .knsd-article-card p { font-size: 13px; }
  .knsd-store-site .knsd-read-more { font-size: 13px; }
  .knsd-store-site .knsd-bottom-cta { padding-block: 22px; }
  .knsd-store-site .knsd-bottom-cta__inner { display: block; padding-inline: 0; }
  .knsd-store-site .knsd-bottom-cta__inner::before, .knsd-store-site .knsd-bottom-cta__inner::after { display: none; }
  .knsd-store-site .knsd-bottom-cta__copy { text-align: center; margin-bottom: 15px; }
  .knsd-store-site .knsd-bottom-cta__copy h2 { font-size: 21px; }
  .knsd-store-site .knsd-bottom-cta__copy p { font-size: 12px; margin-top: 4px; }
  .knsd-store-site .knsd-bottom-cta__actions { display: grid; grid-template-columns: 1fr; max-width: 100%; gap: 9px; }
  .knsd-store-site .knsd-bottom-cta__actions:has(> .knsd-phone):not(:has(> .knsd-official)) { max-width: 100%; }
  .knsd-store-site .knsd-bottom-cta__actions:not(:has(> .knsd-phone)) { display: grid; }
  .knsd-store-site .knsd-phone--compact { min-height: 65px; gap: 14px; }
  .knsd-store-site .knsd-phone--compact .knsd-phone__label { font-size: 13px; }
  .knsd-store-site .knsd-phone--compact strong { font-size: 29px; }
  .knsd-store-site .knsd-phone--compact .knsd-phone__icon svg { width: 32px; height: 32px; }
  .knsd-store-site .knsd-bottom-cta__actions > .knsd-button { min-height: 44px; font-size: 14px; margin-top: 0; }
  .knsd-store-site .knsd-bottom-cta__hours { font-size: 12px; grid-row: 2; margin: -5px 0 2px; }
  .knsd-store-site .knsd-back { padding: 17px 16px; }
  .knsd-store-site .knsd-back .knsd-button { min-height: 42px; }
  .knsd-store-site .knsd-footer { padding-block: 24px 22px; }
  .knsd-store-site .knsd-footer__inner { flex-direction: column; gap: 20px; }
  .knsd-store-site .knsd-brand--footer .knsd-brand__mark { font-size: 43px; }
  .knsd-store-site .knsd-brand--footer .knsd-brand__text strong { font-size: 23px; }
  .knsd-store-site .knsd-brand--footer .knsd-brand__text small { font-size: 9px; }
  .knsd-store-site .knsd-footer nav { justify-content: center; gap: 13px 0; }
  .knsd-store-site .knsd-footer nav a { font-size: 11px; padding-inline: 10px; }
  .knsd-store-site .knsd-footer__inner > small { font-size: 10px; }
  .knsd-store-site .knsd-mobile-contact { position: fixed; display: flex; align-items: stretch; gap: 9px; bottom: 0; left: 0; right: 0; padding: 8px 12px calc(8px + env(safe-area-inset-bottom)); border-top: 1px solid #d4dfd5; background: #fffffff5; z-index: 1000; box-shadow: 0 -3px 18px #143e2010; backdrop-filter: blur(10px); }
  .knsd-store-site .knsd-mobile-contact a { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 49px; padding: 4px 10px; border: 1px solid var(--knsd-green); border-radius: 4px; font-size: 13px; font-weight: 700; line-height: 1.3; }
  .knsd-store-site .knsd-mobile-contact__phone { flex: 1.4; background: linear-gradient(110deg,#087056,#064b3f); color: #fff; }
  .knsd-store-site .knsd-mobile-contact__phone:hover { color: #fff; background: #064b3f; }
  .knsd-store-site .knsd-mobile-contact__phone svg { width: 25px; height: 25px; }
  .knsd-store-site .knsd-mobile-contact__phone small { display: block; font: 700 17px/1.3 Arial,sans-serif; }
  .knsd-store-site .knsd-mobile-contact__web { flex: 1; background: #fff; color: var(--knsd-green); }
  .knsd-store-site .knsd-mobile-contact__web svg { width: 15px; height: 15px; }
}

@media (max-width: 360px) {
  .knsd-store-site .knsd-container { width: calc(100% - 26px); }
  .knsd-store-site .knsd-shop-heading h1 { font-size: 25px; }
  .knsd-store-site .knsd-brand__text strong { font-size: 20px; }
  .knsd-store-site .knsd-item-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .knsd-store-site .knsd-item-grid li { font-size: 13px; }
  .knsd-store-site .knsd-mobile-contact { gap: 6px; padding-inline: 8px; }
  .knsd-store-site .knsd-mobile-contact a { font-size: 12px; padding-inline: 7px; gap: 6px; }
  .knsd-store-site .knsd-mobile-contact__phone small { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  .knsd-store-site *, .knsd-store-site *::before, .knsd-store-site *::after { scroll-behavior: auto !important; transition-duration: 0s !important; animation-duration: 0s !important; }
}

@media print {
  .knsd-store-site { padding-bottom: 0; font-size: 11pt; }
  .knsd-store-site .knsd-container { width: 100%; }
  .knsd-store-site .knsd-header-nav, .knsd-store-site .knsd-menu-toggle, .knsd-store-site .knsd-section-nav-wrap, .knsd-store-site .knsd-contact-aside, .knsd-store-site .knsd-mobile-contact, .knsd-store-site .knsd-bottom-cta, .knsd-store-site .knsd-back { display: none; }
  .knsd-store-site .knsd-overview-grid { display: block; }
  .knsd-store-site .knsd-hero { grid-template-columns: 1.5fr 1fr; }
  .knsd-store-site .knsd-section, .knsd-store-site .knsd-article-card { break-inside: avoid; }
  .knsd-store-site .knsd-faq details:not([open]) .knsd-faq__answer { display: flex !important; }
}
