/*
Theme Name: Koska
Theme URI: https://koska.com.pl
Author: Koska
Description: Autorski motyw blokowy marki Koska.
Version: 0.2.0
Requires at least: 7.0
Requires PHP: 8.2
Text Domain: koska
*/

/* ==========================================================
   Fundament systemu wizualnego Koska
   ========================================================== */

:root {
	--koska-ink: #1c1815;
	--koska-espresso: #2a1b12;
	--koska-walnut: #684733;
	--koska-clay: #a87352;
	--koska-clay-dark: #8d5e42;
	--koska-taupe: #b49a84;
	--koska-ivory: #f7f3ed;
	--koska-cream: #eee6dc;
	--koska-line: #d8ccc0;
	--koska-muted: #70665f;
	--koska-white: #fffdfc;

	--koska-font-interface: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--koska-font-editorial: "Cormorant Garamond", Georgia, "Times New Roman", serif;

	--koska-radius-small: 6px;
	--koska-radius-medium: 10px;
	--koska-content-wide: 1360px;
	--koska-shadow-soft: 0 8px 30px rgba(42, 27, 18, 0.07);
}

html {
	scroll-behavior: smooth;
}

body {
	background: var(--koska-ivory);
	color: var(--koska-ink);
	font-family: var(--koska-font-interface);
	font-size: 1rem;
	line-height: 1.65;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--koska-ink);
	font-family: var(--koska-font-editorial);
	font-weight: 500;
	letter-spacing: -0.015em;
}

a {
	color: inherit;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}

a:hover,
a:focus-visible {
	color: var(--koska-clay-dark);
}

button,
input,
select,
textarea {
	font: inherit;
}

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
	border: 1px solid var(--koska-line);
	border-radius: var(--koska-radius-small);
	background: var(--koska-white);
	color: var(--koska-ink);
	padding: 0.875rem 1rem;
}

input:focus-visible,
select:focus-visible,
textarea:focus-visible,
button:focus-visible,
a:focus-visible {
	outline: 2px solid var(--koska-clay);
	outline-offset: 3px;
}

.wp-element-button,
.wp-block-button__link,
button,
input[type="button"],
input[type="submit"] {
	border: 1px solid var(--koska-clay);
	border-radius: var(--koska-radius-small);
	background: var(--koska-clay);
	color: var(--koska-white);
	font-family: var(--koska-font-interface);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.2;
	padding: 0.875rem 1.625rem;
	transition:
		background-color 160ms ease,
		border-color 160ms ease,
		color 160ms ease;
}

.wp-element-button:hover,
.wp-block-button__link:hover,
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover {
	border-color: var(--koska-clay-dark);
	background: var(--koska-clay-dark);
	color: var(--koska-white);
}

/* ==========================================================
   Identyfikacja wizualna Koska
   ========================================================== */

.koska-brand {
	display: inline-block;
	flex-shrink: 0;
	line-height: 0;
	text-decoration: none;
}

.koska-brand:hover,
.koska-brand:focus-visible {
	color: inherit;
}

.koska-brand__logo {
	display: block;
	width: clamp(7rem, 9vw, 9rem);
	height: auto;
}

/* ==========================================================
   Responsywność
   ========================================================== */

@media (max-width: 700px) {
	.koska-brand__logo {
		width: 6rem;
	}
}


/*
 * Homepage: landmark <main> jest top-level blokiem WordPressa.
 * Zerujemy wyłącznie globalny odstęp wp-site-blocks przed tym elementem.
 */
.wp-site-blocks > main.koska-home-main {
	margin-block-start: 0;
}

/* ==========================================================
   Nagłówek strony
   ========================================================== */

.koska-site-header {
        position: relative;
        z-index: 30;
        width: 100%;
        margin: 0;
        overflow: visible;
        background: var(--koska-white);
        color: var(--koska-ink);
}

.koska-header-brand {
        position: relative;
        margin: 0;
        overflow: visible;
        border-bottom: 1px solid var(--koska-line);
        background: var(--koska-white);
}

.koska-header-brand__inner {
        position: relative;
        box-sizing: border-box;
        display: flex;
        align-items: center;
        gap: clamp(1.25rem, 2vw, 2.5rem);
        min-height: 98px;
        padding: 0 2.5rem;
}

/* Pełne wysokie logo może zejść niżej bez zwiększania całego headera. */
.koska-brand {
        position: relative;
        z-index: 4;
        align-self: stretch;
        display: flex;
        flex: 0 0 auto;
        align-items: center;
        justify-content: center;
        width: clamp(8rem, 8.5vw, 9.25rem);
        color: inherit;
        text-decoration: none;
}

.koska-brand::before {
        position: absolute;
        top: -1px;
        right: -1.15rem;
        bottom: -1.85rem;
        left: -1.15rem;
        z-index: 0;
        border: 1px solid var(--koska-line);
        border-top: 0;
        border-radius: 0 0 2rem 2rem;
        background: var(--koska-white);
        box-shadow: 0 0.85rem 2.2rem rgba(42, 27, 18, 0.08);
        content: "";
}

.koska-header-brand .koska-brand__logo {
        position: relative;
        z-index: 1;
        display: block;
        width: auto;
        height: 114px;
        max-width: 10rem;
        margin-bottom: -1.15rem;
        filter: none;
}

/* Główna nawigacja desktopowa. */
.koska-desktop-navigation {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: clamp(0.8rem, 1.25vw, 1.45rem);
        min-width: 0;
        margin-left: auto;
        font-family: var(--koska-font-editorial);
        font-size: clamp(1rem, 1.02vw, 1.08rem);
        font-weight: 600;
        letter-spacing: 0.005em;
        transform: translateY(-0.85rem);
}

.koska-desktop-navigation a {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: var(--koska-ink);
        padding: 0.55rem 0;
        text-decoration: none;
        white-space: nowrap;
        transition:
                color 160ms ease,
                background-color 160ms ease,
                border-color 160ms ease,
                transform 160ms ease;
}

.koska-desktop-navigation a:not(.koska-desktop-navigation__order)::after {
        position: absolute;
        right: 0;
        bottom: 0.25rem;
        left: 0;
        height: 1px;
        background: currentColor;
        transform: scaleX(0);
        transform-origin: right center;
        transition: transform 180ms ease;
        content: "";
}

.koska-desktop-navigation a:not(.koska-desktop-navigation__order):hover::after,
.koska-desktop-navigation a:not(.koska-desktop-navigation__order):focus-visible::after {
        transform: scaleX(1);
        transform-origin: left center;
}

.koska-desktop-navigation a:hover,
.koska-desktop-navigation a:focus-visible {
        color: var(--koska-clay-dark);
}

.koska-desktop-navigation__order {
        min-height: 2.8rem;
        border: 1px solid var(--koska-clay);
        border-radius: 999px;
        background: var(--koska-clay);
        color: var(--koska-white) !important;
        padding: 0.68rem 1.15rem !important;
}

.koska-desktop-navigation__order:hover,
.koska-desktop-navigation__order:focus-visible {
        border-color: var(--koska-clay-dark);
        background: var(--koska-clay-dark);
        color: var(--koska-white) !important;
        transform: translateY(-1px);
}


/* Konto / wyszukiwarka / koszyk. */
.koska-header-tools {
        position: relative;
        z-index: 5;
        display: flex;
        flex: 0 0 auto;
        align-items: center;
        gap: 0.15rem;
}

.koska-header-tools > .koska-header-tool,
.koska-header-search__toggle {
        transform: translateY(-0.85rem);
}

.koska-header-tool {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        width: 42px;
        height: 42px;
        margin: 0;
        border: 1px solid transparent;
        border-radius: 999px;
        background: transparent;
        color: var(--koska-ink);
        cursor: pointer;
        list-style: none;
        text-decoration: none;
        transition:
                color 160ms ease,
                background-color 160ms ease,
                border-color 160ms ease,
                transform 160ms ease;
}

.koska-header-tool::-webkit-details-marker {
        display: none;
}

.koska-header-tool:hover,
.koska-header-tool:focus-visible,
.koska-header-search[open] > .koska-header-tool {
        border-color: var(--koska-line);
        background: var(--koska-cream);
        color: var(--koska-clay-dark);
}

.koska-header-tool svg {
        display: block;
        width: 1.25rem;
        height: 1.25rem;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.55;
        stroke-linecap: round;
        stroke-linejoin: round;
}

.koska-header-search {
        position: relative;
        margin: 0;
}

.koska-header-search__panel {
        position: absolute;
        top: calc(100% + 0.9rem);
        right: 0;
        z-index: 50;
        box-sizing: border-box;
        width: clamp(19rem, 28vw, 27rem);
        border: 1px solid var(--koska-line);
        border-radius: 12px;
        background: var(--koska-white);
        box-shadow: 0 1.25rem 3rem rgba(42, 27, 18, 0.16);
        padding: 0.85rem;
}

.koska-header-search__form {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 0.55rem;
}

.koska-header-search__form input[type="search"] {
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
        min-height: 44px;
        margin: 0;
        border: 1px solid var(--koska-line);
        border-radius: 7px;
        background: var(--koska-ivory);
        color: var(--koska-ink);
        padding: 0.7rem 0.9rem;
        font: inherit;
}

.koska-header-search__form input[type="search"]:focus {
        border-color: var(--koska-clay);
        background: var(--koska-white);
}

.koska-header-search__form button {
        min-height: 44px;
        margin: 0;
        border: 1px solid var(--koska-espresso);
        border-radius: 7px;
        background: var(--koska-espresso);
        color: var(--koska-white);
        padding: 0.65rem 1rem;
        font: inherit;
        font-weight: 600;
        cursor: pointer;
}

.koska-header-search__form button:hover,
.koska-header-search__form button:focus-visible {
        background: var(--koska-clay-dark);
        border-color: var(--koska-clay-dark);
}

/* Menu mobilne pozostaje osobną natywną strukturą HTML. */
.koska-mobile-menu {
        display: none;
        flex: 0 0 auto;
        margin: 0;
}

@media (max-width: 1180px) {
        body:has(.koska-mobile-menu[open]) {
                overflow: hidden;
        }

        .koska-header-brand__inner {
                min-height: 92px;
                padding-right: 1.5rem;
                padding-left: 1.5rem;
        }

        .koska-brand {
                width: 8rem;
        }

        .koska-brand::before {
                right: -0.85rem;
                bottom: -1.5rem;
                left: -0.85rem;
        }

        .koska-header-brand .koska-brand__logo {
                height: 106px;
                margin-bottom: -0.95rem;
        }

        .koska-desktop-navigation {
                display: none;
        }

        .koska-header-tools {
                margin-left: auto;
        }

        .koska-mobile-menu {
                display: block;
        }

        .koska-mobile-menu__toggle {
                display: flex;
                align-items: center;
                justify-content: center;
                box-sizing: border-box;
                width: 42px;
                height: 42px;
                margin: 0 0 0 0.25rem;
                border: 1px solid transparent;
                border-radius: 999px;
                background: transparent;
                color: var(--koska-ink);
                cursor: pointer;
                list-style: none;
        }

        .koska-mobile-menu__toggle::-webkit-details-marker {
                display: none;
        }

        .koska-mobile-menu__toggle:hover,
        .koska-mobile-menu__toggle:focus-visible {
                border-color: var(--koska-line);
                background: var(--koska-cream);
        }

        .koska-mobile-menu__icon {
                position: relative;
                display: block;
                width: 20px;
                height: 14px;
        }

        /*
         * Zamknięty hamburger jest rysowany z jednej kreski i dwóch
         * identycznych box-shadow, dzięki czemu wszystkie trzy mają
         * dokładnie ten sam raster i optyczną grubość.
         */
        .koska-mobile-menu__icon span {
                display: none;
        }

        .koska-mobile-menu__icon::before,
        .koska-mobile-menu__icon::after {
                position: absolute;
                left: 0;
                width: 100%;
                height: 2px;
                background: currentColor;
                content: "";
                transform-origin: center;
                transition:
                        top 180ms ease,
                        transform 180ms ease,
                        opacity 180ms ease,
                        box-shadow 180ms ease;
        }

        .koska-mobile-menu__icon::before {
                top: 0;
                box-shadow:
                        0 6px 0 currentColor,
                        0 12px 0 currentColor;
        }

        .koska-mobile-menu__icon::after {
                top: 6px;
                opacity: 0;
        }

        .koska-mobile-menu[open] > .koska-mobile-menu__toggle {
                position: fixed;
                top: 1.25rem;
                right: 1.25rem;
                z-index: 10002;
                margin: 0;
                border-color: var(--koska-line);
                background: var(--koska-white);
                color: var(--koska-ink);
        }

        .koska-mobile-menu[open] .koska-mobile-menu__icon::before {
                top: 6px;
                box-shadow: none;
                transform: rotate(45deg);
        }

        .koska-mobile-menu[open] .koska-mobile-menu__icon::after {
                top: 6px;
                opacity: 1;
                transform: rotate(-45deg);
        }

        .koska-mobile-menu__panel {
                position: fixed;
                inset: 0;
                z-index: 10000;
                display: none;
                box-sizing: border-box;
                width: 100vw;
                height: 100dvh;
                overflow-y: auto;
                background: var(--koska-ivory);
                padding: 1.25rem;
        }

        .koska-mobile-menu[open] .koska-mobile-menu__panel {
                display: block;
        }

        .koska-mobile-menu__navigation {
                display: flex;
                align-items: stretch;
                flex-direction: column;
                box-sizing: border-box;
                width: min(100%, 34rem);
                min-height: calc(100dvh - 2.5rem);
                margin: 0 auto;
                padding-top: 3.75rem;
                font-family: var(--koska-font-editorial);
                font-size: 1.3rem;
                font-weight: 500;
        }

        .koska-mobile-menu__logo {
                display: block;
                width: 7rem;
                height: auto;
                margin: 0 auto 1.5rem;
        }

        .koska-mobile-menu__navigation a {
                display: block;
                box-sizing: border-box;
                width: 100%;
                border-bottom: 1px solid var(--koska-line);
                color: var(--koska-ink);
                padding: 0.65rem 0;
                text-align: center;
                text-decoration: none;
        }

        .koska-mobile-menu__navigation a:hover,
        .koska-mobile-menu__navigation a:focus-visible {
                color: var(--koska-clay-dark);
        }

        .koska-mobile-menu__navigation .koska-mobile-menu__order {
                position: relative;
                margin: 0.5rem 0 1.15rem;
                border: 0;
                border-radius: 999px;
                background: var(--koska-clay);
                color: var(--koska-white);
                padding: 0.8rem 1rem;
                text-align: center;
        }

        .koska-mobile-menu__navigation .koska-mobile-menu__order::after {
                position: absolute;
                right: 0;
                bottom: -0.65rem;
                left: 0;
                height: 1px;
                background: var(--koska-line);
                content: "";
        }

        .koska-mobile-menu__navigation .koska-mobile-menu__order:hover,
        .koska-mobile-menu__navigation .koska-mobile-menu__order:focus-visible {
                background: var(--koska-clay-dark);
                color: var(--koska-white);
        }
}

@media (max-width: 700px) {
        .koska-header-brand__inner {
                gap: 0.2rem;
                min-height: 78px;
                padding-right: 0.75rem;
                padding-left: 0.75rem;
        }

        .koska-brand {
                width: 6.3rem;
        }

        .koska-brand::before {
                right: -0.45rem;
                bottom: -1rem;
                left: -0.45rem;
                border-radius: 0 0 1.35rem 1.35rem;
                box-shadow: 0 0.5rem 1.25rem rgba(42, 27, 18, 0.07);
        }

        .koska-header-brand .koska-brand__logo {
                height: 86px;
                max-width: 6.8rem;
                margin-bottom: -0.65rem;
        }

        .koska-header-tools {
                gap: 0;
        }

        .koska-header-tool,
        .koska-mobile-menu__toggle {
                width: 39px;
                height: 39px;
        }

        .koska-header-tool svg {
                width: 1.15rem;
                height: 1.15rem;
        }

        .koska-header-tools > .koska-header-tool:first-child {
                display: none;
        }

        .koska-header-search__panel {
                position: fixed;
                top: 5.5rem;
                right: 0.75rem;
                left: 0.75rem;
                width: auto;
        }
}

/* ==========================================================
   Sekcja kategorii strony głównej
   ========================================================== */

.koska-home-categories {
        box-sizing: border-box;
        width: 100%;
        max-width: none;
        margin: 0;
        background: var(--koska-ivory);
        padding:
                clamp(5rem, 8vw, 7.5rem)
                2.5rem
                clamp(6rem, 9vw, 8rem);
}

.koska-home-categories__inner {
        display: grid;
        grid-template-columns: minmax(15rem, 0.82fr) minmax(0, 3.18fr);
        gap: clamp(1rem, 1.5vw, 1.5rem);
        box-sizing: border-box;
        width: min(100%, var(--koska-content-wide));
        margin: 0 auto;
}

.koska-home-categories__intro-column {
        display: grid;
        grid-template-rows: auto minmax(0, 1fr);
        gap: 1.25rem;
        min-width: 0;
}

.koska-home-categories__intro {
        padding: 0 0.5rem;
        text-align: center;
}

.koska-home-categories__ornament {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.75rem;
        width: min(100%, 13rem);
        margin: 0 auto 1rem;
}

.koska-home-categories__ornament-line {
        width: 100%;
        height: 1px;
        background: var(--koska-line);
}

.koska-home-categories__symbol {
        display: block;
        flex: 0 0 auto;
        width: 1.75rem;
        height: auto;
        opacity: 0.68;
}

.koska-home-categories__title {
        margin: 0;
        font-size: clamp(2.75rem, 4vw, 4rem);
        line-height: 0.96;
}

.koska-home-categories__description {
        max-width: 19rem;
        margin: 1rem auto 0;
        color: var(--koska-muted);
        font-size: 0.9rem;
        line-height: 1.65;
}

.koska-home-categories__mosaic {
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
        grid-template-rows: minmax(18rem, 1fr) minmax(20rem, 1.1fr);
        gap: 1rem;
        min-width: 0;
}

.koska-home-categories__mosaic > .koska-category-card:nth-child(1) {
        grid-column: 1 / 7;
}

.koska-home-categories__mosaic > .koska-category-card:nth-child(2) {
        grid-column: 7 / 10;
}

.koska-home-categories__mosaic > .koska-category-card:nth-child(3) {
        grid-column: 10 / 13;
}

.koska-home-categories__mosaic > .koska-category-card:nth-child(4) {
        grid-column: 1 / 6;
}

.koska-home-categories__mosaic > .koska-category-card:nth-child(5) {
        grid-column: 6 / 9;
}

.koska-home-categories__mosaic > .koska-category-card:nth-child(6) {
        grid-column: 9 / 13;
}

.koska-category-card {
        position: relative;
        display: block;
        min-width: 0;
        min-height: 0;
        overflow: hidden;
        border-radius: var(--koska-radius-medium);
        background: var(--koska-espresso);
        box-shadow: var(--koska-shadow-soft);
        color: var(--koska-white);
        text-decoration: none;
        isolation: isolate;
        transition:
                box-shadow 220ms ease,
                transform 220ms ease;
}

.koska-home-categories__intro-column > .koska-category-card {
        min-height: 27rem;
}

.koska-category-card:hover,
.koska-category-card:focus-visible {
        color: var(--koska-white);
        box-shadow: 0 14px 34px rgba(42, 27, 18, 0.14);
        transform: translateY(-2px);
}

.koska-category-card:focus-visible {
        outline: 2px solid var(--koska-clay);
        outline-offset: 4px;
}

.koska-category-card__media,
.koska-category-card__overlay {
        position: absolute;
        inset: 0;
        display: block;
}

.koska-category-card__media {
        z-index: -2;
        overflow: hidden;
        background: var(--koska-espresso);
}

.koska-category-card__image {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 600ms ease;
}

.koska-category-card__overlay {
        z-index: -1;
        background:
                linear-gradient(
                        to top,
                        rgba(28, 24, 21, 0.82) 0%,
                        rgba(28, 24, 21, 0.35) 38%,
                        rgba(28, 24, 21, 0.08) 70%,
                        rgba(28, 24, 21, 0.02) 100%
                );
        transition: background-color 220ms ease;
}

.koska-category-card__content {
        position: absolute;
        right: 1.35rem;
        bottom: 1.2rem;
        left: 1.35rem;
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 1rem;
}

.koska-category-card__label {
        display: flex;
        align-items: baseline;
        min-width: 0;
        gap: 0.55rem;
}

.koska-category-card__number {
        flex: 0 0 auto;
        font-family: var(--koska-font-interface);
        font-size: 0.72rem;
        font-weight: 600;
        letter-spacing: 0.04em;
        opacity: 0.86;
}

.koska-category-card__name {
        font-family: var(--koska-font-editorial);
        font-size: clamp(1.45rem, 2vw, 1.9rem);
        font-weight: 500;
        letter-spacing: -0.01em;
        line-height: 1.05;
}

.koska-category-card__arrow {
        flex: 0 0 auto;
        font-family: var(--koska-font-interface);
        font-size: 1.7rem;
        font-weight: 300;
        line-height: 0.85;
        transition: transform 220ms ease;
}

.koska-category-card:hover .koska-category-card__image,
.koska-category-card:focus-visible .koska-category-card__image {
        transform: scale(1.045);
}

.koska-category-card:hover .koska-category-card__arrow,
.koska-category-card:focus-visible .koska-category-card__arrow {
        transform: translateX(0.25rem);
}

.koska-category-card--fallback .koska-category-card__media {
        background:
                radial-gradient(
                        circle at 18% 20%,
                        rgba(255, 253, 252, 0.14),
                        transparent 34%
                ),
                linear-gradient(
                        135deg,
                        var(--koska-walnut),
                        var(--koska-espresso)
                );
}

.koska-category-card--fallback .koska-category-card__media::before,
.koska-category-card--fallback .koska-category-card__media::after {
        position: absolute;
        border: 1px solid rgba(255, 253, 252, 0.1);
        border-radius: 50%;
        content: "";
        pointer-events: none;
}

.koska-category-card--fallback .koska-category-card__media::before {
        top: 15%;
        left: -35%;
        width: 115%;
        aspect-ratio: 1;
}

.koska-category-card--fallback .koska-category-card__media::after {
        right: -45%;
        bottom: -30%;
        width: 130%;
        aspect-ratio: 1;
}

@media (max-width: 1100px) {
        .koska-home-categories {
                padding:
                        5rem
                        2rem
                        6rem;
        }

        .koska-home-categories__inner {
                display: block;
        }

        .koska-home-categories__intro-column {
                display: block;
        }

        .koska-home-categories__intro {
                max-width: 34rem;
                margin: 0 auto 2.5rem;
        }

        .koska-home-categories__intro-column > .koska-category-card {
                min-height: 21rem;
                margin-bottom: 1rem;
        }

        .koska-home-categories__mosaic {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                grid-template-rows: none;
                grid-auto-rows: minmax(17rem, auto);
        }

        .koska-home-categories__mosaic > .koska-category-card:nth-child(n) {
                grid-column: auto;
                min-height: 17rem;
        }

        .koska-home-categories__mosaic > .koska-category-card:nth-child(1),
        .koska-home-categories__mosaic > .koska-category-card:nth-child(6) {
                grid-column: 1 / -1;
                min-height: 21rem;
        }
}

@media (max-width: 700px) {
        .koska-home-categories {
                padding:
                        4rem
                        1rem
                        3.5rem;
        }

        .koska-home-categories__intro {
                margin-bottom: 2rem;
                padding: 0 0.25rem;
        }

        .koska-home-categories__title {
                font-size: clamp(2.6rem, 13vw, 3.35rem);
        }

        .koska-home-categories__description {
                font-size: 0.875rem;
        }

        .koska-home-categories__intro-column > .koska-category-card {
                min-height: 19rem;
        }

        .koska-home-categories__mosaic {
                grid-template-columns: minmax(0, 1fr);
                grid-auto-rows: auto;
        }

        .koska-home-categories__mosaic > .koska-category-card:nth-child(n) {
                grid-column: 1 / -1;
                min-height: 14rem;
        }

        .koska-home-categories__mosaic > .koska-category-card:nth-child(1) {
                min-height: 17rem;
        }

        .koska-category-card__content {
                right: 1.1rem;
                bottom: 1rem;
                left: 1.1rem;
        }

        .koska-category-card__name {
                font-size: 1.55rem;
        }
}

@media (prefers-reduced-motion: reduce) {
        .koska-category-card,
        .koska-category-card__image,
        .koska-category-card__arrow {
                transition: none;
        }

        .koska-category-card:hover,
        .koska-category-card:focus-visible,
        .koska-category-card:hover .koska-category-card__image,
        .koska-category-card:focus-visible .koska-category-card__image,
        .koska-category-card:hover .koska-category-card__arrow,
        .koska-category-card:focus-visible .koska-category-card__arrow {
                transform: none;
        }
}

/* ==========================================================
   Hero strony głównej
   ========================================================== */

.koska-home-hero {
        position: relative;
        isolation: isolate;
        min-height: clamp(38rem, 60vw, 50rem) !important;
        margin: 0;
        overflow: hidden;
        background: var(--koska-espresso);
}

.koska-home-hero .wp-block-cover__image-background {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center 56%;
        transform: scale(1.01);
}

.koska-home-hero .wp-block-cover__background {
        z-index: 1;
        background:
                linear-gradient(
                        90deg,
                        rgba(24, 18, 14, 0.82) 0%,
                        rgba(24, 18, 14, 0.58) 38%,
                        rgba(24, 18, 14, 0.12) 72%,
                        rgba(24, 18, 14, 0.04) 100%
                ),
                linear-gradient(
                        0deg,
                        rgba(24, 18, 14, 0.38) 0%,
                        transparent 45%
                ) !important;
        opacity: 1 !important;
}

.koska-home-hero .wp-block-cover__inner-container {
        z-index: 2;
        width: 100%;
        min-height: inherit;
}

.koska-home-hero__inner {
        box-sizing: border-box;
        display: flex;
        align-items: flex-end;
        width: min(100%, var(--koska-content-wide));
        min-height: inherit;
        margin: 0 auto;
        padding:
                clamp(4.5rem, 8vw, 7.5rem)
                clamp(1.5rem, 4vw, 4rem);
}

.koska-home-hero__content {
        position: relative;
        max-width: 49rem;
        margin: 0;
        border-left: 1px solid rgba(255, 253, 252, 0.46);
        padding-left: clamp(1.25rem, 2.6vw, 2.5rem);
        color: var(--koska-white);
}

.koska-home-hero__eyebrow {
        margin: 0 0 1.25rem;
        color: rgba(255, 253, 252, 0.76);
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.19em;
        line-height: 1.4;
        text-transform: uppercase;
}

.koska-home-hero__title {
        max-width: 11ch;
        margin: 0;
        color: var(--koska-white);
        font-size: clamp(4rem, 7vw, 7.25rem);
        font-weight: 500;
        letter-spacing: -0.048em;
        line-height: 0.82;
        text-wrap: balance;
}

.koska-home-hero__lead {
        max-width: 35rem;
        margin: 2rem 0 0;
        color: rgba(255, 253, 252, 0.8);
        font-size: clamp(0.95rem, 1.2vw, 1.08rem);
        line-height: 1.75;
}

.koska-home-hero__actions {
        gap: 0.8rem;
        margin-top: 2.25rem;
}

.koska-home-hero__actions .wp-block-button__link {
        min-height: 3.35rem;
        border-radius: 2px;
        padding: 1rem 1.55rem;
}

.koska-home-hero__actions .is-style-outline .wp-block-button__link {
        border-color: rgba(255, 253, 252, 0.72);
        background: rgba(28, 24, 21, 0.1);
        color: var(--koska-white);
        backdrop-filter: blur(3px);
}

.koska-home-hero__actions .is-style-outline .wp-block-button__link:hover,
.koska-home-hero__actions .is-style-outline .wp-block-button__link:focus-visible {
        border-color: var(--koska-white);
        background: var(--koska-white);
        color: var(--koska-ink);
}

/* ==========================================================
   Editorial hero strony głównej — split layout
   ========================================================== */

.koska-home-editorial-hero {
        --koska-hero-panel: var(--koska-espresso);

        position: relative;
        box-sizing: border-box;
        width: 100%;
        max-width: none;
        margin: 0;
        overflow: hidden;
        background: var(--koska-hero-panel);
        color: var(--koska-white);
}

.koska-home-editorial-hero *,
.koska-home-editorial-hero *::before,
.koska-home-editorial-hero *::after {
        box-sizing: border-box;
}

.koska-home-editorial-hero__inner {
        display: grid;
        grid-template-columns: minmax(0, 44%) minmax(0, 56%);
        width: 100%;
        max-width: none;
        min-height: clamp(38rem, 46vw, 49rem);
        margin: 0;
        padding: 0;
}

.koska-home-editorial-hero__copy {
        position: relative;
        z-index: 5;
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-width: 0;
        max-width: none;
        padding:
                clamp(4rem, 6vw, 6.5rem)
                clamp(3rem, 5vw, 6rem)
                clamp(4rem, 6vw, 6.5rem)
                clamp(3rem, 8vw, 9rem);
}

.koska-home-editorial-hero__copy > :not(.koska-home-editorial-hero__lineart) {
        position: relative;
        z-index: 2;
}

.koska-home-editorial-hero__lineart {
        position: absolute;
        top: 42%;
        left: 50%;
        z-index: 1;
        width: 104%;
        max-width: none;
        margin: 0;
        opacity: 0.16;
        pointer-events: none;
        user-select: none;
        transform: translate(-50%, -50%);
}

.koska-home-editorial-hero__lineart img {
        display: block;
        width: 100%;
        height: auto;
}

.koska-home-editorial-hero__eyebrow {
        margin: 0 0 1.4rem;
        color: rgba(255, 253, 252, 0.72);
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.2em;
        line-height: 1.4;
        text-transform: uppercase;
}

.koska-home-editorial-hero__title {
        max-width: 9.5ch;
        margin: 0;
        color: var(--koska-white);
        font-size: clamp(3.8rem, 5.1vw, 6.25rem);
        font-weight: 500;
        letter-spacing: -0.05em;
        line-height: 0.88;
        text-wrap: balance;
}

.koska-home-editorial-hero__lead {
        max-width: 34rem;
        margin: 2rem 0 0;
        color: rgba(255, 253, 252, 0.84);
        font-size: clamp(0.95rem, 1vw, 1.05rem);
        line-height: 1.75;
}

.koska-home-editorial-hero__actions {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.85rem;
        margin-top: 2.35rem;
}

.koska-home-editorial-hero__primary,
.koska-home-editorial-hero__secondary {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 3.25rem;
        border-radius: 2px;
        padding: 0.9rem 1.45rem;
        font-size: 0.92rem;
        font-weight: 600;
        text-decoration: none;
        transition:
                background-color 180ms ease,
                border-color 180ms ease,
                color 180ms ease,
                transform 180ms ease;
}

.koska-home-editorial-hero__primary {
        gap: 1.25rem;
        border: 1px solid var(--koska-white);
        background: var(--koska-white);
        color: var(--koska-espresso);
}

.koska-home-editorial-hero__primary:hover,
.koska-home-editorial-hero__primary:focus-visible {
        border-color: var(--koska-clay);
        background: var(--koska-clay);
        color: var(--koska-white);
        transform: translateY(-1px);
}

.koska-home-editorial-hero__secondary {
        border: 1px solid rgba(255, 253, 252, 0.58);
        background: transparent;
        color: var(--koska-white);
}

.koska-home-editorial-hero__secondary:hover,
.koska-home-editorial-hero__secondary:focus-visible {
        border-color: var(--koska-white);
        background: rgba(255, 253, 252, 0.1);
        color: var(--koska-white);
}

.koska-home-editorial-hero__media {
        position: relative;
        z-index: 2;
        min-width: 0;
        min-height: inherit;
        overflow: visible;
        padding: 0;
}

.koska-home-editorial-hero__media::before {
        position: absolute;
        top: -6%;
        bottom: auto;
        left: -7.5rem;
        z-index: 4;
        width: 13rem;
        height: 112%;
        border-radius: 50%;
        background: var(--koska-hero-panel);
        pointer-events: none;
        content: "";
}

.koska-home-editorial-hero__main-image,
.koska-home-editorial-hero__detail-image {
        margin: 0;
}

.koska-home-editorial-hero__main-image {
        position: absolute;
        inset: 0;
        z-index: 1;
        overflow: hidden;
        background: var(--koska-walnut);
}

.koska-home-editorial-hero__main-image::after {
        position: absolute;
        inset: 0;
        z-index: 2;
        border: 1px solid rgba(255, 253, 252, 0.08);
        pointer-events: none;
        content: "";
}

.koska-home-editorial-hero__main-image img,
.koska-home-editorial-hero__detail-image img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
}

.koska-home-editorial-hero__main-image img {
        object-position: center;
        transition: transform 900ms cubic-bezier(0.2, 0.65, 0.3, 1);
}

.koska-home-editorial-hero__main-image:hover img {
        transform: scale(1.018);
}

.koska-home-editorial-hero__main-image figcaption {
        display: none;
}

.koska-home-editorial-hero__detail-image {
        position: absolute;
        bottom: 2.25rem;
        left: -4.25rem;
        z-index: 6;
        width: clamp(10rem, 13vw, 14rem);
        aspect-ratio: 4 / 5;
        overflow: hidden;
        border: 0.45rem solid var(--koska-white);
        background: var(--koska-walnut);
        box-shadow: 0 1.5rem 4rem rgba(42, 27, 18, 0.28);
}

@media (max-width: 1180px) {
        .koska-home-editorial-hero__inner {
                grid-template-columns: minmax(0, 46%) minmax(0, 54%);
                min-height: 42rem;
        }

        .koska-home-editorial-hero__copy {
                padding:
                        4.5rem
                        3rem
                        4.5rem
                        clamp(2.5rem, 6vw, 5rem);
        }

        .koska-home-editorial-hero__title {
                font-size: clamp(3.5rem, 5.8vw, 5rem);
        }

        .koska-home-editorial-hero__media::before {
                left: -6rem;
                width: 10.5rem;
        }

        .koska-home-editorial-hero__detail-image {
                left: -3rem;
                width: clamp(9rem, 15vw, 12rem);
        }
}

@media (max-width: 620px) {
        .koska-home-editorial-hero {
                overflow: hidden;
        }

        .koska-home-editorial-hero__inner {
                display: block;
                min-height: 0;
        }

        .koska-home-editorial-hero__copy {
                min-height: 31rem;
                padding:
                        clamp(3.75rem, 9vw, 5rem)
                        clamp(1.25rem, 5vw, 2.5rem)
                        clamp(4rem, 9vw, 5rem);
        }

        .koska-home-editorial-hero__title {
                max-width: 9.5ch;
                font-size: clamp(3.4rem, 10vw, 4.9rem);
        }

        .koska-home-editorial-hero__media {
                min-height: 0;
        }

        .koska-home-editorial-hero__media::before {
                display: none;
        }

        .koska-home-editorial-hero__main-image {
                position: relative;
                inset: auto;
                aspect-ratio: 16 / 10;
        }

        .koska-home-editorial-hero__detail-image {
                right: 1.5rem;
                bottom: -2.25rem;
                left: auto;
                width: clamp(8.5rem, 25vw, 11rem);
        }
}

@media (max-width: 620px) {
        .koska-home-editorial-hero__copy {
                min-height: 0;
                padding:
                        3.5rem
                        1rem
                        4rem;
        }

        .koska-home-editorial-hero__title {
                font-size: clamp(3rem, 13vw, 4.15rem);
                line-height: 0.9;
        }

        .koska-home-editorial-hero__lead {
                margin-top: 1.5rem;
                font-size: 0.9rem;
                line-height: 1.7;
        }

        .koska-home-editorial-hero__actions {
                display: grid;
                grid-template-columns: 1fr;
                width: min(100%, 22rem);
                margin-top: 1.8rem;
        }

        .koska-home-editorial-hero__primary,
        .koska-home-editorial-hero__secondary {
                width: 100%;
        }

        .koska-home-editorial-hero__main-image {
                aspect-ratio: 4 / 5;
        }

        .koska-home-editorial-hero__main-image img {
                object-position: 49% center;
        }

        .koska-home-editorial-hero__detail-image {
                right: 1rem;
                bottom: -1.75rem;
                width: 34%;
                border-width: 0.35rem;
        }
}

@media (prefers-reduced-motion: reduce) {
        .koska-home-editorial-hero__main-image img,
        .koska-home-editorial-hero__primary,
        .koska-home-editorial-hero__secondary {
                transition: none;
        }

        .koska-home-editorial-hero__main-image:hover img,
        .koska-home-editorial-hero__primary:hover,
        .koska-home-editorial-hero__primary:focus-visible {
                transform: none;
        }
}

/* ==========================================================
   Sekcja „Na zamówienie” strony głównej
   ========================================================== */

.koska-custom-orders {
        position: relative;
        box-sizing: border-box;
        width: 100%;
        max-width: none;
        margin: 0;
        overflow: hidden;
        background:
                radial-gradient(
                        circle at 6% 18%,
                        rgba(168, 115, 82, 0.14),
                        transparent 28rem
                ),
                var(--koska-espresso);
        color: var(--koska-cream);
        padding:
                clamp(6rem, 9vw, 9rem)
                clamp(1.5rem, 5vw, 5rem);
}

.koska-custom-orders *,
.koska-custom-orders *::before,
.koska-custom-orders *::after {
        box-sizing: border-box;
}

.koska-custom-orders__inner {
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
        column-gap: clamp(1.5rem, 3vw, 3rem);
        align-items: start;
        width: min(100%, var(--koska-content-wide));
        margin: 0 auto;
}

.koska-custom-orders__intro {
        grid-column: 1 / 5;
        max-width: 32rem;
        padding-top: clamp(1rem, 3vw, 3rem);
}

.koska-custom-orders__eyebrow {
        margin: 0 0 1.35rem;
        color: var(--koska-taupe);
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.22em;
        line-height: 1.2;
        text-transform: uppercase;
}

.koska-custom-orders__title {
        margin: 0;
        color: var(--koska-cream);
        font-size: clamp(3.75rem, 5.3vw, 6rem);
        font-weight: 500;
        letter-spacing: -0.045em;
        line-height: 0.82;
}

.koska-custom-orders__title-line {
        display: block;
}

.koska-custom-orders__lead {
        max-width: 29rem;
        margin: 2rem 0 0;
        color: rgba(238, 230, 220, 0.7);
        font-size: 0.94rem;
        line-height: 1.85;
}

.koska-custom-orders__cta {
        display: inline-flex;
        gap: 1.5rem;
        align-items: center;
        justify-content: space-between;
        min-height: 3.35rem;
        margin-top: 2.4rem;
        border: 1px solid var(--koska-clay);
        border-radius: 2px;
        background: var(--koska-clay);
        color: var(--koska-white);
        font-size: 0.84rem;
        font-weight: 700;
        line-height: 1.2;
        padding: 1rem 1.2rem 1rem 1.4rem;
        text-decoration: none;
        transition:
                background-color 180ms ease,
                border-color 180ms ease,
                transform 180ms ease;
}

.koska-custom-orders__cta:hover,
.koska-custom-orders__cta:focus-visible {
        border-color: var(--koska-clay-dark);
        background: var(--koska-clay-dark);
        color: var(--koska-white);
        transform: translateY(-2px);
}

.koska-custom-orders__cta-arrow {
        flex: 0 0 auto;
        font-size: 1.3rem;
        line-height: 1;
        transition: transform 180ms ease;
}

.koska-custom-orders__cta:hover .koska-custom-orders__cta-arrow,
.koska-custom-orders__cta:focus-visible .koska-custom-orders__cta-arrow {
        transform: translateX(0.2rem);
}

.koska-custom-orders__media {
        position: relative;
        grid-column: 5 / -1;
        min-width: 0;
        padding: 0 0 3rem clamp(3rem, 6vw, 6rem);
}

.koska-custom-orders__media-main,
.koska-custom-orders__media-detail {
        margin: 0;
}

.koska-custom-orders__media-main {
        position: relative;
        overflow: hidden;
        aspect-ratio: 16 / 10;
        background: var(--koska-walnut);
}

.koska-custom-orders__media-main::after {
        position: absolute;
        inset: 0;
        border: 1px solid rgba(255, 253, 252, 0.12);
        pointer-events: none;
        content: "";
}

.koska-custom-orders__media-main img,
.koska-custom-orders__media-detail img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
}

.koska-custom-orders__media-main img {
        transition: transform 800ms cubic-bezier(0.2, 0.65, 0.3, 1);
}

.koska-custom-orders__media-main:hover img {
        transform: scale(1.025);
}

.koska-custom-orders__media-main figcaption {
        position: absolute;
        right: 1.25rem;
        bottom: 1.1rem;
        left: clamp(8rem, 28%, 16rem);
        z-index: 2;
        color: rgba(255, 253, 252, 0.78);
        font-size: 0.68rem;
        letter-spacing: 0.08em;
        line-height: 1.5;
        text-align: right;
        text-transform: uppercase;
}

.koska-custom-orders__media-detail {
        position: absolute;
        bottom: 0;
        left: 0;
        width: clamp(9rem, 24%, 14rem);
        aspect-ratio: 0.8;
        overflow: hidden;
        border: 0.55rem solid var(--koska-espresso);
        background: var(--koska-walnut);
        box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.24);
}

.koska-custom-orders__steps {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: clamp(2rem, 5vw, 6rem);
        margin: clamp(4.5rem, 7vw, 7rem) 0 0;
        border-top: 1px solid rgba(238, 230, 220, 0.2);
        padding: 2rem 0 0;
        list-style: none;
}

.koska-custom-orders__step {
        min-width: 0;
        margin: 0;
        padding: 0;
}

.koska-custom-orders__step + .koska-custom-orders__step {
        border: 0;
}

.koska-custom-orders__step-top {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        min-height: 4rem;
        margin-bottom: 1rem;
}

.koska-custom-orders__number {
        color: var(--koska-taupe);
        font-family: var(--koska-font-editorial);
        font-size: clamp(3rem, 4vw, 4.5rem);
        font-weight: 500;
        letter-spacing: -0.04em;
        line-height: 0.82;
}

.koska-custom-orders__icon {
        width: 2.25rem;
        height: 2.25rem;
        fill: none;
        stroke: rgba(238, 230, 220, 0.42);
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 1.2;
}

.koska-custom-orders__step-title {
        margin: 0;
        color: var(--koska-cream);
        font-size: clamp(1.45rem, 2vw, 1.9rem);
        font-weight: 500;
        letter-spacing: -0.02em;
        line-height: 1.08;
}

.koska-custom-orders__step-text {
        max-width: 22rem;
        margin: 0.85rem 0 0;
        color: rgba(238, 230, 220, 0.6);
        font-size: 0.82rem;
        line-height: 1.75;
}

@media (max-width: 1100px) {
        .koska-home-hero {
                min-height: 42rem !important;
        }

        .koska-home-hero__title {
                font-size: clamp(4rem, 9vw, 6.5rem);
        }

        .koska-custom-orders__intro {
                grid-column: 1 / 6;
        }

        .koska-custom-orders__media {
                grid-column: 6 / -1;
                padding-left: 3rem;
        }

        .koska-custom-orders__media-main {
                aspect-ratio: 4 / 3;
        }
}

@media (max-width: 850px) {
        .koska-home-hero .wp-block-cover__background {
                background:
                        linear-gradient(
                                90deg,
                                rgba(24, 18, 14, 0.78) 0%,
                                rgba(24, 18, 14, 0.46) 60%,
                                rgba(24, 18, 14, 0.12) 100%
                        ),
                        linear-gradient(
                                0deg,
                                rgba(24, 18, 14, 0.44) 0%,
                                transparent 55%
                        ) !important;
        }

        .koska-custom-orders__inner {
                display: block;
        }

        .koska-custom-orders__intro {
                max-width: 40rem;
                padding-top: 0;
        }

        .koska-custom-orders__media {
                margin-top: 4rem;
                padding-left: clamp(2.5rem, 10vw, 5rem);
        }

        .koska-custom-orders__media-main {
                aspect-ratio: 16 / 10;
        }

        .koska-custom-orders__steps {
                margin-top: 5rem;
        }
}

@media (max-width: 700px) {
        .koska-home-hero {
                min-height: 36rem !important;
        }

        .koska-home-hero .wp-block-cover__image-background {
                object-position: 62% center;
        }

        .koska-home-hero .wp-block-cover__background {
                background:
                        linear-gradient(
                                0deg,
                                rgba(24, 18, 14, 0.82) 0%,
                                rgba(24, 18, 14, 0.42) 64%,
                                rgba(24, 18, 14, 0.16) 100%
                        ) !important;
        }

        .koska-home-hero__inner {
                align-items: flex-end;
                padding: 3.25rem 1rem;
        }

        .koska-home-hero__content {
                border-left: 0;
                padding-left: 0;
        }

        .koska-home-hero__eyebrow {
                max-width: 24rem;
                margin-bottom: 1rem;
                font-size: 0.64rem;
        }

        .koska-home-hero__title {
                max-width: 10ch;
                font-size: clamp(3rem, 14vw, 4.2rem);
                line-height: 0.86;
        }

        .koska-home-hero__lead {
                margin-top: 1.4rem;
                font-size: 0.9rem;
                line-height: 1.65;
        }

        .koska-home-hero__actions.wp-block-buttons {
                display: grid !important;
                grid-template-columns: minmax(0, 1fr);
                gap: 0.75rem;
                width: min(100%, 22rem);
                margin-top: 1.6rem;
        }

        .koska-home-hero__actions .wp-block-button {
                display: block;
                width: 100%;
                margin: 0 !important;
        }

        .koska-home-hero__actions .wp-block-button__link {
                box-sizing: border-box;
                width: 100%;
                text-align: center;
        }

        .koska-custom-orders {
                padding: 4.75rem 1rem 5rem;
        }

        .koska-custom-orders__title {
                max-width: none;
                font-size: clamp(3.1rem, 13.5vw, 4.2rem);
                line-height: 0.92;
        }

        .koska-custom-orders__title-line {
                display: block;
        }

        .koska-custom-orders__title-line:first-child {
                white-space: nowrap;
        }

        .koska-custom-orders__title-line + .koska-custom-orders__title-line {
                margin-top: 0.08em;
        }

        .koska-custom-orders__lead {
                margin-top: 1.5rem;
                font-size: 0.9rem;
        }

        .koska-custom-orders__cta {
                width: 100%;
                max-width: 23rem;
                margin-top: 2rem;
        }

        .koska-custom-orders__media {
                margin-top: 3rem;
                padding: 0 0 3.5rem;
        }

        .koska-custom-orders__media-main {
                aspect-ratio: 4 / 5;
        }

        .koska-custom-orders__media-main img {
                object-position: 57% center;
        }

        .koska-custom-orders__media-main figcaption {
                right: 1rem;
                bottom: 1rem;
                left: 40%;
                font-size: 0.6rem;
        }

        .koska-custom-orders__media-detail {
                right: 0.65rem;
                left: auto;
                width: 34%;
                border-width: 0.4rem;
        }

        .koska-custom-orders__steps {
                display: block;
                margin-top: 3.75rem;
                padding-top: 0.5rem;
        }

        .koska-custom-orders__step {
                display: grid;
                grid-template-columns: 4rem minmax(0, 1fr);
                column-gap: 1.25rem;
                padding: 1.5rem 0;
        }

        .koska-custom-orders__step + .koska-custom-orders__step {
                border-top: 1px solid rgba(238, 230, 220, 0.16);
        }

        .koska-custom-orders__step-top {
                grid-row: 1 / 3;
                grid-column: 1;
                display: block;
                min-height: 0;
                margin: 0;
        }

        .koska-custom-orders__number {
                font-size: 3rem;
        }

        .koska-custom-orders__icon {
                display: block;
                width: 1.8rem;
                height: 1.8rem;
                margin-top: 1rem;
        }

        .koska-custom-orders__step-title {
                grid-column: 2;
                font-size: 1.5rem;
        }

        .koska-custom-orders__step-text {
                grid-column: 2;
                margin-top: 0.65rem;
        }
}

@media (prefers-reduced-motion: reduce) {
        .koska-home-hero .wp-block-cover__image-background,
        .koska-custom-orders__media-main img,
        .koska-custom-orders__cta,
        .koska-custom-orders__cta-arrow {
                transition: none;
        }

        .koska-custom-orders__media-main:hover img,
        .koska-custom-orders__cta:hover,
        .koska-custom-orders__cta:focus-visible,
        .koska-custom-orders__cta:hover .koska-custom-orders__cta-arrow,
        .koska-custom-orders__cta:focus-visible .koska-custom-orders__cta-arrow {
                transform: none;
        }
}

/* ==========================================================
   Realizacje — portfolio i pojedyncza realizacja
   ========================================================== */

.koska-realizations-archive {
        position: relative;
        margin: 0;
        overflow: hidden;
        background: var(--koska-ivory);
}

.koska-realizations-archive__intro {
        position: relative;
        max-width: none !important;
        margin: 0 !important;
        background:
                radial-gradient(circle at 78% 18%, rgba(168, 115, 82, 0.18), transparent 27rem),
                var(--koska-espresso);
        color: var(--koska-cream);
        padding:
                clamp(5rem, 8vw, 8rem)
                max(1.5rem, calc((100vw - var(--koska-content-wide)) / 2))
                clamp(8rem, 13vw, 12rem);
}

.koska-realizations-archive__intro::after {
        position: absolute;
        right: max(1.5rem, calc((100vw - var(--koska-content-wide)) / 2));
        bottom: clamp(4rem, 7vw, 6rem);
        width: clamp(5rem, 10vw, 9rem);
        height: 1px;
        background: rgba(238, 230, 220, 0.34);
        content: "";
}

.koska-realizations-archive__eyebrow,
.koska-realizations-empty__eyebrow {
        margin: 0 0 1.1rem;
        color: var(--koska-taupe);
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.16em;
        line-height: 1.3;
        text-transform: uppercase;
}

.koska-realizations-archive__title {
        max-width: 12ch;
        margin: 0;
        color: var(--koska-cream);
        font-size: clamp(4rem, 9vw, 8rem);
        font-weight: 500;
        letter-spacing: -0.045em;
        line-height: 0.84;
}

.koska-realizations-archive__lead {
        max-width: 43rem;
        margin: clamp(2rem, 4vw, 3.25rem) 0 0;
        color: rgba(238, 230, 220, 0.72);
        font-size: clamp(1rem, 1.5vw, 1.15rem);
        line-height: 1.8;
}

.koska-realizations-query {
        position: relative;
        z-index: 2;
        box-sizing: border-box;
        width: 100%;
        max-width: var(--koska-content-wide) !important;
        margin-top: clamp(-5.5rem, -6vw, -3.5rem) !important;
        margin-bottom: 0 !important;
        padding: 0 1.5rem clamp(6rem, 10vw, 9rem);
}

.koska-realizations-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: clamp(3rem, 6vw, 6rem) clamp(1.5rem, 4vw, 4rem);
        margin: 0;
        padding: 0;
        list-style: none;
}

.koska-realizations-grid > li {
        min-width: 0;
        margin: 0;
}

.koska-realization-card {
        height: 100%;
        margin: 0;
}

.koska-realization-card__media {
        position: relative;
        min-height: 18rem;
        margin: 0;
        overflow: hidden;
        border-radius: var(--koska-radius-medium);
        background:
                linear-gradient(135deg, rgba(168, 115, 82, 0.22), rgba(42, 27, 18, 0.08)),
                var(--koska-cream);
}

.koska-realization-card__media::after {
        position: absolute;
        inset: 0;
        border: 1px solid rgba(42, 27, 18, 0.08);
        border-radius: inherit;
        pointer-events: none;
        content: "";
}

.koska-realization-card__image,
.koska-realization-card__image a,
.koska-realization-card__image img {
        width: 100%;
        height: 100%;
}

.koska-realization-card__image {
        margin: 0;
}

.koska-realization-card__image img {
        display: block;
        object-fit: cover;
        transition: transform 500ms ease;
}

.koska-realization-card:hover .koska-realization-card__image img {
        transform: scale(1.025);
}

.koska-realization-card__content {
        margin: 0;
        padding-top: 1.5rem;
}

.koska-realizations-grid > li:first-child {
        grid-column: 1 / -1;
}

.koska-realizations-grid > li:first-child .koska-realization-card__media {
        min-height: clamp(24rem, 48vw, 42rem);
}

.koska-realizations-grid > li:first-child .koska-realization-card__image {
        aspect-ratio: 16 / 7 !important;
}

.koska-realization-card__terms {
        margin: 0 0 0.7rem;
        color: var(--koska-clay-dark);
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.13em;
        line-height: 1.4;
        text-transform: uppercase;
}

.koska-realization-card__terms a {
        color: inherit;
        text-decoration: none;
}

.koska-realization-card__terms a:hover,
.koska-realization-card__terms a:focus-visible {
        color: var(--koska-espresso);
}

.koska-realization-card__title {
        max-width: 18ch;
        margin: 0;
        font-size: clamp(2rem, 3.3vw, 3.25rem);
        font-weight: 500;
        letter-spacing: -0.035em;
        line-height: 0.98;
}

.koska-realizations-grid > li:first-child .koska-realization-card__title {
        max-width: 20ch;
        font-size: clamp(2.75rem, 5vw, 4.75rem);
}

.koska-realization-card__title a {
        color: var(--koska-ink);
        text-decoration: none;
}

.koska-realization-card__title a:hover,
.koska-realization-card__title a:focus-visible {
        color: var(--koska-clay-dark);
}

.koska-realization-card__excerpt {
        max-width: 42rem;
        margin: 1rem 0 0;
        color: var(--koska-muted);
        font-size: 0.94rem;
        line-height: 1.75;
}

.koska-realization-card__excerpt .wp-block-post-excerpt__excerpt {
        margin: 0;
}

.koska-realization-card__excerpt .wp-block-post-excerpt__more-text {
        margin: 1.2rem 0 0;
}

.koska-realization-card__excerpt .wp-block-post-excerpt__more-link {
        display: inline-flex;
        gap: 0.65rem;
        align-items: center;
        color: var(--koska-ink);
        font-size: 0.78rem;
        font-weight: 700;
        letter-spacing: 0.08em;
        line-height: 1.3;
        text-decoration: none;
        text-transform: uppercase;
}

.koska-realization-card__excerpt .wp-block-post-excerpt__more-link::after {
        font-size: 1rem;
        font-weight: 400;
        line-height: 1;
        content: "→";
        transition: transform 180ms ease;
}

.koska-realization-card__excerpt .wp-block-post-excerpt__more-link:hover,
.koska-realization-card__excerpt .wp-block-post-excerpt__more-link:focus-visible {
        color: var(--koska-clay-dark);
}

.koska-realization-card__excerpt .wp-block-post-excerpt__more-link:hover::after,
.koska-realization-card__excerpt .wp-block-post-excerpt__more-link:focus-visible::after {
        transform: translateX(0.2rem);
}

.koska-realizations-empty {
        box-sizing: border-box;
        width: 100%;
        max-width: none !important;
        margin: 0;
        border: 1px solid rgba(238, 230, 220, 0.2);
        border-radius: var(--koska-radius-medium);
        background:
                radial-gradient(circle at 82% 20%, rgba(168, 115, 82, 0.2), transparent 22rem),
                var(--koska-espresso);
        color: var(--koska-cream);
        padding: clamp(3rem, 7vw, 6rem);
}

.koska-realizations-empty__title {
        max-width: 15ch;
        margin: 0;
        color: var(--koska-cream);
        font-size: clamp(2.75rem, 6vw, 5.5rem);
        font-weight: 500;
        letter-spacing: -0.04em;
        line-height: 0.94;
}

.koska-realizations-empty__text {
        max-width: 39rem;
        margin: 1.75rem 0 0;
        color: rgba(238, 230, 220, 0.7);
        font-size: 0.98rem;
        line-height: 1.8;
}

.koska-realizations-empty__actions {
        margin-top: 2rem;
}

.koska-realizations-empty__actions .wp-block-button__link {
        display: inline-flex;
        align-items: center;
        min-height: 3.25rem;
}

.koska-realizations-pagination {
        gap: 1rem;
        margin-top: clamp(4rem, 7vw, 6rem);
        border-top: 1px solid var(--koska-line);
        padding-top: 1.5rem;
        color: var(--koska-muted);
        font-size: 0.8rem;
        font-weight: 700;
        letter-spacing: 0.05em;
        text-transform: uppercase;
}

.koska-realizations-pagination a {
        color: var(--koska-ink);
        text-decoration: none;
}

.koska-realizations-pagination a:hover,
.koska-realizations-pagination a:focus-visible,
.koska-realizations-pagination .current {
        color: var(--koska-clay-dark);
}

.koska-realizations-pagination .wp-block-query-pagination-numbers {
        display: flex;
        gap: 0.9rem;
        align-items: center;
        margin: 0;
}

.koska-realization-single {
        position: relative;
        margin: 0;
        overflow: hidden;
        background: var(--koska-ivory);
}

.koska-realization-single__hero {
        box-sizing: border-box;
        width: 100%;
        max-width: none !important;
        margin: 0 !important;
        background:
                radial-gradient(circle at 78% 20%, rgba(168, 115, 82, 0.18), transparent 28rem),
                var(--koska-espresso);
        color: var(--koska-cream);
        padding:
                clamp(3rem, 6vw, 5rem)
                max(1.5rem, calc((100vw - var(--koska-content-wide)) / 2))
                clamp(7rem, 12vw, 11rem);
}

.koska-realization-single__back {
        margin: 0 0 clamp(3rem, 6vw, 5rem);
}

.koska-realization-single__back a,
.koska-realization-single__footer-link a {
        display: inline-flex;
        align-items: center;
        color: inherit;
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.08em;
        line-height: 1.4;
        text-decoration: none;
        text-transform: uppercase;
}

.koska-realization-single__back a {
        color: rgba(238, 230, 220, 0.7);
}

.koska-realization-single__back a:hover,
.koska-realization-single__back a:focus-visible {
        color: var(--koska-white);
}

.koska-realization-single__terms {
        margin: 0 0 1rem;
        color: var(--koska-taupe);
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.16em;
        line-height: 1.4;
        text-transform: uppercase;
}

.koska-realization-single__terms a {
        color: inherit;
        text-decoration: none;
}

.koska-realization-single__terms a:hover,
.koska-realization-single__terms a:focus-visible {
        color: var(--koska-white);
}

.koska-realization-single__title {
        max-width: 15ch;
        margin: 0;
        color: var(--koska-cream);
        font-size: clamp(3.75rem, 8vw, 7.5rem);
        font-weight: 500;
        letter-spacing: -0.045em;
        line-height: 0.86;
}

.koska-realization-single__lead {
        max-width: 46rem;
        margin: clamp(2rem, 4vw, 3rem) 0 0;
        color: rgba(238, 230, 220, 0.72);
        font-size: clamp(1rem, 1.6vw, 1.2rem);
        line-height: 1.8;
}

.koska-realization-single__lead .wp-block-post-excerpt__excerpt {
        margin: 0;
}

.koska-realization-single__lead .wp-block-post-excerpt__more-text {
        display: none;
}

.koska-realization-single__featured-image {
        position: relative;
        z-index: 2;
        box-sizing: border-box;
        width: calc(100% - 3rem);
        max-width: var(--koska-content-wide) !important;
        margin: clamp(-5.5rem, -6vw, -3.5rem) auto 0 !important;
        overflow: hidden;
        border-radius: var(--koska-radius-medium);
        background: var(--koska-cream);
        box-shadow: var(--koska-shadow-soft);
}

.koska-realization-single__featured-image img {
        display: block;
        width: 100%;
        object-fit: cover;
}

.koska-realization-single__body {
        box-sizing: border-box;
        width: 100%;
        max-width: var(--koska-content-wide) !important;
        margin: 0 auto !important;
        padding:
                clamp(4rem, 8vw, 7rem)
                1.5rem
                clamp(6rem, 10vw, 9rem);
}

.koska-realization-single__content {
        margin: 0;
}

.koska-realization-single__content > *:not(.alignwide):not(.alignfull) {
        max-width: 48rem;
        margin-right: auto;
        margin-left: auto;
}

.koska-realization-single__content > * + * {
        margin-top: 1.5rem;
}

.koska-realization-single__content h2,
.koska-realization-single__content h3 {
        margin-top: clamp(3rem, 6vw, 5rem);
        line-height: 1;
}

.koska-realization-single__content h2 {
        font-size: clamp(2.5rem, 5vw, 4.25rem);
}

.koska-realization-single__content h3 {
        font-size: clamp(2rem, 3.5vw, 3rem);
}

.koska-realization-single__content p,
.koska-realization-single__content li {
        color: var(--koska-muted);
        line-height: 1.85;
}

.koska-realization-single__content .wp-block-image,
.koska-realization-single__content .wp-block-gallery {
        margin-top: clamp(2.5rem, 6vw, 5rem);
        margin-bottom: clamp(2.5rem, 6vw, 5rem);
}

.koska-realization-single__content img {
        border-radius: var(--koska-radius-medium);
}

.koska-realization-single__content blockquote {
        border-left: 2px solid var(--koska-clay);
        padding-left: clamp(1.5rem, 4vw, 3rem);
}

.koska-realization-single__content blockquote p {
        color: var(--koska-ink);
        font-family: var(--koska-font-editorial);
        font-size: clamp(1.75rem, 3vw, 2.75rem);
        line-height: 1.1;
}

.koska-realization-single__footer-link {
        max-width: 48rem;
        margin: clamp(4rem, 8vw, 7rem) auto 0;
        border-top: 1px solid var(--koska-line);
        padding-top: 1.5rem;
        color: var(--koska-ink);
}

.koska-realization-single__footer-link a:hover,
.koska-realization-single__footer-link a:focus-visible {
        color: var(--koska-clay-dark);
}

/* Tablet — realizacje */
@media (max-width: 1100px) {
        .koska-realizations-archive__intro,
        .koska-realization-single__hero {
                padding-right: 2rem;
                padding-left: 2rem;
        }

        .koska-realizations-query {
                padding-right: 2rem;
                padding-left: 2rem;
        }

        .koska-realizations-grid {
                gap: 4.5rem 2rem;
        }

        .koska-realization-card__media {
                min-height: 16rem;
        }

        .koska-realization-single__body {
                padding-right: 2rem;
                padding-left: 2rem;
        }
}

/* Telefon — realizacje */
@media (max-width: 700px) {
        .koska-realizations-archive__intro {
                padding:
                        4.5rem
                        1rem
                        7.5rem;
        }

        .koska-realizations-archive__intro::after {
                right: 1rem;
                bottom: 3.5rem;
        }

        .koska-realizations-archive__title {
                font-size: clamp(3.5rem, 19vw, 5.5rem);
                line-height: 0.88;
        }

        .koska-realizations-archive__lead {
                margin-top: 1.75rem;
                font-size: 0.95rem;
                line-height: 1.75;
        }

        .koska-realizations-query {
                margin-top: -3.5rem !important;
                padding:
                        0
                        1rem
                        5rem;
        }

        .koska-realizations-grid {
                grid-template-columns: minmax(0, 1fr);
                gap: 3.75rem;
        }

        .koska-realizations-grid > li:first-child {
                grid-column: auto;
        }

        .koska-realization-card__media,
        .koska-realizations-grid > li:first-child .koska-realization-card__media {
                min-height: 15rem;
        }

        .koska-realizations-grid > li:first-child .koska-realization-card__image {
                aspect-ratio: 4 / 3 !important;
        }

        .koska-realization-card__content {
                padding-top: 1.25rem;
        }

        .koska-realization-card__title,
        .koska-realizations-grid > li:first-child .koska-realization-card__title {
                font-size: clamp(2.25rem, 11vw, 3.25rem);
        }

        .koska-realizations-empty {
                padding: 2.5rem 1.5rem;
        }

        .koska-realizations-empty__title {
                font-size: clamp(2.6rem, 13vw, 4rem);
        }

        .koska-realizations-pagination {
                align-items: flex-start;
                flex-direction: column;
        }

        .koska-realization-single__hero {
                padding:
                        2.5rem
                        1rem
                        7rem;
        }

        .koska-realization-single__back {
                margin-bottom: 3rem;
        }

        .koska-realization-single__title {
                font-size: clamp(3.4rem, 17vw, 5rem);
                line-height: 0.9;
        }

        .koska-realization-single__lead {
                margin-top: 1.75rem;
                font-size: 0.95rem;
                line-height: 1.75;
        }

        .koska-realization-single__featured-image {
                width: calc(100% - 2rem);
                margin-top: -3.5rem !important;
        }

        .koska-realization-single__body {
                padding:
                        4rem
                        1rem
                        5rem;
        }

        .koska-realization-single__content h2 {
                font-size: clamp(2.4rem, 12vw, 3.5rem);
        }

        .koska-realization-single__content h3 {
                font-size: clamp(2rem, 10vw, 2.75rem);
        }
}

@media (prefers-reduced-motion: reduce) {
        .koska-realization-card__image img,
        .koska-realization-card__excerpt .wp-block-post-excerpt__more-link::after {
                transition: none;
        }

        .koska-realization-card:hover .koska-realization-card__image img {
                transform: none;
        }
}

/* Pojedyncza realizacja bez zdjęcia wyróżniającego */
.koska-realization-single:not(:has(.koska-realization-single__featured-image)) .koska-realization-single__hero {
        padding-bottom: clamp(4.5rem, 7vw, 6rem);
}

.koska-realization-single:not(:has(.koska-realization-single__featured-image)) .koska-realization-single__body {
        padding-top: clamp(3.5rem, 6vw, 5rem);
}

@media (max-width: 700px) {
        .koska-realization-single:not(:has(.koska-realization-single__featured-image)) .koska-realization-single__hero {
                padding-bottom: 4.5rem;
        }

        .koska-realization-single:not(:has(.koska-realization-single__featured-image)) .koska-realization-single__body {
                padding-top: 3.5rem;
        }
}

/* ==========================================================
   Strona główna — wybrane realizacje
   ========================================================== */

.koska-home-featured-realizations {
	margin: 0;
	background: var(--koska-ivory);
	color: var(--koska-ink);
	padding: clamp(5rem, 9vw, 9rem) 1.5rem;
}

.koska-home-featured-realizations__inner {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--koska-content-wide);
	margin: 0 auto;
}

.koska-home-featured-realizations__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 2rem;
	align-items: end;
	margin-bottom: clamp(2.75rem, 5vw, 4.5rem);
	border-bottom: 1px solid var(--koska-line);
	padding-bottom: clamp(1.75rem, 3vw, 2.5rem);
}

.koska-home-featured-realizations__intro {
	max-width: 48rem;
}

.koska-home-featured-realizations__eyebrow {
	margin: 0 0 1rem;
	color: var(--koska-clay-dark);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1.3;
	text-transform: uppercase;
}

.koska-home-featured-realizations__title {
	margin: 0;
	color: var(--koska-ink);
	font-size: clamp(3.25rem, 7vw, 6.5rem);
	font-weight: 500;
	letter-spacing: -0.045em;
	line-height: 0.88;
}

.koska-home-featured-realizations__description {
	max-width: 42rem;
	margin: 1.5rem 0 0;
	color: var(--koska-muted);
	font-size: clamp(0.95rem, 1.4vw, 1.1rem);
	line-height: 1.8;
}

.koska-home-featured-realizations__all-link {
	display: inline-flex;
	gap: 0.75rem;
	align-items: center;
	justify-content: center;
	min-height: 3.25rem;
	border: 1px solid var(--koska-ink);
	border-radius: var(--koska-radius-small);
	padding: 0.75rem 1.25rem;
	color: var(--koska-ink);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	line-height: 1.3;
	text-decoration: none;
	text-transform: uppercase;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease;
}

.koska-home-featured-realizations__all-link span:last-child {
	font-size: 1rem;
	font-weight: 400;
	transition: transform 180ms ease;
}

.koska-home-featured-realizations__all-link:hover,
.koska-home-featured-realizations__all-link:focus-visible {
	border-color: var(--koska-clay-dark);
	background: var(--koska-clay-dark);
	color: var(--koska-white);
}

.koska-home-featured-realizations__all-link:hover span:last-child,
.koska-home-featured-realizations__all-link:focus-visible span:last-child {
	transform: translateX(0.2rem);
}

.koska-home-featured-realizations__grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(2.5rem, 5vw, 5rem) clamp(1.5rem, 3vw, 3rem);
	align-items: start;
}

.koska-home-realization-card {
	min-width: 0;
	margin: 0;
}

.koska-home-realization-card:first-child {
	grid-column: 1 / 8;
	grid-row: 1 / 3;
}

.koska-home-realization-card:nth-child(2),
.koska-home-realization-card:nth-child(3) {
	grid-column: 8 / -1;
}

.koska-home-realization-card:nth-child(2) {
	grid-row: 1;
}

.koska-home-realization-card:nth-child(3) {
	grid-row: 2;
}

.koska-home-realization-card:only-child {
	grid-column: 1 / -1;
	grid-row: auto;
}

.koska-home-realization-card:nth-last-child(2):first-child {
	grid-column: 1 / 8;
	grid-row: auto;
}

.koska-home-realization-card:nth-last-child(2):first-child + .koska-home-realization-card {
	grid-column: 8 / -1;
	grid-row: auto;
}

.koska-home-realization-card__media {
	position: relative;
	display: block;
	min-height: 18rem;
	overflow: hidden;
	border-radius: var(--koska-radius-medium);
	background:
		linear-gradient(135deg, rgba(168, 115, 82, 0.25), rgba(42, 27, 18, 0.08)),
		var(--koska-cream);
	color: var(--koska-white);
	text-decoration: none;
}

.koska-home-realization-card:first-child .koska-home-realization-card__media {
	min-height: clamp(30rem, 48vw, 44rem);
}

.koska-home-realization-card:only-child .koska-home-realization-card__media {
	min-height: clamp(28rem, 48vw, 42rem);
}

.koska-home-realization-card__media::after {
	position: absolute;
	inset: 0;
	z-index: 3;
	border: 1px solid rgba(42, 27, 18, 0.1);
	border-radius: inherit;
	pointer-events: none;
	content: "";
}

.koska-home-realization-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.koska-home-realization-card__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(
			180deg,
			rgba(28, 24, 21, 0.02) 45%,
			rgba(28, 24, 21, 0.34) 100%
		);
}

.koska-home-realization-card__arrow {
	position: absolute;
	right: 1.25rem;
	bottom: 1.25rem;
	z-index: 2;
	display: grid;
	width: 3rem;
	height: 3rem;
	border: 1px solid rgba(255, 253, 252, 0.55);
	border-radius: 50%;
	background: rgba(28, 24, 21, 0.18);
	place-items: center;
	color: var(--koska-white);
	font-size: 1.2rem;
	line-height: 1;
	transition:
		background-color 180ms ease,
		transform 180ms ease;
}

.koska-home-realization-card__media:hover .koska-home-realization-card__image,
.koska-home-realization-card__media:focus-visible .koska-home-realization-card__image {
	transform: scale(1.025);
}

.koska-home-realization-card__media:hover .koska-home-realization-card__arrow,
.koska-home-realization-card__media:focus-visible .koska-home-realization-card__arrow {
	background: var(--koska-clay-dark);
	transform: translateX(0.2rem);
}

.koska-home-realization-card--fallback .koska-home-realization-card__media::before {
	position: absolute;
	top: 50%;
	left: 50%;
	width: min(55%, 15rem);
	aspect-ratio: 1;
	border: 1px solid rgba(104, 71, 51, 0.22);
	border-radius: 50%;
	box-shadow:
		0 0 0 2rem rgba(168, 115, 82, 0.06),
		0 0 0 4rem rgba(104, 71, 51, 0.04);
	content: "";
	transform: translate(-50%, -50%);
}

.koska-home-realization-card--fallback .koska-home-realization-card__overlay {
	background:
		linear-gradient(135deg, rgba(255, 253, 252, 0.05), rgba(42, 27, 18, 0.14)),
		repeating-linear-gradient(
			125deg,
			transparent 0,
			transparent 2.5rem,
			rgba(104, 71, 51, 0.045) 2.5rem,
			rgba(104, 71, 51, 0.045) 2.56rem
		);
}

.koska-home-realization-card__content {
	padding-top: 1.5rem;
}

.koska-home-realization-card__terms {
	margin: 0 0 0.7rem;
	color: var(--koska-clay-dark);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.13em;
	line-height: 1.4;
	text-transform: uppercase;
}

.koska-home-realization-card__title {
	max-width: 18ch;
	margin: 0;
	font-size: clamp(2rem, 3.2vw, 3.15rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 0.98;
}

.koska-home-realization-card:first-child .koska-home-realization-card__title,
.koska-home-realization-card:only-child .koska-home-realization-card__title {
	max-width: 20ch;
	font-size: clamp(2.75rem, 5vw, 4.5rem);
}

.koska-home-realization-card__title a {
	color: var(--koska-ink);
	text-decoration: none;
}

.koska-home-realization-card__title a:hover,
.koska-home-realization-card__title a:focus-visible {
	color: var(--koska-clay-dark);
}

.koska-home-realization-card__excerpt {
	max-width: 39rem;
	margin: 1rem 0 0;
	color: var(--koska-muted);
	font-size: 0.92rem;
	line-height: 1.75;
}

.koska-home-realization-card__link {
	display: inline-flex;
	gap: 0.65rem;
	align-items: center;
	margin-top: 1.25rem;
	color: var(--koska-ink);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.3;
	text-decoration: none;
	text-transform: uppercase;
}

.koska-home-realization-card__link span:last-child {
	font-size: 1rem;
	font-weight: 400;
	transition: transform 180ms ease;
}

.koska-home-realization-card__link:hover,
.koska-home-realization-card__link:focus-visible {
	color: var(--koska-clay-dark);
}

.koska-home-realization-card__link:hover span:last-child,
.koska-home-realization-card__link:focus-visible span:last-child {
	transform: translateX(0.2rem);
}

/* Tablet — wybrane realizacje */
@media (max-width: 1100px) {
	.koska-home-featured-realizations {
		padding-right: 2rem;
		padding-left: 2rem;
	}

	.koska-home-featured-realizations__header {
		grid-template-columns: minmax(0, 1fr);
		align-items: start;
	}

	.koska-home-featured-realizations__all-link {
		justify-self: start;
	}

	.koska-home-featured-realizations__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 4rem 2rem;
	}

	.koska-home-realization-card:first-child,
	.koska-home-realization-card:only-child,
	.koska-home-realization-card:nth-last-child(2):first-child {
		grid-column: 1 / -1;
		grid-row: auto;
	}

	.koska-home-realization-card:nth-child(2),
	.koska-home-realization-card:nth-child(3),
	.koska-home-realization-card:nth-last-child(2):first-child + .koska-home-realization-card {
		grid-column: auto;
		grid-row: auto;
	}

	.koska-home-realization-card:first-child .koska-home-realization-card__media,
	.koska-home-realization-card:only-child .koska-home-realization-card__media {
		min-height: clamp(25rem, 60vw, 38rem);
	}
}

/* Telefon — wybrane realizacje */
@media (max-width: 700px) {
	.koska-home-featured-realizations {
		padding:
			4.5rem
			1rem
			5rem;
	}

	.koska-home-featured-realizations__header {
		gap: 1.75rem;
		margin-bottom: 3rem;
		padding-bottom: 2rem;
	}

	.koska-home-featured-realizations__title {
		font-size: clamp(3.25rem, 17vw, 5rem);
		line-height: 0.9;
	}

	.koska-home-featured-realizations__description {
		margin-top: 1.25rem;
		font-size: 0.95rem;
		line-height: 1.75;
	}

	.koska-home-featured-realizations__all-link {
		width: 100%;
		box-sizing: border-box;
	}

	.koska-home-featured-realizations__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 3.75rem;
	}

	.koska-home-realization-card:first-child,
	.koska-home-realization-card:nth-child(2),
	.koska-home-realization-card:nth-child(3),
	.koska-home-realization-card:only-child,
	.koska-home-realization-card:nth-last-child(2):first-child,
	.koska-home-realization-card:nth-last-child(2):first-child + .koska-home-realization-card {
		grid-column: auto;
		grid-row: auto;
	}

	.koska-home-realization-card__media,
	.koska-home-realization-card:first-child .koska-home-realization-card__media,
	.koska-home-realization-card:only-child .koska-home-realization-card__media {
		min-height: 17rem;
		aspect-ratio: 4 / 3;
	}

	.koska-home-realization-card__content {
		padding-top: 1.25rem;
	}

	.koska-home-realization-card__title,
	.koska-home-realization-card:first-child .koska-home-realization-card__title,
	.koska-home-realization-card:only-child .koska-home-realization-card__title {
		font-size: clamp(2.25rem, 11vw, 3.25rem);
	}

	.koska-home-realization-card__arrow {
		right: 1rem;
		bottom: 1rem;
		width: 2.75rem;
		height: 2.75rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.koska-home-featured-realizations__all-link,
	.koska-home-featured-realizations__all-link span:last-child,
	.koska-home-realization-card__image,
	.koska-home-realization-card__arrow,
	.koska-home-realization-card__link span:last-child {
		transition: none;
	}

	.koska-home-featured-realizations__all-link:hover span:last-child,
	.koska-home-featured-realizations__all-link:focus-visible span:last-child,
	.koska-home-realization-card__media:hover .koska-home-realization-card__image,
	.koska-home-realization-card__media:focus-visible .koska-home-realization-card__image,
	.koska-home-realization-card__media:hover .koska-home-realization-card__arrow,
	.koska-home-realization-card__media:focus-visible .koska-home-realization-card__arrow,
	.koska-home-realization-card__link:hover span:last-child,
	.koska-home-realization-card__link:focus-visible span:last-child {
		transform: none;
	}
}

/* Aktywna pozycja ręcznie zbudowanej nawigacji. */
.koska-desktop-navigation
	a[aria-current="page"]:not(.koska-desktop-navigation__order)::after {
	position: absolute;
	right: 0;
	bottom: 0.25rem;
	left: 0;
	height: 2px;
	background: var(--koska-clay);
	content: "";
}


@media (max-width: 781px) {
	.koska-mobile-menu__navigation a[aria-current="page"] {
		color: var(--koska-clay-dark);
		font-weight: 700;
	}

	.koska-mobile-menu__navigation
		.koska-mobile-menu__order[aria-current="page"] {
		background: var(--koska-walnut);
		color: var(--koska-white);
	}
}

/* ==========================================================
   Meble na zamówienie — V3
   Kierunek: editorial / premium / fotografia
   ========================================================== */

.koska-custom-orders-page {
	margin: 0 !important;
	padding: 0 !important;
	background: #17120f;
	color: var(--koska-white);
	overflow: hidden;
}

.koska-custom-orders-page > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

.koska-custom-orders-page figure,
.koska-custom-orders-page p,
.koska-custom-orders-page h1,
.koska-custom-orders-page h2,
.koska-custom-orders-page h3,
.koska-custom-orders-page ul,
.koska-custom-orders-page ol {
	margin: 0;
}

.koska-custom-orders-page img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.koska-custom-v3-eyebrow {
	color: #b98a69;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1.2;
	text-transform: uppercase;
}

.koska-custom-v3-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3rem;
	border: 1px solid transparent;
	border-radius: 999px;
	padding: 0.78rem 1.35rem;
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.koska-custom-v3-button--clay {
	border-color: var(--koska-clay);
	background: var(--koska-clay);
	color: var(--koska-white) !important;
}

.koska-custom-v3-button--clay:hover,
.koska-custom-v3-button--clay:focus-visible {
	border-color: var(--koska-clay-dark);
	background: var(--koska-clay-dark);
	color: var(--koska-white) !important;
	transform: translateY(-1px);
}


/* ==========================================================
   01. HERO
   ========================================================== */

.koska-custom-v3-hero {
	position: relative;
	min-height: clamp(42rem, 82svh, 56rem);
	background: #15100d;
	isolation: isolate;
}

.koska-custom-v3-hero__media,
.koska-custom-v3-hero__shade {
	position: absolute;
	inset: 0;
}

.koska-custom-v3-hero__media {
	z-index: -2;
}

.koska-custom-v3-hero__media img {
	object-position: center center;
}

.koska-custom-v3-hero__shade {
	z-index: -1;
	background:
		linear-gradient(
			90deg,
			rgba(18, 13, 10, 0.92) 0%,
			rgba(18, 13, 10, 0.72) 28%,
			rgba(18, 13, 10, 0.22) 58%,
			rgba(18, 13, 10, 0.04) 100%
		),
		linear-gradient(
			0deg,
			rgba(18, 13, 10, 0.38) 0%,
			rgba(18, 13, 10, 0) 48%
		);
}

.koska-custom-v3-hero__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	width: min(44rem, 88vw);
	min-height: inherit;
	padding: clamp(5rem, 9vw, 9rem) 0 clamp(4rem, 7vw, 7rem) max(2rem, 6vw);
}

.koska-custom-v3-hero h1 {
	max-width: 12ch;
	margin-top: 1.15rem;
	color: #f8f1e8;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(3.6rem, 5.6vw, 6.1rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 0.91;
}

.koska-custom-v3-hero__lead {
	max-width: 36rem;
	margin-top: 1.6rem !important;
	color: rgba(255, 249, 242, 0.78);
	font-size: clamp(0.95rem, 1.25vw, 1.1rem);
	line-height: 1.7;
}

.koska-custom-v3-hero .koska-custom-v3-button {
	margin-top: 2rem;
}


/* ==========================================================
   02. PODEJŚCIE
   ========================================================== */

.koska-custom-v3-approach {
	display: grid;
	grid-template-columns: minmax(22rem, 0.82fr) minmax(32rem, 1.18fr);
	min-height: 47rem;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	background: #18120f;
}

.koska-custom-v3-approach__copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(5rem, 8vw, 8rem) clamp(3rem, 6vw, 6.5rem);
}

.koska-custom-v3-approach h2 {
	margin-top: 1.1rem;
	color: #f4ece4;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(3.3rem, 4.7vw, 5.2rem);
	font-weight: 500;
	letter-spacing: -0.03em;
	line-height: 0.94;
}

.koska-custom-v3-approach__lead {
	max-width: 34rem;
	margin-top: 1.8rem !important;
	color: rgba(255, 248, 241, 0.67);
	font-size: 0.95rem;
	line-height: 1.75;
}

.koska-custom-v3-values {
	display: grid;
	gap: 0.8rem;
	margin-top: 2.4rem !important;
	padding: 0;
	list-style: none;
}

.koska-custom-v3-values li {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	color: rgba(255, 248, 241, 0.74);
	font-size: 0.82rem;
}

.koska-custom-v3-values span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.35rem;
	color: #b98a69;
	font-size: 1.05rem;
}

.koska-custom-v3-approach__media {
	min-height: 47rem;
	overflow: hidden;
}

.koska-custom-v3-approach__media img {
	object-position: center center;
}


/* ==========================================================
   03. ZAKRES
   ========================================================== */

.koska-custom-v3-scope {
	padding: clamp(5rem, 7vw, 7rem) max(2rem, 6vw) clamp(6rem, 8vw, 8rem);
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	background:
		linear-gradient(180deg, #1b1511 0%, #15110e 100%);
}

.koska-custom-v3-scope__header {
	max-width: 68rem;
	margin-bottom: 2.7rem;
}

.koska-custom-v3-scope__header h2 {
	margin-top: 0.9rem;
	color: #f5ede5;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(2.9rem, 4.2vw, 4.8rem);
	font-weight: 500;
	letter-spacing: -0.03em;
	line-height: 1;
}

.koska-custom-v3-scope__grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	border-left: 1px solid rgba(255, 255, 255, 0.14);
}

.koska-custom-v3-scope-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 21rem;
	border-right: 1px solid rgba(255, 255, 255, 0.14);
	border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	padding: 1.5rem 1.35rem 1.35rem;
	background: rgba(255, 255, 255, 0.008);
	transition:
		background-color 180ms ease,
		transform 180ms ease;
}

.koska-custom-v3-scope-card:hover {
	background: rgba(255, 255, 255, 0.035);
}

.koska-custom-v3-scope-card__icon {
	width: 3rem;
	height: 3rem;
	color: #b98a69;
}

.koska-custom-v3-scope-card__icon svg {
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.25;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.koska-custom-v3-scope-card h3 {
	margin-top: 1.8rem;
	color: #f4ece5;
	font-family: var(--wp--preset--font-family--interface);
	font-size: 0.96rem;
	font-weight: 600;
	line-height: 1.3;
}

.koska-custom-v3-scope-card p {
	margin-top: 0.75rem !important;
	color: rgba(255, 248, 241, 0.58);
	font-size: 0.76rem;
	line-height: 1.6;
}

.koska-custom-v3-scope-card__arrow {
	margin-top: auto;
	padding-top: 2rem;
	color: #b98a69;
	font-size: 1.45rem;
	font-weight: 300;
	transition: transform 180ms ease;
}

.koska-custom-v3-scope-card:hover .koska-custom-v3-scope-card__arrow {
	transform: translateX(0.3rem);
}


/* ==========================================================
   04. MATERIAŁY — JASNY ROZDZIAŁ
   ========================================================== */

.koska-custom-v3-materials {
	padding: clamp(5rem, 7vw, 7rem) max(2rem, 6vw) clamp(6rem, 8vw, 8rem);
	border-top: 1px solid rgba(28, 24, 21, 0.08);
	background: #f1ebe3;
	color: var(--koska-ink);
}

.koska-custom-v3-materials .koska-custom-v3-eyebrow {
	color: #a36e4f;
}

.koska-custom-v3-materials__header {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.7fr);
	align-items: end;
	gap: clamp(3rem, 7vw, 8rem);
	margin-bottom: 3rem;
}

.koska-custom-v3-materials h2 {
	margin-top: 0.85rem;
	color: #211b17;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(3.1rem, 4.8vw, 5.2rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 0.96;
}

.koska-custom-v3-materials__intro {
	max-width: 34rem;
	color: #655b54;
	font-size: 0.9rem;
	line-height: 1.75;
}

.koska-custom-v3-materials__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.85rem;
}

.koska-custom-v3-material-card figure {
	aspect-ratio: 0.92 / 1;
	overflow: hidden;
	background: #ded5cb;
}

.koska-custom-v3-material-card img {
	transition: transform 450ms cubic-bezier(0.2, 0.75, 0.25, 1);
}

.koska-custom-v3-material-card:hover img {
	transform: scale(1.025);
}

.koska-custom-v3-material-card h3 {
	margin-top: 1.05rem;
	color: #241e1a;
	font-family: var(--wp--preset--font-family--interface);
	font-size: 0.94rem;
	font-weight: 650;
	line-height: 1.35;
}

.koska-custom-v3-material-card p {
	max-width: 95%;
	margin-top: 0.55rem !important;
	color: #72675f;
	font-size: 0.76rem;
	line-height: 1.65;
}


/* ==========================================================
   05. PROCES
   ========================================================== */

.koska-custom-v3-process {
	display: grid;
	grid-template-columns: minmax(24rem, 0.76fr) minmax(36rem, 1.24fr);
	gap: clamp(2rem, 4vw, 4.5rem);
	padding: clamp(5rem, 7vw, 7rem) max(2rem, 6vw);
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	background:
		radial-gradient(circle at 70% 30%, rgba(120, 78, 52, 0.12), transparent 38%),
		#17120f;
}

.koska-custom-v3-process__copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.koska-custom-v3-process h2 {
	margin-top: 0.9rem;
	color: #f5ede5;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(3.2rem, 4.4vw, 4.9rem);
	font-weight: 500;
	letter-spacing: -0.03em;
	line-height: 0.95;
}

.koska-custom-v3-process__steps {
	display: grid;
	gap: 0;
	margin-top: 2.2rem !important;
	padding: 0;
	list-style: none;
}

.koska-custom-v3-process__steps li {
	position: relative;
	display: grid;
	grid-template-columns: 2.8rem minmax(0, 1fr);
	gap: 0.9rem;
	min-height: 4.8rem;
	padding-bottom: 0.9rem;
}

.koska-custom-v3-process__steps li:not(:last-child)::after {
	position: absolute;
	top: 2.3rem;
	bottom: -0.15rem;
	left: 1.15rem;
	width: 1px;
	background: rgba(185, 138, 105, 0.35);
	content: "";
}

.koska-custom-v3-process__steps > li > span {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.3rem;
	height: 2.3rem;
	border: 1px solid rgba(185, 138, 105, 0.55);
	border-radius: 50%;
	background: #17120f;
	color: #d7b49a;
	font-size: 0.68rem;
	font-weight: 700;
}

.koska-custom-v3-process__steps h3 {
	color: #f1e9e1;
	font-family: var(--wp--preset--font-family--interface);
	font-size: 0.9rem;
	font-weight: 650;
	line-height: 1.3;
}

.koska-custom-v3-process__steps p {
	margin-top: 0.3rem !important;
	color: rgba(255, 248, 241, 0.55);
	font-size: 0.74rem;
	line-height: 1.55;
}

.koska-custom-v3-process .koska-custom-v3-button {
	align-self: flex-start;
	margin-top: 1.8rem;
}

.koska-custom-v3-process__gallery {
	display: grid;
	grid-template-rows: minmax(18rem, 1fr) minmax(18rem, 1fr);
	gap: 0.9rem;
	min-height: 45rem;
}

.koska-custom-v3-process__image {
	overflow: hidden;
	background: #241a14;
}

.koska-custom-v3-process__image img {
	transition: transform 600ms cubic-bezier(0.2, 0.75, 0.25, 1);
}

.koska-custom-v3-process__image:hover img {
	transform: scale(1.02);
}

.koska-custom-v3-process__image--planning img {
	object-position: center 48%;
}

.koska-custom-v3-process__image--final img {
	object-position: center center;
}


/* ==========================================================
   06. KONTAKT / FINAŁ
   ========================================================== */

.koska-custom-v3-contact {
	position: relative;
	min-height: clamp(34rem, 60svh, 44rem);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	background: #36271e;
	isolation: isolate;
}

.koska-custom-v3-contact__media,
.koska-custom-v3-contact__shade {
	position: absolute;
	inset: 0;
}

.koska-custom-v3-contact__media {
	z-index: -2;
}

.koska-custom-v3-contact__media img {
	object-position: center center;
}

.koska-custom-v3-contact__shade {
	z-index: -1;
	background:
		linear-gradient(
			90deg,
			rgba(38, 27, 20, 0.9) 0%,
			rgba(38, 27, 20, 0.7) 34%,
			rgba(38, 27, 20, 0.16) 68%,
			rgba(38, 27, 20, 0.04) 100%
		);
}

.koska-custom-v3-contact__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	width: min(46rem, 88vw);
	min-height: inherit;
	padding: clamp(5rem, 8vw, 8rem) 0 clamp(5rem, 8vw, 8rem) max(2rem, 6vw);
}

.koska-custom-v3-contact h2 {
	max-width: 11ch;
	color: #f6eee6;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(3.1rem, 4.6vw, 5rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 0.96;
}

.koska-custom-v3-contact p {
	max-width: 31rem;
	margin-top: 1.35rem !important;
	color: rgba(255, 248, 241, 0.72);
	font-size: 0.92rem;
	line-height: 1.7;
}

.koska-custom-v3-contact .koska-custom-v3-button {
	margin-top: 1.8rem;
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 1180px) {
	.koska-custom-v3-scope__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.koska-custom-v3-scope-card {
		min-height: 18rem;
	}

	.koska-custom-v3-materials__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem 1rem;
	}
}

@media (max-width: 900px) {
	.koska-custom-v3-hero {
		min-height: 46rem;
	}

	.koska-custom-v3-hero__shade {
		background:
			linear-gradient(
				90deg,
				rgba(18, 13, 10, 0.9) 0%,
				rgba(18, 13, 10, 0.58) 58%,
				rgba(18, 13, 10, 0.16) 100%
			);
	}

	.koska-custom-v3-approach {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.koska-custom-v3-approach__copy {
		padding: 5rem max(2rem, 7vw);
	}

	.koska-custom-v3-approach__media {
		min-height: 38rem;
	}

	.koska-custom-v3-materials__header {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.koska-custom-v3-process {
		grid-template-columns: 1fr;
	}

	.koska-custom-v3-process__gallery {
		min-height: 0;
		grid-template-rows: repeat(2, minmax(22rem, 52vw));
	}
}

@media (max-width: 680px) {
	.koska-custom-v3-hero {
		min-height: 42rem;
	}

	.koska-custom-v3-hero__media img {
		object-position: 58% center;
	}

	.koska-custom-v3-hero__shade {
		background:
			linear-gradient(
				0deg,
				rgba(18, 13, 10, 0.96) 0%,
				rgba(18, 13, 10, 0.74) 52%,
				rgba(18, 13, 10, 0.2) 100%
			);
	}

	.koska-custom-v3-hero__content {
		justify-content: flex-end;
		width: auto;
		padding: 4rem 1.4rem;
	}

	.koska-custom-v3-hero h1 {
		font-size: clamp(3rem, 14vw, 4.5rem);
	}

	.koska-custom-v3-approach__copy,
	.koska-custom-v3-scope,
	.koska-custom-v3-materials,
	.koska-custom-v3-process {
		padding-right: 1.4rem;
		padding-left: 1.4rem;
	}

	.koska-custom-v3-approach__media {
		min-height: 30rem;
	}

	.koska-custom-v3-scope__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.koska-custom-v3-scope-card {
		min-height: 16rem;
		padding: 1.2rem 1rem;
	}

	.koska-custom-v3-materials__grid {
		grid-template-columns: 1fr;
	}

	.koska-custom-v3-material-card figure {
		aspect-ratio: 1.1 / 1;
	}

	.koska-custom-v3-process__gallery {
		grid-template-rows: repeat(2, 18rem);
	}

	.koska-custom-v3-contact__media img {
		object-position: 68% center;
	}

	.koska-custom-v3-contact__shade {
		background:
			linear-gradient(
				90deg,
				rgba(38, 27, 20, 0.93) 0%,
				rgba(38, 27, 20, 0.7) 60%,
				rgba(38, 27, 20, 0.24) 100%
			);
	}

	.koska-custom-v3-contact__content {
		width: auto;
		padding: 4rem 1.4rem;
	}
}

@media (max-width: 460px) {
	.koska-custom-v3-scope__grid {
		grid-template-columns: 1fr;
	}

	.koska-custom-v3-scope-card {
		min-height: 13rem;
	}

	.koska-custom-v3-process__steps li {
		grid-template-columns: 2.5rem 1fr;
	}
}



/* ==========================================================
   Intro wejściowe KOSKA
   ========================================================== */

.koska-home-intro {
        position: fixed;
        inset: 0;
        z-index: 100000;
        width: 100%;
        height: 100vh;
        height: 100svh;
        overflow: hidden;
        isolation: isolate;
        background: #171716;
        pointer-events: auto;
        opacity: 1;
        visibility: visible;
        transition:
                opacity 0.38s ease,
                visibility 0s linear 0s;
}

.koska-home-intro::after {
        position: absolute;
        inset: 0;
        z-index: 2;
        background:
                radial-gradient(
                        circle at 50% 48%,
                        rgba(255, 255, 255, 0.02) 0%,
                        rgba(0, 0, 0, 0.06) 42%,
                        rgba(0, 0, 0, 0.28) 100%
                );
        content: "";
        pointer-events: none;
}

.koska-home-intro__panels {
        position: absolute;
        inset: 0;
        z-index: 1;
}

.koska-home-intro__panel {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 50%;
        overflow: hidden;
        will-change: transform;
        transition: transform 1.45s cubic-bezier(0.76, 0, 0.24, 1);
}

.koska-home-intro__panel--left {
        left: 0;
}

.koska-home-intro__panel--right {
        right: 0;
}

.koska-home-intro__panel img {
        position: absolute;
        top: 0;
        display: block;
        width: 100vw;
        max-width: none;
        height: 100%;
        object-fit: cover;
        object-position: center center;
        user-select: none;
        pointer-events: none;
}

.koska-home-intro__panel--left img {
        left: 0;
}

.koska-home-intro__panel--right img {
        right: 0;
}

.koska-home-intro__brand {
        position: absolute;
        inset: 0;
        z-index: 4;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: clamp(1.5rem, 5vw, 5rem);
        pointer-events: none;
        transition:
                opacity 0.72s ease,
                transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);
        will-change: opacity, transform;
}

.koska-home-intro__logo {
        display: block;
        width: clamp(17rem, 31vw, 34rem);
        max-width: 80vw;
        height: auto;
        max-height: 66vh;
        filter:
                brightness(0)
                invert(1)
                drop-shadow(0 0 2rem rgba(0, 0, 0, 0.22));
        opacity: 0.96;
}

.koska-home-intro.is-opening .koska-home-intro__panel--left {
        transform: translate3d(-102%, 0, 0);
}

.koska-home-intro.is-opening .koska-home-intro__panel--right {
        transform: translate3d(102%, 0, 0);
}

.koska-home-intro.is-opening .koska-home-intro__brand {
        opacity: 0;
        transform: scale(1.09);
}

.koska-home-intro.is-done {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition:
                opacity 0.38s ease,
                visibility 0s linear 0.38s;
}

@media (max-width: 700px) {
        .koska-home-intro__logo {
                width: min(76vw, 23rem);
                max-height: 56vh;
        }

        .koska-home-intro__panel img {
                object-position: center center;
        }
}

@media (prefers-reduced-motion: reduce) {
        .koska-home-intro__panel,
        .koska-home-intro__brand,
        .koska-home-intro {
                transition-duration: 0.01ms;
        }
}

/* ==========================================================
   Dwufazowe intro KOSKA — kurtyna odsłaniająca stronę
   ========================================================== */

/*
 * Właściwa strona przez cały czas pozostaje w swoim normalnym
 * layoucie. Fade wykonuje osobna nieruchoma warstwa nad stroną,
 * dzięki czemu header i wystające logo nie są animowane.
 */
.koska-home-reveal-curtain {
        position: fixed;
        inset: 0;
        z-index: 99990;
        background: #171716;
        opacity: 1;
        visibility: visible;
        pointer-events: none;
        will-change: opacity;
}

.koska-home-reveal-curtain.is-revealing {
        opacity: 0;
        transition:
                opacity 2s cubic-bezier(0.22, 1, 0.36, 1);
}

@media (prefers-reduced-motion: reduce) {
        .koska-home-reveal-curtain {
                display: none;
        }
}



/* Intro KOSKA nie może tworzyć WordPress block-gap przed headerem */
.wp-site-blocks > .koska-home-intro {
        margin-block: 0 !important;
}

.wp-site-blocks > .koska-home-intro + .wp-block-template-part {
        margin-block-start: 0 !important;
}
/* ==========================================================
   Sklep WooCommerce — archiwum produktów
   ========================================================== */

.koska-shop-archive {
	margin: 0;
	background: var(--koska-ivory);
	color: var(--koska-espresso);
}

.koska-shop-archive__intro,
.koska-shop-archive__catalog {
	box-sizing: border-box;
	width: min(100% - 3rem, var(--koska-content-wide));
	max-width: var(--koska-content-wide) !important;
	margin-inline: auto !important;
}

.koska-shop-archive__intro {
	padding-top: clamp(2rem, 4vw, 4rem);
	padding-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.koska-shop-archive__intro .woocommerce-breadcrumb {
	margin: 0 0 clamp(2.5rem, 5vw, 4.75rem);
	color: rgba(34, 27, 23, 0.6);
	font-size: 0.78rem;
	line-height: 1.5;
}

.koska-shop-archive__intro .woocommerce-breadcrumb a {
	color: inherit;
	text-decoration: none;
}

.koska-shop-archive__eyebrow,
.koska-shop-empty__eyebrow {
	margin: 0 0 0.9rem;
	color: var(--koska-clay);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1.3;
	text-transform: uppercase;
}

.koska-shop-archive__title {
	max-width: 12ch;
	margin: 0;
	color: var(--koska-espresso);
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3.3rem, 6vw, 6rem);
	font-weight: 500;
	letter-spacing: -0.045em;
	line-height: 0.92;
}

.koska-shop-archive__lead {
	max-width: 45rem;
	margin: clamp(1.5rem, 3vw, 2.25rem) 0 0;
	color: rgba(34, 27, 23, 0.7);
	font-size: clamp(0.95rem, 1.25vw, 1.08rem);
	line-height: 1.75;
}

.koska-shop-archive__term-description {
	max-width: 45rem;
	margin: 1.25rem 0 0;
	color: rgba(34, 27, 23, 0.68);
	line-height: 1.7;
}

.koska-shop-archive__catalog {
	padding-bottom: clamp(5rem, 9vw, 9rem);
}

.koska-shop-archive__toolbar {
	gap: 1.25rem 2rem;
	margin-bottom: clamp(2rem, 4vw, 3rem);
}

.koska-shop-category-nav {
	flex: 1 1 46rem;
	margin: 0 !important;
}

.koska-shop-category-nav__inner {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.koska-shop-category-nav__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.6rem;
	padding: 0.65rem 1.15rem;
	border: 1px solid rgba(62, 46, 36, 0.16);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.32);
	color: var(--koska-espresso);
	font-family: "Cormorant Garamond", serif;
	font-size: 1rem;
	line-height: 1;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.koska-shop-category-nav__link:hover {
	border-color: rgba(62, 46, 36, 0.32);
	transform: translateY(-1px);
}

.koska-shop-category-nav__link.is-active {
	border-color: var(--koska-espresso);
	background: var(--koska-espresso);
	color: var(--koska-cream);
}

.koska-shop-category-nav__link:focus-visible {
	outline: 2px solid var(--koska-clay);
	outline-offset: 3px;
}

.koska-shop-archive__toolbar .wc-block-components-product-sort-select {
	flex: 0 0 auto;
	margin: 0;
}

.koska-shop-archive__toolbar .wc-block-components-product-sort-select__select {
	min-height: 2.75rem;
	padding: 0.55rem 2.75rem 0.55rem 0.9rem;
	border: 1px solid rgba(62, 46, 36, 0.16);
	border-radius: 0;
	background-color: transparent;
	color: var(--koska-espresso);
	font-family: "Manrope", sans-serif;
	font-size: 0.78rem;
}

.koska-shop-products {
	margin: 0 !important;
}

.koska-shop-products .wc-block-product-template {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(1.5rem, 2.8vw, 2.75rem) clamp(1rem, 2vw, 1.75rem) !important;
}

.koska-shop-products .wc-block-product-template > li {
	min-width: 0;
	width: auto !important;
}

.koska-shop-product-card {
	height: 100%;
	margin: 0 !important;
	overflow: visible;
	background: transparent;
}

.koska-shop-product-card__media {
	position: relative;
	overflow: hidden;
	margin: 0 !important;
	background: var(--koska-sand);
	aspect-ratio: 4 / 4.15;
}

.koska-shop-product-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms cubic-bezier(0.2, 0.65, 0.3, 1);
}

.koska-shop-product-card:hover .koska-shop-product-card__media img {
	transform: scale(1.025);
}

.koska-shop-product-card__body {
	margin: 0 !important;
	padding: 1rem 0.15rem 0;
}

.koska-shop-product-card__category {
	margin: 0 0 0.45rem !important;
	color: var(--koska-clay);
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.4;
	text-transform: uppercase;
}

.koska-shop-product-card__category a {
	color: inherit;
	text-decoration: none;
}

.koska-shop-product-card__title {
	margin: 0 !important;
	color: var(--koska-espresso);
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.2rem, 1.6vw, 1.55rem);
	font-weight: 500;
	letter-spacing: -0.02em;
	line-height: 1.15;
}

.koska-shop-product-card__title a {
	color: inherit;
	text-decoration: none;
}

.koska-shop-product-card__price {
	margin: 0.75rem 0 0 !important;
	color: var(--koska-espresso);
	font-size: 0.9rem;
	font-weight: 500;
}

.koska-shop-product-card .wc-block-components-product-sale-badge {
	top: 0.8rem;
	right: 0.8rem;
	border: 0;
	border-radius: 999px;
	background: var(--koska-espresso);
	color: var(--koska-cream);
	font-size: 0.62rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.koska-shop-pagination {
	gap: 0.5rem;
	margin-top: clamp(3rem, 6vw, 5rem);
}

.koska-shop-pagination a,
.koska-shop-pagination .page-numbers {
	color: var(--koska-espresso);
	text-decoration: none;
}

.koska-shop-empty {
	box-sizing: border-box;
	max-width: 54rem !important;
	margin: clamp(2rem, 5vw, 4rem) auto 0 !important;
	padding: clamp(3rem, 7vw, 6rem) clamp(1.5rem, 5vw, 4rem);
	border-top: 1px solid rgba(62, 46, 36, 0.15);
	border-bottom: 1px solid rgba(62, 46, 36, 0.15);
	text-align: center;
}

.koska-shop-empty__title {
	max-width: 16ch;
	margin: 0 auto;
	color: var(--koska-espresso);
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(2.4rem, 5vw, 4.5rem);
	font-weight: 500;
	letter-spacing: -0.04em;
	line-height: 0.98;
}

.koska-shop-empty__text {
	max-width: 40rem;
	margin: 1.5rem auto 0;
	color: rgba(34, 27, 23, 0.7);
	line-height: 1.75;
}

.koska-shop-empty__button {
	margin-top: 1.75rem;
}

.koska-shop-empty__button .wp-block-button__link {
	padding: 0.9rem 1.5rem;
	border-radius: 999px;
	background: var(--koska-clay);
	color: var(--koska-cream);
	font-size: 0.82rem;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		transform 180ms ease;
}

.koska-shop-empty__button .wp-block-button__link:hover {
	background: var(--koska-walnut);
	transform: translateY(-1px);
}

@media (max-width: 1100px) {
	.koska-shop-products .wc-block-product-template {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 760px) {
	.koska-shop-archive__intro,
	.koska-shop-archive__catalog {
		width: min(100% - 2rem, var(--koska-content-wide));
	}

	.koska-shop-archive__intro {
		padding-top: 1.75rem;
		padding-bottom: 2.5rem;
	}

	.koska-shop-archive__intro .woocommerce-breadcrumb {
		margin-bottom: 2rem;
	}

	.koska-shop-archive__title {
		font-size: clamp(3rem, 15vw, 4.6rem);
	}

	.koska-shop-archive__toolbar {
		align-items: stretch !important;
	}

	.koska-shop-category-nav {
		flex-basis: 100%;
		overflow: hidden;
	}

	.koska-shop-category-nav__inner {
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: 0.35rem;
		scrollbar-width: thin;
	}

	.koska-shop-category-nav__link {
		flex: 0 0 auto;
	}

	.koska-shop-archive__toolbar .wc-block-components-product-sort-select {
		width: 100%;
	}

	.koska-shop-archive__toolbar .wc-block-components-product-sort-select__select {
		width: 100%;
	}

	.koska-shop-products .wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 1.5rem 0.75rem !important;
	}

	.koska-shop-product-card__body {
		padding-inline: 0.4rem;
	}
}

@media (max-width: 470px) {
	.koska-shop-products .wc-block-product-template {
		grid-template-columns: 1fr !important;
	}

	.koska-shop-product-card__media {
		aspect-ratio: 4 / 4.35;
	}
}

@media (prefers-reduced-motion: reduce) {
	.koska-shop-category-nav__link,
	.koska-shop-product-card__media img,
	.koska-shop-empty__button .wp-block-button__link {
		transition: none;
	}

	.koska-shop-product-card:hover .koska-shop-product-card__media img,
	.koska-shop-category-nav__link:hover,
	.koska-shop-empty__button .wp-block-button__link:hover {
		transform: none;
	}
}
/* Dopracowanie kompozycji archiwum sklepu. */

.koska-shop-archive__intro > * {
	margin-left: 0 !important;
	margin-right: auto !important;
}

.koska-shop-archive__intro .woocommerce-breadcrumb {
	width: 100%;
}

.koska-shop-archive__eyebrow {
	max-width: 45rem;
}

.koska-shop-archive__title {
	max-width: 10ch;
	font-size: clamp(3.6rem, 5.4vw, 5.4rem);
}

.koska-shop-archive__lead,
.koska-shop-archive__term-description {
	max-width: 43rem;
}

.koska-shop-archive__toolbar {
	padding-bottom: 0.25rem;
	border-bottom: 1px solid rgba(62, 46, 36, 0.11);
}

.koska-shop-archive__toolbar .wc-block-components-product-sort-select {
	flex: 0 0 14rem;
}

.koska-shop-archive__toolbar .wc-block-components-product-sort-select__select {
	width: 100%;
	min-height: 2.65rem;
	padding: 0.55rem 2.5rem 0.55rem 1rem;
	border-color: rgba(62, 46, 36, 0.2);
	background-color: transparent;
	font-size: 0.72rem;
}

.koska-shop-product-card__media {
	aspect-ratio: 4 / 4.35;
}

.koska-shop-product-card__category {
	margin-bottom: 0.5rem !important;
	font-size: 0.58rem;
	letter-spacing: 0.13em;
}

.koska-shop-product-card__title {
	font-size: clamp(1.15rem, 1.45vw, 1.4rem);
	line-height: 1.12;
}

.koska-shop-product-card__price {
	margin-top: 0.65rem !important;
	font-size: 0.84rem;
}

@media (min-width: 761px) {
	.koska-shop-products .wc-block-product-template {
		column-gap: clamp(1.2rem, 2vw, 2rem) !important;
	}
}
/* Sklep WooCommerce — editorial */

.koska-shop-editorial {
	width: 100%;
	margin: clamp(5rem, 10vw, 9rem) 0 0 !important;
}

.koska-shop-ready {
	display: grid;
	grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
	min-height: clamp(28rem, 44vw, 42rem);
	background: var(--koska-espresso);
	color: var(--koska-cream);
}

.koska-shop-ready__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(3rem, 7vw, 7rem);
}

.koska-shop-ready__eyebrow,
.koska-shop-materials__eyebrow {
	margin: 0 0 1rem;
	color: var(--koska-clay);
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.koska-shop-ready__title {
	max-width: 8ch;
	margin: 0;
	color: inherit;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3.3rem, 5.5vw, 5.8rem);
	font-weight: 500;
	letter-spacing: -0.045em;
	line-height: 0.92;
}

.koska-shop-ready__text {
	max-width: 31rem;
	margin: 1.75rem 0 0;
	color: rgba(255, 248, 239, 0.72);
	font-size: 0.95rem;
	line-height: 1.75;
}

.koska-shop-ready__link {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	align-self: flex-start;
	margin-top: 2rem;
	padding-bottom: 0.35rem;
	border-bottom: 1px solid rgba(255, 248, 239, 0.42);
	color: var(--koska-cream);
	font-size: 0.82rem;
	font-weight: 600;
	text-decoration: none;
	transition:
		border-color 180ms ease,
		gap 180ms ease;
}

.koska-shop-ready__link:hover {
	gap: 1.05rem;
	border-color: currentColor;
}

.koska-shop-ready__media {
	min-height: 100%;
	overflow: hidden;
}

.koska-shop-ready__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.koska-shop-materials {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	background: #f2ece3;
	color: var(--koska-espresso);
}

.koska-shop-materials__media {
	min-height: clamp(32rem, 48vw, 46rem);
	overflow: hidden;
}

.koska-shop-materials__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.koska-shop-materials__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(3.5rem, 6vw, 6rem);
}

.koska-shop-materials__title {
	max-width: 12ch;
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(2.9rem, 4.25vw, 4.6rem);
	font-weight: 500;
	letter-spacing: -0.045em;
	line-height: 0.96;
}

.koska-shop-materials__intro {
	max-width: 36rem;
	margin: 1.75rem 0 0;
	color: rgba(34, 27, 23, 0.68);
	font-size: 0.95rem;
	line-height: 1.8;
}

.koska-shop-materials__values {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin-top: clamp(2.5rem, 5vw, 4rem);
	border-top: 1px solid rgba(62, 46, 36, 0.15);
	border-left: 1px solid rgba(62, 46, 36, 0.15);
}

.koska-shop-materials__value {
	display: grid;
	grid-template-columns: 2.3rem minmax(0, 1fr);
	gap: 0.8rem;
	align-items: center;
	min-height: 5.25rem;
	padding: 1rem;
	border-right: 1px solid rgba(62, 46, 36, 0.15);
	border-bottom: 1px solid rgba(62, 46, 36, 0.15);
	font-family: "Cormorant Garamond", serif;
	font-size: 1.1rem;
	line-height: 1.2;
}

.koska-shop-materials__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.3rem;
	height: 2.3rem;
	border: 1px solid rgba(62, 46, 36, 0.32);
	border-radius: 50%;
	color: var(--koska-clay);
	font-family: "Manrope", sans-serif;
	font-size: 0.58rem;
	font-weight: 700;
	letter-spacing: 0.08em;
}

@media (max-width: 900px) {
	.koska-shop-ready,
	.koska-shop-materials {
		grid-template-columns: 1fr;
	}

	.koska-shop-ready__media {
		min-height: 26rem;
	}

	.koska-shop-materials__media {
		min-height: 34rem;
	}

	.koska-shop-materials__content {
		padding-block: 4rem;
	}
}

@media (max-width: 560px) {
	.koska-shop-editorial {
		margin-top: 4.5rem !important;
	}

	.koska-shop-ready__content,
	.koska-shop-materials__content {
		padding: 3rem 1.25rem;
	}

	.koska-shop-ready__media,
	.koska-shop-materials__media {
		min-height: 24rem;
	}

	.koska-shop-materials__values {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.koska-shop-ready__link {
		transition: none;
	}

	.koska-shop-ready__link:hover {
		gap: 0.8rem;
	}
}
/* WooCommerce — single product spacing */

.single-product main#wp--skip-link--target {
	padding-top: clamp(2.75rem, 4vw, 4rem);
}

@media (max-width: 760px) {
	.single-product main#wp--skip-link--target {
		padding-top: 1.5rem;
	}
}
/* WooCommerce — mobile spacing between editorial images */

@media (max-width: 760px) {
        .koska-shop-ready__media {
                margin-top: 1rem;
        }

        .koska-shop-materials {
                margin-top: 1rem;
        }

        .koska-shop-materials__media {
                margin-bottom: 1rem;
        }
}
/* WooCommerce — mobile category scroll hint */

@media (max-width: 760px) {
	.koska-shop-category-nav {
		position: relative;
	}

	.koska-shop-category-nav::before {
		content: "";
		position: absolute;
		z-index: 2;
		top: 0;
		right: 0;
		bottom: 0.35rem;
		width: 3.5rem;
		pointer-events: none;
		background: linear-gradient(
			90deg,
			rgba(248, 244, 238, 0),
			rgba(248, 244, 238, 0.92) 68%
		);
		animation: koska-shop-category-gradient-hint 5.8s ease 0.2s 1 forwards;
	}

	.koska-shop-category-nav::after {
		content: "→";
		position: absolute;
		z-index: 3;
		top: 50%;
		right: 0.45rem;
		color: var(--koska-clay);
		font-family: "Manrope", sans-serif;
		font-size: 1.05rem;
		line-height: 1;
		pointer-events: none;
		animation: koska-shop-category-scroll-hint 1.45s ease-in-out 0.35s 4 forwards;
	}

	.koska-shop-category-nav__inner {
		scroll-snap-type: x proximity;
	}

	.koska-shop-category-nav__link {
		scroll-snap-align: start;
	}
}

@keyframes koska-shop-category-gradient-hint {
	0%,
	72% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

@keyframes koska-shop-category-scroll-hint {
	0% {
		opacity: 0;
		transform: translate(-7px, -50%);
	}

	20% {
		opacity: 0.9;
	}

	55% {
		opacity: 1;
		transform: translate(3px, -50%);
	}

	80% {
		opacity: 0.55;
	}

	100% {
		opacity: 0;
		transform: translate(7px, -50%);
	}
}

@media (prefers-reduced-motion: reduce) {
	.koska-shop-category-nav::before {
		animation: none;
		opacity: 0;
	}

	.koska-shop-category-nav::after {
		animation: none;
		opacity: 0.7;
		transform: translateY(-50%);
	}
}
/* WooCommerce — single product V1 */

.koska-product-page {
	box-sizing: border-box;
	margin: 0;
	padding-bottom: clamp(5rem, 9vw, 9rem);
	background: var(--koska-ivory);
	color: var(--koska-espresso);
}

.koska-product-page > .wc-block-breadcrumbs,
.koska-product-page > .wc-block-store-notices,
.koska-product-hero,
.koska-product-values,
.koska-product-details,
.koska-product-related {
	box-sizing: border-box;
	width: min(100% - 3rem, var(--koska-content-wide));
	max-width: var(--koska-content-wide) !important;
	margin-inline: auto !important;
}

.koska-product-page > .wc-block-breadcrumbs {
	margin-bottom: clamp(2rem, 4vw, 3.5rem) !important;
	color: rgba(34, 27, 23, 0.58);
	font-size: 0.78rem;
}

.koska-product-page > .wc-block-breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.koska-product-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(22rem, 0.88fr);
	gap: clamp(2.5rem, 5vw, 6rem);
	align-items: start;
}

.koska-product-gallery,
.koska-product-summary {
	min-width: 0;
	margin: 0 !important;
}

.koska-product-gallery .woocommerce-product-gallery {
	width: 100% !important;
	margin: 0;
}

.koska-product-gallery .woocommerce-product-gallery__wrapper {
	margin: 0;
}

.koska-product-gallery .woocommerce-product-gallery__image > a {
	display: block;
	overflow: hidden;
	aspect-ratio: 4 / 4.35;
	background: var(--koska-sand);
}

.koska-product-gallery .woocommerce-product-gallery__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.koska-product-gallery .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
	margin: 0.75rem 0 0;
	padding: 0;
	list-style: none;
}

.koska-product-gallery .flex-control-thumbs li {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
}

.koska-product-gallery .flex-control-thumbs img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	opacity: 0.58;
	transition: opacity 180ms ease;
}

.koska-product-gallery .flex-control-thumbs img.flex-active,
.koska-product-gallery .flex-control-thumbs img:hover {
	opacity: 1;
}

.koska-product-summary {
	padding-top: clamp(0.25rem, 1vw, 1rem);
}

.koska-product-summary__category {
	margin: 0 0 1rem !important;
	color: var(--koska-clay);
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.5;
	text-transform: uppercase;
}

.koska-product-summary__category a {
	color: inherit;
	text-decoration: none;
}

.koska-product-summary__title {
	max-width: 12ch;
	margin: 0 !important;
	color: var(--koska-espresso);
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3.5rem, 5.5vw, 6rem);
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 0.92;
}

.koska-product-summary__price {
	margin: clamp(1.5rem, 3vw, 2.25rem) 0 0 !important;
	color: var(--koska-espresso);
	font-size: clamp(1.6rem, 2.3vw, 2.15rem);
	font-weight: 400;
}

.koska-product-summary__excerpt {
	max-width: 35rem;
	margin: 1.75rem 0 0 !important;
	color: rgba(34, 27, 23, 0.72);
	font-size: 0.95rem;
	line-height: 1.75;
}

.koska-product-summary__excerpt p {
	margin: 0;
}

.koska-product-summary .wp-block-woocommerce-add-to-cart-form {
	margin-top: 1.75rem;
}

.koska-product-summary form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: stretch;
	margin: 0;
}

.koska-product-summary form.cart .stock {
	flex: 0 0 100%;
	margin: 0 0 0.25rem;
	color: var(--koska-clay);
	font-size: 0.78rem;
	font-weight: 600;
}

.koska-product-summary form.cart .quantity {
	flex: 0 0 5rem;
	margin: 0 !important;
}

.koska-product-summary form.cart .qty {
	box-sizing: border-box;
	width: 100%;
	height: 3.5rem;
	border: 1px solid rgba(62, 46, 36, 0.2);
	border-radius: 0;
	background: transparent;
	color: var(--koska-espresso);
	text-align: center;
}

.koska-product-summary form.cart .single_add_to_cart_button {
	flex: 1 1 14rem;
	min-height: 3.5rem;
	padding: 0.9rem 1.5rem;
	border: 0;
	border-radius: 0;
	background: var(--koska-clay);
	color: var(--koska-cream);
	font-family: "Manrope", sans-serif;
	font-size: 0.82rem;
	font-weight: 600;
	transition:
		background-color 180ms ease,
		transform 180ms ease;
}

.koska-product-summary form.cart .single_add_to_cart_button:hover {
	background: var(--koska-walnut);
	transform: translateY(-1px);
}

.koska-product-inquiry {
	margin: 1.25rem 0 0 !important;
}

.koska-product-inquiry a {
	display: inline-block;
	padding-bottom: 0.25rem;
	border-bottom: 1px solid rgba(62, 46, 36, 0.25);
	color: var(--koska-espresso);
	font-size: 0.82rem;
	font-weight: 600;
	text-decoration: none;
	transition: border-color 180ms ease;
}

.koska-product-inquiry a:hover {
	border-color: currentColor;
}

.koska-product-values {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 0 !important;
	margin-top: clamp(4rem, 7vw, 7rem) !important;
	border-top: 1px solid rgba(62, 46, 36, 0.14);
	border-bottom: 1px solid rgba(62, 46, 36, 0.14);
}

.koska-product-value {
	display: grid;
	grid-template-columns: 2.4rem minmax(0, 1fr);
	gap: 0.9rem;
	align-items: center;
	min-height: 6.25rem;
	margin: 0 !important;
	padding: 1.25rem clamp(1rem, 2vw, 1.75rem);
	border-right: 1px solid rgba(62, 46, 36, 0.14);
}

.koska-product-value:last-child {
	border-right: 0;
}

.koska-product-value__number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.4rem;
	height: 2.4rem;
	margin: 0 !important;
	border: 1px solid rgba(62, 46, 36, 0.28);
	border-radius: 50%;
	color: var(--koska-clay);
	font-size: 0.58rem;
	font-weight: 700;
	letter-spacing: 0.08em;
}

.koska-product-value__label {
	margin: 0 !important;
	font-family: "Cormorant Garamond", serif;
	font-size: 1.1rem;
	line-height: 1.2;
}

.koska-product-details {
	margin-top: clamp(4rem, 8vw, 7rem) !important;
}

.koska-product-details .wc-block-components-tabs__list,
.koska-product-details .wc-tabs {
	border-bottom-color: rgba(62, 46, 36, 0.14);
}

.koska-product-details button,
.koska-product-details a {
	color: var(--koska-espresso);
}

.koska-product-related {
	margin-top: clamp(5rem, 9vw, 8rem) !important;
}

.koska-product-related h2 {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(2.7rem, 4.5vw, 4.5rem);
	font-weight: 500;
	letter-spacing: -0.04em;
	line-height: 0.98;
}

@media (max-width: 980px) {
	.koska-product-hero {
		grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.85fr);
		gap: 2.5rem;
	}

	.koska-product-summary__title {
		font-size: clamp(3rem, 6vw, 4.75rem);
	}
}

@media (max-width: 760px) {
	.koska-product-page > .wc-block-breadcrumbs,
	.koska-product-page > .wc-block-store-notices,
	.koska-product-hero,
	.koska-product-values,
	.koska-product-details,
	.koska-product-related {
		width: min(100% - 2rem, var(--koska-content-wide));
	}

	.koska-product-hero {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.koska-product-summary {
		padding-top: 0;
	}

	.koska-product-summary__title {
		max-width: none;
		font-size: clamp(3rem, 13vw, 4.5rem);
	}

	.koska-product-values {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.koska-product-value:nth-child(2) {
		border-right: 0;
	}

	.koska-product-value:nth-child(-n + 2) {
		border-bottom: 1px solid rgba(62, 46, 36, 0.14);
	}
}

@media (max-width: 480px) {
	.koska-product-values {
		grid-template-columns: 1fr !important;
	}

	.koska-product-value,
	.koska-product-value:nth-child(2) {
		border-right: 0;
		border-bottom: 1px solid rgba(62, 46, 36, 0.14);
	}

	.koska-product-value:last-child {
		border-bottom: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.koska-product-gallery .flex-control-thumbs img,
	.koska-product-summary form.cart .single_add_to_cart_button,
	.koska-product-inquiry a {
		transition: none;
	}

	.koska-product-summary form.cart .single_add_to_cart_button:hover {
		transform: none;
	}
}
/* WooCommerce — single product lower editorial */

.koska-product-details {
	margin-top: clamp(4.5rem, 8vw, 7.5rem) !important;
	padding-top: 0;
}




.koska-product-details__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin: 0 !important;
	border-bottom: 1px solid rgba(62, 46, 36, 0.14);
}

.koska-product-details__column {
	min-width: 0;
	margin: 0 !important;
	padding: clamp(2.5rem, 4vw, 4rem) clamp(1.5rem, 3vw, 3rem);
	border-right: 1px solid rgba(62, 46, 36, 0.14);
}

.koska-product-details__column:first-child {
	padding-left: 0;
}

.koska-product-details__column:last-child {
	padding-right: 0;
	border-right: 0;
}

.koska-product-details__eyebrow,
.koska-product-related__eyebrow {
	margin: 0 0 1rem !important;
	color: var(--koska-clay);
	font-size: 0.65rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.4;
	text-transform: uppercase;
}

.koska-product-details__description,
.koska-product-details__text,
.koska-product-details__fallback {
	margin: 0 !important;
	color: rgba(34, 27, 23, 0.7);
	font-size: 0.9rem;
	line-height: 1.75;
}

.koska-product-details__description > :first-child {
	margin-top: 0;
}

.koska-product-details__description > :last-child {
	margin-bottom: 0;
}

.koska-product-details__specifications {
	margin: 0 !important;
	font-size: 0.88rem;
}

.koska-product-details__specifications table {
	width: 100%;
	border-collapse: collapse;
}

.koska-product-details__specifications th,
.koska-product-details__specifications td {
	padding: 0.65rem 0;
	border-bottom: 1px solid rgba(62, 46, 36, 0.11);
	text-align: left;
	vertical-align: top;
}

.koska-product-details__specifications th {
	padding-right: 1rem;
	color: rgba(34, 27, 23, 0.55);
	font-weight: 500;
}

.koska-product-details__fallback {
	margin-top: 0.85rem !important;
	font-size: 0.8rem;
}

.koska-product-related {
	margin-top: clamp(5rem, 9vw, 8rem) !important;
}

.koska-product-related__eyebrow {
	margin-bottom: 0.8rem !important;
}

.koska-product-related__title {
	max-width: 11ch;
	margin: 0 0 clamp(2rem, 4vw, 3rem) !important;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3rem, 5vw, 5rem);
	font-weight: 500;
	letter-spacing: -0.045em;
	line-height: 0.95;
}

.koska-product-related__collection {
	margin: 0 !important;
}

.koska-product-related__grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1.5rem, 2.5vw, 2.25rem) !important;
}

.koska-product-related__grid > li {
	min-width: 0;
	width: auto !important;
}

.koska-product-related__card {
	height: auto;
}

.koska-product-related__card .koska-shop-product-card__media {
	aspect-ratio: 4 / 4.35;
}

@media (max-width: 760px) {

	.koska-product-details__grid {
		grid-template-columns: 1fr;
	}

	.koska-product-details__column,
	.koska-product-details__column:first-child,
	.koska-product-details__column:last-child {
		padding: 2rem 0;
		border-right: 0;
		border-bottom: 1px solid rgba(62, 46, 36, 0.14);
	}

	.koska-product-details__column:last-child {
		border-bottom: 0;
	}

	.koska-product-related__grid {
		grid-template-columns: 1fr !important;
		gap: 2rem !important;
	}
}

/* WooCommerce — single product specifications border polish */
.koska-product-details__specifications table {
	border: 0 !important;
	border-collapse: collapse !important;
}

.koska-product-details__specifications th,
.koska-product-details__specifications td {
	border: 1px solid rgba(62, 46, 36, 0.14) !important;
}

/* WooCommerce — single product specifications cell spacing */
.koska-product-details__specifications th,
.koska-product-details__specifications td {
	padding: 0.65rem 0.85rem !important;
}

/* WooCommerce — single product mobile final polish */
@media (max-width: 760px) {
	.koska-product-summary form.cart .single_add_to_cart_button {
		flex: 1 1 100%;
		width: 100%;
	}
}

@media (min-width: 431px) and (max-width: 760px) {
	.koska-product-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 1rem !important;
	}
}

/* WooCommerce — empty shop heading specificity */
.koska-shop-products .koska-shop-empty h2.koska-shop-empty__title {
	font-size: clamp(2.4rem, 5vw, 4.5rem) !important;
	font-family: "Cormorant Garamond", serif !important;
	font-weight: 500 !important;
	line-height: 0.98 !important;
}


/* O Koska — V1 */

.koska-about-page {
	background: var(--koska-cream);
	color: var(--koska-espresso);
	overflow: hidden;
}

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

.koska-about-page img {
	display: block;
	width: 100%;
}

.koska-about-eyebrow {
	margin: 0 0 1rem;
	color: var(--koska-clay);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1.3;
	text-transform: uppercase;
}

.koska-about-eyebrow--light {
	color: rgba(255, 248, 239, 0.72);
}


/* Hero */

.koska-about-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: min(84svh, 58rem);
	background: var(--koska-espresso);
	color: var(--koska-cream);
	isolation: isolate;
}

.koska-about-hero__media,
.koska-about-hero__shade {
	position: absolute;
	inset: 0;
}

.koska-about-hero__media {
	z-index: -2;
}

.koska-about-hero__media img {
	height: 100%;
	object-fit: cover;
	object-position: center 52%;
}

.koska-about-hero__shade {
	z-index: -1;
	background:
		linear-gradient(90deg, rgba(25, 18, 14, 0.72) 0%, rgba(25, 18, 14, 0.3) 55%, rgba(25, 18, 14, 0.16) 100%),
		linear-gradient(0deg, rgba(25, 18, 14, 0.55) 0%, rgba(25, 18, 14, 0) 58%);
}

.koska-about-hero__content {
	width: min(100% - 3rem, 92rem);
	margin: 0 auto;
	padding: clamp(4rem, 9vw, 8rem) 0 clamp(4rem, 7vw, 6rem);
}

.koska-about-hero h1 {
	max-width: 11ch;
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(4rem, 8.5vw, 8rem);
	font-weight: 500;
	letter-spacing: -0.055em;
	line-height: 0.86;
}

.koska-about-hero__lead {
	max-width: 39rem;
	margin: clamp(1.75rem, 3vw, 2.75rem) 0 0;
	color: rgba(255, 248, 239, 0.84);
	font-size: clamp(1rem, 1.35vw, 1.2rem);
	line-height: 1.7;
}


/* Manifest */

.koska-about-manifest {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.75fr);
	gap: clamp(3rem, 8vw, 9rem);
	width: min(100% - 3rem, 92rem);
	margin: 0 auto;
	padding: clamp(6rem, 11vw, 11rem) 0;
}

.koska-about-manifest h2 {
	max-width: 12ch;
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3.4rem, 6.4vw, 6.5rem);
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 0.92;
}

.koska-about-manifest__copy {
	align-self: end;
	max-width: 38rem;
}

.koska-about-manifest__copy p {
	margin: 1.4rem 0 0;
	color: rgba(34, 27, 23, 0.72);
	font-size: 1rem;
	line-height: 1.78;
}

.koska-about-manifest__copy .koska-about-manifest__lead {
	margin-top: 0;
	color: var(--koska-espresso);
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.75rem, 2.4vw, 2.35rem);
	line-height: 1.2;
}


/* Pillars */

.koska-about-pillars {
	padding: clamp(6rem, 9vw, 9rem) max(1.5rem, calc((100vw - 92rem) / 2));
	background: var(--koska-espresso);
	color: var(--koska-cream);
}

.koska-about-pillars__header {
	display: grid;
	grid-template-columns: 0.8fr 1.5fr;
	gap: 3rem;
	align-items: end;
	margin-bottom: clamp(3rem, 6vw, 5rem);
}

.koska-about-pillars__header h2 {
	max-width: 14ch;
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3rem, 5vw, 5.4rem);
	font-weight: 500;
	letter-spacing: -0.045em;
	line-height: 0.95;
}

.koska-about-pillars__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.75rem);
}

.koska-about-pillar {
	min-width: 0;
	border-top: 1px solid rgba(255, 248, 239, 0.18);
}

.koska-about-pillar__media {
	display: block;
	margin-top: 1rem;
	overflow: hidden;
	aspect-ratio: 4 / 5;
	background: #2c211b;
}

.koska-about-pillar__media img {
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.koska-about-pillar:hover .koska-about-pillar__media img {
	transform: scale(1.025);
}

.koska-about-pillar__body {
	padding: 1.7rem 0 0;
}

.koska-about-pillar__body > span {
	display: block;
	margin-bottom: 1rem;
	color: var(--koska-clay);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.15em;
}

.koska-about-pillar h3 {
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(2rem, 3vw, 3rem);
	font-weight: 500;
	line-height: 1;
}

.koska-about-pillar p {
	max-width: 29rem;
	margin: 1rem 0 1.35rem;
	color: rgba(255, 248, 239, 0.68);
	line-height: 1.65;
}

.koska-about-pillar__body a {
	color: var(--koska-cream);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-decoration: none;
	text-transform: uppercase;
}


/* Craft */

.koska-about-craft {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(20rem, 0.92fr);
	min-height: 48rem;
	background: var(--koska-cream);
}

.koska-about-craft__media {
	min-height: 100%;
	margin: 0;
	overflow: hidden;
}

.koska-about-craft__media img {
	height: 100%;
	min-height: 48rem;
	object-fit: cover;
}

.koska-about-craft__copy {
	align-self: center;
	max-width: 39rem;
	padding: clamp(4rem, 7vw, 8rem);
}

.koska-about-craft h2 {
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3.4rem, 5.3vw, 5.8rem);
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 0.9;
}

.koska-about-craft__copy p:not(.koska-about-eyebrow) {
	margin: 1.4rem 0 0;
	color: rgba(34, 27, 23, 0.7);
	line-height: 1.75;
}

.koska-about-craft__copy .koska-about-craft__lead {
	margin-top: 2rem;
	color: var(--koska-espresso);
	font-size: 1.08rem;
}

.koska-about-text-link {
	display: inline-block;
	margin-top: 2rem;
	border-bottom: 1px solid rgba(62, 46, 36, 0.35);
	color: var(--koska-espresso);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	padding-bottom: 0.3rem;
	text-decoration: none;
	text-transform: uppercase;
}


/* Values */

.koska-about-values {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: min(100% - 3rem, 92rem);
	margin: 0 auto;
	padding: clamp(5rem, 9vw, 8rem) 0;
	border-top: 1px solid rgba(62, 46, 36, 0.15);
}

.koska-about-value {
	padding: 0 clamp(1.2rem, 2vw, 2rem);
	border-left: 1px solid rgba(62, 46, 36, 0.15);
}

.koska-about-value:first-child {
	padding-left: 0;
	border-left: 0;
}

.koska-about-value:last-child {
	padding-right: 0;
}

.koska-about-value > span {
	display: block;
	margin-bottom: 2rem;
	color: var(--koska-clay);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.15em;
}

.koska-about-value h3 {
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.7rem, 2.2vw, 2.25rem);
	font-weight: 500;
	line-height: 1.05;
}

.koska-about-value p {
	margin: 1rem 0 0;
	color: rgba(34, 27, 23, 0.65);
	font-size: 0.92rem;
	line-height: 1.65;
}


/* Showroom finale */

.koska-about-showroom {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: min(78svh, 52rem);
	background: var(--koska-espresso);
	color: var(--koska-cream);
	isolation: isolate;
}

.koska-about-showroom__media,
.koska-about-showroom__shade {
	position: absolute;
	inset: 0;
}

.koska-about-showroom__media {
	z-index: -2;
}

.koska-about-showroom__media img {
	height: 100%;
	object-fit: cover;
}

.koska-about-showroom__shade {
	z-index: -1;
	background:
		linear-gradient(90deg, rgba(24, 17, 13, 0.76) 0%, rgba(24, 17, 13, 0.42) 52%, rgba(24, 17, 13, 0.12) 100%),
		linear-gradient(0deg, rgba(24, 17, 13, 0.5), transparent 65%);
}

.koska-about-showroom__content {
	width: min(100% - 3rem, 92rem);
	margin: 0 auto;
	padding: clamp(4rem, 8vw, 7rem) 0;
}

.koska-about-showroom h2 {
	max-width: 16ch;
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(4rem, 7vw, 7rem);
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 0.88;
}

.koska-about-showroom__content > p:not(.koska-about-eyebrow) {
	margin: 2rem 0 0;
	color: rgba(255, 248, 239, 0.82);
	font-size: 1.05rem;
	line-height: 1.7;
}

.koska-about-showroom__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: 2rem;
}

.koska-about-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3.2rem;
	padding: 0.8rem 1.5rem;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-decoration: none;
	text-transform: uppercase;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.koska-about-button:hover {
	transform: translateY(-1px);
}

.koska-about-button--clay {
	background: var(--koska-clay);
	color: var(--koska-cream);
}

.koska-about-button--ghost {
	border-color: rgba(255, 248, 239, 0.48);
	color: var(--koska-cream);
}


/* Responsive */

@media (max-width: 960px) {
	.koska-about-manifest {
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.koska-about-manifest__copy {
		max-width: 44rem;
	}

	.koska-about-pillars__header {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.koska-about-pillars__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.koska-about-pillar:last-child {
		grid-column: 1 / -1;
		max-width: calc(50% - 0.5rem);
	}

	.koska-about-craft {
		grid-template-columns: 1fr;
	}

	.koska-about-craft__media img {
		min-height: 0;
		aspect-ratio: 16 / 10;
	}

	.koska-about-craft__copy {
		max-width: 48rem;
		padding-left: max(1.5rem, calc((100vw - 92rem) / 2));
		padding-right: max(1.5rem, calc((100vw - 92rem) / 2));
	}

	.koska-about-values {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.koska-about-value {
		padding: 2rem;
		border-top: 1px solid rgba(62, 46, 36, 0.15);
	}

	.koska-about-value:nth-child(odd) {
		border-left: 0;
		padding-left: 0;
	}

	.koska-about-value:nth-child(even) {
		padding-right: 0;
	}

	.koska-about-value:nth-child(-n + 2) {
		border-top: 0;
	}
}

@media (max-width: 640px) {
	.koska-about-hero {
		min-height: 76svh;
	}

	.koska-about-hero__content,
	.koska-about-showroom__content {
		width: min(100% - 2rem, 92rem);
	}

	.koska-about-hero h1 {
		font-size: clamp(3.5rem, 17vw, 5.5rem);
	}

	.koska-about-manifest,
	.koska-about-values {
		width: min(100% - 2rem, 92rem);
	}

	.koska-about-pillars {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.koska-about-pillars__grid {
		grid-template-columns: 1fr;
		gap: 3.5rem;
	}

	.koska-about-pillar:last-child {
		grid-column: auto;
		max-width: none;
	}

	.koska-about-pillar__media {
		aspect-ratio: 4 / 4.7;
	}

	.koska-about-craft__copy {
		padding: 4.5rem 1rem;
	}

	.koska-about-craft h2,
	.koska-about-manifest h2 {
		font-size: clamp(3rem, 14vw, 4.7rem);
	}

	.koska-about-values {
		grid-template-columns: 1fr;
		padding: 4rem 0;
	}

	.koska-about-value,
	.koska-about-value:first-child,
	.koska-about-value:nth-child(odd),
	.koska-about-value:nth-child(even) {
		padding: 2rem 0;
		border-top: 1px solid rgba(62, 46, 36, 0.15);
		border-left: 0;
	}

	.koska-about-value:first-child {
		border-top: 0;
	}

	.koska-about-value > span {
		margin-bottom: 1rem;
	}

	.koska-about-showroom {
		min-height: 70svh;
	}

	.koska-about-showroom h2 {
		font-size: clamp(3.6rem, 17vw, 5.5rem);
	}

	.koska-about-showroom__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.koska-about-button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.koska-about-pillar__media img,
	.koska-about-button {
		transition: none;
	}

	.koska-about-pillar:hover .koska-about-pillar__media img,
	.koska-about-button:hover {
		transform: none;
	}
}

/* O Koska — dark section heading color fix */
.koska-about-hero h1,
.koska-about-pillars__header h2,
.koska-about-pillar h3,
.koska-about-showroom h2 {
	color: var(--koska-cream) !important;
}


/* O Koska — V2 sculptural flow */

/*
 * Zamiast prostokątnych sekcji budujemy jeden płynny rytm:
 * miękkie przejścia, warstwy i kontrolowaną asymetrię.
 */


/* HERO → organiczne zejście do manifestu */

.koska-about-hero {
	position: relative;
	overflow: visible;
}

.koska-about-hero__content {
	position: relative;
	z-index: 3;
}

.koska-about-hero::after {
	content: "";
	position: absolute;
	z-index: 2;
	right: -8%;
	bottom: -1px;
	left: -8%;
	height: clamp(4rem, 7vw, 7.5rem);
	background: var(--koska-cream);
	border-radius: 50% 50% 0 0 / 100% 100% 0 0;
	transform: translateY(56%);
	pointer-events: none;
}


/* MANIFEST → editorialowy znak marki */

.koska-about-manifest {
	position: relative;
	padding-top: clamp(9rem, 14vw, 14rem);
	isolation: isolate;
}

.koska-about-manifest::before {
	content: "KOSKA";
	position: absolute;
	z-index: 0;
	top: clamp(1.5rem, 3vw, 3rem);
	left: 50%;
	color: transparent;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(8rem, 20vw, 21rem);
	font-weight: 500;
	letter-spacing: 0.015em;
	line-height: 0.75;
	white-space: nowrap;
	-webkit-text-stroke: 1px rgba(62, 46, 36, 0.095);
	transform: translateX(-50%);
	pointer-events: none;
}

.koska-about-manifest > * {
	position: relative;
	z-index: 1;
}


/* TRZY STRONY → ciemna rzeźbiarska warstwa */

.koska-about-pillars {
	position: relative;
	z-index: 2;
	margin-top: clamp(2rem, 5vw, 5rem);
	padding-top: clamp(8rem, 11vw, 11rem);
	padding-bottom: clamp(10rem, 13vw, 13rem);
	overflow: visible;
	isolation: isolate;
}

.koska-about-pillars::before {
	content: "";
	position: absolute;
	z-index: 0;
	top: 0;
	right: -8%;
	left: -8%;
	height: clamp(4.5rem, 7vw, 7.5rem);
	background: var(--koska-espresso);
	border-radius: 50% 50% 0 0 / 100% 100% 0 0;
	transform: translateY(-48%);
	pointer-events: none;
}

.koska-about-pillars > * {
	position: relative;
	z-index: 1;
}

.koska-about-pillars__header {
	position: relative;
}

.koska-about-pillars__header::after {
	content: "03";
	position: absolute;
	z-index: -1;
	right: 0;
	bottom: -0.15em;
	color: rgba(255, 248, 239, 0.035);
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(8rem, 17vw, 17rem);
	font-weight: 500;
	letter-spacing: -0.07em;
	line-height: 0.7;
	pointer-events: none;
}

.koska-about-pillar {
	position: relative;
	transition: transform 420ms ease;
}

@media (min-width: 961px) {
	.koska-about-pillar:nth-child(1) {
		transform: translateY(0.75rem);
	}

	.koska-about-pillar:nth-child(2) {
		transform: translateY(5.5rem);
	}

	.koska-about-pillar:nth-child(3) {
		transform: translateY(2.4rem);
	}

	.koska-about-pillar:nth-child(2) .koska-about-pillar__media {
		aspect-ratio: 4 / 5.7;
	}

	.koska-about-pillar:nth-child(3) .koska-about-pillar__media {
		aspect-ratio: 4 / 4.65;
	}
}


/* MATERIAŁY → blok wychodzi z ciemnej sekcji */

.koska-about-craft {
	position: relative;
	z-index: 4;
	width: min(100% - 3rem, 92rem);
	margin: -4.25rem auto 0;
	min-height: 46rem;
	border-radius: 0 clamp(2.5rem, 5vw, 5rem) 0 0;
	overflow: hidden;
}

.koska-about-craft__media {
	position: relative;
}

.koska-about-craft__media::after {
	content: "";
	position: absolute;
	inset: 0;
	border: 1px solid rgba(62, 46, 36, 0.08);
	pointer-events: none;
}

.koska-about-craft__copy {
	position: relative;
}

.koska-about-craft__copy::before {
	content: "";
	position: absolute;
	top: clamp(2rem, 4vw, 4rem);
	left: 0;
	width: clamp(3rem, 6vw, 6rem);
	height: 1px;
	background: var(--koska-clay);
	opacity: 0.7;
}


/* WARTOŚCI → trochę więcej oddechu po nałożonym bloku */

.koska-about-values {
	position: relative;
	margin-top: clamp(4rem, 7vw, 7rem);
}


/* BARTYCKA → jasna warstwa wcina się w finał */

.koska-about-showroom {
	position: relative;
	margin-top: clamp(3rem, 7vw, 7rem);
	overflow: visible;
}

.koska-about-showroom::before {
	content: "";
	position: absolute;
	z-index: 1;
	top: -1px;
	right: -8%;
	left: -8%;
	height: clamp(4rem, 7vw, 7.5rem);
	background: var(--koska-cream);
	border-radius: 0 0 50% 50% / 0 0 100% 100%;
	transform: translateY(-48%);
	pointer-events: none;
}

.koska-about-showroom__content {
	position: relative;
	z-index: 3;
}


/* Mikrodetale */

.koska-about-pillar__body a,
.koska-about-text-link {
	transition:
		letter-spacing 180ms ease,
		border-color 180ms ease,
		color 180ms ease;
}

.koska-about-pillar__body a:hover,
.koska-about-text-link:hover {
	letter-spacing: 0.1em;
}


/* Tablet */

@media (max-width: 960px) {
	.koska-about-pillars {
		padding-bottom: clamp(7rem, 12vw, 10rem);
	}

	.koska-about-pillar,
	.koska-about-pillar:nth-child(1),
	.koska-about-pillar:nth-child(2),
	.koska-about-pillar:nth-child(3) {
		transform: none;
	}

	.koska-about-pillar:nth-child(2) .koska-about-pillar__media,
	.koska-about-pillar:nth-child(3) .koska-about-pillar__media {
		aspect-ratio: 4 / 5;
	}

	.koska-about-craft {
		width: min(100% - 2rem, 92rem);
		margin-top: -2.5rem;
		border-radius: 0 3rem 0 0;
	}
}


/* Mobile */

@media (max-width: 640px) {
	.koska-about-hero::after {
		right: -18%;
		left: -18%;
		height: 3.75rem;
		transform: translateY(54%);
	}

	.koska-about-manifest {
		padding-top: 7.5rem;
	}

	.koska-about-manifest::before {
		top: 2rem;
		font-size: clamp(6rem, 31vw, 9rem);
		-webkit-text-stroke-color: rgba(62, 46, 36, 0.085);
	}

	.koska-about-pillars {
		margin-top: 1rem;
		padding-top: 6.5rem;
		padding-bottom: 6rem;
	}

	.koska-about-pillars::before {
		right: -20%;
		left: -20%;
		height: 4rem;
	}

	.koska-about-pillars__header::after {
		top: auto;
		right: -0.2rem;
		bottom: -0.2rem;
		font-size: 8rem;
	}

	.koska-about-craft {
		width: calc(100% - 2rem);
		margin-top: -1.75rem;
		border-radius: 0 2rem 0 0;
	}

	.koska-about-craft__copy::before {
		display: none;
	}

	.koska-about-values {
		margin-top: 2rem;
	}

	.koska-about-showroom {
		margin-top: 2rem;
	}

	.koska-about-showroom::before {
		right: -20%;
		left: -20%;
		height: 4rem;
	}
}


/* Reduced motion */

@media (prefers-reduced-motion: reduce) {
	.koska-about-pillar {
		transition: none;
	}

	.koska-about-pillar__body a,
	.koska-about-text-link {
		transition: none;
	}
}


/* O Koska — manifest logo final */

/* Wyłączamy wcześniejszy editorialowy napis KOSKA z V2. */
.koska-about-manifest::before {
	content: none !important;
	display: none !important;
}

/*
 * Logo jest osobnym znakiem w pustej górnej strefie manifestu.
 * Nie konkuruje z nagłówkiem i nie bierze width:100% z globalnego img.
 */
.koska-about-manifest {
	position: relative;
	padding-top: clamp(10.5rem, 15vw, 15rem) !important;
	overflow: visible;
}

.koska-about-manifest > img.koska-about-manifest__logo {
	position: absolute;
	z-index: 0;
	top: clamp(2.75rem, 4.5vw, 4.5rem);
	left: 50%;
	display: block;
	width: auto !important;
	height: clamp(5.75rem, 7.5vw, 7.75rem) !important;
	max-width: none !important;
	margin: 0 !important;
	opacity: 0.12;
	transform: translateX(-50%);
	pointer-events: none;
}

/* Treść zawsze nad znakiem. */
.koska-about-manifest__heading,
.koska-about-manifest__copy {
	position: relative;
	z-index: 2;
}

/* Faktyczne źródło kreski pod nagłówkiem. */
body.page-id-21 .koska-header-brand {
	border-bottom: 0 !important;
}

@media (max-width: 640px) {
	.koska-about-manifest {
		padding-top: 8.5rem !important;
	}

	.koska-about-manifest > img.koska-about-manifest__logo {
		top: 2rem;
		height: 4.75rem !important;
		opacity: 0.1;
	}
}

/* O Koska — remove WordPress top-level block gap below header */
body.page-id-21 .wp-site-blocks > main.koska-about-page {
	margin-block-start: 0 !important;
}

/* O Koska — showroom primary button hover contrast */
.koska-about-button--clay:hover,
.koska-about-button--clay:focus-visible {
	background: var(--koska-clay-dark) !important;
	color: var(--koska-cream) !important;
}


/* ==========================================================================
   Kontakt
   ========================================================================== */

.koska-contact-page {
	--koska-contact-max: 92rem;
	margin: 0;
	overflow: hidden;
	background: var(--koska-cream);
	color: var(--koska-ink);
}

body.page-id-23 .wp-site-blocks > main.koska-contact-page {
	margin-block-start: 0 !important;
}

body.page-id-23 .koska-header-brand {
	border-bottom: 0 !important;
}

.koska-contact-page *,
.koska-contact-page *::before,
.koska-contact-page *::after {
	box-sizing: border-box;
}

.koska-contact-eyebrow {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}


/* Hero */

.koska-contact-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: min(86svh, 58rem);
	overflow: hidden;
	background: var(--koska-ink);
	color: var(--koska-cream);
}

.koska-contact-hero__image,
.koska-contact-showroom__image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.koska-contact-hero__image {
	object-position: center 48%;
}

.koska-contact-hero__shade {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			90deg,
			rgba(30, 25, 21, 0.8) 0%,
			rgba(30, 25, 21, 0.48) 42%,
			rgba(30, 25, 21, 0.12) 76%,
			rgba(30, 25, 21, 0.1) 100%
		),
		linear-gradient(
			0deg,
			rgba(30, 25, 21, 0.36) 0%,
			transparent 45%
		);
}

.koska-contact-hero__content {
	position: relative;
	z-index: 2;
	width: min(calc(100% - 4rem), var(--koska-contact-max));
	margin: 0 auto;
	padding: clamp(7rem, 11vw, 11rem) 0 clamp(4.5rem, 7vw, 7rem);
}

.koska-contact-hero h1 {
	max-width: 9ch;
	margin: 1.1rem 0 1.75rem;
	color: var(--koska-cream) !important;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(4.8rem, 8.7vw, 8.9rem);
	font-weight: 500;
	line-height: 0.82;
	letter-spacing: -0.045em;
}

.koska-contact-hero__lead {
	max-width: 39rem;
	margin: 0;
	font-size: clamp(1rem, 1.3vw, 1.22rem);
	line-height: 1.65;
}

.koska-contact-hero__cta {
	display: inline-flex;
	gap: 1rem;
	align-items: center;
	margin-top: 2.25rem;
	padding-bottom: 0.35rem;
	border-bottom: 1px solid rgba(255, 248, 238, 0.75);
	color: var(--koska-cream);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-decoration: none;
	text-transform: uppercase;
	transition:
		gap 180ms ease,
		border-color 180ms ease;
}

.koska-contact-hero__cta:hover,
.koska-contact-hero__cta:focus-visible {
	gap: 1.4rem;
	border-color: currentColor;
	color: var(--koska-cream);
}


/* Contact paths */

.koska-contact-paths {
	width: min(calc(100% - 4rem), var(--koska-contact-max));
	margin: 0 auto;
	padding: clamp(6rem, 9vw, 10rem) 0 clamp(7rem, 10vw, 11rem);
}

.koska-contact-paths__heading {
	display: grid;
	grid-template-columns: minmax(10rem, 0.5fr) minmax(0, 1.5fr);
	gap: 2rem;
	align-items: start;
	margin-bottom: clamp(4rem, 6vw, 6.5rem);
}

.koska-contact-paths__heading h2 {
	max-width: 12ch;
	margin: 0;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3.4rem, 6vw, 6.8rem);
	font-weight: 500;
	line-height: 0.92;
	letter-spacing: -0.04em;
}

.koska-contact-paths__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--koska-line);
}

.koska-contact-path {
	position: relative;
	display: flex;
	min-height: 24rem;
	flex-direction: column;
	padding: 2rem 2.25rem 2.25rem 0;
	border-right: 1px solid var(--koska-line);
	color: var(--koska-ink);
	text-decoration: none;
	transition:
		transform 220ms ease,
		background 220ms ease;
}

.koska-contact-path + .koska-contact-path {
	padding-left: 2.25rem;
}

.koska-contact-path:last-child {
	padding-right: 0;
	border-right: 0;
}

.koska-contact-path:hover,
.koska-contact-path:focus-visible {
	transform: translateY(-0.45rem);
}

.koska-contact-path__number {
	display: block;
	margin-bottom: auto;
	color: var(--koska-clay);
	font-family: "Cormorant Garamond", serif;
	font-size: 2.1rem;
	line-height: 1;
}

.koska-contact-path h3 {
	margin: 4rem 0 1rem;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(2rem, 2.6vw, 3rem);
	font-weight: 500;
	line-height: 0.98;
}

.koska-contact-path p {
	max-width: 24rem;
	margin: 0;
	font-size: 0.95rem;
	line-height: 1.65;
}

.koska-contact-path__link {
	display: inline-block;
	margin-top: 2rem;
	font-size: 0.74rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}


/* Form section */

.koska-contact-form-section {
	position: relative;
	display: grid !important;
	grid-template-columns: minmax(0, 0.82fr) minmax(32rem, 1.18fr);
	gap: clamp(4rem, 7vw, 8rem);
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding:
		clamp(6rem, 9vw, 9rem)
		max(2rem, calc((100vw - var(--koska-contact-max)) / 2))
		clamp(7rem, 10vw, 10rem) !important;
	background: var(--koska-ink);
	color: var(--koska-cream);
}

.koska-contact-form-section::before {
	content: "";
	position: absolute;
	top: -4.5rem;
	left: -8%;
	width: 116%;
	height: 7rem;
	border-radius: 50% 50% 0 0 / 100% 100% 0 0;
	background: var(--koska-ink);
	pointer-events: none;
}

.koska-contact-form-section__heading {
	position: relative;
	z-index: 1;
	align-self: start;
}

.koska-contact-form-section__heading h2 {
	max-width: 9ch;
	margin: 1rem 0 2rem;
	color: var(--koska-cream) !important;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3.8rem, 5.8vw, 6.7rem);
	font-weight: 500;
	line-height: 0.9;
	letter-spacing: -0.04em;
}

.koska-contact-form-section__heading > p:not(.koska-contact-eyebrow) {
	max-width: 30rem;
	margin: 0;
	color: rgba(255, 248, 238, 0.82);
	font-size: 1rem;
	line-height: 1.7;
}

.koska-contact-form-section__note {
	margin-top: 2rem !important;
	padding-top: 2rem;
	border-top: 1px solid rgba(255, 248, 238, 0.2);
}

.koska-contact-form-section > .wp-block-shortcode {
	position: relative;
	z-index: 1;
	margin: 0;
}


/* Form */

.koska-contact-form-wrap {
	width: 100%;
}

.koska-contact-form {
	display: grid;
	gap: 1.7rem;
}

.koska-contact-form__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.4rem;
}

.koska-contact-form__field {
	display: grid;
	gap: 0.65rem;
}

.koska-contact-form__field label {
	display: flex;
	gap: 0.5rem;
	align-items: baseline;
	color: rgba(255, 248, 238, 0.88);
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.koska-contact-form__field label span {
	color: rgba(255, 248, 238, 0.46);
	font-size: 0.62rem;
	font-weight: 400;
	letter-spacing: 0.05em;
	text-transform: none;
}

.koska-contact-form input[type="text"],
.koska-contact-form input[type="email"],
.koska-contact-form input[type="tel"],
.koska-contact-form select,
.koska-contact-form textarea {
	width: 100%;
	margin: 0;
	border: 0;
	border-bottom: 1px solid rgba(255, 248, 238, 0.32);
	border-radius: 0;
	background: transparent;
	color: var(--koska-cream);
	font: inherit;
	box-shadow: none;
	transition:
		border-color 180ms ease,
		background 180ms ease;
}

.koska-contact-form input[type="text"],
.koska-contact-form input[type="email"],
.koska-contact-form input[type="tel"],
.koska-contact-form select {
	min-height: 3.4rem;
	padding: 0.7rem 0;
}

.koska-contact-form textarea {
	min-height: 10rem;
	padding: 0.9rem 0;
	resize: vertical;
	line-height: 1.55;
}

.koska-contact-form select {
	appearance: auto;
}

.koska-contact-form select option {
	background: var(--koska-ink);
	color: var(--koska-cream);
}

.koska-contact-form input:focus,
.koska-contact-form select:focus,
.koska-contact-form textarea:focus {
	border-color: var(--koska-clay);
	background: rgba(255, 255, 255, 0.025);
}

.koska-contact-form__consent {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.8rem;
	align-items: start;
	max-width: 38rem;
	color: rgba(255, 248, 238, 0.72);
	font-size: 0.8rem;
	line-height: 1.5;
	cursor: pointer;
}

.koska-contact-form__consent input {
	width: 1rem;
	height: 1rem;
	margin: 0.1rem 0 0;
	accent-color: var(--koska-clay);
}

.koska-contact-form__submit {
	justify-self: start;
	min-width: 13rem;
	margin-top: 0.6rem;
	padding: 1rem 1.7rem;
	border: 1px solid var(--koska-clay);
	border-radius: 0;
	background: var(--koska-clay);
	color: var(--koska-cream);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	cursor: pointer;
	transition:
		background 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.koska-contact-form__submit:hover,
.koska-contact-form__submit:focus-visible {
	background: transparent;
	color: var(--koska-cream);
	transform: translateY(-2px);
}

.koska-contact-form__status {
	margin: 0 0 2rem;
	padding: 1rem 1.2rem;
	border: 1px solid rgba(255, 248, 238, 0.3);
	color: var(--koska-cream);
	font-size: 0.9rem;
	line-height: 1.5;
}

.koska-contact-form__status.is-success {
	border-color: var(--koska-clay);
}

.koska-contact-form__status.is-error {
	border-color: #c98f7c;
}

.koska-contact-form__trap {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}


/* Showroom finale */

.koska-contact-showroom {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: min(78svh, 52rem);
	overflow: hidden;
	background: var(--koska-ink);
	color: var(--koska-cream);
}

.koska-contact-showroom__image {
	object-position: center;
}

.koska-contact-showroom__shade {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			90deg,
			rgba(30, 25, 21, 0.82) 0%,
			rgba(30, 25, 21, 0.45) 50%,
			rgba(30, 25, 21, 0.15) 100%
		),
		linear-gradient(
			0deg,
			rgba(30, 25, 21, 0.38) 0%,
			transparent 55%
		);
}

.koska-contact-showroom__content {
	position: relative;
	z-index: 2;
	width: min(calc(100% - 4rem), var(--koska-contact-max));
	margin: 0 auto;
	padding: clamp(5rem, 8vw, 8rem) 0;
}

.koska-contact-showroom h2 {
	max-width: 10ch;
	margin: 1rem 0 2rem;
	color: var(--koska-cream) !important;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(4rem, 6.8vw, 7.4rem);
	font-weight: 500;
	line-height: 0.88;
	letter-spacing: -0.04em;
}

.koska-contact-showroom address {
	margin: 0;
	font-size: 1rem;
	font-style: normal;
	line-height: 1.65;
}

.koska-contact-showroom__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
	margin-top: 2rem;
}

.koska-contact-button {
	display: inline-flex;
	min-height: 3.1rem;
	align-items: center;
	justify-content: center;
	padding: 0.8rem 1.45rem;
	border: 1px solid transparent;
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	text-decoration: none;
	text-transform: uppercase;
	transition:
		background 180ms ease,
		color 180ms ease,
		border-color 180ms ease;
}

.koska-contact-button--clay {
	border-color: var(--koska-clay);
	background: var(--koska-clay);
	color: var(--koska-cream);
}

.koska-contact-button--clay:hover,
.koska-contact-button--clay:focus-visible {
	border-color: var(--koska-cream);
	background: var(--koska-cream);
	color: var(--koska-ink);
}

.koska-contact-button--ghost {
	border-color: rgba(255, 248, 238, 0.7);
	color: var(--koska-cream);
}

.koska-contact-button--ghost:hover,
.koska-contact-button--ghost:focus-visible {
	border-color: var(--koska-cream);
	background: var(--koska-cream);
	color: var(--koska-ink);
}


/* Tablet */

@media (max-width: 960px) {

	.koska-contact-hero__content,
	.koska-contact-showroom__content,
	.koska-contact-paths {
		width: min(calc(100% - 3rem), var(--koska-contact-max));
	}

	.koska-contact-paths__heading {
		grid-template-columns: 1fr;
	}

	.koska-contact-paths__grid {
		grid-template-columns: 1fr;
	}

	.koska-contact-path {
		min-height: 0;
		padding: 2.25rem 0 2.5rem;
		border-right: 0;
		border-bottom: 1px solid var(--koska-line);
	}

	.koska-contact-path + .koska-contact-path {
		padding-left: 0;
	}

	.koska-contact-path:last-child {
		border-bottom: 0;
	}

	.koska-contact-path__number {
		margin-bottom: 2.5rem;
	}

	.koska-contact-path h3 {
		margin-top: 0;
	}

	.koska-contact-form-section {
		grid-template-columns: 1fr;
		gap: 4rem;
		padding-right: 1.5rem !important;
		padding-left: 1.5rem !important;
	}

	.koska-contact-form-section__heading h2 {
		max-width: 11ch;
	}
}


/* Phone */

@media (max-width: 640px) {

	.koska-contact-hero {
		min-height: 78svh;
	}

	.koska-contact-hero__image {
		object-position: 59% center;
	}

	.koska-contact-hero__shade {
		background:
			linear-gradient(
				0deg,
				rgba(30, 25, 21, 0.76) 0%,
				rgba(30, 25, 21, 0.43) 62%,
				rgba(30, 25, 21, 0.2) 100%
			);
	}

	.koska-contact-hero__content,
	.koska-contact-showroom__content,
	.koska-contact-paths {
		width: calc(100% - 2rem);
	}

	.koska-contact-hero__content {
		padding-bottom: 3rem;
	}

	.koska-contact-hero h1 {
		font-size: clamp(3.6rem, 18vw, 5.4rem);
	}

	.koska-contact-hero__lead {
		font-size: 0.92rem;
	}

	.koska-contact-paths {
		padding-top: 5rem;
		padding-bottom: 7rem;
	}

	.koska-contact-paths__heading {
		margin-bottom: 3rem;
	}

	.koska-contact-paths__heading h2 {
		font-size: clamp(3rem, 14vw, 4.8rem);
	}

	.koska-contact-form-section {
		gap: 3rem;
		padding:
			5rem 1rem
			6rem !important;
	}

	.koska-contact-form-section::before {
		top: -2.5rem;
		height: 4rem;
	}

	.koska-contact-form-section__heading h2 {
		font-size: clamp(3.3rem, 15vw, 5rem);
	}

	.koska-contact-form__row {
		grid-template-columns: 1fr;
		gap: 1.7rem;
	}

	.koska-contact-form__submit {
		width: 100%;
	}

	.koska-contact-showroom {
		min-height: 70svh;
	}

	.koska-contact-showroom__shade {
		background:
			linear-gradient(
				0deg,
				rgba(30, 25, 21, 0.8) 0%,
				rgba(30, 25, 21, 0.38) 72%,
				rgba(30, 25, 21, 0.15) 100%
			);
	}

	.koska-contact-showroom__content {
		padding: 5rem 0 3.5rem;
	}

	.koska-contact-showroom h2 {
		font-size: clamp(3.5rem, 16vw, 5.3rem);
	}

	.koska-contact-showroom__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.koska-contact-button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {

	.koska-contact-page *,
	.koska-contact-page *::before,
	.koska-contact-page *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}


/* ==========================================================================
   Kontakt — V2 editorial utility
   ========================================================================== */

body.page-id-23 .wp-site-blocks > main.koska-contact-page {
	margin-block-start: 0 !important;
}

body.page-id-23 .koska-header-brand {
	border-bottom: 0 !important;
}

.koska-contact-v2 {
	--contact-v2-ink: #211914;
	--contact-v2-dark: #2b1b12;
	--contact-v2-cream: #f0e8dc;
	--contact-v2-paper: #f7f1e8;
	--contact-v2-clay: #b97951;
	--contact-v2-line: rgba(42, 28, 20, 0.18);
	background: var(--contact-v2-cream);
	color: var(--contact-v2-ink);
}

.koska-contact-v2-eyebrow {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	line-height: 1.2;
	text-transform: uppercase;
}


/* HERO — celowo bez fotografii */

.koska-contact-v2-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(25rem, 0.75fr);
	min-height: min(76svh, 49rem);
	background: var(--contact-v2-paper);
}

.koska-contact-v2-hero__main {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding:
		clamp(5.5rem, 8vw, 8.5rem)
		clamp(2rem, 5vw, 6rem)
		clamp(4rem, 6vw, 6rem)
		max(2rem, calc((100vw - 92rem) / 2));
}

.koska-contact-v2-hero h1 {
	max-width: 8.5ch;
	margin: 1.25rem 0 2rem;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(5rem, 8.2vw, 9rem);
	font-weight: 500;
	letter-spacing: -0.055em;
	line-height: 0.83;
}

.koska-contact-v2-hero__lead {
	max-width: 37rem;
	margin: 0;
	font-size: clamp(1.05rem, 1.3vw, 1.25rem);
	line-height: 1.65;
}

.koska-contact-v2-arrow-link {
	display: inline-flex;
	align-self: flex-start;
	gap: 1.25rem;
	align-items: center;
	margin-top: 2.25rem;
	padding-bottom: 0.35rem;
	border-bottom: 1px solid currentColor;
	color: var(--contact-v2-ink);
	font-size: 0.76rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	text-decoration: none;
	text-transform: uppercase;
}

.koska-contact-v2-arrow-link:hover,
.koska-contact-v2-arrow-link:focus-visible {
	color: var(--contact-v2-clay);
}

.koska-contact-v2-start {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding:
		clamp(4rem, 6vw, 6rem)
		max(2rem, calc((100vw - 92rem) / 2))
		clamp(4rem, 6vw, 6rem)
		clamp(2rem, 3.6vw, 4rem);
	background: var(--contact-v2-dark);
	color: var(--contact-v2-cream);
}

.koska-contact-v2-start__label {
	margin: 0 0 2.25rem;
	color: rgba(240, 232, 220, 0.62);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.koska-contact-v2-start__item {
	display: grid;
	grid-template-columns: 2.2rem 1fr;
	gap: 0.25rem 1rem;
	padding: 1.4rem 0;
	border-top: 1px solid rgba(240, 232, 220, 0.2);
	color: var(--contact-v2-cream);
	text-decoration: none;
}

.koska-contact-v2-start__item:last-child {
	border-bottom: 1px solid rgba(240, 232, 220, 0.2);
}

.koska-contact-v2-start__item > span {
	grid-row: 1 / span 2;
	color: var(--contact-v2-clay);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.koska-contact-v2-start__item strong {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.7rem, 2vw, 2.2rem);
	font-weight: 500;
	line-height: 1;
}

.koska-contact-v2-start__item em {
	color: rgba(240, 232, 220, 0.6);
	font-size: 0.78rem;
	font-style: normal;
	line-height: 1.45;
}

.koska-contact-v2-start__item:hover strong,
.koska-contact-v2-start__item:focus-visible strong {
	color: #d89a70;
}


/* FORMULARZ — główny element strony */

.koska-contact-v2-form-section {
	display: grid !important;
	grid-template-columns: minmax(20rem, 0.72fr) minmax(34rem, 1.28fr);
	gap: clamp(4rem, 7vw, 8rem);
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding:
		clamp(5.5rem, 8vw, 8rem)
		max(2rem, calc((100vw - 92rem) / 2))
		clamp(6rem, 9vw, 9rem) !important;
	background: var(--contact-v2-cream);
}

.koska-contact-v2-form-intro {
	align-self: start;
}

.koska-contact-v2-form-intro h2 {
	max-width: 8ch;
	margin: 1rem 0 1.75rem;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(4rem, 5.8vw, 6.5rem);
	font-weight: 500;
	letter-spacing: -0.045em;
	line-height: 0.88;
}

.koska-contact-v2-form-intro > p:not(.koska-contact-v2-eyebrow) {
	max-width: 30rem;
	margin: 0;
	font-size: 1rem;
	line-height: 1.7;
}

.koska-contact-v2-form-tip {
	max-width: 30rem;
	margin-top: 2.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--contact-v2-line);
}

.koska-contact-v2-form-tip > span {
	display: block;
	margin-bottom: 0.6rem;
	color: var(--contact-v2-clay);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.koska-contact-v2-form-tip p {
	margin: 0;
	font-size: 0.88rem;
	line-height: 1.6;
}

.koska-contact-v2-form-section > .wp-block-shortcode {
	margin: 0;
}

/* Reset starego ciemnego wyglądu formularza */
.koska-contact-v2 .koska-contact-form {
	gap: 1.35rem;
}

.koska-contact-v2 .koska-contact-form__row {
	gap: 1.35rem;
}

.koska-contact-v2 .koska-contact-form__field {
	gap: 0.55rem;
}

.koska-contact-v2 .koska-contact-form__field label {
	color: var(--contact-v2-ink);
	font-size: 0.7rem;
	letter-spacing: 0.11em;
}

.koska-contact-v2 .koska-contact-form__field label span {
	color: rgba(33, 25, 20, 0.5);
}

.koska-contact-v2 .koska-contact-form input[type="text"],
.koska-contact-v2 .koska-contact-form input[type="email"],
.koska-contact-v2 .koska-contact-form input[type="tel"],
.koska-contact-v2 .koska-contact-form select,
.koska-contact-v2 .koska-contact-form textarea {
	border: 1px solid rgba(33, 25, 20, 0.22);
	border-radius: 0;
	background: var(--contact-v2-paper);
	color: var(--contact-v2-ink);
}

.koska-contact-v2 .koska-contact-form input[type="text"],
.koska-contact-v2 .koska-contact-form input[type="email"],
.koska-contact-v2 .koska-contact-form input[type="tel"],
.koska-contact-v2 .koska-contact-form select {
	min-height: 4rem;
	padding: 0.85rem 1rem;
}

.koska-contact-v2 .koska-contact-form textarea {
	min-height: 12rem;
	padding: 1rem;
}

.koska-contact-v2 .koska-contact-form input:hover,
.koska-contact-v2 .koska-contact-form select:hover,
.koska-contact-v2 .koska-contact-form textarea:hover {
	border-color: rgba(33, 25, 20, 0.45);
}

.koska-contact-v2 .koska-contact-form input:focus,
.koska-contact-v2 .koska-contact-form select:focus,
.koska-contact-v2 .koska-contact-form textarea:focus {
	border-color: var(--contact-v2-clay);
	background: #fffaf3;
	box-shadow: 0 0 0 1px var(--contact-v2-clay);
}

.koska-contact-v2 .koska-contact-form select option {
	background: #fffaf3;
	color: var(--contact-v2-ink);
}

.koska-contact-v2 .koska-contact-form__consent {
	color: rgba(33, 25, 20, 0.72);
}

.koska-contact-v2 .koska-contact-form__submit {
	width: auto;
	min-width: 14rem;
	min-height: 3.7rem;
	margin-top: 0.4rem;
	border-color: var(--contact-v2-dark);
	background: var(--contact-v2-dark);
	color: var(--contact-v2-cream);
}

.koska-contact-v2 .koska-contact-form__submit:hover,
.koska-contact-v2 .koska-contact-form__submit:focus-visible {
	border-color: var(--contact-v2-clay);
	background: var(--contact-v2-clay);
	color: #fff;
}

.koska-contact-v2 .koska-contact-form__status {
	border-color: var(--contact-v2-line);
	background: var(--contact-v2-paper);
	color: var(--contact-v2-ink);
}

body.koska-contact-modal-open {
   overflow: hidden;
}

.koska-contact-success-modal {
   position: fixed;
   z-index: 10000;
   inset: 0;
   display: grid;
   place-items: center;
   padding: clamp(1.25rem, 4vw, 3rem);
}

.koska-contact-success-modal[hidden] {
   display: none;
}

.koska-contact-success-modal__backdrop {
   position: absolute;
   inset: 0;
   background: rgba(24, 18, 14, 0.72);
   backdrop-filter: blur(3px);
}

.koska-contact-success-modal__panel {
   position: relative;
   z-index: 1;
   width: min(100%, 34rem);
   padding: clamp(2.5rem, 6vw, 4rem);
   border: 1px solid rgba(42, 28, 20, 0.18);
   background: var(--contact-v2-paper, #f7f1e8);
   box-shadow: 0 2rem 6rem rgba(18, 12, 9, 0.28);
   color: var(--contact-v2-ink, #211914);
   text-align: center;
}

.koska-contact-success-modal__eyebrow {
   margin: 0 0 1.25rem;
   color: var(--contact-v2-clay, #b97951);
   font-size: 0.72rem;
   font-weight: 600;
   letter-spacing: 0.17em;
   line-height: 1.2;
   text-transform: uppercase;
}

.koska-contact-success-modal__panel h2 {
   margin: 0;
   font-family: "Cormorant Garamond", serif;
   font-size: clamp(3.6rem, 8vw, 5.5rem);
   font-weight: 500;
   letter-spacing: -0.045em;
   line-height: 0.9;
}

.koska-contact-success-modal__panel > p:last-of-type {
   max-width: 25rem;
   margin: 1.75rem auto 0;
   font-size: 1rem;
   line-height: 1.7;
}

.koska-contact-success-modal__close {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   min-width: 10rem;
   margin-top: 2rem;
   padding: 0.9rem 1.5rem;
   border: 1px solid var(--contact-v2-ink, #211914);
   background: var(--contact-v2-ink, #211914);
   color: var(--contact-v2-paper, #f7f1e8);
   font-size: 0.75rem;
   font-weight: 600;
   letter-spacing: 0.11em;
   text-decoration: none;
   text-transform: uppercase;
   transition:
      background 160ms ease,
      color 160ms ease,
      transform 160ms ease;
}

.koska-contact-success-modal__close:hover,
.koska-contact-success-modal__close:focus-visible {
   background: transparent;
   color: var(--contact-v2-ink, #211914);
   transform: translateY(-2px);
}

@media (max-width: 480px) {
   .koska-contact-success-modal {
      padding: 1rem;
   }

   .koska-contact-success-modal__panel {
      padding: 2.25rem 1.5rem;
   }

   .koska-contact-success-modal__panel h2 {
      font-size: clamp(3.2rem, 16vw, 4.2rem);
   }
}



/* BARTYCKA — split, nie kolejne hero */

.koska-contact-v2-showroom {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(25rem, 0.8fr);
	min-height: 42rem;
	background: var(--contact-v2-dark);
	color: var(--contact-v2-cream);
}

.koska-contact-v2-showroom__visual {
	min-height: 42rem;
	overflow: hidden;
}

.koska-contact-v2-showroom__visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.koska-contact-v2-showroom__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding:
		clamp(4rem, 6vw, 6.5rem)
		max(2rem, calc((100vw - 92rem) / 2))
		clamp(4rem, 6vw, 6.5rem)
		clamp(3rem, 5vw, 6rem);
}

.koska-contact-v2-showroom h2 {
	max-width: 9ch;
	margin: 1rem 0 1.75rem;
	color: var(--contact-v2-cream) !important;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(3.7rem, 5vw, 6rem);
	font-weight: 500;
	letter-spacing: -0.04em;
	line-height: 0.9;
}

.koska-contact-v2-showroom__copy {
	max-width: 29rem;
	margin: 0 0 2rem;
	color: rgba(240, 232, 220, 0.74);
	line-height: 1.65;
}

.koska-contact-v2-showroom address {
	margin: 0;
	font-size: 1rem;
	font-style: normal;
	line-height: 1.7;
}

.koska-contact-v2-showroom__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: 2.25rem;
}

.koska-contact-v2-button {
	display: inline-flex;
	min-height: 3.25rem;
	align-items: center;
	justify-content: center;
	padding: 0.8rem 1.5rem;
	border: 1px solid transparent;
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-decoration: none;
	text-transform: uppercase;
}

.koska-contact-v2-button--light {
	background: var(--contact-v2-cream);
	color: var(--contact-v2-dark);
}

.koska-contact-v2-button--outline {
	border-color: rgba(240, 232, 220, 0.6);
	color: var(--contact-v2-cream);
}

.koska-contact-v2-button--light:hover,
.koska-contact-v2-button--light:focus-visible,
.koska-contact-v2-button--outline:hover,
.koska-contact-v2-button--outline:focus-visible {
	border-color: var(--contact-v2-clay);
	background: var(--contact-v2-clay);
	color: #fff;
}


/* Tablet */

@media (max-width: 960px) {
	.koska-contact-v2-hero {
		grid-template-columns: 1fr;
	}

	.koska-contact-v2-hero__main {
		min-height: 34rem;
		padding-right: 1.5rem;
		padding-left: 1.5rem;
	}

	.koska-contact-v2-start {
		padding: 3rem 1.5rem;
	}

	.koska-contact-v2-form-section {
		grid-template-columns: 1fr;
		gap: 3.5rem;
		padding-right: 1.5rem !important;
		padding-left: 1.5rem !important;
	}

	.koska-contact-v2-showroom {
		grid-template-columns: 1fr;
	}

	.koska-contact-v2-showroom__visual {
		min-height: 30rem;
	}

	.koska-contact-v2-showroom__content {
		padding: 4rem 1.5rem;
	}
}


/* Phone */

@media (max-width: 640px) {
	.koska-contact-v2-hero__main {
		min-height: 31rem;
		padding: 5rem 1rem 3rem;
	}

	.koska-contact-v2-hero h1 {
		font-size: clamp(3.8rem, 18vw, 5.5rem);
	}

	.koska-contact-v2-hero__lead {
		font-size: 0.94rem;
	}

	.koska-contact-v2-start {
		padding: 2.5rem 1rem;
	}

	.koska-contact-v2-start__item {
		grid-template-columns: 1.8rem 1fr;
	}

	.koska-contact-v2-form-section {
		gap: 2.75rem;
		padding: 4.5rem 1rem 5rem !important;
	}

	.koska-contact-v2-form-intro h2 {
		font-size: clamp(3.4rem, 16vw, 5rem);
	}

	.koska-contact-v2 .koska-contact-form__row {
		grid-template-columns: 1fr;
	}

	.koska-contact-v2 .koska-contact-form__submit {
		width: 100%;
	}

	.koska-contact-v2-showroom__visual {
		min-height: 23rem;
	}

	.koska-contact-v2-showroom__content {
		padding: 3.5rem 1rem;
	}

	.koska-contact-v2-showroom h2 {
		font-size: clamp(3.4rem, 15vw, 4.8rem);
	}

	.koska-contact-v2-showroom__actions {
		display: grid;
		grid-template-columns: 1fr;
	}

	.koska-contact-v2-button {
		width: 100%;
	}
}

/* Kontakt V2 — submit button alignment */
.koska-contact-v2 .koska-contact-form__submit {
	display: inline-flex;
	min-height: 3.25rem;
	align-items: center;
	justify-content: center;
	padding: 0 1.5rem;
	line-height: 1;
}


/* Kontakt V2 — dane kontaktowe */
.koska-contact-v2-direct {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: 100%;
	padding:
		1.65rem
		max(2rem, calc((100vw - 92rem) / 2));
	border-top: 1px solid rgba(42, 28, 20, 0.14);
	border-bottom: 1px solid rgba(42, 28, 20, 0.14);
	background: #e9dfd2;
}

.koska-contact-v2-direct__item {
	display: flex;
	min-height: 4.25rem;
	flex-direction: column;
	justify-content: center;
	padding: 0 2rem;
	border-right: 1px solid rgba(42, 28, 20, 0.16);
}

.koska-contact-v2-direct__item:first-child {
	padding-left: 0;
}

.koska-contact-v2-direct__item:last-child {
	padding-right: 0;
	border-right: 0;
}

.koska-contact-v2-direct__item > span {
	margin-bottom: 0.4rem;
	color: rgba(33, 25, 20, 0.52);
	font-size: 0.66rem;
	font-weight: 600;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.koska-contact-v2-direct__item a {
	width: fit-content;
	color: var(--contact-v2-ink);
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.25rem, 1.55vw, 1.6rem);
	line-height: 1.15;
	text-decoration: none;
}

.koska-contact-v2-direct__item a:hover,
.koska-contact-v2-direct__item a:focus-visible {
	color: var(--contact-v2-clay);
}


/* Kontakt V2 — finalna proporcja submit */
.koska-contact-v2 .koska-contact-form__submit {
	display: inline-flex !important;
	width: max-content !important;
	min-width: 12.5rem !important;
	height: 3rem !important;
	min-height: 3rem !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: start !important;
	justify-self: start !important;
	margin: 0.35rem 0 0 !important;
	padding: 0 1.35rem !important;
	border-radius: 0 !important;
	font-size: 0.71rem !important;
	line-height: 1 !important;
	box-sizing: border-box !important;
}

@media (max-width: 960px) {
	.koska-contact-v2-direct {
		padding-right: 1.5rem;
		padding-left: 1.5rem;
	}
}

@media (max-width: 640px) {
	.koska-contact-v2-direct {
		grid-template-columns: 1fr;
		padding: 0 1rem;
	}

	.koska-contact-v2-direct__item {
		min-height: 0;
		padding: 1.25rem 0;
		border-right: 0;
		border-bottom: 1px solid rgba(42, 28, 20, 0.16);
	}

	.koska-contact-v2-direct__item:last-child {
		border-bottom: 0;
	}

	.koska-contact-v2 .koska-contact-form__submit {
		width: 100% !important;
	}
}

/* Kontakt V2 — vertical balance of topic panel */
.koska-contact-v2-start {
	justify-content: center;
}

/* Kontakt V2 — compact form ending */
.koska-contact-v2 .koska-contact-form {
	row-gap: 1.15rem;
}

.koska-contact-v2 .koska-contact-form__consent {
	margin-top: 0.15rem;
}

.koska-contact-v2 .koska-contact-form__submit {
	margin-top: 0.15rem !important;
}

.koska-contact-v2-form-section {
	padding-bottom: clamp(4rem, 5vw, 5.5rem) !important;
}

/* Kontakt V2 — final form vertical flow */
.koska-contact-v2-form-section {
	align-items: start !important;
}

.koska-contact-v2-form-section > .wp-block-shortcode {
	align-self: start !important;
	width: 100%;
}

.koska-contact-v2 .koska-contact-form-wrap {
	height: auto !important;
	min-height: 0 !important;
}

.koska-contact-v2 .koska-contact-form {
	height: auto !important;
	min-height: 0 !important;
	align-content: start !important;
	grid-auto-rows: max-content;
	row-gap: 1.25rem !important;
}

.koska-contact-v2 .koska-contact-form__consent {
	display: flex !important;
	width: auto !important;
	max-width: 38rem;
	align-items: flex-start !important;
	gap: 0.75rem !important;
	margin: 0.25rem 0 0 !important;
}

.koska-contact-v2 .koska-contact-form__consent input {
	flex: 0 0 1rem;
	margin: 0.15rem 0 0 !important;
}

.koska-contact-v2 .koska-contact-form__consent span {
	display: block;
	margin: 0;
}

.koska-contact-v2 .koska-contact-form__submit {
	margin: 0.35rem 0 0 !important;
}

.koska-contact-v2-form-section {
	padding-bottom: clamp(3.5rem, 4vw, 4.5rem) !important;
}


/* Kontakt V2 — optical button label and consent */

/* Optyczne, nie tylko matematyczne wycentrowanie tekstu przycisku. */
.koska-contact-v2 .koska-contact-form__submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 3rem !important;
	min-height: 3rem !important;
	padding: 0 1.45rem !important;
}

.koska-contact-v2 .koska-contact-form__submit-label {
	display: block;
	margin: 0;
	padding: 0;
	line-height: 1 !important;
	transform: translateY(-2px);
}

/* Zgoda — jeden zwarty, równy element. */
.koska-contact-v2 .koska-contact-form__consent {
	display: inline-flex !important;
	width: fit-content !important;
	max-width: 100%;
	align-items: center !important;
	gap: 0.65rem !important;
	margin: 0.25rem 0 0 !important;
	color: rgba(33, 25, 20, 0.68);
	font-size: 0.78rem;
	line-height: 1.35;
	cursor: pointer;
}

.koska-contact-v2 .koska-contact-form__consent input {
	appearance: none;
	-webkit-appearance: none;
	position: relative;
	width: 1.1rem !important;
	height: 1.1rem !important;
	flex: 0 0 1.1rem !important;
	margin: 0 !important;
	border: 1px solid rgba(33, 25, 20, 0.52);
	border-radius: 0;
	background: transparent;
	cursor: pointer;
}

.koska-contact-v2 .koska-contact-form__consent input:checked {
	border-color: var(--contact-v2-clay);
	background: var(--contact-v2-clay);
}

.koska-contact-v2 .koska-contact-form__consent input:checked::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 5px;
	width: 4px;
	height: 8px;
	border-right: 1.5px solid #fff;
	border-bottom: 1.5px solid #fff;
	transform: rotate(45deg);
}

.koska-contact-v2 .koska-contact-form__consent input:focus-visible {
	outline: 2px solid var(--contact-v2-clay);
	outline-offset: 3px;
}

.koska-contact-v2 .koska-contact-form__consent span {
	display: block;
	margin: 0 !important;
	padding: 0;
	line-height: 1.35;
	transform: translateY(-1px);
}

/* Kontakt V2 — finalne wyrównanie zgody + krótszy dół formularza */
.koska-contact-v2 .koska-contact-form__consent {
        display: inline-flex !important;
        align-items: center !important;
        gap: 0.7rem !important;
        margin: 0.1rem 0 0 !important;
        line-height: 1.35 !important;
}

.koska-contact-v2 .koska-contact-form__consent input {
        margin: 0 !important;
        align-self: center !important;
        transform: translateY(0) !important;
}

.koska-contact-v2 .koska-contact-form__consent span {
        margin: 0 !important;
        transform: none !important;
        line-height: 1.35 !important;
}

/* Mniej pustego miejsca na końcu formularza */
.koska-contact-v2 .koska-contact-form {
        row-gap: 1rem !important;
}

.koska-contact-v2 .koska-contact-form__submit {
        margin-top: 0.2rem !important;
}

.koska-contact-v2-form-section {
        padding-bottom: clamp(2.25rem, 3vw, 3rem) !important;
}

/* Kontakt V2 — optical consent text alignment */
.koska-contact-v2 .koska-contact-form__consent span {
        transform: translateY(-2px) !important;
}


/* Kontakt V2 — rebuilt form footer */

/*
 * Zgoda i submit są jednym elementem grida.
 * Koniec z niezależnym rozciąganiem ich przez layout formularza.
 */
.koska-contact-v2 .koska-contact-form__footer {
	display: flex;
	width: 100%;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.15rem;
	margin: 0.25rem 0 0;
	padding: 0;
}

/* Zgoda */
.koska-contact-v2 .koska-contact-form__footer .koska-contact-form__consent {
	display: grid !important;
	grid-template-columns: 1.125rem auto;
	column-gap: 0.75rem !important;
	align-items: center !important;
	width: fit-content !important;
	max-width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	color: rgba(33, 25, 20, 0.7);
	font-size: 0.8rem;
	line-height: 1.125rem !important;
	cursor: pointer;
}

.koska-contact-v2 .koska-contact-form__footer .koska-contact-form__consent input {
	appearance: none !important;
	-webkit-appearance: none !important;
	position: relative;
	display: block !important;
	width: 1.125rem !important;
	height: 1.125rem !important;
	min-width: 1.125rem !important;
	min-height: 1.125rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(33, 25, 20, 0.5) !important;
	border-radius: 0 !important;
	background: transparent !important;
	transform: none !important;
	box-sizing: border-box !important;
	cursor: pointer;
}

.koska-contact-v2 .koska-contact-form__footer .koska-contact-form__consent input:checked {
	border-color: var(--contact-v2-clay) !important;
	background: var(--contact-v2-clay) !important;
}

.koska-contact-v2 .koska-contact-form__footer .koska-contact-form__consent input:checked::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 5px;
	width: 4px;
	height: 8px;
	border-right: 1.5px solid #fff;
	border-bottom: 1.5px solid #fff;
	transform: rotate(45deg);
}

.koska-contact-v2 .koska-contact-form__footer .koska-contact-form__consent span {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.125rem !important;
	transform: none !important;
}

/* Submit */
.koska-contact-v2 .koska-contact-form__footer .koska-contact-form__submit {
	display: grid !important;
	width: max-content !important;
	min-width: 13.5rem !important;
	height: 3.25rem !important;
	min-height: 3.25rem !important;
	place-items: center !important;
	margin: 0 !important;
	padding: 0 1.6rem !important;
	border-radius: 0 !important;
	box-sizing: border-box !important;
}

.koska-contact-v2 .koska-contact-form__footer .koska-contact-form__submit-label {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
	transform: translateY(-1px) !important;
}

/* Skracamy sam dół sekcji, bez ruszania odstępów między polami. */
.koska-contact-v2-form-section {
	padding-bottom: clamp(2.5rem, 3vw, 3.25rem) !important;
}

@media (max-width: 640px) {
	.koska-contact-v2 .koska-contact-form__footer {
		width: 100%;
	}

	.koska-contact-v2 .koska-contact-form__footer .koska-contact-form__submit {
		width: 100% !important;
	}
}


/* Kontakt V2 — final native consent control */
.koska-contact-v2 .koska-contact-consent-v2 {
	position: relative;
	display: inline-flex !important;
	width: fit-content;
	max-width: 100%;
	align-items: center !important;
	gap: 0.7rem;
	margin: 0 !important;
	padding: 0 !important;
	color: rgba(33, 25, 20, 0.7);
	font-size: 0.8rem;
	line-height: 1.35;
	cursor: pointer;
}

.koska-contact-v2 .koska-contact-consent-v2__input {
	-webkit-appearance: none !important;
	appearance: none !important;
	position: relative !important;
	display: block !important;
	width: 1.1rem !important;
	height: 1.1rem !important;
	min-width: 1.1rem !important;
	min-height: 1.1rem !important;
	flex: 0 0 1.1rem !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	opacity: 1 !important;
	clip: auto !important;
	clip-path: none !important;
	white-space: normal !important;
	border: 1px solid rgba(33, 25, 20, 0.5) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-sizing: border-box !important;
	cursor: pointer;
}

.koska-contact-v2 .koska-contact-consent-v2__input:checked {
	border-color: var(--contact-v2-clay) !important;
	background: var(--contact-v2-clay) !important;
}

.koska-contact-v2 .koska-contact-consent-v2__input:checked::after {
	content: "";
	position: absolute;
	top: 1px;
	left: 4px;
	width: 4px;
	height: 8px;
	border-right: 1.5px solid #fff;
	border-bottom: 1.5px solid #fff;
	transform: rotate(45deg);
}

.koska-contact-v2 .koska-contact-consent-v2__input:focus-visible {
	outline: 2px solid var(--contact-v2-clay);
	outline-offset: 3px;
}

.koska-contact-v2 .koska-contact-consent-v2__text {
	display: block;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.35 !important;
	transform: none !important;
}

.koska-contact-v2 .koska-contact-form__footer {
	gap: 1rem !important;
	margin-top: 0.2rem !important;
}

.koska-contact-v2-form-section {
	padding-bottom: 2.5rem !important;
}


/* Kontakt V2 — final field vertical flow */

/*
 * Pola nie mogą być wewnętrznym gridem.
 * W rozciągniętym wierszu grid rozpychał label i kontrolkę pionowo.
 */
.koska-contact-v2 .koska-contact-form {
	align-content: start !important;
	grid-auto-rows: max-content !important;
}

.koska-contact-v2 .koska-contact-form__row {
	align-items: start !important;
}

.koska-contact-v2 .koska-contact-form__field {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	align-self: start !important;
	width: 100%;
	height: auto !important;
	min-height: 0 !important;
	gap: 0.6rem !important;
	margin: 0 !important;
	padding: 0 !important;
}

.koska-contact-v2 .koska-contact-form__field label {
	display: inline-flex !important;
	width: fit-content;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: nowrap !important;
	gap: 0.55rem !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	line-height: 1.2 !important;
}

.koska-contact-v2 .koska-contact-form__field label .koska-contact-form__optional {
	display: inline-block !important;
	position: static !important;
	margin: 0 !important;
	padding: 0 !important;
	color: rgba(33, 25, 20, 0.48) !important;
	font-size: 0.62rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.04em !important;
	line-height: 1.2 !important;
	text-transform: none !important;
	transform: none !important;
	vertical-align: middle !important;
}

.koska-contact-v2 .koska-contact-form__field input[type="text"],
.koska-contact-v2 .koska-contact-form__field input[type="email"],
.koska-contact-v2 .koska-contact-form__field input[type="tel"],
.koska-contact-v2 .koska-contact-form__field select,
.koska-contact-v2 .koska-contact-form__field textarea {
	align-self: stretch !important;
	margin: 0 !important;
}


/* =========================================================
   BLOG KOSKA
   ========================================================= */

body.blog .wp-site-blocks > main.koska-blog {
	margin-block-start: 0 !important;
}

body.blog .koska-header-brand {
	border-bottom: 0 !important;
}

.koska-blog {
	--blog-ink: #211914;
	--blog-paper: #f4eee6;
	--blog-cream: #eee5da;
	--blog-clay: #a87352;
	--blog-line: rgba(33, 25, 20, 0.18);
	--blog-dark: #251b16;
	background: var(--blog-paper);
	color: var(--blog-ink);
}

.koska-blog-hero {
	padding: clamp(4.5rem, 7vw, 7rem) clamp(1.5rem, 5vw, 5.5rem) clamp(4rem, 6vw, 6rem);
	border-bottom: 1px solid var(--blog-line);
}

.koska-blog-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(18rem, 0.55fr);
	gap: clamp(3rem, 8vw, 9rem);
	max-width: 1500px;
	margin: 0 auto;
	align-items: end;
}

.koska-blog-eyebrow {
	margin: 0 0 1.75rem;
	color: var(--blog-clay);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.16em;
	line-height: 1.2;
	text-transform: uppercase;
}

.koska-blog-hero h1 {
	max-width: 10ch;
	margin: 0;
	color: var(--blog-ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(4rem, 7.2vw, 7.5rem);
	font-weight: 500;
	letter-spacing: -0.045em;
	line-height: 0.83;
}

.koska-blog-hero h1 em {
	color: var(--blog-clay);
	font-weight: inherit;
}

.koska-blog-hero__intro {
	align-self: end;
	padding-bottom: 0.6rem;
}

.koska-blog-hero__intro > p {
	max-width: 28rem;
	margin: 0;
	color: rgba(33, 25, 20, 0.72);
	font-size: clamp(0.92rem, 1.25vw, 1.08rem);
	line-height: 1.75;
}

.koska-blog-hero__index {
	display: block;
	margin-top: 3rem;
	padding-top: 1rem;
	border-top: 1px solid var(--blog-line);
	color: rgba(33, 25, 20, 0.46);
	font-size: 0.66rem;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.koska-blog-feed {
	max-width: 1500px;
	margin: 0 auto !important;
	padding: clamp(3.5rem, 5vw, 5.5rem) clamp(1.5rem, 5vw, 5.5rem);
}

.koska-blog-grid {
	display: grid !important;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(3.5rem, 6vw, 7rem) clamp(1.5rem, 3vw, 3rem);
	margin: 0;
}

.koska-blog-grid > .koska-blog-card {
	grid-column: span 6;
	margin: 0;
}

.koska-blog-grid > .koska-blog-card:first-child {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr);
	gap: clamp(2rem, 5vw, 5.5rem);
	align-items: end;
	padding-bottom: clamp(4rem, 6vw, 6rem);
	border-bottom: 1px solid var(--blog-line);
}

.koska-blog-card__image {
	overflow: hidden;
	background: #e5ddd3;
	aspect-ratio: 4 / 3;
}

.koska-blog-card:first-child .koska-blog-card__image {
	aspect-ratio: 16 / 10;
}

.koska-blog-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.koska-blog-card:hover .koska-blog-card__image img {
	transform: scale(1.015);
}

.koska-blog-card__body {
	margin: 0 !important;
	padding-top: 1.4rem;
}

.koska-blog-card:first-child .koska-blog-card__body {
	padding: 0 0 0.4rem;
}

.koska-blog-card__meta {
	margin: 0 0 1rem !important;
	padding-bottom: 0.8rem;
	border-bottom: 1px solid var(--blog-line);
	color: rgba(33, 25, 20, 0.5);
	font-size: 0.64rem;
	letter-spacing: 0.09em;
	line-height: 1.3;
	text-transform: uppercase;
}

.koska-blog-card__meta a {
	color: inherit;
}

.koska-blog-card__title {
	margin: 0 !important;
}

.koska-blog-card__title a {
	color: var(--blog-ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(2.1rem, 3vw, 3.4rem);
	font-weight: 500;
	letter-spacing: -0.025em;
	line-height: 0.98;
	text-decoration: none;
}

.koska-blog-card:first-child .koska-blog-card__title a {
	font-size: clamp(3rem, 5vw, 5.5rem);
}

.koska-blog-card__excerpt {
	max-width: 38rem;
	margin: 1.2rem 0 0 !important;
	color: rgba(33, 25, 20, 0.68);
	font-size: 0.9rem;
	line-height: 1.7;
}

.koska-blog-card__excerpt p {
	margin: 0;
}

.koska-blog-card__more {
	display: inline-block;
	margin-top: 1.5rem;
	padding-bottom: 0.35rem;
	border-bottom: 1px solid currentColor;
	color: var(--blog-ink);
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
}

.koska-blog-card__more:hover,
.koska-blog-card__more:focus-visible {
	color: var(--blog-clay);
}

.koska-blog-pagination {
	margin-top: clamp(5rem, 8vw, 8rem) !important;
	padding-top: 1.5rem;
	border-top: 1px solid var(--blog-line);
	font-size: 0.72rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.koska-blog-empty {
	padding: 1rem 0 clamp(2.5rem, 4vw, 4rem);
}

.koska-blog-empty__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.65fr);
	gap: clamp(3rem, 8vw, 9rem);
	align-items: start;
}

.koska-blog-empty h2 {
	max-width: 10ch;
	margin: 0;
	color: var(--blog-ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(3rem, 5.5vw, 5.75rem);
	font-weight: 500;
	letter-spacing: -0.04em;
	line-height: 0.9;
}

.koska-blog-empty h2 em {
	color: var(--blog-clay);
	font-weight: inherit;
}

.koska-blog-empty__copy {
	padding-top: 0.7rem;
}

.koska-blog-empty__copy > p {
	max-width: 31rem;
	margin: 0;
	color: rgba(33, 25, 20, 0.68);
	font-size: 0.94rem;
	line-height: 1.75;
}

.koska-blog-empty__links {
	display: grid;
	margin-top: 2.5rem;
	border-top: 1px solid var(--blog-line);
}

.koska-blog-empty__links a {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 0;
	border-bottom: 1px solid var(--blog-line);
	color: var(--blog-ink);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-decoration: none;
	text-transform: uppercase;
}

.koska-blog-empty__links a:hover,
.koska-blog-empty__links a:focus-visible {
	color: var(--blog-clay);
}

.koska-blog-footer-note {
	display: flex;
	justify-content: space-between;
	gap: 2rem;
	align-items: flex-end;
	padding: 1.4rem clamp(1.5rem, 5vw, 5.5rem);
	border-top: 1px solid var(--blog-line);
	background: var(--blog-cream);
	color: rgba(33, 25, 20, 0.5);
}

.koska-blog-footer-note span {
	font-size: 0.62rem;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.koska-blog-footer-note p {
	margin: 0;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: 1.35rem;
	font-style: italic;
}

@media (max-width: 960px) {
	.koska-blog-hero__inner,
	.koska-blog-empty__grid {
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.koska-blog-hero h1 {
		max-width: 8ch;
		font-size: clamp(4.5rem, 14vw, 8rem);
	}

	.koska-blog-hero__intro {
		max-width: 34rem;
	}

	.koska-blog-grid > .koska-blog-card:first-child {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.koska-blog-card:first-child .koska-blog-card__body {
		padding-top: 1rem;
	}
}

@media (max-width: 680px) {
	.koska-blog-hero {
		padding: 4.5rem 1.25rem 4rem;
	}

	.koska-blog-hero h1 {
		font-size: clamp(3.8rem, 18vw, 5.5rem);
		line-height: 0.82;
	}

	.koska-blog-hero__index {
		margin-top: 2rem;
	}

	.koska-blog-feed {
		padding: 3.5rem 1.25rem 4.5rem;
	}

	.koska-blog-grid {
		grid-template-columns: 1fr;
		gap: 4rem;
	}

	.koska-blog-grid > .koska-blog-card,
	.koska-blog-grid > .koska-blog-card:first-child {
		grid-column: 1;
	}

	.koska-blog-card__image,
	.koska-blog-card:first-child .koska-blog-card__image {
		aspect-ratio: 4 / 3;
	}

	.koska-blog-card:first-child .koska-blog-card__title a,
	.koska-blog-card__title a {
		font-size: clamp(2.4rem, 11vw, 3.4rem);
	}

	.koska-blog-empty {
		padding-top: 1rem;
	}

	.koska-blog-empty h2 {
		font-size: clamp(3.4rem, 16vw, 5.2rem);
	}

	.koska-blog-footer-note {
		display: block;
		padding: 1.25rem;
	}

	.koska-blog-footer-note p {
		margin-top: 0.7rem;
	}
}


/* =========================================================
   BLOG ARTICLE / SINGLE POST
   ========================================================= */

body.single-post .wp-site-blocks > main.koska-article {
	margin-block-start: 0 !important;
}

body.single-post .koska-header-brand {
	border-bottom: 0 !important;
}

.koska-article {
	--article-ink: #211914;
	--article-paper: #f4eee6;
	--article-clay: #a87352;
	--article-line: rgba(33, 25, 20, 0.18);
	background: var(--article-paper);
	color: var(--article-ink);
}

.koska-article-hero {
	max-width: 1500px !important;
	margin: 0 auto !important;
	padding: clamp(4.5rem, 7vw, 7rem) clamp(1.5rem, 5vw, 5.5rem) clamp(3.5rem, 6vw, 6rem);
}

.koska-article-back {
	margin: 0 0 clamp(4rem, 7vw, 7rem) !important;
}

.koska-article-back a {
	color: rgba(33, 25, 20, 0.58);
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-decoration: none;
	text-transform: uppercase;
}

.koska-article-back a:hover,
.koska-article-back a:focus-visible {
	color: var(--article-clay);
}

.koska-article-meta {
	margin: 0 0 1.5rem !important;
	padding-bottom: 0.9rem;
	border-bottom: 1px solid var(--article-line);
	color: rgba(33, 25, 20, 0.5);
	font-size: 0.66rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.koska-article-meta a {
	color: inherit;
}

.koska-article-title {
	max-width: 12ch;
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(4rem, 7.2vw, 7.5rem);
	font-weight: 500;
	letter-spacing: -0.04em;
	line-height: 0.86;
}

.koska-article-lead {
	max-width: 46rem;
	margin: clamp(2rem, 4vw, 3.5rem) 0 0 !important;
	color: rgba(33, 25, 20, 0.7);
	font-size: clamp(1.05rem, 1.6vw, 1.3rem);
	line-height: 1.7;
}

.koska-article-lead p {
	margin: 0;
}

.koska-article-featured {
	max-width: 1500px !important;
	margin: 0 auto !important;
	padding: 0 clamp(1.5rem, 5vw, 5.5rem);
	box-sizing: border-box;
}

.koska-article-featured img {
	width: 100%;
	height: 100%;
	max-height: 850px;
	object-fit: cover;
}

.koska-article-layout {
	display: grid;
	grid-template-columns: minmax(9rem, 0.3fr) minmax(0, 48rem) minmax(2rem, 0.35fr);
	gap: clamp(2.5rem, 6vw, 7rem);
	max-width: 1500px !important;
	margin: 0 auto !important;
	padding: clamp(5rem, 9vw, 9rem) clamp(1.5rem, 5vw, 5.5rem);
	align-items: start;
}

.koska-article-rail {
	grid-column: 1;
	position: sticky;
	top: 2rem;
	padding-top: 0.4rem;
	border-top: 1px solid var(--article-line);
}

.koska-article-rail__number {
	display: block;
	padding-top: 0.9rem;
	color: var(--article-clay);
	font-size: 0.64rem;
	font-weight: 600;
	letter-spacing: 0.13em;
}

.koska-article-rail p {
	margin: 2rem 0 0;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.8rem, 2.7vw, 2.7rem);
	line-height: 0.9;
}

.koska-article-rail p em {
	color: var(--article-clay);
	font-weight: inherit;
}

.koska-article-rail__topics {
	display: block;
	max-width: 10rem;
	margin-top: 2rem;
	color: rgba(33, 25, 20, 0.45);
	font-size: 0.58rem;
	letter-spacing: 0.1em;
	line-height: 1.6;
	text-transform: uppercase;
}

.koska-article-content {
	grid-column: 2;
	margin: 0 !important;
	color: rgba(33, 25, 20, 0.82);
	font-size: clamp(1rem, 1.25vw, 1.08rem);
	line-height: 1.9;
}

.koska-article-content > *:first-child {
	margin-top: 0 !important;
}

.koska-article-content > p:first-child {
	color: var(--article-ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.8rem, 3vw, 2.7rem);
	line-height: 1.25;
}

.koska-article-content p {
	margin-top: 0;
	margin-bottom: 1.65rem;
}

.koska-article-content h2 {
	margin: clamp(4rem, 7vw, 6rem) 0 1.5rem;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(2.5rem, 4.5vw, 4.2rem);
	font-weight: 500;
	letter-spacing: -0.025em;
	line-height: 0.98;
}

.koska-article-content h3 {
	margin: 3rem 0 1.2rem;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.9rem, 3vw, 2.7rem);
	font-weight: 500;
	line-height: 1;
}

.koska-article-content ul,
.koska-article-content ol {
	margin: 1.5rem 0 2rem;
	padding-left: 1.4rem;
}

.koska-article-content li {
	margin-bottom: 0.8rem;
	padding-left: 0.35rem;
}

.koska-article-content blockquote {
	margin: clamp(3.5rem, 6vw, 5.5rem) 0;
	padding: 2rem 0;
	border-top: 1px solid var(--article-line);
	border-bottom: 1px solid var(--article-line);
}

.koska-article-content blockquote p {
	margin: 0;
	color: var(--article-clay);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(2rem, 3.5vw, 3.2rem);
	font-style: italic;
	line-height: 1.12;
}

.koska-article-content a {
	color: var(--article-ink);
	text-decoration: underline;
	text-decoration-color: rgba(168, 115, 82, 0.55);
	text-underline-offset: 0.2em;
}

.koska-article-content figure {
	margin-top: clamp(3rem, 6vw, 5rem);
	margin-bottom: clamp(3rem, 6vw, 5rem);
}

.koska-article-content figcaption {
	margin-top: 0.75rem;
	color: rgba(33, 25, 20, 0.5);
	font-size: 0.7rem;
	line-height: 1.5;
}

.koska-article-cta {
	padding: clamp(5rem, 8vw, 8rem) clamp(1.5rem, 5vw, 5.5rem);
	background: #251b16;
	color: #f4eee6;
}

.koska-article-cta__inner {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(18rem, 0.6fr);
	gap: clamp(3rem, 8vw, 9rem);
	max-width: 1390px;
	margin: 0 auto;
	align-items: end;
}

.koska-article-cta__eyebrow {
	grid-column: 1 / -1;
	margin: 0 0 -1rem;
	color: #c79b7c;
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.koska-article-cta h2 {
	max-width: 9ch;
	margin: 0;
	color: #f4eee6;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(3.8rem, 7vw, 7rem);
	font-weight: 500;
	letter-spacing: -0.04em;
	line-height: 0.84;
}

.koska-article-cta h2 em {
	color: #c79b7c;
	font-weight: inherit;
}

.koska-article-cta__actions {
	display: grid;
	border-top: 1px solid rgba(244, 238, 230, 0.25);
}

.koska-article-cta__actions a {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.15rem 0;
	border-bottom: 1px solid rgba(244, 238, 230, 0.25);
	color: #f4eee6;
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-decoration: none;
	text-transform: uppercase;
}

.koska-article-cta__actions a:hover,
.koska-article-cta__actions a:focus-visible {
	color: #c79b7c;
}

.koska-article-navigation {
	max-width: 1500px !important;
	margin: 0 auto !important;
	padding: 2rem clamp(1.5rem, 5vw, 5.5rem) clamp(4rem, 6vw, 6rem);
	border-top: 1px solid var(--article-line);
	font-size: 0.72rem;
	line-height: 1.5;
}

.koska-article-navigation a {
	color: var(--article-ink);
	text-decoration: none;
}

@media (max-width: 900px) {
	.koska-article-layout {
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.koska-article-rail {
		grid-column: 1;
		position: static;
		display: flex;
		justify-content: space-between;
		gap: 2rem;
		align-items: flex-end;
	}

	.koska-article-rail p {
		margin-top: 1rem;
	}

	.koska-article-rail__topics {
		margin-top: 1rem;
		text-align: right;
	}

	.koska-article-content {
		grid-column: 1;
		max-width: 48rem;
	}

	.koska-article-cta__inner {
		grid-template-columns: 1fr;
	}

	.koska-article-cta__eyebrow {
		margin-bottom: 0;
	}
}

@media (max-width: 680px) {
	.koska-article-hero {
		padding: 3.5rem 1.25rem 3rem;
	}

	.koska-article-back {
		margin-bottom: 3.5rem !important;
	}

	.koska-article-title {
		font-size: clamp(3.4rem, 16vw, 5rem);
		line-height: 0.88;
	}

	.koska-article-featured {
		padding: 0 1.25rem;
	}

	.koska-article-featured img {
		aspect-ratio: 4 / 3;
	}

	.koska-article-layout {
		padding: 4rem 1.25rem;
	}

	.koska-article-rail__topics {
		display: none;
	}

	.koska-article-content > p:first-child {
		font-size: 1.75rem;
	}

	.koska-article-content h2 {
		font-size: clamp(2.5rem, 12vw, 3.5rem);
	}

	.koska-article-cta {
		padding: 4.5rem 1.25rem;
	}

	.koska-article-cta h2 {
		font-size: clamp(3.4rem, 16vw, 5rem);
	}

	.koska-article-navigation {
		padding: 1.5rem 1.25rem 4rem;
	}
}


/* =========================================================
   BLOG + ARTICLE — FINAL SCALE CORRECTION
   ========================================================= */

/* BLOG — spokojniejsza skala */
.koska-blog-hero {
	padding-top: clamp(3.75rem, 5vw, 5rem);
	padding-bottom: clamp(3.75rem, 5vw, 5rem);
}

.koska-blog-hero h1 {
	font-size: clamp(3.6rem, 5.5vw, 5.8rem);
	line-height: 0.87;
}

.koska-blog-empty h2 {
	font-size: clamp(2.8rem, 4.2vw, 4.4rem);
	line-height: 0.94;
}

/* Gutenberg dodaje <li> pomiędzy post-template a kartą.
   To li musi dostać kolumny siatki. */
.koska-blog-grid {
	padding: 0;
	list-style: none;
}

.koska-blog-grid > li.wp-block-post {
	grid-column: span 6;
	min-width: 0;
	margin: 0;
	list-style: none;
}

.koska-blog-grid > li.wp-block-post:first-child {
	grid-column: 1 / -1;
}

.koska-blog-grid > li.wp-block-post > .koska-blog-card {
	width: 100%;
	min-width: 0;
	margin: 0;
}

.koska-blog-grid > li.wp-block-post:first-child > .koska-blog-card {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr);
	gap: clamp(2rem, 4vw, 4.5rem);
	align-items: end;
	padding-bottom: clamp(3rem, 5vw, 5rem);
	border-bottom: 1px solid var(--blog-line);
}

.koska-blog-grid > li.wp-block-post:first-child .koska-blog-card__image {
	aspect-ratio: 16 / 10;
}

.koska-blog-grid > li.wp-block-post:first-child .koska-blog-card__body {
	padding-top: 0;
	align-self: end;
}

.koska-blog-card__title a {
	font-size: clamp(1.8rem, 2.5vw, 2.65rem);
	line-height: 1;
}

.koska-blog-grid > li.wp-block-post:first-child .koska-blog-card__title a {
	font-size: clamp(2.5rem, 4vw, 4.1rem);
	line-height: 0.96;
}

.koska-blog-card__excerpt {
	font-size: 0.86rem;
}


/* ARTYKUŁ — redukcja skali */
.koska-article-hero {
	padding-top: clamp(3.5rem, 5vw, 5rem);
	padding-bottom: clamp(3rem, 4vw, 4rem);
}

.koska-article-back {
	margin-bottom: clamp(3rem, 5vw, 4.5rem) !important;
}

.koska-article-title {
	max-width: 15ch;
	font-size: clamp(3.2rem, 5vw, 5.25rem);
	line-height: 0.91;
	letter-spacing: -0.035em;
}

.koska-article-lead {
	max-width: 42rem;
	margin-top: clamp(1.75rem, 3vw, 2.5rem) !important;
	font-size: clamp(0.98rem, 1.2vw, 1.1rem);
	line-height: 1.65;
}

.koska-article-layout {
	grid-template-columns: minmax(8rem, 0.25fr) minmax(0, 44rem) minmax(2rem, 0.35fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	padding-top: clamp(4rem, 6vw, 6rem);
	padding-bottom: clamp(4rem, 6vw, 6rem);
}

.koska-article-rail p {
	font-size: clamp(1.55rem, 2vw, 2.15rem);
	line-height: 0.94;
}

.koska-article-content {
	font-size: clamp(0.95rem, 1vw, 1rem);
	line-height: 1.8;
}

.koska-article-content > p:first-child {
	font-size: clamp(1.45rem, 2vw, 2rem);
	line-height: 1.34;
}

.koska-article-content h2 {
	margin-top: clamp(3rem, 5vw, 4.5rem);
	font-size: clamp(2.1rem, 3.3vw, 3.25rem);
	line-height: 1;
}

.koska-article-content h3 {
	font-size: clamp(1.65rem, 2.5vw, 2.2rem);
}

.koska-article-content blockquote {
	margin-top: clamp(2.75rem, 4vw, 4rem);
	margin-bottom: clamp(2.75rem, 4vw, 4rem);
}

.koska-article-content blockquote p {
	font-size: clamp(1.7rem, 2.6vw, 2.5rem);
	line-height: 1.15;
}

.koska-article-cta {
	padding-top: clamp(4rem, 6vw, 6rem);
	padding-bottom: clamp(4rem, 6vw, 6rem);
}

.koska-article-cta h2 {
	font-size: clamp(3rem, 5vw, 5rem);
	line-height: 0.9;
}


/* MOBILE */
@media (max-width: 900px) {
	.koska-blog-grid > li.wp-block-post,
	.koska-blog-grid > li.wp-block-post:first-child {
		grid-column: 1 / -1;
	}

	.koska-blog-grid > li.wp-block-post:first-child > .koska-blog-card {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.koska-blog-grid > li.wp-block-post:first-child .koska-blog-card__body {
		padding-top: 0.75rem;
	}
}

@media (max-width: 680px) {
	.koska-blog-hero h1 {
		font-size: clamp(3rem, 14vw, 4.1rem);
	}

	.koska-blog-card__title a,
	.koska-blog-grid > li.wp-block-post:first-child .koska-blog-card__title a {
		font-size: clamp(2rem, 9vw, 2.7rem);
	}

	.koska-blog-empty h2 {
		font-size: clamp(2.7rem, 12vw, 3.8rem);
	}

	.koska-article-title {
		font-size: clamp(2.8rem, 12vw, 3.8rem);
		line-height: 0.94;
	}

	.koska-article-content > p:first-child {
		font-size: 1.5rem;
	}

	.koska-article-content h2 {
		font-size: clamp(2.15rem, 10vw, 2.8rem);
	}

	.koska-article-content blockquote p {
		font-size: clamp(1.7rem, 8vw, 2.2rem);
	}

	.koska-article-cta h2 {
		font-size: clamp(2.8rem, 12vw, 3.8rem);
	}
}


/* =========================================================
   BLOG ARTICLE — MOBILE WIDTH FIX
   ========================================================= */

@media (max-width: 900px) {

	body.single-post .koska-article-layout {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		box-sizing: border-box;
		padding:
			clamp(3rem, 7vw, 4rem)
			clamp(1.5rem, 5vw, 2.25rem) !important;
	}

	body.single-post .koska-article-rail {
		position: static;
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 0.75rem 1.25rem;
		width: 100%;
		margin: 0 0 3rem;
		padding-top: 1rem;
		border-top: 1px solid var(--article-line);
		box-sizing: border-box;
	}

	body.single-post .koska-article-rail__number {
		grid-column: 1;
		grid-row: 1;
		padding: 0;
		align-self: center;
	}

	body.single-post .koska-article-rail p {
		grid-column: 2;
		grid-row: 1;
		margin: 0;
		font-size: 1.9rem;
		line-height: 0.9;
	}

	body.single-post .koska-article-rail__topics {
		display: none;
	}

	body.single-post .koska-article-content {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		box-sizing: border-box;
		font-size: 1rem;
		line-height: 1.75;
	}

	body.single-post .koska-article-content > * {
		width: 100% !important;
		max-width: none !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		box-sizing: border-box;
	}

	body.single-post .koska-article-content > p:first-child {
		font-size: clamp(1.3rem, 4vw, 1.55rem);
		line-height: 1.4;
	}

	body.single-post .koska-article-content h2 {
		font-size: clamp(2.1rem, 7vw, 2.8rem);
		line-height: 1;
	}

	body.single-post .koska-article-content h3 {
		font-size: clamp(1.7rem, 5vw, 2.2rem);
	}

	body.single-post .koska-article-content blockquote p {
		font-size: clamp(1.65rem, 5.5vw, 2.15rem);
		line-height: 1.18;
	}
}

@media (max-width: 680px) {

	body.single-post .koska-article-hero {
		padding: 3rem 1.25rem 2.75rem;
	}

	body.single-post .koska-article-back {
		margin-bottom: 2.75rem !important;
	}

	body.single-post .koska-article-title {
		max-width: none;
		font-size: clamp(2.65rem, 11vw, 3.4rem);
		line-height: 0.96;
		letter-spacing: -0.025em;
	}

	body.single-post .koska-article-lead {
		max-width: none;
		font-size: 0.98rem;
		line-height: 1.65;
	}

	body.single-post .koska-article-featured {
		padding: 0 1.25rem;
	}

	body.single-post .koska-article-layout {
		padding: 3.25rem 1.25rem !important;
	}

	body.single-post .koska-article-rail {
		margin-bottom: 2.5rem;
	}

	body.single-post .koska-article-rail p {
		font-size: 1.7rem;
	}

	body.single-post .koska-article-content {
		font-size: 0.96rem;
		line-height: 1.72;
	}

	body.single-post .koska-article-content p {
		margin-bottom: 1.4rem;
	}

	body.single-post .koska-article-content h2 {
		margin-top: 3.2rem;
		margin-bottom: 1.15rem;
		font-size: clamp(2rem, 9vw, 2.55rem);
	}

	body.single-post .koska-article-content ul,
	body.single-post .koska-article-content ol {
		padding-left: 1.2rem;
	}

	body.single-post .koska-article-cta {
		padding: 3.75rem 1.25rem;
	}

	body.single-post .koska-article-cta h2 {
		font-size: clamp(2.7rem, 12vw, 3.5rem);
		line-height: 0.94;
	}
}


/* =========================================================
   CART — QUANTITY / REMOVE SPACING
   ========================================================= */

body.woocommerce-cart .wc-block-cart-item__quantity {
	gap: 1.25rem !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector {
	flex: 0 0 107px;
	width: 107px;
}

body.woocommerce-cart .wc-block-cart-item__remove-link {
	display: inline-flex !important;
	flex: 0 0 28px;
	width: 28px !important;
	height: 28px !important;
	margin-left: 0.15rem !important;
	align-items: center;
	justify-content: center;
}

body.woocommerce-cart .wc-block-cart-item__remove-link svg {
	display: block;
	width: 18px;
	height: 18px;
}


/* =========================================================
   CART — CLEAN QUANTITY SELECTOR
   ========================================================= */

body.woocommerce-cart .wc-block-components-quantity-selector {
	display: grid !important;
	grid-template-columns: 34px 40px 34px;
	flex: 0 0 108px !important;
	width: 108px !important;
	min-width: 108px !important;
	overflow: hidden;
	border: 1px solid rgba(33, 25, 20, 0.25) !important;
	border-radius: 4px !important;
	background: transparent !important;
	box-sizing: border-box;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button {
	width: 34px !important;
	min-width: 34px !important;
	height: 44px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.woocommerce-cart input.wc-block-components-quantity-selector__input {
	width: 40px !important;
	min-width: 0 !important;
	height: 44px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: 0 !important;
	text-align: center !important;
}

body.woocommerce-cart input.wc-block-components-quantity-selector__input:focus {
	border: 0 !important;
	box-shadow: none !important;
	outline: 1px solid rgba(168, 115, 82, 0.55) !important;
	outline-offset: -1px;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button--minus {
	grid-column: 1;
}

body.woocommerce-cart .wc-block-components-quantity-selector__input {
	grid-column: 2;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button--plus {
	grid-column: 3;
}


/* =========================================================
   CART — KOSKA VISUAL LAYER V1
   ========================================================= */

body.woocommerce-cart {
	--cart-ink: #211914;
	--cart-muted: rgba(33, 25, 20, 0.58);
	--cart-line: rgba(33, 25, 20, 0.16);
	--cart-clay: #b57b55;
	--cart-paper: #f4eee6;
	--cart-gutter: clamp(1.25rem, 4vw, 2rem);
}

/* Powiadomienie WooCommerce */
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .wc-block-components-notice-banner {
	margin-bottom: 2rem !important;
	padding: 1rem 1.25rem !important;
	border: 1px solid rgba(33, 25, 20, 0.18) !important;
	border-radius: 0 !important;
	background: #eee5da !important;
	color: var(--cart-ink) !important;
	box-shadow: none !important;
}

body.woocommerce-cart .woocommerce-message::before {
	color: var(--cart-clay) !important;
}

body.woocommerce-cart .woocommerce-message a,
body.woocommerce-cart .wc-block-components-notice-banner a {
	color: var(--cart-ink) !important;
	font-weight: 600;
	text-underline-offset: 0.25em;
}

/* Tytuł strony */
body.woocommerce-cart main > .wp-block-post-title {
	margin-top: 0 !important;
	margin-bottom: clamp(2.5rem, 4vw, 4rem) !important;
	padding-top: clamp(3.25rem, 5vw, 4.75rem);
	font-size: clamp(3.8rem, 6vw, 6rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 0.9;
}

/* Główna siatka */
body.woocommerce-cart .wc-block-components-sidebar-layout {
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: flex-start;
}

body.woocommerce-cart .wc-block-cart__main {
	padding-right: 0 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar {
	padding-left: 0 !important;
}

/* Nagłówki tabeli / podsumowania */
body.woocommerce-cart .wc-block-cart-items__header,
body.woocommerce-cart .wc-block-cart__totals-title {
	color: var(--cart-muted);
	font-size: 0.67rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

body.woocommerce-cart .wc-block-cart__totals-title {
	box-sizing: border-box;
	padding-left: var(--cart-gutter) !important;
	padding-right: var(--cart-gutter) !important;
}

/* Produkt */
body.woocommerce-cart .wc-block-cart-items {
	border-color: var(--cart-line) !important;
}

body.woocommerce-cart .wc-block-cart-items td {
	border-color: var(--cart-line) !important;
}

body.woocommerce-cart .wc-block-cart-item__image {
	width: 100px;
}

body.woocommerce-cart .wc-block-cart-item__image img {
	background: #eee7de;
}

body.woocommerce-cart .wc-block-components-product-name {
	color: var(--cart-ink);
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.3rem, 1.7vw, 1.65rem) !important;
	font-weight: 500 !important;
	line-height: 1.05 !important;
	text-decoration: none;
}

body.woocommerce-cart .wc-block-cart-item__prices,
body.woocommerce-cart .wc-block-components-product-metadata {
	color: var(--cart-muted);
}

body.woocommerce-cart .wc-block-components-product-metadata {
	margin-top: 0.25rem;
	font-size: 0.76rem;
	line-height: 1.5;
}

body.woocommerce-cart .wc-block-cart-item__total {
	color: var(--cart-ink);
	font-weight: 500;
}

/* Podsumowanie */
body.woocommerce-cart .wc-block-cart__sidebar {
	position: sticky;
	top: 2rem;
}

body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block {
	border-color: var(--cart-line) !important;
}

body.woocommerce-cart .wc-block-components-panel,
body.woocommerce-cart .wc-block-components-totals-item {
	border-color: var(--cart-line) !important;
}

body.woocommerce-cart .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-panel__button {
	color: var(--cart-ink);
}

body.woocommerce-cart .wc-block-components-totals-footer-item {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) max-content !important;
	column-gap: clamp(1rem, 3vw, 2rem) !important;
	row-gap: 0.5rem !important;
	align-items: baseline !important;
	width: 100% !important;
	box-sizing: border-box;
	padding-top: 1.4rem !important;
	padding-bottom: 1.4rem !important;
	border-top: 1px solid var(--cart-line);
	padding-left: var(--cart-gutter) !important;
	padding-right: var(--cart-gutter) !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	min-width: 0 !important;
	width: auto !important;
	flex: none !important;
	overflow-wrap: normal !important;
	word-break: normal !important;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.45rem, 2vw, 1.9rem);
	font-weight: 500;
	line-height: 1.05;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	min-width: 0 !important;
	width: auto !important;
	max-width: 100% !important;
	flex: none !important;
	justify-self: end !important;
	text-align: right !important;
	white-space: nowrap !important;
	font-size: clamp(1.2rem, 1.6vw, 1.55rem);
	font-weight: 500;
}

/* Checkout */
body.woocommerce-cart .wc-block-cart__submit {
	margin-top: 1rem;
}

body.woocommerce-cart
.wc-block-cart__submit-container:not(.wc-block-cart__submit-container--sticky) {
	box-sizing: border-box;
	padding-left: var(--cart-gutter) !important;
	padding-right: var(--cart-gutter) !important;
}

body.woocommerce-cart .wc-block-cart__submit-button {
	min-height: 3.5rem;
	border: 1px solid var(--cart-clay) !important;
	border-radius: 4px !important;
	background: var(--cart-clay) !important;
	color: #fffdf9 !important;
	font-family: var(--wp--preset--font-family--interface);
	font-size: 0.9rem;
	font-weight: 600;
	transition:
		background-color 180ms ease,
		border-color 180ms ease;
}

body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:focus-visible {
	border-color: #8d5d40 !important;
	background: #8d5d40 !important;
}

/* Kupon */

body.woocommerce-cart .wc-block-components-totals-coupon {
	box-sizing: border-box;
	padding-left: var(--cart-gutter) !important;
	padding-right: var(--cart-gutter) !important;
}
body.woocommerce-cart .wc-block-components-totals-coupon-link {
	color: var(--cart-ink);
	font-size: 0.82rem;
	text-decoration: none;
}

body.woocommerce-cart .wc-block-components-totals-coupon-link:hover {
	color: var(--cart-clay);
}

/* Mobile */
@media (max-width: 699px) {
	body.woocommerce-cart main > .wp-block-post-title {
		font-size: clamp(3.2rem, 15vw, 4.4rem);
	}

	body.woocommerce-cart .wc-block-cart__sidebar {
		position: static;
	}

	body.woocommerce-cart .wc-block-cart-items__row {
		padding: 1.5rem 0 !important;
	}

	body.woocommerce-cart .wc-block-cart-item__image {
		width: auto;
	}

	body.woocommerce-cart .wc-block-components-product-name {
		font-size: 1.35rem !important;
	}

	body.woocommerce-cart .woocommerce-message,
	body.woocommerce-cart .wc-block-components-notice-banner {
		padding: 0.9rem 1rem !important;
	}
}


/* =========================================================
   CART — RESTORE DESKTOP TWO-COLUMN LAYOUT
   ========================================================= */

@media (min-width: 961px) {
	body.woocommerce-cart .wc-block-components-sidebar-layout {
		gap: 0 !important;
	}

	body.woocommerce-cart .wc-block-cart__main {
		padding-right: 4.5283018868% !important;
	}

	body.woocommerce-cart .wc-block-cart__sidebar {
		padding-left: 2.2641509434% !important;
	}
}


/* =========================================================
   CART — TABLET + MOBILE LAYOUT FIX
   ========================================================= */

@media (max-width: 960px) {

	body.woocommerce-cart .wc-block-components-sidebar-layout {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
	}

	body.woocommerce-cart .wc-block-cart__main,
	body.woocommerce-cart .wc-block-cart__sidebar {
		width: 100% !important;
		max-width: none !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		box-sizing: border-box;
	}

	body.woocommerce-cart .wc-block-cart__sidebar {
		position: static !important;
		margin-top: 3rem !important;
	}

	body.woocommerce-cart main > .wp-block-post-title {
		font-size: clamp(3.2rem, 10vw, 4.8rem);
	}

	body.woocommerce-cart .wc-block-cart__totals-title {
		display: block !important;
	}
}


@media (max-width: 680px) {

	body.woocommerce-cart .wc-block-cart-items__header {
		display: none !important;
	}

	body.woocommerce-cart table.wc-block-cart-items,
	body.woocommerce-cart table.wc-block-cart-items tbody {
		display: block !important;
		width: 100% !important;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row {
		display: grid !important;
		grid-template-columns: 72px minmax(0, 1fr) !important;
		grid-template-rows: auto auto auto !important;
		column-gap: 1rem !important;
		row-gap: 0 !important;
		width: 100% !important;
		padding: 1.5rem 0 !important;
		box-sizing: border-box;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image {
		grid-column: 1 !important;
		grid-row: 1 / span 3 !important;
		width: 72px !important;
		padding: 0 !important;
		margin: 0 !important;
		align-self: start;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__product {
		grid-column: 2 !important;
		grid-row: 1 !important;
		width: 100% !important;
		min-width: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total {
		grid-column: 2 !important;
		grid-row: 2 !important;
		width: auto !important;
		padding: 0 !important;
		margin: 0.45rem 0 0 !important;
		justify-content: flex-start !important;
		text-align: left !important;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__quantity {
		grid-column: 2 !important;
		grid-row: 3 !important;
		width: 100% !important;
		padding: 0 !important;
		margin: 0.85rem 0 0 !important;
		justify-content: flex-start !important;
		flex-wrap: nowrap !important;
	}

	body.woocommerce-cart .wc-block-components-product-name {
		overflow-wrap: normal !important;
		word-break: normal !important;
	}

	body.woocommerce-cart .wc-block-cart__sidebar {
		margin-top: 2.5rem !important;
	}



	body.woocommerce-cart .wc-block-cart__submit-button {
		width: 100% !important;
	}

	body.woocommerce-cart main > .wp-block-post-title {
		box-sizing: border-box;
		padding-right: var(--cart-gutter);
		padding-left: var(--cart-gutter);
		font-size: clamp(3rem, 14vw, 4rem);
	}
}


/* =========================================================
   CART — SMALL PHONE RHYTHM
   ========================================================= */

@media (max-width: 420px) {

	body.woocommerce-cart main > .wp-block-post-title {
		margin-bottom: 3.25rem !important;
		font-size: clamp(3rem, 14vw, 3.6rem) !important;
		line-height: 0.92;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row {
		grid-template-columns: 76px minmax(0, 1fr) !important;
		column-gap: 1.15rem !important;
		padding: 0 0 2.5rem !important;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image {
		width: 76px !important;
	}

	body.woocommerce-cart .wc-block-components-product-name {
		font-size: 1.25rem !important;
		line-height: 1.08 !important;
	}

	body.woocommerce-cart .wc-block-components-product-metadata {
		margin-top: 0.65rem !important;
		font-size: 0.72rem !important;
		line-height: 1.55;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__quantity {
		margin-top: 1.35rem !important;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total {
		margin-top: 0.9rem !important;
		font-size: 0.92rem;
	}

	body.woocommerce-cart .wc-block-cart__sidebar {
		margin-top: 3.5rem !important;
	}

	body.woocommerce-cart .wc-block-cart__totals-title {
		padding: 0 var(--cart-gutter) 1rem !important;
		font-size: 0.64rem !important;
		letter-spacing: 0.11em;
	}

	body.woocommerce-cart .wc-block-components-totals-coupon {
		padding-top: 1rem !important;
		padding-bottom: 1rem !important;
	}

	body.woocommerce-cart .wc-block-components-totals-footer-item {
		grid-template-columns: minmax(0, 1fr) auto !important;
		margin-top: 1rem !important;
		padding-top: 1.8rem !important;
		padding-bottom: 1.8rem !important;
	}

	body.woocommerce-cart .wc-block-components-totals-footer-item
	.wc-block-components-totals-item__label {
		font-size: 1.5rem !important;
		line-height: 1.08 !important;
	}

	body.woocommerce-cart .wc-block-components-totals-footer-item
	.wc-block-components-totals-item__value {
		margin-top: 0 !important;
		font-size: 1.15rem !important;
	}

	body.woocommerce-cart .wc-block-cart__submit {
		margin-top: 1.6rem !important;
	}

	body.woocommerce-cart .wc-block-cart__submit-button {
		min-height: 3.6rem;
	}
}

/* =========================================================
   CHECKOUT — KOSKA BASE
   ========================================================= */

body.woocommerce-checkout {
	--checkout-gutter: clamp(1.25rem, 5vw, 2rem);
}

body.woocommerce-checkout .koska-checkout-header {
	border-bottom: 1px solid rgba(33, 25, 20, 0.16);
}

body.woocommerce-checkout .koska-checkout-header__inner {
	box-sizing: border-box;
	min-height: 6rem;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
}

body.woocommerce-checkout .koska-checkout-brand {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	text-decoration: none;
}

body.woocommerce-checkout .koska-checkout-brand__logo {
	display: block;
	width: auto;
	height: 4.5rem;
}

@media (max-width: 699px) {

	body.woocommerce-checkout .koska-checkout-header__inner {
		width: 100% !important;
		max-width: none !important;
		min-height: 5.5rem;
		padding-left: var(--checkout-gutter) !important;
		padding-right: var(--checkout-gutter) !important;
	}

	body.woocommerce-checkout .koska-checkout-brand__logo {
		height: 4rem;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout {
		box-sizing: border-box;
		width: 100% !important;
		padding-left: var(--checkout-gutter) !important;
		padding-right: var(--checkout-gutter) !important;
	}
}

/* =========================================================
   CHECKOUT — TABLET GUTTER
   ========================================================= */

@media (min-width: 700px) and (max-width: 1024px) {

	body.woocommerce-checkout .koska-checkout-header__inner {
		box-sizing: border-box;
		width: 100% !important;
		max-width: none !important;
		padding-left: var(--checkout-gutter) !important;
		padding-right: var(--checkout-gutter) !important;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout {
		box-sizing: border-box;
		width: 100% !important;
		padding-left: var(--checkout-gutter) !important;
		padding-right: var(--checkout-gutter) !important;
	}
}

/* =========================================================
   ORDER RECEIVED — KOSKA
   ========================================================= */

body.woocommerce-order-received {
        --order-line: rgba(42, 27, 18, 0.16);
        --order-muted: #70665f;
        --order-surface: #fffdfc;
}

/* Status / główny komunikat */
body.woocommerce-order-received
.wc-block-order-confirmation-status {
        margin-bottom: clamp(2.5rem, 5vw, 4rem);
}

body.woocommerce-order-received
.wc-block-order-confirmation-status-description h1 {
        max-width: 900px;
        margin: 0 0 1.5rem;
        color: var(--koska-ink);
        font-family: var(--koska-font-editorial);
        font-size: clamp(4rem, 7vw, 6.4rem);
        font-weight: 500;
        line-height: 0.94;
        letter-spacing: -0.035em;
}

body.woocommerce-order-received
.wc-block-order-confirmation-status-description > p:not(.wc-block-order-confirmation-status__actions) {
        display: flex;
        align-items: center;
        gap: 0.9rem;
        max-width: 720px;
        margin: 0;
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: clamp(1.15rem, 2vw, 1.45rem);
        line-height: 1.45;
}

body.woocommerce-order-received
.wc-block-order-confirmation-status-description > p:not(.wc-block-order-confirmation-status__actions)::before {
        content: "✓";
        display: inline-grid;
        flex: 0 0 auto;
        place-items: center;
        width: 2.55rem;
        height: 2.55rem;
        border: 1px solid var(--koska-clay);
        border-radius: 50%;
        color: var(--koska-clay-dark);
        font-size: 0.95rem;
        font-weight: 700;
}

/* Podsumowanie najważniejszych danych */
body.woocommerce-order-received
.wc-block-order-confirmation-summary {
        margin-bottom: clamp(3.5rem, 6vw, 5rem);
}

body.woocommerce-order-received
.wc-block-order-confirmation-summary-list {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 0.75rem;
        margin: 0;
        padding: 0;
        list-style: none;
}

body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item {
        box-sizing: border-box;
        min-width: 0;
        margin: 0;
        padding: 1.15rem 1.2rem;
        border: 1px solid var(--order-line);
        border-radius: var(--koska-radius-small);
        background: var(--order-surface);
}

body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item__key {
        display: block;
        margin-bottom: 0.4rem;
        color: var(--order-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.67rem;
        font-weight: 600;
        letter-spacing: 0.075em;
        line-height: 1.4;
        text-transform: uppercase;
}

body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item__value {
        display: block;
        overflow-wrap: anywhere;
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.92rem;
        font-weight: 500;
        line-height: 1.4;
}

/* Nagłówki kolejnych sekcji */
body.woocommerce-order-received
.wc-block-order-confirmation-totals h2,
body.woocommerce-order-received
.wc-block-order-confirmation-totals h3,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper h2,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper h3,
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper h2,
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper h3 {
        margin: 0 0 1.1rem;
        color: var(--koska-ink);
        font-family: var(--koska-font-editorial);
        font-size: clamp(1.7rem, 2.4vw, 2.15rem);
        font-weight: 500;
        line-height: 1.05;
}

/* Tabela zamówienia */
body.woocommerce-order-received
.wc-block-order-confirmation-totals {
        margin-bottom: clamp(3.5rem, 6vw, 5rem);
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__table {
        width: 100%;
        margin: 0;
        border: 1px solid var(--order-line) !important;
        border-collapse: separate !important;
        border-spacing: 0;
        border-radius: var(--koska-radius-small);
        overflow: hidden;
        background: var(--order-surface);
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__table th,
body.woocommerce-order-received
.wc-block-order-confirmation-totals__table td {
        padding: 1.05rem 1.2rem !important;
        border: 0 !important;
        border-bottom: 1px solid var(--order-line) !important;
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.9rem;
        line-height: 1.45;
        vertical-align: middle;
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__table thead th {
        background: rgba(238, 230, 220, 0.42);
        color: var(--order-muted);
        font-size: 0.67rem;
        font-weight: 600;
        letter-spacing: 0.085em;
        text-transform: uppercase;
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__product {
        text-align: left;
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__total {
        text-align: right;
        white-space: nowrap;
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__table tbody
.wc-block-order-confirmation-totals__product {
        font-family: var(--koska-font-editorial);
        font-size: 1.16rem;
        font-weight: 500;
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__table a {
        color: var(--koska-ink);
        text-decoration: none;
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__table tfoot th {
        font-weight: 600;
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__table tfoot tr:last-child {
        background: rgba(238, 230, 220, 0.42);
}

body.woocommerce-order-received
.wc-block-order-confirmation-totals__table tr:last-child th,
body.woocommerce-order-received
.wc-block-order-confirmation-totals__table tr:last-child td {
        border-bottom: 0 !important;
}

/* Adres rozliczeniowy i dostawy */
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper,
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper {
        margin-top: 0;
}

body.woocommerce-order-received
.wc-block-order-confirmation-billing-address,
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-address {
        box-sizing: border-box;
        min-height: 100%;
        padding: 1.35rem 1.4rem;
        border: 1px solid var(--order-line);
        border-radius: var(--koska-radius-small);
        background: var(--order-surface);
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.9rem;
        line-height: 1.65;
}

body.woocommerce-order-received
.wc-block-order-confirmation-billing-address address,
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-address address {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent;
        font: inherit;
        line-height: inherit;
}

body.woocommerce-order-received
.wc-block-order-confirmation-billing-address p,
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-address p {
        margin: 0.45rem 0 0;
        color: var(--order-muted);
}

/* Tablet */
@media (max-width: 1024px) {
        body.woocommerce-order-received
        .wc-block-order-confirmation-summary-list {
                grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-summary-list-item:last-child {
                grid-column: span 2;
        }
}

/* Mobile */
@media (max-width: 680px) {
        body.woocommerce-order-received
        .wc-block-order-confirmation-status-description h1 {
                margin-bottom: 1.25rem;
                font-size: clamp(3rem, 14vw, 4.15rem);
                line-height: 0.95;
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-status-description > p:not(.wc-block-order-confirmation-status__actions) {
                align-items: flex-start;
                font-size: 1.1rem;
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-status-description > p:not(.wc-block-order-confirmation-status__actions)::before {
                width: 2.25rem;
                height: 2.25rem;
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-summary-list {
                grid-template-columns: 1fr;
                gap: 0.6rem;
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-summary-list-item:last-child {
                grid-column: auto;
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-totals__table th,
        body.woocommerce-order-received
        .wc-block-order-confirmation-totals__table td {
                padding: 0.9rem 0.85rem !important;
                font-size: 0.82rem;
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-totals__table tbody
        .wc-block-order-confirmation-totals__product {
                font-size: 1.02rem;
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-billing-address,
        body.woocommerce-order-received
        .wc-block-order-confirmation-shipping-address {
                padding: 1.15rem 1.2rem;
        }
}

/* Small phone */
@media (max-width: 420px) {
        body.woocommerce-order-received
        .wc-block-order-confirmation-status-description h1 {
                font-size: clamp(2.75rem, 14vw, 3.45rem);
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-summary-list-item {
                padding: 1rem;
        }

        body.woocommerce-order-received
        .wc-block-order-confirmation-totals__table th,
        body.woocommerce-order-received
        .wc-block-order-confirmation-totals__table td {
                padding: 0.8rem 0.7rem !important;
        }
}

/* =========================================================
   ORDER RECEIVED — MOBILE GUTTER
   ========================================================= */

@media (max-width: 699px) {

        body.woocommerce-order-received main.wp-block-group {
                box-sizing: border-box;
                width: 100% !important;
                padding-left: var(--checkout-gutter, 1.25rem) !important;
                padding-right: var(--checkout-gutter, 1.25rem) !important;
        }
}

/* =========================================================
   MY ACCOUNT — GUEST
   ========================================================= */

body.woocommerce-account #customer_login {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: min(100%, 1120px);
        margin: 0 auto;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-medium);
        overflow: hidden;
        background: var(--koska-white);
}

body.woocommerce-account #customer_login::before,
body.woocommerce-account #customer_login::after {
        display: none;
}

body.woocommerce-account #customer_login > .u-column1,
body.woocommerce-account #customer_login > .u-column2 {
        box-sizing: border-box;
        float: none;
        width: auto;
        margin: 0;
        padding: clamp(2rem, 4vw, 3.5rem);
}

body.woocommerce-account #customer_login > .u-column1 {
        background: var(--koska-white);
}

body.woocommerce-account #customer_login > .u-column2 {
        border-left: 1px solid var(--koska-line);
        background: rgba(238, 230, 220, 0.42);
}

body.woocommerce-account #customer_login h2 {
        margin: 0 0 2rem;
        color: var(--koska-ink);
        font-family: var(--koska-font-editorial);
        font-size: clamp(2.15rem, 3.2vw, 3rem);
        font-weight: 500;
        line-height: 1;
        letter-spacing: -0.02em;
}

body.woocommerce-account #customer_login form.login,
body.woocommerce-account #customer_login form.register {
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
}

body.woocommerce-account #customer_login .form-row {
        margin: 0 0 1.25rem;
        padding: 0;
}

body.woocommerce-account #customer_login .form-row label {
        display: block;
        margin: 0 0 0.5rem;
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.78rem;
        font-weight: 600;
        letter-spacing: 0.035em;
        line-height: 1.4;
}

body.woocommerce-account #customer_login .required {
        color: var(--koska-clay-dark);
}

body.woocommerce-account #customer_login .input-text {
        box-sizing: border-box;
        width: 100%;
        min-height: 3.25rem;
        border-color: var(--koska-line);
        background: var(--koska-white);
}

body.woocommerce-account #customer_login .input-text:focus {
        border-color: var(--koska-clay);
}

body.woocommerce-account #customer_login .password-input {
        display: block;
        width: 100%;
}

body.woocommerce-account #customer_login .woocommerce-form-login__rememberme {
        display: inline-flex;
        align-items: center;
        gap: 0.55rem;
        margin: 0 1rem 0 0;
        font-size: 0.8rem;
        font-weight: 500;
        letter-spacing: 0;
}

body.woocommerce-account #customer_login
.woocommerce-form-login__rememberme input[type="checkbox"] {
        width: 1rem;
        height: 1rem;
        margin: 0;
        accent-color: var(--koska-clay);
}

body.woocommerce-account #customer_login
.woocommerce-form-login__submit,
body.woocommerce-account #customer_login
.woocommerce-form-register__submit {
        min-width: 10rem;
        margin-top: 0.25rem;
}

body.woocommerce-account #customer_login .lost_password {
        margin: 1.5rem 0 0;
        font-family: var(--koska-font-interface);
        font-size: 0.82rem;
        line-height: 1.5;
}

body.woocommerce-account #customer_login .lost_password a,
body.woocommerce-account #customer_login .woocommerce-privacy-policy-text a {
        color: var(--koska-clay-dark);
        text-decoration-thickness: 1px;
        text-underline-offset: 0.18em;
}

body.woocommerce-account #customer_login form.register > p:not(.form-row) {
        margin: 0 0 1.25rem;
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.875rem;
        line-height: 1.6;
}

body.woocommerce-account #customer_login .woocommerce-privacy-policy-text {
        margin: 1.25rem 0 1.5rem;
        color: var(--koska-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.78rem;
        line-height: 1.65;
}

body.woocommerce-account #customer_login .woocommerce-privacy-policy-text p {
        margin: 0;
}

body.woocommerce-account #customer_login .woocommerce-password-strength,
body.woocommerce-account #customer_login .woocommerce-password-hint {
        font-family: var(--koska-font-interface);
        font-size: 0.76rem;
        line-height: 1.45;
}

/* Tablet / mobile */
@media (max-width: 800px) {

        body.woocommerce-account #customer_login {
                grid-template-columns: 1fr;
        }

        body.woocommerce-account #customer_login > .u-column2 {
                border-top: 1px solid var(--koska-line);
                border-left: 0;
        }
}

/* Mobile */
@media (max-width: 680px) {

        body.woocommerce-account #customer_login {
                width: 100%;
                border-right: 0;
                border-left: 0;
                border-radius: 0;
        }

        body.woocommerce-account #customer_login > .u-column1,
        body.woocommerce-account #customer_login > .u-column2 {
                padding: 2rem var(--checkout-gutter, 1.25rem);
        }

        body.woocommerce-account #customer_login h2 {
                margin-bottom: 1.5rem;
                font-size: clamp(2rem, 10vw, 2.65rem);
        }

        body.woocommerce-account #customer_login
        .woocommerce-form-login__submit,
        body.woocommerce-account #customer_login
        .woocommerce-form-register__submit {
                width: 100%;
        }
}

/* =========================================================
   MY ACCOUNT — LOGGED IN
   ========================================================= */

body.woocommerce-account.logged-in .woocommerce {
        display: grid;
        grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
        gap: clamp(2rem, 4vw, 4rem);
        align-items: start;
}

body.woocommerce-account.logged-in .woocommerce::before,
body.woocommerce-account.logged-in .woocommerce::after {
        display: none;
}

body.woocommerce-account.logged-in .woocommerce-notices-wrapper {
        grid-column: 1 / -1;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
        float: none;
        box-sizing: border-box;
        width: 100%;
        margin: 0;
        padding: 1.1rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-medium);
        background: rgba(255, 253, 252, 0.72);
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation::before {
        display: block;
        margin: 0 0.55rem 0.85rem;
        color: var(--koska-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.68rem;
        font-weight: 700;
        letter-spacing: 0.12em;
        line-height: 1.4;
        text-transform: uppercase;
        content: "Panel klienta";
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
        display: grid;
        gap: 0.25rem;
        margin: 0;
        padding: 0;
        list-style: none;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li,
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li:last-child {
        margin: 0;
        border: 0;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation a {
        display: flex;
        min-height: 2.8rem;
        align-items: center;
        box-sizing: border-box;
        padding: 0.7rem 0.85rem;
        border-radius: var(--koska-radius-small);
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.84rem;
        font-weight: 500;
        line-height: 1.4;
        text-decoration: none;
        transition:
                background-color 160ms ease,
                color 160ms ease;
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-navigation a:hover {
        background: var(--koska-cream);
        color: var(--koska-ink);
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-navigation li.is-active a {
        background: var(--koska-espresso);
        color: var(--koska-white);
        font-weight: 600;
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-navigation-link--customer-logout {
        margin-top: 0.7rem;
        padding-top: 0.7rem;
        border-top: 1px solid var(--koska-line);
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-navigation-link--customer-logout a {
        color: var(--koska-muted);
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
        color: var(--koska-clay-dark);
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
        float: none;
        box-sizing: border-box;
        width: 100%;
        min-width: 0;
        min-height: 28rem;
        margin: 0;
        padding: clamp(2rem, 4vw, 3.5rem);
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-medium);
        background: var(--koska-white);
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content h2,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content h3 {
        font-family: var(--koska-font-editorial);
        font-weight: 500;
        letter-spacing: -0.02em;
}

.koska-account-dashboard__intro {
        max-width: 46rem;
}

.koska-account-dashboard__eyebrow {
        margin: 0 0 0.8rem;
        color: var(--koska-clay-dark);
        font-family: var(--koska-font-interface);
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.12em;
        line-height: 1.4;
        text-transform: uppercase;
}

.koska-account-dashboard__intro h2 {
        margin: 0;
        color: var(--koska-ink);
        font-size: clamp(2.15rem, 3vw, 3rem);
        line-height: 0.98;
}

.koska-account-dashboard__lead {
        max-width: 39rem;
        margin: 1.4rem 0 0;
        color: var(--koska-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.95rem;
        line-height: 1.75;
}

.koska-account-dashboard__logout {
        display: inline-block;
        margin-top: 1.1rem;
        color: var(--koska-clay-dark);
        font-family: var(--koska-font-interface);
        font-size: 0.78rem;
        font-weight: 600;
        text-decoration-thickness: 1px;
        text-underline-offset: 0.2em;
}

.koska-account-shortcuts {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 1rem;
        margin-top: clamp(2.5rem, 5vw, 4rem);
}

.koska-account-shortcut {
        position: relative;
        display: flex;
        min-height: 12rem;
        flex-direction: column;
        box-sizing: border-box;
        padding: 1.4rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-small);
        background: rgba(238, 230, 220, 0.32);
        color: var(--koska-ink);
        text-decoration: none;
        transition:
                border-color 160ms ease,
                background-color 160ms ease,
                transform 160ms ease;
}

.koska-account-shortcut:hover {
        border-color: var(--koska-taupe);
        background: rgba(238, 230, 220, 0.6);
        color: var(--koska-ink);
        transform: translateY(-2px);
}

.koska-account-shortcut__number {
        margin-bottom: 2rem;
        color: var(--koska-clay-dark);
        font-family: var(--koska-font-interface);
        font-size: 0.68rem;
        font-weight: 700;
        letter-spacing: 0.1em;
}

.koska-account-shortcut strong {
        display: block;
        font-family: var(--koska-font-editorial);
        font-size: 1.4rem;
        font-weight: 500;
        line-height: 1.05;
}

.koska-account-shortcut__description {
        display: block;
        margin-top: 0.7rem;
        padding-right: 1rem;
        color: var(--koska-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.76rem;
        line-height: 1.55;
}

.koska-account-shortcut__arrow {
        margin-top: auto;
        padding-top: 1.2rem;
        color: var(--koska-clay-dark);
        font-size: 1.2rem;
        line-height: 1;
}


/* View order */
body.woocommerce-account.logged-in
.woocommerce-MyAccount-content > p:has(mark.order-number) {
        box-sizing: border-box;
        margin: 0 0 2rem;
        padding: 1rem 1.2rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-small);
        background: rgba(238, 230, 220, 0.28);
        color: var(--koska-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.84rem;
        line-height: 1.65;
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-content mark.order-number,
body.woocommerce-account.logged-in
.woocommerce-MyAccount-content mark.order-date,
body.woocommerce-account.logged-in
.woocommerce-MyAccount-content mark.order-status {
        padding: 0;
        background: transparent;
        color: var(--koska-ink);
        font-weight: 650;
}

body.woocommerce-account.logged-in
.woocommerce-order-details {
        margin: 0 0 2.5rem;
}

body.woocommerce-account.logged-in
.woocommerce-order-details__title {
        margin: 0 0 1.4rem;
        color: var(--koska-ink);
        font-size: clamp(2rem, 3vw, 2.7rem);
        line-height: 1.02;
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details {
        width: 100%;
        margin: 0;
        border: 1px solid var(--koska-line);
        border-collapse: separate;
        border-spacing: 0;
        border-radius: var(--koska-radius-small);
        overflow: hidden;
        background: var(--koska-white);
        font-family: var(--koska-font-interface);
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details th,
body.woocommerce-account.logged-in
.woocommerce-table--order-details td {
        padding: 0.95rem 1.1rem;
        border: 0;
        border-bottom: 1px solid var(--koska-line);
        color: var(--koska-ink);
        font-size: 0.84rem;
        line-height: 1.5;
        text-align: left;
        vertical-align: middle;
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details thead th {
        background: rgba(238, 230, 220, 0.5);
        color: var(--koska-muted);
        font-size: 0.68rem;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details .product-total,
body.woocommerce-account.logged-in
.woocommerce-table--order-details tfoot td {
        text-align: right;
        white-space: nowrap;
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details tbody .product-name {
        font-family: var(--koska-font-editorial);
        font-size: 1.05rem;
        font-weight: 500;
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details tbody .product-name a {
        color: var(--koska-ink);
        text-decoration: none;
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details tfoot th {
        font-weight: 600;
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details tfoot tr:last-child {
        background: rgba(238, 230, 220, 0.38);
}

body.woocommerce-account.logged-in
.woocommerce-table--order-details tr:last-child th,
body.woocommerce-account.logged-in
.woocommerce-table--order-details tr:last-child td {
        border-bottom: 0;
}

body.woocommerce-account.logged-in
.woocommerce-customer-details {
        margin: 0;
}

body.woocommerce-account.logged-in
.woocommerce-customer-details
.woocommerce-columns--addresses {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
        margin: 0;
}

body.woocommerce-account.logged-in
.woocommerce-customer-details
.woocommerce-columns--addresses::before,
body.woocommerce-account.logged-in
.woocommerce-customer-details
.woocommerce-columns--addresses::after {
        display: none;
}

body.woocommerce-account.logged-in
.woocommerce-customer-details
.woocommerce-column {
        float: none;
        box-sizing: border-box;
        width: 100%;
        margin: 0;
}

body.woocommerce-account.logged-in
.woocommerce-customer-details
.woocommerce-column__title {
        margin: 0 0 1rem;
        color: var(--koska-ink);
        font-size: clamp(1.75rem, 2.4vw, 2.15rem);
        line-height: 1.05;
}

body.woocommerce-account.logged-in
.woocommerce-customer-details address {
        box-sizing: border-box;
        min-height: 100%;
        margin: 0;
        padding: 1.25rem 1.35rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-small);
        background: rgba(238, 230, 220, 0.24);
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.84rem;
        font-style: normal;
        line-height: 1.7;
}

body.woocommerce-account.logged-in
.woocommerce-customer-details address p {
        margin: 0.45rem 0 0;
}

body.woocommerce-account.logged-in
.woocommerce-customer-details--phone,
body.woocommerce-account.logged-in
.woocommerce-customer-details--email {
        color: var(--koska-muted);
}

body.woocommerce-account.logged-in
.woocommerce-OrderUpdates {
        margin: 0 0 2rem;
        padding: 0;
        list-style: none;
}

body.woocommerce-account.logged-in
.woocommerce-OrderUpdate {
        margin: 0 0 0.75rem;
        padding: 1rem 1.2rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-small);
        background: rgba(238, 230, 220, 0.24);
}

body.woocommerce-account.logged-in
.woocommerce-OrderUpdate-meta {
        margin: 0 0 0.4rem;
        color: var(--koska-muted);
        font-size: 0.72rem;
}

@media (max-width: 680px) {

        body.woocommerce-account.logged-in
        .woocommerce-order-details__title {
                font-size: 2rem;
        }

        body.woocommerce-account.logged-in
        .woocommerce-table--order-details th,
        body.woocommerce-account.logged-in
        .woocommerce-table--order-details td {
                padding: 0.8rem;
                font-size: 0.78rem;
        }

        body.woocommerce-account.logged-in
        .woocommerce-table--order-details .product-total {
                width: 36%;
        }

        body.woocommerce-account.logged-in
        .woocommerce-customer-details
        .woocommerce-columns--addresses {
                grid-template-columns: 1fr;
                gap: 1.75rem;
        }

        body.woocommerce-account.logged-in
        .woocommerce-customer-details address {
                padding: 1.1rem 1.15rem;
        }
}

/* Account details */
body.woocommerce-account.logged-in
.woocommerce-EditAccountForm {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1.25rem 1rem;
        margin: 0;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm > .clear {
        display: none;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm > .form-row {
        float: none;
        box-sizing: border-box;
        width: 100%;
        margin: 0;
        padding: 0;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm > .form-row-first {
        grid-column: 1;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm > .form-row-last {
        grid-column: 2;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm > .form-row-wide,
body.woocommerce-account.logged-in
.woocommerce-EditAccountForm > fieldset,
body.woocommerce-account.logged-in
.woocommerce-EditAccountForm > p:not(.form-row) {
        grid-column: 1 / -1;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm label {
        display: block;
        margin: 0 0 0.5rem;
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.8rem;
        font-weight: 600;
        line-height: 1.4;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm .required {
        color: var(--koska-clay-dark);
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm .input-text {
        box-sizing: border-box;
        width: 100%;
        min-height: 3.15rem;
        border-color: var(--koska-line);
        background: var(--koska-white);
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm .input-text:focus {
        border-color: var(--koska-clay);
}

body.woocommerce-account.logged-in
#account_display_name_description {
        display: block;
        margin-top: 0.55rem;
        color: var(--koska-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.75rem;
        line-height: 1.55;
}

body.woocommerce-account.logged-in
#account_display_name_description em {
        font-style: normal;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm fieldset {
        box-sizing: border-box;
        margin: 0.75rem 0 0;
        padding: 1.6rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-small);
        background: rgba(238, 230, 220, 0.28);
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm fieldset legend {
        padding: 0 0.6rem;
        color: var(--koska-ink);
        font-family: var(--koska-font-editorial);
        font-size: 1.55rem;
        font-weight: 500;
        line-height: 1.1;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm fieldset .form-row {
        float: none;
        width: 100%;
        margin: 0 0 1.15rem;
        padding: 0;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm fieldset .form-row:last-child {
        margin-bottom: 0;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm > p:last-of-type {
        margin: 0.25rem 0 0;
}

body.woocommerce-account.logged-in
.woocommerce-EditAccountForm button[name="save_account_details"] {
        min-width: 10rem;
        margin: 0;
}

@media (max-width: 680px) {

        body.woocommerce-account.logged-in
        .woocommerce-EditAccountForm {
                grid-template-columns: 1fr;
        }

        body.woocommerce-account.logged-in
        .woocommerce-EditAccountForm > .form-row-first,
        body.woocommerce-account.logged-in
        .woocommerce-EditAccountForm > .form-row-last,
        body.woocommerce-account.logged-in
        .woocommerce-EditAccountForm > .form-row-wide,
        body.woocommerce-account.logged-in
        .woocommerce-EditAccountForm > fieldset,
        body.woocommerce-account.logged-in
        .woocommerce-EditAccountForm > p:not(.form-row) {
                grid-column: 1;
        }

        body.woocommerce-account.logged-in
        .woocommerce-EditAccountForm fieldset {
                padding: 1.35rem;
        }

        body.woocommerce-account.logged-in
        .woocommerce-EditAccountForm button[name="save_account_details"] {
                width: 100%;
        }
}

/* Addresses */
body.woocommerce-account.logged-in
.woocommerce-MyAccount-content > p:first-child {
        max-width: 42rem;
        margin: 0 0 2rem;
        color: var(--koska-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.9rem;
        line-height: 1.7;
}

body.woocommerce-account.logged-in
.woocommerce-Addresses {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem;
        margin: 0;
}

body.woocommerce-account.logged-in
.woocommerce-Addresses::before,
body.woocommerce-account.logged-in
.woocommerce-Addresses::after {
        display: none;
}

body.woocommerce-account.logged-in
.woocommerce-Addresses .woocommerce-Address {
        float: none;
        box-sizing: border-box;
        width: 100%;
        min-height: 15rem;
        margin: 0;
        padding: 1.75rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-small);
        background: rgba(238, 230, 220, 0.28);
}

body.woocommerce-account.logged-in
.woocommerce-Address-title {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 0.9rem;
        margin: 0 0 1.75rem;
}

body.woocommerce-account.logged-in
.woocommerce-Address-title h2 {
        max-width: 100%;
        margin: 0;
        color: var(--koska-ink);
        font-size: clamp(1.65rem, 2.2vw, 2.1rem);
        line-height: 1.05;
}

body.woocommerce-account.logged-in
.woocommerce-Address-title .edit {
        flex-shrink: 1;
        max-width: 100%;
        box-sizing: border-box;
        margin: 0;
        padding: 0.55rem 0.8rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-small);
        color: var(--koska-clay-dark);
        font-family: var(--koska-font-interface);
        font-size: 0.72rem;
        font-weight: 700;
        line-height: 1.3;
        text-decoration: none;
        transition:
                border-color 160ms ease,
                background-color 160ms ease,
                color 160ms ease;
}

body.woocommerce-account.logged-in
.woocommerce-Address-title .edit:hover {
        border-color: var(--koska-taupe);
        background: var(--koska-cream);
        color: var(--koska-ink);
}

body.woocommerce-account.logged-in
.woocommerce-Address address {
        margin: 0;
        color: var(--koska-muted);
        font-family: var(--koska-font-interface);
        font-size: 0.86rem;
        font-style: normal;
        line-height: 1.75;
}

@media (max-width: 760px) {

        body.woocommerce-account.logged-in
        .woocommerce-Addresses {
                grid-template-columns: 1fr;
        }

        body.woocommerce-account.logged-in
        .woocommerce-Addresses .woocommerce-Address {
                min-height: 0;
                padding: 1.5rem;
        }

        body.woocommerce-account.logged-in
        .woocommerce-Address-title {
                margin-bottom: 1.5rem;
        }
}

/* Orders */
body.woocommerce-account.logged-in
.woocommerce-MyAccount-content > .wc-block-components-notice-banner.is-info {
        position: relative;
        display: flex;
        min-height: 12rem;
        align-items: center;
        justify-content: space-between;
        gap: 2rem;
        box-sizing: border-box;
        margin: 0;
        padding: 2rem;
        border: 1px solid var(--koska-line);
        border-radius: var(--koska-radius-small);
        background: rgba(238, 230, 220, 0.32);
        color: var(--koska-ink);
        font-family: var(--koska-font-interface);
        font-size: 0.92rem;
        line-height: 1.6;
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-content > .wc-block-components-notice-banner.is-info > svg {
        display: none;
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-content
.wc-block-components-notice-banner__content {
        display: flex;
        width: 100%;
        align-items: center;
        justify-content: space-between;
        gap: 2rem;
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-content
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content
.wc-forward {
        display: inline-flex;
        min-height: 2.8rem;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        float: none;
        box-sizing: border-box;
        margin: 0;
        padding: 0.75rem 1.25rem !important;
        border: 1px solid var(--koska-clay);
        border-radius: var(--koska-radius-small);
        background: var(--koska-clay) !important;
        color: var(--koska-white) !important;
        font-family: var(--koska-font-interface);
        font-size: 0.82rem;
        font-weight: 600;
        line-height: 1.2;
        opacity: 1;
        text-decoration: none;
}

body.woocommerce-account.logged-in
.woocommerce-MyAccount-content
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content
.wc-forward:hover {
        border-color: var(--koska-clay-dark);
        background: var(--koska-clay-dark) !important;
        color: var(--koska-white) !important;
        text-decoration: none;
}

body.woocommerce-account.logged-in
.woocommerce-orders-table {
        width: 100%;
        margin: 0;
        border: 1px solid var(--koska-line);
        border-collapse: separate;
        border-spacing: 0;
        border-radius: var(--koska-radius-small);
        overflow: hidden;
        background: var(--koska-white);
        font-family: var(--koska-font-interface);
}

body.woocommerce-account.logged-in
.woocommerce-orders-table thead {
        background: rgba(238, 230, 220, 0.55);
}

body.woocommerce-account.logged-in
.woocommerce-orders-table th,
body.woocommerce-account.logged-in
.woocommerce-orders-table td {
        padding: 1rem 1.1rem;
        border: 0;
        border-bottom: 1px solid var(--koska-line);
        text-align: left;
        vertical-align: middle;
}

body.woocommerce-account.logged-in
.woocommerce-orders-table tbody tr:last-child th,
body.woocommerce-account.logged-in
.woocommerce-orders-table tbody tr:last-child td {
        border-bottom: 0;
}

body.woocommerce-account.logged-in
.woocommerce-orders-table thead th {
        color: var(--koska-muted);
        font-size: 0.7rem;
        font-weight: 700;
        letter-spacing: 0.08em;
        line-height: 1.4;
        text-transform: uppercase;
}

body.woocommerce-account.logged-in
.woocommerce-orders-table tbody th,
body.woocommerce-account.logged-in
.woocommerce-orders-table tbody td {
        color: var(--koska-ink);
        font-size: 0.84rem;
        line-height: 1.55;
}

body.woocommerce-account.logged-in
.woocommerce-orders-table__cell-order-number a {
        color: var(--koska-clay-dark);
        font-weight: 700;
        text-decoration: none;
}

body.woocommerce-account.logged-in
.woocommerce-orders-table .button {
        margin: 0.15rem;
        padding: 0.65rem 0.9rem;
        font-size: 0.75rem;
        text-decoration: none;
}

body.woocommerce-account.logged-in
.woocommerce-pagination {
        display: flex;
        justify-content: space-between;
        gap: 1rem;
        margin-top: 1.5rem;
}

body.woocommerce-account.logged-in
.woocommerce-pagination .button {
        margin: 0;
}

/* Mobile orders */
@media (max-width: 680px) {

        body.woocommerce-account.logged-in
        .woocommerce-MyAccount-content > .wc-block-components-notice-banner.is-info {
                min-height: 0;
                flex-direction: column;
                align-items: flex-start;
                gap: 1.25rem;
                padding: 1.5rem;
        }

        body.woocommerce-account.logged-in
        .woocommerce-MyAccount-content
        .wc-block-components-notice-banner__content {
                flex-direction: column;
                align-items: flex-start;
                gap: 1.25rem;
        }

        body.woocommerce-account.logged-in
        .woocommerce-MyAccount-content
        .wc-block-components-notice-banner__content .wc-forward {
                width: 100%;
                box-sizing: border-box;
                text-align: center;
        }

        body.woocommerce-account.logged-in
        .woocommerce-orders-table {
                border: 0;
                background: transparent;
        }

        body.woocommerce-account.logged-in
        .woocommerce-orders-table tbody tr {
                display: block;
                margin-bottom: 1rem;
                padding: 1rem;
                border: 1px solid var(--koska-line);
                border-radius: var(--koska-radius-small);
                background: var(--koska-white);
        }

        body.woocommerce-account.logged-in
        .woocommerce-orders-table tbody th,
        body.woocommerce-account.logged-in
        .woocommerce-orders-table tbody td {
                display: flex;
                justify-content: space-between;
                gap: 1rem;
                padding: 0.65rem 0;
                border-bottom: 1px solid var(--koska-line);
                text-align: right;
        }

        body.woocommerce-account.logged-in
        .woocommerce-orders-table tbody tr > *:last-child {
                border-bottom: 0;
        }

        body.woocommerce-account.logged-in
        .woocommerce-orders-table tbody th::before,
        body.woocommerce-account.logged-in
        .woocommerce-orders-table tbody td::before {
                color: var(--koska-muted);
                font-size: 0.68rem;
                font-weight: 700;
                letter-spacing: 0.06em;
                text-align: left;
                text-transform: uppercase;
        }
}

/* Tablet */
@media (max-width: 960px) {

        body.woocommerce-account.logged-in .woocommerce {
                grid-template-columns: 1fr;
                gap: 1.5rem;
        }

        body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
                display: grid;
                grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li {
                border: 0;
        }

        body.woocommerce-account.logged-in
        .woocommerce-MyAccount-navigation-link--customer-logout {
                border-top: 0;
        }
}

/* Mobile */
@media (max-width: 680px) {

        body.woocommerce-account.logged-in
        .woocommerce-MyAccount-navigation ul {
                grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        body.woocommerce-account.logged-in
        .woocommerce-MyAccount-navigation a {
                height: 100%;
                box-sizing: border-box;
                padding: 0.9rem 1rem;
                font-size: 0.78rem;
        }

        body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
                min-height: 0;
                padding: 1.75rem var(--checkout-gutter, 1.25rem);
        }

        .koska-account-dashboard__intro h2 {
                font-size: clamp(2rem, 10vw, 2.55rem);
        }

        .koska-account-shortcuts {
                grid-template-columns: 1fr;
                margin-top: 2.5rem;
        }

        .koska-account-shortcut {
                min-height: 10.5rem;
        }
}

/* =========================================================
   KOSKA — GLOBAL TYPOGRAPHY SYSTEM
   Source of truth: homepage editorial hero
   ========================================================= */

:root {
        --koska-type-display-family: var(--wp--preset--font-family--editorial);
        --koska-type-interface-family: var(--wp--preset--font-family--interface);

        --koska-type-h1-size: clamp(3.8rem, 5.1vw, 6.25rem);
        --koska-type-h1-weight: 500;
        --koska-type-h1-tracking: -0.05em;
        --koska-type-h1-leading: 0.88;
}

/*
 * Główne H1 serwisu.
 * Wszystkie korzystają z dokładnie tego samego rytmu co homepage.
 */
.koska-home-editorial-hero__title,
.koska-custom-v3-hero h1,
.koska-shop-archive__title,
.koska-realizations-archive__title,
.koska-about-hero h1,
.koska-contact-v2-hero h1,
.koska-blog-hero h1 {
        font-family: var(--koska-type-display-family);
        font-size: var(--koska-type-h1-size);
        font-weight: var(--koska-type-h1-weight);
        letter-spacing: var(--koska-type-h1-tracking);
        line-height: var(--koska-type-h1-leading);
        text-wrap: balance;
}

/*
 * Ograniczamy szerokość nagłówków tak, by zachowywały
 * podobny rytm łamania jak hero strony głównej.
 */
.koska-custom-v3-hero h1,
.koska-shop-archive__title,
.koska-realizations-archive__title,
.koska-about-hero h1,
.koska-contact-v2-hero h1,
.koska-blog-hero h1 {
        max-width: 9.5ch;
}

/* Blog zachowuje jedynie swój wyróżniony italic/accent. */
.koska-blog-hero h1 em {
        font-family: inherit;
        font-weight: inherit;
}

/* Mobile = dokładnie skala homepage. */
@media (max-width: 620px) {
        .koska-home-editorial-hero__title,
        .koska-custom-v3-hero h1,
        .koska-shop-archive__title,
        .koska-realizations-archive__title,
        .koska-about-hero h1,
        .koska-contact-v2-hero h1,
        .koska-blog-hero h1 {
                font-size: clamp(3rem, 13vw, 4.15rem);
                line-height: 0.9;
        }
}

/* =========================================================
   KOSKA — GLOBAL H1 SYSTEM
   Remaining views
   ========================================================= */

/*
 * Pojedyncze treści i widoki WooCommerce również korzystają
 * z dokładnie tego samego języka typograficznego co homepage.
 */
.koska-realization-single__title,
.koska-product-summary__title,
.koska-article-title,
body.page main > h1.wp-block-post-title,
body.woocommerce-account h1.wp-block-post-title,
body.woocommerce-cart h1.wp-block-post-title,
body.woocommerce-checkout h1.wp-block-post-title,
body.woocommerce-order-received .wc-block-order-confirmation-status-description h1 {
        font-family: var(--koska-type-display-family);
        font-size: var(--koska-type-h1-size);
        font-weight: var(--koska-type-h1-weight);
        letter-spacing: var(--koska-type-h1-tracking);
        line-height: var(--koska-type-h1-leading);
        text-wrap: balance;
}

/*
 * Dłuższe tytuły potrzebują nieco więcej szerokości niż krótkie
 * hero, ale zachowują ten sam krój, skalę i rytm.
 */
.koska-realization-single__title,
.koska-product-summary__title,
.koska-article-title {
        max-width: 12ch;
}

body.page main > h1.wp-block-post-title,
body.woocommerce-account h1.wp-block-post-title,
body.woocommerce-cart h1.wp-block-post-title,
body.woocommerce-checkout h1.wp-block-post-title,
body.woocommerce-order-received .wc-block-order-confirmation-status-description h1 {
        max-width: 15ch;
}

@media (max-width: 620px) {
        .koska-realization-single__title,
        .koska-product-summary__title,
        .koska-article-title,
        body.page main > h1.wp-block-post-title,
        body.woocommerce-account h1.wp-block-post-title,
        body.woocommerce-cart h1.wp-block-post-title,
        body.woocommerce-checkout h1.wp-block-post-title,
        body.woocommerce-order-received .wc-block-order-confirmation-status-description h1 {
                font-size: clamp(3rem, 13vw, 4.15rem);
                line-height: 0.9;
                letter-spacing: -0.05em;
        }

        .koska-article-title,
        .koska-product-summary__title,
        .koska-realization-single__title {
                max-width: none;
        }
}


/* =========================================================
   KOSKA — GLOBAL TYPOGRAPHY SYSTEM — H2 H3 LEADS
   Source of truth: homepage
   ========================================================= */

:root {
        /* Homepage: sekcja kategorii */
        --koska-type-h2-size: clamp(2.75rem, 4vw, 4rem);
        --koska-type-h2-weight: 500;
        --koska-type-h2-tracking: -0.04em;
        --koska-type-h2-leading: 0.96;

        /* Homepage: tytuły kroków */
        --koska-type-h3-size: clamp(1.45rem, 2vw, 1.9rem);
        --koska-type-h3-weight: 500;
        --koska-type-h3-tracking: -0.02em;
        --koska-type-h3-leading: 1.08;

        /* Homepage: hero lead */
        --koska-type-lead-size: clamp(0.95rem, 1vw, 1.05rem);
        --koska-type-lead-leading: 1.75;

        /* Homepage: eyebrow */
        --koska-type-eyebrow-size: 0.72rem;
        --koska-type-eyebrow-weight: 700;
        --koska-type-eyebrow-tracking: 0.2em;
        --koska-type-eyebrow-leading: 1.4;

        /* Treść dłuższa / utility */
        --koska-type-content-h2-size: clamp(2.25rem, 3.4vw, 3.25rem);
        --koska-type-content-h3-size: clamp(1.55rem, 2.2vw, 2rem);
        --koska-type-utility-h2-size: clamp(2rem, 3vw, 2.75rem);
}

/*
 * Podstawowa zasada marki:
 * editorial = nagłówki,
 * interface = cała reszta.
 */
body,
button,
input,
textarea,
select,
option,
label,
table {
        font-family: var(--koska-type-interface-family);
}

h1,
h2,
h3,
h4,
h5,
h6 {
        font-family: var(--koska-type-display-family);
}

/*
 * H2 głównych sekcji marketingowych.
 * Wzorzec: "Kategorie" ze strony startowej.
 */
.koska-custom-v3-approach h2,
.koska-custom-v3-scope__header h2,
.koska-custom-v3-materials h2,
.koska-custom-v3-process h2,
.koska-custom-v3-contact h2,
.koska-shop-empty__title,
.koska-shop-ready__title,
.koska-shop-materials__title,
.koska-product-related h2,
.koska-product-related__title,
.koska-about-manifest h2,
.koska-about-pillars__header h2,
.koska-about-craft h2,
.koska-about-showroom h2,
.koska-contact-v2-form-intro h2,
.koska-contact-v2-showroom h2,
.koska-blog-empty h2,
.koska-article-cta h2 {
        font-family: var(--koska-type-display-family);
        font-size: var(--koska-type-h2-size);
        font-weight: var(--koska-type-h2-weight);
        letter-spacing: var(--koska-type-h2-tracking);
        line-height: var(--koska-type-h2-leading);
        text-wrap: balance;
}

/*
 * H2 wewnątrz dłuższej treści są celowo o poziom spokojniejsze,
 * ale korzystają z tego samego systemu.
 */
.koska-realization-single__content h2,
.koska-article-content h2,
body.page .wp-block-post-content h2 {
        font-family: var(--koska-type-display-family);
        font-size: var(--koska-type-content-h2-size);
        font-weight: var(--koska-type-h2-weight);
        letter-spacing: -0.035em;
        line-height: 1;
        text-wrap: balance;
}

/*
 * H3 i tytuły kart.
 * Wzorzec: tytuły kroków na stronie startowej.
 */
.koska-realization-card__title,
.koska-shop-product-card__title,
.koska-custom-v3-scope-card h3,
.koska-custom-v3-material-card h3,
.koska-custom-v3-process__steps h3,
.koska-about-pillar h3,
.koska-about-value h3,
.koska-realization-single__content h3,
.koska-article-content h3,
body.page .wp-block-post-content h3 {
        font-family: var(--koska-type-display-family);
        font-size: var(--koska-type-h3-size);
        font-weight: var(--koska-type-h3-weight);
        letter-spacing: var(--koska-type-h3-tracking);
        line-height: var(--koska-type-h3-leading);
}

/*
 * Leady głównych widoków.
 * Wzorzec: lead hero homepage.
 */
.koska-custom-v3-hero__lead,
.koska-shop-archive__lead,
.koska-realizations-archive__lead,
.koska-realization-single__lead,
.koska-about-hero__lead,
.koska-contact-v2-hero__lead,
.koska-blog-hero__intro > p,
.koska-article-lead {
        font-family: var(--koska-type-interface-family);
        font-size: var(--koska-type-lead-size);
        font-weight: 400;
        letter-spacing: normal;
        line-height: var(--koska-type-lead-leading);
}

/*
 * Eyebrow / kicker.
 * Wzorzec: "MEBLE NA WYMIAR" z homepage.
 * Koloru nie narzucamy — zależy od tła konkretnej sekcji.
 */
.koska-custom-v3-eyebrow,
.koska-shop-archive__eyebrow,
.koska-realizations-archive__eyebrow,
.koska-about-eyebrow,
.koska-contact-v2-eyebrow,
.koska-blog-eyebrow {
        font-family: var(--koska-type-interface-family);
        font-size: var(--koska-type-eyebrow-size);
        font-weight: var(--koska-type-eyebrow-weight);
        letter-spacing: var(--koska-type-eyebrow-tracking);
        line-height: var(--koska-type-eyebrow-leading);
        text-transform: uppercase;
}

/*
 * WooCommerce / konto / potwierdzenie:
 * ten sam charakter, ale mniejsza hierarchia niż sekcje marketingowe.
 */
body.woocommerce-order-received
.wc-block-order-confirmation-totals h2,
body.woocommerce-order-received
.wc-block-order-confirmation-totals h3,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper h2,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper h3,
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper h2,
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper h3,
body.woocommerce-account #customer_login h2,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content h2,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content h3,
.koska-account-dashboard__intro h2,
.woocommerce-order-details__title,
.woocommerce-column__title,
.woocommerce-Address-title h2 {
        font-family: var(--koska-type-display-family);
        font-size: var(--koska-type-utility-h2-size);
        font-weight: 500;
        letter-spacing: -0.03em;
        line-height: 1;
}

/* Mobile — skale zaczerpnięte z homepage. */
@media (max-width: 620px) {
        .koska-custom-v3-approach h2,
        .koska-custom-v3-scope__header h2,
        .koska-custom-v3-materials h2,
        .koska-custom-v3-process h2,
        .koska-custom-v3-contact h2,
        .koska-shop-empty__title,
        .koska-shop-ready__title,
        .koska-shop-materials__title,
        .koska-product-related h2,
        .koska-product-related__title,
        .koska-about-manifest h2,
        .koska-about-pillars__header h2,
        .koska-about-craft h2,
        .koska-about-showroom h2,
        .koska-contact-v2-form-intro h2,
        .koska-contact-v2-showroom h2,
        .koska-blog-empty h2,
        .koska-article-cta h2 {
                font-size: clamp(2.6rem, 13vw, 3.35rem);
        }

        .koska-realization-single__content h2,
        .koska-article-content h2,
        body.page .wp-block-post-content h2 {
                font-size: clamp(2.15rem, 10vw, 2.8rem);
        }

        .koska-custom-v3-scope-card h3,
        .koska-custom-v3-material-card h3,
        .koska-custom-v3-process__steps h3,
        .koska-about-pillar h3,
        .koska-about-value h3,
        .koska-realization-single__content h3,
        .koska-article-content h3,
        body.page .wp-block-post-content h3 {
                font-size: 1.5rem;
        }

        .koska-custom-v3-hero__lead,
        .koska-shop-archive__lead,
        .koska-realizations-archive__lead,
        .koska-realization-single__lead,
        .koska-about-hero__lead,
        .koska-contact-v2-hero__lead,
        .koska-blog-hero__intro > p,
        .koska-article-lead {
                font-size: 0.9rem;
                line-height: 1.7;
        }
}
