@font-face { font-family:Montserrat; font-weight:400; font-style:normal; font-display:swap; src:url('/fonts/montserrat-400.ttf') format('truetype'); }
@font-face { font-family:Montserrat; font-weight:500; font-style:normal; font-display:swap; src:url('/fonts/montserrat-500.ttf') format('truetype'); }
@font-face { font-family:Montserrat; font-weight:600; font-style:normal; font-display:swap; src:url('/fonts/montserrat-600.ttf') format('truetype'); }
@font-face { font-family:Montserrat; font-weight:700; font-style:normal; font-display:swap; src:url('/fonts/montserrat-700.ttf') format('truetype'); }
@font-face { font-family:Montserrat; font-weight:800; font-style:normal; font-display:swap; src:url('/fonts/montserrat-800.ttf') format('truetype'); }




:root{--ink:#142e52;--muted:#60728b;--line:#e5edf6;--pale:#f2f8ff;--blue:#1663ec;--gradient:linear-gradient(115deg,#1854df 0%,#198deb 55%,#30bdf4 100%);--shadow:0 8px 36px #173d7210}
body,body *{font-family:Montserrat,sans-serif!important;color:var(--ink)!important}
body,.checkout-page,.account-page{background:#fff!important;line-height:1.65}
html{scroll-behavior:smooth}
a,button,input,select,textarea,.product__inner{transition:background .2s ease,box-shadow .2s ease,transform .2s ease,border-color .2s ease}
a:hover{color:var(--blue)!important}
.container,.account-header__inner{max-width:1200px}
h1,.title,.account-heading h1{font-weight:800;letter-spacing:-1.3px;line-height:1.16;font-size:clamp(30px,3.4vw,48px)}
h2{font-weight:800;letter-spacing:-.6px}
.section{padding-top:48px;padding-bottom:48px}
.header-top{border-bottom:1px solid var(--line);background:#fff}
.header-main,.account-header,.checkout-header{background:#fff;border-bottom:1px solid var(--line)}
.header-main{padding:24px 0}
.header-main .container{gap:24px}
.header-main .container>*:not(:last-child){margin-right:0}
.header-main__user-nav:empty{display:none}
.logo__img,.account-logo img{width:184px}
.basket-prev__count{background:#e5f3ff;border-radius:20px}
.btn,.product__cart,.checkout-page button,.mobile-actions a:last-child,.account-catalog{
 background:var(--gradient)!important;border:0!important;border-radius:13px!important;color:#fff!important;font-weight:700;min-height:48px;box-shadow:0 4px 12px #1765dc14;text-decoration:none;filter:none!important
}
.btn *,.product__cart *,.checkout-page button *,.mobile-actions a:last-child *{color:#fff!important}
.btn:hover,.product__cart:hover,.checkout-page button:hover,.account-catalog:hover{background:var(--gradient)!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 8px 20px #1765dc25}
.btn:active,.checkout-page button:active{transform:translateY(0)}
.checkout-page button:disabled{opacity:.4;transform:none;box-shadow:none}
.checkout-page .secondary,.checkout-page .secondary:hover{background:#eef5ff!important;color:var(--ink)!important;box-shadow:none}
.checkout-page .day{padding:12px!important;font-size:14px;min-height:46px;box-shadow:none}
.checkout-page .day[aria-pressed=true]{outline:3px solid var(--ink);outline-offset:3px;box-shadow:0 4px 12px #1765dc20}
.product__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0}
.product__item{width:auto;max-width:none;min-width:0;padding:0;margin:0}
.product__inner{width:100%;max-width:none;min-height:450px;height:auto;padding:24px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:stretch}
.product__inner:hover{transform:translateY(-5px);border-color:#c7def8;box-shadow:0 14px 40px #173d7218}
.product__image-link{display:flex;align-items:center;justify-content:center;height:210px;margin-bottom:20px}
.product__image{height:200px;max-width:100%;width:auto;object-fit:contain;margin:0}
.product__link{height:auto;min-height:52px;max-width:none;margin:0 0 auto;display:block;-webkit-line-clamp:unset}
.product__title{font-size:16px;line-height:1.5;font-weight:600;border:0}
.product__price-label{font-size:12px;line-height:1.5;margin:18px 0 4px;color:var(--muted)!important}
.product__cost{font-size:30px;line-height:1.2;font-weight:800;align-self:flex-start}
.product__footer{display:flex;align-items:center;gap:12px;width:100%;margin-top:20px;flex-wrap:nowrap}
.product__cart{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-width:0;width:auto;height:44px;min-height:44px;margin:0;padding:0 12px;font-size:12px;white-space:nowrap}
.product__cart::after{display:none}
.num-in{display:flex!important;align-items:center;width:auto!important;height:44px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:#f7faff}
.num-in .item-cart-cnt,.num-in .item-cart-cnt:hover{position:static!important;display:flex;align-items:center;justify-content:center;background:transparent!important;width:28px!important;min-width:28px;height:42px!important;font-size:20px;box-shadow:none}
.num-in .in-num{width:30px!important;height:42px!important;padding:0!important;text-align:center;border:0;background:transparent;font-size:15px;font-weight:600}
.product__item .num-block.skin-1{margin:0;flex:0 0 auto;width:auto}
.num-in .unit{position:static;margin:0 4px;font-size:12px}
.product-card{gap:24px}
.product-card__images{border-radius:24px;background:var(--pale);padding:32px}
.product-card__descr{padding:16px 24px}
.product-card__descr .title{font-size:36px;line-height:1.2}
.product-card__add-cart{gap:16px}
.product-card__add-cart>*{margin:0!important}
.footer{background:#f0f7ff;padding-top:48px;border-top:1px solid var(--line)}
.footer a,.footer span,.footer p{color:var(--ink)!important}
.footer__title,.footer-col__title{font-weight:700}
.s-about{padding:56px 0;background:#fff}
.about__list{padding:32px;background:var(--pale);border-radius:24px;margin:24px 0 0;width:100%}
.footer-bubbles{display:none}
.s-map-delivery{padding:24px 0 56px}
.map-delivery{border-radius:24px;background:var(--pale);padding:40px}
.account-page .account-main,.checkout-page main{margin:44px auto;max-width:1140px}
.checkout-card,.account-page .account-auth{border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:28px;background:#fff}
.account-page .account-auth{padding:36px;max-width:520px}
.account-heading p,.checkout-page main>p,.account-auth>p{color:var(--muted)!important}
.account-tabs{gap:8px;border:0;border-radius:14px;background:var(--pale);padding:5px}
.account-tabs a{border:0;border-radius:10px;padding:12px}
.account-tabs a[aria-current]{background:#fff;box-shadow:0 2px 7px #173d7210;color:var(--blue)!important}
.checkout-page input:not([type=checkbox]),.checkout-page textarea,.checkout-page select{border:1px solid #d6e3f1;border-radius:12px;min-height:48px;background:#fbfdff;font-size:15px}
.checkout-page input:focus,.checkout-page select:focus,.checkout-page textarea:focus{outline:3px solid #2ca5fe25;border-color:#2ca5fe;background:#fff}
.checkout-page input[type=checkbox]{accent-color:var(--blue);width:18px;height:18px}
.shop-line{gap:16px;padding:24px 0;border-color:var(--line)}
.shop-line small{color:var(--muted)!important;margin-top:5px;font-size:12px}
.shop-line .shop-applied-discount{display:inline-block;background:#ebf8f2;color:#186c4c!important;border-radius:8px;padding:5px 8px;font-weight:600}
.shop-quantity{border:1px solid var(--line);border-radius:12px;background:#f7faff;padding:3px}
.checkout-page .shop-quantity input{border:0;background:transparent;min-height:40px;width:54px}
.checkout-page .shop-quantity button,.checkout-page .shop-quantity button:hover{background:#e8f1ff!important;color:var(--ink)!important;border-radius:9px!important;box-shadow:none;min-width:38px;width:38px;min-height:40px;height:40px}
.checkout-page .total{font-size:28px;font-weight:800}
.account-message,.shop-toast{border-radius:14px;background:var(--pale);border-color:#d1e6ff;box-shadow:var(--shadow)}
.mobile-actions{background:#ffffffed;backdrop-filter:blur(14px);border-color:var(--line);padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:6px}
.mobile-actions a{min-height:46px;font-weight:700}
.mobile-actions a:last-child{min-height:46px}
.lab-preview-note{background:#f4f9ff;border-bottom:1px solid var(--line);font-size:12px;padding:9px 16px;text-align:center}
.lab-hero{padding:32px 0 8px}
.lab-hero__inner{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:32px;padding:56px;border-radius:32px;background:linear-gradient(120deg,#f0f7ff,#f6fcff);overflow:hidden;position:relative}
.lab-hero__eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:#2CA5FE!important}
.lab-hero h1{font-size:clamp(36px,4.2vw,60px);max-width:640px;margin:16px 0 20px;letter-spacing:-2px}
.lab-hero p{font-size:17px;max-width:490px;color:var(--muted)!important;line-height:1.8}
.lab-hero__actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}
.lab-hero__actions .btn{padding:14px 26px;height:auto}
.lab-hero__visual{position:relative;display:grid;place-items:center;min-height:320px}
.lab-hero__visual::before{content:'';position:absolute;width:300px;height:300px;border-radius:50%;background:linear-gradient(140deg,#d0e8ff,#e6f7ff)}
.lab-hero__visual img{position:relative;z-index:1;max-height:300px;max-width:85%;object-fit:contain;mix-blend-mode:multiply}
.lab-hero__tag{position:absolute;z-index:2;bottom:10px;right:0;background:#ffffffeb;border:1px solid #e2edfa;border-radius:16px;padding:14px 20px;box-shadow:var(--shadow);font-weight:700;font-size:13px}
@media(max-width:1100px){.product__list{grid-template-columns:repeat(3,minmax(0,1fr))}.lab-hero__inner{padding:36px}}
@media(max-width:800px){.product__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.product__inner{padding:20px}.lab-hero__inner{grid-template-columns:1fr;padding:32px}.lab-hero__visual{min-height:240px}.lab-hero__visual img{max-height:230px}.lab-hero__visual::before{width:240px;height:240px}.header-main .container{gap:16px}.shop-line{grid-template-columns:minmax(0,1fr) auto}.shop-line>div:first-child{grid-column:1/-1}}
@media(max-width:479px){.product__list{grid-template-columns:minmax(0,1fr)}.product__inner{min-height:0}.product__image-link{height:190px}.product__image{height:180px}.product__link{min-height:0}.product__footer{gap:16px}.product__cart{font-size:14px}.num-in .item-cart-cnt{width:40px!important;min-width:40px}.num-in .in-num{width:38px!important}.account-page .account-auth,.checkout-card{padding:22px;border-radius:20px}.account-heading h1{font-size:32px}.account-header__inner{padding:20px 16px}.checkout-page .checkout-header{gap:12px;padding:20px 16px}.lab-hero{padding-top:16px}.lab-hero__inner{padding:28px 24px;border-radius:24px;gap:12px}.lab-hero h1{font-size:38px;letter-spacing:-1.5px}.lab-hero p{font-size:15px}.lab-hero__actions{gap:14px}.lab-hero__visual{min-height:220px}.section{padding-top:32px;padding-bottom:32px}.map-delivery{padding:28px}.mobile-actions a{font-size:13px}.shop-line{gap:12px}.checkout-page .shop-quantity input{width:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.product__inner:hover,.btn:hover,.product__cart:hover,.checkout-page button:hover{transform:none}}

.checkout-page .checkout-header {
  padding-inline: max(20px, calc((100% - 1200px) / 2 + 20px));
}
@media (max-width: 767px) { .checkout-page .checkout-header { padding-inline:16px; } }


.shop-toast#shop-message.cart-success {
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  box-sizing: border-box;
  width: min(352px, calc(100% - 32px));
  max-width: none;
  padding: 20px 36px 20px 66px;
  background: #fff;
  border: 1px solid #d5e8f8;
  border-radius: 18px;
  box-shadow: 0 10px 38px rgba(23, 62, 99, .18);
  text-align: left;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: #163d4a;
  animation: cart-toast-enter .18s ease-out;
  transition: opacity .18s ease-in;
}
.cart-success::before {
  content: "✓";
  position: absolute;
  top: 20px;
  left: 16px;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  color: white;
  background: linear-gradient(135deg, #1554d9, #159ce1);
}
.shop-toast.cart-success a { display: block; width: fit-content; margin-top: 5px; font-size: 14px; color: #1554ac; }
.shop-toast .toast-close { position: absolute; top: 4px; right: 4px; width: 32px; height: 32px; border: 0; border-radius: 50%; background: transparent; color: #32516a; font: 21px/1 sans-serif; cursor: pointer; }
.shop-toast .toast-close:hover { background: #edf5fa; }
.cart-success.is-leaving { opacity: 0; pointer-events: none; }
@keyframes cart-toast-enter { from { opacity: 0; transform: translate(-50%, calc(-50% + 6px)); } }
@media (prefers-reduced-motion: reduce) {
  .shop-toast#shop-message.cart-success { animation: none; transition: none; }
}

.add2Cart:active { transform: scale(.96); }
.add2Cart[aria-busy="true"] { opacity: .75; cursor: progress; }
@media (prefers-reduced-motion: reduce) { .add2Cart:active { transform: none; } }

.product-card__add-cart .num-block.skin-1 { width: auto; flex: 0 0 auto; margin: 0; }


/* Shared storefront typography and controls. */
body, body *, body *::before, body *::after { font-weight: 400 !important; }
body :is(button, .btn, .product__cart, .account-catalog, .mobile-actions a:last-child, input[type="submit"], input[type="button"], [role="button"]:not(.item-cart-cnt)),
body :is(button, .btn, .product__cart, .account-catalog, .mobile-actions a:last-child, input[type="submit"], input[type="button"], [role="button"]:not(.item-cart-cnt)):hover {
  border-radius: 4px !important;
  background: #2CA5FE !important;
  border-color: #2CA5FE !important;
  filter: none !important;
}
body .num-in, body .shop-quantity {
  border-radius: 4px !important;
  background: transparent !important;
}
body .num-in .item-cart-cnt,
body .num-in .item-cart-cnt:hover,
body.checkout-page .shop-quantity button,
body.checkout-page .shop-quantity button:hover {
  background: transparent !important;
  border-color: transparent !important;
  color: var(--ink) !important;
  box-shadow: none !important;
  border-radius: 4px !important;
}

/* Minimal storefront controls. */
body :is(button, .btn, .product__cart, .account-catalog, .mobile-actions a:last-child, input[type="submit"], input[type="button"], [role="button"]:not(.item-cart-cnt)),
body :is(button, .btn, .product__cart, .account-catalog, .mobile-actions a:last-child, input[type="submit"], input[type="button"], [role="button"]:not(.item-cart-cnt)):hover {
  background: #fff !important;
  border: 1px solid #2CA5FE !important;
  color: #000 !important;
  box-shadow: none !important;
}
body :is(button,.btn,.product__cart,.account-catalog) * {color:#000!important}
body.checkout-page .shop-quantity button,
body.checkout-page .shop-quantity button:hover {
  background:transparent!important; border-color:transparent!important;
}
body .lab-hero__inner, body .product__inner {border-radius:4px!important}
body .product__cost::after, body .product-card__cost::after {
  content:" ₽";background:none!important;width:auto!important;height:auto!important;
  position:static!important;display:inline!important;font:inherit!important;
}

body .lab-hero__tag { border-radius:4px; }
.profile-page { max-width:720px; }

body .lab-hero__inner { background:#fff; border:1px solid var(--line); box-shadow:var(--shadow); }
@media(min-width:801px) and (max-width:1100px) { .home-popular .product__list { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Centered cart confirmation. */
.shop-toast#shop-message.cart-success{padding:20px 24px;text-align:center}
.shop-toast#shop-message.cart-success::before{content:none;display:none}
.shop-toast#shop-message.cart-success a{margin:5px auto 0;font-size:16px!important;font-weight:400!important;color:#2CA5FE!important;text-decoration:none!important;border-bottom:0!important}
