/* Király Árnyék — focused storefront and responsive polish. */

/* Product photos should form a calm, even grid regardless of source ratio. */
ul.products li.product .woocommerce-loop-product__link img,
ul.products li.product > a img {
	display: block;
	width: 100%;
	height: clamp(150px, 22vw, 290px) !important;
	object-fit: contain;
	object-position: center;
	background: #f6f7f7;
}

ul.products li.product .woocommerce-loop-product__title {
	line-height: 1.35;
}

/* Homepage category panels were excessively tall on narrow screens. */
.page-id-7105 .elementor-element-63412b4 .elementor-widget-image img {
	width: 100%;
	height: 400px;
	object-fit: cover;
}

/* Keep the category-card copy anchored near the lower edge of each image. */
.page-id-7105 .image-feature figcaption {
	top: auto;
	bottom: 30px;
	padding: 0 2em;
}

/* Elementor entrance effects from the demo must never leave content hidden. */
.page-id-7105 .elementor-element-4ab7341e .elementor-invisible,
.page-id-7105 .elementor-element-56fe7973 .elementor-invisible {
	visibility: visible !important;
}

.page-id-7105 .elementor-element-56fe7973 .elementor-widget-image img {
	width: 100%;
	height: 280px;
	object-fit: cover;
}

/* Elementor applies the CTA frame to the populated wrapper, not the image. */
.page-id-7105 .elementor-element-18bcd84c > .elementor-widget-wrap {
	border: 0 !important;
}

.ka-home-feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 86px;
    margin-bottom: 8px;
}

.ka-home-feature-icon svg {
    width: 74px;
    height: 74px;
    fill: none;
    stroke: #171717;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Make the narrow technical illustration on the about page look intentional. */
.page-id-1004 .elementor-element-af85d13 img {
	width: 100%;
	height: 430px;
	object-fit: contain;
	background: #f6f7f7;
	padding: 24px;
}

.page-id-1004 img[src*="Muanyag-redony"] {
	width: 100%;
	max-height: 540px;
	object-fit: contain;
	background: #f6f7f7;
}

/* Improve the visibility and rhythm of the service icons above the footer. */
.below-content .widget_custom_html svg {
    width: 21px;
    height: 21px;
    stroke: #6f7478;
    opacity: 0.9;
}

/* Demján Sándor Program attribution in the native footer widget area. */
.site-footer .ka-program-branding p,
.footer-widgets .ka-program-branding p {
	max-width: 310px;
	margin-bottom: 20px;
	line-height: 1.6;
}

.site-footer .ka-program-logos,
.footer-widgets .ka-program-logos {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	align-items: center;
	gap: 16px;
	max-width: 320px;
}

.site-footer .ka-program-logos img,
.footer-widgets .ka-program-logos img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	object-fit: contain;
}

.site-footer .ka-program-logos a,
.footer-widgets .ka-program-logos a {
	display: flex;
	align-items: center;
	transition: opacity 160ms ease;
}

.site-footer .ka-program-logos a:hover,
.site-footer .ka-program-logos a:focus-visible,
.footer-widgets .ka-program-logos a:hover,
.footer-widgets .ka-program-logos a:focus-visible {
	opacity: 0.78;
}

.site-footer .ka-program-logos a:focus-visible,
.footer-widgets .ka-program-logos a:focus-visible {
	outline: 2px solid #d69b13;
	outline-offset: 5px;
}

/* Dedicated Demján Sándor Program project-information page. */
.ka-program-page {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	color: #fff;
	background: #004c40;
}

.ka-program-page__inner {
	max-width: 1170px;
	min-height: 640px;
	margin: 0 auto;
	padding: clamp(68px, 8vw, 110px) 2.617924em clamp(72px, 8vw, 112px);
}

.ka-program-page__content {
	max-width: 980px;
}

.ka-program-page__eyebrow {
	margin: 0 0 12px;
	color: #e9bd54;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.ka-program-page h1 {
	margin: 0 0 32px;
	color: #fff;
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1.08;
	letter-spacing: -0.025em;
}

.ka-program-page__lead,
.ka-program-page__amount {
	max-width: 930px;
	margin: 0 0 14px;
	color: #fff;
	font-size: clamp(16px, 1.55vw, 19px);
	line-height: 1.65;
}

.ka-program-page__amount {
	margin-bottom: 34px;
}

.ka-program-page__facts {
	display: grid;
	gap: 0;
	max-width: 800px;
	margin: 0;
}

.ka-program-page__facts > div {
	display: grid;
	grid-template-columns: minmax(250px, 1fr) minmax(220px, 1fr);
	gap: 24px;
	padding: 15px 0;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.ka-program-page__facts dt,
.ka-program-page__facts dd {
	margin: 0;
	color: #fff;
	font-size: 16px;
	line-height: 1.5;
}

.ka-program-page__facts dt {
	font-weight: 600;
}

.ka-program-page__logos {
	display: flex;
	align-items: center;
	gap: clamp(42px, 7vw, 88px);
	margin-top: 58px;
}

.ka-program-page__logos img {
	display: block;
	width: min(330px, 36%);
	height: auto;
	margin: 0;
	object-fit: contain;
}

@media (max-width: 767px) {
	.ka-home-feature-icon {
		height: 70px;
	}

	.ka-home-feature-icon svg {
		width: 62px;
		height: 62px;
	}

	.page-id-7105 .elementor-element-63412b4 .elementor-widget-image img {
		height: 350px;
	}

	.page-id-7105 .elementor-element-56fe7973 {
		padding-top: 42px !important;
		padding-bottom: 42px !important;
	}

	.page-id-7105 .elementor-element-56fe7973 .elementor-widget-image img {
		height: 210px;
	}

	.page-id-1004 .elementor-element-af85d13 img {
		height: 320px;
		padding: 16px;
	}

	.page-id-1004 img[src*="Muanyag-redony"] {
		max-height: 420px;
	}

	.site-footer .ka-program-logos,
	.footer-widgets .ka-program-logos {
		max-width: 300px;
	}

	.ka-program-page__inner {
		min-height: 0;
		padding: 52px 20px 62px;
	}

	.ka-program-page h1 {
		margin-bottom: 24px;
	}

	.ka-program-page__lead,
	.ka-program-page__amount {
		font-size: 16px;
		line-height: 1.6;
	}

	.ka-program-page__facts > div {
		display: block;
		padding: 14px 0;
	}

	.ka-program-page__facts dd {
		margin-top: 4px;
	}

	.ka-program-page__logos {
		display: grid;
		grid-template-columns: 1fr;
		gap: 32px;
		margin-top: 42px;
	}

	.ka-program-page__logos img {
		width: min(290px, 88%);
	}

	/* Keep long product labels readable without making every card oversized. */
	ul.products li.product .woocommerce-loop-product__title {
		font-size: 14px;
	}
}

/* Homepage category navigator */
.ka-home-categories {
    width: 100%;
}

.ka-home-categories__intro {
    max-width: 760px;
    margin: 0 auto 30px;
    color: #5f6662;
    font-size: 17px;
    line-height: 1.65;
    text-align: center;
}

.ka-home-categories__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.ka-home-category {
    position: relative;
    display: flex;
    min-height: 286px;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e1e4e0;
    border-radius: 14px;
    box-shadow: 0 8px 28px rgba(25, 55, 47, .07);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.ka-home-category:hover,
.ka-home-category:focus-within {
    border-color: #c99c3f;
    box-shadow: 0 14px 34px rgba(25, 55, 47, .12);
    transform: translateY(-3px);
}

.ka-home-category__main {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 27px 26px 21px;
    color: #183d36;
    text-decoration: none !important;
}

.ka-home-category__main::after {
    position: absolute;
    inset: 0;
    z-index: 1;
    content: "";
}

.ka-home-category__icon {
    display: grid;
    width: 58px;
    height: 58px;
    margin-bottom: 20px;
    place-items: center;
    color: #b58a31;
    background: #f7f3e8;
    border-radius: 12px;
}

.ka-home-category__icon svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.ka-home-category__title {
    margin: 0 0 9px;
    color: #183d36;
    font-family: inherit;
    font-size: 23px;
    font-weight: 700;
    line-height: 1.22;
}

.ka-home-category__description {
    margin: 0;
    color: #69716d;
    font-size: 15px;
    line-height: 1.55;
}

.ka-home-category__arrow {
    margin-top: auto;
    padding-top: 18px;
    color: #9a7222;
    font-size: 22px;
    line-height: 1;
}

.ka-home-category__links {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 15px 20px 19px;
    background: #f7f8f6;
    border-top: 1px solid #e7e9e5;
}

.ka-home-category__links a {
    padding: 6px 10px;
    color: #36584f;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.25;
    text-decoration: none !important;
    background: #fff;
    border: 1px solid #d8ddd9;
    border-radius: 999px;
}

.ka-home-category__links a:hover,
.ka-home-category__links a:focus {
    color: #fff;
    background: #183d36;
    border-color: #183d36;
}

.ka-home-categories__all {
    margin: 31px 0 0;
    text-align: center;
}

.ka-home-categories__all a {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 12px 25px;
    color: #fff;
    font-weight: 700;
    text-decoration: none !important;
    background: #183d36;
    border-radius: 4px;
    transition: background .2s ease, transform .2s ease;
}

.ka-home-categories__all a:hover,
.ka-home-categories__all a:focus {
    color: #fff;
    background: #b58a31;
    transform: translateY(-1px);
}

.page-id-7105 .ka-home-custom-products ul.products,
.page-id-7105 ul.products.ka-home-custom-products {
    margin-bottom: 0;
}

@media (max-width: 980px) {
    .ka-home-categories__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .ka-home-categories__intro {
        margin-bottom: 22px;
        font-size: 15px;
        text-align: left;
    }

    .ka-home-categories__grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .ka-home-category {
        min-height: 0;
    }

    .ka-home-category__main {
        display: grid;
        grid-template-columns: 50px minmax(0, 1fr) auto;
        grid-template-rows: auto auto;
        column-gap: 14px;
        padding: 19px 18px 16px;
    }

    .ka-home-category__icon {
        width: 50px;
        height: 50px;
        grid-row: 1 / 3;
        margin-bottom: 0;
    }

    .ka-home-category__icon svg {
        width: 29px;
        height: 29px;
    }

    .ka-home-category__title {
        align-self: center;
        margin: 0;
        font-size: 19px;
    }

    .ka-home-category__description {
        grid-column: 2 / 4;
        margin-top: 8px;
        font-size: 14px;
    }

    .ka-home-category__arrow {
        grid-column: 3;
        grid-row: 1;
        align-self: center;
        margin: 0;
        padding: 0;
    }

    .ka-home-category__links {
        padding: 13px 16px 16px;
    }
}

/* Homepage visual system -------------------------------------------------- */
.page-id-7105 {
    --ka-home-ink: #173b34;
    --ka-home-muted: #626b67;
    --ka-home-gold: #b98c32;
    --ka-home-gold-dark: #98701f;
    --ka-home-warm: #f7f4ec;
    --ka-home-soft: #fbfaf7;
    --ka-home-border: #e4e2dc;
}

/* Hero: a wider, balanced composition without the empty side fields. */
.page-id-7105 .elementor-element-e0ee2b2 {
    min-height: 0 !important;
    overflow: hidden;
    padding: 42px 24px 46px !important;
    background: linear-gradient(118deg, #edf0ed 0%, #f7f4ec 100%) !important;
}

.page-id-7105 .elementor-element-e0ee2b2 > .elementor-background-overlay {
    display: none;
}

.page-id-7105 .elementor-element-e0ee2b2 > .elementor-container {
    width: 100%;
    max-width: 1280px !important;
    min-height: 420px !important;
}

.page-id-7105 .elementor-element-e0ee2b2 .elementor-element-20bf6896,
.page-id-7105 .elementor-element-e0ee2b2 .elementor-element-3c701200,
.page-id-7105 .elementor-element-e0ee2b2 .elementor-element-3c701200 > .elementor-container {
    width: 100%;
    height: 100%;
}

.page-id-7105 .elementor-element-e0ee2b2 .elementor-element-3c701200 > .elementor-container {
    max-width: none !important;
    align-items: center;
    gap: clamp(34px, 4vw, 66px);
}

.page-id-7105 .elementor-element-e0ee2b2 .elementor-element-6d0d1fdd {
    width: 43% !important;
}

.page-id-7105 .elementor-element-e0ee2b2 .elementor-element-4a125de2 {
    width: 57% !important;
}

.page-id-7105 .elementor-element-50834686 .elementor-heading-title {
    max-width: 610px;
    color: var(--ka-home-ink) !important;
    font-size: clamp(46px, 3.7vw, 64px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.035em !important;
}

.page-id-7105 .elementor-element-6bf9a88a {
    max-width: 570px;
    margin-top: 25px;
}

.page-id-7105 .elementor-element-6bf9a88a .elementor-heading-title {
    color: var(--ka-home-muted) !important;
    font-size: clamp(18px, 1.35vw, 21px) !important;
    line-height: 1.55 !important;
    letter-spacing: 0 !important;
}

.page-id-7105 .elementor-element-2b594290 {
    margin-top: 27px;
}

.page-id-7105 .elementor-element-2b594290 .elementor-button {
    min-height: 54px;
    padding: 16px 27px !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    background: var(--ka-home-ink) !important;
    border: 1px solid var(--ka-home-ink);
    border-radius: 6px !important;
    box-shadow: 0 8px 20px rgba(23, 59, 52, .16);
    transform: none !important;
    transition: background .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.page-id-7105 .elementor-element-2b594290 .elementor-button:hover,
.page-id-7105 .elementor-element-2b594290 .elementor-button:focus-visible {
    background: var(--ka-home-gold-dark) !important;
    border-color: var(--ka-home-gold-dark);
    box-shadow: 0 10px 24px rgba(152, 112, 31, .22);
    transform: translateY(-2px) !important;
}

.page-id-7105 .elementor-element-16df861c,
.page-id-7105 .elementor-element-16df861c .elementor-widget-container {
    width: 100%;
}

.page-id-7105 .elementor-element-16df861c img {
    display: block;
    width: 100% !important;
    height: 410px !important;
    object-fit: cover;
    object-position: center;
    border-radius: 18px;
    box-shadow: 0 20px 48px rgba(23, 59, 52, .16);
}

/* Category area: one continuous warm panel and a deliberate heading rhythm. */
.page-id-7105 .elementor-element-141eed01 {
    padding: 72px 24px 14px !important;
    background: var(--ka-home-soft);
}

.page-id-7105 .elementor-element-141eed01 .elementor-heading-title,
.page-id-7105 .elementor-element-75399a0b .elementor-heading-title,
.page-id-7105 .elementor-element-54823e33 .elementor-heading-title {
    color: var(--ka-home-ink);
    font-size: clamp(30px, 2.45vw, 40px) !important;
    line-height: 1.15 !important;
    letter-spacing: -.025em !important;
}

.page-id-7105 .elementor-element-141eed01 .elementor-heading-title::after,
.page-id-7105 .elementor-element-75399a0b .elementor-heading-title::after,
.page-id-7105 .elementor-element-54823e33 .elementor-heading-title::after {
    display: block;
    width: 46px;
    height: 3px;
    margin: 17px auto 0;
    content: "";
    background: var(--ka-home-gold);
    border-radius: 99px;
}

.page-id-7105 .elementor-element-6d1398fb {
    padding: 0 24px 78px !important;
    background: var(--ka-home-soft);
}

.page-id-7105 .elementor-element-6d1398fb > .elementor-container,
.page-id-7105 .elementor-element-75399a0b > .elementor-container,
.page-id-7105 .elementor-element-4ab7341e > .elementor-container,
.page-id-7105 .elementor-element-56fe7973 > .elementor-container,
.page-id-7105 .elementor-element-54823e33 > .elementor-container,
.page-id-7105 .elementor-element-4fcc49c7 > .elementor-container {
    max-width: 1200px !important;
}

.page-id-7105 .ka-home-categories__intro {
    max-width: 735px;
    margin-bottom: 34px;
    color: var(--ka-home-muted);
}

.page-id-7105 .ka-home-category {
    border-color: var(--ka-home-border);
    box-shadow: 0 9px 30px rgba(23, 59, 52, .06);
}

.page-id-7105 .ka-home-category:hover,
.page-id-7105 .ka-home-category:focus-within {
    border-color: rgba(185, 140, 50, .72);
    box-shadow: 0 17px 40px rgba(23, 59, 52, .11);
}

.page-id-7105 .ka-home-category__icon {
    color: var(--ka-home-gold);
    background: var(--ka-home-warm);
}

.page-id-7105 .ka-home-category__title {
    color: var(--ka-home-ink);
}

.page-id-7105 .ka-home-category__links {
    background: #f7f7f4;
}

/* Reasons to choose: compact, readable cards instead of a loose icon row. */
.page-id-7105 .elementor-element-75399a0b {
    padding: 76px 24px 25px !important;
    background: #fff;
}

.page-id-7105 .elementor-element-75399a0b .elementor-widget-text-editor p {
    max-width: 680px;
    margin: 14px auto 0;
    color: var(--ka-home-muted);
    font-size: 17px;
    line-height: 1.6;
}

.page-id-7105 .elementor-element-4ab7341e {
    padding: 0 24px 78px !important;
    background: #fff;
}

.page-id-7105 .elementor-element-4ab7341e > .elementor-container {
    gap: 20px;
}

.page-id-7105 .elementor-element-4ab7341e .elementor-column {
    width: calc((100% - 40px) / 3) !important;
}

.page-id-7105 .elementor-element-4ab7341e .elementor-column > .elementor-widget-wrap {
    height: 100%;
    align-content: flex-start;
    padding: 28px 27px 25px !important;
    background: var(--ka-home-warm);
    border: 1px solid #ebe6d9;
    border-radius: 14px;
}

.page-id-7105 .ka-home-feature-icon {
    height: 60px;
    margin-bottom: 13px;
}

.page-id-7105 .ka-home-feature-icon svg {
    width: 55px;
    height: 55px;
    stroke: var(--ka-home-gold);
    stroke-width: 2.3;
}

.page-id-7105 .elementor-element-4ab7341e h3 {
    color: var(--ka-home-ink);
    font-size: 20px;
    line-height: 1.25;
}

.page-id-7105 .elementor-element-4ab7341e .elementor-widget-text-editor p {
    margin-bottom: 0;
    color: var(--ka-home-muted);
    font-size: 14px;
    line-height: 1.6;
}

/* Consultation banner: tighter and aligned with the rest of the page. */
.page-id-7105 .elementor-element-56fe7973 {
    padding: 64px 24px !important;
    background: var(--ka-home-ink) !important;
}

.page-id-7105 .elementor-element-56fe7973 > .elementor-container {
    align-items: center;
    gap: 56px;
}

.page-id-7105 .elementor-element-56fe7973 .elementor-column {
    width: calc(50% - 28px) !important;
}

.page-id-7105 .elementor-element-56fe7973 .elementor-element-5b521101 .elementor-heading-title {
    color: #fff;
    font-size: clamp(31px, 2.6vw, 43px) !important;
    line-height: 1.16 !important;
    letter-spacing: -.025em;
}

.page-id-7105 .elementor-element-56fe7973 .elementor-element-472d2c7f .elementor-heading-title {
    max-width: 530px;
    color: rgba(255,255,255,.76) !important;
    font-size: 17px !important;
    line-height: 1.6 !important;
}

.page-id-7105 .elementor-element-56fe7973 .elementor-element-38ff2d41 .elementor-button {
    padding: 15px 25px !important;
    color: #fff !important;
    font-weight: 700;
    background: var(--ka-home-gold) !important;
    border-radius: 6px !important;
}

.page-id-7105 .elementor-element-56fe7973 .elementor-element-38ff2d41 .elementor-button:hover,
.page-id-7105 .elementor-element-56fe7973 .elementor-element-38ff2d41 .elementor-button:focus-visible {
    background: var(--ka-home-gold-dark) !important;
}

.page-id-7105 .elementor-element-56fe7973 .elementor-element-df21310 img {
    height: 300px !important;
    border-radius: 16px;
    box-shadow: 0 18px 42px rgba(0,0,0,.24);
}

/* Curated products: visually close the homepage with a calm retail grid. */
.page-id-7105 .elementor-element-54823e33 {
    padding: 74px 24px 22px !important;
    background: #f5f6f3;
}

.page-id-7105 .elementor-element-4fcc49c7 {
    padding: 0 24px 78px !important;
    background: #f5f6f3;
}

.page-id-7105 .elementor-element-4fcc49c7 ul.products {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    gap: 22px;
}

.page-id-7105 .elementor-element-4fcc49c7 ul.products::before,
.page-id-7105 .elementor-element-4fcc49c7 ul.products::after {
    display: none;
}

.page-id-7105 .elementor-element-4fcc49c7 ul.products li.product {
    display: flex !important;
    width: auto !important;
    height: 100%;
    margin: 0 !important;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e2e5df;
    border-radius: 14px;
    box-shadow: 0 9px 28px rgba(23, 59, 52, .06);
}

.page-id-7105 .elementor-element-4fcc49c7 ul.products li.product:hover {
    box-shadow: 0 16px 38px rgba(23, 59, 52, .11);
}

.page-id-7105 .elementor-element-4fcc49c7 ul.products li.product img {
    height: 250px !important;
    background: #fff;
}

.page-id-7105 .elementor-element-4fcc49c7 .woocommerce-image__wrapper,
.page-id-7105 .elementor-element-4fcc49c7 .woocommerce-image__wrapper > a,
.page-id-7105 .elementor-element-4fcc49c7 .shoptimizer-plp-carousel-container,
.page-id-7105 .elementor-element-4fcc49c7 .shoptimizer-plp-image-wrapper {
    display: block;
    width: 100%;
    height: 250px;
}

.page-id-7105 .elementor-element-4fcc49c7 .woocommerce-card__header {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 19px 21px 23px;
}

.page-id-7105 .elementor-element-4fcc49c7 .product__categories {
    display: -webkit-box;
    min-height: 31px;
    margin: 0 0 8px;
    overflow: hidden;
    color: #68706c;
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: .055em;
    text-transform: uppercase;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.page-id-7105 .elementor-element-4fcc49c7 .product__categories a {
    color: inherit;
}

.page-id-7105 .elementor-element-4fcc49c7 .woocommerce-loop-product__title {
    min-height: 46px;
    margin-bottom: 7px;
    color: var(--ka-home-ink);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.38;
}

.page-id-7105 .elementor-element-4fcc49c7 .price {
    display: block;
    margin: 0 0 2px;
    color: #202522;
    font-size: 15px;
    font-weight: 600;
}

.page-id-7105 .elementor-element-4fcc49c7 li.product .button {
    position: static !important;
    display: flex !important;
    width: 100% !important;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    margin: auto 0 0 !important;
    padding: 12px 15px !important;
    color: #fff !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
    opacity: 1 !important;
    visibility: visible !important;
    background: var(--ka-home-ink) !important;
    border: 0 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    transform: none !important;
    transition: background .2s ease, transform .2s ease !important;
}

.page-id-7105 .elementor-element-4fcc49c7 li.product .button:hover,
.page-id-7105 .elementor-element-4fcc49c7 li.product .button:focus-visible {
    color: #fff !important;
    background: var(--ka-home-gold-dark) !important;
    transform: translateY(-1px) !important;
}

@media (max-width: 1024px) {
    .page-id-7105 .elementor-element-e0ee2b2 {
        padding: 38px 25px 42px !important;
    }

    .page-id-7105 .elementor-element-e0ee2b2 > .elementor-container {
        min-height: 380px !important;
    }

    .page-id-7105 .elementor-element-e0ee2b2 .elementor-element-3c701200 > .elementor-container {
        gap: 32px;
    }

    .page-id-7105 .elementor-element-50834686 .elementor-heading-title {
        font-size: 45px !important;
    }

    .page-id-7105 .elementor-element-16df861c img {
        height: 350px !important;
    }

    .page-id-7105 .elementor-element-4fcc49c7 ul.products li.product img {
        height: 220px !important;
    }

    .page-id-7105 .elementor-element-4fcc49c7 .woocommerce-image__wrapper,
    .page-id-7105 .elementor-element-4fcc49c7 .woocommerce-image__wrapper > a,
    .page-id-7105 .elementor-element-4fcc49c7 .shoptimizer-plp-carousel-container,
    .page-id-7105 .elementor-element-4fcc49c7 .shoptimizer-plp-image-wrapper {
        height: 220px;
    }
}

@media (max-width: 767px) {
    .page-id-7105 .elementor-element-e0ee2b2 {
        padding: 34px 18px 38px !important;
    }

    .page-id-7105 .elementor-element-e0ee2b2 > .elementor-container {
        min-height: 0 !important;
    }

    .page-id-7105 .elementor-element-e0ee2b2 .elementor-element-3c701200 > .elementor-container {
        display: flex;
        gap: 27px;
    }

    .page-id-7105 .elementor-element-e0ee2b2 .elementor-element-6d0d1fdd,
    .page-id-7105 .elementor-element-e0ee2b2 .elementor-element-4a125de2 {
        width: 100% !important;
    }

    .page-id-7105 .elementor-element-50834686 .elementor-heading-title {
        font-size: clamp(37px, 11vw, 44px) !important;
        line-height: 1.04 !important;
    }

    .page-id-7105 .elementor-element-6bf9a88a {
        margin-top: 18px;
    }

    .page-id-7105 .elementor-element-2b594290 {
        margin-top: 20px;
    }

    .page-id-7105 .elementor-element-2b594290 .elementor-button {
        width: 100%;
    }

    .page-id-7105 .elementor-element-16df861c img {
        height: 230px !important;
        border-radius: 13px;
    }

    .page-id-7105 .elementor-element-141eed01 {
        padding: 49px 18px 12px !important;
    }

    .page-id-7105 .elementor-element-6d1398fb {
        padding: 0 10px 54px !important;
    }

    .page-id-7105 .ka-home-categories__intro {
        padding: 0 8px;
        text-align: center;
    }

    .page-id-7105 .elementor-element-75399a0b {
        padding: 54px 18px 22px !important;
    }

    .page-id-7105 .elementor-element-4ab7341e {
        padding: 0 18px 55px !important;
    }

    .page-id-7105 .elementor-element-4ab7341e > .elementor-container {
        gap: 13px;
    }

    .page-id-7105 .elementor-element-4ab7341e .elementor-column {
        width: 100% !important;
    }

    .page-id-7105 .elementor-element-4ab7341e .elementor-column > .elementor-widget-wrap {
        padding: 23px 20px 21px !important;
    }

    .page-id-7105 .elementor-element-56fe7973 {
        padding: 50px 18px !important;
    }

    .page-id-7105 .elementor-element-56fe7973 > .elementor-container {
        gap: 30px;
    }

    .page-id-7105 .elementor-element-56fe7973 .elementor-column {
        width: 100% !important;
    }

    .page-id-7105 .elementor-element-56fe7973 .elementor-element-df21310 img {
        height: 210px !important;
        border-radius: 12px;
    }

    .page-id-7105 .elementor-element-54823e33 {
        padding: 54px 18px 18px !important;
    }

    .page-id-7105 .elementor-element-4fcc49c7 {
        padding: 0 10px 54px !important;
    }

    .page-id-7105 .elementor-element-4fcc49c7 ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .page-id-7105 .elementor-element-4fcc49c7 ul.products li.product img {
        height: 155px !important;
    }

    .page-id-7105 .elementor-element-4fcc49c7 .woocommerce-image__wrapper,
    .page-id-7105 .elementor-element-4fcc49c7 .woocommerce-image__wrapper > a,
    .page-id-7105 .elementor-element-4fcc49c7 .shoptimizer-plp-carousel-container,
    .page-id-7105 .elementor-element-4fcc49c7 .shoptimizer-plp-image-wrapper {
        height: 155px;
    }

    .page-id-7105 .elementor-element-4fcc49c7 .woocommerce-card__header {
        padding: 14px 13px 17px;
    }

    .page-id-7105 .elementor-element-4fcc49c7 .product__categories {
        min-height: 28px;
        margin-bottom: 6px;
        font-size: 9px;
    }

    .page-id-7105 .elementor-element-4fcc49c7 .woocommerce-loop-product__title {
        min-height: 54px;
        font-size: 13px;
        line-height: 1.35;
    }

    .page-id-7105 .elementor-element-4fcc49c7 .price {
        font-size: 13px;
    }

    .page-id-7105 .elementor-element-4fcc49c7 li.product .button {
        min-height: 43px;
        padding: 10px 8px !important;
        font-size: 11px;
    }
}

/* Client brief: decision-led WooCommerce category landing pages. */
.ka-category-guide {
    clear: both;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    flex: 0 1 100%;
    margin: 34px 0 42px;
    color: #202426;
}

.ka-category-guide__heading {
    max-width: 820px;
    margin: 0 auto 28px;
    text-align: center;
}

.ka-category-guide__heading > span {
    display: inline-block;
    margin-bottom: 8px;
    color: #b88a2b;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.ka-category-guide__heading h2 {
    margin: 0 0 12px;
    color: #142f31;
    font-size: clamp(25px, 3.2vw, 40px);
    line-height: 1.15;
}

.ka-category-guide__heading p {
    margin: 0;
    color: #596064;
    font-size: 17px;
    line-height: 1.65;
}

.ka-system-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin: 0 0 24px;
}

.ka-system-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ka-system-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ka-category-hub-redony .ka-system-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.ka-guide-section { margin-top: 32px; }
.ka-guide-section > h3 {
    margin: 0 0 17px;
    padding-bottom: 10px;
    color: #173638;
    border-bottom: 2px solid #e5dcc8;
    font-size: clamp(20px, 2.3vw, 28px);
}

.ka-system-card {
    display: flex;
    min-height: 250px;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e5e1d7;
    border-radius: 16px;
    box-shadow: 0 12px 34px rgba(15, 39, 41, .07);
    transition: transform .2s ease, box-shadow .2s ease;
}

.ka-system-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 42px rgba(15, 39, 41, .12);
}

.ka-system-card__body {
    flex: 1;
    padding: 25px 24px 20px;
}

.ka-system-card__meta {
    display: inline-block;
    margin-bottom: 12px;
    color: #a1761e;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ka-system-card h3 {
    margin: 0 0 12px;
    color: #173638;
    font-size: 21px;
    line-height: 1.3;
}

.ka-system-card p {
    margin: 0;
    color: #5c6265;
    line-height: 1.65;
}

.ka-system-card .ka-system-card__button {
    display: block;
    margin: 0;
    padding: 15px 20px;
    color: #fff;
    background: #b78b2f;
    border: 0;
    border-radius: 0;
    font-weight: 750;
    text-align: center;
}

.ka-system-card .ka-system-card__button:hover {
    color: #fff;
    background: #163a3c;
}

.ka-material-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 22px;
    margin-bottom: 24px;
}

.ka-material-card {
    overflow: hidden;
    background: #fff;
    border: 1px solid #ded9cc;
    border-radius: 18px;
    box-shadow: 0 14px 36px rgba(15, 39, 41, .08);
}

.ka-material-card__header { padding: 28px 28px 22px; }
.ka-material-card__header h3 { margin: 0 0 12px; color: #173638; font-size: clamp(24px, 2.8vw, 34px); }
.ka-material-card__header p { margin: 0; color: #596064; line-height: 1.65; }

.ka-material-card__details { border-top: 1px solid #ece7db; }
.ka-material-card__details summary {
    position: relative;
    padding: 16px 48px 16px 28px;
    color: #173638;
    background: #f7f4ed;
    cursor: pointer;
    font-weight: 750;
    list-style: none;
}
.ka-material-card__details summary::-webkit-details-marker { display: none; }
.ka-material-card__details summary::after {
    position: absolute;
    top: 50%;
    right: 26px;
    content: "+";
    color: #b78b2f;
    font-size: 24px;
    line-height: 1;
    transform: translateY(-50%);
}
.ka-material-card__details[open] summary::after { content: "−"; }
.ka-material-card__description { padding: 24px 28px 8px; border-top: 1px solid #ece7db; }
.ka-material-card__description .ka-category-description {
    margin: 0;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0;
    box-shadow: none;
}
.ka-material-card__description .ka-category-description::before { display: none; }

.ka-material-card__links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 18px 28px;
    border-top: 1px solid #ece7db;
}
.ka-material-card__links a {
    padding: 7px 12px;
    color: #173638;
    background: #eef2ef;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}
.ka-material-card .ka-material-card__button {
    display: block;
    margin: 0;
    padding: 16px 22px;
    color: #fff;
    background: #b78b2f;
    border: 0;
    border-radius: 0;
    font-weight: 800;
    text-align: center;
}
.ka-material-card .ka-material-card__button:hover { color: #fff; background: #173638; }

.ka-configurator-cta {
    display: grid;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    grid-template-columns: 190px minmax(0, 1fr);
    align-items: center;
    gap: clamp(22px, 4vw, 42px);
    clear: both;
    margin: 34px 0 44px;
    padding: clamp(22px, 3vw, 34px);
    color: #fff;
    background: #173638;
    border-radius: 18px;
    box-shadow: 0 16px 42px rgba(15, 39, 41, .16);
}
.ka-configurator-cta__image {
    display: block;
    overflow: hidden;
    background: #fff;
    border-radius: 12px;
    aspect-ratio: 1 / 1;
}
.ka-configurator-cta__image img { width: 100%; height: 100%; object-fit: contain; }
.ka-configurator-cta__eyebrow {
    color: #e2bd68;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.ka-configurator-cta h2 { margin: 7px 0 10px; color: #fff; font-size: clamp(23px, 3vw, 34px); }
.ka-configurator-cta p { max-width: 760px; margin: 0 0 15px; color: rgba(255, 255, 255, .83); line-height: 1.65; }
.ka-configurator-cta__price { margin-bottom: 15px; color: #fff; font-size: 19px; font-weight: 800; }
.ka-configurator-cta .ka-configurator-cta__button {
    margin: 0;
    padding: 13px 20px;
    color: #173638;
    background: #e3bd67;
    border: 0;
    border-radius: 7px;
    font-weight: 800;
}
.ka-configurator-cta .ka-configurator-cta__button:hover { color: #fff; background: #b78b2f; }

.ka-secondary-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin: 4px 0 32px;
}

.ka-secondary-links a {
    padding: 9px 15px;
    color: #173638;
    background: #f4f1e9;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
}

.ka-measurements {
    margin-top: 34px;
    padding: clamp(20px, 3vw, 34px);
    background: #f5f3ed;
    border-radius: 18px;
}

.ka-measurements h2 {
    margin: 0 0 20px;
    color: #173638;
    font-size: clamp(22px, 2.6vw, 31px);
}

.ka-table-scroll {
    overflow-x: auto;
    border-radius: 10px;
}

.ka-measurements table {
    width: 100%;
    min-width: 650px;
    margin: 0;
    background: #fff;
    border-collapse: collapse;
}

.ka-measurements--cols-4 table { min-width: 880px; }
.ka-measurements--cols-7 table { min-width: 1080px; }

.ka-measurements th,
.ka-measurements td {
    padding: 14px 16px;
    border: 1px solid #e5e1d7;
    text-align: left;
    vertical-align: top;
}

.ka-measurements thead th {
    color: #fff;
    background: #173638;
}

.ka-measurements tbody th { color: #173638; }
.ka-measurements__note { margin: 14px 0 0; color: #62686a; font-size: 13px; }

body.ka-category-hub .content-area .woocommerce-ordering,
body.ka-category-hub .content-area .woocommerce-result-count,
body.ka-category-hub .content-area ul.products,
body.ka-category-hub .content-area .woocommerce-pagination {
    display: none !important;
}

body.ka-category-hub .woocommerce-products-header {
    display: block;
}

body.ka-category-hub .woocommerce-products-header > .term-description,
body.ka-category-hub .woocommerce-products-header > .ka-category-guide {
    width: 100%;
    max-width: 100%;
}

@media (max-width: 960px) {
    .ka-system-grid,
    .ka-system-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
    .ka-category-guide { margin: 24px 0 30px; }
    .ka-category-guide__heading { text-align: left; }
    .ka-category-guide__heading p { font-size: 15px; }
    .ka-system-grid,
    .ka-system-grid--two,
    .ka-system-grid--four { grid-template-columns: 1fr; }
    .ka-system-card { min-height: 0; }
    .ka-system-card__body { padding: 21px 18px 18px; }
    .ka-material-grid { grid-template-columns: 1fr; }
    .ka-material-card__header { padding: 23px 19px 18px; }
    .ka-material-card__details summary { padding-right: 44px; padding-left: 19px; }
    .ka-material-card__details summary::after { right: 19px; }
    .ka-material-card__description { padding: 20px 19px 5px; }
    .ka-material-card__links { padding: 16px 19px; }
    .ka-configurator-cta { grid-template-columns: 1fr; margin: 26px 0 34px; padding: 20px; }
    .ka-configurator-cta__image { width: 150px; }
    .ka-measurements { margin-right: -10px; margin-left: -10px; padding: 20px 10px; border-radius: 12px; }
}

@media (min-width: 768px) and (max-width: 1024px) {
	.page-id-7105 .elementor-element-63412b4 .elementor-widget-image img {
		height: 340px;
	}
}

/* Product-category mega menu ------------------------------------------------ */
@media (min-width: 993px) {
    #nav-menu-item-7152 > .sub-menu-wrapper {
        padding: 0;
        background: #fff;
        border-top: 3px solid #d69b13;
        box-shadow: 0 16px 38px rgba(0, 0, 0, 0.16);
		display: block !important;
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
    }

	/* The theme's full-width LI spans the navigation row. Only our explicitly
	 * controlled root-link state may reveal the desktop panel. */
	#nav-menu-item-7152.ka-desktop-open > .sub-menu-wrapper {
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
	}

    #nav-menu-item-7152 > .sub-menu-wrapper > .container {
        max-width: 1180px;
        margin: 0 auto;
        padding: 30px 34px 32px;
    }

    #nav-menu-item-7152 > .sub-menu-wrapper > .container > .sub-menu {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 0;
        width: 100%;
    }

    #nav-menu-item-7152 > .sub-menu-wrapper > .container > .sub-menu > li {
        float: none;
        width: auto;
        min-width: 0;
        padding: 0 26px;
        border-left: 1px solid #e8e8e8;
    }

    #nav-menu-item-7152 > .sub-menu-wrapper > .container > .sub-menu > li:first-child {
        padding-left: 0;
        border-left: 0;
    }

    #nav-menu-item-7152 > .sub-menu-wrapper > .container > .sub-menu > li:last-child {
        padding-right: 0;
    }

    #nav-menu-item-7152 .ka-mega-column > a {
        display: flex;
        align-items: center;
        min-height: 38px;
        margin: 0 0 12px;
        padding: 0 0 10px;
        color: #151515;
        border-bottom: 2px solid #d69b13;
        font-size: 15px;
        font-weight: 700;
        letter-spacing: 0.02em;
    }

    #nav-menu-item-7152 .ka-mega-column > .caret {
        display: none;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper,
    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper > .container {
        position: static;
        display: block;
        width: auto;
        min-width: 0;
        padding: 0;
        opacity: 1;
        visibility: visible;
        transform: none;
        background: transparent;
        box-shadow: none;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper .sub-menu {
        display: block;
        width: auto;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper li {
        float: none;
        width: auto;
        margin: 0;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper a {
        position: relative;
        display: block;
        padding: 7px 8px 7px 15px;
        color: #4d5154;
        font-size: 14px;
        line-height: 1.35;
        border-radius: 4px;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper a::before {
        content: '';
        position: absolute;
        left: 1px;
        top: 15px;
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: #d69b13;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper a:hover,
    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper a:focus {
        color: #111;
        background: #f5f6f6;
    }

    #nav-menu-item-7152 .ka-mega-all-products > a {
        color: #111;
        font-weight: 700;
    }
}

@media (max-width: 992px) {
    #nav-menu-item-7152.ka-mega-root {
        position: relative;
    }

    #nav-menu-item-7152.ka-mega-root > a {
        min-height: 44px;
        padding-right: 48px;
    }

    #nav-menu-item-7152.ka-mega-root > .caret,
    #nav-menu-item-7152 .ka-mega-column > .caret {
        position: absolute;
        z-index: 3;
        top: 0;
        right: 0;
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        cursor: pointer;
    }

    #nav-menu-item-7152.ka-mega-root > .sub-menu-wrapper {
        position: static !important;
        display: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 6px 0 10px !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        background: transparent;
        box-shadow: none;
    }

    #nav-menu-item-7152.ka-mega-root.ka-mobile-open > .sub-menu-wrapper {
        display: block !important;
    }

    #nav-menu-item-7152.ka-mega-root > .sub-menu-wrapper > .container,
    #nav-menu-item-7152.ka-mega-root > .sub-menu-wrapper > .container > .sub-menu {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #nav-menu-item-7152 .ka-mega-column {
        position: relative;
        width: 100%;
        margin: 0 0 5px;
    }

    #nav-menu-item-7152 .ka-mega-column > a {
        min-height: 44px;
        padding: 12px 48px 12px 14px;
        font-weight: 700;
        color: #161616;
        background: #f2f3f3;
        border-left: 3px solid #d69b13;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper {
        position: static !important;
        display: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 4px 0 7px !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        background: #fff;
        box-shadow: none;
    }

    #nav-menu-item-7152 .ka-mega-column.ka-mobile-open > .sub-menu-wrapper {
        display: block !important;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper > .container,
    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper .sub-menu {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper li {
        width: 100%;
    }

    #nav-menu-item-7152 .ka-mega-column > .sub-menu-wrapper a {
        display: block;
        padding: 9px 14px 9px 24px;
        color: #4c5053;
        font-size: 14px;
        line-height: 1.35;
        border-bottom: 1px solid #ededed;
    }
}

/* Client-supplied category guides and contact details. */
body.tax-product_cat .term-description {
    max-width: none;
    margin: 20px 0 38px;
    padding: 0 !important;
    background: transparent !important;
    border: 0;
}

body.tax-product_cat .woocommerce-products-header {
    background: transparent !important;
}

.term-description .ka-category-description,
.woocommerce-products-header__description .ka-category-description {
    position: relative;
    overflow: hidden;
    max-width: 1040px;
    margin: 0;
    padding: clamp(28px, 3.2vw, 42px);
    color: #34383b;
    background: #fbfaf7;
    border: 1px solid #e8e2d6;
    border-radius: 16px;
    box-shadow: 0 12px 34px rgba(24, 27, 29, 0.07);
}

.term-description .ka-category-description::before,
.woocommerce-products-header__description .ka-category-description::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    content: "";
    background: #d69b13;
}

.ka-category-description .ka-category-lead {
    max-width: 900px;
    margin: 0;
    color: #202326;
    font-size: clamp(16px, 1.3vw, 18px);
    line-height: 1.75;
}

.ka-category-description h2 {
    margin: 28px 0 16px;
    color: #17191b;
    font-size: clamp(21px, 2vw, 27px);
    line-height: 1.25;
}

.ka-category-description ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0 0 22px;
    padding: 0;
    list-style: none;
}

.ka-category-description li {
    position: relative;
    margin: 0;
    padding: 14px 16px 14px 44px;
    color: #3e4245;
    background: #fff;
    border: 1px solid #ebe7de;
    border-radius: 10px;
}

.ka-category-description li::before {
    position: absolute;
    top: 17px;
    left: 17px;
    width: 16px;
    height: 16px;
    color: #fff;
    background: #d69b13;
    border-radius: 50%;
    content: "\2713";
    font-size: 10px;
    font-weight: 700;
    line-height: 16px;
    text-align: center;
}

.ka-category-description li,
.ka-category-description p {
    line-height: 1.65;
}

.ka-category-description > p:last-child {
    margin: 0;
    padding-top: 2px;
    color: #62676b;
    font-size: 15px;
}

/* Primary Király Árnyék logo. */
.site-header .custom-logo-link,
.mobile-header .custom-logo-link {
    display: inline-flex;
    align-items: center;
}

.site-header .custom-logo-link img,
.mobile-header .custom-logo-link img,
img.custom-logo {
    width: 225px !important;
    height: auto !important;
    max-width: 225px;
    max-height: none;
    object-fit: contain;
}

.ka-contact-card {
    margin-top: 24px;
    padding: 26px 28px;
    color: #282c2f;
    background: #f7f7f5;
    border-left: 4px solid #d69b13;
}

.ka-contact-card p {
    margin: 0 0 18px;
    line-height: 1.65;
}

.ka-contact-card p:last-child {
    margin-bottom: 0;
}

.ka-contact-card a {
    color: #161616;
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: #d69b13;
    text-underline-offset: 3px;
}

.ka-contact-card hr {
    margin: 24px 0;
    border: 0;
    border-top: 1px solid #d9d9d4;
}

@media (max-width: 767px) {
    .term-description .ka-category-description,
    .woocommerce-products-header__description .ka-category-description {
        margin: 0;
        padding: 25px 18px 22px;
        border-radius: 12px;
    }

    .ka-category-description ul {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .ka-category-description li {
        padding: 12px 13px 12px 39px;
    }

    .ka-category-description li::before {
        top: 15px;
        left: 14px;
    }

    .site-header .custom-logo-link img,
    .mobile-header .custom-logo-link img,
    img.custom-logo {
        width: 172px !important;
        max-width: 172px;
    }

    .ka-contact-card {
        padding: 18px 14px;
        font-size: 14px;
    }

    .ka-contact-card a {
        font-size: 14px;
        overflow-wrap: anywhere;
    }
}
