/* Product surface from Browar Tarnobrzeg Clean 2.12.0 and Core 1.8.0.
   Scoped to the card so the Hrabia header, homepage and footer keep their design.
   Pixel font sizes preserve the brewery's 18px rem base in this classic theme. */
@font-face {
    font-family: "BT Product Montserrat";
    src: url("../fonts/product-card/Montserrat-Variable.woff2") format("woff2");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

@font-face {
    font-family: "BT Product Montserrat";
    src: url("../fonts/product-card/Montserrat-Italic-Variable.woff2") format("woff2");
    font-style: italic;
    font-weight: 100 900;
    font-display: swap;
}

.hr-product-page {
    --bt-ink: #171817;
    --bt-paper: #f4f1ea;
    --bt-amber: #257b70;
    --bt-mist: #625f59;
    --bt-rule: rgba(23, 24, 23, .3);
    --bt-product-gutter: clamp(20px, 4.5vw, 80px);
    margin: 0;
    padding: 0;
    background: var(--bt-paper);
    color: var(--bt-ink);
    font: 400 18px/1.55 "BT Product Montserrat", Montserrat, sans-serif;
}

.hr-product-page .bt-single-product {
    width: min(1440px, calc(100% - 2 * var(--bt-product-gutter)));
    margin-inline: auto;
    padding: 40px 0 clamp(72px, 7vw, 112px);
}

.hr-product-page .woocommerce-breadcrumb {
    margin: 0 0 40px;
    color: var(--bt-mist);
    font-size: 14.04px;
    overflow-wrap: anywhere;
}

.hr-product-page a { text-decoration: none; text-underline-offset: 5px; }
.hr-product-page .woocommerce-breadcrumb a,
.hr-product-page .bt-product-line { color: var(--bt-amber); }
.hr-product-page :is(a, button):focus-visible { outline: 3px solid var(--bt-amber); outline-offset: 5px; }
.hr-product-page :is(a, button):hover { text-decoration: underline; }

.hr-product-page .bt-single-product > div.product {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
    column-gap: clamp(32px, 5vw, 82px);
    row-gap: 0;
    margin: 0;
}

.hr-product-page div.product::before,
.hr-product-page div.product::after { display: none; }
.hr-product-page .bt-single-product > div.product > :not(.images):not(.summary) { grid-column: 1 / -1; }

.hr-product-page div.product div.images,
.hr-product-page div.product div.summary {
    float: none;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.hr-product-page div.product div.images { grid-column: 1; max-width: 512px; background: transparent; }
.hr-product-page div.product div.summary { grid-column: 2; }
.hr-product-page div.product div.images .woocommerce-product-gallery__wrapper { margin: 0; }
.hr-product-page div.product div.images img { width: 100%; height: auto; object-fit: contain; }
.hr-product-page div.product div.images .flex-control-thumbs { margin-top: 12px; }
.hr-product-page div.product div.images .flex-control-thumbs li { padding: 4px; }

.hr-product-page .bt-product-line {
    margin: 0 0 9px;
    font-size: 12.96px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.hr-product-page .bt-product-line a { color: inherit; }

.hr-product-page div.product h1.product_title {
    margin: 16px 0;
    padding: 0;
    color: var(--bt-ink);
    font-family: "BT Product Montserrat", Montserrat, sans-serif;
    font-size: clamp(30px, 4.5vw, 64px);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: .08em;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.hr-product-page .woocommerce-product-details__short-description {
    max-width: 610px;
    margin: 18px 0;
    color: var(--bt-mist);
    font-size: 18.9px;
    line-height: 1.55;
}

.hr-product-page .woocommerce-product-details__short-description > :first-child { margin-top: 0; }
.hr-product-page .woocommerce-product-details__short-description > :last-child { margin-bottom: 0; }

.hr-product-page .bt-single-product .bt-product-rule {
    width: 72px;
    height: 0;
    margin: 18px 0 !important;
    border: 0;
    border-top: 2px solid var(--bt-amber);
}

.hr-product-page .hr-product-parameters { max-width: 560px; }
.hr-product-page .bt-single-product .bt-product-details-title {
    margin: 0 0 7px !important;
    color: var(--bt-ink);
    font-family: "BT Product Montserrat", Montserrat, sans-serif !important;
    font-size: 13.68px !important;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.hr-product-page .bt-single-product table.woocommerce-product-attributes {
    width: 100% !important;
    max-width: 560px !important;
    margin: 0 !important;
    border: 0;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    table-layout: fixed;
    background: transparent;
    color: var(--bt-ink);
}

.hr-product-page .bt-single-product table.woocommerce-product-attributes tr { height: auto !important; }
.hr-product-page .bt-single-product table.woocommerce-product-attributes :is(th, td) {
    height: auto !important;
    min-height: 0 !important;
    padding: 7px 0 !important;
    border: 0;
    border-bottom: 1px solid var(--bt-rule);
    background: transparent;
    text-align: left;
    font-size: 15.12px !important;
    font-style: normal;
    line-height: 1.3 !important;
    vertical-align: top !important;
    overflow-wrap: anywhere;
}

.hr-product-page .bt-single-product table.woocommerce-product-attributes th {
    width: 38% !important;
    padding-right: 18px !important;
    color: var(--bt-mist);
    font-weight: 700;
}

.hr-product-page .bt-single-product table.woocommerce-product-attributes td { width: 62% !important; font-size: 16.2px !important; }
.hr-product-page .bt-single-product table.woocommerce-product-attributes td p { padding: 0; }
.hr-product-page .bt-single-product table.woocommerce-product-attributes td > :first-child { margin-top: 0 !important; }
.hr-product-page .bt-single-product table.woocommerce-product-attributes td > :last-child { margin-bottom: 0 !important; }

.hr-product-page .bt-product-downloads {
    box-sizing: border-box;
    width: 100%;
    max-width: 560px;
    margin: 22px 0 0;
    padding: 17px 0 0;
    border-top: 1px solid var(--bt-rule);
}

.hr-product-page .bt-product-downloads__title {
    margin: 0 0 11px !important;
    color: var(--bt-mist);
    font-size: 12.24px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.hr-product-page .bt-product-downloads__buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.hr-product-page .bt-product-download {
    display: inline-flex;
    box-sizing: border-box;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border: 1px solid var(--bt-ink);
    color: var(--bt-ink);
    font-size: 12.96px;
    font-weight: 800;
    letter-spacing: .055em;
    line-height: 1.2;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

.hr-product-page .bt-product-download::before { content: "↓"; margin-right: 8px; font-size: 16.2px; line-height: 1; }
.hr-product-page .bt-product-download:is(:hover, :focus-visible) { background: var(--bt-ink); color: var(--bt-paper); border-color: var(--bt-ink); text-decoration: none; transform: translateY(-2px); }

@media (max-width: 781px) {
    .hr-product-page .bt-single-product > div.product { grid-template-columns: minmax(0, 1fr); row-gap: 32px; }
    .hr-product-page div.product div.images,
    .hr-product-page div.product div.summary { grid-column: 1; }
}

@media (max-width: 600px) {
    .hr-product-page .bt-single-product { padding-top: 24px; }
    .hr-product-page .bt-single-product > div.product { row-gap: 28px; }
    .hr-product-page .hr-product-parameters,
    .hr-product-page .bt-single-product table.woocommerce-product-attributes,
    .hr-product-page .bt-product-downloads { max-width: 100% !important; }
    .hr-product-page .bt-product-downloads__buttons { display: grid; grid-template-columns: 1fr; }
    .hr-product-page .bt-product-download { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .hr-product-page .bt-product-download { transition: none; }
}
