/* 0.1.7: readable category navigation and explicit quantity planning. */
.kv-store [hidden]{display:none!important}
.kv-store .kv-quantity-planner{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.66fr);gap:24px 40px;position:relative;padding:38px;border:1px solid #a7bbcc;border-radius:26px;background:radial-gradient(ellipse at 4% 0%,#d4e4f4 0,transparent 60%),linear-gradient(120deg,#edf3f8,#fff 85%);box-shadow:0 12px 30px #2542600c;margin:28px 0 32px;color:#1d2731}
.kv-store .kv-quantity-planner .eyebrow{font-size:16px;color:#365c7d;letter-spacing:.13em;font-weight:650}
.kv-store .kv-quantity-planner h2{font-size:clamp(27px,2.6vw,38px)!important;font-weight:650;line-height:1.15;letter-spacing:-1px!important;margin:12px 0 16px;color:#182431}
.kv-store .kv-quantity-planner .kv-plan-copy p{font-size:19px;line-height:1.55;margin:0;max-width:60ch;color:#435567}
.kv-store .kv-plan-form{display:flex;flex-direction:column;gap:12px;align-self:center;min-width:0}
.kv-store .kv-plan-form label{font-size:20px;font-weight:600;color:#253b50}
.kv-store .kv-plan-input{display:flex;align-items:center;position:relative;border:1px solid #8ea4b7;border-radius:13px;background:#fff;box-shadow:0 3px 8px #13263a06;overflow:hidden}
.kv-store .kv-plan-input input{border:0!important;background:transparent!important;border-radius:0;padding:15px 52px 15px 18px;width:100%;min-width:0;font-size:28px!important;line-height:1.2;color:#192d40!important;box-shadow:none!important;appearance:textfield}
.kv-plan-input input::-webkit-inner-spin-button,.kv-plan-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.kv-store .kv-plan-input button{position:absolute;right:5px;top:5px;bottom:5px;min-width:44px;border:0;background:#edf2f6;color:#344f67;border-radius:9px;font-size:28px;cursor:pointer}
.kv-store .kv-plan-submit{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:13px 18px;border:1px solid #253b50;border-radius:13px;background:#253b50;color:#fff;font-size:19px;font-weight:600;line-height:1.35;cursor:pointer;box-shadow:0 4px 10px #253b5012}
.kv-store .kv-plan-submit:hover{background:#164569}
.kv-store .kv-quantity-planner .kv-plan-help{grid-column:1/-1;margin:0;font-size:17px;line-height:1.5;color:#4c6071}
.kv-store .kv-quantity-planner .kv-plan-status{grid-column:1/-1;display:block;max-width:none;margin:0!important;padding:15px 18px;border:1px solid #c0cfdb;border-radius:12px;background:#ffffffb3;font-size:18px;font-weight:500;line-height:1.5;color:#324d64}
.kv-store .kv-quantity-planner.has-active-plan .kv-plan-status{border-color:#647e96;background:#e0ebf3;color:#183b57}
.kv-store [data-plan-card] [data-plan-result]{display:flex;flex-direction:column;gap:5px;padding:15px 17px;background:#edf3f8;border:1px solid #c6d6e3;border-radius:12px;font-size:20px;line-height:1.4;color:#1b3c58;margin:16px 0}
.kv-store [data-plan-card] [data-plan-result] strong{font-size:16px;font-weight:650;letter-spacing:0;line-height:1.4;color:#435c71}
.kv-store [data-plan-card] [data-plan-result] small{font-size:16px;line-height:1.45;color:#52687b}
.kv-store .kv-category-subnav{margin:24px 0 32px;padding:0;color:#1d2731}
.kv-store .kv-subnav-heading .eyebrow{font-size:15px;color:#50677c}
.kv-store .kv-subnav-heading h2{font-size:25px;font-weight:600;line-height:1.25;letter-spacing:-.5px;margin:9px 0 18px}
.kv-store .kv-category-subnav ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;list-style:none;margin:0;padding:0;border-top:1px solid #d8dce2}
.kv-store .kv-category-subnav li{margin:0;border-bottom:1px solid #d8dce2;min-width:0}
.kv-store .kv-category-subnav a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 8px 18px 0;min-height:62px;font-size:19px;line-height:1.4;text-decoration:none;color:#263d51;font-weight:500;transition:color .15s,background .15s}
.kv-store .kv-category-subnav a>span:first-child{overflow-wrap:anywhere}
.kv-store .kv-category-subnav a>span:last-child{flex:none;font-size:24px;color:#6a8398}
.kv-store .kv-category-subnav a:hover{color:#0066ad;background:#e9eff5}
.kv-store .desktop-nav{gap:clamp(24px,2.5vw,48px);align-items:center}
.kv-store .desktop-nav>a,.kv-store .kv-catalog-toggle{font-size:20px;line-height:1.3;font-weight:500;letter-spacing:-.35px;min-height:48px;display:flex;align-items:center;gap:12px;color:#1d2731;white-space:nowrap}
.kv-store .kv-catalog-toggle{border:0;background:transparent;padding:0;cursor:pointer}
.kv-store .kv-catalog-toggle>span{font-size:21px;transition:transform .18s}
.kv-store .kv-catalog-toggle[aria-expanded=true]>span{transform:rotate(180deg)}
.kv-store .kv-catalog-panel{position:absolute;left:max(20px,calc((100vw - 1440px)/2));right:max(20px,calc((100vw - 1440px)/2));top:100%;padding:28px 34px 32px;max-height:calc(100svh - var(--kv-story-top,100px) - 20px);overflow:auto;background:#fff;border:1px solid #d9dfe5;border-radius:0 0 24px 24px;box-shadow:0 22px 55px #14273926;backdrop-filter:blur(18px);z-index:100}
.kv-store .kv-catalog-panel-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-bottom:22px;margin-bottom:20px;border-bottom:1px solid #dce2e7;color:#233d52}
.kv-store .kv-catalog-panel-heading>span{font-size:26px;font-weight:600;letter-spacing:-.5px}
.kv-store .kv-catalog-panel-heading>a{font-size:18px;min-height:44px;display:flex;align-items:center;gap:20px;color:#356489}
.kv-store .kv-catalog-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 36px;align-items:start}
.kv-store .kv-catalog-group{display:flex;flex-direction:column;min-width:0;gap:2px}
.kv-store .kv-catalog-group a{font-size:18px;line-height:1.35;min-height:44px;padding:10px 8px;display:flex;align-items:center;color:#526271;white-space:normal;overflow-wrap:anywhere;border-radius:6px}
.kv-store .kv-catalog-group a:hover{background:#eaf0f6;color:#16476c}
.kv-store .kv-catalog-group a.kv-catalog-group-title{font-size:21px;font-weight:600;letter-spacing:-.3px;color:#233d52;justify-content:space-between;margin-bottom:6px}
.kv-store .kv-catalog-group-title>span{flex:none;margin-left:14px}
.kv-store .mobile-menu{max-height:calc(100svh - var(--kv-story-top,90px));overflow:auto;overscroll-behavior:contain}
.kv-store .mobile-menu>a{font-size:19px;min-height:48px;display:flex;align-items:center}
.kv-store .kv-mobile-categories{border-bottom:1px solid #d8dfe5;margin-bottom:12px}
.kv-store .kv-mobile-categories details{border-top:1px solid #d8dfe5}
.kv-store .kv-mobile-categories summary{cursor:pointer;padding:17px 0;font-size:20px;line-height:1.3;font-weight:600;color:#253d51}
.kv-store .kv-mobile-categories details>div{display:flex;flex-direction:column;padding:0 0 16px 12px}
.kv-store .kv-mobile-categories a{font-size:18px;line-height:1.4;min-height:46px;padding:11px 0;color:#4e6478}
.kv-store .kv-message-strip{display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:center;gap:20px;overflow:visible;position:relative;min-height:96px;padding:20px max(24px,5vw);background:#243647;color:#f7f9fb}
.kv-store .kv-message-strip.kv-marquee--light{background:#e9eef3;color:#243e54}
.kv-store .kv-message-window{min-width:0;display:grid;place-items:center}
.kv-store .kv-message-window>a{display:flex;justify-content:center;align-items:center;gap:22px;max-width:100%;color:inherit;font-size:clamp(22px,2vw,26px);font-weight:550;line-height:1.4;letter-spacing:-.4px;text-align:center;text-decoration:none;white-space:normal;animation:kv-message-in .4s ease both}
.kv-store .kv-message-window>a>span:nth-child(2){overflow-wrap:break-word;min-width:0}
.kv-store .kv-message-window>a>span:first-child{color:#a9c6df;font-size:22px;flex:none}
.kv-store .kv-message-window>a>span:last-child{font-size:26px;flex:none}
.kv-store .kv-message-strip [data-marquee-toggle]{position:static;display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;padding:0;transform:none;border:1px solid #92a4b273;background:#ffffff0b;border-radius:50%;color:inherit;font-size:22px;cursor:pointer;z-index:1}
.kv-store .kv-message-strip [data-marquee-toggle]:disabled{cursor:default;opacity:.6}
@keyframes kv-message-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.kv-store .kv-scene-hero.kv-scene-hero--product{display:grid;grid-template-columns:minmax(0,46%) minmax(0,54%);grid-template-rows:1fr auto;gap:26px 0;min-height:650px;height:auto;padding:56px 5% 38px;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 77% 37%,#d4e2ef 0,transparent 55%),linear-gradient(125deg,#fbfbfd 20%,#f0f3f6 75%,#e7edf3);border:1px solid #dfe5ea;border-radius:28px}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-images{grid-column:2;grid-row:1/3;position:relative;inset:auto;z-index:0;align-self:stretch;min-height:470px;width:100%;height:100%;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-images:after{content:"";position:absolute;left:18%;right:12%;height:8%;bottom:9%;background:radial-gradient(ellipse,#475b7027,transparent 70%);filter:blur(12px);z-index:-1}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-images figure{position:absolute;inset:0;margin:0;background:transparent}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-images img{width:100%;height:100%;padding:4%;object-fit:contain;mix-blend-mode:multiply;transform:none;filter:none}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-images img.kv-image-framed{position:absolute;padding:0;max-width:none;max-height:none;object-fit:fill}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-ambient-light{display:block;pointer-events:none;position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 85% 10%,#d0e4f340,transparent 50%)}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy{grid-column:1;grid-row:1;position:relative;inset:auto;align-self:center;width:100%;max-width:none;padding:0 30px 0 0;z-index:1}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy .eyebrow{font-size:16px;line-height:1.5;color:#496581}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy h1{font-size:clamp(36px,4vw,66px);line-height:1.07;letter-spacing:-2px;color:#1b2834;overflow-wrap:anywhere;margin:16px 0 22px}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy .kv-scene-headline{font-size:25px!important;line-height:1.3!important;color:#344c61!important;margin:0 0 16px}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy>p:not(.kv-scene-headline){font-size:20px!important;line-height:1.55!important;color:#4b5d6d!important}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-light-button{font-size:18px;min-height:48px;padding:13px 18px;margin-top:16px;border-color:#b6c7d5;background:#ffffffa6;color:#264963}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-story-control{grid-column:1;grid-row:2;position:relative;inset:auto;width:auto;align-self:end;margin-right:30px}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-story-control>div{display:flex;flex-wrap:wrap;gap:8px}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-story-control button{font-size:18px;min-height:44px;padding:10px 12px;color:#4b6074;border-color:#b9c6d2}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-story-scroll{font-size:14px;line-height:1.4;letter-spacing:.12em;color:#5f7486;margin-bottom:12px}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-story-line{margin-top:16px}
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-photo-note{position:absolute;left:52%;right:5%;bottom:16px;font-size:14px;line-height:1.45;text-align:center;max-width:none;color:#5c7183}
.kv-store .kv-plan-submit:focus-visible,.kv-store .kv-plan-input:focus-within,.kv-store .kv-category-subnav a:focus-visible,.kv-store .kv-catalog-toggle:focus-visible,.kv-store .kv-catalog-panel a:focus-visible,.kv-store .kv-message-strip a:focus-visible,.kv-store .kv-message-strip button:focus-visible{outline:3px solid #477da8;outline-offset:4px}
@media(max-width:1179px){.kv-store .desktop-nav{display:none!important}.kv-store .mobile-menu-button{display:flex!important}.kv-store .nav-inner{gap:18px}.kv-store .kv-scene-hero.kv-scene-hero--product{padding:38px 4%;min-height:590px}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy h1{font-size:44px}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-images{min-height:420px}.kv-store .kv-quantity-planner{grid-template-columns:minmax(0,1fr) minmax(250px,.65fr);padding:28px;gap:22px}}
@media(min-width:1180px){.kv-store .mobile-menu-button{display:none!important}.kv-store .mobile-menu{display:none!important}}
@media(max-width:760px){.kv-store .kv-quantity-planner{grid-template-columns:minmax(0,1fr);padding:25px 22px;gap:22px;border-radius:22px}.kv-store .kv-plan-form{width:100%}.kv-store .kv-quantity-planner .kv-plan-copy p{font-size:18px}.kv-store .kv-quantity-planner .kv-plan-help{font-size:16px}.kv-store .kv-quantity-planner .kv-plan-status{font-size:17px}.kv-store .kv-category-subnav ul{grid-template-columns:minmax(0,1fr)}.kv-store .kv-category-subnav a{font-size:18px}.kv-store .kv-message-strip{min-height:96px;gap:12px;padding:18px 20px;grid-template-columns:minmax(0,1fr) 44px}.kv-store .kv-message-window>a{font-size:20px;gap:12px}.kv-store .kv-message-window>a>span:first-child{display:none}.kv-store .kv-message-strip [data-marquee-toggle]{width:44px;height:44px;min-width:44px}.kv-store .kv-scene-hero.kv-scene-hero--product{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 320px auto auto;gap:16px;padding:30px 23px 22px;min-height:0;border-radius:23px}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy{grid-column:1;grid-row:1;padding:0}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy h1{font-size:40px;letter-spacing:-1.4px;max-width:none}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy .kv-scene-headline{font-size:23px!important}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy>p:not(.kv-scene-headline){font-size:18px!important}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-images{grid-column:1;grid-row:2;min-height:0;height:320px;inset:auto;width:100%;align-self:auto}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-story-control{grid-column:1;grid-row:3;margin:0}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-photo-note{grid-column:1;grid-row:4;position:static;text-align:left;align-self:auto;font-size:14px}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-story-scroll{display:block;font-size:13px}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-story-control button{font-size:17px}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-copy .eyebrow{font-size:14px}.kv-store .kv-scene-hero.kv-scene-hero--product .kv-light-button{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.kv-store .kv-message-window>a{animation:none}.kv-store .kv-catalog-toggle>span,.kv-store .kv-category-subnav a{transition:none}}

.kv-store .kv-catalog-group a.kv-catalog-more{font-size:17px;color:#376488;font-weight:500}

.kv-store .kv-quantity-planner .kv-plan-submit{position:static;width:100%;height:auto;inset:auto;transform:none;font-size:19px;padding:13px 18px;min-height:54px}.kv-store .kv-plan-form label{max-width:none}
.kv-store .mobile-menu{max-height:calc(100svh - 80px)}
@media(max-width:760px){.kv-store .nav-inner{padding-left:4%;padding-right:4%;gap:8px}.kv-store .wordmark{gap:8px}.kv-store .wordmark>span{font-size:18px}.kv-store .wordmark svg{width:26px;height:30px}.kv-store .wordmark small{font-size:6px;letter-spacing:1.5px}.kv-store .nav-actions{gap:8px}.kv-store .nav-actions .icon-button{width:44px;height:44px;min-width:44px}.kv-store .cart-nav{min-height:44px}.kv-store .nav-actions svg{width:20px;height:20px}}
@media(max-width:359px){.kv-store .wordmark>span{font-size:16px}.kv-store .wordmark small{font-size:5px}.kv-store .nav-actions{gap:2px}.kv-store .nav-inner{padding-left:3%;padding-right:3%}}
@media(max-width:760px){.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-headline{display:block}}
.kv-store .kv-quantity-planner .kv-plan-help,.kv-store .kv-quantity-planner .kv-plan-status,.kv-store .kv-catalog-group a.kv-catalog-more{font-size:18px}
@media(max-width:640px){.kv-store .experience-listing-grid{grid-template-columns:minmax(0,1fr)}}
/* Blend the whole frame group so the white original canvas does not form an inner panel. */
.kv-store .kv-scene-hero.kv-scene-hero--product .kv-scene-images{mix-blend-mode:multiply}
