html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
:focus { outline: 0; }
sub { font-size: .8rem; }
sup { font-size: .8rem; vertical-align: top; }
*, *:before, *:after { -moz-box-sizing: border-box; box-sizing: border-box; }

ul, ol { margin: 0 0 .5rem 0; }
ul li, ol li { margin: 0 0 .3rem 2.2rem; }

@font-face {
  font-family: 'opensans';
  src: url('fonts/opensans/opensans-regular.eot');
  src: url('fonts/opensans/opensans-regular.eot?#iefix') format('embedded-opentype'),
     url('fonts/opensans/opensans-regular.woff2') format('woff2'),
     url('fonts/opensans/opensans-regular.woff') format('woff'),
     url('fonts/opensans/opensans-regular.ttf') format('truetype'),
     url('fonts/opensans/opensans-regular.svg#open_sansregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'opensans';
  src: url('fonts/opensans/opensans-bold.eot');
  src: url('fonts/opensans/opensans-bold.eot?#iefix') format('embedded-opentype'),
     url('fonts/opensans/opensans-bold.woff2') format('woff2'),
     url('fonts/opensans/opensans-bold.woff') format('woff'),
     url('fonts/opensans/opensans-bold.ttf') format('truetype'),
     url('fonts/opensans/opensans-bold.svg#open_sansbold') format('svg');
  font-weight: 700;
  font-style: normal;
}
@font-face {
    font-family: 'opensanscondensed';
    src: url('fonts/opensanscond/opensans-condbold.eot');
    src: url('fonts/opensanscond/opensans-condbold.eot?#iefix') format('embedded-opentype'),
         url('fonts/opensanscond/opensans-condbold.woff2') format('woff2'),
         url('fonts/opensanscond/opensans-condbold.woff') format('woff'),
         url('fonts/opensanscond/opensans-condbold.ttf') format('truetype'),
         url('fonts/opensanscond/opensans-condbold.svg#open_sans_condensedbold') format('svg');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'opensanscondensed';
    src: url('fonts/opensanscond/opensans-condlight.eot');
    src: url('fonts/opensanscond/opensans-condlight.eot?#iefix') format('embedded-opentype'),
         url('fonts/opensanscond/opensans-condlight.woff2') format('woff2'),
         url('fonts/opensanscond/opensans-condlight.woff') format('woff'),
         url('fonts/opensanscond/opensans-condlight.ttf') format('truetype'),
         url('fonts/opensanscond/opensans-condlight.svg#open_sans_condensedlight') format('svg');
    font-weight: 300;
    font-style: normal;
}



html { font-size: 62.5%; }
body { font: normal normal 400 2rem/1.4 opensans, arial, sans-serif; background-color: #fff; color: #000; }
small { font-size: .7em;}
strong { font-weight: 700; }

a, a:link, a:visited, a:active { text-decoration: underline; color: #000; }
a:hover { text-decoration: underline; color: #000; }

h1 { font: normal normal 700 3.2rem/1.35 opensanscondensed, arial, sans-serif; margin-bottom: .5rem; color: var(--PrimaryColor); }
h2 { font: normal normal 700 2.4rem/1.35 opensanscondensed, arial, sans-serif; color: var(--PrimaryColor); }
h3 { font: normal normal 700 2rem/1.35 opensanscondensed, arial, sans-serif; color: var(--PrimaryColor); }

.Clear { clear: both; }
.NBSP { white-space: nowrap; }

.Table { display: table; border-collapse: collapse; width: 100%; }
.Row { display: table-row; }
.Cell { display: table-cell; }
.FLeft { float: left; }
.FRight { float: right; }
.ToCenter { text-align: center; }
.ToRight { text-align: right; }
.VAlingTop { vertical-align: top; }
.Small { font-size: 70%; }
.DNone { display: none; }
.Asterisk,
.Asterisk2 { white-space: nowrap; vertical-align: baseline; margin: 0; padding-left: .5rem; text-indent: -1rem; min-width: 1px; }
.Asterisk:before { content: "*"; padding-left: 2px; }
.Asterisk2:before { content: "**"; }
.Asterisk:empty:before,
.Asterisk2:empty:before { margin: 0; padding: 0; }
.Stroke { text-decoration: line-through; }
.NoWrap { white-space: nowrap; }
.BreakAll { word-break: break-all; }

.ZakladFooter { border-top: 2px solid var(--PrimaryColor); margin: 60px 0 20px; padding-top: 3px; }
.ZakladFooter .Designedby { float: right; }
.ZakladFooter .Copyright { float: left; font-size: 13px; color: #918f90; }

.ZakladTop { width: 100%; position: relative; min-height: 70px; }
.ZakladTop:before { content: " "; display: block; position: absolute; width: 100%; height: 100%; background-color: var(--SecondaryBGColor); z-index: 1; }
.ZakladTop .Content,
.ZakladFooter .Content,
.ZakladPath .Content,
.ZakladTopMenu { max-width: 1320px; padding: 0 20px; margin: 0 auto; position: relative; z-index: 10; }
.ZakladPath .Content { max-width: 1280px; }
.ZakladTop .LogoAndName { display: table; color: inherit; margin-right: 150px; }
.ZakladTop .LogoAndName a { display: table-cell; height: 100%; max-width: 50%; vertical-align: middle; padding: 5px; background-color: #fff; }
.ZakladTop .LogoAndName a img { display: block; max-width: 100%; }
.ZakladTop .LogoAndName h1 { display: table-cell; vertical-align: middle; padding: 15px 0; font: normal normal 700 4.2rem/1.1 opensanscondensed, arial, sans-serif; }
.ZakladTop .LogoAndName div { width: 20px; }

.Button { min-height: 40px; display: inline-block; font-size: 1.6rem; padding: 5px 10px; border-radius: 10px; background-color: var(--PrimaryColor); }
a.Button { text-decoration: none; text-transform: lowercase; }
a.Button.Rect { border-radius: 0; color: var(--MenuColor); min-height: auto; }
.Button.Padlock { display: inline-block; position: relative; }
.ZakladTop .Padlock { top: 20px; display: block; position: absolute; right: 20px; }
.ZakladTop .Padlock .Confirm { display: none; position: absolute; margin: 5px 0 10px 10px; padding: 2px 6px; border-radius: 5px; background-color: var(--PrimaryColor); color: var(--MenuColor); right: 0; white-space: nowrap; }
.ZakladTop .Padlock.Show .Confirm { display: block; }
.ZakladTop a.Padlock span,
.ZakladTopMenu a.Key::after,
.ZakladTopMenu a.Key span,
.ZakladProduct a.Basket span { color: var(--MenuColor); }
.ZakladTop a.Padlock svg { display: inline-block; vertical-align: middle; width: 20px; height: 30px; }
.ZakladProduct a.Basket svg { display: inline-block; vertical-align: middle; width: 30px; height: 20px; }
.ZakladProduct a.Basket { padding: 7px 10px 3px; }
.ZakladProduct a.Basket svg { position: relative; top: -1px; }

.ZakladTopMenu { border-bottom: 2px solid var(--PrimaryColor); max-width: 1280px; padding: 0; margin-top: 26px; position: relative;  z-index: 50; }
.ZakladTopMenu .ContactData { float: left; }
.ZakladTopMenu .ContactData .Icon:last-child { margin-bottom: 10px; }
.ZakladTopMenu .Icon { display: inline-block; margin-right: 3px; }
.ZakladTopMenu .Icon svg { display: inline-block; vertical-align: middle; width: 37px; height: 37px; }
.ZakladTopMenu .Key { float: right; display: block; font-size: 1.3rem; min-height: 35px; line-height: 2.2rem; position: relative; padding-left: 16px; }
.ZakladTopMenu a.Key div { display: block; background-color: inherit; position: absolute; top: -3px; left: -32px; width: 40px; height: 40px; border: 2px solid #fff; border-radius: 41.5px; }
.ZakladTopMenu a.Key svg { display: block; margin: 10px 0 0 4px; width: 29px; height: 14px; }
.ZakladTopMenu a.Basket { display: block; float: right; margin-top: -15px; color: var(--PrimaryColor); font-size: 2.1rem; font-weight: 700; font-family: opensanscondensed; text-decoration: none; }
.ZakladTopMenu a.Basket svg { display: block; margin: 0 auto; width: 30px; height: 22px; }
.ZakladTopMenu a.Basket span { display: block; }

.ZakladPath { padding: 15px 0 0 0; margin-left: 34px; }
.ZakladPath a,
.ZakladPath span { font-size: 1.6rem; font-weight: 700; font-family: opensanscondensed; display: inline-block; vertical-align: baseline; padding-left: 13px; position: relative; color: var(--PrimaryColor); text-decoration: none; }
.ZakladPath span { color: #000; }
.ZakladPath a::before,
.ZakladPath span::before { content: " "; display: block; position: absolute; left: 0; top: 7px; width: 0; height: 0; border-style: solid; border-width: 4px 0 4px 8px; margin: 0 auto; border-color: transparent transparent transparent var(--PrimaryColor); }
.ZakladPath a.Home { padding: 0; margin: 0 0 -3px -34px; }
.ZakladPath a.Home::before { display: none; padding: 0; }
.ZakladPath a.Home svg { display: block; margin: 0; width: 30px; height: 25px; }

.ZakladTopMenu .Layer { display: none; position: absolute; border: 2px solid var(--PrimaryColor); padding: 8px 15px 9px; font-family: opensanscondensed; font-size: 1.8rem; font-weight: 700; line-height: 1.2; color: var(--PrimaryColor); background-color: var(--SecondaryBGColor); }
.ZakladTopMenu .Layer a { color: var(--PrimaryColor); }
.ZakladTopMenu .Layer .Name { font-size: 2.6rem; }
.ZakladTopMenu .Layer .Icon { display: block; margin: 24px 0 0 45px; }
.ZakladTopMenu .Layer .Icon svg { display: block; position: absolute; margin: -7px 0 0 -48px; background-color: #fff; border-radius: 37px; }
.ZakladTopMenu .Layer .Close { position: absolute; margin: -40px 0 0 31px; background-color: #fff; border-radius: 37px; }
.ZakladTopMenu #hours .Close { margin: -40px 0 0 211px; }
.ZakladTopMenu .Layer .Close::before { content: " "; display: block; position: absolute; width: 200px; height: 40px; margin: -8px 0 0 -4px; background-color: transparent; border-radius: 40px; }
.ZakladTopMenu #hours .Close::before { margin-left: -231px; }

.ZakladProductBox .ImageBox { width: 100%; max-width: 1280px; margin: 40px auto 90px; }
.ZakladProductBox .ImageBox img { width: 100%; display: block; }
.ZakladProductBox .Border { border: 1px solid #969696; }
.ZakladProductBox .TextBox { padding: 10px; width: 100%; max-width: 1280px; margin: 40px auto 90px; }
.ZakladShop .ZakladProductBox .TextBox { margin: 20px auto 20px; }
.ZakladProductBox .TextBox .ProductImg,
.ZakladProductBox .TextBox .ProductInfo { display: table-cell; vertical-align: middle; }
.ZakladProductBox .TextBox .ProductImg img { display: block; width: 100%; }
.ZakladProductBox .TextBox .ProductInfo { padding-left: 40px; }
.ZakladProductBox .TextBox .Title { color: #2f8f3f; font-size: 3.2rem; font-weight: bold; margin-bottom: 10px; }
.ZakladProductBox .TextBox ul { font-size: 2.6rem; margin-left: 2.7rem; list-style: none; position: relative; }
.ZakladProductBox .TextBox ul li:before { content: " "; display: block; position: absolute; margin: 12px 0 0 -25px; width: 12px; height: 12px; border-radius: 12px; background-color: #2f8f3f; }


.ZakladMenuPoziom1 { text-align: center; }
.ZakladMenuPoziom2 { text-align: center; margin-top: 38px; }
.ZakladMenuPoziom2 .MenuButton { max-width: 620px; }
.MenuButton { display: inline-block; max-width: 290px; width: 100%; margin: 0 15px; }
a.MenuButton,
a.MenuButton .Button,
.MenuButton a:hover,
.MenuButton a.Button:hover { text-decoration: none; }
.MenuButton .Icon { display: block; position: relative; z-index: 10; bottom: -15px; width: 89px; height: 89px; border-radius: 89px; background-position: center center; background-repeat: no-repeat; margin: 0 auto; background-color: var(--SecondaryBGColor); }
.MenuButton .About { background-image: url('../images/layout/about.png'); }
.MenuButton .Club { background-image: url('../images/layout/club.png'); }
.MenuButton .Safety { background-image: url('../images/layout/safety.png'); }
.MenuButton .Care { background-image: url('../images/layout/care.png'); }
.MenuButton .See { background-image: url('../images/layout/see.png'); }
.MenuButton .Button { display: table-cell; vertical-align: middle; width: 100%; font-size: 2.4rem; line-height: 1.25; padding: 15px 0; text-align: center; position: relative; z-index: 20; color: var(--MenuColor); }
.MenuButton a.Button,
.ConsumerMenu a.Button { color: var(--MenuColor); }
.Button.Active { color: var(--PrimaryActiveColor); background-color: var(--PrimaryActiveBGColor); }
.MenuButton .Header { width: 100%; font-size: 2.4rem; line-height: 1.25; padding: 15px 0 0; text-align: center; position: relative; z-index: 20; border-radius: 10px; background-color: var(--SecondaryBGColor); }
.MenuButton .Header div:first-child { margin: 0 10px; }
.MenuButton .Header .Table { border-collapse: separate; margin-top: 15px; }
.MenuButton .Header .Button { border-right: 20px; width: 30%; min-height: 80px; font-size: 1.6rem; padding: 20px; }
.MenuButton .Header .Separator { display: table-cell; width: 5%; }

.ConsumerMenu { position: absolute; top: -2px; left: 50%; }
.ConsumerMenu .Menu { position: absolute; transform: translateX(-50%); width: 570px; }
.ConsumerMenu .Button { padding-top: 7px; padding-bottom: 7px; }

.ConsumerMenuButton { display: none; border: 2px solid var(--PrimaryColor); margin-left: 5px; top: 2px; width: 37px; height: 37px; border-radius: 37px; background-color: var(--PrimaryColor); padding-top: 4px; cursor: pointer; overflow: hidden; position: absolute; }
.ConsumerMenuButton div { border-top: 2px solid var(--MenuColor); height: 2px; margin: 5px auto; position: relative; z-index: 10; width: 70%; border-radius: 100%; }
.ConsumerMenu.Active .ConsumerMenuButton div:nth-child(1) { transform-origin: -9px -7px; transform: translateY(23px) rotate(-45deg); }
.ConsumerMenu.Active .ConsumerMenuButton div:nth-child(2) { transform-origin: 26px -5px; transform: translateY(11px) rotate(45deg); }
.ConsumerMenu.Active .ConsumerMenuButton  div:nth-child(3) { opacity: 0; }


.ZakladMainContent { max-width: 1280px; min-height: 710px; margin: 30px auto 0; position: relative; }
.ZakladContentMenus { position: absolute; z-index: 10; top: 0; width: 100%; float: left; }
.ZakladTopRightMenu { float: right; width: 100%; max-width: 240px; }
.ZakladBottomRightMenu { float: right; width: 100%; max-width: 240px;}
.ZakladTopLeftMenu { float: left; width: 100%; max-width: 240px;}
.ZakladBottomLeftMenu { float: left; width: 100%; max-width: 240px;}
.ZakladMainContent .ZakladContent { position: relative; z-index: 20; max-width: 100%; width: auto; margin: 0 270px; font-size: 1.8rem; text-align: left; }
.ZakladMainContent .ZakladContent a { word-break: break-all; }


.ZakladContentMenusButton { display: none; position: absolute; z-index: 60; margin-top: 2px; right: 70px; }
.ContentMenusButton { position: absolute; z-index: 40; width: 50px; height: 50px; padding: 0 1rem; }
.ContentMenusButton:before { content: ' ';  position: absolute; left: 0; width: 100%; height: 100%; background-image: linear-gradient(var(--SecondaryBGColor) 96%, transparent 100%); opacity: .65; z-index: 0; }
.ContentMenusButton div { border-top: 2px solid var(--PrimaryColor); height: 2px; margin: 10px 0; position: relative; z-index: 10; }
.ZakladContentMenusButton.Close .ContentMenusButton div:nth-child(1),
.ZakladContentMenusButton.Close .ContentMenusButton div:nth-child(2) { animation-timing-function: linear; animation-duration: .7s; animation-iteration-count: 1; animation-name: vTTM1; transform-origin: 0 -5px; transform: translateY(24px) rotate(-45deg); }
.ZakladContentMenusButton.Close .ContentMenusButton div:nth-child(2) { animation-name: vTTM2; transform-origin: 30px -4px; transform: translateY(12px) rotate(45deg); }
.ZakladContentMenusButton.Close .ContentMenusButton div:nth-child(3) { animation-name: vTTM3; opacity: 0; animation-duration: 1s; }
@keyframes vTTM1 { 0% { transform: translateY(0) rotate(0); } 80% { transform: translateY(24px) rotate(0); } 100% { transform: translateY(24px) rotate(-45deg); } }
@keyframes vTTM2 { 0% { transform: translateY(0) rotate(0); } 80% { transform: translateY(12px) rotate(0); } 100% { transform: translateY(12px) rotate(45deg); } }
@keyframes vTTM3 { 0% { opacity: 1; } 100% { opacity: 0; } }
.ZakladContentMenusButton.Close { top: 5px; }
.ZakladContentMenusButton.Close .ContentMenusButton { position: fixed; }

.ZakladMainContent .ZakladContent h1 { margin-bottom: 1rem; }
.ZakladMainContent .ZakladContent h2 { margin: 1rem 0 1rem; }

.ZakladMainContent .ZakladContent a { color: var(--PrimaryColor); }
.ZakladMainContent .ZakladContent a:hover { text-decoration: underline; }
.ZakladMainContent .ZakladContent .MediaBox { position: relative; height: 0; padding-top: 56.25%; width:100%; margin: 1rem 0; border: 1px solid var(--SecondaryBGColor); }
.ZakladMainContent .ZakladContent .MediaBox iframe { position: absolute; top: 0; left: 0; border: 0; width: 100%; height: 100%; }

 .ZakladMainContent .ZakladContentLokalizacja iframe { margin-top: 1rem; width: 100%; max-width: 100%; min-height: 629px; border: 1px solid var(--SecondaryBGColor); }
 .ZakladMainContent .ZakladContentPolitykaprywatnosci ol { margin-bottom: 3rem; }

.LSUpperRoman { list-style-type: upper-roman; }
.LSLowerRoman { list-style-type: lower-roman; }
.LSLowerAlpha { list-style-type: lower-alpha; }
.ZakladMainContent .MenuButton { margin: -15px 0 20px; display: block; }
.ZakladMainContent .MenuButton .Table,
.ZakladMainContent .MenuButton .Table .Button { display: block; font-size: 1.6rem; width: auto; min-height: auto; margin-top: 10px; }
.ZakladMainContent .MenuButton.MarginTop { margin-top: -169px; }

.ZakladMainContent .ImgCenter { display: block; margin: 25px auto; max-width: 100%; }
.ZakladMainContent .ImgLeft { display: inline-block; margin: 8px 2% 10px 0; max-width: 100%; vertical-align: top; }
.ZakladMainContent .ImgLeft + ul,
.ZakladMainContent .ImgLeft + ol { display: inline-block; max-width: 57%; }
.ZakladMainContent .MaxWidth40 { max-width: 40%; }

.ZakladShop { max-width: 1280px; margin: 0 auto; position: relative; }
.ZakladShop .ZakladMenuPoziom2 .MenuButton:first-child { margin-left: 0; }
.ZakladShop .ZakladMenuPoziom2 .MenuButton:last-child { margin-right: 0; }

.ZakladContentBlueBox { padding: 20px 15px; margin: 16px auto 75px; color: var(--PrimaryColor); background-color: var(--SecondaryBGColor); border-radius: 10px; }
.ZakladContentBlueBox.LoginTabs { max-width: 60%; }
.ZakladContentBlueBox h1 { text-transform: uppercase; }
.BlueTab { position: relative; margin: 20px 0 0; }
.BlueTab .Caption { font-size: 2rem; padding: 6px 10px; background-color: #666; color: var(--MenuColor); border-radius: 10px 10px 0 0; cursor: pointer; }
.BlueTab .Caption.Active { background-color: var(--PrimaryColor); }
.BlueTab .BlueTabContent { border: 2px solid var(--PrimaryColor); padding: 15px; position: absolute; display: none; top: 0; }
.BlueTab .BlueTabContent.Active { position: relative; display: block; }
.BlueTab .BlueTabContent input[type="text"],
.BlueTab .BlueTabContent input[type="email"],
.BlueTab .BlueTabContent input[type="password"] { display: block; width: 50%; margin: 15px auto; }
.BlueTab .BlueTabContent input[type="button"],
.BlueTab .BlueTabContent input[type="submit"] { display: block;  margin: 15px auto; }

input[type="text"],
input[type="email"],
input[type="password"],
textarea,
select { border: 1px solid var(--PrimaryColor); font-size: 2rem; padding: 6px 10px; font: normal normal 300 1.8rem/1.2 opensans, arial, sans-serif; }
input.Error,
textarea.Error,
select.Error { border: 1px solid #f00; }
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
select:focus { box-shadow: 0 0 4px var(--PrimaryColor); }
.ZakladProductsBasket textarea { width: 100%; height: 100px; }

div.Error { position: absolute; margin-top: -25px; font-size: 1.6rem; font-weight: 700; font-family: opensanscondensed; }

input[type="button"],
input[type="submit"],
button { border: none; background-color: var(--PrimaryColor); font-size: 2rem; padding: 3px 30px 7px; color: var(--MenuColor); cursor: pointer; text-transform: lowercase; border-radius: 5px; }

input[type="checkbox"],
input[type="radio"] { position: absolute; z-index: 20; opacity: 0; }
label.Checkbox { padding: 0 0 0 3rem; margin: 1rem 0; cursor: pointer; position: relative; }
input[type="checkbox"] + label.Checkbox:before { content: " "; display: block; position: absolute; width: 2.2rem; height: 2.2rem; overflow: hidden; top: .2rem; margin: 0; border: 2px solid var(--PrimaryColor); border-radius: .4rem; z-index: 30; background-color: #fff; }
input[type="checkbox"]:checked + label.Checkbox:before { background-image: url('../images/layout/checked.svg'); background-repeat: no-repeat; background-position: center center; background-size: 75%; }

.ZakladShop .ZakladForm { width: 100%; }
.ZakladShop .ZakladForm input[type="text"],
.ZakladShop .ZakladForm input[type="password"] { width: 100%; }
.ZakladShop .ZakladForm .Table { width: 100%; margin-bottom: 15px; }
.ZakladShop .ZakladForm .Cell {  padding: 5px 10px; }

.ZakladShop .ZakladProfileForm { max-width: 44%; float: left; margin-left: 20px; }
.ZakladShop .ZakladPasswordForm { max-width: 44%; float: right; margin: 80px 20px 0 0; }
.ZakladShop .ZakladProfileForm .Cell { width: 65%; }
.ZakladShop .ZakladProfileForm .Row .Cell:first-child { width: 35%; text-align: right; }
.ZakladShop .ZakladPasswordForm .Cell { width: 60%; }
.ZakladShop .ZakladPasswordForm .Row .Cell:first-child { width: 40%; text-align: right; }

.ZakladShop .ZakladPasswordForm label { white-space: nowrap; }

.ZakladShop .ZakladDeliveryDataBasket form { max-width: 50%; margin: 0 auto; }
.ZakladShop .ZakladDeliveryDataBasket .Cell { width: 65%; }
.ZakladShop .ZakladDeliveryDataBasket .Cell input,
.ZakladShop .ZakladDeliveryDataBasket .Cell select { margin-bottom: 25px; }
.ZakladShop .ZakladDeliveryDataBasket .Row .Cell:first-child { width: 35%; text-align: right; }


.ZakladMessage div { border: 2px dashed var(--PrimaryColor); padding: 20px; margin: 10px; background-color: #fff; }
.ZakladAuthorizationInfos div { border: 2px dashed var(--PrimaryColor); padding: 10px; background-color: #fff; margin-bottom: 10px; }

table.Order,
table.OrderDetails { border-collapse: collapse; margin: 0 auto 20px; }
table.Order th,
table.OrderDetails th { padding: 8px; }
table.Order td,
table.OrderDetails td { padding: 10px 15px; border-bottom: 1px solid var(--PrimaryColor); }
table.Order td:nth-child(1),
table.Order th:nth-child(1) { text-align: center; }
table.Order td:nth-child(2),
table.Order th:nth-child(3) { text-align: center; }
table.Order td:nth-child(3),
table.Order th:nth-child(3) { text-align: right; }
table.Order td:nth-child(4),
table.Order th:nth-child(4) { text-align: center; }
table.Order a.Button.Rect { margin: 6px; }

table.Order label,
table.OrderDetails label { display: none; }
label.ShowInM { display: none; }

table.OrderDetails td { vertical-align: middle; }
table.OrderDetails td:nth-child(3),
table.OrderDetails th:nth-child(3) { text-align: center; }
table.OrderDetails td:nth-child(4),
table.OrderDetails th:nth-child(4) { text-align: center; white-space: nowrap; }
table.OrderDetails td:nth-child(5) { text-align: right; white-space: nowrap; }
table.OrderDetails .Summary td { font-weight: 700; border: none; text-align: right; white-space: nowrap; }
table.OrderDetails .Notice td { border: none; }
table.OrderDetails td.Parameters > div { display: table; width: 100%; }
table.OrderDetails td.Parameters > div > div { display: table-cell; padding: 5px 5px; font-size: 1.7rem; text-transform: lowercase; line-height: 1.1; border-bottom: 1px solid var(--PrimaryColor); vertical-align: bottom; }
table.OrderDetails td.Parameters > div:last-child > div { border: none; }
table.OrderDetails td.Parameters > div > div:last-child { text-align: right; }

table.OrderDetails td input { max-width: 60px; text-align: center; }

.ZakladMenuBottom { text-align: center; margin-top: 75px; }
.ZakladMenuBottom .MenuButton { max-width: 240px; margin: 0 7px; }
.ZakladMenuBottom .MenuButton:first-child { margin-left: 0; }
.ZakladMenuBottom .MenuButton:last-child { margin-right: 0; }
.ZakladMenuBottom .MenuButton .Button { font-size: 1.6rem; color: #000; background-color: var(--SecondaryBGColor); padding: 0; height: 60px; }

.ZakladProductsOrder .Table { width: auto; margin-bottom: 20px; }
.ZakladProductsOrder .Cell { padding: 4px 8px; }
.ZakladProductsOrder .Cell:first-child { padding-left: 0; }

.Button.Add,
.Button.Remove { border-radius: 0; padding: 0; vertical-align: middle; width: 30px; height: 30px; line-height: 1; }
.Button.Add::before,
.Button.Remove::before { content: "+"; display: block; text-align: center; font-size: 2.4rem; line-height: 1; font-weight: 700; color: var(--MenuColor); }
.Button.Remove::before { content: "-"; }

.ProductGroup { display: inline-block; vertical-align: top; margin-top: 20px; }
.ProductGroup h3 { text-align: center; }
.ProductGroup.Separator { margin-right: 80px; }
.ProductGroup a { display: inline-block; background-color: var(--PrimaryColor); color: var(--MenuColor); position: relative; border-radius: 5px; font-size: 1.8rem; line-height: 1; padding: 8px 36px 12px 10px; text-decoration: none; margin: 20px 71px 20px 0; min-width: 164px; text-transform: lowercase; }
.ProductGroup a > div { display: table; border: 2px solid var(--PrimaryColor); color: var(--PrimaryColor); background-color: var(--MenuColor); border-radius: 100%; width: 56px; height: 56px; right: -26px; top: -9px; position: absolute; font-size: 2.6rem; font-weight: 700; }
.ProductGroup a > div > div { display: table-cell; vertical-align: middle; text-align: center; }
.ProductGroup a.Active { background-color: var(--PrimaryActiveBGColor); }
.ProductGroup a.Active > div { border-color: var(--PrimaryActiveBGColor); color: var(--PrimaryActiveBGColor); }

.ZakladProducts .Product { display: inline-block; vertical-align: top; border: 1px solid var(--PrimaryColor); margin: 10px 5px; min-height: 480px; position: relative; width: 296px; padding-bottom: 10px; }
.ZakladProducts .Product > div { margin: 5px 10px; }
.ZakladProducts .Product .Name a { font-size: 1.8rem; color: var(--PrimaryColor); text-decoration: none; font-weight: 700; line-height: 1; }
.ZakladProducts .Product .Price { font-size: 2.4rem; font-weight: 700; font-family: opensanscondensed; float: right; }
.ZakladProducts .Product .Availability { font-family: opensanscondensed; float: right; }
.ZakladProducts .Product .Quantity { float: left; }
.ZakladProducts .Product .Image { background-color: #fff; height: 296px; width: 296px; display: table-cell; vertical-align: middle; }
.ZakladProducts .Product .Image img { width: 100%; }
.ZakladProducts .Product .Buttons { text-align: center; position: absolute; bottom: 0; width: 100%; margin: 0 0 15px 0; }
.ZakladProducts .Product .Button { color: var(--MenuColor); border-radius: 5px; display: inline-block; margin: 0 auto; line-height: 1; padding: 8px 20px 10px 20px; min-height: auto; }

.ZakladLensesAggregated.Condensed h1:first-child { display: none; }
.ZakladLensesAggregated.Condensed .ProductGroup { margin-top: 0; }
.ZakladLensesAggregated.Condensed .ProductGroup.ProductGroup.Separator { margin-right: 30px; }
.ZakladLensesAggregated.Condensed .ProductGroup br { display: none; }
.ZakladLensesAggregated.Condensed .ProductGroup a { min-width: 156px; margin-right: 35px; }

.ZakladProducts { margin-top: 20px; }

.ZakladProduct .Table { width: auto; margin: 20px 0; }
.ZakladProduct .Table .Cell { vertical-align: top; }
.ZakladProduct .Table .Cell:nth-child(2) { padding-left: 20px; }
.ZakladProduct .Table .Cell > div { display: inline-block; }
.ZakladProduct .Image { border: 1px solid var(--PrimaryColor); background-color: #fff; width: 100%; max-width: 500px; display: inline-block; padding: 20px; }
.ZakladProduct .Image img { width: 100%; min-width: 260px; }
.ZakladProduct .Label { margin: 0 15px 15px 0; }
.ZakladProduct .Value { font-weight: 700; font-family: opensanscondensed; font-size: 2.4rem; line-height: 1; }
.ZakladProduct .Table .Cell div.Notice { font-weight: 300; font-size: 1.7rem; font-family: opensanscondensed; display: block; }
.ZakladProduct .Table .Cell div.Description { display: block; }
.ZakladProduct .Table .Cell div.Description .Label { display: table-cell; }
.ZakladProduct .Table .Cell div.Description .Text { display: table-cell; padding-left: 15px; }
.ZakladProduct select { max-width: 300px; }


.ZakladProduct .Parameters { display: inline-block; margin-bottom: 20px; }
.ZakladProduct .Parameters > div > div { display: inline-block; margin: 10px 0; }
.ZakladProduct .Parameters div.DNone { display: none; }
.ZakladProduct .Parameters > div > div > div { display: inline-block; text-transform: lowercase; margin: 0 15px 10px 0; }
.ZakladProduct .Parameters .Eye { margin-bottom: 30px; }
.ZakladProduct .Parameters select,
.ZakladProduct .Parameters input[type="text"] { background-color: var(--PrimaryColor); color: var(--MenuColor); border-radius: 5px; margin-left: 10px; }
.ZakladProduct .Parameters input[type="text"] { width: 56px; text-align: right; }
.ZakladProduct .Parameters strong { font-family: opensanscondensed; }
.SubmitMessage { margin: 10px; border: 2px dashed var(--PrimaryColor); padding: 20px; background-color: #fff; font-family: opensanscondensed; font-weight: 700; }
.SubmitMessage:empty { display: none; }

.FormButtons input { margin: 10px; }

.Button.Plus,
.Button.Minus { display: inline-block; vertical-align: middle; width: 30px; height: 30px; margin: -2px 2px 0; padding: 0; min-height: auto; position: relative; cursor: pointer; }
.Button.Plus::before,
.Button.Minus::before { content: "+"; display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: var(--MenuColor); font-size: 3rem; }
.Button.Minus::before { content: " "; width: 12px; border-top: 2px solid var(--MenuColor); }

.ZakladDeliveryData .Data { margin-left: 20px; }

.ErrorDetails,
.Widget_Link,
.PanelTitleBar { margin: 2rem 0; }

@media screen and (max-width: 1300px) {
	.ZakladTop .LogoAndName h1 { font-size: 3.2vw; }
	.ZakladTopMenu { margin-left: 20px; margin-right: 20px; }
	.ZakladMainContent .ZakladContent { margin: 0 250px; }
	.ZakladTopRightMenu,
	.ZakladBottomRightMenu { margin-right: 20px; max-width: 200px; }
	.ZakladTopLeftMenu,
	.ZakladBottomLeftMenu { margin-left: 20px; max-width: 200px; }
	.MenuButton .Header { font-size: 2rem; }
	.ZakladProductBox .ImageBox,
	.ZakladProductBox .TextBox { margin-left: 20px; margin-right: 20px; width: auto; }
	.ZakladContentBlueBox { margin-left: 20px; margin-right: 20px; }
	.ZakladContentBlueBox.LoginTabs { margin-left: auto; margin-right: auto; }

	.ZakladShop .ZakladProductBox .TextBox { margin: 20px; }

	.ZakladLensesAggregated.Condensed .ProductGroup a { margin-top: 10px; margin-bottom: 10px; font-size: 1.4rem; }
	.ZakladLensesAggregated.Condensed .ProductGroup a > div { font-size: 2rem; top: -6px; width: 46px; height: 46px; }

	.ZakladShop .ZakladDeliveryDataBasket form { max-width: 70%; }

	.ErrorDetails,
	.Widget_Link,
	.PanelTitleBar { margin: 2rem; }
}

@media screen and (max-width: 1100px) {
	.ConsumerMenu .Menu { transform: translateX(-35%); }
	.ProductGroup { display: block; }
	.ProductGroup br { display: none; }
	.ProductGroup a { margin-right: 40px; }
	.ProductGroup.Separator { margin-right: 0; margin-bottom: 20px; }
}
@media screen and (max-width: 1000px) {
	.ZakladMainContent { min-height: auto; }
	.ZakladMainContent .ZakladContent { margin: 0 20px 0 0; max-width: 72%; width: 100%; float: right; }
	.ZakladContentMenus { width: auto; max-width: 20%; position: relative; float: left; }
	.ZakladMainContent .MenuButton.MarginTop { margin-top: 0; }
	.ZakladTopRightMenu,
	.ZakladBottomRightMenu,
	.ZakladTopLeftMenu,
	.ZakladBottomLeftMenu { margin-left: 20px; margin-right: 0; float: none; }
	.ZakladMainContent .MenuButton .Table .Button { padding-left: 10px; padding-right: 10px; }
	.ZakladBottomRightMenu { margin-top: -15px; }

	.ZakladProductBox .TextBox .Title { font-size: 2.8rem; }
	.ZakladProductBox .TextBox ul { font-size: 2rem; }

	.ConsumerMenu .Menu { display: none; transform: translateX(-50%); top: 39px; background-color: #fff; padding: 10px 10px 0; border: 2px solid var(--PrimaryColor); }
	.ConsumerMenu.Active .Menu { display: block; width: 220px; left: 23px; }
	.ConsumerMenu.Active .Button { display: block; margin: 0 0 15px; }
	.ConsumerMenuButton { display: block; }
	
	.ZakladContentBlueBox.LoginTabs { max-width: 80%; }

	.ZakladShop .ZakladProfileForm { max-width: 80%; margin-left: 0; margin-bottom: 20px; }
	.ZakladShop .ZakladPasswordForm { max-width: 80%; float: none }

	.ZakladProductBox .TextBox ul li:before { margin-top: 7px }
}

@media screen and (max-width: 780px) {
	.ZakladTop .Content,
	.ZakladFooter .Content,
	.ZakladPath .Content { padding: 0 10px; }
	.ZakladTopMenu { margin-left: 10px; margin-right: 10px; padding: 0; }

	.ZakladContentBlueBox { margin-left: 10px; margin-right: 10px; }

	.ZakladContentMenusButton { right: 60px; }
	.ZakladMainContent .ZakladContent { margin: 0 10px; }
	.ZakladMainContent .ZakladContent { margin: 0 20px; width: auto; float: none; max-width: none; }
	.ZakladPath { margin-right: 60px; }
	.ZakladContentMenusButton { display: block; }
	.ZakladContentMenus { display: none; width: auto; position: fixed; height: 100%; overflow: auto; max-width: none; width: 100%; padding: 20px 20px 0 0; background-color: #fff; border: 1px solid var(--SecondaryBGColor); z-index: 59; }
	.ZakladContentMenus.Active { display: block; }
	.ZakladTopRightMenu,
	.ZakladBottomRightMenu,
	.ZakladTopLeftMenu,
	.ZakladBottomLeftMenu { margin-left: 0; margin-right: 0; max-width: none; width: auto; float: left; }
	.ZakladTopRightMenu { width: 220px; }
	.ZakladTopLeftMenu { width: 440px; }
	.ZakladMainContent .MenuButton { max-width: 200px; margin-left: 20px; }
	.ZakladTopLeftMenu .MenuButton { float: left; }
	.ZakladBottomRightMenu,
	.ZakladBottomLeftMenu { float: none; width: auto; max-width: 100%; margin-right: 20px; }
	.ZakladBottomRightMenu .MenuButton .Table,
	.ZakladBottomLeftMenu .MenuButton .Table { display: table; width: 100%; }
	.ZakladBottomRightMenu .MenuButton .Table .Button,
	.ZakladBottomLeftMenu .MenuButton .Table .Button { display: table-cell; width: 28%; padding: 15px 10px; }
	.ZakladBottomRightMenu,
	.ZakladBottomLeftMenu { max-width: none; }
	.ZakladBottomRightMenu .MenuButton,
	.ZakladBottomLeftMenu .MenuButton { max-width: none; }

	.ZakladMainContent .ImgLeft { display: block; margin: 15px auto; }
	.ZakladMainContent .ImgLeft + ul,
	.ZakladMainContent .ImgLeft + ol { display: block; max-width: none; }
	.ZakladMainContent .MaxWidth40 { max-width: 100%; }

	.ZakladProductBox .TextBox .Title { font-size: 2.4rem; }
	.ZakladProductBox .TextBox ul { font-size: 1.8rem; }

	.ZakladMenuPoziom2 { margin-left: 15px; margin-right: 15px; }
	.ZakladMenuPoziom2 .MenuButton { margin: 0; }

	.ZakladContentBlueBox.LoginTabs { max-width: none; margin-left: 10px; margin-right: 10px; }

	.ZakladProduct .Table { margin-bottom: 30px; }
	.ZakladProduct .Table,
	.ZakladProduct .Table .Row,
	.ZakladProduct .Table .Cell { display: block; }

	.ZakladProduct .Table .Cell > div.Image { display: block; margin: 0 auto 20px; }
	.ZakladProduct .Table .Cell br { display: none; }
	.ZakladProduct .Value { margin-right: 20px; }
	.ZakladProduct .Table .Cell:nth-child(2) { padding-left: 0; }

	table.Order th,
	table.OrderDetails th { display: none; }
	table.Order tr,
	table.Order td,
	table.Order td:nth-child(n) { display: block; text-align: left; border: none; font-weight: 700; }
	table.Order tr { border-bottom: 1px solid var(--PrimaryColor); margin-bottom: 20px; }
	table.Order tr td:last-child { margin-bottom: 20px; }
	table.Order label { display: inline-block; min-width: 190px; margin-right: 10px; font-weight: 400; font-family: opensanscondensed; }

	table.OrderDetails tr { width: 100%; display: block; border-bottom: 1px solid var(--PrimaryColor); margin-bottom: 20px; }
	table.OrderDetails { margin: 0; width: 100%; }
	table.OrderDetails tr:first-child { display: none; }
	table.OrderDetails tr:nth-child(2) { border: none; }
	table.OrderDetails td,
	table.OrderDetails td:nth-child(n) { display: block; border: none; text-align: left; font-weight: 700; }
	table.OrderDetails td.Parameters > div { display: inline-block; width: auto; vertical-align: top; position: relative; }
	table.OrderDetails td.Parameters > div > div { border: none; }
	table.OrderDetails td.Parameters > div:after { content: ";"; display: block; position: absolute; top: 0; right: -1px; }
	table.OrderDetails label { display: inline-block; min-width: 80px; margin-right: 10px; font-weight: 400; font-family: opensanscondensed; }
	label.ShowInM { display: block; }
	table.OrderDetails td.MDNone { display: none; }
	table.OrderDetails .Summary td { text-align: center; display: inline-block; }
	table.OrderDetails .Summary td:nth-child(1) { display: inline-block; text-align: center; }

	.ZakladShop .ZakladDeliveryDataBasket form { max-width: 90%; }
}

@media screen and (max-width: 670px) {
	.ZakladProducts .Product { display: block; margin: 10px auto 30px; min-height: auto; }
	.ZakladProducts .Product .Buttons { position: relative; margin-bottom: 0; margin-top: 20px; }
}

@media screen and (max-width: 600px) {
	.ZakladTop .LogoAndName { margin-right: 60px; }
	.ZakladTop .LogoAndName div { width: 10px; }

	.ZakladTop .LogoAndName h1 { font-size: 2rem; }

	.ZakladTopMenu a.Key::after { content: "?"; display: inline-block; font-size: 1.6rem; }
	.ZakladTopMenu a.Key span,
	.ZakladTop a.Padlock span { display: none; }

	.ZakladProductBox .TextBox .ProductImg,
	.ZakladProductBox .TextBox .ProductInfo { display: block; padding: 0; }
	.ZakladProductBox .TextBox .ProductImg img { width: auto; margin: 0 auto; max-width: 100%; }

	.ZakladShop .ZakladProfileForm { max-width: none; }
	.ZakladShop .ZakladPasswordForm { max-width: none; float: none; }

	.ZakladShop .ZakladDeliveryDataBasket form { max-width: 100%; }
	.ZakladShop .ZakladDeliveryDataBasket form .Table,
	.ZakladShop .ZakladDeliveryDataBasket form .Table .Row,
	.ZakladShop .ZakladDeliveryDataBasket form .Table .Cell { display: block; width: auto; text-align: left; }
	.ZakladShop .ZakladDeliveryDataBasket .Row .Cell:first-child { width: auto; text-align: left; }
}

@media screen and (max-width: 465px) {
	body,
	.ZakladMainContent .ZakladContent { font-size: 1.6rem; }
	h1 { font-size: 2.9rem; }
	h2 { font-size: 2.1rem; }
	h3 { font-size: 1.7rem; }

	.ZakladTop .LogoAndName h1 { font-size: 1.6rem; }

	.ZakladTopLeftMenu { width: auto; }
	.ZakladBottomRightMenu,
	.ZakladBottomLeftMenu { max-width: 200px; }
	.ZakladBottomRightMenu .MenuButton .Table,
	.ZakladBottomLeftMenu .MenuButton .Table { display: block; }
	.ZakladBottomRightMenu .MenuButton .Table .Button,
	.ZakladBottomLeftMenu .MenuButton .Table .Button { display: block; width: auto; }
	.MenuButton .Icon { width: 60px; height: 60px; border-radius: 60px; background-size: 72%; z-index: 25; }
	.MenuButton .Icon.Club { background-size: 50%; }
	.ZakladBottomRightMenu .MenuButton .Icon,
	.ZakladBottomLeftMenu .MenuButton .Icon { position: relative; z-index: 25; }
	.MenuButton .Header { font-size: 1.8rem; }
	.ZakladMainContent .MenuButton .Table,
	.ZakladMainContent .MenuButton .Table .Button { font-size: 1.6rem; }

	.ZakladMenuPoziom1 .MenuButton .Button { font-size: 2rem; padding: 10px; }
	.ZakladMenuPoziom1 .MenuButton .Icon { bottom: -5px; }
	.ZakladMenuPoziom2 .MenuButton .Icon { bottom: -5px; }
	.ZakladMenuPoziom2 .MenuButton .Header .Button { padding: 10px; }

	.ZakladTopMenu .Layer { max-width: 220px; }
	.ZakladTopMenu .Layer a { word-break: break-all; }

	.ConsumerMenu { left: 215px; }

	.BlueTab .Caption { font-size: 1.8rem; }
	.BlueTab .BlueTabContent input[type="text"],
	.BlueTab .BlueTabContent input[type="email"],
	.BlueTab .BlueTabContent input[type="password"] { width: 96%; font-size: 1.8rem; }

	.ZakladShop .ZakladForm .Table,
	.ZakladShop .ZakladForm .Row,
	.ZakladShop .ZakladForm .Cell { display: block; width: auto; }
	.ZakladShop .ZakladForm .Row .Cell:first-child { width: auto; text-align: left; padding-bottom: 0; }

	.ProductGroup a { display: block; margin-left: auto; margin-right: auto; margin-bottom: 30px; width: 200px; font-size: 1.6rem; }
	.ProductGroup a > div { font-size: 2rem; top: -6px; width: 46px; height: 46px; }
	.ZakladLensesAggregated.Condensed .ProductGroup a { margin-top: 15px; margin-bottom: 20px; margin-right: auto; }
	.ZakladLensesAggregated.Condensed .ProductGroup.ProductGroup.Separator { margin-right: 0; }

	.ZakladProduct .Value { font-size: 2rem; }

	table.Order label { min-width: 120px; }

	table.OrderDetails td.Parameters > div > div { font-size: 1.4rem; }
	table.OrderDetails label { min-width: 65px; }

	input[type="text"],
	input[type="email"],
	input[type="password"],
	textarea,
	select { font-size: 1.5rem; padding: 3px 5px; }
	table.OrderDetails td input { vertical-align: middle; }
	.Button.Plus, .Button.Minus { margin-top: 2px; }

	input[type="checkbox"] + label.Checkbox:before { top: -.3rem; }

	.ZakladContentMenus { padding: 20px 10px 0; }
	.ZakladTopRightMenu, .ZakladBottomRightMenu,
	.ZakladTopLeftMenu, .ZakladBottomLeftMenu { float: none; width: 100%; max-width: none; }
	.ZakladTopLeftMenu .MenuButton,
	.ZakladMainContent .MenuButton,
	.ZakladMainContent .MenuButton { max-width: 270px; float: none; display: block; margin-left: auto; margin-right: auto; }
}

@media screen and (max-width: 380px) {
	.ZakladMenuPoziom2 .MenuButton .Icon { bottom: -5px; }
	.ZakladMenuPoziom2 .Table,
	.ZakladMenuPoziom2 .Separator,
	.ZakladMenuPoziom2 .MenuButton .Header .Button { display: block; width: auto; }
	.ZakladMenuPoziom2 .MenuButton .Header .Button { margin: 15px 0; min-height: auto; }

	.ZakladTopMenu .Icon { display: none; }
	.ZakladTopMenu .Icon.Info { display: inline-block; }
	.ConsumerMenu { left: 40px; }
	.ConsumerMenu.Active .Menu { transform: translateX(0); left: -40px; }

	.ZakladProducts .Product { width: 250px; }
	.ZakladProducts .Product .Image { width: 250px; height: 250px; }

	.ZakladProduct .Image img { min-width: auto; }
}