/**
 * Q-pages: статья блога (qb-) и страница поиска (qs-) + общие блоки (qg-).
 * Токены и базовые компоненты из Q-components (q-components.css): --q-*, .q-btn, .q-badge, .q-card, .q-bleed.
 * Брейкпоинты как у всех плагинов: > 1024 десктоп, 641–1024 планшет, <= 640 мобильный.
 * Дизайн: design/blog-zoek/*.dc.html (борды 1a/1b/1c, 2a/2b).
 */

/* ---------------------------------------------------------------------------
   Общее
   --------------------------------------------------------------------------- */
.qg, .qg *, .qg *::before, .qg *::after { box-sizing: border-box; }
.qg {
	position: relative;
	/* Внизу мягкий переход в белый: подвал сайта начинается на белом фоне, без резкой полосы. */
	background: linear-gradient(180deg, var(--q-sand-light) 0, var(--q-sand-light) calc(100% - var(--qg-fade, 160px)), #fff 100%);
	font-family: var(--q-font-body);
	font-weight: 300;
	font-size: 16px;
	line-height: 1.7;
	color: var(--q-text-body);
	-webkit-font-smoothing: antialiased;
	text-align: left;
}
.qg p, .qg div, .qg li, .qg a, .qg button, .qg input, .qg summary, .qg figcaption { font-family: var(--q-font-body); }
/* Заголовочный шрифт у span-заголовков (карточки, строки поиска, автор) */
.qg .qs-row__title, .qg .qb-author__name, .qg .qb-h2 span, .qg .qb-panel__title span { font-family: var(--q-font-heading); }
.qg [hidden] { display: none !important; }
.qg-inner { display: flex; flex-direction: column; gap: 40px; padding-top: 28px; padding-bottom: 64px; }
.qg-h1, .qg h1.qg-h1 { margin: 0; padding: 0; font-family: var(--q-font-heading); font-weight: 400; font-size: 42px; line-height: 1.15; letter-spacing: 0; text-transform: none; color: var(--q-text-heading); text-wrap: pretty; }
.qg-lead { margin: 0; font-size: 17px; font-weight: 300; line-height: 1.7; color: var(--q-text-body); }
.qg-kicker { display: inline-flex; align-items: center; gap: 8px; font-size: 11.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; line-height: 1.4; color: var(--q-orange-text); }
.qg-kicker--light { color: var(--q-orange-light); }
.qb-product .qg-kicker, .qb-author .qg-kicker { font-size: 12px; }
.qb-panel .qg-kicker { font-size: 12.5px; letter-spacing: .06em; }
/* Avada: .post-content p { margin: 0 0 20px } сильнее одиночного класса */
.qg p.qg-lead, .qg p.qb-lead, .qg p.qb-section__intro, .qg p.qb-panel__text { margin: 0; }
.qg-link, .qg a.qg-link { display: inline-flex; align-items: center; gap: 6px; font-size: 15px; font-weight: 500; color: var(--q-orange-text) !important; text-decoration: none !important; transition: color var(--q-fast) var(--q-ease); }
.qg-link:hover, .qg a.qg-link:hover { color: var(--q-orange-deep) !important; text-decoration: underline !important; }
.qg-card { display: flex; flex-direction: column; gap: 11px; background: var(--q-white); border: 1px solid var(--q-border); border-radius: var(--q-radius-m); padding: 18px 20px; }
.qg-card--sand { background: var(--q-sand); border-color: var(--q-sand-deep); }
.qg-card--accent { border-color: var(--q-orange-light); }
.qb-side, .qb-toc--d { box-shadow: var(--q-shadow-card); }
.qg-card__title { font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--q-text-heading); }
.qg-card__text { font-size: 14px; font-weight: 300; line-height: 1.6; color: var(--q-text-body); }
.qg-card__lines { display: grid; gap: 8px; font-size: 13.5px; color: var(--q-text-body); }
.qg-card__lines > span { display: flex; gap: 8px; align-items: center; }
.qg-card__lines a { color: inherit !important; text-decoration: none !important; }
.qg-card__lines a:hover { color: var(--q-orange-deep) !important; }
.qg-card .q-btn { width: 100%; }
.qg-tip { display: flex; gap: 11px; align-items: flex-start; background: var(--q-sand); border: 1px solid var(--q-sand-deep); border-left: 4px solid var(--q-orange); border-radius: var(--q-radius-m); padding: 15px 18px; font-size: 15.5px; line-height: 1.65; color: var(--q-text-body); }
.qg-tip .q-icon { margin-top: 2px; }
.qg-tip a { color: var(--q-orange-text) !important; text-decoration: underline !important; text-underline-offset: 2px; }
.qg-tip a:hover { color: var(--q-orange-deep) !important; }
.qg mark { background: var(--q-sand); color: inherit; font-weight: 600; padding: 0 2px; margin: 0 -2px; border-radius: 3px; }

/* Миниатюра или песочная заглушка того же размера */
.q-thumb { display: block; position: relative; overflow: hidden; border-radius: 10px; background: var(--q-sand); }
.q-thumb--empty { background: repeating-linear-gradient(135deg, var(--q-sand) 0 10px, #F3E9DB 10px 20px); }
.q-thumb .q-thumb__img, .q-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* Фокус: кольцо + оранжевая рамка, никогда outline:none без замены */
.qg a:focus-visible, .qg button:focus-visible, .qg summary:focus-visible, .qg input:focus-visible { outline: none; box-shadow: 0 0 0 3px var(--q-focus-ring); border-color: var(--q-orange); }

/* ---------------------------------------------------------------------------
   Поиск
   --------------------------------------------------------------------------- */
.qs .qg-inner { gap: 28px; }
.qs-top { display: flex; flex-direction: column; gap: 14px; }
.qs-form { display: flex; gap: 10px; max-width: 520px; }
.qs-form__field { position: relative; flex: 1; display: block; margin: 0; }
.qs-form__icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); display: inline-flex; pointer-events: none; }
.qs-form__input, .qg input.qs-form__input { width: 100%; height: 48px; margin: 0; padding: 0 16px 0 44px; border: 1px solid var(--q-border) !important; border-radius: var(--q-radius-m) !important; background: var(--q-white) !important; font-size: 15px; font-weight: 400; color: var(--q-text-heading); box-shadow: none; -webkit-appearance: none; appearance: none; }
.qs-form__input::placeholder { color: var(--q-text-muted); }
.qs-form__input:focus { outline: none; border-color: var(--q-orange) !important; box-shadow: 0 0 0 3px var(--q-focus-ring) !important; }
.qs-form__input::-webkit-search-decoration, .qs-form__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.qs-form__btn { height: 48px; flex: none; }
.qs-form__btn-icon { display: none; }
.qs-sticky { display: none; }
.qs-grid { display: grid; grid-template-columns: minmax(0, 720px) 320px; gap: 48px; align-items: start; }
.qs-main { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.qs-aside { position: sticky; top: calc(var(--qg-top, 0px) + 24px); display: flex; flex-direction: column; gap: 16px; }
.qs-bar { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--q-border-warm); padding-bottom: 13px; }
.qs-total { font-size: 13.5px; color: var(--q-text-muted); white-space: nowrap; }
.qs-chips { position: relative; min-width: 0; }
.qs-chips__track { display: flex; gap: 8px; flex-wrap: wrap; }
.qs-chip, .qg a.qs-chip { display: inline-flex; gap: 7px; align-items: center; min-height: 40px; padding: 8px 15px; border-radius: 999px; background: var(--q-white); border: 1px solid var(--q-border-warm); font-size: 14px; font-weight: 400; line-height: 1.2; color: var(--q-text-body) !important; text-decoration: none !important; white-space: nowrap; transition: border-color var(--q-fast) var(--q-ease), background var(--q-fast) var(--q-ease); }
.qs-chip:hover, .qg a.qs-chip:hover { border-color: var(--q-orange); }
.qs-chip.is-active, .qg a.qs-chip.is-active { background: var(--q-sand); border-color: var(--q-orange); color: var(--q-text-heading) !important; font-weight: 600; }
.qs-chip__n { font-size: 12.5px; opacity: .75; font-weight: 400; }
.qs-chip.is-active .qs-chip__n { font-weight: inherit; }
.qs-chip.is-empty { opacity: .5; cursor: default; }
.qs-chip.is-empty:hover { border-color: var(--q-border-warm); }
.qs-list { display: flex; flex-direction: column; gap: 2px; }
.qs-row, .qg a.qs-row { display: grid; grid-template-columns: 104px 1fr; gap: 18px; align-items: center; padding: 16px; border-radius: var(--q-radius-m); border: 1px solid transparent; text-decoration: none !important; color: inherit !important; min-height: 44px; transition: background var(--q-fast) var(--q-ease), border-color var(--q-fast) var(--q-ease), box-shadow var(--q-fast) var(--q-ease); }
.qs-row:hover, .qg a.qs-row:hover, .qs-row:focus-visible { background: var(--q-white); border-color: var(--q-border); box-shadow: var(--q-shadow-card); }
.qs-row__thumb { width: 104px; height: 78px; flex: none; }
.qs-row__body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.qs-row__meta { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.qs-row__type { display: inline-flex; gap: 6px; align-items: center; font-size: 11.5px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--q-orange-text); }
.qs-row__path { font-size: 12.5px; color: var(--q-text-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
.qs-row__title { font-family: var(--q-font-heading); font-size: 21px; font-weight: 400; line-height: 1.25; color: var(--q-text-heading); text-wrap: pretty; overflow-wrap: anywhere; }
.qs-row__snippet { font-size: 15px; font-weight: 300; line-height: 1.6; color: var(--q-text-body); overflow-wrap: anywhere; }
.qs-row__price { font-size: 13.5px; font-weight: 600; color: var(--q-text-price); }
.qs-more { display: flex; flex-direction: column; gap: 12px; align-items: center; padding-top: 6px; }
.qs-more__count { font-size: 13.5px; color: var(--q-text-muted); }
.qs-skel { display: grid; grid-template-columns: 104px 1fr 1fr; gap: 18px; padding: 16px; }
.qs-skel span { display: block; height: 14px; border-radius: 7px; background: var(--q-sand); }
.qs-skel span:first-child { height: 78px; border-radius: 10px; }
.qs-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.qs-tag, .qg a.qs-tag { display: inline-flex; align-items: center; min-height: 36px; padding: 6px 13px; border-radius: 999px; background: var(--q-sand-light); border: 1px solid var(--q-border-warm); font-size: 13.5px; color: var(--q-orange-text) !important; text-decoration: none !important; transition: border-color var(--q-fast) var(--q-ease), background var(--q-fast) var(--q-ease); }
.qs-tag:hover, .qg a.qs-tag:hover { border-color: var(--q-orange); background: var(--q-sand); }
.qg .qs-tags--white .qs-tag { background: var(--q-white); padding: 8px 15px; font-size: 14px; min-height: 40px; }
.qs-grid--empty .qs-main { gap: 16px; }
.qs-popular { display: flex; flex-direction: column; gap: 10px; padding-top: 6px; }

/* ---------------------------------------------------------------------------
   Статья
   --------------------------------------------------------------------------- */
.qb-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; background: var(--q-sand); z-index: 100001; pointer-events: none; display: none; }
.qb-progress span { display: block; height: 100%; width: 0; background: var(--q-orange); transition: width 80ms linear; }
.qb-only-m { display: none !important; }
.qb-head { display: flex; flex-direction: column; gap: 18px; max-width: 820px; }
.qb-head .q-badges a { text-decoration: none !important; }
.qg a.q-badge--wood { color: #fff !important; }
.qg a.q-badge--sand { color: var(--q-bark) !important; }
.qg a.q-badge:hover { filter: brightness(.96); }
.qb-title, .qg h1.qb-title { margin: 0; padding: 0; font-family: var(--q-font-heading); font-weight: 400; font-size: 52px; line-height: 1.12; letter-spacing: 0; text-transform: none; color: var(--q-text-heading); text-wrap: pretty; }
.qb-lead { margin: 0; font-size: 21px; font-weight: 300; line-height: 1.6; color: var(--q-text-heading); }
.qb-meta { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; border-top: 1px solid var(--q-border-warm); border-bottom: 1px solid var(--q-border-warm); padding: 14px 0; }
.qb-meta__avatar { width: 40px; height: 40px; border-radius: 999px; object-fit: cover; flex: none; background: var(--q-sand); }
.qb-initial { display: inline-flex; align-items: center; justify-content: center; font-weight: 600; color: var(--q-orange-text); background: var(--q-sand); }
.qb-meta__avatar.qb-initial { font-size: 16px; }
.qb-author__img.qb-initial { font-family: var(--q-font-heading); font-size: 38px; }
.qb-meta__who { display: flex; flex-direction: column; gap: 1px; }
.qb-meta__name { font-size: 14.5px; font-weight: 600; color: var(--q-text-heading); line-height: 1.7; }
.qb-meta__sub { font-size: 13px; color: var(--q-text-muted); line-height: 1.7; }
.qb-meta__sep { width: 1px; height: 32px; background: var(--q-border-warm); }
.qb-meta__item { display: inline-flex; gap: 7px; align-items: center; font-size: 13.5px; color: var(--q-text-body); }
.qb-share { display: inline-flex; gap: 6px; margin-left: auto; }
.qb-share__btn, .qg a.qb-share__btn, .qg button.qb-share__btn { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; margin: 0; padding: 0 !important; border: 1px solid var(--q-border-warm) !important; border-radius: 999px !important; background: var(--q-white) !important; color: var(--q-orange-text) !important; cursor: pointer; text-decoration: none !important; transition: background var(--q-fast) var(--q-ease); }
.qb-share__btn:hover { background: var(--q-sand) !important; }
.qb-share__btn.is-done { background: var(--q-green) !important; color: #fff !important; border-color: var(--q-green) !important; }
.qb-grid { display: grid; grid-template-columns: minmax(0, 720px) 320px; gap: 56px; align-items: start; }
.qb-main { display: flex; flex-direction: column; gap: 34px; min-width: 0; }
.qb-aside { position: sticky; top: calc(var(--qg-top, 0px) + 24px); display: flex; flex-direction: column; gap: 16px; }
.qb-cover { margin: 0; }
.qb-cover img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--q-radius-m); }

/* Оглавление */
.qb-toc--m { display: none; }
.qb-toc__list { display: flex; flex-direction: column; gap: 2px; }
.qb-toc__link, .qg a.qb-toc__link { display: block; padding: 7px 0 7px 12px; border-left: 2px solid var(--q-border-warm); font-size: 14.5px; font-weight: 400; line-height: 1.45; color: var(--q-text-body) !important; text-decoration: none !important; transition: color var(--q-fast) var(--q-ease), border-color var(--q-fast) var(--q-ease); }
.qb-toc__link:hover, .qg a.qb-toc__link:hover { color: var(--q-orange-deep) !important; }
.qb-toc__link.is-active, .qg a.qb-toc__link.is-active { color: var(--q-text-heading) !important; font-weight: 600; border-left-color: var(--q-orange); }
.qb-toc__summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 44px; cursor: pointer; list-style: none; }
.qb-toc__summary::-webkit-details-marker { display: none; }
.qb-toc__head { display: flex; flex-direction: column; gap: 1px; }
.qb-toc--m { background: var(--q-white); border: 1px solid var(--q-border); border-radius: var(--q-radius-m); box-shadow: var(--q-shadow-card); padding: 18px 20px; }
.qb-toc__title { font-size: 14px; font-weight: 600; color: var(--q-text-heading); }
.qb-toc__count { font-size: 12px; color: var(--q-text-muted); }
.qb-toc__summary .q-icon { transition: transform var(--q-med) var(--q-ease); }
.qb-toc[open] .qb-toc__summary .q-icon { transform: rotate(180deg); }

/* Контент записи (Fusion Builder внутри): лид-размер 18/1.75, H2 34 */
.qb-content { display: flex; flex-direction: column; gap: 16px; font-size: 18px; font-weight: 300; line-height: 1.75; color: var(--q-text-body); }
.qb-content > * { margin: 0; }
.qb-content p { margin: 0 0 16px; font-size: inherit; line-height: inherit; }
.qb-content p:last-child { margin-bottom: 0; }
.qb-content h2, .qb-content h2.fusion-title-heading, .qb-content .fusion-title h2 { margin: 24px 0 14px !important; padding: 0; font-family: var(--q-font-heading) !important; font-weight: 400 !important; font-size: 34px !important; line-height: 1.2 !important; letter-spacing: 0; text-transform: none; color: var(--q-text-heading) !important; scroll-margin-top: calc(var(--qg-top, 0px) + 24px); }
.qb-content h2.qb-sec { margin-top: 18px !important; }
.qb-content > .fusion-fullwidth:first-of-type h2.qb-sec:first-child { margin-top: 0 !important; }
.qb-content .fusion-column-wrapper > h2.qb-sec:only-child { margin-bottom: -2px !important; }
.qb-content > .qb-product { margin: 0; }
.qb-content h3, .qb-content h3.fusion-title-heading { margin: 18px 0 10px !important; font-family: var(--q-font-heading) !important; font-weight: 400 !important; font-size: 24px !important; line-height: 1.25 !important; color: var(--q-text-heading) !important; }
.qb-content h4 { margin: 14px 0 8px; font-family: var(--q-font-heading) !important; font-weight: 400 !important; font-size: 20px !important; line-height: 1.3 !important; color: var(--q-text-heading); }
.qb-content a:not(.q-btn) { color: var(--q-orange-text) !important; text-decoration: underline !important; text-underline-offset: 2px; }
.qb-content a:not(.q-btn):hover { color: var(--q-orange-deep) !important; }
.qb-content strong { font-weight: 600; color: var(--q-text-heading); }
.qb-content ul, .qb-content ol { margin: 0 0 16px 22px; padding: 0; }
.qb-content li { margin: 0 0 6px; }
.qb-content img { max-width: 100%; height: auto; border-radius: var(--q-radius-m); }
.qb-content figure { margin: 0; }
.qb-content figcaption, .qb-content .fusion-image-caption, .qb-content .qb-caption { font-size: 13px; line-height: 1.55; color: var(--q-text-muted); margin-top: 8px; }
.qb-content blockquote { margin: 0; padding: 0 0 0 18px; border-left: 3px solid var(--q-orange-light); font-style: normal; }
/* Обёртки Avada внутри статьи: без внешних отступов и фона, на всю ширину колонки */
.qb-content .fusion-fullwidth { padding: 0 !important; margin: 0 !important; background: transparent !important; }
.qb-content .fusion-builder-row { max-width: 100% !important; width: 100% !important; margin: 0 !important; }
.qb-content .fusion-layout-column { margin: 0 !important; width: 100% !important; }
.qb-content .fusion-column-wrapper { padding: 0 !important; margin: 0 !important; }
.qb-content .fusion-builder-row .fusion-layout-column { padding: 0 !important; }
.qb-content .fusion-text, .qb-content .fusion-title, .qb-content .fusion-image-element, .qb-content .fusion-imageframe { margin: 0 !important; }
.qb-content .fusion-imageframe { display: block; border-radius: var(--q-radius-m) !important; overflow: hidden; }
.qb-content .fusion-imageframe img { display: block; width: 100%; max-height: 540px; object-fit: cover; border-radius: var(--q-radius-m); }
.qb-content .fusion-builder-row { row-gap: 14px; }
.qb-content .fusion-title .title-sep-container, .qb-content .fusion-sep-clear { display: none !important; }

/* Совет, чек-лист, товарная карточка */
.qb-tip { display: flex; gap: 12px; align-items: flex-start; background: var(--q-sand); border: 1px solid var(--q-sand-deep); border-left: 4px solid var(--q-orange); border-radius: var(--q-radius-m); padding: 16px 18px; font-size: 15.5px; line-height: 1.65; color: var(--q-text-body); }
.qb-tip .q-icon { margin-top: 2px; }
.qb-tip strong { color: var(--q-text-heading); font-weight: 600; }
.qb-check { display: flex; flex-direction: column; gap: 11px; background: var(--q-white); border: 1px solid var(--q-border); border-radius: var(--q-radius-m); padding: 18px 20px; }
.qb-check__title { font-size: 15.5px; font-weight: 600; color: var(--q-text-heading); }
.qb-check__item { display: flex; gap: 11px; align-items: flex-start; font-size: 16px; font-weight: 300; line-height: 1.65; }
.qb-check__item .q-icon { margin-top: 4px; }
.qb-product { display: grid; grid-template-columns: 84px 1fr auto; gap: 16px; align-items: center; background: var(--q-white); border: 1px solid var(--q-border); border-radius: var(--q-radius-m); box-shadow: var(--q-shadow-card); padding: 16px; margin: 4px 0 16px; }
.qb-product__media { display: block; width: 84px; height: 84px; }
.qb-product__media .q-thumb { width: 100%; height: 100%; }
.qb-product__body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.qb-product__name, .qg a.qb-product__name { font-size: 17px; font-weight: 600; line-height: 1.7; color: var(--q-text-heading) !important; text-decoration: none !important; }
.qb-product__name:hover, .qg a.qb-product__name:hover { color: var(--q-orange-deep) !important; }
.qb-product__text { font-size: 14px; font-weight: 300; line-height: 1.55; color: var(--q-text-body); }
.qb-product__cta { display: flex; flex-direction: column; gap: 8px; align-items: flex-end; white-space: nowrap; }
.qb-product__price { font-size: 17px; font-weight: 700; color: var(--q-text-price); }

/* Секции: схема и FAQ */
.qb-section { display: flex; flex-direction: column; gap: 16px; scroll-margin-top: calc(var(--qg-top, 0px) + 24px); }
.qb-h2, .qg h2.qb-h2 { margin: 0; padding: 0; font-family: var(--q-font-heading); font-weight: 400; font-size: 34px; line-height: 1.2; letter-spacing: 0; text-transform: none; color: var(--q-text-heading); text-wrap: pretty; }
.qb-section__intro { margin: 0; font-size: 17px; font-weight: 300; line-height: 1.7; }
.qb-schema { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.qb-schema__card { display: flex; flex-direction: column; gap: 11px; background: var(--q-white); border: 1px solid var(--q-border); border-radius: var(--q-radius-m); box-shadow: var(--q-shadow-card); padding: 20px; }
.qb-schema__head { display: flex; gap: 9px; align-items: center; font-size: 16px; font-weight: 600; color: var(--q-text-heading); }
.qb-schema__disc { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 999px; background: var(--q-sand); color: var(--q-orange-deep); flex: none; }
.qb-schema__items { display: grid; gap: 8px; font-size: 14.5px; }
.qb-schema__item { display: flex; gap: 9px; align-items: flex-start; line-height: 1.55; font-weight: 300; }
.qb-schema__item .q-icon { margin-top: 3px; }
.qb-faq { display: flex; flex-direction: column; gap: 10px; }
.qb-faq__item { background: var(--q-white); border: 1px solid var(--q-border); border-radius: var(--q-radius-m); }
.qb-faq__q { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 18px; font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--q-text-heading); cursor: pointer; list-style: none; border-radius: var(--q-radius-m); }
.qb-faq__q::-webkit-details-marker { display: none; }
.qb-faq__q:hover { color: var(--q-orange-deep); }
.qb-faq__item { transition: border-color var(--q-fast) var(--q-ease); }
.qb-faq__item[open] { border-color: var(--q-orange-light); }
.qb-faq__q .q-icon { transition: transform var(--q-med) var(--q-ease); }
.qb-faq__item[open] .qb-faq__q .q-icon { transform: rotate(180deg); }
.qb-faq__a { padding: 0 18px 18px; font-size: 16px; font-weight: 300; line-height: 1.7; color: var(--q-text-body); }

/* Автор */
.qb-author { display: grid; grid-template-columns: 96px 1fr; gap: 20px; align-items: center; background: var(--q-white); border: 1px solid var(--q-border); border-radius: var(--q-radius-m); box-shadow: var(--q-shadow-card); padding: 22px 24px; }
.qb-author__img { display: block; width: 96px; height: 96px; border-radius: 999px; object-fit: cover; background: var(--q-sand); }
.qb-author__body { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.qb-author__name { font-family: var(--q-font-heading); font-size: 23px; line-height: 1.2; color: var(--q-text-heading); }
.qb-author__bio { font-size: 15.5px; font-weight: 300; line-height: 1.65; }
.qb-author__links { display: flex; gap: 18px; flex-wrap: wrap; padding-top: 4px; }

/* Правая колонка */
.qb-side__list { display: flex; flex-direction: column; gap: 12px; }
.qb-side__item, .qg a.qb-side__item { display: grid; grid-template-columns: 48px 1fr; gap: 12px; align-items: center; text-decoration: none !important; color: inherit !important; transition: opacity var(--q-fast) var(--q-ease); }
.qb-side__item:hover { opacity: .82; }
.qb-side__thumb { width: 48px; height: 48px; border-radius: 8px; }
.qb-side__text { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.qb-side__name { font-size: 14px; font-weight: 600; line-height: 1.35; color: var(--q-text-heading); }
.qb-side__price { font-size: 13px; font-weight: 600; color: var(--q-text-price); }

/* Панели: рассылка и voorraad */
.qb-panels { display: grid; grid-template-columns: 1.1fr 1fr; gap: 24px; align-items: stretch; }
.qb-panels--single { grid-template-columns: 1fr; }
.qb-panel { display: flex; flex-direction: column; gap: 14px; justify-content: center; border-radius: var(--q-radius-l); padding: 30px 34px; }
.qb-panel--dark { background: linear-gradient(135deg, var(--q-bark) 0%, var(--q-bark-deep) 100%); color: rgba(255, 255, 255, .85); }
.qb-panel--light { background: var(--q-white); border: 1px solid var(--q-orange-light); }
.qb-panel__title, .qg h2.qb-panel__title { margin: 0; padding: 0; font-family: var(--q-font-heading); font-weight: 400; font-size: 30px; line-height: 1.2; letter-spacing: 0; text-transform: none; color: var(--q-text-heading); }
.qb-panel--dark .qb-panel__title, .qg .qb-panel--dark h2.qb-panel__title { color: #fff; }
.qb-panel__text { margin: 0; max-width: 44ch; font-size: 15px; font-weight: 300; line-height: 1.65; }
.qb-panel--light .qb-panel__text { max-width: none; line-height: 1.7; }
.qb-panel__ctas { display: flex; gap: 10px; flex-wrap: wrap; padding-top: 4px; }
.qb-panel__form { padding-top: 2px; }
.qb-panel__form .fusion-form { margin: 0; }
.qb-panel__form .fusion-fullwidth, .qb-panel__form .fusion-builder-row, .qb-panel__form .fusion-layout-column, .qb-panel__form .fusion-column-wrapper { padding: 0 !important; margin: 0 !important; width: 100% !important; max-width: 100% !important; background: transparent !important; }
.qb-panel__form .fusion-column-wrapper { display: grid !important; grid-template-columns: 1fr auto; gap: 10px; align-items: stretch; }
.qb-panel__form .fusion-form-notice, .qb-panel__form .fusion-form-field:not(.fusion-form-email-field):not(.fusion-form-submit-field) { grid-column: 1 / -1; }
.qb-panel__form .fusion-form-submit-field .fusion-button, .qb-panel__form .fusion-form-submit-field button { height: 48px; padding: 0 24px !important; font-size: 16px !important; line-height: 1 !important; width: 100%; }
.qb-panel__form .fusion-form-field { margin-bottom: 0 !important; }
.qb-panel__form input::placeholder { font-size: 15px; color: var(--q-text-muted); opacity: 1; }
.qb-panel__form input[type="email"], .qb-panel__form input[type="text"] { height: 48px; border-radius: var(--q-radius-m) !important; border: 1px solid rgba(255, 255, 255, .25) !important; background: var(--q-white) !important; color: var(--q-text-heading) !important; font-family: var(--q-font-body); }
.qb-panel__form .fusion-button, .qb-panel__form button[type="submit"], .qb-panel__form input[type="submit"] { border-radius: var(--q-radius-m) !important; background: var(--q-cta-gradient) !important; border: 1px solid var(--q-orange-light) !important; color: #fff !important; font-family: var(--q-font-body); font-weight: 600; text-transform: none; }

/* Похожие статьи */
.qb-related { display: flex; flex-direction: column; gap: 16px; }
.qb-related__head { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; }
.qg .qb-related__head h2.qb-h2 { font-size: 30px !important; }

/* Липкая панель (только мобильный, живёт в <body>) */
.qb-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 100000; display: none; flex-direction: column; gap: 8px; background: var(--q-white); border-top: 1px solid var(--q-border); box-shadow: var(--q-shadow-sticky); padding: 10px 16px calc(14px + env(safe-area-inset-bottom, 0px)); font-family: var(--q-font-body); transform: translateY(110%); transition: transform var(--q-med) var(--q-ease); }
.qb-sticky.is-visible { transform: none; }
.qb-sticky__note { font-size: 12.5px; color: var(--q-text-muted); }
.qb-sticky__row { display: grid; grid-template-columns: 1fr auto; gap: 9px; align-items: center; }
.qb-sticky .q-btn { height: 56px; }
.qb-sticky__phone, .qb-sticky a.qb-sticky__phone { width: 56px; height: 56px; border-radius: var(--q-radius-m) !important; }

/* ---------------------------------------------------------------------------
   Планшет (<= 1024): одна колонка, боковые блоки в конец
   --------------------------------------------------------------------------- */
@media (max-width: 1024px) {
	.qg-inner { padding-top: 24px; padding-bottom: 56px; gap: 32px; }
	.qg-h1, .qg h1.qg-h1 { font-size: 35px; }
	/* поиск */
	.qs .qg-inner { gap: 24px; }
	.qs-grid { grid-template-columns: 1fr; gap: 24px; }
	.qs-aside { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
	.qs-aside .qg-card:nth-child(3) { display: none; }
	.qs-aside .qg-card__text { display: none; }
	.qs-form { max-width: none; }
	.qs-list { gap: 10px; }
	.qs-row, .qg a.qs-row { grid-template-columns: 96px 1fr; gap: 16px; padding: 14px; background: var(--q-white); border-color: var(--q-border); }
	.qs-row:hover, .qg a.qs-row:hover { box-shadow: var(--q-shadow-card); }
	.qs-row__thumb { width: 96px; height: 72px; }
	.qs-row__title { font-size: 19px; }
	.qs-row__snippet { font-size: 14px; line-height: 1.55; }
	.qs-row__type { font-size: 11px; }
	.qs-row__path { font-size: 12px; }
	.qs-chip, .qg a.qs-chip { font-size: 13.5px; padding: 8px 14px; }
	.qs-more .q-btn { width: 100%; }
	/* статья */
	.qb-head { gap: 16px; max-width: none; }
	.qb-title, .qg h1.qb-title { font-size: 40px; line-height: 1.15; }
	.qb-lead { font-size: 19px; }
	.qb-meta { gap: 12px; padding: 13px 0; }
	.qb-meta__avatar { width: 36px; height: 36px; }
	.qb-meta__sep { height: 28px; }
	/* Одна колонка: блоки колонки встают в поток статьи, «Direct nodig» перед автором, контакт не нужен */
	.qb-grid { display: flex; flex-direction: column; gap: 32px; align-items: stretch; }
	.qb-share, .qb-author__links, .qb-related__head .qg-link, .qb-section__intro, .qb-toc--m .qb-toc__count { display: none !important; }
	.qb-toc--m .qb-toc__title { font-size: 15px; }
	.qb-content h2.qb-sec { margin-top: 5px !important; }
	.qb-content .fusion-column-wrapper > h2.qb-sec:only-child { margin-bottom: -1px !important; }
	.qb-main, .qb-aside { display: contents; }
	.qb-side { order: 1; }
	.qb-author { order: 2; }
	.qb-contact { display: none; }
	.qb-aside { position: static; }
	.qb-toc--d { display: none; }
	.qb-toc--m { display: block; }
	.qb-toc--m .qb-toc__summary .q-icon { display: none; }
	.qb-toc--m .qb-toc__list { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 20px; padding-top: 6px; }
	.qb-toc--m .qb-toc__link, .qg .qb-toc--m a.qb-toc__link { border-left: 0; padding: 6px 0; font-size: 14px; }
	.qb-content { font-size: 17px; }
	.qb-content h2, .qb-content h2.fusion-title-heading, .qb-content .fusion-title h2, .qb-h2, .qg h2.qb-h2 { font-size: 30px !important; }
	.qb-product { grid-template-columns: 72px 1fr; grid-template-areas: "media body" "media cta"; padding: 15px; gap: 6px 14px; }
	.qb-product__media { grid-area: media; width: 72px; height: 72px; align-self: center; }
	.qb-product__body { grid-area: body; gap: 6px; }
	.qb-product__text { display: none; }
	.qb-product__cta { grid-area: cta; flex-direction: row; align-items: center; justify-content: flex-start; gap: 14px; }
	.qb-product__price { font-size: 16px; }
	.qb-product .q-btn { font-size: 14px; padding: 9px 20px !important; min-height: 40px; }
	.qb-schema { grid-template-columns: 1fr; gap: 14px; }
	.qb-schema__card { padding: 18px; }
	.qb-schema__items { grid-template-columns: 1fr 1fr; gap: 8px 18px; font-size: 14px; }
	.qb-author { grid-template-columns: 80px 1fr; gap: 18px; padding: 20px; }
	.qb-author__img { width: 80px; height: 80px; }
	.qb-author__name { font-size: 21px; }
	.qb-author__bio { font-size: 14.5px; }
	.qb-side__list { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
	.qb-panels { grid-template-columns: 1fr; gap: 16px; }
	.qb-panel { padding: 26px 28px; }
	.qb-panel__title, .qg h2.qb-panel__title { font-size: 27px; }
	.qg .qb-related__head h2.qb-h2 { font-size: 27px !important; }
	.qg .qb-panel__text { max-width: none; font-size: 14.5px; }
}

/* ---------------------------------------------------------------------------
   Мобильный (<= 640): липкое поле поиска, чипы в ряд, полоса чтения, липкая панель
   --------------------------------------------------------------------------- */
@media (max-width: 640px) {
	.qg { --qg-fade: 110px; }
	.qg-inner, .qg .q-inner { padding-left: 16px; padding-right: 16px; padding-top: 16px; padding-bottom: 48px; gap: 26px; }
	.qg-h1, .qg h1.qg-h1 { font-size: 27px; line-height: 1.2; }
	.qb-only-d { display: none !important; }
	.qb-only-m { display: inline !important; }
	/* поиск */
	.qs .qg-inner { gap: 20px; }
	.qs--list .qg-inner { padding-top: 0; }
	.qs-top .qs-form, .qs-top .q-crumbs { display: none; }
	.qs-sticky { order: -1; }
	.qs--list .qg-inner > .qs-top { margin-top: -4px; }
	.qs-sticky { position: sticky; top: var(--qg-top, 0px); z-index: 2; display: flex; flex-direction: column; gap: 10px; margin: 0 -16px; padding: 12px 16px; background: var(--q-sand-light); border-bottom: 1px solid var(--q-border-warm); }
	.qs-form--m { max-width: none; gap: 9px; }
	.qs-form--m .qs-form__input { height: 46px; }
	.qs-form--m .qs-form__btn { width: 46px; height: 46px; padding: 0 !important; }
	.qs-form--m .qs-form__btn-text { display: none; }
	.qs-form--m .qs-form__btn-icon { display: inline-flex; }
	.qs-sticky .qs-chips::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; width: 32px; pointer-events: none; background: linear-gradient(90deg, rgba(247, 239, 228, 0) 0%, var(--q-sand-light) 72%); }
	.qs-sticky .qs-chips__track { flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding-right: 26px; }
	.qs-sticky .qs-chips__track::-webkit-scrollbar { display: none; }
	.qs-sticky .qs-chip { scroll-snap-align: start; flex: none; font-size: 13px; padding: 8px 13px; }
	.qs-bar { border-bottom: 0; padding-bottom: 0; margin-top: -10px; }
	.qs-bar .qs-chips { display: none; }
	.qs-main { gap: 16px; }
	.qs-list { gap: 9px; }
	.qs-row, .qg a.qs-row { grid-template-columns: 72px 1fr; gap: 12px; padding: 12px; }
	.qs-row__thumb { width: 72px; height: 72px; border-radius: 8px; }
	.qs-row__body { gap: 4px; }
	.qs-row__path { display: none; }
	.qs-row__type { font-size: 10.5px; }
	.qs-row__title { font-size: 17px; }
	.qs-row__snippet { font-size: 13px; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	.qs-row__price { font-size: 12.5px; }
	.qs-more__count { font-size: 12.5px; }
	.qs-aside { grid-template-columns: 1fr; }
	.qs-aside .qg-card { padding: 16px; }
	.qg .qs-tags--white .qs-tag { padding: 7px 13px; font-size: 13.5px; }
	/* статья */
	.qb-progress { display: block; }
	.qb-head { gap: 13px; }
	.qb-head .q-badge:not(:first-child) { display: none; }
	.qb-grid { gap: 26px; }
	.qb-title, .qg h1.qb-title { font-size: 30px; line-height: 1.2; }
	.qb-lead { font-size: 16.5px; }
	.qb-meta { gap: 11px; padding: 11px 0; }
	.qb-meta__avatar { width: 32px; height: 32px; }
	.qb-meta__name { font-size: 13px; }
	.qb-meta__sub { font-size: 11.5px; }
	.qb-cover img { aspect-ratio: 4 / 3; }
	.qb-main { gap: 26px; }
	.qb-toc--m { padding: 14px 16px; }
	.qb-toc--m .qb-toc__summary .q-icon { display: inline-block; }
	.qb-toc--m .qb-toc__list { grid-template-columns: 1fr; gap: 0; padding-top: 10px; border-top: 1px solid var(--q-border); margin-top: 12px; }
	.qb-toc--m .qb-toc__link, .qg .qb-toc--m a.qb-toc__link { padding: 9px 0; min-height: 44px; display: flex; align-items: center; }
	.qb-content { font-size: 16px; gap: 13px; }
	.qb-content h2, .qb-content h2.fusion-title-heading, .qb-content .fusion-title h2, .qb-h2, .qg h2.qb-h2 { font-size: 25px !important; line-height: 1.25 !important; }
	.qb-content h3, .qb-content h3.fusion-title-heading { font-size: 20px !important; }
	.qb-content h2.qb-sec { margin-top: 4px !important; }
	.qb-content .fusion-column-wrapper > h2.qb-sec:only-child { margin-bottom: 0 !important; }
	.qb-content .fusion-imageframe img { max-height: 75vw; }
	.qb-content .fusion-builder-row { row-gap: 13px; }
	.qb-tip { padding: 14px 15px; font-size: 14px; gap: 10px; }
	.qb-check { padding: 15px 16px; gap: 9px; }
	.qb-check__title { font-size: 14px; }
	.qb-check__item { font-size: 14.5px; line-height: 1.6; gap: 9px; }
	.qb-content > .qb-product { margin-bottom: 13px; }
	.qb-product { grid-template-columns: 56px 1fr; grid-template-areas: "media body" "media price" "btn btn"; padding: 14px; gap: 2px 12px; }
	.qb-product__media { width: 56px; height: 56px; }
	.qb-product__media .q-thumb { border-radius: 8px; }
	.qb-product__body { gap: 2px; align-self: end; }
	.qb-product__name, .qg a.qb-product__name { font-size: 14.5px; line-height: 1.3; }
	.qb-product__cta { display: contents; }
	.qb-product__price { grid-area: price; font-size: 14.5px; align-self: start; }
	.qb-product__btn { grid-area: btn; margin-top: 9px; }
	.qb-product .q-btn { width: 100%; font-size: 16px; padding: 13px 29px !important; }
	.qb-section { gap: 12px; }
	.qb-schema__card { padding: 15px; gap: 9px; }
	.qb-schema__head { font-size: 14.5px; }
	.qb-schema__disc { width: 28px; height: 28px; }
	.qb-schema__items { grid-template-columns: 1fr; gap: 7px; font-size: 13.5px; }
	.qb-faq { gap: 8px; }
	.qb-faq__q { padding: 14px 16px; font-size: 14.5px; }
	.qb-faq__a { padding: 0 16px 14px; font-size: 14px; }
	.qb-author { grid-template-columns: 56px 1fr; gap: 1px 12px; padding: 16px; }
	.qb-author__img { grid-row: 1 / span 2; }
	.qb-author .qg-kicker { align-self: end; }
	.qb-author__bio { margin-top: 9px; }
	.qb-author__img { width: 56px; height: 56px; }
	.qb-author__name { font-size: 19px; }
	.qb-author__body { display: contents; }
	.qb-author .qg-kicker { grid-column: 2; }
	.qb-author__name { grid-column: 2; align-self: start; }
	.qb-author__bio { grid-column: 1 / -1; font-size: 14px; line-height: 1.6; }
	.qb-side__list { grid-template-columns: 1fr; gap: 12px; }
	.qb-side__item, .qg a.qb-side__item { grid-template-columns: 44px 1fr; gap: 11px; min-height: 44px; }
	.qb-side__thumb { width: 44px; height: 44px; }
	.qb-panel { padding: 20px; gap: 12px; border-radius: var(--q-radius-l); }
	.qb-panel__title, .qg h2.qb-panel__title { font-size: 23px; line-height: 1.25; }
	.qb-panel--dark .qb-panel__text { display: none; }
	.qb-panel__form .fusion-column-wrapper { grid-template-columns: 1fr; gap: 12px; }
	.qb-panel__ctas .q-btn { width: 100%; }
	.qb-related { gap: 12px; }
	.qg .qb-related__head h2.qb-h2 { font-size: 23px !important; }
	.qb-sticky { display: flex; }
}

/* ---------------------------------------------------------------------------
   Сервисные страницы (Klantenservice): Garantie, Verzendbeleid, Retourbeleid, voorwaarden
   --------------------------------------------------------------------------- */
.ql-inner { padding-top: 28px; padding-bottom: 72px; display: flex; flex-direction: column; gap: 36px; }
.ql-head { display: flex; flex-direction: column; gap: 16px; max-width: 760px; }
.qg h1.ql-title { margin: 0 !important; font-family: var(--q-font-heading) !important; font-weight: 400 !important; font-size: 52px !important; line-height: 1.12 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--q-text-heading) !important; }
.qg p.ql-lead { margin: 0 !important; font-size: 20px; font-weight: 300; line-height: 1.6; color: var(--q-text-heading); }
.ql-lead a { color: var(--q-orange-text) !important; text-decoration: underline !important; text-underline-offset: 2px; }
.ql-meta { display: flex; flex-wrap: wrap; gap: 10px 22px; align-items: center; padding: 14px 0; border-top: 1px solid var(--q-border-warm); border-bottom: 1px solid var(--q-border-warm); font-size: 14px; color: var(--q-text-body); }
.ql-meta > span { display: inline-flex; gap: 8px; align-items: center; }
.qg button.ql-print { display: inline-flex; gap: 8px; align-items: center; margin: 0 0 0 auto; padding: 0; border: 0; background: none; font: inherit; font-weight: 500; color: var(--q-orange-text); cursor: pointer; box-shadow: none; }
.qg button.ql-print:hover { color: var(--q-orange-deep); text-decoration: underline; }
.ql-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.ql-facts--1 { grid-template-columns: minmax(0, 360px); }
.ql-facts--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ql-fact { gap: 6px; padding: 20px 22px; }
.ql-fact__num { font-family: var(--q-font-heading); font-size: 34px; line-height: 1.1; color: var(--q-text-heading); white-space: nowrap; }
.ql-fact__label { font-size: 14.5px; font-weight: 500; line-height: 1.45; color: var(--q-text-heading); }
.ql-fact__sub { font-size: 13px; line-height: 1.5; color: var(--q-text-muted); }
.ql-grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 48px; align-items: start; }

/* Текст страницы (Fusion Builder внутри) */
.ql-doc { display: flex; flex-direction: column; gap: 16px; padding: 44px 52px 48px; counter-reset: qlsec; font-size: 17px; font-weight: 300; line-height: 1.75; color: var(--q-text-body); }
.ql-doc .fusion-fullwidth, .ql-doc .fusion-builder-row, .ql-doc .fusion-layout-column, .ql-doc .fusion-column-wrapper { padding: 0 !important; margin: 0 !important; width: 100% !important; max-width: 100% !important; background: transparent !important; min-height: 0 !important; }
.ql-doc .fusion-text { display: flex; flex-direction: column; gap: 16px; margin: 0 !important; }
.ql-doc .fusion-text > *, .ql-doc p { margin: 0 !important; }
.ql-doc p, .ql-doc li, .ql-doc td { font-size: inherit; line-height: inherit; }
.ql-doc h2.ql-h2 { display: flex; gap: 14px; align-items: baseline; margin: 26px 0 0 !important; padding: 0; font-family: var(--q-font-heading) !important; font-weight: 400 !important; font-size: 30px !important; line-height: 1.2 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--q-text-heading) !important; scroll-margin-top: calc(var(--qg-top, 0px) + 24px); }
.ql-doc .fusion-text > h2.ql-h2:first-child { margin-top: 0 !important; }
.ql-doc--count h2.ql-h2 { counter-increment: qlsec; }
.ql-doc--count h2.ql-h2::before { content: counter(qlsec); flex: none; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 999px; background: var(--q-sand); font-family: var(--q-font-body); font-size: 14px; font-weight: 600; color: var(--q-orange-text); transform: translateY(-4px); }
.ql-doc h3, .ql-doc h4 { margin: 10px 0 0 !important; padding: 0; font-family: var(--q-font-body) !important; font-weight: 600 !important; font-size: 18px !important; line-height: 1.4 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--q-text-heading) !important; }
.ql-doc strong, .ql-doc b { font-weight: 600; color: var(--q-text-heading); }
.ql-doc a:not(.q-btn) { color: var(--q-orange-text) !important; text-decoration: underline !important; text-underline-offset: 2px; overflow-wrap: anywhere; }
.ql-doc a:not(.q-btn):hover { color: var(--q-orange-deep) !important; }
.ql-doc ul { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 10px; }
.ql-doc ul li { position: relative; margin: 0 !important; padding-left: 22px; }
.ql-doc ul li::before { content: ''; position: absolute; left: 3px; top: .72em; width: 7px; height: 7px; border-radius: 999px; background: var(--q-orange); }
.ql-doc ol { margin: 0 !important; padding: 0 0 0 28px !important; display: grid; gap: 10px; }
.ql-doc ol li { margin: 0 !important; padding-left: 6px; }
.ql-doc ol li::marker { color: var(--q-orange-text); font-weight: 600; }
.ql-doc li > ul, .ql-doc li > ol { margin-top: 10px !important; }
.ql-doc table { width: 100%; border-collapse: collapse; margin: 0; font-size: 15.5px; line-height: 1.55; }
.ql-doc th, .ql-doc td { padding: 11px 14px !important; border: 0 !important; border-bottom: 1px solid var(--q-border-warm) !important; text-align: left; vertical-align: top; }
.ql-doc th, .ql-doc thead td { background: var(--q-sand-light) !important; font-weight: 600; color: var(--q-text-heading); }
.ql-doc .table-1, .ql-doc .table-2 { overflow-x: auto; margin: 0 !important; border: 1px solid var(--q-border-warm); border-radius: var(--q-radius-m); }
.ql-doc .table-1 table, .ql-doc .table-2 table { border: 0 !important; box-shadow: none !important; }
.ql-doc .table-1 tr:last-child td, .ql-doc .table-2 tr:last-child td { border-bottom: 0 !important; }
.ql-doc blockquote { margin: 0; padding: 16px 18px; background: var(--q-sand); border: 1px solid var(--q-sand-deep); border-left: 4px solid var(--q-orange); border-radius: var(--q-radius-m); font-style: normal; font-size: 15.5px; }
.ql-doc .qb-tip { font-size: 15.5px; }

/* Колонка */
.ql-aside { position: sticky; top: calc(var(--qg-top, 0px) + 24px); display: flex; flex-direction: column; gap: 16px; }
.ql-card { gap: 12px; padding: 20px 22px; }
.ql-card__title { font-size: 15px; font-weight: 600; line-height: 1.4; color: var(--q-text-heading); }
.ql-toc { display: flex; flex-direction: column; }
.ql-toc a, .qg .ql-toc a { display: grid; grid-template-columns: 22px 1fr; gap: 8px; padding: 8px 0 8px 12px; border-left: 2px solid var(--q-border-warm); font-size: 14.5px; font-weight: 400; line-height: 1.45; color: var(--q-text-body) !important; text-decoration: none !important; }
.ql-toc--plain a, .qg .ql-toc--plain a { grid-template-columns: 1fr; }
.ql-toc a span { font-size: 12.5px; font-weight: 600; color: var(--q-text-muted); padding-top: 1px; }
.ql-toc a:hover { color: var(--q-orange-deep) !important; }
.ql-toc a.is-active, .qg .ql-toc a.is-active { border-left-color: var(--q-orange); color: var(--q-text-heading) !important; font-weight: 600; }
.ql-toc a.is-active span { color: var(--q-orange-text); }
.ql-contact { background: var(--q-sand); border-color: var(--q-sand-deep); box-shadow: none; }
.qg p.ql-contact__text { margin: 0 !important; font-size: 14px; font-weight: 300; line-height: 1.6; }
.ql-lines { display: grid; gap: 9px; font-size: 14px; }
.ql-lines > span { display: flex; gap: 9px; align-items: center; color: var(--q-text-body); }
.ql-lines a { color: var(--q-text-heading) !important; font-weight: 500; text-decoration: none !important; }
.ql-mail { white-space: nowrap; }
/* Длинное оглавление (Algemene voorwaarden, 14 статей) прокручивается внутри карточки: колонка остаётся в окне. */
.ql-toc-card .ql-toc { max-height: max(180px, calc(100vh - var(--qg-top, 0px) - 470px)); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.ql-service { display: flex; flex-direction: column; gap: 12px; }
.ql-service__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
.ql-service__item, .qg a.ql-service__item { display: grid; grid-template-columns: 34px 1fr 16px; gap: 10px; align-items: center; padding: 12px 14px; font-size: 14.5px; font-weight: 500; line-height: 1.35; color: var(--q-text-heading) !important; text-decoration: none !important; }
.ql-service__item.is-current { border-color: var(--q-orange-light); background: var(--q-sand-light); font-weight: 600; }
.ql-service__item i { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 999px; background: var(--q-sand); font-style: normal; }
.ql-toc--m { display: none; }
.ql-toc--m summary { display: flex; justify-content: space-between; align-items: center; min-height: 24px; list-style: none; cursor: pointer; }
.ql-toc--m summary::-webkit-details-marker { display: none; }
.ql-toc--m summary::after { content: ''; width: 9px; height: 9px; border-right: 2px solid var(--q-text-muted); border-bottom: 2px solid var(--q-text-muted); transform: translateY(-3px) rotate(45deg); transition: transform var(--q-med) var(--q-ease); }
.ql-toc--m[open] summary::after { transform: translateY(2px) rotate(-135deg); }
.ql-toc--m .ql-toc { margin-top: 12px; }

/* Панель внизу */
.ql-panel { display: grid; grid-template-columns: 1fr auto; gap: 24px 40px; align-items: center; padding: 34px 40px; border-radius: var(--q-radius-l); background: linear-gradient(135deg, var(--q-bark) 0%, var(--q-bark-deep) 100%); color: rgba(255, 255, 255, .85); }
.ql-panel__kicker { font-size: 12.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--q-orange-light); }
.qg h2.ql-panel__title { margin: 8px 0 !important; font-family: var(--q-font-heading) !important; font-weight: 400 !important; font-size: 30px !important; line-height: 1.2 !important; letter-spacing: 0 !important; text-transform: none !important; color: #fff !important; }
.qg p.ql-panel__text { margin: 0 !important; font-size: 15px; font-weight: 300; line-height: 1.65; max-width: 56ch; color: rgba(255, 255, 255, .85); }
.ql-panel__ctas { display: flex; gap: 12px; flex-wrap: wrap; }
.qg .ql-panel .q-btn--secondary { background: transparent !important; color: #fff !important; border-color: rgba(255, 255, 255, .45) !important; }

@media (max-width: 1024px) {
	.ql-inner { gap: 28px; }
	.ql-grid { grid-template-columns: 1fr; gap: 24px; }
	.ql-aside { position: static; }
	.ql-aside .ql-toc-card { display: none; }
	.ql-service__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ql-toc--m { display: block; }
	.ql-doc { padding: 34px 36px; }
	.qg h1.ql-title { font-size: 42px !important; }
	.ql-fact { padding: 18px; }
	.ql-fact__num { font-size: 27px; }
	.ql-panel { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
	.ql-inner { padding-top: 16px; padding-bottom: 48px; gap: 22px; }
	.qg h1.ql-title { font-size: 32px !important; }
	.qg p.ql-lead { font-size: 16.5px; }
	.ql-meta { font-size: 13px; gap: 8px 16px; padding: 11px 0; }
	.qg button.ql-print { display: none; }
	.ql-facts, .ql-facts--1, .ql-facts--2 { grid-template-columns: 1fr; gap: 8px; }
	.ql-fact { display: grid; grid-template-columns: 124px 1fr; gap: 2px 12px; align-items: center; padding: 14px 16px; }
	.ql-fact__num { grid-row: span 2; font-size: 22px; }
	.ql-fact__label { font-size: 14px; }
	.ql-fact__sub { font-size: 12.5px; }
	.ql-doc { padding: 22px 18px 26px; gap: 14px; font-size: 15.5px; border-radius: var(--q-radius-m); }
	.ql-doc .fusion-text { gap: 14px; }
	.ql-doc h2.ql-h2 { font-size: 23px !important; gap: 11px; margin-top: 16px !important; }
	.ql-doc--count h2.ql-h2::before { width: 28px; height: 28px; font-size: 13px; transform: translateY(-3px); }
	.ql-doc h3, .ql-doc h4 { font-size: 16.5px !important; }
	.ql-doc ol { padding-left: 22px !important; }
	.ql-doc table { font-size: 14px; }
	.ql-service__list { grid-template-columns: 1fr; gap: 8px; }
	.ql-panel { padding: 22px 20px; }
	.qg h2.ql-panel__title { font-size: 24px !important; }
	.ql-panel__ctas .q-btn { width: 100%; }
}
/* Печать и «Opslaan als PDF»: только текст страницы */
@media print {
	.q-pages--service header.fusion-header-wrapper, .q-pages--service .fusion-tb-header, .q-pages--service .fusion-tb-footer, .q-pages--service footer, .q-pages--service #wpadminbar,
	.ql-aside, .ql-panel, .ql-service, .ql-print, .ql-toc--m, .q-crumbs { display: none !important; }
	.ql, .q-pages #main { background: #fff !important; }
	.ql-inner { padding: 0 !important; gap: 16px; }
	.ql-grid { display: block; }
	.ql-doc { box-shadow: none !important; border: 0 !important; padding: 0 !important; }
	.ql-fact { box-shadow: none !important; }
}

/* ---------------------------------------------------------------------------
   Меньше движения
   --------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	.qg *, .qb-sticky, .qb-progress span { transition: none !important; }
	html { scroll-behavior: auto; }
}
