/* Shared original MOS geometry. Main/deferred.css supply the responsive breakpoints. */
@media screen {
  body {display:block;background:#f3f2f2;color:#000;line-height:normal}
  body .site-layout {width:min(1600px,100%);max-width:100%;margin:0 auto;padding:105px 30px 30px;grid-template-columns:300px minmax(0,1fr);gap:60px;align-items:start;background:#fff;box-shadow:0 0 15px #0000001a}

  /* Original fixed, centered 75px header plus its one-pixel border. */
  body .site-header {position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:99;display:block;width:min(1600px,100%);height:76px;min-height:0;padding:0;font-size:24px;color:#32405f;box-shadow:0 10px 15px -10px #0000001a}
  body .site-title {position:absolute;left:30px;top:0;display:flex;flex-direction:column;justify-content:center;max-width:740px;height:75px;font-size:24px;line-height:normal;color:#32405f}
  body .site-title small {font-size:12px;line-height:normal;margin:0;color:#32405fba}
  body .site-title:hover,body .site-phones a:hover {color:#5d7787}
  body .site-title:hover small {color:#688597}
  body .site-logo {position:absolute;left:50%;top:38.5px;transform:translate(-50%,-50%);line-height:0}
  body .site-logo img {width:48px;height:auto}
  body .site-phones {position:absolute;top:9px;right:96px;font-size:24px;line-height:normal}
  body .site-phones a {color:#32405f}
  body .site-phones span {color:#32405fba}
  body .telegram-link {position:absolute;top:9px;right:30px;width:50px;height:52px;border-radius:0;background-color:transparent;background-position:center;background-repeat:no-repeat;background-image:url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 500'%3E%3Cpath d='M250 500a250 250 0 1 0 0-500 250 250 0 0 0 0 500z' fill='%2334aadf'/%3E%3Cpath d='m104 248 168-70 73-30s26-10 24 15l-12 83-18 114s-2 16-14 19-32-10-36-13c-3-2-54-34-73-50-5-5-11-13 1-23l76-73c8-8 17-29-19-4l-102 69s-12 7-33 0l-47-15s-18-11 12-22z' fill='%23fff'/%3E%3C/svg%3E")}
  body .telegram-link {transition:filter .15s,transform .15s}
body .telegram-link svg {display:none}
  body .telegram-link:hover {filter:drop-shadow(0 2px 2px rgb(0 0 0 / 25%));transform:translateY(-2px)}
@media (prefers-reduced-motion:reduce) {body .telegram-link {transition:none}body .telegram-link:hover {transform:none}}

  /* Original menu rhythm and the 300px patterned sidebar offer. */
  body .mos-menu {line-height:1.25}
  body .mos-menu-item {margin-bottom:5px}
  body .mos-menu-item:last-child {margin-bottom:0}
  body .mos-menu a {line-height:inherit;color:#2f4f4f}
  body .mos-menu a:hover {color:#0099cc}
  body .mos-menu a[aria-current=page] {font-weight:400}
  body .mos-menu-separator {height:20px}
  body .desktop-navigation .mos-module>h2 {font-size:16px;line-height:normal;color:#32405f;margin:0;padding:8px 0 3px}
  body .desktop-navigation .mos-module+.mos-module {margin-top:5px}
  body .desktop-navigation .mos-module-60 {margin-top:30px}
  body .mos-module-60 #scroller {border-top:6px solid #284174;border-bottom:6px solid #284174}
  body .mos-module-60 .package {display:block;padding:24px 30px;border:0;color:#333;line-height:normal;text-decoration:none}
  body .mos-module-60 .package>.title {font-size:18px}
  body .mos-module-60 .package>.price {font-size:24px;margin:8px auto}
  body .mos-module-60 .package>.desc {margin-top:5px}
  body .mos-module-60 .package:hover {background-color:#284074;color:white}

  body .site-footer {width:min(1600px,100%);max-width:100%;margin:0 auto;padding:15px 30px;font-size:14px;line-height:normal;color:#d0d3d6}
  body .site-footer a {color:inherit}
  body .site-footer p {display:inline;margin:0}
  /* Keep the consent-revocation control, inline so the source footer height survives. */
  body .site-footer [data-cookie-settings] {padding:0;margin:0;color:inherit;font:inherit;min-height:0}

  body:not(.home-page) .site-content {padding:30px}
  body:not(.home-page) .breadcrumbs {margin:0 0 30px;font-size:14px;line-height:normal}
  body:not(.home-page) .site-content>h1 {font-size:25.6px;line-height:normal;color:#333;margin:0 0 .67em}
  .catalog-site .desktop-navigation>p:first-child>a::after{display:inline-block;content:'';width:20px;height:17px;margin:0 0 -3px 5px;background:left center/contain no-repeat url("data:image/svg+xml,%3Csvg width='48' height='48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m13 8-7 6 7 7' stroke='%23000' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M6 14h23c7 0 13 6 13 13s-6 13-13 13H12' stroke='%23000' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
  body .catalog-menu {line-height:1.25;margin:0;padding:0}
  body .catalog-menu li {margin-bottom:5px}
  body .catalog-menu a {color:#2f4f4f}
  body.catalog-site .desktop-navigation h2 {font-size:16px;margin:0;padding:8px 0 3px;color:#32405f}
  body.catalog-site .desktop-navigation>p {margin:0 0 22px}

  body .site-title {max-width:calc(50% - 60px)}
  body .mobile-navigation {display:none}
  body .desktop-navigation {display:block}
  body .site-footer .footer-phones {display:none}
}
@media screen and (max-width:1280px) {
  body .site-layout {padding-right:15px;grid-template-columns:300px minmax(0,1fr);gap:45px}
  body .site-footer {font-size:12px}
}
@media screen and (max-width:1100px) {
  body .site-title {width:350px}
  body .site-title small,body .site-phones span {display:none}
}
@media screen and (max-width:980px) {
  body .site-layout {display:block;padding:105px 15px 30px}
  body .desktop-navigation {display:none}
  body .site-title {left:90px}
  body .site-phones {right:81px}
  body .site-phones a {text-decoration:none;border-bottom:1px dashed}
  /* The source's green telephone markers are decorative, not presence status. */
  body .site-phones a::before {content:'';display:inline-block;width:14px;height:14px;border-radius:50%;background:#009444;margin:0 6px 0 -20px}
  body .telegram-link {right:15px}
  body .mobile-navigation {display:block;position:absolute;inset:0 auto auto 0}
  body .mobile-navigation>summary {display:grid;place-items:center;list-style:none;width:75px;height:75px;padding:0;background:#6d7687;color:#fff;font-size:0;cursor:pointer}
  body .mobile-navigation>summary::before {content:'\2261';font:65px/1 Arial,sans-serif}
  body .mobile-navigation>summary::-webkit-details-marker {display:none}
  body .mobile-navigation nav {position:absolute;top:75px;left:0;right:auto;z-index:100;width:360px;max-width:100vw;max-height:calc(100dvh - 76px);overflow:auto;padding:30px;background:#fff;border:1px solid #cbd1e0;box-shadow:0 0 15px #0008;font-size:16px;line-height:1.25}
  body .mobile-navigation nav a {display:inline;padding:0}
  body .mobile-navigation .mos-module>h2 {font-size:16px;line-height:normal;color:#32405f;margin:0;padding:8px 0 3px}
  body .mobile-navigation .mos-module+.mos-module {margin-top:5px}
  body .site-footer {font-size:10px}
  body .site-footer .footer-phones {display:block;background:#32405f;color:#fff;font-size:16px;line-height:normal;text-align:right;padding:15px}
  body .footer-phones a {text-decoration:none;border-bottom:1px dashed}
}
@media screen and (max-width:780px) {
  body .site-title {display:none}
  body .site-logo {display:block;left:84px;transform:translateY(-50%)}
}
@media screen and (max-width:480px) {
  body .site-layout {padding:90px 0 30px}
  body:not(.home-page) .breadcrumbs {padding:15px;margin:0 0 15px}
  body:not(.home-page) .site-content {padding:15px}
  body .site-footer {border-top:0;padding:0;font-size:9px}
  body .site-footer p {display:block;margin:5px}
}
@media screen and (max-width:420px) {
  body .site-logo {display:none}
}
@media print {body .site-footer .footer-phones {display:none}}

/* Source product floats wrap the order panel below the photograph when needed. */
@media screen and (max-width:1600px) {
  .catalog-site .product-detail {display:flow-root}
  .catalog-site .product-detail .product-photo {float:left;max-width:calc(100% - 10px);margin:5px 5px 0}
  .catalog-site .product-photo img {display:block;width:auto;max-width:min(100%,800px);height:auto;max-height:none;margin:0}
  .catalog-site .product-summary {display:contents}
  .catalog-site .pricetag {float:right;width:260px;max-width:100%;padding:0;border:0;background:none}
  .catalog-site .pricetag .price {font-size:24px;text-align:center;margin:0 0 12px}
  .catalog-site .pricetag button,.catalog-site .pricetag select {min-height:45px}
  .catalog-site .pricetag .dependencies {font-size:16px;margin-top:8px}
  .catalog-site .pricetag .dependencies ul {list-style:none;padding:0;margin:0}
  .catalog-site .product-description {clear:both;display:flow-root;margin-top:10px}
  .catalog-site .product-description p {margin:2px 0 6px}
  .catalog-site .product-detail>.gallery {clear:both}
  .catalog-site .desktop-navigation>h2 {display:none}
  .catalog-site .desktop-navigation>p:first-child {font-weight:700;margin-bottom:26px}
  .catalog-site .site-content a {color:#333}
  .catalog-site .site-content a:hover {color:#0099cc}
  .catalog-site .site-content .phone {white-space:nowrap;text-decoration:none;border-bottom:1px dashed}
  .catalog-site .cart-item {padding:8px;gap:1rem;border:0;min-height:40px}
  .catalog-site .cart-item .line-price {font-size:18px}
  .catalog-site .cart-item>div:first-child>a {color:#333}
  .catalog-site .cart-item>label {font-size:12px}
  .catalog-site .cart-item input {padding:2px 5px;width:60px}
  .catalog-site .cart-category {padding:8px 6px;background:#d9dddf}
}

@media screen and (min-width:1601px) {
  /* Source product photograph on the left, order panel on the right, text below. */
  .catalog-site .product-detail:has(.product-photo){display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:0 40px;align-items:start}
  .catalog-site .product-detail:has(.product-photo) .product-photo{grid-column:1;grid-row:1;margin:5px 5px 0}
  .catalog-site .product-photo img{display:block;width:auto;max-width:min(100%,800px);height:auto;max-height:none;margin:0}
  .catalog-site .product-detail:has(.product-photo) .product-summary{display:contents}
  .catalog-site .product-detail:has(.product-photo) .pricetag{grid-column:2;grid-row:1}
  .catalog-site .product-detail:has(.product-photo) .product-description{grid-column:1/-1;margin-top:10px}
  .catalog-site .product-detail>.gallery{grid-column:1/-1;grid-row:2}
  .catalog-site .pricetag{width:260px;padding:0;border:0;background:none}
  .catalog-site .pricetag .price{font-size:24px;text-align:center;margin:0 0 12px}
  .catalog-site .pricetag button,.catalog-site .pricetag select{min-height:45px}
  .catalog-site .pricetag .dependencies{font-size:16px;margin-top:8px}
  .catalog-site .pricetag .dependencies ul{list-style:none;padding:0;margin:0}
  .catalog-site .product-description p{margin:2px 0 6px}
  .catalog-site .desktop-navigation>h2{display:none}
  .catalog-site .desktop-navigation>p:first-child{font-weight:700;margin-bottom:26px}
  .catalog-site .site-content a{color:#333}
  .catalog-site .site-content a:hover{color:#0099cc}
  .catalog-site .site-content .phone{white-space:nowrap;text-decoration:none;border-bottom:1px dashed}

}

@media screen {
  /* The original landing page starts with the introduction. Keep its semantic h1. */
  body.catalog-landing-page .site-content>h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
  .catalog-landing-page .site-content>p{margin:2px 0 6px}
  .catalog-landing-page .card-promotions{display:grid;gap:30px;margin:0}
  .catalog-landing-page .card-promotions>a{position:relative;display:block;border-color:#f2f2f2;padding:0;min-height:0;font-size:19.2px;line-height:normal;overflow:hidden}
  .catalog-landing-page .card-promotions>a:first-child{height:152px}
  .catalog-landing-page .card-promotions>a:nth-child(2){height:121px}
  .catalog-landing-page .card-promotions>a>span{display:block;width:855px;padding:30px 0 0 30px}
  .catalog-landing-page .card-promotions>a:first-child>span{padding-top:80px}
  .catalog-landing-page .card-promotions>a>img{position:absolute;top:0;left:50%;transform:translateX(-50%);width:260px;height:79px;max-height:none}
  .catalog-landing-page .card-promotions>a::after{content:'';position:absolute;right:0;top:0;width:200px;height:100px;background:no-repeat 30px center url('/img/special/ritcard.jpg')}
  .catalog-landing-page .card-promotions>a:first-child::after{top:50px;background-image:url('/img/special/soccard.jpg')}
  .catalog-landing-page .card-promotions strong{display:block;width:180px;padding:5px;margin:10px 0 0 352.5px;background:#dadada}
  .catalog-landing-page .site-content>h2{font-size:19.2px;line-height:normal;color:#333;margin:2em 0 .67em}

}

/* Preserve the original four-column comparison where each price remains readable.
   Below 737px use the existing cards: the source table clips its right-hand prices. */
@media screen and (min-width:737px) {
  .catalog-landing-page .package-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:minmax(65.5px,auto) 50px 106px 50px;gap:0;margin:2px 0 4px}
  .catalog-landing-page .package-grid>.package{display:contents}
  .catalog-landing-page .package h3{grid-row:1;display:flex;align-items:center;justify-content:center;padding:4px 0 4px 6px;font-size:16px;line-height:normal;color:#000;background:#6f8dab}
  .catalog-landing-page .package>p{display:flex;align-items:center;justify-content:center;margin:0;border:.5px solid #fff;background:#f8f8ff}
  .catalog-landing-page .package>p:nth-child(2){grid-row:2}
  .catalog-landing-page .package>p:last-child{grid-row:4}
  .catalog-landing-page .package>.card-discount{display:none}
  .catalog-landing-page .package:first-child>.card-discount{grid-column:1/-1;grid-row:3;display:flex;align-items:flex-start;padding:4px 5px;gap:0;background:#f2f2f2}
  .catalog-landing-page .card-discount img{width:102px;height:67px;object-fit:cover;border:1px solid #505050;border-radius:6px;margin:20px 10px 10px}
  .catalog-landing-page .card-discount span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

}

@media screen and (max-width:1600px) {
  .catalog-landing-page .card-promotions>a:first-child{height:auto;min-height:152px}
  .catalog-landing-page .card-promotions>a:nth-child(2){height:auto;min-height:121px}
  .catalog-landing-page .card-promotions>a::after{display:none}
  .catalog-landing-page .card-promotions>a>span{width:calc(555px + 24vw);padding-left:calc(24vw - 270px);max-width:100%}
  .catalog-landing-page .card-promotions strong{margin-left:auto;margin-right:auto}
}
@media screen and (min-width:1025px) and (max-width:1280px) {
  .catalog-landing-page .card-promotions>a:first-child{background:url('/img/special/msr_logo_min.png') no-repeat 5% center}
  .catalog-landing-page .card-promotions>a>img{visibility:hidden}
  .catalog-landing-page .card-promotions>a>span{padding-left:calc(45vw - 300px)}
}
@media screen and (max-width:1024px) {
  .catalog-landing-page .card-promotions>a:first-child,
  .catalog-landing-page .card-promotions>a:nth-child(2){height:auto}
  .catalog-landing-page .card-promotions>a>img{top:35px}
  .catalog-landing-page .card-promotions>a>span{width:calc(100% - 30px);padding:95px 0 15px 30px}
  .catalog-landing-page .card-promotions>a:first-child>span{padding-top:145px}
  .catalog-landing-page .card-promotions>a:nth-child(2)>span{padding-bottom:0}
  .catalog-landing-page .card-promotions strong{margin:10px auto 15px}
}
@media screen and (max-width:736px) {
  .catalog-landing-page .card-promotions>a>span{width:100%;padding-left:0}
}

@media screen and (min-width:1601px) {
  .catalog-site .cart-item{padding:8px;gap:1rem;border:0;min-height:40px}
  .catalog-site .cart-item .line-price{font-size:18px}
  .catalog-site .cart-item>div:first-child>a{color:#333}
  .catalog-site .cart-item>label{font-size:12px}
  .catalog-site .cart-item input{padding:2px 5px;width:60px}
  .catalog-site .cart-category{padding:8px 6px;background:#d9dddf}
  .catalog-site .cart-category h2{font-size:16px;line-height:normal;margin:0;color:#000}
}

/* Separate the additional requirements while preserving their existing prices. */
.catalog-site .pricetag .dependencies ul{margin-top:.5em}
.catalog-site .pricetag .dependencies li+li{margin-top:.75em}

/* Original catalogue cards: catalog/shared/catalog.css and imagecatalog.php.
 * Grid replaces floats while retaining 258px cards and the source row spacing. */
.catalog-site .product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(0,258px));gap:30px 29px;justify-content:start;list-style:none;padding:0;margin:30px 0}
.catalog-site .product-grid>li{display:block;min-width:0;border:0;padding:0;margin:0;text-align:center}
.catalog-site .product-grid .product-card{position:relative;display:block;box-sizing:border-box;width:100%;height:321px;overflow:hidden;border:0;border-bottom:1px solid #d8d8d8;box-shadow:0 3px 19px rgba(215,224,228,.8);background:#fff;color:#000;text-decoration:none}
.catalog-site .product-grid .product-card:is(:link,:visited,:hover,:active){color:#000;text-decoration:none}
.catalog-site .product-grid .product-card-image{position:absolute;top:0;left:0;display:block;width:100%;height:auto;max-width:100%;margin:0;border:0}
.catalog-site .product-card-title{position:absolute;left:0;bottom:56px;display:block;box-sizing:border-box;width:100%;height:91px;margin:0;padding:20px 5px 10px;background:rgba(255,255,255,.87);text-align:center;font:600 18px/1.1em LatoWebBold,Arial,Tahoma,Verdana,Geneva,sans-serif;text-shadow:0 0 5px #fff}
.catalog-site .product-card-subtitle{display:block;clear:both;color:#b1b1b1;font-size:16px;text-transform:lowercase}
.catalog-site .product-card .price{position:absolute;left:0;bottom:0;display:block;box-sizing:border-box;width:100%;height:56px;margin:0;padding:14px 0;border-top:1px solid #f1f5f7;background:#fff;font-size:18px;line-height:normal}
.catalog-site .product-card .currency{color:#b1b1b1;font-size:16px}
.catalog-site .product-card .num{font-variant-numeric:normal}
@media screen and (max-width:639px){.catalog-site .product-grid{grid-template-columns:minmax(0,258px)}}
