/* ALLGEMEIN 
@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap);*/
@import url(/inc/fonts/Inter/web/font.css);

* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'Inter', sans-serif; background-color: #fff; color: #1a1a1a; line-height: 1.6; -webkit-text-size-adjust: 100%; min-height: 100%; margin: 0px; }
* { outline: none; }
html { min-height: 100%; }
body.mceContentBody { min-height: auto; }
.numbers, .numbers * { font-variant-numeric: tabular-nums;}
body, td, th, input, select, textarea, legend { font-size: 14px; color: #434343; line-height: normal; }
a:link, a:visited, a:active { color: #000000; text-decoration: underline; }
a:hover { color: #000; text-decoration: none; }
.justify, .justify p { text-align: justify !important; }

h1 { font-family: Inter, sans-serif; font-size: 22px; font-weight: bold; color: #494d50; margin: 0px auto 15px auto; line-height: normal; text-align: center; }
h2 { font-family: Inter, sans-serif; font-size: 18px; font-weight: bold; text-transform: none; color: #434343; margin: 20px auto 10px auto; }
h2 span { color: #27002d; }
h3 { font-size: 16px; font-weight: 100; color: #999; margin: 0px 0px 10px 0px; text-align: left; font-weight: bold; }

fieldset { border-color: #EEE; text-align: left; padding: 5px 10px; }
fieldset table { margin: 0px; }

fieldset legend { padding: 0px; margin: 0px 0px 0px 0px; }
fieldset legend h2, fieldset legend h3 { margin: 0px; }
input[type=text]:not(.frm_input_inline input[type="text"]), input[type=number], input[type=password]:not(.frm_input_inline input[type="password"]), select,.flagimg { border: 1px solid #ccc; border-radius: 4px; font-size: 14px; color: #333; border: none; border: 1px solid #AAA; background: rgba(255, 255, 255, 1); padding: 4px 3px 6px 6px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
label { cursor: pointer; }
body, td, th { line-height: normal; }
th { padding-right: 6px; padding-top: 2px; padding-bottom: 2px; text-align: left; }
th.lbl { font-weight: bold; padding-right: 20px; }
td { text-align: left; }
table table { margin: 0px; }
table p, table div { margin-left: 0px; margin-right: 0px; text-align: left !important; }
p { margin-top: 0px; line-height: 20px; hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto; /*text-align: justify;*/ word-break: break-word;}
textarea { resize: none; }
select,.flagimg { appearance: none; -webkit-appearance: none; -moz-appearance: none; background-color: white; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><polyline points='1,1 5,5 9,1' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>"); background-repeat: no-repeat; background-position: right 8px center; background-size: 10px 6px; padding: 4px 28px 5px 8px; cursor: pointer; }



input.helptext { color: #5a5a5a; }
input.check { border-width: 0px; cursor: pointer; }
hr { padding-top: 10px; padding-bottom: 0px; background-image: url(../../../../../../img/design/hr.png); background-repeat: repeat-x; background-position: center; height: 1px; border: 0px; }

img, .img { border: 0px; margin: 0px auto; padding: 0px; }
form { margin: 0px auto; text-align: center; }
table { margin: auto; }

ul { margin-bottom: 0px; margin-left: 14px; padding-left: 0px; }
ol { margin-bottom: 15px; margin-left: 30px; padding-left: 0px; }
ul li { list-style-image: url(../../../../../../img/design/li.png); margin-left: 0px; margin-left: 0px; text-align: left; }
ul li ul { padding-top: 4px; }
ul li ul li, ul.li2 li { list-style-image: url(../../../../../../img/design/li2.png); }

header { display:block; width: 100%; justify-content: space-between; align-items: center; padding: 20px 40px; border-bottom: 4px solid; border-image: linear-gradient(to right, #1e2a78, #3cd5c9) 1; background-color: #ffffff; position: sticky; top: 0; z-index: 1000; }
header .header_c { display: flex; }
.logo-nav { display: flex; align-items: center; }
.logo-text { font-size: 1.6em; font-weight: 700; background: linear-gradient(to right, #1a1f5f, #28978e); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; text-transform: uppercase; text-decoration: none; margin-right: 30px; display: flex; align-items: center; justify-content: center; background-color: #1a1a1a; color: white; }
nav { display: flex; align-items: center; gap: 20px; }
nav a { text-decoration: none; color: #1a1a1a; font-weight: 600; padding: 6px 10px; border-radius: 6px; transition: background 0.2s ease; text-transform: uppercase; font-size: 0.85em; letter-spacing: 0.05em; text-decoration: none !important; }
nav.active a:hover { background-color: #f0f0f0; }
nav a:hover { background-color: #f0f0f0; }
.flagimg { white-space: nowrap; }
.flagimg img { width: 16px; height: 16px; border-radius: 3px; object-fit: cover; margin-right:4px; vertical-align: middle; }
.flagimg span { vertical-align: middle; }
.shop-icons { display: flex; align-items: center; gap:10px; margin-left: auto; }
.shop-icons a { color: #1a1a1a; text-decoration: none; display: inline-block; }
.shop-icons a svg { width: 27px; height:27px; color: #555; }
.bx_MainContainer_admin .shop-icons { /*display:none;*/ }


.shop-icons {
  display: flex;
  align-items: center;
  gap: 8px;
}

.shop-icons button,
.shop-icons .icon-btn {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.shop-icons .icon-btn {
  background: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 0;
  cursor: pointer;
}

.shop-icons .icon-btn svg {
  width: 20px;
  height: 20px;
}



.hero { background: linear-gradient(to right, #1e2a78, #3cd5c9); padding: 65px 20px 80px 20px; }
.hero, .hero h1, .hero h2 { margin-top: 0px; color: white; text-align: center; }
.hero a { color: white !important; }
.hero h1, .hero h2 { font-weight: 700; font-size: 2.4em; margin-bottom: 20px; font-weight: 700; }
.hero h2 { margin-top: 10px; }
.hero p { font-size: 1.1em; max-width: 640px; margin: 0 auto; text-align: center; }
.herotext p { text-align: justify !important;text-align-last:center; }
.hero .cta-button { display: inline-block; margin: 40px auto 0; padding: 14px 32px; font-size: 1em; font-weight: 600; color: #1a1a1a !important; background: #FFF !important; border: none; border-radius: 30px; text-decoration: none !important; transition: transform 0.3s ease, box-shadow 0.3s ease; }
.hero .cta-button:hover { transform: translateY(-2px); box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15); }

.hero2 { margin-top: 20px; text-align: center; padding: 60px 20px 80px; background: linear-gradient(to right, #f9f9f9, #f0f0f0); }
.hero3 { margin-top: 20px; text-align: center; padding: 60px 20px 80px; background: linear-gradient(to right, #FFF, #FFF); }
.hero2 h1, .hero2 h2, .hero3 h2 { font-size: 2.4em; margin-bottom: 20px; font-weight: 600; background: linear-gradient(to right, #1e2a78, #3cd5c9); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; transition: background 1s ease; }
.hero2 p, .hero3 p { font-size: 1.1em; max-width: 640px; margin: 0 auto; color: #555; text-align: justify;text-align-last:center; }
.hero3 p { text-align: justify;text-align-last:center; }

.boxes { display: grid; justify-content: center; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; padding: 20px 0px; }
.boxes .box { text-align: center; }

.categories-subs { display: grid; justify-content: center; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 40px; padding: 80px 40px; background: #fff; }
.categories-sub { border: 1px solid #e0e0e0; border-radius: 10px; padding: 20px; background-color: #fff; transition: box-shadow 0.2s ease, transform 0.2s ease; text-align: center; }
.categories-sub:hover { transform: translateY(-6px); box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05); }
.categories-sub img { border-radius: 6px; margin-bottom: 20px; width: 150px; height: 150px; object-fit: contain; display: block; margin-left: auto; margin-right: auto; }
.categories-sub h2 { font-size: 1.25em; margin: 0px 0 10px 0; font-weight: 600; background: linear-gradient(to right, #1e2a78, #3cd5c9); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; }
.categories-sub p { font-size: 1em; color: #555; text-align:justify;text-align-last:center; }

.info { background: #f8f8f8; padding: 80px 20px; margin-top: 0px; text-align: center; }
.info h2 { margin-top: 0px; font-size: 2em; font-weight: 700; margin-bottom: 20px; color: #1a1a1a; }
.info p { max-width: 700px; margin: 0 auto 40px; font-size: 1.05em; color: #555; text-align: justify;text-align-last:center; }
.info .info-subs { display: flex; flex-wrap: wrap; justify-content: center; gap: 40px; }
.info .info-sub { flex: 1 1 280px; max-width: 400px; text-align: center; background: #fff; padding: 20px; border-radius: 10px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); }
.info .info-sub h3 { font-size: 1.2em; font-weight: 600; margin-bottom: 10px; text-align: center;  background: linear-gradient(to right, #1e2a78, #3cd5c9); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; }
.info .info-sub p { color: #444; font-size: 0.95em; text-align: justify;text-align-last:center; }

.info-box { max-width:500px; margin-bottom:30px; margin-left:auto;margin-right:auto; padding: 20px; border: 1px solid #e0e0e0; border-radius: 10px; background: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); }
.info-box h2,.info-box h3 { font-size: 1.2em; font-weight: 600; margin-bottom: 10px; text-align: center;  background: linear-gradient(to right, #1e2a78, #3cd5c9); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; }

.reviews { padding: 80px 20px; background: #ffffff; text-align: center; }
.reviews h2 { margin-top: 0px; font-size: 1.8em; font-weight: 700; margin-bottom: 40px; color: #1a1a1a; }
.review-cards { display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; }
.review-card { flex: 1 1 280px; background: #f8f8f8; padding: 20px; border-radius: 10px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04); text-align: left; font-size: 0.95em; color: #333; }
.review-card p { margin-bottom: 10px; }
.review-card .review-author { font-size: 0.85em; color: #666; }

.call-to-action { background: linear-gradient(to right, #1e2a78, #3cd5c9); padding: 80px 20px; }
.call-to-action, .call-to-action h2 { margin-top: 0px; color: white; text-align: center; }
.call-to-action h2 { margin-top: 0px; font-size: 2em; font-weight: 700; margin-bottom: 20px; }
.call-to-action p { font-size: 1.1em; margin-bottom: 40px; }

.cta-button { text-transform: uppercase; display: inline-block; margin: 40px auto 0; padding: 14px 32px; font-size: 1em; font-weight: 600; color: #fff !important; background: linear-gradient(to right, #1e2a78, #3cd5c9) !important; border: none; border-radius: 30px; text-decoration: none !important; transition: transform 0.3s ease, box-shadow 0.3s ease; }
.cta-button:hover { transform: translateY(-2px); box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15); }
.call-to-action .cta-button, .hero .cta-button { background: #FFF !important; color: #1a1a1a !important; }

footer { background: #ebeef3; padding: 40px 20px; text-align: center; color: #666; font-size: 1em; }

.footernav { padding: 20px 10px; text-align: center; }
.footernav ul li.parent { background: none; list-style-type: none; list-style-image: none; padding: 0px 0px 10px 0px; margin: 0px; font-weight: bold; }
.footernav h2 { margin-top: 0px; font-size: 1.8em; font-weight: 700; margin-bottom: 40px; color: #1a1a1a; }
.footernav .footernav-cards { display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; }
.footernav .footernav-card { flex: 1 1 280px; background: #f8f8f8; padding: 20px; border-radius: 10px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04); text-align: left; font-size: 0.95em; color: #333; }
.footernav .footernav-card p { margin-bottom: 10px; }

.mobile_nav_ico > button { border: none; cursor: pointer; background: transparent; padding: 0; }
#bx_content ul li { padding-bottom: 10px; }
#cookie_accept > button.cookie_accept_link { color: #000000; border: none; text-decoration: underline; cursor: pointer; background: none; padding: 8px 12px; }
#cookie_accept > button.cookie_accept_link:hover { text-decoration: none; }


@media (min-width: 2800px) {
  .boxes { grid-template-columns: repeat(auto-fit, minmax(280px, 500px)); }
  .info .info-sub { max-width: 500px; }
  .review-card { max-width:600px; }
  .categories-subs { grid-template-columns: repeat(auto-fit, minmax(280px, 500px)); }
}