/* RUBIK SHOP - Unified custom CSS v3.0
   Full replacement for the Rubik header/home/bottom CSS supplied earlier.
   Fixed: incomplete header block and unclosed top-bar social-icons rule.
   Contains: complete header v2, current homepage, bottom and footer fix.
   Keep unrelated site-specific CSS separately.
*/

/* 1. HEADER */
/* Rubik Shop - Helix header v2.0. Complete replacement stylesheet.
   Based on the user's supplied DOM, 2026-11-04.
   Includes the general palette and the exact layout overrides below.
   Replace the earlier rubik-header.css with this file; do not duplicate it.
*/

#sp-top-bar,
#sp-header,
.offcanvas-menu {
  --rh-blue: #0065d6;
  --rh-blue-dark: #004da7;
  --rh-navy: #0b1769;
  --rh-ice: #edf7ff;
  --rh-border: #dce8f7;
  --rh-muted: #536787;
}

/* Contact / account strip */
#sp-top-bar {
  background: #075abc !important;
  color: #fff !important;
  padding: 7px 0 !important;
  border: 0 !important;
  font-family: Inter, Arial, "Segoe UI", sans-serif;
  font-size: 12px;
  line-height: 1.5;
}

#sp-top-bar > .container,
#sp-header > .container {
  width: 100%;
  max-width: 1280px;
  padding-left: 24px;
  padding-right: 24px;
}

#sp-top-bar .row {
  align-items: center;
}

#sp-top-bar .sp-module {
  margin-top: 0;
  margin-bottom: 0;
}

#sp-top-bar a,
#sp-top-bar a:visited,
#sp-top-bar .sp-contact-info,
#sp-top-bar .sp-contact-info li,
#sp-top-bar .sp-social-icons li a,
#sp-top-bar .social-icons li a {
  color: #fff !important;
}

#sp-top-bar a {
  font-size: inherit;
  text-decoration: none;
}

#sp-top-bar a:hover {
  color: #fff !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

#sp-top-bar .sp-contact-info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 18px;
  padding: 0;
  margin: 0;
  list-style: none;
}

#sp-top-bar .sp-contact-info li {
  margin: 0;
  padding: 0;
  font-size: 12px;
  line-height: 1.5;
  list-style: none;
}

#sp-top-bar .sp-contact-info li > i,
#sp-top-bar .sp-contact-info li > span {
  color: inherit;
}



/* RUBIK SHOP bottom v2. Install in Helix Custom Code > Custom CSS.
   Replaces earlier bottom repair CSS. Embedded logo; no image upload needed. */
/* Rubik Shop bottom v1.0 · scope: .rubik-bottom. Independent of homepage CSS. */
.rubik-bottom{--rb-navy:#0b1769;--rb-blue:#0065d6;--rb-muted:#536787;--rb-line:#dce8f7;color:var(--rb-navy);font:14px/1.55 Inter,Arial,"Segoe UI",sans-serif;box-sizing:border-box}
.rubik-bottom *,.rubik-bottom *::before,.rubik-bottom *::after{box-sizing:border-box}
.rubik-bottom.rubik-bottom-grid{margin:0!important;padding:44px 0 36px!important;background:#fff!important;border-top:1px solid #e8f0fa}
.rubik-bottom .sppb-row-container{max-width:1280px;width:100%;margin:0 auto;padding:0 24px}
.rubik-bottom .sppb-row{display:grid!important;grid-template-columns:1.35fr .95fr .85fr 1fr 1.25fr;gap:0;margin:0!important;align-items:start}
.rubik-bottom .sppb-row>div{width:100%!important;max-width:100%!important;min-width:0;padding:0!important;flex-basis:auto!important}
.rubik-bottom .sppb-column{margin:0!important}
.rubik-bottom .rubik-bottom-column{padding:0 22px!important;border-left:1px solid var(--rb-line);background:transparent!important;min-height:170px}
.rubik-bottom .rubik-bottom-brand-column{padding-left:0!important;border-left:0}
.rubik-bottom .rubik-bottom-contact-column{padding-right:0!important}
.rubik-bottom .sppb-addon,.rubik-bottom .sppb-addon-wrapper{margin:0!important}
.rubik-bottom h3,.rubik-bottom .sppb-addon-title{font-family:Inter,Arial,"Segoe UI",sans-serif!important;font-size:15px!important;line-height:1.3!important;font-weight:750!important;letter-spacing:-.025em;text-transform:none!important;color:var(--rb-navy)!important;margin:0 0 16px!important}
.rubik-bottom p{font-size:13px;line-height:1.55;margin:0 0 10px;text-align:left;color:var(--rb-muted)}
.rubik-bottom p:last-child{margin-bottom:0}
.rubik-bottom a{color:var(--rb-blue)!important;text-decoration:none;overflow-wrap:anywhere}
.rubik-bottom a:hover{text-decoration:underline;text-underline-offset:4px;color:#004da7!important}
.rubik-bottom a:focus-visible{outline:3px solid var(--rb-blue);outline-offset:4px;border-radius:3px}
.rubik-bottom .rubik-bottom-links{list-style:none!important;margin:0!important;padding:0!important}
.rubik-bottom .rubik-bottom-links li{list-style:none!important;margin:0 0 8px!important;padding:0!important;line-height:1.4}
.rubik-bottom .rubik-bottom-links li::before,.rubik-bottom .rubik-bottom-links li::after{display:none!important;content:none!important}
.rubik-bottom .rubik-bottom-links a{font-size:13px;display:inline-block;color:var(--rb-muted)!important}
.rubik-bottom .rubik-bottom-links a:hover{color:var(--rb-blue)!important}
.rubik-bottom .rubik-bottom-brand{display:inline-flex;gap:9px;align-items:center;text-decoration:none!important;margin-bottom:18px;color:var(--rb-navy)!important}
.rubik-bottom .rubik-bottom-mark{display:grid;grid-template-columns:repeat(3,10px);grid-template-rows:repeat(3,10px);gap:2px;background:#102665;padding:2px;border-radius:4px;transform:rotate(-2deg);flex-shrink:0}
.rubik-bottom .rubik-bottom-mark i{display:block;border-radius:1px;background:#0065d6}
.rubik-bottom .rubik-bottom-mark i:nth-child(2),.rubik-bottom .rubik-bottom-mark i:nth-child(7){background:#ffdb00}
.rubik-bottom .rubik-bottom-mark i:nth-child(3),.rubik-bottom .rubik-bottom-mark i:nth-child(6){background:#eb3438}
.rubik-bottom .rubik-bottom-mark i:nth-child(4){background:#fff}
.rubik-bottom .rubik-bottom-mark i:nth-child(5){background:#ff8b26}
.rubik-bottom .rubik-bottom-mark i:nth-child(9){background:#149d59}
.rubik-bottom .rubik-bottom-wordmark{font-size:25px;font-weight:850;line-height:.86;letter-spacing:-.05em}
.rubik-bottom .rubik-bottom-wordmark>span{display:block;font-size:18px;line-height:1.05;letter-spacing:.015em;font-weight:500}
.rubik-bottom .rubik-bottom-intro{max-width:245px}
.rubik-bottom .rubik-bottom-intro p{font-size:13px;line-height:1.55}
.rubik-bottom .rubik-bottom-social{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:5px 0;font-size:13px;font-weight:600;min-height:32px}
.rubik-bottom .rubik-bottom-company{font-weight:650;color:var(--rb-navy)}
.rubik-bottom .rubik-bottom-address{font-style:normal;margin:0}
.rubik-bottom .rubik-bottom-address p{display:flex;align-items:flex-start;gap:9px;margin-bottom:12px}
.rubik-bottom .rubik-bottom-icon{display:inline-flex;color:var(--rb-blue);font-size:17px;line-height:1.25;flex:0 0 17px;justify-content:center}
.rubik-bottom .rubik-bottom-address a{white-space:nowrap;font-size:13px;color:var(--rb-muted)!important}
.rubik-bottom .rubik-bottom-pickup{font-size:12px!important;margin:4px 0 10px;color:var(--rb-muted)}
.rubik-bottom .rubik-bottom-more{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:600;min-height:32px}
/* Only affect the Helix bottom section when this specific module is present. */
#sp-bottom:has(.rubik-bottom){padding-top:0!important;padding-bottom:0!important;background:#fff!important;color:#0b1769}
#sp-bottom:has(.rubik-bottom)>.container{max-width:1280px;width:100%;padding-left:0;padding-right:0}
#sp-bottom .sp-module:has(.rubik-bottom){margin:0!important}
#sp-bottom .sp-module:has(.rubik-bottom)>.sp-module-title{display:none!important}
@media(min-width:1600px){.rubik-bottom .sppb-row-container,#sp-bottom:has(.rubik-bottom)>.container{max-width:1360px}}
@media(max-width:1199px){
.rubik-bottom .sppb-row{grid-template-columns:1.2fr 1fr 1fr;gap:28px 0}
.rubik-bottom .rubik-bottom-column{padding:0 20px!important;min-height:0}
.rubik-bottom .rubik-bottom-brand-column,.rubik-bottom .sppb-row>div:nth-child(4) .rubik-bottom-column{border-left:0;padding-left:0!important}
.rubik-bottom .rubik-bottom-contact-column{padding-right:0!important}
}
@media(max-width:767px){
.rubik-bottom.rubik-bottom-grid{padding:32px 0 28px!important}
.rubik-bottom .sppb-row-container{padding:0 18px}
.rubik-bottom .sppb-row{grid-template-columns:1fr 1fr;gap:28px 0}
.rubik-bottom .rubik-bottom-column{padding:0 18px!important}
.rubik-bottom .sppb-row>div:nth-child(odd) .rubik-bottom-column{border-left:0;padding-left:0!important}
.rubik-bottom .sppb-row>div:nth-child(even) .rubik-bottom-column{border-left:1px solid var(--rb-line);padding-left:18px!important;padding-right:0!important}
.rubik-bottom .sppb-row>div:last-child{grid-column:1/-1}
.rubik-bottom .rubik-bottom-contact-column{border-left:0!important;padding-left:0!important;border-top:1px solid var(--rb-line);padding-top:22px!important}
.rubik-bottom .rubik-bottom-intro{max-width:100%}
.rubik-bottom .rubik-bottom-links a{font-size:14px}
}
@media(max-width:479px){
.rubik-bottom .sppb-row{grid-template-columns:1fr;gap:24px}
.rubik-bottom .sppb-row>div .rubik-bottom-column{border-left:0!important;padding:0!important}
.rubik-bottom .sppb-row>div:not(:first-child) .rubik-bottom-column{border-top:1px solid var(--rb-line);padding-top:20px!important}
.rubik-bottom .rubik-bottom-links a{min-height:28px;padding:3px 0}
.rubik-bottom .rubik-bottom-contact-column{padding-top:20px!important}
}

/* Rubik bottom v2: GLOBAL Helix CSS, not the module's scoped CSS field. */
html body section#sp-bottom,
html body footer#sp-footer {
  background: #fff !important;
  background-image: none !important;
  color: #536787 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: Inter, Arial, "Segoe UI", sans-serif !important;
}
html body section#sp-bottom > .container,
html body section#sp-bottom > .container > .container-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
html body section#sp-bottom > .container > .container-inner > .row {
  margin: 0 !important;
}
html body section#sp-bottom #sp-bottom1 {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}
html body section#sp-bottom #sp-bottom1 > .sp-column,
html body section#sp-bottom #sp-bottom1 > .sp-column > .sp-module,
html body section#sp-bottom #sp-bottom1 > .sp-column > .sp-module > .sp-module-content,
html body section#sp-bottom .mod-sppagebuilder,
html body section#sp-bottom .mod-sppagebuilder > .page-content {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
html body section#sp-bottom .rubik-bottom {
  margin: 0 !important;
  padding: 44px 0 38px !important;
  border: 0 !important;
  background: #fff !important;
  color: #0b1769 !important;
  text-align: left !important;
}
html body section#sp-bottom .rubik-bottom > .sppb-row-container {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}
html body section#sp-bottom .rubik-bottom h3,
html body section#sp-bottom .rubik-bottom .sppb-addon-title {
  color: #0b1769 !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  line-height: 1.35 !important;
  margin: 0 0 16px !important;
}
html body section#sp-bottom .rubik-bottom .sppb-addon-content,
html body section#sp-bottom .rubik-bottom p,
html body section#sp-bottom .rubik-bottom address {
  color: #536787 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  text-align: left !important;
}
html body section#sp-bottom .rubik-bottom a,
html body section#sp-bottom .rubik-bottom a:visited {
  color: #0065d6 !important;
}
html body section#sp-bottom .rubik-bottom nav a,
html body section#sp-bottom .rubik-bottom address a,
html body section#sp-bottom .rubik-bottom .rubik-bottom-links a {
  color: #536787 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}
html body section#sp-bottom .rubik-bottom a:hover {
  color: #004da7 !important;
  text-decoration: underline !important;
}
html body section#sp-bottom .rubik-bottom .rubik-bottom-company {
  color: #0b1769 !important;
  font-weight: 650 !important;
}
/* A single embedded image also works if an editor removed empty spans. */
html body section#sp-bottom .rubik-bottom-brand-addon .sppb-addon-content {
  position: relative;
  min-height: 52px !important;
  margin-bottom: 16px !important;
}
html body section#sp-bottom .rubik-bottom-brand-addon .sppb-addon-content::before {
  content: "" !important;
  display: block !important;
  width: 156px !important;
  height: 52px !important;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22156%22%20height%3D%2252%22%20viewBox%3D%220%200%20156%2052%22%3E%3Crect%20x%3D%221%22%20y%3D%224%22%20width%3D%2242%22%20height%3D%2244%22%20rx%3D%225%22%20fill%3D%22%230b1769%22%2F%3E%3Cg%20stroke%3D%22%230b1769%22%20stroke-width%3D%221%22%3E%3Crect%20x%3D%223%22%20y%3D%226%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%230065d6%22%2F%3E%3Crect%20x%3D%2216%22%20y%3D%226%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%23ffdb00%22%2F%3E%3Crect%20x%3D%2229%22%20y%3D%226%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%23eb3438%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2220%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22white%22%2F%3E%3Crect%20x%3D%2216%22%20y%3D%2220%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%23ff8b26%22%2F%3E%3Crect%20x%3D%2229%22%20y%3D%2220%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%23eb3438%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2234%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%23ffdb00%22%2F%3E%3Crect%20x%3D%2216%22%20y%3D%2234%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%230065d6%22%2F%3E%3Crect%20x%3D%2229%22%20y%3D%2234%22%20width%3D%2212%22%20height%3D%2212%22%20rx%3D%222%22%20fill%3D%22%23149d59%22%2F%3E%3C%2Fg%3E%3Cg%20fill%3D%22%230b1769%22%20font-family%3D%22Arial%2Csans-serif%22%3E%3Ctext%20x%3D%2251%22%20y%3D%2227%22%20font-size%3D%2227%22%20font-weight%3D%22900%22%20letter-spacing%3D%22-1%22%3ERUBIK%3C%2Ftext%3E%3Ctext%20x%3D%2251%22%20y%3D%2246%22%20font-size%3D%2221%22%20font-weight%3D%22500%22%3ESHOP%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: contain !important;
  pointer-events: none;
}
html body section#sp-bottom .rubik-bottom-brand-addon .sppb-addon-content > a {
  position: absolute !important;
  inset: 0 auto auto 0 !important;
  display: block !important;
  width: 156px !important;
  height: 52px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
}
html body section#sp-bottom .rubik-bottom-brand-addon .sppb-addon-content:focus-within {
  outline: 3px solid #0065d6;
  outline-offset: 4px;
  width: fit-content;
}
html body section#sp-bottom .rubik-bottom nav ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html body section#sp-bottom .rubik-bottom nav li {
  margin: 0 0 8px !important;
  padding: 0 !important;
  list-style: none !important;
}
html body footer#sp-footer > .container {
  width: 100% !important;
  max-width: 1280px !important;
  padding: 0 24px !important;
  margin: 0 auto !important;
}
html body footer#sp-footer > .container > .container-inner {
  padding: 18px 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-top: 1px solid #e8f0fa !important;
  background: transparent !important;
}
html body footer#sp-footer .row {
  margin: 0 !important;
}
html body footer#sp-footer #sp-footer1,
html body footer#sp-footer #sp-footer1 > .sp-column {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
html body footer#sp-footer #sp-footer1 .sp-copyright {
  color: #536787 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}
html body footer#sp-footer #sp-footer1 .sp-copyright a {
  color: #0065d6 !important;
}
@media (min-width: 1600px) {
  html body section#sp-bottom .rubik-bottom > .sppb-row-container,
  html body footer#sp-footer > .container { max-width: 1360px !important; }
}
@media (max-width: 767px) {
  html body section#sp-bottom .rubik-bottom { padding: 30px 0 !important; }
  html body section#sp-bottom .rubik-bottom > .sppb-row-container,
  html body footer#sp-footer > .container { padding: 0 18px !important; }
}







/* RUBIK SHOP – fejléc és felső kapcsolati sáv */

/* Kapcsolati adatok és Facebook egy sorban */
body #sp-top-bar {
  padding: 8px 0 !important;
  background: #075abc !important;
  color: #fff !important;
}

body #sp-top-bar > .row,
body #sp-top-bar > .container > .row {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap;
  row-gap: 8px;
  margin: 0 auto !important;
  width: 100%;
  max-width: 1280px;
  padding: 0 24px;
}

body #sp-top-bar #sp-top1 {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0;
}

body #sp-top-bar #sp-top1 > .sp-column {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap;
  gap: 8px 18px;
}

body #sp-top-bar .sp-contact-info,
body #sp-top-bar .social-icons,
body #sp-top-bar .sp-social-icons {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body #sp-top-bar .sp-contact-info li,
body #sp-top-bar .social-icons li,
body #sp-top-bar .sp-social-icons li {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 20px !important;
}

body #sp-top-bar a {
  color: #fff !important;
  text-decoration: none;
}

body #sp-top-bar .social-icons a,
body #sp-top-bar .sp-social-icons a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
}

body #sp-top-bar #sp-position1 {
  flex: 0 0 auto !important;
  width: auto !important;
  margin-left: auto;
}

body #sp-top-bar #sp-position1 > .sp-column,
body #sp-top-bar #mod-custom131 {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end;
  gap: 6px;
}

body #sp-top-bar .sp-module,
body #sp-top-bar p {
  margin: 0 !important;
}

/* Fejléc alapbeállításai */
body #sp-header {
  height: auto !important;
  min-height: 80px;
  padding: 0 !important;
  background: #fff !important;
  border-bottom: 1px solid #dce8f7;
  box-shadow: 0 2px 8px rgb(11 23 105 / 4%) !important;
}

body #sp-header > .container {
  width: 100% !important;
  max-width: 1280px !important;
  padding: 0 24px !important;
}

body #sp-header > .container > .container-inner {
  padding: 0 !important;
  border: 0 !important;
}

body #sp-header > .container > .container-inner > .row {
  display: grid !important;
  grid-template-columns: 150px minmax(0, 1fr) 170px 190px;
  align-items: center !important;
  gap: 18px;
  min-height: 80px;
  margin: 0 !important;
}

body #sp-header #sp-logo,
body #sp-header #sp-menu,
body #sp-header #sp-search,
body #sp-header #sp-position8 {
  width: auto !important;
  max-width: none !important;
  min-width: 0;
  padding: 0 !important;
  align-self: center;
}

body #sp-header #sp-logo > .sp-column,
body #sp-header #sp-menu > .sp-column,
body #sp-header #sp-search > .sp-column,
body #sp-header #sp-position8 > .sp-column {
  display: flex !important;
  align-items: center !important;
  min-height: 0 !important;
  height: auto !important;
}

body #sp-header .sp-module {
  margin: 0 !important;
}

body #sp-header #sp-logo .logo {
  margin: 0 !important;
  padding: 0 !important;
}

body #sp-header #sp-logo .logo a {
  display: flex;
  align-items: center;
}

body #sp-header #sp-logo .logo img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 150px !important;
  max-height: 58px !important;
  object-fit: contain;
}

/* Menü függőlegesen és vízszintesen középen */
body #sp-header #sp-menu > .sp-column {
  justify-content: center !important;
}

body #sp-header #sp-menu .sp-megamenu-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100%;
  margin: 0 !important;
}

body #sp-header #sp-menu .sp-megamenu-parent {
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap;
  gap: 2px;
  margin: 0 !important;
  padding: 0 !important;
}

body #sp-header .sp-megamenu-parent > li {
  display: flex;
  align-items: center;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body #sp-header .sp-megamenu-parent > li > a,
body #sp-header .sp-megamenu-parent > li > span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center;
  min-height: 42px;
  padding: 0 10px !important;
  color: #0b1769 !important;
  font-size: 14px !important;
  font-weight: 600;
  line-height: 1.3 !important;
  white-space: nowrap;
  border-radius: 6px;
}

body #sp-header .sp-megamenu-parent > li:hover > a,
body #sp-header .sp-megamenu-parent > li.active > a {
  background: #edf7ff !important;
  color: #0065d6 !important;
}

/* Kereső középre igazítva */
body #sp-header #sp-search > .sp-column {
  justify-content: center !important;
}

body #sp-header #sp-search .sp-module,
body #sp-header #sp-search .sp-module-content,
body #sp-header #ajaxsearch_128,
body #sp-header #mod-ajaxsearch-form-128 {
  width: 100% !important;
  margin: 0 !important;
}

body #sp-header #mod-ajaxsearch-form-128 .btn-toolbar {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

body #sp-header #mod-ajaxsearch-searchword_128 {
  display: block !important;
  box-sizing: border-box;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 15px !important;
  background: #f5faff !important;
  color: #0b1769 !important;
  border: 1px solid #dce8f7 !important;
  border-radius: 24px !important;
  box-shadow: none !important;
  font-size: 13px !important;
  line-height: normal !important;
}

body #sp-header #mod-ajaxsearch-searchword_128:focus {
  border-color: #0065d6 !important;
  outline: 2px solid rgb(0 101 214 / 15%);
  outline-offset: 1px;
}

/* Kosár és ajánlatkérés */
body #sp-header #sp-position8 > .sp-column {
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: 14px;
}

body #sp-header #sp-position8 .sp-module {
  flex: 0 0 auto;
}

body #sp-header #hikashop_cart_module,
body #sp-header #hikashop_cart_129 {
  display: flex !important;
  align-items: center !important;
  justify-content: center;
  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body #sp-header #hikashop_cart_129 a.hikashop_small_cart_checkout_link {
  position: relative;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box;
  width: 44px !important;
  height: 44px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 5px !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 0 !important;
  line-height: 1 !important;
}

/* Korábbi CSS-sel rajzolt kosár helyett a feltöltött kép */
body #sp-header #hikashop_cart_129 a.hikashop_small_cart_checkout_link::before,
body #sp-header #hikashop_cart_129 a.hikashop_small_cart_checkout_link::after {
  content: none !important;
  display: none !important;
}

body #sp-header #hikashop_cart_129 .hikashop_small_cart_total_title {
  position: static !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 34px !important;
  height: 34px !important;
  font-size: 0 !important;
}

body #sp-header #hikashop_cart_129 img.hikashop_cart_module_product_icon_title {
  display: block !important;
  position: static !important;
  width: 34px !important;
  height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  opacity: 1 !important;
}

body #sp-header #hikashop_cart_129 .flora-cart-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

body #sp-header #hikashop_cart_129 .flora-cart-badge {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  background: #0065d6 !important;
  color: #fff !important;
  border: 2px solid #fff;
  border-radius: 20px;
  font-size: 10px !important;
  line-height: 1 !important;
}

body #sp-header #mod-custom132 {
  display: flex;
  align-items: center;
  margin: 0 !important;
}

body #sp-header #mod-custom132 p {
  margin: 0 !important;
}

body #sp-header #mod-custom132 .ajanlatkeres-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box;
  min-height: 42px;
  margin: 0 !important;
  padding: 10px 16px !important;
  background: #ffdb00 !important;
  color: #0b1769 !important;
  border: 1px solid #ffdb00 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  white-space: nowrap;
}

body #sp-header #mod-custom132 .ajanlatkeres-btn:hover {
  background: #efc900 !important;
  border-color: #efc900 !important;
}

body #sp-header #mod-custom132 .ajanlatkeres-btn:focus-visible {
  outline: 3px solid #0065d6;
  outline-offset: 3px;
}

/* Asztali menü 992 px-től */
@media (min-width: 992px) {
  body #sp-header #sp-menu .sp-megamenu-parent {
    display: flex !important;
  }

  body #sp-header #offcanvas-toggler,
  body #sp-header .offcanvas-toggler,
  body #sp-header #sp-menu .burger-icon {
    display: none !important;
  }
}

/* Kompakt asztali fejléc */
@media (min-width: 992px) and (max-width: 1199px) {
  body #sp-header > .container {
    padding: 0 18px !important;
  }

  body #sp-header > .container > .container-inner > .row {
    grid-template-columns: 125px minmax(0, 1fr) 135px 176px;
    gap: 10px;
  }

  body #sp-header #sp-logo .logo img {
    max-width: 125px !important;
  }

  body #sp-header .sp-megamenu-parent > li > a,
  body #sp-header .sp-megamenu-parent > li > span {
    padding: 0 7px !important;
    font-size: 13px !important;
  }

  body #sp-header #sp-position8 > .sp-column {
    gap: 8px;
  }

  body #sp-header #mod-custom132 .ajanlatkeres-btn {
    padding: 10px 12px !important;
  }
}

/* Mobil és tablet */
@media (max-width: 991px) {
  body #sp-header > .container {
    padding: 0 18px !important;
  }

  body #sp-header > .container > .container-inner > .row {
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 12px;
    padding: 12px 0;
  }

  body #sp-header #sp-logo {
    grid-column: 1;
    grid-row: 1;
  }

  body #sp-header #sp-position8 {
    grid-column: 2;
    grid-row: 1;
  }

  body #sp-header #sp-menu {
    grid-column: 3;
    grid-row: 1;
  }

  body #sp-header #sp-search {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  body #sp-header #sp-menu .sp-megamenu-parent {
    display: none !important;
  }

  body #sp-header #offcanvas-toggler {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #0b1769 !important;
    float: none !important;
  }

  body #sp-header #offcanvas-toggler .burger-icon {
    display: block !important;
  }

  body #sp-header #offcanvas-toggler .burger-icon > span {
    background: #0b1769 !important;
  }

  body #sp-header #sp-logo .logo img {
    max-width: 130px !important;
    max-height: 46px !important;
  }

  body #sp-top-bar #sp-position1 {
    margin-left: 0;
  }
}

@media (max-width: 479px) {
  body #sp-header > .container > .container-inner > .row {
    gap: 8px;
  }

  body #sp-header #sp-logo .logo img {
    max-width: 100px !important;
  }

  body #sp-header #sp-position8 > .sp-column {
    gap: 5px;
  }

  body #sp-header #mod-custom132 .ajanlatkeres-btn {
    padding: 10px !important;
    font-size: 12px !important;
  }

  body #sp-top-bar > .row,
  body #sp-top-bar > .container > .row {
    padding: 0 18px;
  }
}

























/* Rubik Shop kapcsolat – natív SP Page Builder addonok.
   Telepítés: Helix Custom CSS vagy custom.css. Kizárólag .rubik-contact elemek. */
.rubik-contact {
  --rc-navy: #0b1769;
  --rc-blue: #0065d6;
  --rc-ice: #edf7ff;
  --rc-line: #dce8f7;
  --rc-muted: #536787;
  color: var(--rc-navy);
  font-family: Inter, Arial, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
.rubik-contact, .rubik-contact *, .rubik-contact *::before, .rubik-contact *::after { box-sizing: border-box; }
.rubik-contact > .sppb-row-container { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 24px; }
.rubik-contact > .sppb-row-container > .sppb-row { margin: 0 !important; }
.rubik-contact .sppb-row > .sppb-row-column { min-width: 0; padding: 0 !important; width: 100% !important; max-width: 100% !important; flex-basis: auto !important; }
.rubik-contact .rc-column { margin: 0 !important; }
.rubik-contact .sppb-addon-wrapper, .rubik-contact .sppb-addon { margin: 0 !important; }
.rubik-contact h1, .rubik-contact h2, .rubik-contact h3,
.rubik-contact .sppb-addon-title { color: var(--rc-navy) !important; font-family: inherit !important; font-weight: 750 !important; text-transform: none !important; letter-spacing: -.035em; }
.rubik-contact h1 { font-size: clamp(34px, 4vw, 52px) !important; line-height: 1.12 !important; margin: 0 0 18px !important; }
.rubik-contact h2 { font-size: clamp(25px, 2.4vw, 32px) !important; line-height: 1.2 !important; margin: 0 0 16px !important; }
.rubik-contact h3 { font-size: 16px !important; line-height: 1.4 !important; margin: 0 0 7px !important; letter-spacing: -.015em; }
.rubik-contact p { margin: 0 0 12px; }
.rubik-contact p:last-child { margin-bottom: 0; }
.rubik-contact a { color: var(--rc-blue); text-decoration: none; overflow-wrap: anywhere; }
.rubik-contact a:hover { color: #004da7; text-decoration: underline; text-underline-offset: 3px; }
.rubik-contact a:focus-visible, .rubik-contact button:focus-visible { outline: 3px solid var(--rc-blue); outline-offset: 4px; }
.rubik-contact .rc-eyebrow { margin-bottom: 13px !important; color: var(--rc-blue); font-size: 12px; font-weight: 700; letter-spacing: .11em; }
.rubik-contact.rc-hero { padding: 56px 0 48px !important; margin: 0 !important; background: var(--rc-ice); border-bottom: 1px solid #e6f0fb; }
.rubik-contact .rc-lead { max-width: 730px; color: var(--rc-muted); font-size: 18px; line-height: 1.6; }
.rubik-contact.rc-main { padding: 44px 0 48px !important; background: #fff; }
.rubik-contact.rc-main > .sppb-row-container > .sppb-row { display: grid !important; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 28px; align-items: start; }
.rubik-contact .rc-form-card, .rubik-contact .rc-info-card { border: 1px solid var(--rc-line); border-radius: 14px; padding: 34px !important; }
.rubik-contact .rc-form-card { background: #fff; box-shadow: 0 8px 28px rgb(11 23 105 / 4%); }
.rubik-contact .rc-info-card { background: #f5faff; }
.rubik-contact .rc-form-intro { color: var(--rc-muted); margin-bottom: 26px !important; }
.rubik-contact .rc-muted, .rubik-contact .rc-detail, .rubik-contact .rc-hours-note { color: var(--rc-muted); }
.rubik-contact .rc-detail { margin-top: 22px !important; padding-top: 20px !important; border-top: 1px solid var(--rc-line); }
.rubik-contact .rc-detail a { font-weight: 600; }
.rubik-contact .rc-small { font-size: 13px; margin-top: 7px; }
.rubik-contact .rc-notice { margin: 24px 0 !important; padding: 15px 17px !important; background: #e7f2ff; border-left: 3px solid var(--rc-blue); border-radius: 0 6px 6px 0; font-size: 14px; line-height: 1.6; }
.rubik-contact .rc-button .sppb-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 12px 20px !important; border: 1px solid var(--rc-blue) !important; border-radius: 6px !important; background: var(--rc-blue) !important; color: #fff !important; font-size: 14px !important; font-weight: 700 !important; line-height: 1.3 !important; white-space: normal; text-align: center; box-shadow: none !important; }
.rubik-contact .rc-button .sppb-btn:hover { background: #004da7 !important; border-color: #004da7 !important; text-decoration: none; }
.rubik-contact .rc-button-yellow .sppb-btn { background: #ffdb00 !important; border-color: #ffdb00 !important; color: var(--rc-navy) !important; }
.rubik-contact .rc-button-yellow .sppb-btn:hover { background: #efc900 !important; border-color: #efc900 !important; }
.rubik-contact .rc-button-outline .sppb-btn { background: #fff !important; color: var(--rc-blue) !important; }
.rubik-contact .rc-button-outline .sppb-btn:hover { background: #edf7ff !important; }
/* Meglévő RSForm modul – a beküldési működését nem módosítja. */
.rubik-contact .rc-form .sp-module, .rubik-contact .rc-form .rsform { margin: 0 !important; }
.rubik-contact .rc-form label, .rubik-contact .rc-form .formControlLabel { color: var(--rc-navy); font-size: 14px; font-weight: 600; }
.rubik-contact .rc-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="file"]),
.rubik-contact .rc-form select, .rubik-contact .rc-form textarea { width: 100% !important; max-width: 100%; min-height: 46px; padding: 11px 13px; border: 1px solid #ccdbed !important; border-radius: 6px !important; background: #fff; color: var(--rc-navy); font: inherit; font-size: 15px; box-shadow: none; }
.rubik-contact .rc-form textarea { min-height: 145px; resize: vertical; }
.rubik-contact .rc-form input:focus-visible, .rubik-contact .rc-form select:focus-visible, .rubik-contact .rc-form textarea:focus-visible { outline: 2px solid #0065d6; outline-offset: 2px; }
.rubik-contact .rc-form .form-group, .rubik-contact .rc-form .rsform-block { margin-bottom: 18px; }
.rubik-contact .rc-form input[type="checkbox"], .rubik-contact .rc-form input[type="radio"] { accent-color: var(--rc-blue); }
.rubik-contact .rc-form .rsform-submit-button, .rubik-contact .rc-form button[type="submit"], .rubik-contact .rc-form input[type="submit"] { min-height: 44px; padding: 12px 23px !important; border: 1px solid var(--rc-blue) !important; border-radius: 6px !important; background: var(--rc-blue) !important; color: #fff !important; font: inherit; font-weight: 700; cursor: pointer; }
.rubik-contact .rc-form .formError, .rubik-contact .rc-form .formValidation { color: #bd202b; }
.rubik-contact.rc-visit { padding: 48px 0 56px !important; background: var(--rc-ice); }
.rubik-contact.rc-visit > .sppb-row-container > .sppb-row { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: 44px; align-items: start; }
.rubik-contact .rc-hours-line { padding: 12px 0 !important; border-bottom: 1px solid #d6e6f5; }
.rubik-contact .rc-hours-line p { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; margin: 0; font-size: 15px; }
.rubik-contact .rc-hours-line strong { font-weight: 600; }
.rubik-contact .rc-hours-line span { white-space: nowrap; color: var(--rc-muted); }
.rubik-contact .rc-hours-note { margin-top: 18px !important; font-size: 14px; line-height: 1.65; }
.rubik-contact .rc-map { border: 1px solid #cddff1; border-radius: 12px; overflow: hidden; background: #e2edf7; }
.rubik-contact .rc-map iframe { display: block; width: 100% !important; height: 360px !important; border: 0; }
.rubik-contact .rc-map-caption { margin: 18px 0 !important; color: var(--rc-muted); font-size: 14px; }
.rubik-contact .rc-map-caption strong { color: var(--rc-navy); }
@media (min-width: 1600px) { .rubik-contact > .sppb-row-container { max-width: 1360px; } }
@media (max-width: 991px) {
 .rubik-contact.rc-main > .sppb-row-container > .sppb-row,
 .rubik-contact.rc-visit > .sppb-row-container > .sppb-row { grid-template-columns: minmax(0, 1fr); gap: 26px; }
 .rubik-contact .rc-form-card, .rubik-contact .rc-info-card { padding: 28px !important; }
}
@media (max-width: 575px) {
 .rubik-contact > .sppb-row-container { padding: 0 18px; }
 .rubik-contact.rc-hero { padding: 36px 0 32px !important; }
 .rubik-contact.rc-main, .rubik-contact.rc-visit { padding: 30px 0 !important; }
 .rubik-contact .rc-form-card, .rubik-contact .rc-info-card { padding: 22px 18px !important; border-radius: 10px; }
 .rubik-contact .rc-lead { font-size: 16px; }
 .rubik-contact .rc-map iframe { height: 300px !important; }
 .rubik-contact .rc-button .sppb-btn { width: 100%; }
 .rubik-contact .rc-hours-line p { gap: 10px; font-size: 14px; }
}







/* Kapcsolati oldal – kék-fehér gombok */
body .rubik-contact a.sppb-btn,
body .rubik-contact a.sppb-btn:visited,
body .rubik-contact button.sppb-btn,
body .rubik-contact .rc-form button[type="submit"],
body .rubik-contact .rc-form input[type="submit"],
body .rubik-contact .rc-form .rsform-submit-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 12px 22px !important;

  background: #0065d6 !important;
  background-image: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;

  border: 1px solid #0065d6 !important;
  border-radius: 6px !important;
  box-shadow: none !important;

  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-align: center;
  text-decoration: none !important;
  white-space: normal;
  cursor: pointer;
}

body .rubik-contact a.sppb-btn *,
body .rubik-contact button.sppb-btn * {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}

body .rubik-contact a.sppb-btn:hover,
body .rubik-contact button.sppb-btn:hover,
body .rubik-contact .rc-form button[type="submit"]:hover,
body .rubik-contact .rc-form input[type="submit"]:hover,
body .rubik-contact .rc-form .rsform-submit-button:hover {
  background: #004da7 !important;
  border-color: #004da7 !important;
  color: #ffffff !important;
}

body .rubik-contact a.sppb-btn:focus-visible,
body .rubik-contact button.sppb-btn:focus-visible,
body .rubik-contact .rc-form button[type="submit"]:focus-visible,
body .rubik-contact .rc-form input[type="submit"]:focus-visible {
  outline: 3px solid #0b1769 !important;
  outline-offset: 3px;
}





/* RUBIK SHOP – Rólunk
   Kizárólag a .rubik-about szekciókra vonatkozik. */

.rubik-about {
  --ra-navy: #0b1769;
  --ra-blue: #0065d6;
  --ra-blue-hover: #004da7;
  --ra-ice: #edf7ff;
  --ra-border: #dce8f7;
  --ra-muted: #536787;

  margin: 0 !important;
  color: var(--ra-navy);
  font-family: Inter, Arial, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.7;
}

.rubik-about,
.rubik-about *,
.rubik-about *::before,
.rubik-about *::after {
  box-sizing: border-box;
}

.rubik-about > .sppb-row-container {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
}

.rubik-about > .sppb-row-container > .sppb-row {
  margin: 0 !important;
}

.rubik-about .sppb-row > .sppb-row-column {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  padding: 0 !important;
  flex-basis: auto !important;
}

.rubik-about .sppb-column,
.rubik-about .sppb-addon,
.rubik-about .sppb-addon-wrapper {
  margin: 0 !important;
}

.rubik-about h1,
.rubik-about h2,
.rubik-about .sppb-addon-title {
  color: var(--ra-navy) !important;
  font-family: inherit !important;
  font-weight: 750 !important;
  text-transform: none !important;
  letter-spacing: -.035em;
}

.rubik-about h1 {
  margin: 0 0 22px !important;
  font-size: clamp(36px, 4vw, 54px) !important;
  line-height: 1.1 !important;
}

.rubik-about h2 {
  margin: 0 0 18px !important;
  font-size: clamp(25px, 2.5vw, 34px) !important;
  line-height: 1.22 !important;
}

.rubik-about p {
  margin: 0 0 16px;
  color: var(--ra-muted);
}

.rubik-about p:last-child {
  margin-bottom: 0;
}

.rubik-about strong {
  color: var(--ra-navy);
  font-weight: 650;
}

.rubik-about a {
  color: var(--ra-blue);
  overflow-wrap: anywhere;
  text-decoration: none;
}

.rubik-about a:hover {
  color: var(--ra-blue-hover);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Nyitóblokk */

.rubik-about.ra-hero {
  padding: 52px 0 !important;
  background: var(--ra-ice);
}

.rubik-about.ra-hero > .sppb-row-container > .sppb-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  align-items: center;
  gap: 48px;
}

.rubik-about .ra-hero-copy {
  padding: 16px 0 !important;
}

.rubik-about .ra-eyebrow {
  margin-bottom: 16px !important;
}

.rubik-about .ra-eyebrow p {
  color: var(--ra-blue);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .11em;
}

.rubik-about .ra-lead p {
  max-width: 570px;
  font-size: 18px;
  line-height: 1.65;
}

.rubik-about .ra-image img {
  display: block;
  width: 100% !important;
  height: auto !important;
  max-width: 480px;
  max-height: 380px;
  margin: 0 auto;
  object-fit: contain;
  border-radius: 14px;
}

/* Bemutatkozás */

.rubik-about.ra-story {
  padding: 54px 0 28px !important;
  background: #fff;
}

.rubik-about .ra-story-copy {
  max-width: 960px;
}

/* Termékkártyák */

.rubik-about.ra-products {
  padding: 0 0 56px !important;
  background: #fff;
}

.rubik-about.ra-products > .sppb-row-container > .sppb-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 22px;
}

.rubik-about .ra-card {
  height: 100%;
  padding: 28px !important;
  background: #f8fbff;
  border: 1px solid var(--ra-border);
  border-top: 3px solid var(--ra-blue);
  border-radius: 12px;
}

.rubik-about .ra-card h2 {
  margin-bottom: 13px !important;
  font-size: 21px !important;
  line-height: 1.3 !important;
}

.rubik-about .ra-card p {
  font-size: 15px;
  line-height: 1.7;
}

/* Ismeretterjesztés és kockasuli */

.rubik-about.ra-experiences {
  padding: 48px 0 !important;
  background: #fff;
  border-top: 1px solid #e8f0fa;
}

.rubik-about.ra-experiences > .sppb-row-container > .sppb-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 44px;
}

.rubik-about .ra-experience {
  padding: 8px 0 !important;
}

.rubik-about .ra-school {
  padding: 28px !important;
  background: #f5faff;
  border: 1px solid var(--ra-border);
  border-radius: 12px;
}

.rubik-about .ra-school .sppb-addon-button-group,
.rubik-about .ra-school .sppb-addon-button {
  margin-top: 22px !important;
}

.rubik-about .ra-school a.sppb-btn {
  margin-top: 22px !important;
}

/* Céges promóciós blokk */

.rubik-about.ra-promo {
  padding: 42px 0 !important;
  background: #e4f3ff;
}

.rubik-about.ra-promo > .sppb-row-container > .sppb-row {
  display: grid !important;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  align-items: center;
  gap: 36px;
}

.rubik-about .ra-promo-copy h2 {
  font-size: clamp(25px, 2.4vw, 32px) !important;
}

.rubik-about .ra-promo-action {
  text-align: right;
}

/* Kék-fehér gombok – a link és a belső felirat is olvasható */

body .rubik-about a.sppb-btn,
body .rubik-about a.sppb-btn:visited {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 44px;
  padding: 12px 22px !important;

  background: #0065d6 !important;
  background-image: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;

  border: 1px solid #0065d6 !important;
  border-radius: 6px !important;
  box-shadow: none !important;

  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-align: center;
  text-decoration: none !important;
  white-space: normal;
}

body .rubik-about a.sppb-btn * {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}

body .rubik-about a.sppb-btn:hover {
  background: #004da7 !important;
  border-color: #004da7 !important;
  color: #fff !important;
  text-decoration: none !important;
}

body .rubik-about a:focus-visible {
  outline: 3px solid #0b1769 !important;
  outline-offset: 4px;
}

/* Nagy képernyő */

@media (min-width: 1600px) {
  .rubik-about > .sppb-row-container {
    max-width: 1360px;
  }
}

/* Tablet */

@media (max-width: 991px) {
  .rubik-about.ra-hero > .sppb-row-container > .sppb-row {
    gap: 28px;
  }

  .rubik-about .ra-card {
    padding: 22px !important;
  }

  .rubik-about.ra-products > .sppb-row-container > .sppb-row {
    gap: 16px;
  }

  .rubik-about.ra-experiences > .sppb-row-container > .sppb-row {
    gap: 26px;
  }
}

/* Mobil */

@media (max-width: 767px) {
  .rubik-about > .sppb-row-container {
    padding: 0 18px;
  }

  .rubik-about.ra-hero > .sppb-row-container > .sppb-row,
  .rubik-about.ra-products > .sppb-row-container > .sppb-row,
  .rubik-about.ra-experiences > .sppb-row-container > .sppb-row,
  .rubik-about.ra-promo > .sppb-row-container > .sppb-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  .rubik-about.ra-hero {
    padding: 32px 0 !important;
  }

  .rubik-about .ra-hero-copy {
    padding: 0 !important;
  }

  .rubik-about .ra-lead p {
    font-size: 17px;
  }

  .rubik-about .ra-image img {
    max-width: 400px;
    max-height: 300px;
  }

  .rubik-about.ra-story {
    padding: 34px 0 24px !important;
  }

  .rubik-about.ra-products {
    padding-bottom: 34px !important;
  }

  .rubik-about.ra-experiences,
  .rubik-about.ra-promo {
    padding: 34px 0 !important;
  }

  .rubik-about .ra-card,
  .rubik-about .ra-school {
    padding: 24px !important;
  }

  .rubik-about .ra-promo-action {
    text-align: left;
  }
}

@media (max-width: 479px) {
  .rubik-about h1 {
    font-size: 36px !important;
  }

  .rubik-about h2 {
    font-size: 26px !important;
  }

  .rubik-about .ra-card h2 {
    font-size: 21px !important;
  }

  .rubik-about .ra-card,
  .rubik-about .ra-school {
    padding: 22px 18px !important;
  }

  body .rubik-about a.sppb-btn {
    width: 100%;
  }
}










/* Rubik Shop | HikaShop 6.8 termeklista
   Helix custom.css vagy Custom Code > Custom CSS.
   A kategoriak modul osztalya: rubik-listing-categories. */

#sp-component .hikashop_products_listing,
.rubik-listing-categories {
  --rs-ink: #0b1769;
  --rs-blue: #0065d6;
  --rs-hover: #004da7;
  --rs-muted: #536787;
  --rs-ice: #edf7ff;
  --rs-line: #d3e3f5;
  color: var(--rs-ink);
  font-family: Inter, Arial, sans-serif;
}

#sp-component .hikashop_products_listing :is(h1, h2, .hikashop_category_name) {
  color: var(--rs-ink);
  font-family: inherit;
  font-weight: 750;
  letter-spacing: -.025em;
}

#sp-component .hikashop_products_listing .hikashop_products .hikashop_product {
  min-width: 0;
}

#sp-component .hikashop_products_listing .hikashop_product .hikashop_container {
  height: 100%;
  margin: 0;
}

#sp-component .hikashop_products_listing .hikashop_product .hikashop_subcontainer {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  box-sizing: border-box;
  height: 100%;
  padding: 16px !important;
  background: #fff !important;
  border: 1px solid var(--rs-line) !important;
  border-radius: 8px;
  text-align: left !important;
}

#sp-component .hikashop_products_listing .hikashop_product .hikashop_subcontainer:hover {
  border-color: #95bce8 !important;
  box-shadow: 0 5px 18px rgb(11 23 105 / 7%);
}

/* A kepmezot a sajat HikaShop kepjelolesekkel egyutt meretezzuk. */
#sp-component .hikashop_products_listing .hikashop_product :is(.hikashop_product_image, .hikashop_product_image_main) {
  order: -3;
  display: grid;
  place-items: center;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3;
  margin: 0 0 6px;
}

#sp-component .hikashop_products_listing .hikashop_product .hikashop_product_image_subdiv {
  width: 100% !important;
  height: 100% !important;
}

#sp-component .hikashop_products_listing .hikashop_product :is(.hikashop_product_image, .hikashop_product_image_main) a {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
}

#sp-component .hikashop_products_listing .hikashop_product :is(img.hikashop_product_listing_image, .hikashop_product_image img, .hikashop_product_image_main img) {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 190px;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  margin: 0 auto;
}

#sp-component .hikashop_products_listing .hikashop_product_name {
  order: -2;
  display: block;
  min-height: 2.7em;
  color: var(--rs-ink);
  font-size: 16px;
  line-height: 1.35;
  font-weight: 700;
  overflow-wrap: anywhere;
}







/* Rubik Shop - HikaShop 6.8 termekadatlap.
   A Helix Custom CSS mezo vegebe, a termeklista CSS melle. */

#sp-component .hikashop_product_page {
  --rp-ink: #0b1769;
  --rp-blue: #0065d6;
  --rp-hover: #004da7;
  --rp-muted: #536787;
  --rp-ice: #edf7ff;
  --rp-line: #d3e3f5;
  color: var(--rp-ink);
  font-family: Inter, Arial, sans-serif;
}

#sp-component .hikashop_product_page :is(h1, #hikashop_product_name_main) {
  color: var(--rp-ink);
  font-family: inherit;
  font-size: clamp(25px, 3vw, 36px);
  font-weight: 750;
  line-height: 1.16;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}

#sp-component .hikashop_product_page #hikashop_product_top_part {
  margin-bottom: 18px;
}

/* Csak a galeria es a vasarlasi resz kozos szulojet rendezzuk racsba. */
#sp-component .hikashop_product_page :is(div, form):has(> #hikashop_product_left_part):has(> #hikashop_product_right_part) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  align-items: start;
  gap: 24px;
}

#sp-component .hikashop_product_page :is(div, form):has(> #hikashop_product_left_part):has(> #hikashop_product_right_part) > :not(#hikashop_product_left_part, #hikashop_product_right_part) {
  grid-column: 1 / -1;
}

#sp-component .hikashop_product_page :is(#hikashop_product_left_part, #hikashop_product_right_part) {
  box-sizing: border-box;
  min-width: 0;
  width: 100% !important;
  max-width: none;
  margin: 0 !important;
  float: none !important;
}

#sp-component .hikashop_product_page #hikashop_product_right_part {
  padding: clamp(16px, 2.4vw, 28px) !important;
  border: 1px solid var(--rp-line);
  border-radius: 8px;
  background: #f8fbff;
}

#sp-component .hikashop_product_page :is(#hikashop_product_image_main, .hikashop_product_main_image) {
  box-sizing: border-box;
  max-width: 100%;
  border-radius: 8px;
}

#sp-component .hikashop_product_page #hikashop_product_image_main {
  padding: 14px;
  border: 1px solid var(--rp-line);
  background: #fff;
}

#sp-component .hikashop_product_page #hikashop_product_left_part img {
  max-width: 100%;
  object-fit: contain;
}

#sp-component .hikashop_product_page img#hikashop_main_image {
  height: auto;
  max-height: 420px;
}

#sp-component .hikashop_product_page :is(#hikashop_small_image_div, .hikashop_small_image_div) {
  margin-top: 10px;
}

#sp-component .hikashop_product_page img.hikashop_small_image {
  box-sizing: border-box;
  width: 62px;
  height: 62px;
  margin: 4px;
  padding: 4px;
  border: 1px solid var(--rp-line);
  border-radius: 6px;
  background: #fff;
}

#sp-component .hikashop_product_page img.hikashop_small_image:hover {
  border-color: var(--rp-blue);
}








/* Rubik Shop | HikaShop checkout | Betöltés a meglévő Rubik CSS után. */

#sp-main-body:has(#hikashop_checkout_form) {
  background: #f5faff;
  padding-block: clamp(24px, 4vw, 56px);
}

#sp-left:has(+ #sp-component #hikashop_checkout_form)
  :where(.kategoria-lista):has(.sl_hikashopaccordionkategoria-lista):not(:has(.sl_hikashopaccordionkategoria-lista li)) {
  display: none;
}

#sp-left:has(+ #sp-component #hikashop_checkout_form):has(> .sp-column > .kategoria-lista:only-child):has(.sl_hikashopaccordionkategoria-lista):not(:has(.sl_hikashopaccordionkategoria-lista li)) {
  display: none;
}

#sp-left:has(> .sp-column > .kategoria-lista:only-child):has(.sl_hikashopaccordionkategoria-lista):not(:has(.sl_hikashopaccordionkategoria-lista li))
  + #sp-component:has(#hikashop_checkout_form) {
  width: 100%;
  max-width: 1040px;
  margin-inline: auto;
}

#hikashop_checkout {
  --rc-navy: #0b1769;
  --rc-blue: #0065d6;
  --rc-hover: #004da7;
  --rc-ice: #edf7ff;
  --rc-line: #dce8f7;
  --rc-text: #233b5b;
  --rc-muted: #536787;
  --rc-pad: clamp(16px, 3vw, 30px);
  color: var(--rc-text);
  font-family: Inter, Arial, "Segoe UI", sans-serif;
  font-size: 15px;
  line-height: 1.55;
}

#hikashop_checkout :is(.hikashop_checkout_address, .hikashop_checkout_login,
  .hikashop_checkout_shipping, .hikashop_checkout_payment,
  .hikashop_checkout_coupon, .hikashop_checkout_cart, .hikashop_checkout_status) {
  margin-block: 0 18px;
  padding: var(--rc-pad);
  border: 1px solid var(--rc-line);
  border-radius: 14px;
  background: #fff;
}

#hikashop_checkout :is(.hikashop_checkout_address, .hikashop_checkout_shipping,
  .hikashop_checkout_payment, .hikashop_checkout_login) legend {
  float: none;
  width: auto;
  max-width: 100%;
  padding: 0;
  margin: 0 0 18px;
  border: 0;
  color: var(--rc-navy);
  font: 750 clamp(20px, 2.5vw, 26px)/1.25 Inter, Arial, sans-serif;
}

#hikashop_checkout a {
  color: var(--rc-hover);
}

#hikashop_checkout :is(.hikashop_checkout_address, .hikashop_checkout_login, .hikashop_checkout_fields)
  :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], select, textarea),
#hikashop_checkout .hikashop_checkout_coupon_field {
  min-height: 44px;
  max-width: 100%;
  padding: 9px 12px;
  border: 1px solid #b8cbe4;
  border-radius: 8px;
  background: #fff;
  color: var(--rc-text);
  font: inherit;
}

#hikashop_checkout .hikashop_address_field_input
  :is(input[type="text"], input[type="tel"], select, textarea) {
  width: 100%;
}

#hikashop_checkout .hikashop_checkout_address .hkform-group {
  margin-bottom: 12px;
}

#hikashop_checkout .hikashop_checkout_address .hkform-group > label {
  color: var(--rc-navy);
  font-weight: 600;
}

#hikashop_checkout .hikashop_address_required_info_line {
  color: var(--rc-muted);
  font-size: .9em;
}


/* Rubik Shop – pénztár javítása. A pénztár CSS után töltsd be. */
#hikashop_checkout_form .hikashop_checkout_shipping_images {
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 0 0 8px !important;
  vertical-align: middle !important;
}

#hikashop_checkout_form img[src*="foxpost_logo"] {
  display: inline-block !important;
  width: 80px !important;
  height: 80px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 80px !important;
  max-height: 80px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
}

#hikashop_checkout_form .hikashop_checkout_shipping_custom {
  margin-top: 10px;
}

#hikashop_checkout_form .hika-foxpost-picker {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

#hikashop_checkout_form .hika-foxpost-picker [data-foxpost-summary] {
  flex: 0 1 auto;
  min-width: 0;
  margin: 0 !important;
  overflow-wrap: anywhere;
}

#hikashop_checkout_form .hika-foxpost-picker + .hikashop_checkout_shipping_submit {
  margin: 8px 0 0;
}

#hikashop_checkout_form .hikashop_checkout_coupon .input-group {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
}

#hikashop_checkout_form .hikashop_checkout_coupon .input-group > input {
  min-width: 0;
  border-radius: 6px !important;
}

#hikashop_checkout_form button.hikashop_checkout_address_ok_button,
#hikashop_checkout_form button.hikabtn_checkout_shipping_submit,
#hikashop_checkout_form button.hikabtn_checkout_coupon_add,
#hikashop_checkout_form button.hikabtn_checkout_next,
#hikashop_checkout_form button[data-foxpost-open] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 40px;
  max-width: 100%;
  padding: 8px 14px !important;
  border: 1px solid #0065d6 !important;
  border-radius: 6px !important;
  background: #0065d6 !important;
  color: #fff !important;
  font: 600 14px/1.3 Inter, Arial, sans-serif;
  text-align: center;
  white-space: normal;
}

#hikashop_checkout_form button.hikashop_checkout_address_ok_button:hover,
#hikashop_checkout_form button.hikabtn_checkout_shipping_submit:hover,
#hikashop_checkout_form button.hikabtn_checkout_coupon_add:hover,
#hikashop_checkout_form button.hikabtn_checkout_next:hover,
#hikashop_checkout_form button[data-foxpost-open]:hover {
  border-color: #004da7 !important;
  background: #004da7 !important;
}
