/* Mouse clicks do not leave the legacy black outline; keyboard focus stays visible. */
body.ko-site :is(a, button, input[type=button], input[type=submit]):focus:not(:focus-visible) { outline: none !important; box-shadow: none !important; }
body.ko-site :is(a, button, input[type=button], input[type=submit]):focus-visible { outline: 2px solid #159bc7 !important; outline-offset: 4px; border-radius: 4px; }
body.ko-site .ko-site-footer a:focus-visible { outline-color: #9be4f3 !important; }

/* The same compact quantity stepper used by the native cart. */
#kanzopt-design .ko-buy .quantity-box {
  display: flex; align-items: center; gap: 0; flex-wrap: nowrap;
  width: 108px; min-width: 108px; flex: 0 0 108px; height: 35px; border: 1px solid var(--ko-line);
  border-radius: 7px; overflow: hidden; background: #fff;
}
#kanzopt-design .ko-buy .quantity-box input.quantity-input {
  flex: 0 0 40px; width: 40px; min-width: 0; height: 33px; margin: 0;
  border: 0; border-radius: 0; padding: 5px; box-shadow: none;
  text-align: center; background: #fff; font-size: 13px;
}
#kanzopt-design .ko-buy .quantity-box button.quantity-controls {
  display: grid; place-items: center; flex: 0 0 33px;
  width: 33px; height: 33px; min-width: 0; margin: 0; padding: 6px !important;
  border: 0; border-radius: 0; background: #f7fafc; color: var(--ko-ink);
  box-shadow: none; cursor: pointer;
}
#kanzopt-design .ko-buy .quantity-box button:hover { background: #e9f5fa; color: var(--ko-brand); }
#kanzopt-design .ko-buy .quantity-box button svg { width: 14px; height: 14px; }
body.ko-site #kanzopt-design .ko-buy .quantity-box :focus-visible { outline-offset: -3px; }
#kanzopt-design .ko-product .ko-buy .addtocart-bar>.row { flex-wrap: wrap; justify-content: center; gap: 8px; }
#kanzopt-design .ko-product .ko-buy .addtocart-bar>.row>.col-auto { flex: 0 0 auto; width: auto; padding: 0; }
#kanzopt-design .ko-product .ko-buy .vm-addtocart-button-col { flex: 1 1 110px; padding: 0; }
#kanzopt-design .ko-product .ko-buy button.addtocart-button { white-space: nowrap; }

/* Articles and Joomla account recovery pages share the storefront white surface. */
#kanzopt-design .ko-search-synonyms { margin: -4px 0 20px; padding: 12px 16px; border-radius: 9px; background: #e9f5fa; color: #34596b; font-size: 13px; line-height: 1.7; }
#kanzopt-design .ko-content-surface, #kanzopt-design .ko-user-surface {
  background: #fff; border: 1px solid var(--ko-line); border-radius: 20px;
  padding: clamp(22px, 3vw, 44px); color: #344e60; overflow-wrap: anywhere;
  font-size: 15px; line-height: 1.8;
}
#kanzopt-design .ko-content-surface .item-page { margin: 0; padding: 0; }
#kanzopt-design .ko-content-surface h1, #kanzopt-design .ko-content-surface h2,
#kanzopt-design .ko-user-surface h1 { color: var(--ko-ink); font-weight: 600; line-height: 1.3; }
#kanzopt-design .ko-content-surface h1, #kanzopt-design .ko-user-surface h1 { font-size: clamp(25px, 2.3vw, 34px); margin: 0 0 24px; }
#kanzopt-design .ko-content-surface p { margin: 0 0 18px; }
#kanzopt-design .ko-content-surface img { max-width: 100%; height: auto; }
#kanzopt-design .ko-content-surface table { display: block; max-width: 100%; overflow-x: auto; }
#kanzopt-design .ko-content-surface .page-header { border: 0; margin: 0; padding: 0; }

/* Native VM account forms keep their tokens, tabs, fields and submit actions. */
#kanzopt-design .ko-account-heading { display: flex; gap: 18px; align-items: center; margin-bottom: 28px; }
#kanzopt-design .ko-account-heading-icon { display: grid; place-items: center; flex: 0 0 60px; width: 60px; height: 60px; border-radius: 17px; background: #e8f6fb; color: var(--ko-brand); }
#kanzopt-design .ko-account-heading-icon svg { width: 30px; height: 30px; }
#kanzopt-design .ko-account-heading h1 { font-size: clamp(26px, 2.4vw, 34px); line-height: 1.25; font-weight: 600; letter-spacing: -.5px; margin: 0 0 9px; }
#kanzopt-design .ko-account-heading p { margin: 0; font-size: 14px; line-height: 1.7; color: #516b7b; }
#kanzopt-design .ko-account-layout { display: grid; grid-template-columns: minmax(240px, .8fr) minmax(0, 1.6fr); gap: 24px; align-items: start; }
#kanzopt-design .ko-account-access, #kanzopt-design form.ko-account-form {
  min-width: 0; margin: 0; padding: clamp(22px, 2.4vw, 34px);
  background: #fff; border: 1px solid var(--ko-line); border-radius: 18px;
}
#kanzopt-design .ko-account-page h2 { font-size: 20px; line-height: 1.4; font-weight: 600; margin: 0 0 22px; color: var(--ko-ink); }
#kanzopt-design .ko-account-access .vm-login, #kanzopt-design .ko-account-access #com-form-login,
#kanzopt-design .ko-account-access #form-login { margin: 0 !important; padding: 0 !important; background: transparent !important; }
#kanzopt-design .ko-account-access .vm-login>.lead { padding: 0 0 18px !important; margin: 0 0 20px !important; font-size: 13px; line-height: 1.7; color: #516b7b; border-color: var(--ko-line) !important; }
#kanzopt-design .ko-account-page form .row::before, #kanzopt-design .ko-account-page form .row::after { display: none; }
#kanzopt-design .ko-account-access #com-form-login { display: block; }
#kanzopt-design .ko-account-access #com-form-login>div { float: none; width: 100%; padding: 0; margin-bottom: 18px; }
#kanzopt-design .ko-account-access #com-form-login>div:last-of-type { margin-bottom: 0; }
#kanzopt-design .ko-account-access .visually-hidden { position: static !important; width: auto !important; height: auto !important; clip: auto !important; clip-path: none !important; overflow: visible !important; white-space: normal !important; }
#kanzopt-design .ko-account-page label, #kanzopt-design .ko-user-surface label { font-size: 13px; color: #344e60; line-height: 1.5; font-weight: 500; display: block; margin: 0 0 8px; }
#kanzopt-design .ko-account-page input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
#kanzopt-design .ko-account-page select, #kanzopt-design .ko-account-page textarea,
#kanzopt-design .ko-user-surface input:not([type=hidden]):not([type=checkbox]):not([type=radio]) {
  width: 100%; max-width: 100%; min-height: 44px; margin: 0; padding: 10px 12px;
  background: #fff; border: 1px solid #d5e1e8; border-radius: 8px;
  color: var(--ko-ink); font-size: 15px; line-height: 1.5; box-shadow: none;
}
#kanzopt-design .ko-account-page input:focus, #kanzopt-design .ko-user-surface input:focus { border-color: var(--ko-brand); outline: 2px solid #159bc733; outline-offset: 1px; }
#kanzopt-design .ko-account-page input[type=checkbox], #kanzopt-design .ko-account-page input[type=radio] { accent-color: var(--ko-brand); }
#kanzopt-design .ko-account-page label:has(+input[type=checkbox]), #kanzopt-design .ko-account-page input[type=checkbox]+label { display: inline; font-weight: 400; }
#kanzopt-design .ko-account-page a { color: #087fa6; font-size: 13px; line-height: 1.8; }
#kanzopt-design .ko-account-page button.btn, #kanzopt-design .ko-user-surface button.btn {
  min-height: 43px; padding: 10px 20px; border: 1px solid var(--ko-line); border-radius: 8px;
  background: #f4f8fa; color: var(--ko-ink); font-size: 14px; font-weight: 500;
  line-height: 1.5; text-shadow: none; box-shadow: none;
}
#kanzopt-design .ko-account-page button.btn-primary, #kanzopt-design .ko-user-surface button.btn-primary { background: var(--ko-brand); border-color: var(--ko-brand); color: #fff; }
#kanzopt-design .ko-account-page button.btn-primary:hover { background: #087ca4; }
#kanzopt-design .ko-account-access #com-form-login button { width: 100%; }
#kanzopt-design .ko-account-form .vm-form-row { display: block; margin: 0; }
#kanzopt-design .ko-account-form .vm-form-row>div { width: 100%; float: none; margin: 0; padding: 0; min-width: 0; }
#kanzopt-design .ko-account-form .vm-form-row .p-4 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 18px; background: transparent !important; padding: 0 !important; }
#kanzopt-design .ko-account-form .vm-form-row .p-4>.mb-3 { margin: 0; min-width: 0; }
#kanzopt-design .ko-account-form .vm-form-row .p-4>div:has(.company),
#kanzopt-design .ko-account-form .vm-form-row .p-4>div:has(.address_1),
#kanzopt-design .ko-account-form .vm-form-row .p-4>div:has(input[type=checkbox]),
#kanzopt-design .ko-account-form .vm-form-row .p-4>fieldset { grid-column: 1/-1; }
#kanzopt-design .ko-account-form .form-check { display: flex; align-items: flex-start; gap: 9px; padding: 0; }
#kanzopt-design .ko-account-form .form-check input[type=checkbox] { order: -1; flex-shrink: 0; margin: 3px 0 0; }
#kanzopt-design .ko-account-form .vm-btn-contaner { display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-start; border-color: var(--ko-line) !important; margin-top: 24px; padding-top: 22px !important; }
#kanzopt-design .ko-account-form .vm-btn-contaner button { margin: 0 !important; }
#kanzopt-design .ko-account-form .vm-order-list { max-width: 100%; overflow-x: auto; }
#kanzopt-design .ko-account-form .vm-order-list th, #kanzopt-design .ko-account-form .vm-order-list td { padding: 12px 10px; font-size: 13px; text-align: left; border-color: var(--ko-line); }
#kanzopt-design .ko-account-form #tabs { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0 0 16px; margin: 0 0 24px; border-bottom: 1px solid var(--ko-line); }
#kanzopt-design .ko-account-form #tabs li { float: none; margin: 0; padding: 10px 14px; border: 1px solid var(--ko-line); border-radius: 8px; background: #f7fafc; color: #344e60; font-size: 13px; line-height: 1.5; cursor: pointer; }
#kanzopt-design .ko-account-form #tabs li.current { background: #e8f6fb; border-color: #8bcadd; color: #087fa6; }
#kanzopt-design .ko-account-form #ui-tabs .tabs { padding: 0; border: 0; background: transparent; }
@media (max-width: 1000px) { #kanzopt-design .ko-account-layout { grid-template-columns: minmax(230px, .85fr) minmax(0, 1.2fr); } #kanzopt-design .ko-account-form .vm-form-row .p-4 { grid-template-columns: 1fr; } }
@media (max-width: 750px) { #kanzopt-design .ko-account-layout { grid-template-columns: 1fr; gap: 18px; } #kanzopt-design .ko-account-heading { align-items: flex-start; gap: 13px; } #kanzopt-design .ko-account-heading-icon { flex-basis: 48px; width: 48px; height: 48px; border-radius: 13px; } #kanzopt-design .ko-account-heading p { font-size: 13px; } }
@media (max-width: 450px) { #kanzopt-design .ko-content-surface, #kanzopt-design .ko-user-surface { border-radius: 14px; padding: 22px 18px; } #kanzopt-design .ko-account-access, #kanzopt-design form.ko-account-form { padding: 22px 18px; border-radius: 14px; } #kanzopt-design .ko-account-page input:not([type=hidden]):not([type=checkbox]):not([type=radio]) { font-size: 16px; } #kanzopt-design .ko-detail-buy .addtocart-bar>.row { flex-wrap: wrap; } #kanzopt-design .ko-detail-buy .vm-addtocart-button-col { min-width: 145px; } }
/* Transparent hero artwork shares the slide background, without a gray image tile. */
#kanzopt-design .ko-slide-stage{min-height:400px}
#kanzopt-design .ko-slide{min-height:400px}
#kanzopt-design .ko-slide-picture{--ko-art-height:300px;height:var(--ko-art-height);background:transparent;overflow:visible;border-radius:0;isolation:isolate}
#kanzopt-design .ko-slide-picture img{width:100%;height:var(--ko-art-height);min-height:0;max-height:var(--ko-art-height);object-fit:contain;transform:scale(var(--ko-image-scale,1));transform-origin:center}
@media(min-width:1450px){#kanzopt-design .ko-slide-picture{--ko-art-height:320px}}
@media(max-width:850px) and (min-width:651px){#kanzopt-design .ko-slide-picture{--ko-art-height:260px}}
@media(max-width:650px){#kanzopt-design .ko-slide-stage,#kanzopt-design .ko-slide{min-height:0}#kanzopt-design .ko-slide-picture{--ko-art-height:230px;min-height:0;aspect-ratio:auto}}
@media(max-width:450px){#kanzopt-design .ko-slide-picture{--ko-art-height:210px}}
/* Clear interactive contours without changing card sizes or moving the grid. */
#kanzopt-design .ko-product{transition:border-color .18s ease,box-shadow .18s ease}
#kanzopt-design .ko-product:has(:focus-visible){border-color:var(--ko-brand);box-shadow:0 0 0 1px var(--ko-brand),0 6px 18px #159bc71a}
@media(hover:hover) and (pointer:fine){
  #kanzopt-design .ko-product:hover{border-color:var(--ko-brand);box-shadow:0 0 0 1px var(--ko-brand),0 6px 18px #159bc71a}
  #kanzopt-design :is(button:not([data-slide]),a.ko-primary,a.ko-catalog-button,a.btn,input[type=submit],input[type=button]):not(:disabled):not([aria-disabled=true]):hover{outline:2px solid var(--ko-brand);outline-offset:2px}
}
@media(prefers-reduced-motion:reduce){#kanzopt-design .ko-product{transition:none}}
#kanzopt-design .ko-slider-controls>button{display:grid;place-items:center;padding:0;line-height:1}
#kanzopt-design .ko-slider-controls>button>svg{display:block;width:18px;height:18px;margin:0}
/* Homepage new arrivals: five compact cards on desktop, fewer on small screens. */
#kanzopt-design .ko-home-products{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1199px){#kanzopt-design .ko-home-products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){#kanzopt-design .ko-home-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Catalog autocomplete: attached to the header, without changing its width. */
#kanzopt-design .ko-search{position:relative;overflow:visible;z-index:40}
#kanzopt-design .ko-search>input[type=search]{height:calc(36px * 1.15 - 2px);padding:0 18px}
#kanzopt-design .ko-search>button{border-radius:0 9px 9px 0;flex-shrink:0}
#kanzopt-design .ko-suggest{position:absolute;left:0;right:0;top:calc(100% + 8px);background:#fff;border:1px solid #dce5e9;border-radius:14px;box-shadow:0 14px 38px #183d5526;overflow:hidden;color:#213d4b;text-align:left}
#kanzopt-design .ko-suggest[hidden]{display:none}
#kanzopt-design .ko-suggest-note{padding:12px 16px;background:#edf7fb;font-size:12px;line-height:1.5;color:#36586a}
#kanzopt-design .ko-suggest [role=listbox]{max-height:min(520px,60vh);overflow-y:auto;overscroll-behavior:contain}
#kanzopt-design .ko-suggest a{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #edf1f3;text-decoration:none;color:#213d4b;font-size:13px;line-height:1.5}
#kanzopt-design .ko-suggest a>span{min-width:0;overflow-wrap:anywhere}
#kanzopt-design .ko-suggest small{display:block;color:#627584;font-size:11px;margin-top:3px}
#kanzopt-design .ko-suggest strong{white-space:nowrap;font-size:14px}
#kanzopt-design .ko-suggest a:hover,#kanzopt-design .ko-suggest a[aria-selected=true]{background:#e9f6fb}
#kanzopt-design .ko-suggest .ko-suggest-all{color:#087c9e;font-weight:600;border:0}
#kanzopt-design .ko-suggest-empty{margin:0;padding:16px;font-size:13px}
#kanzopt-design .ko-suggest-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:520px){#kanzopt-design .ko-suggest a{gap:10px;padding:10px 12px;font-size:12px}#kanzopt-design .ko-suggest strong{font-size:12px}#kanzopt-design .ko-suggest-note{padding:10px 12px}}
/* Order details and history in the storefront style. */
#kanzopt-design .ko-order-page{color:var(--ko-ink);font-size:14px;line-height:1.6}
#kanzopt-design .ko-order-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0}
#kanzopt-design .ko-order-heading h1{font-size:clamp(26px,2.5vw,36px);margin:8px 0;letter-spacing:-.6px}
#kanzopt-design .ko-order-heading p{margin:0;color:#607785}
#kanzopt-design .ko-order-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
#kanzopt-design .ko-order-actions a{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #d8e5eb;border-radius:9px;padding:10px 14px;font-size:13px;color:#24728d;text-decoration:none}
#kanzopt-design .ko-order-actions a:hover{border-color:var(--ko-brand);background:#edf8fb}
#kanzopt-design .ko-order-panel{min-width:0;background:#fff;border:1px solid var(--ko-line);border-radius:16px;padding:24px;margin-bottom:22px;overflow-wrap:anywhere}
#kanzopt-design .ko-order-panel h2{font-size:20px;margin:0 0 20px;font-weight:600}
#kanzopt-design .ko-order-panel h3{font-size:14px;margin:0 0 8px;font-weight:600}
#kanzopt-design .ko-order-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}
#kanzopt-design .ko-order-summary .ko-order-panel{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px}
#kanzopt-design .ko-order-label,#kanzopt-design .ko-order-muted{color:#607785;font-size:13px}
#kanzopt-design .ko-order-total{font-size:27px;line-height:1.3}
#kanzopt-design .ko-order-status{display:inline-flex;align-items:center;border-radius:8px;background:#e8f5fa;color:#176883;padding:5px 10px;font-size:13px;font-weight:500}
#kanzopt-design .ko-order-status[data-status=X]{background:#fff0ef;color:#a33c34}
#kanzopt-design .ko-order-parties{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#kanzopt-design .ko-order-fields{margin:0}
#kanzopt-design .ko-order-fields>div{padding:10px 0;border-bottom:1px solid #edf2f5}
#kanzopt-design .ko-order-fields>div:first-child{padding-top:0}
#kanzopt-design .ko-order-fields>div:last-child{border-bottom:0;padding-bottom:0}
#kanzopt-design .ko-order-fields dt{font-weight:400;font-size:12px;color:#607785;margin:0 0 4px}
#kanzopt-design .ko-order-fields dd{font-size:14px;margin:0;color:#233e4d}
#kanzopt-design .ko-order-note{margin-top:20px;padding:14px;border-radius:9px;background:#f4f8fa}
#kanzopt-design .ko-order-note p{margin:0;font-size:13px}
#kanzopt-design .ko-order-page .table-responsive,#kanzopt-design .ko-order-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
#kanzopt-design .ko-order-page table{border-collapse:collapse;width:100%;margin:0;border:0;font-size:13px}
#kanzopt-design .ko-order-items table{min-width:740px}
#kanzopt-design .ko-order-page th{background:#f1f7fa;color:#446170;font-size:12px;font-weight:500;padding:13px 12px;border:0;border-bottom:1px solid #dce7ed;text-align:left}
#kanzopt-design .ko-order-page td{padding:14px 12px;vertical-align:top;border:0;border-bottom:1px solid #edf2f5}
#kanzopt-design .ko-order-page td p{margin:0}
#kanzopt-design .ko-order-page td a{color:#087fa1}
#kanzopt-design .ko-order-page .text-end{text-align:right}
#kanzopt-design .ko-order-page .line-through{text-decoration:line-through;color:#748692}
#kanzopt-design .ko-order-page tr:last-child td{border-bottom:0}
@media(max-width:1050px){#kanzopt-design .ko-order-parties{grid-template-columns:1fr 1fr}#kanzopt-design .ko-order-parties>section:first-child{grid-column:1/-1}#kanzopt-design .ko-order-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){#kanzopt-design .ko-order-summary,#kanzopt-design .ko-order-parties{grid-template-columns:1fr;gap:0}#kanzopt-design .ko-order-panel{padding:20px;margin-bottom:14px}#kanzopt-design .ko-order-summary .ko-order-panel{flex-direction:row;align-items:center;justify-content:space-between;gap:14px}#kanzopt-design .ko-order-summary .ko-order-panel>strong{text-align:right}#kanzopt-design .ko-order-total{font-size:22px}#kanzopt-design .ko-order-history{min-width:480px}#kanzopt-design .ko-order-heading{margin:18px 0}#kanzopt-design .ko-order-actions a{padding:9px 12px;font-size:12px}}
#kanzopt-design .ko-order-items th:nth-child(5),#kanzopt-design .ko-order-items td:first-child,#kanzopt-design .ko-order-items .text-nowrap{white-space:nowrap;overflow-wrap:normal}
#kanzopt-design .ko-order-items td:nth-child(2){min-width:200px;max-width:340px}
#kanzopt-design .ko-order-items td:nth-child(3){min-width:105px;max-width:145px}

/* Editorial customer information pages; all copy remains in Joomla articles. */
#kanzopt-design .ko-content-surface:has(.ko-service-page) { background:transparent;border:0;padding:0;box-shadow:none; }
#kanzopt-design .item-page:has(.ko-service-page) > :is(.page-header,.article-info,.icons,.article-index,.content-links) { display:none; }
#kanzopt-design .ko-service-page { color:#435e6d;line-height:1.7; }
#kanzopt-design .ko-service-page * { box-sizing:border-box; }
#kanzopt-design .ko-service-page :is(h1,h2,h3,p) { padding:0; }
#kanzopt-design .ko-service-page h1 { font-size:clamp(30px,3vw,46px);line-height:1.16;letter-spacing:-1.2px;margin:10px 0 20px;font-weight:650; }
#kanzopt-design .ko-service-page h2 { font-size:clamp(21px,1.8vw,28px);line-height:1.3;margin:0 0 16px;letter-spacing:-.4px; }
#kanzopt-design .ko-service-page h3 { font-size:18px;line-height:1.4;margin:14px 0 10px;color:#193849;font-weight:600; }
#kanzopt-design .ko-service-page p { margin:0 0 18px; }
#kanzopt-design .ko-info-eyebrow { display:block;color:#087d9c;font-size:12px;line-height:1.5;font-weight:650;letter-spacing:1.2px;text-transform:uppercase;margin-bottom:12px; }
#kanzopt-design .ko-info-heading { margin:4px 0 32px;max-width:820px; }
#kanzopt-design .ko-info-heading p { max-width:740px;font-size:17px; }
#kanzopt-design .ko-info-card, #kanzopt-design .ko-shop-card { border:1px solid #e1eaf0;border-radius:22px;background:#fff;min-width:0; }
#kanzopt-design .ko-info-card { padding:clamp(24px,2.6vw,38px); }
#kanzopt-design .ko-info-card p:last-child { margin-bottom:0; }
#kanzopt-design .ko-info-two { display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0; }
#kanzopt-design .ko-info-tint { background:#eef8fb;border-color:#deeff4; }
#kanzopt-design .ko-info-actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:26px; }
#kanzopt-design a.ko-info-button { display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;padding:12px 20px;border:1px solid #139dc1;border-radius:11px;background:#139dc1;color:#fff;font-size:14px;font-weight:600;text-decoration:none;line-height:1.5;transition:background .18s,box-shadow .18s; }
#kanzopt-design a.ko-info-button:hover { background:#087f9e;border-color:#087f9e;box-shadow:0 0 0 3px #129dc222; }
#kanzopt-design a.ko-info-button-light { background:#fff;color:#087d9c;border-color:#c9e2eb; }
#kanzopt-design a.ko-info-button-light:hover { background:#e8f6fa; }
#kanzopt-design .ko-info-textlink { color:#087d9c;font-weight:600;text-decoration:none; }
#kanzopt-design .ko-info-textlink:hover { text-decoration:underline; }
#kanzopt-design .ko-info-hero { display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:25px;background:#edf5f8;border:1px solid #e1eaf0; }
#kanzopt-design .ko-info-hero-copy { padding:clamp(26px,3.2vw,50px);align-self:center; }
#kanzopt-design .ko-info-hero-copy p { font-size:16px;max-width:490px; }
#kanzopt-design .ko-info-hero-image { width:100%;height:100%;min-height:360px;object-fit:cover;object-position:center; }
#kanzopt-design .ko-info-badge { display:inline-block;border-radius:8px;padding:6px 11px;background:#eef2f5;color:#526a78;font-size:12px;font-weight:600;margin-bottom:18px; }
#kanzopt-design .ko-promo-archive { display:flex;align-items:center;justify-content:space-between;gap:30px; }
#kanzopt-design .ko-promo-archive>div { max-width:740px; }
#kanzopt-design .ko-promo-archive h2 { font-size:22px; }
#kanzopt-design .ko-archive-year { color:#e3ecf1;font-size:clamp(60px,7vw,112px);font-weight:700;letter-spacing:-6px;line-height:1; }
#kanzopt-design .ko-promo-archive summary { cursor:pointer;color:#087d9c;font-weight:600; }
#kanzopt-design .ko-promo-archive details img { display:block;width:221px;margin-top:20px;border-radius:10px; }
#kanzopt-design .ko-shops-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
#kanzopt-design .ko-shop-card { overflow:hidden;display:flex;flex-direction:column; }
#kanzopt-design .ko-shop-photo { aspect-ratio:1.55;overflow:hidden;background:#e6eef3; }
#kanzopt-design .ko-shop-photo img { width:100%;height:100%;object-fit:cover; }
#kanzopt-design .ko-shop-body { padding:clamp(22px,2vw,30px);display:flex;flex-direction:column;flex:1; }
#kanzopt-design .ko-shop-body .ko-info-eyebrow { letter-spacing:.6px;font-size:11px;min-height:33px; }
#kanzopt-design .ko-shop-body h2 { font-size:28px; }
#kanzopt-design .ko-shop-body>p:first-of-type { flex:1; }
#kanzopt-design .ko-shop-address { border-top:1px solid #e5edf2;padding-top:20px;color:#1d3e50;font-weight:600;line-height:1.6; }
#kanzopt-design p.ko-shop-hours { font-size:13px;margin:8px 0 16px;min-height:44px; }
#kanzopt-design .ko-shop-phone { color:#193e51;font-size:18px;font-weight:600;margin-bottom:18px;text-decoration:none; }
#kanzopt-design .ko-shop-phone:hover { color:#087d9c; }
#kanzopt-design .ko-info-contact { display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px 38px;margin-top:28px;background:#e9f5f9;border:1px solid #d8eaf1;border-radius:22px; }
#kanzopt-design .ko-info-contact h2 { margin-bottom:9px; }
#kanzopt-design .ko-info-contact p { margin:0;max-width:650px; }
#kanzopt-design .ko-info-contact .ko-info-button { flex-shrink:0; }
#kanzopt-design .ko-info-icon { display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:#e9f7fb;margin-bottom:22px;flex:0 0 56px; }
#kanzopt-design .ko-info-icon img { width:28px;height:28px; }
#kanzopt-design .ko-delivery-hero { display:grid;grid-template-columns:1.05fr 1fr;gap:45px;padding:clamp(26px,3vw,44px);background:#fff;border:1px solid #e1eaf0;border-radius:22px;margin-bottom:24px; }
#kanzopt-design .ko-delivery-hero h2 { font-size:clamp(26px,2.4vw,36px);line-height:1.25; }
#kanzopt-design .ko-delivery-hero>div>p { max-width:490px; }
#kanzopt-design .ko-delivery-zone { align-self:center;border-left:1px solid #e0ebf1;padding-left:36px; }
#kanzopt-design .ko-location-tags { display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 22px; }
#kanzopt-design .ko-location-tags span { background:#eaf7fb;border:1px solid #d5edf5;border-radius:9px;padding:9px 16px;color:#126983;font-weight:600;font-size:15px; }
#kanzopt-design .ko-delivery-zone p { font-size:13px; }
#kanzopt-design .ko-info-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:26px; }
#kanzopt-design .ko-info-steps>div>span { display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#eaf7fb;color:#087d9c;font-size:15px;font-weight:600; }
#kanzopt-design .ko-info-steps p { font-size:14px; }
#kanzopt-design .ko-info-address { font-weight:600;color:#234454; }
#kanzopt-design .ko-payment-grid { display:grid;grid-template-columns:1fr 1fr;gap:24px; }
#kanzopt-design .ko-payment-grid .ko-info-card { position:relative;padding-left:112px; }
#kanzopt-design .ko-payment-grid .ko-info-icon { position:absolute;left:30px;top:33px; }
#kanzopt-design .ko-payment-grid .ko-info-eyebrow { font-size:11px;margin-bottom:8px; }
#kanzopt-design .ko-payment-grid h2 { font-size:24px; }
#kanzopt-design .ko-payment-note { display:flex;align-items:center;justify-content:space-between;gap:28px;padding:32px 38px;border-radius:22px;background:#163c50;color:#d4e8f1;margin-top:24px; }
#kanzopt-design .ko-payment-note h2 { color:white; }
#kanzopt-design .ko-payment-note p { max-width:700px;margin-bottom:0; }
#kanzopt-design .ko-payment-note .ko-info-button { flex-shrink:0; }
@media(max-width:1150px) {
 #kanzopt-design .ko-shops-grid { gap:16px; }
 #kanzopt-design .ko-shop-body { padding:22px; }
 #kanzopt-design .ko-shop-body h2 { font-size:25px; }
 #kanzopt-design .ko-shop-phone { font-size:16px; }
 #kanzopt-design .ko-info-hero-copy { padding:30px; }
 #kanzopt-design .ko-payment-grid .ko-info-card { padding:26px; }
 #kanzopt-design .ko-payment-grid .ko-info-icon { position:static; }
}
@media(max-width:800px) {
 #kanzopt-design .ko-info-hero { grid-template-columns:1fr; }
 #kanzopt-design .ko-info-hero-image { min-height:0;max-height:320px;aspect-ratio:1.8; }
 #kanzopt-design .ko-shops-grid { grid-template-columns:1fr;gap:20px; }
 #kanzopt-design .ko-shop-card { display:grid;grid-template-columns:.85fr 1fr; }
 #kanzopt-design .ko-shop-photo { aspect-ratio:auto;height:100%; }
 #kanzopt-design .ko-shop-body .ko-info-eyebrow { min-height:0; }
 #kanzopt-design p.ko-shop-hours { min-height:0; }
 #kanzopt-design .ko-info-contact, #kanzopt-design .ko-payment-note { flex-direction:column;align-items:flex-start;padding:28px; }
 #kanzopt-design .ko-delivery-hero { gap:24px;grid-template-columns:1fr; }
 #kanzopt-design .ko-delivery-zone { border-left:0;border-top:1px solid #e0ebf1;padding:24px 0 0; }
 #kanzopt-design .ko-archive-year { display:none; }
}
@media(max-width:560px) {
 #kanzopt-design .ko-service-page h1 { font-size:32px;letter-spacing:-.7px; }
 #kanzopt-design .ko-info-heading { margin-bottom:24px; }
 #kanzopt-design .ko-info-heading p { font-size:15px; }
 #kanzopt-design .ko-info-two, #kanzopt-design .ko-payment-grid, #kanzopt-design .ko-info-steps { grid-template-columns:1fr;gap:18px; }
 #kanzopt-design .ko-info-card { padding:24px; }
 #kanzopt-design .ko-shop-card { display:flex; }
 #kanzopt-design .ko-shop-photo { aspect-ratio:1.65;height:auto; }
 #kanzopt-design .ko-shop-body { padding:26px; }
 #kanzopt-design .ko-info-hero-copy { padding:28px 24px; }
 #kanzopt-design .ko-info-actions { flex-direction:column;align-items:stretch; }
 #kanzopt-design .ko-info-hero-image { max-height:250px; }
 #kanzopt-design .ko-delivery-hero { padding:24px; }
 #kanzopt-design .ko-delivery-hero h2 { font-size:27px; }
 #kanzopt-design .ko-info-steps>div { border-bottom:1px solid #e5edf2;padding-bottom:12px; }
 #kanzopt-design .ko-info-steps>div:last-child { border:0;padding-bottom:0; }
 #kanzopt-design .ko-info-contact, #kanzopt-design .ko-payment-note { padding:26px 24px; }
}

/* T3 uses article-header/article-aside instead of the core page-header. */
#kanzopt-design .ko-content-surface:has(.ko-service-page) :is(.article-header,.article-aside) { display:none; }
