:is(#kp-shop,#kp-shop-drawer){--kp-navy:#214964;--kp-accent:#147e77;--kp-border:#dce6eb;--kp-muted:#667b88;box-sizing:border-box;position:relative;max-width:1240px;margin:10px auto 50px;color:#233d4c;font:15px/1.5 Arial,sans-serif;background:#f8fafb;padding:24px;border-radius:3px}
:is(#kp-shop,#kp-shop-drawer) *{box-sizing:border-box}:is(#kp-shop,#kp-shop-drawer) [hidden]{display:none!important}:is(#kp-shop,#kp-shop-drawer) h2,:is(#kp-shop,#kp-shop-drawer) h3,:is(#kp-shop,#kp-shop-drawer) h4{font-family:Raleway,Arial,sans-serif;font-weight:300;text-transform:uppercase;color:var(--kp-navy);margin:0 0 12px}:is(#kp-shop,#kp-shop-drawer) h2{font-size:30px}:is(#kp-shop,#kp-shop-drawer) h3{font-size:21px}:is(#kp-shop,#kp-shop-drawer) h4{font-size:16px}:is(#kp-shop,#kp-shop-drawer) p{margin:7px 0 12px}:is(#kp-shop,#kp-shop-drawer) button{cursor:pointer}:is(#kp-shop,#kp-shop-drawer) .kp-btn{display:inline-block;border:1px solid var(--kp-navy);color:#fff!important;background:var(--kp-navy);font-weight:600;letter-spacing:.035em;font:600 12px/1.3 Arial,sans-serif;padding:12px 15px;border-radius:3px;text-decoration:none!important}:is(#kp-shop,#kp-shop-drawer) .kp-btn:hover{background:#15617c}:is(#kp-shop,#kp-shop-drawer) .kp-btn:disabled{opacity:.5;cursor:not-allowed}:is(#kp-shop,#kp-shop-drawer) .kp-primary{background:var(--kp-accent);border-color:var(--kp-accent)}:is(#kp-shop,#kp-shop-drawer) .kp-light{background:white;color:var(--kp-navy)!important}:is(#kp-shop,#kp-shop-drawer) .kp-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px}:is(#kp-shop,#kp-shop-drawer) .kp-head p{color:var(--kp-muted)}:is(#kp-shop,#kp-shop-drawer) .kp-eyebrow{letter-spacing:2px;color:var(--kp-accent);font-size:11px;font-weight:700}:is(#kp-shop,#kp-shop-drawer) .kp-testnote{background:#fff4df;border-left:3px solid #b9924b;padding:10px 13px;font-size:12px}:is(#kp-shop,#kp-shop-drawer) .kp-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:20px;align-items:start;margin-top:20px}:is(#kp-shop,#kp-shop-drawer) .kp-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}:is(#kp-shop,#kp-shop-drawer) .kp-filter-btn{background:white;border:1px solid var(--kp-border);padding:8px 12px;color:var(--kp-navy);border-radius:3px}:is(#kp-shop,#kp-shop-drawer) .kp-filter-btn.kp-selected{background:var(--kp-navy);color:white}:is(#kp-shop,#kp-shop-drawer) .kp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}:is(#kp-shop,#kp-shop-drawer) .kp-product{background:#fff;border:1px solid var(--kp-border);border-radius:3px;min-width:0;overflow:hidden}:is(#kp-shop,#kp-shop-drawer) .kp-photo{height:130px;background:#e4eef1}:is(#kp-shop,#kp-shop-drawer) .kp-photo img{width:100%;height:100%;object-fit:cover;display:block}:is(#kp-shop,#kp-shop-drawer) .kp-product-body{padding:14px}:is(#kp-shop,#kp-shop-drawer) .kp-product h3{font-size:18px;margin:0 0 6px}:is(#kp-shop,#kp-shop-drawer) .kp-product p{font-size:13px;color:var(--kp-muted);min-height:35px}:is(#kp-shop,#kp-shop-drawer) .kp-product-bottom{display:flex;align-items:end;justify-content:space-between;gap:10px}:is(#kp-shop,#kp-shop-drawer) .kp-product-bottom strong{font-size:16px;color:var(--kp-navy)}:is(#kp-shop,#kp-shop-drawer) .kp-details-link{display:block;color:#117292;font-size:12px;margin-top:8px}:is(#kp-shop,#kp-shop-drawer) .kp-draft{font:bold 10px Arial,sans-serif;color:#966720}:is(#kp-shop,#kp-shop-drawer) .kp-side{position:sticky;top:95px;background:#fff;border:1px solid var(--kp-border);padding:18px;border-radius:3px}:is(#kp-shop,#kp-shop-drawer) .kp-side .kp-primary{width:100%}:is(#kp-shop,#kp-shop-drawer) .kp-mini-line{border-top:1px solid var(--kp-border);display:flex;gap:10px;justify-content:space-between;padding:10px 0;font-size:12px}:is(#kp-shop,#kp-shop-drawer) .kp-mini-line small{display:block;color:var(--kp-muted)}:is(#kp-shop,#kp-shop-drawer) .kp-sum{margin:14px 0;padding:12px 0;border-top:1px solid var(--kp-border);display:flex;justify-content:space-between;gap:8px;font-weight:bold}:is(#kp-shop,#kp-shop-drawer) #kp-checkout{max-width:850px;background:white;padding:24px;border:1px solid var(--kp-border)}:is(#kp-shop,#kp-shop-drawer) #kp-checkout h3{margin:20px 0 12px}:is(#kp-shop,#kp-shop-drawer) .kp-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}:is(#kp-shop,#kp-shop-drawer) .kp-fields label{font-weight:600;font-size:12px}:is(#kp-shop,#kp-shop-drawer) .kp-fields input,:is(#kp-shop,#kp-shop-drawer) .kp-fields textarea,:is(#kp-shop,#kp-shop-drawer) .kp-date-label input,:is(#kp-shop,#kp-shop-drawer) [data-product-form] textarea{display:block;width:100%;padding:11px;border:1px solid #cbd9de;border-radius:3px;background:#fff;color:#222;margin-top:5px;font:14px Arial,sans-serif}:is(#kp-shop,#kp-shop-drawer) .kp-wide{grid-column:1/-1}:is(#kp-shop,#kp-shop-drawer) .kp-payment{display:grid;grid-template-columns:1fr 1fr;gap:10px}:is(#kp-shop,#kp-shop-drawer) .kp-payment label{padding:13px;border:1px solid var(--kp-border);cursor:pointer}:is(#kp-shop,#kp-shop-drawer) .kp-payment small{display:block;padding-left:20px;color:var(--kp-muted)}:is(#kp-shop,#kp-shop-drawer) .kp-agree{display:block;margin:14px 0;font-size:13px}:is(#kp-shop,#kp-shop-drawer) .kp-agree a{color:#187da2}:is(#kp-shop,#kp-shop-drawer) .kp-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}:is(#kp-shop,#kp-shop-drawer) .kp-error{color:#a83731;font-size:13px}:is(#kp-shop,#kp-shop-drawer) .kp-line{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--kp-border);padding:15px 0}:is(#kp-shop,#kp-shop-drawer) .kp-line p{font-size:12px;color:var(--kp-muted)}:is(#kp-shop,#kp-shop-drawer) .kp-line button{background:transparent;border:0;color:#16708f;text-decoration:underline;padding:0 10px 0 0}:is(#kp-shop,#kp-shop-drawer) .kp-drawer{position:fixed;inset:0;z-index:99999}:is(#kp-shop,#kp-shop-drawer) .kp-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55)}:is(#kp-shop,#kp-shop-drawer) .kp-drawer-panel{position:absolute;right:0;top:0;height:100%;overflow-y:auto;width:min(570px,100%);background:#fff;padding:20px 24px 30px;box-shadow:-10px 0 45px #0003}:is(#kp-shop,#kp-shop-drawer) .kp-drawer-title{display:flex;align-items:start;justify-content:space-between;gap:15px;border-bottom:1px solid var(--kp-border);padding-bottom:13px}:is(#kp-shop,#kp-shop-drawer) .kp-cross{background:white;border:1px solid #ccc;border-radius:3px;width:34px;height:34px;font-size:22px}:is(#kp-shop,#kp-shop-drawer) [data-product-form] h4{margin:19px 0 9px;color:#17738a}:is(#kp-shop,#kp-shop-drawer) .kp-offer{border:1px solid var(--kp-border);display:flex;gap:10px;align-items:center;padding:10px;margin:6px 0;font-size:13px;cursor:pointer}:is(#kp-shop,#kp-shop-drawer) .kp-qty-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--kp-border);gap:10px}:is(#kp-shop,#kp-shop-drawer) .kp-qty-row b{font-size:13px}:is(#kp-shop,#kp-shop-drawer) .kp-qty-row small{display:block;color:var(--kp-muted);font-size:12px}:is(#kp-shop,#kp-shop-drawer) .kp-stepper{display:flex;align-items:center}:is(#kp-shop,#kp-shop-drawer) .kp-stepper button{width:35px;height:35px;border:1px solid #cadadf;background:#f2f7f8;font-size:19px}:is(#kp-shop,#kp-shop-drawer) .kp-stepper span{width:36px;text-align:center}:is(#kp-shop,#kp-shop-drawer) .kp-date-label{display:block;font-weight:700;font-size:12px}:is(#kp-shop,#kp-shop-drawer) .kp-help{font-size:12px;color:var(--kp-muted)}:is(#kp-shop,#kp-shop-drawer) .kp-drawer-foot{background:white;position:sticky;bottom:-30px;padding:15px 0 20px;border-top:1px solid var(--kp-border);margin-top:22px;display:flex;flex-wrap:wrap;gap:10px}:is(#kp-shop,#kp-shop-drawer) .kp-drawer-foot strong{font-size:21px;display:block;width:100%}:is(#kp-shop,#kp-shop-drawer) .kp-drawer-foot .kp-error{width:100%;margin:0}:is(#kp-shop,#kp-shop-drawer):has(.kp-drawer:not([hidden])){z-index:99999}:is(#kp-shop,#kp-shop-drawer) .kp-empty{color:var(--kp-muted)}
@media(max-width:950px){:is(#kp-shop,#kp-shop-drawer) .kp-layout{grid-template-columns:1fr}:is(#kp-shop,#kp-shop-drawer) .kp-side{position:static}}
@media(max-width:600px){:is(#kp-shop,#kp-shop-drawer){padding:14px}:is(#kp-shop,#kp-shop-drawer) .kp-head{align-items:start;flex-direction:column}:is(#kp-shop,#kp-shop-drawer) h2{font-size:24px}:is(#kp-shop,#kp-shop-drawer) .kp-grid{grid-template-columns:1fr}:is(#kp-shop,#kp-shop-drawer) .kp-fields,:is(#kp-shop,#kp-shop-drawer) .kp-payment{grid-template-columns:1fr}:is(#kp-shop,#kp-shop-drawer) .kp-product-bottom{align-items:center}:is(#kp-shop,#kp-shop-drawer) #kp-checkout{padding:13px}:is(#kp-shop,#kp-shop-drawer) .kp-drawer-panel{padding:17px 14px}}

/* Accommodation autocomplete: scoped to Kompassi Pood. */
:is(#kp-shop,#kp-shop-drawer) [data-hotel]{position:relative}
:is(#kp-shop,#kp-shop-drawer) .kp-hotel-note{display:block;color:#657980;font-size:11px;font-weight:400;margin-top:5px}
:is(#kp-shop,#kp-shop-drawer) .kp-hotel-suggestions:not([hidden]){display:block;position:absolute;left:0;right:0;top:calc(100% - 15px);max-height:250px;overflow-y:auto;background:#fff;z-index:20;border:1px solid #c4d6de;border-radius:3px;box-shadow:0 6px 18px #152d3c26}
:is(#kp-shop,#kp-shop-drawer) .kp-hotel-suggestions button{display:block;text-align:left;color:#263c47;border:0;border-bottom:1px solid #e7edef;background:#fff;width:100%;padding:11px;font-size:13px}
:is(#kp-shop,#kp-shop-drawer) .kp-hotel-suggestions button:hover,:is(#kp-shop,#kp-shop-drawer) .kp-hotel-suggestions button:focus-visible{background:#eff8fa;outline:2px solid #8ccada;outline-offset:-2px}
:is(#kp-shop,#kp-shop-drawer) .kp-hotel-suggestions small{color:#647f8b;display:block;font-size:11px}

/* v0.5: shop-first catalog. Scoped to avoid changing the Travel Tour theme. */
:is(#kp-shop,#kp-shop-drawer) .kp-tools{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:15px}
:is(#kp-shop,#kp-shop-drawer) .kp-search-label{display:block;flex:1;max-width:540px;font:700 11px/1.5 Arial,sans-serif;letter-spacing:.09em;color:var(--kp-navy)}
:is(#kp-shop,#kp-shop-drawer) .kp-search-label input{display:block;width:100%;margin-top:7px;border:1px solid var(--kp-border);border-radius:3px;padding:12px 14px;background:#fff;color:#263a45;min-height:44px;font:14px Arial,sans-serif}
:is(#kp-shop,#kp-shop-drawer) .kp-search-label input:focus-visible{outline:2px solid #53a4b5;outline-offset:1px}
:is(#kp-shop,#kp-shop-drawer) .kp-product-count{color:var(--kp-muted);font-size:12px;white-space:nowrap;padding-bottom:12px}
:is(#kp-shop,#kp-shop-drawer) .kp-filter-btn{font-size:12px}
:is(#kp-shop,#kp-shop-drawer) .kp-product .kp-photo{height:168px}
:is(#kp-shop,#kp-shop-drawer) .kp-product-body{display:flex;flex-direction:column;min-height:145px}
:is(#kp-shop,#kp-shop-drawer) .kp-product-body .kp-product-bottom{margin-top:auto}
:is(#kp-shop,#kp-shop-drawer) .kp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
:is(#kp-shop,#kp-shop-drawer) .kp-product h3{overflow-wrap:anywhere}
:is(#kp-shop,#kp-shop-drawer) .kp-draft{white-space:nowrap;display:inline-block;vertical-align:middle;margin-left:6px}
:is(#kp-shop,#kp-shop-drawer) .kp-drawer-panel{max-height:100vh;overscroll-behavior:contain}
@media(max-width:620px){:is(#kp-shop,#kp-shop-drawer) .kp-tools{flex-direction:column;align-items:stretch;gap:6px}:is(#kp-shop,#kp-shop-drawer) .kp-product-count{padding:0}:is(#kp-shop,#kp-shop-drawer) .kp-search-label{max-width:none}:is(#kp-shop,#kp-shop-drawer) .kp-product .kp-photo{height:155px}}

/* v0.6 – Kompass compact horizontal catalog and glass buttons */
#kp-shop {background:transparent;padding:8px 0;border-radius:0;font-family:Raleway,Arial,sans-serif}
#kp-shop h2 {font-size:25px}
#kp-shop .kp-head{margin:0 0 10px}
#kp-shop .kp-head p{font-size:12px;margin:5px 0}
#kp-shop .kp-layout{grid-template-columns:minmax(0,1fr) 235px;gap:12px}
#kp-shop .kp-grid{display:flex;flex-direction:column;gap:8px}
#kp-shop .kp-product{display:grid;grid-template-columns:100px minmax(0,1fr) 152px;align-items:center;gap:12px;padding:8px;min-height:116px;width:100%;border:1px solid #e3e7ea;border-radius:3px;background:#fff}
#kp-shop .kp-product:hover{background:#f6fafc;border-color:#b5dbe9}
#kp-shop .kp-product .kp-photo{width:100px;height:100px;min-height:100px;border-radius:3px;overflow:hidden;background:#eff3f4}
#kp-shop .kp-product .kp-photo img{width:100%;height:100%;max-height:none;object-fit:cover}
#kp-shop .kp-product .kp-product-body{display:flex;flex-direction:column;justify-content:center;min-height:0;padding:0;gap:5px;align-self:stretch}
#kp-shop .kp-product h3{font:300 20px/1.14 Raleway,Arial,sans-serif;color:#008bc3;margin:0;letter-spacing:0}
#kp-shop .kp-product p{font:400 12px/1.33 Raleway,Arial,sans-serif;min-height:0;margin:0;color:#454545;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#kp-shop .kp-product-actions{min-width:0;padding:3px 2px 3px 12px;border-left:1px solid #eee;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:5px}
#kp-shop .kp-product-actions small{font:400 10px/1.15 Raleway,Arial,sans-serif;color:#79838a;letter-spacing:.04em;text-align:right}
#kp-shop .kp-product-actions strong{font:300 27px/1.12 Raleway,Arial,sans-serif;color:#454545;text-align:right;white-space:nowrap}
#kp-shop .kp-product .kp-product-bottom{display:none}
#kp-shop .kp-product .kp-details-link{display:none}
#kp-shop .kp-product-actions .kp-promo{display:block;align-self:flex-end;max-width:100%;margin:0;padding:0;border:0;background:transparent!important;box-shadow:none;color:#137c9a!important;font:600 9px/1.3 Raleway,Arial,sans-serif;letter-spacing:.015em;text-transform:uppercase;text-align:right;overflow-wrap:anywhere;pointer-events:none;cursor:default}
#kp-shop .kp-days{display:flex;gap:3px;align-items:center;flex-wrap:wrap}
#kp-shop .kp-days span{height:19px;min-width:19px;padding:3px;border:1px solid #e1e6e8;border-radius:3px;background:#f8f9f9;color:#c0c7cb;font:600 10px/1 Raleway,Arial,sans-serif;text-align:center}
#kp-shop .kp-days .kp-day-active{background:#ecf8fc;border-color:#b1dbea;color:#008bc3}
:is(#kp-shop,#kp-shop-drawer) .kp-btn,:is(#kp-shop,#kp-shop-drawer) .kp-filter-btn{position:relative;overflow:hidden;isolation:isolate;border:1px solid rgba(255,255,255,.32);border-radius:3px;color:#fff!important;background:linear-gradient(135deg,#0a5a78 0%,#0a92bd 49%,#075378 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.36),0 3px 8px rgba(0,66,108,.13);padding:8px 10px;text-align:center;letter-spacing:.07em;font:400 11px/1.2 Raleway,Arial,sans-serif;text-decoration:none!important;white-space:nowrap;transition:background .2s,border-color .2s,box-shadow .2s}
:is(#kp-shop,#kp-shop-drawer) .kp-btn:before,:is(#kp-shop,#kp-shop-drawer) .kp-filter-btn:before{content:"";position:absolute;inset:-25% auto -25% -65%;width:55%;transform:skew(-22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transition:left .48s ease;pointer-events:none}
:is(#kp-shop,#kp-shop-drawer) .kp-btn:hover:before,:is(#kp-shop,#kp-shop-drawer) .kp-filter-btn:hover:before{left:115%}
:is(#kp-shop,#kp-shop-drawer) .kp-btn:hover,:is(#kp-shop,#kp-shop-drawer) .kp-filter-btn:hover{background:linear-gradient(135deg,#097a9a,#16b5d1,#0b749d);color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 3px 12px rgba(0,118,165,.25)}
:is(#kp-shop,#kp-shop-drawer) .kp-btn.kp-info{background:linear-gradient(135deg,#173e55,#376b80,#174256)}
:is(#kp-shop,#kp-shop-drawer) .kp-btn.kp-info:hover{background:linear-gradient(135deg,#247391,#3b9aba,#216280)}
#kp-shop .kp-filter-btn{padding:7px 11px;color:#12627e!important;background:#fff;border:1px solid #bbdce8;font-size:11px}
#kp-shop .kp-filter-btn.kp-selected{color:#fff!important;background:linear-gradient(135deg,#08546f,#0c85ab)}
#kp-shop .kp-side{padding:14px;top:100px}
#kp-shop .kp-side h3{font-size:17px}
#kp-shop .kp-tools{margin-bottom:8px}
#kp-shop .kp-testnote{padding:8px 12px;margin:7px 0}
#kp-shop-drawer{--kp-navy:#214964;--kp-accent:#147e77;--kp-border:#dce6eb;--kp-muted:#667b88;position:fixed!important;inset:0!important;z-index:2147483600!important;color:#233d4c;font:15px/1.5 Arial,sans-serif;box-sizing:border-box;isolation:isolate}
#kp-shop-drawer[hidden]{display:none!important}
#kp-shop-drawer *{box-sizing:border-box}
#kp-shop-drawer .kp-overlay{position:absolute;inset:0;background:rgba(0,0,0,.58)}
#kp-shop-drawer .kp-drawer-panel{position:absolute;right:0;top:0;bottom:0;height:100dvh;max-height:100dvh;width:min(570px,100%);background:#fff;padding:24px 23px 30px;overflow-y:auto;overscroll-behavior:contain;box-shadow:-10px 0 45px #0003}
#kp-shop-drawer .kp-drawer-title{position:sticky;top:-24px;z-index:5;padding:8px 0 12px;background:#fff}
#kp-shop-drawer h3,#kp-shop-drawer h4{font-family:Raleway,Arial,sans-serif;font-weight:300;text-transform:uppercase;color:#214964}
body.kp-modal-open{overflow:hidden!important}
#kp-shop-drawer .kp-stepper button{background:linear-gradient(135deg,#10799d,#075778)!important;color:#fff!important;border:1px solid #126887!important;width:34px;height:36px;font-weight:700;font-size:20px;border-radius:3px}
#kp-shop-drawer .kp-stepper button:hover{background:#11a7ce!important}
#kp-shop-drawer .kp-stepper input{width:49px;min-width:49px;height:36px;margin:0 4px;padding:2px;text-align:center;border:1px solid #b6cbd5;border-radius:3px;background:#fff;color:#233d4c;font:15px Arial,sans-serif}
#kp-shop-drawer .kp-qty-row{gap:12px}
#kp-shop-drawer .kp-calendar{border:1px solid #d3e1e8;border-radius:3px;padding:12px;margin:12px 0 20px;max-width:410px}
#kp-shop-drawer .kp-cal-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:10px}
#kp-shop-drawer .kp-cal-top b{font:400 16px Raleway,Arial,sans-serif;text-transform:uppercase}
#kp-shop-drawer .kp-cal-nav{border:1px solid #d7e2e7;background:#edf6f8;color:#155e7b;border-radius:3px;width:34px;height:34px;font-size:24px;line-height:1}
#kp-shop-drawer .kp-cal-nav:disabled{opacity:.3}
#kp-shop-drawer .kp-cal-weekdays,#kp-shop-drawer .kp-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
#kp-shop-drawer .kp-cal-weekdays{margin-bottom:7px}
#kp-shop-drawer .kp-cal-weekdays span{font:600 12px/23px Raleway,Arial,sans-serif;color:#aebbc2;border-bottom:2px solid #e0e6ea}
#kp-shop-drawer .kp-cal-weekdays .kp-cal-working{color:#007fb1;border-color:#009bd1}
#kp-shop-drawer .kp-cal-date{border-radius:3px;border:1px solid transparent;min-height:38px;display:flex;align-items:center;justify-content:center;flex-direction:column;font:500 14px Raleway,Arial,sans-serif;background:transparent}
#kp-shop-drawer .kp-cal-available{border-color:#98d0e6;background:#d9f3fc;color:#006b97;font-weight:700;cursor:pointer}
#kp-shop-drawer .kp-cal-available:hover,#kp-shop-drawer .kp-cal-available:focus-visible{border-color:#087ca5;background:#9bdbf1;color:#084969;outline:1px solid #087ca5}
#kp-shop-drawer .kp-cal-selected{background:#056c99!important;color:#fff!important;border-color:#025d84!important}
#kp-shop-drawer .kp-cal-off{color:#ccd5da;background:#f8f9fa}
#kp-shop-drawer .kp-cal-soldout{background:#fff0ee;color:#b33a31;border-color:#e5bdbb;text-decoration:line-through}
#kp-shop-drawer .kp-cal-soldout span{font:600 8px/1.05 Arial,sans-serif;text-decoration:none;text-transform:uppercase}
#kp-shop-drawer .kp-cal-pad{min-height:38px}
#kp-shop-drawer .kp-cal-legend{display:flex;gap:11px;flex-wrap:wrap;margin-top:11px;font:11px Raleway,Arial,sans-serif;color:#596b73}
#kp-shop-drawer .kp-cal-legend span{display:inline-flex;align-items:center;gap:5px}
#kp-shop-drawer .kp-cal-legend i{display:inline-block;width:12px;height:12px;border:1px solid #ccd8df;border-radius:2px}
#kp-shop-drawer .kp-legend-yes{background:#d9f3fc;border-color:#98d0e6!important}
#kp-shop-drawer .kp-legend-off{background:#f8f9fa}
#kp-shop-drawer .kp-legend-full{background:#fff0ee;border-color:#e5bdbb!important}
#kp-shop-drawer .kp-cal-chosen,#kp-shop-drawer .kp-cal-no-dates{font:12px/1.4 Raleway,Arial,sans-serif;margin:10px 0 0}
#kp-shop-drawer .kp-cal-chosen{color:#075d82}
@media(max-width:970px){#kp-shop .kp-layout{grid-template-columns:1fr}#kp-shop .kp-side{position:static}}
@media(max-width:640px){#kp-shop .kp-product{grid-template-columns:76px minmax(0,1fr);gap:9px;align-items:start}
#kp-shop .kp-product .kp-photo{height:76px;width:76px;min-height:76px}
#kp-shop .kp-product h3{font-size:17px}
#kp-shop .kp-product-actions{grid-column:1/-1;border-left:0;border-top:1px solid #eee;padding:8px 0 0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px}
#kp-shop .kp-product-actions small{grid-column:1;grid-row:1;font-size:9px;text-align:left}
#kp-shop .kp-product-actions strong{grid-column:1;grid-row:2;font-size:22px;text-align:left}
#kp-shop .kp-product-actions .kp-btn{align-self:stretch;display:flex;align-items:center;justify-content:center;grid-row:1/3}
#kp-shop .kp-product-actions .kp-btn[data-open]{grid-column:2}#kp-shop .kp-product-actions .kp-info{grid-column:3}
#kp-shop-drawer .kp-drawer-panel{width:100%;padding:14px 14px 20px}
#kp-shop-drawer .kp-drawer-title{top:-14px}}

/* Kompassi Pood v0.7 – agreed adjustments, applied last for theme compatibility. */
/* The 'grey box' is NOT a broken element; it is the intentional full-page modal backdrop.
   v0.6 used 58% black, obscuring the page. Make it faint instead. */
#kp-shop-drawer .kp-overlay{background:rgba(22,42,59,.08)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#kp-shop-drawer .kp-drawer-panel{box-shadow:-7px 0 20px rgba(30,51,66,.11)!important}
/* Uniform, visibly compact 7-column calendar. Aggressively override theme wrapping. */
#kp-shop-drawer .kp-calendar{width:100%!important;max-width:354px!important;min-width:0!important;margin:8px 0 14px!important;padding:10px!important;border:1px solid #e0e5e8!important;border-radius:3px!important;overflow:hidden!important}
#kp-shop-drawer .kp-cal-top{padding:0 0 8px!important;min-height:32px!important}
#kp-shop-drawer .kp-cal-top b{font:300 14px/1.2 Raleway,Arial,sans-serif!important;letter-spacing:.02em!important;white-space:nowrap!important}
#kp-shop-drawer .kp-cal-nav{width:29px!important;height:29px!important;min-height:0!important;padding:0!important;font-size:20px!important;line-height:1!important;background:#f6f7f8!important;color:#4c5962!important;border:1px solid #dce1e5!important;border-radius:3px!important}
#kp-shop-drawer .kp-cal-weekdays,#kp-shop-drawer .kp-cal-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:3px!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:0!important;margin:0!important;align-items:stretch!important;justify-items:stretch!important;box-sizing:border-box!important}
#kp-shop-drawer .kp-cal-weekdays{margin-bottom:5px!important}
#kp-shop-drawer .kp-cal-weekdays span{display:block!important;min-width:0!important;max-width:100%!important;text-align:center!important;line-height:22px!important;font-size:11px!important;padding:0!important}
#kp-shop-drawer .kp-cal-date,#kp-shop-drawer .kp-cal-pad{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:center!important;position:relative!important;min-width:0!important;max-width:100%!important;width:100%!important;height:31px!important;min-height:31px!important;max-height:31px!important;padding:0 1px!important;margin:0!important;font:500 12px/1 Raleway,Arial,sans-serif!important;letter-spacing:0!important;text-align:center!important;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important;hyphens:none!important;overflow:hidden!important;box-sizing:border-box!important}
#kp-shop-drawer .kp-cal-soldout{font-size:11px!important;padding-bottom:6px!important}
#kp-shop-drawer .kp-cal-soldout span{position:absolute!important;left:0!important;right:0!important;bottom:1px!important;display:block!important;font:600 7px/1 Arial,sans-serif!important;white-space:nowrap!important;letter-spacing:0!important}
#kp-shop-drawer .kp-cal-legend{font-size:10px!important;gap:9px!important;margin-top:9px!important}
#kp-shop-drawer .kp-cal-chosen,#kp-shop-drawer .kp-cal-no-dates{font-size:11px!important;margin:7px 0 0!important}
/* Soft glass buttons: subtle raised ivory gradient; sweeping shimmer on hover. */
#kp-shop .kp-btn,#kp-shop-drawer .kp-btn,
#kp-shop .kp-filter-btn,#kp-shop-drawer .kp-filter-btn{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  background:linear-gradient(160deg,rgba(255,255,255,.99),rgba(237,239,241,.96))!important;
  color:#323b41!important;border:1px solid #cbd0d4!important;border-radius:9px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 3px 9px rgba(15,25,35,.11)!important;
  text-shadow:none!important;font-family:Raleway,Arial,sans-serif!important;font-weight:400!important;
  transition:background .2s,border-color .2s,box-shadow .2s,transform .2s!important;
}
#kp-shop .kp-btn:before,#kp-shop-drawer .kp-btn:before,
#kp-shop .kp-filter-btn:before,#kp-shop-drawer .kp-filter-btn:before{
  content:"";position:absolute;inset:-40% auto -40% -80%;width:45%;transform:skew(-24deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.91),transparent);
  transition:left .45s ease;pointer-events:none;
}
#kp-shop .kp-btn:hover,#kp-shop-drawer .kp-btn:hover,
#kp-shop .kp-filter-btn:hover,#kp-shop-drawer .kp-filter-btn:hover{
  background:linear-gradient(155deg,#fff,#e9f4f8)!important;color:#27353d!important;
  border-color:#a4bdc8!important;box-shadow:inset 0 1px 0 #fff,0 5px 13px rgba(30,58,70,.16)!important
}
#kp-shop .kp-btn:hover:before,#kp-shop-drawer .kp-btn:hover:before,
#kp-shop .kp-filter-btn:hover:before,#kp-shop-drawer .kp-filter-btn:hover:before{left:135%}
#kp-shop .kp-filter-btn.kp-selected{background:linear-gradient(160deg,#e2f4f9,#f8fbfc)!important;color:#20546b!important;border-color:#98bfce!important;box-shadow:inset 0 1px 0 #fff,0 2px 5px rgba(17,70,93,.11)!important}
#kp-shop .kp-filter{gap:6px!important}
#kp-shop .kp-filter-btn{padding:8px 12px!important;border-radius:8px!important;font-size:11px!important}
/* Only this sidebar CTA is red, as requested. */
#kp-shop .kp-btn.kp-checkout-red{background:linear-gradient(160deg,#cd3740,#b5222c)!important;color:white!important;border-color:#b5222c!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 3px 8px rgba(143,28,38,.17)!important}
#kp-shop .kp-btn.kp-checkout-red:hover{background:linear-gradient(155deg,#e05258,#bc252e)!important;color:#fff!important;border-color:#ae2029!important}
/* Quantity controls: neutral and compact, not massive blue blocks. */
#kp-shop-drawer .kp-stepper{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;gap:5px!important;flex-shrink:0!important}
#kp-shop-drawer .kp-stepper button,#kp-shop-drawer .kp-stepper button:hover{
  background:linear-gradient(180deg,#fff,#f0f2f3)!important;border:1px solid #d0d7db!important;
  color:#283740!important;font:400 17px/1 Arial,sans-serif!important;text-shadow:none!important;
  box-shadow:inset 0 1px 0 #fff!important;border-radius:5px!important;
  width:29px!important;min-width:29px!important;max-width:29px!important;height:30px!important;min-height:30px!important;
  padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important
}
#kp-shop-drawer .kp-stepper button:hover{border-color:#9cbdcc!important;background:#e7f3f7!important}
#kp-shop-drawer .kp-stepper input{width:41px!important;min-width:41px!important;max-width:41px!important;height:30px!important;padding:0 2px!important;margin:0!important;line-height:30px!important;text-align:center!important;color:#263940!important}
#kp-shop-drawer .kp-qty-row{gap:6px!important}
@media(max-width:540px){#kp-shop-drawer .kp-calendar{max-width:100%!important}#kp-shop-drawer .kp-cal-date{height:30px!important;min-height:30px!important;max-height:30px!important}}

/* v0.8 – centred booking dialog, frosted backdrop and compact controls. */
/* The original .kp base rule also styled #kp-shop-drawer as a content box.
   Reset its max-width, padding, margins and background: those created the large grey rectangle. */
body #kp-shop-drawer.kp-drawer {
  position:fixed!important;inset:0!important;top:0!important;left:0!important;
  right:0!important;bottom:0!important;display:flex!important;align-items:center!important;
  justify-content:center!important;width:100vw!important;height:100dvh!important;
  max-width:none!important;min-width:0!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;isolation:isolate!important;z-index:2147483600!important;
}
body #kp-shop-drawer.kp-drawer[hidden]{display:none!important}
#kp-shop-drawer .kp-overlay{
  position:absolute!important;inset:0!important;
  background:rgba(241,246,249,.52)!important;
  -webkit-backdrop-filter:blur(9px) saturate(.82)!important;
  backdrop-filter:blur(9px) saturate(.82)!important;
}
#kp-shop-drawer .kp-drawer-panel{
  position:relative!important;z-index:1!important;inset:auto!important;
  width:min(630px,calc(100vw - 32px))!important;max-width:630px!important;
  height:auto!important;max-height:calc(100dvh - 34px)!important;
  margin:auto!important;padding:20px 24px 24px!important;
  background:#fff!important;overflow-y:auto!important;overscroll-behavior:contain!important;
  border:1px solid rgba(181,198,207,.85)!important;border-radius:10px!important;
  box-shadow:0 20px 70px rgba(31,56,70,.20),0 3px 16px rgba(31,56,70,.08)!important;
}
#kp-shop-drawer .kp-drawer-title{
  position:sticky!important;top:-20px!important;z-index:5!important;
  background:rgba(255,255,255,.98)!important;align-items:flex-start!important;
  padding:7px 0 12px!important;margin-bottom:12px!important;
}
#kp-shop-drawer .kp-cross,#kp-shop-drawer .kp-cross:hover,#kp-shop-drawer .kp-cross:focus{
  flex:0 0 40px!important;width:40px!important;height:40px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid #acbdc5!important;border-radius:6px!important;
  background:linear-gradient(180deg,#fff,#eef3f5)!important;
  color:#18394b!important;font:500 29px/1 Arial,sans-serif!important;
  padding:0!important;box-shadow:0 1px 5px rgba(40,60,80,.12)!important;
  text-shadow:none!important;opacity:1!important;cursor:pointer!important;
}
#kp-shop-drawer .kp-cross:hover{border-color:#488ba5!important;box-shadow:0 2px 9px rgba(40,60,80,.19)!important}
#kp-shop-drawer .kp-live-total{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:16px!important;padding:10px 13px!important;margin:12px 0 15px!important;
  background:linear-gradient(165deg,#f8fafb,#f0f5f7)!important;
  border:1px solid #dde6ea!important;border-radius:5px!important;
  font:400 12px/1.3 Raleway,Arial,sans-serif!important;letter-spacing:.08em!important;
}
#kp-shop-drawer .kp-live-total strong{
  font:400 24px/1.2 Raleway,Arial,sans-serif!important;white-space:nowrap!important;
  color:#173f56!important;letter-spacing:0!important;
}
#kp-shop-drawer input[type="date"][data-visit-date]{
  display:block!important;width:178px!important;max-width:100%!important;
  min-width:0!important;height:40px!important;min-height:40px!important;
  margin:7px 0 0!important;padding:5px 7px!important;
  border:1px solid #c7d5dd!important;border-radius:4px!important;
  background:#fff!important;color:#273844!important;
  font:400 13px/1.4 Arial,sans-serif!important;
}
#kp-shop-drawer input[type="date"]::-webkit-calendar-picker-indicator{
  cursor:pointer!important;opacity:.9!important;margin-left:2px!important;padding:0!important;
}
#kp-shop-drawer .kp-drawer-foot{bottom:-24px!important;padding:12px 0 5px!important;margin-top:12px!important}
#kp-shop .kp-btn.kp-continue-red,#kp-shop .kp-btn.kp-continue-red:hover{
  color:#fff!important;border-color:#ad232d!important;
  background:linear-gradient(155deg,#d33e47,#ac1e2a)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.27),0 4px 12px rgba(152,38,47,.17)!important;
}
#kp-shop .kp-done-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
#kp-shop .kp-done-thanks{font-size:19px;color:#24485c;margin:10px 0 12px}
#kp-shop #kp-done{background:#fff;border:1px solid #e2e8ec;border-radius:6px;padding:24px;max-width:650px}
#kp-shop [data-side-checkout][hidden]{display:none!important}
@media(max-width:600px){
 body #kp-shop-drawer.kp-drawer{padding:0!important}
 #kp-shop-drawer .kp-drawer-panel{width:calc(100vw - 16px)!important;max-width:none!important;max-height:calc(100dvh - 16px)!important;padding:15px 13px 19px!important;border-radius:8px!important}
 #kp-shop-drawer .kp-drawer-title{top:-15px!important}
 #kp-shop-drawer .kp-live-total strong{font-size:21px!important}
}

#kp-shop[data-panel="done"] .kp-side{display:none!important}
#kp-shop[data-panel="done"] .kp-layout{grid-template-columns:1fr!important}
#kp-shop .kp-done-ref{color:#657580;font-size:13px;margin:-3px 0 12px}

/* v0.9: Dense ticket rows. Reading link beneath weekday markers. */
#kp-shop .kp-grid{gap:6px!important}
#kp-shop .kp-product{grid-template-columns:78px minmax(0,1fr) 130px!important;gap:9px!important;min-height:90px!important;padding:6px 8px!important;align-items:center!important}
#kp-shop .kp-product .kp-photo{width:78px!important;height:78px!important;min-height:78px!important;border-radius:3px!important}
#kp-shop .kp-product .kp-photo img{height:100%!important;width:100%!important;object-fit:cover!important}
#kp-shop .kp-product .kp-product-body{min-height:0!important;padding:0!important;gap:3px!important;align-self:center!important;justify-content:center!important}
#kp-shop .kp-product h3{font-size:18px!important;line-height:1.13!important;margin:0!important}
#kp-shop .kp-product p{font-size:11px!important;line-height:1.25!important;margin:0!important;min-height:0!important;-webkit-line-clamp:2!important}
#kp-shop .kp-product .kp-days{gap:2px!important;margin:1px 0 0!important}
#kp-shop .kp-product .kp-days span{min-width:17px!important;height:17px!important;padding:2px!important;font-size:10px!important}
#kp-shop .kp-product .kp-info-body{display:inline-flex!important;align-self:start!important;margin:3px 0 0!important;width:auto!important;padding:5px 9px!important;font-size:10px!important;letter-spacing:.04em!important;line-height:1.2!important;white-space:nowrap!important}
#kp-shop .kp-product .kp-product-actions{grid-column:auto!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;border-left:1px solid #ececec!important;border-top:0!important;gap:5px!important;padding:3px 1px 3px 10px!important}
#kp-shop .kp-product .kp-product-actions strong{font-size:23px!important;line-height:1.1!important}
#kp-shop .kp-product .kp-product-actions .kp-btn[data-open]{width:100%!important;padding:7px 7px!important}
@media(max-width:640px){
#kp-shop .kp-product{grid-template-columns:64px minmax(0,1fr)!important;gap:8px!important;min-height:0!important;padding:6px!important;align-items:start!important}
#kp-shop .kp-product .kp-photo{width:64px!important;height:64px!important;min-height:64px!important}
#kp-shop .kp-product h3{font-size:16px!important}
#kp-shop .kp-product .kp-product-actions{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #eee!important;padding:5px 0 0!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:3px 8px!important}
#kp-shop .kp-product .kp-product-actions small{grid-column:1!important;grid-row:1!important}
#kp-shop .kp-product .kp-product-actions strong{grid-column:1!important;grid-row:2!important;font-size:20px!important;text-align:left!important}
#kp-shop .kp-product .kp-product-actions .kp-btn[data-open]{grid-column:2!important;grid-row:1/3!important;width:auto!important;align-self:center!important;min-width:108px!important}
#kp-shop .kp-product .kp-product-actions.kp-has-promo .kp-promo{grid-column:1!important;grid-row:3!important;justify-self:start!important;align-self:start!important;text-align:left!important}
#kp-shop .kp-product .kp-product-actions.kp-has-promo .kp-btn[data-open]{grid-row:1/4!important}
}

/* v0.9: hide checkout CTA until basket exists; JS also toggles [hidden]. */
#kp-shop .kp-side [data-side-checkout][hidden]{display:none!important}
/* Mobile: avoid tall cards in the purchasing catalogue. Details remain on LOE LISAKS. */
@media(max-width:600px){
 #kp-shop .kp-product .kp-photo{width:60px!important;height:60px!important;min-height:60px!important}
 #kp-shop .kp-product{grid-template-columns:60px minmax(0,1fr)!important;padding:5px 6px!important;gap:7px!important}
 #kp-shop .kp-product h3{font-size:14px!important;line-height:1.15!important}
 #kp-shop .kp-product .kp-product-body>p{display:none!important}
 #kp-shop .kp-product .kp-info-body{margin:1px 0 0!important;padding:4px 7px!important}
 #kp-shop .kp-product .kp-product-actions{padding:4px 0 0!important}
 #kp-shop .kp-product .kp-product-actions .kp-btn[data-open]{min-width:90px!important;padding:6px 7px!important}
}

/* v0.9.5: On a successful checkout return show only the calm customer confirmation. */
#kp-shop[data-panel="done"] > .kp-head,
#kp-shop[data-panel="done"] > .kp-testnote{display:none!important}
#kp-shop[data-panel="done"] .kp-layout{margin-top:0!important}
#kp-shop[data-panel="done"] #kp-done{max-width:700px!important}

/* v0.9.7: Nähtav minimaalne osalejate arv ainult toodetel, kus see on üle ühe. */
#kp-shop .kp-product .kp-min-people{
 display:block!important;margin:2px 0!important;min-height:0!important;
 color:#27576b!important;font:600 10px/1.3 Arial,sans-serif!important;letter-spacing:.03em!important;
}
#kp-shop-drawer .kp-min-people-form{
 margin:10px 0 8px!important;padding:9px 12px!important;
 background:#f4f8fa!important;border:1px solid #dbe6eb!important;border-radius:3px!important;
 color:#23485b!important;font:400 13px/1.45 Arial,sans-serif!important;
}
#kp-shop-drawer .kp-min-people-form strong{color:#153e52!important}
#kp-shop-drawer .kp-min-people-form [data-min-count]{display:inline-block;margin-left:6px;color:#496c7d!important}

/* v0.10.0 – Jet Ski only: unit price and independent scooter quantities. */
#kp-shop-drawer .kp-scooter-help{margin:0 0 10px!important;line-height:1.5}
#kp-shop-drawer .kp-scooter-rows{border-top:1px solid #dce5ea}
#kp-shop-drawer .kp-scooter-row{display:grid!important;grid-template-columns:minmax(0,1fr) 78px 124px;gap:12px;align-items:center;padding:8px 2px;border-bottom:1px solid #e0e8ec;min-height:49px}
#kp-shop-drawer .kp-scooter-name{min-width:0;color:#27465a;font:400 13px/1.35 Raleway,Arial,sans-serif}
#kp-shop-drawer .kp-scooter-price{white-space:nowrap!important;color:#173e50;font:600 14px/1.25 Arial,sans-serif!important;text-align:right}
#kp-shop-drawer .kp-scooter-stepper{justify-content:flex-end!important}
#kp-shop-drawer .kp-scooter-off{opacity:.55}
#kp-shop-drawer .kp-scooter-off .kp-stepper button:disabled{cursor:not-allowed}
#kp-shop-drawer .kp-scooter-rows+.kp-live-total{margin-top:14px!important}
@media(max-width:530px){
 #kp-shop-drawer .kp-scooter-row{grid-template-columns:minmax(0,1fr) 63px 116px;gap:5px;padding:9px 0}
 #kp-shop-drawer .kp-scooter-name{font-size:11px!important;line-height:1.3!important}
 #kp-shop-drawer .kp-scooter-price{font-size:12px!important}
 #kp-shop-drawer .kp-scooter-stepper{gap:3px!important}
 #kp-shop-drawer .kp-scooter-stepper button{width:26px!important;min-width:26px!important;max-width:26px!important}
 #kp-shop-drawer .kp-scooter-stepper input{width:34px!important;min-width:34px!important;max-width:34px!important}
}

/* v0.10.8 — event dates and large, readable prices in purchase modal. */
#kp-shop-drawer .kp-qty-row .kp-price-label{display:flex!important;align-items:baseline;gap:5px 9px;flex-wrap:wrap;min-width:0;}
#kp-shop-drawer .kp-qty-row .kp-price-label b{font:500 15px/1.35 Raleway,Arial,sans-serif!important;color:#203d50!important;}
#kp-shop-drawer .kp-qty-row .kp-price-label small{display:inline!important;font:400 12px/1.35 Raleway,Arial,sans-serif!important;color:#536775!important;}
#kp-shop-drawer .kp-qty-row .kp-price-label .kp-amount{display:inline-block!important;font:600 21px/1.2 Raleway,Arial,sans-serif!important;color:#093f60!important;white-space:nowrap;}
#kp-shop-drawer .kp-offer{font:400 15px/1.4 Raleway,Arial,sans-serif!important;min-height:47px;}
#kp-shop-drawer .kp-offer-price{font:600 18px/1.3 Raleway,Arial,sans-serif!important;color:#0c5073!important;white-space:nowrap;}
#kp-shop-drawer .kp-fixed-event-date{font:500 24px/1.25 Raleway,Arial,sans-serif!important;color:#095278!important;padding:12px 14px!important;background:#f0f8fa;border:1px solid #bad8e5;border-radius:3px;}
#kp-shop .kp-fixed-event{font:600 12px/1.3 Raleway,Arial,sans-serif!important;color:#075d82!important;letter-spacing:.025em;}
@media(max-width:480px){#kp-shop-drawer .kp-qty-row .kp-price-label .kp-amount{font-size:19px!important;}#kp-shop-drawer .kp-offer-price{font-size:16px!important;}}

/* v0.10.12 – agreed catalog order: KOMPASSIST → price → red SOODUKAS → add to cart.
   Only the sale badge changes; other hand-written promotional labels remain untouched. */
#kp-shop .kp-product .kp-product-actions .kp-promo.kp-promo-sale{
    display:inline-block!important;
    align-self:flex-end!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    padding:5px 10px!important;
    border:0!important;
    border-radius:3px!important;
    background:#c71928!important;
    background-image:none!important;
    box-shadow:none!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font:600 10px/1.3 Raleway,Arial,sans-serif!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow-wrap:normal!important;
    pointer-events:none!important;
}
/* v0.10.10's narrow-screen grid placed the sale under the price but moved the
   button alongside it. Preserve the agreed top-to-bottom visual order. */
@media(max-width:640px){
  #kp-shop .kp-product .kp-product-actions{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    justify-content:center!important;
    gap:5px!important;
  }
  #kp-shop .kp-product .kp-product-actions small,
  #kp-shop .kp-product .kp-product-actions strong{
    text-align:right!important;
  }
  #kp-shop .kp-product .kp-product-actions .kp-promo.kp-promo-sale{
    align-self:flex-end!important;
    justify-self:end!important;
    text-align:center!important;
  }
  #kp-shop .kp-product .kp-product-actions .kp-btn[data-open]{
    align-self:flex-end!important;
    width:150px!important;
    max-width:100%!important;
  }
}


/* v0.10.13 – Six visual category selectors + category-grouped KÕIK view.
   Only the public catalogue presentation is changed; purchase form, calendar,
   accommodation autocomplete, checkout, prices and Stripe remain unchanged. */
#kp-shop .kp-head{align-items:start;gap:16px;margin-bottom:14px}
#kp-shop .kp-head h2{margin:0 0 9px!important;font:300 28px/1.15 Raleway,Arial,sans-serif!important;letter-spacing:.035em}
#kp-shop .kp-steps{display:flex;align-items:center;flex-wrap:wrap;gap:5px 9px;max-width:970px;color:#315268;font:500 11px/1.5 Raleway,Arial,sans-serif;letter-spacing:.02em}
#kp-shop .kp-steps span{display:inline}
#kp-shop .kp-steps b{color:#1886a5;font:500 18px/1 Arial,sans-serif}
#kp-shop .kp-cart-open{white-space:nowrap;flex-shrink:0}
#kp-shop .kp-categories{margin:0 0 19px;padding:0 0 16px;border-bottom:1px solid #dce7ec}
#kp-shop .kp-categories-intro{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:2px 12px;margin:2px 0 10px}
#kp-shop .kp-categories-intro h3{font:300 21px/1.25 Raleway,Arial,sans-serif!important;letter-spacing:.03em;margin:0!important;color:#24495d!important}
#kp-shop .kp-categories-intro p{font:400 12px/1.4 Raleway,Arial,sans-serif;color:#637984;margin:0!important}
#kp-shop .kp-category-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#kp-shop .kp-category-card{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:0!important;border:1px solid #d4e0e6!important;border-radius:3px!important;overflow:hidden;background:#fff!important;box-shadow:0 2px 6px #193c4b12!important;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s;text-align:left;color:#21445a!important;font-family:Raleway,Arial,sans-serif}
#kp-shop .kp-category-card:hover{transform:translateY(-2px);border-color:#7fbdd3!important;box-shadow:0 5px 15px #193c4b22!important}
#kp-shop .kp-category-card:focus-visible{outline:3px solid #1380a3;outline-offset:2px}
#kp-shop .kp-category-card.kp-selected{border-color:#167fa6!important;box-shadow:0 0 0 2px #1c98c34d!important}
#kp-shop .kp-category-image{display:block;width:100%;aspect-ratio:16/8;overflow:hidden;background:linear-gradient(135deg,#d0e8ee,#87afc0)}
#kp-shop .kp-category-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}
#kp-shop .kp-category-card:hover .kp-category-image img{transform:scale(1.035)}
#kp-shop .kp-category-copy{display:flex;flex-direction:column;min-width:0;gap:2px;justify-content:center;padding:9px 10px 10px;min-height:52px;background:#fff!important}
#kp-shop .kp-category-copy strong{font:500 13px/1.15 Raleway,Arial,sans-serif;color:#185875!important;letter-spacing:.045em;overflow-wrap:anywhere}
#kp-shop .kp-category-copy small{font:400 11px/1.28 Raleway,Arial,sans-serif;color:#697e88!important;letter-spacing:0}
#kp-shop .kp-listing-start{scroll-margin-top:90px}
#kp-shop .kp-product-group{display:flex;flex-direction:column;gap:8px;width:100%;margin:0 0 11px}
#kp-shop .kp-group-head{display:flex;gap:12px;justify-content:space-between;align-items:baseline;padding:11px 2px 5px;border-bottom:1px solid #d2e4eb;margin:5px 0 1px}
#kp-shop .kp-group-head h3{font:300 19px/1.2 Raleway,Arial,sans-serif!important;margin:0!important;color:#185a78!important;letter-spacing:.04em}
#kp-shop .kp-group-head span{color:#84949c;font:400 11px/1.3 Raleway,Arial,sans-serif;white-space:nowrap}
@media(max-width:900px){#kp-shop .kp-category-cards{gap:8px}}
@media(max-width:600px){
 #kp-shop .kp-head h2{font-size:23px!important}
 #kp-shop .kp-steps{font-size:10px;line-height:1.4;gap:4px 6px}
 #kp-shop .kp-category-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #kp-shop .kp-categories-intro h3{font-size:19px!important}
 #kp-shop .kp-category-image{aspect-ratio:16/9}
 #kp-shop .kp-category-copy{padding:7px 8px;min-height:55px}
 #kp-shop .kp-category-copy strong{font-size:11px}
 #kp-shop .kp-category-copy small{font-size:10px}
 #kp-shop .kp-group-head h3{font-size:17px!important}
}
@media(prefers-reduced-motion:reduce){#kp-shop .kp-category-card,#kp-shop .kp-category-image img{transition:none!important}}


/* v0.10.15 – omaniku valitud KOLMAS kategooriakaartide kujundus.
   Suur fotopind, all tume gradient, tekst valge ning kuldse piirjoonega
   ümmargune nool. Ainult kuus kataloogi kategooriakaarti; kõik ostufunktsioonid,
   filtrid, tootefotode valik ja ülejäänud CSS on puutumata. */
#kp-shop .kp-category-cards{
  gap:12px;
}
#kp-shop .kp-category-card{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:220px;
  aspect-ratio:4 / 3;
  isolation:isolate;
  overflow:hidden!important;
  padding:0!important;
  border:1px solid rgba(28,58,76,.13)!important;
  border-radius:3px!important;
  background:linear-gradient(135deg,#7b9ba6,#20435b)!important;
  color:#fff!important;
  box-shadow:0 4px 12px rgba(12,37,52,.15)!important;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
#kp-shop .kp-category-card:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(226,190,116,.78)!important;
  box-shadow:0 10px 25px rgba(12,37,52,.24)!important;
}
#kp-shop .kp-category-card.kp-selected{
  border-color:#d8b476!important;
  box-shadow:0 0 0 2px rgba(216,180,118,.62),0 6px 19px rgba(12,37,52,.17)!important;
}
#kp-shop .kp-category-card:focus-visible{
  outline:2px solid #c99f58!important;
  outline-offset:3px!important;
}
#kp-shop .kp-category-image{
  position:absolute!important;
  inset:0;
  z-index:0;
  display:block!important;
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  background:linear-gradient(135deg,#769aa9,#24445b)!important;
  overflow:hidden!important;
}
#kp-shop .kp-category-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  transition:transform .4s ease!important;
}
#kp-shop .kp-category-image::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(to top,rgba(3,19,31,.98) 0%,rgba(3,19,31,.78) 12%,rgba(3,19,31,.38) 32%,rgba(3,19,31,0) 64%);
}
#kp-shop .kp-category-card:hover .kp-category-image img{
  transform:scale(1.04)!important;
}
#kp-shop .kp-category-copy{
  position:absolute!important;
  z-index:2;
  bottom:0;
  left:0;
  right:0;
  display:flex!important;
  flex-direction:column!important;
  justify-content:end!important;
  align-items:flex-start!important;
  gap:4px!important;
  min-width:0!important;
  min-height:0!important;
  padding:32px 59px 18px 17px!important;
  background:transparent!important;
  text-align:left!important;
}
#kp-shop .kp-category-copy strong,
#kp-shop .kp-category-card:hover .kp-category-copy strong,
#kp-shop .kp-category-card.kp-selected .kp-category-copy strong{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  font:300 19px/1.22 Raleway,Arial,sans-serif!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 3px rgba(0,0,0,.55)!important;
  overflow-wrap:anywhere;
}
#kp-shop .kp-category-copy small,
#kp-shop .kp-category-card:hover .kp-category-copy small,
#kp-shop .kp-category-card.kp-selected .kp-category-copy small{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  font:300 11px/1.3 Raleway,Arial,sans-serif!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 3px rgba(0,0,0,.65)!important;
}
#kp-shop .kp-category-copy::after{
  content:"›";
  position:absolute;
  right:14px;
  bottom:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:37px;
  height:37px;
  box-sizing:border-box;
  border:1.5px solid rgba(230,195,129,.95);
  border-radius:50%;
  background:rgba(1,16,26,.14);
  color:#ffffff;
  font:300 25px/1 Arial,sans-serif;
  transition:background .25s ease,transform .25s ease;
  pointer-events:none;
}
#kp-shop .kp-category-card:hover .kp-category-copy::after,
#kp-shop .kp-category-card.kp-selected .kp-category-copy::after{
  background:rgba(216,180,118,.24);
  transform:translateX(2px);
}
@media(max-width:900px){
  #kp-shop .kp-category-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  #kp-shop .kp-category-card{min-height:210px;}
}
@media(max-width:520px){
  #kp-shop .kp-category-cards{grid-template-columns:minmax(0,1fr);gap:10px;}
  #kp-shop .kp-category-card{min-height:195px;aspect-ratio:1.65;}
  #kp-shop .kp-category-copy{padding:27px 60px 16px 17px!important;}
  #kp-shop .kp-category-copy strong{font-size:18px!important;}
  #kp-shop .kp-category-copy small{font-size:11px!important;}
  #kp-shop .kp-category-copy::after{bottom:16px;}
}
@media(prefers-reduced-motion:reduce){
  #kp-shop .kp-category-card,#kp-shop .kp-category-image img,#kp-shop .kp-category-copy::after{transition:none!important;}
}

/* Kategooria ankrud: kleepuva menüü all jääb pealkiri nähtavale. */
#kp-shop .kp-group-head h3[id]{scroll-margin-top:115px;}
