.gd-sub{--g:#6125ed;--ink:#0a0a0a;--mut:#5b6573;font-family:inherit;color:var(--ink);line-height:1.5;background:#fff}
.gd-sub *{box-sizing:border-box}
.gd-sub h1,.gd-sub h2,.gd-sub h3{margin:0;color:var(--ink);font-weight:800;letter-spacing:-.03em;line-height:1.2}
.gd-sub p{margin:0}
.gd-sub a{text-decoration:none}
.gd-sub-wrap{max-width:1280px;margin:0 auto;padding:0 24px;width:100%}
.gd-sub-k{display:block;letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800;color:var(--g);margin:0 0 6px}
.gd-sub-h1{font-size:clamp(22px,2.2vw,26px);font-weight:800;letter-spacing:-.02em;line-height:1.3;max-width:none;padding:4px 0 8px;margin:0}
.gd-sub-btn{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 19px;border-radius:10px;font-size:16px;font-weight:800;border:0;line-height:48px}
.gd-sub-btn-w{background:#fff;color:var(--g)!important}
.gd-sub-btn-w:hover{background:#efe7ff;color:var(--g)!important}
.gd-sub-btn-line{background:transparent;color:#fff!important;box-shadow:inset 0 0 0 1.5px #fff}
.gd-sub-btn-line:hover{background:#fff;color:var(--g)!important}
.gd-sub-banner{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 29px;background:var(--g);border-radius:14px;padding:15px 19px;color:#fff}
.gd-sub-banner > div:first-child{display:flex;flex-wrap:wrap;align-items:center;gap:12px 17px}
.gd-sub-cta-line{color:#fff;font-size:18px;font-weight:800;letter-spacing:-.02em;margin:0;line-height:1.25}
.gd-sub-banner-btns{display:flex;flex-wrap:wrap;gap:10px}
.gd-sub-contact{margin:0;padding:0;border:0;display:flex;flex-direction:row;flex-wrap:wrap;gap:19px}
.gd-sub-phone{display:flex!important;align-items:flex-start;gap:10px;color:#fff!important;line-height:1.2}
.gd-sub-phone svg{flex:none;width:19px;height:19px;margin-top:2px}
.gd-sub-phone strong{display:block;font-size:17px;font-weight:800}
.gd-sub-phone em{display:block;font-style:normal;font-size:13px;font-weight:600;opacity:.82;margin-top:2px}
.gd-sub-phone:hover{opacity:.85}
.gd-sub-sec{padding:28px 0 8px}
.gd-sub-wrap > section:last-child{padding-bottom:48px}
.gd-sub-sec-products{padding:12px 0 0}
.gd-sub-sec-more{padding:20px 0 8px}
.gd-sub-sec h2{font-size:clamp(22px,2.6vw,32px);margin:0 0 6px}
.gd-sub-lead{color:var(--mut);margin:0 0 20px;font-size:15px}
.gd-price-notes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 18px;padding:0;list-style:none}
.gd-price-notes li{display:flex;gap:12px;align-items:flex-start;background:#f7f5ff;border:1px solid #ece8f8;border-radius:10px;padding:12px 14px;color:var(--ink);font-size:14px;line-height:1.45;font-weight:600}
.gd-price-ico{flex:none;width:36px;height:36px;border-radius:8px;background:var(--g);color:#fff;display:flex;align-items:center;justify-content:center}
.gd-price-ico svg{width:18px;height:18px;display:block}
.gd-products-slot{margin:0 0 8px}
.gd-products-slot .slider-wrapper,
.gd-products-slot .flickity-viewport{height:auto!important;overflow:visible!important}
.gd-products-slot .flickity-slider,
.gd-products-slot .slider .flickity-slider{transform:none!important;position:static!important;display:flex!important;flex-wrap:wrap!important;width:auto!important}
.gd-products-slot .flickity-button,
.gd-products-slot .flickity-page-dots,
.gd-products-slot .flickity-prev-next-button{display:none!important}
.gd-products-slot .row,
.gd-products-slot .ux-products{display:flex!important;flex-wrap:wrap!important;margin-left:-8px!important;margin-right:-8px!important;max-width:none!important;width:calc(100% + 16px)!important}
.gd-products-slot .row > .col{max-width:20%!important;flex:0 0 20%!important;width:20%!important;padding:0 8px!important;left:auto!important;position:relative!important}
.gd-products-slot .product-small.box{max-width:none!important;width:100%!important;flex:none!important;margin:0 0 16px!important;position:relative!important;overflow:visible!important;background:transparent!important;box-shadow:none!important;border:0!important;container-type:inline-size}
.gd-products-slot .col-inner{width:100%!important;max-width:none!important}
.gd-products-slot .box-image,
.gd-products-slot .image-fade_in_back,
.gd-products-slot .box-image a{width:100%!important;max-width:none!important;display:block!important;height:auto!important}
.gd-products-slot .box-image{position:relative!important;overflow:hidden!important;border-radius:10px!important;background:#f3f4f6;aspect-ratio:1/1}
.gd-products-slot .box-image img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;aspect-ratio:1/1;display:block!important;border-radius:10px;transition:transform .4s ease}
.gd-products-slot .product-small:hover .box-image img{transform:scale(1.06)}
.gd-products-slot .box-text{position:static!important;width:100%!important;max-width:none!important;text-align:left!important;padding:10px 2px 0!important;background:transparent!important}
.gd-products-slot .title-wrapper{margin:0!important;width:100%!important}
.gd-products-slot .product-title{width:100%!important;margin:0!important;white-space:normal!important}
.gd-products-slot .product-title a,
.gd-products-slot .name a,
.gd-products-slot .woocommerce-loop-product__title a{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;white-space:normal!important;word-break:break-word!important;min-height:38px;color:var(--ink)!important;font-size:14px!important;font-weight:700!important;line-height:1.35!important;text-align:left!important}
.gd-products-slot .price-wrapper{position:absolute!important;left:12px!important;right:auto!important;bottom:auto!important;top:calc(100cqi - 12px)!important;transform:translateY(-100%);z-index:8;margin:0!important;padding:7px 11px!important;background:var(--g)!important;border-radius:8px!important;width:auto!important;line-height:1!important;pointer-events:none;box-shadow:0 6px 16px rgba(10,10,10,.18)}
.gd-products-slot .price,
.gd-products-slot .price *,
.gd-products-slot .price-wrapper,
.gd-products-slot .price-wrapper *{color:#fff!important;font-size:13px!important;font-weight:800!important;background:transparent}
.gd-products-slot .price-wrapper{background:var(--g)!important}
.gd-products-slot .woocommerce-price-suffix,
.gd-products-slot .star-rating,
.gd-products-slot .image-tools,
.gd-products-slot .quick-view,
.gd-products-slot .add_to_cart_button,
.gd-products-slot .ajax_add_to_cart,
.gd-products-slot .wishlist-icon,
.gd-products-slot .badge-container,
.gd-products-slot .is-divider,
.gd-products-slot .category{display:none!important}
.gd-cat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:0 0 8px}
.gd-cat-tile{display:flex;flex-direction:column;align-items:stretch;color:var(--ink)!important;text-decoration:none;width:100%}
.gd-cat-pic{display:block;position:relative;aspect-ratio:1/1;width:100%;overflow:hidden;background:#f3f4f6;border-radius:10px;line-height:0}
.gd-cat-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.gd-cat-tile:hover .gd-cat-pic img{transform:scale(1.06)}
.gd-cat-n{display:block;padding:10px 2px 0;font-size:14px;font-weight:700;line-height:1.35;color:var(--ink)}
.gd-cat-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#efe7ff;color:var(--g);font-size:32px;font-weight:800}
.gd-more{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px;padding:0 0 24px}
.gd-more p{display:contents!important}
.gd-more br{display:none!important}
.gd-more a{display:flex!important;flex-direction:column;align-items:stretch;color:var(--ink)!important;width:100%}
.gd-more-pic{display:block;position:relative;aspect-ratio:1/1;width:100%;overflow:hidden;background-color:#eee;border-radius:10px;line-height:0}
.gd-more-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.gd-more a:hover .gd-more-pic img{transform:scale(1.08)}
.gd-more span.gd-more-n{display:block;padding:10px 2px 0;font-size:16px;font-weight:700;text-align:left}
.gd-sub-desc{padding:28px 0 8px}
.gd-sub-desc h2{font-size:clamp(22px,2.6vw,32px);margin:0 0 14px}
.gd-sub-desc-body{color:var(--mut);font-size:17px;line-height:1.65;max-width:none;width:100%}
.gd-sub-desc-body .row,
.gd-sub-desc-body .container,
.gd-sub-desc-body .col{max-width:none!important;width:100%!important}
.gd-sub-desc-body p{margin:0 0 14px}
.gd-sub-desc-body h2,.gd-sub-desc-body h3{color:var(--ink);margin:22px 0 8px}
.gd-how{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:0;align-items:start}
.gd-why-intro{background:var(--g);border:0;border-radius:12px;padding:28px 28px 26px;margin:0 0 22px;color:#fff}
.gd-why-intro .gd-sub-k{color:#fff;opacity:.82;margin-bottom:8px}
.gd-why-intro h2{color:#fff!important;margin:0 0 16px}
.gd-why-intro p{color:#fff;font-size:16px;line-height:1.65;margin:0 0 12px;opacity:.96}
.gd-why-intro p:last-child{margin:0}
.gd-why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.gd-why-grid article{background:#fff;border:1px solid #ece8f8;border-radius:12px;padding:18px 16px}
.gd-why-ico{width:44px;height:44px;border-radius:10px;background:var(--g);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 0 12px}
.gd-why-ico svg{width:22px;height:22px;display:block}
.gd-why-ico path,.gd-why-ico circle,.gd-why-ico rect{stroke:#fff}
.gd-why-grid h3{font-size:16px;margin:0 0 8px;line-height:1.3;letter-spacing:-.02em}
.gd-why-grid p{color:var(--mut);font-size:14px;line-height:1.5}
.gd-blog-slot{margin:0 0 40px}
.gd-blog-slot .slider-wrapper,
.gd-blog-slot .flickity-viewport{height:auto!important;overflow:visible!important}
.gd-blog-slot .flickity-slider,
.gd-blog-slot .slider .flickity-slider{transform:none!important;position:static!important;display:flex!important;flex-wrap:wrap!important;width:auto!important}
.gd-blog-slot .flickity-button,
.gd-blog-slot .flickity-page-dots,
.gd-blog-slot .flickity-prev-next-button{display:none!important}
.gd-blog-slot .row{display:flex!important;flex-wrap:wrap!important;margin-left:-8px!important;margin-right:-8px!important;max-width:none!important;width:calc(100% + 16px)!important}
.gd-blog-slot .row > .col{max-width:25%!important;flex:0 0 25%!important;width:25%!important;padding:0 8px!important;left:auto!important;position:relative!important}
.gd-blog-slot .box,
.gd-blog-slot .col-inner{width:100%!important;max-width:none!important}
.gd-blog-slot .box-image{border-radius:10px;overflow:hidden;aspect-ratio:16/10;background:#f3f4f6}
.gd-blog-slot .box-image,
.gd-blog-slot .box-image a{display:block!important;width:100%!important}
.gd-blog-slot .box-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block}
.gd-blog-slot .box-text{text-align:left!important;padding:10px 2px 0!important;background:transparent!important}
.gd-blog-slot .post-title,
.gd-blog-slot .post-title a,
.gd-blog-slot h3,
.gd-blog-slot h3 a,
.gd-blog-slot h5 a{color:var(--ink)!important;font-size:16px!important;font-weight:700!important;line-height:1.35!important;margin:0}
.gd-blog-slot .is-divider,
.gd-blog-slot .post-comments,
.gd-blog-slot .from_the_blog_comments{display:none!important}
.gd-how p{display:contents!important;margin:0}
.gd-how-pic{height:240px;background:#ddd;border-radius:10px;overflow:hidden}
.gd-how-pic img{width:100%;height:100%;object-fit:cover;display:block}
.gd-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:4px 0 16px}
.gd-thumbs img{display:block;width:100%;height:72px;object-fit:cover;border-radius:4px;background:#eee}
.gd-how h3{font-size:22px;margin:0 0 10px}
.gd-how ul{margin:0;padding:0;list-style:none}
.gd-how li{position:relative;padding:0 0 6px 18px;color:var(--mut);font-size:14.5px}
.gd-how li:before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:50%;background:var(--g)}
@media (max-width:1024px){
  .gd-sub-wrap{padding-left:16px;padding-right:16px}
  .gd-products-slot .row > .col{max-width:33.333%!important;flex:0 0 33.333%!important;width:33.333%!important}
  .gd-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gd-blog-slot .row > .col{max-width:50%!important;flex:0 0 50%!important;width:50%!important}
  .gd-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gd-why-grid article{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:12px;row-gap:4px;align-items:start;padding:14px}
  .gd-why-ico{grid-row:1 / span 2;margin:0}
  .gd-why-grid h3{margin:0 0 2px}
  .gd-why-grid p{margin:0}
}
@media (max-width:767px){
  .gd-sub-h1{padding-top:4px;padding-bottom:6px}
  .gd-sub-banner{padding:17px}
  .gd-sub-contact{width:100%;padding-top:10px;border-top:1px solid rgba(255,255,255,.28)}
  .gd-more{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gd-how{grid-template-columns:1fr}
  .gd-how-pic{height:200px}
  .gd-products-slot .row > .col,
  .gd-blog-slot .row > .col{max-width:50%!important;flex:0 0 50%!important;width:50%!important}
  .gd-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gd-price-notes{grid-template-columns:1fr}
  .gd-why-grid{grid-template-columns:1fr}
  .gd-why-intro{padding:20px 18px}
}

/* Woo kategória archívum: a gd-sub a sablon, a natív loop rejtve marad. */
body.gd-sub-cat .shop-container > .products,
body.gd-sub-cat .shop-container > hr,
body.gd-sub-cat .shop-container > .shortcode-error,
body.gd-sub-cat .shop-container > .gd-sub ~ .gd-sub,
body.gd-sub-cat .woocommerce-result-count,
body.gd-sub-cat .woocommerce-ordering,
body.gd-sub-cat .woocommerce-pagination {
  display: none !important;
}
body.gd-sub-cat .page-title h1,
body.gd-sub-cat .page-title .entry-title {
  display: none !important;
}
body.gd-sub-cat .category-page-row,
body.gd-sub-cat .shop-container {
  max-width: none;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
body.gd-sub-cat .category-page-row,
body.gd-sub-cat .row.category-page-row {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
body.gd-sub-cat .shop-container,
body.gd-sub-cat .shop-container > .row,
body.gd-sub-cat .shop-container .col,
body.gd-sub-cat .shop-container .col-inner {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
body.gd-sub-cat .page-header-wrapper,
body.gd-sub-cat .page-title {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Morzsamenü — ugyanaz, mint a termékadatlapon, a tartalmi oszlopban. */
body.gd-sub-cat .page-header-wrapper,
body.gd-sub-cat .page-title,
body.gd-sub-cat .page-title-inner,
body.gd-sub-cat .page-title-bg,
body.gd-sub-cat .title-bg,
body.gd-sub-cat .title-overlay {
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
}
body.gd-sub-cat .page-title-bg,
body.gd-sub-cat .title-bg,
body.gd-sub-cat .title-overlay {
  display: none !important;
}
body.gd-sub-cat .page-header-wrapper,
body.gd-sub-cat .page-title,
body.gd-sub-cat .page-title-inner {
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
}
body.gd-sub-cat .page-title-inner,
body.gd-sub-cat .page-title-inner.container,
body.gd-sub-cat .page-title-inner.flex-row.medium-flex-wrap.container {
  display: flex !important;
  flex-direction: row !important;
  justify-content: flex-start !important;
  align-items: center !important;
  box-sizing: border-box;
  width: 100% !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 8px 24px 0 !important;
}
body.gd-sub-cat .title-breadcrumbs,
body.gd-sub-cat .title-breadcrumbs.pt-half,
body.gd-sub-cat .title-breadcrumbs.pb-half,
body.gd-sub-cat .page-title .is-large,
body.gd-sub-cat .page-title .flex-col {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}
body.gd-sub-cat .woocommerce-breadcrumb,
body.gd-sub-cat .woocommerce-breadcrumb a,
body.gd-sub-cat .woocommerce-breadcrumb .divider,
body.gd-sub-cat .page-title.dark .woocommerce-breadcrumb,
body.gd-sub-cat .page-title.dark .woocommerce-breadcrumb a,
body.gd-sub-cat .page-title.dark .woocommerce-breadcrumb .divider {
  color: #6125ed !important;
  background: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  -webkit-text-stroke: 0 !important;
  text-transform: none !important;
  letter-spacing: 0;
  font-size: 13px;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.35;
}
body.gd-sub-cat .woocommerce-breadcrumb a {
  cursor: pointer !important;
  pointer-events: auto !important;
  position: relative;
  z-index: 5;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}
body.gd-sub-cat .woocommerce-breadcrumb a:hover {
  opacity: 0.75;
}

/* Egyedi ajánlatkérés sáv — termékadatlap másolata. */
.gd-sub > .gd-pd-offer-bar {
  background: #6125ed !important;
  color: #fff;
  text-align: center;
  padding: 48px 24px 52px !important;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 28px;
  box-sizing: border-box;
}
.gd-sub .gd-pd-offer-note {
  margin: 0 0 14px !important;
  color: inherit !important;
  font-size: 17px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.45 !important;
  text-transform: none !important;
  opacity: 0.92;
}
.gd-sub .gd-pd-offer-bar h2 {
  margin: 0 0 20px !important;
  color: inherit !important;
  font-size: clamp(28px, 2.6vw, 36px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}
.gd-sub .gd-pd-offer-contacts {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
  gap: 8px 14px;
  margin: 0 !important;
  text-align: center;
}
.gd-sub .gd-pd-offer-mail,
.gd-sub .gd-pd-offer-tel {
  display: inline;
  margin: 0;
  color: inherit !important;
  font-size: clamp(1.55rem, 2.5vw, 2.05rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}
.gd-sub .gd-pd-offer-mail:hover,
.gd-sub .gd-pd-offer-tel:hover {
  text-decoration: underline;
}
.gd-sub .gd-pd-offer-sep {
  display: inline;
  margin: 0;
  color: inherit;
  font-size: clamp(1.55rem, 2.5vw, 2.05rem);
  font-weight: 500;
  line-height: 1.2;
  opacity: 0.7;
}
@media (max-width: 767px) {
  body.gd-sub-cat .page-title-inner,
  body.gd-sub-cat .page-title-inner.container {
    padding: 6px 16px 0 !important;
  }
}
